Commit graph

265 commits

Author SHA1 Message Date
Laura Hausmann
0f69013224
[backend/federation] Support resolving actors by aliases not directly resolvable via WebFinger
This fixes resolving pixelfed users by their user-facing uri (instance.tld/username).
2024-05-23 14:07:36 +02:00
Laura Hausmann
d23bb06430
[backend/api] Add search & lookup endpoints (ISH-333) 2024-05-18 18:22:53 +02:00
Laura Hausmann
b705c95714
[backend/federation] Add Guid to end of follow activity URIs
This stops mastodon from caching the undo, preventing re-follows & debugging of federation issues
2024-05-07 16:41:07 +02:00
Laura Hausmann
a17da9d526
[backend/federation] Add missing entries to preloaded joinmastodon.org context 2024-05-04 19:50:11 +02:00
Laura Hausmann
3bf0f625d2
[backend/federation] Fix typo in preloaded schema.org context 2024-05-04 19:38:45 +02:00
Laura Hausmann
4217fd1afb
[backend/federation] Improve logging in ActivityFetcherService.FetchActorAsync 2024-05-03 21:42:00 +02:00
Laura Hausmann
477f300c40
[backend/federation] Make resolvedActorId / authenticatedUserId mismatch a debug message instead of an exception 2024-05-03 16:30:03 +02:00
Laura Hausmann
4dd5eea946
[backend/federation] Refactor ActivityHandler: Improved logging, more graceful error handling, more readable code flow (ISH-311) 2024-05-03 01:15:22 +02:00
Laura Hausmann
75b2227524
[backend/federation] Don't require ASNotes by the authenticated actor to be fetchable
This fixes e.g. renotes of follower-only posts
2024-05-02 21:04:57 +02:00
Laura Hausmann
09623a94c8
[backend/api] Add optional userId query parameter to /admin/fetch & /fetch-raw 2024-05-02 19:29:19 +02:00
Laura Hausmann
e2a970b56c
[backend/core] Correctly serialize unresolved mentions to MFM 2024-05-02 01:13:30 +02:00
Laura Hausmann
be4e58b958
[backend/federation] Also skip RE: in ASNoteSource for notes that are not polls 2024-05-02 00:03:41 +02:00
Laura Hausmann
2e0792ab73
[backend/federation] Don't add RE: to ASNote.Source.Content for quotes 2024-05-02 00:00:57 +02:00
Laura Hausmann
a2077244f8
[backend/drive] Make image processor pluggable 2024-05-01 21:44:49 +02:00
Laura Hausmann
878c9d657c
[backend/federation] Correctly support redirection of activity URIs
This was already implemented, but we forgot to disable auto-redirects, so the custom redirect code was never used.
2024-05-01 00:09:20 +02:00
Laura Hausmann
d31860dbb3
[backend/core] Track renote/reply uri for notes where the target is inaccessible at time of ingestion (ISH-287) 2024-04-30 00:15:58 +02:00
Laura Hausmann
d0356fc6ea
[backend/federation] Add support & corresponding tests for http signature pseudo-headers 2024-04-29 20:35:51 +02:00
Laura Hausmann
a7898e8aa9
[backend/federation] Enforce federation control in ActivityFetcherService
With this there should be no remaining ways for new activities from blocked instances to make it into the database.
2024-04-28 19:22:18 +02:00
Laura Hausmann
ead8e126f1
[backend/federation] Handle ASImage as ASAttachment
This fixes one of the issues in terms of federation with Pixelfed.
2024-04-28 03:54:34 +02:00
Laura Hausmann
f6bfaa72ad
[backend/federation] Prettier displayUri for profile fields that are links 2024-04-28 02:09:31 +02:00
Laura Hausmann
0414c791e6
[backend/federation] Federate profile fields correctly 2024-04-28 02:02:48 +02:00
Laura Hausmann
a20d50f793
[backend/federation] Improve logging regarding a renamed variable 2024-04-27 20:17:39 +02:00
Laura Hausmann
cf215b3d57
[backend/federation] Handle ASDelete activities of ASNote objects
Some implementations seem to send deletes of ASNote objects instead of ASTombstone objects.
2024-04-25 19:13:57 +02:00
Laura Hausmann
89a743d121
[backend/federation] Fix possible null dereference 2024-04-25 18:30:35 +02:00
Laura Hausmann
363b0c930c
[backend/core] Add Guid.ToStringLower() extension method 2024-04-25 18:26:42 +02:00
Laura Hausmann
1f3f7ad64d
[backend/federation] Improve logging in ActivityHandlerService 2024-04-25 18:23:30 +02:00
Laura Hausmann
e2a528c8a6
[backend/federation] Refactor AcceptAsync and FollowAsync for improved code reuse 2024-04-24 23:11:31 +02:00
Laura Hausmann
b553da9edf
[backend/federation] Make it obvious that ephemeral IDs are, well, ephemeral 2024-04-24 04:06:28 +02:00
Laura Hausmann
bd8d5b20f8
[backend/federation] Use separate renoteUri schema
This allows renoteUris to be fetchable at their canonical uri.
2024-04-24 04:05:58 +02:00
Laura Hausmann
385f5843f7
[backend/helpers] Rename LDHelpers.Compact(ASActivity) to LDHelpers.CompactToPayload 2024-04-24 04:05:26 +02:00
Laura Hausmann
58d78b568a
[backend/core] Fix remote renotes being registered without a URI 2024-04-24 03:32:05 +02:00
Laura Hausmann
20f72439c8
[backend/federation] Optimize iceshrimp context
Since we can't automatically strip unused IRI prefix aliases, it's more efficient to inline the ones with less than 3 usages.
2024-04-20 21:29:56 +02:00
Laura Hausmann
156735f40b
[backend/federation] Refactor LdHelpers, move contexts to non-nested directory, load contexts relative to assembly location instead of working directory 2024-04-19 23:44:01 +02:00
Laura Hausmann
28414a17fc
[backend/federation] Don't run webfinger validation passes when host matches with the previous step
Since queries against resources on the same domain would end up querying the exact same endpoint, these checks are redundant and do not add any security benefits.
2024-04-19 01:37:30 +02:00
Laura Hausmann
f185a061dc
[backend/federation] Improve local instance detection in WebFingerService 2024-04-19 01:21:12 +02:00
Laura Hausmann
e23fc63906
[backend/federation] Fall back to AP URI host on uri mismatch 2024-04-19 01:08:59 +02:00
Laura Hausmann
ebbec76cfe
[backend/federation] Resolve split domain user hosts exactly once (ISH-201)
This is necessary, since while the current version is handling split domain instances correctly, previous versions (for users who migrated from iceshrimp-js) may have not done so.
Since account domains never change, we only have to do this once.
2024-04-19 00:55:30 +02:00
Laura Hausmann
c38ff71791
[backend/database] Move emoji url generation to the Emoji entity 2024-04-18 20:46:46 +02:00
Laura Hausmann
333611f65e
[backend/federation] Send remote reacts as anonymous emoji objects, set correct id for local emoji reacts 2024-04-18 20:39:11 +02:00
Laura Hausmann
7529ebea72
[backend/federation] Don't register misskey reactions as likes 2024-04-17 00:09:46 +02:00
Laura Hausmann
5ba2e47426
[backend/core] Don't log AuthFetchExceptions in GetUpdatedUser 2024-04-16 18:38:48 +02:00
Laura Hausmann
08ced32e4d
[backend/federation] Enforce VerifiedFetch in ResolveNoteAsync instead of in calling methods (ISH-262) 2024-04-16 18:15:22 +02:00
Laura Hausmann
469f02c5ac
[backend/federation] Set VerifiedFetch in FetchNoteAsync (ISH-262) 2024-04-16 18:15:22 +02:00
Laura Hausmann
c5bd380344
[backend] Improved debug logging (ISH-238) 2024-04-10 00:15:46 +02:00
Laura Hausmann
969efe6d73
[backend/federation] Fix redirect handling in ActivityFetcherService 2024-04-06 21:46:07 +02:00
Laura Hausmann
bde33e09bf
[backend/federation] Fix FetchActivityInternal exception
Newtonsoft.Json is sadly not compatible with pattern matching. We can revert this once we're using System.Text.Json for JSON-LD instead.
2024-03-31 18:34:22 +02:00
Laura Hausmann
b4152b7c3d
[backend/core] Stricter validation of activity identifiers (ISH-233) 2024-03-30 13:12:14 +01:00
Laura Hausmann
39de646a88
[backend] Fix null dereference 2024-03-29 16:16:25 +01:00
Laura Hausmann
ddfa108677
[backend/federation] Log type of unsupported undo activities 2024-03-29 16:11:40 +01:00
Laura Hausmann
a3b543c37a
[backend/events] Add events for user follow/mute/block (& their respective opposites) (ISH-218, ISH-219) 2024-03-26 18:12:23 +01:00