[Pkg-rust-maintainers] Bug#1118324: rust-zoxide: FTBFS: error: could not compile `zoxide` (bin "zoxide") due to 1 previous error
Santiago Vila
sanvila at debian.org
Sat Oct 18 00:09:24 BST 2025
Package: src:rust-zoxide
Version: 0.9.7-1
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/202510/
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-zoxide, so that this is still
visible in the BTS web page for this package.
Thanks.
--------------------------------------------------------------------------------
[...]
debian/rules clean
dh clean --buildsystem cargo
dh_auto_clean -O--buildsystem=cargo
debian cargo wrapper: options = ['parallel=2'], profiles = [], parallel = ['-j2'], lto =
debian cargo wrapper: rust_type = x86_64-unknown-linux-gnu, gnu_type = 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_autoreconf_clean -O--buildsystem=cargo
dh_clean -XCargo.toml.orig -O--buildsystem=cargo
debian/rules binary
dh binary --buildsystem cargo
dh_update_autotools_config -O--buildsystem=cargo
dh_autoreconf -O--buildsystem=cargo
dh_auto_configure -O--buildsystem=cargo
debian cargo wrapper: options = ['parallel=2'], profiles = [], parallel = ['-j2'], lto =
[... snipped ...]
= help: consider adding `traits` 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 value: `traits`
--> /usr/share/cargo/registry/aliasable-0.1.3/src/string.rs:108:7
|
108 | #[cfg(feature = "traits")]
| ^^^^^^^^^^^^^^^^^^
|
= note: expected values for `feature` are: `alloc`, `default`, and `stable_deref_trait`
= help: consider adding `traits` 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 value: `traits`
--> /usr/share/cargo/registry/aliasable-0.1.3/src/vec.rs:137:7
|
137 | #[cfg(feature = "traits")]
| ^^^^^^^^^^^^^^^^^^
|
= note: expected values for `feature` are: `alloc`, `default`, and `stable_deref_trait`
= help: consider adding `traits` 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 value: `traits`
--> /usr/share/cargo/registry/aliasable-0.1.3/src/vec.rs:140:7
|
140 | #[cfg(feature = "traits")]
| ^^^^^^^^^^^^^^^^^^
|
= note: expected values for `feature` are: `alloc`, `default`, and `stable_deref_trait`
= help: consider adding `traits` 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: `aliasable` (lib) generated 10 warnings
Compiling static_assertions v1.1.0
Running `CARGO=/usr/bin/cargo CARGO_CRATE_NAME=static_a [too-long-redacted] stry=/usr/share/cargo/registry`
Compiling bitflags v2.9.4
Running `CARGO=/usr/bin/cargo CARGO_CRATE_NAME=bitflags CARGO_MANIFEST_DIR=/<<PKGBUILDDIR>>/debian/cargo_registry/bitflags-2.9.4 CARGO_MANIFEST_PATH=/<<PKGBUILDDIR>>/debian/cargo_registry/bitflags-2.9.4/Cargo.toml CARGO_PKG_AUTHORS='The Rust Project Developers' CARGO_PKG_DESCRIPTION='A macro to generate structures which behave like bitflags.
' CARGO_PKG_HOMEPAGE='https://github.com/bitflags/bitflags' [too-long-redacted] stry=/usr/share/cargo/registry`
Compiling cfg-if v1.0.3
Running `CARGO=/usr/bin/cargo CARGO_CRATE_NAME=cfg_if CARGO_MANIFEST_DIR=/<<PKGBUILDDIR>>/debian/cargo_registry/cfg-if-1.0.3 CARGO_MANIFEST_PATH=/<<PKGBUILDDIR>>/debian/cargo_registry/cfg-if-1.0.3/Cargo.toml CARGO_PKG_AUTHORS='Alex Crichton <alex at alexcrichton.com>' CARGO_PKG_DESCRIPTION='A macro to ergonomically define an item depending on a large number of #[cfg]
parameters. Structured like an if-else chain, the first matching branch is the
item that gets emitted.
' CARGO_PKG_HOMEPAGE='' CARGO_PKG_LICENSE='MIT OR Apache-2.0 [too-long-redacted] stry=/usr/share/cargo/registry`
Compiling itoa v1.0.15
Running `CARGO=/usr/bin/cargo CARGO_CRATE_NAME=itoa CAR [too-long-redacted] stry=/usr/share/cargo/registry`
Compiling rinja v0.3.5
Running `CARGO=/usr/bin/cargo CARGO_CRATE_NAME=rinja CA [too-long-redacted] stry=/usr/share/cargo/registry`
Running `CARGO=/usr/bin/cargo CARGO_CRATE_NAME=nix CARG [too-long-redacted] (target_os, values("cygwin"))'`
Compiling ouroboros v0.18.5
Running `CARGO=/usr/bin/cargo CARGO_CRATE_NAME=ouroboro [too-long-redacted] stry=/usr/share/cargo/registry`
Running `CARGO=/usr/bin/cargo CARGO_CRATE_NAME=clap CAR [too-long-redacted] stry=/usr/share/cargo/registry`
warning: unexpected `cfg` condition value: `unstable-doc`
--> /usr/share/cargo/registry/clap-4.5.48/src/lib.rs:95:7
|
95 | #[cfg(feature = "unstable-doc")]
| ^^^^^^^^^^--------------
| |
| help: there is a expected value with a similar name: `"unstable-ext"`
|
= note: expected values for `feature` are: `cargo`, `color`, `debug`, `default`, `deprecated`, `derive`, `env`, `error-context`, `help`, `std`, `string`, `suggestions`, `unicode`, `unstable-derive-ui-tests`, `unstable-ext`, `unstable-markdown`, `unstable-styles`, `usage`, and `wrap_help`
= help: consider adding `unstable-doc` 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
= note: `#[warn(unexpected_cfgs)]` on by default
warning: unexpected `cfg` condition value: `unstable-doc`
--> /usr/share/cargo/registry/clap-4.5.48/src/lib.rs:97:7
|
97 | #[cfg(feature = "unstable-doc")]
| ^^^^^^^^^^--------------
| |
| help: there is a expected value with a similar name: `"unstable-ext"`
|
= note: expected values for `feature` are: `cargo`, `color`, `debug`, `default`, `deprecated`, `derive`, `env`, `error-context`, `help`, `std`, `string`, `suggestions`, `unicode`, `unstable-derive-ui-tests`, `unstable-ext`, `unstable-markdown`, `unstable-styles`, `usage`, and `wrap_help`
= help: consider adding `unstable-doc` 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 value: `unstable-doc`
--> /usr/share/cargo/registry/clap-4.5.48/src/lib.rs:99:7
|
99 | #[cfg(feature = "unstable-doc")]
| ^^^^^^^^^^--------------
| |
| help: there is a expected value with a similar name: `"unstable-ext"`
|
= note: expected values for `feature` are: `cargo`, `color`, `debug`, `default`, `deprecated`, `derive`, `env`, `error-context`, `help`, `std`, `string`, `suggestions`, `unicode`, `unstable-derive-ui-tests`, `unstable-ext`, `unstable-markdown`, `unstable-styles`, `usage`, and `wrap_help`
= help: consider adding `unstable-doc` 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 value: `unstable-doc`
--> /usr/share/cargo/registry/clap-4.5.48/src/lib.rs:101:7
|
101 | #[cfg(feature = "unstable-doc")]
| ^^^^^^^^^^--------------
| |
| help: there is a expected value with a similar name: `"unstable-ext"`
|
= note: expected values for `feature` are: `cargo`, `color`, `debug`, `default`, `deprecated`, `derive`, `env`, `error-context`, `help`, `std`, `string`, `suggestions`, `unicode`, `unstable-derive-ui-tests`, `unstable-ext`, `unstable-markdown`, `unstable-styles`, `usage`, and `wrap_help`
= help: consider adding `unstable-doc` 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 value: `unstable-doc`
--> /usr/share/cargo/registry/clap-4.5.48/src/lib.rs:103:7
|
103 | #[cfg(feature = "unstable-doc")]
| ^^^^^^^^^^--------------
| |
| help: there is a expected value with a similar name: `"unstable-ext"`
|
= note: expected values for `feature` are: `cargo`, `color`, `debug`, `default`, `deprecated`, `derive`, `env`, `error-context`, `help`, `std`, `string`, `suggestions`, `unicode`, `unstable-derive-ui-tests`, `unstable-ext`, `unstable-markdown`, `unstable-styles`, `usage`, and `wrap_help`
= help: consider adding `unstable-doc` 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 value: `unstable-doc`
--> /usr/share/cargo/registry/clap-4.5.48/src/lib.rs:105:7
|
105 | #[cfg(feature = "unstable-doc")]
| ^^^^^^^^^^--------------
| |
| help: there is a expected value with a similar name: `"unstable-ext"`
|
= note: expected values for `feature` are: `cargo`, `color`, `debug`, `default`, `deprecated`, `derive`, `env`, `error-context`, `help`, `std`, `string`, `suggestions`, `unicode`, `unstable-derive-ui-tests`, `unstable-ext`, `unstable-markdown`, `unstable-styles`, `usage`, and `wrap_help`
= help: consider adding `unstable-doc` 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: `clap` (lib) generated 6 warnings
Running `CARGO=/usr/bin/cargo CARGO_CFG_FEATURE=default [too-long-redacted] 2b1ec352424/build-script-build`
[zoxide 0.9.7] cargo:rerun-if-changed=build.rs
[zoxide 0.9.7] cargo:rerun-if-changed=src/
[zoxide 0.9.7] cargo:rerun-if-changed=templates/
[zoxide 0.9.7] cargo:rerun-if-changed=tests/
Compiling dirs v5.0.1
Running `CARGO=/usr/bin/cargo CARGO_CRATE_NAME=dirs CAR [too-long-redacted] stry=/usr/share/cargo/registry`
Running `CARGO=/usr/bin/cargo CARGO_CRATE_NAME=anyhow C [too-long-redacted] check-cfg 'cfg(std_backtrace)'`
Compiling bincode v1.3.3
Running `CARGO=/usr/bin/cargo CARGO_CRATE_NAME=bincode [too-long-redacted] stry=/usr/share/cargo/registry`
warning: multiple associated functions are never used
--> /usr/share/cargo/registry/bincode-1.3.3/src/byteorder.rs:144:8
|
130 | pub trait ByteOrder: Clone + Copy {
| --------- associated functions in this trait
...
144 | fn read_i16(buf: &[u8]) -> i16 {
| ^^^^^^^^
...
149 | fn read_i32(buf: &[u8]) -> i32 {
| ^^^^^^^^
...
154 | fn read_i64(buf: &[u8]) -> i64 {
| ^^^^^^^^
...
169 | fn write_i16(buf: &mut [u8], n: i16) {
| ^^^^^^^^^
...
174 | fn write_i32(buf: &mut [u8], n: i32) {
| ^^^^^^^^^
...
179 | fn write_i64(buf: &mut [u8], n: i64) {
| ^^^^^^^^^
...
200 | fn read_i128(buf: &[u8]) -> i128 {
| ^^^^^^^^^
...
205 | fn write_i128(buf: &mut [u8], n: i128) {
| ^^^^^^^^^^
|
= note: `#[warn(dead_code)]` on by default
warning: methods `read_i8`, `read_i16`, `read_i32`, `read_i64`, and `read_i128` are never used
--> /usr/share/cargo/registry/bincode-1.3.3/src/byteorder.rs:220:8
|
211 | pub trait ReadBytesExt: io::Read {
| ------------ methods in this trait
...
220 | fn read_i8(&mut self) -> Result<i8> {
| ^^^^^^^
...
234 | fn read_i16<T: ByteOrder>(&mut self) -> Result<i16> {
| ^^^^^^^^
...
248 | fn read_i32<T: ByteOrder>(&mut self) -> Result<i32> {
| ^^^^^^^^
...
262 | fn read_i64<T: ByteOrder>(&mut self) -> Result<i64> {
| ^^^^^^^^
...
291 | fn read_i128<T: ByteOrder>(&mut self) -> Result<i128> {
| ^^^^^^^^^
warning: methods `write_i8`, `write_i16`, `write_i32`, `write_i64`, and `write_i128` are never used
--> /usr/share/cargo/registry/bincode-1.3.3/src/byteorder.rs:308:8
|
301 | pub trait WriteBytesExt: io::Write {
| ------------- methods in this trait
...
308 | fn write_i8(&mut self, n: i8) -> Result<()> {
| ^^^^^^^^
...
320 | fn write_i16<T: ByteOrder>(&mut self, n: i16) -> Result<()> {
| ^^^^^^^^^
...
334 | fn write_i32<T: ByteOrder>(&mut self, n: i32) -> Result<()> {
| ^^^^^^^^^
...
348 | fn write_i64<T: ByteOrder>(&mut self, n: i64) -> Result<()> {
| ^^^^^^^^^
...
377 | fn write_i128<T: ByteOrder>(&mut self, n: i128) -> Result<()> {
| ^^^^^^^^^^
warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
--> /usr/share/cargo/registry/bincode-1.3.3/src/de/mod.rs:272:9
|
263 | / fn deserialize_enum<V>(
264 | | self,
265 | | _enum: &'static str,
266 | | _variants: &'static [&'static str],
... |
269 | | where
270 | | V: serde::de::Visitor<'de>,
| |___________________________________- move the `impl` block outside of this method `deserialize_enum`
271 | {
272 | impl<'de, 'a, R: 'a, O> serde::de::EnumAccess<'de> for &'a mut Deserializer<R, O>
| ^^^^^^^^^^^^^^^^^^^^^^^^---------------------^^^^^^^^^^^^^^^^^^------------^^^^^^
| | |
| | `Deserializer` is not local
| `EnumAccess` is not local
|
= note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
= note: `#[warn(non_local_definitions)]` on by default
warning: `bincode` (lib) generated 4 warnings
Running `CARGO=/usr/bin/cargo CARGO_CRATE_NAME=color_pr [too-long-redacted] stry=/usr/share/cargo/registry`
Compiling glob v0.3.2
Running `CARGO=/usr/bin/cargo CARGO_CRATE_NAME=glob CARGO_MANIFEST_DIR=/<<PKGBUILDDIR>>/debian/cargo_registry/glob-0.3.2 CARGO_MANIFEST_PATH=/<<PKGBUILDDIR>>/debian/cargo_registry/glob-0.3.2/Cargo.toml CARGO_PKG_AUTHORS='The Rust Project Developers' CARGO_PKG_DESCRIPTION='Support for matching file paths against Unix shell style patterns.
' CARGO_PKG_HOMEPAGE='https://github.com/rust-lang/glob' CAR [too-long-redacted] stry=/usr/share/cargo/registry`
Compiling dunce v1.0.5
Running `CARGO=/usr/bin/cargo CARGO_CRATE_NAME=dunce CA [too-long-redacted] stry=/usr/share/cargo/registry`
Compiling fastrand v2.3.0
Running `CARGO=/usr/bin/cargo CARGO_CRATE_NAME=fastrand [too-long-redacted] stry=/usr/share/cargo/registry`
Running `CARGO=/usr/bin/cargo CARGO_BIN_NAME=zoxide CAR [too-long-redacted] stry=/usr/share/cargo/registry`
error[E0277]: the trait bound `i32: AsFd` is not satisfied
--> src/util.rs:178:32
|
178 | _ = unistd::fchown(tmp_file.as_raw_fd(), Some(uid), Some(gid));
| -------------- ^^^^^^^^^^^^^^^^^^^^ the trait `AsFd` is not implemented for `i32`
| |
| required by a bound introduced by this call
|
= help: the following other types implement trait `AsFd`:
&T
&mut T
Arc<T>
BorrowedFd<'_>
Box<T>
ChildStderr
ChildStdin
ChildStdout
and 23 others
note: required by a bound in `nix::unistd::fchown`
--> /usr/share/cargo/registry/nix-0.30.1/src/unistd.rs:1015:19
|
1015 | pub fn fchown<Fd: std::os::fd::AsFd>(fd: Fd, owner: Option<Uid>, group: Option<Gid>) -> Result<()> {
| ^^^^^^^^^^^^^^^^^ required by this bound in `fchown`
help: consider removing this method call, as the receiver has type `File` and `File: AsFd` trivially holds
|
178 - _ = unistd::fchown(tmp_file.as_raw_fd(), Some(uid), Some(gid));
178 + _ = unistd::fchown(tmp_file, Some(uid), Some(gid));
|
For more information about this error, try `rustc --explain E0277`.
error: could not compile `zoxide` (bin "zoxide") due to 1 previous error
Caused by:
process didn't exit successfully: `CARGO=/usr/bin/cargo CA [too-long-redacted] argo/registry` (exit status: 1)
dh_auto_test: error: /usr/share/cargo/bin/cargo build returned exit code 101
make: *** [debian/rules:6: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
--------------------------------------------------------------------------------
More information about the Pkg-rust-maintainers
mailing list