Cargo: error: failed to parse manifest — feature `edition2024` is required / lock file version 4 requires `-Znext-lockfile-bump`
Your Cargo is older than the manifest or lockfile requires.
error: failed to parse manifest at Cargo.tomlfeature `edition2024` is requiredlock file version 4 requires `-Znext-lockfile-bump`this version of Cargo is older than the `2024` editionerror: failed to parse lock file at Cargo.lock Meaning
Update Rust (rustup update stable), or downgrade the offending crate/lock (cargo update -p crate --precise X) when you must stay on an old toolchain. Lockfile v4 needs Cargo 1.78+; edition = "2024" needs 1.85+. Pin the toolchain in rust-toolchain.toml for consistency across team/CI.
Common causes
- Old Rust toolchain
- Cargo.lock generated by newer Cargo
- Dependency using
edition = "2024" - CI image pinned to an old Rust
- Different toolchains between dev and CI
⚡ Quick fix
rustup update stable- Add
rust-toolchain.toml(channel = "stable") - Pin crates to older versions with
cargo update -p X --precise Yif you can't upgrade
Detailed fix by platform
Rust
rustup update stable && cargo --version
How to diagnose
- Cargo — Version?
- Lock — Version?
- CI — Same toolchain?
🔧 Still not fixed?
Many errors look alike. If the steps above didn’t solve it, one of these is probably what you’re facing:
Similar errors
- Blocking waiting for file lock on package cache / build directory Cargo: Blocking waiting for file lock on package cache / on build directory
- cargo: failed to get from registry (spurious network error) Cargo: warning: spurious network error (2 tries remaining): [35] SSL connect error / error: failed to download from `https://index.crates.io/...`
- cargo: failed to select a version for the requirement Cargo: error: failed to select a version for the requirement `serde = "^2.0"` — candidate versions found which didn't match: 1.0.197
Most viewed in Rust
Other ways to find it
Where this error sits
Origin: Application & API. Errors that are often confused with or caused by this one (click to open):
🧠 Still stuck? Analyze your error
Paste the full message, response headers or stack trace — we'll detect the platform and point to the most likely cause.
💬 What worked for others
No tips yet — did something else fix this for you?
Share what worked for you
Tips are checked by an editor before they appear. Links are removed.
Report a correction or suggest an improvement
Last updated 5 Nov 2026