Oneric
59fcb5c96e
api: ensure only visible posts are interactable
...
Port of Akkoma PR 1014 with a few changes:
- comments regarding akkomafe changed to Pleroma-FE when applicable
- different error message for replying to/interacting with invisible post
in Pleroma.Web.CommonAPI.ActivityDraft.in_reply_to/1
- split "doesn't do funny things to other users favs" test into three:
- can't unfavourite post that isn't favourited
- can't unfavourite other user's favs
- can't unfavourite other user's favs using their activity
- switched order of args for some CommonAPI function since Akkoma hasn't
backported our old change for that
Pleroma.Web.CommonAPI.ActivityDraft.in_reply_to/1 now refactored to use
`with` statement as in Akkoma. Some defp in_reply_to/1 were therefore removed
Original PR author: Oneric
Original commit message:
It doesn't make sense to like, react, reply, etc to something you cannot
see and is unexpected for the author of the interacted with post and
might make them believe the reacting user actually _can_ see the post.
Wrt to fav, reblog, reaction indexes the missing visibility check was
also leaking some (presumably/hopefully) low-severity data.
Add full-API test for all modes of interactions with private posts.
2025-12-11 23:30:02 +01:00
Phantasm
7d8a188967
Disable Hackney URL encoding function
...
Hackney interferes with out URI encoding and implements older RFC 2396
instead of RFC 3986 which we and Elixir implement. As an example "'"
and "!" will get encoded by it and cause problems with our MediaProxy
making unexpected 302 redirects.
If an admin supplies a different function via *.secret.exs, we
don't override it.
https://github.com/benoitc/hackney/issues/399
2025-12-10 14:56:07 +01:00
Phantasm
73b337245b
Make URI encoding query quirks host-aware
2025-12-10 14:56:06 +01:00
Phantasm
0935823be9
Add test for mangling incorrect URL in MediaProxy link generation
2025-12-10 14:56:06 +01:00
Phantasm
bfe8372ad2
Remove "preserve ASCII encoding" test in MediaProxy
...
issue 580: Should not happen again, tested in HTTPTest
issue 1055: Fixed with quirk support in query encoding, tested
in HTTPTest
2025-12-10 14:56:06 +01:00
Phantasm
c31454fac1
Fix unicode URL encoding test
2025-12-10 14:56:05 +01:00
Phantasm
f290b15987
Move custom URI encoding functions to Pleroma.Utils.URIEncoding
2025-12-10 14:56:05 +01:00
Phantasm
cfd2c08ef6
lint
2025-12-10 14:56:05 +01:00
Phantasm
a0f73d0e2f
Reimplement URI.encode_query/2 to support quirks, add Guardian quirk
...
This solves the issue with Guardian rich media cards not loading, thanks
to them using "," and ":" in queries which get improperly encoded.
Guardian also needs specific ordering of the query keys, this also fixes
that.
2025-12-10 14:56:05 +01:00
Phantasm
1b438fd167
MediaProxy: fix query params test
...
Elixir and Erlang both add a traling = when encoding queries
2025-12-10 14:56:04 +01:00
Phantasm
d413f9bf70
MediaProxy: fix Pleroma.HTTP.encode_url not being available in test env
2025-12-10 14:56:04 +01:00
Phantasm
99a1c0890a
URI.encode_query needs an enum, add test for this case
2025-12-10 14:56:04 +01:00
Phantasm
80db6f1328
Fix character escaping test for Pleroma.Upload
2025-12-10 14:56:04 +01:00
Phantasm
0a8423fdf7
Add ability to bypass url decode/parse in Pleroma.HTTP, fix encode in Pleroma.Upload
2025-12-10 14:56:03 +01:00
Phantasm
619f247e38
Add more URL-encoding tests
2025-12-10 14:56:03 +01:00
nicole mikołajczyk
d7b0115124
Merge branch 'mastodon-quotes-updates' into 'develop'
...
Use Mastodon-compatible route for quotes list and param for quotes count
See merge request pleroma/pleroma!4367
2025-12-02 14:34:16 +01:00
nicole mikołajczyk
ca03d94f52
Merge branch 'pin-chats' into 'develop'
...
Chats: pin/unpin chats
See merge request pleroma/pleroma!3637
2025-11-29 18:45:42 +01:00
nicole mikołajczyk
f443b6d1d7
Merge branch 'lookup-restrict-unauthenticated' into 'develop'
...
Respect restrict_unauthenticated in /api/v1/accounts/lookup
See merge request pleroma/pleroma!4355
2025-11-29 18:13:53 +01:00
nicole mikołajczyk
2330c50666
Merge branch 'inlinequotes-mastodon' into 'develop'
...
MRF InlineQuotePolicy: Don't inline quoted post URL in Mastodon quotes
See merge request pleroma/pleroma!4371
2025-11-29 18:12:33 +01:00
Phantasm
5cb141a54e
MRF InlineQuotePolicy: Don't inline quoted post URL in Mastodon quotes
2025-11-29 18:12:32 +01:00
nicole mikołajczyk
26a058935a
Merge branch 'filter-user-capabilities' into 'develop'
...
Allow filtering users with `accepts_chat_messages` capability
See merge request pleroma/pleroma!4372
2025-11-29 17:26:01 +01:00
Atsuko Karagi
ef41378fa2
Respect restrict_unauthenticated in /api/v1/accounts/lookup
...
Signed-off-by: nicole mikołajczyk <git@mkljczk.pl>
2025-11-29 17:18:38 +01:00
nicole mikołajczyk
f61fad0663
Pin/unpin chats
...
Signed-off-by: nicole mikołajczyk <git@mkljczk.pl>
2025-11-29 16:53:56 +01:00
nicole mikołajczyk
0dfcc24d30
Merge branch 'translation-provider-translatelocally' into 'develop'
...
Support translateLocally translation provider
See merge request pleroma/pleroma!4377
2025-11-29 16:50:42 +01:00
nicole mikołajczyk
ba8b5682cc
Merge branch 'stream-marker-updates' into 'develop'
...
Stream marker updates
See merge request pleroma/pleroma!4354
2025-11-29 16:49:29 +01:00
nicole mikołajczyk
367d5c65f6
Merge branch 'outgoing_follow_requests' into 'develop'
...
Add /api/v1/pleroma/outgoing_follow_requests
See merge request pleroma/pleroma!4310
2025-11-28 16:36:40 +01:00
nicole mikołajczyk
13bc4ba639
Merge remote-tracking branch 'origin/develop' into translation-provider-translatelocally
...
Signed-off-by: nicole mikołajczyk <git@mkljczk.pl>
2025-11-28 15:07:43 +01:00
mkljczk
e458bd953a
Add /api/v1/pleroma/outgoing_follow_requests
...
Signed-off-by: mkljczk <git@mkljczk.pl>
Signed-off-by: nicole mikołajczyk <git@mkljczk.pl>
2025-11-28 14:59:55 +01:00
nicole mikołajczyk
5f4c948057
fix typo
...
Signed-off-by: nicole mikołajczyk <git@mkljczk.pl>
2025-11-28 14:53:22 +01:00
nicole mikołajczyk
0476cf4283
Merge branch 'rss-redirect' into 'develop'
...
Redirect /users/:nickname.rss to /users/:nickname/feed.rss instead of .atom
See merge request pleroma/pleroma!4375
2025-11-28 14:51:11 +01:00
nicole mikołajczyk
e81e0d64c1
Merge branch 'endorsements-api' into 'develop'
...
Support new Mastodon API for endorsed accounts
See merge request pleroma/pleroma!4361
2025-11-28 14:51:06 +01:00
nicole mikołajczyk
ec51aadc78
Merge branch 'instance-view-timeline-access' into 'develop'
...
Add `timelines_access` to InstanceView
See merge request pleroma/pleroma!4393
2025-11-28 14:50:46 +01:00
nicole mikołajczyk
b975dce9ba
Add timelines_access to InstanceView
...
Signed-off-by: nicole mikołajczyk <git@mkljczk.pl>
2025-11-02 00:01:31 +01:00
nicole mikołajczyk
68b4de7558
Merge branch 'authorized-fetch-fix' into 'develop'
...
Fix fetching public keys with authorized fetch enabled
See merge request pleroma/pleroma!4383
2025-11-01 11:25:17 +01:00
nicole mikołajczyk
1610d39f36
Revert "User.get_or_fetch_public_key_for_ap_id/1 is no longer required."
...
This reverts commit c0a50b7c3e .
2025-10-21 21:41:33 +02:00
nicole mikołajczyk
ed1cfd6f5e
Support translateLocally translation provider
...
Signed-off-by: nicole mikołajczyk <git@mkljczk.pl>
2025-10-15 11:00:37 +02:00
nicole mikołajczyk
50e3cc67fc
Redirect /users/:nickname.rss to /users/:nickname/feed.rss instead of .atom
...
Signed-off-by: nicole mikołajczyk <git@mkljczk.pl>
2025-10-15 10:27:31 +02:00
Nicole Mikołajczyk
0b8b98f979
Add a failing test
...
Signed-off-by: Nicole Mikołajczyk <git@mkljczk.pl>
Signed-off-by: nicole mikołajczyk <git@mkljczk.pl>
2025-10-10 05:36:46 +02:00
nicole mikołajczyk
2012e83e20
Allow filtering users with accepts_chat_messages capability
...
Signed-off-by: nicole mikołajczyk <git@mkljczk.pl>
2025-10-10 05:24:13 +02:00
nicole mikołajczyk
5ce3c12c28
Merge branch 'develop' into 'endorsements-api'
...
# Conflicts:
# test/pleroma/web/pleroma_api/controllers/account_controller_test.exs
2025-10-08 05:04:55 +02:00
nicole mikołajczyk
c5b100a9f8
Merge branch 'develop' into 'mastodon-quotes-updates'
...
# Conflicts:
# docs/development/API/differences_in_mastoapi_responses.md
2025-10-08 05:02:14 +02:00
nicole mikołajczyk
ef9bcb373a
Use Mastodon-compatible route for quotes list and param for quotes count
...
Signed-off-by: nicole mikołajczyk <git@mkljczk.pl>
2025-09-27 11:44:45 +02:00
nicole mikołajczyk
32bc8ec580
Stream marker updates
...
Signed-off-by: nicole mikołajczyk <git@mkljczk.pl>
2025-09-07 23:48:01 +02:00
nicole mikołajczyk
abdb511992
Fix typo in test name
...
Signed-off-by: nicole mikołajczyk <git@mkljczk.pl>
2025-09-07 22:41:25 +02:00
Lain Soykaf
5503247b15
PublisherTest: Linting.
2025-09-05 15:17:17 +04:00
Lain Soykaf
b023e1591c
PublisherTest: Mock -> Mox
2025-09-05 15:04:33 +04:00
Lain Soykaf
3de250da23
PublisherTest: Use mox instead of mock.
2025-09-05 14:18:12 +04:00
Lain Soykaf
71785d7ff7
PublisherTest: Add test for signature replacement
2025-09-05 09:52:12 +04:00
Lain Soykaf
5bf1a384c7
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into pleroma-from/upstream-develop/tusooa/report-anon
2025-09-04 18:10:41 +04:00
feld
14caaa8f23
Merge branch 'moderation-log-fix-3385' into 'develop'
...
Fix ModerationLog FunctionClauseError for unknown actions
Closes #3385
See merge request pleroma/pleroma!4384
2025-08-27 10:43:35 +00:00