[INFO] fetching crate crate-compile-test 0.2.0...
[INFO] checking crate-compile-test-0.2.0 against master#c2f2db79ca3024f68d22b45aa22b570775c2c4ad for pr-124157
[INFO] extracting crate crate-compile-test 0.2.0 into /workspace/builds/worker-5-tc1/source
[INFO] validating manifest of crates.io crate crate-compile-test 0.2.0 on toolchain c2f2db79ca3024f68d22b45aa22b570775c2c4ad
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate crate-compile-test 0.2.0
[INFO] finished tweaking crates.io crate crate-compile-test 0.2.0
[INFO] tweaked toml for crates.io crate crate-compile-test 0.2.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" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 59 packages to latest compatible versions
[INFO] [stderr]       Adding addr2line v0.21.0 (latest: v0.22.0)
[INFO] [stderr]       Adding ansi_term v0.11.0 (latest: v0.12.1)
[INFO] [stderr]       Adding colored v1.9.4 (latest: v2.1.0)
[INFO] [stderr]       Adding gimli v0.28.1 (latest: v0.29.0)
[INFO] [stderr]       Adding linux-raw-sys v0.4.13 (latest: v0.6.4)
[INFO] [stderr]       Adding object v0.32.2 (latest: v0.35.0)
[INFO] [stderr]       Adding pretty_assertions v0.5.1 (latest: v1.4.0)
[INFO] [stderr]       Adding syn v1.0.109 (latest: v2.0.60)
[INFO] [stderr]       Adding synstructure v0.12.6 (latest: v0.13.1)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded pretty_assertions v0.5.1
[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:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 0d353eb8fe0935d81026d465640549b4f54d85c884da14c244762931dc045a07
[INFO] running `Command { std: "docker" "start" "-a" "0d353eb8fe0935d81026d465640549b4f54d85c884da14c244762931dc045a07", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0d353eb8fe0935d81026d465640549b4f54d85c884da14c244762931dc045a07", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0d353eb8fe0935d81026d465640549b4f54d85c884da14c244762931dc045a07", kill_on_drop: false }`
[INFO] [stdout] 0d353eb8fe0935d81026d465640549b4f54d85c884da14c244762931dc045a07
[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:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] cc0e23ec081277ae8b632c4fa2197442cb41f478cddd6ec9001ab01775921d64
[INFO] running `Command { std: "docker" "start" "-a" "cc0e23ec081277ae8b632c4fa2197442cb41f478cddd6ec9001ab01775921d64", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling unicode-xid v0.2.4
[INFO] [stderr]     Checking object v0.32.2
[INFO] [stderr]     Checking regex-automata v0.4.6
[INFO] [stderr]     Checking ansi_term v0.11.0
[INFO] [stderr]     Checking difference v2.0.0
[INFO] [stderr]    Compiling syn v2.0.60
[INFO] [stderr]     Checking is-terminal v0.4.12
[INFO] [stderr]     Checking colored v1.9.4
[INFO] [stderr]     Checking pretty_assertions v0.5.1
[INFO] [stderr]     Checking regex v1.10.4
[INFO] [stderr]    Compiling serde_derive v1.0.200
[INFO] [stderr]    Compiling synstructure v0.12.6
[INFO] [stderr]    Compiling failure_derive v0.1.8
[INFO] [stderr]     Checking backtrace v0.3.71
[INFO] [stderr]     Checking failure v0.1.8
[INFO] [stderr]     Checking crate-compile-test v0.2.0 (/opt/rustwide/workdir)
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/config.rs:28:28
[INFO] [stdout]    |
[INFO] [stdout] 28 |     pub crates_filter: Box<Fn(&Path) -> bool>,
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:1:9
[INFO] [stdout]    |
[INFO] [stdout] 1  | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[deny(bare_trait_objects)]` implied by `#[deny(warnings)]`
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 28 |     pub crates_filter: Box<dyn Fn(&Path) -> bool>,
[INFO] [stdout]    |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/config.rs:29:35
[INFO] [stdout]    |
[INFO] [stdout] 29 |     pub additional_steps: Vec<Box<TestStepFactory>>,
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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] 29 |     pub additional_steps: Vec<Box<dyn TestStepFactory>>,
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/plan.rs:11:20
[INFO] [stdout]    |
[INFO] [stdout] 11 |     steps: Vec<Box<TestStepFactory>>,
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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] 11 |     steps: Vec<Box<dyn TestStepFactory>>,
[INFO] [stdout]    |                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/runner.rs:13:27
[INFO] [stdout]    |
[INFO] [stdout] 13 |     output: Mutex<&'a mut Write>,
[INFO] [stdout]    |                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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] 13 |     output: Mutex<&'a mut dyn Write>,
[INFO] [stdout]    |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/runner.rs:22:17
[INFO] [stdout]    |
[INFO] [stdout] 22 |     config: Box<Fn() -> Config>,
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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 |     config: Box<dyn Fn() -> Config>,
[INFO] [stdout]    |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/config.rs:28:28
[INFO] [stdout]    |
[INFO] [stdout] 28 |     pub crates_filter: Box<Fn(&Path) -> bool>,
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:1:9
[INFO] [stdout]    |
[INFO] [stdout] 1  | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[deny(bare_trait_objects)]` implied by `#[deny(warnings)]`
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 28 |     pub crates_filter: Box<dyn Fn(&Path) -> bool>,
[INFO] [stdout]    |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/config.rs:29:35
[INFO] [stdout]    |
[INFO] [stdout] 29 |     pub additional_steps: Vec<Box<TestStepFactory>>,
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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] 29 |     pub additional_steps: Vec<Box<dyn TestStepFactory>>,
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/plan.rs:11:20
[INFO] [stdout]    |
[INFO] [stdout] 11 |     steps: Vec<Box<TestStepFactory>>,
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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] 11 |     steps: Vec<Box<dyn TestStepFactory>>,
[INFO] [stdout]    |                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/runner.rs:13:27
[INFO] [stdout]    |
[INFO] [stdout] 13 |     output: Mutex<&'a mut Write>,
[INFO] [stdout]    |                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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] 13 |     output: Mutex<&'a mut dyn Write>,
[INFO] [stdout]    |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/runner.rs:22:17
[INFO] [stdout]    |
[INFO] [stdout] 22 |     config: Box<Fn() -> Config>,
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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 |     config: Box<dyn Fn() -> Config>,
[INFO] [stdout]    |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/steps/mod.rs:7:76
[INFO] [stdout]   |
[INFO] [stdout] 7 |     fn initialize(&self, config: &Config, crate_path: &Path) -> Result<Box<TestStep>>;
[INFO] [stdout]   |                                                                            ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) 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] 7 |     fn initialize(&self, config: &Config, crate_path: &Path) -> Result<Box<dyn TestStep>>;
[INFO] [stdout]   |                                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/steps/mod.rs:7:76
[INFO] [stdout]   |
[INFO] [stdout] 7 |     fn initialize(&self, config: &Config, crate_path: &Path) -> Result<Box<TestStep>>;
[INFO] [stdout]   |                                                                            ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) 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] 7 |     fn initialize(&self, config: &Config, crate_path: &Path) -> Result<Box<dyn TestStep>>;
[INFO] [stdout]   |                                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/runner.rs:26:32
[INFO] [stdout]    |
[INFO] [stdout] 26 |     pub fn new(output: &'a mut Write) -> Self {
[INFO] [stdout]    |                                ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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] 26 |     pub fn new(output: &'a mut dyn Write) -> Self {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/runner.rs:26:32
[INFO] [stdout]    |
[INFO] [stdout] 26 |     pub fn new(output: &'a mut Write) -> Self {
[INFO] [stdout]    |                                ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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] 26 |     pub fn new(output: &'a mut dyn Write) -> Self {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/steps/build.rs:27:77
[INFO] [stdout]    |
[INFO] [stdout] 27 |     fn initialize(&self, _config: &Config, crate_path: &Path) -> Result<Box<TestStep>> {
[INFO] [stdout]    |                                                                             ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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] 27 |     fn initialize(&self, _config: &Config, crate_path: &Path) -> Result<Box<dyn TestStep>> {
[INFO] [stdout]    |                                                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/steps/build.rs:27:77
[INFO] [stdout]    |
[INFO] [stdout] 27 |     fn initialize(&self, _config: &Config, crate_path: &Path) -> Result<Box<TestStep>> {
[INFO] [stdout]    |                                                                             ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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] 27 |     fn initialize(&self, _config: &Config, crate_path: &Path) -> Result<Box<dyn TestStep>> {
[INFO] [stdout]    |                                                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/steps/check_errors.rs:213:77
[INFO] [stdout]     |
[INFO] [stdout] 213 |     fn initialize(&self, _config: &Config, crate_path: &Path) -> Result<Box<TestStep>> {
[INFO] [stdout]     |                                                                             ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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] 213 |     fn initialize(&self, _config: &Config, crate_path: &Path) -> Result<Box<dyn TestStep>> {
[INFO] [stdout]     |                                                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/steps/check_errors.rs:213:77
[INFO] [stdout]     |
[INFO] [stdout] 213 |     fn initialize(&self, _config: &Config, crate_path: &Path) -> Result<Box<TestStep>> {
[INFO] [stdout]     |                                                                             ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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] 213 |     fn initialize(&self, _config: &Config, crate_path: &Path) -> Result<Box<dyn TestStep>> {
[INFO] [stdout]     |                                                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: use of deprecated method `failure::core::str::<impl str>::trim_right`: superseded by `trim_end`
[INFO] [stdout]   --> src/formatting.rs:30:50
[INFO] [stdout]    |
[INFO] [stdout] 30 |         trim_lines(prefix_each_line(body, "  ")).trim_right(),
[INFO] [stdout]    |                                                  ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[deny(deprecated)]` implied by `#[deny(warnings)]`
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]    |
[INFO] [stdout] 30 |         trim_lines(prefix_each_line(body, "  ")).trim_end(),
[INFO] [stdout]    |                                                  ~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: use of deprecated method `failure::core::str::<impl str>::trim_right`: superseded by `trim_end`
[INFO] [stdout]   --> src/formatting.rs:30:50
[INFO] [stdout]    |
[INFO] [stdout] 30 |         trim_lines(prefix_each_line(body, "  ")).trim_right(),
[INFO] [stdout]    |                                                  ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[deny(deprecated)]` implied by `#[deny(warnings)]`
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]    |
[INFO] [stdout] 30 |         trim_lines(prefix_each_line(body, "  ")).trim_end(),
[INFO] [stdout]    |                                                  ~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: use of deprecated method `failure::core::str::<impl str>::trim_right`: superseded by `trim_end`
[INFO] [stdout]   --> src/formatting.rs:51:26
[INFO] [stdout]    |
[INFO] [stdout] 51 |         .map(|line| line.trim_right())
[INFO] [stdout]    |                          ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]    |
[INFO] [stdout] 51 |         .map(|line| line.trim_end())
[INFO] [stdout]    |                          ~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: use of deprecated method `failure::core::str::<impl str>::trim_right`: superseded by `trim_end`
[INFO] [stdout]   --> src/formatting.rs:51:26
[INFO] [stdout]    |
[INFO] [stdout] 51 |         .map(|line| line.trim_right())
[INFO] [stdout]    |                          ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]    |
[INFO] [stdout] 51 |         .map(|line| line.trim_end())
[INFO] [stdout]    |                          ~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/plan.rs:26:32
[INFO] [stdout]    |
[INFO] [stdout] 26 |         let mut steps: Vec<Box<TestStepFactory>> = match config.mode {
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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] 26 |         let mut steps: Vec<Box<dyn TestStepFactory>> = match config.mode {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/plan.rs:26:32
[INFO] [stdout]    |
[INFO] [stdout] 26 |         let mut steps: Vec<Box<TestStepFactory>> = match config.mode {
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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] 26 |         let mut steps: Vec<Box<dyn TestStepFactory>> = match config.mode {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> src/error.rs:12:17
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(Debug, Fail)]
[INFO] [stdout]    |                 ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_TestingError`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: `#[deny(non_local_definitions)]` implied by `#[deny(warnings)]`
[INFO] [stdout]    = note: this error originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> src/error.rs:12:17
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(Debug, Fail)]
[INFO] [stdout]    |                 ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_TestingError`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: `#[deny(non_local_definitions)]` implied by `#[deny(warnings)]`
[INFO] [stdout]    = note: this error originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 13 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 13 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `crate-compile-test` (lib) due to 14 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `crate-compile-test` (lib test) due to 14 previous errors
[INFO] running `Command { std: "docker" "inspect" "cc0e23ec081277ae8b632c4fa2197442cb41f478cddd6ec9001ab01775921d64", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cc0e23ec081277ae8b632c4fa2197442cb41f478cddd6ec9001ab01775921d64", kill_on_drop: false }`
[INFO] [stdout] cc0e23ec081277ae8b632c4fa2197442cb41f478cddd6ec9001ab01775921d64
[INFO] checking crate-compile-test-0.2.0 against try#9c7b5f5b6b8ec32bbbcf9f07fc0e5208da6c5f88 for pr-124157
[INFO] extracting crate crate-compile-test 0.2.0 into /workspace/builds/worker-5-tc2/source
[INFO] validating manifest of crates.io crate crate-compile-test 0.2.0 on toolchain 9c7b5f5b6b8ec32bbbcf9f07fc0e5208da6c5f88
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+9c7b5f5b6b8ec32bbbcf9f07fc0e5208da6c5f88" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate crate-compile-test 0.2.0
[INFO] finished tweaking crates.io crate crate-compile-test 0.2.0
[INFO] tweaked toml for crates.io crate crate-compile-test 0.2.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" "+9c7b5f5b6b8ec32bbbcf9f07fc0e5208da6c5f88" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 59 packages to latest compatible versions
[INFO] [stderr]       Adding addr2line v0.21.0 (latest: v0.22.0)
[INFO] [stderr]       Adding ansi_term v0.11.0 (latest: v0.12.1)
[INFO] [stderr]       Adding colored v1.9.4 (latest: v2.1.0)
[INFO] [stderr]       Adding gimli v0.28.1 (latest: v0.29.0)
[INFO] [stderr]       Adding linux-raw-sys v0.4.13 (latest: v0.6.4)
[INFO] [stderr]       Adding object v0.32.2 (latest: v0.35.0)
[INFO] [stderr]       Adding pretty_assertions v0.5.1 (latest: v1.4.0)
[INFO] [stderr]       Adding syn v1.0.109 (latest: v2.0.60)
[INFO] [stderr]       Adding synstructure v0.12.6 (latest: v0.13.1)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+9c7b5f5b6b8ec32bbbcf9f07fc0e5208da6c5f88" "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:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+9c7b5f5b6b8ec32bbbcf9f07fc0e5208da6c5f88" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] bf2982c34eff0ba9b234b12d5831f83b921920629911b82906404cbea21a0185
[INFO] running `Command { std: "docker" "start" "-a" "bf2982c34eff0ba9b234b12d5831f83b921920629911b82906404cbea21a0185", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "bf2982c34eff0ba9b234b12d5831f83b921920629911b82906404cbea21a0185", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bf2982c34eff0ba9b234b12d5831f83b921920629911b82906404cbea21a0185", kill_on_drop: false }`
[INFO] [stdout] bf2982c34eff0ba9b234b12d5831f83b921920629911b82906404cbea21a0185
[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:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+9c7b5f5b6b8ec32bbbcf9f07fc0e5208da6c5f88" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 2a261ce5035518851a7ba36c0d7901a416499b780f5b3fd8e2700799b1006884
[INFO] running `Command { std: "docker" "start" "-a" "2a261ce5035518851a7ba36c0d7901a416499b780f5b3fd8e2700799b1006884", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling unicode-xid v0.2.4
[INFO] [stderr]     Checking object v0.32.2
[INFO] [stderr]     Checking regex-automata v0.4.6
[INFO] [stderr]    Compiling syn v2.0.60
[INFO] [stderr]     Checking difference v2.0.0
[INFO] [stderr]     Checking ansi_term v0.11.0
[INFO] [stderr]     Checking is-terminal v0.4.12
[INFO] [stderr]     Checking colored v1.9.4
[INFO] [stderr]     Checking pretty_assertions v0.5.1
[INFO] [stderr]     Checking regex v1.10.4
[INFO] [stderr]    Compiling serde_derive v1.0.200
[INFO] [stderr]    Compiling synstructure v0.12.6
[INFO] [stderr]    Compiling failure_derive v0.1.8
[INFO] [stderr]     Checking backtrace v0.3.71
[INFO] [stderr]     Checking failure v0.1.8
[INFO] [stderr]     Checking crate-compile-test v0.2.0 (/opt/rustwide/workdir)
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/config.rs:28:28
[INFO] [stdout]    |
[INFO] [stdout] 28 |     pub crates_filter: Box<Fn(&Path) -> bool>,
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:1:9
[INFO] [stdout]    |
[INFO] [stdout] 1  | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[deny(bare_trait_objects)]` implied by `#[deny(warnings)]`
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 28 |     pub crates_filter: Box<dyn Fn(&Path) -> bool>,
[INFO] [stdout]    |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/config.rs:29:35
[INFO] [stdout]    |
[INFO] [stdout] 29 |     pub additional_steps: Vec<Box<TestStepFactory>>,
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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] 29 |     pub additional_steps: Vec<Box<dyn TestStepFactory>>,
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/plan.rs:11:20
[INFO] [stdout]    |
[INFO] [stdout] 11 |     steps: Vec<Box<TestStepFactory>>,
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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] 11 |     steps: Vec<Box<dyn TestStepFactory>>,
[INFO] [stdout]    |                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/runner.rs:13:27
[INFO] [stdout]    |
[INFO] [stdout] 13 |     output: Mutex<&'a mut Write>,
[INFO] [stdout]    |                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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] 13 |     output: Mutex<&'a mut dyn Write>,
[INFO] [stdout]    |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/runner.rs:22:17
[INFO] [stdout]    |
[INFO] [stdout] 22 |     config: Box<Fn() -> Config>,
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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 |     config: Box<dyn Fn() -> Config>,
[INFO] [stdout]    |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/config.rs:28:28
[INFO] [stdout]    |
[INFO] [stdout] 28 |     pub crates_filter: Box<Fn(&Path) -> bool>,
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:1:9
[INFO] [stdout]    |
[INFO] [stdout] 1  | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[deny(bare_trait_objects)]` implied by `#[deny(warnings)]`
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 28 |     pub crates_filter: Box<dyn Fn(&Path) -> bool>,
[INFO] [stdout]    |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/config.rs:29:35
[INFO] [stdout]    |
[INFO] [stdout] 29 |     pub additional_steps: Vec<Box<TestStepFactory>>,
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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] 29 |     pub additional_steps: Vec<Box<dyn TestStepFactory>>,
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/plan.rs:11:20
[INFO] [stdout]    |
[INFO] [stdout] 11 |     steps: Vec<Box<TestStepFactory>>,
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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] 11 |     steps: Vec<Box<dyn TestStepFactory>>,
[INFO] [stdout]    |                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/runner.rs:13:27
[INFO] [stdout]    |
[INFO] [stdout] 13 |     output: Mutex<&'a mut Write>,
[INFO] [stdout]    |                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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] 13 |     output: Mutex<&'a mut dyn Write>,
[INFO] [stdout]    |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/runner.rs:22:17
[INFO] [stdout]    |
[INFO] [stdout] 22 |     config: Box<Fn() -> Config>,
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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 |     config: Box<dyn Fn() -> Config>,
[INFO] [stdout]    |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/steps/mod.rs:7:76
[INFO] [stdout]   |
[INFO] [stdout] 7 |     fn initialize(&self, config: &Config, crate_path: &Path) -> Result<Box<TestStep>>;
[INFO] [stdout]   |                                                                            ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) 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] 7 |     fn initialize(&self, config: &Config, crate_path: &Path) -> Result<Box<dyn TestStep>>;
[INFO] [stdout]   |                                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/steps/mod.rs:7:76
[INFO] [stdout]   |
[INFO] [stdout] 7 |     fn initialize(&self, config: &Config, crate_path: &Path) -> Result<Box<TestStep>>;
[INFO] [stdout]   |                                                                            ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) 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] 7 |     fn initialize(&self, config: &Config, crate_path: &Path) -> Result<Box<dyn TestStep>>;
[INFO] [stdout]   |                                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/runner.rs:26:32
[INFO] [stdout]    |
[INFO] [stdout] 26 |     pub fn new(output: &'a mut Write) -> Self {
[INFO] [stdout]    |                                ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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] 26 |     pub fn new(output: &'a mut dyn Write) -> Self {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/runner.rs:26:32
[INFO] [stdout]    |
[INFO] [stdout] 26 |     pub fn new(output: &'a mut Write) -> Self {
[INFO] [stdout]    |                                ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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] 26 |     pub fn new(output: &'a mut dyn Write) -> Self {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/steps/build.rs:27:77
[INFO] [stdout]    |
[INFO] [stdout] 27 |     fn initialize(&self, _config: &Config, crate_path: &Path) -> Result<Box<TestStep>> {
[INFO] [stdout]    |                                                                             ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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] 27 |     fn initialize(&self, _config: &Config, crate_path: &Path) -> Result<Box<dyn TestStep>> {
[INFO] [stdout]    |                                                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/steps/build.rs:27:77
[INFO] [stdout]    |
[INFO] [stdout] 27 |     fn initialize(&self, _config: &Config, crate_path: &Path) -> Result<Box<TestStep>> {
[INFO] [stdout]    |                                                                             ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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] 27 |     fn initialize(&self, _config: &Config, crate_path: &Path) -> Result<Box<dyn TestStep>> {
[INFO] [stdout]    |                                                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/steps/check_errors.rs:213:77
[INFO] [stdout]     |
[INFO] [stdout] 213 |     fn initialize(&self, _config: &Config, crate_path: &Path) -> Result<Box<TestStep>> {
[INFO] [stdout]     |                                                                             ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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] 213 |     fn initialize(&self, _config: &Config, crate_path: &Path) -> Result<Box<dyn TestStep>> {
[INFO] [stdout]     |                                                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/steps/check_errors.rs:213:77
[INFO] [stdout]     |
[INFO] [stdout] 213 |     fn initialize(&self, _config: &Config, crate_path: &Path) -> Result<Box<TestStep>> {
[INFO] [stdout]     |                                                                             ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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] 213 |     fn initialize(&self, _config: &Config, crate_path: &Path) -> Result<Box<dyn TestStep>> {
[INFO] [stdout]     |                                                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: use of deprecated method `failure::core::str::<impl str>::trim_right`: superseded by `trim_end`
[INFO] [stdout]   --> src/formatting.rs:30:50
[INFO] [stdout]    |
[INFO] [stdout] 30 |         trim_lines(prefix_each_line(body, "  ")).trim_right(),
[INFO] [stdout]    |                                                  ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[deny(deprecated)]` implied by `#[deny(warnings)]`
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]    |
[INFO] [stdout] 30 |         trim_lines(prefix_each_line(body, "  ")).trim_end(),
[INFO] [stdout]    |                                                  ~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: use of deprecated method `failure::core::str::<impl str>::trim_right`: superseded by `trim_end`
[INFO] [stdout]   --> src/formatting.rs:30:50
[INFO] [stdout]    |
[INFO] [stdout] 30 |         trim_lines(prefix_each_line(body, "  ")).trim_right(),
[INFO] [stdout]    |                                                  ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[deny(deprecated)]` implied by `#[deny(warnings)]`
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]    |
[INFO] [stdout] 30 |         trim_lines(prefix_each_line(body, "  ")).trim_end(),
[INFO] [stdout]    |                                                  ~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: use of deprecated method `failure::core::str::<impl str>::trim_right`: superseded by `trim_end`
[INFO] [stdout]   --> src/formatting.rs:51:26
[INFO] [stdout]    |
[INFO] [stdout] 51 |         .map(|line| line.trim_right())
[INFO] [stdout]    |                          ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]    |
[INFO] [stdout] 51 |         .map(|line| line.trim_end())
[INFO] [stdout]    |                          ~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: use of deprecated method `failure::core::str::<impl str>::trim_right`: superseded by `trim_end`
[INFO] [stdout]   --> src/formatting.rs:51:26
[INFO] [stdout]    |
[INFO] [stdout] 51 |         .map(|line| line.trim_right())
[INFO] [stdout]    |                          ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]    |
[INFO] [stdout] 51 |         .map(|line| line.trim_end())
[INFO] [stdout]    |                          ~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/plan.rs:26:32
[INFO] [stdout]    |
[INFO] [stdout] 26 |         let mut steps: Vec<Box<TestStepFactory>> = match config.mode {
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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] 26 |         let mut steps: Vec<Box<dyn TestStepFactory>> = match config.mode {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/plan.rs:26:32
[INFO] [stdout]    |
[INFO] [stdout] 26 |         let mut steps: Vec<Box<TestStepFactory>> = match config.mode {
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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] 26 |         let mut steps: Vec<Box<dyn TestStepFactory>> = match config.mode {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> src/error.rs:12:17
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(Debug, Fail)]
[INFO] [stdout]    |                 ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_TestingError`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: `#[deny(non_local_definitions)]` implied by `#[deny(warnings)]`
[INFO] [stdout]    = note: this error originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> src/error.rs:12:17
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(Debug, Fail)]
[INFO] [stdout]    |                 ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_TestingError`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: `#[deny(non_local_definitions)]` implied by `#[deny(warnings)]`
[INFO] [stdout]    = note: this error originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 13 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 13 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `crate-compile-test` (lib) due to 14 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `crate-compile-test` (lib test) due to 14 previous errors
[INFO] running `Command { std: "docker" "inspect" "2a261ce5035518851a7ba36c0d7901a416499b780f5b3fd8e2700799b1006884", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2a261ce5035518851a7ba36c0d7901a416499b780f5b3fd8e2700799b1006884", kill_on_drop: false }`
[INFO] [stdout] 2a261ce5035518851a7ba36c0d7901a416499b780f5b3fd8e2700799b1006884
