rinpatch
2c55f7d7cb
Remove FedSockets
...
Current FedSocket implementation has a bunch of problems. It doesn't
have proper error handling (in case of an error the server just doesn't
respond until the connection is closed, while the client doesn't match
any error messages and just assumes there has been an error after 15s)
and the code is full of bad descisions (see: fetch registry which uses
uuids for no reason and waits for a response by recursively querying a
ets table until the value changes, or double JSON encoding).
Sometime ago I almost completed rewriting fedsockets from scrach to
adress these issues. However, while doing so, I realized that fedsockets
are just too overkill for what they were trying to accomplish, which is
reduce the overhead of federation by not signing every message.
This could be done without reimplementing failure states and endpoint
logic we already have with HTTP by, for example, using TLS cert auth,
or switching to a more performant signature algorithm. I opened
https://git.pleroma.social/pleroma/pleroma/-/issues/2262 for further
discussion on alternatives to fedsockets.
From discussions I had with other Pleroma developers it seems like they
would approve the descision to remove them as well,
therefore I am submitting this patch.
2020-11-17 17:28:30 +03:00
Alexander Strizhakov
8d218ebaf5
Moving some background jobs into simple tasks
...
- fetching activity data
- attachment prefetching
- using limiter to prevent overload
2020-11-11 13:39:49 +03:00
lain
329aa19c9f
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into alexgleason/pleroma-restrict-domain
2020-11-04 15:05:01 +01:00
lain
de6d49c8ce
ActivityPub: Add back debug call + explanation.
2020-10-26 16:33:26 +01:00
lain
60e379ce0b
User: Correctly handle whitespace names.
2020-10-23 13:53:01 +02:00
Haelwenn
0495a07dc7
Merge branch '2239-mute-fixes' into 'develop'
...
ActivityPub: Show own replies to muted users.
Closes #2239
See merge request pleroma/pleroma!3084
2020-10-19 04:26:35 +00:00
Mark Felder
fb056ce05b
Merge branch 'develop' into refactor/discoverable_user_field
2020-10-15 16:39:01 -05:00
lain
7a2f100061
ActivityPub: Show own replies to muted users.
...
Aligns mute with block behavior.
2020-10-15 12:28:25 +02:00
77bca41595
Apply 3 suggestion(s) to 3 file(s)
2020-10-14 19:33:54 +00:00
Mark Felder
8bacdc3680
Change user.discoverable field to user.is_discoverable
2020-10-13 09:45:08 -05:00
Mark Felder
9968b7efed
Change user.locked field to user.is_locked
2020-10-13 09:31:13 -05:00
Alex Gleason
3f9263fb16
Merge remote-tracking branch 'upstream/develop' into restrict-origin
2020-10-08 17:24:09 -05:00
lain
ee3052a2d8
ActivityPub: Return Announces when filtering by following
.
2020-09-22 14:20:19 +02:00
lain
f2f0a0260f
ActivityPub: Don't block-filter your own posts
...
We are filtering out replies to people you block, but that should
not include your own posts.
2020-09-21 16:08:38 +02:00
Steven Fuchs
f2ef9735c5
Federate data through persistent websocket connections
2020-09-18 11:58:22 +00:00
rinpatch
eca8d26784
Merge branch 'chores/mrf-loglevel' into 'develop'
...
Fetcher: Correctly return MRF reject reason
See merge request pleroma/pleroma!2990
2020-09-16 13:37:04 +00:00
rinpatch
adbd0032fa
Merge branch 'features/validators-video' into 'develop'
...
Pipeline Ingestion: Video and Article
See merge request pleroma/pleroma!2908
2020-09-16 13:36:27 +00:00
eugenijm
3ab59a6f3c
Mastodon API: fix the public timeline returning an error when the reply_visibility
parameter is set to self
for an unauthenticated user
2020-09-15 13:00:56 +03:00
Haelwenn (lanodan) Monnier
f1f44069ae
Fetcher: Correctly return MRF reject reason
2020-09-11 20:00:41 +02:00
Haelwenn (lanodan) Monnier
1b3d5956b1
Pipeline Ingestion: Article
2020-09-11 01:40:20 +02:00
Haelwenn (lanodan) Monnier
846b59ccb0
Pipeline Ingestion: Video
2020-09-11 01:39:39 +02:00
Alexander Strizhakov
357d971a10
expiration for new pipeline
2020-09-10 21:50:41 +03:00
Alexander Strizhakov
93e1c8df9d
reject activity creation
...
if passed expires_at option and expiring activities are not configured
2020-09-10 21:50:41 +03:00
Alexander Strizhakov
9bf1065a06
schedule activity expiration in Oban
2020-09-10 21:50:40 +03:00
rinpatch
126461942b
User table: ensure bio is always a string
...
Gets rid of '|| ""' in multiple places and fixes #2067
2020-09-01 10:45:42 +03:00
d39abd02ac
Merge branch 'relay-fix-admin-fe' into 'develop'
...
Relay fix for admin-fe
See merge request pleroma/pleroma!2902
2020-08-24 17:03:18 +00:00
Haelwenn (lanodan) Monnier
36c125a071
Pipeline Ingestion: Event
2020-08-20 21:49:26 +02:00
Alexander Strizhakov
7dc275b69b
relay fix for admin-fe
2020-08-19 08:41:39 +03:00
Haelwenn (lanodan) Monnier
5316e231b0
Pipeline Ingestion: Audio (Part 2)
2020-08-19 00:06:31 +02:00
lain
2e347e8286
ActivityPub: Remove reject
, move everything to the Pipeline.
2020-08-12 15:07:46 +02:00
lain
25bfee0d12
ActivityPub: Remove ActivityPub.accept
...
Switch to the pipeline in CommonAPI and SideEffects
2020-08-11 17:43:16 +02:00
Alex Gleason
cc196e2cd5
Merge remote-tracking branch 'upstream/develop' into restrict-domain
2020-08-05 13:08:31 -05:00
Alex Gleason
ad9c925efb
Speed up instance timeline query
2020-08-05 13:08:13 -05:00
Haelwenn (lanodan) Monnier
ac2598307d
Merge remote-tracking branch 'pleroma/develop' into features/poll-validation
2020-07-31 13:57:21 +02:00
Alex Gleason
afa8b469ed
Allow restricting public timeline by instance
2020-07-18 19:35:07 -05:00
Haelwenn (lanodan) Monnier
82895a4012
SideEffects: port ones from ActivityPub.do_create and ActivityPub.insert
2020-07-15 11:40:23 +02:00
Haelwenn (lanodan) Monnier
c5efaf6b00
AnswerValidator: Create
2020-07-15 11:39:54 +02:00
Haelwenn (lanodan) Monnier
7bcd7a9595
QuestionValidator: Create
2020-07-15 11:39:53 +02:00
Haelwenn (lanodan) Monnier
ce243b107f
Use Logger.info for {:reject, reason}
2020-07-13 15:26:31 +02:00
lain
93e494ec21
ActivityPub: Don't rename a clashing nickname with the same ap id.
2020-07-10 14:10:44 +02:00
lain
b39eb6ecc5
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into chat-federation-information
2020-07-10 12:26:53 +02:00
lain
00e54f8fe7
ActivityPub: Remove follow
and fix issues.
2020-07-08 17:07:24 +02:00
lain
208baf157a
ActivityPub: Add new 'capabilities' to user.
2020-07-06 11:38:40 +02:00
Sergey Suprunenko
8277b29790
Restrict thread statuses that contain user's irreversible filters
2020-07-06 09:30:39 +03:00
Sergey Suprunenko
4a8c26654e
Restrict statuses that contain user's irreversible filters
2020-07-06 09:28:21 +03:00
lain
5c0bf4c472
ActivityPub: Ingest information about chat acceptance.
2020-07-03 13:58:34 +02:00
lain
fedfe8f7d6
ActivityPub: Handle clashing nicknames for the same ap id
...
If we get a new user (identified by ap_id) that would have the same
nickname as an existing user, give the existing user a nickname that
is prepended with the user id, as this will never clash.
This can happen when a user switches server software and that soft-
ware generates ap ids in a different way.
2020-07-01 12:26:07 +02:00
lain
44bb7cfccd
ActivityPub: Remove block
.
2020-06-25 11:51:33 +02:00
lain
2c603f2009
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into update-validator
2020-06-23 10:17:12 +02:00
lain
e785cd5cae
ActivityPub: Remove update
and switch to pipeline.
2020-06-22 13:59:45 +02:00
lain
7d542450b1
Merge branch 'develop' into '1865-media-only'
...
# Conflicts:
# CHANGELOG.md
2020-06-20 09:33:18 +00:00
lain
1eb6cedaad
ActivityPub: When restricting to media posts, only show 'Creates'.
2020-06-16 13:08:27 +02:00
lain
b7df7436c8
Conversations: Return last dm for conversation, not last message.
2020-06-15 12:27:13 +02:00
rinpatch
271ea5068f
Merge branch '1851-favorites-pagination' into 'develop'
...
StatusController: Correctly paginate favorites.
Closes #1851
See merge request pleroma/pleroma!2636
2020-06-13 17:20:43 +00:00
Haelwenn
4115701f71
Merge branch 'recipients-experiments' into 'develop'
...
ActivityPub: Don't show announces of your own objects in timeline.
See merge request pleroma/pleroma!2637
2020-06-12 16:57:13 +00:00
lain
e557265a03
Merge branch 'global-status-expiration' into 'develop'
...
Global status expiration
See merge request pleroma/pleroma!2208
2020-06-12 14:14:09 +00:00
lain
9e411372d0
ActivityPub: Don't show announces of your own objects in timeline.
2020-06-10 12:10:09 +02:00
lain
063e6b9841
StatusController: Correctly paginate favorites.
...
Favorites were paginating wrongly, because the pagination headers
where using the id of the id of the `Create` activity, while the
ordering was by the id of the `Like` activity. This isn't easy to
notice in most cases, as they usually have a similar order because
people tend to favorite posts as they come in. This commit adds a
way to give different pagination ids to the pagination helper, so
we can paginate correctly in cases like this.
2020-06-09 10:53:40 +02:00
Egor Kislitsyn
da22119c2f
Merge branch 'develop' into global-status-expiration
2020-06-08 17:21:47 +04:00
lain
3b5282bef2
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms
2020-06-08 11:19:18 +02:00
Egor Kislitsyn
b02df1803e
Merge remote-tracking branch 'origin/develop' into activity-pub-use-atoms-as-keys
2020-06-05 23:15:10 +04:00
lain
a8ca030d85
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms
2020-06-05 16:53:56 +02:00
Haelwenn
54bae06b4f
Create Pleroma.Maps.put_if_present(map, key, value, value_fun // &{:ok, &1})
...
Unifies all the similar functions to one and simplify some blocks with it.
2020-06-05 14:48:02 +00:00
lain
0efa8aa0b9
Transmogrifier: For follows, create notifications last.
...
As the notification type changes depending on the follow state,
the notification should not be created and streamed out before the
state settles. For this reason, the notification creation has been
delayed until it's clear if the user has been followed or not.
This is a bit hacky but it will be properly rewritten using the
pipeline soon.
2020-06-05 12:26:07 +02:00
Egor Kislitsyn
317e2b8d61
Use atoms as keys in ActivityPub.fetch_*
functions options
2020-06-04 21:36:26 +04:00
lain
879304dcd9
Merge branch 'replies-domain-block' into 'develop'
...
Replies domain block
Closes #1650
See merge request pleroma/pleroma!2622
2020-06-02 14:14:23 +00:00
lain
904295d53b
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms
2020-06-02 14:28:01 +02:00
rinpatch
165a4b2a69
Do not include activities of invisible users unless explicitly requested
...
Closes #1833
2020-06-02 13:34:12 +03:00
Alexander Strizhakov
19f468c5bc
replies filtering for blocked domains
2020-06-02 09:00:10 +03:00
Alexander Strizhakov
7e6ec778d9
exclude replies on blocked domains
2020-06-01 21:17:32 +03:00
Egor Kislitsyn
a7627bdc7a
Merge remote-tracking branch 'origin/develop' into global-status-expiration
2020-06-01 15:48:51 +04:00
lain
af6d01ec93
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms
2020-05-29 12:36:17 +02:00
lain
7e13200869
ActivityPub: Change ordering to nulls last
in favorites query
...
This makes it use our existing index and speeds up the query.
2020-05-27 09:46:12 +02:00
Ivan Tashkinov
d7a57004ef
[ #1501 ] Made user feed contain public and unlisted activities.
2020-05-25 23:27:47 +03:00
lain
ee35bb5ac2
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms
2020-05-25 13:57:27 +02:00
lain
e42bc5f557
Announcements: Handle through common pipeline.
2020-05-20 15:44:37 +02:00
lain
3cff4e24cd
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms
2020-05-13 12:44:16 +02:00
lain
d0ba1844b0
ActivityPub: Fix non-federating blocks.
2020-05-12 10:52:46 +02:00
lain
7637ef4203
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms
2020-05-08 13:13:37 +02:00
lain
ef55d24054
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into feature/emojireactvalidator
2020-05-07 18:53:34 +02:00
lain
fb2d284d28
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms
2020-05-07 15:05:40 +02:00
lain
7ac0cffb34
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into feature/emojireactvalidator
2020-05-07 15:03:12 +02:00
lain
f0c22df226
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into feature/undo-validator-reduced
2020-05-07 14:45:20 +02:00
href
9491ba3e49
Streamer rework
2020-05-07 09:13:32 +00:00
lain
1748e26948
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms
2020-05-06 17:36:08 +02:00
rinpatch
473b0d9f3d
Merge branch 'feature/delete-validator' into 'develop'
...
Move deletions to the common pipeline
Closes #1497
See merge request pleroma/pleroma!2441
2020-05-06 14:32:58 +00:00
lain
205313e541
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms
2020-05-06 11:44:30 +02:00
lain
92caae5923
Undoing: Move undoing blocks to the pipeline everywhere.
2020-05-05 18:02:24 +02:00
lain
a3bb2e5474
Undoing: Move undoing announcements to the pipeline everywhere.
2020-05-05 16:42:34 +02:00
lain
b34debe615
Undoing: Move undoing reactions to the pipeline everywhere.
2020-05-05 16:17:09 +02:00
lain
a3071f0231
Undoing: Move undoing likes to the pipeline everywhere.
2020-05-05 15:08:41 +02:00
Egor Kislitsyn
decaa64f75
Merge branch 'develop' into global-status-expiration
2020-05-05 14:28:54 +04:00
lain
db55dc9445
ActivityPub: Remove react_with_emoji
.
2020-05-05 12:28:28 +02:00
lain
ec24c70db8
ActivityPub: Don't fetch Application
follower counts.
2020-05-04 14:22:54 +02:00
Mark Felder
370e313e2d
Only update follower/following stats for actor types of users and bots.
2020-05-02 13:28:10 -05:00
lain
999d639873
ActivityPub: Remove delete
function.
...
This is handled by the common pipeline now.
2020-04-30 20:13:47 +02:00
lain
6aa116eca7
Create activity handling: Flip it and reverse it
...
Both objects and create activities will now go through the common
pipeline and will be validated. Objects are now created as a side
effect of the Create activity, rolling back a transaction if it's
not possible to insert the object.
2020-04-28 16:26:19 +02:00
lain
b5dc59c8fa
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms
2020-04-28 14:16:21 +02:00
Egor Kislitsyn
764b4f95a8
Merge branch 'develop' into global-status-expiration
2020-04-28 14:13:53 +04:00
Egor Kislitsyn
f1ca917bb0
Merge branch 'develop' into openapi/account
2020-04-27 14:33:00 +04:00