Commit graph

6069 commits

Author SHA1 Message Date
dakkar
77144b058c make the cap of activeRateLimitRequests match the rate limit
It's trivial to have more than 128 requests in flight: open a busy
timeline, scroll a bit down, wait for many notes to arrive, scroll to
the top. The frontend will send "subscribe to note" messages for each
new note that it accumulated, all at once. We don't want to shut down
the connection in those common cases!
2024-08-18 17:57:51 +01:00
dakkar
d03c9f4b62 merge: fix offsetMode in MkPagination - fixes #622 (!599)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/599

Closes #622

Approved-by: Marie <2-Marie@users.noreply.activitypub.software>
Approved-by: Julia Johannesen <julia@insertdomain.name>
2024-08-18 16:52:42 +00:00
dakkar
caa0fecdc9 relax websocket rate limits
* the frontend opens 2 websockets at startup (I'm not completely clear
  why), and that `minInterval:1sec` was breaking the second connection
* as the comment says, "catching up" generates many noteSubscribe
  messages
2024-08-18 15:23:45 +01:00
Marie
38430f8ef3 merge: fix lints (!594)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/594

Approved-by: Marie <2-Marie@users.noreply.activitypub.software>
Approved-by: Amelia Yukii <amelia.yukii@shourai.de>
2024-08-18 13:11:27 +00:00
dakkar
d92402554b merge: Rate limiting for websockets (!598)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/598

Approved-by: Marie <2-Marie@users.noreply.activitypub.software>
Approved-by: Amelia Yukii <amelia.yukii@shourai.de>
2024-08-18 12:09:25 +00:00
Julia Johannesen
3dd993a76a
Add IP and user ID to connection close message 2024-08-17 14:27:43 -04:00
Julia Johannesen
c5f7dcbb7e
Come up with better limits 2024-08-17 14:17:58 -04:00
Julia Johannesen
aff57333d5
Add @types/proxy-addr 2024-08-17 13:12:16 -04:00
Julia Johannesen
9c1c1e9f09
Fix logging stuff 2024-08-17 13:08:46 -04:00
syuilo
76bbc10aa1 fix(backend): 無制限にストリーミングのチャンネルに接続できる問題を修正 2024-08-17 17:54:04 +01:00
Hazel K
5e352033c8 fix error spam from ServerStatsService when running on Windows 2024-08-17 10:00:27 -04:00
Julia Johannesen
6d3f9503ed
Limit number of rate limit requests 2024-08-16 17:13:20 -04:00
dakkar
4cd44130e0 use the correct remote address
we're doing the same thing that Fastify does in the non-streaming
ServerService
2024-08-16 18:00:50 +01:00
dakkar
90e9480b92 fix offestMode in MkPagination - fixes #622
3f73251df5 reworked the way `offsetMode`
is handled, to allow reactive `ComputedRef<boolean>` in addition to a
simple `boolean`, so that custom emoji search could easily switch
between the faster `sinceId`/`untilId` pagination and the slower
`offset` as needed.

Or it would have, if I had written the correct expression! I wrote
`props.offsetMode` instead of `props.pagination.offsetMode`, so it was
always `false`

I have *no idea* how I didn't notice, I swear I tested it ☹

Anyway, factoring out the nested ternaries makes the whole thing
clearer and less prone to mistakes. And I have tested it, this time.
2024-08-16 14:41:04 +01:00
dakkar
311a31da58 rough rate limiting for websockets 2024-08-15 11:35:51 +01:00
dakkar
01958da57f merge: fix webfinger for instances without a /host-meta (!593)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/593

Approved-by: Amelia Yukii <amelia.yukii@shourai.de>
Approved-by: Marie <marie@kaifa.ch>
2024-08-06 20:49:11 +00:00
dakkar
9672f0b48e fix comparison (thanks linter) 2024-08-06 21:21:38 +01:00
dakkar
03d9288f44 fix spacing (thanks linter) 2024-08-06 21:21:29 +01:00
dakkar
f33aedfc9f merge: fix env variable type (!592)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/592

Approved-by: Marie <marie@kaifa.ch>
Approved-by: Tess K <me@thvxl.se>
2024-08-06 19:41:26 +00:00
dakkar
8d29df64fa fix webfinger for instances without a /host-meta
we were inconsistent with the colons, thanks to usedbunny for
noticing!
2024-08-06 19:07:01 +01:00
dakkar
4e7df7a5f2 merge: Remove infinite caches to prevent memory leak (!587)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/587

Closes #600 and #601

Approved-by: Amelia Yukii <amelia.yukii@shourai.de>
Approved-by: Marie <marie@kaifa.ch>
2024-08-06 16:51:18 +00:00
dakkar
790c75b1a3 merge: Add icon for moving files/folders - for !583 (!586)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/586

Approved-by: dakkar <dakkar@thenautilus.net>
Approved-by: fEmber <acomputerdog@gmail.com>
2024-08-06 16:33:17 +00:00
Hazel K
9930c64f2d Fix timeout comments
Co-authored-by: かっこかり <67428053+kakkokari-gtyih@users.noreply.github.com>
2024-08-06 12:13:17 -04:00
Marie
d798809875 upd: add back in timestamps on src 2024-08-06 15:54:18 +00:00
Marie
9d4d2a1fad upd: align font with new repo 2024-08-06 15:35:52 +00:00
dakkar
2f97b5976f merge: use XMLSerializer for toMastoApiHtml - fixes #556 (!591)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/591

Closes #556

Approved-by: Marie <marie@kaifa.ch>
Approved-by: fEmber <acomputerdog@gmail.com>
2024-08-06 14:09:35 +00:00
dakkar
9de422280f merge: feat: implement attachLdSignatureForRelays to control signing of Relayed activities (#599) (!579)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/579

Closes #599

Approved-by: dakkar <dakkar@thenautilus.net>
Approved-by: Marie <marie@kaifa.ch>
2024-08-06 10:40:14 +00:00
dakkar
d899eb30b1 merge: delete old emoji file when replaced - fixes #608 (!589)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/589

Closes #608

Approved-by: fEmber <acomputerdog@gmail.com>
Approved-by: Marie <marie@kaifa.ch>
2024-08-06 10:39:41 +00:00
dakkar
5c3a4925d6 merge: Improve the check_connect script (!588)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/588

Approved-by: fEmber <acomputerdog@gmail.com>
Approved-by: dakkar <dakkar@thenautilus.net>
Approved-by: Marie <marie@kaifa.ch>
2024-08-06 10:39:27 +00:00
dakkar
5565985f84 appease the linter 2024-08-06 11:35:03 +01:00
dakkar
8afe46122d fix type for env variable 2024-08-06 11:32:26 +01:00
dakkar
712af44de4 merge: don't send real-time updates of replies to blocked users #457 #573 (!566)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/566

Approved-by: Tess K <me@thvxl.se>
Approved-by: fEmber <acomputerdog@gmail.com>
2024-08-06 09:26:40 +00:00
dakkar
f936db0599 merge: use correct user for preview/link of collapsed parent - fixes #575 (!581)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/581

Closes #575

Approved-by: Marie <marie@kaifa.ch>
Approved-by: fEmber <acomputerdog@gmail.com>
2024-08-06 09:23:30 +00:00
dakkar
76a966041f merge: Fall back to port 3000 if none is specified (!584)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/584

Approved-by: dakkar <dakkar@thenautilus.net>
Approved-by: fEmber <acomputerdog@gmail.com>
2024-08-06 09:23:08 +00:00
dakkar
b93494d746 merge: make sure that sensitive is a boolean - fixes #596 (!590)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/590

Closes #596

Approved-by: fEmber <acomputerdog@gmail.com>
Approved-by: Marie <marie@kaifa.ch>
2024-08-06 09:20:53 +00:00
dakkar
61c13241ba use XMLSerializer for toMastoApiHtml - fixes #556
the `inline` bit is not pretty, but does the job
2024-08-06 10:13:53 +01:00
4censord
0386e52d6f
Impove the check_connect script 2024-08-06 00:35:35 +02:00
dakkar
58d329e3bd make sure that sensitive is a boolean - fixes #596
Some remote instances may send garbage. If the `sensitive` value
passed to `driveService.uploadFromUrl` is not a boolean, eventually
we'll get an exception from the database complaining about that. This
change avoids that problem.
2024-08-05 10:12:27 +01:00
dakkar
1e86cba7dc delete old emoji file when replaced - fixes #608
it's the same code that 5f7fc54ee9 added
to `delete` and `deleteBulk`, with the extra check that we're not
deleting the same file we're setting
2024-08-05 09:27:06 +01:00
Hazel K
ba09338268 optimize cache GC by stopping early 2024-08-04 09:58:01 -04:00
Marie
4ed4547f4a upd: add icon for moving files/folders 2024-08-03 22:45:49 +00:00
Hazel K
672f1ea684 tune cache lifetimes 2024-08-03 14:49:06 -04:00
Hazel K
3688f1dadf implement pull-through caching 2024-08-03 14:09:08 -04:00
Hazel K
613706f6b8 add missing awaits to internally synchronize caches 2024-08-03 14:02:18 -04:00
Hazel K
b1f1e3eb0e encapsulate other caches 2024-08-03 13:54:59 -04:00
Hazel K
bc236a4bd2 remove infinity caches 2024-08-03 13:42:23 -04:00
4censord
e1b0faa18f
Fall back to port 3000 if none is specified
Originally, because `parseInt` can return `NaN`, sharkey would happily
try to listen on port `NaN`.
2024-08-03 17:43:02 +02:00
4censord
12aeaa5f95
Complain if no config-files are loaded 2024-08-03 17:42:59 +02:00
dakkar
955fda6e1c also allow db.disableCache 2024-08-03 15:29:09 +01:00
dakkar
16601fa766 allow overriding more config settings via env vars
`id` in particular is necessary if one wants to do a working basic
configuration without a config file at all, thanks to @4censord for
making me notice
2024-08-03 14:56:29 +01:00