Commit graph

4349 commits

Author SHA1 Message Date
Hazelnoot
ec11092e8d fix cherry-pick error: restore CacheService.findOptionalUserById 2025-07-27 18:09:42 +01:00
Hazelnoot
84ca3621d8 fix users/report-abuse endpoint being really slow 2025-07-27 18:08:38 +01:00
Hazelnoot
51ad31b5a4 merge: disable outgoing mastodon quotes *FOR STABLE* (!1169)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/1169

Approved-by: Hazelnoot <acomputerdog@gmail.com>
Approved-by: Marie <github@yuugi.dev>
2025-07-27 15:30:10 +00:00
dakkar
b5034f673c merge: mark grouped notifs by oldest id - sort-of fix 1139 (!1152)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/1152

Approved-by: Hazelnoot <acomputerdog@gmail.com>
Approved-by: Marie <github@yuugi.dev>
2025-07-27 14:42:29 +00:00
Hazelnoot
38616ab246 disable outgoing mastodon quotes 2025-07-16 10:58:05 +01:00
dakkar
c927c30567 mark grouped notifs by oldest id - sort-of fix 1139
Misskey's code does the same, but our groups behave differently enough
that this may be not the best choice

for example, let's say we have:

- notifications 1-5 for reaction to note A
- notifications 6-8 for reaction to note B
- notifications 9-12 for reaction to note A
- notification 13-19 for non-groupable events
- notification 20 for reaction to note A

and that events happened one every minute (so the last notification is
from 20 minutes ago)

client requests the most recent 10 notifications; we fetch
notifications 1-10, and reply:

- grouped id 6 for reactions 6-8 to note B
- grouped id 10 for reactions 1-5, 9-10 to note A

then the client requests 10 more notifications, untilId=10; we fetch
notifications 11-20, and reply:

- non-grouped notifications 13-19
- grouped id 20 for reactions 11,12,20 to note A

because we sort by id, and also the `createdAt` marks the _newest_
event in each group, the client will then show:

  6 reactions to note B, 6 minutes ago
  4 reactions to note A, 1 minute ago
  notifications 13-19, 13 minutes to 19 minutes ago
  3 reactions to note A, 11 minutes ago

I don't know how to make this work better ☹
2025-07-03 14:16:20 +01:00
dakkar
76c0b646b1 recalculate size&hash after web-optimising videos 2025-07-02 16:43:24 +01:00
dakkar
169c06d4ca merge: fix(backend): Send Abuse Reports To Set Maintainer E-Mail (!1127)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/1127

Closes #1069

Approved-by: dakkar <dakkar@thenautilus.net>
Approved-by: Hazelnoot <acomputerdog@gmail.com>
2025-06-19 15:54:55 +00:00
Lilly Schramm
ab5c247f09 refactor(backend): Remove Useless Variable 2025-06-18 20:30:40 +02:00
Lilly Schramm
372e141bcf refactor(backend): Resolve Nested Conditionals 2025-06-18 20:25:32 +02:00
Lilly Schramm
789deeabac fix(backend): Send Abuse Reports To Set Maintainer E-Mail 2025-06-18 20:08:06 +02:00
Hazelnoot
969fdc037c don't publish null updated property 2025-06-18 12:54:22 -04:00
Hazelnoot
72a512a59d fix tests 2025-06-18 10:46:49 -04:00
Hazelnoot
54d99c9e8c fold renderUpNote into renderNote 2025-06-18 10:38:16 -04:00
Hazelnoot
82b90d02ae don't allow boosts to be fetched as a note over AP 2025-06-18 10:37:30 -04:00
Hazelnoot
1aeaee7f7c filter boosts out of pinned notes when federating 2025-06-18 10:37:11 -04:00
Hazelnoot
6a8bc6741e support boosts and edits in renderNoteOrRenoteActivity 2025-06-18 10:36:18 -04:00
Hazelnoot
c35da729fc merge: Check privacy settings in charts/user/following (resolves #1107) (!1124)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/1124

Closes #1107

Approved-by: dakkar <dakkar@thenautilus.net>
Approved-by: Marie <github@yuugi.dev>
2025-06-14 19:49:26 +00:00
Hazelnoot
7a25ff3d65 check privacy settings in charts/user/following 2025-06-14 14:14:02 -04:00
Marie
db4f6d50a4 merge: group notifications regardless of when they happened - fix #633 (!1123)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/1123

Closes #633

Approved-by: Hazelnoot <acomputerdog@gmail.com>
Approved-by: Marie <github@yuugi.dev>
2025-06-14 18:07:07 +00:00
dakkar
b0275f86fe annotate types 2025-06-14 18:38:18 +01:00
Hazelnoot
f6964f6e27 merge: Show signup reason in user admin screen (resolves #1090) (!1114)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/1114

Closes #1090

Approved-by: dakkar <dakkar@thenautilus.net>
Approved-by: Marie <github@yuugi.dev>
2025-06-14 17:30:17 +00:00
Hazelnoot
e80187b8f1 merge: Don't unfollow suspended users (!1122)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/1122

Approved-by: dakkar <dakkar@thenautilus.net>
Approved-by: Marie <github@yuugi.dev>
2025-06-14 17:28:19 +00:00
Marie
ec5ea3cf17 merge: fix some regressions due to recent merges (!1112)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/1112

Approved-by: Hazelnoot <acomputerdog@gmail.com>
Approved-by: Marie <github@yuugi.dev>
2025-06-14 17:26:43 +00:00
Hazelnoot
93885530c8 merge: Don't convert empty HTML elements to MFM (resolves #982) (!1116)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/1116

Closes #982

Approved-by: dakkar <dakkar@thenautilus.net>
Approved-by: Marie <github@yuugi.dev>
2025-06-14 17:13:16 +00:00
Marie
f58badade8 merge: Hide admin secrets from the mod log (resolves #44) (!1120)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/1120

Closes #44

Approved-by: dakkar <dakkar@thenautilus.net>
Approved-by: Marie <github@yuugi.dev>
2025-06-14 16:16:58 +00:00
dakkar
96263dd93d merge: Set X-Robots-Tag to disable indexing API endpoints (resolves #756) (!1119)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/1119

Closes #756

Approved-by: dakkar <dakkar@thenautilus.net>
Approved-by: Marie <github@yuugi.dev>
2025-06-14 16:09:40 +00:00
dakkar
c882a4294d group notifications regardless of when they happened - fix #633 2025-06-14 17:02:00 +01:00
dakkar
9b9918cce9 remove unused variables 2025-06-14 13:47:54 +01:00
Hazelnoot
9fc63dc950 don't unfollow anyone when suspending a user 2025-06-14 01:06:56 -04:00
Hazelnoot
6da1165e29 hide admin secrets from the mod log 2025-06-14 00:24:32 -04:00
Hazelnoot
a5f5de46da fix conversion of empty links to mfm URL 2025-06-13 23:23:35 -04:00
Hazelnoot
b44abe0eaa set X-Robots-Tag to disable indexing API endpoints 2025-06-13 23:18:06 -04:00
Hazelnoot
8d628aa50b avoid duplicating all the childNodes.length checks 2025-06-13 21:08:20 -04:00
Hazelnoot
b3548cde5b fix TS errors 2025-06-13 21:03:12 -04:00
Hazelnoot
a524a9cea8 skip empty elements in MfmService.fromHtml 2025-06-13 20:43:46 -04:00
Hazelnoot
8080422c82 throw S3 errors to prevent silent failures 2025-06-13 20:37:37 -04:00
Hazelnoot
aa40b8ca0d show signup reason in user admin screen 2025-06-13 20:01:06 -04:00
dakkar
01872419c3 fix UserEntityService packMany hints
* there's no need to pre-load follow requests for many users, since
  at most we'll pack them for only 1 user (the one requesting the
	data)

* similarly, it makes sense to preload security keys for many users
  if we're serving a moderator's request, but if not, we need at most 1
  user's keys (the requesting user's), and we can let `.pack()` fetch
  those

* we always need to preload relations when serving a detailed
  request, not only when the set of users to pack does not include the
  requesting user
2025-06-13 10:20:32 +01:00
dakkar
87f6895ca9 avoid pushing to timelines of remote users 2025-06-13 10:20:30 +01:00
dakkar
99bf315351 merge: Fix uncaught exception hooks and add more shutdown logging. (!1111)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/1111

Approved-by: Marie <github@yuugi.dev>
Approved-by: dakkar <dakkar@thenautilus.net>
2025-06-13 07:14:28 +00:00
Hazelnoot
3ce5471414 add additional process exit loggers 2025-06-12 21:37:28 -04:00
Hazelnoot
0a56ce92ca use uncaughtExceptionMonitor instead uncaughtException 2025-06-12 21:36:46 -04:00
Hazelnoot
f8d4236a15 downgrade htmlparser2 to match cheerio 2025-06-12 21:18:52 -04:00
Hazelnoot
b8dd7f4a95 update to summaly 5.2.2 2025-06-12 21:11:17 -04:00
Hazelnoot
6b77c8b12b correctly separate production / development dependencies 2025-06-12 21:11:16 -04:00
Hazelnoot
ce248e48b3 use pnpm package alias for @transfem-org/summaly 2025-06-12 21:11:16 -04:00
Hazelnoot
7eca06d672 use pnpm package alias for @transfem-org/sfm-js 2025-06-12 21:11:16 -04:00
Hazelnoot
1a964cb6c0 pcleanup dependencies:
* Consolidate multiple different HTML/XML/RSS libraries to use the Cheerio stack
* Remove unused deps
* Move dev dependencies to correct section
* Pin versions where missing
2025-06-12 21:11:16 -04:00
Hazelnoot
20370e5e75 merge: Emit log messages with correct level (!1097)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/1097

Approved-by: dakkar <dakkar@thenautilus.net>
Approved-by: Marie <github@yuugi.dev>
2025-06-12 19:06:43 +00:00