rust-lang / cargo

The Rust package manager
https://doc.rust-lang.org/cargo
Apache License 2.0
12.73k stars 2.42k forks source link

"no hash listed" error with `-Zpackage-workspace` #14396

Open workingjubilee opened 2 months ago

workingjubilee commented 2 months ago

Problem

In the pgrx repo, on commit https://github.com/pgcentralfoundation/pgrx/commits/47e8465c048773bec8399fd3b50455e736ba8056

Command:

./update-versions.sh 0.0.999-rc.999 && \
    cargo +nightly package \
        --workspace -Zpackage-workspace \
        --allow-dirty \
        --features "pg14"

Result:

    Finished `dev` profile [unoptimized + debuginfo] target(s) in 50.13s
   Verifying pgrx v0.0.999-rc.999 (/home/jubilee/tcdi/pgrx/pgrx)
    Updating crates.io index
   Unpacking pgrx-pg-sys v0.0.999-rc.999 (registry `/home/jubilee/tcdi/pgrx/target/package/tmp-registry`)
error: failed to verify package tarball

Caused by:
  failed to download `pgrx-pg-sys v0.0.999-rc.999`

Caused by:
  unable to get packages from source

Caused by:
  no hash listed for pgrx-pg-sys v0.0.999-rc.999
note: this is an unexpected cargo internal error
note: we would appreciate a bug report: https://github.com/rust-lang/cargo/issues/
note: cargo 1.82.0-nightly (94977cb1f 2024-08-06)

baffling? no idea what I did beyond running this command to cause this. I just dropped everything to open a report first. I've run almost this precise command several times successfully...? Now every time I run this command in that repo, with that working state, I get the error:

cargo +nightly package --workspace -Zpackage-workspace --allow-dirty --features "pg14"

I saved my entire repo directory as a duplicate before I did anything else.

Steps

No response

Possible Solution(s)

No response

Notes

No response

Version

cargo 1.82.0-nightly (94977cb1f 2024-08-06)
release: 1.82.0-nightly
commit-hash: 94977cb1fab003d45eb5bb108cb5e2fa0149672a
commit-date: 2024-08-06
host: x86_64-unknown-linux-gnu
libgit2: 1.8.1 (sys:0.19.0 vendored)
libcurl: 8.9.0-DEV (sys:0.4.74+curl-8.9.0 vendored ssl:OpenSSL/3.3.1)
ssl: OpenSSL 3.3.1 4 Jun 2024
os: Arch Linux Rolling Release [64-bit]
epage commented 2 months ago

CC @jneem

jneem commented 2 months ago

@workingjubilee can you help me obtain that commit? A fresh clone doesn't give me it...

Running that cargo package command on the develop branch completed successfully for me.