- def check_gun_pool_options do
- pool_config = Config.get(:connections_pool)
-
- if timeout = pool_config[:await_up_timeout] do
- Logger.warn("""
- !!!DEPRECATION WARNING!!!
- Your config is using old setting `config :pleroma, :connections_pool, await_up_timeout`. Please change to `config :pleroma, :connections_pool, connect_timeout` to ensure compatibility with future releases.
- """)
-
- Config.put(:connections_pool, Keyword.put_new(pool_config, :connect_timeout, timeout))
- end
-
- pools_configs = Config.get(:pools)
-
- warning_preface = """
- !!!DEPRECATION WARNING!!!
- Your config is using old setting name `timeout` instead of `recv_timeout` in pool settings. Setting should work for now, but you are advised to change format to scheme with port to prevent possible issues later.
- """
-
- updated_config =
- Enum.reduce(pools_configs, [], fn {pool_name, config}, acc ->
- if timeout = config[:timeout] do
- Keyword.put(acc, pool_name, Keyword.put_new(config, :recv_timeout, timeout))
- else
- acc
- end
- end)
-
- if updated_config != [] do
- pool_warnings =
- updated_config
- |> Keyword.keys()
- |> Enum.map(fn pool_name ->
- "\n* `:timeout` options in #{pool_name} pool is now `:recv_timeout`"
- end)
-
- Logger.warn(Enum.join([warning_preface | pool_warnings]))
-
- Config.put(:pools, updated_config)
- :error
- else
- :ok
- end
- end
-