commit: 15a8acbd6cc6ecc89b49956acfeba49d02270c1d
parent 6a6a631c814ff946358dd386bd41bda2c8a37111
Author: Lain Soykaf <lain@lain.com>
Date: Thu, 30 Nov 2023 09:40:17 +0400
MRF, Docs.Generator: Ensure code is loaded before checking it
Diffstat:
2 files changed, 5 insertions(+), 0 deletions(-)
diff --git a/lib/pleroma/docs/generator.ex b/lib/pleroma/docs/generator.ex
@@ -17,6 +17,8 @@ defmodule Pleroma.Docs.Generator do
# This shouldn't be needed as all modules are expected to have module_info/1,
# but in test enviroments some transient modules `:elixir_compiler_XX`
# are loaded for some reason (where XX is a random integer).
+ Code.ensure_loaded(module)
+
if function_exported?(module, :module_info, 1) do
module.module_info(:attributes)
|> Keyword.get_values(:behaviour)
diff --git a/lib/pleroma/web/activity_pub/mrf.ex b/lib/pleroma/web/activity_pub/mrf.ex
@@ -54,6 +54,8 @@ defmodule Pleroma.Web.ActivityPub.MRF do
@required_description_keys [:key, :related_policy]
def filter_one(policy, message) do
+ Code.ensure_loaded(policy)
+
should_plug_history? =
if function_exported?(policy, :history_awareness, 0) do
policy.history_awareness()
@@ -188,6 +190,7 @@ defmodule Pleroma.Web.ActivityPub.MRF do
def config_descriptions(policies) do
Enum.reduce(policies, @mrf_config_descriptions, fn policy, acc ->
+ Code.ensure_loaded(policy)
if function_exported?(policy, :config_description, 0) do
description =
@default_description