Commit graph

123 commits

Author SHA1 Message Date
Jesse Wierzbinski 9ba6237f13
refactor(media): ♻️ Massively simplify media pipeline with Bun.S3 2025-01-29 17:21:40 +01:00
Jesse Wierzbinski ba431e2b11
refactor(database): ♻️ Make user avatar and header into a Media instead of plaintext 2025-01-28 19:07:55 +01:00
Jesse Wierzbinski bc961b70bb
refactor(database): 🔥 Simplify media management code 2025-01-28 18:06:33 +01:00
Jesse Wierzbinski cf1104d762
refactor(database): ♻️ Make emojis use a Media instead of just rawdogging the URI 2025-01-28 17:43:43 +01:00
Jesse Wierzbinski 3216fc339a
refactor(database): ♻️ Move Note <-> Media relations to a many-to-many model instead of one-to-many 2025-01-23 20:36:09 +01:00
Jesse Wierzbinski 9c30dacda7
refactor(database): ♻️ Use ContentFormat to store media data 2025-01-23 19:37:17 +01:00
Jesse Wierzbinski 2f61cd8f0a
refactor(database): 🚚 Rename "Attachment" to "Media" 2025-01-23 16:08:42 +01:00
Jesse Wierzbinski c4339e64bd
chore: ⬆️ Upgrade Bun to 1.2.0 2025-01-23 15:28:16 +01:00
Jesse Wierzbinski b086e65404
refactor(worker): Move blurhash processing to worker 2025-01-06 19:45:32 +01:00
Jesse Wierzbinski 80b874e5fb
refactor(api): Move media processing to background job 2025-01-06 19:21:57 +01:00
Jesse Wierzbinski 0e9db83279
style: 🚨 Run Biome 2025-01-02 04:52:30 +01:00
Jesse Wierzbinski 3484b1e1a1
fix(api): 🐛 Improve notification text 2025-01-02 04:49:36 +01:00
Jesse Wierzbinski 1c543723fb
fix(api): 🐛 Use aesgcm, not aes128gcm during push notifications
Mastodon's server hates aes128gcm
2025-01-02 04:36:28 +01:00
Jesse Wierzbinski bedc25bacf
fix(api): 🐛 Properly await notification result 2025-01-02 04:27:52 +01:00
Jesse Wierzbinski cde2836982
fix(api): 👽 Ignore what the Mastodon docs say, they're wrong 2025-01-02 04:13:12 +01:00
Jesse Wierzbinski 5d64ecd04f
fix(api): 🐛 Switch base64 version to base64url in subscriptions 2025-01-02 04:02:29 +01:00
Jesse Wierzbinski ea0afdaf22
fix(api): 🐛 Make validation on push subscription more lax 2025-01-02 03:53:38 +01:00
Jesse Wierzbinski 59cf4e384a
fix(api): 🐛 Correctly calculate user based on token 2025-01-02 03:36:54 +01:00
Jesse Wierzbinski 7b3158c102
fix(api): 🚑 Fix incorrect builds
Everything under api/ should be a route, or it messes up bundling
2025-01-02 02:55:56 +01:00
Jesse Wierzbinski d839c274b1
feat(api): Finish push notification delivery 2025-01-02 02:45:40 +01:00
Jesse Wierzbinski d096ab830c
feat(api): Add initial Push Notifications support 2025-01-02 01:29:33 +01:00
Jesse Wierzbinski fbfd237f27
refactor(api): ♻️ Throw ApiError instead of returning error JSON 2024-12-30 18:00:23 +01:00
Jesse Wierzbinski c14621ee06
refactor(api): 🔥 Simplify oauth authorize handler 2024-12-30 16:47:48 +01:00
Jesse Wierzbinski f67fed12e0
feat(database): Add Reaction database class 2024-12-18 20:01:26 +01:00
Jesse Wierzbinski 4fdb96930f
fix(api): 🐛 Fetch media content-type from data, instead of doing naive guesses 2024-12-16 23:57:21 +01:00
Jesse Wierzbinski e293bd280d
fix(api): 🐛 Fix duplicated mentions, general refactorings 2024-12-09 15:30:18 +01:00
Jesse Wierzbinski 0ae9cfe26c
refactor(federation): ♻️ More federation logic cleanup 2024-12-09 15:01:19 +01:00
Jesse Wierzbinski 83399ba5f1
refactor(database): ♻️ Simplify User and Note logic further 2024-12-09 13:50:46 +01:00
Jesse Wierzbinski a8541bdc44
refactor(database): ♻️ Simplify Note and User federation logic 2024-12-09 13:36:15 +01:00
Jesse Wierzbinski cbbf49905b
fix(federation): 🐛 Fix remote emojis being incorrectly marked as local 2024-12-09 13:11:23 +01:00
Jesse Wierzbinski 2743528727
fix(api): 🐛 Fix emoji editing always making the emoji non-global 2024-12-07 11:12:17 +01:00
Jesse Wierzbinski 91da99c934
feat(federation): Handle instances not existing 2024-12-02 15:07:05 +01:00
Jesse Wierzbinski ca42df1dfd
fix(api): 🐛 Properly include global field in API emojis 2024-11-29 21:49:41 +01:00
Jesse Wierzbinski eb405d33cd
fix(api): 🐛 Don't use null in Role properties 2024-11-28 10:54:44 +01:00
Jesse Wierzbinski 49c53de99e
feat(api): Overhaul Role API, add ability to edit roles and assign/unassign them from any user 2024-11-26 15:27:39 +01:00
Jesse Wierzbinski 49a301663a
feat(federation): Use instance messaging to send errors to remote instance 2024-11-25 23:14:42 +01:00
Jesse Wierzbinski a037448ebb
refactor(federation): ♻️ Remove Response return semantics from inbox worker 2024-11-25 23:11:17 +01:00
Jesse Wierzbinski 1b98381242
feat: Split off queue workers into a separate worker process 2024-11-25 21:54:31 +01:00
Jesse Wierzbinski c899f12893
feat(federation): Prioritize delivery to instance inbox, and use delivery queue in more places 2024-11-25 20:50:55 +01:00
Jesse Wierzbinski 7a73a1a24e
feat(federation): Store remote instance shared inbox and extensions as well 2024-11-25 20:37:00 +01:00
Jesse Wierzbinski 8a920218ea
feat(federation): Add queue to note delivery 2024-11-25 11:29:48 +01:00
Jesse Wierzbinski 3e19b11609
refactor: 🔊 Fix duplicate logs 2024-11-24 23:13:29 +01:00
Jesse Wierzbinski 005a3a2721
fix(federation): 🚑 Don't always try to use instance key when an instance is not the request signer 2024-11-24 23:01:47 +01:00
Jesse Wierzbinski 34370a082a
refactor(federation): ♻️ Make Instance updateFromRemote non-static 2024-11-24 22:48:34 +01:00
Jesse Wierzbinski 8b23eb888d
refactor(cli): ♻️ Rewrite instance fetch command to refetch instances instead 2024-11-24 22:45:41 +01:00
Jesse Wierzbinski c59ebef851
feat(federation): Add more debugging to inbox processing 2024-11-24 22:17:45 +01:00
Jesse Wierzbinski b333ecc816
refactor(federation): 🔊 Add more logging to some federation logic 2024-11-24 22:01:14 +01:00
Jesse Wierzbinski b320ddf3ae
refactor(federation): ♻️ Queue all incoming inbox processing events 2024-11-24 21:35:59 +01:00
Jesse Wierzbinski 259fba17a7
fix(federation): 🐛 Make an empty allowed_ip list for bridge correctly allow any IP 2024-11-24 16:54:24 +01:00
Jesse Wierzbinski b55237cdc8
refactor(federation): ♻️ Allow ActivityPub bridge requests to omit all signature headers, including x-signed-by 2024-11-24 16:40:23 +01:00