nexy7574
94c4d85716
Always calculate state diff IDs in syncv3
...
seemingly fixes #779
2025-06-21 08:02:28 -07:00
Jacob Taylor
45ddec699a
add futures::FutureExt to make cb15ac3c01
work
2025-06-21 07:52:20 -07:00
Jason Volk
ec8abacbf3
Mitigate large futures
...
Signed-off-by: Jason Volk <jason@zemos.net>
2025-06-21 07:52:20 -07:00
Jacob Taylor
4b0f2c3dfa
Fix spaces rooms list load error. rev2
2025-06-21 07:52:20 -07:00
Jade Ellis
5528911e2a
feat: Add bundled aggregations support
...
Add support for the m.replace and m.reference bundled
aggregations.
This should fix plenty of subtle client issues.
Threads are not included in the new code as they have
historically been written to the database. Replacing the
old system would result in issues when switching away from
continuwuity, so saved for later.
Some TODOs have been left re event visibility and ignored users.
These should be OK for now, though.
2025-06-21 07:52:20 -07:00
Jade Ellis
1b08e0e33d
refactor: Promote handling unsigned data out of timeline
...
Also fixes:
- Transaction IDs leaking in event route
- Age not being set for event relations or threads
- Both of the above for search results
Notes down concern with relations table
2025-06-21 07:52:20 -07:00
Jade Ellis
640714922b
feat: For knock_restricted rooms, automatically join rooms we meet
...
restrictions for rather than knocking
2025-05-26 19:16:03 +01:00
Jade Ellis
2ccbd7d60b
fix: Reference config directly
2025-05-21 21:06:44 +01:00
Jade Ellis
60960c6e09
feat: Automatically set well-known support contacts
2025-05-21 20:32:53 +01:00
Jade Ellis
01594a6243
chore: Fix typos across the codebase
2025-05-06 20:51:12 +01:00
Jade Ellis
fb9d4c30f4
feat: Prefill server name in federation test
2025-05-01 21:23:37 +01:00
Jade Ellis
a98da7d942
refactor: Move git version info gather in into a build script
2025-05-01 00:38:35 +01:00
Jade Ellis
1a5ab33852
chore: Error on missing ID in messages
2025-04-27 16:35:38 +00:00
Jade Ellis
dcbacb5b78
feat: Allow controlling client message filtering
2025-04-26 21:59:25 +01:00
Jade Ellis
45872ede7a
chore: Fix formatting
2025-04-24 00:48:20 +01:00
nexy7574
ee11afb460
Inject reason into federated leave request membership
2025-04-24 00:41:16 +01:00
nex
1c59b41ff1
Merge pull request 'Support fi.mau.room_id, and fully qualified room_id in /createRoom' ( #777 ) from nex/custom-room-id into main
...
Reviewed-on: https://forgejo.ellis.link/continuwuation/continuwuity/pulls/777
Reviewed-by: Jade Ellis <jade@ellis.link>
2025-04-20 20:29:18 +00:00
nexy7574
41581c9ae8
Fix invalid room ID check & prevent room IDs being prefixed with !
2025-04-20 15:41:19 +01:00
nexy7574
d3022b4112
Prevent creating custom room IDs belonging to other servers
2025-04-20 02:46:16 +01:00
nexy7574
6920814da9
Support fi.mau.room_id, and fully qualified room_id in /createRoom
2025-04-20 02:31:58 +01:00
Jade Ellis
0eb9e4f3d2
refactor: Centralize server forbidden checks into moderation module
...
This moves all checks related to `forbidden_remote_server_names`,
`forbidden_remote_room_directory_server_names` and
`prevent_media_downloads_from` to a new `moderation` module.
This is useful for implementing more complicated logic globally.
Mostly the changes from #673 , but is also relevant for #750
2025-04-19 23:37:54 +01:00
Jason Volk
576a783a6f
add missing feature-projections between intra-workspace crates
...
Signed-off-by: Jason Volk <jason@zemos.net>
2025-04-19 23:33:53 +01:00
Jason Volk
fb3020d8da
misc async optimizations; macro reformatting
...
Signed-off-by: Jason Volk <jason@zemos.net>
2025-04-19 23:33:52 +01:00
Jason Volk
eac713a2a9
slightly optimize user directory search loop
...
Signed-off-by: Jason Volk <jason@zemos.net>
2025-04-19 23:33:51 +01:00
Jason Volk
e8a64bb59d
increase snake sync asynchronicity
...
Signed-off-by: Jason Volk <jason@zemos.net>
2025-04-19 23:33:51 +01:00
Jason Volk
05e65936fa
modest cleanup of snake sync service related
...
Signed-off-by: Jason Volk <jason@zemos.net>
2025-04-19 23:33:51 +01:00
Jade Ellis
3a95585f0e
fix: Disambiguate appservices in lazy loading context
...
In the previous commit, app services would all appear to be the same
device when accessing the same user. This sets the device ID to be the
appservice ID when available to avoid possible clobbering.
2025-04-18 14:00:31 +01:00
nexy7574
68d68a0645
fix: Do not panic when sender_device is None in /messages
route
...
The device ID is not always present when the appservice is the client.
This was causing 500 errors for some users, as appservices can lazy
load from `/messages`.
Fixes #738
Co-authored-by: Jade Ellis <jade@ellis.link>
2025-04-18 14:00:30 +01:00
Jacob Taylor
773c3d457b
fix space hierarchy pagination not respecting client-specified limit.
2025-04-17 07:48:54 -07:00
June Clementine Strawberry
d5ad973464
change forbidden_server_names and etc to allow regex patterns for wildcards
...
Signed-off-by: June Clementine Strawberry <june@3.dog>
2025-04-06 15:25:19 -04:00
June Clementine Strawberry
ff276a42a3
drop unnecessary info log to debug
...
Signed-off-by: June Clementine Strawberry <june@3.dog>
2025-04-06 13:19:09 -04:00
June Clementine Strawberry
5f8c68ab84
add trace logging for room summaries, use server_in_room instead of exists
...
Signed-off-by: June Clementine Strawberry <june@3.dog>
2025-04-06 13:17:13 -04:00
June Clementine Strawberry
6578b83bce
parallelise IO of user searching, improve perf, raise max limit to 500
...
Signed-off-by: June Clementine Strawberry <june@3.dog>
2025-04-05 20:09:22 -04:00
Jason Volk
500faa8d7f
simplify space join rules related
...
Signed-off-by: Jason Volk <jason@zemos.net>
2025-04-05 22:12:33 +00:00
Jason Volk
d6cc447add
simplify acl brick-check conditions
...
Signed-off-by: Jason Volk <jason@zemos.net>
2025-04-05 22:12:33 +00:00
June Clementine Strawberry
c7246662f4
try partially reverting 94b107b42b
...
Signed-off-by: June Clementine Strawberry <june@3.dog>
2025-04-05 14:07:37 -04:00
Jason Volk
bb8320a691
abstract and encapsulate the awkward OptionFuture into Stream pattern
...
Signed-off-by: Jason Volk <jason@zemos.net>
2025-04-05 02:44:46 +00:00
Jason Volk
532dfd004d
move core::pdu and core::state_res into core::matrix::
...
Signed-off-by: Jason Volk <jason@zemos.net>
2025-04-05 02:44:46 +00:00
June Clementine Strawberry
4e5b87d0cd
add missing condition for signatures upload failures
...
Signed-off-by: June Clementine Strawberry <june@3.dog>
2025-04-04 11:34:31 -04:00
Jason Volk
b7109131e2
further simplify get_missing_events; various log calls
...
Signed-off-by: Jason Volk <jason@zemos.net>
2025-04-03 22:40:40 +00:00
June Clementine Strawberry
94b107b42b
add some debug logging and misc cleanup to keys/signatures/upload
...
Signed-off-by: June Clementine Strawberry <june@3.dog>
2025-04-03 16:08:18 -04:00
June Clementine Strawberry
f14756fb76
leave room locally if room is banned, rescind knocks on deactivation too
...
Signed-off-by: June Clementine Strawberry <june@3.dog>
2025-04-03 12:21:16 -04:00
June Clementine Strawberry
24be579477
add appservice MSC4190 support
...
Signed-off-by: June Clementine Strawberry <june@3.dog>
2025-04-03 12:21:16 -04:00
June Clementine Strawberry
0e0b8cc403
fixup+update msc3266, add fed support, parallelise IO
...
Signed-off-by: June Clementine Strawberry <june@3.dog>
2025-04-03 00:56:37 -04:00
June Clementine Strawberry
74012c5289
significantly improve get_missing_events fed code
...
Signed-off-by: June Clementine Strawberry <june@3.dog>
2025-04-02 22:44:44 -04:00
June Clementine Strawberry
1b71b99c51
fix weird issue with acl c2s check
...
Signed-off-by: June Clementine Strawberry <june@3.dog>
2025-04-02 10:49:38 -04:00
Jason Volk
3f0f89cddb
use async_trait without axum re-export
...
Signed-off-by: Jason Volk <jason@zemos.net>
2025-03-31 04:27:20 +00:00
Jason Volk
d3b65af616
remove several services.globals config wrappers
...
Signed-off-by: Jason Volk <jason@zemos.net>
2025-03-31 03:00:53 +00:00
Jason Volk
d60920c728
workaround some large type name length issues
...
Signed-off-by: Jason Volk <jason@zemos.net>
2025-03-31 03:00:53 +00:00
Jason Volk
bee4c6255a
reorg PduEvent strip tools and callsites
...
Signed-off-by: Jason Volk <jason@zemos.net>
2025-03-30 23:00:37 +00:00