summaryrefslogtreecommitdiff
path: root/lib
AgeCommit message (Collapse)Author
2024-06-19Custom mix task to retry failed tests once in CI pipelineMark Felder
This will be temporary* as we hunt down the cause of the random test failures * gonna regret this
2024-06-19Remove remaining vestiges of Logger support in ConfigDB/TransferTaskMark Felder
2024-06-18Merge remote-tracking branch 'origin/develop' into bugfix/elixir-1.15Mark Felder
2024-06-17Refactor the async user refreshing to use ObanMark Felder
Previous implementation could cause duplicate simultaneous profile fetches which is not polite.
2024-06-16Stale user refreshing should be done async to prevent blocking of rendering ↵Mark Felder
activities
2024-06-13Fix mix pleroma.config dump on Elixir 1.15Mark Felder
2024-06-12Tests: Don't spawn processes in tests.Lain Soykaf
2024-06-12Fix compatibility with Loggers in Elixir 1.15+Haelwenn (lanodan) Monnier
2024-06-12MediaProxy: :whitelist config fallback to []Haelwenn (lanodan) Monnier
2024-06-12Upload.base_url: Don't pass nil to Path.join(), don't return nilHaelwenn (lanodan) Monnier
2024-06-12Switch formatting checks to Elixir 1.15Haelwenn (lanodan) Monnier
2024-06-12Transmogrifier: Encode Emoji id to be valid.Lain Soykaf
2024-06-11Fix testsMark Felder
2024-06-11Cyclical complexityMark Felder
2024-06-11The user is not always preloaded into the notificationMark Felder
2024-06-11WebPush refactoring: separate build and deliver stepsMark Felder
2024-06-11Merge branch 'webpush-polls' into 'develop'feld
Render nice web push notifications for polls See merge request pleroma/pleroma!4144
2024-06-11Use conn.request_path for more legible error logMark Felder
2024-06-08Increase web push character limit for the bodyMark Felder
2024-06-08Stream the notifications as part of the jobMark Felder
2024-06-08Render nice web push notifications for pollsMark Felder
2024-06-08Cleanup to make the code easier to followMark Felder
2024-06-08Remove unnecessary mastodon_type hackMark Felder
2024-06-08Add spec for send/1Mark Felder
2024-06-08More robust validation the vapid config is setMark Felder
2024-06-08Stream end of poll notification over websockets and web pushMark Felder
2024-06-08Rename Notification.send/1 to Notification.stream/1Mark Felder
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.
2024-06-07Merge branch 'feld/cleanup' into 'develop'feld
Minor cleanup commits See merge request pleroma/pleroma!4142
2024-06-07Merge branch 'spex/notification-types' into 'develop'feld
Spex: Add missing notification types to the api spec See merge request pleroma/pleroma!4141
2024-06-07Merge branch 'bugfix/rich_media_config' into 'develop'feld
RichMedia: Respect configuration on status previews See merge request pleroma/pleroma!4130
2024-06-07Add missing pool to the typeMark Felder
2024-06-07Do not start unused ConcurrentLimiter processesMark Felder
2024-06-07Add some useful logging for ApiSpec errorsMark Felder
2024-06-07Add missing notification types to the api specMark Felder
2024-06-05Merge branch 'cowboy-streaming' into 'develop'feld
Allow Cowboy to stream the response instead of chunk it See merge request pleroma/pleroma!4138
2024-06-04Allow Cowboy to stream the response instead of chunk itMark Felder
2024-06-01Merge branch 'ipfs-dialyzer-fixes' into 'develop'lain
IPFS uploader: dialyzer fixes See merge request pleroma/pleroma!4129
2024-05-31Use proper workers for fetching pins instead of an ad-hoc taskFloatingghost
BUG: https://git.pleroma.social/pleroma/pleroma/-/issues/3276
2024-05-30IPFS uploader: dialyzer fixesMark Felder
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()}
2024-05-30Fix Logger.warn deprecation error on OTP25Mark Felder
2024-05-29Add additional flags to the Pleroma.Search.Indexer Mix taskMark Felder
2024-05-29RichMedia: Add extra checks on configurationHaelwenn (lanodan) Monnier
2024-05-29RichMedia: Respect configuration on status previewsHaelwenn (lanodan) Monnier
2024-05-28Merge branch 'dialyzer-fixes' into 'develop'feld
Dialyzer fixes See merge request pleroma/pleroma!4128
2024-05-28Dialyzer: fix invalid @specMark Felder
2024-05-28Dialyzer: The function call will not succeed.Mark Felder
: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()
2024-05-28Dialyzer: overlapping_contractMark Felder
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.
2024-05-28Dialyzer: The pattern can never match the typeMark Felder
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
2024-05-28Dialyzer: no_local_returnMark Felder
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.
2024-05-28Dialyzer: fix pattern matches preventing video thumbnailing from workingMark Felder
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}}