Age | Commit message (Collapse) | Author |
|
|
|
|
|
Also update other places where we use the term "send" instead of "stream". This should make it clearer that we are streaming these over websockets / web push and not sending an activity.
|
|
Minor cleanup commits
See merge request pleroma/pleroma!4142
|
|
Spex: Add missing notification types to the api spec
See merge request pleroma/pleroma!4141
|
|
RichMedia: Respect configuration on status previews
See merge request pleroma/pleroma!4130
|
|
|
|
|
|
|
|
|
|
Allow Cowboy to stream the response instead of chunk it
See merge request pleroma/pleroma!4138
|
|
|
|
IPFS uploader: dialyzer fixes
See merge request pleroma/pleroma!4129
|
|
BUG: https://git.pleroma.social/pleroma/pleroma/-/issues/3276
|
|
lib/pleroma/uploaders/ipfs.ex:43:no_return
Function put_file/1 has no local return.
________________________________________________________________________________
lib/pleroma/uploaders/ipfs.ex:49:call
The function call will not succeed.
Pleroma.HTTP.post(
binary(),
_mp :: %Tesla.Multipart{
:boundary => binary(),
:content_type_params => [binary()],
:parts => [
%Tesla.Multipart.Part{
:body => binary(),
:dispositions => [any()],
:headers => [any()]
},
...
]
},
[],
[{:params, [{:"cid-version", <<49>>}]}]
)
will never return since the success typing is:
(binary(), binary(), [{binary(), binary()}], Keyword.t()) ::
{:error, _}
| {:ok,
%Tesla.Env{
:__client__ => %Tesla.Client{
:adapter => nil | {_, _} | {_, _, _},
:fun => _,
:post => [any()],
:pre => [any()]
},
:__module__ => atom(),
:body => _,
:headers => [{_, _}],
:method => :delete | :get | :head | :options | :patch | :post | :put | :trace,
:opts => [{_, _}],
:query => [{_, _}],
:status => nil | integer(),
:url => binary()
}}
and the contract is
(Pleroma.HTTP.Request.url(), String.t(), Pleroma.HTTP.Request.headers(), :elixir.keyword()) ::
{:ok, Tesla.Env.t()} | {:error, any()}
|
|
|
|
|
|
|
|
|
|
Dialyzer fixes
See merge request pleroma/pleroma!4128
|
|
|
|
:idna.encode/1 expects a charlist even though it will accept a binary string. That functionality is undocumented / not part of its typespec, so we should turn it into a charlist first. Also switch to using match?/2
lib/pleroma/user.ex:2056:call
The function call will not succeed.
:idna.encode(_host :: binary())
will never return since the success typing is:
(string()) :: string()
and the contract is
(string()) :: string()
|
|
Wrong @spec name for remove_from_block/2
lib/pleroma/user.ex:2721:overlapping_contract
Overloaded contract for Pleroma.User.add_to_block/2 has
overlapping domains; such contracts are currently unsupported and
are simply ignored.
|
|
We will never pass :plain to query_with/4, so remove that match and change it to query_with/3
lib/pleroma/search/database_search.ex:127:pattern_match
The pattern can never match the type.
Pattern:
_q, :rum, _search_query, :plain
Type:
%Ecto.Query{
:aliases => _,
:assocs => _,
:combinations => _,
:distinct => _,
:from => _,
:group_bys => _,
:havings => _,
:joins => _,
:limit => _,
:lock => _,
:offset => _,
:order_bys => _,
:prefix => _,
:preloads => _,
:select => _,
:sources => _,
:updates => _,
:wheres => _,
:windows => _,
:with_ctes => _
},
:rum,
_,
:websearch
|
|
WebPushEncryption.send_web_push/4 was written to raise on erroroneus input, so we must guard against that.
lib/pleroma/web/push/impl.ex:65:no_return Function push_message/4 has no local return.
|
|
lib/pleroma/web/media_proxy/media_proxy_controller.ex:154:pattern_match
The pattern can never match the type.
Pattern:
{:ok, _thumbnail_binary}
Type:
{:error, boolean() | {:ffmpeg, :command_not_found}}
|
|
|
|
lib/pleroma/web/activity_pub/mrf/dnsrbl_policy.ex:106:guard_fail
The guard clause:
when _ ::
[
binary()
| [string() | char()]
| {string() | integer(), string()}
| {{byte(), byte(), byte(), byte()}, integer(), binary()}
| {integer(), integer(), integer(), string() | byte()}
| {integer(), integer(), string(), string(), string(), string()}
| {string(), string(), integer(), integer(), integer(), integer(), integer()}
| {char(), char(), char(), char(), char(), char(), char(), char()}
] === nil
can never succeed.
|
|
The callback already defines the @spec and these do not match it.
lib/pleroma/upload/filter/exiftool/strip_location.ex:12:callback_spec_type_mismatch
The @spec return type does not match the expected return type
for filter/1 callback in Pleroma.Upload.Filter behaviour.
Actual:
@spec filter(...) :: {:ok, _}
Expected:
@spec filter(...) :: {:error, _} | {:ok, :filtered | :noop} | {:ok, :filtered, struct()}
|
|
pleroma-feature/akkoma-prune-old-posts
|
|
lib/pleroma/notification.ex:492:invalid_contract
The @spec for the function does not match the success typing of the function.
Function:
Pleroma.Notification.get_notified_from_activity/2
Success typing:
@spec get_notified_from_activity(_, _) :: [any()]
|
|
|
|
pleroma-secure-mode
|
|
HTTPSignaturePlug: Add :authorized_fetch_mode_exceptions
See merge request pleroma/pleroma!4007
|
|
Some HTTP and connection pool improvements
See merge request pleroma/pleroma!4124
|
|
|
|
|
|
auth-fetch-exception
|
|
Oban queue simplification
See merge request pleroma/pleroma!4123
|
|
Explicitly allow unsafe 2
See merge request pleroma/pleroma!4125
|
|
Search: Basic Qdrant/Ollama search
See merge request pleroma/pleroma!4109
|
|
|
|
using it
|
|
Logger metadata
See merge request pleroma/pleroma!3990
|
|
|
|
|
|
Add support for Honk "summary" + "name"
See merge request pleroma/pleroma!3854
|
|
Anti-mention Spam MRF
See merge request pleroma/pleroma!4072
|
|
Switch to milliseconds for consistency with other configuration options in codebase
|
|
|