Just now I was trying to test
num, in which we still keep Rust 1.0 compatibility but have a feature for
serde, so I wanted to see if the new
serde 0.9.0 would work. But it seems the registry format is somehow incompatible with such old cargo.
The break appears to be around Rust 1.7 / Cargo 0.8, whereas Rust 1.8 / Cargo 0.9 looks fine.
$ cargo +1.7.0 generate-lockfile --verbose Updating registry `https://github.com/rust-lang/crates.io-index` failed to parse registry's information for: serde Caused by: the given version requirement is invalid $ cargo +1.8.0 generate-lockfile --verbose Updating registry `https://github.com/rust-lang/crates.io-index`
It doesn’t help to generate a lockfile with a later version first, as the older
cargo build still fails with the same error. Also note, I haven’t even updated the
num dependency yet, so we’re asking for
">= 0.7.0, < 0.9.0", not the new version.
[dev-dependencies] serde_derive = "0.9.0-rc4" – could that
-rc4 be the trouble?
It’s totally fine that
serde itself doesn’t support old toolchains, but I’d hope as an optional dependency it shouldn’t cause problems…