| name | updating-tauri-dependencies |
| description | Assists users with updating Tauri dependencies including the Tauri CLI, Rust crates, JavaScript packages, and checking for outdated versions to upgrade to the latest version. |
Updating Tauri Dependencies
This skill provides guidance for updating Tauri dependencies across both the JavaScript and Rust ecosystems.
Version Synchronization (Critical)
The JavaScript @tauri-apps/api package and Rust tauri crate must maintain matching minor versions. Adding new features requires upgrading both sides to ensure compatibility.
For Tauri plugins, maintain exact version parity (e.g., both 2.2.1) for the npm package and cargo crate.
Updating JavaScript Dependencies
Using npm
Update Tauri CLI and API packages:
npm install @tauri-apps/cli@latest @tauri-apps/api@latest
Check for outdated packages:
npm outdated @tauri-apps/cli
npm outdated @tauri-apps/api
Using yarn
Update Tauri CLI and API packages:
yarn up @tauri-apps/cli @tauri-apps/api
Check for outdated packages:
yarn outdated @tauri-apps/cli
yarn outdated @tauri-apps/api
Using pnpm
Update Tauri CLI and API packages:
pnpm update @tauri-apps/cli @tauri-apps/api --latest
Check for outdated packages:
pnpm outdated @tauri-apps/cli
pnpm outdated @tauri-apps/api
Updating Rust Dependencies
Manual Update
-
Check the latest versions on crates.io:
-
Edit src-tauri/Cargo.toml and update the version numbers:
[build-dependencies]
tauri-build = "2.0"
[dependencies]
tauri = { version = "2.0", features = [] }
- Run cargo update from the src-tauri directory:
cd src-tauri && cargo update
Using cargo-edit (Automatic)
Install cargo-edit if not already installed:
cargo install cargo-edit
Upgrade Tauri dependencies automatically:
cd src-tauri && cargo upgrade tauri tauri-build
Checking for Updates
Check All Tauri Dependencies
JavaScript packages:
npm outdated | grep tauri
yarn outdated | grep tauri
pnpm outdated | grep tauri
Rust crates:
cd src-tauri && cargo outdated | grep tauri
Note: cargo outdated requires the cargo-outdated tool:
cargo install cargo-outdated
Updating Tauri Plugins
When updating Tauri plugins, both the npm package and Rust crate must be updated to the same version.
Example for updating a plugin (e.g., shell plugin):
JavaScript side
npm install @tauri-apps/plugin-shell@latest
yarn up @tauri-apps/plugin-shell
pnpm update @tauri-apps/plugin-shell --latest
Rust side
Edit src-tauri/Cargo.toml:
[dependencies]
tauri-plugin-shell = "2.0"
Then update:
cd src-tauri && cargo update
Complete Update Workflow
To update all Tauri dependencies in a project:
- Update JavaScript dependencies:
npm install @tauri-apps/cli@latest @tauri-apps/api@latest
- Update any Tauri plugins on the JavaScript side:
npm install @tauri-apps/plugin-shell@latest @tauri-apps/plugin-fs@latest
-
Update Rust dependencies in src-tauri/Cargo.toml
-
Run cargo update:
cd src-tauri && cargo update
- Rebuild the project to verify compatibility:
npm run tauri build
cargo tauri build
Troubleshooting
Version Mismatch Errors
If you encounter version mismatch errors between JavaScript and Rust dependencies:
- Verify both sides use matching minor versions
- Check
package.json for @tauri-apps/api version
- Check
src-tauri/Cargo.toml for tauri crate version
- Ensure they align (e.g., both at 2.x)
Cargo Lock Conflicts
If Cargo.lock has conflicts after updating:
cd src-tauri && rm Cargo.lock && cargo update
Plugin Version Mismatch
For plugin version mismatches, ensure exact version parity between npm and cargo versions of the same plugin.