Commit graph

4568 commits

Author SHA1 Message Date
bunnybeam
55022826cf
consistent styling for duplicate mod action checks 2025-07-14 19:40:04 +01:00
bunnybeam
92d87f955f
remove index on confetti column 2025-07-14 19:32:42 +01:00
bunnybeam
0191ea8844
fix admin/unnsfw-user not working 2025-07-10 22:49:00 +01:00
bunnybeam
eca81b6494
add various checks to avoid duplicate mod actions 2025-07-10 18:29:57 +01:00
bunnybeam
d023fb3389
return instead of erroring when suspending a suspended user 2025-07-10 16:19:55 +01:00
bunnybeam
7581b5b40b
prevent suspending a user who is already suspended 2025-07-10 15:45:21 +01:00
bunnybeam
45bf8262aa
implement optional confetti on announcements 2025-07-07 20:03:28 +01:00
Hazelnoot
c0b93364c0 disable outgoing mastodon quotes 2025-07-04 12:54:52 -04: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
Lilly Schramm
0f6c5d27ec fix: Do Not NULL Descriptions 2025-06-30 08:47:44 +02:00
Hazelnoot
be1063238f merge: Enable NestJS shutdown hooks for clean exit (!1145)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/1145

Approved-by: dakkar <dakkar@thenautilus.net>
Approved-by: Marie <github@yuugi.dev>
2025-06-29 19:23:55 +00:00
dakkar
13d045d813 merge: misskey 2025.5.0 (!1028)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/1028

Approved-by: Hazelnoot <acomputerdog@gmail.com>
Approved-by: Marie <github@yuugi.dev>
2025-06-29 09:54:12 +00:00
Marie
fad58ddc1c merge: unique constraint for registry_item - fixes #1121 (!1139)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/1139

Closes #1121

Approved-by: Hazelnoot <acomputerdog@gmail.com>
Approved-by: Marie <github@yuugi.dev>
2025-06-28 22:49:51 +00:00
Marie
f4fe14f5b7 merge: feat: Add Bio Length Setting (!1136)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/1136

Approved-by: dakkar <dakkar@thenautilus.net>
Approved-by: Marie <github@yuugi.dev>
2025-06-28 22:47:41 +00:00
Marie
559a7566ab merge: smarter "clean remote files" - fixes #801 (!1143)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/1143

Closes #801

Approved-by: Hazelnoot <acomputerdog@gmail.com>
Approved-by: Marie <github@yuugi.dev>
2025-06-28 22:47:27 +00:00
Hazelnoot
957116d04a merge: Hide muted threads and notes from timelines (!1142)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/1142

Approved-by: dakkar <dakkar@thenautilus.net>
Approved-by: Marie <github@yuugi.dev>
2025-06-26 17:38:15 +00:00
Hazelnoot
d7b94e756d fix websockets not working 2025-06-26 09:32:14 -04:00
Hazelnoot
088fe15be5 improve shutdown logic somewhat 2025-06-25 22:51:32 -04:00
Hazelnoot
168a364162 fix redis listener leak in StreamingApiServerService.ts 2025-06-25 22:51:16 -04:00
Hazelnoot
4e609478f8 add additional shutdown logging 2025-06-25 22:16:26 -04:00
Hazelnoot
c79d66d48b fix disposal of ServerStatsService and QueueStatsService 2025-06-25 22:16:06 -04:00
dakkar
872258b04c embed git commit info in nodeinfo&c
this will make it much easier to debug problems for instances that run
unreleased versions!

when run on a tagged commit, `git describe --tags` prints the tag name;
otherwise it prints something like `2025.4.3-32-ga4c0ef824c` which
means:

- the closest tag is 2025.4.3
- there are 32 commits between that tag and this commit
- this commit's id is `a4c0ef824c` (the `g` is just a prefix)

notice that the version as reported by the frontend (in
`/about-sharkey` for example) is _not_ changed, that one is still
sourced from `/package.json` (so, for example, you don't get a
"sharkey has been updated!" pop-up every time)
2025-06-25 22:15:06 +01:00
dakkar
c4c6aea939 merge: use a *very* long statement_timeout for migrations (!1132)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/1132

Approved-by: Hazelnoot <acomputerdog@gmail.com>
Approved-by: Marie <github@yuugi.dev>
2025-06-25 20:35:15 +00:00
Hazelnoot
d4105dee0c enable NestJS shutdown hooks 2025-06-25 16:28:07 -04:00
dakkar
bddb6afa5d handle jobs created without the extra arguments
just in case there's any in the queue when people upgrade
2025-06-24 17:16:30 +01:00
dakkar
50ca5e8688 pass arguments to CleanRemoteFiles job 2025-06-24 17:15:21 +01:00
dakkar
c68b8d6e7c smarter "clean remote files"
this should (optionally) skip in-use files, and files that have been
seen recently
2025-06-24 17:15:21 +01:00
dakkar
4651edbc4e better upsert query
the default `.upsert` method would clobber the `id`
2025-06-24 13:47:07 +01:00
Hazelnoot
f67be0a733 fix DI for stream connection 2025-06-23 20:13:24 -04:00
Hazelnoot
d0bd12b410 fix note mutings not applying to websocket 2025-06-23 16:08:18 -04:00
Hazelnoot
bd22ae0d80 cache recent favorites, renotes, and reactions in the connection to speed up rePackNote 2025-06-23 16:05:57 -04:00
Hazelnoot
4c2a0fed63 fix streaming API notes missing reactions, not always being hidden, and having incorrect values for the isRenoted, isFavorited, isMutingThread, and isMutingNote properties 2025-06-23 15:45:47 -04:00
Hazelnoot
8cbe1344f6 fix Note.isRenoted 2025-06-23 13:47:04 -04:00
Hazelnoot
d2b4035f7a add missing GROUP BY to threadMutingsCache / noteMutingsCache 2025-06-23 13:47:04 -04:00
Hazelnoot
7200c3d6c8 implement note mutings and move favorited/renoted status into note entity directly 2025-06-23 13:47:04 -04:00
Hazelnoot
87582034b5 expose thread mute status as Note.isMuting property 2025-06-23 13:47:04 -04:00
Hazelnoot
7d0f995c9b hide muted threads from timelines 2025-06-23 13:47:04 -04:00
JeDaYoshi
afd57f99c5
fix Mastodon link verification
the top element must be a single <a> in order for verification to work, so MfmService has gained an 'inline' argument to remove the <p> added by default
2025-06-22 17:56:37 +00:00
dakkar
3aa5ec713c unique constraint for registry_item - fixes #1121
we remove all duplicate items from the registry, keeping the
most-recently updated one (which presumably is the one that the users
expect to be used)

then we use `upsert` instead of the more complicated previous logic,
which was subject to races
2025-06-22 13:10:22 +01:00
Lilly Schramm
4d077732ac refactor: Remove Migration Name 2025-06-22 01:39:53 +02:00
Lilly Schramm
2329618418 refactor: Remove Migration Name 2025-06-22 01:39:47 +02:00
Lilly Schramm
2ac5f2f412 refactor: Remove Migration Name 2025-06-22 01:31:55 +02:00
Lilly Schramm
df77f339ec feat(backend): Add Config Option For Bio Length 2025-06-22 01:02:20 +02:00
Lillychan
87f6d84229 Apply 1 suggestion(s) to 1 file(s) 2025-06-20 20:10:04 +00:00
Lilly Schramm
3ce8914673 refactor: Simplify Statement (again) 2025-06-20 21:55:02 +02:00
Lilly Schramm
3dadbdb854 refactor: Simplify Statement 2025-06-20 21:41:48 +02:00
Lilly Schramm
0e52763bed refactor: Fix Typo 2025-06-20 21:38:23 +02:00
Lilly Schramm
98a63e8e96 feat: Truncate Old Name 2025-06-20 21:33:17 +02:00
Lilly Schramm
18a979ea4e refactor: Add Licence Header 2025-06-20 21:32:05 +02:00