Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
3bc11a5
feat(sqlite): Support compiling to wasm32 target for matrix_sdk_sqlite
Mar 8, 2026
7bfe5a1
chore(changelogs): update change log
Mar 23, 2026
746b2e8
fix(sqlite): add js feature to support compiling sqlite to WASM target
Mar 26, 2026
5325493
chore(sqlite): fix lint warning under WASM target
Mar 26, 2026
bb04434
refactor(sqlite): create `SyncWrapper` replacement struct for avoidin…
Mar 26, 2026
7d698fd
refactor(sqlite): move db fs setup to utils module
Mar 26, 2026
946b397
chore(lint): apply lint fix
Mar 26, 2026
c7aff45
refactor(vfs): avoid global installation of VFS
Mar 27, 2026
bcd727e
feat(test): make state store test run in WASM environment
Mar 27, 2026
51f0837
feat(test): make media store test run in WASM environment
Mar 27, 2026
39f27c9
feat(test): make event cache store test run in WASM environment
Mar 27, 2026
1aac394
feat(test): make crypto store test run in WASM environment
Mar 27, 2026
0b9d6e4
chore(lint): apply lint suggestion
Mar 27, 2026
cddebae
feat(ci): configure xtask to run sqlite wasm test suites
Mar 27, 2026
4ec20bf
fix(ci): force SQLite wasm test to run in browser only
Mar 28, 2026
281aca3
chore(ci): allow dead code when certain features in disabled
Mar 28, 2026
4e1b849
feat(ci): run matrix sdk wasm test with sqlite features enabled
Mar 28, 2026
ec87f20
fix(ci): missing testing feature
Mar 28, 2026
fc742f3
fix(test): incorrect database name passed when clear_data is true
Mar 28, 2026
7ed7f48
chore(changelog): update sdk change log
Mar 28, 2026
42108b1
refactor(connection): split wasm implementation into a separate module
Mar 30, 2026
4bd5f07
chore: remove unintented changes from rebase conflict
Mar 30, 2026
fc2b76e
Merge remote-tracking branch 'upstream/main'
Apr 14, 2026
c4b68d9
chore(ci-workflow): remove emsdk installation
Apr 14, 2026
3ff2df7
chore(ci): group sqlite feature among other sdk features
Apr 14, 2026
a62dc9c
chore(ci): remove forced runner
Apr 14, 2026
0f3d612
refactor(test): use common sleep method instead of platform specific one
Apr 14, 2026
30c9dbc
refactor(connection): refactor connection module to avoid calling set…
Apr 14, 2026
750eeed
feat(test): create shared test utils
Apr 14, 2026
8f405c0
refactor(test): use temp dir creation utils for unit tests
Apr 14, 2026
93758da
chore: remove wasm target os check
Apr 14, 2026
5a38eff
chore: clean up git diff
Apr 14, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 9 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -256,6 +256,15 @@ jobs:
- name: '[m], indexeddb stores, no crypto'
cmd: matrix-sdk-indexeddb-stores-no-crypto

- name: '[m]-sqlite'
cmd: sqlite

- name: '[m], sqlite stores'
cmd: matrix-sdk-sqlite-stores

- name: '[m], sqlite stores, no crypto'
cmd: matrix-sdk-sqlite-stores-no-crypto

steps:
- name: Checkout the repo
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
Expand Down
181 changes: 164 additions & 17 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 4 additions & 4 deletions crates/matrix-sdk-crypto/src/store/integration_tests.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1603,26 +1603,26 @@ macro_rules! cryptostore_integration_tests_time {
assert!(acquired5.is_none());

// That's a nice test we got here, go take a little nap.
tokio::time::sleep(Duration::from_millis(50)).await;
matrix_sdk_common::sleep::sleep(Duration::from_millis(50)).await;

// Still too early.
let acquired55 = store.try_take_leased_lock(300, "key", "bob").await.unwrap();
assert!(acquired55.is_none()); // not acquired

// Ok you can take another nap then.
tokio::time::sleep(Duration::from_millis(250)).await;
matrix_sdk_common::sleep::sleep(Duration::from_millis(250)).await;

// At some point, we do get the lock.
let acquired6 = store.try_take_leased_lock(0, "key", "bob").await.unwrap();
assert_eq!(acquired6, Some(2)); // new lock generation!

tokio::time::sleep(Duration::from_millis(1)).await;
matrix_sdk_common::sleep::sleep(Duration::from_millis(1)).await;

// The other gets it almost immediately too.
let acquired7 = store.try_take_leased_lock(0, "key", "alice").await.unwrap();
assert_eq!(acquired7, Some(3)); // new lock generation!

tokio::time::sleep(Duration::from_millis(1)).await;
matrix_sdk_common::sleep::sleep(Duration::from_millis(1)).await;

// But when we take a longer lease…
let acquired8 = store.try_take_leased_lock(300, "key", "bob").await.unwrap();
Expand Down
2 changes: 2 additions & 0 deletions crates/matrix-sdk-sqlite/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,8 @@ All notable changes to this project will be documented in this file.
- [**breaking**] In `EventCacheStore::handle_linked_chunk_updates`, new chunks may no longer
reference chunk identifiers which do not yet exist in the store
([#6061](https://github.com/matrix-org/matrix-rust-sdk/pull/6061))
- Support compiling to `wasm32-unknown-unknown` target + bump [rusqlite](https://github.com/rusqlite/rusqlite/releases/tag/v0.38.0) version to `0.38`
([#6329](https://github.com/matrix-org/matrix-rust-sdk/pull/6329))

### Bug Fixes

Expand Down
Loading
Loading