Commit graph

1612 commits

Author SHA1 Message Date
Hazelnoot
fd0ecb22cf merge: Fix rate limits under multi-node environments (!809)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/809

Approved-by: dakkar <dakkar@thenautilus.net>
Approved-by: Marie <github@yuugi.dev>
2024-12-15 16:53:48 +00:00
dakkar
9b1fc96908 fix passing rate limiting info via ApiError 2024-12-13 16:18:10 +00:00
dakkar
0c1dd73341 on 429, retry fetchAccount instead of failing
when switching between accounts, with many tabs open (10 seem to be
enough), they all hit the endpoint at the same time, and some get rate
limited.

treating a 429 as a fatal error confuses the frontend, which ends up
logging the user out of all their accounts.

this code makes the frontend retry, after waiting the appropriate
amount of time.

seems to work fine in my testing.
2024-12-13 16:18:10 +00:00
Hazelnoot
1c65f23445 safer typings for userNeedsPublishing and profileNeedsPublishing 2024-12-12 08:13:44 -05:00
Hazelnoot
02b600c9da federate profile when changing enableRss value 2024-12-12 08:12:44 -05:00
Hazelnoot
fe37aa2ce8 Add "enable RSS" user privacy toggle 2024-12-12 08:11:55 -05:00
dakkar
943c6414d8 merge: Enable by default and federate "hide online status" (resolves #823) (!807)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/807

Closes #823

Approved-by: Marie <github@yuugi.dev>
Approved-by: dakkar <dakkar@thenautilus.net>
2024-12-12 13:08:19 +00:00
Hazelnoot
00c4637b11 federate profile when hideOnlineStatus changes 2024-12-12 07:34:14 -05:00
Hazelnoot
755ff8783b clarify naming of legacy rate limit methods 2024-12-11 14:07:25 -05:00
Hazelnoot
1377873b1d fix typos and wording in SkRateLimiterService.md 2024-12-11 11:16:30 -05:00
Hazelnoot
0f5c78a69b increase chart rate limits (fixes 429s in control panel / info pages) 2024-12-11 09:10:56 -05:00
Hazelnoot
0ea9d6ec5d use atomic variant of Leaky Bucket for safe concurrent rate limits 2024-12-11 09:10:11 -05:00
Hazelnoot
407b2423af fix redis transaction implementation 2024-12-10 19:01:35 -05:00
Hazelnoot
ead781900d enable rate limits for dev environment 2024-12-09 19:04:59 -05:00
Hazelnoot
9daafca155 fix rate limits under multi-node environments 2024-12-09 19:04:06 -05:00
Marie
f02d099413
fix deletion of scheduled note 2024-12-09 06:15:29 +01:00
Marie
152cc07483
Apply suggestions 2024-12-09 05:58:25 +01:00
Marie
fc9d777dc3
upd: add notification for failures, add reasons for failure, apply suggestions 2024-12-09 05:32:51 +01:00
Marie
4f58b8de20
fix: drive content not being loaded 2024-12-09 05:31:36 +01:00
NoriDev
2528508cff
feat: 노트 게시를 예약할 수 있음 (yojo-art/cherrypick#483, [Type4ny-Project/Type4ny@271c872c](271c872c97)) 2024-12-09 05:31:03 +01:00
dakkar
92ffd2a5fc merge: Implement new SkRateLimiterServer with Leaky Bucket rate limits (resolves #592) (!799)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/799

Closes #592

Approved-by: dakkar <dakkar@thenautilus.net>
Approved-by: Marie <github@yuugi.dev>
2024-12-08 20:49:07 +00:00
Hazelnoot
2946f85592 fix type errors from new rate limit definitions 2024-12-08 13:22:07 -05:00
Hazelnoot
fc4599ec07 fix rate limit scaling (it's no longer inverted) 2024-12-08 12:02:58 -05:00
Hazelnoot
91c9b67cb0 bypass rate limits when factor is 0 2024-12-08 11:58:57 -05:00
Hazelnoot
6fa0f2230e increase rate limit for /api/endpoint based on real-world testing 2024-12-08 11:56:48 -05:00
CenTdemeern1
85bbfd2e2b Resolve frontend/backend contradiction for home visibility embeds
This now uses the same check from `packages/frontend/src/scripts/get-note-menu.ts`
2024-12-08 17:52:26 +01:00
Hazelnoot
7c002ce56e move all Rate Limit type defs to rate-limit-utils.ts 2024-12-08 11:33:57 -05:00
Hazelnoot
8b091f77ca check for invalid rate limit inputs 2024-12-08 09:46:49 -05:00
Hazelnoot
a7a1edc92e fix NaN from extremely high rate limits 2024-12-08 09:22:38 -05:00
Hazelnoot
2781f53d6b support fractional rate limit scaling 2024-12-08 08:32:05 -05:00
Hazelnoot
afb026ebea fix import order in SigninWithPasskeyApiService 2024-12-08 07:49:06 -05:00
Hazelnoot
fc5399a67d revert un-needed changes to RateLimiterService 2024-12-08 07:47:52 -05:00
Hazelnoot
f6b256620b separate SkRateLimiterService from RateLimiterService and update all usages 2024-12-07 13:13:19 -05:00
Hazelnoot
29c3beaa62 respect rate limit factor in FileServerService 2024-12-07 12:18:42 -05:00
Hazelnoot
32635ecc25 fix rate limit storage in redis 2024-12-07 12:15:38 -05:00
Hazelnoot
8239ce4282 fix incorrect X-RateLimit-Remaining header 2024-12-07 12:14:42 -05:00
Hazelnoot
7698db88e5 fix DI in SkRateLimiterService 2024-12-07 12:14:25 -05:00
Hazelnoot
ffc2737478 implement SkRateLimiterService with Leaky Bucket rate limiting 2024-12-07 10:22:49 -05:00
Ada
6a4ed3a3ea
Fix Content-Length resetting for partial content length requests 2024-12-04 19:59:30 +00:00
Julia
52976588a7 merge: Bump develop version (!789)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/789
2024-11-28 06:15:32 +00:00
dakkar
9309872cff simpler check for "property present" 2024-11-27 21:25:54 +00:00
dakkar
3ea85b14a3 silence linter
those objects always have the normal prototype, and can't have
`hasOwnProperty` redefined, let me call it normally

(otherwise I'd have to write
`Object.prototype.hasOwnProperty.call(newUser, field)` and that's
ugly)
2024-11-27 21:01:12 +00:00
dakkar
3164e7b4fc merge: only "publish to followers" when things really change - fixes #733 (!781)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/781

Closes #733

Approved-by: Hazelnoot <acomputerdog@gmail.com>
Approved-by: Marie <github@yuugi.dev>
2024-11-27 20:41:37 +00:00
Marie
531a003a2a merge: embed video thumbnail (!782)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/782

Approved-by: Hazelnoot <acomputerdog@gmail.com>
Approved-by: Marie <github@yuugi.dev>
2024-11-27 19:20:54 +00:00
dakkar
1626e50fbf expose video thumbnail to 3rd parties "cards" 2024-11-27 11:23:32 +00:00
dakkar
fc277839b6 only "publish to followers" when things really change - fixes #733 2024-11-27 10:36:19 +00:00
dakkar
57b31366e5 fix XRD+XML serialisation of Alias 2024-11-27 10:06:21 +00:00
dakkar
1ec5e846c5 merge: Add aliases to webfinger request. (!778)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/778

Approved-by: Hazelnoot <acomputerdog@gmail.com>
Approved-by: dakkar <dakkar@thenautilus.net>
2024-11-27 09:29:33 +00:00
piuvas
f1168f0165
add profile link to aliases 2024-11-26 20:31:20 -03:00
Hazelnoot
a47590e64c add shared (cross-resource) rate limit for proxy 2024-11-25 13:03:51 -05:00