multi prise
fa7fd5df42
Remove unusual import
2025-09-24 12:35:17 +02:00
multi prise
adc8276162
Add key opening logic to the media store
2025-09-24 12:35:17 +02:00
multi prise
abecb33e34
Lint code
2025-09-24 12:35:17 +02:00
multi prise
b26ce417f0
Add comments documenting the new structure
2025-09-24 12:35:17 +02:00
multi prise
5a1bd54bb1
Implement use of Zeroizing struct for string
2025-09-24 12:35:17 +02:00
multi prise
0d0e2aa472
Add ZeroiseOnDrop trait to secret and make the key a Box
2025-09-24 12:35:17 +02:00
multi prise
88ed0afcb3
Replace missing line
2025-09-24 12:35:17 +02:00
multi prise
9938ab8b1f
Reimplement previous tests for the store and on top of the one testing the opening with a key
2025-09-24 12:35:17 +02:00
multi prise
eed7384934
Remove some superfluous change
2025-09-24 12:35:17 +02:00
multi prise
c51536a054
reformat
2025-09-24 12:35:17 +02:00
multi prise
6099928b40
Remove conditional logic for running tests
2025-09-24 12:35:17 +02:00
multi prise
fac1f295b2
Correct wrong borrow
2025-09-24 12:35:17 +02:00
multi prise
24d02a72e3
implement zeroizing of secrets after use
2025-09-24 12:35:17 +02:00
multi prise
2a073043fd
Revert "Use of lifetime in order to not clone/copy the data"
...
This reverts commit 009ee3a0e5fdff1332aaf0b1e62ab2577d728b82.
2025-09-24 12:35:17 +02:00
multi prise
8e759befd3
Refactorize tests config to correspond with the new api
2025-09-24 12:35:17 +02:00
multi prise
9faffa5b10
Temporary comment insecure function
2025-09-24 12:35:17 +02:00
multi prise
75b8c9fe93
Use of lifetime in order to not clone/copy the data
2025-09-24 12:35:17 +02:00
multi prise
004d98230c
Uncomment the config directives and allows test to run faster by usinf an insecure export function
2025-09-24 12:35:17 +02:00
multi prise
eb37a0d2e1
Update some expect text to make sure they reflect the use of secret instead of a only a key to encrypt a store
2025-09-24 12:35:17 +02:00
multi prise
8a0e61e95b
correct comment on the state store file
2025-09-24 12:35:17 +02:00
multi prise
a2e2765298
correct comment on the crypto store file
2025-09-24 12:35:17 +02:00
multi prise
6e1e0981b1
remove typo
2025-09-24 12:35:17 +02:00
multi prise
5d169ae765
Comment the use
2025-09-24 12:35:17 +02:00
multi prise
34dd7ea3cd
Revert get_or_create_store_cypher to use
2025-09-24 12:35:17 +02:00
multi prise
4930c589a8
Refactorize SqliteStoreConfig::key and SqliteStoreConfig::passphrase method
2025-09-24 12:35:17 +02:00
multi prise
f6d2e73cab
More reformarting of files
2025-09-24 12:35:17 +02:00
multi prise
2bd5ec30d1
Correct some tests
2025-09-24 12:35:17 +02:00
multi prise
425b502977
Format files
2025-09-24 12:35:17 +02:00
multi prise
0dfecd78d6
Updated the store encryption to use a enum Secret instead of passphrase
2025-09-24 12:35:17 +02:00
multi prise
72bb452b5b
Remove all passphrase mention
2025-09-24 12:35:17 +02:00
multi prise
c17dbf9ebe
Replace the passphrase logic with a key logic in the implementation of encrypted store
2025-09-24 12:35:17 +02:00
multi prise
5fd7c9e179
Add the key logic to the SqliteStoreConfig struct
2025-09-24 12:35:17 +02:00
Benjamin Bouvier
bf4a46e8de
chore: rename a few badly named variables in the sql event cache store
2025-09-22 11:20:49 +02:00
Ivan Enderlin
5ccbc1c378
fix(sqlite): Empty the cache after the introduction of TimelineEvent::timestamp.
...
After the merge of
https://github.com/matrix-org/matrix-rust-sdk/pull/5648 , we want
all events to get a `TimelineEvent::timestamp` value (extracted from
`origin_server_ts`).
To accomplish that, we are emptying the event cache. New synced events
will be built correctly, with a valid `TimelineEvent::timestamp`,
allowing a clear, stable situation.
2025-09-12 15:06:46 +02:00
Shrey Patel
c2bc465c06
feat(base): Add get_room_events to EventCacheStore trait and impls.
2025-09-12 12:59:22 +02:00
Kévin Commaille
90eb403c18
sqlite: Drop media table from event cache store
...
Since the media store was split into a separate database.
Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr >
2025-09-11 11:43:04 +01:00
dragonfly1033
2afbdfae0b
Split media store from event cache store. ( #5568 )
...
This PR is a start to the process of splitting the media store from the
event cache store. #5410
It contains:
* Split `MediaStore` trait from `EventCacheStore`.
* Rename `EventCacheStoreMedia` to `MediaStoreInner`.
* Move relevant tests into `MediaStoreIntegrationTests`.
This will be done over 3 PR's (reviewing 1, 2, 3 then merging 3 into 2
into 1).
A reminder comment for my own sanity:
This PR will not pass tests until after merging.
Current state of this PR:
- [x] Step 1 reviewed #5568
- [x] Step 2 reviewed #5569
- [x] Step 3 reviewed #5571
- [x] Step 3 merged into Step 2
- [x] Step 2 merged into Step 1
- [ ] Add changes to changelog.
- [ ] Ready to merge 🎉
Note, may also want to:
* Re-organize file structure
* Split/refactor benchmarks namely `benchmarks/benches/event_cache.rs`
<!-- description of the changes in this PR -->
- [ ] Public API changes documented in changelogs (optional)
<!-- Sign-off, if not part of the commits -->
<!-- See CONTRIBUTING.md if you don't know what this is -->
Signed-off-by: Shrey Patel shreyp@element.io
---------
Co-authored-by: Shrey Patel <shreyp@element.io >
2025-09-10 12:03:02 +02:00
Benjamin Bouvier
4adbb4aa88
feat(sdk): add support for persisting the thread subscription catchup tokens
2025-09-02 14:57:49 +02:00
multisme
ea59bc8955
Implement querying inboundgroupsessions by room_id ( #5534 )
...
History sharing: improve efficiency of building key bundle
Signed-off-by: multi
[multiestunhappydev@gmail.com ](mailto:multiestunhappydev@gmail.com )
Partially Implement
https://github.com/matrix-org/matrix-rust-sdk/issues/5513
---------
Signed-off-by: multisme <korokoko.toi@gmail.com >
Co-authored-by: Richard van der Hoff <richard@matrix.org >
2025-09-02 12:07:07 +01:00
Damir Jelić
20cd0bedfa
chore: Fix a clippy warning about a useless conversion
2025-09-01 16:33:10 +02:00
Benjamin Bouvier
9f22f550bf
refactor(sdk): avoid duplicating the comparison of bumpstamps
2025-09-01 10:38:34 +02:00
Benjamin Bouvier
7a762035f1
feat(sdk): store the thread subscription bumpstamp and implement the correct upsert semantics
2025-09-01 10:38:34 +02:00
Benjamin Bouvier
8c0a918e6e
refactor(sdk): introduce a lightweight ThreadSubscription for external consumers, and rename previous one to StoredThreadSubscription
...
External consumers are likely not interested about unsubscriptions and
the bump stamp values themselves, so let's not expose these to them.
2025-09-01 10:38:34 +02:00
Benjamin Bouvier
33c317e6d2
refactor(sdk): put the subscription status + bumpstamp back into the stored thread subscription
2025-09-01 10:38:34 +02:00
Damir Jelić
527d001010
fix: Only report duplicate one-time key errors once
...
Since the server will reject any duplicate one-time keys forever,
clients which encounter such an error will spam sentry with such
reports.
This patch ensures that we only send the sentry report once.
2025-08-28 12:48:30 +02:00
Benjamin Bouvier
d66733052a
feat(event cache): add indexes for finding related events
2025-08-26 16:25:56 +02:00
multisme
a66b2c5123
feat(test): add a test utils crate to make log initialization possible everywhere
...
This PR allows `init_tracing_for_test` to be called by any other crate in the sdk
Signed-off-by: multi [multiestunhappydev@gmail.com ](mailto:multiestunhappydev@gmail.com )
2025-08-14 05:24:03 +00:00
Damir Jelić
139673810f
Remember the public Curve25519 key of the sender of the historic room key bundle
2025-08-08 09:19:19 +02:00
Benjamin Bouvier
0cdec9d912
refactor(threads): flatten the ThreadStatus enum
2025-08-06 15:28:43 +02:00
Benjamin Bouvier
d180d49c07
refactor(threads): do not store the unsubscribed state in the DB
2025-08-06 15:28:43 +02:00