[INFO] fetching crate counters 0.5.0... [INFO] testing counters-0.5.0 against beta-2022-04-10 for beta-1.61-1 [INFO] extracting crate counters 0.5.0 into /workspace/builds/worker-9/source [INFO] validating manifest of crates.io crate counters 0.5.0 on toolchain beta-2022-04-10 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2022-04-10" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate counters 0.5.0 [INFO] finished tweaking crates.io crate counters 0.5.0 [INFO] tweaked toml for crates.io crate counters 0.5.0 written to /workspace/builds/worker-9/source/Cargo.toml [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2022-04-10" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }` [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2022-04-10" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-04-10" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] f8341e290a4e6a5507e65f320b0dedbf858b7929f09c5859d565d4893aa64c04 [INFO] running `Command { std: "docker" "start" "-a" "f8341e290a4e6a5507e65f320b0dedbf858b7929f09c5859d565d4893aa64c04", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "f8341e290a4e6a5507e65f320b0dedbf858b7929f09c5859d565d4893aa64c04", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f8341e290a4e6a5507e65f320b0dedbf858b7929f09c5859d565d4893aa64c04", kill_on_drop: false }` [INFO] [stdout] f8341e290a4e6a5507e65f320b0dedbf858b7929f09c5859d565d4893aa64c04 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/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=warn" "-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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-04-10" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 3e6e34e8c38264d09093963c18eefe3e595ef8c0336cf76cebfe464f1a298873 [INFO] running `Command { std: "docker" "start" "-a" "3e6e34e8c38264d09093963c18eefe3e595ef8c0336cf76cebfe464f1a298873", kill_on_drop: false }` [INFO] [stderr] Compiling fxhash v0.2.1 [INFO] [stderr] Compiling counters v0.5.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/counters.rs:86:60 [INFO] [stdout] | [INFO] [stdout] 86 | pub fn print(&self, mut filter: F, to: &mut io::Write) -> io::Result<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 86 - pub fn print(&self, mut filter: F, to: &mut io::Write) -> io::Result<()> { [INFO] [stdout] 86 + pub fn print(&self, mut filter: F, to: &mut dyn io::Write) -> io::Result<()> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/table.rs:65:34 [INFO] [stdout] | [INFO] [stdout] 65 | pub fn print(&self, to: &mut io::Write) -> io::Result<()> { [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 65 - pub fn print(&self, to: &mut io::Write) -> io::Result<()> { [INFO] [stdout] 65 + pub fn print(&self, to: &mut dyn io::Write) -> io::Result<()> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/noop.rs:17:69 [INFO] [stdout] | [INFO] [stdout] 17 | #[inline] pub fn print(&self, _filter: F, _out: &mut io::Write) -> io::Result<()> { Ok(()) } [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 17 - #[inline] pub fn print(&self, _filter: F, _out: &mut io::Write) -> io::Result<()> { Ok(()) } [INFO] [stdout] 17 + #[inline] pub fn print(&self, _filter: F, _out: &mut dyn io::Write) -> io::Result<()> { Ok(()) } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/noop.rs:27:45 [INFO] [stdout] | [INFO] [stdout] 27 | #[inline] pub fn print(&self, _to: &mut io::Write) -> io::Result<()> { Ok(()) } [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 27 - #[inline] pub fn print(&self, _to: &mut io::Write) -> io::Result<()> { Ok(()) } [INFO] [stdout] 27 + #[inline] pub fn print(&self, _to: &mut dyn io::Write) -> io::Result<()> { Ok(()) } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 4 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 0.95s [INFO] running `Command { std: "docker" "inspect" "3e6e34e8c38264d09093963c18eefe3e595ef8c0336cf76cebfe464f1a298873", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3e6e34e8c38264d09093963c18eefe3e595ef8c0336cf76cebfe464f1a298873", kill_on_drop: false }` [INFO] [stdout] 3e6e34e8c38264d09093963c18eefe3e595ef8c0336cf76cebfe464f1a298873 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/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=warn" "-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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-04-10" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 813a7d46c753282607969756ffe310e469897cf666e46c58ba1aba6ad89b56e7 [INFO] running `Command { std: "docker" "start" "-a" "813a7d46c753282607969756ffe310e469897cf666e46c58ba1aba6ad89b56e7", kill_on_drop: false }` [INFO] [stderr] Compiling counters v0.5.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/counters.rs:86:60 [INFO] [stdout] | [INFO] [stdout] 86 | pub fn print(&self, mut filter: F, to: &mut io::Write) -> io::Result<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 86 - pub fn print(&self, mut filter: F, to: &mut io::Write) -> io::Result<()> { [INFO] [stdout] 86 + pub fn print(&self, mut filter: F, to: &mut dyn io::Write) -> io::Result<()> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/table.rs:65:34 [INFO] [stdout] | [INFO] [stdout] 65 | pub fn print(&self, to: &mut io::Write) -> io::Result<()> { [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 65 - pub fn print(&self, to: &mut io::Write) -> io::Result<()> { [INFO] [stdout] 65 + pub fn print(&self, to: &mut dyn io::Write) -> io::Result<()> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/noop.rs:17:69 [INFO] [stdout] | [INFO] [stdout] 17 | #[inline] pub fn print(&self, _filter: F, _out: &mut io::Write) -> io::Result<()> { Ok(()) } [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 17 - #[inline] pub fn print(&self, _filter: F, _out: &mut io::Write) -> io::Result<()> { Ok(()) } [INFO] [stdout] 17 + #[inline] pub fn print(&self, _filter: F, _out: &mut dyn io::Write) -> io::Result<()> { Ok(()) } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/noop.rs:27:45 [INFO] [stdout] | [INFO] [stdout] 27 | #[inline] pub fn print(&self, _to: &mut io::Write) -> io::Result<()> { Ok(()) } [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 27 - #[inline] pub fn print(&self, _to: &mut io::Write) -> io::Result<()> { Ok(()) } [INFO] [stdout] 27 + #[inline] pub fn print(&self, _to: &mut dyn io::Write) -> io::Result<()> { Ok(()) } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 4 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/counters.rs:86:60 [INFO] [stdout] | [INFO] [stdout] 86 | pub fn print(&self, mut filter: F, to: &mut io::Write) -> io::Result<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 86 - pub fn print(&self, mut filter: F, to: &mut io::Write) -> io::Result<()> { [INFO] [stdout] 86 + pub fn print(&self, mut filter: F, to: &mut dyn io::Write) -> io::Result<()> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/table.rs:65:34 [INFO] [stdout] | [INFO] [stdout] 65 | pub fn print(&self, to: &mut io::Write) -> io::Result<()> { [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 65 - pub fn print(&self, to: &mut io::Write) -> io::Result<()> { [INFO] [stdout] 65 + pub fn print(&self, to: &mut dyn io::Write) -> io::Result<()> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/noop.rs:17:69 [INFO] [stdout] | [INFO] [stdout] 17 | #[inline] pub fn print(&self, _filter: F, _out: &mut io::Write) -> io::Result<()> { Ok(()) } [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 17 - #[inline] pub fn print(&self, _filter: F, _out: &mut io::Write) -> io::Result<()> { Ok(()) } [INFO] [stdout] 17 + #[inline] pub fn print(&self, _filter: F, _out: &mut dyn io::Write) -> io::Result<()> { Ok(()) } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/noop.rs:27:45 [INFO] [stdout] | [INFO] [stdout] 27 | #[inline] pub fn print(&self, _to: &mut io::Write) -> io::Result<()> { Ok(()) } [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 [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 27 - #[inline] pub fn print(&self, _to: &mut io::Write) -> io::Result<()> { Ok(()) } [INFO] [stdout] 27 + #[inline] pub fn print(&self, _to: &mut dyn io::Write) -> io::Result<()> { Ok(()) } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 4 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.74s [INFO] [stderr] Executable unittests src/lib.rs (/opt/rustwide/target/debug/deps/counters-dde5371a0bdbd7e2) [INFO] running `Command { std: "docker" "inspect" "813a7d46c753282607969756ffe310e469897cf666e46c58ba1aba6ad89b56e7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "813a7d46c753282607969756ffe310e469897cf666e46c58ba1aba6ad89b56e7", kill_on_drop: false }` [INFO] [stdout] 813a7d46c753282607969756ffe310e469897cf666e46c58ba1aba6ad89b56e7 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/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=warn" "-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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-04-10" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 2d7eae7eee84e16f0d42d0add4fbcdc87cb7d822c55c72fbbe44c33cb2343ae9 [INFO] running `Command { std: "docker" "start" "-a" "2d7eae7eee84e16f0d42d0add4fbcdc87cb7d822c55c72fbbe44c33cb2343ae9", kill_on_drop: false }` [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/counters.rs:86:60 [INFO] [stderr] | [INFO] [stderr] 86 | pub fn print(&self, mut filter: F, to: &mut io::Write) -> io::Result<()> { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [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 [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 86 - pub fn print(&self, mut filter: F, to: &mut io::Write) -> io::Result<()> { [INFO] [stderr] 86 + pub fn print(&self, mut filter: F, to: &mut dyn io::Write) -> io::Result<()> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/table.rs:65:34 [INFO] [stderr] | [INFO] [stderr] 65 | pub fn print(&self, to: &mut io::Write) -> io::Result<()> { [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 [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 65 - pub fn print(&self, to: &mut io::Write) -> io::Result<()> { [INFO] [stderr] 65 + pub fn print(&self, to: &mut dyn io::Write) -> io::Result<()> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] [INFO] [stderr] --> src/noop.rs:17:69 [INFO] [stdout] running 2 tests [INFO] [stderr] | [INFO] [stdout] test noop ... ok [INFO] [stderr] 17 | #[inline] pub fn print(&self, _filter: F, _out: &mut io::Write) -> io::Result<()> { Ok(()) } [INFO] [stdout] test it_works ... ok [INFO] [stderr] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 17 - #[inline] pub fn print(&self, _filter: F, _out: &mut io::Write) -> io::Result<()> { Ok(()) } [INFO] [stderr] 17 + #[inline] pub fn print(&self, _filter: F, _out: &mut dyn io::Write) -> io::Result<()> { Ok(()) } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/noop.rs:27:45 [INFO] [stderr] | [INFO] [stderr] 27 | #[inline] pub fn print(&self, _to: &mut io::Write) -> io::Result<()> { Ok(()) } [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 [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 27 - #[inline] pub fn print(&self, _to: &mut io::Write) -> io::Result<()> { Ok(()) } [INFO] [stderr] 27 + #[inline] pub fn print(&self, _to: &mut dyn io::Write) -> io::Result<()> { Ok(()) } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: `counters` (lib) generated 4 warnings [INFO] [stderr] warning: `counters` (lib test) generated 4 warnings (4 duplicates) [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.01s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/counters-dde5371a0bdbd7e2) [INFO] [stderr] Doc-tests counters [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test src/lib.rs - (line 38) ... ok [INFO] [stdout] test src/table.rs - table::Table (line 10) ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.41s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "2d7eae7eee84e16f0d42d0add4fbcdc87cb7d822c55c72fbbe44c33cb2343ae9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2d7eae7eee84e16f0d42d0add4fbcdc87cb7d822c55c72fbbe44c33cb2343ae9", kill_on_drop: false }` [INFO] [stdout] 2d7eae7eee84e16f0d42d0add4fbcdc87cb7d822c55c72fbbe44c33cb2343ae9