Ivan Enderlin
a7cb094aaf
feat(sqlite): Add a write-only connection in SqliteStateStore.
...
This patch introduces a write-only connection in `SqliteStateStore`
_à la_ `SqliteEventCacheStore`. The idea is to get many read-only
connections, and a single write-only connections behind a lock, so that
there is a single writer at a time.
This patch renames the `acquire` method to `read`, and it introduces a
new `write` connection.
2025-10-03 15:00:37 +02:00
Ivan Enderlin
764a8a4c77
doc(sqlite): Fix // to ///.
...
This patch transforms an inline comment into a doc comment.
2025-10-03 15:00:37 +02:00
Benjamin Bouvier
37ee5d5075
refactor(stores): get rid of the temporary compute_filter_strings now that Ruma has been updated
...
This was a local fix for a bug in Ruma, that has been fixed upstream since then, so we can get rid of the workaround now.
2025-10-01 16:50:23 +00:00
Ivan Enderlin
2ec33183c4
doc(sqlite): Fix formatting and typo.
2025-09-26 16:07:20 +02:00
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
32255cd178
Update changelog
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
b2120a8f3d
Update changelog to represent changes
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
4754ac2cbf
Updated changelog
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
Damir Jelić
4c1f80faf7
chore: Release matrix-sdk version 0.14.0
2025-09-04 16:05:48 +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
Damir Jelić
1e30916754
chore: Bump most of our deps
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