Commit graph

1841 commits

Author SHA1 Message Date
Lambda
d51aea7672 SSS: add TODOs 2025-08-10 19:42:04 +00:00
Lambda
f9b2836405 SSS: don't set txn_id
The field got dropped on the transition from MSC3575 to MSC4186, and
including it anyway confuses matrix-rust-sdk into trying to use the
(also removed) "sticky" parameters.
2025-08-10 19:42:04 +00:00
Lambda
7b4acd214c SSS: implement num_live 2025-08-10 19:42:04 +00:00
Lambda
8e3e1b1f8d SSS: fix to-device event deletion
This is the one major fix in SSS: only delete to-device events when the
client confirms receipt of the previous response, not simply on every
request!
2025-08-10 19:42:04 +00:00
Lambda
96a9632438 SSS: implement receipts 2025-08-10 19:42:04 +00:00
Lambda
72c898dd41 SSS: implement room account data 2025-08-10 19:42:04 +00:00
Lambda
d497a19c2d SSS: don't block if there is new extension data 2025-08-10 19:42:04 +00:00
Lambda
395d16ca22 SSS: factor out account data extension 2025-08-10 19:42:04 +00:00
Lambda
f5ff294c3e SSS: refactor E2EE extension like other extensions 2025-08-10 19:42:04 +00:00
Lambda
30951cb611 SSS: factor out to_device 2025-08-10 19:42:04 +00:00
Lambda
adff2ec637 SSS: implement bump_stamp 2025-08-10 19:42:04 +00:00
Lambda
a2bbfd1242 SSS: Fix room names 2025-08-10 19:42:04 +00:00
Lambda
166a269034 SSS: fix timeline pagination 2025-08-10 19:42:04 +00:00
Lambda
891eb410cc SSS: implement state filtering 2025-08-10 19:42:04 +00:00
Lambda
ede95dcee5 SSS: implement list filters 2025-08-10 19:42:02 +00:00
Lambda
7558d3456b SSS: split up sync_events_v5_route() 2025-08-10 19:41:11 +00:00
Lambda
9405e5f16c SSS: improve tracing 2025-08-10 19:40:03 +00:00
Lambda
8e94020d4f SSS: switch from v4 to v5 types 2025-08-10 19:38:39 +00:00
Lambda
c9a435ab34 Renamed MSC3575 -> MSC4186, remove obsolete config 2025-08-10 19:37:15 +00:00
Lambda
b4f6c88e57 MSC3575: make known rooms global per connection rather than per list 2025-08-10 19:37:14 +00:00
Lambda
a72ff4f6e6 MSC3575: avoid double-processing rooms in case of overlapping ranges 2025-08-10 19:36:31 +00:00
Lambda
ede39370a4 MSC3575: allow empty conn_id 2025-08-10 19:17:45 +00:00
Lambda
64ad940bad MSC3575: remove sticky parameters 2025-08-10 19:17:41 +00:00
Lambda
991f1e2c0d MSC3575: factor out ConnectionKey 2025-08-10 17:25:47 +00:00
Lambda
3bbee92db4 MSC3575: remove useless Ok-wrapping 2025-08-10 16:56:57 +00:00
Lambda
e75fe7b75a MSC3575: factor out TodoRoom 2025-08-10 11:41:24 +00:00
Lambda
6d4f165629 MSC3575: use explicit loop for ops creation 2025-08-10 11:27:02 +00:00
Lambda
dd705a2bb2 Revert "Remove support for MSC3575 (sliding sync)"
This reverts commit d87848b9a6.
2025-08-10 10:49:50 +00:00
Lambda
bbd0439001 Add documentation for Short*Id types 2025-08-10 09:56:04 +00:00
Lambda
33da7dcd96 Check account data type match before storing to DB 2025-08-10 09:56:04 +00:00
Olivia Lee
b94cc429b7
Bump ruma to 1387667de806c37a6d7f72125117009bd618e32a
The significant change is 26edd40a704040e7104161da81c9bae91b7ddcaa,
which removes the global compat feature, so that each compat feature
must now be enabled individually. We're using the slightly later
1387667d because it has a bugfix that ruma needs to compile.

There are a few ruma compat features that were not previously part of
the global compat feature:

 - compat-arbitrary-length-ids
 - compat-upload-signature
 - compat-encrypted-stickers

I have not enabled these here, to avoid a behavior change.
2025-08-09 00:31:35 +02:00
Olivia Lee
6bf289a714
Remove unused parameter
… of filter_keys_server_map and filter_keys_single_server.
2025-08-09 00:13:17 +02:00
Jonas Platte
d87848b9a6
Remove support for MSC3575 (sliding sync)
Co-authored-by: Olivia Lee <olivia@computer.surgery>
2025-08-08 22:24:56 +02:00
Olivia Lee
2648991092 fix lints revealed by tracing change
<https://github.com/tokio-rs/tracing/pull/3108> changes #[instrument] so
that several lints that were previously hidden on instrumented functions
are now visible.
2025-08-06 12:27:45 -07:00
Charles Hall
595f35b673 fix lints for upcoming 1.88.0 toolchain 2025-08-06 12:27:45 -07:00
Olivia Lee
fb4d168921 fix new lints from clippy 0.1.85 2025-08-06 12:27:45 -07:00
Olivia Lee
e65815c82e remove unused lifetime parameter from utils::calculate_hash
This doesn't trigger a warning before rustc 1.58.0, for whatever reason.
2025-08-06 12:27:45 -07:00
Jonas Platte
c713e9f21f
Remove no-op #[async_trait] attribute 2025-07-31 20:44:54 +02:00
Jonas Platte
a3da77ce2c
Add a couple extra Sync bounds
Not necessary right now, but required for axum 0.8.
2025-07-31 20:44:54 +02:00
Charles Hall
e6dbc293f1 remove jemalloc support
It's no longer being developed and it is very very annoying to maintain
support for.
2025-07-21 21:48:57 -07:00
Olivia Lee
55a01e7113
don't strip unknown keys when copying redacts property to/from content
Servers are required to preserve unknown properties in event content,
since they may be added by a future version of the spec. Round-tripping
through RoomRedactionEventContent results in dropping all unknown
properties.
2025-07-20 18:07:30 -07:00
Olivia Lee
9a142c7557
refactor Pdu::copy_redacts to use early returns 2025-07-20 12:46:06 -07:00
Olivia Lee
88ad596e8d
add type-safe accessors to account_data service 2025-06-02 11:07:21 -07:00
Olivia Lee
b82458a460
use event content in account_data service api instead of full events
This eliminates the possibility of passing an event that has a
mismatching type, reducing the space of possible invalid states.
2025-06-02 11:07:21 -07:00
Olivia Lee
66210bc32d
separate account_data service methods for room vs global events
Previously we were mashing everything together as RoomAccountDataEvent,
even the global events. This technically worked, because of the hidden
custom fields on the ruma event types, but it's confusing and easy to
mess up. Separate methods with appropriate types are preferable.
2025-06-02 11:07:21 -07:00
Olivia Lee
6897f0ba34
clarify behavior in service::account_data::changes_since docs 2025-06-02 11:07:21 -07:00
Olivia Lee
fe14300d91
reintroduce account_data::Service struct
In preparation for adding some additional methods at the service level.

Dropping the tracing spans for the data methods, because two duplicate
spans here seems kinda excessive.
2025-06-02 11:07:21 -07:00
LordMZTE
868bb44adf
support listening on Unix sockets 2025-06-01 22:16:48 +02:00
Olivia Lee
188eac5cfd include ban reasons when banning a user that already had a member event
The case where the user never had a member event in the room is already
handled correctly.
2025-06-01 09:38:27 +00:00
Lambda
c965c9747b Send User-Agent header in outbound requests 2025-05-29 19:53:02 +00:00