This was used in OTP releases where the normal OTP_VERSION file
is unavailable.
If checking against OTP minor versions and patch levels
is needed again, revert this commit and commit mentioned below.
Context: 1be8deda73
warning: Credo.CLI.Command.Info.Output.Default.print_after_info/4 is undefined or private. Did you mean:
* print/2
│
4 │ use Credo.CLI.Output.FormatDelegator,
│ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
│
└─ lib/credo/cli/command/info/info_output.ex:4: Credo.CLI.Command.Info.InfoOutput.print_after_info/4
This does not seem to be the intended behaviour, as the code that produces it
did not actually ever do anything and just returned the tag as-is.
See
lib/pleroma/web/activity_pub/object_validators/tag_validator.ex
and
https://git.pleroma.social/pleroma/pleroma/-/merge_requests/4358#note_112681
At least Mastodon and Misskey output tags without the # from their API,
so in reality tags with the hash should rarely happen.
Its last use was a check in lib/application.ex that was removed in
commit 0e53cb4940
Major OTP version can be fetched with System.otp_release/0.
If checking against minor versions and patch levels is needed,
revert this commit since it uses the recommended way of getting
a full OTP version string.
OTP 22 is no longer supported at all.
Pleroma's dependencies cannot be built with Elixir 1.13 and
Elixir 1.14 cannot be built with OTP 22 since it depends on features not
present in OTP 22. Hence why these checks cannot get triggered anymore.
warning: using map.field notation (without parentheses) to invoke function TranslationMock.configured?() is deprecated, you must add parentheses instead: remote.function()
warning: comparison with structs found:
left <= right
given types:
dynamic() <= dynamic(%NaiveDateTime{})
where "left" (context ExUnit.Assertions) was given the type:
# type: dynamic()
# from: test/pleroma/web/plugs/user_tracking_plug_test.exs:25
left = user.last_active_at
where "right" (context ExUnit.Assertions) was given the type:
# type: dynamic(%NaiveDateTime{})
# from: test/pleroma/web/plugs/user_tracking_plug_test.exs:25
right = NaiveDateTime.truncate(NaiveDateTime.utc_now(), :second)
Comparison operators (>, <, >=, <=, min, and max) perform structural and not semantic comparison. Comparing with a struct won't give meaningful results. Structs that can be compared typically define a compare/2 function within their modules that can be used for semantic comparison.
typing violation found at:
│
25 │ assert user.last_active_at <= NaiveDateTime.truncate(NaiveDateTime.utc_now(), :second)
│ ~
│
└─ test/pleroma/web/plugs/user_tracking_plug_test.exs:25:32: Pleroma.Web.Plugs.UserTrackingPlugTest."test updates last_active_at for a new user"/1
warning: :warnings_as_errors is deprecated as part of Code.get_compiler_option/1
(elixir 1.18.3) lib/code.ex:1597: Code.get_compiler_option/1
(elixir 1.18.3) lib/code.ex:1572: anonymous fn/2 in Code.compiler_options/1
(elixir 1.18.3) lib/enum.ex:2546: Enum."-reduce/3-lists^foldl/2-0-"/3
(elixir 1.18.3) lib/code.ex:1571: Code.compiler_options/1
(pleroma 2.9.1-77-g8ec49c59-elixir-1-18+test) lib/pleroma/application.ex:104: Pleroma.Application.start/2
(kernel 10.2.6) application_master.erl:295: :application_master.start_it_old/4
warning: :warnings_as_errors is deprecated as part of Code.put_compiler_option/2, instead you must pass it as a --warnings-as-errors flag. If you need to set it as a default in a mix task, you can also set it under aliases: [compile: "compile --warnings-as-errors"]
(elixir 1.18.3) lib/code.ex:1710: Code.put_compiler_option/2
(elixir 1.18.3) lib/code.ex:1573: anonymous fn/2 in Code.compiler_options/1
(elixir 1.18.3) lib/enum.ex:2546: Enum."-reduce/3-lists^foldl/2-0-"/3
(elixir 1.18.3) lib/code.ex:1571: Code.compiler_options/1
(pleroma 2.9.1-77-g8ec49c59-elixir-1-18+test) lib/pleroma/application.ex:104: Pleroma.Application.start/2
(kernel 10.2.6) application_master.erl:295: :application_master.start_it_old/4
warning: Pleroma.Web.ActivityPub.ObjectValidators.AcceptRejectValidator.cast_and_validate/2 is undefined or private. Did you mean:
* cast_and_validate/1
│
227 │ validator == UpdateValidator -> fn o -> validator.cast_and_validate(o, meta) end
│ ~
│
└─ lib/pleroma/web/activity_pub/object_validator.ex:227:57: Pleroma.Web.ActivityPub.ObjectValidator.validate/2
warning: this clause in cond will always match:
<<"#", name::binary>>
since it has type:
binary()
where "name" was given the type:
%{"type" => "Hashtag", "name" => name} = data
typing violation found at:
│
55 │ "#" <> name -> name
│ ~
│
└─ lib/pleroma/web/activity_pub/object_validators/tag_validator.ex:55:21: Pleroma.Web.ActivityPub.ObjectValidators.TagValidator.changeset/2
warning: <%# is deprecated, use <%!-- or add a space between <% and # instead
│
5 │ <%# Note: using hidden input with `unchecked_value` in order to distinguish user's empty selection from `scope` param being omitted %>
│ ~
│
└─ lib/pleroma/web/templates/o_auth/o_auth/_scopes.html.eex:5: (file)
- `/api/v1/accounts/:id/block` now has a "duration" parameter
- `/api/v1/blocks` returns "block_expires_at" to indicate when the block
will expire
- MuteExpireWorker also processes block expiration
- Remove unused OpenAPI parameters from mute endpoint
- Add pleroma:block_expiration to nodeinfo features