Jason Volk
d73b4332bf
Fix deletion of local leave state to allow sync for clients.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-09-11 06:20:41 +00:00
dasha_uwu
adadafa88f
Fix alias resolution logic; element-web v1.11.111 compat
...
element-hq/element-web#30641
element-hq/element-web#30611
Signed-off-by: Jason Volk <jason@zemos.net >
2025-09-09 02:28:19 +00:00
Jason Volk
f6c88e3a16
Add query for alias existing; tweak tracing spans.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-09-05 05:45:41 +00:00
Jason Volk
3deebeab78
Fix sliding-sync room_avatar conditions.
...
Eliminate jsOption from non-sliding-sync avatar related codepaths.
Signed-off-by: Jason Volk <jason@zemos.net >
2025-09-05 05:45:41 +00:00
Jason Volk
86781522b6
Allow state visibility for once-joined users when history_visibility=shared.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-09-05 05:45:41 +00:00
Jason Volk
3a78ba2b16
Support v1/v2 conditions for join/leave, creation and other operations. ( #12 )
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-09-05 05:45:41 +00:00
Jason Volk
6a583a359e
Support v1/v2 prev_events/auth_events outgoing federation format. ( #12 )
...
Support v1/v2 prev_events/auth_events when handling outlier pdu. (#12 )
Signed-off-by: Jason Volk <jason@zemos.net >
2025-09-05 05:45:41 +00:00
Jason Volk
eec6e45358
Improve error messages for missing auth event and invalid join validations.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-09-05 05:45:41 +00:00
Jason Volk
aa413ae601
Implement room purge after last local user leaves. ( resolves #83 )
...
Consume a state_lock for room delete call.
Signed-off-by: Jason Volk <jason@zemos.net >
2025-08-30 11:45:32 +00:00
Jason Volk
7c19d1e1ff
Fix unnecessary backfill requests after reaching m.room.create.
...
Cleanup condition.
Signed-off-by: Jason Volk <jason@zemos.net >
2025-08-30 11:45:32 +00:00
Jason Volk
616f20f273
Fix unused lifetims.
...
Fix unused pub(crate).
Allow implicit hasher.
Fix unused self.
Signed-off-by: Jason Volk <jason@zemos.net >
2025-08-30 11:13:14 +00:00
Jason Volk
7bc47e58d0
Add state_cache iteration for local pending invitees to room.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-08-30 10:04:24 +00:00
Jason Volk
12bdfe3b66
Optimize backfill_if_required conditions.
...
Optimize backfill_pdu.
Signed-off-by: Jason Volk <jason@zemos.net >
2025-08-29 06:49:04 +00:00
Jason Volk
757d38e891
Optimize expected auth types checking.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-08-29 06:49:04 +00:00
Jason Volk
4b66911886
Eliminate redundant duplicate auth and matching room check.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-08-29 06:49:04 +00:00
dasha_uwu
d05d3f710f
Room deletion ( fixes #43 )
2025-08-28 23:28:20 +05:00
dasha_uwu
4884c55be7
Split disable_room, ban_room functions
2025-08-28 23:28:13 +05:00
dasha_uwu
b5890b9664
Services refactor
...
Replace structs of Dep<Service> with OnceServices, so each service has a Services reference
Remove service name => Service map
Flatten Services.rooms
Make reqwest Clients lazy initialized (client service)
2025-08-28 23:15:59 +05:00
Jason Volk
3430d4ac86
Improved solution to current_shortstatehash > next_batch. ( 59b62b1)
...
`current_shortstatehash` is now calculated from timeline which is already
upper-bound by the `next_batch` snapshot. Previously `current_shortstatehash`
was truly current and had to be disallowed from exceeding `next_batch` by
ignoring the room during sync until a future pass when these values finally
met that condition.
Signed-off-by: Jason Volk <jason@zemos.net >
2025-08-27 00:41:12 +00:00
Jason Volk
628597c318
State-reset and security mitigations.
...
Upgrade Ruma to present.
The following are intentionally benign for activation in a later commit:
- Hydra backports not default.
- Room version 12 not default.
- Room version 12 not listed as stable.
Do not enable them manually or you can brick your database.
Signed-off-by: Jason Volk <jason@zemos.net >
2025-08-11 18:45:28 +00:00
Jason Volk
d7e5c0ccf3
Optimize spaces pageload; pipeline outer loop.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-08-07 03:16:32 +00:00
Jason Volk
b00361d274
Add specific shorteventid to shortstatehash query function.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-08-04 18:55:37 +00:00
Jason Volk
a0dc37e024
Fetch prev_events concurrently.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-08-04 05:13:06 +00:00
Jason Volk
003257693b
Fetch outlier and auth chains concurrently.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-08-04 00:48:30 +00:00
Jason Volk
4b84e7c31a
Flatten and dedup append_incoming branch in upgrade_outlier.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-08-02 18:00:20 +00:00
Jason Volk
4237f21903
Renames for several event_handler service files, fn's and args.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-08-02 18:00:20 +00:00
Jason Volk
4ac61fd87b
Remove federation_handletime for now.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-08-02 18:00:20 +00:00
Jason Volk
d217927000
Split fetch_outlier; abstract backoff stanzas into fn.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-08-02 18:00:20 +00:00
Jason Volk
4b9b85f671
ABI encapsulations; generate leaf code in pub fn's rather than inling them.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-08-02 18:00:20 +00:00
Jason Volk
fa3b72947a
Eliminate rooms outlier service, duplicate subset of timeline service.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-08-02 18:00:20 +00:00
Jason Volk
5d963abda6
Combine rooms timeline service data unit into mod; eliminate wrappers.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-08-02 18:00:20 +00:00
Jason Volk
0d7eeb7766
Extend the append count guards over subsequent operations.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-08-01 09:14:58 +00:00
Jason Volk
1bb16c8b73
Additional span logging of counter state; trace logging of contents.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-07-30 23:34:21 +00:00
Jason Volk
59b62b1453
Fix partial v3 syncs on post-timeout pass; fix partial state on room join.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-07-30 23:34:21 +00:00
Jason Volk
80015a6a30
Fix missed rustfmt let due to comment in chain.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-07-30 19:09:46 +00:00
Jason Volk
bf12e05dae
Add meta iteration for public rooms.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-07-29 04:18:21 +00:00
Jason Volk
71ef093edc
Unbox and pin various either-or futures.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-07-29 04:18:21 +00:00
Jason Volk
8c8985e8f2
Add user_id to v3 sync span; add span for sync token association.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-07-27 11:03:12 +00:00
Jason Volk
66334bdd53
Move syncv3 typings event for user.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-07-27 07:04:10 +00:00
Jason Volk
c6836e51b2
Add upper-bound to readreceipts_since() and callsites.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-07-26 04:44:09 +00:00
Jason Volk
22ef704ac6
Fix bug from roomuserid_knockedcount vs. roomid_knockedcount.
...
The use of "count" instead of "sequence" leads to confusion with
i.e. counting the elements of a set e.g. Iterator::count().
Signed-off-by: Jason Volk <jason@zemos.net >
2025-07-25 20:07:21 +00:00
Jason Volk
0fcb072239
Refactor counter increment sites for TwoPhaseCounter.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-07-25 10:32:52 +00:00
Tyler Mayoff
9ea8fbc482
Add typing indicators to sync v5.
...
Co-authored-by: Jade Ellis <jade@ellis.link >
2025-07-24 22:17:30 +00:00
Jason Volk
ed0b3c764e
Parallelize state_at_incoming sstatehash/prev_event fetches.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-07-24 04:07:28 +00:00
Jason Volk
190269f616
Simplify Pdu Hashes struct.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-07-24 04:07:28 +00:00
Jason Volk
50de6277b8
Split/cleanup backfill stream stanza.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-07-24 04:07:27 +00:00
Jason Volk
4429323e11
Flatten threads_until().
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-07-24 04:07:27 +00:00
Jason Volk
18f8d6c65c
Rebox future segmentations.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-07-24 04:07:27 +00:00
Jason Volk
c8d35cca57
Refactor to async closures.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-07-24 04:07:27 +00:00
Jason Volk
cca0f20148
Replace several expects with error coercions.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-07-24 04:07:27 +00:00