Poor error from cargo update --precise
when upgrading to pre-release · Issue #12579 · rust-lang/cargo (original) (raw)
Problem
Starting with a working project that depends on cargo-pretag-version-issue-test = "0.1.0"
, running cargo update -p cargo-pretag-version-issue-test --precise 0.1.1-pre0
returns an unhelpful error message.
> cargo update -p cargo-pretag-version-issue-test --precise 0.1.1-pre0
Updating crates.io index
error: no matching package named `cargo-pretag-version-issue-test` found
location searched: registry `crates-io`
required by package `tmp-08luyo v0.1.0 (/home/ethan/.cache/cargo-temp/tmp-08luyo)`
Steps
I created cargo-pretag-version-issue-test to demonstrate this issue. It has two versions, 0.1.0
and 0.1.1-pre0
.
> cargo new issue
Created binary (application) `issue` package
> cargo add cargo-pretag-version-issue-test
Updating crates.io index
Adding cargo-pretag-version-issue-test v0.1.0 to dependencies.
Updating crates.io index
> cargo tree
issue v0.1.0 (/home/ethan/.cache/cargo-temp/issue)
└── cargo-pretag-version-issue-test v0.1.0
> cargo update -p cargo-pretag-version-issue-test --precise 0.1.1-pre0
Updating crates.io index
error: no matching package named `cargo-pretag-version-issue-test` found
location searched: registry `crates-io`
required by package `issue v0.1.0 (/home/ethan/.cache/cargo-temp/issue)`
Possible Solution(s)
Either,
- Allow upgrading to pre-release versions via
cargo update --precise
or
- Display a reason why the version could not be selected rather than saying it could not be found
Notes
No response
Version
Tested on both
cargo 1.72.0 (103a7ff2e 2023-08-15)
release: 1.72.0
commit-hash: 103a7ff2ee7678d34f34d778614c5eb2525ae9de
commit-date: 2023-08-15
host: x86_64-unknown-linux-gnu
libgit2: 1.6.4 (sys:0.17.2 vendored)
libcurl: 8.1.2-DEV (sys:0.4.63+curl-8.1.2 vendored ssl:OpenSSL/1.1.1u)
ssl: OpenSSL 1.1.1u 30 May 2023
os: NixOS 23.5.0 [64-bit]
and
cargo 1.74.0-nightly (925280f02 2023-08-25)
release: 1.74.0-nightly
commit-hash: 925280f028db3a322935e040719a0754703947cf
commit-date: 2023-08-25
host: x86_64-unknown-linux-gnu
libgit2: 1.6.4 (sys:0.17.2 vendored)
libcurl: 8.2.1-DEV (sys:0.4.65+curl-8.2.1 vendored ssl:OpenSSL/1.1.1u)
ssl: OpenSSL 1.1.1u 30 May 2023
os: NixOS 23.5.0 [64-bit]