Commit graph

542 commits

Author SHA1 Message Date
Laura Hausmann
b6dddd9439
[backend/core] Trim UserPublicKey before inserting into database 2024-11-12 20:57:16 +01:00
Laura Hausmann
3e8ba289c3
[backend/drive] Fix incorrect mime type & file extension when converting original files (ISH-593)
Closes #64

Co-authored-by: Tamara Schmitz <tamara.zoe.schmitz@posteo.de>
2024-11-07 20:04:34 +01:00
Laura Hausmann
e34b4f5c1a
[backend/drive] Convert ImageFormat to a closed record 2024-11-07 20:04:34 +01:00
pancakes
4d85fce1cf
[backend/core] Catch failed resolves in ImportFollowingAsync 2024-11-06 00:32:34 +10:00
pancakes
925ba3c751
[backend] Directly render ASReject 2024-11-03 13:02:12 +10:00
pancakes
dd82e457d0 [backend] Use RenderUnfollow to remove follower 2024-11-03 03:00:58 +01:00
pancakes
ea5408c182 [backend/api] Add remove from followers endpoint 2024-11-03 03:00:58 +01:00
Laura Hausmann
f2853d2d40
[backend] Fix typo 2024-11-02 22:56:52 +01:00
Laura Hausmann
b3f9680845
[backend/core] Also set correct local mention url in other UserProfileMentionsResolver overload 2024-11-02 16:59:13 +01:00
Laura Hausmann
d9fabcb32c
[backend/core] Set correct url for local mentions in user profile 2024-11-02 16:05:30 +01:00
Laura Hausmann
e61e3d2fde
[backend/api] Wait for user mention resolution before returning (ISH-567) 2024-10-31 21:02:56 +01:00
pancakes
95ae04e4af
[backend] Download exported follow list directly instead of storing it as a file 2024-10-31 20:48:51 +01:00
pancakes
137dc0d0e6
[backend/core] Move import/export to ImportExportService and resolve imported users 2024-10-31 20:48:07 +01:00
pancakes
bfc36cbc48
[backend/api] Add follow list export endpoint 2024-10-31 20:48:07 +01:00
pancakes
62aa5f3075
[backend/api] Add follow list import endpoint 2024-10-31 20:48:07 +01:00
Laura Hausmann
8340952653
[backend/signalr] Switch to Lazy<T> for NoteResponses in StreamingService 2024-10-31 18:49:36 +01:00
Laura Hausmann
912c50488f
[backend/core] Fix ResolveNoteMentionsAsync regression 2024-10-29 20:01:15 +01:00
Laura Hausmann
b43e81b834
[backend/federation] Switch to Uri.TryCreate local fetch checks 2024-10-29 18:43:58 +01:00
Laura Hausmann
5d1e1ed05d
[backend/federation] Add extra guard clauses to UserService
This should be caught by WebFingerService, but more checks are always a good idea.
2024-10-29 16:10:39 +01:00
Laura Hausmann
040973b19e
[backend/api] Fix StreamingService render-only-once mutex implementation 2024-10-27 22:09:51 +01:00
Kopper
90f1e30ef2 [backend] Fix reply backfill limiting 2024-10-26 07:24:39 +02:00
Laura Hausmann
effe3a7fef
[backend/queue] Fix jobs not being upserted with their correct default values 2024-10-26 04:41:06 +02:00
Kopper
e9d651b66f
[backend] Use HTTP/2 by default 2024-10-26 01:26:01 +02:00
kopper
27ac36d747
[backend] Add config option to sign reply backfills with requesting user
Signed-off-by: Laura Hausmann <laura@hausmann.dev>
2024-10-24 21:18:58 +02:00
kopper
7173373330
[backend/federation] Improved reply backfill
Instead of backfilling every note we come across that has a reply
collection, only schedule a backfill job if someone wants to see the
replies (on GET MastoAPI /context, or Iceshrimp API /descendants)

Reply backfilling is also done on a ThreadIdOrId basis as opposed to the
previous way of backfilling individual notes. This allows us finer
grained control over the recursion and frees up the job queue, alongside
allowing for easier implementation of context collection backfill in the
future (by mapping each context collection to a thread)

---

Currently, note threads are implicit based on the "threadId" column of a
note, which can be null (where it's the same as the note's "id")

This commit turns note threads into an actual entity, and as a part of
that, makes "threadId" non-nullable (by specifically setting it to "id"
for those cases)

This is done to attach extra metadata to the entire thread, currently
just the time of when it was last backfilled, but more may be added in
the future (the context collection associated with this thread, for example)

---

The data format for backfill jobs have backwards-incompatibly changed
since the introduction of the feature. We can drop all old jobs without
causing too much trouble as they will be re-scheduled on demand

---

Signed-off-by: Laura Hausmann <laura@hausmann.dev>
2024-10-24 21:18:57 +02:00
Laura Hausmann
e4074dddbc
[backend/core] Allow manual resetting of the home timeline heuristic 2024-10-24 16:48:06 +02:00
Laura Hausmann
f19a414b27
[backend/federation] Refactor UserResolver (ISH-548) 2024-10-24 01:48:09 +02:00
Laura Hausmann
e753bacb1d
[backend] Code cleanup 2024-10-24 01:41:49 +02:00
pancakes
30ff0d77b2 [backend/api] Add bite back endpoint 2024-10-23 05:04:55 +02:00
pancakes
fbbc50e158 [backend] Fix note bite notifications 2024-10-23 05:04:55 +02:00
pancakes
3218de9f56 [backend] Implement RenderBite, BiteService and endpoints for note and user 2024-10-23 05:04:55 +02:00
Laura Hausmann
c55e673cd2
[backend/federation] Don't allow negative voter counts 2024-10-23 04:49:25 +02:00
Laura Hausmann
75042fc5d5
[backend/drive] Fix drive file cleanup job for locally stored files 2024-10-21 22:10:08 +02:00
Laura Hausmann
79014ec4b7
[backend/drive] Report count of orphaned files removed by storage cleanup job on completion 2024-10-19 01:29:25 +02:00
Laura Hausmann
ead9d90029
[backend/drive] Fix drive file expiry leaving orphaned file versions in the storage backend 2024-10-19 01:25:39 +02:00
Laura Hausmann
bfd0feaf95
[backend/drive] Don't fixup media created since the start of the job
This prevents a race condition when the server is running during the operation.
2024-10-19 00:57:44 +02:00
Laura Hausmann
b21d9691e5
[backend/drive] Improve media fixup algorithm 2024-10-19 00:21:01 +02:00
Laura Hausmann
055957f509
[backend/drive] Improve media fixup algorithm performance (ISH-520) 2024-10-18 23:37:19 +02:00
Laura Hausmann
6124eadb53
[backend/drive] Add storage cleanup startup command 2024-10-18 23:18:45 +02:00
Laura Hausmann
9275e3b21a
[backend/drive] Add fixup-media startup command (ISH-520) 2024-10-18 22:43:25 +02:00
Laura Hausmann
b18d24fa57
[backend] Update dependencies 2024-10-18 19:50:02 +02:00
Laura Hausmann
60b18f434f
[backend/queue] Make PostgresJobQueue<T> abstract 2024-10-18 04:32:34 +02:00
Laura Hausmann
6f55afe60a
[backend/core] Improve poll voter count fallback
This should fix erroneous voter counts for polls from instances that don't return as:votersCount.
2024-10-16 22:07:26 +02:00
Laura Hausmann
3c96d98932
[backend/core] Only deliver create/update activities to remote users, unify DeliverToConditionalAsync calls 2024-10-16 20:51:40 +02:00
Laura Hausmann
a951217664
[backend/core] Don't retry jobs with like/unlike note resolution failures 2024-10-15 17:19:42 +02:00
Laura Hausmann
85d9bc597f
[backend/queue] Improve logging for jobs that were queued for more than 10s 2024-10-14 21:46:56 +02:00
Laura Hausmann
3a346d5a22
[backend/razor] Add admin dashboard (Admin-FE)
Currently available sections: instance metadata, user management, federation control, relays, plugins & queue dashboard.
Planned: sections: configuration, logs, policies & reports.
2024-10-11 05:41:52 +02:00
Laura Hausmann
846888b2c7
[backend/core] Prevent system users from authenticating or creating notes 2024-10-09 21:39:36 +02:00
Laura Hausmann
5390990448
[backend/core] Add basic message rewrite policies (ISH-16) 2024-10-09 21:14:50 +02:00
Laura Hausmann
5f5a0c5c0f
[backend/api] Add moderation endpoints (ISH-116) 2024-10-09 19:11:54 +02:00