1
0
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](https://github.com/Type4ny-Project/Type4ny/commit/271c872c97f215ef5d8e0be62251dd422a52e5b1)) 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