lain
38e6166d93
Merge branch '3280-emoji' into 'develop'
...
Transmogrifier: Encode Emoji id to be valid.
Closes #3280
See merge request pleroma/pleroma!4147
2024-06-12 09:15:14 +00:00
Lain Soykaf
1ae5c2b020
Transmogrifier: Encode Emoji id to be valid.
2024-06-12 12:41:33 +04:00
feld
4a28b81b59
Merge branch 'fix-webpush-actor' into 'develop'
...
Fix WebPush actor regression
See merge request pleroma/pleroma!4146
2024-06-11 23:08:12 +00:00
Mark Felder
5c8afbe646
Fix tests
2024-06-11 18:55:10 -04:00
Mark Felder
6a9d9da26f
Cyclical complexity
2024-06-11 18:38:41 -04:00
Mark Felder
a291a6b8c0
Ensure the webpush notification for e.g., mentions start with the nickname of the actor it originates from
2024-06-11 18:15:32 -04:00
Mark Felder
603a575766
The user is not always preloaded into the notification
2024-06-11 18:14:07 -04:00
Mark Felder
568819c08a
WebPush refactoring: separate build and deliver steps
2024-06-11 17:58:02 -04:00
feld
f47a124698
Merge branch 'webpush-polls' into 'develop'
...
Render nice web push notifications for polls
See merge request pleroma/pleroma!4144
2024-06-11 20:24:15 +00:00
feld
61506f8d93
Merge branch 'api-spex-error' into 'develop'
...
ApiSpec: Use conn.request_path for more legible error log
See merge request pleroma/pleroma!4145
2024-06-11 20:08:08 +00:00
Mark Felder
5313255b1a
Use conn.request_path for more legible error log
2024-06-11 16:07:22 -04:00
Mark Felder
2fd155fb9b
Add PollWorker test; move the streaming notification test to it
2024-06-11 15:59:48 -04:00
Mark Felder
51eeb80822
Merge remote-tracking branch 'origin/develop' into webpush-polls
2024-06-09 08:37:24 -04:00
lain
de80a7e890
Merge branch 'otp-bumps' into 'develop'
...
OTP version bumps
See merge request pleroma/pleroma!4143
2024-06-09 08:40:52 +00:00
Mark Felder
f000dab372
Switch test case to Impl.build_content/3
2024-06-08 22:54:59 -04:00
Mark Felder
8468d78882
Increase web push character limit for the body
2024-06-08 22:54:59 -04:00
Mark Felder
c1b84edefc
Increase web push character limit for the body
2024-06-08 22:48:38 -04:00
Mark Felder
dcc50da400
Stream the notifications as part of the job
2024-06-08 22:40:08 -04:00
Mark Felder
3211557f74
Render nice web push notifications for polls
2024-06-08 22:08:12 -04:00
Mark Felder
b1ef6e5e9a
Cleanup to make the code easier to follow
2024-06-08 19:50:01 -04:00
Mark Felder
86fa0889bc
Remove unnecessary mastodon_type hack
2024-06-08 19:30:27 -04:00
Mark Felder
db88bf30d5
Add spec for send/1
2024-06-08 19:20:38 -04:00
Mark Felder
07cb89823f
More robust validation the vapid config is set
2024-06-08 18:59:51 -04:00
Mark Felder
0641a1058a
Update job names
2024-06-08 15:18:46 -04:00
Mark Felder
84319dbca4
OTP updates
...
Update to otp25 for Elixir 1.13; otp26 for Elixir 1.15
2024-06-08 14:44:09 -04:00
feld
9d67827619
Merge branch 'stream-poll-end' into 'develop'
...
Stream end of poll notification over websockets and web push
See merge request pleroma/pleroma!4137
2024-06-08 17:55:01 +00:00
Mark Felder
471412ad34
Stream end of poll notification over websockets and web push
2024-06-08 13:19:41 -04:00
Mark Felder
b1c52c3062
Rename Notification.send/1 to Notification.stream/1
...
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-08 13:14:25 -04:00
Mark Felder
a5424c3681
Test that end of poll notifications are streamed over websockets
2024-06-08 13:08:28 -04:00
feld
c24e222887
Merge branch 'bump-deps' into 'develop'
...
Bump deps
See merge request pleroma/pleroma!4140
2024-06-08 01:39:09 +00:00
Pleroma User
dbf29cbae4
Bump deps
2024-06-08 01:39:08 +00:00
feld
b23b007d00
Merge branch 'feld/cleanup' into 'develop'
...
Minor cleanup commits
See merge request pleroma/pleroma!4142
2024-06-07 21:52:55 +00:00
feld
a4bd89c77e
Merge branch 'spex/notification-types' into 'develop'
...
Spex: Add missing notification types to the api spec
See merge request pleroma/pleroma!4141
2024-06-07 20:42:50 +00:00
feld
f44987bd0f
Merge branch 'bugfix/rich_media_config' into 'develop'
...
RichMedia: Respect configuration on status previews
See merge request pleroma/pleroma!4130
2024-06-07 20:37:19 +00:00
Mark Felder
d98b1c2757
Small cleanup / fixes
2024-06-07 16:35:26 -04:00
Mark Felder
5ed07aba7a
Add missing pool to the type
2024-06-07 16:34:32 -04:00
Mark Felder
6ded017dee
Do not start unused ConcurrentLimiter processes
2024-06-07 16:34:13 -04:00
Mark Felder
b52d772a6e
Add some useful logging for ApiSpec errors
2024-06-07 16:26:56 -04:00
Mark Felder
5915062874
Add missing notification types to the api spec
2024-06-07 15:50:11 -04:00
Mark Felder
49156f0183
Fixes for default disabled rich media in test environment
...
Also add a test to validate the correct error when disabled
2024-06-07 13:31:34 -04:00
feld
bf8b251dc1
Merge branch 'cowboy-streaming' into 'develop'
...
Allow Cowboy to stream the response instead of chunk it
See merge request pleroma/pleroma!4138
2024-06-05 12:18:56 +00:00
Mark Felder
858d528cc1
Allow Cowboy to stream the response instead of chunk it
2024-06-04 23:08:05 -04:00
lain
acde8d0e0c
Merge branch 'ipfs-dialyzer-fixes' into 'develop'
...
IPFS uploader: dialyzer fixes
See merge request pleroma/pleroma!4129
2024-06-01 11:30:42 +00:00
lain
cdeeb4dcc5
Merge branch '3276-pinned-collection-fetch' into 'develop'
...
Use proper workers for fetching pins instead of an ad-hoc task
Closes #3276
See merge request pleroma/pleroma!4136
2024-06-01 09:54:12 +00:00
Floatingghost
0302431888
Use proper workers for fetching pins instead of an ad-hoc task
...
BUG: https://git.pleroma.social/pleroma/pleroma/-/issues/3276
2024-05-31 09:09:04 -04:00
Mark Felder
cfc8d7aade
IPFS uploader: dialyzer fixes
...
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-30 15:14:27 -04:00
feld
ff6f5a417f
Merge branch 'mrf-nsfw-otp25' into 'develop'
...
Fix Logger.warn deprecation error on OTP25
See merge request pleroma/pleroma!4135
2024-05-30 15:38:18 +00:00
lain
6feb536e79
Merge branch 'missing-fks' into 'develop'
...
Add missing foreign key indexes
See merge request pleroma/pleroma!4134
2024-05-30 15:24:24 +00:00
Mark Felder
f5065eaf99
Fix Logger.warn deprecation error on OTP25
2024-05-30 11:09:42 -04:00
Mark Felder
5f6e477eca
Missing FKs changelog
2024-05-30 10:53:05 -04:00
Mark Felder
c20ac6d1ad
Add missing foreign key indexes
2024-05-30 10:53:00 -04:00
Mark Felder
b5fcb82bff
Test for missing FK indexes
2024-05-30 10:49:45 -04:00
lain
bc4d6adbec
Merge branch 'bandit-update' into 'develop'
...
Update Bandit to 1.5.2
See merge request pleroma/pleroma!4133
2024-05-30 09:35:42 +00:00
Mark Felder
36b440d9be
Update Bandit to 1.5.2
...
Lots of fixes, also requires Websock Adapter update due to internal module changes in Bandit 1.4.0.
2024-05-29 21:59:50 -04:00
feld
b4332b47d5
Merge branch 'mix-indexer' into 'develop'
...
Add additional flags to the Pleroma.Search.Indexer Mix task
See merge request pleroma/pleroma!4131
2024-05-29 15:04:58 +00:00
Mark Felder
14b4bd69a8
Add additional flags to the Pleroma.Search.Indexer Mix task
2024-05-29 10:44:40 -04:00
Haelwenn (lanodan) Monnier
65c8763907
RichMedia: Add extra checks on configuration
2024-05-29 08:02:06 +02:00
Haelwenn (lanodan) Monnier
c16ef40f13
RichMedia: Respect configuration on status previews
2024-05-29 08:02:04 +02:00
feld
3b639b467e
Merge branch 'dialyzer-fixes' into 'develop'
...
Dialyzer fixes
See merge request pleroma/pleroma!4128
2024-05-28 17:26:58 +00:00
lain
41d3c14ba5
Merge branch 'feature/akkoma-prune-old-posts' into 'develop'
...
add options to mix prune_objects to delete more things
See merge request pleroma/pleroma!3952
2024-05-28 15:19:38 +00:00
Mark Felder
79c418bcb7
Dialyzer: fix invalid @spec
2024-05-28 11:07:28 -04:00
Lain Soykaf
f663135724
DatabaseTest: Fix test.
2024-05-28 18:54:36 +04:00
Mark Felder
6b6a2adb07
Dialyzer: The function call will not succeed.
...
: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-28 10:49:43 -04:00
Mark Felder
6551ca2db7
Dialyzer: overlapping_contract
...
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-28 10:40:54 -04:00
Mark Felder
8743c6c640
Dialyzer: The pattern can never match the type
...
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-28 10:36:00 -04:00
Lain Soykaf
a041879eaa
Linting
2024-05-28 18:26:30 +04:00
Mark Felder
1b3c84e241
Dialyzer: no_local_return
...
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-28 10:19:35 -04:00
Mark Felder
17ebb2df84
Dialyzer: fix pattern matches preventing video thumbnailing from working
...
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}}
2024-05-28 10:19:22 -04:00
Mark Felder
18835bf701
Use the configured http client options for mediaproxy
2024-05-28 09:38:36 -04:00
Mark Felder
f8ce639e3f
Dialyzer: guard clause can never succeed
...
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.
2024-05-28 09:30:19 -04:00
Mark Felder
42c5f7c74e
Dialyzer: fix invalid @spec
...
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()}
2024-05-28 08:55:18 -04:00
Lain Soykaf
cc42b50c5b
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into pleroma-feature/akkoma-prune-old-posts
2024-05-28 16:51:19 +04:00
Mark Felder
0b864c3696
Dialyzer: fix invalid @spec
...
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()]
2024-05-28 08:49:34 -04:00
lain
bef15cde61
Merge branch 'secure-mode' into 'develop'
...
Reject requests from specified instances if `authorized_fetch_mode` is enabled
See merge request pleroma/pleroma!3711
2024-05-28 11:22:34 +00:00
Lain Soykaf
335691bae1
Add changelog
2024-05-28 14:38:44 +04:00
Lain Soykaf
8066645f71
Linting
2024-05-28 14:20:48 +04:00
Lain Soykaf
f5978da676
HTTPSignaturePlugTest: Rewrite to use mox.
2024-05-28 14:00:25 +04:00
Lain Soykaf
3b4be5daa2
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into pleroma-secure-mode
2024-05-28 12:31:12 +04:00
lain
25903a4996
Merge branch 'auth-fetch-exception' into 'develop'
...
HTTPSignaturePlug: Add :authorized_fetch_mode_exceptions
See merge request pleroma/pleroma!4007
2024-05-28 04:42:35 +00:00
lain
8ff0c32903
Merge branch 'httpfixes' into 'develop'
...
Some HTTP and connection pool improvements
See merge request pleroma/pleroma!4124
2024-05-28 04:38:01 +00:00
Lain Soykaf
73d58c22d4
Linting
2024-05-28 08:09:19 +04:00
feld
cdde3afb57
Merge branch 'credo' into 'develop'
...
Credo
See merge request pleroma/pleroma!4126
2024-05-27 19:21:14 +00:00
Mark Felder
bb86a01b9b
Credo
2024-05-27 15:20:47 -04:00
Lain Soykaf
687ac4a850
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into auth-fetch-exception
2024-05-27 23:09:17 +04:00
feld
38db406ce4
Merge branch 'simpler-oban-queues' into 'develop'
...
Oban queue simplification
See merge request pleroma/pleroma!4123
2024-05-27 19:02:53 +00:00
lain
121791882f
Merge branch 'explicitly-allow-unsafe-2' into 'develop'
...
Explicitly allow unsafe 2
See merge request pleroma/pleroma!4125
2024-05-27 18:43:05 +00:00
lain
3316a7ab70
Merge branch 'qdrant-search-2' into 'develop'
...
Search: Basic Qdrant/Ollama search
See merge request pleroma/pleroma!4109
2024-05-27 18:41:20 +00:00
Lain Soykaf
81e44ced0c
HTTPSecurityPlug: Fix tests
2024-05-27 22:13:20 +04:00
Mark Felder
ba511a30b9
RichMedia use of ConcurrentLimiter was removed in the refactor
2024-05-27 14:12:38 -04:00
Mark Felder
6b8c15a4a1
Remove MediaProxyWarmingPolicy config for ConcurrentLimiter as we are not using it
2024-05-27 14:11:42 -04:00
feld
42150d5581
Merge branch 'logger-metadata' into 'develop'
...
Logger metadata
See merge request pleroma/pleroma!3990
2024-05-27 17:53:33 +00:00
Mark Felder
29eac86dc0
Logger metadata changelog
2024-05-27 13:53:22 -04:00
Mark Felder
f63e44b8bc
Fix Oban related tests
2024-05-27 13:48:24 -04:00
Mark Felder
0847d9ebaf
Oban queue simplification
2024-05-27 13:48:17 -04:00
lain
b1fec8594d
Merge branch 'tusooa/extract-fix' into 'develop'
...
OAuth scopes translations: write out which operations are processed
See merge request pleroma/pleroma!3907
2024-05-27 17:41:33 +00:00
Lain Soykaf
c67b41415b
Changelog: Add changelog entry.
2024-05-27 21:28:46 +04:00
Lain Soykaf
fc7ce339ed
Cheatsheet: Add allow_unsafe_eval
2024-05-27 21:28:20 +04:00
Lain Soykaf
1c699144d2
HttpSecurityPlug: Don't allow unsafe-eval by default
2024-05-27 21:26:40 +04:00
lain
07b7a8d697
Merge branch 'image-description-summary' into 'develop'
...
Add support for Honk "summary" + "name"
See merge request pleroma/pleroma!3854
2024-05-27 16:51:07 +00:00
feld
10b7efa98c
Merge branch 'anti-mention-spam-mrf' into 'develop'
...
Anti-mention Spam MRF
See merge request pleroma/pleroma!4072
2024-05-27 16:46:31 +00:00
feld
10713fa913
Merge branch 'feat/mrf-dnsrbl' into 'develop'
...
Anti-spam using an MRF DNSRBL
See merge request pleroma/pleroma!3278
2024-05-27 16:42:38 +00:00
Mark Felder
cab6372d7a
Make user age limit configurable
...
Switch to milliseconds for consistency with other configuration options in codebase
2024-05-27 12:31:29 -04:00
Mark Felder
0d092a3d4f
Changelog
2024-05-27 12:26:55 -04:00
Alex Gleason
02d8ce8f0b
AntiMentionSpamPolicy: remove followers check
2024-05-27 12:25:09 -04:00
Alex Gleason
64cacc3694
AntiMentionSpamPolicy: fix user age check
2024-05-27 12:25:09 -04:00
Alex Gleason
5e963736ce
Add AntiMentionSpamPolicy
2024-05-27 12:25:09 -04:00
Mark Felder
0bddca361d
DNSRBL in an MRF
2024-05-27 12:23:36 -04:00
feld
6291bf22bd
Merge branch 'prometheus-docs' into 'develop'
...
Update Prometheus docs
See merge request pleroma/pleroma!4018
2024-05-27 16:20:15 +00:00
Mark Felder
7258ab1aed
Changelog
2024-05-27 12:20:00 -04:00
Mark Felder
f4693dc671
Update Prometheus/Grafana docs for PromEx
2024-05-27 12:18:51 -04:00
Lain Soykaf
284cd0abe5
Add changelog
2024-05-27 20:04:12 +04:00
Lain Soykaf
f4c0a01f09
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into image-description-summary
2024-05-27 20:03:14 +04:00
Lain Soykaf
e4f1325f78
InetHelper: Don't use deprecated function.
2024-05-27 19:44:41 +04:00
lain
7798fdc711
Merge branch 'show-reposted-replies' into 'develop'
...
Display reposted replies with exclude_replies: true
See merge request pleroma/pleroma!3961
2024-05-27 15:33:50 +00:00
Mark Felder
8b61d4e3e1
Changelogs
2024-05-27 11:28:31 -04:00
Lain Soykaf
d3e85da0fd
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into auth-fetch-exception
2024-05-27 19:27:02 +04:00
Mark Felder
37d79b76bb
Use the configured http client options for mediaproxy
2024-05-27 11:26:21 -04:00
Mark Felder
d272eb62cd
Trust the connection pools to enforce the concurrency limitations
2024-05-27 11:25:19 -04:00
Lain Soykaf
03d0c5abfb
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into tusooa/extract-fix
2024-05-27 19:21:20 +04:00
lain
e93ae96e13
Merge branch 'nsfw-api-mrf' into 'develop'
...
NSFW API Policy
See merge request pleroma/pleroma!3471
2024-05-27 15:20:43 +00:00
Mark Felder
6708f154a4
Rework Gun connection pool sizes to make better use of the default 250 connections
2024-05-27 11:18:58 -04:00
Mark Felder
a50c657427
Add a dedicated connection pool for Rich Media
...
Sharing this pool with regular Media is problematic as Rich Media will connect to many different
domains and thrash the pool, but regular Media will have predictable connections to the webservers
hosting media for the fediverse servers you peer with.
2024-05-27 11:17:02 -04:00
lain
d11ba9e85b
Merge branch 'ipfs_uploader' into 'develop'
...
feat: simple, but not stupid, uploader for IPFS
See merge request pleroma/pleroma!3654
2024-05-27 15:06:12 +00:00
Lain Soykaf
ed93af64e1
Add changelog
2024-05-27 17:50:34 +04:00
Lain Soykaf
4325b1aec3
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into nsfw-api-mrf
2024-05-27 17:49:31 +04:00
Lain Soykaf
3055c1598b
IPFSTest: Fix configuration mocking
2024-05-27 17:22:18 +04:00
Lain Soykaf
825b4122a5
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into pleroma-ipfs_uploader
2024-05-27 16:23:40 +04:00
lain
6757382abe
Merge branch 'reject-replies-to-deleted' into 'develop'
...
Return a 422 when trying to reply to a deleted status
See merge request pleroma/pleroma!4122
2024-05-27 11:41:46 +00:00
Lain Soykaf
f214c2cdac
NotificationTest: Remove impossible case.
2024-05-27 15:23:33 +04:00
Lain Soykaf
4d6316b488
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into reject-replies-to-deleted
2024-05-27 15:19:53 +04:00
Lain Soykaf
ddf103eca0
QdrantSearch: Fetch a post in search if possible.
2024-05-27 14:35:08 +04:00
Lain Soykaf
f4c04e6b2d
QdrantSearch: Add health checks.
2024-05-27 14:21:55 +04:00
Lain Soykaf
ec3f3fef77
Fastembed Server: Add health check endpoint
2024-05-27 14:15:04 +04:00
Lain Soykaf
8b76f56050
QdrantSearch: Add healthcheck for qdrant
2024-05-27 14:01:17 +04:00
Lain Soykaf
08e9d995f8
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into qdrant-search-2
2024-05-27 13:50:22 +04:00
lain
5e43060128
Merge branch 'search-healthcheck' into 'develop'
...
Search backend healthcheck process
See merge request pleroma/pleroma!4120
2024-05-27 09:46:57 +00:00
Lain Soykaf
d35b69d268
Pleroma.Search: Remove wrong (but irrelevant) results
2024-05-27 13:18:02 +04:00
Mark Felder
d9b82255b9
Add an HTTP timeout for the healthcheck
2024-05-26 15:23:12 -04:00
Mark Felder
d4769b076a
Return a 422 when trying to reply to a deleted status
2024-05-26 15:14:48 -04:00
feld
c3c804b71f
Merge branch 'fix/rich-media-ttl' into 'develop'
...
Fix rich media parsing some Amazon URLs
See merge request pleroma/pleroma!4121
2024-05-26 18:29:46 +00:00
Mark Felder
03f4b46189
Test that healthchecks behave correctly for the expected HTTP responses
2024-05-26 14:21:24 -04:00
Mark Felder
f2b0d5f1d0
Make it easier to read the state for debugging purposes and expose functions for testing
2024-05-26 14:11:41 -04:00
Mark Felder
807782b7f9
Fix rich media parsing some Amazon URLs
2024-05-26 14:02:20 -04:00
Mark Felder
354b700bed
Assert that AWS URLs without query parameters do not crash
2024-05-26 14:01:12 -04:00
Mark Felder
3474b42ce3
Drop TTL to 5 seconds
2024-05-25 16:55:29 -04:00
Mark Felder
61a3b79316
Search backend healthcheck process
2024-05-25 16:07:47 -04:00
lain
895eea5c75
Merge branch 'api-docs' into 'develop'
...
Update pleroma_api.md
See merge request pleroma/pleroma!4119
2024-05-25 07:17:05 +00:00
marcin mikołajczak
618b77071a
Update pleroma_api.md
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-05-25 09:12:37 +02:00
tusooa
19b2637c51
Merge branch 'bugfix/realpath-over-readlink' into 'develop'
...
pleroma_ctl: Use realpath(1) instead of readlink(1)
See merge request pleroma/pleroma!4118
2024-05-25 00:54:17 +00:00
lain
134f3bff67
Merge branch 'bump-elixir' into 'develop'
...
Bump minimum Elixir to 1.13
See merge request pleroma/pleroma!4014
2024-05-24 09:20:06 +00:00
Lain Soykaf
a566ad56e1
QdrantSearch: Fix actor / author restriction
2024-05-23 18:55:16 +04:00
Lain Soykaf
94e4f21589
QdrantSearch: Deal with actor restrictions
2024-05-23 14:38:30 +04:00
Haelwenn (lanodan) Monnier
818712f99f
pleroma_ctl: Use realpath(1) instead of readlink(1)
...
From realpath(1) in POSIX 202x Draft 4.1:
> If file does not name a symbolic link, readlink shall write a diagnostic
> message to standard error and exit with non-zero status.
Which also doesn't includes `-f`, in preference of `realpath`.
2024-05-23 00:39:53 +02:00
Lain Soykaf
f726e5fbbd
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into qdrant-search-2
2024-05-22 20:07:43 +04:00
lain
05b9805bf9
Merge branch 'mergeback-2.6.3' into 'develop'
...
Mergeback 2.6.3
Closes #3245
See merge request pleroma/pleroma!4117
2024-05-22 15:48:42 +00:00
Lain Soykaf
3f0e9fd474
Merge branch 'stable' into develop
2024-05-22 19:47:15 +04:00
lain
7566b4a348
Merge branch 'release-2.6.3' into 'stable'
...
Release 2.6.3
See merge request pleroma/pleroma!4115
2024-05-22 15:17:36 +00:00
Lain Soykaf
53a3176d24
WebFingerControllerTest: Restore host after test.
2024-05-22 19:09:26 +04:00
marcin mikołajczak
c42527dc2e
changelog
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-05-22 19:09:16 +04:00
marcin mikołajczak
45b5e6ecd8
Fix tests
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-05-22 19:09:07 +04:00
marcin mikołajczak
b245a5c8c2
Fix validate_webfinger when running a different domain for Webfinger
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-05-22 18:59:14 +04:00
marcin mikołajczak
50ffbd980e
Revert "Webfinger: Allow managing account for subdomain"
...
This reverts commit 84bb854056
.
2024-05-22 18:59:07 +04:00
lain
a8e1fc0f6a
Merge branch 'webfinger-validation' into 'develop'
...
Fix validate_webfinger when running a different domain for Webfinger
See merge request pleroma/pleroma!4116
2024-05-22 14:58:48 +00:00
Lain Soykaf
5f1f574f01
WebFingerControllerTest: Restore host after test.
2024-05-22 18:45:34 +04:00
marcin mikołajczak
d536d58080
changelog
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-05-22 15:54:17 +02:00
marcin mikołajczak
70cabbf6dc
Fix tests
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-05-22 15:53:16 +02:00
marcin mikołajczak
d0b18e338b
Fix validate_webfinger when running a different domain for Webfinger
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-05-22 15:52:35 +02:00
marcin mikołajczak
1f2f7e044d
Revert "Webfinger: Allow managing account for subdomain"
...
This reverts commit 84bb854056
.
2024-05-22 15:52:10 +02:00
Lain Soykaf
7b4e6d4c16
Collect changelog
2024-05-22 17:44:10 +04:00
Lain Soykaf
239c9c3f1c
Mix: Update version
2024-05-22 17:40:20 +04:00
Lain Soykaf
20fa400082
Webfinger: Allow managing account for subdomain
2024-05-22 17:38:23 +04:00
Lain Soykaf
2212287b00
Changelog: Adjust changelog type
2024-05-22 17:38:16 +04:00
Lain Soykaf
275fdb26c1
Add changelog
2024-05-22 17:38:08 +04:00
Lain Soykaf
eafcb7b4ec
Webfinger: Fix test
2024-05-22 17:38:03 +04:00
Alex Gleason
364f6e1620
Prevent webfinger spoofing
2024-05-22 17:37:57 +04:00
Lain Soykaf
29b968ce20
Webfinger: Add test showing wrong webfinger behavior
2024-05-22 17:37:49 +04:00
lain
c8e5a1f6b0
Merge branch 'fix-webfinger-spoofing' into 'develop'
...
Fix webfinger spoofing
See merge request pleroma/pleroma!4114
2024-05-22 12:45:24 +00:00
Lain Soykaf
84bb854056
Webfinger: Allow managing account for subdomain
2024-05-22 15:12:29 +04:00
Lain Soykaf
91c93ce3cd
Changelog: Adjust changelog type
2024-05-22 13:14:59 +04:00
Lain Soykaf
4491e8c9a3
Add changelog
2024-05-22 13:01:23 +04:00
Lain Soykaf
206ea92837
Webfinger: Fix test
2024-05-22 12:59:10 +04:00
Alex Gleason
b15f8b0642
Prevent webfinger spoofing
2024-05-22 12:57:45 +04:00
Lain Soykaf
d1b053f3ba
Webfinger: Add test showing wrong webfinger behavior
2024-05-22 12:57:30 +04:00
lain
7fca598268
Merge branch 'status-notification-type' into 'develop'
...
Add "status" notification type
See merge request pleroma/pleroma!3659
2024-05-21 05:01:45 +00:00
marcin mikołajczak
36fa0debfe
Fix get_notified_from
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-05-20 23:25:50 +02:00
Lain Soykaf
c67506ba68
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into auth-fetch-exception
2024-05-20 18:21:46 +04:00
Lain Soykaf
f5c0295247
CI: Specify correct image name.
2024-05-20 13:43:18 +04:00
Lain Soykaf
f8411a351d
CI: Specify version fully in base image tag
2024-05-20 13:30:31 +04:00
Lain Soykaf
226874c9d6
CI: Add new builders for base images
2024-05-20 13:12:12 +04:00
Lain Soykaf
ad26b6d593
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into bump-elixir
2024-05-20 12:30:15 +04:00
lain
e8cd6662eb
Merge branch 'familiar-followers' into 'develop'
...
Implement `/api/v1/accounts/familiar_followers`
See merge request pleroma/pleroma!4098
2024-05-19 12:05:55 +00:00
Lain Soykaf
1b4f1db9b2
QdrantSearch: Support pagination.
2024-05-19 14:41:05 +04:00
Lain Soykaf
dbaab6f54e
Docs: Mention running the Qdrant server
2024-05-19 13:38:31 +04:00
Lain Soykaf
6ec306d068
Docs: Add more information about index memory consumption.
2024-05-19 13:24:24 +04:00
Lain Soykaf
6a3a0cc0f5
Docs: Write docs for the QdrantSearch
2024-05-19 13:20:37 +04:00
Lain Soykaf
23881842ae
B FastembedAPI: Add readme
2024-05-19 13:04:27 +04:00
Lain Soykaf
8329ad5214
B FastembedAPI: Add requirements.txt
2024-05-19 12:59:03 +04:00
Lain Soykaf
dd48810186
B FastembedAPI: Move to more appropriate folder
2024-05-19 12:47:08 +04:00
Lain Soykaf
e142ea400a
Docs: Switch docs from Ollama to OpenAI.
2024-05-19 12:42:08 +04:00
Lain Soykaf
c139a9f38c
B Config: Set default Qdrant embedder to our fastembed-api server
2024-05-19 12:39:54 +04:00
Lain Soykaf
b9af017a4c
B FastembedServer: Switch to OpenAI api, support changing models
2024-05-19 12:33:49 +04:00
Lain Soykaf
72ec261a69
B QdrantSearch: Switch to OpenAI api
2024-05-19 12:17:46 +04:00
Lain Soykaf
cc1321ea2e
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into qdrant-search-2
2024-05-19 11:51:33 +04:00
lain
401aca2548
Merge branch 'mark-read' into 'develop'
...
PleromaAPI: Simplify marking notifications as read
See merge request pleroma/pleroma!4111
2024-05-19 07:48:32 +00:00
Mark Felder
d07d49227f
PleromaAPI: marking notifications as read no longer returns notifications
2024-05-18 18:17:35 +00:00
Lain Soykaf
3345ddd2d4
Linting
2024-05-18 15:02:22 +04:00
Lain Soykaf
7923ede8ba
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into qdrant-search-2
2024-05-18 14:45:26 +04:00
Lain Soykaf
39525bcec7
Add qdrant changelog
2024-05-18 14:07:47 +04:00
Lain Soykaf
e3933a067f
QdrantSearch: Implement post deletion
2024-05-18 14:04:32 +04:00
Lain Soykaf
933117785f
QdrantSearch: Add basic test
2024-05-18 13:43:47 +04:00
marcin mikołajczak
2e76ceb5b4
Merge remote-tracking branch 'origin/develop' into status-notification-type
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-05-18 11:30:25 +02:00
Lain Soykaf
61e9027131
Add docker compose file for fastembed server
2024-05-18 12:19:42 +04:00
Lain Soykaf
769773a500
Add dockerfile
2024-05-18 12:08:42 +04:00
Lain Soykaf
069ce4448c
Add basic fastembed server
2024-05-18 11:55:17 +04:00
feld
99eab1fa2a
Merge branch 'revert-e944b152' into 'develop'
...
Revert "Merge branch 'strip-object-actor' into 'develop'"
See merge request pleroma/pleroma!4112
2024-05-16 23:34:00 +00:00
feld
9988dc2227
Revert "Merge branch 'strip-object-actor' into 'develop'"
...
This reverts merge request !4105
2024-05-16 23:33:48 +00:00
feld
7de657ac45
Merge branch 'bad-mrf' into 'develop'
...
Startup detection for configured MRF modules that are missing or incorrectly defined
See merge request pleroma/pleroma!4110
2024-05-16 20:37:37 +00:00
Mark Felder
7f8a9329e5
Startup detection for configured MRF modules that are missing or incorrectly defined
2024-05-16 16:13:29 -04:00
Lain Soykaf
a9be4907c0
SearchBackend: Add drop_index
2024-05-16 10:47:24 +04:00
feld
e944b15298
Merge branch 'strip-object-actor' into 'develop'
...
Strip actor from objects before federating
Closes #3269
See merge request pleroma/pleroma!4105
2024-05-15 20:51:47 +00:00
Mark Felder
2965ed47bd
Changelog for stripping actor from objects
2024-05-15 16:40:31 -04:00
feld
53ef576739
Merge branch 'instance_rules' into 'develop'
...
Instance rules
See merge request pleroma/pleroma!3669
2024-05-15 20:29:04 +00:00
feld
8da103da57
Merge branch 'fix-muted-web-push' into 'develop'
...
Fix processing of Web Push and streaming notifications
See merge request pleroma/pleroma!4032
2024-05-15 20:12:41 +00:00
Lain Soykaf
1261c43a7a
SearchBackend: Add create_index
2024-05-14 17:19:36 +04:00
Lain Soykaf
c50f0f31f4
Docs/Search: Add basic documentation of the qdrant search
2024-05-14 16:56:58 +04:00
Lain Soykaf
1490ff30af
QdrantSearch: Add query prefix.
2024-05-14 15:09:38 +04:00
Lain Soykaf
bb08a766f4
QdrantSearch: Remove debugging stuff
2024-05-14 14:26:41 +04:00
Lain Soykaf
cd7e2138d1
Search: Basic Qdrant/Ollama search
2024-05-14 14:13:37 +04:00
feld
c954437cc0
Merge branch 'mastodon-instance-v2' into 'develop'
...
Add new values to /api/v2/instance
Closes #3250 and #3251
See merge request pleroma/pleroma!4106
2024-05-11 12:11:00 +00:00
Mark Felder
16c72d0701
Merge branch 'develop' into fix-muted-web-push
2024-05-11 08:06:04 -04:00
faried nawaz
fdc3cbb8cb
add documentation for the prune_objects mix task options
2024-05-09 10:43:41 +05:00
faried nawaz
1bf3ae07b6
add options to mix pleroma.database prune_objects to delete more activities
2024-05-09 10:43:34 +05:00
feld
6cfb0d7ddb
Merge branch 'restore/card-img-alt' into 'develop'
...
Include image description in status media cards
See merge request pleroma/pleroma!4108
2024-05-08 17:55:32 +00:00
Mark Felder
ccceb41bf3
Add test for StatusView rendering of Cards when missing descriptions
2024-05-08 13:54:57 -04:00
Mark Felder
5e7f4f687e
Improve StatusView tests for Cards
2024-05-08 13:52:25 -04:00
marcin mikołajczak
818d9f7b63
Include image description in status media cards
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-05-08 13:40:26 -04:00
feld
8eea4f58c7
Merge branch 'rich-media-db' into 'develop'
...
RichMedia refactor
See merge request pleroma/pleroma!4057
2024-05-08 03:12:09 +00:00
Mark Felder
54c2bab25f
Fix module struct matching
2024-05-07 22:27:18 -04:00
Mark Felder
9a83301ff8
Credo
2024-05-07 22:11:19 -04:00
Mark Felder
37c35daba6
Credo
2024-05-07 22:10:49 -04:00
Mark Felder
9b9a32bf74
Fix compile warning
...
warning: "else" clauses will never match because all patterns in "with" will always match
lib/pleroma/web/rich_media/parser/ttl/opengraph.ex:10
2024-05-07 21:56:27 -04:00
Mark Felder
19002fd6c1
Mastodon API: Remove deprecated GET /api/v1/statuses/:id/card endpoint
...
Removed back in 2019
https://github.com/mastodon/mastodon/pull/11213
2024-05-08 01:44:58 +00:00
Mark Felder
37de58823f
Remove test validating missing descriptions are returned as an empty string
2024-05-08 00:49:29 +00:00
Mark Felder
5bbcf5b8b7
Improve test description
2024-05-08 00:36:16 +00:00
Mark Felder
c16c023ebf
Rich Media Cards are fetched asynchonously and not guaranteed to be available on first post render
2024-05-08 00:26:32 +00:00
Mark Felder
fa66bd95dc
Rich Media Cards are cached by URL not per status
2024-05-08 00:23:59 +00:00
Mark Felder
5a5a193877
Fix broken Rich Media parsing when the image URL is a relative path
2024-05-07 19:54:56 -04:00
Mark Felder
d21aa1a77c
Respect the TTL returned in OpenGraph tags
2024-05-07 19:54:56 -04:00
Mark Felder
f40084e019
Fix broken tests
2024-05-07 19:54:56 -04:00
Mark Felder
df0734fcbf
Increase the :max_body for Rich Media to 5MB
...
Websites are increasingly getting more bloated with tricks like inlining content (e.g., CNN.com) which puts pages at or above 5MB. This value may still be too low.
2024-05-07 19:54:56 -04:00
Mark Felder
ede414094f
RichMedia refactor
...
Rich Media parsing was previously handled on-demand with a 2 second HTTP request timeout and retained only in Cachex. Every time a Pleroma instance is restarted it will have to request and parse the data for each status with a URL detected. When fetching a batch of statuses they were processed in parallel to attempt to keep the maximum latency at 2 seconds, but often resulted in a timeline appearing to hang during loading due to a URL that could not be successfully reached. URLs which had images links that expire (Amazon AWS) were parsed and inserted with a TTL to ensure the image link would not break.
Rich Media data is now cached in the database and fetched asynchronously. Cachex is used as a read-through cache. When the data becomes available we stream an update to the clients. If the result is returned quickly the experience is almost seamless. Activities were already processed for their Rich Media data during ingestion to warm the cache, so users should not normally encounter the asynchronous loading of the Rich Media data.
Implementation notes:
- The async worker is a Task with a globally unique process name to prevent duplicate processing of the same URL
- The Task will attempt to fetch the data 3 times with increasing sleep time between attempts
- The HTTP request obeys the default HTTP request timeout value instead of 2 seconds
- URLs that cannot be successfully parsed due to an unexpected error receives a negative cache entry for 15 minutes
- URLs that fail with an expected error will receive a negative cache with no TTL
- Activities that have no detected URLs insert a nil value in the Cachex :scrubber_cache so we do not repeat parsing the object content with Floki every time the activity is rendered
- Expiring image URLs are handled with an Oban job
- There is no automatic cleanup of the Rich Media data in the database, but it is safe to delete at any time
- The post draft/preview feature makes the URL processing synchronous so the rendered post preview will have an accurate rendering
Overall performance of timelines and creating new posts which contain URLs is greatly improved.
2024-05-07 19:54:56 -04:00
feld
b42963a52c
Merge branch 'revert-50af909c' into 'develop'
...
Revert "Merge branch 'pleroma-card-image-description' into 'develop'"
See merge request pleroma/pleroma!4107
2024-05-07 23:21:37 +00:00
feld
750fb25f48
Revert "Merge branch 'pleroma-card-image-description' into 'develop'"
...
This reverts merge request !4101
2024-05-07 23:20:38 +00:00
Mark Felder
acf73f7e13
Update changelog entry
2024-05-07 17:48:40 -04:00
Mark Felder
06c26bf9c9
Add the absent max_featured_tags to the api spec for /api/v1/instance
2024-05-07 17:46:05 -04:00
Mark Felder
b979389958
Add configuration[accounts][max_pinned_statuses] to /api/v2/instance
...
Also add the absent max_featured_tags to the api spec for /api/v2/instance
2024-05-07 17:45:02 -04:00
Mark Felder
3cad57bf48
Add configuration[statuses][characters_reserved_per_url] to /api/v2/instance
...
Fixes #3250
2024-05-07 17:25:30 -04:00
Mark Felder
dd03184811
Strip actor from objects before federating
2024-05-07 11:54:45 -04:00
lain
ffa6805c09
Merge branch 'description-type' into 'develop'
...
Fix type in config description
See merge request pleroma/pleroma!4104
2024-05-07 11:39:48 +00:00
marcin mikołajczak
637f5bc431
Fix type in description
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-04-27 20:29:23 +02:00
Haelwenn
88412daf11
Apply @lanodan's suggestion
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-04-25 12:34:12 +02:00
lain
50af909c01
Merge branch 'pleroma-card-image-description' into 'develop'
...
Include image description in status media cards
See merge request pleroma/pleroma!4101
2024-04-19 07:39:05 +00:00
marcin mikołajczak
6f6bede900
Include image description in status media cards
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-04-19 10:20:31 +04:00
lain
87b8ac3ce6
Merge branch 'receiverworker-error-handling' into 'develop'
...
ReceiverWorker: Make sure non-{:ok, _} is returned as {:error, …}
See merge request pleroma/pleroma!4100
2024-04-19 06:04:44 +00:00
Haelwenn
71a0373232
Merge branch 'ffmpeg-limiter' into 'develop'
...
Prevent Media Helper from respawning ffmpeg for bad media
See merge request pleroma/pleroma!4086
2024-04-17 05:47:54 +00:00
Haelwenn (lanodan) Monnier
a299ddb10e
ReceiverWorker: Make sure non-{:ok, _} is returned as {:error, …}
...
Otherwise an error like `{:signature, {:error, {:error, :not_found}}}` ends up considered a success.
2024-04-17 07:43:47 +02:00
tusooa
d80e0d6873
Merge branch 'user-actor-webfinger' into 'develop'
...
FEP-2c59, add "webfinger" to user actor
See merge request pleroma/pleroma!4099
2024-04-12 03:09:37 +00:00
marcin mikołajczak
4f5c4d79c4
FEP-2c59, add "webfinger" to user actor
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-04-11 17:50:11 +02:00
marcin mikołajczak
ccc3ac241f
Add hint to rules
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-04-06 11:45:19 +02:00
marcin mikołajczak
9e6cf45906
/api/v1/accounts/familiar_followers
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-04-06 11:43:56 +02:00
marcin mikołajczak
01a5f839c5
Merge remote-tracking branch 'origin/develop' into instance_rules
2024-04-06 10:42:23 +02:00
lain
987f44d811
Merge branch 'bookmark-folders' into 'develop'
...
Fix BookmarkFolderView, add test
See merge request pleroma/pleroma!4096
2024-03-20 13:26:47 +00:00
marcin mikołajczak
37ec645ff2
Fix BookmarkFolderView, add test
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-03-20 13:24:43 +01:00
Mark Felder
462d5aa5cb
logger: remove request_id metadata which is not useful
2024-03-19 20:53:40 -04:00
Mark Felder
99cee755d8
Show Logger metadata in dev
2024-03-19 12:15:10 -04:00
Mark Felder
40823462e7
Logger metadata for request path and authenticated user
2024-03-19 12:15:10 -04:00
Mark Felder
7dfd148ff8
Logger metadata for inbound federation requests
2024-03-19 12:15:10 -04:00
Mark Felder
741f22bfe0
MediaHelper: cache failed URLs for 15 minutes to prevent excessive retries
2024-03-19 12:14:03 -04:00
Mark Felder
c25fda34e7
Skip generating notifications for internal users
2024-03-19 12:11:30 -04:00
Mark Felder
291d531e4c
Unify notification push and streaming events for both local and federated activities
...
This also removes generation of notifications for blocked/filtered/muted users and threads.
2024-03-19 12:11:30 -04:00
lain
f775a1931b
Merge branch 'transient-validators-defaults' into 'develop'
...
Set defaults values on transient objects (attachment, poll options) validators
See merge request pleroma/pleroma!4090
2024-03-19 12:44:13 +00:00
Lain Soykaf
4e8a1b40cb
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into transient-validators-defaults
2024-03-19 16:26:02 +04:00
lain
8a14fdbe47
Update transient-validators-defaults.change
2024-03-19 12:03:43 +00:00
lain
4e37cd85ef
Merge branch 'fix-bookmark-test' into 'develop'
...
CI: Move changelog check to later in the pipeline
See merge request pleroma/pleroma!4095
2024-03-19 12:02:10 +00:00
Lain Soykaf
040a980277
Add changelog
2024-03-19 15:03:16 +04:00
Lain Soykaf
afae3a94a4
CI: Move changelog check to later in the pipeline
...
No reason to not run tests.
2024-03-19 13:54:35 +04:00
Lain Soykaf
9617189e96
Tests: Actually run the bookmark folder tests.
2024-03-19 13:51:04 +04:00
lain
8e37f19883
Merge branch 'test-improvements' into 'develop'
...
Tests: Explicitly set db pool size and max cases to the same value.
See merge request pleroma/pleroma!4094
2024-03-19 07:44:05 +00:00
Lain Soykaf
665947ab2a
Tests: Reduced the max case number to make tests more stable.
2024-03-19 11:03:05 +04:00
Lain Soykaf
3cc8414c2e
Add changelog
2024-03-19 10:38:29 +04:00
Lain Soykaf
923803a533
Tests: Explicitly set db pool size and max cases to the same value.
2024-03-19 10:34:37 +04:00
lain
ca5766c0a7
Merge branch 'postgres-bump' into 'develop'
...
Update minimum Postgres version to 11.0; disable JIT
See merge request pleroma/pleroma!4093
2024-03-19 04:46:40 +00:00
Mark Felder
357553a64a
Remove usage of :persistent_term for Postgres version storage, fix test
...
This test should not have been passing. The search result's activity id should not be the same id as the local post.
capture_log was not being used. Removed.
2024-03-18 16:27:52 -04:00
Mark Felder
b822a912ad
Remove test for postgres < 11
2024-03-18 16:15:40 -04:00
Mark Felder
1413d2e517
Remove vestiges of old Postgres support
2024-03-18 15:42:15 -04:00
Mark Felder
7f97fbc1ae
Update minimum Postgres version to 11.0; disable JIT
...
This release is where JIT was introduced and it should be disabled. Pleroma's queries do not benefit from JIT, but it can increase latency of queries.
2024-03-18 15:36:26 -04:00
lain
0e4e20315b
Merge branch 'bookmark-folders' into 'develop'
...
Bookmark folders
See merge request pleroma/pleroma!4080
2024-03-18 14:26:19 +00:00
marcin mikołajczak
60c4cb21ea
InstanceView: Update features
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-03-18 14:02:29 +01:00
marcin mikołajczak
918c406a91
Merge remote-tracking branch 'origin/develop' into instance_rules
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-03-18 13:50:25 +01:00
lain
2b71f4897f
Merge branch 'develop' into 'bookmark-folders'
...
# Conflicts:
# docs/development/API/differences_in_mastoapi_responses.md
2024-03-18 10:35:02 +00:00
lain
cf0aa1238c
Merge branch 'public-polls' into 'develop'
...
Expose nonAnonymous field from Smithereen polls
See merge request pleroma/pleroma!3962
2024-03-18 06:26:22 +00:00
lain
4f7f44ced1
Merge branch 'develop' into 'develop'
...
Notifications: filter on users rather than activities
See merge request pleroma/pleroma!4089
2024-03-17 20:17:04 +00:00
Matthieu Rakotojaona
a48f5f860e
Notifications: filter on users rather than activities
2024-03-17 20:58:59 +01:00
lain
d5b64846ed
Merge branch 'remove-rum-tests' into 'develop'
...
CI: Remove RUM tests.
See merge request pleroma/pleroma!4092
2024-03-17 16:33:26 +00:00
lain
56e456fb5b
Merge branch 'fix-3241' into 'develop'
...
Consider a case when users.inbox is nil (Fix 3241)
Closes #3241
See merge request pleroma/pleroma!4083
2024-03-17 13:38:59 +00:00
Lain Soykaf
caf855cf9c
ActivityPub.Publisher: Don't try federating if a user doesn't have an inbox.
2024-03-17 16:57:45 +04:00
Lain Soykaf
0450da88b6
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into pleroma-fix-3241
2024-03-17 16:42:17 +04:00
lain
95bcd5d28f
Merge branch 'force-mention' into 'develop'
...
Add ForceMention mrf
See merge request pleroma/pleroma!4082
2024-03-17 12:32:14 +00:00
Lain Soykaf
f0cca36e07
CI: Remove RUM tests.
2024-03-17 15:39:24 +04:00
feld
0b5bba23ce
Merge branch 'backups' into 'develop'
...
Include following/followers in backups
See merge request pleroma/pleroma!4085
2024-03-15 19:32:35 +00:00
Haelwenn (lanodan) Monnier
4ad1d02d7e
changelog.d/transient-validators-defaults.change: insert
2024-03-15 16:25:02 +01:00
Haelwenn (lanodan) Monnier
48c22a67de
QuestionOptionsValidator: set default AS types
2024-03-15 16:22:18 +01:00
Haelwenn (lanodan) Monnier
8b651fab1d
AttachmentValidator: Set "Link" as default type
2024-03-15 16:22:18 +01:00
marcin mikołajczak
bb0b17f4d9
Include following/followers in backups
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-03-10 23:53:12 +01:00
tusooa
df7a8d4efe
Merge branch 'instance-contact-account' into 'develop'
...
Add contact account to InstanceView
See merge request pleroma/pleroma!3960
2024-03-10 13:14:19 +00:00
feld
72daf522c9
Merge branch 'fix-framegrabs' into 'develop'
...
Fix ffmpeg framegrabs with Exile
See merge request pleroma/pleroma!4087
2024-03-08 14:48:26 +00:00
marcin mikołajczak
c0c4a9ed0d
Merge remote-tracking branch 'origin/develop' into instance-contact-account
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-03-08 12:12:55 +01:00
tusooa
139057f346
Merge branch 'link-verification' into 'develop'
...
Verify profile link ownership with rel="me"
Closes #2733
See merge request pleroma/pleroma!3959
2024-03-08 00:52:09 +00:00
Mark Felder
54ff7234b9
Fix ffmpeg framegrabs with Exile
2024-03-07 17:38:21 -05:00
marcin mikołajczak
961a5dd4cd
Add test
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-03-07 16:42:22 +01:00
marcin mikołajczak
b7c625db0f
Merge remote-tracking branch 'origin/develop' into link-verification
2024-03-07 13:13:49 +01:00
tusooa
47ce33a90d
Apply tusooa's suggestion
2024-03-07 11:55:31 +00:00
tusooa
1422082bf2
Apply ledyba's suggestion(s) to 1 file(s)
2024-03-07 04:43:56 +00:00
tusooa
8298b326a7
Merge branch 'instance-v2' into 'develop'
...
Add some missing fields to instanceV2
See merge request pleroma/pleroma!4081
2024-03-07 01:31:27 +00:00
Kaede Fujisaki
0242c1f691
fmt
2024-03-02 18:34:12 +09:00
Kaede Fujisaki
1311f8314e
add changelog.d
2024-03-02 18:24:39 +09:00
Kaede Fujisaki
fb1873b6ec
add changelog.d
2024-03-02 18:23:56 +09:00
Kaede Fujisaki
2e548c31d4
Add changelog
2024-03-02 18:13:36 +09:00
Kaede Fujisaki
6ad4acea50
Consider a case when inbox is nil
2024-03-02 18:09:08 +09:00
marcin mikołajczak
9cfa4e67b1
Add ForceMention mrf
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-03-01 18:16:09 +01:00
marcin mikołajczak
d415686bb9
Allow to group bookmarks in folders
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-03-01 11:04:01 +01:00
marcin mikołajczak
acb9e46074
Add some missing fields to instanceV2
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-02-27 13:25:26 +01:00
Haelwenn
03e54aaba9
Merge branch 'remote-fetcher-error' into 'develop'
...
RemoteFetcherWorker: Make sure {:error, _} is returned on failure
See merge request pleroma/pleroma!4077
2024-02-24 11:37:34 +00:00
feld
bd4d2e1d83
Merge branch 'exile-freebsd' into 'develop'
...
Exile: change to upstream pre-release commit that fixes build on FreeBSD
See merge request pleroma/pleroma!4079
2024-02-23 20:52:04 +00:00
Mark Felder
267e20dbcd
Exile: change to upstream pre-release commit that fixes build on FreeBSD
2024-02-23 15:36:37 -05:00
feld
6144cb43a8
Merge branch 'gun-pool-retry' into 'develop'
...
Gun connection pooling: rename variable for clarity
See merge request pleroma/pleroma!4078
2024-02-23 16:44:53 +00:00
Mark Felder
f4e48bc53e
Rename variable to make the worker retry logic easier to read
...
The boolean value matches the intent of the "last_attempt" variable name now
2024-02-23 11:12:10 -05:00
Haelwenn
00e828b1a0
Merge branch 'gun-pool-retry' into 'develop'
...
Gun connection pool retry fix
See merge request pleroma/pleroma!4076
2024-02-23 06:47:56 +00:00
Haelwenn (lanodan) Monnier
6af6a9704d
RemoteFetcherWorker: Make sure {:error, _} is returned on failure
...
Otherwise jobs are considered a success.
2024-02-23 01:59:30 +01:00
marcin mikołajczak
c592a0e58d
Merge remote-tracking branch 'origin/develop' into HEAD
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-02-22 21:05:20 +01:00
Mark Felder
72fc41d891
Prevent publisher jobs from erroring if the connection pool is full
...
A full pool is a soft-error. Snooze the job for 30 seconds and try again.
2024-02-22 14:14:40 -05:00
Mark Felder
ac55764599
Gun Connection Pool was not attempting to free a connection and retry once if the pool was full.
2024-02-22 14:07:46 -05:00
Haelwenn
f0468697cd
Merge branch 'mergeback/2.6.2' into 'develop'
...
Mergeback: Security Release 2.6.2
Closes #3245
See merge request pleroma/pleroma!4075
2024-02-20 10:52:46 +00:00
Haelwenn
fb4aa9f725
Merge branch 'release/2.6.2' into 'stable'
...
Security Release 2.6.2
See merge request pleroma/pleroma!4074
2024-02-20 08:43:07 +00:00
Haelwenn (lanodan) Monnier
e149ee6e22
Mergeback of security release 2.6.2
2024-02-20 09:34:11 +01:00
Haelwenn (lanodan) Monnier
be075a4336
Security release 2.6.2
2024-02-20 09:16:36 +01:00
Haelwenn (lanodan) Monnier
ac977bdb1c
StealEmojiPolicy: Sanitize shortcodes
...
Closes: https://git.pleroma.social/pleroma/pleroma/-/issues/3245
2024-02-20 09:14:02 +01:00
Haelwenn (lanodan) Monnier
7d624c4750
StealEmojiPolicy: Sanitize shortcodes
...
Closes: https://git.pleroma.social/pleroma/pleroma/-/issues/3245
2024-02-20 09:09:54 +01:00
feld
0b9bc4a0d0
Merge branch 'memleak' into 'develop'
...
Force more frequent full_sweep GC runs on the Websocket processes
See merge request pleroma/pleroma!4060
2024-02-17 16:21:55 +00:00
Mark Felder
7e99d0619d
Force more frequent full_sweep GC runs on the Websocket processes
...
Websocket processes seem to be the primary culprit for Binary memory allocation bloat.
2024-02-17 09:53:52 -05:00
Haelwenn
a145d909b5
Merge branch 'weblate' into 'develop'
...
Translations update from Pleroma Weblate
See merge request pleroma/pleroma!4070
2024-02-16 18:28:55 +00:00
SyoBoN
2c9fed9b73
Translated using Weblate (Japanese)
...
Currently translated at 63.1% (60 of 95 strings)
Translation: Pleroma/Pleroma Backend (domain errors)
Translate-URL: https://translate.pleroma.social/projects/pleroma/pleroma-backend-domain-errors/ja/
2024-02-16 17:54:01 +00:00
feld
0fbec6b532
Merge branch 'deps-changelog-revert' into 'develop'
...
Revert "Support a new changelog entry type: deps"
See merge request pleroma/pleroma!4071
2024-02-16 17:53:52 +00:00
Mark Felder
1951d56ed9
Revert "Add support for a "deps" changelog type and document deps changes since 2.6.1 release"
...
This reverts commit 2a4fa4c408
.
2024-02-16 12:53:18 -05:00
Mark Felder
c9cd449bba
Revert "Support a new changelog entry type: deps"
...
This reverts commit 4648997a10
.
2024-02-16 12:52:56 -05:00
feld
03834454d9
Merge branch 'tesla' into 'develop'
...
Update Tesla, document some deps changes
See merge request pleroma/pleroma!4069
2024-02-15 15:27:34 +00:00
Mark Felder
2a4fa4c408
Add support for a "deps" changelog type and document deps changes since 2.6.1 release
2024-02-15 10:27:13 -05:00
Mark Felder
772f8d08cf
Tesla changelog
2024-02-15 10:24:32 -05:00
Mark Felder
4648997a10
Support a new changelog entry type: deps
2024-02-15 10:24:31 -05:00
feld
b91317b9bf
Merge branch 'bandit' into 'develop'
...
Support Bandit as a Phoenix HTTP adapter
See merge request pleroma/pleroma!4068
2024-02-15 15:23:41 +00:00
Mark Felder
202721e80c
Remove Cowboy-specific HTTP options
...
These were only used in dev and served no specific purpose. The equivalent settings for Bandit are under a key called :http1_options and the default values are set to 10_000.
2024-02-15 09:55:03 -05:00
Mark Felder
0c5bec0493
Support Bandit as an alternate HTTP backend to Cowboy. This is currently considered experimental, but may improve performance and resource usage.
2024-02-15 09:54:52 -05:00
feld
4dd8a1a1ca
Merge branch 'websocket-refactor' into 'develop'
...
Websocket refactor to use Phoenix.Socket.Transport
See merge request pleroma/pleroma!4064
2024-02-15 14:36:54 +00:00
lain
d3208d2250
Merge branch 'oauth-nickname' into 'develop'
...
Use User.full_nickname/1 in oauth html template
See merge request pleroma/pleroma!4054
2024-02-15 09:35:39 +00:00
lain
f2f455f283
Merge branch 'frontend-caching' into 'develop'
...
FrontendStatic should have reasonable caching
See merge request pleroma/pleroma!3685
2024-02-15 09:23:47 +00:00
Haelwenn
f28dcc9cb7
Merge branch 'config-stat-symlink' into 'develop'
...
Config: Check the permissions of the linked file instead of the symlink
See merge request pleroma/pleroma!4061
2024-02-15 01:48:03 +00:00
Haelwenn
d19642d7eb
Merge branch 'bugfix-ccworks' into 'develop'
...
Bugfix for ccworks AP bridge
Closes #3234
See merge request pleroma/pleroma!4043
2024-02-15 01:30:22 +00:00
feld
802c618885
Merge branch 'atom-leaks' into 'develop'
...
Fix minor atom leaks
See merge request pleroma/pleroma!4065
2024-02-14 23:28:00 +00:00
Mark Felder
9138754b0a
Changelog
2024-02-14 18:04:39 -05:00
Mark Felder
91c83a82a0
Fix atom leak in background worker
...
The only permitted values are "blocks_import", "follow_import", "mutes_import" of which we already have the equivalent atoms defined.
2024-02-14 18:03:54 -05:00
Mark Felder
86e6d395d9
Fix atom leak in password digest functionality
...
The value here gets passesd to :crypto.pbkdf2_hmac and it expects one of these atoms: :sha | :sha224 | :sha256 | :sha384 | :sha512 so it will always exist
2024-02-14 17:54:56 -05:00
Mark Felder
6be129ead2
Websocket refactor changelog
2024-02-14 15:27:12 -05:00
Mark Felder
d0f4b2b02f
Remove invalid test
...
It is not allowed to use the Sec-WebSocket-Protocol header for arbitrary values. This was possible due to the raw websocket handling we were doing with Cowboy, but Phoenix.Socket.Transport does not allow this as the value of this header is compared against a static list of subprotocols.
https://hexdocs.pm/phoenix/Phoenix.Endpoint.html#socket/3-websocket-configuration
Additionally I cannot find anywhere that we depended on this behavior. Setting the Sec-WebSocket-Protocol header does not appear to be a part of PleromaFE.
2024-02-14 15:27:12 -05:00
Mark Felder
64ad451a7b
Websocket refactor to use Phoenix.Socket.Transport
...
This will make us compatible with Cowboy and Bandit
2024-02-14 15:27:07 -05:00
feld
af9bb77cad
Merge branch 'gun-logs' into 'develop'
...
Gun connection pool logs
See merge request pleroma/pleroma!4063
2024-02-14 18:57:11 +00:00
feld
1b2f9d4a6d
Merge branch 'proxy-headers' into 'develop'
...
MediaProxy RFC compliance
See merge request pleroma/pleroma!4062
2024-02-14 18:56:54 +00:00
Mark Felder
9a4c8e2316
Change some Gun connection pool logs to debug level
2024-02-14 13:28:32 -05:00
Mark Felder
60ba6fd244
MediaProxy RFC compliance
2024-02-14 13:25:52 -05:00
Haelwenn (lanodan) Monnier
3b82864bcc
Config: Check the permissions of the linked file instead of the symlink↵
2024-02-14 18:19:50 +01:00
feld
79d69ce72a
Merge branch 'gitignore' into 'develop'
...
Update .gitignore
See merge request pleroma/pleroma!4059
2024-02-12 22:23:31 +00:00
Mark Felder
67c3acde34
Update .gitignore
2024-02-12 17:22:57 -05:00
feld
769e02d0de
Merge branch 'notifications-query' into 'develop'
...
Fix notifications query to use the index
See merge request pleroma/pleroma!4058
2024-02-12 19:37:17 +00:00
Mark Felder
cb4d3db8c6
Changelog for notifications fix pulled in from Rebased
2024-02-12 14:14:38 -05:00
Alex Gleason
8daf19ec0f
Fix notifications index
2024-02-12 14:13:11 -05:00
feld
991807080b
Merge branch 'gun-fix' into 'develop'
...
Fix Gun connection supervisor logic error
See merge request pleroma/pleroma!4056
2024-02-09 16:48:05 +00:00
Mark Felder
0eca3e38eb
Fix Gun connection supervisor logic error
...
This was recently changed to solve a Dialyzer error, but the replacement logic was faulty as "retry" would only be compared to :error and not have its truthiness evaluated.
The original logic was also faulty as it returned {:error, :pool_full} even retry was true. It never retried when the pool was full.
2024-02-09 10:48:40 -05:00
marcin mikołajczak
0fcdcc2300
Use User.full_nickname/1 in oauth html template
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-02-09 16:46:45 +01:00
feld
72480e7b2f
Merge branch 'rich-media-tests' into 'develop'
...
Pleroma.Web.RichMedia.Parser: Remove test-specific codepaths
See merge request pleroma/pleroma!4053
2024-02-07 05:47:38 +00:00
Mark Felder
9f2319e50d
RichMedia.Helpers: move the validate_page_url/1 function to the Parser module
...
This will ensure that the page validation happens in Parser.parse/1 so it can be called from anywhere and still filter invalid URLs.
2024-02-06 18:34:02 -05:00
Mark Felder
6b7b443ff9
Pleroma.Web.RichMedia.Parser: Remove test-specific codepaths
...
Also consolidate Tesla mocks into the HttpRequestMock module.
Tests were not exercising the real codepaths. The Rich Media Preview only works with https, but most of these tests were only mocking http.
2024-02-06 18:33:54 -05:00
feld
e957362779
Merge branch 'rich-media-cache' into 'develop'
...
Fix Rich Media Previews for updated activities
See merge request pleroma/pleroma!4052
2024-02-05 05:58:07 +00:00
Mark Felder
0cc038b67c
Ensure URLs with IP addresses for the host do not generate previews
2024-02-05 00:09:37 -05:00
Mark Felder
579561e97b
URI.authority is deprecated
2024-02-04 23:49:07 -05:00
Mark Felder
04fc4eddaa
Fix Rich Media Previews for updated activities
...
The Rich Media Previews were not regenerated when a post was updated due to a cache invalidation issue. They are now cached by the activity id so they can be evicted with the other activity cache objects in the :scrubber_cache.
2024-02-04 23:47:04 -05:00
feld
0b9990a7e5
Merge branch 'dialyzer-fixes' into 'develop'
...
Dialyzer and gradient fixes
See merge request pleroma/pleroma!4051
2024-02-04 17:56:14 +00:00
Mark Felder
0ffeb84f0c
Changelog
2024-02-02 12:14:21 -05:00
Mark Felder
a2c686e16c
Pleroma.Filter: fix gradient error
...
lib/pleroma/filter.ex: The clause on line 220 cannot be reached
2024-02-02 12:14:21 -05:00
Mark Felder
d42b0eb29b
Pleroma.Config.DeprecationWarnings: fix gradient errors
...
lib/pleroma/config/deprecation_warnings.ex: The atom :error on line 292 is expected to have type :ok | nil but it has type :error
lib/pleroma/config/deprecation_warnings.ex: The function call move_namespace_and_warn(
[
{Pleroma.ActivityExpiration, Pleroma.Workers.PurgeExpiredActivity,
"
* `config :pleroma, Pleroma.ActivityExpiration` is now `config :pleroma, Pleroma.Workers.PurgeExpiredActivity`"}
],
warning_preface
) on line 350 is expected to have type :ok | nil but it has type :ok | nil | :error
lib/pleroma/config/deprecation_warnings.ex: The function call move_namespace_and_warn(
[
{Pleroma.Plugs.RemoteIp, Pleroma.Web.Plugs.RemoteIp, "
* `config :pleroma, Pleroma.Plugs.RemoteIp` is now `config :pleroma, Pleroma.Web.Plugs.RemoteIp`"}
],
warning_preface
) on line 366 is expected to have type :ok | nil but it has type :ok | nil | :error
lib/pleroma/config/deprecation_warnings.ex: The atom :error on line 390 is expected to have type :ok | nil but it has type :error
lib/pleroma/config/deprecation_warnings.ex: The atom :error on line 413 is expected to have type :ok | nil but it has type :error
2024-02-02 12:14:21 -05:00
Mark Felder
bff04da0f3
Pleroma.Emoji.Pack: fix gradient error
...
lib/pleroma/emoji/pack.ex: The tuple {:cwd, tmp_dir} on line 103 is expected to have type :cooked
| :keep_old_files
| :memory
| :verbose
| {:cwd, list(char())}
| {:file_filter, (record(:zip_file) -> boolean())}
| {:file_list, list(:file.name())} but it has type {:cwd, binary()}
2024-02-02 12:14:21 -05:00
Mark Felder
ac7f2cf105
Pleroma Emoji mix task: fix gradient error
...
lib/mix/tasks/pleroma/emoji.ex: The tuple {:cwd, pack_path} on line 114 is expected to have type :cooked
| :keep_old_files
| :memory
| :verbose
| {:cwd, list(char())}
| {:file_filter, (record(:zip_file) -> boolean())}
| {:file_list, list(:file.name())} but it has type {:cwd, binary()}
2024-02-02 12:14:21 -05:00
Mark Felder
15621b7284
Pleroma.HTTP.RequestBuilder: fix gradient error
...
lib/pleroma/http/request_builder.ex: The variable key on line 69 is expected to have type String.t() but it has type atom()
2024-02-02 12:14:21 -05:00
Mark Felder
cccfdde14c
Pleroma.MFA: fix gradient error
...
lib/pleroma/mfa.ex: The map %{error: msg} on line 80 is expected to have type {:ok, list(binary())} | {:error, String.t()} but it has type %{required(:error) => any()}
2024-02-02 12:14:15 -05:00
Mark Felder
7745ee27bc
Pleroma.MFA.Totp.provisioning_uri/3: add @spec
2024-02-02 12:13:31 -05:00
marcin mikołajczak
1ed8ae2d8e
Add changelog
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-01-31 22:55:58 +01:00
marcin mikołajczak
226e53fdd7
Merge remote-tracking branch 'origin/develop' into status-notification-type
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-01-31 22:19:33 +01:00
Mark Felder
f933d24b02
Pleroma.Config.DeprecationWarnings: fix type errors detected by gradient
...
lib/pleroma/config/deprecation_warnings.ex: The atom :error on line 278 is expected to have type :ok | nil but it has type :error
lib/pleroma/config/deprecation_warnings.ex: The atom :error on line 292 is expected to have type :ok | nil but it has type :error
lib/pleroma/config/deprecation_warnings.ex: The atom :error on line 390 is expected to have type :ok | nil but it has type :error
lib/pleroma/config/deprecation_warnings.ex: The atom :error on line 413 is expected to have type :ok | nil but it has type :error
2024-01-31 14:55:14 -05:00
Mark Felder
518a38577b
Fix dialyzer errors due to deprecated usage of put_layout/2
2024-01-31 14:55:11 -05:00
Mark Felder
97c4d3bcc9
Pleroma.Web.Plugs.RateLimiter.Supervisor: dialyzer error
...
lib/pleroma/web/plugs/rate_limiter/supervisor.ex:12:no_return
Function init/1 has no local return.
2024-01-31 13:12:56 -05:00
Mark Felder
92992c022d
Pleroma.Web.OAuth.OAuthController: dialyzer error
...
validate_scopes/2 can never receive a map as it is only called in one place with a guard requiring a list
lib/pleroma/web/o_auth/o_auth_controller.ex:615:guard_fail
The guard test:
is_map(_params :: maybe_improper_list())
can never succeed.
2024-01-31 11:29:06 -05:00
Mark Felder
5e8bedcca0
Pleroma.Web.PleromaAPI.MascotController: fix dialyzer error due to bad error match
...
lib/pleroma/web/pleroma_api/controllers/mascot_controller.ex:37:pattern_match
The pattern can never match the type.
Pattern:
{:content_type, _}
Type:
{:error, _}
________________________________________________________________________________
lib/pleroma/web/pleroma_api/controllers/mascot_controller.ex:40:pattern_match
The pattern can never match the type.
Pattern:
{:upload, {:error, _}}
Type:
{:error, _}
2024-01-31 11:15:48 -05:00
Mark Felder
ed2f8e45e9
Pleroma.Web.MastodonAPI.SearchController: fix dialyzer errors
...
Add a separate Pagination.paginate_list/2 function instead of overloading paginate/4 and complicating its matching and @spec
2024-01-31 11:12:41 -05:00
Mark Felder
c6f783c551
Pleroma.Web.ControllerHelper: fix @spec to resolve dialyzer errors
...
lib/pleroma/web/admin_api/controllers/user_controller.ex:333:no_return
Function index/2 has no local return.
________________________________________________________________________________
lib/pleroma/web/admin_api/controllers/user_controller.ex:357:unused_fun
Function maybe_parse_filters/1 will never be called.
________________________________________________________________________________
lib/pleroma/web/admin_api/controllers/user_controller.ex:366:no_return
Function page_params/1 has no local return.
________________________________________________________________________________
lib/pleroma/web/admin_api/controllers/user_controller.ex:368:call
The function call will not succeed.
Pleroma.Web.ControllerHelper.fetch_integer_param(_params :: any(), :page, 1)
breaks the contract
(map(), String.t(), integer() | nil) :: integer() | nil
2024-01-31 11:01:37 -05:00
feld
3b9d991514
Merge branch 'dialyzer-fixes' into 'develop'
...
More dialyzer fixes
See merge request pleroma/pleroma!4050
2024-01-31 15:37:44 +00:00
Mark Felder
e17441b0ed
Changelog
2024-01-31 10:13:02 -05:00
Mark Felder
225afe05b3
Pleroma.Web.TwitterAPI.UtilController: fix dialyzer errors with replace_params: false
2024-01-31 10:13:02 -05:00
Mark Felder
b8db67dafa
Pleroma.Web.MastodonAPI.StatusController: fix dialzyer errors with replace_params: false
2024-01-31 10:13:02 -05:00
Mark Felder
fb7535ff9a
MascotController dialyzer error
...
lib/pleroma/web/pleroma_api/controllers/mascot_controller.ex:31:call
The function call will not succeed.
Pleroma.Web.ActivityPub.ActivityPub.upload(_file :: atom() | %{:content_type => _, _ => _}, [{:actor, <<_::56, _::size(8)>>}, ...]) ::
:ok
def a() do
:ok
end
will never return since the 2nd arguments differ
from the success typing arguments:
(any(), [
{:activity_type | :description | :filters | :size_limit | :type | :uploader,
atom() | binary() | [atom()] | non_neg_integer()}
])
2024-01-31 10:13:02 -05:00
Mark Felder
9760149886
Pleroma.Web.PleromaAPI.UserImportController: fix dialyzer errors with replace_params: false
2024-01-31 10:13:02 -05:00
Mark Felder
c39e4dd214
Pleroma.Web.PleromaAPI.NotificationController: fix dialyzer errors with replace_params: false
2024-01-31 10:13:02 -05:00
Mark Felder
e157fd60ee
Pleroma.Web.PleromaAPI.MascotController: fix dialyzer errors with replace_params: false
2024-01-31 10:13:02 -05:00
Mark Felder
9d16393d8b
Pleroma.Web.PleromaAPI.EmojiPackController: fix dialyzer errors with replace_params: false
2024-01-31 10:13:02 -05:00
Mark Felder
f1aeb80518
Pleroma.Web.PleromaAPI.EmojiFileController: fix dialyzer errors with replace_params: false
2024-01-31 10:13:02 -05:00
Mark Felder
4d20fbc6d9
Pleroma.Web.PleromaAPI.ChatController: fix dialyzer errors with replace_params: false
2024-01-31 10:12:59 -05:00
Mark Felder
fdddba100e
Pleroma.Web.MastodonAPI.SearchController: fix dialyzer errors with replace_params: false
2024-01-30 18:40:46 -05:00
Mark Felder
324fd08455
Pleroma.Web.MastodonAPI.ScheduledActivityController: fix dialyzer errors with replace_params: false
2024-01-30 18:33:23 -05:00
Mark Felder
d3c6acd2f2
Pleroma.Web.MastodonAPI.PollController: fix dialyzer errors with replace_params: false
2024-01-30 18:31:13 -05:00
Mark Felder
0a6b2c9587
Pleroma.Web.MastodonAPI.NotificationController: fix dialyzer errors with replace_params: false
2024-01-30 18:27:31 -05:00
Mark Felder
90c9f38f40
Pleroma.Web.MastodonAPI.MediaController: fix dialyzer errors with replace_params: false
2024-01-30 18:09:11 -05:00
Mark Felder
9741f045e4
Pleroma.Web.MastodonAPI.ListController: fix dialyzer errors with replace_params: false
2024-01-30 18:05:28 -05:00
Mark Felder
14de8376ad
Pleroma.Web.MastodonAPI.FollowRequestController: fix dialyzer errors with replace_params: false
2024-01-30 17:56:43 -05:00
Mark Felder
f400224a00
Pleroma.Web.AdminAPI.UserController: fix dialyzer errors with replace_params: false
2024-01-30 17:51:40 -05:00
Mark Felder
dd916e0b4c
Pleroma.Web.AdminAPI.ReportController: fix dialyzer errors with replace_params: false
2024-01-30 17:24:26 -05:00
Mark Felder
b84a33a101
Pleroma.Web.AdminAPI.RelayController: fix dialyzer errors with replace_params: false
2024-01-30 17:13:14 -05:00
Mark Felder
fb6f53fc12
Pleroma.Web.AdminAPI.MediaProxyCacheController: fix dialyzer errors with replace_params: false
2024-01-30 17:11:43 -05:00
Mark Felder
ea26dcd800
Pleroma.Web.AdminAPI.InviteController: fix dialyzer errors with replace_params: false
2024-01-30 17:06:37 -05:00
Mark Felder
85c9397ec7
Pleroma.Web.AdminAPI.InstanceDocumentController: fix dialyzer errors with replace_params: false
2024-01-30 17:04:12 -05:00
Mark Felder
ef1f301756
Pleroma.Web.AdminAPI.ConfigController: fix dialyzer errors with replace_params: false
2024-01-30 16:59:28 -05:00
Mark Felder
dec82a6a36
Phoenix.Endpoint.Cowboy2Handler does not exist
...
This should have always failed as it would not be an existing atom. Unclear how it worked since the upgrade to Phoenix 1.6.
2024-01-30 16:58:19 -05:00
Mark Felder
81c8592d69
Pleroma.Web.MastodonAPI.AccountController: fix dialyzer errors with replace_params: false
2024-01-30 16:50:00 -05:00
feld
1bba02863d
Merge branch 'dialyzer-fixes' into 'develop'
...
Dialyzer fixes, some reverts
See merge request pleroma/pleroma!4049
2024-01-30 20:32:32 +00:00
Mark Felder
cfe7438b2f
Pleroma.Web.MastodonAPI.DomainBlockController: dialyzer fixes via :replace_params
2024-01-30 14:52:15 -05:00
Mark Felder
608466d098
Modify our CastAndValidate plug to include the new functionality provided by the :replace_params config option
...
This allows us to configure Open API Spex to not overwrite the params with the casted versions which violates the Plug.Conn.t() contract
https://github.com/open-api-spex/open_api_spex/issues/92
https://github.com/open-api-spex/open_api_spex/pull/425
2024-01-30 14:49:55 -05:00
Mark Felder
91a70ba552
Bump open_api_spex
2024-01-30 14:48:45 -05:00
Mark Felder
8476eb1842
Revert "Pleroma.Web.AdminAPI.MediaProxyCacheController: dialyzer errors"
...
This reverts commit 8b02c85810
.
2024-01-30 14:20:02 -05:00
Mark Felder
88a35b2865
Revert "Pleroma.Web.TwitterAPI.UtilController: dialyzer fixes"
...
This reverts commit 17f4251b19
.
2024-01-30 14:19:54 -05:00
Mark Felder
674ae51d6a
Revert "Pleroma.Web.PleromaAPI.UserImportController: Dialyzer errors"
...
This reverts commit 52e18a6249
.
2024-01-30 14:19:41 -05:00
Mark Felder
4a80a285d1
Revert "Pleroma.Web.PleromaAPI.NotificationController: dialyzer errors"
...
This reverts commit 26a95e5787
.
2024-01-30 14:19:32 -05:00
Mark Felder
1e76ceacd5
Revert "Pleroma.Web.AdminAPI.ConfigController: dialyzer error"
...
This reverts commit 60d89cb404
.
2024-01-30 14:19:13 -05:00
Mark Felder
2c8e4f32c6
Revert "Pleroma.Web.PleromaAPI.MascotController: dialyzer errors"
...
This reverts commit 9c8055d4b3
.
2024-01-30 14:18:36 -05:00
Mark Felder
b1a6102a85
Revert "Pleroma.Web.PleromaAPI.EmojiPackController: dialyzer errors"
...
This reverts commit 77bf617c4b
.
2024-01-30 14:15:40 -05:00
Mark Felder
4a9ed4682a
Revert "Pleroma.Web.PleromaAPI.EmojiFileController: dialyzer errors"
...
This reverts commit dc912dc590
.
2024-01-30 14:15:17 -05:00
Mark Felder
b709fc4dfe
Revert "Pleroma.Web.PleromaAPI.ChatController: Dialyzer error"
...
This reverts commit 8d64eedbec
.
2024-01-30 14:15:05 -05:00
Mark Felder
589456f0ba
Revert "Pleroma.Web.AdminAPI.InviteController: dialyzer errors"
...
This reverts commit db87be126e
.
2024-01-30 14:14:56 -05:00
Mark Felder
4227db0871
Revert "Pleroma.Web.AdminAPI.UserController: dialyzer errors"
...
This reverts commit d92c3d927d
.
2024-01-30 14:14:39 -05:00
Mark Felder
ac06a47689
Revert "Pleroma.Web.AdminAPI.RelayController: dialyzer errors"
...
This reverts commit 94838ed941
.
2024-01-30 14:14:22 -05:00
Mark Felder
da5e0fca4f
Revert "Pleroma.Web.AdminAPI.ReportController: dialyzer errors"
...
This reverts commit bfe626d578
.
2024-01-30 14:14:07 -05:00
Mark Felder
39241107d9
Revert "Pleroma.Web.AdminAPI.InstanceDocumentController: fix dialyzer error"
...
This reverts commit a3024dd5ac
.
2024-01-30 14:13:56 -05:00
Mark Felder
1fa1a93cd6
Revert "Pleroma.Web.MastodonAPI.AccountController: dialyzer errors"
...
This reverts commit e53c20b03c
.
2024-01-30 14:13:46 -05:00
Mark Felder
41493bd642
Revert "Pleroma.Web.MastodonAPI.DomainBlockController: dialyzer errors"
...
This reverts commit 378edeaf15
.
2024-01-30 14:13:23 -05:00
Mark Felder
a3426fcaf3
Revert "Pleroma.Web.MastodonAPI.MediaController: dialyzer errors"
...
This reverts commit 8cd5279857
.
2024-01-30 14:13:13 -05:00
Mark Felder
b666710574
Pleroma.Web.MediaProxy.MediaProxyController: dialyzer errors
...
lib/pleroma/web/media_proxy/media_proxy_controller.ex:55:no_return
Function handle_preview/2 has no local return.
________________________________________________________________________________
lib/pleroma/web/media_proxy/media_proxy_controller.ex:59:call
The function call will not succeed.
Pleroma.HTTP.request(<<72, 69, 65, 68>>, _media_proxy_url :: any(), [], [], [{:pool, :media}])
will never return since the success typing is:
(
:delete | :get | :head | :options | :patch | :post | :put | :trace,
binary(),
any(),
[{binary(), binary()}],
Keyword.t()
) :: any()
and the contract is
(
method(),
Pleroma.HTTP.Request.url(),
String.t(),
Pleroma.HTTP.Request.headers(),
:elixir.keyword()
) :: {:ok, Tesla.Env.t()} | {:error, any()}
________________________________________________________________________________
lib/pleroma/web/media_proxy/media_proxy_controller.ex:95:unused_fun
Function handle_preview/3 will never be called.
________________________________________________________________________________
lib/pleroma/web/media_proxy/media_proxy_controller.ex:111:unused_fun
Function handle_png_preview/2 will never be called.
________________________________________________________________________________
lib/pleroma/web/media_proxy/media_proxy_controller.ex:134:unused_fun
Function handle_jpeg_preview/2 will never be called.
________________________________________________________________________________
lib/pleroma/web/media_proxy/media_proxy_controller.ex:152:unused_fun
Function handle_video_preview/2 will never be called.
________________________________________________________________________________
lib/pleroma/web/media_proxy/media_proxy_controller.ex:164:unused_fun
Function drop_static_param_and_redirect/1 will never be called.
________________________________________________________________________________
lib/pleroma/web/media_proxy/media_proxy_controller.ex:173:unused_fun
Function fallback_on_preview_error/2 will never be called.
________________________________________________________________________________
lib/pleroma/web/media_proxy/media_proxy_controller.ex:177:unused_fun
Function put_preview_response_headers/1 will never be called.
________________________________________________________________________________
lib/pleroma/web/media_proxy/media_proxy_controller.ex:177:unused_fun
Function put_preview_response_headers/2 will never be called.
________________________________________________________________________________
lib/pleroma/web/media_proxy/media_proxy_controller.ex:187:unused_fun
Function thumbnail_max_dimensions/0 will never be called.
________________________________________________________________________________
lib/pleroma/web/media_proxy/media_proxy_controller.ex:196:unused_fun
Function min_content_length_for_preview/0 will never be called.
________________________________________________________________________________
lib/pleroma/web/media_proxy/media_proxy_controller.ex:200:unused_fun
Function media_preview_proxy_config/0 will never be called.
2024-01-29 18:50:50 -05:00
Mark Felder
8cd5279857
Pleroma.Web.MastodonAPI.MediaController: dialyzer errors
...
lib/pleroma/web/mastodon_api/controllers/media_controller.ex:32:call
The function call will not succeed.
Phoenix.Controller.render(
_conn :: %{
:assigns => %{:user => _, _ => _},
:body_params => %{:file => _, _ => _},
_ => _
},
<<97, 116, 116, 97, 99, 104, 109, 101, 110, 116, 46, 106, 115, 111, 110>>,
%{:attachment => map()}
)
will never return since the success typing is:
(
%Plug.Conn{
:adapter => {atom(), _},
:assigns => %{atom() => _},
:body_params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:halted => boolean(),
:host => binary(),
:method => binary(),
:owner => pid(),
:params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:path_info => [binary()],
:path_params => %{binary() => binary() | [any()] | map()},
:port => char(),
:private => %{atom() => _},
:query_params => %Plug.Conn.Unfetched{
:aspect => atom(),
binary() => binary() | [any()] | map()
},
:query_string => binary(),
:remote_ip =>
{byte(), byte(), byte(), byte()}
| {char(), char(), char(), char(), char(), char(), char(), char()},
:req_cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => binary()},
:req_headers => [{_, _}],
:request_path => binary(),
:resp_body =>
nil
| binary()
| maybe_improper_list(
binary() | maybe_improper_list(any(), binary() | []) | byte(),
binary() | []
),
:resp_cookies => %{binary() => map()},
:resp_headers => [{_, _}],
:scheme => :http | :https,
:script_name => [binary()],
:secret_key_base => nil | binary(),
:state =>
:chunked | :file | :sent | :set | :set_chunked | :set_file | :unset | :upgraded,
:status => nil | non_neg_integer()
},
atom() | binary(),
atom() | binary() | [{_, _}] | map()
) :: %Plug.Conn{
:adapter => {atom(), _},
:assigns => %{atom() => _},
:body_params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:halted => boolean(),
:host => binary(),
:method => binary(),
:owner => pid(),
:params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:path_info => [binary()],
:path_params => %{binary() => binary() | [any()] | map()},
:port => char(),
:private => %{atom() => _},
:query_params => %Plug.Conn.Unfetched{
:aspect => atom(),
binary() => binary() | [any()] | map()
},
:query_string => binary(),
:remote_ip =>
{byte(), byte(), byte(), byte()}
| {char(), char(), char(), char(), char(), char(), char(), char()},
:req_cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => binary()},
:req_headers => [{_, _}],
:request_path => binary(),
:resp_body =>
nil
| binary()
| maybe_improper_list(
binary() | maybe_improper_list(any(), binary() | []) | byte(),
binary() | []
),
:resp_cookies => %{binary() => map()},
:resp_headers => [{_, _}],
:scheme => :http | :https,
:script_name => [binary()],
:secret_key_base => nil | binary(),
:state => :sent,
:status => nil | non_neg_integer()
}
and the contract is
(Plug.Conn.t(), binary() | atom(), Keyword.t() | map()) :: Plug.Conn.t()
________________________________________________________________________________
lib/pleroma/web/mastodon_api/controllers/media_controller.ex:48:call
The function call will not succeed.
Plug.Conn.put_status(
_conn :: %{
:assigns => %{:user => _, _ => _},
:body_params => %{:file => _, _ => _},
_ => _
},
202
)
breaks the contract
(t(), status()) :: t()
________________________________________________________________________________
lib/pleroma/web/mastodon_api/controllers/media_controller.ex:63:call
The function call will not succeed.
Phoenix.Controller.render(
_conn :: %{
:assigns => %{:user => _, _ => _},
:body_params => %{:description => _, _ => _},
_ => _
},
<<97, 116, 116, 97, 99, 104, 109, 101, 110, 116, 46, 106, 115, 111, 110>>,
%{:attachment => map()}
)
will never return since the success typing is:
(
%Plug.Conn{
:adapter => {atom(), _},
:assigns => %{atom() => _},
:body_params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:halted => boolean(),
:host => binary(),
:method => binary(),
:owner => pid(),
:params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:path_info => [binary()],
:path_params => %{binary() => binary() | [any()] | map()},
:port => char(),
:private => %{atom() => _},
:query_params => %Plug.Conn.Unfetched{
:aspect => atom(),
binary() => binary() | [any()] | map()
},
:query_string => binary(),
:remote_ip =>
{byte(), byte(), byte(), byte()}
| {char(), char(), char(), char(), char(), char(), char(), char()},
:req_cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => binary()},
:req_headers => [{_, _}],
:request_path => binary(),
:resp_body =>
nil
| binary()
| maybe_improper_list(
binary() | maybe_improper_list(any(), binary() | []) | byte(),
binary() | []
),
:resp_cookies => %{binary() => map()},
:resp_headers => [{_, _}],
:scheme => :http | :https,
:script_name => [binary()],
:secret_key_base => nil | binary(),
:state =>
:chunked | :file | :sent | :set | :set_chunked | :set_file | :unset | :upgraded,
:status => nil | non_neg_integer()
},
atom() | binary(),
atom() | binary() | [{_, _}] | map()
) :: %Plug.Conn{
:adapter => {atom(), _},
:assigns => %{atom() => _},
:body_params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:halted => boolean(),
:host => binary(),
:method => binary(),
:owner => pid(),
:params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:path_info => [binary()],
:path_params => %{binary() => binary() | [any()] | map()},
:port => char(),
:private => %{atom() => _},
:query_params => %Plug.Conn.Unfetched{
:aspect => atom(),
binary() => binary() | [any()] | map()
},
:query_string => binary(),
:remote_ip =>
{byte(), byte(), byte(), byte()}
| {char(), char(), char(), char(), char(), char(), char(), char()},
:req_cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => binary()},
:req_headers => [{_, _}],
:request_path => binary(),
:resp_body =>
nil
| binary()
| maybe_improper_list(
binary() | maybe_improper_list(any(), binary() | []) | byte(),
binary() | []
),
:resp_cookies => %{binary() => map()},
:resp_headers => [{_, _}],
:scheme => :http | :https,
:script_name => [binary()],
:secret_key_base => nil | binary(),
:state => :sent,
:status => nil | non_neg_integer()
}
and the contract is
(Plug.Conn.t(), binary() | atom(), Keyword.t() | map()) :: Plug.Conn.t()
2024-01-29 18:36:46 -05:00
Mark Felder
378edeaf15
Pleroma.Web.MastodonAPI.DomainBlockController: dialyzer errors
...
lib/pleroma/web/mastodon_api/controllers/domain_block_controller.ex:32:call
The function call will not succeed.
Phoenix.Controller.json(
_conn :: %{
:assigns => %{:user => _, _ => _},
:body_params => %{:domain => _, _ => _},
_ => _
},
%{}
)
breaks the contract
(Plug.Conn.t(), term()) :: Plug.Conn.t()
________________________________________________________________________________
lib/pleroma/web/mastodon_api/controllers/domain_block_controller.ex:43:call
The function call will not succeed.
Phoenix.Controller.json(
_conn :: %{
:assigns => %{:user => _, _ => _},
:body_params => %{:domain => _, _ => _},
_ => _
},
%{}
)
breaks the contract
(Plug.Conn.t(), term()) :: Plug.Conn.t()
2024-01-29 18:36:34 -05:00
Mark Felder
3cb2807244
Pleroma.Web.MastodonAPI.StatusView: dialyzer error
...
lib/pleroma/web/mastodon_api/views/status_view.ex:799:pattern_match_cov
The pattern
_, _
can never match, because previous clauses completely cover the type
%URI{
:authority => URI.authority(),
:fragment => nil | binary(),
:host => nil | binary(),
:path => nil | binary(),
:port => nil | char(),
:query => nil | binary(),
:scheme => nil | binary(),
:userinfo => nil | binary()
},
%URI{
:authority => URI.authority(),
:fragment => nil | binary(),
:host => nil | binary(),
:path => nil | binary(),
:port => nil | char(),
:query => nil | binary(),
:scheme => nil | binary(),
:userinfo => nil | binary()
}
.
2024-01-29 18:28:49 -05:00
Mark Felder
a266492776
Pleroma.User: dialyzer errors
...
lib/pleroma/user.ex:757:no_return
Function register_changeset/1 has no local return.
________________________________________________________________________________
lib/pleroma/user.ex:757:no_return
Function register_changeset/2 has no local return.
________________________________________________________________________________
lib/pleroma/user.ex:757:no_return
Function register_changeset/3 has no local return.
________________________________________________________________________________
lib/pleroma/user.ex:778:call
The function call will not succeed.
Pleroma.User.approval_changeset(
%Ecto.Changeset{
:action => atom(),
:changes => %{atom() => _},
:constraints => [
%{
:constraint =>
binary()
| %Regex{
:opts => binary() | [any()],
:re_pattern => _,
:re_version => _,
:source => binary()
},
:error_message => binary(),
:error_type => atom(),
:field => atom(),
:match => :exact | :prefix | :suffix,
:type => :check | :exclusion | :foreign_key | :unique
}
],
:data => nil | map(),
:empty_values => _,
:errors => Keyword.t({binary(), Keyword.t()}),
:filters => %{atom() => _},
:params => nil | %{binary() => _},
:prepare => [(_ -> any())],
:repo => atom(),
:repo_opts => Keyword.t(),
:required => [atom()],
:types =>
nil
| %{
atom() =>
atom()
| {:array | :assoc | :embed | :in | :map | :maybe | :param, _}
| {:parameterized, atom(), _}
},
:valid? => boolean(),
:validations => Keyword.t()
},
[{:set_approval, _}, ...]
)
breaks the contract
(t(), :elixir.keyword()) :: Ecto.Changeset.t()
________________________________________________________________________________
lib/pleroma/user.ex:854:unused_fun
Function maybe_validate_required_birthday/1 will never be called.
2024-01-29 17:37:52 -05:00
Mark Felder
2de84e2e3b
API Specs: many dialyzer errors
...
Too many to include in a commit log
Module instead of schema was being passed
2024-01-29 17:10:28 -05:00
Mark Felder
4fc177eb46
Pleroma.Web.ControllerHelper: dialyzer error
...
lib/pleroma/web/controller_helper.ex:97:pattern_match
The pattern can never match the type.
Pattern:
nil
Type:
%Plug.Conn{
:adapter => {atom(), _},
:assigns => %{atom() => _},
:body_params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:halted => boolean(),
:host => binary(),
:method => binary(),
:owner => pid(),
:params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:path_info => [binary()],
:path_params => %{
binary() =>
binary()
| [binary() | [any()] | %{binary() => _}]
| %{binary() => binary() | [any()] | %{binary() => _}}
},
:port => char(),
:private => %{atom() => _},
:query_params => %Plug.Conn.Unfetched{
:aspect => atom(),
binary() =>
binary()
| [binary() | [any()] | %{binary() => _}]
| %{binary() => binary() | [any()] | %{binary() => _}}
},
:query_string => binary(),
:remote_ip =>
{byte(), byte(), byte(), byte()}
| {char(), char(), char(), char(), char(), char(), char(), char()},
:req_cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => binary()},
:req_headers => [{binary(), binary()}],
:request_path => binary(),
:resp_body =>
nil
| binary()
| maybe_improper_list(
binary() | maybe_improper_list(any(), binary() | []) | byte(),
binary() | []
),
:resp_cookies => %{binary() => map()},
:resp_headers => [{binary(), binary()}],
:scheme => :http | :https,
:script_name => [binary()],
:secret_key_base => nil | binary(),
:state => :sent,
:status => nil | non_neg_integer()
}
2024-01-29 16:42:48 -05:00
Haelwenn
251c455b91
Merge branch 'deps-bump' into 'develop'
...
Bump dependencies
See merge request pleroma/pleroma!4044
2024-01-29 17:43:00 +00:00
feld
c9dc881747
Merge branch 'dialyzer-fixes' into 'develop'
...
More dialyzer fixes
See merge request pleroma/pleroma!4048
2024-01-28 23:20:25 +00:00
Mark Felder
6a22a80f9f
Pleroma.Web.MastodonAPI.DirectoryController: dialyzer errors
...
lib/pleroma/web/mastodon_api/controllers/directory_controller.ex:6:unused_fun
Function skip_auth/2 will never be called.
________________________________________________________________________________
lib/pleroma/web/mastodon_api/controllers/directory_controller.ex:6:unused_fun
Function skip_plug/2 will never be called.
________________________________________________________________________________
lib/pleroma/web/mastodon_api/controllers/directory_controller.ex:18:guard_fail
The guard clause:
when _action :: atom() == <<105, 110, 100, 101, 120>>
can never succeed.
2024-01-28 17:41:07 -05:00
Mark Felder
e53c20b03c
Pleroma.Web.MastodonAPI.AccountController: dialyzer errors
...
lib/pleroma/web/mastodon_api/controllers/account_controller.ex:479:call
The function call will not succeed.
Phoenix.Controller.render(
_conn :: %{
:assigns => %{:account => _, :user => _, _ => _},
:body_params => %{:comment => _, _ => _},
_ => _
},
<<114, 101, 108, 97, 116, 105, 111, 110, 115, 104, 105, 112, 46, 106, 115, 111, 110>>,
[
{:target, %Pleroma.User{:id => _, _ => _}} | {:user, %Pleroma.User{:id => _, _ => _}},
...
]
)
will never return since the success typing is:
(
%Plug.Conn{
:adapter => {atom(), _},
:assigns => %{atom() => _},
:body_params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:halted => boolean(),
:host => binary(),
:method => binary(),
:owner => pid(),
:params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:path_info => [binary()],
:path_params => %{binary() => binary() | [any()] | map()},
:port => char(),
:private => %{atom() => _},
:query_params => %Plug.Conn.Unfetched{
:aspect => atom(),
binary() => binary() | [any()] | map()
},
:query_string => binary(),
:remote_ip =>
{byte(), byte(), byte(), byte()}
| {char(), char(), char(), char(), char(), char(), char(), char()},
:req_cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => binary()},
:req_headers => [{_, _}],
:request_path => binary(),
:resp_body =>
nil
| binary()
| maybe_improper_list(
binary() | maybe_improper_list(any(), binary() | []) | byte(),
binary() | []
),
:resp_cookies => %{binary() => map()},
:resp_headers => [{_, _}],
:scheme => :http | :https,
:script_name => [binary()],
:secret_key_base => nil | binary(),
:state =>
:chunked | :file | :sent | :set | :set_chunked | :set_file | :unset | :upgraded,
:status => nil | non_neg_integer()
},
atom() | binary(),
atom() | binary() | [{_, _}] | map()
) :: %Plug.Conn{
:adapter => {atom(), _},
:assigns => %{atom() => _},
:body_params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:halted => boolean(),
:host => binary(),
:method => binary(),
:owner => pid(),
:params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:path_info => [binary()],
:path_params => %{binary() => binary() | [any()] | map()},
:port => char(),
:private => %{atom() => _},
:query_params => %Plug.Conn.Unfetched{
:aspect => atom(),
binary() => binary() | [any()] | map()
},
:query_string => binary(),
:remote_ip =>
{byte(), byte(), byte(), byte()}
| {char(), char(), char(), char(), char(), char(), char(), char()},
:req_cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => binary()},
:req_headers => [{_, _}],
:request_path => binary(),
:resp_body =>
nil
| binary()
| maybe_improper_list(
binary() | maybe_improper_list(any(), binary() | []) | byte(),
binary() | []
),
:resp_cookies => %{binary() => map()},
:resp_headers => [{_, _}],
:scheme => :http | :https,
:script_name => [binary()],
:secret_key_base => nil | binary(),
:state => :sent,
:status => nil | non_neg_integer()
}
and the contract is
(Plug.Conn.t(), binary() | atom(), Keyword.t() | map()) :: Plug.Conn.t()
________________________________________________________________________________
lib/pleroma/web/mastodon_api/controllers/account_controller.ex:519:call
The function call will not succeed.
Plug.Conn.assign(
_conn :: %{:body_params => %{:uri => _, _ => _}, _ => _},
:account,
_user :: %Pleroma.User{_ => _}
)
breaks the contract
(t(), atom(), term()) :: t()
2024-01-28 17:41:07 -05:00
Mark Felder
e2fc03ec72
Pleroma.Web.ActivityPub.Utils: dialyzer error
...
lib/pleroma/web/activity_pub/utils.ex:779:guard_fail
The guard clause:
when _ :: %Pleroma.Object{_ => _} === nil
can never succeed.
2024-01-28 17:14:41 -05:00
Mark Felder
082d665160
Pleroma.Web.AdminAPI.UserController: dialyzer errors
...
lib/pleroma/web/admin_api/controllers/user_controller.ex:205:no_return
Function activate/2 has no local return.
________________________________________________________________________________
lib/pleroma/web/admin_api/controllers/user_controller.ex:215:call
The function call will not succeed.
Keyword.values(
_updated_users :: %Pleroma.User{
:__meta__ => _,
:accepts_chat_messages => _,
:actor_type => _,
:allow_following_move => _,
:also_known_as => _,
:ap_id => _,
:avatar => _,
:background => _,
:banner => _,
:bio => _,
:birthday => _,
:blocked_users => _,
:blockee_blocks => _,
:blocker_blocks => _,
:blocker_users => _,
:blocks => _,
:confirmation_token => _,
:default_scope => _,
:deliveries => _,
:disclose_client => _,
:domain_blocks => _,
:email => _,
:email_notifications => _,
:emoji => _,
:endorsed_users => _,
:endorsee_endorsements => _,
:endorser_endorsements => _,
:endorser_users => _,
:featured_address => _,
:fields => _,
:follower_address => _,
:follower_count => _,
:following_address => _,
:following_count => _,
:hide_favorites => _,
:hide_followers => _,
:hide_followers_count => _,
:hide_follows => _,
:hide_follows_count => _,
:id => _,
:inbox => _,
:incoming_relationships => _,
:inserted_at => _,
:invisible => _,
:is_active => _,
:is_admin => _,
:is_approved => _,
:is_confirmed => _,
:is_discoverable => _,
:is_locked => _,
:is_moderator => _,
:is_suggested => _,
:keys => _,
:language => _,
:last_active_at => _,
:last_digest_emailed_at => _,
:last_refreshed_at => _,
:last_status_at => _,
:local => _,
:mascot => _,
:multi_factor_authentication_settings => _,
:muted_notifications => _,
:muted_reblogs => _,
:muted_users => _,
:mutee_mutes => _,
:muter_mutes => _,
:muter_users => _,
:mutes => _,
:name => _,
:nickname => _,
:no_rich_text => _,
:note_count => _,
:notification_muted_users => _,
:notification_mutee_mutes => _,
:notification_muter_mutes => _,
:notification_muter_users => _,
:notification_settings => _,
:notifications => _,
:outgoing_relationships => _,
:password => _,
:password_confirmation => _,
:password_hash => _,
:password_reset_pending => _,
:pinned_objects => _,
:pleroma_settings_store => _,
:public_key => _,
:raw_bio => _,
:raw_fields => _,
:reblog_muted_users => _,
:reblog_mutee_mutes => _,
:reblog_muter_mutes => _,
:reblog_muter_users => _,
:registration_reason => _,
:registrations => _,
:search_rank => _,
:search_type => _,
:shared_inbox => _,
:show_birthday => _,
:show_role => _,
:skip_thread_containment => _,
:subscribee_subscriptions => _,
:subscribee_users => _,
:subscriber_subscriptions => _,
:subscriber_users => _,
:subscribers => _,
:tags => _,
:updated_at => _,
:uri => _
}
)
will never return since the success typing is:
([any()]) :: [any()]
and the contract is
(t()) :: [value()]
________________________________________________________________________________
lib/pleroma/web/admin_api/controllers/user_controller.ex:218:no_return
Function deactivate/2 has no local return.
________________________________________________________________________________
lib/pleroma/web/admin_api/controllers/user_controller.ex:228:call
The function call will not succeed.
Keyword.values(
_updated_users :: %Pleroma.User{
:__meta__ => _,
:accepts_chat_messages => _,
:actor_type => _,
:allow_following_move => _,
:also_known_as => _,
:ap_id => _,
:avatar => _,
:background => _,
:banner => _,
:bio => _,
:birthday => _,
:blocked_users => _,
:blockee_blocks => _,
:blocker_blocks => _,
:blocker_users => _,
:blocks => _,
:confirmation_token => _,
:default_scope => _,
:deliveries => _,
:disclose_client => _,
:domain_blocks => _,
:email => _,
:email_notifications => _,
:emoji => _,
:endorsed_users => _,
:endorsee_endorsements => _,
:endorser_endorsements => _,
:endorser_users => _,
:featured_address => _,
:fields => _,
:follower_address => _,
:follower_count => _,
:following_address => _,
:following_count => _,
:hide_favorites => _,
:hide_followers => _,
:hide_followers_count => _,
:hide_follows => _,
:hide_follows_count => _,
:id => _,
:inbox => _,
:incoming_relationships => _,
:inserted_at => _,
:invisible => _,
:is_active => _,
:is_admin => _,
:is_approved => _,
:is_confirmed => _,
:is_discoverable => _,
:is_locked => _,
:is_moderator => _,
:is_suggested => _,
:keys => _,
:language => _,
:last_active_at => _,
:last_digest_emailed_at => _,
:last_refreshed_at => _,
:last_status_at => _,
:local => _,
:mascot => _,
:multi_factor_authentication_settings => _,
:muted_notifications => _,
:muted_reblogs => _,
:muted_users => _,
:mutee_mutes => _,
:muter_mutes => _,
:muter_users => _,
:mutes => _,
:name => _,
:nickname => _,
:no_rich_text => _,
:note_count => _,
:notification_muted_users => _,
:notification_mutee_mutes => _,
:notification_muter_mutes => _,
:notification_muter_users => _,
:notification_settings => _,
:notifications => _,
:outgoing_relationships => _,
:password => _,
:password_confirmation => _,
:password_hash => _,
:password_reset_pending => _,
:pinned_objects => _,
:pleroma_settings_store => _,
:public_key => _,
:raw_bio => _,
:raw_fields => _,
:reblog_muted_users => _,
:reblog_mutee_mutes => _,
:reblog_muter_mutes => _,
:reblog_muter_users => _,
:registration_reason => _,
:registrations => _,
:search_rank => _,
:search_type => _,
:shared_inbox => _,
:show_birthday => _,
:show_role => _,
:skip_thread_containment => _,
:subscribee_subscriptions => _,
:subscribee_users => _,
:subscriber_subscriptions => _,
:subscriber_users => _,
:subscribers => _,
:tags => _,
:updated_at => _,
:uri => _
}
)
will never return since the success typing is:
([any()]) :: [any()]
and the contract is
(t()) :: [value()]
2024-01-28 17:14:37 -05:00
Mark Felder
a3024dd5ac
Pleroma.Web.AdminAPI.InstanceDocumentController: fix dialyzer error
...
lib/pleroma/web/admin_api/controllers/instance_document_controller.ex:32:call
The function call will not succeed.
Phoenix.Controller.json(_conn :: %{:body_params => %{:file => _, _ => _}, _ => _}, %{<<_::24>> => binary()}) ::
:ok
def a() do
:ok
end
breaks the contract
(Plug.Conn.t(), term()) :: Plug.Conn.t()
2024-01-28 16:35:30 -05:00
Mark Felder
bfe626d578
Pleroma.Web.AdminAPI.ReportController: dialyzer errors
...
lib/pleroma/web/admin_api/controllers/report_controller.ex:48:no_return
Function update/2 has no local return.
________________________________________________________________________________
lib/pleroma/web/admin_api/controllers/report_controller.ex:70:call
The function call will not succeed.
Pleroma.Web.ControllerHelper.json_response(
_conn :: %{
:assigns => %{:user => _, _ => _},
:body_params => %{:reports => _, _ => _},
_ => _
},
:bad_request,
_result :: [any()]
)
will never return since the 1st arguments differ
from the success typing arguments:
(
%Plug.Conn{
:adapter => {atom(), _},
:assigns => %{atom() => _},
:body_params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:halted => boolean(),
:host => binary(),
:method => binary(),
:owner => pid(),
:params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:path_info => [binary()],
:path_params => %{
binary() =>
binary() | [binary() | [any()] | map()] | %{binary() => binary() | [any()] | map()}
},
:port => char(),
:private => %{atom() => _},
:query_params => %Plug.Conn.Unfetched{
:aspect => atom(),
binary() =>
binary() | [binary() | [any()] | map()] | %{binary() => binary() | [any()] | map()}
},
:query_string => binary(),
:remote_ip =>
{byte(), byte(), byte(), byte()}
| {char(), char(), char(), char(), char(), char(), char(), char()},
:req_cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => binary()},
:req_headers => [{binary(), binary()}],
:request_path => binary(),
:resp_body =>
nil
| binary()
| maybe_improper_list(
binary() | maybe_improper_list(any(), binary() | []) | byte(),
binary() | []
),
:resp_cookies => %{binary() => map()},
:resp_headers => [{binary(), binary()}],
:scheme => :http | :https,
:script_name => [binary()],
:secret_key_base => nil | binary(),
:state =>
:chunked | :file | :sent | :set | :set_chunked | :set_file | :unset | :upgraded,
:status => nil | non_neg_integer()
},
atom() | 1..1_114_111,
any()
)
________________________________________________________________________________
lib/pleroma/web/admin_api/controllers/report_controller.ex:72:call
The function call will not succeed.
Pleroma.Web.ControllerHelper.json_response(
_conn :: %{
:assigns => %{:user => _, _ => _},
:body_params => %{:reports => _, _ => _},
_ => _
},
:no_content,
<<>>
)
will never return since the 1st arguments differ
from the success typing arguments:
(
%Plug.Conn{
:adapter => {atom(), _},
:assigns => %{atom() => _},
:body_params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:halted => boolean(),
:host => binary(),
:method => binary(),
:owner => pid(),
:params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:path_info => [binary()],
:path_params => %{
binary() =>
binary() | [binary() | [any()] | map()] | %{binary() => binary() | [any()] | map()}
},
:port => char(),
:private => %{atom() => _},
:query_params => %Plug.Conn.Unfetched{
:aspect => atom(),
binary() =>
binary() | [binary() | [any()] | map()] | %{binary() => binary() | [any()] | map()}
},
:query_string => binary(),
:remote_ip =>
{byte(), byte(), byte(), byte()}
| {char(), char(), char(), char(), char(), char(), char(), char()},
:req_cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => binary()},
:req_headers => [{binary(), binary()}],
:request_path => binary(),
:resp_body =>
nil
| binary()
| maybe_improper_list(
binary() | maybe_improper_list(any(), binary() | []) | byte(),
binary() | []
),
:resp_cookies => %{binary() => map()},
:resp_headers => [{binary(), binary()}],
:scheme => :http | :https,
:script_name => [binary()],
:secret_key_base => nil | binary(),
:state =>
:chunked | :file | :sent | :set | :set_chunked | :set_file | :unset | :upgraded,
:status => nil | non_neg_integer()
},
atom() | 1..1_114_111,
any()
)
________________________________________________________________________________
lib/pleroma/web/admin_api/controllers/report_controller.ex:76:no_return
Function notes_create/2 has no local return.
________________________________________________________________________________
lib/pleroma/web/admin_api/controllers/report_controller.ex:89:call
The function call will not succeed.
Pleroma.Web.ControllerHelper.json_response(
_conn :: %{
:assigns => %{:user => _, _ => _},
:body_params => %{:content => _, _ => _},
_ => _
},
:no_content,
<<>>
)
will never return since the 1st arguments differ
from the success typing arguments:
(
%Plug.Conn{
:adapter => {atom(), _},
:assigns => %{atom() => _},
:body_params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:halted => boolean(),
:host => binary(),
:method => binary(),
:owner => pid(),
:params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:path_info => [binary()],
:path_params => %{
binary() =>
binary() | [binary() | [any()] | map()] | %{binary() => binary() | [any()] | map()}
},
:port => char(),
:private => %{atom() => _},
:query_params => %Plug.Conn.Unfetched{
:aspect => atom(),
binary() =>
binary() | [binary() | [any()] | map()] | %{binary() => binary() | [any()] | map()}
},
:query_string => binary(),
:remote_ip =>
{byte(), byte(), byte(), byte()}
| {char(), char(), char(), char(), char(), char(), char(), char()},
:req_cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => binary()},
:req_headers => [{binary(), binary()}],
:request_path => binary(),
:resp_body =>
nil
| binary()
| maybe_improper_list(
binary() | maybe_improper_list(any(), binary() | []) | byte(),
binary() | []
),
:resp_cookies => %{binary() => map()},
:resp_headers => [{binary(), binary()}],
:scheme => :http | :https,
:script_name => [binary()],
:secret_key_base => nil | binary(),
:state =>
:chunked | :file | :sent | :set | :set_chunked | :set_file | :unset | :upgraded,
:status => nil | non_neg_integer()
},
atom() | 1..1_114_111,
any()
)
________________________________________________________________________________
lib/pleroma/web/admin_api/controllers/report_controller.ex:91:call
The function call will not succeed.
Pleroma.Web.ControllerHelper.json_response(
_conn :: %{
:assigns => %{:user => _, _ => _},
:body_params => %{:content => _, _ => _},
_ => _
},
:bad_request,
<<>>
)
will never return since the 1st arguments differ
from the success typing arguments:
(
%Plug.Conn{
:adapter => {atom(), _},
:assigns => %{atom() => _},
:body_params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:halted => boolean(),
:host => binary(),
:method => binary(),
:owner => pid(),
:params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:path_info => [binary()],
:path_params => %{
binary() =>
binary() | [binary() | [any()] | map()] | %{binary() => binary() | [any()] | map()}
},
:port => char(),
:private => %{atom() => _},
:query_params => %Plug.Conn.Unfetched{
:aspect => atom(),
binary() =>
binary() | [binary() | [any()] | map()] | %{binary() => binary() | [any()] | map()}
},
:query_string => binary(),
:remote_ip =>
{byte(), byte(), byte(), byte()}
| {char(), char(), char(), char(), char(), char(), char(), char()},
:req_cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => binary()},
:req_headers => [{binary(), binary()}],
:request_path => binary(),
:resp_body =>
nil
| binary()
| maybe_improper_list(
binary() | maybe_improper_list(any(), binary() | []) | byte(),
binary() | []
),
:resp_cookies => %{binary() => map()},
:resp_headers => [{binary(), binary()}],
:scheme => :http | :https,
:script_name => [binary()],
:secret_key_base => nil | binary(),
:state =>
:chunked | :file | :sent | :set | :set_chunked | :set_file | :unset | :upgraded,
:status => nil | non_neg_integer()
},
atom() | 1..1_114_111,
any()
)
2024-01-28 16:32:50 -05:00
Mark Felder
94838ed941
Pleroma.Web.AdminAPI.RelayController: dialyzer errors
...
lib/pleroma/web/admin_api/controllers/relay_controller.ex:34:no_return
Function follow/2 has no local return.
________________________________________________________________________________
lib/pleroma/web/admin_api/controllers/relay_controller.ex:38:call
The function call will not succeed.
Phoenix.Controller.json(
_conn :: %{
:assigns => %{:user => _, _ => _},
:body_params => %{:relay_url => _, _ => _},
_ => _
},
%{:actor => binary(), :followed_back => boolean()}
)
breaks the contract
(Plug.Conn.t(), term()) :: Plug.Conn.t()
________________________________________________________________________________
lib/pleroma/web/admin_api/controllers/relay_controller.ex:41:call
The function call will not succeed.
Plug.Conn.put_status(
_conn :: %{
:assigns => %{:user => _, _ => _},
:body_params => %{:relay_url => _, _ => _},
_ => _
},
500
)
breaks the contract
(t(), status()) :: t()
________________________________________________________________________________
lib/pleroma/web/admin_api/controllers/relay_controller.ex:47:no_return
Function unfollow/2 has no local return.
________________________________________________________________________________
lib/pleroma/web/admin_api/controllers/relay_controller.ex:51:call
The function call will not succeed.
Phoenix.Controller.json(
_conn :: %{
:assigns => %{:user => _, _ => _},
:body_params => %{:relay_url => _, _ => _},
_ => _
},
_target :: binary()
)
breaks the contract
(Plug.Conn.t(), term()) :: Plug.Conn.t()
________________________________________________________________________________
lib/pleroma/web/admin_api/controllers/relay_controller.ex:54:call
The function call will not succeed.
Plug.Conn.put_status(
_conn :: %{
:assigns => %{:user => _, _ => _},
:body_params => %{:relay_url => _, _ => _},
_ => _
},
500
)
breaks the contract
(t(), status()) :: t()
2024-01-28 16:09:55 -05:00
Mark Felder
d92c3d927d
Pleroma.Web.AdminAPI.UserController: dialyzer errors
...
lib/pleroma/web/admin_api/controllers/user_controller.ex:54:no_return
Function delete/2 has no local return.
________________________________________________________________________________
lib/pleroma/web/admin_api/controllers/user_controller.ex:74:call
The function call will not succeed.
Phoenix.Controller.json(
_conn :: %{
:assigns => %{:user => _, _ => _},
:body_params => %{:nicknames => _, _ => _},
_ => _
},
_nicknames :: any()
)
breaks the contract
(Plug.Conn.t(), term()) :: Plug.Conn.t()
________________________________________________________________________________
lib/pleroma/web/admin_api/controllers/user_controller.ex:77:no_return
Function follow/2 has no local return.
________________________________________________________________________________
lib/pleroma/web/admin_api/controllers/user_controller.ex:99:call
The function call will not succeed.
Phoenix.Controller.json(
_conn :: %{
:assigns => %{:user => _, _ => _},
:body_params => %{:followed => _, :follower => _, _ => _},
_ => _
},
<<111, 107>>
)
breaks the contract
(Plug.Conn.t(), term()) :: Plug.Conn.t()
________________________________________________________________________________
lib/pleroma/web/admin_api/controllers/user_controller.ex:102:no_return
Function unfollow/2 has no local return.
________________________________________________________________________________
lib/pleroma/web/admin_api/controllers/user_controller.ex:124:call
The function call will not succeed.
Phoenix.Controller.json(
_conn :: %{
:assigns => %{:user => _, _ => _},
:body_params => %{:followed => _, :follower => _, _ => _},
_ => _
},
<<111, 107>>
)
breaks the contract
(Plug.Conn.t(), term()) :: Plug.Conn.t()
________________________________________________________________________________
lib/pleroma/web/admin_api/controllers/user_controller.ex:127:no_return
Function create/2 has no local return.
________________________________________________________________________________
lib/pleroma/web/admin_api/controllers/user_controller.ex:130:no_return
The created anonymous function has no local return.
________________________________________________________________________________
lib/pleroma/web/admin_api/controllers/user_controller.ex:163:call
The function call will not succeed.
Phoenix.Controller.render(
_conn :: %{
:assigns => %{:user => _, _ => _},
:body_params => %{:users => _, _ => _},
_ => _
},
<<99, 114, 101, 97, 116, 101, 100, 95, 109, 97, 110, 121, 46, 106, 115, 111, 110>>,
[{:users, [any()]}, ...]
)
will never return since the success typing is:
(
%Plug.Conn{
:adapter => {atom(), _},
:assigns => %{atom() => _},
:body_params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:halted => boolean(),
:host => binary(),
:method => binary(),
:owner => pid(),
:params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:path_info => [binary()],
:path_params => %{binary() => binary() | [any()] | map()},
:port => char(),
:private => %{atom() => _},
:query_params => %Plug.Conn.Unfetched{
:aspect => atom(),
binary() => binary() | [any()] | map()
},
:query_string => binary(),
:remote_ip =>
{byte(), byte(), byte(), byte()}
| {char(), char(), char(), char(), char(), char(), char(), char()},
:req_cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => binary()},
:req_headers => [{_, _}],
:request_path => binary(),
:resp_body =>
nil
| binary()
| maybe_improper_list(
binary() | maybe_improper_list(any(), binary() | []) | byte(),
binary() | []
),
:resp_cookies => %{binary() => map()},
:resp_headers => [{_, _}],
:scheme => :http | :https,
:script_name => [binary()],
:secret_key_base => nil | binary(),
:state =>
:chunked | :file | :sent | :set | :set_chunked | :set_file | :unset | :upgraded,
:status => nil | non_neg_integer()
},
atom() | binary(),
atom() | binary() | [{_, _}] | map()
) :: %Plug.Conn{
:adapter => {atom(), _},
:assigns => %{atom() => _},
:body_params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:halted => boolean(),
:host => binary(),
:method => binary(),
:owner => pid(),
:params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:path_info => [binary()],
:path_params => %{binary() => binary() | [any()] | map()},
:port => char(),
:private => %{atom() => _},
:query_params => %Plug.Conn.Unfetched{
:aspect => atom(),
binary() => binary() | [any()] | map()
},
:query_string => binary(),
:remote_ip =>
{byte(), byte(), byte(), byte()}
| {char(), char(), char(), char(), char(), char(), char(), char()},
:req_cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => binary()},
:req_headers => [{_, _}],
:request_path => binary(),
:resp_body =>
nil
| binary()
| maybe_improper_list(
binary() | maybe_improper_list(any(), binary() | []) | byte(),
binary() | []
),
:resp_cookies => %{binary() => map()},
:resp_headers => [{_, _}],
:scheme => :http | :https,
:script_name => [binary()],
:secret_key_base => nil | binary(),
:state => :sent,
:status => nil | non_neg_integer()
}
and the contract is
(Plug.Conn.t(), binary() | atom(), Keyword.t() | map()) :: Plug.Conn.t()
________________________________________________________________________________
lib/pleroma/web/admin_api/controllers/user_controller.ex:175:call
The function call will not succeed.
Plug.Conn.put_status(
_conn :: %{
:assigns => %{:user => _, _ => _},
:body_params => %{:users => _, _ => _},
_ => _
},
:conflict
)
breaks the contract
(t(), status()) :: t()
________________________________________________________________________________
lib/pleroma/web/admin_api/controllers/user_controller.ex:205:no_return
Function activate/2 has no local return.
________________________________________________________________________________
lib/pleroma/web/admin_api/controllers/user_controller.ex:215:call
The function call will not succeed.
Keyword.values(
_updated_users :: %Pleroma.User{
:__meta__ => _,
:accepts_chat_messages => _,
:actor_type => _,
:allow_following_move => _,
:also_known_as => _,
:ap_id => _,
:avatar => _,
:background => _,
:banner => _,
:bio => _,
:birthday => _,
:blocked_users => _,
:blockee_blocks => _,
:blocker_blocks => _,
:blocker_users => _,
:blocks => _,
:confirmation_token => _,
:default_scope => _,
:deliveries => _,
:disclose_client => _,
:domain_blocks => _,
:email => _,
:email_notifications => _,
:emoji => _,
:endorsed_users => _,
:endorsee_endorsements => _,
:endorser_endorsements => _,
:endorser_users => _,
:featured_address => _,
:fields => _,
:follower_address => _,
:follower_count => _,
:following_address => _,
:following_count => _,
:hide_favorites => _,
:hide_followers => _,
:hide_followers_count => _,
:hide_follows => _,
:hide_follows_count => _,
:id => _,
:inbox => _,
:incoming_relationships => _,
:inserted_at => _,
:invisible => _,
:is_active => _,
:is_admin => _,
:is_approved => _,
:is_confirmed => _,
:is_discoverable => _,
:is_locked => _,
:is_moderator => _,
:is_suggested => _,
:keys => _,
:language => _,
:last_active_at => _,
:last_digest_emailed_at => _,
:last_refreshed_at => _,
:last_status_at => _,
:local => _,
:mascot => _,
:multi_factor_authentication_settings => _,
:muted_notifications => _,
:muted_reblogs => _,
:muted_users => _,
:mutee_mutes => _,
:muter_mutes => _,
:muter_users => _,
:mutes => _,
:name => _,
:nickname => _,
:no_rich_text => _,
:note_count => _,
:notification_muted_users => _,
:notification_mutee_mutes => _,
:notification_muter_mutes => _,
:notification_muter_users => _,
:notification_settings => _,
:notifications => _,
:outgoing_relationships => _,
:password => _,
:password_confirmation => _,
:password_hash => _,
:password_reset_pending => _,
:pinned_objects => _,
:pleroma_settings_store => _,
:public_key => _,
:raw_bio => _,
:raw_fields => _,
:reblog_muted_users => _,
:reblog_mutee_mutes => _,
:reblog_muter_mutes => _,
:reblog_muter_users => _,
:registration_reason => _,
:registrations => _,
:search_rank => _,
:search_type => _,
:shared_inbox => _,
:show_birthday => _,
:show_role => _,
:skip_thread_containment => _,
:subscribee_subscriptions => _,
:subscribee_users => _,
:subscriber_subscriptions => _,
:subscriber_users => _,
:subscribers => _,
:tags => _,
:updated_at => _,
:uri => _
}
)
will never return since the success typing is:
([any()]) :: [any()]
and the contract is
(t()) :: [value()]
________________________________________________________________________________
lib/pleroma/web/admin_api/controllers/user_controller.ex:218:no_return
Function deactivate/2 has no local return.
________________________________________________________________________________
lib/pleroma/web/admin_api/controllers/user_controller.ex:228:call
The function call will not succeed.
Keyword.values(
_updated_users :: %Pleroma.User{
:__meta__ => _,
:accepts_chat_messages => _,
:actor_type => _,
:allow_following_move => _,
:also_known_as => _,
:ap_id => _,
:avatar => _,
:background => _,
:banner => _,
:bio => _,
:birthday => _,
:blocked_users => _,
:blockee_blocks => _,
:blocker_blocks => _,
:blocker_users => _,
:blocks => _,
:confirmation_token => _,
:default_scope => _,
:deliveries => _,
:disclose_client => _,
:domain_blocks => _,
:email => _,
:email_notifications => _,
:emoji => _,
:endorsed_users => _,
:endorsee_endorsements => _,
:endorser_endorsements => _,
:endorser_users => _,
:featured_address => _,
:fields => _,
:follower_address => _,
:follower_count => _,
:following_address => _,
:following_count => _,
:hide_favorites => _,
:hide_followers => _,
:hide_followers_count => _,
:hide_follows => _,
:hide_follows_count => _,
:id => _,
:inbox => _,
:incoming_relationships => _,
:inserted_at => _,
:invisible => _,
:is_active => _,
:is_admin => _,
:is_approved => _,
:is_confirmed => _,
:is_discoverable => _,
:is_locked => _,
:is_moderator => _,
:is_suggested => _,
:keys => _,
:language => _,
:last_active_at => _,
:last_digest_emailed_at => _,
:last_refreshed_at => _,
:last_status_at => _,
:local => _,
:mascot => _,
:multi_factor_authentication_settings => _,
:muted_notifications => _,
:muted_reblogs => _,
:muted_users => _,
:mutee_mutes => _,
:muter_mutes => _,
:muter_users => _,
:mutes => _,
:name => _,
:nickname => _,
:no_rich_text => _,
:note_count => _,
:notification_muted_users => _,
:notification_mutee_mutes => _,
:notification_muter_mutes => _,
:notification_muter_users => _,
:notification_settings => _,
:notifications => _,
:outgoing_relationships => _,
:password => _,
:password_confirmation => _,
:password_hash => _,
:password_reset_pending => _,
:pinned_objects => _,
:pleroma_settings_store => _,
:public_key => _,
:raw_bio => _,
:raw_fields => _,
:reblog_muted_users => _,
:reblog_mutee_mutes => _,
:reblog_muter_mutes => _,
:reblog_muter_users => _,
:registration_reason => _,
:registrations => _,
:search_rank => _,
:search_type => _,
:shared_inbox => _,
:show_birthday => _,
:show_role => _,
:skip_thread_containment => _,
:subscribee_subscriptions => _,
:subscribee_users => _,
:subscriber_subscriptions => _,
:subscriber_users => _,
:subscribers => _,
:tags => _,
:updated_at => _,
:uri => _
}
)
will never return since the success typing is:
([any()]) :: [any()]
and the contract is
(t()) :: [value()]
________________________________________________________________________________
lib/pleroma/web/admin_api/controllers/user_controller.ex:231:no_return
Function approve/2 has no local return.
________________________________________________________________________________
lib/pleroma/web/admin_api/controllers/user_controller.ex:241:call
The function call will not succeed.
Phoenix.Controller.render(
_conn :: %{
:assigns => %{:user => _, _ => _},
:body_params => %{:nicknames => _, _ => _},
_ => _
},
<<105, 110, 100, 101, 120, 46, 106, 115, 111, 110>>,
[{:users, _}, ...]
)
will never return since the success typing is:
(
%Plug.Conn{
:adapter => {atom(), _},
:assigns => %{atom() => _},
:body_params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:halted => boolean(),
:host => binary(),
:method => binary(),
:owner => pid(),
:params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:path_info => [binary()],
:path_params => %{binary() => binary() | [any()] | map()},
:port => char(),
:private => %{atom() => _},
:query_params => %Plug.Conn.Unfetched{
:aspect => atom(),
binary() => binary() | [any()] | map()
},
:query_string => binary(),
:remote_ip =>
{byte(), byte(), byte(), byte()}
| {char(), char(), char(), char(), char(), char(), char(), char()},
:req_cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => binary()},
:req_headers => [{_, _}],
:request_path => binary(),
:resp_body =>
nil
| binary()
| maybe_improper_list(
binary() | maybe_improper_list(any(), binary() | []) | byte(),
binary() | []
),
:resp_cookies => %{binary() => map()},
:resp_headers => [{_, _}],
:scheme => :http | :https,
:script_name => [binary()],
:secret_key_base => nil | binary(),
:state =>
:chunked | :file | :sent | :set | :set_chunked | :set_file | :unset | :upgraded,
:status => nil | non_neg_integer()
},
atom() | binary(),
atom() | binary() | [{_, _}] | map()
) :: %Plug.Conn{
:adapter => {atom(), _},
:assigns => %{atom() => _},
:body_params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:halted => boolean(),
:host => binary(),
:method => binary(),
:owner => pid(),
:params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:path_info => [binary()],
:path_params => %{binary() => binary() | [any()] | map()},
:port => char(),
:private => %{atom() => _},
:query_params => %Plug.Conn.Unfetched{
:aspect => atom(),
binary() => binary() | [any()] | map()
},
:query_string => binary(),
:remote_ip =>
{byte(), byte(), byte(), byte()}
| {char(), char(), char(), char(), char(), char(), char(), char()},
:req_cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => binary()},
:req_headers => [{_, _}],
:request_path => binary(),
:resp_body =>
nil
| binary()
| maybe_improper_list(
binary() | maybe_improper_list(any(), binary() | []) | byte(),
binary() | []
),
:resp_cookies => %{binary() => map()},
:resp_headers => [{_, _}],
:scheme => :http | :https,
:script_name => [binary()],
:secret_key_base => nil | binary(),
:state => :sent,
:status => nil | non_neg_integer()
}
and the contract is
(Plug.Conn.t(), binary() | atom(), Keyword.t() | map()) :: Plug.Conn.t()
________________________________________________________________________________
lib/pleroma/web/admin_api/controllers/user_controller.ex:244:no_return
Function suggest/2 has no local return.
________________________________________________________________________________
lib/pleroma/web/admin_api/controllers/user_controller.ex:254:call
The function call will not succeed.
Phoenix.Controller.render(
_conn :: %{
:assigns => %{:user => _, _ => _},
:body_params => %{:nicknames => _, _ => _},
_ => _
},
<<105, 110, 100, 101, 120, 46, 106, 115, 111, 110>>,
[{:users, _}, ...]
)
will never return since the success typing is:
(
%Plug.Conn{
:adapter => {atom(), _},
:assigns => %{atom() => _},
:body_params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:halted => boolean(),
:host => binary(),
:method => binary(),
:owner => pid(),
:params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:path_info => [binary()],
:path_params => %{binary() => binary() | [any()] | map()},
:port => char(),
:private => %{atom() => _},
:query_params => %Plug.Conn.Unfetched{
:aspect => atom(),
binary() => binary() | [any()] | map()
},
:query_string => binary(),
:remote_ip =>
{byte(), byte(), byte(), byte()}
| {char(), char(), char(), char(), char(), char(), char(), char()},
:req_cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => binary()},
:req_headers => [{_, _}],
:request_path => binary(),
:resp_body =>
nil
| binary()
| maybe_improper_list(
binary() | maybe_improper_list(any(), binary() | []) | byte(),
binary() | []
),
:resp_cookies => %{binary() => map()},
:resp_headers => [{_, _}],
:scheme => :http | :https,
:script_name => [binary()],
:secret_key_base => nil | binary(),
:state =>
:chunked | :file | :sent | :set | :set_chunked | :set_file | :unset | :upgraded,
:status => nil | non_neg_integer()
},
atom() | binary(),
atom() | binary() | [{_, _}] | map()
) :: %Plug.Conn{
:adapter => {atom(), _},
:assigns => %{atom() => _},
:body_params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:halted => boolean(),
:host => binary(),
:method => binary(),
:owner => pid(),
:params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:path_info => [binary()],
:path_params => %{binary() => binary() | [any()] | map()},
:port => char(),
:private => %{atom() => _},
:query_params => %Plug.Conn.Unfetched{
:aspect => atom(),
binary() => binary() | [any()] | map()
},
:query_string => binary(),
:remote_ip =>
{byte(), byte(), byte(), byte()}
| {char(), char(), char(), char(), char(), char(), char(), char()},
:req_cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => binary()},
:req_headers => [{_, _}],
:request_path => binary(),
:resp_body =>
nil
| binary()
| maybe_improper_list(
binary() | maybe_improper_list(any(), binary() | []) | byte(),
binary() | []
),
:resp_cookies => %{binary() => map()},
:resp_headers => [{_, _}],
:scheme => :http | :https,
:script_name => [binary()],
:secret_key_base => nil | binary(),
:state => :sent,
:status => nil | non_neg_integer()
}
and the contract is
(Plug.Conn.t(), binary() | atom(), Keyword.t() | map()) :: Plug.Conn.t()
________________________________________________________________________________
lib/pleroma/web/admin_api/controllers/user_controller.ex:257:no_return
Function unsuggest/2 has no local return.
________________________________________________________________________________
lib/pleroma/web/admin_api/controllers/user_controller.ex:267:call
The function call will not succeed.
Phoenix.Controller.render(
_conn :: %{
:assigns => %{:user => _, _ => _},
:body_params => %{:nicknames => _, _ => _},
_ => _
},
<<105, 110, 100, 101, 120, 46, 106, 115, 111, 110>>,
[{:users, _}, ...]
)
will never return since the success typing is:
(
%Plug.Conn{
:adapter => {atom(), _},
:assigns => %{atom() => _},
:body_params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:halted => boolean(),
:host => binary(),
:method => binary(),
:owner => pid(),
:params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:path_info => [binary()],
:path_params => %{binary() => binary() | [any()] | map()},
:port => char(),
:private => %{atom() => _},
:query_params => %Plug.Conn.Unfetched{
:aspect => atom(),
binary() => binary() | [any()] | map()
},
:query_string => binary(),
:remote_ip =>
{byte(), byte(), byte(), byte()}
| {char(), char(), char(), char(), char(), char(), char(), char()},
:req_cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => binary()},
:req_headers => [{_, _}],
:request_path => binary(),
:resp_body =>
nil
| binary()
| maybe_improper_list(
binary() | maybe_improper_list(any(), binary() | []) | byte(),
binary() | []
),
:resp_cookies => %{binary() => map()},
:resp_headers => [{_, _}],
:scheme => :http | :https,
:script_name => [binary()],
:secret_key_base => nil | binary(),
:state =>
:chunked | :file | :sent | :set | :set_chunked | :set_file | :unset | :upgraded,
:status => nil | non_neg_integer()
},
atom() | binary(),
atom() | binary() | [{_, _}] | map()
) :: %Plug.Conn{
:adapter => {atom(), _},
:assigns => %{atom() => _},
:body_params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:halted => boolean(),
:host => binary(),
:method => binary(),
:owner => pid(),
:params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:path_info => [binary()],
:path_params => %{binary() => binary() | [any()] | map()},
:port => char(),
:private => %{atom() => _},
:query_params => %Plug.Conn.Unfetched{
:aspect => atom(),
binary() => binary() | [any()] | map()
},
:query_string => binary(),
:remote_ip =>
{byte(), byte(), byte(), byte()}
| {char(), char(), char(), char(), char(), char(), char(), char()},
:req_cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => binary()},
:req_headers => [{_, _}],
:request_path => binary(),
:resp_body =>
nil
| binary()
| maybe_improper_list(
binary() | maybe_improper_list(any(), binary() | []) | byte(),
binary() | []
),
:resp_cookies => %{binary() => map()},
:resp_headers => [{_, _}],
:scheme => :http | :https,
:script_name => [binary()],
:secret_key_base => nil | binary(),
:state => :sent,
:status => nil | non_neg_integer()
}
and the contract is
(Plug.Conn.t(), binary() | atom(), Keyword.t() | map()) :: Plug.Conn.t()
________________________________________________________________________________
lib/pleroma/web/admin_api/controllers/user_controller.ex:270:no_return
Function index/2 has no local return.
________________________________________________________________________________
lib/pleroma/web/admin_api/controllers/user_controller.ex:294:unused_fun
Function maybe_parse_filters/1 will never be called.
________________________________________________________________________________
lib/pleroma/web/admin_api/controllers/user_controller.ex:303:no_return
Function page_params/1 has no local return.
________________________________________________________________________________
lib/pleroma/web/admin_api/controllers/user_controller.ex:305:call
The function call will not succeed.
Pleroma.Web.ControllerHelper.fetch_integer_param(_params :: any(), :page, 1)
breaks the contract
(map(), String.t(), integer() | nil) :: integer() | nil
2024-01-28 16:05:25 -05:00
Mark Felder
db87be126e
Pleroma.Web.AdminAPI.InviteController: dialyzer errors
...
lib/pleroma/web/admin_api/controllers/invite_controller.ex:46:call
The function call will not succeed.
Phoenix.Controller.render(
_conn :: %{:body_params => %{:token => _, _ => _}, _ => _},
<<115, 104, 111, 119, 46, 106, 115, 111, 110>>,
[
{:invite,
%Pleroma.UserInviteToken{
:__meta__ => _,
:expires_at => _,
:id => _,
:inserted_at => _,
:invite_type => _,
:max_use => _,
:token => _,
:updated_at => _,
:used => _,
:uses => _
}},
...
]
)
will never return since the success typing is:
(
%Plug.Conn{
:adapter => {atom(), _},
:assigns => %{atom() => _},
:body_params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:halted => boolean(),
:host => binary(),
:method => binary(),
:owner => pid(),
:params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:path_info => [binary()],
:path_params => %{binary() => binary() | [any()] | map()},
:port => char(),
:private => %{atom() => _},
:query_params => %Plug.Conn.Unfetched{
:aspect => atom(),
binary() => binary() | [any()] | map()
},
:query_string => binary(),
:remote_ip =>
{byte(), byte(), byte(), byte()}
| {char(), char(), char(), char(), char(), char(), char(), char()},
:req_cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => binary()},
:req_headers => [{_, _}],
:request_path => binary(),
:resp_body =>
nil
| binary()
| maybe_improper_list(
binary() | maybe_improper_list(any(), binary() | []) | byte(),
binary() | []
),
:resp_cookies => %{binary() => map()},
:resp_headers => [{_, _}],
:scheme => :http | :https,
:script_name => [binary()],
:secret_key_base => nil | binary(),
:state =>
:chunked | :file | :sent | :set | :set_chunked | :set_file | :unset | :upgraded,
:status => nil | non_neg_integer()
},
atom() | binary(),
atom() | binary() | [{_, _}] | map()
) :: %Plug.Conn{
:adapter => {atom(), _},
:assigns => %{atom() => _},
:body_params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:halted => boolean(),
:host => binary(),
:method => binary(),
:owner => pid(),
:params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:path_info => [binary()],
:path_params => %{binary() => binary() | [any()] | map()},
:port => char(),
:private => %{atom() => _},
:query_params => %Plug.Conn.Unfetched{
:aspect => atom(),
binary() => binary() | [any()] | map()
},
:query_string => binary(),
:remote_ip =>
{byte(), byte(), byte(), byte()}
| {char(), char(), char(), char(), char(), char(), char(), char()},
:req_cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => binary()},
:req_headers => [{_, _}],
:request_path => binary(),
:resp_body =>
nil
| binary()
| maybe_improper_list(
binary() | maybe_improper_list(any(), binary() | []) | byte(),
binary() | []
),
:resp_cookies => %{binary() => map()},
:resp_headers => [{_, _}],
:scheme => :http | :https,
:script_name => [binary()],
:secret_key_base => nil | binary(),
:state => :sent,
:status => nil | non_neg_integer()
}
and the contract is
(Plug.Conn.t(), binary() | atom(), Keyword.t() | map()) :: Plug.Conn.t()
________________________________________________________________________________
lib/pleroma/web/admin_api/controllers/invite_controller.ex:66:call
The function call will not succeed.
Pleroma.Web.ControllerHelper.json_response(
_conn :: %{
:assigns => %{:user => _, _ => _},
:body_params => %{:email => _, _ => _},
_ => _
},
:no_content,
<<>>
)
will never return since the 1st arguments differ
from the success typing arguments:
(
%Plug.Conn{
:adapter => {atom(), _},
:assigns => %{atom() => _},
:body_params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:halted => boolean(),
:host => binary(),
:method => binary(),
:owner => pid(),
:params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:path_info => [binary()],
:path_params => %{
binary() =>
binary() | [binary() | [any()] | map()] | %{binary() => binary() | [any()] | map()}
},
:port => char(),
:private => %{atom() => _},
:query_params => %Plug.Conn.Unfetched{
:aspect => atom(),
binary() =>
binary() | [binary() | [any()] | map()] | %{binary() => binary() | [any()] | map()}
},
:query_string => binary(),
:remote_ip =>
{byte(), byte(), byte(), byte()}
| {char(), char(), char(), char(), char(), char(), char(), char()},
:req_cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => binary()},
:req_headers => [{binary(), binary()}],
:request_path => binary(),
:resp_body =>
nil
| binary()
| maybe_improper_list(
binary() | maybe_improper_list(any(), binary() | []) | byte(),
binary() | []
),
:resp_cookies => %{binary() => map()},
:resp_headers => [{binary(), binary()}],
:scheme => :http | :https,
:script_name => [binary()],
:secret_key_base => nil | binary(),
:state =>
:chunked | :file | :sent | :set | :set_chunked | :set_file | :unset | :upgraded,
:status => nil | non_neg_integer()
},
atom() | 1..1_114_111,
any()
)
2024-01-28 15:53:47 -05:00
Mark Felder
8d64eedbec
Pleroma.Web.PleromaAPI.ChatController: Dialyzer error
...
lib/pleroma/web/pleroma_api/controllers/chat_controller.ex:128:call
The function call will not succeed.
Phoenix.Controller.render(
_conn :: %{
:assigns => %{:user => _, _ => _},
:body_params => %{:last_read_id => _, _ => _},
_ => _
},
<<115, 104, 111, 119, 46, 106, 115, 111, 110>>,
[
{:chat,
%Pleroma.Chat{
:__meta__ => _,
:id => _,
:inserted_at => _,
:recipient => _,
:updated_at => _,
:user => _,
:user_id => _
}},
...
]
)
will never return since the success typing is:
(
%Plug.Conn{
:adapter => {atom(), _},
:assigns => %{atom() => _},
:body_params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:halted => boolean(),
:host => binary(),
:method => binary(),
:owner => pid(),
:params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:path_info => [binary()],
:path_params => %{binary() => binary() | [any()] | map()},
:port => char(),
:private => %{atom() => _},
:query_params => %Plug.Conn.Unfetched{
:aspect => atom(),
binary() => binary() | [any()] | map()
},
:query_string => binary(),
:remote_ip =>
{byte(), byte(), byte(), byte()}
| {char(), char(), char(), char(), char(), char(), char(), char()},
:req_cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => binary()},
:req_headers => [{_, _}],
:request_path => binary(),
:resp_body =>
nil
| binary()
| maybe_improper_list(
binary() | maybe_improper_list(any(), binary() | []) | byte(),
binary() | []
),
:resp_cookies => %{binary() => map()},
:resp_headers => [{_, _}],
:scheme => :http | :https,
:script_name => [binary()],
:secret_key_base => nil | binary(),
:state =>
:chunked | :file | :sent | :set | :set_chunked | :set_file | :unset | :upgraded,
:status => nil | non_neg_integer()
},
atom() | binary(),
atom() | binary() | [{_, _}] | map()
) :: %Plug.Conn{
:adapter => {atom(), _},
:assigns => %{atom() => _},
:body_params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:halted => boolean(),
:host => binary(),
:method => binary(),
:owner => pid(),
:params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:path_info => [binary()],
:path_params => %{binary() => binary() | [any()] | map()},
:port => char(),
:private => %{atom() => _},
:query_params => %Plug.Conn.Unfetched{
:aspect => atom(),
binary() => binary() | [any()] | map()
},
:query_string => binary(),
:remote_ip =>
{byte(), byte(), byte(), byte()}
| {char(), char(), char(), char(), char(), char(), char(), char()},
:req_cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => binary()},
:req_headers => [{_, _}],
:request_path => binary(),
:resp_body =>
nil
| binary()
| maybe_improper_list(
binary() | maybe_improper_list(any(), binary() | []) | byte(),
binary() | []
),
:resp_cookies => %{binary() => map()},
:resp_headers => [{_, _}],
:scheme => :http | :https,
:script_name => [binary()],
:secret_key_base => nil | binary(),
:state => :sent,
:status => nil | non_neg_integer()
}
and the contract is
(Plug.Conn.t(), binary() | atom(), Keyword.t() | map()) :: Plug.Conn.t()
2024-01-28 15:52:09 -05:00
Mark Felder
456f7cab3e
Pleroma.Web.PleromaAPI.ChatController: Dialyzer errors
...
lib/pleroma/web/pleroma_api/controllers/chat_controller.ex:91:pattern_match
The pattern can never match the type.
Pattern:
{:reject, _message}
Type:
nil
________________________________________________________________________________
lib/pleroma/web/pleroma_api/controllers/chat_controller.ex:96:pattern_match
The pattern can never match the type.
Pattern:
{:error, _message}
Type:
nil
2024-01-28 15:52:09 -05:00
Mark Felder
dc912dc590
Pleroma.Web.PleromaAPI.EmojiFileController: dialyzer errors
...
lib/pleroma/web/pleroma_api/controllers/emoji_file_controller.ex:52:no_return
Function update/2 has no local return.
________________________________________________________________________________
lib/pleroma/web/pleroma_api/controllers/emoji_file_controller.ex:59:call
The function call will not succeed.
Phoenix.Controller.json(_conn :: %{:body_params => %{:shortcode => _, _ => _}, _ => _}, %{
binary() =>
binary()
| maybe_improper_list(
binary() | maybe_improper_list(any(), binary() | []) | char(),
binary() | []
)
})
breaks the contract
(Plug.Conn.t(), term()) :: Plug.Conn.t()
________________________________________________________________________________
lib/pleroma/web/pleroma_api/controllers/emoji_file_controller.ex:62:call
The function call will not succeed.
Plug.Conn.put_status(_conn :: %{:body_params => %{:shortcode => _, _ => _}, _ => _}, :conflict)
breaks the contract
(t(), status()) :: t()
________________________________________________________________________________
lib/pleroma/web/pleroma_api/controllers/emoji_file_controller.ex:70:call
The function call will not succeed.
Plug.Conn.put_status(_conn :: %{:body_params => %{:shortcode => _, _ => _}, _ => _}, :unprocessable_entity) ::
:ok
def a() do
:ok
end
breaks the contract
(t(), status()) :: t()
________________________________________________________________________________
lib/pleroma/web/pleroma_api/controllers/emoji_file_controller.ex:75:call
The function call will not succeed.
Pleroma.Web.PleromaAPI.EmojiFileController.handle_error(
_conn :: %{:body_params => %{:shortcode => _, _ => _}, _ => _},
_error :: {:error, atom()},
%{:code => _, :message => <<_::328>>, :pack_name => binary()}
)
will never return since the 1st arguments differ
from the success typing arguments:
(
%Plug.Conn{
:adapter => {atom(), _},
:assigns => %{atom() => _},
:body_params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:halted => boolean(),
:host => binary(),
:method => binary(),
:owner => pid(),
:params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:path_info => [binary()],
:path_params => %{
binary() =>
binary() | [binary() | [any()] | map()] | %{binary() => binary() | [any()] | map()}
},
:port => char(),
:private => %{atom() => _},
:query_params => %Plug.Conn.Unfetched{
:aspect => atom(),
binary() =>
binary() | [binary() | [any()] | map()] | %{binary() => binary() | [any()] | map()}
},
:query_string => binary(),
:remote_ip =>
{byte(), byte(), byte(), byte()}
| {char(), char(), char(), char(), char(), char(), char(), char()},
:req_cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => binary()},
:req_headers => [{binary(), binary()}],
:request_path => binary(),
:resp_body =>
nil
| binary()
| maybe_improper_list(
binary() | maybe_improper_list(any(), binary() | []) | byte(),
binary() | []
),
:resp_cookies => %{binary() => map()},
:resp_headers => [{binary(), binary()}],
:scheme => :http | :https,
:script_name => [binary()],
:secret_key_base => nil | binary(),
:state =>
:chunked | :file | :sent | :set | :set_chunked | :set_file | :unset | :upgraded,
:status => nil | non_neg_integer()
},
{:error, atom()},
%{:message => <<_::328, _::size(88)>>, :pack_name => binary(), :code => _}
)
________________________________________________________________________________
lib/pleroma/web/pleroma_api/controllers/emoji_file_controller.ex:75:call
The function call will not succeed.
Pleroma.Web.PleromaAPI.EmojiFileController.handle_error(
_conn :: %{:body_params => %{:shortcode => _, _ => _}, _ => _},
_error :: {:error, atom()},
%{:code => binary(), :message => <<_::328>>, :pack_name => binary()}
)
will never return since the 1st arguments differ
from the success typing arguments:
(
%Plug.Conn{
:adapter => {atom(), _},
:assigns => %{atom() => _},
:body_params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:halted => boolean(),
:host => binary(),
:method => binary(),
:owner => pid(),
:params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:path_info => [binary()],
:path_params => %{
binary() =>
binary() | [binary() | [any()] | map()] | %{binary() => binary() | [any()] | map()}
},
:port => char(),
:private => %{atom() => _},
:query_params => %Plug.Conn.Unfetched{
:aspect => atom(),
binary() =>
binary() | [binary() | [any()] | map()] | %{binary() => binary() | [any()] | map()}
},
:query_string => binary(),
:remote_ip =>
{byte(), byte(), byte(), byte()}
| {char(), char(), char(), char(), char(), char(), char(), char()},
:req_cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => binary()},
:req_headers => [{binary(), binary()}],
:request_path => binary(),
:resp_body =>
nil
| binary()
| maybe_improper_list(
binary() | maybe_improper_list(any(), binary() | []) | byte(),
binary() | []
),
:resp_cookies => %{binary() => map()},
:resp_headers => [{binary(), binary()}],
:scheme => :http | :https,
:script_name => [binary()],
:secret_key_base => nil | binary(),
:state =>
:chunked | :file | :sent | :set | :set_chunked | :set_file | :unset | :upgraded,
:status => nil | non_neg_integer()
},
{:error, atom()},
%{:message => <<_::328, _::size(88)>>, :pack_name => binary(), :code => _}
)
2024-01-28 15:52:09 -05:00
Mark Felder
77bf617c4b
Pleroma.Web.PleromaAPI.EmojiPackController: dialyzer errors
...
________________________________________________________________________________
lib/pleroma/web/pleroma_api/controllers/emoji_pack_controller.ex:112:no_return
Function download/2 has no local return.
________________________________________________________________________________
lib/pleroma/web/pleroma_api/controllers/emoji_pack_controller.ex:114:call
The function call will not succeed.
Phoenix.Controller.json(_conn :: %{:body_params => %{:name => _, :url => _, _ => _}, _ => _}, <<111, 107>>)
breaks the contract
(Plug.Conn.t(), term()) :: Plug.Conn.t()
________________________________________________________________________________
lib/pleroma/web/pleroma_api/controllers/emoji_pack_controller.ex:117:call
The function call will not succeed.
Plug.Conn.put_status(
_conn :: %{:body_params => %{:name => _, :url => _, _ => _}, _ => _},
:internal_server_error
)
breaks the contract
(t(), status()) :: t()
________________________________________________________________________________
lib/pleroma/web/pleroma_api/controllers/emoji_pack_controller.ex:122:call
The function call will not succeed.
Plug.Conn.put_status(
_conn :: %{:body_params => %{:name => _, :url => _, _ => _}, _ => _},
:internal_server_error
)
breaks the contract
(t(), status()) :: t()
________________________________________________________________________________
lib/pleroma/web/pleroma_api/controllers/emoji_pack_controller.ex:127:call
The function call will not succeed.
Plug.Conn.put_status(
_conn :: %{:body_params => %{:name => _, :url => _, _ => _}, _ => _},
:internal_server_error
)
breaks the contract
(t(), status()) :: t()
________________________________________________________________________________
lib/pleroma/web/pleroma_api/controllers/emoji_pack_controller.ex:187:no_return
Function update/2 has no local return.
________________________________________________________________________________
lib/pleroma/web/pleroma_api/controllers/emoji_pack_controller.ex:189:call
The function call will not succeed.
Phoenix.Controller.json(_conn :: %{:body_params => %{:metadata => _, _ => _}, _ => _}, map())
breaks the contract
(Plug.Conn.t(), term()) :: Plug.Conn.t()
________________________________________________________________________________
lib/pleroma/web/pleroma_api/controllers/emoji_pack_controller.ex:192:call
The function call will not succeed.
Plug.Conn.put_status(_conn :: %{:body_params => %{:metadata => _, _ => _}, _ => _}, :bad_request)
breaks the contract
(t(), status()) :: t()
________________________________________________________________________________
lib/pleroma/web/pleroma_api/controllers/emoji_pack_controller.ex:203:call
The function call will not succeed.
Plug.Conn.put_status(_conn :: %{:body_params => %{:metadata => _, _ => _}, _ => _}, :internal_server_error) ::
:ok
def a() do
:ok
end
breaks the contract
(t(), status()) :: t()
2024-01-28 15:52:09 -05:00
Mark Felder
a32d6b3aa4
Pleroma.Web.PleromaAPI.MascotController: dialyzer error
...
lib/pleroma/web/pleroma_api/controllers/mascot_controller.ex:33:pattern_match
The pattern can never match the type.
Pattern:
{:content_type, _}
Type:
{:error, _}
2024-01-28 15:52:09 -05:00
Mark Felder
9c8055d4b3
Pleroma.Web.PleromaAPI.MascotController: dialyzer errors
...
lib/pleroma/web/pleroma_api/controllers/mascot_controller.ex:25:no_return
Function update/2 has no local return.
lib/pleroma/web/pleroma_api/controllers/mascot_controller.ex:27:call
The function call will not succeed.
Pleroma.Web.ActivityPub.ActivityPub.upload(_file :: atom() | %{:content_type => _, _ => _}, [{:actor, <<_::56, _::size(8)>>}, ...]) ::
:ok
def a() do
:ok
end
will never return since the 2nd arguments differ
from the success typing arguments:
(any(), [
{:activity_type | :description | :filters | :size_limit | :type | :uploader,
atom() | binary() | [atom()] | non_neg_integer()}
])
lib/pleroma/web/pleroma_api/controllers/mascot_controller.ex:31:call
The function call will not succeed.
Phoenix.Controller.json(
_conn :: %{
:assigns => %{:user => _, _ => _},
:body_params => %{:file => _, _ => _},
_ => _
},
_attachment :: any()
)
breaks the contract
(Plug.Conn.t(), term()) :: Plug.Conn.t()
lib/pleroma/web/pleroma_api/controllers/mascot_controller.ex:34:call
The function call will not succeed.
Plug.Conn.put_status(
_conn :: %{
:assigns => %{:user => _, _ => _},
:body_params => %{:file => _, _ => _},
_ => _
},
:unsupported_media_type
)
breaks the contract
(t(), status()) :: t()
lib/pleroma/web/pleroma_api/controllers/mascot_controller.ex:34:call
The function call will not succeed.
Plug.Conn.put_status(
_conn :: %{
:assigns => %{:user => _, _ => _},
:body_params => %{:file => _, _ => _},
_ => _
},
:unsupported_media_type
)
breaks the contract
(t(), status()) :: t()
lib/pleroma/web/pleroma_api/controllers/mascot_controller.ex:38:unused_fun
Function render_attachment/1 will never be called.
2024-01-28 15:52:09 -05:00
Mark Felder
563aebd5ce
Pleroma.Web.Plugs.UploadedMedia: dialyzer error
...
lib/pleroma/web/plugs/uploaded_media.ex:98:call
The function call will not succeed.
Pleroma.ReverseProxy.call(
_conn :: %Plug.Conn{
:adapter => {atom(), _},
:assigns => %{atom() => _},
:body_params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:halted => boolean(),
:host => binary(),
:method => binary(),
:owner => pid(),
:params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:path_info => [binary()],
:path_params => %{binary() => binary() | [any()] | map()},
:port => char(),
:private => %{atom() => _},
:query_params => %Plug.Conn.Unfetched{
:aspect => atom(),
binary() => binary() | [any()] | map()
},
:query_string => binary(),
:remote_ip =>
{byte(), byte(), byte(), byte()}
| {char(), char(), char(), char(), char(), char(), char(), char()},
:req_cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => binary()},
:req_headers => [{_, _}],
:request_path => binary(),
:resp_body =>
nil
| binary()
| maybe_improper_list(
binary() | maybe_improper_list(any(), binary() | []) | byte(),
binary() | []
),
:resp_cookies => %{binary() => map()},
:resp_headers => [{_, _}],
:scheme => :http | :https,
:script_name => [binary()],
:secret_key_base => nil | binary(),
:state =>
:chunked | :file | :sent | :set | :set_chunked | :set_file | :unset | :upgraded,
:status => nil | non_neg_integer()
},
_url :: any(),
_proxy_opts :: [{:http, [{:follow_redirect, true} | {:pool, :upload}, ...]}, ...]
)
breaks the contract
(Plug.Conn.t(), url :: String.t(), [option()]) :: Plug.Conn.t()
2024-01-28 14:22:35 -05:00
Mark Felder
60d89cb404
Pleroma.Web.AdminAPI.ConfigController: dialyzer error
...
lib/pleroma/web/admin_api/controllers/config_controller.ex:162:call
The function call will not succeed.
Phoenix.Controller.render(
_conn :: %{:body_params => %{:configs => _, _ => _}, _ => _},
<<105, 110, 100, 101, 120, 46, 106, 115, 111, 110>>,
%{:configs => [any()], :need_reboot => _}
)
will never return since the success typing is:
(
%Plug.Conn{
:adapter => {atom(), _},
:assigns => %{atom() => _},
:body_params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:halted => boolean(),
:host => binary(),
:method => binary(),
:owner => pid(),
:params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:path_info => [binary()],
:path_params => %{binary() => binary() | [any()] | map()},
:port => char(),
:private => %{atom() => _},
:query_params => %Plug.Conn.Unfetched{
:aspect => atom(),
binary() => binary() | [any()] | map()
},
:query_string => binary(),
:remote_ip =>
{byte(), byte(), byte(), byte()}
| {char(), char(), char(), char(), char(), char(), char(), char()},
:req_cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => binary()},
:req_headers => [{_, _}],
:request_path => binary(),
:resp_body =>
nil
| binary()
| maybe_improper_list(
binary() | maybe_improper_list(any(), binary() | []) | byte(),
binary() | []
),
:resp_cookies => %{binary() => map()},
:resp_headers => [{_, _}],
:scheme => :http | :https,
:script_name => [binary()],
:secret_key_base => nil | binary(),
:state =>
:chunked | :file | :sent | :set | :set_chunked | :set_file | :unset | :upgraded,
:status => nil | non_neg_integer()
},
atom() | binary(),
atom() | binary() | [{_, _}] | map()
) :: %Plug.Conn{
:adapter => {atom(), _},
:assigns => %{atom() => _},
:body_params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:halted => boolean(),
:host => binary(),
:method => binary(),
:owner => pid(),
:params => %Plug.Conn.Unfetched{:aspect => atom(), binary() => _},
:path_info => [binary()],
:path_params => %{binary() => binary() | [any()] | map()},
:port => char(),
:private => %{atom() => _},
:query_params => %Plug.Conn.Unfetched{
:aspect => atom(),
binary() => binary() | [any()] | map()
},
:query_string => binary(),
:remote_ip =>
{byte(), byte(), byte(), byte()}
| {char(), char(), char(), char(), char(), char(), char(), char()},
:req_cookies => %Plug.Conn.Unfetched{:aspect => atom(), binary() => binary()},
:req_headers => [{_, _}],
:request_path => binary(),
:resp_body =>
nil
| binary()
| maybe_improper_list(
binary() | maybe_improper_list(any(), binary() | []) | byte(),
binary() | []
),
:resp_cookies => %{binary() => map()},
:resp_headers => [{_, _}],
:scheme => :http | :https,
:script_name => [binary()],
:secret_key_base => nil | binary(),
:state => :sent,
:status => nil | non_neg_integer()
}
and the contract is
(Plug.Conn.t(), binary() | atom(), Keyword.t() | map()) :: Plug.Conn.t()
2024-01-27 16:42:30 -05:00
Mark Felder
26a95e5787
Pleroma.Web.PleromaAPI.NotificationController: dialyzer errors
...
lib/pleroma/web/pleroma_api/controllers/user_import_controller.ex:53:call
The function call will not succeed.
Phoenix.Controller.json(
_conn :: %{
:assigns => %{:user => _, _ => _},
:body_params => %{:list => _, _ => _},
_ => _
},
<<106, 111, 98, 32, 115, 116, 97, 114, 116, 101, 100>>
)
breaks the contract
(Plug.Conn.t(), term()) :: Plug.Conn.t()
2024-01-27 16:15:03 -05:00
Mark Felder
52e18a6249
Pleroma.Web.PleromaAPI.UserImportController: Dialyzer errors
...
lib/pleroma/web/pleroma_api/controllers/user_import_controller.ex:53:call
The function call will not succeed.
Phoenix.Controller.json(
_conn :: %{
:assigns => %{:user => _, _ => _},
:body_params => %{:list => _, _ => _},
_ => _
},
<<106, 111, 98, 32, 115, 116, 97, 114, 116, 101, 100>>
)
breaks the contract
(Plug.Conn.t(), term()) :: Plug.Conn.t()
2024-01-27 15:57:21 -05:00
Mark Felder
17f4251b19
Pleroma.Web.TwitterAPI.UtilController: dialyzer fixes
...
lib/pleroma/web/twitter_api/controllers/util_controller.ex:158:call
The function call will not succeed.
Phoenix.Controller.json(_conn :: %{:body_params => %{:ap_id => _, :profile => _, _ => _}, _ => _}, %{
:error =>
<<67, 111, 117, 108, 100, 110, 39, 116, 32, 102, 105, 110, 100, 32, 117, 115, 101, 114>>
})
breaks the contract
(Plug.Conn.t(), term()) :: Plug.Conn.t()
2024-01-27 15:47:07 -05:00
Mark Felder
8b02c85810
Pleroma.Web.AdminAPI.MediaProxyCacheController: dialyzer errors
...
lib/pleroma/web/admin_api/controllers/media_proxy_cache_controller.ex:64:call
The function call will not succeed.
Phoenix.Controller.json(
_conn :: %{
:assigns => %{:user => _, _ => _},
:body_params => %{:urls => _, _ => _},
_ => _
},
%{}
)
breaks the contract
(Plug.Conn.t(), term()) :: Plug.Conn.t()
2024-01-27 15:41:14 -05:00
Mark Felder
861c8ebfe4
These are all due to Cachex typespec bugs
2024-01-27 15:14:40 -05:00
Mark Felder
5c193a34a2
Pleroma.Web.ActivityPub.SideEffects: dialyzer errors
...
lib/pleroma/web/activity_pub/side_effects.ex:544:call
The function call will not succeed.
Pleroma.Web.ActivityPub.SideEffects.delete_object(
_object :: %Pleroma.Activity{
:__meta__ => _,
:actor => _,
:bookmark => _,
:data => map(),
:id => _,
:inserted_at => _,
:local => _,
:notifications => _,
:object => _,
:pagination_id => _,
:recipients => _,
:report_notes => _,
:thread_muted? => _,
:updated_at => _,
:user_actor => _
}
)
breaks the contract
(Pleroma.Object.t()) :: :ok | {:error, Ecto.Changeset.t()}
2024-01-27 15:05:12 -05:00
Mark Felder
b6a1e7fb31
Pleroma.Web.ActivityPub.SideEffects: dialyzer errors
...
lib/pleroma/web/activity_pub/side_effects.ex:622:callback_type_mismatch
Type mismatch for @callback handle_after_transaction/1 in Pleroma.Web.ActivityPub.SideEffects.Handling behaviour.
Expected type:
map()
Actual type:
Keyword.t()
lib/pleroma/web/activity_pub/side_effects.ex:622:callback_arg_type_mismatch
The inferred type for the 1st argument is not a
supertype of the expected type for the handle_after_transaction/1 callback
in the Pleroma.Web.ActivityPub.SideEffects.Handling behaviour.
Success type:
Keyword.t()
Behaviour callback type:
map()
2024-01-27 15:02:20 -05:00
Mark Felder
5f5bd64b83
Pleroma.Web.ActivityPub.SideEffects: dialyzer errors
...
lib/pleroma/web/activity_pub/side_effects.ex:328:pattern_match
The pattern can never match the type.
Pattern:
{:actor, _}
Type:
{:error, boolean()}
lib/pleroma/web/activity_pub/side_effects.ex:328:pattern_match
The pattern can never match the type.
Pattern:
{:actor, _}
Type:
nil
2024-01-27 14:55:29 -05:00
Mark Felder
94d7e28cbe
Pleroma.Web.ActivityPub.ObjectValidator: dialyzer error
...
lib/pleroma/web/activity_pub/object_validator.ex:165:pattern_match
The pattern can never match the type.
Pattern:
{:local, _}
Type:
{:error,
%Ecto.Changeset{
:action => atom(),
:changes => %{atom() => _},
:constraints => [
%{
:constraint =>
binary()
| %Regex{
:opts => binary() | [any()],
:re_pattern => _,
:re_version => _,
:source => binary()
},
:error_message => binary(),
:error_type => atom(),
:field => atom(),
:match => :exact | :prefix | :suffix,
:type => :check | :exclusion | :foreign_key | :unique
}
],
:data => nil | map(),
:empty_values => _,
:errors => Keyword.t({binary(), Keyword.t()}),
:filters => %{atom() => _},
:params => nil | %{binary() => _},
:prepare => [(_ -> any())],
:repo => atom(),
:repo_opts => Keyword.t(),
:required => [atom()],
:types =>
nil
| %{
atom() =>
atom()
| {:array | :assoc | :embed | :in | :map | :maybe | :param, _}
| {:parameterized, atom(), _}
},
:valid? => boolean(),
:validations => Keyword.t()
}}
2024-01-27 14:29:48 -05:00
Mark Felder
5c08153fc5
Pleroma.Gun.ConnectionPool.Reclaimer: dialyzer error
...
lib/pleroma/gun/connection_pool/reclaimer.ex:12:call
The function call will not succeed.
:gen_server.start(Pleroma.Gun.ConnectionPool.Reclaimer, [], [
{:name, {:via, Registry, {Pleroma.Gun.ConnectionPool, <<_::72>>}}},
...
])
will never return since the success typing is:
(atom(), any(), [
{:debug, [:log | :statistics | :trace | {_, _}]}
| {:hibernate_after, timeout()}
| {:spawn_opt, [:link | :monitor | {_, _}]}
| {:timeout, timeout()}
]) :: :ignore | {:error, _} | {:ok, pid() | {pid(), reference()}}
and the contract is
(Module :: module(), Args :: term(), Options :: [start_opt()]) :: start_ret()
2024-01-27 14:25:16 -05:00
Mark Felder
9f357d88c2
Pleroma.Emoji: dialyzer error
...
lib/pleroma/emoji.ex:54:unknown_type
Unknown type: Emoji.t/0.
2024-01-27 14:00:17 -05:00
Mark Felder
948d5a93a0
Pleroma.Object: dialyzer error
...
lib/pleroma/object.ex:245:call
The function call will not succeed.
Pleroma.Object.cleanup_attachments(any(), %{<<_::48>> => %Pleroma.Object{:data => map(), atom() => _}})
breaks the contract
(boolean(), %{:object => map()}) :: {:ok, Oban.Job.t() | nil}
2024-01-27 13:58:50 -05:00
Mark Felder
2062e126f1
Pleroma.Web.ActivityPub.Builder: fix dialyzer error
...
lib/pleroma/web/activity_pub/builder.ex:115:pattern_match
The pattern can never match the type.
Pattern:
_emojo = %{:file => _path}
Type:
nil | binary()
2024-01-27 10:41:09 -05:00
Mark Felder
3fbe8ada93
Pleroma.ReverseProxy: dialyzer errors
...
lib/pleroma/reverse_proxy.ex:225:pattern_match
The pattern can never match the type.
Pattern:
:done
Type:
{:ok, :no_duration_limit, :no_duration_limit}
lib/pleroma/reverse_proxy.ex:226:pattern_match
The pattern can never match the type.
Pattern:
{:error, _error}
Type:
{:ok, :no_duration_limit, :no_duration_limit}
lib/pleroma/reverse_proxy.ex:391:pattern_match
The pattern can never match the type.
Pattern:
__duration = nil, _max
Type:
integer(), _
2024-01-27 10:28:49 -05:00
feld
b1659b7755
Merge branch 'dialyzer-fixes' into 'develop'
...
Dialyzer fixes
See merge request pleroma/pleroma!4047
2024-01-27 15:09:54 +00:00
Mark Felder
6fcecbd48b
Formatting
2024-01-27 10:09:20 -05:00
Mark Felder
7d7662277c
Changelog
2024-01-26 21:05:43 -05:00
Mark Felder
b2ab479488
Pleroma.Helpers.QtFastStart: Dialzyer error
...
lib/pleroma/helpers/qt_fast_start.ex:129:improper_list_constr
List construction (cons) will produce an improper list, because its second argument is <<_::32>>.
lib/pleroma/helpers/qt_fast_start.ex:129:improper_list_constr
List construction (cons) will produce an improper list, because its second argument is <<_::64>>.
2024-01-26 21:03:41 -05:00
Mark Felder
6e0945354d
Pleroma.ModerationLog: fix invalid type
2024-01-26 21:03:41 -05:00
Mark Felder
e834343496
Pleroma.Search.SearchBackend: dialyzer error
...
Incorrect spec. Both search backends return :ok so that is what should be the spec.
lib/pleroma/search/database_search.ex:56:callback_type_mismatch
Type mismatch for @callback remove_from_index/1 in Pleroma.Search.SearchBackend behaviour.
Expected type:
{:error, _} | {:ok, _}
Actual type:
:ok
2024-01-26 21:03:41 -05:00
Mark Felder
1b40ebfa20
Pleroma.Signature: dialyzer error
...
lib/pleroma/signature.ex:30:pattern_match
The pattern can never match the type.
Pattern:
%{<<97, 112, 95, 105, 100>> => _ap_id}
Type:
{:error, _} | {:ok, map()}
2024-01-26 21:03:41 -05:00
Mark Felder
87cf7010fc
Pleroma.Upload: dialyzer error
...
I have opted to set this to :upper as this retains the same behavior but clears up the error.
lib/pleroma/upload.ex:178:call
The function call will not succeed.
Base.encode16(binary(), [{:lower, true}])
breaks the contract
(binary(), [{:case, encode_case()}]) :: binary()
2024-01-26 21:03:23 -05:00
Mark Felder
06b8923d42
RichMedia.Parser.TTL.AwsSignedUrl: dialyzer fix
...
lib/pleroma/web/rich_media/parser/ttl/aws_signed_url.ex:9:callback_type_mismatch
Type mismatch for @callback ttl/2 in Pleroma.Web.RichMedia.Parser.TTL behaviour.
Expected type:
nil | integer()
Actual type:
{:error, <<_::64, _::size(8)>>} | {:ok, integer()}
2024-01-26 17:37:32 -05:00
Mark Felder
28af5e3bd7
TwitterAPI.UtilController: fix dialyzer errors
...
lib/pleroma/web/twitter_api/controllers/util_controller.ex:300:pattern_match
The pattern can never match the type.
Pattern:
{:error, :no_such_alias}
Type:
{:not_found, nil}
lib/pleroma/web/twitter_api/controllers/util_controller.ex:304:pattern_match
The pattern can never match the type.
Pattern:
{:error, _error}
Type:
{:not_found, nil}
2024-01-26 17:22:27 -05:00
Mark Felder
5b95abaeea
Credo.Check.Readability.PredicateFunctionNames
...
This check was recently improved in Credo and it does make sense for readability.
The offending functions in Pleroma have been renamed and a couple missing the ? suffix have been fixed as well.
2024-01-26 16:59:58 -05:00
Mark Felder
18d38486a5
InetCidr.parse/2 is deprecated
2024-01-26 15:57:50 -05:00
Haelwenn (lanodan) Monnier
5c5d9d9b9d
Bump dependencies
2024-01-26 15:50:45 -05:00
feld
a24322fcce
Merge branch 'elixir-1.15-base' into 'develop'
...
CI: pin 1.15 to otp25
See merge request pleroma/pleroma!4046
2024-01-26 17:40:38 +00:00
Mark Felder
a658cf70b9
Pin to otp25
...
The 1.15.7 image by default uses OTP26 now, but we really want otp25
2024-01-26 17:38:40 +00:00
feld
6bd29956f5
Merge branch 'elixir-1.15-base' into 'develop'
...
CI: set correct image version for Elixir 1.15
See merge request pleroma/pleroma!4045
2024-01-26 17:35:49 +00:00
Mark Felder
f23c07f43a
Set correct image version
2024-01-26 12:35:18 -05:00
Haelwenn (lanodan) Monnier
799891d359
Transmogrifier: Cleanup obsolete handling of "contentMap": null
2024-01-26 17:10:10 +01:00
Haelwenn (lanodan) Monnier
558b421079
Test incoming federation from Convergence AP Bridge
2024-01-26 17:05:18 +01:00
Haelwenn (lanodan) Monnier
acef2a4a40
CommonFixes: Use Maps.filter_empty_values on fix_object_defaults
2024-01-26 16:19:25 +01:00
Haelwenn (lanodan) Monnier
0de1a7629c
Maps: Add filter_empty_values/1
2024-01-26 16:18:29 +01:00
feld
626c22961f
Merge branch 'dialyzer-fixes' into 'develop'
...
More dialyzer fixes
See merge request pleroma/pleroma!4042
2024-01-23 00:16:55 +00:00
Mark Felder
3a8594e927
MastodonAPI.Controller.StatusController: fix dialyzer error
...
lib/pleroma/web/mastodon_api/controllers/status_controller.ex:333:pattern_match
The pattern can never match the type.
Pattern:
{:ok, _activity}
Type:
{:error, _}
2024-01-22 18:37:29 -05:00
Mark Felder
138b3cb608
Clear up missing function dialyzer errors for :eldap
2024-01-22 18:37:29 -05:00
Mark Felder
115b2ad638
MRF.KeywordPolicy: fix dialyzer error
...
lib/pleroma/web/activity_pub/mrf/keyword_policy.ex:13:neg_guard_fail
Guard test:
not is_binary(_string :: binary())
can never succeed.
2024-01-22 18:37:29 -05:00
Mark Felder
0dd65246ea
MRF.HashtagPolicy: fix dialyzer error
...
lib/pleroma/web/activity_pub/mrf/hashtag_policy.ex:87:exact_eq
The test <<_::32>> == <<_::48>> can never evaluate to 'true'.
2024-01-22 18:37:19 -05:00
Mark Felder
5f71928f6b
MRF.InlineQuotePolicy: fix dialyzer error
...
lib/pleroma/web/activity_pub/mrf/inline_quote_policy.ex:60:callback_type_mismatch
Type mismatch for @callback config_description/0 in Pleroma.Web.ActivityPub.MRF.Policy behaviour.
Expected type:
%{
:description => binary(),
:key => atom(),
:label => binary(),
:related_policy => binary(),
:children => [map()]
}
Actual type:
%{
:children => [
%{
:description => <<_::808>>,
:key => :template,
:suggestions => [any(), ...],
:type => :string
},
...
],
:description => <<_::336>>,
:key => :mrf_inline_quote,
:label => <<_::184>>,
:related_policy => <<_::360>>,
:type => :group
}
2024-01-22 18:37:13 -05:00
Mark Felder
a7fa6f18dc
Pleroma.Migrators.Support.BaseMigrator: Fix dialyzer errors
...
lib/pleroma/migrators/context_objects_deletion_migrator.ex:13:exact_eq
The test :error | float() == 0 can never evaluate to 'true'.
lib/pleroma/migrators/hashtags_table_migrator.ex:13:exact_eq
The test :error | float() == 0 can never evaluate to 'true'.
2024-01-22 18:37:13 -05:00
Mark Felder
6ce7011a2e
Pleroma.Gun.ConnectionPool.WorkerSupervisor: fix dialyzer error
...
lib/pleroma/gun/connection_pool/worker_supervisor.ex:24:guard_fail
The guard clause:
when _ :: true === nil
can never succeed.
2024-01-22 18:37:13 -05:00
Mark Felder
65d49ac090
Pleroma.HTTP.AdapterHelper: fix dialyzer errors
...
lib/pleroma/http/adapter_helper.ex:18:unknown_type
Unknown type: Connection.host/0.
lib/pleroma/http/adapter_helper.ex:19:unknown_type
Unknown type: Connection.host/0.
lib/pleroma/http/adapter_helper.ex:19:unknown_type
Unknown type: Connection.proxy_type/0.
2024-01-22 18:37:13 -05:00
Mark Felder
c74c5f479a
Pleroma.Migrators.Support.BaseMigratorState: fix dialyzer error
...
lib/pleroma/migrators/support/base_migrator_state.ex:10:unknown_type
Unknown type: Pleroma.DataMigration.t/0.
2024-01-22 18:37:13 -05:00
Mark Felder
36355d3ed9
Pleroma.Web.ActivityPub.Builder: fix dialyzer error
...
lib/pleroma/web/activity_pub/builder.ex:205:unknown_type
Unknown type: Pleroma.Web.CommonAPI.ActivityDraft.t/0.
2024-01-22 18:37:13 -05:00
Mark Felder
39da451b6d
Pleroma.Web.ActivityPub.Builder: fix dialyzer errors
...
lib/pleroma/web/activity_pub/builder.ex:35:unknown_type
Unknown type: Activity.t/0.
lib/pleroma/web/activity_pub/builder.ex:40:unknown_type
Unknown type: Activity.t/0.
lib/pleroma/web/activity_pub/builder.ex:144:unknown_type
Unknown type: Activity.t/0.
________________________________________________________________________________
lib/pleroma/web/activity_pub/builder.ex:204:unknown_type
Unknown type: Pleroma.Web.CommonAPI.ActivityDraft.t/0.
2024-01-22 18:37:13 -05:00
Mark Felder
10f3a2833f
Pleroma.User.Query: fix dialyzer error
...
lib/pleroma/user/query.ex:74:unknown_type
Unknown type: Query.t/0.
2024-01-22 18:37:13 -05:00
Mark Felder
40feac086f
Pleroma.User: fix dialyzer errors
...
lib/pleroma/user.ex:1514:unknown_type
Unknown type: Pleroma.UserRelationship.t/0.
lib/pleroma/user.ex:2629:unknown_type
Unknown type: Pleroma.UserRelationship.t/0.
lib/pleroma/user.ex:2638:unknown_type
Unknown type: Pleroma.UserRelationship.t/0.
2024-01-22 18:37:13 -05:00
Mark Felder
1361856213
Pleroma.User.Backup: fix some dialyzer errors
...
lib/pleroma/user/backup.ex:207:call
The function call will not succeed.
:zip.create(
string(),
[:"\"actor.json\"", :"\"outbox.json\"", :"\"likes.json\"", :"\"bookmarks.json\""],
[{:cwd, binary()}, ...]
)
will never return since the success typing is:
(
atom() | [atom() | [any()] | char()],
[
atom()
| [atom() | [any()] | char()]
| {atom() | [atom() | [any()] | char()], binary()}
| {atom() | [atom() | [any()] | char()], binary(),
{:file_info, :undefined | non_neg_integer(),
:device | :directory | :other | :regular | :symlink | :undefined,
:none | :read | :read_write | :undefined | :write,
:undefined | non_neg_integer() | {_, _}, :undefined | non_neg_integer() | {_, _},
:undefined | non_neg_integer() | {_, _}, :undefined | non_neg_integer(),
:undefined | non_neg_integer(), :undefined | non_neg_integer(),
:undefined | non_neg_integer(), :undefined | non_neg_integer(),
:undefined | non_neg_integer(), :undefined | non_neg_integer()}}
],
[
:cooked
| :memory
| :verbose
| {:comment, string()}
| {:compress, :all | [[any()]] | {:add, [any()]} | {:del, [any()]}}
| {:cwd, string()}
| {:uncompress, :all | [[any()]] | {:add, [any()]} | {:del, [any()]}}
]
) ::
{:error, _}
| {:ok,
atom() | [atom() | [any()] | char()] | {atom() | [atom() | [any()] | char()], binary()}}
and the contract is
(name, fileList, options) :: retValue
when name: :file.name(),
fileList: [:FileSpec],
fileSpec:
:file.name() | {:file.name(), binary()} | {:file.name(), binary(), :file.file_info()},
options: [:Option],
option: create_option(),
retValue:
{:ok, FileName :: filename()}
| {:ok, {FileName :: filename(), binary()}}
| {:error, Reason :: term()}
2024-01-22 18:37:13 -05:00
Mark Felder
bff47479a7
Exile: fix for MacOS dev environments
2024-01-22 18:37:13 -05:00
Mark Felder
38ebefce9c
Announcement: fix dialyzer errors and add typespec for the changeset
...
It was possible for this to raise (no_local_return) because the data key could be missing from the params
2024-01-22 18:37:13 -05:00
Mark Felder
eb4dd50f53
Use config to control inclusion of test emoji
2024-01-22 18:37:13 -05:00
Mark Felder
6df93e61c4
Use config to determine sending to the streamer registry instead of MIX_ENV compile time function definition
2024-01-22 18:37:13 -05:00
Mark Felder
653b14e1c7
Use config to control Uploader callback timeout
2024-01-22 18:37:13 -05:00
Mark Felder
8efae57d67
Dialyzer: suppress Mix.Task errors
...
Callback info about the 'Elixir.Mix.Task' behaviour is not available.
2024-01-22 18:37:13 -05:00
feld
f7b3681eb0
Merge branch 'exile-macos' into 'develop'
...
Exile: fix for MacOS dev environments
See merge request pleroma/pleroma!4041
2024-01-22 21:11:38 +00:00
Mark Felder
1632a3fec9
Exile: fix for MacOS dev environments
2024-01-22 15:35:12 -05:00
feld
d802e65cd3
Merge branch 'exile-bsds' into 'develop'
...
Exile: switch to fork with BSD compile fix
See merge request pleroma/pleroma!4040
2024-01-22 18:59:59 +00:00
Mark Felder
fff235433e
Exile: switch to fork with BSD compile fix
2024-01-22 13:44:20 -05:00
lain
52aadc09e9
Merge branch 'exile' into 'develop'
...
Replace custom fifo implementation with Exile
See merge request pleroma/pleroma!4039
2024-01-22 16:49:30 +00:00
Mark Felder
0ac010ba3f
Replace custom fifo implementation with Exile
...
This is for streaming media to ffmpeg thumbnailer. The existing implementation relies on undocumented behavior.
Erlang open_port/2 does not officially support passing a string of a file path for opening. The specs clearly state you are to provide one of the following for open_port/2:
{spawn, Command :: string() | binary()} |
{spawn_driver, Command :: string() | binary()} |
{spawn_executable, FileName :: file:name_all()} |
{fd, In :: integer() >= 0, Out :: integer() >= 0}
Our method technically works but is strongly discouraged as it can block the scheduler and dialyzer throws errors as it recognizes we're breaking the contract and some of the functions we wrote may never return.
This is indirectly covered by the Erlang FAQ section "9.12 Why can't I open devices (e.g. a serial port) like normal files?"
https://www.erlang.org/faq/problems#idm1127
2024-01-22 10:13:17 -05:00
marcin mikołajczak
def088ce52
format
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-01-21 18:23:24 +01:00
Haelwenn
ab3f03a04a
Merge branch 'develop' into 'public-polls'
...
# Conflicts:
# docs/development/API/differences_in_mastoapi_responses.md
2024-01-21 12:03:29 +00:00
feld
548434f85c
Merge branch 'new-pipelines' into 'develop'
...
Fix testing cache policy, really.
See merge request pleroma/pleroma!4038
2024-01-21 04:36:24 +00:00
Mark Felder
951a82f2d7
Fix testing cache policy
2024-01-21 04:35:31 +00:00
feld
12b689a81e
Merge branch 'new-pipelines' into 'develop'
...
Fix testing cache policy
See merge request pleroma/pleroma!4037
2024-01-21 04:34:06 +00:00
Mark Felder
badd7654fd
Fix testing cache policy
2024-01-21 04:29:13 +00:00
feld
931fa4cb78
Merge branch 'new-pipelines' into 'develop'
...
New CI pipelines
See merge request pleroma/pleroma!4036
2024-01-21 04:17:51 +00:00
Mark Felder
518ddd458c
Clarify formatting and cycles versions
2024-01-21 04:14:41 +00:00
Mark Felder
8f0051d739
Rename 1.15 image to include otp25, clarify test names
2024-01-21 04:10:20 +00:00
Mark Felder
058fa5471a
Fix the image name
2024-01-21 04:06:17 +00:00
Mark Felder
aee971bd26
Only need amd64 for now
2024-01-21 03:59:26 +00:00
Mark Felder
06813d4a0e
Reorganize ci scripts
2024-01-21 03:58:53 +00:00
Mark Felder
68f421c203
Use our own 1.15 ci-base image
2024-01-20 22:53:07 -05:00
Mark Felder
1790400313
Add Dialyxir with manual job execution
2024-01-20 22:49:37 -05:00
Mark Felder
06ac829eb4
Spec building should be in build stage
2024-01-20 22:45:29 -05:00
Mark Felder
df31ec0d52
Linting as a separate stage
2024-01-20 22:43:41 -05:00
Mark Felder
a0518a4ee1
Add a build and test pipeline for elixir 1.15 with a new naming convention
2024-01-20 22:37:38 -05:00
feld
1edfce4322
Merge branch 'dialyzer-fixes' into 'develop'
...
Dialyzer fixes
See merge request pleroma/pleroma!4035
2024-01-21 00:54:25 +00:00
Mark Felder
dcd0102800
Credo
2024-01-20 19:39:13 -05:00
Mark Felder
cca9d6aeaa
Dialyzer fixes
2024-01-20 19:29:29 -05:00
Mark Felder
2330100371
Use config to control starting all HTTP pools in test env
2024-01-20 19:10:57 -05:00
Mark Felder
17877f612e
Use config to control streamer registry
2024-01-20 18:51:20 -05:00
Mark Felder
4bb57d4f25
Use config to control background migrators
2024-01-20 18:47:25 -05:00
Mark Felder
c7eda0b24a
Use config to control loading of custom modules
2024-01-20 18:43:53 -05:00
Mark Felder
029aaf3d74
Use config to control max_restarts
2024-01-20 18:41:04 -05:00
Mark Felder
65ac513776
Dialyzer: fix pattern match coverage
2024-01-20 17:58:47 -05:00
Mark Felder
88042109a3
Dialyzer: fix pattern match coverage
2024-01-20 17:56:32 -05:00
Mark Felder
7f649a7a19
Dialyzer: remove function that will never match
2024-01-20 17:50:21 -05:00
Mark Felder
2fbb67add7
Fix typo in typespec
2024-01-20 17:48:12 -05:00
Mark Felder
ea26add540
Fix incorrect type definition for maybe_direct_follow/2
2024-01-20 17:43:34 -05:00
Mark Felder
38d01ff511
Fix invalid types
2024-01-20 17:37:27 -05:00
Mark Felder
83eece7764
Fix invalid type
...
lib/pleroma/web/auth/authenticator.ex:8:unknown_type
Unknown type: User.t/0.
2024-01-20 17:33:37 -05:00
Mark Felder
4f07116108
Fix invalid type
...
lib/pleroma/web/activity_pub/publisher.ex:31:unknown_type
Unknown type: Map.t/0.
2024-01-20 17:32:19 -05:00
Mark Felder
ec5ae83da6
Fix invalid types
...
lib/pleroma/web/activity_pub/mrf/policy.ex:6:unknown_type
Unknown type: Map.t/0.
lib/pleroma/web/activity_pub/mrf/policy.ex:7:unknown_type
Unknown type: Map.t/0.
2024-01-20 17:31:07 -05:00
Mark Felder
2061a1d917
Fix invalid type
...
lib/pleroma/uploaders/uploader.ex:43:unknown_type
Unknown type: Map.t/0.
2024-01-20 17:29:27 -05:00
Mark Felder
551e90cd52
Fix invalid type
...
lib/pleroma/upload.ex:89:unknown_type
Unknown type: Map.t/0.
2024-01-20 17:28:54 -05:00
Mark Felder
f050a75b92
Fix invalid types due to typos
...
lib/pleroma/web/feed/feed_view.ex:135:unknown_type
Unknown type: NativeDateTime.t/0.
lib/pleroma/web/feed/feed_view.ex:148:unknown_type
Unknown type: NativeDateTime.t/0.
2024-01-20 17:22:40 -05:00
Mark Felder
e5120a2703
Fix invalid type due to typos
...
lib/pleroma/web/o_auth/authorization.ex:61:unknown_type
Unknown type: Authtorizatiton.t/0.
2024-01-20 17:21:12 -05:00
Mark Felder
65dfaa6cb9
Fix invalid type due to late aliasing
...
lib/pleroma/web/o_auth/token/query.ex:12:unknown_type
Unknown type: Token.t/0.
2024-01-20 17:18:16 -05:00
Mark Felder
09ae0ab24a
Fix invalid type
...
lib/pleroma/web/rich_media/parser.ex:105:unknown_type
Unknown type: Integer.t/0.
2024-01-20 17:16:10 -05:00
Mark Felder
467a65af90
Fix invalid types
...
lib/pleroma/web/rich_media/parser/ttl.ex:6:unknown_type
Unknown type: Integer.t/0.
lib/pleroma/web/rich_media/parser/ttl.ex:6:unknown_type
Unknown type: Map.t/0.
2024-01-20 17:14:56 -05:00
Mark Felder
e3f52ee13f
Fix invalid types
...
lib/pleroma/web/streamer.ex:37:unknown_type
Unknown type: Map.t/0.
________________________________________________________________________________
lib/pleroma/web/streamer.ex:63:unknown_type
Unknown type: Map.t/0.
2024-01-20 17:14:10 -05:00
Mark Felder
593c7e26d4
Fix invalid type
...
lib/pleroma/migrators/hashtags_table_migrator.ex:103:unknown_type
Unknown type: Map.t/0.
2024-01-20 17:13:27 -05:00
Mark Felder
559aeb5dd0
Add missing type Pleroma.Emoji.t()
...
lib/pleroma/emoji/loader.ex:23:unknown_type
Unknown type: Pleroma.Emoji.t/0.
2024-01-20 17:08:18 -05:00
Mark Felder
8ed506a370
Fix invalid type
...
lib/pleroma/docs/json.ex:21:unknown_type
Unknown type: Map.t/0.
2024-01-20 17:05:55 -05:00
Mark Felder
0b7d214211
Fix invalid typespec references to Ecto.Changeset.t()
2024-01-20 16:47:50 -05:00
Mark Felder
dc8045d766
FlakeId.Ecto.CompatType.t() does not exist
...
This type is not exported and usable. FlakeId intends to return the type as :uuid, so we replace it in the typespecs with Ecto.UUID.t() which assuages the dialyzer errors
e.g.,
lib/pleroma/bookmark.ex:25:unknown_type
Unknown type: FlakeId.Ecto.CompatType.t/0.
2024-01-20 16:36:01 -05:00
Mark Felder
b16a01ba9d
Pleroma.ApplicationRequirements: fix dialyzer errors
...
lib/pleroma/application_requirements.ex:19:unknown_type
Unknown type: Pleroma.ApplicationRequirements.VerifyError.t/0.
lib/pleroma/application_requirements.ex:199:pattern_match_cov
The pattern
variable_result
can never match, because previous clauses completely cover the type
:ok.
2024-01-20 16:10:11 -05:00
Mark Felder
df1d390a49
Pleroma.Activity.Queries: fix dialyzer error
...
lib/pleroma/activity/queries.ex:12:unknown_type
Unknown type: Activity.t/0.
2024-01-20 16:01:32 -05:00
Mark Felder
2a28377be0
Fix mix task pleroma.instance dialyzer error
...
lib/mix/tasks/pleroma/instance.ex:356:pattern_match_cov
The pattern
:variable_
can never match, because previous clauses completely cover the type
%{
:anonymize => boolean(),
:dedupe => boolean(),
:read_description => boolean(),
:strip_location => boolean()
}.
2024-01-20 15:55:33 -05:00
Haelwenn
a5f64ffd0c
Apply lanodan’s suggestion to 1 file
2024-01-19 21:28:15 +00:00
Haelwenn
3c65a2899d
Merge branch 'handle_object_fetch_failures' into 'develop'
...
Handle object fetch failures gracefully
See merge request pleroma/pleroma!4015
2024-01-19 18:43:00 +00:00
marcin mikołajczak
fa02a1e634
Update MastoAPI responses docs
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-01-19 18:05:50 +01:00
marcin mikołajczak
90b442727e
Update Admin API docs
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-01-19 17:53:37 +01:00
Haelwenn
81a13b4b9e
Merge branch 'api-docs' into 'develop'
...
Update API docs for my changes
See merge request pleroma/pleroma!4033
2024-01-18 02:19:58 +00:00
marcin mikołajczak
b39403a48f
Update API docs for my changes
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-01-17 17:13:21 +01:00
Haelwenn
4c20713ecd
Merge branch 'otp26' into 'develop'
...
OTP26 support
See merge request pleroma/pleroma!4025
2024-01-17 09:51:56 +00:00
Haelwenn
355487041a
We are unsure if OTP27 will bring more breaking changes
2024-01-16 11:22:34 -05:00
Mark Felder
e44f6a2ab3
Skip tests on MacOS/Darwin that have always failed
2024-01-15 20:18:43 -05:00
Mark Felder
012ab87605
Pleroma.Web.MastodonAPI.SubscriptionControllerTest: disable async and use on_exit/1 to ensure web push config gets restored
2024-01-16 00:59:44 +00:00
Mark Felder
ad363c62c3
Fix StatusController test by using the get_query_parameter/2 helper to reliably retrieve the max_id value
2024-01-15 17:32:57 -05:00
Mark Felder
8bd8ee03c2
Add Pleroma.Test.Helpers.get_query_parameter/2 to retrieve specific query parameter values
2024-01-15 17:32:15 -05:00
Mark Felder
4cbf11d32c
Fix ChatController tests validating prev/next URLs by sorting the query parameters before comparison
2024-01-15 17:12:06 -05:00
Mark Felder
e7c6410192
Add Pleroma.Support.Helpers.uri_query_sort/1 for easy sorting of a URL's query parameters
2024-01-15 17:08:24 -05:00
Haelwenn
9b39bc6aa8
Merge branch 'mrf-regex-error' into 'develop'
...
MRF: Log sensible regex error for subdomain_match
See merge request pleroma/pleroma!4026
2024-01-15 08:24:54 +00:00
Haelwenn
c29430b018
Merge branch 'mrf-steal-emoji-extname' into 'develop'
...
MRF.StealEmojiPolicy: Properly add fallback extension to filenames missing one
See merge request pleroma/pleroma!4029
2024-01-15 08:24:24 +00:00
Mark Felder
12c052551b
Allow the Remote Fetcher to attempt fetching an unreachable instance
2024-01-14 14:05:43 -05:00
tusooa
d3a4f5b7d7
Merge branch 'nil-contentMap' into 'develop'
...
Support objects with a nil contentMap (firefish)
Closes #3231
See merge request pleroma/pleroma!4030
2024-01-13 22:23:21 +00:00
feld
9cc46c5538
Merge branch 'qtfaststart-fix' into 'develop'
...
Fix MediaProxy crashing on some videos
See merge request pleroma/pleroma!4024
2024-01-13 04:35:32 +00:00
feld
d4b889783c
Merge branch 'fix-duplicate-inbox-deliveries' into 'develop'
...
Fix duplicate inbox deliveries
See merge request pleroma/pleroma!4031
2024-01-11 20:21:57 +00:00
Mint
379d7fafd5
Merge branch 'use-shared-inbox-test' of pleromergit:pleroma/pleroma into fix-duplicate-inbox-deliveries
2024-01-11 23:10:40 +03:00
Mark Felder
dcb2b1413b
Add test to validate shared inboxes are used when multiple recipients from the same instance are recipients
2024-01-11 15:05:15 -05:00
Mint
3c30eadd5e
Fix duplicate inbox deliveries
2024-01-11 20:48:35 +03:00
Haelwenn (lanodan) Monnier
7651198508
Support objects with a nil contentMap (firefish)
...
Closes: https://git.pleroma.social/pleroma/pleroma/-/issues/3231
2024-01-11 07:16:45 +01:00
tusooa
8bc59e9743
Merge branch 'emoji-use-v1-api' into 'develop'
...
Make remote emoji packs API use specifically the V1 URL
See merge request pleroma/pleroma!4028
2024-01-10 01:26:46 +00:00
Haelwenn (lanodan) Monnier
4ca65c6182
MRF.StealEmojiPolicy: Properly add fallback extension to filenames missing one
2024-01-07 19:37:35 +01:00
Ekaterina Vaartis
6a55b680a3
Fix tests
2024-01-07 17:49:08 +03:00
Ekaterina Vaartis
29158681f9
Fetch count before downloading the pack and use that as page size
2024-01-07 17:07:50 +03:00
Ekaterina Vaartis
69e4ebbb8e
Make remote emoji packs API use specifically the V1 URL
...
Akkoma does not understand it without V1, and it works either way with
normal pleroma, so no reason to not do this
2024-01-07 15:30:52 +03:00
Haelwenn
67a5542a73
Merge branch 'fix-account-auth-check' into 'develop'
...
Fix authentication check on account rendering when bio is defined
See merge request pleroma/pleroma!4027
2024-01-05 00:45:29 +00:00
Alexander Tumin
32d8e0d496
Fix authentication check on account rendering when bio is defined
2024-01-04 16:57:48 +03:00
Haelwenn (lanodan) Monnier
6af49270a9
MRF: Log sensible error for subdomains_regex
2024-01-02 15:37:41 +01:00
Lain Soykaf
fc910f9bb9
Linting
2023-12-30 11:45:16 +04:00
Lain Soykaf
8883fa326a
Mix: Update http_signatures version
2023-12-30 11:44:23 +04:00
Mark Felder
c6acd2abb3
Revert grammar leak from bad merge
2023-12-29 23:31:48 -05:00
Mark Felder
63a74f7b6d
Support for Erlang OTP 26
2023-12-29 23:22:31 -05:00
Mark Felder
04366492b2
ConfigDB export to file does not have a consistent order.
...
Just test a few values to prove it was written
2023-12-29 23:18:45 -05:00
Mark Felder
1b5168ae02
Phoenix detects the webfinger requests with content-type application/jrd+json as "jrd" now
2023-12-29 23:18:45 -05:00
Mark Felder
347e5f33c7
Fix regex string match due to OTP26 key order change
...
OTP25:
"<http://localhost:4001/api/v1/favourites?limit=1&max_id=Ad1FhzPIS7gcHjUcoC&offset=0 >; rel=\"next\""
OTP26:
"<http://localhost:4001/api/v1/favourites?offset=0&limit=1&max_id=Ad1FmOIAXiSNgygflA >; rel=\"next\""
2023-12-29 23:18:45 -05:00
Mark Felder
0820c23988
Fix Chat controller tests failing due to OTP26 key order change
2023-12-29 23:18:45 -05:00
Mark Felder
d4dd21303a
Remove call to Pleroma.Web.Endpoint.config_change/2
...
This is not necessary for the tests to pass and breaks other tests as this change doesn't get cleanly reverted causing the hostname to stay set this way and leak into other test causing failures with "sub.example.com" not matching "localhost"
2023-12-29 22:51:40 -05:00
Mark Felder
36b3867787
Fix test "transforms config to tuples"
...
This should have never worked. The default empty values for the other MRF Simple options will always be there.
2023-12-29 22:50:26 -05:00
Mark Felder
b51ba39dd1
Update Floki to get the :attributes_as_maps feature to allow us to compare equality of parsed documents without issues of key ordering
2023-12-29 22:50:26 -05:00
Mark Felder
e121e06214
Implement a custom uri_equal?/2 to fix comparisons of URLs with unordered query parameters
2023-12-29 22:50:26 -05:00
Mark Felder
e7d6b835ae
Fix tests by leveraging Keyword.equal?/2
2023-12-29 22:50:26 -05:00
Haelwenn
f74f5e0a56
Merge branch 'publisher' into 'develop'
...
Discard some failed publisher jobs
See merge request pleroma/pleroma!4022
2023-12-29 23:18:34 +00:00
Mark Felder
50edef5bc1
Change QTFastStart to recover gracefully if it encounters an error during bitstring matching
...
This fixes issues with internal errors when trying to serve the video
2023-12-29 14:12:44 -05:00
Mark Felder
833117f573
Fix tests
...
Need to handle the edge case of no valid HTTP response which has no status code
2023-12-29 13:04:06 -05:00
feld
8ac4458630
Merge branch 'finch-redirects' into 'develop'
...
Fix following redirects with Finch
See merge request pleroma/pleroma!4023
2023-12-29 17:00:58 +00:00
lain
a6fc97ffec
Merge branch 'bugfix/chat-attachment-empty-array' into 'develop'
...
ChatMessage: Tolerate attachment field set to an empty array
Closes #3224
See merge request pleroma/pleroma!4020
2023-12-29 08:12:27 +00:00
Mark Felder
4afe211e50
Return the full tuple from Tesla
2023-12-29 01:04:05 -05:00
Mark Felder
2950397d47
Fix following redirects with Finch
2023-12-29 00:50:50 -05:00
Mark Felder
141702538b
Discard on a 404 as well
2023-12-29 00:31:05 -05:00
Mark Felder
7ebca7ecfa
Activity publishing failures will prevent the job from retrying if the publishing request returns a 403 or 410
2023-12-29 00:25:33 -05:00
Mark Felder
77949d4590
Make the Publisher log error less noisy
2023-12-29 00:25:11 -05:00
Mark Felder
f17f92105b
Oban jobs should be discarded on permanent errors
2023-12-28 23:52:59 -05:00
feld
3954dfd4f1
Merge branch 'remove-multiple-federator-modules' into 'develop'
...
Fix the Federator perform/2 Oban callback
See merge request pleroma/pleroma!4021
2023-12-29 04:33:45 +00:00
Haelwenn (lanodan) Monnier
39dc6c65ef
ChatMessage: Tolerate attachment field set to an empty array
...
Closes: https://git.pleroma.social/pleroma/pleroma/-/issues/3224
2023-12-29 05:32:47 +01:00
Mark Felder
d519a535e1
Changelog
2023-12-28 23:32:21 -05:00
Mark Felder
aa070c7daf
Handle 401s as I have observed it in the wild
2023-12-28 23:09:33 -05:00
Mark Felder
efd50759d5
Log errors when publishing activities
2023-12-28 22:59:27 -05:00
Mark Felder
08ba9a15b2
Fix the Federator perform/2 Oban callback
2023-12-28 22:51:47 -05:00
Haelwenn
7f3a83d3ed
Merge branch 'remove-multiple-federator-modules' into 'develop'
...
Remove support for multiple federation publisher modules
See merge request pleroma/pleroma!4019
2023-12-29 03:35:24 +00:00
Mark Felder
ddb9e90c40
Update minimum elixir version found in various docs
2023-12-28 15:59:25 -05:00
Mark Felder
013f7c4f8f
Changelog
2023-12-28 14:55:26 -05:00
Mark Felder
e35fa60d8a
Remove reference to the :federation_publisher_modules setting in our config test
2023-12-28 14:53:40 -05:00
Mark Felder
3acfdb6f8a
Retire the Pleroma.Web.Federator.Publisher module
2023-12-28 14:53:09 -05:00
Mark Felder
1d816222e0
Remove support for multiple federation publisher modules
...
This also unravels some needless indirection.
2023-12-28 11:55:19 -05:00
Haelwenn
ddc321a094
Merge branch 'tusooa/3205-group-actor' into 'develop'
...
Implement group actors
See merge request pleroma/pleroma!3969
2023-12-28 10:46:53 +00:00
Haelwenn
81ce04990e
Merge branch 'typo' into 'develop'
...
Fix some typos
See merge request pleroma/pleroma!4017
2023-12-28 10:02:17 +00:00
Mark Felder
a6fd251e44
Improve test descriptions
2023-12-27 22:37:06 -05:00
Mark Felder
ad0a5deb67
Prevent requeuing Remote Fetcher jobs that exceed thread depth
2023-12-27 22:28:41 -05:00
Mark Felder
a2708f7fe3
Leverage existing atoms as return errors for the object fetcher
2023-12-27 22:01:59 -05:00
Mark Felder
287f2c9719
Formatting
2023-12-27 21:55:07 -05:00
Mark Felder
882267e3ec
Remove duplicate log messages from Transmogrifier
...
Object fetch errors are logged in the fetcher module
2023-12-27 21:39:29 -05:00
Mark Felder
becb070603
Conslidate log messages for object fetcher failures and leverage Logger.metadata
2023-12-27 21:22:51 -05:00
Mark Felder
6c9929b809
Set Logger level to error
2023-12-27 20:18:14 -05:00
marcin mikołajczak
017e35fbf1
Fix some more typos
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2023-12-28 00:17:04 +01:00
marcin mikołajczak
f53197c82a
Fix operation name typo
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2023-12-27 23:52:46 +01:00
Mark Felder
be0cca9afd
RemoteFetcherWorker Oban job tests
2023-12-27 16:08:57 -05:00
Mark Felder
53db65678d
Separate files for each distinct sentence in the changelog
2023-12-27 15:44:31 -05:00
Mark Felder
d4c77103d1
Fix detection of user follower collection being private
...
We were overzealous with matching on a raw error from the object fetch that should have never been relied on like this. If we can't fetch successfully we should assume that the collection is private.
Building a more expressive and universal error struct to match on may be something to consider.
2023-12-27 15:27:39 -05:00
marcin mikołajczak
f6fee39e42
Add changelog
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2023-12-27 21:24:20 +01:00
feld
47e00524f7
Merge branch 'instance-defdelegates' into 'develop'
...
defdelegates for Pleroma.Instances
See merge request pleroma/pleroma!4016
2023-12-27 17:51:52 +00:00
Mark Felder
1a337dcc18
These functions in Pleroma.Instances should be defdelegates to Pleroma.Instances.Instance
2023-12-27 12:44:16 -05:00
tusooa
b273025fd7
Add pleroma:group_actors to instance features
2023-12-27 12:28:11 -05:00
tusooa
e9d2fadd8e
Add changelog for group actors
2023-12-27 12:28:11 -05:00
tusooa
e34a975dd9
Do not boost if group is blocking poster
2023-12-27 12:28:10 -05:00
tusooa
5f5533b88a
Test group actor behaviour in SideEffects
2023-12-27 12:28:10 -05:00
tusooa
5459bbc1ef
Allow group actors to boost posts
2023-12-27 12:28:04 -05:00
tusooa
7a58ddfa48
Allow local user to have group actor type
...
https://git.pleroma.social/pleroma/pleroma/-/issues/3205
2023-12-27 12:27:37 -05:00
tusooa
40f170f0a7
Merge branch 'webfinger-fix' into 'develop'
...
Use correct domain for fqn and InstanceView
See merge request pleroma/pleroma!3958
2023-12-27 17:10:32 +00:00
Mark Felder
5f51094138
Update changelog
2023-12-27 11:09:42 -05:00
Mark Felder
73c4c6d7de
Revert "Mark instances as unreachable when returning a 403 from an object fetch"
...
This reverts commit d472bafec1
.
2023-12-26 17:20:36 -05:00
Mark Felder
9c0040124a
Skip remote fetch jobs for unreachable instances
2023-12-26 16:28:05 -05:00
Mark Felder
5f6966cd9f
Remove mistaken duplicate fetch
2023-12-26 16:23:41 -05:00
Mark Felder
c4f0a3b570
Changelogs
2023-12-26 16:08:36 -05:00
Mark Felder
c6b38441f1
Cancel remote fetch jobs for deleted objects
2023-12-26 16:05:44 -05:00
Mark Felder
67dd81e825
Consolidate the HTTP status code checking into the private get_object/1
2023-12-26 16:05:28 -05:00
Mark Felder
d472bafec1
Mark instances as unreachable when returning a 403 from an object fetch
...
This is a definite sign the instance is blocked and they are enforcing authorized_fetch
2023-12-26 15:54:21 -05:00
Mark Felder
603e9f6a92
Fix Transmogrifier tests
...
These tests relied on the removed Fetcher.fetch_object_from_id!/2 function injecting the error tuple into a log message with the exact words "Object containment failed."
We will keep this behavior by generating a similar log message, but perhaps this should do a better job of matching on the error tuple returned by Transmogrifier.handle_incoming/1
2023-12-26 14:22:06 -05:00
Mark Felder
ea0ec5fbcf
Remove Fetcher.fetch_object_from_id!/2
...
It was only being called once and can be replaced with a case statement.
2023-12-26 14:20:35 -05:00
marcin mikołajczak
6051715a99
Merge remote-tracking branch 'origin/develop' into instance_rules
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2023-12-22 14:34:30 +01:00
marcin mikołajczak
9fc6676d8c
Merge remote-tracking branch 'origin/develop' into instance-contact-account
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2023-12-22 13:54:44 +01:00
marcin mikołajczak
28e5e65676
Merge remote-tracking branch 'origin/develop' into webfinger-fix
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2023-12-22 13:29:56 +01:00
lain
5f1d707367
Merge branch 'bad_inbox_request' into 'develop'
...
Return a 400 from a bad delivery attempt to the inbox
Closes #2884
See merge request pleroma/pleroma!4009
2023-12-22 11:04:25 +00:00
Haelwenn
bd50892c25
Merge branch 'instance-v2' into 'develop'
...
Implement api/v2/instance route
See merge request pleroma/pleroma!3939
2023-12-21 21:14:46 +00:00
Mark Felder
7e3bbdded5
Elixir 1.13 is the minimum required version
2023-12-20 23:39:12 +00:00
feld
344c798b4c
Merge branch 'fix-otp-comparison' into 'develop'
...
Fix invalid string comparison for OTP versions and replace with config
See merge request pleroma/pleroma!4013
2023-12-20 23:26:59 +00:00
Mark Felder
928bda2e43
Fix invalid string comparison for OTP versions and replace with config
...
Old way was wrong for multiple reasons. If we do this as a config value it fixes :slave.start/3 being picked up as a compile warning on OTP26.
Also if we want to do any real clustering we'll need something like this to support OTP25 and older.
2023-12-20 23:13:33 +00:00
marcin mikołajczak
4f2fb8dc5e
Use consistent terminology
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2023-12-21 00:13:13 +01:00
marcin mikołajczak
39d3df86c8
Use consistent terminology
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2023-12-21 00:10:30 +01:00
feld
56618873af
Merge branch 'deprecations' into 'develop'
...
More deprecation fixes/cleanup
See merge request pleroma/pleroma!4012
2023-12-20 22:11:35 +00:00
Mark Felder
d9fe41a301
More deprecation fixes
2023-12-20 16:47:58 -05:00
Haelwenn (lanodan) Monnier
1fc53c3077
config/description.exs: Remove quack
...
Was already removed in f40ccce7e9
2023-12-20 16:24:42 -05:00
Mark Felder
fb3eb6e0a4
Fix more Logger warn -> warning
2023-12-20 16:24:27 -05:00
Mark Felder
2207fafa91
Fix more Logger warn -> warning
2023-12-20 16:24:19 -05:00
Mark Felder
cd3abe0b4c
Fix more Logger warn -> warning
2023-12-20 16:23:57 -05:00
feld
cbdd134174
Merge branch 'deprecations' into 'develop'
...
Deprecations
See merge request pleroma/pleroma!4011
2023-12-20 21:13:35 +00:00
Mark Felder
45150848fb
Backwards compatibility for OTP
2023-12-20 15:56:56 -05:00
Mark Felder
3c80c86437
Chase deprecations/warnings for Elixir 1.15
2023-12-20 20:17:25 +00:00
Mark Felder
107f00d93f
OTP26: Chase the :slave.start/3 deprecation
2023-12-20 20:16:39 +00:00
Mark Felder
9896b64f54
Elixir 1.15: Chase the Logger.warn deprecation
2023-12-20 20:16:26 +00:00
feld
d72d42f9ce
Merge branch 'testsecrets' into 'develop'
...
Clarify location of test.secret.exs file
See merge request pleroma/pleroma!4010
2023-12-20 19:13:03 +00:00
Mark Felder
bf57fd82bb
Clarify location of test.secret.exs file
2023-12-20 14:12:06 -05:00
Mark Felder
f43f33e307
Return a 400 from a bad delivery attempt to the inbox
...
This stops the backend from generating 500 errors from these events.
2023-12-19 13:56:17 -05:00
feld
99b07c817e
Merge branch 'web_push' into 'develop'
...
Fix Web Push notification delivery
See merge request pleroma/pleroma!4008
2023-12-19 16:19:35 +00:00
Mark Felder
e2066994b1
Fix Web Push notification delivery
...
Finch does not automatically append header content-type: octet-stream for binary payloads.
2023-12-19 10:56:55 -05:00
Haelwenn
8893a044b3
Merge branch 'priority_activities' into 'develop'
...
Priority activities
See merge request pleroma/pleroma!4004
2023-12-18 00:49:09 +00:00
Lain Soykaf
c1423ddca3
ActivityPub.Publisher: Filter inboxes
2023-12-17 11:15:58 +04:00
Haelwenn (lanodan) Monnier
086ba59d03
HTTPSignaturePlug: Add :authorized_fetch_mode_exceptions
2023-12-16 19:25:51 +01:00
Lain Soykaf
77bb1bb6c8
Actually write changelog
2023-12-16 21:41:28 +04:00
Haelwenn (lanodan) Monnier
f271ea6e43
Move Plugs.RemoteIP.maybe_add_cidr/1 to InetHelper.parse_cidr/1
2023-12-16 18:23:26 +01:00
Lain Soykaf
a0f70cf7d0
Add changelog
2023-12-16 20:40:51 +04:00
Lain Soykaf
c212fc1dcf
User: Ignore non-local users when setting 'last active at'
2023-12-16 20:32:13 +04:00
Lain Soykaf
3fbc80eb58
B ActivityPub.Publisher: Prioritize direct mentions
2023-12-16 20:26:08 +04:00
Haelwenn
147b37b893
Merge branch 'mergeback/2.6.1' into 'develop'
...
mergeback: 2.6.1
Closes #3194
See merge request pleroma/pleroma!4003
2023-12-16 01:03:37 +00:00
tusooa
f5559f3aff
Skip changelog for 2.6.1 mergeback
2023-12-15 19:45:23 -05:00
tusooa
453cb6a388
Merge remote-tracking branch 'upstream/stable' into mergeback/2.6.1
2023-12-15 19:43:07 -05:00
tusooa
6722b7f395
Merge branch 'release/2.6.1' into 'stable'
...
Release: 2.6.1
See merge request pleroma/pleroma!3999
2023-12-16 00:36:08 +00:00
Haelwenn
f07b134add
Fix formatting of changelog
2023-12-15 23:52:37 +00:00
lain
7622a83973
Merge branch 'service-actor-outbox' into 'develop'
...
ap userview: add outbox field.
See merge request pleroma/pleroma!4002
2023-12-15 06:22:55 +00:00
Lain Soykaf
766011544a
UserViewTest: Add basice service actor test.
2023-12-15 10:01:31 +04:00
Yonle
cb1b52d980
ap userview: add outbox field.
...
Signed-off-by: Yonle <yonle@lecturify.net>
2023-12-15 09:55:06 +04:00
tusooa
948f01f19a
Bundle 2.6.1 frontend
2023-12-14 20:32:49 -05:00
tusooa
ad6a6aa07b
Bump version to 2.6.1
2023-12-14 20:14:41 -05:00
Haelwenn (lanodan) Monnier
b1ea63b4c6
changelog.d/system-cflags.fix: New entry
2023-12-14 20:13:25 -05:00
Haelwenn (lanodan) Monnier
41f6e8f7f4
mix: Bump elixir-captcha for system-CFLAGS
2023-12-14 20:13:20 -05:00
Haelwenn (lanodan) Monnier
08839602bd
mix: cherry-pick eblurhash latest git for system-CFLAGS
2023-12-14 20:13:00 -05:00
Haelwenn (lanodan) Monnier
35090f6eac
TwitterAPI: Return proper error when healthcheck is disabled
2023-12-14 20:11:01 -05:00
Haelwenn (lanodan) Monnier
272271d939
docs: clang is also supported
2023-12-14 07:29:54 -05:00
Haelwenn (lanodan) Monnier
1b22f13488
docs: Put a max version on erlang and elixir
...
Closes: https://git.pleroma.social/pleroma/pleroma/-/issues/3194
2023-12-14 07:29:54 -05:00
Henry Jameson
e635ee8b39
changelog
2023-12-14 07:28:52 -05:00
Henry Jameson
57445e65cb
update, add images
2023-12-14 07:28:52 -05:00
Henry Jameson
476fd01f8d
Initial draft on frontends management
2023-12-14 07:28:43 -05:00
lain
02acf7c0b3
Merge branch 'fix-develop-tests' into 'develop'
...
StatusViewTest: Fix tests.
See merge request pleroma/pleroma!3998
2023-12-13 10:05:18 +00:00
Lain Soykaf
1458de92f0
Gitlab CI: Switch to our own docker hub
2023-12-13 13:08:00 +04:00
Lain Soykaf
935dce9a0b
Gitlab CI: Update postgres for rum tests.
2023-12-13 12:45:52 +04:00
Lain Soykaf
40fa1099bf
StatusViewTest: Fix tests.
2023-12-13 11:19:08 +04:00
lain
29d202e1df
Merge branch 'add-opengraph-rich-media-proxy' into 'develop'
...
Add media proxy to opengraph rich media cards
See merge request pleroma/pleroma!3997
2023-12-13 06:23:16 +00:00
lain
2c560266e9
Merge branch 'no-async-clear-config' into 'develop'
...
Various test improvements and refactors
See merge request pleroma/pleroma!3991
2023-12-12 15:54:55 +00:00
Lain Soykaf
cca6c20eb6
Revert "EmailTest: use config mock"
...
This reverts commit dca41cc4a3
.
2023-12-12 19:35:19 +04:00
Lain Soykaf
a989b793de
Revert "Tests: fix more tests"
...
This reverts commit 05352330bb
.
2023-12-12 19:35:08 +04:00
Alexander Tumin
e7af2addd8
Add media proxy to opengraph rich media cards
2023-12-12 18:32:02 +03:00
Lain Soykaf
877552c6f8
Linting
2023-12-12 19:11:15 +04:00
Lain Soykaf
05352330bb
Tests: fix more tests
2023-12-12 19:08:57 +04:00
Lain Soykaf
dca41cc4a3
EmailTest: use config mock
2023-12-12 15:25:52 +04:00
Lain Soykaf
b13820dcd0
Tests: Remove skip_on_mac
tag
2023-12-12 14:09:22 +04:00
Lain Soykaf
190120fd79
Tests: More test fixes
2023-12-12 14:03:46 +04:00
Lain Soykaf
00def0875b
RichMediaTest: Use mocked config
2023-12-12 13:28:11 +04:00
lain
31a524fb52
Merge branch 'docker-fix-22' into 'develop'
...
Fix dockerfile compilation.
See merge request pleroma/pleroma!3996
2023-12-12 09:06:11 +00:00
Lain Soykaf
da3d1157e5
Fix dockerfile compilation.
2023-12-12 13:04:53 +04:00
Lain Soykaf
650edb60dc
ScheduledActivityControllerTest: Fix tests, make async.
2023-12-12 12:56:07 +04:00
Lain Soykaf
4ba03aa29b
MastodonAPITest: Fix tests
2023-12-12 12:55:53 +04:00
Lain Soykaf
22c4d89dbb
ScheduledActivity: Use config mocking
2023-12-12 12:48:55 +04:00
Lain Soykaf
8da1fd329d
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into no-async-clear-config
2023-12-12 12:29:22 +04:00
lain
e9d9caa77c
Merge branch 'fix-dockerfile' into 'develop'
...
Dockerfile: Use platform libvips.
See merge request pleroma/pleroma!3995
2023-12-12 08:11:33 +00:00
Lain Soykaf
7371e72e6c
Dockerfile: Use platform libvips.
2023-12-12 11:36:34 +04:00
Lain Soykaf
228966e6dd
Exiftool.ReadDescription: Remove wrong spec.
2023-12-12 11:09:54 +04:00
Lain Soykaf
18ab36d70c
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into no-async-clear-config
2023-12-12 10:55:19 +04:00
lain
3c89f3cf15
Merge branch 'build-releases-with-provided-libvips-2' into 'develop'
...
Mix: Update vix.
See merge request pleroma/pleroma!3994
2023-12-12 05:23:24 +00:00
Lain Soykaf
6c5ebcded5
Mix: Update vix.
2023-12-12 08:59:47 +04:00
lain
1d51ae7570
Merge branch 'build-releases-with-provided-libvips-2' into 'develop'
...
Use version of vix that compiles correctly under arm32
See merge request pleroma/pleroma!3993
2023-12-11 14:40:01 +00:00
Lain Soykaf
8b4a786266
Use version of vix that compiles correctly under arm32
2023-12-11 18:38:27 +04:00
lain
41c02b3d16
Merge branch 'authorize-interaction' into 'develop'
...
Support /authorize-interaction route used by Mastodon
See merge request pleroma/pleroma!3957
2023-12-11 09:31:18 +00:00
lain
8d4a47bf9e
Merge branch 'build-releases-with-provided-libvips-2' into 'develop'
...
Build releases with provided libvips 2
See merge request pleroma/pleroma!3992
2023-12-11 09:09:25 +00:00
Lain Soykaf
7cf65cfeea
Changelog
2023-12-11 12:48:53 +04:00
Lain Soykaf
600364f4fd
Gitlab CI: Build using system provided libvips
2023-12-11 12:47:59 +04:00
lain
e7974afd37
Merge branch 'optimistic-inbox' into 'develop'
...
Optimistic Inbox
See merge request pleroma/pleroma!3989
2023-12-11 07:32:42 +00:00
Lain Soykaf
6be3704bc4
Linting
2023-12-11 11:28:39 +04:00
Lain Soykaf
e4292c94d8
BackupTest: Fix tests
2023-12-11 11:12:02 +04:00
Lain Soykaf
d62b17eb60
UploadMediaPlugTest: Fix tests
2023-12-11 11:06:07 +04:00
Lain Soykaf
dd0cf0371a
AttachmentValidatorTest: Fix tests
2023-12-11 11:02:33 +04:00
Lain Soykaf
54c0510d1f
Push.ImplTest: Fix tests
2023-12-11 11:01:07 +04:00
Lain Soykaf
dec524e7da
BackupViewTest: Fix Tests
2023-12-11 10:54:11 +04:00
Lain Soykaf
82beb4987a
MascotControllerTest: Fix tests
2023-12-11 10:49:22 +04:00
Lain Soykaf
f5a2337b37
CommonAPITest: Fix tests
2023-12-11 10:46:26 +04:00
Lain Soykaf
6e448ef239
ActivityPubTest: Fix tests
2023-12-11 10:44:31 +04:00
Lain Soykaf
d19f5d18e9
UpdateCredentialsTest: Fix tests
2023-12-11 10:41:27 +04:00
Lain Soykaf
6a738720ec
ChatControllerTest: Fix tests
2023-12-11 10:39:03 +04:00
Lain Soykaf
d3822269ca
ObjectTest: Fix tests
2023-12-11 10:37:39 +04:00
Lain Soykaf
e8e74146e8
MastodonAPI.AccountViewTest: Fix tests
2023-12-11 10:33:33 +04:00
Lain Soykaf
50c31cb31b
RemoteFollowControllerTest: Fix test
2023-12-11 10:24:44 +04:00
Lain Soykaf
844d0d3147
UploadTest: Fix test
2023-12-11 10:22:35 +04:00
Lain Soykaf
8c0b1fd1d9
MediaProxyControllerTest: Fix tests
2023-12-11 10:16:29 +04:00
Lain Soykaf
b9f135eaf3
FrontendStaticPlugTest: Fix test
2023-12-11 10:07:39 +04:00
Lain Soykaf
60800c0b2b
ChatMessageReferenceView: Fix test
2023-12-11 10:05:47 +04:00
Lain Soykaf
42c11466cc
MediaProxyWarmingPolicyTest: Fix tests
2023-12-11 10:04:01 +04:00
Lain Soykaf
305c76470f
OpenGraphTest: Fix test
2023-12-11 10:01:55 +04:00
Lain Soykaf
5530c7dca4
MediaProxyTest: Fix test
2023-12-11 10:00:15 +04:00
Lain Soykaf
5a95847c5d
MediaProxyCacheControllerTest: Fix tests.
2023-12-11 09:54:31 +04:00
Lain Soykaf
2c10843bc4
MediaControllerTest: Fix test.
2023-12-11 09:51:59 +04:00
Lain Soykaf
3cce929eec
ChatValidationTest: Fix tests.
2023-12-11 09:43:49 +04:00
Lain Soykaf
90a47ca050
S3 Test: Remove global state dependencies
2023-12-11 09:25:05 +04:00
Mark Felder
c0a50b7c3e
User.get_or_fetch_public_key_for_ap_id/1 is no longer required.
2023-12-10 13:24:25 -05:00
Mark Felder
18deea59b4
ActivityPub.make_user_from_ap_id/1 fetches the whole actor object including updating the public key for us
2023-12-10 13:22:55 -05:00
Mark Felder
223c1bac8d
Cancel the job if the signature is still invalid after a refetch of the public key
2023-12-10 12:55:41 -05:00
Lain Soykaf
0e005acd44
CI: Use Elixir 1.13 for linting.
2023-12-10 21:00:11 +04:00
Lain Soykaf
0d83b6d177
Linting
2023-12-10 19:59:02 +04:00
Lain Soykaf
06fc196772
Backup: Fix config
2023-12-10 19:46:25 +04:00
Lain Soykaf
6e3267d1bd
Tests: Fix all the tests.
2023-12-10 19:19:56 +04:00
Lain Soykaf
c068a218ea
Backup Tests: Split out async tests, use mox.
2023-12-10 18:57:46 +04:00
Lain Soykaf
20b76acc08
ActivityPubTest: Swallow log
2023-12-10 17:20:39 +04:00
Lain Soykaf
e5beab7f16
Config/Test: Don't start promex during testing.
2023-12-10 17:18:18 +04:00
Lain Soykaf
68f7a79f28
Tests: Remove async from cases that use Mock
2023-12-10 17:10:18 +04:00
Lain Soykaf
b7ce2cf6a8
Add .rgignore for easier grepping
2023-12-10 17:06:28 +04:00
Lain Soykaf
075222525c
TransmogrifierTest: Capture the log
2023-12-10 17:06:13 +04:00
Lain Soykaf
221f18dc33
Tests: Don't run tests that use clear_config asynchronously.
2023-12-10 16:27:23 +04:00
lain
a7f82ff82e
Merge branch 'scrubbers-html4-GtS' into 'develop'
...
scrubbers/default: Add more formatting elements from HTML4 / GoToSocial
See merge request pleroma/pleroma!3979
2023-12-10 12:18:22 +00:00
Mark Felder
d417f73218
Process inbound Delete activities at lowest priority
2023-12-09 18:47:54 -05:00
Mark Felder
94daa3e8c1
Revert "Remove unnecessary forced refresh of user"
...
This reverts commit 97cf78f63d
.
2023-12-09 18:21:00 -05:00
Mark Felder
82724f6664
Do not retry fetching deleted objects
2023-12-09 17:48:33 -05:00
feld
a67fc30d81
Merge branch 'kphrx-develop-patch-87655' into 'develop'
...
Remove checking ImageMagick's commands for AnalyzeMetadata filter
See merge request pleroma/pleroma!3987
2023-12-09 14:08:13 +00:00
lain
0e75315368
Merge branch 'migration-fix' into 'develop'
...
Permit the quoteUrl index creation to run concurrently
See merge request pleroma/pleroma!3988
2023-12-09 06:07:28 +00:00
lain
ee15939d33
Skip transaction to generate the index concurrently
2023-12-09 05:54:02 +00:00
Mark Felder
4039106500
Fix the req_headers formatting
2023-12-08 21:51:36 -05:00
Mark Felder
1d417d2a36
Our version of Oban only supports priorities 0-3
2023-12-08 21:49:25 -05:00
Mark Felder
97cf78f63d
Remove unnecessary forced refresh of user
2023-12-08 18:24:30 -05:00
Mark Felder
1b5964979f
Optimistic Inbox
2023-12-08 18:13:43 -05:00
Mark Felder
ce5acd4158
get_cached_by_ap_id/1 returns a single result, not a tuple
2023-12-08 18:10:22 -05:00
Mark Felder
0d3f1be230
Fix test; log message no longer emitted here
2023-12-08 17:46:10 -05:00
Mark Felder
074b31d9ab
Optimistic Inbox
...
Rework inbound federation to accept requests optimistically. The HTTP Signatures Plug will not attempt to fetch the actor or key and will fail early.
If the signature cannot be validated we pass the required data into the Oban job with a reduced priority and increase the timeout to 20 seconds. The Oban job will handle the actor and key fetching before attempting to validate the activity again. This job will be retried 5 times by default.
Another welcome side effect is that actors who change their keys can federate to Pleroma instances immediately instead of needing to wait the default value of 86400s / 24 hours before the key will be fetched again.
2023-12-08 17:45:20 -05:00
Mark Felder
003d3312fd
Permit the index creation to run concurrently
2023-12-08 15:48:00 -05:00
kPherox
0818a9136d
add changelog
2023-12-07 20:33:23 +09:00
kPherox
b70ca7d54e
fix: AnalyzeMetadata filter no longer depends on ImageMagick's commands
2023-12-07 09:53:24 +00:00
lain
5f74aadaaf
Merge branch 'last_status_at' into 'develop'
...
MastoAPI AccountView: Change last_status_at to be a date
See merge request pleroma/pleroma!3978
2023-12-07 08:08:27 +00:00
Lain Soykaf
ef8a2134bc
AccountView: Add test, refactor
2023-12-07 11:25:18 +04:00
Lain Soykaf
6a191a91ab
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into last_status_at
2023-12-07 11:18:39 +04:00
lain
2656199dc7
Merge branch 'more-test-fixes' into 'develop'
...
More test fixes
See merge request pleroma/pleroma!3984
2023-12-07 05:26:06 +00:00
lain
6c10fd22a3
Merge branch 'reachable-upsert' into 'develop'
...
Change set_reachable/1 to an upsert
See merge request pleroma/pleroma!3986
2023-12-07 04:20:54 +00:00
Mark Felder
1ad0d94d6f
Change set_reachable/1 to an upsert
2023-12-06 15:50:00 -05:00
Lain Soykaf
5dce39d17f
Revert "CI: Remove test coverage"
...
This reverts commit d99e139c6b
.
2023-12-03 10:17:24 +04:00
Lain Soykaf
d99e139c6b
CI: Remove test coverage
2023-11-30 13:54:07 +04:00
Lain Soykaf
eb6be30602
Linting
2023-11-30 10:05:00 +04:00
Lain Soykaf
30084b7332
Add changelog.
2023-11-30 09:55:04 +04:00
Lain Soykaf
265d8749b1
Gitlab CI: Make it work for a local runner
2023-11-30 09:40:29 +04:00
Lain Soykaf
15a8acbd6c
MRF, Docs.Generator: Ensure code is loaded before checking it
2023-11-30 09:40:17 +04:00
HJ
6a6a631c81
Merge branch 'neetzsche/add_url_to_scrobbles' into 'develop'
...
Add optional URL value for scrobbles
See merge request pleroma/pleroma!3977
2023-11-29 15:59:19 +00:00
lain
bc7fcc2dba
Merge branch 'vips' into 'develop'
...
Docs: Remove rust references
See merge request pleroma/pleroma!3983
2023-11-29 15:43:09 +00:00
Lain Soykaf
cd6adef471
Add changelog
2023-11-29 19:42:40 +04:00
NEETzsche
e216603477
Change url to externalLink as requested by hj here: https://shigusegubu.club/notice/AcIjZjackKAt6e522a
2023-11-29 07:55:44 -07:00
lain
1955b3c557
Merge branch 'vips' into 'develop'
...
Replace ImageMagick with Vips
See merge request pleroma/pleroma!3771
2023-11-29 06:03:37 +00:00
lain
35774d44b2
Merge branch 'generate-unset-user-keys-migration' into 'develop'
...
Fix GenerateUnsetUserKeys migration
See merge request pleroma/pleroma!3976
2023-11-28 12:34:32 +00:00
Lain Soykaf
10525ac7f8
Docs: Remove rust references
2023-11-28 15:21:34 +04:00
Lain Soykaf
ccc2adee41
Linting
2023-11-28 13:13:43 +04:00
Lain Soykaf
da26964d2b
Changelog: Adjust blurhash change
2023-11-28 12:39:22 +04:00
Lain Soykaf
b3214be32f
AnayzeMetadata: Fix error case that would never match
2023-11-28 12:33:54 +04:00
Lain Soykaf
03db495e1d
AnalyzeMetadata: Switch to rinpatch_blurhash
2023-11-28 12:23:41 +04:00
lain
ef7bda61ad
Merge branch 'promex' into 'develop'
...
Switch to PromEx for prometheus metrics
See merge request pleroma/pleroma!3967
2023-11-28 07:50:16 +00:00
lain
2b839197a9
Merge branch 'strip-fix' into 'develop'
...
Strip fix
See merge request pleroma/pleroma!3981
2023-11-27 15:30:13 +00:00
Lain Soykaf
4ef56c5b65
ActivityPub.Utils: Only treat object ids as valid while stripping
2023-11-27 18:44:11 +04:00
HJ
9c57f17af3
Merge branch 'frontends-docs' into 'develop'
...
Front-ends management docs
See merge request pleroma/pleroma!3974
2023-11-27 14:00:12 +00:00
NEETzsche
27df2c0ce6
Fix #strip_report_status_data
2023-11-27 17:56:43 +04:00
Lain Soykaf
5a3b81d92e
ActivityPub.UtilsTest: Add failing test for strip_report_status_data
2023-11-27 17:55:16 +04:00
Mark Felder
299c548b12
Prevent a blurhash failure from breaking all metadata collection
2023-11-23 16:15:53 -05:00
NEETzsche
510a7b64f1
Add optional URL value for scrobbles
2023-11-23 04:51:51 -07:00
HJ
4ebfc011fc
Merge branch 'favicon' into 'develop'
...
Make favicon configurable, embed favicon and manifest in server-generated meta
See merge request pleroma/pleroma!3963
2023-11-19 08:52:37 +00:00
Henry Jameson
6513f54f73
changelog
2023-11-19 10:32:39 +02:00
Henry Jameson
2112e8b5e4
update, add images
2023-11-19 10:30:49 +02:00
feld
906b121a10
Merge branch 'develop' into 'vips'
...
# Conflicts:
# mix.exs
2023-11-17 16:50:36 +00:00
Mark Felder
be39146ecc
Update docs to include dependencies on rust and vips where appropriate
2023-11-17 11:44:33 -05:00
Mark Felder
cf5ef1d75f
Vix has pre-built NIFs for the following triples:
...
aarch64-apple-darwin
aarch64-linux-gnu
aarch64-linux-musl
armv7l-linux-gnueabihf
x86_64-apple-darwin
x86_64-linux-gnu
x86_64-linux-musl
aarch64-apple-darwin
aarch64-linux-gnu
aarch64-linux-musl
armv7l-linux-gnueabihf
x86_64-apple-darwin
x86_64-linux-gnu
x86_64-linux-musl
2023-11-17 11:37:51 -05:00
Mark Felder
8208777b06
Rust is required for blurhash
2023-11-17 11:32:56 -05:00
Mark Felder
7988c62f6d
Update changelogs
2023-11-17 11:21:46 -05:00
Mark Felder
9511212e32
Fetch the library from the Pleroma repository
2023-11-17 11:18:42 -05:00
Mark Felder
88cc7e6a04
Resize images to 100 pixels before hashing
2023-11-17 11:06:31 -05:00
Mark Felder
0c6a54b37c
Upload.Filter.AnalyzeMetadata: Blurhash with a Rust NIF, and use Vix to retrieve image metadata
2023-11-17 10:26:00 -05:00
Haelwenn (lanodan) Monnier
06c58bce00
scrubbers/default: Add more formatting elements from HTML4 / GoToSocial
...
Added: acronym, bdo, big, cite, dfn, ins, kbd, q, samp, s, tt, var, wbr
2023-11-16 18:27:32 +01:00
Haelwenn (lanodan) Monnier
8ac7cc98c1
MastoAPI AccountView: Change last_status_at to be a date
...
Changed in Mastodon 3.1.0 with: https://github.com/tootsuite/mastodon/pull/12966
2023-11-16 15:52:01 +01:00
Haelwenn
ca1b18ba2d
Merge branch 'federation_status-access' into 'develop'
...
router: Make /federation_status publicly available
See merge request pleroma/pleroma!3937
2023-11-15 08:20:37 +00:00
Haelwenn
50c896169c
Merge branch 'cflags' into 'develop'
...
Make eblurhash and elixir-captcha use system CFLAGS
See merge request pleroma/pleroma!3943
2023-11-15 08:19:29 +00:00
Haelwenn (lanodan) Monnier
2a58596aef
Fix tests for Add support for configuring a favicon and embed PWA manifest in server-generated-meta
2023-11-15 09:12:25 +01:00
Haelwenn (lanodan) Monnier
5d3e145dc4
RedirectController: Unify server-generated-meta insertion code
2023-11-14 11:06:36 +01:00
Henry Jameson
a5aa8ea796
Add support for configuring a favicon and embed PWA manifest in server-generated-meta
2023-11-14 11:05:23 +01:00
Haelwenn
6d708664b5
Merge branch 'docs/max-elixir-erlang' into 'develop'
...
docs: Put a max version on erlang and elixir
Closes #3194
See merge request pleroma/pleroma!3945
2023-11-14 09:49:49 +00:00
Haelwenn (lanodan) Monnier
66f5ae0c5a
router: Make /federation_status publicly available
2023-11-14 10:48:30 +01:00
Haelwenn (lanodan) Monnier
19519d6c96
docs: clang is also supported
2023-11-14 10:47:34 +01:00
Haelwenn (lanodan) Monnier
3831d31009
docs: Put a max version on erlang and elixir
...
Closes: https://git.pleroma.social/pleroma/pleroma/-/issues/3194
2023-11-14 10:47:33 +01:00
Haelwenn (lanodan) Monnier
4472ab1fe9
changelog.d/system-cflags.fix: New entry
2023-11-14 10:45:00 +01:00
Haelwenn (lanodan) Monnier
5f85067a95
mix: Bump elixir-captcha for system-CFLAGS
2023-11-14 10:44:59 +01:00
Haelwenn (lanodan) Monnier
2b6ae571bb
mix: cherry-pick eblurhash latest git for system-CFLAGS
2023-11-14 10:44:57 +01:00
Haelwenn
bf2d6abaf2
Merge branch 'healthcheck-disabled-error' into 'develop'
...
TwitterAPI: Return proper error when healthcheck is disabled
See merge request pleroma/pleroma!3953
2023-11-14 09:41:26 +00:00
Mark Felder
ce42dac331
Change mediaproxy previews to use vips to generate thumbnails instead of ImageMagick
2023-11-13 15:41:39 -05:00
Mark Felder
a4b6e5613f
Revert "Add Pleroma.Upload.Filter.HeifToJpeg based on vips"
...
This reverts commit 31d4448ee61b4afac6aa23f8c0287d13aed411a1.
This functionality is not reliably working with vips/vix due to codec patent junk
2023-11-13 15:41:39 -05:00
Mark Felder
577ade75cf
Override elixir_make version
2023-11-13 15:41:39 -05:00
Mark Felder
481b6ac0d5
Add Pleroma.Upload.Filter.HeifToJpeg based on vips
2023-11-13 15:41:39 -05:00
Mark Felder
13baba90f6
Replace ImageMagick with Vips for Media Preview Proxy
2023-11-13 15:41:39 -05:00
Mark Felder
1db10744f7
Use the "change" type
2023-11-13 15:35:00 -05:00
Mark Felder
66cb3294ed
Switch to PromEx for prometheus metrics
...
Recommending use of the separate HTTP server for exposing the metrics
and securing it externally on your firewall or reverse proxy. It will
listen on port 4021 by default.
2023-11-13 15:34:59 -05:00
marcin mikołajczak
fe776d8b33
Fix GenerateUnsetUserKeys migration
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2023-11-13 14:18:22 +01:00
lain
752bc168f6
Merge branch 'quotes-count' into 'develop'
...
Count and display post quotes
See merge request pleroma/pleroma!3956
2023-11-12 13:38:09 +00:00
marcin mikołajczak
9a063deacc
Count and display post quotes
2023-11-12 13:38:08 +00:00
lain
5f19fbc5a9
Merge branch 'phoenix1.7' into 'develop'
...
Update to Phoenix 1.7
See merge request pleroma/pleroma!3900
2023-11-12 13:34:27 +00:00
lain
e902c7168d
Merge branch 'meilisearch' into 'develop'
...
Different search backends, in particular meilisearch as an additional one
See merge request pleroma/pleroma!3529
2023-11-12 13:29:27 +00:00
Lain Soykaf
3d62c71edf
Credo fixes.
2023-11-12 17:13:27 +04:00
Lain Soykaf
59018d73c3
B Meilisearch: Update to current API responses.
2023-11-12 16:43:50 +04:00
Lain Soykaf
a1a25029da
B DatabaseSearch: Fix local-only search.
2023-11-12 16:19:54 +04:00
Lain Soykaf
5996bef7cd
Fix most tests that call SearchIndexWorker.
2023-11-12 15:54:16 +04:00
Lain Soykaf
5208bd8a95
Add changelog.
2023-11-12 15:00:51 +04:00
Lain Soykaf
d3f8950588
B MeiliSearch, SearchIndexingWorker: Use Config.Getting, make tests async.
2023-11-12 14:49:50 +04:00
Lain Soykaf
c1402af293
B Getting: Add default implementation, delegate, prepare test support.
2023-11-12 14:49:15 +04:00
Lain Soykaf
0c5cc51983
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into pleroma-meilisearch
2023-11-12 13:53:18 +04:00
Henry Jameson
637926dcbb
Initial draft on frontends management
2023-11-10 13:58:25 +02:00
Marcin Mikołajczak
1e9333a9aa
Merge remote-tracking branch 'origin/develop' into instance-v2
2023-11-08 20:46:57 +01:00
feld
a51f3937ee
Merge branch 'benchee' into 'develop'
...
Ensure benchee doesn't run unless we are executing benchmarks
See merge request pleroma/pleroma!3972
2023-11-08 18:27:08 +00:00
Mark Felder
e23672d82f
Ensure benchee doesn't run unless we are executing benchmarks
2023-11-08 12:44:57 -05:00
Mark Felder
ef6d3dddd4
Fix changelogd grep syntax error
2023-11-08 12:28:23 -05:00
feld
aef1a88dc6
Merge branch 'changelogd-fix' into 'develop'
...
Fix changelogd grep syntax error
See merge request pleroma/pleroma!3973
2023-11-08 17:28:14 +00:00
Mark Felder
addc5408ff
Fix changelogd grep syntax error
2023-11-08 12:27:46 -05:00
feld
17524865e5
Merge branch 'update_mr_template' into 'develop'
...
Update MR template to include the type 'change'
See merge request pleroma/pleroma!3971
2023-11-08 14:39:00 +00:00
Mark Felder
1810b2f477
Update MR template to include the type 'change'
2023-11-08 09:37:08 -05:00
Mark Felder
0ab853cab8
Merge branch 'develop' into phoenix1.7
2023-11-08 09:18:08 -05:00
feld
0f56304f09
Merge branch 'bare_uri_test' into 'develop'
...
Activate test for object validator that has not been running
See merge request pleroma/pleroma!3968
2023-11-08 14:13:37 +00:00
feld
cfc01a660a
Merge branch 'changelogd-change' into 'develop'
...
changelogd: Support a type called "change"
See merge request pleroma/pleroma!3970
2023-11-08 14:12:33 +00:00
Mark Felder
e1bc95ae6e
Support a type called "change"
2023-11-08 09:11:41 -05:00
Haelwenn (lanodan) Monnier
76c070fe86
ObjectValidators.BareUriTest: Replace calls of SafeText to BareUri
2023-11-08 02:17:50 +01:00
Mark Felder
9fa6531109
Phoenix is no longer required in extra_applications
2023-11-07 16:14:05 -05:00
Mark Felder
a0e08c6ec2
Merge branch 'develop' into phoenix1.7
2023-11-07 16:05:04 -05:00
Mark Felder
8076deeeb4
Activate test for object validator that has not been running
2023-11-07 16:00:13 -05:00
feld
11c520607f
Merge branch 'mailer-queue' into 'develop'
...
Fix digest email processing, consolidate Oban queues
See merge request pleroma/pleroma!3966
2023-11-07 20:45:48 +00:00
Mark Felder
bf426c53b4
Fix digest email processing, consolidate Oban queues
...
The email related jobs can all share a single Oban queue
2023-11-07 15:14:36 -05:00
marcin mikołajczak
c62696c8e7
Support /authorize-interaction route used by Mastodon
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2023-11-02 13:47:23 +01:00
marcin mikołajczak
6b9a347353
update changelog
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2023-11-02 13:31:59 +01:00
marcin mikołajczak
50e7706b26
Verify link ownership with rel="me"
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2023-11-02 13:30:46 +01:00
tusooa
4c5b45ed73
Merge branch 'mergeback/2.6.0' into 'develop'
...
mergeback: 2.6.0
Closes #3135
See merge request pleroma/pleroma!3964
2023-11-01 03:19:05 +00:00
tusooa
aaf53d9d77
Bump package version for mergeback
2023-10-31 20:49:31 -04:00
tusooa
6f654d534a
Merge branch 'release/2.6.0' into 'stable'
...
Release/2.6.0
See merge request pleroma/pleroma!3924
2023-11-01 00:43:35 +00:00
tusooa
ad45b06b3f
Merge branch 'stable' into 'release/2.6.0'
...
# Conflicts:
# .gitlab-ci.yml
# lib/pleroma/web/common_api/utils.ex
# lib/pleroma/web/xml.ex
# mix.exs
# test/pleroma/web/activity_pub/transmogrifier/emoji_react_handling_test.exs
# test/pleroma/web/common_api/utils_test.exs
# test/pleroma/web/mastodon_api/update_credentials_test.exs
# test/pleroma/web/xml_test.exs
2023-10-31 01:07:43 +00:00
tusooa
ab894d98f4
Bundle 2.6.0 frontend
2023-10-29 12:59:03 -04:00
marcin mikołajczak
e5bd1ee801
Add entry to @context, tests
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2023-10-29 00:02:17 +02:00
marcin mikołajczak
93370b870a
Expose nonAnonymous field from Smithereen polls
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2023-10-28 23:58:39 +02:00
marcin mikołajczak
b6a9d87f16
Display reposted replies with exclude_replies: true
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2023-10-28 00:10:13 +02:00
marcin mikołajczak
c6cedbb810
InstanceV2: skip auth
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2023-10-28 00:07:18 +02:00
marcin mikołajczak
6b8c5e12df
Add contact account to InstanceView
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2023-10-26 23:32:08 +02:00
tusooa
6a13c2d180
Add collect-changelog script
2023-10-25 20:45:23 -04:00
tusooa
a2a69709b5
Bump version to 2.6.0
2023-10-24 19:57:31 -04:00
marcin mikołajczak
c03852fbc7
update tests
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2023-10-25 00:38:52 +02:00
marcin mikołajczak
5ff3783d01
Use correct domain for fqn and InstanceView
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2023-10-25 00:38:10 +02:00
Haelwenn
e3ea311cd5
Merge branch 'tusooa/2810-punycode-mention' into 'develop'
...
Fix mentioning punycode domains when using Markdown
Closes #2810
See merge request pleroma/pleroma!3925
2023-10-18 01:20:00 +00:00
tusooa
df0b56576a
Fix other quotation mark conversion tests
2023-10-16 21:35:37 -04:00
tusooa
b748efe66a
Fix mentioning punycode domains when using Markdown
2023-10-16 21:35:25 -04:00
tusooa
340c881296
Merge branch 'tusooa/3018-unified-stream' into 'develop'
...
Unified streaming endpoint
Closes #3018
See merge request pleroma/pleroma!3864
2023-10-15 21:35:30 +00:00
tusooa
eb33a03d0a
Explain the encode-decode roundtrip
2023-10-15 17:20:26 -04:00
tusooa
3e7d2e29b3
Add changelog
2023-10-15 17:20:26 -04:00
tusooa
840dd01035
Fix duplicated schema names
2023-10-15 17:20:26 -04:00
tusooa
32de0683c4
Fix unsubscribe event type in streaming doc
2023-10-15 17:20:26 -04:00
tusooa
c13f0a8460
Add meta-info and query strings to streaming doc
2023-10-15 17:20:26 -04:00
tusooa
f393a15dd1
Fix some specs about server-sent events in streaming
2023-10-15 17:20:26 -04:00
tusooa
8829dcaee4
Document client-sent events in streaming
2023-10-15 17:20:25 -04:00
tusooa
dcef33f5f0
Document server-sent events of streaming
2023-10-15 17:20:25 -04:00
tusooa
844d1a14e0
Start writing api docs for streaming endpoint
2023-10-15 17:20:25 -04:00
tusooa
314360e5e3
Add test to cover edit streaming
2023-10-15 17:20:25 -04:00
tusooa
26f5caebae
Add test to cover notifications streaming
2023-10-15 17:20:25 -04:00
tusooa
4cf109d3c4
Add test to cover rendering update with user
2023-10-15 17:20:25 -04:00
tusooa
050227f118
Add test to cover error: bad_topic
2023-10-15 17:20:25 -04:00
tusooa
eebc605bc2
Clear up debug statement
2023-10-15 17:20:25 -04:00
tusooa
949c4f01c6
Fix NotificationTest
2023-10-15 17:20:25 -04:00
tusooa
7f12ad6dcc
Fix docs wording
2023-10-15 17:20:25 -04:00
tusooa
9572be1e5f
Add tests for list streams
2023-10-15 17:20:25 -04:00
tusooa
2d43067946
Document the streaming endpoint
2023-10-15 17:20:25 -04:00
tusooa
a348c2e4dd
Use pleroma: instead of pleroma. for ws events
2023-10-15 17:20:25 -04:00
tusooa
7d005e8c93
Return stream attribute in server-sent events
2023-10-15 17:20:23 -04:00
tusooa
21395aa509
Allow authenticating via client-sent events
2023-10-15 17:19:49 -04:00
tusooa
273cda63ad
Allow subscribing to streams
2023-10-15 17:19:49 -04:00
tusooa
2b5636bf12
Allow unified streaming endpoint
2023-10-15 17:19:40 -04:00
tusooa
14b1b9c9b0
Merge branch 'tusooa/quote' into 'develop'
...
Quoting
See merge request pleroma/pleroma!3921
2023-10-15 20:48:16 +00:00
Haelwenn (lanodan) Monnier
2f6fc6a7ab
TwitterAPI: Return proper error when healthcheck is disabled
2023-09-24 23:32:17 +02:00
tusooa
08608afca5
Fix quote_visible attribute
2023-09-13 19:20:33 -04:00
tusooa
a8b2f9205d
Expose quote_id parameter on the api
2023-09-13 19:20:32 -04:00
tusooa
875b46d97d
Do not mention original poster when quoting
2023-09-13 19:20:32 -04:00
tusooa
87353e5ad1
Fix config descriptions for mrf inline quote
2023-09-13 19:20:32 -04:00
tusooa
8596f92654
Fix TransmogrifierTest
2023-09-13 19:20:32 -04:00
tusooa
8b98a98dfb
Make InlineQuotePolicy history aware
2023-09-13 19:20:32 -04:00
tusooa
e349e92a44
Add mrf to force link tag of quoting posts
2023-09-13 19:20:30 -04:00
tusooa
479a6f11db
Keep incoming Link tag
2023-09-13 19:19:44 -04:00
tusooa
e9cd004ba1
Parse object link as quoteUrl
2023-09-13 19:19:42 -04:00
tusooa
163e563733
Allow more flexibility in InlineQuotePolicy
2023-09-13 19:19:05 -04:00
tusooa
762794eed9
Fix CommonAPITest
2023-09-13 19:19:05 -04:00
tusooa
d244c9d298
Add changelog
2023-09-13 19:19:05 -04:00
tusooa
9bcec87aba
Allow local quote and private self-quote
2023-09-13 19:19:05 -04:00
tusooa
b0a7e795e7
Unify logic for normalizing quoteUri
2023-09-13 19:19:05 -04:00
Alex Gleason
f9697e68c2
InlineQuotePolicy: skip objects which already have an .inline-quote span
2023-09-13 19:19:05 -04:00
Alex Gleason
79fca39faf
Actually, don't send _misskey_quote anymore
2023-09-13 19:19:05 -04:00
Alex Gleason
4075eecca0
InlineQuotePolicy: improve the way Markdown quotes are displayed by other software
2023-09-13 19:19:05 -04:00
Alex Gleason
817e308c0d
Handle Fedibird's new quoteUri field
2023-09-13 19:19:05 -04:00
Alex Gleason
3c8319fe9f
Transmogrifier: federate quotes with _misskey_quote field
2023-09-13 19:19:04 -04:00
Alex Gleason
cf8e425883
StatusView: return quote post inside a reblog
2023-09-13 19:19:04 -04:00
Alex Gleason
93e4972b50
Add InlineQuotePolicy as a default MRF
2023-09-13 19:19:04 -04:00
Alex Gleason
bee7e41959
InlineQuotePolicy: don't add line breaks to markdown posts
2023-09-13 19:19:04 -04:00
Alex Gleason
74e0a4555f
StatusView: add quote_visible
param
2023-09-13 19:19:04 -04:00
Alex Gleason
6f11f11519
StatusView: fix quote visibility
2023-09-13 19:19:04 -04:00
Alex Gleason
59326247aa
CommonAPI: disallow quoting private posts through the API
2023-09-13 19:19:04 -04:00
Alex Gleason
57ef1d1211
Add InlineQuotePolicy to force quote URLs inline
2023-09-13 19:19:04 -04:00
Alex Gleason
36a5578d2b
Scrubber.Default: allow span.quote-inline for quote post compatibility
2023-09-13 19:19:04 -04:00
Alex Gleason
1f19dd76f6
ActivityDraft: mix format, defensive actor ID
2023-09-13 19:19:04 -04:00
Alex Gleason
54a9897938
ActivityDraft: mention the OP of a quoted post
2023-09-13 19:19:04 -04:00
Alex Gleason
80ab2572a4
Return quote_url through the API, don't render quotes more than 1 level deep
2023-09-13 19:19:04 -04:00
Alex Gleason
db46abce47
@context: add quoteUrl
2023-09-13 19:19:04 -04:00
Alex Gleason
5716f88a1d
InstanceView: add "quote_posting" feature
2023-09-13 19:19:03 -04:00
Alex Gleason
f4ccdfd503
Fix typos
2023-09-13 19:19:03 -04:00
Alex Gleason
9600973917
mix format
2023-09-13 19:19:03 -04:00
Alex Gleason
cbd1760efa
TransmogrifierTest: prepare an outgoing quote post
2023-09-13 19:19:03 -04:00
Alex Gleason
3a8b5d90df
StatusControllerTest: test creating a quote post
2023-09-13 19:19:03 -04:00
Alex Gleason
c20e90e898
BuilderTest: build quote post
2023-09-13 19:19:03 -04:00
Alex Gleason
d4fea8b559
ActivityDraft: allow quoting
2023-09-13 19:19:03 -04:00
Alex Gleason
6ac19c3999
ActivityDraft: create quote posts
2023-09-13 19:19:03 -04:00
Alex Gleason
0d9c443e51
StatusView: render the whole quoted status
2023-09-13 19:19:03 -04:00
Alex Gleason
ce5eb31723
StatusView: show quoted posts through the API, probably
2023-09-13 19:19:03 -04:00
Alex Gleason
cc4badaf60
Transmogrifier: fix quoteUrl here too
2023-09-13 19:19:03 -04:00
Alex Gleason
b022d6635d
Transmogrifier: fetch quoted post
2023-09-13 19:19:03 -04:00
Alex Gleason
795736af16
ObjectValidators: improve quoteUrl compatibility
2023-09-13 19:19:03 -04:00
Alex Gleason
7deda1fa18
Quote post: add fixtures
2023-09-13 19:19:02 -04:00
Alex Gleason
31eb3dc245
ObjectValidators: accept "quoteUrl" field
2023-09-13 19:19:02 -04:00
marcin mikołajczak
28ef5ebd3c
Update InstanceView.features
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2023-09-07 15:00:24 +02:00
Haelwenn
f966abe4fb
Merge branch 'release/2.5.5' into 'stable'
...
Release 2.5.5
See merge request pleroma/pleroma!3949
2023-09-03 12:12:44 +00:00
Haelwenn (lanodan) Monnier
385492577d
mix: version 2.5.5
2023-09-03 11:19:26 +02:00
Mint
535a5ecad0
CommonAPI: Prevent users from accessing media of other users
...
commit 1afde067b1
upstream.
2023-09-03 11:19:13 +02:00
Haelwenn
a94cf2ad4f
Merge branch 'check-attachment-attribution' into 'develop'
...
Prevent users from attaching other users' attachments
See merge request pleroma/pleroma!3947
2023-09-03 09:09:27 +00:00
Mint
1afde067b1
CommonAPI: Prevent users from accessing media of other users
2023-09-03 10:41:37 +02:00
Haelwenn
9da4f89b7b
Merge branch 'tusooa/lint' into 'develop'
...
Make lint happy
See merge request pleroma/pleroma!3944
2023-08-31 22:24:30 +00:00
tusooa
3c5ecca377
Skip changelog
2023-08-30 20:37:45 -04:00
tusooa
3d09bc320e
Make lint happy
2023-08-30 20:36:52 -04:00
Haelwenn
1e685c8302
Merge branch 'csp-flash' into 'develop'
...
allow https: so that flash works across instances without need for media proxy
See merge request pleroma/pleroma!3879
2023-08-16 13:37:49 +00:00
Haelwenn
d838d1990b
Apply lanodan's suggestion(s) to 1 file(s)
2023-08-16 13:34:32 +00:00
marcin mikołajczak
79e46ce73f
InstanceView: Add common_information function
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2023-08-11 13:57:22 +02:00
marcin mikołajczak
9effa24f30
Implement api/v2/instance route
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2023-08-11 00:08:05 +02:00
tusooa
b729a8b140
Merge branch 'fix-dockerfile-perms' into 'develop'
...
Fix config ownership in dockerfile to pass restriction test
See merge request pleroma/pleroma!3931
2023-08-10 00:42:29 +00:00
Cat pony Black
c298e0165c
Fix config ownership in dockerfile to pass restriction test
2023-08-08 19:07:48 +02:00
Haelwenn
4e355b8595
Merge branch 'disable-xml-entities-completely' into 'develop'
...
Completely disable xml entity resolution
See merge request pleroma/pleroma!3932
2023-08-06 08:27:27 +00:00
mae
48b1e9bdc7
Completely disable xml entity resolution
2023-08-05 14:17:04 +02:00
Haelwenn
17c336de66
Merge branch 'docs/gentoo-otp-intro' into 'develop'
...
gentoo_otp_en.md: Indicate which install method it covers
See merge request pleroma/pleroma!3928
2023-08-05 11:04:32 +00:00
Haelwenn
d0f7a5c4f5
Merge branch 'mergeback/2.5.4' into 'develop'
...
Mergeback: 2.5.4
See merge request pleroma/pleroma!3930
2023-08-05 08:13:03 +00:00
Haelwenn (lanodan) Monnier
4099ddb3dc
Mergeback release 2.5.4
2023-08-05 08:58:05 +02:00
Mark Felder
6d48b0f1a9
Document and test that XXE processing is disabled
...
https://vuln.be/post/xxe-in-erlang-and-elixir/
2023-08-05 08:14:27 +02:00
FloatingGhost
307692cee8
Add unit test for external entity loading
2023-08-05 08:14:27 +02:00
Mae
ca0859b90f
Prevent XML parser from loading external entities
2023-08-04 22:35:13 -04:00
Haelwenn (lanodan) Monnier
0e321698d2
gentoo_otp_en.md: Indicate which install method it covers
2023-08-04 17:11:20 +02:00
Haelwenn
1062185ba0
Merge branch 'mergeback/2.5.3' into 'develop'
...
Mergeback: 2.5.3
Closes #3135
See merge request pleroma/pleroma!3927
2023-08-04 09:38:01 +00:00
Haelwenn (lanodan) Monnier
6a0fd77c48
Release 2.5.53
2023-08-04 09:50:28 +02:00
Haelwenn (lanodan) Monnier
65ef8f19c5
release_runtime_provider_test: chmod config for hardened permissions
...
Git doesn't manages file permissions precisely enough for us.
2023-08-04 09:50:28 +02:00
Haelwenn (lanodan) Monnier
9f0ad901ed
changelog: Entry for config permissions restrictions
...
Closes: https://git.pleroma.social/pleroma/pleroma/-/issues/3135
2023-08-04 09:50:28 +02:00
Haelwenn (lanodan) Monnier
69caedc591
instance gen: Reduce permissions of pleroma directories and config files
2023-08-04 09:50:28 +02:00
Haelwenn (lanodan) Monnier
8cc8100120
Config: Restrict permissions of OTP config file
2023-08-04 09:50:28 +02:00
Mark Felder
2c79509453
Resolve information disclosure vulnerability through emoji pack archive download endpoint
...
The pack name has been sanitized so an attacker cannot upload a media
file called pack.json with their own handcrafted list of emoji files as
arbitrary files on the filesystem and then call the emoji pack archive
download endpoint with a pack name crafted to the location of the media
file they uploaded which tricks Pleroma into generating a zip file of
the target files the attacker wants to download.
The attack only works if the Pleroma instance does not have the
AnonymizeFilename upload filter enabled, which is currently the default.
Reported by: graf@poast.org
2023-08-04 08:40:27 +02:00
Haelwenn
819fccb7d1
Merge branch 'tusooa/3154-attachment-type-check' into 'develop'
...
Restrict attachments to only uploaded files only
Closes #3154
See merge request pleroma/pleroma!3923
2023-08-03 10:01:32 +00:00
tusooa
b08cbe76f1
Merge branch 'fix/2927-disallow-unauthenticated-access' into 'develop'
...
/api/v1/statuses/:id/context: filter context activities using Visibility.visible_for_user?/2
See merge request pleroma/pleroma!3801
2023-07-28 15:05:46 +00:00
faried nawaz
11ce81d4af
add changelog entry
2023-07-28 18:49:05 +05:00
Faried Nawaz
e5e76ec445
cleaner ecto query to handle restrict_unauthenticated for activities
...
This fix is for this case:
config :pleroma, :restrict_unauthenticated,
activities: %{local: true, remote: true}
2023-07-28 18:45:59 +05:00
faried nawaz
dc4de79d43
status context: perform visibility check on activities around a status
...
issue #2927
2023-07-28 18:45:59 +05:00
tusooa
ea4225a646
Restrict attachments to only uploaded files only
2023-07-18 18:39:59 -04:00
tusooa
1ab4ab8d38
Extract translatable strings
2023-07-18 18:24:30 -04:00
Haelwenn
93ad16cca0
Merge branch '2023-06-deps-update' into 'develop'
...
2023-06 deps update + de-override plug
See merge request pleroma/pleroma!3911
2023-07-17 20:37:47 +00:00
Haelwenn
e38207162b
Merge branch 'tusooa/2775-emoji-policy' into 'develop'
...
EmojiPolicy
Closes #2775
See merge request pleroma/pleroma!3842
2023-07-07 16:27:30 +00:00
tusooa
1459d64508
Make regex-to-string descriptor reusable
2023-07-07 07:09:35 -04:00
tusooa
ba3aa4f86d
Fix edge cases
2023-07-07 06:58:32 -04:00
tusooa
0d914e17be
Add changelog
2023-07-07 06:58:32 -04:00
tusooa
d670dbdbd3
Test that unicode emoji reactions are not affected
2023-07-07 06:58:32 -04:00
tusooa
ef8a6c539a
Make EmojiPolicy aware of custom emoji reactions
2023-07-07 06:58:31 -04:00
tusooa
20d193c91d
Improve config examples for EmojiPolicy
2023-07-07 06:58:31 -04:00
tusooa
18a8378beb
Update config cheatsheet
2023-07-07 06:58:31 -04:00
tusooa
f50422c380
Move emoji_policy.ex to the right place
2023-07-07 06:58:31 -04:00
tusooa
7eb8abf7bb
EmojiPolicy: Implement delist
2023-07-07 06:58:31 -04:00
tusooa
80ce6482f6
EmojiPolicy: implement remove by shortcode
2023-07-07 06:58:31 -04:00
tusooa
28ff828caa
Add emoji policy to remove emojis matching certain urls
...
https://git.pleroma.social/pleroma/pleroma/-/issues/2775
2023-07-07 06:58:22 -04:00
tusooa
7da6a82dbd
Merge branch 'deprecate-scrobbles' into 'develop'
...
Deprecate audio scrobbling
See merge request pleroma/pleroma!3919
2023-07-04 02:46:10 +00:00
Haelwenn
624a5ccb2e
Merge branch 'hotfix/docs-broken-links' into 'develop'
...
docs: Fix broken links
See merge request pleroma/pleroma!3920
2023-07-04 02:26:19 +00:00
Haelwenn (lanodan) Monnier
0c3709173f
docs: Fix broken links
2023-07-04 04:23:48 +02:00
Haelwenn
53f4d6f238
Merge branch 'fix/pipeline-triggers' into 'develop'
...
CI: Fix pipeline tokens & exit status
See merge request pleroma/pleroma!3918
2023-07-04 02:04:24 +00:00
Haelwenn (lanodan) Monnier
3d79ceb23a
Deprecate audio scrobbling
2023-07-04 03:40:11 +02:00
Haelwenn (lanodan) Monnier
8c3363a5e7
CI: Use CI_JOB_TOKEN for cross-repo pipeline triggers
2023-07-04 03:25:37 +02:00
Haelwenn (lanodan) Monnier
10249d1e42
CI: Let curl return non-0 on http failure code
...
Otherwise it silently fails
2023-07-04 03:24:13 +02:00
Haelwenn
6fbbf80800
Merge branch 'gentoo_otp' into 'develop'
...
Packaged installation guide for gentoo
See merge request pleroma/pleroma!3906
2023-07-03 21:04:23 +00:00
Haelwenn
2b9cd25cf4
Merge branch 'tusooa/media-altdomain' into 'develop'
...
Add instructions to serve media on another domain
See merge request pleroma/pleroma!3892
2023-07-02 21:30:16 +00:00
Haelwenn
0262916978
Merge branch 'testfix/system-config-use' into 'develop'
...
release_runtime_provider_test: Explicitely use non-existant config file
See merge request pleroma/pleroma!3910
2023-07-02 21:28:15 +00:00
Haelwenn
a31a4c522f
Merge branch 'tusooa/3131-handle-report-from-deactivated-user' into 'develop'
...
Fix handling report from a deactivated user
Closes #3131
See merge request pleroma/pleroma!3915
2023-07-02 21:27:15 +00:00
Haelwenn
379590d438
Merge branch 'tusooa/3142-featured-collection-shouldnt-break-user-fetch' into 'develop'
...
Fix user fetch completely broken if featured collection is not in a supported form
See merge request pleroma/pleroma!3914
2023-07-02 21:25:45 +00:00
Haelwenn
8cf231c0d1
Merge branch 'tusooa/3151-amd64-runner' into 'develop'
...
Force the use of amd64 runners for jobs using ci-base
Closes #3151
See merge request pleroma/pleroma!3913
2023-07-02 20:20:49 +00:00
tusooa
6e4de2383f
Fix handling report from a deactivated user
2023-07-02 11:15:34 -04:00
tusooa
a1621839cc
Fix user fetch completely broken if featured collection is not in a supported form
2023-07-02 11:03:09 -04:00
tusooa
63b9f76782
Force the use of amd64 runners for jobs using ci-base
2023-07-01 23:25:04 -04:00
tusooa
48e490cd58
Merge branch 'bugfix/full-revert-media-host-validation' into 'develop'
...
Merge Revert "Merge branch 'validate-host' into 'develop'"
Closes #3136
See merge request pleroma/pleroma!3909
2023-07-01 21:54:18 +00:00
Haelwenn (lanodan) Monnier
bf2b4b9400
README.md: Update packaging state (GURU, AUR)
2023-06-27 21:13:02 +02:00
Haelwenn
043a00991d
Merge branch 'instance-nodeinfo-metadata' into 'develop'
...
instances: Store some metadata based on NodeInfo
See merge request pleroma/pleroma!3853
2023-06-27 18:58:04 +00:00
Haelwenn
ae0ca49451
Merge branch 'tusooa/3119-bio-update' into 'develop'
...
Show more informative errors when profile exceeds char limits
Closes #3119
See merge request pleroma/pleroma!3886
2023-06-27 18:49:43 +00:00
Haelwenn
41f2ee69a8
Merge branch 'from/upstream-develop/tusooa/backup-status' into 'develop'
...
Detail backup states
Closes #3024
See merge request pleroma/pleroma!3809
2023-06-27 12:08:11 +00:00
Haelwenn (lanodan) Monnier
d7e049d5e8
router: Fix usage of globs
...
warning: doing a prefix match with globs is deprecated, invalid segment "pleroma*path".
You can either replace by a single segment match:
/foo/bar-:var
Or by mixing single segment match with globs:
/foo/bar-:var/*rest
2023-06-27 10:42:10 +02:00
Haelwenn (lanodan) Monnier
3a67b8f287
endpoint: Use custom Multipart module for dynamic configuration
2023-06-27 10:41:25 +02:00
Haelwenn (lanodan) Monnier
9e69adf76f
mix: Remove override on plug
2023-06-27 02:38:31 +02:00
Haelwenn (lanodan) Monnier
aa4c4ab2a0
mix: 2023-06 deps update
...
this fixes compatibility with Erlang OTP 26
Related: https://git.pleroma.social/pleroma/pleroma/-/issues/2913
2023-06-27 02:38:31 +02:00
Haelwenn (lanodan) Monnier
8bc51288be
release_runtime_provider_test: Explicitely use non-existant config file
2023-06-27 00:20:29 +02:00
Haelwenn
4e26fbda08
Merge branch 'weblate-extract' into 'develop'
...
Extract translatable strings
See merge request pleroma/pleroma!3871
2023-06-22 19:40:18 +00:00
Haelwenn (lanodan) Monnier
dd9f8150fc
Merge Revert "Merge branch 'validate-host' into 'develop'"
...
This reverts commit d998a114e2
, reversing
changes made to da6b4003ac
.
2023-06-22 21:28:25 +02:00
Haelwenn
4367579949
Merge branch 'fix/bypass-authorized-fetch-mode-json' into 'develop'
...
Prevent using a .json format to bypass authorized fetch mode
See merge request pleroma/pleroma!3908
2023-06-22 10:35:56 +00:00
weblate-extractor
8bf8906045
Extract translatable strings
2023-06-22 06:09:47 +00:00
Sean King
994bfc4c09
Add changelog entry
2023-06-21 23:13:16 -06:00
Sean King
a5a354a36e
Prevent bypassing authorized fetch mode with a json file
2023-06-21 23:10:56 -06:00
tusooa
8fa435f370
Add "potentially outdated" notice in non-English versions
2023-06-14 21:48:10 +00:00
Haelwenn (lanodan) Monnier
937fa36ec4
changelog.d/gentoo_otp.skip: Doc-only MR
2023-06-13 16:05:37 +02:00
Haelwenn (lanodan) Monnier
eddfd41c1f
gentoo_en: Reference packaged installation
2023-06-13 16:05:37 +02:00
Haelwenn (lanodan) Monnier
fb19f0d844
gentoo_otp_en: Add packaged installation documentation
2023-06-13 16:05:37 +02:00
Haelwenn (lanodan) Monnier
4392fff212
otp_vs_from_source*: Acknowledge distro packages
2023-06-13 16:05:37 +02:00
Haelwenn (lanodan) Monnier
d5a7079f42
media_graphics_packages.md: Fix markdown syntax
2023-06-13 15:44:29 +02:00
lain
589301ce06
Merge branch 'no_new_privs' into 'develop'
...
Add no_new_privs to OpenRC service files
See merge request pleroma/pleroma!3905
2023-06-13 13:34:21 +00:00
Haelwenn (lanodan) Monnier
a663b73634
Add no_new_privs to OpenRC service files
2023-06-13 12:47:02 +02:00
lain
fdb5bec431
Merge branch 'unused_indexes' into 'develop'
...
Remove unused indexes
See merge request pleroma/pleroma!3874
2023-06-11 19:48:23 +00:00
lain
d65a8bcd2d
Merge branch 'fix-otp-documentation' into 'develop'
...
fix OTP install documentation
See merge request pleroma/pleroma!3869
2023-06-11 16:45:53 +00:00
lain
4e6ea7cc91
Merge branch 'tusooa/3054-banned-delete' into 'develop'
...
Fix deleting banned users' statuses
See merge request pleroma/pleroma!3889
2023-06-11 13:17:12 +00:00
lain
d93b47cf2c
Merge branch 'pleroma-double_mentions' into 'develop'
...
ForceMentionsInContent: fix double mentions for Mastodon/Misskey posts
See merge request pleroma/pleroma!3903
2023-06-11 13:04:59 +00:00
Lain Soykaf
6611c6ce4e
B ForceMentionsInContent: Fix test, refactor.
2023-06-11 16:45:31 +04:00
Lain Soykaf
55dd8ef1c7
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into pleroma-double_mentions
2023-06-11 16:31:20 +04:00
Lain Soykaf
22878cf84a
B Migrations: Don't remove activity_visibility_index for now.
2023-06-11 16:22:16 +04:00
Lain Soykaf
10dfa107d5
Update changelog
2023-06-11 16:22:03 +04:00
Lain Soykaf
175ee9e6fe
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into unused_indexes
2023-06-11 16:20:30 +04:00
lain
16313af7eb
Merge branch 'fix/metadata-tags' into 'develop'
...
static frontend: fix meta tags
See merge request pleroma/pleroma!3885
2023-06-11 11:57:16 +00:00
lain
1f4618d64b
Merge branch 'cleanup/ostatus-user-upgrade' into 'develop'
...
Cleanup OStatus-era user upgrades and ap_enabled indicator
See merge request pleroma/pleroma!3880
2023-06-11 11:13:57 +00:00
feld
75900f21f0
Merge branch 'revert-mediaproxy-host-validation' into 'develop'
...
Revert MediaProxy Host header validation
See merge request pleroma/pleroma!3902
2023-06-11 11:10:51 +00:00
lain
1db29f734f
Merge branch 'fep-fffd-url' into 'develop'
...
CommonFields: Use BareUri for :url
Closes #3121
See merge request pleroma/pleroma!3884
2023-06-11 11:02:39 +00:00
lain
b762a7503c
Merge branch 'distro-docs-elixir-1.11' into 'develop'
...
installation/debian_based_*: Elixir 1.11 means Debian 12+ and Ubuntu 22.04+
See merge request pleroma/pleroma!3898
2023-06-11 10:42:22 +00:00
Mark Felder
1ca1b4b32f
changelog.d
2023-06-07 09:25:57 -04:00
Mark Felder
fadcd7f1a9
Revert MediaProxy Host header validation
...
Something is going wrong here even though the tests are correct.
2023-06-07 09:19:22 -04:00
lain
43458cb7a1
Merge branch 'preload-escaping' into 'develop'
...
B Preload: Make sure that the preloaded json is html safe
See merge request pleroma/pleroma!3901
2023-06-06 13:31:08 +00:00
Mark Felder
63ef1dcedc
Phoenix.Router.routes/1 is the public function we are meant to be using here
2023-06-03 14:17:49 -04:00
Mark Felder
c665d53295
Update to Phoenix 1.7
2023-06-03 14:06:28 -04:00
Mark Felder
bcd7ccac11
Support a type called "change"
2023-06-03 14:06:28 -04:00
feld
86b38dd14b
Merge branch 'develop' into 'phoenix1.7'
...
# Conflicts:
# mix.exs
2023-06-02 15:41:40 +00:00
Mark Felder
2e45be2653
Add :phoenix to extra_applications to suppress a warning
...
Related to use of Phoenix.Flash.get/2
2023-06-02 11:34:04 -04:00
Lain Soykaf
40d40d67a3
Add changelog.
2023-06-02 17:09:58 +04:00
Lain Soykaf
cbc5b8cebd
B Preload: Make sure that the preloaded json is html safe
2023-06-02 17:03:21 +04:00
Haelwenn
e8d3525665
Merge branch 'bump-gettext' into 'develop'
...
mix: bump gettext to 0.22
See merge request pleroma/pleroma!3831
2023-06-02 01:38:41 +00:00
Haelwenn (lanodan) Monnier
313e68c180
mix: bump gettext to ~0.20
...
Includes https://github.com/elixir-gettext/gettext/pull/304 in 0.20.0+
Includes https://github.com/elixir-gettext/expo/issues/91 in 0.22+ via expo 0.2.0+
2023-06-02 03:06:32 +02:00
Haelwenn
e2a63dadd1
Merge branch 'test_improvement' into 'develop'
...
Use Phoenix.ConnTest.redirected_to/2
See merge request pleroma/pleroma!3899
2023-06-01 09:40:25 +00:00
Sean King
c9cb90ff4f
Media proxy base URL doesn't need /proxy
2023-05-31 17:49:06 -06:00
Mark Felder
f0e5f0e837
Fix compile warning
...
warning: doing a prefix match with globs is deprecated, invalid segment "pleroma*path"
2023-05-31 22:23:36 +00:00
Mark Felder
2b8bbb288c
Phoenix.Socket.Transport.force_ssl/4 no longer exists
2023-05-31 22:11:17 +00:00
Mark Felder
d9f031c9da
Bump minimum Elixir to 1.12
2023-05-31 21:12:13 +00:00
Mark Felder
ba988a9abc
Fix test warnings
...
warning: the URI path used in plug tests must start with "/"
2023-05-31 16:30:31 -04:00
Mark Felder
62322f71e2
Clean up Plug.Parsers.MULTIPART deprecation warnings
...
There is no need to the length setting to :multipart. The length setting is global for all of the parsers.
2023-05-31 16:22:40 -04:00
Mark Felder
ffee478ed0
Move websocket config for Shoutbox to the Endpoint
...
This is the modern way of configuring it
2023-05-31 15:30:58 -04:00
Mark Felder
4dc2d4bf7b
Remove locked version of plug
...
Required for Phoenix 1.7 websocket changes
2023-05-31 15:30:31 -04:00
Sean King
a2bbd7c9da
Fix base media and proxy URL in instructions to serve media on another domain
2023-05-31 12:22:13 -06:00
Mark Felder
a7e7db4a29
Phoenix.Endpoint.Cowboy2Handler -> Plug.Cowboy.Handler
2023-05-31 13:48:16 -04:00
Mark Felder
f622f82c0e
No user facing changes
2023-05-31 13:38:46 -04:00
Mark Felder
e3110cb34e
Fix deprecated calls to get_flash/2
2023-05-31 13:36:21 -04:00
Mark Felder
6e1ea2eafc
Remove unnecessary compilers as of Phoenix 1.7
2023-05-31 13:36:07 -04:00
Mark Felder
bed44f9f62
Update to Phoenix 1.7
...
Chase the other deps to match versions you get from a current "mix phx.new" project creation
2023-05-31 13:10:18 -04:00
Mark Felder
46c799f528
Use Phoenix.ConnTest.redirected_to/2
2023-05-31 09:54:37 -04:00
Haelwenn (lanodan) Monnier
737e45c102
installation/debian_based_jp: Elixir 1.11 means Debian 12+ and Ubuntu 22.04+
...
I checked for what each part of the debian&ubuntu sentences meant with the
help of Jisho.org, should be safe but it did make me notice that this guide
hasn't been updated in years
2023-05-31 08:32:58 +02:00
Haelwenn (lanodan) Monnier
8336519f30
installation/debian_based_en: Elixir 1.11 means Debian 12+ and Ubuntu 22.04+
2023-05-31 08:32:58 +02:00
Haelwenn
d998a114e2
Merge branch 'validate-host' into 'develop'
...
Validate Host header for MediaProxy and Uploads
See merge request pleroma/pleroma!3896
2023-05-31 00:50:01 +00:00
Mark Felder
b3c3bd99c3
Switch from serving a 400 to a 302
2023-05-30 16:56:09 -04:00
lain
da6b4003ac
Merge branch 'only_media_filter' into 'develop'
...
Add OnlyMedia Upload Filter
See merge request pleroma/pleroma!3897
2023-05-30 08:04:23 +00:00
Mark Felder
50a20f3bbd
Esacpe the asterisks in Markdown
2023-05-29 15:53:16 -04:00
Mark Felder
9caa0b0be1
Add OnlyMedia Upload Filter to simplify restricting uploads to audio, image, and video types
2023-05-29 15:49:04 -04:00
Mark Felder
da7394f33b
Fix unused assignment
2023-05-29 15:09:31 -04:00
Mark Felder
43bb2f39db
Remove unwanted parameter
2023-05-29 15:05:37 -04:00
Mark Felder
84974efe4c
Host header validation is now required for MediaProxy and Uploads
2023-05-29 14:17:27 -04:00
Mark Felder
a60dd0d92d
Validate Host header matches expected value before allowing access to Uploads
2023-05-29 14:16:03 -04:00
Mark Felder
843fcca5b4
Validate Host header matches expected value before allowing access to MediaProxy
2023-05-29 13:59:51 -04:00
Mark Felder
506a1c98e7
ConnCase: Make sure the host we use in tests is the actual Endpoint host
2023-05-29 13:55:48 -04:00
faried nawaz
4c91c0d1ba
oops, forgot the test cases
2023-05-29 02:52:50 +05:00
faried nawaz
8b390d27dc
twitter card: handle case where image has no alt text
2023-05-29 02:52:49 +05:00
faried nawaz
a1af122499
changelog entry
2023-05-29 02:52:49 +05:00
faried nawaz
52368e6702
fix meta tag for twitter cards and image attachments
...
The name of the tag should be twitter:image, not twitter:player.
Also, add twitter:image:alt meta tags.
2023-05-29 02:52:49 +05:00
faried nawaz
b6b7de2010
add url to Metadata.build_tags call
...
If static_fe is enabled, going to https://pleroma/notice/some-id
results in
<meta content="https://pleroma/users/someuser " property="og:url">
With this fix, it is
<meta content="https://pleroma/notice/some-id " property="og:url">
Additionally, Pleroma.Web.Metadata.Providers.OpenGraph now
generates meta tags for attachments in the post.
2023-05-29 02:52:41 +05:00
tusooa
e92eb5f482
Add instructions to other distro's guides
2023-05-27 00:57:22 +00:00
Haelwenn
31ec5cd35e
Merge branch 'mergeback/2.5.2' into 'develop'
...
Mergeback: 2.5.2
Closes #3030 , #3062 , and #3045
See merge request pleroma/pleroma!3893
2023-05-26 22:16:18 +00:00
Haelwenn (lanodan) Monnier
869f0d24a6
Merge branch 'release/2.5.2' into mergeback/2.5.2
2023-05-26 23:47:50 +02:00
tusooa
408ea697aa
Add changelog
2023-05-26 17:28:41 -04:00
tusooa
85902ad1ae
Recommend users to serve media on another domain in guide
2023-05-26 17:27:35 -04:00
tusooa
f970091c6a
Add instructions to serve media on another domain
2023-05-26 17:17:13 -04:00
Haelwenn
cd9d6a12ab
Merge branch 'issue/3126' into 'develop'
...
Filter OEmbed HTML tags
See merge request pleroma/pleroma!3891
2023-05-26 18:26:40 +00:00
Mark Felder
0d68804aa7
Filter OEmbed HTML tags
2023-05-26 19:54:24 +02:00
Haelwenn
47e66c9500
Merge branch 'issue/3126' into 'develop'
...
MediaProxyController: Apply CSP sandbox
See merge request pleroma/pleroma!3890
2023-05-26 17:12:18 +00:00
Mark Felder
38bcf6b19e
MediaProxyController: Apply CSP sandbox
2023-05-26 12:34:01 -04:00
Zero
279fd47b48
ForceMentionsInContent: fix double mentions for Mastodon/Misskey posts
...
The code checked for duplicates using "ap_id", but in Mastodon and Misskey the look like that:
Mastodon: https://mastodon.example.com/users/roger
Misskey: https:///misskey.example.com/users/104ab42f11
The fix is to also check for "uri", which is what will be in the "explicitly_mentioned_uris" list:
Mastodon: https://mastodon.example.com/@roger
Misskey: https://misskey.example.com/@roger
2023-05-26 12:30:19 -04:00
tusooa
1fa196d8f7
Fix deleting banned users' statuses
2023-05-25 19:00:38 -04:00
tusooa
2c66f584b5
Show more informative errors when profile exceeds char limits
2023-05-25 08:22:33 -04:00
Haelwenn
5433742faf
Merge branch 'tusooa/fix-object-test' into 'develop'
...
Fix ObjectTest
See merge request pleroma/pleroma!3887
2023-05-23 01:57:07 +00:00
tusooa
819a82da99
Fix unused variable
2023-05-22 08:19:58 -04:00
tusooa
6aafa7fe76
Add changelog
2023-05-22 08:16:14 -04:00
tusooa
505e58d4eb
Fix ObjectTest
2023-05-22 08:14:20 -04:00
Haelwenn
0524e66a05
Merge branch 'accept-tags-2.5' into 'develop'
...
TagValidator: Drop unrecognized Tag types
Closes #2952
See merge request pleroma/pleroma!3823
2023-05-17 19:04:51 +00:00
Haelwenn
ce1c0f75cd
Merge branch 'tusooa/3065-scopes' into 'develop'
...
OAuth scopes descriptions
Closes #3065
See merge request pleroma/pleroma!3848
2023-05-17 18:51:26 +00:00
Haelwenn
66327b56e9
Merge branch 'tusooa/rework-refetch' into 'develop'
...
Make sure object refetching follows update rules
See merge request pleroma/pleroma!3883
2023-05-17 18:50:35 +00:00
Haelwenn
b8b15cec9e
Merge branch 'tusooa/changelog-improve' into 'develop'
...
Use git diff to search for changelog entry
See merge request pleroma/pleroma!3875
2023-05-17 15:49:54 +00:00
Haelwenn
143676f58c
Merge branch 'tusooa/allow-lang' into 'develop'
...
Allow lang attribute
See merge request pleroma/pleroma!3882
2023-05-17 15:28:32 +00:00
Haelwenn (lanodan) Monnier
a5066bb078
CommonFields: Use BareUri for :url
...
Closes: https://git.pleroma.social/pleroma/pleroma/-/issues/3121
2023-05-17 17:25:46 +02:00
Haelwenn (lanodan) Monnier
fb3335ffe2
EctoType: Add BareUri
2023-05-17 17:14:38 +02:00
marcin mikołajczak
9363ef53a3
Add test for 'status' notification type for NotificationView
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2023-05-14 15:02:58 +02:00
tusooa
e170fc40dd
Fix build warning
2023-05-09 21:38:28 -04:00
tusooa
be5c5118cb
Make sure object refetching follows update rules
2023-05-09 21:04:27 -04:00
tusooa
163e82bab1
Allow lang attribute
2023-05-09 19:27:32 -04:00
Henry Jameson
2a07411b0c
keep the websocket url for all modes
2023-05-07 15:34:17 +03:00
Henry Jameson
f50fd9278f
reduce redundant reduntancy reduction
2023-05-07 15:29:19 +03:00
Henry Jameson
f8ef4924ec
fix whitespace
2023-05-07 15:24:09 +03:00
Henry Jameson
c0d11da2d8
conditionally set csp depnding on media-proxy state
2023-05-07 15:16:30 +03:00
Haelwenn (lanodan) Monnier
c63bf6a040
Add changelog for !3880
2023-05-05 11:13:50 +02:00
Haelwenn (lanodan) Monnier
fcd49e3985
User: Remove ap_enabled field
2023-05-05 11:11:26 +02:00
Haelwenn (lanodan) Monnier
238edc30de
User: Remove ap_enabled?/1
2023-05-05 11:11:26 +02:00
Haelwenn (lanodan) Monnier
9dfa1c4be0
ActivityPub: Mark fetch_and_prepare_user_from_ap_id/1 as private
2023-05-05 11:11:26 +02:00
Haelwenn (lanodan) Monnier
8181be89a2
Federator: Stop using ap_enabled?/1
2023-05-05 11:11:26 +02:00
Haelwenn (lanodan) Monnier
e17265a7a2
TransmogrifierWorker: Remove obsolete worker
2023-05-05 11:11:26 +02:00
Haelwenn (lanodan) Monnier
2ee483ba41
Transmogrifier: Remove upgrade_user_from_ap_id
2023-05-05 11:11:26 +02:00
Haelwenn (lanodan) Monnier
3962253cf1
Publisher: Stop filtering via ap_enabled?/1
2023-05-05 11:11:26 +02:00
Haelwenn (lanodan) Monnier
606f78f5e5
ActivityPub: Stop relying on ap_enabled and upgrade_user_from_ap_id
2023-05-05 11:11:26 +02:00
Haelwenn (lanodan) Monnier
0903c41645
User: Stop relying on ap_enabled
2023-05-05 11:11:26 +02:00
Haelwenn (lanodan) Monnier
4fd96b24ae
AddRemoveValidator: Use User.fetch_by_ap_id instead of upgrade_user_from_ap_id
2023-05-05 11:11:26 +02:00
tusooa
6a3fd8e014
Do not count for renames when diffing
2023-05-02 22:16:00 -04:00
tusooa
99f157e280
Fix MR pipelines not having build and test jobs
2023-05-02 22:12:15 -04:00
tusooa
9283c784a3
Add English translation for oauth scopes
2023-05-02 17:03:09 -04:00
tusooa
b6dd194000
Add changelog
2023-05-02 16:33:53 -04:00
tusooa
6d0ebccdb0
Make webui use translated scope descriptions
2023-05-02 16:32:33 -04:00
tusooa
530284e1b9
Add extracted pot
2023-05-02 16:32:33 -04:00
tusooa
85bdbb102e
Add extraction process for oauth scopes
2023-05-02 16:32:10 -04:00
HJ
cd20d15bb8
changelog
2023-04-28 11:19:14 +00:00
HJ
675639225a
allow https: so that flash works across instances without need for media proxy
2023-04-28 11:13:42 +00:00
tusooa
248f914e6e
Merge branch 'list-installed-frontends' into 'develop'
...
List installed frontend refs in admin API
See merge request pleroma/pleroma!3862
2023-04-27 02:56:19 +00:00
tusooa
ddf57596be
Merge branch 'bugfix/content-disposition' into 'develop'
...
UploadedMedia: Add missing disposition_type to Content-Disposition
Closes #3114
See merge request pleroma/pleroma!3873
2023-04-26 15:39:20 +00:00
Haelwenn
286b9bb66c
Merge branch 'tusooa/no-more-needs' into 'develop'
...
Do not use needs: in pipeline yaml
See merge request pleroma/pleroma!3878
2023-04-26 14:23:47 +00:00
tusooa
d5e8345946
Do not use needs: in pipeline yaml
2023-04-26 09:14:49 -04:00
lain
d97425d49e
Merge branch 'duponin/remove-ssh' into 'develop'
...
Remove SSH/BBS feature from core
Closes #932 , #2389 , and #2931
See merge request pleroma/pleroma!3872
2023-04-26 12:19:46 +00:00
Haelwenn
18913c4cd8
Merge branch 'tusooa/combine-login' into 'develop'
...
Work around docker login needing daemon
See merge request pleroma/pleroma!3877
2023-04-26 11:43:46 +00:00
tusooa
1a50db36d3
Skip changelog entry for 3877
2023-04-26 07:20:35 -04:00
tusooa
a946917206
Work around docker login needing daemon
2023-04-26 07:19:30 -04:00
Haelwenn
3b2d7cc67f
Merge branch 'tusooa/kaniko' into 'develop'
...
Add ELIXIR_IMG arg to latest
See merge request pleroma/pleroma!3876
2023-04-26 02:59:13 +00:00
tusooa
47e95fe9f5
Add changelog for 3876
2023-04-25 21:40:28 -04:00
tusooa
9c7b036401
Add ELIXIR_IMG arg to latest
2023-04-25 21:39:15 -04:00
Haelwenn
6bd0df1357
Merge branch 'tusooa/kaniko' into 'develop'
...
Use kaniko to build docker images
See merge request pleroma/pleroma!3870
2023-04-25 23:14:21 +00:00
tusooa
c5ffdd0609
Use self-built elixir image for arm
2023-04-24 20:03:59 -04:00
tusooa
2736c3f294
Use --custom-platform to replace the deprecated one
2023-04-24 19:57:32 -04:00
tusooa
66d23713e9
Do not use nested levels for arch
2023-04-24 19:56:54 -04:00
duponin
af38c6104e
add changelog entry for BBS/SSH feature remove
2023-04-23 10:58:50 +02:00
duponin
b2dc9ad9d8
fix test after removing esshd/SSH feature
2023-04-23 10:47:17 +02:00
duponin
0231a09310
Remove SSH/BBS feature from core
...
And link to sshocial, the replacement client for this removed feature
2023-04-23 10:47:07 +02:00
tusooa
ae8f359f22
Skip changelog check for automated MRs
2023-04-22 21:07:18 -04:00
tusooa
30bc37c3ca
Explain changelog.d in merge request templates
2023-04-22 21:02:13 -04:00
tusooa
c1aa83069d
Skip changelog
2023-04-22 20:45:27 -04:00
tusooa
e13b331762
Fetch upstream in the repo
2023-04-22 20:42:59 -04:00
tusooa
50e237759a
Use git diff to search for changelog entry
2023-04-22 20:31:48 -04:00
Mark Felder
d91a823836
Remove unused indexes
...
These indexes were always listed as unused and several grow quite large.
The most significant impact is the activities_visibility_index which takes many hours to rebuild when restoring the server from backup even on fast hardware.
2023-04-22 16:43:33 +00:00
Haelwenn (lanodan) Monnier
2148ef5e2f
UploadedMedia: Increase readability via ~s sigil
2023-04-18 00:12:42 +02:00
Haelwenn (lanodan) Monnier
8f0f58e28b
UploadedMedia: Add missing disposition_type to Content-Disposition
...
Set it to `inline` because the vast majority of what's sent is multimedia
content while `attachment` would have the side-effect of triggering a
download dialog.
Closes: https://git.pleroma.social/pleroma/pleroma/-/issues/3114
2023-04-18 00:09:19 +02:00
Duponin
7944271c1b
Unify install guides using sudo to use sudo -Hu
2023-04-15 19:03:51 +00:00
Haelwenn
3867b52aef
Merge branch 'tusooa/3027-dedupe-poll' into 'develop'
...
Dedupe poll options
Closes #3027
See merge request pleroma/pleroma!3860
2023-04-13 08:40:04 +00:00
Haelwenn
cf1ba77b9e
Merge branch '2023-04-mix-deps-update' into 'develop'
...
mix: Update all dependencies
See merge request pleroma/pleroma!3867
2023-04-13 08:36:35 +00:00
tusooa
23bca0c4b3
Skip changelog entry
2023-04-12 12:40:26 -04:00
tusooa
b37a90caa3
Combine images of different platforms into one
2023-04-12 12:38:47 -04:00
tusooa
7997ba0abe
Build images with kaniko
2023-04-12 11:49:33 -04:00
Duponin
e444832bb5
fix OTP install documentation
...
'su pleroma' will never work if 'pleroma' user has no password, which is
better for security purpose.
If admin has no 'sudo' binary, I'm expecting them to be skilled enough
to make their way on their own.
2023-04-10 20:17:30 +00:00
Haelwenn
b7a831ca55
Merge branch 'from/upstream-develop/tusooa/require-changelog' into 'develop'
...
require changelog
See merge request pleroma/pleroma!3739
2023-04-05 07:53:11 +00:00
tusooa
686c3e03bd
Fix counting
2023-04-04 12:24:45 -04:00
Haelwenn
89a40b867d
Allow more than 1 changelog entry
2023-04-04 16:20:46 +00:00
Haelwenn (lanodan) Monnier
ce16ff7ae8
mix: Update all dependencies
2023-04-04 11:19:38 +02:00
tusooa
78a6f56295
Merge branch 'doc/add-fedistar' into 'develop'
...
Add Fedistar as a desktop client in docs
See merge request pleroma/pleroma!3866
2023-04-01 17:46:30 +00:00
AkiraFukushima
e5f36f9f8d
Update contact information for Whalebird and Fedistar
2023-04-02 01:07:07 +09:00
AkiraFukushima
17f1b8d133
Remove Roma from docs
...
Because this app is no longer maintained
2023-04-02 01:03:15 +09:00
AkiraFukushima
81e1d6d9d0
Add Fedistar as a desktop client in docs
2023-04-02 01:02:22 +09:00
Ekaterina Vaartis
6a63dced4a
Fix tests for frontend installation
2023-03-30 19:25:35 +03:00
Ekaterina Vaartis
3037d2780c
Also list frontends that are not in the config file
2023-03-30 11:16:40 +03:00
Ekaterina Vaartis
d3b27d45a9
List installed frontend refs in admin API
2023-03-29 23:23:06 +03:00
Haelwenn
4f7c11b281
Merge branch 'tusooa/3073-react-legacy' into 'develop'
...
Fix emoji reactions for legacy 2-tuple formats
Closes #3073
See merge request pleroma/pleroma!3861
2023-03-27 10:05:47 +00:00
tusooa
c5d946bc92
Fix emoji reactions for legacy 2-tuple formats
2023-03-26 15:12:40 -04:00
tusooa
67d1897c6e
Fix existing tests
2023-03-26 11:19:44 -04:00
tusooa
10930f7507
Dedupe poll options
2023-03-25 23:20:07 -04:00
Haelwenn
6d0cc8fa2a
Merge branch 'features/image-object' into 'develop'
...
Add support for Image objects
Closes #1581
See merge request pleroma/pleroma!3145
2023-03-25 06:35:55 +00:00
Haelwenn
9c53d1fe19
Merge branch 'background-timeout' into 'develop'
...
Set background worker timeout to 15 minutes
See merge request pleroma/pleroma!3857
2023-03-25 05:40:35 +00:00
anemone
f463b7570e
Set background worker timeout to 15 minutes
2023-03-23 23:14:52 -07:00
tusooa
bf9db78426
Merge branch 'docs-otp-support' into 'develop'
...
docs: Be more explicit about the level of compatibility of OTP releases
See merge request pleroma/pleroma!3849
2023-03-16 08:11:44 +00:00
Haelwenn (lanodan) Monnier
9a2523a09a
instances: Store some metadata based on NodeInfo
2023-03-16 09:02:20 +01:00
Haelwenn
353538d16c
Merge branch 'pleroma-akkoma-emoji-port' into 'develop'
...
Custom emoji reactions support
See merge request pleroma/pleroma!3845
2023-03-16 08:00:00 +00:00
Haelwenn
c3600b6104
Merge branch 'feat/fields-rel-me-tag' into 'develop'
...
feat: build rel me tags with profile fields
See merge request pleroma/pleroma!3850
2023-03-16 07:53:27 +00:00
kPherox
83c7415803
fix: append field values to bio before parsing
2023-03-15 23:55:24 +09:00
tusooa
9145fd04f2
Merge branch 'remove-crypt' into 'develop'
...
Remove crypt(3) support
Closes #3030 and #3062
See merge request pleroma/pleroma!3847
2023-03-12 16:06:00 +00:00
tusooa
d18441e9c4
Indicate in changelog that removal of crypt is breaking
2023-03-12 16:04:43 +00:00
Alexander Tumin
2c2ea16b50
Allow custom emoji reactions: Add pleroma_custom_emoji_reactions feature, review changes
2023-03-12 11:39:17 +03:00
Haelwenn (lanodan) Monnier
ea07ec51ef
Add support for Image objects
2023-03-09 14:21:12 +01:00
Haelwenn
f5c6e44731
Merge branch 'tusooa/block-rel' into 'develop'
...
Allow with_relationships param for blocks
See merge request pleroma/pleroma!3843
2023-03-09 13:13:14 +00:00
Haelwenn (lanodan) Monnier
197647a04e
MastoAPI Attachment: Use "summary" for descriptions if present
2023-03-09 11:10:02 +01:00
Haelwenn (lanodan) Monnier
2ae1b802f2
AttachmentValidator: Add support for Honk "summary" + "name"
...
As used by Honk and supported by Mastodon
2023-03-09 10:26:33 +01:00
Haelwenn
5cc23dc382
Merge branch 'fix/tag-feed-crashes' into 'develop'
...
fix: atom/rss feed issues
Closes #3045
See merge request pleroma/pleroma!3851
2023-03-06 22:55:24 +00:00
Haelwenn
0a042979b8
Merge branch 'fix/static-fe-feed-500' into 'develop'
...
fix: remove static_fe pipeline for /users/:nickname/feed
See merge request pleroma/pleroma!3852
2023-03-06 21:08:27 +00:00
faried nawaz
8241eff05b
remove static_fe pipeline for /users/:nickname/feed
2023-03-06 23:34:00 +05:00
faried nawaz
7b42ec5633
oops, remove unused import
2023-03-06 02:44:36 +05:00
faried nawaz
141146d1f1
use scrub_html_and_truncate instead of scrub_html for feed item title
...
Sometimes this truncated properly encoded HTML entities in the
wrong place. The new flow calls scrub_html, removes emojis,
decodes entities (a second time), truncates, and then re-encodes.
Fixes #3045 .
2023-03-06 02:38:02 +05:00
faried nawaz
86ee4b72f3
modify Utils.scrub_html_and_truncate to take omission parameter
2023-03-06 02:30:52 +05:00
faried nawaz
117a53b88e
format feed_view.ex
2023-03-06 01:16:24 +05:00
faried nawaz
d3f22d24f6
feed eex templates: use published field from @data, not @activity.data
2023-03-06 00:23:31 +05:00
faried nawaz
f33e89765a
fix tag feeds: remote activities might not have a summary field
2023-03-06 00:20:57 +05:00
Haelwenn (lanodan) Monnier
8e072baed0
docs: Be more explicit about the level of compatibility of OTP releases
2023-03-05 08:55:18 +01:00
Haelwenn
c00a19f371
Merge branch 'tusooa/oban-common-pipeline' into 'develop'
...
Stop oban from retrying if validating errors occur when processing incoming data
See merge request pleroma/pleroma!3844
2023-03-05 06:37:59 +00:00
Haelwenn (lanodan) Monnier
5716654d12
Remove crypt(3) support
...
This was used to support migration from GNU Social, which was used by at least
shitposter.club, should be entirely irrelevant now.
Closes: https://git.pleroma.social/pleroma/pleroma/-/issues/3030
Closes: https://git.pleroma.social/pleroma/pleroma/-/issues/3062
2023-03-05 01:37:57 +01:00
Alexander Tumin
8d3b29aaba
Allow custom emoji reactions: add test for mixed emoji react, fix credo errors
2023-03-02 11:18:16 +03:00
Alexander Tumin
4b85d1c617
Allow custom emoji reactions: Fix tests, mixed custom and unicode reactions
2023-03-02 11:18:16 +03:00
floatingghost
787e30c5fd
Allow reacting with remote emoji when they exist on the post ( #200 )
...
Co-authored-by: FloatingGhost <hannah@coffee-and-dreams.uk>
Reviewed-on: https://akkoma.dev/AkkomaGang/akkoma/pulls/200
2023-03-02 11:18:16 +03:00
tusooa
714bf0cb23
Merge branch 'mergeback/2.5.1' into 'develop'
...
mergeback: 2.5.1
See merge request pleroma/pleroma!3846
2023-03-02 02:25:11 +00:00
tusooa
a0ec66ce7e
Make clear the test names
2023-03-01 21:14:52 -05:00
tusooa
bec4e5ac31
Fix FederatorTest
2023-03-01 21:04:19 -05:00
tusooa
1babd0798f
Stop oban from retrying if validating errors occur when processing incoming data
2023-03-01 21:03:30 -05:00
tusooa
f33401f54b
Merge remote-tracking branch 'upstream/stable' into mergeback/2.5.1
2023-03-01 20:09:50 -05:00
tusooa
d83f16fe44
Allow with_relationships param for blocks
2023-02-28 22:16:01 -05:00
silverpill
98b9c1bcb1
Merge branch 'develop' into accept-tags-2.5
2023-02-27 23:10:36 +00:00
silverpill
5cfb0578a6
TagValidator: Drop unrecognized tags
2023-02-27 23:09:46 +00:00
marcin mikołajczak
78d1105bff
Fix down migration
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2023-02-19 22:02:38 +01:00
marcin mikołajczak
92592c25c2
Merge remote-tracking branch 'pleroma/develop' into status-notification-type
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2023-02-19 22:02:03 +01:00
tusooa
8a0162cd96
Merge branch 'weblate-extract' into 'develop'
...
Extract translatable strings
See merge request pleroma/pleroma!3839
2023-02-19 00:21:24 +00:00
kPherox
d5d7648789
feat: build rel me tags with profile fields
2023-02-18 17:57:41 +09:00
weblate-extractor
274b3a0d26
Extract translatable strings
2023-02-18 06:06:52 +00:00
lain
19933a06bf
Merge branch 'tusooa/exiftool' into 'develop'
...
Ignores in exiftool read descriptions
See merge request pleroma/pleroma!3840
2023-02-13 17:10:58 +00:00
lain
a5509de389
Merge branch 'upgrade/crypt' into 'develop'
...
Bump crypt to v1.0.1
See merge request pleroma/pleroma!3838
2023-02-13 17:10:17 +00:00
tusooa
024bb27fc7
Ignores in exiftool read descriptions
2023-02-11 00:30:52 -05:00
Sean King
bf346cf07c
Bump crypt to v1.0.1
2023-02-09 23:06:04 -07:00
lain
d0b781ab69
Merge branch 'from/upstream-develop/tusooa/2974-zwnj' into 'develop'
...
Bump linkify - Fix zwnj in tags and double-dot links
Closes #2974 and #3022
See merge request pleroma/pleroma!3830
2023-02-09 21:25:15 +00:00
lain
7abb248ceb
Merge branch 'notification-content-filtering-noobj' into 'develop'
...
Require related object for content-filtering on notification
See merge request pleroma/pleroma!3837
2023-02-09 19:54:59 +00:00
lain
00b39dea5d
Merge branch 'tusooa/3059-report-fake-create-render' into 'develop'
...
Fix inproper content being cached in report content
Closes #3059
See merge request pleroma/pleroma!3836
2023-02-09 19:52:01 +00:00
lain
755279e253
Merge branch 'tusooa/api-spec-property-map' into 'develop'
...
OpenApiSpex: overhaul
See merge request pleroma/pleroma!3832
2023-02-09 19:50:59 +00:00
lain
a7079057a9
Merge branch 'tusooa/docker-hexpm' into 'develop'
...
Use versioned image from hexpm for docker images
See merge request pleroma/pleroma!3834
2023-02-09 19:47:00 +00:00
lain
7138910f30
Update mix.exs
2023-02-09 14:37:34 -05:00
lain
724bf7c647
Merge branch 'tusooa/3055-instance-languages' into 'develop'
...
Allow customizing instance languages
Closes #3055
See merge request pleroma/pleroma!3835
2023-02-09 19:23:29 +00:00
lain
50abb54d15
Merge branch 'fix-relme' into 'develop'
...
Fix rel="me"
See merge request pleroma/pleroma!3824
2023-02-09 19:09:54 +00:00
lain
4d3c2fb21b
Merge branch 'tusooa/notif-setting' into 'develop'
...
Fix block_from_stranger setting
See merge request pleroma/pleroma!3833
2023-02-09 19:09:23 +00:00
lain
16276c8f87
Merge branch 'test-warnings' into 'develop'
...
Fix warnings in tests, treat warnings as errors in CI.
See merge request pleroma/pleroma!3827
2023-02-09 19:05:50 +00:00
Lain Soykaf
8583b3721d
B TestHelper, CI: Work with older elixir version.
2023-02-09 12:36:02 -05:00
Lain Soykaf
e412363ff8
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into test-warnings
2023-02-09 12:28:02 -05:00
Alexander Tumin
55a8aa9787
Require related object for notifications to filter on content
2023-02-08 13:07:34 +03:00
tusooa
08132002d2
Fix inproper content being cached in report content
2023-02-03 16:00:39 -05:00
tusooa
bc7ec43179
Allow customizing instance languages
2023-01-26 20:17:13 -05:00
tusooa
1cf20184ff
Use versioned image from hexpm
2023-01-18 19:01:10 -05:00
tusooa
7467b24730
Fix block_from_stranger setting
2023-01-18 18:36:52 -05:00
tusooa
97f947deaf
Fix tests
2023-01-15 21:39:05 -05:00
tusooa
5af9ce4a01
Fix type of admin_account.is_confirmed
2023-01-15 18:41:36 -05:00
tusooa
3b4b84b74c
Force spec for every operation to have a listed tag
2023-01-15 18:31:37 -05:00
tusooa
bddcb3ed68
Add names to additionalProperties
2023-01-15 17:28:32 -05:00
tusooa
a2766f310c
Bump linkify
2023-01-06 14:12:07 -05:00
tusooa
09ed8f4f8a
Test double dot link
2023-01-06 14:11:56 -05:00
tusooa
686fef59db
Test that zwnj is treated as word char in hashtags
2023-01-06 14:01:42 -05:00
lain
2a244b391d
Merge branch '2768-strip-location' into 'develop'
...
Resolve "Exiftool may conflict with SVG files"
Closes #2768
See merge request pleroma/pleroma!3829
2023-01-05 16:50:02 +00:00
Lain Soykaf
fe00fbfd54
B StripLocation: Add test, work for all svgs.
2023-01-05 11:29:06 -05:00
Dmytro Poltavchenko
5b4962165e
Added SVG to formats not compatible with exiftool
2023-01-05 11:26:57 -05:00
lain
51b4513258
Merge branch 'tusooa/earmark' into 'develop'
...
Bump earmark to 1.4.~34~22
Closes #3033
See merge request pleroma/pleroma!3820
2023-01-03 22:10:28 +00:00
Lain Soykaf
2eec3f8207
B TestHelper: Remove warnings-as-errors
...
It's already set in mix.exs
2023-01-03 17:01:56 -05:00
Lain Soykaf
b3a1cfaa7a
Tests: Capture logs to clean up the test output.
2023-01-03 15:39:14 -05:00
Lain Soykaf
72b3ec35f8
Fix warnings in tests, treat warnings as errors in CI.
...
The warnings revealed two bad tests, the code still worked but the test
didn't actually test for it. Activating this for CI to prevent issues
like these in the future.
2023-01-03 14:59:14 -05:00
lain
a0cdc4cf9e
Merge branch 'revert-0fe3f749' into 'develop'
...
Revert "Merge branch 'copyright-bump' into 'develop'"
See merge request pleroma/pleroma!3826
2023-01-02 21:06:52 +00:00
lain
e853cfe7c3
Revert "Merge branch 'copyright-bump' into 'develop'"
...
This reverts merge request !3825
2023-01-02 20:38:50 +00:00
Haelwenn
0fe3f749ea
Merge branch 'copyright-bump' into 'develop'
...
Bump copyright year
See merge request pleroma/pleroma!3825
2023-01-02 16:38:34 +00:00
marcin mikołajczak
10886eeaa2
Bump copyright year
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2023-01-01 12:13:06 +01:00
silverpill
45646ff52c
TagValidator: Add test for Link tag
2022-12-30 20:55:02 +00:00
Mark Felder
39e4b788ad
Remove unwanted code specific to MIX_ENV=test
2022-12-30 15:36:21 -05:00
Mark Felder
bea43aba33
Fix rel="me"
...
Cachex for this was not started
2022-12-29 19:42:14 +00:00
silverpill
c7dc5ce85c
TagValidator: Allow unrecognized Tag types
2022-12-29 14:21:20 +00:00
tusooa
4b66f2b7f1
Bump earmark to 1.4.22
2022-12-28 11:57:29 -05:00
marcin mikołajczak
6e51845d44
Merge remote-tracking branch 'pleroma/develop' into secure-mode
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-12-27 16:41:16 +01:00
Haelwenn
2bc6911139
Merge branch 'weblate-extract' into 'develop'
...
Extract translatable strings
See merge request pleroma/pleroma!3818
2022-12-24 11:01:22 +00:00
weblate-extractor
64eef1eae4
Extract translatable strings
2022-12-24 06:06:39 +00:00
tusooa
179efd9467
Make backup parameters configurable
2022-12-24 00:20:25 -05:00
tusooa
7d3e4eaeb9
Log errors more extensively
2022-12-24 00:04:51 -05:00
tusooa
070fbb89e1
Lint
2022-12-24 00:04:51 -05:00
tusooa
a1b95922c5
Fix compile error
2022-12-24 00:04:50 -05:00
tusooa
46ab97d721
Simplify backup update clause
2022-12-24 00:04:50 -05:00
tusooa
bdd63d2a3a
Expose backup status via Pleroma API
2022-12-24 00:04:50 -05:00
tusooa
e4ac2a7cd6
Detail backup states
2022-12-24 00:04:32 -05:00
Haelwenn
b367f22256
Merge branch 'mergeback/2.5.0' into 'develop'
...
Mergeback: 2.5.0
See merge request pleroma/pleroma!3817
2022-12-23 18:15:52 +00:00
Haelwenn (lanodan) Monnier
6126f203d3
mix: version 2.5.50
2022-12-23 18:46:14 +01:00
Ekaterina Vaartis
398141da68
Merge remote-tracking branch 'upstream/develop' into meilisearch
2022-12-20 21:00:07 +03:00
Ekaterina Vaartis
5a39866388
Specifically strip mentions for search indexing
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
6256822afd
Check for updateId, not uid
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
5ac6763238
Make add_to_index and remove_from_index report errors
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
102ebb42bd
Make search a callback
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
119b2b847b
Instead of checking string length, explicitly check for "" and "."
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
e20f74c71b
Remove duplicate function call
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
b150e6f15e
Update meilisearch docs
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
84608be87e
Change updateId to uid because apparently that's the new name
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
1e23f527e3
Change the meilisearch key auth to conform to 0.25.0
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
79225d9b0a
Actually, unlisted posts are indexed
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
fd2cfc80d2
Change search_indexing = 10 and retries for indexing = 2
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
3387935e83
Don't try removing deleted users and such from index as posts
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
d89dc5518b
Fix meilisearch tests and jobs for oban
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
2bc21c6f18
Use oban for search indexing
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
6f2f457751
Add a search backend behaviour
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
4f2637acc6
Add description for initial_indexing_chunk_size
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
571533ae26
Don't support meilisearch < 0.24.0, since it breaks things
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
3179ed0921
Make chunk size configurable
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
3412713c5b
Update search.md documentation with meilisearch indexing steps
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
3a11e79de0
Add config description for meilisearch
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
a12f63bc81
Implement suggestions from the Meilisearch MR
...
- Index unlisted posts
- Move version check outside of the streaming and only do it once
- Use a PUT request instead of checking manually if there is need to insert
- Add error handling, sort of
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
a6946048fb
Rename Activity.Search to Search.DatabaseSearch
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
0fae71f88d
Rename search.ex to database_search.ex and add search/2
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
39e596a5b5
Style fixes
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
7009ef5672
Move the search.ex file so credo doesn't complain
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
8898b5e927
Fix a typo in search docs
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
9c1a930707
Support reindexing meilisearch >=0.24.0
...
It has has a different error code key
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
e928e307f3
Add a reindex option
...
Signed-off-by: Ekaterina Vaartis <vaartis@kotobank.ch>
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
4445421297
Only add local posts to index in activity_pub
...
Remote ones are already added in another place
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
0b4fd0d342
Set content-type to application/json
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
e4b7a3f51f
Modify some meilisearch variables
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
cf558208c2
Use proper deleted object for removing from index
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
95cb2bb694
Don't try removing from index again in common_api
...
It's already removed in the side effects of the pipeline
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
c569ad05b3
Add more documentation about rum to meilisearch docs
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
6beef2d117
Move add_to_index / remove_from_index to Pleroma.Actitivy.Search
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
40280cc273
Reorder ranking rules for (maybe) better results
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
a5bb7f9345
Add private_key: nil to default meilisearch options
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
005947e9f7
Add tests for local post indexing for meilisearch
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
d9ef7e0758
Fix activity being passed to objec_to_search_data
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
07ccab9766
Add search/meilisearch documentation
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
09a1ae1b6e
Add the meilisearch.stats command
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
a67f9da5cc
Add a message with a count of posts to index
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
2c7d973af7
Implement meilisearch auth
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
410c8cb765
Make indexing logs rewrite themselves
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
35e9192ced
Rework task indexing to share code with the main module
...
The code in the main module now scrubs new posts too
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
3dedadf192
Adjust content indexing to skip more unneeded stuff
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
9f16ca80e0
Mark only content as searchable for meilisearch
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
2b2e409ad7
Also index incoming federated posts
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
e35d87ea54
Make the chunk size smaller
2022-10-10 20:19:09 +03:00
Ekaterina Vaartis
00c48a33ac
Use content instead of source and scrub it
2022-10-10 20:19:08 +03:00
Ekaterina Vaartis
9beaebd97e
Tweak search ordering to hopefully return newer results
2022-10-10 20:19:08 +03:00
Ekaterina Vaartis
38996f551a
Make meilisearch sort on publish date converted to unix time
2022-10-10 20:19:08 +03:00
Ekaterina Vaartis
ea6a6a1287
Make the indexing batch differently and more, show number indexed
2022-10-10 20:19:08 +03:00
Ekaterina Vaartis
365024abec
Ensure only indexing public posts and implement clearing and delete
2022-10-10 20:19:08 +03:00
Ekaterina Vaartis
0318e9a599
Add logging to milisiearch index and make it use desc(id)
2022-10-10 20:19:08 +03:00
Ekaterina Vaartis
e154ebbf79
Initial meilisearch implementation, doesn't delete posts yet
2022-10-10 20:19:08 +03:00
Tusooa Zhu
6aa9b023f0
Use dedicated script
2022-08-28 11:13:36 -04:00
Tusooa Zhu
f8566e91a6
Fix {} not working with alpine sh
2022-08-28 11:10:25 -04:00
Tusooa Zhu
a26fb6ab48
Display error info
2022-08-28 10:24:01 -04:00
Tusooa Zhu
d3871fa360
Allow to explicitly skip changelog
2022-08-28 09:57:32 -04:00
Tusooa Zhu
27a8f6a8d9
Prevent duplicate pipelines
2022-08-28 09:54:28 -04:00
Tusooa Zhu
50d3209ce8
Check for changelog in ci
2022-08-28 09:48:01 -04:00
marcin mikołajczak
c899af1d6a
Reject requests from specified instances if authorized_fetch_mode
is enabled
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-08-05 11:06:30 +02:00
marcin mikołajczak
3ed39e3109
Add test
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-07-08 21:28:23 +02:00
Claudio Maradonna
21d9091f5e
ipfs: replacing single quotes with double quotes
2022-07-08 10:06:46 +02:00
Claudio Maradonna
5e097eb91d
ipfs: better tests with @ilja suggestions
2022-07-07 06:29:17 +02:00
Claudio Maradonna
254f2ea854
ipfs: remove unused alias
...
fix analysis job
2022-07-07 06:29:15 +02:00
Claudio Maradonna
98f268e5ec
ipfs: small refactor and more tests
2022-07-07 06:29:15 +02:00
Claudio Maradonna
7c1af86f97
ipfs: refactor final_url generation. add tests for final_url
...
fix lint
2022-07-07 06:29:13 +02:00
Claudio Maradonna
44659ecd65
ipfs: revert to String.replace for cid placeholder
...
ipfs: fix lint
2022-07-07 06:29:12 +02:00
Claudio Maradonna
43dfa58ebd
added tests for ipfs uploader. adapted changelog.md accordingly. improved ipfs uploader with external suggestions
...
fix lint description.exs
2022-07-07 06:29:10 +02:00
Claudio Maradonna
fa2a6d5d6b
feat: simple, but not stupid, uploader for IPFS
...
fix: format fix with credo
2022-07-07 06:29:01 +02:00
Mark Felder
6b74a55274
InstanceStatic should have reasonable caching
...
While here fix the naming convention of the old module attribute restricting caching and add a new one for the default cache value
All frontends should be shipped with versioned assets. There be dragons if you don't.
2022-07-01 15:40:40 -05:00
marcin mikołajczak
5846e7d5f6
Use Repo.exists?
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-06-01 16:03:22 +02:00
marcin mikołajczak
0ecd6ba35e
AdminAPI: Allow filtering reports by rule_id
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-05-30 13:24:39 +02:00
marcin mikołajczak
b354d70e85
Apply, suggestions, use strings for actual Mastodon API compatibility
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-05-30 12:30:03 +02:00
marcin mikołajczak
5c383ada8a
Correctly order rules by id/creation date
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-05-16 14:08:02 +02:00
marcin mikołajczak
d26aadb743
Add tests
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-05-16 14:06:53 +02:00
marcin mikołajczak
574db5b988
Allow submitting an array of rule_ids to /api/v1/reports
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-05-16 14:06:49 +02:00
marcin mikołajczak
bbf3bc2228
Add RuleTest
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-05-16 14:03:06 +02:00
marcin mikołajczak
384f8bfa78
Instance rules: Use render_many
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-05-16 14:02:40 +02:00
marcin mikołajczak
432599311d
Add GET /api/v1/instance/rules
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-05-16 14:02:36 +02:00
marcin mikołajczak
bd52e2aec7
Instance rules
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-05-16 14:02:32 +02:00
marcin mikołajczak
9423052e92
Add "status" notification type
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2022-04-25 14:08:31 +02:00
Alex Gleason
3a03d9b65f
Merge remote-tracking branch 'pleroma/develop' into nsfw-api-mrf
2021-06-17 15:38:10 -05:00
Alex Gleason
a704d5499c
NsfwApiPolicy: Fall back more generously when functions don't match
2021-06-17 15:32:42 -05:00
Alex Gleason
c802c3055e
NsfwApiPolicy: add systemd example file
2021-06-17 15:04:40 -05:00
Alex Gleason
b293c14a1b
NsfwApiPolicy: add describe/0 and config_description/0
2021-06-17 14:52:07 -05:00
Alex Gleason
2b3dfbb42f
NsfwApiPolicy: add tests
2021-06-17 14:36:51 -05:00
Alex Gleason
f15d419062
NsfwApiPolicy: raise if can't fetch user
2021-06-16 22:35:09 -05:00
Alex Gleason
718e8e1edb
Create NsfwApiPolicy
2021-06-16 22:35:04 -05:00