[Pkg-rust-maintainers] Bug#1117372: rust-traitobject: FTBFS: error: could not compile `traitobject` (lib test) due to 3 previous errors; 80 warnings emitted
Santiago Vila
sanvila at debian.org
Sun Oct 5 15:15:19 BST 2025
Package: src:rust-traitobject
Version: 0.1.0-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-traitobject, 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 -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: alternatively use a blanket implementation to implement `Trait` for all types that also implement `::std::iter::Iterator<Item=T> + Send + Sync`
|
69 - unsafe impl<T> Trait for ::std::iter::Iterator<Item=T> + Send + Sync { }
69 + unsafe impl<T, U: ::std::iter::Iterator<Item=T> + Send + Sync> Trait for U { }
|
warning: trait objects without an explicit `dyn` are deprecated
--> src/impls.rs:70:23
|
70 | unsafe impl Trait for ::std::marker::Send + Send { }
| ^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
= note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
help: if this is a dyn-compatible trait, use `dyn`
|
70 | unsafe impl Trait for dyn (::std::marker::Send + Send) { }
| +++++ +
help: alternatively use a blanket implementation to implement `Trait` for all types that also implement `::std::marker::Send + Send`
|
70 - unsafe impl Trait for ::std::marker::Send + Send { }
70 + unsafe impl<T: ::std::marker::Send + Send> Trait for T { }
|
warning: trait objects without an explicit `dyn` are deprecated
--> src/impls.rs:71:23
|
71 | unsafe impl Trait for ::std::marker::Send + Sync { }
| ^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
= note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
help: if this is a dyn-compatible trait, use `dyn`
|
71 | unsafe impl Trait for dyn (::std::marker::Send + Sync) { }
| +++++ +
help: alternatively use a blanket implementation to implement `Trait` for all types that also implement `::std::marker::Send + Sync`
|
71 - unsafe impl Trait for ::std::marker::Send + Sync { }
71 + unsafe impl<T: ::std::marker::Send + Sync> Trait for T { }
|
warning: trait objects without an explicit `dyn` are deprecated
--> src/impls.rs:72:23
|
72 | unsafe impl Trait for ::std::marker::Send + Send + Sync { }
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
= note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
help: if this is a dyn-compatible trait, use `dyn`
|
72 | unsafe impl Trait for dyn (::std::marker::Send + Send + Sync) { }
| +++++ +
help: alternatively use a blanket implementation to implement `Trait` for all types that also implement `::std::marker::Send + Send + Sync`
|
72 - unsafe impl Trait for ::std::marker::Send + Send + Sync { }
72 + unsafe impl<T: ::std::marker::Send + Send + Sync> Trait for T { }
|
warning: trait objects without an explicit `dyn` are deprecated
--> src/impls.rs:73:23
|
73 | unsafe impl Trait for ::std::marker::Sync + Send { }
| ^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
= note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
help: if this is a dyn-compatible trait, use `dyn`
|
73 | unsafe impl Trait for dyn (::std::marker::Sync + Send) { }
| +++++ +
help: alternatively use a blanket implementation to implement `Trait` for all types that also implement `::std::marker::Sync + Send`
|
73 - unsafe impl Trait for ::std::marker::Sync + Send { }
73 + unsafe impl<T: ::std::marker::Sync + Send> Trait for T { }
|
warning: trait objects without an explicit `dyn` are deprecated
--> src/impls.rs:74:23
|
74 | unsafe impl Trait for ::std::marker::Sync + Sync { }
| ^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
= note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
help: if this is a dyn-compatible trait, use `dyn`
|
74 | unsafe impl Trait for dyn (::std::marker::Sync + Sync) { }
| +++++ +
help: alternatively use a blanket implementation to implement `Trait` for all types that also implement `::std::marker::Sync + Sync`
|
74 - unsafe impl Trait for ::std::marker::Sync + Sync { }
74 + unsafe impl<T: ::std::marker::Sync + Sync> Trait for T { }
|
warning: trait objects without an explicit `dyn` are deprecated
--> src/impls.rs:75:23
|
75 | unsafe impl Trait for ::std::marker::Sync + Send + Sync { }
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
= note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
help: if this is a dyn-compatible trait, use `dyn`
|
75 | unsafe impl Trait for dyn (::std::marker::Sync + Send + Sync) { }
| +++++ +
help: alternatively use a blanket implementation to implement `Trait` for all types that also implement `::std::marker::Sync + Send + Sync`
|
75 - unsafe impl Trait for ::std::marker::Sync + Send + Sync { }
75 + unsafe impl<T: ::std::marker::Sync + Send + Sync> Trait for T { }
|
warning: trait objects without an explicit `dyn` are deprecated
--> src/impls.rs:76:23
|
76 | unsafe impl Trait for ::std::ops::Drop + Send { }
| ^^^^^^^^^^^^^^^^^^^^^^^
|
= warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
= note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
help: if this is a dyn-compatible trait, use `dyn`
|
76 | unsafe impl Trait for dyn (::std::ops::Drop + Send) { }
| +++++ +
help: alternatively use a blanket implementation to implement `Trait` for all types that also implement `::std::ops::Drop + Send`
|
76 - unsafe impl Trait for ::std::ops::Drop + Send { }
76 + unsafe impl<T: ::std::ops::Drop + Send> Trait for T { }
|
warning: trait objects without an explicit `dyn` are deprecated
--> src/impls.rs:77:23
|
77 | unsafe impl Trait for ::std::ops::Drop + Sync { }
| ^^^^^^^^^^^^^^^^^^^^^^^
|
= warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
= note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
help: if this is a dyn-compatible trait, use `dyn`
|
77 | unsafe impl Trait for dyn (::std::ops::Drop + Sync) { }
| +++++ +
help: alternatively use a blanket implementation to implement `Trait` for all types that also implement `::std::ops::Drop + Sync`
|
77 - unsafe impl Trait for ::std::ops::Drop + Sync { }
77 + unsafe impl<T: ::std::ops::Drop + Sync> Trait for T { }
|
warning: trait objects without an explicit `dyn` are deprecated
--> src/impls.rs:78:23
|
78 | unsafe impl Trait for ::std::ops::Drop + Send + Sync { }
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
= note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
help: if this is a dyn-compatible trait, use `dyn`
|
78 | unsafe impl Trait for dyn (::std::ops::Drop + Send + Sync) { }
| +++++ +
help: alternatively use a blanket implementation to implement `Trait` for all types that also implement `::std::ops::Drop + Send + Sync`
|
78 - unsafe impl Trait for ::std::ops::Drop + Send + Sync { }
78 + unsafe impl<T: ::std::ops::Drop + Send + Sync> Trait for T { }
|
warning: trait objects without an explicit `dyn` are deprecated
--> src/impls.rs:79:23
|
79 | unsafe impl Trait for ::std::string::ToString + Send { }
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
= note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
help: if this is a dyn-compatible trait, use `dyn`
|
79 | unsafe impl Trait for dyn (::std::string::ToString + Send) { }
| +++++ +
help: alternatively use a blanket implementation to implement `Trait` for all types that also implement `::std::string::ToString + Send`
|
79 - unsafe impl Trait for ::std::string::ToString + Send { }
79 + unsafe impl<T: ::std::string::ToString + Send> Trait for T { }
|
warning: trait objects without an explicit `dyn` are deprecated
--> src/impls.rs:80:23
|
80 | unsafe impl Trait for ::std::string::ToString + Sync { }
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
= note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
help: if this is a dyn-compatible trait, use `dyn`
|
80 | unsafe impl Trait for dyn (::std::string::ToString + Sync) { }
| +++++ +
help: alternatively use a blanket implementation to implement `Trait` for all types that also implement `::std::string::ToString + Sync`
|
80 - unsafe impl Trait for ::std::string::ToString + Sync { }
80 + unsafe impl<T: ::std::string::ToString + Sync> Trait for T { }
|
warning: trait objects without an explicit `dyn` are deprecated
--> src/impls.rs:81:23
|
81 | unsafe impl Trait for ::std::string::ToString + Send + Sync { }
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
= note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
help: if this is a dyn-compatible trait, use `dyn`
|
81 | unsafe impl Trait for dyn (::std::string::ToString + Send + Sync) { }
| +++++ +
help: alternatively use a blanket implementation to implement `Trait` for all types that also implement `::std::string::ToString + Send + Sync`
|
81 - unsafe impl Trait for ::std::string::ToString + Send + Sync { }
81 + unsafe impl<T: ::std::string::ToString + Send + Sync> Trait for T { }
|
error[E0119]: conflicting implementations of trait `Trait` for type `(dyn Send + Sync + 'static)`
--> src/impls.rs:72:1
|
71 | unsafe impl Trait for ::std::marker::Send + Sync { }
| ------------------------------------------------ first implementation here
72 | unsafe impl Trait for ::std::marker::Send + Send + Sync { }
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `(dyn Send + Sync + 'static)`
error[E0119]: conflicting implementations of trait `Trait` for type `(dyn Send + Sync + 'static)`
--> src/impls.rs:73:1
|
71 | unsafe impl Trait for ::std::marker::Send + Sync { }
| ------------------------------------------------ first implementation here
72 | unsafe impl Trait for ::std::marker::Send + Send + Sync { }
73 | unsafe impl Trait for ::std::marker::Sync + Send { }
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `(dyn Send + Sync + 'static)`
error[E0119]: conflicting implementations of trait `Trait` for type `(dyn Send + Sync + 'static)`
--> src/impls.rs:75:1
|
71 | unsafe impl Trait for ::std::marker::Send + Sync { }
| ------------------------------------------------ first implementation here
...
75 | unsafe impl Trait for ::std::marker::Sync + Send + Sync { }
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `(dyn Send + Sync + 'static)`
warning: trait objects without an explicit `dyn` are deprecated
--> src/lib.rs:26:20
|
26 | let x = &7 as &Send;
| ^^^^
|
= warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
= note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
help: if this is a dyn-compatible trait, use `dyn`
|
26 | let x = &7 as &dyn Send;
| +++
For more information about this error, try `rustc --explain E0119`.
warning: `traitobject` (lib test) generated 80 warnings
error: could not compile `traitobject` (lib test) due to 3 previous errors; 80 warnings emitted
Caused by:
process didn't exit successfully: `CARGO=/usr/bin/cargo CA [too-long-redacted] argo/registry` (exit status: 1)
warning: build failed, waiting for other jobs to finish...
warning: `traitobject` (lib) generated 79 warnings (78 duplicates)
error: could not compile `traitobject` (lib) due to 3 previous errors; 79 warnings emitted
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 test --all returned exit code 101
make[1]: *** [debian/rules:6: override_dh_auto_test] Error 25
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
make: *** [debian/rules:3: binary] Error 2
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
--------------------------------------------------------------------------------
More information about the Pkg-rust-maintainers
mailing list