Skip to content

feat: update workspace dependencies to latest versions and resolve compatibility issues #5299

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
Show file tree
Hide file tree
Changes from all commits
Commits
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
1,708 changes: 852 additions & 856 deletions Cargo.lock

Large diffs are not rendered by default.

42 changes: 21 additions & 21 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ resolver = "2"
rust-version = "1.85"

[workspace.dependencies]
anyhow = "1.0.95"
anyhow = "1.0.98"
aquamarine = "0.6.0"
as_variant = "1.3.0"
assert-json-diff = "2.0.2"
Expand All @@ -28,7 +28,7 @@ assert_matches2 = "0.1.2"
async-compat = "0.2.4"
async-rx = "0.1.3"
async-stream = "0.3.5"
async-trait = "0.1.85"
async-trait = "0.1.88"
base64 = "0.22.1"
bitflags = "2.8.0"
byteorder = "1.5.0"
Expand All @@ -39,24 +39,24 @@ eyeball-im-util = "0.9.0"
futures-core = "0.3.31"
futures-executor = "0.3.31"
futures-util = "0.3.31"
getrandom = { version = "0.2.15", default-features = false }
getrandom = { version = "0.3.3", default-features = false }
gloo-timers = "0.3.0"
growable-bloom-filter = "2.1.1"
hkdf = "0.12.4"
hmac = "0.12.1"
http = "1.2.0"
imbl = "5.0.0"
indexmap = "2.7.1"
insta = { version = "1.42.1", features = ["json", "redactions"] }
indexmap = "2.10.0"
insta = { version = "1.43.1", features = ["json", "redactions"] }
itertools = "0.14.0"
js-sys = "0.3.69"
js-sys = "0.3.77"
mime = "0.3.17"
once_cell = "1.20.2"
pbkdf2 = { version = "0.12.2" }
pin-project-lite = "0.2.16"
proptest = { version = "1.6.0", default-features = false, features = ["std"] }
proptest = { version = "1.7.0", default-features = false, features = ["std"] }
rand = "0.8.5"
reqwest = { version = "0.12.12", default-features = false }
reqwest = { version = "0.12.20", default-features = false }
rmp-serde = "1.3.0"
# Be careful to use commits from the https://github.com/ruma/ruma/tree/ruma-0.12
# branch until a proper release with breaking changes happens.
Expand All @@ -79,31 +79,31 @@ ruma = { git = "https://github.com/ruma/ruma", rev = "d1d53e2b7aaf9190f11a5465b9
"unstable-msc4286",
] }
ruma-common = { git = "https://github.com/ruma/ruma", rev = "d1d53e2b7aaf9190f11a5465b9edf6a19fc5b59a" }
sentry = "0.36.0"
sentry-tracing = "0.36.0"
serde = { version = "1.0.217", features = ["rc"] }
sentry = "0.41.0"
sentry-tracing = "0.41.0"
serde = { version = "1.0.219", features = ["rc"] }
serde_html_form = "0.2.7"
serde_json = "1.0.138"
serde_json = "1.0.140"
sha2 = "0.10.8"
similar-asserts = "1.6.1"
stream_assert = "0.1.1"
tempfile = "3.16.0"
thiserror = "2.0.11"
tokio = { version = "1.43.1", default-features = false, features = ["sync"] }
tempfile = "3.20.0"
thiserror = "2.0.12"
tokio = { version = "1.45.1", default-features = false, features = ["sync"] }
tokio-stream = "0.1.17"
tracing = { version = "0.1.40", default-features = false, features = ["std"] }
tracing-core = "0.1.32"
tracing-subscriber = "0.3.18"
unicode-normalization = "0.1.24"
uniffi = { version = "0.28.0" }
uniffi_bindgen = { version = "0.28.0" }
uniffi = { version = "0.28.3" }
uniffi_bindgen = { version = "0.28.3" }
url = "2.5.4"
uuid = "1.12.1"
uuid = "1.17.0"
vodozemac = { version = "0.9.0", features = ["insecure-pk-encryption"] }
wasm-bindgen = "0.2.84"
wasm-bindgen = "0.2.100"
wasm-bindgen-test = "0.3.50"
web-sys = "0.3.69"
wiremock = "0.6.2"
web-sys = "0.3.77"
wiremock = "0.6.4"
zeroize = "1.8.1"

matrix-sdk = { path = "crates/matrix-sdk", version = "0.12.0", default-features = false }
Expand Down
8 changes: 8 additions & 0 deletions bindings/matrix-sdk-ffi/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,14 @@ All notable changes to this project will be documented in this file.
In the future additional choices (such as session storage, `sqlite` and `indexeddb`)
will likely be added as well.

### Maintenance

- Update xtask build system dependencies and fix compatibility with uniffi_bindgen 0.28.3.
The xtask build system now properly handles the updated uniffi_bindgen API for
generating Kotlin and Swift bindings by including the required EmptyCrateConfigSupplier
parameter in generate_bindings() calls.
([#XXXX](https://github.com/matrix-org/matrix-rust-sdk/pull/XXXX))

Breaking changes:

- `Client::reset_server_capabilities` has been renamed to `Client::reset_server_info`.
Expand Down
8 changes: 8 additions & 0 deletions crates/matrix-sdk-common/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,14 @@ All notable changes to this project will be documented in this file.

## [Unreleased] - ReleaseDate

### Maintenance

- Update getrandom dependency from 0.2.15 to 0.3.3 and migrate from the
deprecated 'js' feature to the new 'wasm_js' feature for WebAssembly
compatibility. This ensures proper random number generation in WebAssembly
environments with the latest getrandom API.
([#XXXX](https://github.com/matrix-org/matrix-rust-sdk/pull/XXXX))

## [0.12.0] - 2025-06-10

No notable changes in this release.
Expand Down
4 changes: 2 additions & 2 deletions crates/matrix-sdk-common/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -59,8 +59,8 @@ proptest.workspace = true
wasm-bindgen-test.workspace = true

[target.'cfg(target_family = "wasm")'.dev-dependencies]
# Enable the JS feature for getrandom.
getrandom = { workspace = true, default-features = false, features = ["js"] }
# Enable the wasm_js feature for getrandom.
getrandom = { workspace = true, default-features = false, features = ["wasm_js"] }
js-sys.workspace = true

[lints]
Expand Down
8 changes: 8 additions & 0 deletions crates/matrix-sdk-indexeddb/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,14 @@ All notable changes to this project will be documented in this file.

- Add support for received room key bundle data, as required by encrypted history sharing ((MSC4268)[https://github.com/matrix-org/matrix-spec-proposals/pull/4268)). ([#5276](https://github.com/matrix-org/matrix-rust-sdk/pull/5276))

### Maintenance

- Update getrandom dependency from 0.2.15 to 0.3.3 and migrate from the
deprecated 'js' feature to the new 'wasm_js' feature for WebAssembly
compatibility. This ensures proper random number generation in WebAssembly
environments with the latest getrandom API.
([#XXXX](https://github.com/matrix-org/matrix-rust-sdk/pull/XXXX))

## [0.12.0] - 2025-06-10

No notable changes in this release.
Expand Down
2 changes: 1 addition & 1 deletion crates/matrix-sdk-indexeddb/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ zeroize.workspace = true

[target.'cfg(target_family = "wasm")'.dependencies]
# for wasm32 we need to activate this
getrandom = { workspace = true, features = ["js"] }
getrandom = { workspace = true, features = ["wasm_js"] }

[dev-dependencies]
assert_matches.workspace = true
Expand Down
8 changes: 8 additions & 0 deletions crates/matrix-sdk-store-encryption/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,14 @@ All notable changes to this project will be documented in this file.

## [Unreleased] - ReleaseDate

### Maintenance

- Update getrandom dependency from 0.2.15 to 0.3.3 and migrate from the
deprecated 'js' feature to the new 'wasm_js' feature for WebAssembly
compatibility. This ensures proper random number generation in WebAssembly
environments with the latest getrandom API.
([#XXXX](https://github.com/matrix-org/matrix-rust-sdk/pull/XXXX))

## [0.12.0] - 2025-06-10

No notable changes in this release.
Expand Down
2 changes: 1 addition & 1 deletion crates/matrix-sdk-store-encryption/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ rustdoc-args = ["--cfg", "docsrs", "--generate-link-to-definition"]
ignored = ["getrandom"] # We do manually enable a feature for it.

[features]
js = ["dep:getrandom", "getrandom?/js"]
js = ["dep:getrandom", "getrandom?/wasm_js"]

[dependencies]
base64.workspace = true
Expand Down
8 changes: 8 additions & 0 deletions testing/matrix-sdk-test/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,14 @@ All notable changes to this project will be documented in this file.

## [Unreleased] - ReleaseDate

### Maintenance

- Update getrandom dependency from 0.2.6 to 0.3.3 and migrate from the
deprecated 'js' feature to the new 'wasm_js' feature for WebAssembly
compatibility. This ensures proper random number generation in WebAssembly
test environments with the latest getrandom API.
([#XXXX](https://github.com/matrix-org/matrix-rust-sdk/pull/XXXX))

## [0.12.0] - 2025-06-10

No notable changes in this release.
Expand Down
2 changes: 1 addition & 1 deletion testing/matrix-sdk-test/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ tracing-subscriber = { workspace = true, features = ["env-filter"] }
wiremock.workspace = true

[target.'cfg(target_family = "wasm")'.dependencies]
getrandom = { version = "0.2.6", default-features = false, features = ["js"] }
getrandom = { version = "0.3.3", default-features = false, features = ["wasm_js"] }
wasm-bindgen-test.workspace = true

[lints]
Expand Down
8 changes: 4 additions & 4 deletions xtask/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -13,10 +13,10 @@ name = "xtask"
test = false

[dependencies]
camino = "1.0.8"
clap = { version = "4.0.18", features = ["derive"] }
fs_extra = "1"
camino = "1.1.10"
clap = { version = "4.5.40", features = ["derive"] }
fs_extra = "1.3.0"
serde = { workspace = true, features = ["derive"] }
serde_json.workspace = true
uniffi_bindgen.workspace = true
xshell = "0.2.2"
xshell = "0.2.7"
14 changes: 12 additions & 2 deletions xtask/src/kotlin.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,9 @@ use std::fs::create_dir_all;

use camino::{Utf8Path, Utf8PathBuf};
use clap::{Args, Subcommand, ValueEnum};
use uniffi_bindgen::{bindings::KotlinBindingGenerator, library_mode::generate_bindings};
use uniffi_bindgen::{
bindings::KotlinBindingGenerator, library_mode::generate_bindings, EmptyCrateConfigSupplier,
};
use xshell::cmd;

use crate::{sh, workspace, Result};
Expand Down Expand Up @@ -150,7 +152,15 @@ fn build_android_library(
fn generate_uniffi_bindings(library_path: &Utf8Path, ffi_generated_dir: &Utf8Path) -> Result<()> {
println!("-- library_path = {library_path}");

generate_bindings(library_path, None, &KotlinBindingGenerator, None, ffi_generated_dir, false)?;
generate_bindings(
library_path,
None,
&KotlinBindingGenerator,
&EmptyCrateConfigSupplier {},
None,
ffi_generated_dir,
false,
)?;
Ok(())
}

Expand Down
14 changes: 12 additions & 2 deletions xtask/src/swift.rs
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,9 @@ use std::{

use camino::{Utf8Path, Utf8PathBuf};
use clap::{Args, Subcommand};
use uniffi_bindgen::{bindings::SwiftBindingGenerator, library_mode::generate_bindings};
use uniffi_bindgen::{
bindings::SwiftBindingGenerator, library_mode::generate_bindings, EmptyCrateConfigSupplier,
};
use xshell::cmd;

use crate::{sh, workspace, Result};
Expand Down Expand Up @@ -171,7 +173,15 @@ fn build_library() -> Result<()> {
}

fn generate_uniffi(library_path: &Utf8Path, ffi_directory: &Utf8Path) -> Result<()> {
generate_bindings(library_path, None, &SwiftBindingGenerator, None, ffi_directory, false)?;
generate_bindings(
library_path,
None,
&SwiftBindingGenerator,
&EmptyCrateConfigSupplier {},
None,
ffi_directory,
false,
)?;
Ok(())
}

Expand Down
Loading