MRF: fix up unserializable option lists in describe implementations
authorAriadne Conill <ariadne@dereferenced.org>
Wed, 14 Aug 2019 18:53:18 +0000 (18:53 +0000)
committerAriadne Conill <ariadne@dereferenced.org>
Wed, 14 Aug 2019 18:54:17 +0000 (18:54 +0000)
CHANGELOG.md
lib/pleroma/web/activity_pub/mrf/hellthread_policy.ex
lib/pleroma/web/activity_pub/mrf/reject_non_public.ex
lib/pleroma/web/activity_pub/mrf/vocabulary_policy.ex

index 358287096295542b6c177faaf39e9daee4433412..835dbc14b139e1d6f32f2944e4cd776c16070316 100644 (file)
@@ -42,6 +42,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
 - Pleroma.Upload base_url was not automatically whitelisted by MediaProxy. Now your custom CDN or file hosting will be accessed directly as expected.
 - Report email not being sent to admins when the reporter is a remote user
 - MRF: ensure that subdomain_match calls are case-insensitive
+- MRF: fix use of unserializable keyword lists in describe() implementations
 
 ### Added
 - **Breaking:** MRF describe API, which adds support for exposing configuration information about MRF policies to NodeInfo.
index 9863454fab556c2e964da77be53ba66678b0d9cb..b3c742954e58a93f6840b8952527321b092b60a5 100644 (file)
@@ -92,5 +92,6 @@ defmodule Pleroma.Web.ActivityPub.MRF.HellthreadPolicy do
   def filter(message), do: {:ok, message}
 
   @impl true
-  def describe, do: {:ok, %{mrf_hellthread: Pleroma.Config.get([:mrf_hellthread])}}
+  def describe,
+    do: {:ok, %{mrf_hellthread: Pleroma.Config.get(:mrf_hellthread) |> Enum.into(%{})}}
 end
index 0ae9397eda43315e9884e1a0506cefc13fd443ee..5a809a321a76cf9cc2285ede6fa8e83cdd5dd96e 100644 (file)
@@ -46,5 +46,6 @@ defmodule Pleroma.Web.ActivityPub.MRF.RejectNonPublic do
   def filter(object), do: {:ok, object}
 
   @impl true
-  def describe, do: {:ok, %{mrf_rejectnonpublic: Pleroma.Config.get([:mrf_rejectnonpublic])}}
+  def describe,
+    do: {:ok, %{mrf_rejectnonpublic: Pleroma.Config.get(:mrf_rejectnonpublic) |> Enum.into(%{})}}
 end
index 74da8d57ec5b7db71320890398153470b33f25eb..4eaea00d8de7659eeb4d3e309bcdd1f34f84b186 100644 (file)
@@ -32,5 +32,6 @@ defmodule Pleroma.Web.ActivityPub.MRF.VocabularyPolicy do
 
   def filter(message), do: {:ok, message}
 
-  def describe, do: {:ok, %{mrf_vocabulary: Pleroma.Config.get(:mrf_vocabulary)}}
+  def describe,
+    do: {:ok, %{mrf_vocabulary: Pleroma.Config.get(:mrf_vocabulary) |> Enum.into(%{})}}
 end