Commit graph

2889 commits

Author SHA1 Message Date
Lambda
f903421c3f SSS: implement typing indications 2025-08-10 19:42:04 +00:00
Lambda
3f315ee683 SSS: sort rooms in lists by latest event arrival time 2025-08-10 19:42:04 +00:00
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
142e3158e4 Bump ruma with SSS patches 2025-08-10 19:39: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
Jonas Platte
d283da51c6
Upgrade rust-rocksdb 2025-08-09 01:18:51 +02: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
Jonas Platte
ab5f76f49f
Put ruma dependency in its own TOML table 2025-08-09 00:13:27 +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
98222b38c2 bump cargo dependencies
There are two new default features:

'system-proxy' for reqwest, which we are not enabling because it only
does anything on windows and mac, which we don't support.

'prefer-post-quantum' for rustls, which we are not enabling because it
only does anything for aws-lc-rs, which we don't use.
2025-08-06 12:27:45 -07: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
13203d3b45 update rust to 1.88.0 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
fa6fb37a2c bump rust version to 1.85.0
base64ct 1.8 (a transitive dependency of argon2) requires >=1.85.0.
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
Olivia Lee
d2ee80db94 update flake.lock
• Updated input 'attic':
    'github:zhaofengli/attic/ff8a897d1f4408ebbf4d45fa9049c06b3e1e3f4e' (2025-02-02)
  → 'github:zhaofengli/attic/24fad0622fc9404c69e83bab7738359c5be4988e' (2025-07-11)
• Updated input 'attic/crane':
    'github:ipetkov/crane/4c6c77920b8d44cd6660c1621dea6b3fc4b4c4f4' (2024-08-06)
  → 'github:ipetkov/crane/aed2020fd3dc26e1e857d4107a5a67a33ab6c1fd' (2025-07-03)
• Removed input 'attic/crane/nixpkgs'
• Updated input 'attic/flake-compat':
    'github:edolstra/flake-compat/0f9255e01c2351cc7d116c072cb317785dd33b33' (2023-10-04)
  → 'github:edolstra/flake-compat/9100a0f413b0c601e0533d1d94ffd501ce2e7885' (2025-05-12)
• Updated input 'attic/flake-parts':
    'github:hercules-ci/flake-parts/8471fe90ad337a8074e957b69ca4d0089218391d' (2024-08-01)
  → 'github:hercules-ci/flake-parts/77826244401ea9de6e3bac47c2db46005e1f30b5' (2025-07-01)
• Updated input 'attic/nix-github-actions':
    'github:nix-community/nix-github-actions/e04df33f62cdcf93d73e9a04142464753a16db67' (2024-10-24)
  → 'github:nix-community/nix-github-actions/f4158fa080ef4503c8f4c820967d946c2af31ec9' (2025-01-21)
• Updated input 'attic/nixpkgs':
    'github:NixOS/nixpkgs/159be5db480d1df880a0135ca0bfed84c2f88353' (2024-09-11)
  → 'github:NixOS/nixpkgs/9b008d60392981ad674e04016d25619281550a9d' (2025-07-08)
• Updated input 'attic/nixpkgs-stable':
    'github:NixOS/nixpkgs/797f7dc49e0bc7fab4b57c021cdf68f595e47841' (2024-08-22)
  → 'github:NixOS/nixpkgs/29e290002bfff26af1db6f64d070698019460302' (2025-07-05)
• Updated input 'crane':
    'github:ipetkov/crane/70947c1908108c0c551ddfd73d4f750ff2ea67cd' (2025-03-19)
  → 'github:ipetkov/crane/544d09fecc8c2338542c57f3f742f1a0c8c71e13' (2025-07-19)
• Updated input 'fenix':
    'github:nix-community/fenix/7d9ba794daf5e8cc7ee728859bc688d8e26d5f06' (2025-03-20)
  → 'github:nix-community/fenix/62105e0745d7450976b26dbd1497b8cbe15eb9ff' (2025-07-20)
• Updated input 'fenix/rust-analyzer-src':
    'github:rust-lang/rust-analyzer/15d87419f1a123d8f888d608129c3ce3ff8f13d4' (2025-03-18)
  → 'github:rust-lang/rust-analyzer/ed193af36937d2fd4bb14a815ec589875c5c7304' (2025-07-19)
• Updated input 'flake-compat':
    'github:edolstra/flake-compat/ff81ac966bb2cae68946d5ed5fc4994f96d0ffec' (2024-12-04)
  → 'github:edolstra/flake-compat/9100a0f413b0c601e0533d1d94ffd501ce2e7885' (2025-05-12)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/698214a32beb4f4c8e3942372c694f40848b360d' (2025-03-25)
  → 'github:NixOS/nixpkgs/c87b95e25065c028d31a94f06a62927d18763fdf' (2025-07-19)
2025-08-06 12:27:45 -07:00
Charles Hall
a3a2485edb improve link accessibility
The previous text causes lints to fire in new versions of markdownlint.
2025-08-06 12:27:45 -07:00
Charles Hall
e31f4454bd assume nix is available 2025-08-03 10:59:28 -07:00
Charles Hall
5e9c1f9ee3 combine conditions in before_script 2025-08-03 10:59:28 -07:00
Charles Hall
38202813ff remove nix-direnv
It doesn't actually do anything unless more configuration is added, but
it's not really necessary for this use case so removing it is easier.
2025-08-03 10:59:28 -07:00