Commit graph

422 commits

Author SHA1 Message Date
Kopper
2523f8a4d1 [backend/federation] Expose replies collection
Exposes the replies collection for local notes, allowing remote
instances to backfill replies when fetching our posts.
2024-09-09 19:20:10 +02:00
Laura Hausmann
6d5f7b5f4a
[backend/federation] Support ASLike activities with content instead of _misskey_reaction 2024-08-18 19:19:21 +02:00
Laura Hausmann
2f3408f3d7
[backend/federation] Implement quotes as object links (FEP-e232) 2024-08-18 17:54:44 +02:00
Laura Hausmann
093abe82b8
[backend/core] Also use the NoteService KeyedLocker when it's called from ActivityHandlerService
This fixes sporadic "Unique constraint violation" exceptions on the "IX_note_uri" index.
2024-08-18 00:22:09 +02:00
Laura Hausmann
4be51a0cad
[backend/federation] Fix friendica compatibility 2024-08-17 23:07:58 +02:00
Laura Hausmann
173fbfb835
[backend/asp] Return error responses as HTML/XML/JSON depending on accept header 2024-08-16 01:00:43 +02:00
Laura Hausmann
1637064d60
[backend/federation] Deserialize HostMetaResponse as an object when content type is application/xrd+xml 2024-08-14 20:23:53 +02:00
Laura Hausmann
192f3f0312
[backend/federation] Reuse XmlSerializer in WebFingerService 2024-08-14 20:16:28 +02:00
Laura Hausmann
28f89f8a18
[backend/federation] Use XmlReader for deserializing untrusted XML input 2024-08-14 16:24:16 +02:00
Laura Hausmann
8267bc06de
[backend] Code cleanup 2024-08-14 03:53:15 +02:00
Laura Hausmann
4f98fa8461
[backend/federation] Fix possibly unbounded UserResolver recursion 2024-08-14 03:44:14 +02:00
Laura Hausmann
92f957a536
[backend/federation] Use content negotiation for host-meta responses 2024-08-14 03:23:25 +02:00
Laura Hausmann
b37f02846b
[backend/federation] Add support for returning xrd+xml WebFinger responses for local users 2024-08-14 02:01:56 +02:00
Laura Hausmann
14720808db
[backend/federation] Add support for deserializing xrd+xml WebFinger responses (ISH-456)
This fixes federation with Hubzilla.
2024-08-14 02:01:56 +02:00
Laura Hausmann
c86b2e192a
[backend/federation] Improve WebFinger host-meta handling 2024-08-14 01:41:29 +02:00
Laura Hausmann
d786d8976d
[backend/federation] Add manuallyApprovesFollowers to as-extensions 2024-08-14 00:20:52 +02:00
Laura Hausmann
dbed1123aa
[backend/federation] Improve webfinger response reuse in UserResolver (ISH-364) 2024-08-14 00:00:35 +02:00
Laura Hausmann
acbedd3bae
[backend/federation] Support WebFinger reverse discovery (ISH-364)
This resolves federation issues with old versions of pixelfed, as well as various AP implementations that are not widely deployed.
2024-08-13 23:58:46 +02:00
Laura Hausmann
be9a0f95fa
[backend/federation] Fixup preloaded mastodon JSON-LD context
Credits to puck for spotting this one.
2024-08-13 03:15:28 +02:00
Laura Hausmann
2181d01e54
[backend/federation] Reject activities by suspended users 2024-08-13 00:02:21 +02:00
Laura Hausmann
097141a057
[backend/federation] Improve GTS compatibility fixes 2024-08-12 19:25:38 +02:00
Laura Hausmann
7484db23c5
[backend/federation] Fix GTS compatibility
Another day, another fedi software referencing an invalid/nonexistent context by link.
2024-08-12 19:10:05 +02:00
Laura Hausmann
807a6fc95d
[backend] Refactor dictionary initializers to use the new syntax 2024-08-12 03:21:03 +02:00
Laura Hausmann
c07bb35548
[backend/drive] Refactor ImageProcessor into a modular system
This commit lays the groundwork for a user-configurable image processing pipeline. It has exactly the same behavior as the old ImageProcessor, just modular & compartmentalized. It also adds support for AVIF & JXL encoding, though no code paths call it just yet.
2024-08-12 03:21:03 +02:00
Laura Hausmann
8345f35a5f
[backend/federation] Fix (de-)serialization of unordered ASCollection(Page) objects (ISH-427) 2024-07-22 18:57:15 +02:00
Laura Hausmann
c011253d67
[backend/core] Catch & rethrow HTTP timeout exceptions to shorten unnecessarily long stack traces 2024-07-16 20:53:31 +02:00
Laura Hausmann
751bfe5f8c
[backend/federation] Federate location and birthday profile fields correctly 2024-07-15 15:41:11 +02:00
Laura Hausmann
248543528b
[backend/api] Mark entire note as sensitive when any attachments are marked as such 2024-07-13 01:47:53 +02:00
Laura Hausmann
49f5828a59
[backend] Code cleanup 2024-07-11 17:46:39 +02:00
Laura Hausmann
c67984c411
[backend] Manually reformat difficult-to-read switch expressions that got hard wrapped 2024-07-11 17:46:34 +02:00
Laura Hausmann
d5ce61d901
[backend/core] Update user record with updated lastFetchedAt property in UserResolver.GetUpdatedUser 2024-07-11 02:46:53 +02:00
Laura Hausmann
0f97845b88
[backend/federation] Fix HttpSignature validation on systems using CRLF line endings 2024-07-10 20:16:36 +02:00
Laura Hausmann
91acb8ed9e
[backend/federation] Add edition to nodeinfo response 2024-07-10 18:11:17 +02:00
Laura Hausmann
91b5021e4c
[shared] Refactor assembly version info
Because our frontend assembly now also knows its version, we no longer have to rely on meta tags to pass the version on to the frontend.

Since the HTML skeleton no longer includes version information, the nodeinfo response has been amended with the now-absent properties.
2024-07-09 21:50:06 +02:00
Laura Hausmann
ae7fa0021c
[backend] Convert configuration and preloaded contexts into embedded resources 2024-07-09 15:13:43 +02:00
Laura Hausmann
0776a50cbe
[backend/asp] Refactor controllers
This commit aims to improve readability of MVC controllers & actions. The main change is the switch to custom [ProducesResults] and [ProducesErrors] attributes.
2024-07-06 17:12:22 +02:00
Laura Hausmann
aee7b28e3c
[backend/federation] Fix custom emoji in display name & bio not federating correctly 2024-07-03 21:59:14 +02:00
Laura Hausmann
df3a7bdfe5
[backend] Apply formatting rules 2024-06-29 01:06:19 +02:00
Laura Hausmann
0e6edb9046
[backend/federation] Don't fetch inboxUser from database if inboxUserId is null 2024-06-27 18:01:37 +02:00
Laura Hausmann
2858f66ad4
[backend/federation] Make sure DateTime objects are being converted to Utc when (de)serializing activities 2024-06-26 16:53:21 +02:00
Laura Hausmann
3bf933782a
[backend/federation] Ignore duplicate renote activities 2024-06-22 02:26:18 +02:00
Laura Hausmann
728a33c819
[backend/federation] Improve WebFinger algorithm 2024-06-22 01:41:33 +02:00
Laura Hausmann
f724a55901
[backend/core] Improve logging 2024-06-22 01:17:40 +02:00
Laura Hausmann
a253e83176
[backend/federation] Refactor ActivityRenderer 2024-06-21 14:28:29 +02:00
Laura Hausmann
efa2cdc9c7
[backend/federation] Populate to/cc fields correctly for outgoing Notes 2024-06-21 14:27:12 +02:00
Laura Hausmann
0c59081aee
[backend/federation] Add JsonIgnore attributes to internal properties to prevent them from being written to the job table unnecessarily 2024-06-21 14:14:22 +02:00
Laura Hausmann
9dbc7cfc14
[backend/federation] Filter skipped & blocked instances in PreDeliverQueue (ISH-366)
This:
- improves performance (because we can check them in batches)
- improves efficiency (because we don't create deliver jobs that get discarded immediately)
- allows us to check whether the activity is an ASFollow & let it through if it is (for skipped instances filter only)

We still check for blocked instances in the deliver queue in case a deliver job is created via another code path.
2024-06-19 17:37:57 +02:00
Laura Hausmann
1d262ab326
[backend/federation] Pass inboxUserId on to ProcessNoteAsync/ResolveNoteAsync for ASBite and ASCreate activities 2024-06-17 22:08:24 +02:00
Laura Hausmann
24bde5ad29
[backend] Use User.IsLocalUser / .IsRemoteUser instead of null-checks where applicable (ISH-370) 2024-06-17 17:25:29 +02:00
Laura Hausmann
fc7a1fe95c
[backend/federation] Make sure new follow & unfollow activities have a consistent identifier (ISH-367) 2024-06-17 17:16:27 +02:00