diff options
author | href <href@random.sh> | 2020-06-10 17:34:23 +0200 |
---|---|---|
committer | rinpatch <rinpatch@sdf.org> | 2020-06-13 12:08:46 +0300 |
commit | cb7be6eef252216d7ba5d5f72c8005d66b04986c (patch) | |
tree | 8f22e843125b9a501835d405d6c30f62fcc39e72 /lib | |
parent | 520367d6fd8a268e0bc8c145a46aca46a62e8b66 (diff) | |
download | pleroma-cb7be6eef252216d7ba5d5f72c8005d66b04986c.tar.gz pleroma-cb7be6eef252216d7ba5d5f72c8005d66b04986c.zip |
Remove use of atoms in MRF.UserAllowListPolicy
Diffstat (limited to 'lib')
-rw-r--r-- | lib/pleroma/config/deprecation_warnings.ex | 25 | ||||
-rw-r--r-- | lib/pleroma/web/activity_pub/mrf/user_allow_list_policy.ex | 2 |
2 files changed, 25 insertions, 2 deletions
diff --git a/lib/pleroma/config/deprecation_warnings.ex b/lib/pleroma/config/deprecation_warnings.ex index c39a8984b..b68ded01f 100644 --- a/lib/pleroma/config/deprecation_warnings.ex +++ b/lib/pleroma/config/deprecation_warnings.ex @@ -4,9 +4,10 @@ defmodule Pleroma.Config.DeprecationWarnings do require Logger + alias Pleroma.Config def check_hellthread_threshold do - if Pleroma.Config.get([:mrf_hellthread, :threshold]) do + if Config.get([:mrf_hellthread, :threshold]) do Logger.warn(""" !!!DEPRECATION WARNING!!! You are using the old configuration mechanism for the hellthread filter. Please check config.md. @@ -14,7 +15,29 @@ defmodule Pleroma.Config.DeprecationWarnings do end end + def mrf_user_allowlist do + config = Config.get(:mrf_user_allowlist) + + if config && Enum.any?(config, fn {k, _} -> is_atom(k) end) do + rewritten = + Enum.reduce(Config.get(:mrf_user_allowlist), Map.new(), fn {k, v}, acc -> + Map.put(acc, to_string(k), v) + end) + + Config.put(:mrf_user_allowlist, rewritten) + + Logger.error(""" + !!!DEPRECATION WARNING!!! + As of Pleroma 2.0.7, the `mrf_user_allowlist` setting changed of format. + Pleroma 2.1 will remove support for the old format. Please change your configuration to match this: + + config :pleroma, :mrf_user_allowlist, #{inspect(rewritten, pretty: true)} + """) + end + end + def warn do check_hellthread_threshold() + mrf_user_allowlist() end end diff --git a/lib/pleroma/web/activity_pub/mrf/user_allow_list_policy.ex b/lib/pleroma/web/activity_pub/mrf/user_allow_list_policy.ex index a927a4ed8..651aed70f 100644 --- a/lib/pleroma/web/activity_pub/mrf/user_allow_list_policy.ex +++ b/lib/pleroma/web/activity_pub/mrf/user_allow_list_policy.ex @@ -24,7 +24,7 @@ defmodule Pleroma.Web.ActivityPub.MRF.UserAllowListPolicy do allow_list = Config.get( - [:mrf_user_allowlist, String.to_atom(actor_info.host)], + [:mrf_user_allowlist, actor_info.host], [] ) |