Bug#1143699: rust-quanta: FTBFS: error: failed to prepare local package for uploading

Santiago Vila <[email protected]> Wed, 05 Aug 2026 11:25:17 +0000
Newsgroups gmane.linux.debian.devel.bugs.rc
Message-ID <E1wrZkL-00GxnR-34__322.412412945994$1785929383$gmane$org@paradis.debian.org>
Package: src:rust-quanta
Version: 0.12.6+ds-3
Severity: serious
Tags: ftbfs forky sid

Dear maintainer:

During a rebuild of all packages in unstable, this package failed to build.

Below you will find the last part of the build log (probably the most
relevant part, but not necessarily). If required, the full build log
is available here:

https://people.debian.org/~sanvila/build-logs/202608/

About the archive rebuild: The build was made on virtual machines from AWS,
using sbuild and a reduced chroot with only build-essential packages.

If you cannot reproduce the bug please contact me privately, as I
am willing to provide ssh access to a virtual machine where the bug is
fully reproducible.

If this is really a bug in one of the build-depends, please use
reassign and add an affects on src:rust-quanta, so that this is still
visible in the BTS web page for this package.

Thanks.

--------------------------------------------------------------------------------
[...]
 debian/rules clean
dh clean
   dh_auto_clean --buildsystem=rust
	/usr/share/dh-rust/bin/cargo clean
debian cargo wrapper: options, profiles, parallel, lto: ['parallel=2'] [] ['-j2'] 0
debian cargo wrapper: rust_type, gnu_type: x86_64-unknown-linux-gnu, x86_64-linux-gnu
debian cargo wrapper: running subprocess (['env', 'RUST_BACKTRACE=1', '/usr/bin/cargo', 'clean', '--verbose', '--verbose'],) {'check': True}
     Removed 0 files
   dh_clean -XCargo.toml.orig
 debian/rules binary
dh binary
   dh_update_autotools_config
   dh_autoreconf
   dh_auto_configure --buildsystem=rust
	/usr/share/dh-rust/bin/cargo prepare-debian debian/cargo_registry

[... snipped ...]

    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration

warning: unexpected `cfg` condition value: `rustc-dep-of-std`
   --> /<<PKGBUILDDIR>>/debian/cargo_registry/libc-0.2.186/src/unix/mod.rs:517:48
    |
517 |     } else if #[cfg(all(target_os = "android", feature = "rustc-dep-of-std"))] {
    |                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |
    = note: expected values for `feature` are: `align`, `const-extern-fn`, `default`, `extra_traits`, `std`, and `use_std`
    = help: consider adding `rustc-dep-of-std` as a feature in `Cargo.toml`
    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration

warning: `libc` (lib) generated 9 warnings
     Running `CARGO=/usr/bin/cargo CARGO_CRATE_NAME=crossbea [too-long-redacted] ic,crossbeam_sanitize_thread)'`
warning: unnecessary `unsafe` block
  --> /<<PKGBUILDDIR>>/debian/cargo_registry/raw-cpuid-11.6.0/src/lib.rs:91:22
   |
91 |         let result = unsafe { self::arch::__cpuid_count(a, c) };
   |                      ^^^^^^ unnecessary `unsafe` block
   |
   = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default

   Compiling once_cell v1.21.4
     Running `CARGO=/usr/bin/cargo CARGO_CRATE_NAME=once_cel [too-long-redacted] e/cargo/registry/quanta-0.12.6`
   Compiling float-ord v0.3.2
     Running `CARGO=/usr/bin/cargo CARGO_CRATE_NAME=float_or [too-long-redacted] e/cargo/registry/quanta-0.12.6`
warning: unnecessary transmute
  --> /<<PKGBUILDDIR>>/debian/cargo_registry/float-ord-0.3.2/src/lib.rs:21:34
   |
21 |                 let u = unsafe { transmute::<$f, $i>(self.0) };
   |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^
...
54 | float_ord_impl!(f32, u32, 32);
   | ----------------------------- in this macro invocation
   |
   = note: `#[warn(unnecessary_transmutes)]` on by default
   = note: this warning originates in the macro `float_ord_impl` (in Nightly builds, run with -Z macro-backtrace for more info)
help: replace this with
   |
21 -                 let u = unsafe { transmute::<$f, $i>(self.0) };
21 +                 let u = unsafe { f32::to_bits(self.0) };
   |

warning: unnecessary transmute
  --> /<<PKGBUILDDIR>>/debian/cargo_registry/float-ord-0.3.2/src/lib.rs:21:34
   |
21 |                 let u = unsafe { transmute::<$f, $i>(self.0) };
   |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^
...
55 | float_ord_impl!(f64, u64, 64);
   | ----------------------------- in this macro invocation
   |
   = note: this warning originates in the macro `float_ord_impl` (in Nightly builds, run with -Z macro-backtrace for more info)
help: replace this with
   |
21 -                 let u = unsafe { transmute::<$f, $i>(self.0) };
21 +                 let u = unsafe { f64::to_bits(self.0) };
   |

warning: `float-ord` (lib) generated 2 warnings
   Compiling average v0.13.1
     Running `CARGO=/usr/bin/cargo CARGO_CRATE_NAME=average  [too-long-redacted] e/cargo/registry/quanta-0.12.6`
warning: unexpected `cfg` condition name: `doc_cfg`
  --> /<<PKGBUILDDIR>>/debian/cargo_registry/average-0.13.1/src/lib.rs:89:13
   |
89 | #![cfg_attr(doc_cfg, feature(doc_cfg))]
   |             ^^^^^^^
   |
   = help: expected names are: `docsrs`, `feature`, and `test` and 31 more
   = help: consider using a Cargo feature instead
   = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
            [lints.rust]
            unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
   = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
   = note: `#[warn(unexpected_cfgs)]` on by default

warning: unexpected `cfg` condition value: `nightly`
   --> /<<PKGBUILDDIR>>/debian/cargo_registry/average-0.13.1/src/lib.rs:101:13
    |
101 | #![cfg_attr(feature = "nightly",
    |             ^^^^^^^^^^^^^^^^^^^
    |
    = note: expected values for `feature` are: `default`, `easy-cast`, `libm`, `rayon`, `serde`, `serde-big-array`, `serde1`, `serde_derive`, and `std`
    = help: consider adding `nightly` as a feature in `Cargo.toml`
    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration

warning: unexpected `cfg` condition name: `doc_cfg`
   --> /<<PKGBUILDDIR>>/debian/cargo_registry/average-0.13.1/src/weighted_mean.rs:283:16
    |
283 |     #[cfg_attr(doc_cfg, doc(cfg(any(feature = "std", feature = "libm"))))]
    |                ^^^^^^^
    |
    = help: consider using a Cargo feature instead
    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
             [lints.rust]
             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration

warning: unexpected `cfg` condition name: `doc_cfg`
   --> /<<PKGBUILDDIR>>/debian/cargo_registry/average-0.13.1/src/lib.rs:109:12
    |
109 | #[cfg_attr(doc_cfg, doc(cfg(any(feature = "std", feature = "libm"))))]
    |            ^^^^^^^
    |
    = help: consider using a Cargo feature instead
    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
             [lints.rust]
             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration

warning: unexpected `cfg` condition name: `doc_cfg`
  --> /<<PKGBUILDDIR>>/debian/cargo_registry/average-0.13.1/src/quantile.rs:24:12
   |
24 | #[cfg_attr(doc_cfg, doc(cfg(any(feature = "std", feature = "libm"))))]
   |            ^^^^^^^
   |
   = help: consider using a Cargo feature instead
   = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
            [lints.rust]
            unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
   = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration

warning: unexpected `cfg` condition value: `nightly`
   --> /<<PKGBUILDDIR>>/debian/cargo_registry/average-0.13.1/src/lib.rs:113:7
    |
113 | #[cfg(feature = "nightly")]
    |       ^^^^^^^^^^^^^^^^^^^
    |
    = note: expected values for `feature` are: `default`, `easy-cast`, `libm`, `rayon`, `serde`, `serde-big-array`, `serde1`, `serde_derive`, and `std`
    = help: consider adding `nightly` as a feature in `Cargo.toml`
    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration

warning: unexpected `cfg` condition name: `doc_cfg`
   --> /<<PKGBUILDDIR>>/debian/cargo_registry/average-0.13.1/src/lib.rs:119:12
    |
119 | #[cfg_attr(doc_cfg, doc(cfg(any(feature = "std", feature = "libm"))))]
    |            ^^^^^^^
    |
    = help: consider using a Cargo feature instead
    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
             [lints.rust]
             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration

warning: unexpected `cfg` condition name: `doc_cfg`
   --> /<<PKGBUILDDIR>>/debian/cargo_registry/average-0.13.1/src/lib.rs:125:12
    |
125 | #[cfg_attr(doc_cfg, doc(cfg(any(feature = "std", feature = "libm"))))]
    |            ^^^^^^^
    |
    = help: consider using a Cargo feature instead
    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
             [lints.rust]
             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration

warning: unexpected `cfg` condition name: `doc_cfg`
   --> /<<PKGBUILDDIR>>/debian/cargo_registry/average-0.13.1/src/moments/variance.rs:110:16
    |
110 |     #[cfg_attr(doc_cfg, doc(cfg(any(feature = "std", feature = "libm"))))]
    |                ^^^^^^^
    |
    = help: consider using a Cargo feature instead
    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
             [lints.rust]
             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration

warning: unexpected `cfg` condition name: `doc_cfg`
 --> /<<PKGBUILDDIR>>/debian/cargo_registry/average-0.13.1/src/moments/skewness.rs:7:12
  |
7 | #[cfg_attr(doc_cfg, doc(cfg(any(feature = "std", feature = "libm"))))]
  |            ^^^^^^^
  |
  = help: consider using a Cargo feature instead
  = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
           [lints.rust]
           unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
  = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
  = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration

warning: unexpected `cfg` condition name: `doc_cfg`
   --> /<<PKGBUILDDIR>>/debian/cargo_registry/average-0.13.1/src/moments/mod.rs:106:24
    |
106 |             #[cfg_attr(doc_cfg, doc(cfg(any(feature = "std", feature = "libm"))))]
    |                        ^^^^^^^
    |
   ::: /<<PKGBUILDDIR>>/debian/cargo_registry/average-0.13.1/src/lib.rs:133:1
    |
133 | define_moments!(Moments4, 4);
    | ---------------------------- in this macro invocation
    |
    = help: consider using a Cargo feature instead
    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
             [lints.rust]
             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
    = note: this warning originates in the macro `$crate::define_moments_common` which comes from the expansion of the macro `define_moments` (in Nightly builds, run with -Z macro-backtrace for more info)

warning: unexpected `cfg` condition name: `doc_cfg`
   --> /<<PKGBUILDDIR>>/debian/cargo_registry/average-0.13.1/src/moments/mod.rs:135:24
    |
135 |             #[cfg_attr(doc_cfg, doc(cfg(any(feature = "std", feature = "libm"))))]
    |                        ^^^^^^^
    |
   ::: /<<PKGBUILDDIR>>/debian/cargo_registry/average-0.13.1/src/lib.rs:133:1
    |
133 | define_moments!(Moments4, 4);
    | ---------------------------- in this macro invocation
    |
    = help: consider using a Cargo feature instead
    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
             [lints.rust]
             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }
    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(doc_cfg)");` to the top of the `build.rs`
    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
    = note: this warning originates in the macro `$crate::define_moments_common` which comes from the expansion of the macro `define_moments` (in Nightly builds, run with -Z macro-backtrace for more info)

warning: `average` (lib) generated 12 warnings
   Compiling quanta v0.12.6 (/<<PKGBUILDDIR>>)
     Running `CARGO=/usr/bin/cargo CARGO_CRATE_NAME=quanta C [too-long-redacted] e/cargo/registry/quanta-0.12.6`
warning: `raw-cpuid` (lib) generated 1 warning
     Running `CARGO=/usr/bin/cargo CARGO_CRATE_NAME=quanta C [too-long-redacted] e/cargo/registry/quanta-0.12.6`
    Finished `release` profile [optimized] target(s) in 6.40s
     Running `CARGO=/usr/bin/cargo CARGO_MANIFEST_DIR=/<<PKGBUILDDIR>> CARGO_MANIFEST_PATH=/<<PKGBUILDDIR>>/Cargo.toml CARGO_PKG_AUTHORS='Toby Lawrence <[email protected]>' CARGO_PKG_DESCRIPTION='high-speed timing library' CARGO_PKG_HOMEPAGE='https://github.com/metrics-rs/quanta' CARGO_PKG_LICENSE=MIT CARGO_PKG_LICENSE_FILE='' CARGO_PKG_NAME=quanta CARGO_PKG_README=README.md CARGO_PKG_REPOSITORY='https://github.com/metrics-rs/quanta' CARGO_PKG_RUST_VERSION=1.70 CARGO_PKG_VERSION=0.12.6 CARGO_PKG_VERSION_MAJOR=0 CARGO_PKG_VERSION_MINOR=12 CARGO_PKG_VERSION_PATCH=6 CARGO_PKG_VERSION_PRE='' LD_LIBRARY_PATH='/<<PKGBUILDDIR>>/target/x86_64-unknown-linux-gnu/release:/<<PKGBUILDDIR>>/target/x86_64-unknown-linux-gnu/release/deps:/usr/lib/rustlib/x86_64-unknown-linux-gnu/lib' /<<PKGBUILDDIR>>
 /target/x86_64-unknown-linux-gnu/release/deps/quanta-c91752bc4649cf3f`

running 12 tests
test instant::tests::checked_arithmetic_u64_overflow ... ok
test instant::tests::test_mocking ... ok
test instant::tests::test_recent ... ignored
test stats::tests::basic ... ok
test instant::tests::test_now ... ok
test tests::test_mock ... ok
test tests::test_now ... ok
test tests::test_raw ... ok
test tests::measure_source_reference_self_timing ... ok
test tests::test_scaled ... ok
test upkeep::tests::test_spawning_second_upkeep ... ok
test tests::test_reference_source_calibration ... ok

test result: ok. 11 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.40s

   Doc-tests quanta
     Running `CARGO=/usr/bin/cargo CARGO_CRATE_NAME=quanta C [too-long-redacted] types"))' --error-format human`

running 4 tests
test src/instant.rs - instant::Instant::checked_duration_since (line 101) - compile ... ok
test src/instant.rs - instant::Instant::duration_since (line 76) - compile ... ok
test src/instant.rs - instant::Instant::elapsed (line 155) - compile ... ok
test src/instant.rs - instant::Instant::saturating_duration_since (line 127) - compile ... ok

test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.07s

   create-stamp debian/debhelper-build-stamp
   dh_prep
   dh_auto_install --buildsystem=rust --destdir=debian/librust-quanta-dev/
	cargo package --offline --allow-dirty --no-verify --target-dir /<<BUILDDIR>>/rust-quanta-0.12.6\+ds/target --package quanta\@0.12.6
   Packaging quanta v0.12.6 (/<<PKGBUILDDIR>>)
error: failed to prepare local package for uploading

Caused by:
  failed to select a version for the requirement `prost-types = ">=0.11, <=0.12"`
  candidate versions found which didn't match: 0.14.4
  location searched: directory source `/<<PKGBUILDDIR>>/debian/cargo_registry` (which is replacing registry `crates-io`)
  required by package `quanta v0.12.6 (/<<PKGBUILDDIR>>)`
  perhaps a crate was updated and forgotten to be re-vendored?
  As a reminder, you're using offline mode (--offline) which can sometimes cause surprising resolution failures, if this error is too confusing you may wish to retry without `--offline`.
dh_auto_install: error: cargo package --offline --allow-dirty --no-verify --target-dir /<<BUILDDIR>>/rust-quanta-0.12.6\+ds/target --package quanta\@0.12.6 returned exit code 101
make: *** [debian/rules:10: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess failed with exit status 2
--------------------------------------------------------------------------------