Commit graph

209 commits

Author SHA1 Message Date
Laura Hausmann
4dd8fdbd04
[backend] Refactor database transactions
This moves all code that isn't a direct call to transactionalEntityManager to outside of the transaction blocks, and removes all transaction blocks that were unnecessary
2023-10-25 17:03:08 +02:00
Laura Hausmann
2575588fa3
[backend] Use a recursion limiter for user profile mentions instead of disabling recursion altogether 2023-10-25 13:49:10 +02:00
Laura Hausmann
9b13ec9c0c
[backend] Catch errors in refetchPublicKeyForApId 2023-10-24 20:44:30 +02:00
Laura Hausmann
3b85491ee4
[backend] Don't recursively resolve user profile mentions 2023-10-24 18:50:41 +02:00
Laura Hausmann
c7dc059116
[backend] Cleaner workaround for GoToSocial federation with authorized fetch 2023-10-22 22:00:17 +02:00
Laura Hausmann
496454cf1f
[backend] Fix initial federation initiated by GoToSocial in secure mode
This bypasses GoToSocial issue #1186 (ref: https://github.com/superseriousbusiness/gotosocial/issues/1186)
2023-10-22 19:43:31 +02:00
Laura Hausmann
04fa6bef15
[backend] Improved http signature verification checks
This fixes an edge case where federation with split domain instances could fail.
2023-10-21 22:39:03 +02:00
Laura Hausmann
062d256a67
[backend] Update user profile mentions in background 2023-10-18 13:02:13 +02:00
Erin Shepherd
0c9c04f89d
[backend] Refetch user keys when HTTP Signature validation fails
If a user has had a key rotation, and nobody on this server follows
that user, we will not receive the Update activity with the new key

Therefore, when we encounter key validation errors we should check
for an up-to-date key.

References (other implementations):

 * [Mastodon](fc9ab61448/app/controllers/concerns/signature_verification.rb (L96))
 * [Akkoma](https://akkoma.dev/AkkomaGang/http_signatures/src/branch/main/lib/http_signatures/http_signatures.ex#L46)
2023-10-17 00:52:51 +02:00
Laura Hausmann
75c9873796
[backend] Update user profile mentions on createPerson and updatePerson 2023-10-15 22:34:20 +02:00
Laura Hausmann
82e0ef7414
[backend] Add mentions column to user_profile table 2023-10-15 21:57:59 +02:00
Laura Hausmann
8719a6922e
[backend] More mentions fixes 2023-10-14 17:11:21 +02:00
Laura Hausmann
349f770166
[backend] Actually try to resolve unknown mentions in mfm-to-html 2023-10-14 16:39:24 +02:00
Laura Hausmann
f843453ca0
[backend] Only render trailing slashes for URLs in profile fields when explicitly specified 2023-10-12 17:07:54 +02:00
Laura Hausmann
8d7d95fd23
[backend] Permit redirects for AP object lookups 2023-10-11 20:59:30 +02:00
Laura Hausmann
878970d318
[mastodon-client] Implement streaming API 2023-10-09 01:59:19 +02:00
Laura Hausmann
220b6f2011
Revert "don't update if renoted by bot"
This reverts commit 49e9fb9001c25378aa396d2a1ccdac1e18456e14.
2023-09-29 15:03:11 +02:00
Laura Hausmann
1ce0f778e7
Fix fetching pinned notes for remote servers that return a collection of note URIs instead of AP objects, resolves #201 2023-09-12 00:12:13 +02:00
Laura Hausmann
552041726b
Make html-to-mfm and its callstack async 2023-09-11 22:34:00 +02:00
Laura Hausmann
86defdffd3
Fix initial fetch of actual remote user host for remote gotosocial instances on createPerson, resolves #204 2023-09-11 18:37:18 +02:00
Laura Hausmann
06be4e108b
Fix updating remote user host for remote AP implementations that don't support webfinger uri queries 2023-09-10 19:31:11 +02:00
Laura Hausmann
558b58a0cd
Fix updating host on updatePerson 2023-09-10 19:31:11 +02:00
Laura Hausmann
f6dc9e094b
Fix user update for users without sharedInbox 2023-09-09 22:16:23 +02:00
Laura Hausmann
2f103229e5
Also update host on updatePerson 2023-09-09 18:45:15 +02:00
Laura Hausmann
e9e63ebaa8
Verify and update existing user on createPerson 2023-09-09 18:45:14 +02:00
Laura Hausmann
59571f2372
Resolve actual subject host on createPerson 2023-09-06 19:13:57 +02:00
Laura Hausmann
35f7bde1a4
Clear public key cache on user deletion 2023-09-06 19:13:57 +02:00
Laura Hausmann
84867f1c13
Finish up support for local split domain configurations 2023-09-06 19:13:57 +02:00
Laura Hausmann
0ad31334e2
Make WebFinger lookup respect subject domain 2023-09-06 19:13:56 +02:00
Luna D Dragon
91b8b7b76b
Defry the fish (#125)
Co-authored-by: Luna <luna.dragon@suse.com>
Reviewed-on: https://iceshrimp.dev/iceshrimp/iceshrimp/pulls/125
Co-authored-by: Luna D Dragon <lunarequest@nullrequest.com>
Co-committed-by: Luna D Dragon <lunarequest@nullrequest.com>
2023-08-21 16:14:53 +02:00
Natty
d7013ed85b
Fixed a bad import 2023-08-16 15:01:02 +02:00
Natty
63b179c178
Also check instances to skip 2023-08-16 15:00:52 +02:00
Natty
37c4ef56d7
URL parsing check to prevent delivery crashes 2023-08-16 15:00:07 +02:00
ThatOneCalculator
6bc25eb38b Merge branch 'develop' into rebrand 2023-07-15 14:15:01 -07:00
naskya
23ccb38e73 Stop using the name 'exist' if it's not for existence check 2023-07-13 15:28:44 +00:00
Namekuji
284c0db1fd no more infinity caches 2023-07-02 22:14:31 -04:00
Namekuji
9d26e08032 add cache prefix 2023-07-02 20:55:20 -04:00
Namekuji
ef724a49fe store cache values to redis 2023-07-02 20:37:46 -04:00
ThatOneCalculator
6c7f0521aa find and replace 2023-07-02 15:18:30 -07:00
ThatOneCalculator
66b61bb41b refactor: 🚩 post editing is no longer experimental 2023-07-01 20:00:51 -07:00
Namekuji
ec7300b1a9 refactor: simplify getSignatureUser 2023-06-28 01:46:52 -04:00
ThatOneCalculator
f6fca7f8e5 fixes 2023-06-28 01:46:38 -04:00
Laura Hausmann
74773318b4
Allow follower-only notes to be fetched by properly authorized remote users 2023-06-28 04:06:39 +02:00
Laura Hausmann
748c20474b
Fix AP resolver history on reuse for authorized fetch 2023-06-28 02:30:00 +02:00
Laura Hausmann
25fc7c7e0e Add signature to remote note lookup 2023-06-28 01:05:25 +02:00
Laura Hausmann
5c9d8b21a5 Also search for url field when looking for existing note in database 2023-06-27 18:37:16 +00:00
ThatOneCalculator
5e7e5e7da8 fix: ✏️ typo in API docs + errors
Co-authored-by: naskya <m@naskya.net>
2023-06-22 16:53:56 -07:00
Namekuji
f03861a189 add refresh button to poll 2023-06-18 17:14:38 -04:00
Namekuji
284c0c58c4 don't broadcast poll updates 2023-06-18 13:23:59 -04:00
Namekuji
91acab8860 skip if actor is not found or has been already deleted 2023-06-16 04:49:11 -04:00