[INFO] fetching crate yocto 0.3.0...
[INFO] testing yocto-0.3.0 against master#1871252fc8bb672d40787e67404e6eaae7059369 for pr-125151
[INFO] extracting crate yocto 0.3.0 into /workspace/builds/worker-5-tc1/source
[INFO] validating manifest of crates.io crate yocto 0.3.0 on toolchain 1871252fc8bb672d40787e67404e6eaae7059369
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate yocto 0.3.0
[INFO] finished tweaking crates.io crate yocto 0.3.0
[INFO] tweaked toml for crates.io crate yocto 0.3.0 written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 33 packages to latest compatible versions
[INFO] [stderr]       Adding ansi_term v0.10.2 (latest: v0.12.1)
[INFO] [stderr]       Adding bitflags v1.3.2 (latest: v2.5.0)
[INFO] [stderr]       Adding cfg-if v0.1.10 (latest: v1.0.0)
[INFO] [stderr]       Adding clap v2.34.0 (latest: v4.5.4)
[INFO] [stderr]       Adding hermit-abi v0.1.19 (latest: v0.3.9)
[INFO] [stderr]       Adding isatty v0.1.9 (latest: v0.2.0)
[INFO] [stderr]       Adding log v0.3.9 (latest: v0.4.21)
[INFO] [stderr]       Adding owning_ref v0.3.3 (latest: v0.4.1)
[INFO] [stderr]       Adding parking_lot v0.4.8 (latest: v0.12.3)
[INFO] [stderr]       Adding parking_lot_core v0.2.14 (latest: v0.9.10)
[INFO] [stderr]       Adding rand v0.4.6 (latest: v0.8.5)
[INFO] [stderr]       Adding rand_core v0.3.1 (latest: v0.6.4)
[INFO] [stderr]       Adding rand_core v0.4.2 (latest: v0.6.4)
[INFO] [stderr]       Adding rdrand v0.4.0 (latest: v0.8.3)
[INFO] [stderr]       Adding redox_syscall v0.1.57 (latest: v0.5.1)
[INFO] [stderr]       Adding smallvec v0.6.14 (latest: v1.13.2)
[INFO] [stderr]       Adding strsim v0.8.0 (latest: v0.11.1)
[INFO] [stderr]       Adding textwrap v0.11.0 (latest: v0.16.1)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded isatty v0.1.9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 28eb407ff52c67097cde6210fb159a7ff110a5d7e26dc308b895442a2efbf0ec
[INFO] running `Command { std: "docker" "start" "-a" "28eb407ff52c67097cde6210fb159a7ff110a5d7e26dc308b895442a2efbf0ec", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "28eb407ff52c67097cde6210fb159a7ff110a5d7e26dc308b895442a2efbf0ec", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "28eb407ff52c67097cde6210fb159a7ff110a5d7e26dc308b895442a2efbf0ec", kill_on_drop: false }`
[INFO] [stdout] 28eb407ff52c67097cde6210fb159a7ff110a5d7e26dc308b895442a2efbf0ec
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 51452a4b5a6d8e4680bebb6262fed4646e5ed3e9d6910e1618fef957d7d06ba6
[INFO] running `Command { std: "docker" "start" "-a" "51452a4b5a6d8e4680bebb6262fed4646e5ed3e9d6910e1618fef957d7d06ba6", kill_on_drop: false }`
[INFO] [stderr]    Compiling maybe-uninit v2.0.0
[INFO] [stderr]    Compiling stable_deref_trait v1.2.0
[INFO] [stderr]    Compiling unicode-segmentation v1.11.0
[INFO] [stderr]    Compiling ansi_term v0.10.2
[INFO] [stderr]    Compiling rand v0.4.6
[INFO] [stderr]    Compiling isatty v0.1.9
[INFO] [stderr]    Compiling clap v2.34.0
[INFO] [stderr]    Compiling owning_ref v0.3.3
[INFO] [stderr]    Compiling smallvec v0.6.14
[INFO] [stderr]    Compiling parking_lot_core v0.2.14
[INFO] [stderr]    Compiling parking_lot v0.4.8
[INFO] [stderr]    Compiling chashmap v2.2.2
[INFO] [stderr]    Compiling yocto v0.3.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:21:40
[INFO] [stdout]    |
[INFO] [stdout] 21 | type Result<T> = result::Result<T, Box<std::error::Error>>;
[INFO] [stdout]    |                                        ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 21 | type Result<T> = result::Result<T, Box<dyn std::error::Error>>;
[INFO] [stdout]    |                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:23:20
[INFO] [stdout]    |
[INFO] [stdout] 23 | type Command = Box<Fn(Arc<CHashMap<String, String>>) -> Response>;
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 | type Command = Box<dyn Fn(Arc<CHashMap<String, String>>) -> Response>;
[INFO] [stdout]    |                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/threadp.rs:19:16
[INFO] [stdout]    |
[INFO] [stdout] 19 | type Job = Box<FnBox + Send + 'static>;
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 19 | type Job = Box<dyn FnBox + Send + 'static>;
[INFO] [stdout]    |                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/logger.rs:47:28
[INFO] [stdout]    |
[INFO] [stdout] 47 |     fn write(&self) -> Box<Write> {
[INFO] [stdout]    |                            ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 47 |     fn write(&self) -> Box<dyn Write> {
[INFO] [stdout]    |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/error.rs:22:32
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/error.rs:41:32
[INFO] [stdout]    |
[INFO] [stdout] 41 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 41 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicUsize::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/logger.rs:101:38
[INFO] [stdout]     |
[INFO] [stdout] 101 |             if self.max_module_width.compare_and_swap(old, new, Ordering::SeqCst) == old {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicUsize::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/logger.rs:111:38
[INFO] [stdout]     |
[INFO] [stdout] 111 |             if self.max_target_width.compare_and_swap(old, new, Ordering::SeqCst) == old {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `module_length`
[INFO] [stdout]    --> src/logger.rs:144:13
[INFO] [stdout]     |
[INFO] [stdout] 144 |         let module_length = self.update_module_width(module.graphemes(true).count());
[INFO] [stdout]     |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_module_length`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target_length`
[INFO] [stdout]    --> src/logger.rs:150:17
[INFO] [stdout]     |
[INFO] [stdout] 150 |             let target_length = self.update_target_width(target.graphemes(true).count());
[INFO] [stdout]     |                 ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_target_length`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `id` is never read
[INFO] [stdout]   --> src/threadp.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | struct Worker {
[INFO] [stdout]    |        ------ field in this struct
[INFO] [stdout] 27 |     id: usize,
[INFO] [stdout]    |     ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 11 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2.48s
[INFO] running `Command { std: "docker" "inspect" "51452a4b5a6d8e4680bebb6262fed4646e5ed3e9d6910e1618fef957d7d06ba6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "51452a4b5a6d8e4680bebb6262fed4646e5ed3e9d6910e1618fef957d7d06ba6", kill_on_drop: false }`
[INFO] [stdout] 51452a4b5a6d8e4680bebb6262fed4646e5ed3e9d6910e1618fef957d7d06ba6
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] bef1cec5e9474bfad28e62d9e8c546cd92972fde94b290878abe15dcf31dd3d4
[INFO] running `Command { std: "docker" "start" "-a" "bef1cec5e9474bfad28e62d9e8c546cd92972fde94b290878abe15dcf31dd3d4", kill_on_drop: false }`
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:21:40
[INFO] [stdout]    |
[INFO] [stdout] 21 | type Result<T> = result::Result<T, Box<std::error::Error>>;
[INFO] [stdout]    |                                        ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 21 | type Result<T> = result::Result<T, Box<dyn std::error::Error>>;
[INFO] [stdout]    |                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:23:20
[INFO] [stdout]    |
[INFO] [stdout] 23 | type Command = Box<Fn(Arc<CHashMap<String, String>>) -> Response>;
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 | type Command = Box<dyn Fn(Arc<CHashMap<String, String>>) -> Response>;
[INFO] [stdout]    |                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/threadp.rs:19:16
[INFO] [stdout]    |
[INFO] [stdout] 19 | type Job = Box<FnBox + Send + 'static>;
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 19 | type Job = Box<dyn FnBox + Send + 'static>;
[INFO] [stdout]    |                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/logger.rs:47:28
[INFO] [stdout]    |
[INFO] [stdout] 47 |     fn write(&self) -> Box<Write> {
[INFO] [stdout]    |                            ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 47 |     fn write(&self) -> Box<dyn Write> {
[INFO] [stdout]    |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/error.rs:22:32
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/error.rs:41:32
[INFO] [stdout]    |
[INFO] [stdout] 41 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 41 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicUsize::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/logger.rs:101:38
[INFO] [stdout]     |
[INFO] [stdout] 101 |             if self.max_module_width.compare_and_swap(old, new, Ordering::SeqCst) == old {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicUsize::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/logger.rs:111:38
[INFO] [stdout]     |
[INFO] [stdout] 111 |             if self.max_target_width.compare_and_swap(old, new, Ordering::SeqCst) == old {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `module_length`
[INFO] [stdout]    --> src/logger.rs:144:13
[INFO] [stdout]     |
[INFO] [stdout] 144 |         let module_length = self.update_module_width(module.graphemes(true).count());
[INFO] [stdout]     |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_module_length`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target_length`
[INFO] [stdout]    --> src/logger.rs:150:17
[INFO] [stdout]     |
[INFO] [stdout] 150 |             let target_length = self.update_target_width(target.graphemes(true).count());
[INFO] [stdout]     |                 ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_target_length`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling yocto v0.3.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: field `id` is never read
[INFO] [stdout]   --> src/threadp.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | struct Worker {
[INFO] [stdout]    |        ------ field in this struct
[INFO] [stdout] 27 |     id: usize,
[INFO] [stdout]    |     ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 11 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:21:40
[INFO] [stdout]    |
[INFO] [stdout] 21 | type Result<T> = result::Result<T, Box<std::error::Error>>;
[INFO] [stdout]    |                                        ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 21 | type Result<T> = result::Result<T, Box<dyn std::error::Error>>;
[INFO] [stdout]    |                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:23:20
[INFO] [stdout]    |
[INFO] [stdout] 23 | type Command = Box<Fn(Arc<CHashMap<String, String>>) -> Response>;
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 | type Command = Box<dyn Fn(Arc<CHashMap<String, String>>) -> Response>;
[INFO] [stdout]    |                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/threadp.rs:19:16
[INFO] [stdout]    |
[INFO] [stdout] 19 | type Job = Box<FnBox + Send + 'static>;
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 19 | type Job = Box<dyn FnBox + Send + 'static>;
[INFO] [stdout]    |                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `handle`
[INFO] [stdout]    --> tests/integration.rs:122:9
[INFO] [stdout]     |
[INFO] [stdout] 122 |     let handle = thread::spawn(|| {
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_handle`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/logger.rs:47:28
[INFO] [stdout]    |
[INFO] [stdout] 47 |     fn write(&self) -> Box<Write> {
[INFO] [stdout]    |                            ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 47 |     fn write(&self) -> Box<dyn Write> {
[INFO] [stdout]    |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/error.rs:22:32
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/error.rs:41:32
[INFO] [stdout]    |
[INFO] [stdout] 41 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 41 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicUsize::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/logger.rs:101:38
[INFO] [stdout]     |
[INFO] [stdout] 101 |             if self.max_module_width.compare_and_swap(old, new, Ordering::SeqCst) == old {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicUsize::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/logger.rs:111:38
[INFO] [stdout]     |
[INFO] [stdout] 111 |             if self.max_target_width.compare_and_swap(old, new, Ordering::SeqCst) == old {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> tests/integration.rs:137:5
[INFO] [stdout]     |
[INFO] [stdout] 137 |     stream.read(&mut buffer);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 137 |     let _ = stream.read(&mut buffer);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `module_length`
[INFO] [stdout]    --> src/logger.rs:144:13
[INFO] [stdout]     |
[INFO] [stdout] 144 |         let module_length = self.update_module_width(module.graphemes(true).count());
[INFO] [stdout]     |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_module_length`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target_length`
[INFO] [stdout]    --> src/logger.rs:150:17
[INFO] [stdout]     |
[INFO] [stdout] 150 |             let target_length = self.update_target_width(target.graphemes(true).count());
[INFO] [stdout]     |                 ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_target_length`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `id` is never read
[INFO] [stdout]   --> src/threadp.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | struct Worker {
[INFO] [stdout]    |        ------ field in this struct
[INFO] [stdout] 27 |     id: usize,
[INFO] [stdout]    |     ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 11 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.49s
[INFO] running `Command { std: "docker" "inspect" "bef1cec5e9474bfad28e62d9e8c546cd92972fde94b290878abe15dcf31dd3d4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bef1cec5e9474bfad28e62d9e8c546cd92972fde94b290878abe15dcf31dd3d4", kill_on_drop: false }`
[INFO] [stdout] bef1cec5e9474bfad28e62d9e8c546cd92972fde94b290878abe15dcf31dd3d4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] a7596c9193c354dc952b64ad34cb116a8e994b21dda90216df52c44740b0ea7f
[INFO] running `Command { std: "docker" "start" "-a" "a7596c9193c354dc952b64ad34cb116a8e994b21dda90216df52c44740b0ea7f", kill_on_drop: false }`
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/lib.rs:21:40
[INFO] [stderr]    |
[INFO] [stderr] 21 | type Result<T> = result::Result<T, Box<std::error::Error>>;
[INFO] [stderr]    |                                        ^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] help: if this is an object-safe trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 21 | type Result<T> = result::Result<T, Box<dyn std::error::Error>>;
[INFO] [stderr]    |                                        +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/lib.rs:23:20
[INFO] [stderr]    |
[INFO] [stderr] 23 | type Command = Box<Fn(Arc<CHashMap<String, String>>) -> Response>;
[INFO] [stderr]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is an object-safe trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 23 | type Command = Box<dyn Fn(Arc<CHashMap<String, String>>) -> Response>;
[INFO] [stderr]    |                    +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/threadp.rs:19:16
[INFO] [stderr]    |
[INFO] [stderr] 19 | type Job = Box<FnBox + Send + 'static>;
[INFO] [stderr]    |                ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is an object-safe trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 19 | type Job = Box<dyn FnBox + Send + 'static>;
[INFO] [stderr]    |                +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/logger.rs:47:28
[INFO] [stderr]    |
[INFO] [stderr] 47 |     fn write(&self) -> Box<Write> {
[INFO] [stderr]    |                            ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is an object-safe trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 47 |     fn write(&self) -> Box<dyn Write> {
[INFO] [stderr]    |                            +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/error.rs:22:32
[INFO] [stderr]    |
[INFO] [stderr] 22 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stderr]    |                                ^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is an object-safe trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 22 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stderr]    |                                +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/error.rs:41:32
[INFO] [stderr]    |
[INFO] [stderr] 41 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stderr]    |                                ^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is an object-safe trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 41 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stderr]    |                                +++
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `std::sync::atomic::AtomicUsize::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stderr]    --> src/logger.rs:101:38
[INFO] [stderr]     |
[INFO] [stderr] 101 |             if self.max_module_width.compare_and_swap(old, new, Ordering::SeqCst) == old {
[INFO] [stderr]     |                                      ^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `std::sync::atomic::AtomicUsize::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stderr]    --> src/logger.rs:111:38
[INFO] [stderr]     |
[INFO] [stderr] 111 |             if self.max_target_width.compare_and_swap(old, new, Ordering::SeqCst) == old {
[INFO] [stderr]     |                                      ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `module_length`
[INFO] [stderr]    --> src/logger.rs:144:13
[INFO] [stderr]     |
[INFO] [stderr] 144 |         let module_length = self.update_module_width(module.graphemes(true).count());
[INFO] [stderr]     |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_module_length`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `target_length`
[INFO] [stderr]    --> src/logger.rs:150:17
[INFO] [stderr]     |
[INFO] [stderr] 150 |             let target_length = self.update_target_width(target.graphemes(true).count());
[INFO] [stderr]     |                 ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_target_length`
[INFO] [stderr] 
[INFO] [stderr] warning: field `id` is never read
[INFO] [stderr]   --> src/threadp.rs:27:5
[INFO] [stderr]    |
[INFO] [stderr] 26 | struct Worker {
[INFO] [stderr]    |        ------ field in this struct
[INFO] [stderr] 27 |     id: usize,
[INFO] [stderr]    |     ^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `yocto` (lib) generated 11 warnings (run `cargo fix --lib -p yocto` to apply 6 suggestions)
[INFO] [stderr] warning: `yocto` (lib test) generated 11 warnings (11 duplicates)
[INFO] [stderr] warning: unused variable: `handle`
[INFO] [stderr]    --> tests/integration.rs:122:9
[INFO] [stderr]     |
[INFO] [stderr] 122 |     let handle = thread::spawn(|| {
[INFO] [stderr]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_handle`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> tests/integration.rs:137:5
[INFO] [stderr]     |
[INFO] [stderr] 137 |     stream.read(&mut buffer);
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 137 |     let _ = stream.read(&mut buffer);
[INFO] [stderr]     |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: `yocto` (test "integration") generated 2 warnings
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.02s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/yocto-1c3f897d0519e188)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/yocto-b3c20288e7b79350)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/integration.rs (/opt/rustwide/target/debug/deps/integration-0ffb6697ec780375)
[INFO] [stdout] 
[INFO] [stdout] running 13 tests
[INFO] [stderr] error: test failed, to rerun pass `--test integration`
[INFO] [stderr] 
[INFO] [stderr] Caused by:
[INFO] [stderr]   process didn't exit successfully: `/opt/rustwide/target/debug/deps/integration-0ffb6697ec780375` (exit status: 1)
[INFO] [stderr] note: test exited abnormally; to see the full output pass --nocapture to the harness.
[INFO] running `Command { std: "docker" "inspect" "a7596c9193c354dc952b64ad34cb116a8e994b21dda90216df52c44740b0ea7f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a7596c9193c354dc952b64ad34cb116a8e994b21dda90216df52c44740b0ea7f", kill_on_drop: false }`
[INFO] [stdout] a7596c9193c354dc952b64ad34cb116a8e994b21dda90216df52c44740b0ea7f
[INFO] testing yocto-0.3.0 against try#b642703cf9526da1e72c0b6755753b939a9c6b6d for pr-125151
[INFO] extracting crate yocto 0.3.0 into /workspace/builds/worker-5-tc2/source
[INFO] validating manifest of crates.io crate yocto 0.3.0 on toolchain b642703cf9526da1e72c0b6755753b939a9c6b6d
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate yocto 0.3.0
[INFO] finished tweaking crates.io crate yocto 0.3.0
[INFO] tweaked toml for crates.io crate yocto 0.3.0 written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 33 packages to latest compatible versions
[INFO] [stderr]       Adding ansi_term v0.10.2 (latest: v0.12.1)
[INFO] [stderr]       Adding bitflags v1.3.2 (latest: v2.5.0)
[INFO] [stderr]       Adding cfg-if v0.1.10 (latest: v1.0.0)
[INFO] [stderr]       Adding clap v2.34.0 (latest: v4.5.4)
[INFO] [stderr]       Adding hermit-abi v0.1.19 (latest: v0.3.9)
[INFO] [stderr]       Adding isatty v0.1.9 (latest: v0.2.0)
[INFO] [stderr]       Adding log v0.3.9 (latest: v0.4.21)
[INFO] [stderr]       Adding owning_ref v0.3.3 (latest: v0.4.1)
[INFO] [stderr]       Adding parking_lot v0.4.8 (latest: v0.12.3)
[INFO] [stderr]       Adding parking_lot_core v0.2.14 (latest: v0.9.10)
[INFO] [stderr]       Adding rand v0.4.6 (latest: v0.8.5)
[INFO] [stderr]       Adding rand_core v0.3.1 (latest: v0.6.4)
[INFO] [stderr]       Adding rand_core v0.4.2 (latest: v0.6.4)
[INFO] [stderr]       Adding rdrand v0.4.0 (latest: v0.8.3)
[INFO] [stderr]       Adding redox_syscall v0.1.57 (latest: v0.5.1)
[INFO] [stderr]       Adding smallvec v0.6.14 (latest: v1.13.2)
[INFO] [stderr]       Adding strsim v0.8.0 (latest: v0.11.1)
[INFO] [stderr]       Adding textwrap v0.11.0 (latest: v0.16.1)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 50a42c06e801a29bea9e72490ee0aa731a8b8d6821bdb841879988767bd75654
[INFO] running `Command { std: "docker" "start" "-a" "50a42c06e801a29bea9e72490ee0aa731a8b8d6821bdb841879988767bd75654", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "50a42c06e801a29bea9e72490ee0aa731a8b8d6821bdb841879988767bd75654", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "50a42c06e801a29bea9e72490ee0aa731a8b8d6821bdb841879988767bd75654", kill_on_drop: false }`
[INFO] [stdout] 50a42c06e801a29bea9e72490ee0aa731a8b8d6821bdb841879988767bd75654
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 4e9e8a07b0636c5b6d3db5efe1d0e183e6c3d07098b5364a3b83f52b0ee43a43
[INFO] running `Command { std: "docker" "start" "-a" "4e9e8a07b0636c5b6d3db5efe1d0e183e6c3d07098b5364a3b83f52b0ee43a43", kill_on_drop: false }`
[INFO] [stderr]    Compiling maybe-uninit v2.0.0
[INFO] [stderr]    Compiling stable_deref_trait v1.2.0
[INFO] [stderr]    Compiling ansi_term v0.10.2
[INFO] [stderr]    Compiling unicode-segmentation v1.11.0
[INFO] [stderr]    Compiling rand v0.4.6
[INFO] [stderr]    Compiling isatty v0.1.9
[INFO] [stderr]    Compiling clap v2.34.0
[INFO] [stderr]    Compiling owning_ref v0.3.3
[INFO] [stderr]    Compiling smallvec v0.6.14
[INFO] [stderr]    Compiling parking_lot_core v0.2.14
[INFO] [stderr]    Compiling parking_lot v0.4.8
[INFO] [stderr]    Compiling chashmap v2.2.2
[INFO] [stderr]    Compiling yocto v0.3.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:21:40
[INFO] [stdout]    |
[INFO] [stdout] 21 | type Result<T> = result::Result<T, Box<std::error::Error>>;
[INFO] [stdout]    |                                        ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 21 | type Result<T> = result::Result<T, Box<dyn std::error::Error>>;
[INFO] [stdout]    |                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:23:20
[INFO] [stdout]    |
[INFO] [stdout] 23 | type Command = Box<Fn(Arc<CHashMap<String, String>>) -> Response>;
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 | type Command = Box<dyn Fn(Arc<CHashMap<String, String>>) -> Response>;
[INFO] [stdout]    |                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/threadp.rs:19:16
[INFO] [stdout]    |
[INFO] [stdout] 19 | type Job = Box<FnBox + Send + 'static>;
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 19 | type Job = Box<dyn FnBox + Send + 'static>;
[INFO] [stdout]    |                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/logger.rs:47:28
[INFO] [stdout]    |
[INFO] [stdout] 47 |     fn write(&self) -> Box<Write> {
[INFO] [stdout]    |                            ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 47 |     fn write(&self) -> Box<dyn Write> {
[INFO] [stdout]    |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/error.rs:22:32
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/error.rs:41:32
[INFO] [stdout]    |
[INFO] [stdout] 41 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 41 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicUsize::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/logger.rs:101:38
[INFO] [stdout]     |
[INFO] [stdout] 101 |             if self.max_module_width.compare_and_swap(old, new, Ordering::SeqCst) == old {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicUsize::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/logger.rs:111:38
[INFO] [stdout]     |
[INFO] [stdout] 111 |             if self.max_target_width.compare_and_swap(old, new, Ordering::SeqCst) == old {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `module_length`
[INFO] [stdout]    --> src/logger.rs:144:13
[INFO] [stdout]     |
[INFO] [stdout] 144 |         let module_length = self.update_module_width(module.graphemes(true).count());
[INFO] [stdout]     |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_module_length`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target_length`
[INFO] [stdout]    --> src/logger.rs:150:17
[INFO] [stdout]     |
[INFO] [stdout] 150 |             let target_length = self.update_target_width(target.graphemes(true).count());
[INFO] [stdout]     |                 ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_target_length`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `id` is never read
[INFO] [stdout]   --> src/threadp.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | struct Worker {
[INFO] [stdout]    |        ------ field in this struct
[INFO] [stdout] 27 |     id: usize,
[INFO] [stdout]    |     ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 11 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2.34s
[INFO] running `Command { std: "docker" "inspect" "4e9e8a07b0636c5b6d3db5efe1d0e183e6c3d07098b5364a3b83f52b0ee43a43", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4e9e8a07b0636c5b6d3db5efe1d0e183e6c3d07098b5364a3b83f52b0ee43a43", kill_on_drop: false }`
[INFO] [stdout] 4e9e8a07b0636c5b6d3db5efe1d0e183e6c3d07098b5364a3b83f52b0ee43a43
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 8ccb30c196cfa78b0992fb4f8089f16d2bc9544e358e953326af7bccb43d0f79
[INFO] running `Command { std: "docker" "start" "-a" "8ccb30c196cfa78b0992fb4f8089f16d2bc9544e358e953326af7bccb43d0f79", kill_on_drop: false }`
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:21:40
[INFO] [stdout]    |
[INFO] [stdout] 21 | type Result<T> = result::Result<T, Box<std::error::Error>>;
[INFO] [stdout]    |                                        ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 21 | type Result<T> = result::Result<T, Box<dyn std::error::Error>>;
[INFO] [stdout]    |                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:23:20
[INFO] [stdout]    |
[INFO] [stdout] 23 | type Command = Box<Fn(Arc<CHashMap<String, String>>) -> Response>;
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 | type Command = Box<dyn Fn(Arc<CHashMap<String, String>>) -> Response>;
[INFO] [stdout]    |                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/threadp.rs:19:16
[INFO] [stdout]    |
[INFO] [stdout] 19 | type Job = Box<FnBox + Send + 'static>;
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 19 | type Job = Box<dyn FnBox + Send + 'static>;
[INFO] [stdout]    |                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/logger.rs:47:28
[INFO] [stdout]    |
[INFO] [stdout] 47 |     fn write(&self) -> Box<Write> {
[INFO] [stdout]    |                            ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 47 |     fn write(&self) -> Box<dyn Write> {
[INFO] [stdout]    |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/error.rs:22:32
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/error.rs:41:32
[INFO] [stdout]    |
[INFO] [stdout] 41 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 41 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicUsize::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/logger.rs:101:38
[INFO] [stdout]     |
[INFO] [stdout] 101 |             if self.max_module_width.compare_and_swap(old, new, Ordering::SeqCst) == old {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicUsize::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/logger.rs:111:38
[INFO] [stdout]     |
[INFO] [stdout] 111 |             if self.max_target_width.compare_and_swap(old, new, Ordering::SeqCst) == old {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `module_length`
[INFO] [stdout]    --> src/logger.rs:144:13
[INFO] [stdout]     |
[INFO] [stdout] 144 |         let module_length = self.update_module_width(module.graphemes(true).count());
[INFO] [stdout]     |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_module_length`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target_length`
[INFO] [stdout]    --> src/logger.rs:150:17
[INFO] [stdout]     |
[INFO] [stdout] 150 |             let target_length = self.update_target_width(target.graphemes(true).count());
[INFO] [stdout]     |                 ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_target_length`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `id` is never read
[INFO] [stdout]   --> src/threadp.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | struct Worker {
[INFO] [stdout]    |        ------ field in this struct
[INFO] [stdout] 27 |     id: usize,
[INFO] [stdout]    |     ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 11 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling yocto v0.3.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:21:40
[INFO] [stdout]    |
[INFO] [stdout] 21 | type Result<T> = result::Result<T, Box<std::error::Error>>;
[INFO] [stdout]    |                                        ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 21 | type Result<T> = result::Result<T, Box<dyn std::error::Error>>;
[INFO] [stdout]    |                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:23:20
[INFO] [stdout]    |
[INFO] [stdout] 23 | type Command = Box<Fn(Arc<CHashMap<String, String>>) -> Response>;
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 | type Command = Box<dyn Fn(Arc<CHashMap<String, String>>) -> Response>;
[INFO] [stdout]    |                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/threadp.rs:19:16
[INFO] [stdout]    |
[INFO] [stdout] 19 | type Job = Box<FnBox + Send + 'static>;
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 19 | type Job = Box<dyn FnBox + Send + 'static>;
[INFO] [stdout]    |                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/logger.rs:47:28
[INFO] [stdout]    |
[INFO] [stdout] 47 |     fn write(&self) -> Box<Write> {
[INFO] [stdout]    |                            ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 47 |     fn write(&self) -> Box<dyn Write> {
[INFO] [stdout]    |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/error.rs:22:32
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/error.rs:41:32
[INFO] [stdout]    |
[INFO] [stdout] 41 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 41 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `handle`
[INFO] [stdout]    --> tests/integration.rs:122:9
[INFO] [stdout]     |
[INFO] [stdout] 122 |     let handle = thread::spawn(|| {
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_handle`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicUsize::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/logger.rs:101:38
[INFO] [stdout]     |
[INFO] [stdout] 101 |             if self.max_module_width.compare_and_swap(old, new, Ordering::SeqCst) == old {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicUsize::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/logger.rs:111:38
[INFO] [stdout]     |
[INFO] [stdout] 111 |             if self.max_target_width.compare_and_swap(old, new, Ordering::SeqCst) == old {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> tests/integration.rs:137:5
[INFO] [stdout]     |
[INFO] [stdout] 137 |     stream.read(&mut buffer);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 137 |     let _ = stream.read(&mut buffer);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `module_length`
[INFO] [stdout]    --> src/logger.rs:144:13
[INFO] [stdout]     |
[INFO] [stdout] 144 |         let module_length = self.update_module_width(module.graphemes(true).count());
[INFO] [stdout]     |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_module_length`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target_length`
[INFO] [stdout]    --> src/logger.rs:150:17
[INFO] [stdout]     |
[INFO] [stdout] 150 |             let target_length = self.update_target_width(target.graphemes(true).count());
[INFO] [stdout]     |                 ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_target_length`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `id` is never read
[INFO] [stdout]   --> src/threadp.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | struct Worker {
[INFO] [stdout]    |        ------ field in this struct
[INFO] [stdout] 27 |     id: usize,
[INFO] [stdout]    |     ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 11 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.51s
[INFO] running `Command { std: "docker" "inspect" "8ccb30c196cfa78b0992fb4f8089f16d2bc9544e358e953326af7bccb43d0f79", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8ccb30c196cfa78b0992fb4f8089f16d2bc9544e358e953326af7bccb43d0f79", kill_on_drop: false }`
[INFO] [stdout] 8ccb30c196cfa78b0992fb4f8089f16d2bc9544e358e953326af7bccb43d0f79
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 2f8edf4db9439be8f34b363665b01feb64887e2a9ca3c6526803ddbf5c26fc0a
[INFO] running `Command { std: "docker" "start" "-a" "2f8edf4db9439be8f34b363665b01feb64887e2a9ca3c6526803ddbf5c26fc0a", kill_on_drop: false }`
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/lib.rs:21:40
[INFO] [stderr]    |
[INFO] [stderr] 21 | type Result<T> = result::Result<T, Box<std::error::Error>>;
[INFO] [stderr]    |                                        ^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] help: if this is an object-safe trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 21 | type Result<T> = result::Result<T, Box<dyn std::error::Error>>;
[INFO] [stderr]    |                                        +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/lib.rs:23:20
[INFO] [stderr]    |
[INFO] [stderr] 23 | type Command = Box<Fn(Arc<CHashMap<String, String>>) -> Response>;
[INFO] [stderr]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is an object-safe trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 23 | type Command = Box<dyn Fn(Arc<CHashMap<String, String>>) -> Response>;
[INFO] [stderr]    |                    +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/threadp.rs:19:16
[INFO] [stderr]    |
[INFO] [stderr] 19 | type Job = Box<FnBox + Send + 'static>;
[INFO] [stderr]    |                ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is an object-safe trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 19 | type Job = Box<dyn FnBox + Send + 'static>;
[INFO] [stderr]    |                +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/logger.rs:47:28
[INFO] [stderr]    |
[INFO] [stderr] 47 |     fn write(&self) -> Box<Write> {
[INFO] [stderr]    |                            ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is an object-safe trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 47 |     fn write(&self) -> Box<dyn Write> {
[INFO] [stderr]    |                            +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/error.rs:22:32
[INFO] [stderr]    |
[INFO] [stderr] 22 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stderr]    |                                ^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is an object-safe trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 22 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stderr]    |                                +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/error.rs:41:32
[INFO] [stderr]    |
[INFO] [stderr] 41 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stderr]    |                                ^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is an object-safe trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 41 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stderr]    |                                +++
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `std::sync::atomic::AtomicUsize::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stderr]    --> src/logger.rs:101:38
[INFO] [stderr]     |
[INFO] [stderr] 101 |             if self.max_module_width.compare_and_swap(old, new, Ordering::SeqCst) == old {
[INFO] [stderr]     |                                      ^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `std::sync::atomic::AtomicUsize::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stderr]    --> src/logger.rs:111:38
[INFO] [stderr]     |
[INFO] [stderr] 111 |             if self.max_target_width.compare_and_swap(old, new, Ordering::SeqCst) == old {
[INFO] [stderr]     |                                      ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `module_length`
[INFO] [stderr]    --> src/logger.rs:144:13
[INFO] [stderr]     |
[INFO] [stderr] 144 |         let module_length = self.update_module_width(module.graphemes(true).count());
[INFO] [stderr]     |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_module_length`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `target_length`
[INFO] [stderr]    --> src/logger.rs:150:17
[INFO] [stderr]     |
[INFO] [stderr] 150 |             let target_length = self.update_target_width(target.graphemes(true).count());
[INFO] [stderr]     |                 ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_target_length`
[INFO] [stderr] 
[INFO] [stderr] warning: field `id` is never read
[INFO] [stderr]   --> src/threadp.rs:27:5
[INFO] [stderr]    |
[INFO] [stderr] 26 | struct Worker {
[INFO] [stderr]    |        ------ field in this struct
[INFO] [stderr] 27 |     id: usize,
[INFO] [stderr]    |     ^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `yocto` (lib) generated 11 warnings (run `cargo fix --lib -p yocto` to apply 6 suggestions)
[INFO] [stderr] warning: `yocto` (lib test) generated 11 warnings (11 duplicates)
[INFO] [stderr] warning: unused variable: `handle`
[INFO] [stderr]    --> tests/integration.rs:122:9
[INFO] [stderr]     |
[INFO] [stderr] 122 |     let handle = thread::spawn(|| {
[INFO] [stderr]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_handle`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> tests/integration.rs:137:5
[INFO] [stderr]     |
[INFO] [stderr] 137 |     stream.read(&mut buffer);
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 137 |     let _ = stream.read(&mut buffer);
[INFO] [stderr]     |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: `yocto` (test "integration") generated 2 warnings
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.02s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/yocto-1c3f897d0519e188)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/yocto-b3c20288e7b79350)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/integration.rs (/opt/rustwide/target/debug/deps/integration-0ffb6697ec780375)
[INFO] [stdout] 
[INFO] [stdout] running 13 tests
[INFO] [stderr] error: test failed, to rerun pass `--test integration`
[INFO] [stderr] 
[INFO] [stderr] Caused by:
[INFO] [stderr]   process didn't exit successfully: `/opt/rustwide/target/debug/deps/integration-0ffb6697ec780375` (exit status: 1)
[INFO] [stderr] note: test exited abnormally; to see the full output pass --nocapture to the harness.
[INFO] running `Command { std: "docker" "inspect" "2f8edf4db9439be8f34b363665b01feb64887e2a9ca3c6526803ddbf5c26fc0a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2f8edf4db9439be8f34b363665b01feb64887e2a9ca3c6526803ddbf5c26fc0a", kill_on_drop: false }`
[INFO] [stdout] 2f8edf4db9439be8f34b363665b01feb64887e2a9ca3c6526803ddbf5c26fc0a
