Jason Volk
83afe81f60
Move shortstatehash queries from state_accessor to state service.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-10-02 05:27:48 +00:00
Jason Volk
aa37e32471
Optimize Pdu prev_events and auth_events containers.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-09-23 18:16:24 +00:00
dasha_uwu
89a67af607
pull stuff out of globals
2025-09-23 05:16:29 +00:00
dasha_uwu
9c4d376bec
pass args by ref
2025-09-23 05:16:29 +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
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
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
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
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
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
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
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
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
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
Jason Volk
23d188f612
Spacing/formatting adjustments.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-07-24 04:07:27 +00:00
Jason Volk
8244d78cb2
Make Event trait Send+Sync.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-07-24 04:07:27 +00:00
Jason Volk
af7dfb31bc
Abstract Pdu filter matching into trait Event.
...
Abstract Pdu unsigned accessors into trait Event.
Abstract Pdu relation related into trait Event.
Abstract PDU content into trait Event.
Move event_id utils from pdu to event.
Signed-off-by: Jason Volk <jason@zemos.net >
2025-05-11 07:02:14 +00:00
Jason Volk
57c519bbb8
Toward abstracting Pdu into trait Event.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-05-11 07:02:14 +00:00
Jason Volk
72fd072026
Macroize various remaining Error constructions.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-05-11 07:02:14 +00:00
Jason Volk
b1998dec9a
Eliminate associated Id type from trait Event.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-05-11 07:02:14 +00:00
Jason Volk
30c6ea4e64
Eliminate explicit parallel_fetches argument.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-05-11 07:02:14 +00:00
Jason Volk
76509830e6
chain_width to 50
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-04-22 04:42:34 +00:00
Jason Volk
9b658d86b2
Rename crates.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-04-22 04:37:49 +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
Jason Volk
d036394ec7
refactor incoming prev events loop; mitigate large future
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-04-03 22:40:40 +00:00
Jason Volk
6a073b4fa4
remove additional unnecessary Arc
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-04-03 22:40:40 +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
9ce95a7030
make service memory_usage()/clear_cache() async trait
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-03-26 01:33:41 +00:00
June Clementine Strawberry
2c58a6efda
allow broken no-op deny+allow room server ACL keys
...
Signed-off-by: June Clementine Strawberry <june@3.dog >
2025-03-07 00:54:30 -05:00
June Clementine Strawberry
de53ad83b2
run nightly cargo fmt again
...
Signed-off-by: June Clementine Strawberry <june@3.dog >
2025-03-02 23:15:05 -05:00
Jason Volk
a67ab75417
fix edition 2024 lints
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-02-27 10:26:45 -05:00
June Clementine Strawberry
a1e1f40ded
run cargo fix for rust 2024 changes and rustfmt
...
Signed-off-by: June Clementine Strawberry <strawberry@puppygock.gay >
2025-02-23 01:17:45 -05:00
Jason Volk
f2ca670c3b
optimize further into state-res with SmallString
...
triage and de-lints for state-res.
Signed-off-by: Jason Volk <jason@zemos.net >
2025-02-16 17:40:21 -05:00
Jason Volk
0a9a9b3c92
larcen state-res from ruma
2025-02-16 17:40:21 -05:00
Jason Volk
b872f8e593
optimize with SmallString; consolidate related re-exports
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-02-16 17:40:21 -05:00
Jason Volk
d32534164c
fix soft-failed redaction regression ( ff8bbd4cfa)
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-02-04 21:00:12 +00:00
Jason Volk
4add39d0fe
cache compressed state in a sorted structure for logarithmic queries with partial keys
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-02-02 10:08:30 +00:00
Jason Volk
ff8bbd4cfa
untwist the redaction check stanza
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-01-30 05:26:30 +00:00
Jason Volk
1a8482b3b4
refactor incoming extremities retention; broad filter, single pass
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-01-30 05:26:30 +00:00
Jason Volk
3c8376d897
parallelize state-res pre-gathering
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-01-29 23:21:07 +00:00
Jason Volk
50acfe7832
flatten auth chain iterations
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-01-29 21:28:26 +00:00