OpenSymphony 2.11.0 addresses an upgrade failure encountered by some users moving from 2.10.0.

The previous updater ran:

cargo install opensymphony

With Rust 1.93.0, Cargo could select kstring 2.0.4, which requires Rust 1.96.0 or newer. Installation then stopped before the updater itself could be replaced.

One Rust baseline

OpenSymphony now requires Rust 1.97.1 for both the CLI and desktop application. The workspace uses Cargo Resolver 3, and its locked dependency graph includes kstring 2.0.4.

Local development, CI, Clippy, Cargo package metadata, and desktop release metadata now share that baseline. The alternative was to retain Rust 1.93 by pinning kstring 2.0.2. That would have preserved an outdated toolchain and introduced unnecessary dependency debt.

Raising the MSRV is the simpler long-term choice. The explicit tradeoff is that existing users may need to update Rust once.

Why the 2.10.0 updater can still work

During the release, a 2.10.0 installation successfully installed 2.11.0 after Rust was updated. When opensymphony update is launched inside an OpenSymphony source checkout, Rustup finds the repository’s rust-toolchain.toml and automatically selects Rust 1.97.1 for the child Cargo process.

Rustup may warn that the default toolchain is being overridden. That warning is informational.

This behavior depends on the caller’s environment. Someone running the updater outside the checkout with an older default Rust toolchain may still need the manual recovery command below.

Upgrade

Use the normal update path first:

rustup update stable
opensymphony update

If that fails while crossing from a pre-2.11 release:

rustup update stable
cargo +stable install opensymphony --locked

After 2.11.0 is installed, future opensymphony update runs use:

cargo install opensymphony --locked

The lock prevents the updater from silently resolving a dependency graph different from the one tested and published with the release.

OpenSymphony 2.11.0 establishes one clear supported Rust baseline and a more reproducible update path instead of maintaining an older compiler through dependency pins.

Review the v2.11.0 release tag , install the 2.11.0 crate , or read the prerequisites and operations guide .