1
0
Fork 0
mirror of https://git.pleroma.social/pleroma/pleroma.git synced 2026-02-15 17:16:57 +00:00

Elixir 1.19: Move deprecated logger syntax check to DeprecationWarnings

This commit is contained in:
Phantasm 2026-01-12 19:31:15 +01:00
parent 45bf97c1a1
commit bfae2e790d
No known key found for this signature in database
GPG key ID: 2669E588BCC634C8
4 changed files with 31 additions and 22 deletions

View file

@ -115,12 +115,6 @@ defmodule Pleroma.Application do
end
def configure_logger do
if Application.get_env(:logger, :backends) do
Logger.warning(
"'config :logger, backends: [...]' is deprecated syntax due to changes in Elixir. Use 'config :pleroma, :logger, backends: [...]' instead."
)
end
Config.get([:logger, :backends], [])
|> Enum.each(fn backend ->
backend = backend_to_logger(backend)

View file

@ -218,7 +218,8 @@ defmodule Pleroma.Config.DeprecationWarnings do
check_quarantined_instances_tuples(),
check_transparency_exclusions_tuples(),
check_simple_policy_tuples(),
check_exiftool_filter()
check_exiftool_filter(),
check_deprecated_logger_config()
]
|> Enum.reduce(:ok, fn
:ok, :ok -> :ok
@ -415,4 +416,18 @@ defmodule Pleroma.Config.DeprecationWarnings do
:ok
end
end
@spec check_deprecated_logger_config() :: :ok | :error
def check_deprecated_logger_config() do
if Application.get_env(:logger, :backends) do
Logger.warning(
"'config :logger, backends: [...]' is deprecated syntax due to changes in Elixir. " <>
"Use 'config :pleroma, :logger, backends: [...]' instead."
)
:error
else
:ok
end
end
end

View file

@ -7,21 +7,6 @@ defmodule Pleroma.ApplicationTest do
import ExUnit.CaptureLog
# clear_config/2 can only manipulate env under :pleroma.
describe "config :logger, backends: []" do
setup do
Application.put_env(:logger, :backends, [:console, {ExSyslogger, :ex_syslogger}])
on_exit(fn ->
Application.delete_env(:logger, :backends) end)
end
test "warns on deprecated syntax" do
assert capture_log(fn -> Pleroma.Application.configure_logger() end) =~
"'config :logger, backends: [...]' is deprecated syntax due to changes in Elixir. Use 'config :pleroma, :logger, backends: [...]' instead."
end
end
describe "config :pleroma, :logger, backends: [{:ex_syslogger, :ex_syslogger}]" do
setup do
clear_config([:logger, :backends], [{:ex_syslogger, :ex_syslogger}])

View file

@ -388,4 +388,19 @@ defmodule Pleroma.Config.DeprecationWarningsTest do
end) =~
"Your config is using the old namespace for the Shoutbox configuration."
end
describe "check_deprecated_logger_config" do
setup do
Application.put_env(:logger, :backends, [:console, {ExSyslogger, :ex_syslogger}])
on_exit(fn ->
Application.delete_env(:logger, :backends) end)
end
test "warns on deprecated syntax" do
assert capture_log(fn -> Pleroma.Config.DeprecationWarnings.check_deprecated_logger_config() end) =~
"'config :logger, backends: [...]' is deprecated syntax due to changes in Elixir. Use 'config :pleroma, :logger, backends: [...]' instead."
end
end
end