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
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 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
923803a533
Tests: Explicitly set db pool size and max cases to the same value.
2024-03-19 10:34:37 +04: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
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 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
95bcd5d28f
Merge branch 'force-mention' into 'develop'
...
Add ForceMention mrf
See merge request pleroma/pleroma!4082
2024-03-17 12:32:14 +00: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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
1e76ceacd5
Revert "Pleroma.Web.AdminAPI.ConfigController: dialyzer error"
...
This reverts commit 60d89cb404
.
2024-01-30 14:19: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
Haelwenn
251c455b91
Merge branch 'deps-bump' into 'develop'
...
Bump dependencies
See merge request pleroma/pleroma!4044
2024-01-29 17:43:00 +00: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
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
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
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
Haelwenn (lanodan) Monnier
558b421079
Test incoming federation from Convergence AP Bridge
2024-01-26 17:05:18 +01:00
Haelwenn (lanodan) Monnier
0de1a7629c
Maps: Add filter_empty_values/1
2024-01-26 16:18:29 +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
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
Haelwenn
4c20713ecd
Merge branch 'otp26' into 'develop'
...
OTP26 support
See merge request pleroma/pleroma!4025
2024-01-17 09:51:56 +00: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
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
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
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
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
Mark Felder
c6acd2abb3
Revert grammar leak from bad merge
2023-12-29 23:31:48 -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
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
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
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
f17f92105b
Oban jobs should be discarded on permanent errors
2023-12-28 23:52:59 -05: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
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
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
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
becb070603
Conslidate log messages for object fetcher failures and leverage Logger.metadata
2023-12-27 21:22:51 -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
Mark Felder
be0cca9afd
RemoteFetcherWorker Oban job tests
2023-12-27 16:08:57 -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
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
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
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
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
Mark Felder
2207fafa91
Fix more Logger warn -> warning
2023-12-20 16:24:19 -05:00
Mark Felder
45150848fb
Backwards compatibility for OTP
2023-12-20 15:56:56 -05: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
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
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 (lanodan) Monnier
086ba59d03
HTTPSignaturePlug: Add :authorized_fetch_mode_exceptions
2023-12-16 19:25:51 +01:00
Lain Soykaf
3fbc80eb58
B ActivityPub.Publisher: Prioritize direct mentions
2023-12-16 20:26:08 +04:00
Lain Soykaf
766011544a
UserViewTest: Add basice service actor test.
2023-12-15 10:01:31 +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 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 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
18ab36d70c
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into no-async-clear-config
2023-12-12 10:55:19 +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 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
Lain Soykaf
0d83b6d177
Linting
2023-12-10 19:59:02 +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
68f7a79f28
Tests: Remove async from cases that use Mock
2023-12-10 17:10:18 +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
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
Lain Soykaf
ef8a2134bc
AccountView: Add test, refactor
2023-12-07 11:25:18 +04:00
Mark Felder
1ad0d94d6f
Change set_reachable/1 to an upsert
2023-12-06 15:50:00 -05: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
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 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 Soykaf
4ef56c5b65
ActivityPub.Utils: Only treat object ids as valid while stripping
2023-11-27 18:44:11 +04:00
Lain Soykaf
5a3b81d92e
ActivityPub.UtilsTest: Add failing test for strip_report_status_data
2023-11-27 17:55:16 +04: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
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
66f5ae0c5a
router: Make /federation_status publicly available
2023-11-14 10:48:30 +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
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
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 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
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
Marcin Mikołajczak
1e9333a9aa
Merge remote-tracking branch 'origin/develop' into instance-v2
2023-11-08 20:46:57 +01:00
Mark Felder
0ab853cab8
Merge branch 'develop' into phoenix1.7
2023-11-08 09:18:08 -05:00
Haelwenn (lanodan) Monnier
76c070fe86
ObjectValidators.BareUriTest: Replace calls of SafeText to BareUri
2023-11-08 02:17:50 +01: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
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
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
6b8c5e12df
Add contact account to InstanceView
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2023-10-26 23:32:08 +02:00
marcin mikołajczak
c03852fbc7
update tests
...
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2023-10-25 00:38:52 +02: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
eb33a03d0a
Explain the encode-decode roundtrip
2023-10-15 17:20:26 -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
949c4f01c6
Fix NotificationTest
2023-10-15 17:20:25 -04:00
tusooa
9572be1e5f
Add tests for list streams
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
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
8596f92654
Fix TransmogrifierTest
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
9bcec87aba
Allow local quote and private self-quote
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
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
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
f4ccdfd503
Fix typos
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
0d9c443e51
StatusView: render the whole quoted status
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
Mint
1afde067b1
CommonAPI: Prevent users from accessing media of other users
2023-09-03 10:41:37 +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
mae
48b1e9bdc7
Completely disable xml entity resolution
2023-08-05 14:17:04 +02:00
FloatingGhost
307692cee8
Add unit test for external entity loading
2023-08-05 08:14:27 +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
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
faried nawaz
dc4de79d43
status context: perform visibility check on activities around a status
...
issue #2927
2023-07-28 18:45:59 +05:00