Commit graph

16544 commits

Author SHA1 Message Date
Mark Felder
526a57ff9f Remove validation for cc fields on Follow Accept/Reject 2024-08-07 21:51:22 -04:00
Mark Felder
fcda1b5e2a Improve variable name 2024-08-07 14:46:39 -04:00
Mark Felder
b25f67372b Improve the FollowValidator 2024-08-07 14:42:44 -04:00
Mark Felder
8f15000c0f Do not require a cc field when validating an incoming Follow activity
The cc field is not required and the code was keeping the cc if it existed on an activity or replacing it with the default of an empty list when casting. If any Follow activity was received with a cc field, it would attempt to keep it.

This was noticed in !4208 where we would craft Follow requests with a cc value of nil.
2024-08-07 14:38:29 -04:00
Mark Felder
d2d07bfe4b Add test for Follow objects with a cc 2024-08-07 14:04:20 -04:00
feld
45611ed325 Merge branch 'workerhelper-fix' into 'develop'
Fix WebPush notifications not generating jobs

See merge request pleroma/pleroma!4210
2024-08-07 17:37:44 +00:00
Mark Felder
6900040fd0 Update changelog 2024-08-07 13:03:25 -04:00
Mark Felder
721005b312 Fix WebPush notifications not generating jobs
Dialyzer pointed this one out.

The WorkerHelper removal in !4166 was missing this Oban.insert() and tests were not noticing any problems because we mocked the Push.send function instead of executing it and checking for the Oban job.
2024-08-07 13:00:31 -04:00
feld
c81c663db3 Merge branch 'commonapi-consistency' into 'develop'
Fix CommonAPI.follow/2 return values order

See merge request pleroma/pleroma!4209
2024-08-07 17:00:16 +00:00
Mark Felder
06e8ece4cc Fix CommonAPI.follow/2 which returned users in the reverse order they were provided to the function 2024-08-07 12:39:58 -04:00
feld
351a306d46 Merge branch 'stream-follow-relationships-count' into 'develop'
StreamerView: Do not leak follows count if hidden

See merge request pleroma/pleroma!4205
2024-08-07 16:17:58 +00:00
Mark Felder
9d27a074c1 Merge branch 'stream-follow-relationships-count' into develop 2024-08-07 11:48:52 -04:00
Mark Felder
ad7fe4e95d Tests to confirm wanted behavior 2024-08-07 11:47:59 -04:00
Mark Felder
7d33b53908 Improve the variable naming 2024-08-07 11:47:43 -04:00
feld
a2490ddd9f Merge branch 'remove/workerhelper' into 'develop'
Remove WorkerHelper

See merge request pleroma/pleroma!4166
2024-08-07 13:26:41 +00:00
Mark Felder
c284c4e3e6 Extract the logic from the map 2024-08-07 09:19:33 -04:00
feld
c0195895d2 Merge branch 'publisher-cc-fix' into 'develop'
Fix follow requests which get stuck pending

See merge request pleroma/pleroma!4208
2024-08-06 17:14:30 +00:00
Mark Felder
0bfe592048 Credo 2024-08-06 12:48:36 -04:00
Mark Felder
706fc7e1ec Remove unused mocks 2024-08-06 12:24:08 -04:00
Mark Felder
a01f0f0f03 Changelog 2024-08-06 12:20:12 -04:00
Mark Felder
9ae9e2fc5c Use a struct to hold the prepared data passed to publish_one/1 2024-08-06 12:16:06 -04:00
Mark Felder
83fcf42c70 Force cc to an empty list if undefined 2024-08-06 12:03:44 -04:00
Mark Felder
30eef434a9 Test that cc on a published Follow is an empty list 2024-08-06 11:59:53 -04:00
Mark Felder
21fee42157 Test Factory: ensure remote users have a valid inbox
Without a valid inbox we can't generate the publish_one Oban jobs
2024-08-06 11:54:18 -04:00
Mark Felder
0319d1ad3c Remove test, logic was flawed
Before splitting the publish_one/1 function into two parts for testing purposes we had logic that checked the keys of params for :unreachable_since and if it was absent it did not set the instance as reachable. There is also a test to validate that when unreachable_since is nil, we set it as reachable.

However the default value of :unreachable_since when an instance is reachable is nil. The test appears to be testing a scenario that does not exist in the real world, and with this refactor we will always have an :unreachable_since key.

We were attempting to update the reachability upon every successful federation because we always include it when we generate the publish_one jobs.
2024-08-06 11:17:34 -04:00
Mark Felder
f8bdcaa161 Split Federator.publish_one/1 into a second function called prepare_one/1 2024-08-06 11:16:04 -04:00
Mark Felder
16ba2742b7 Use the normal Oban test assertions 2024-08-06 09:55:09 -04:00
Haelwenn
9cf684d661 Merge branch 'get-statuses-param' into 'develop'
Support `id` param in `GET /api/v1/statuses`

See merge request pleroma/pleroma!4204
2024-08-05 07:34:05 +00:00
marcin mikołajczak
52f7033f7a StreamerView: Do not leak follows count if hidden
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-08-04 16:03:25 +02:00
marcin mikołajczak
de9194893e Support id param in GET /api/v1/statuses
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-08-03 18:28:43 +02:00
feld
b389b85d77 Merge branch 'gun/snooze' into 'develop'
Gun: Publisher job behavior improvement

See merge request pleroma/pleroma!4202
2024-08-02 13:49:11 +00:00
Mark Felder
1f986ec713 Gun: Publisher job behavior improvement
Gun's connection pool also returns an error if duplicate workers are launched simultaneously. Snooze on this error as well, and lower the snooze to 3 seconds with the optimism that the connection will still be open by then and the delivery can be completed quickly.

The original setting of 30 seconds is pretty high and means there's an unnatural lag between deliveries of activities destined to the same server that were created at nearly the same time. This configuration should be more efficient.
2024-08-02 09:25:18 -04:00
lain
8f1866e3ad Merge branch 'stable' into 'develop'
Stable

See merge request pleroma/pleroma!4201
2024-08-02 10:45:44 +00:00
lain
36d469cf02 Merge branch 'release/2.7.0' into 'stable'
v2.7.0

See merge request pleroma/pleroma!4179
2024-08-01 08:53:29 +00:00
Lain Soykaf
a5d32aab50 Mix: Update version to 2.7.0 2024-08-01 11:49:57 +04:00
Lain Soykaf
574bc1fa5f Frontend: Update to 2.7.0 2024-08-01 11:49:36 +04:00
Lain Soykaf
2e6ddc4991 Prepare changelog 2024-08-01 11:44:05 +04:00
feld
f2dc706f6f Merge branch 'fix/disclose_client' into 'develop'
Fix User.disclose_client never working correctly

See merge request pleroma/pleroma!4199
2024-07-31 18:38:49 +00:00
Mark Felder
e6951e7e40 Fix User.disclose_client never working correctly
Our test environment cheats by constructing a conn with a custom oauth_access/2 function. This assigns a :token to the conn but due to the way it is constructed it has the :user preloaded. When the OAuth Plug fetches a token it does not preload the user, so the check for user.disclose_client was always nil and assumed to be false.

Preloading the :user ensures the test environment matches reality.
2024-07-31 14:14:35 -04:00
feld
f646b0554f Merge branch 'fix-migration' into 'develop'
Fix publisher job migration error

See merge request pleroma/pleroma!4198
2024-07-30 16:29:48 +00:00
Mark Felder
b50261262e Fix publisher job migration error 2024-07-30 11:48:10 -04:00
Mark Felder
d56b889cf1 Update changelog 2024-07-30 11:34:53 -04:00
Mark Felder
1d3a92be11 Remove :workers config from ConfigDB 2024-07-30 11:34:53 -04:00
Mark Felder
52e9bec156 Remove WorkerHelper 2024-07-30 11:34:48 -04:00
feld
355b028c23 Merge branch 'hackney-pool-timeout' into 'develop'
Align Hackney and Gun connection pool timeouts

See merge request pleroma/pleroma!4197
2024-07-30 15:33:17 +00:00
feld
a90838accf Merge branch 'federation/increase' into 'develop'
Increase federator outgoing job parallelism

See merge request pleroma/pleroma!4196
2024-07-30 15:31:18 +00:00
feld
18469f3b1d Merge branch 'oban/simpler-publish' into 'develop'
Publisher job simplification

See merge request pleroma/pleroma!4194
2024-07-30 15:23:28 +00:00
Mark Felder
49f46220ff Align Hackney and Gun connection pool timeouts 2024-07-30 11:11:30 -04:00
Mark Felder
a6119210b7 Increase federator outgoing job parallelism 2024-07-30 11:06:55 -04:00
Mark Felder
1bce582f0d Fix migration crashing due to Oban not running
We can use Pleroma.Repo to fetch the jobs
2024-07-30 10:58:10 -04:00