| Crates.io | cargo-rm |
| lib.rs | cargo-rm |
| version | 1.0.3 |
| created_at | 2020-09-06 20:50:50.805583+00 |
| updated_at | 2022-06-17 18:01:20.008249+00 |
| description | Remove Cargo.lock lockfile |
| homepage | |
| repository | https://github.com/dtolnay/cargo-rm |
| max_upload_size | |
| id | 285523 |
| size | 26,947 |
New Cargo versions sometimes write out a lockfile that triggers parse failures in old Cargo versions.
$ cargo +1.41.0 check
...
Finished dev [unoptimized + debuginfo] target(s) in 0.91s
$ cargo +1.37.0 check
error: failed to parse lock file at: /git/testing/Cargo.lock
Caused by:
invalid serialized PackageId for key `package.dependencies`
The cargo rm subcommand simply deletes the offending lockfile so that the old
Cargo can proceed. Install by running cargo install cargo-rm.
rm Cargo.lockcargo rm has three advantages:
It still works if run from a workspace member, where the lockfile would be located at the workspace root rather than the current directory.
It works if run from a subdirectory of a crate rather than the crate root.
If like me you use
export FIGNORE=argo.lock
in your shell so that all autocompletes prefer Cargo.toml over Cargo.lock,
this is easier to type.