Commit graph

346 commits

Author SHA1 Message Date
Laura Hausmann
95592df2ca
[backend/core] Don't create reply notifications on note update
This prevents erroneous duplicate notifications from being created.
2024-06-16 23:36:39 +02:00
Laura Hausmann
47ab95cc1b
[backend/queue] Remove trace logging 2024-06-16 21:56:56 +02:00
Laura Hausmann
8ebef17938
[backend/queue] Fix race condition that could cause temporary queue stalls (until a new job gets queued) 2024-06-16 19:06:53 +02:00
Laura Hausmann
571ef8f027
[backend/queue] Improve logging 2024-06-16 18:55:54 +02:00
Laura Hausmann
07fd0260a8
[backend/queue] Add healthchecks that regularly check for stalled jobs (ISH-361) 2024-06-16 18:07:25 +02:00
Laura Hausmann
7ed39d0c47
[backend/queue] Fix AsyncAutoResetEvent handling, fix stalled queue workers causing no new workers to be spawned 2024-06-16 17:23:28 +02:00
Laura Hausmann
946eed1b03
[backend/federation] Fix remote poll voter counts (ISH-363) 2024-06-15 17:21:43 +02:00
Laura Hausmann
9f3bbe6c08
[backend/drive] Fix handling of failed files in object storage migrator
This fixes an edge case that could cause it to enter an infinite loop.
2024-06-15 01:19:37 +02:00
Laura Hausmann
a703b63876
[backend/core] Ignore poll options consisting only of whitespace
This fixes compatibility with certain mastodon clients that send an extra empty-string poll option.
2024-06-14 20:04:38 +02:00
Laura Hausmann
ed38dc3788
[backend/database] Fix poll votersCount query for PostgreSQL versions prior to 16 2024-06-14 18:59:36 +02:00
Laura Hausmann
c4190781e3
[backend/core] Generate reply notifications for notes that aren't of specified visibility 2024-06-13 22:54:02 +02:00
Laura Hausmann
35148d7796
[backend/queue] Add queue processor timeout
For now this is hardcoded per queue, but this will be configurable down the line.
2024-06-13 22:41:41 +02:00
Laura Hausmann
5dbec15876
[backend] Switch to the renamed Iceshrimp.WebPush library 2024-06-11 17:34:47 +02:00
Laura Hausmann
dc8511632b
[backend/core] Replace sync DB call with async equivalent 2024-06-10 19:42:06 +02:00
Laura Hausmann
aa21e4b05a
[backend/queue] Make queue concurrency configurable 2024-06-10 18:18:39 +02:00
Laura Hausmann
317395b36b
[backend/core] Don't deliver poll ended notifications to remote users 2024-06-06 21:25:42 +02:00
Laura Hausmann
066cb7dc19
[backend/core] Send poll ended notification to poll creator even if they didn't vote in the poll 2024-06-06 21:18:32 +02:00
Laura Hausmann
39a6ed2215
[backend/database] Fix votersCount getting set for all polls 2024-06-05 15:59:27 +02:00
Laura Hausmann
dba4196655
[backend/core] Track poll votersCount for local & remote polls 2024-06-05 15:26:25 +02:00
Laura Hausmann
1ef5be8917
[backend/core] Correctly handle remote AP redirects to local notes 2024-06-04 19:39:07 +02:00
Laura Hausmann
bcdcce80c9
[backend/core] Set note.text to null if it's whitespace on note creation & update 2024-06-04 17:51:00 +02:00
Laura Hausmann
117443b802
[backend/core] Fix typo 2024-05-30 13:35:31 +02:00
Laura Hausmann
6fdc8b73f7
[backend/core] Improve resolution of notes with pending reply/renote targets on note create
This fixes missing metadata (reply/renote user id/host), as well as stale reply/renote counts for replies/renotes processed out of order.
2024-05-30 12:30:45 +02:00
Laura Hausmann
9949e24c8d
[backend] Miscellaneous refactors 2024-05-28 20:50:04 +02:00
Laura Hausmann
b1803ce6bf
[backend/drive] Add purge argument & additional error handling to object storage migrator 2024-05-28 15:35:39 +02:00
Laura Hausmann
dd22bd5393
[backend/drive] Fix object storage migrator db query warnings 2024-05-28 15:12:51 +02:00
Laura Hausmann
e77c768882
[backend/database] Switch job identifier generation scheme to from UUIDv4 to ULID 2024-05-27 22:11:18 +02:00
Laura Hausmann
35153a9080
[backend/queue] Improved AsyncAutoResetEvent implementation
This implementation improves the memory behavior of AsyncAutoResetEvents that fire in rapid succession.
2024-05-25 13:34:06 +02:00
Laura Hausmann
167fd5f0d6
[backend/api] Add renote endpoints (ISH-341) 2024-05-23 19:37:56 +02:00
Laura Hausmann
6386025c24
[backend/core] Update emoji regex for Unicode 15.1, simplify emoji regex, move emoji regex into a GeneratedRegexAttribute property 2024-05-23 18:08:38 +02:00
Laura Hausmann
dc09a4ada2
[backend/masto-client] Add list streaming channel (ISH-332) 2024-05-23 17:10:36 +02:00
Laura Hausmann
aa8e3f32c5
[backend/drive] Fix thumbnail url for deduplicated files 2024-05-23 15:15:43 +02:00
Laura Hausmann
9d0ee19922
[backend/drive] Don't store attachments if the download isn't successful 2024-05-23 00:23:54 +02:00
Laura Hausmann
ba21cb2b0e
[backend/queue] Fix race condition that could cause PostgresJobQueue.ExecuteAsync to fail when actualParallelism is negative 2024-05-22 23:47:09 +02:00
Laura Hausmann
9636a096fc
[backend/masto-client] Respect filters in WebSocket connections (ISH-328) 2024-05-17 19:21:41 +02:00
Laura Hausmann
849ecd9841
[backend/core] Don't allow connections to local addresses by default (ISH-330, ISH-331) 2024-05-17 14:19:48 +02:00
Laura Hausmann
ea8ff6495c
[backend/core] Fix editing of polls with no recorded votes 2024-05-16 18:56:04 +02:00
Laura Hausmann
1fae913a32
[backend/federation] Fix acceptance of poll vote activities without publishedAt 2024-05-16 18:55:46 +02:00
Laura Hausmann
2108f91bcf
[backend/drive] Store attachments as links if they can't be fetched for caching / further processing 2024-05-16 18:43:24 +02:00
Laura Hausmann
b76f154f50
[backend/drive] Don't hash files larger than the configured max cache size 2024-05-16 18:25:33 +02:00
Laura Hausmann
db9c4809dd
[backend/drive] Improve object storage migrator (ISH-326)
This commit fixes various bugs related to the object storage migrator.

- Files with a content length of zero bytes can now be migrated
- Deduplicated files now migrate correctly
- The database query no longer skips over files
2024-05-14 21:32:22 +02:00
Laura Hausmann
d7d7b7d2e3
[backend/drive] Improve error handling during DriveService.StoreFile 2024-05-14 20:09:14 +02:00
Laura Hausmann
23cf3cf35f
[backend/drive] Handle inconsistent file metadata during object storage migration 2024-05-14 20:07:37 +02:00
Laura Hausmann
97532c2b22
[backend/queue] Clean completed jobs in a cron task instead of doing it at job completion
This prevents database deadlocks that can occur when many jobs are being processed simultaneously.
2024-05-14 15:05:01 +02:00
Laura Hausmann
16fdc48800
[backend/drive] Set content-type when uploading media to object storage 2024-05-07 02:57:19 +02:00
Laura Hausmann
2519f382c5
[backend/federation] Include fully rendered renote target in rendered activity when renote user matches 2024-05-07 01:11:20 +02:00
Laura Hausmann
fe7d85fa91
[backend/core] Fix polls originating from masto-api 2024-05-06 23:40:47 +02:00
Laura Hausmann
b6304dc882
[backend/federation] Fix media being incorrectly classified as sensitive
Some AP implementations send an empty string as content warning when they mean no content warning, this is handled correctly by CreateNoteAsync and UpdateNoteAsync but wasn't respected in the attachment processing code paths. This commit resolves that issue.
2024-05-06 16:44:56 +02:00
Laura Hausmann
7f2ab15847
[backend/drive] Convert image to Srgb before further processing it for blurhash calculation when using LibVips 2024-05-03 18:14:51 +02:00
Laura Hausmann
3a2a6e47cf
[backend/core] Update pinned notes when the first local user follows a remote user
This allows us to fetch follower-only pinned notes immediately when they are available.
2024-05-02 21:15:43 +02:00