[INFO] fetching crate assert_cli 0.6.3...
[INFO] checking assert_cli-0.6.3 against master#b3bd7058c139e71bae0862ef8f8ac936208873e9 for pr-123752
[INFO] extracting crate assert_cli 0.6.3 into /workspace/builds/worker-0-tc1/source
[INFO] validating manifest of crates.io crate assert_cli 0.6.3 on toolchain b3bd7058c139e71bae0862ef8f8ac936208873e9
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b3bd7058c139e71bae0862ef8f8ac936208873e9" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate assert_cli 0.6.3
[INFO] finished tweaking crates.io crate assert_cli 0.6.3
[INFO] tweaked toml for crates.io crate assert_cli 0.6.3 written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b3bd7058c139e71bae0862ef8f8ac936208873e9" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 46 packages
[INFO] [stderr]       Adding colored v1.9.4 (latest: v2.1.0)
[INFO] [stderr]       Adding object v0.32.2 (latest: v0.35.0)
[INFO] [stderr]       Adding syn v1.0.109 (latest: v2.0.58)
[INFO] [stderr]       Adding synstructure v0.12.6 (latest: v0.13.1)
[INFO] [stderr]       Adding which v2.0.1 (latest: v6.0.1)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b3bd7058c139e71bae0862ef8f8ac936208873e9" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded environment v0.1.1
[INFO] [stderr]   Downloaded which v2.0.1
[INFO] [stderr]   Downloaded colored v1.9.4
[INFO] [stderr]   Downloaded docmatic v0.1.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b3bd7058c139e71bae0862ef8f8ac936208873e9" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 92988bc35414becdd6a06c6dca72b8823f29d02565a15d11d029a6491be87104
[INFO] running `Command { std: "docker" "start" "-a" "92988bc35414becdd6a06c6dca72b8823f29d02565a15d11d029a6491be87104", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "92988bc35414becdd6a06c6dca72b8823f29d02565a15d11d029a6491be87104", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "92988bc35414becdd6a06c6dca72b8823f29d02565a15d11d029a6491be87104", kill_on_drop: false }`
[INFO] [stdout] 92988bc35414becdd6a06c6dca72b8823f29d02565a15d11d029a6491be87104
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b3bd7058c139e71bae0862ef8f8ac936208873e9" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] bfd369cc86eac0650488ad2ac38c29c199b7ef940cd1c2781599be3411589281
[INFO] running `Command { std: "docker" "start" "-a" "bfd369cc86eac0650488ad2ac38c29c199b7ef940cd1c2781599be3411589281", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling unicode-xid v0.2.4
[INFO] [stderr]     Checking memchr v2.7.2
[INFO] [stderr]    Compiling backtrace v0.3.71
[INFO] [stderr]    Compiling failure_derive v0.1.8
[INFO] [stderr]     Checking miniz_oxide v0.7.2
[INFO] [stderr]    Compiling serde v1.0.197
[INFO] [stderr]     Checking is-terminal v0.4.12
[INFO] [stderr]     Checking colored v1.9.4
[INFO] [stderr]     Checking difference v2.0.0
[INFO] [stderr]     Checking environment v0.1.1
[INFO] [stderr]     Checking object v0.32.2
[INFO] [stderr]    Compiling synstructure v0.12.6
[INFO] [stderr]     Checking serde_json v1.0.115
[INFO] [stderr]     Checking failure v0.1.8
[INFO] [stderr]     Checking which v2.0.1
[INFO] [stderr]     Checking assert_cli v0.6.3 (/opt/rustwide/workdir)
[INFO] [stdout] warning: the item `failure` is imported redundantly
[INFO] [stdout]    --> src/errors.rs:5:5
[INFO] [stdout]     |
[INFO] [stdout] 5   | use failure;
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:124:1
[INFO] [stdout]     |
[INFO] [stdout] 124 | extern crate failure;
[INFO] [stdout]     | --------------------- the item `failure` is already imported here
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `serde_json` is imported redundantly
[INFO] [stdout]    --> src/macros.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout] 1   | use serde_json;
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:127:1
[INFO] [stdout]     |
[INFO] [stdout] 127 | extern crate serde_json;
[INFO] [stdout]     | ------------------------ the item `serde_json` is already imported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Vec` is imported redundantly
[INFO] [stdout]  --> src/assert.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::vec::Vec;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout]  --> /rustc/b3bd7058c139e71bae0862ef8f8ac936208873e9/library/std/src/prelude/mod.rs:124:13
[INFO] [stdout]   |
[INFO] [stdout]   = note: the item `Vec` is already defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `failure` is imported redundantly
[INFO] [stdout]    --> src/assert.rs:9:5
[INFO] [stdout]     |
[INFO] [stdout] 9   | use failure;
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:124:1
[INFO] [stdout]     |
[INFO] [stdout] 124 | extern crate failure;
[INFO] [stdout]     | --------------------- the item `failure` is already imported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `failure` is imported redundantly
[INFO] [stdout]    --> src/output.rs:6:5
[INFO] [stdout]     |
[INFO] [stdout] 6   | use failure;
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:124:1
[INFO] [stdout]     |
[INFO] [stdout] 124 | extern crate failure;
[INFO] [stdout]     | --------------------- the item `failure` is already imported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/output.rs:146:22
[INFO] [stdout]     |
[INFO] [stdout] 146 |     pub pred: rc::Rc<Fn(&str) -> 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: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 146 |     pub pred: rc::Rc<dyn Fn(&str) -> bool>,
[INFO] [stdout]     |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/errors.rs:79:32
[INFO] [stdout]    |
[INFO] [stdout] 79 |     fn cause(&self) -> Option<&failure::Fail> {
[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] 79 |     fn cause(&self) -> Option<&dyn failure::Fail> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/errors.rs:124:32
[INFO] [stdout]     |
[INFO] [stdout] 124 |     fn cause(&self) -> Option<&failure::Fail> {
[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] 124 |     fn cause(&self) -> Option<&dyn failure::Fail> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/errors.rs:183:32
[INFO] [stdout]     |
[INFO] [stdout] 183 |     fn cause(&self) -> Option<&failure::Fail> {
[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] 183 |     fn cause(&self) -> Option<&dyn failure::Fail> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/output.rs:538:32
[INFO] [stdout]     |
[INFO] [stdout] 538 |     fn cause(&self) -> Option<&failure::Fail> {
[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] 538 |     fn cause(&self) -> Option<&dyn failure::Fail> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking docmatic v0.1.2
[INFO] [stdout] warning: use of deprecated method `failure::Error::cause`: please use 'as_fail()' method instead
[INFO] [stdout]   --> src/errors.rs:80:49
[INFO] [stdout]    |
[INFO] [stdout] 80 |         self.cause.as_ref().map(failure::Error::cause)
[INFO] [stdout]    |                                                 ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `failure::Error::cause`: please use 'as_fail()' method instead
[INFO] [stdout]    --> src/errors.rs:125:49
[INFO] [stdout]     |
[INFO] [stdout] 125 |         self.cause.as_ref().map(failure::Error::cause)
[INFO] [stdout]     |                                                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `failure::Error::cause`: please use 'as_fail()' method instead
[INFO] [stdout]    --> src/errors.rs:184:49
[INFO] [stdout]     |
[INFO] [stdout] 184 |         self.cause.as_ref().map(failure::Error::cause)
[INFO] [stdout]     |                                                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `failure::Fail::causes`: please use the 'iter_chain()' method instead
[INFO] [stdout]    --> src/assert.rs:441:44
[INFO] [stdout]     |
[INFO] [stdout] 441 |             panic!(Self::format_causes(err.causes()));
[INFO] [stdout]     |                                            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `failure::Error::cause`: please use 'as_fail()' method instead
[INFO] [stdout]    --> src/output.rs:539:49
[INFO] [stdout]     |
[INFO] [stdout] 539 |         self.cause.as_ref().map(failure::Error::cause)
[INFO] [stdout]     |                                                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `failure` is imported redundantly
[INFO] [stdout]    --> src/errors.rs:5:5
[INFO] [stdout]     |
[INFO] [stdout] 5   | use failure;
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:124:1
[INFO] [stdout]     |
[INFO] [stdout] 124 | extern crate failure;
[INFO] [stdout]     | --------------------- the item `failure` is already imported here
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `serde_json` is imported redundantly
[INFO] [stdout]    --> src/macros.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout] 1   | use serde_json;
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:127:1
[INFO] [stdout]     |
[INFO] [stdout] 127 | extern crate serde_json;
[INFO] [stdout]     | ------------------------ the item `serde_json` is already imported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Vec` is imported redundantly
[INFO] [stdout]  --> src/assert.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::vec::Vec;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout]  --> /rustc/b3bd7058c139e71bae0862ef8f8ac936208873e9/library/std/src/prelude/mod.rs:124:13
[INFO] [stdout]   |
[INFO] [stdout]   = note: the item `Vec` is already defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `failure` is imported redundantly
[INFO] [stdout]    --> src/assert.rs:9:5
[INFO] [stdout]     |
[INFO] [stdout] 9   | use failure;
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:124:1
[INFO] [stdout]     |
[INFO] [stdout] 124 | extern crate failure;
[INFO] [stdout]     | --------------------- the item `failure` is already imported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `OsString` is imported redundantly
[INFO] [stdout]    --> src/assert.rs:556:9
[INFO] [stdout]     |
[INFO] [stdout] 555 |     use super::*;
[INFO] [stdout]     |         -------- the item `OsString` is already imported here
[INFO] [stdout] 556 |     use std::ffi::OsString;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `failure` is imported redundantly
[INFO] [stdout]    --> src/output.rs:6:5
[INFO] [stdout]     |
[INFO] [stdout] 6   | use failure;
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:124:1
[INFO] [stdout]     |
[INFO] [stdout] 124 | extern crate failure;
[INFO] [stdout]     | --------------------- the item `failure` is already imported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/assert.rs:441:20
[INFO] [stdout]     |
[INFO] [stdout] 441 |             panic!(Self::format_causes(err.causes()));
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 441 |             panic!("{}", Self::format_causes(err.causes()));
[INFO] [stdout]     |                    +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> src/output.rs:346:10
[INFO] [stdout]     |
[INFO] [stdout] 346 | #[derive(Fail, Debug)]
[INFO] [stdout]     |          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_StrDoesntContain`
[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: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]     = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> src/output.rs:366:10
[INFO] [stdout]     |
[INFO] [stdout] 366 | #[derive(Fail, Debug)]
[INFO] [stdout]     |          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_BytesDoesntContain`
[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: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> src/output.rs:386:10
[INFO] [stdout]     |
[INFO] [stdout] 386 | #[derive(Fail, Debug)]
[INFO] [stdout]     |          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_StrContains`
[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: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> src/output.rs:406:10
[INFO] [stdout]     |
[INFO] [stdout] 406 | #[derive(Fail, Debug)]
[INFO] [stdout]     |          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_BytesContains`
[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: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> src/output.rs:426:10
[INFO] [stdout]     |
[INFO] [stdout] 426 | #[derive(Fail, Debug)]
[INFO] [stdout]     |          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_StrDoesntMatch`
[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: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> src/output.rs:450:10
[INFO] [stdout]     |
[INFO] [stdout] 450 | #[derive(Fail, Debug)]
[INFO] [stdout]     |          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_BytesDoesntMatch`
[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: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> src/output.rs:470:10
[INFO] [stdout]     |
[INFO] [stdout] 470 | #[derive(Fail, Debug)]
[INFO] [stdout]     |          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_StrMatches`
[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: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> src/output.rs:488:10
[INFO] [stdout]     |
[INFO] [stdout] 488 | #[derive(Fail, Debug)]
[INFO] [stdout]     |          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_BytesMatches`
[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: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> src/output.rs:506:10
[INFO] [stdout]     |
[INFO] [stdout] 506 | #[derive(Fail, Debug)]
[INFO] [stdout]     |          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_PredicateFailed`
[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: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/output.rs:146:22
[INFO] [stdout]     |
[INFO] [stdout] 146 |     pub pred: rc::Rc<Fn(&str) -> 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: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 146 |     pub pred: rc::Rc<dyn Fn(&str) -> bool>,
[INFO] [stdout]     |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 25 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/errors.rs:79:32
[INFO] [stdout]    |
[INFO] [stdout] 79 |     fn cause(&self) -> Option<&failure::Fail> {
[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] 79 |     fn cause(&self) -> Option<&dyn failure::Fail> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/errors.rs:124:32
[INFO] [stdout]     |
[INFO] [stdout] 124 |     fn cause(&self) -> Option<&failure::Fail> {
[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] 124 |     fn cause(&self) -> Option<&dyn failure::Fail> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/errors.rs:183:32
[INFO] [stdout]     |
[INFO] [stdout] 183 |     fn cause(&self) -> Option<&failure::Fail> {
[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] 183 |     fn cause(&self) -> Option<&dyn failure::Fail> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/output.rs:538:32
[INFO] [stdout]     |
[INFO] [stdout] 538 |     fn cause(&self) -> Option<&failure::Fail> {
[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] 538 |     fn cause(&self) -> Option<&dyn failure::Fail> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `failure::Error::cause`: please use 'as_fail()' method instead
[INFO] [stdout]   --> src/errors.rs:80:49
[INFO] [stdout]    |
[INFO] [stdout] 80 |         self.cause.as_ref().map(failure::Error::cause)
[INFO] [stdout]    |                                                 ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `failure::Error::cause`: please use 'as_fail()' method instead
[INFO] [stdout]    --> src/errors.rs:125:49
[INFO] [stdout]     |
[INFO] [stdout] 125 |         self.cause.as_ref().map(failure::Error::cause)
[INFO] [stdout]     |                                                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `failure::Error::cause`: please use 'as_fail()' method instead
[INFO] [stdout]    --> src/errors.rs:184:49
[INFO] [stdout]     |
[INFO] [stdout] 184 |         self.cause.as_ref().map(failure::Error::cause)
[INFO] [stdout]     |                                                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `failure::Fail::causes`: please use the 'iter_chain()' method instead
[INFO] [stdout]    --> src/assert.rs:441:44
[INFO] [stdout]     |
[INFO] [stdout] 441 |             panic!(Self::format_causes(err.causes()));
[INFO] [stdout]     |                                            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `failure::Error::cause`: please use 'as_fail()' method instead
[INFO] [stdout]    --> src/output.rs:539:49
[INFO] [stdout]     |
[INFO] [stdout] 539 |         self.cause.as_ref().map(failure::Error::cause)
[INFO] [stdout]     |                                                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/assert.rs:441:20
[INFO] [stdout]     |
[INFO] [stdout] 441 |             panic!(Self::format_causes(err.causes()));
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 441 |             panic!("{}", Self::format_causes(err.causes()));
[INFO] [stdout]     |                    +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> src/output.rs:346:10
[INFO] [stdout]     |
[INFO] [stdout] 346 | #[derive(Fail, Debug)]
[INFO] [stdout]     |          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_StrDoesntContain`
[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: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]     = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> src/output.rs:366:10
[INFO] [stdout]     |
[INFO] [stdout] 366 | #[derive(Fail, Debug)]
[INFO] [stdout]     |          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_BytesDoesntContain`
[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: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> src/output.rs:386:10
[INFO] [stdout]     |
[INFO] [stdout] 386 | #[derive(Fail, Debug)]
[INFO] [stdout]     |          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_StrContains`
[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: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> src/output.rs:406:10
[INFO] [stdout]     |
[INFO] [stdout] 406 | #[derive(Fail, Debug)]
[INFO] [stdout]     |          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_BytesContains`
[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: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> src/output.rs:426:10
[INFO] [stdout]     |
[INFO] [stdout] 426 | #[derive(Fail, Debug)]
[INFO] [stdout]     |          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_StrDoesntMatch`
[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: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> src/output.rs:450:10
[INFO] [stdout]     |
[INFO] [stdout] 450 | #[derive(Fail, Debug)]
[INFO] [stdout]     |          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_BytesDoesntMatch`
[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: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> src/output.rs:470:10
[INFO] [stdout]     |
[INFO] [stdout] 470 | #[derive(Fail, Debug)]
[INFO] [stdout]     |          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_StrMatches`
[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: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> src/output.rs:488:10
[INFO] [stdout]     |
[INFO] [stdout] 488 | #[derive(Fail, Debug)]
[INFO] [stdout]     |          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_BytesMatches`
[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: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> src/output.rs:506:10
[INFO] [stdout]     |
[INFO] [stdout] 506 | #[derive(Fail, Debug)]
[INFO] [stdout]     |          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_PredicateFailed`
[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: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 26 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 3.13s
[INFO] running `Command { std: "docker" "inspect" "bfd369cc86eac0650488ad2ac38c29c199b7ef940cd1c2781599be3411589281", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bfd369cc86eac0650488ad2ac38c29c199b7ef940cd1c2781599be3411589281", kill_on_drop: false }`
[INFO] [stdout] bfd369cc86eac0650488ad2ac38c29c199b7ef940cd1c2781599be3411589281
[INFO] checking assert_cli-0.6.3 against try#57fe1b734d9ff1c8a92bda60b85506b9648158d3 for pr-123752
[INFO] extracting crate assert_cli 0.6.3 into /workspace/builds/worker-0-tc2/source
[INFO] validating manifest of crates.io crate assert_cli 0.6.3 on toolchain 57fe1b734d9ff1c8a92bda60b85506b9648158d3
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+57fe1b734d9ff1c8a92bda60b85506b9648158d3" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate assert_cli 0.6.3
[INFO] finished tweaking crates.io crate assert_cli 0.6.3
[INFO] tweaked toml for crates.io crate assert_cli 0.6.3 written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+57fe1b734d9ff1c8a92bda60b85506b9648158d3" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 46 packages
[INFO] [stderr]       Adding colored v1.9.4 (latest: v2.1.0)
[INFO] [stderr]       Adding object v0.32.2 (latest: v0.35.0)
[INFO] [stderr]       Adding syn v1.0.109 (latest: v2.0.58)
[INFO] [stderr]       Adding synstructure v0.12.6 (latest: v0.13.1)
[INFO] [stderr]       Adding which v2.0.1 (latest: v6.0.1)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+57fe1b734d9ff1c8a92bda60b85506b9648158d3" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+57fe1b734d9ff1c8a92bda60b85506b9648158d3" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 7c9ca72fc49ebb7885d79b07687d9135a1cf87d5233d021041af8b902fb63f17
[INFO] running `Command { std: "docker" "start" "-a" "7c9ca72fc49ebb7885d79b07687d9135a1cf87d5233d021041af8b902fb63f17", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "7c9ca72fc49ebb7885d79b07687d9135a1cf87d5233d021041af8b902fb63f17", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7c9ca72fc49ebb7885d79b07687d9135a1cf87d5233d021041af8b902fb63f17", kill_on_drop: false }`
[INFO] [stdout] 7c9ca72fc49ebb7885d79b07687d9135a1cf87d5233d021041af8b902fb63f17
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+57fe1b734d9ff1c8a92bda60b85506b9648158d3" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] f76810af71177b41e68d39b2caf2731a94de01a27ef14a7564cce04a96b73024
[INFO] running `Command { std: "docker" "start" "-a" "f76810af71177b41e68d39b2caf2731a94de01a27ef14a7564cce04a96b73024", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling failure_derive v0.1.8
[INFO] [stderr]    Compiling unicode-xid v0.2.4
[INFO] [stderr]    Compiling backtrace v0.3.71
[INFO] [stderr]     Checking memchr v2.7.2
[INFO] [stderr]     Checking miniz_oxide v0.7.2
[INFO] [stderr]    Compiling serde v1.0.197
[INFO] [stderr]     Checking is-terminal v0.4.12
[INFO] [stderr]     Checking colored v1.9.4
[INFO] [stderr]     Checking environment v0.1.1
[INFO] [stderr]     Checking difference v2.0.0
[INFO] [stderr]     Checking object v0.32.2
[INFO] [stderr]    Compiling synstructure v0.12.6
[INFO] [stderr]     Checking serde_json v1.0.115
[INFO] [stderr]     Checking failure v0.1.8
[INFO] [stderr]     Checking which v2.0.1
[INFO] [stderr]     Checking assert_cli v0.6.3 (/opt/rustwide/workdir)
[INFO] [stdout] warning: the item `failure` is imported redundantly
[INFO] [stdout]    --> src/errors.rs:5:5
[INFO] [stdout]     |
[INFO] [stdout] 5   | use failure;
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:124:1
[INFO] [stdout]     |
[INFO] [stdout] 124 | extern crate failure;
[INFO] [stdout]     | --------------------- the item `failure` is already imported here
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `serde_json` is imported redundantly
[INFO] [stdout]    --> src/macros.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout] 1   | use serde_json;
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:127:1
[INFO] [stdout]     |
[INFO] [stdout] 127 | extern crate serde_json;
[INFO] [stdout]     | ------------------------ the item `serde_json` is already imported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Vec` is imported redundantly
[INFO] [stdout]  --> src/assert.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::vec::Vec;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout]  --> /rustc/57fe1b734d9ff1c8a92bda60b85506b9648158d3/library/std/src/prelude/mod.rs:124:13
[INFO] [stdout]   |
[INFO] [stdout]   = note: the item `Vec` is already defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `failure` is imported redundantly
[INFO] [stdout]    --> src/assert.rs:9:5
[INFO] [stdout]     |
[INFO] [stdout] 9   | use failure;
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:124:1
[INFO] [stdout]     |
[INFO] [stdout] 124 | extern crate failure;
[INFO] [stdout]     | --------------------- the item `failure` is already imported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `failure` is imported redundantly
[INFO] [stdout]    --> src/output.rs:6:5
[INFO] [stdout]     |
[INFO] [stdout] 6   | use failure;
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:124:1
[INFO] [stdout]     |
[INFO] [stdout] 124 | extern crate failure;
[INFO] [stdout]     | --------------------- the item `failure` is already imported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/output.rs:146:22
[INFO] [stdout]     |
[INFO] [stdout] 146 |     pub pred: rc::Rc<Fn(&str) -> 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: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 146 |     pub pred: rc::Rc<dyn Fn(&str) -> bool>,
[INFO] [stdout]     |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/errors.rs:79:32
[INFO] [stdout]    |
[INFO] [stdout] 79 |     fn cause(&self) -> Option<&failure::Fail> {
[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] 79 |     fn cause(&self) -> Option<&dyn failure::Fail> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/errors.rs:124:32
[INFO] [stdout]     |
[INFO] [stdout] 124 |     fn cause(&self) -> Option<&failure::Fail> {
[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] 124 |     fn cause(&self) -> Option<&dyn failure::Fail> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/errors.rs:183:32
[INFO] [stdout]     |
[INFO] [stdout] 183 |     fn cause(&self) -> Option<&failure::Fail> {
[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] 183 |     fn cause(&self) -> Option<&dyn failure::Fail> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/output.rs:538:32
[INFO] [stdout]     |
[INFO] [stdout] 538 |     fn cause(&self) -> Option<&failure::Fail> {
[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] 538 |     fn cause(&self) -> Option<&dyn failure::Fail> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `failure::Error::cause`: please use 'as_fail()' method instead
[INFO] [stdout]   --> src/errors.rs:80:49
[INFO] [stdout]    |
[INFO] [stdout] 80 |         self.cause.as_ref().map(failure::Error::cause)
[INFO] [stdout]    |                                                 ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `failure::Error::cause`: please use 'as_fail()' method instead
[INFO] [stdout]    --> src/errors.rs:125:49
[INFO] [stdout]     |
[INFO] [stdout] 125 |         self.cause.as_ref().map(failure::Error::cause)
[INFO] [stdout]     |                                                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking docmatic v0.1.2
[INFO] [stdout] warning: use of deprecated method `failure::Error::cause`: please use 'as_fail()' method instead
[INFO] [stdout]    --> src/errors.rs:184:49
[INFO] [stdout]     |
[INFO] [stdout] 184 |         self.cause.as_ref().map(failure::Error::cause)
[INFO] [stdout]     |                                                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `failure::Fail::causes`: please use the 'iter_chain()' method instead
[INFO] [stdout]    --> src/assert.rs:441:44
[INFO] [stdout]     |
[INFO] [stdout] 441 |             panic!(Self::format_causes(err.causes()));
[INFO] [stdout]     |                                            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `failure::Error::cause`: please use 'as_fail()' method instead
[INFO] [stdout]    --> src/output.rs:539:49
[INFO] [stdout]     |
[INFO] [stdout] 539 |         self.cause.as_ref().map(failure::Error::cause)
[INFO] [stdout]     |                                                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/assert.rs:441:20
[INFO] [stdout]     |
[INFO] [stdout] 441 |             panic!(Self::format_causes(err.causes()));
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 441 |             panic!("{}", Self::format_causes(err.causes()));
[INFO] [stdout]     |                    +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> src/output.rs:346:10
[INFO] [stdout]     |
[INFO] [stdout] 346 | #[derive(Fail, Debug)]
[INFO] [stdout]     |          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_StrDoesntContain`
[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: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]     = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> src/output.rs:366:10
[INFO] [stdout]     |
[INFO] [stdout] 366 | #[derive(Fail, Debug)]
[INFO] [stdout]     |          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_BytesDoesntContain`
[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: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> src/output.rs:386:10
[INFO] [stdout]     |
[INFO] [stdout] 386 | #[derive(Fail, Debug)]
[INFO] [stdout]     |          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_StrContains`
[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: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> src/output.rs:406:10
[INFO] [stdout]     |
[INFO] [stdout] 406 | #[derive(Fail, Debug)]
[INFO] [stdout]     |          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_BytesContains`
[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: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> src/output.rs:426:10
[INFO] [stdout]     |
[INFO] [stdout] 426 | #[derive(Fail, Debug)]
[INFO] [stdout]     |          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_StrDoesntMatch`
[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: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> src/output.rs:450:10
[INFO] [stdout]     |
[INFO] [stdout] 450 | #[derive(Fail, Debug)]
[INFO] [stdout]     |          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_BytesDoesntMatch`
[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: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> src/output.rs:470:10
[INFO] [stdout]     |
[INFO] [stdout] 470 | #[derive(Fail, Debug)]
[INFO] [stdout]     |          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_StrMatches`
[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: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> src/output.rs:488:10
[INFO] [stdout]     |
[INFO] [stdout] 488 | #[derive(Fail, Debug)]
[INFO] [stdout]     |          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_BytesMatches`
[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: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> src/output.rs:506:10
[INFO] [stdout]     |
[INFO] [stdout] 506 | #[derive(Fail, Debug)]
[INFO] [stdout]     |          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_PredicateFailed`
[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: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `failure` is imported redundantly
[INFO] [stdout]    --> src/errors.rs:5:5
[INFO] [stdout]     |
[INFO] [stdout] 5   | use failure;
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:124:1
[INFO] [stdout]     |
[INFO] [stdout] 124 | extern crate failure;
[INFO] [stdout]     | --------------------- the item `failure` is already imported here
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `serde_json` is imported redundantly
[INFO] [stdout]    --> src/macros.rs:1:5
[INFO] [stdout]     |
[INFO] [stdout] 1   | use serde_json;
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:127:1
[INFO] [stdout]     |
[INFO] [stdout] 127 | extern crate serde_json;
[INFO] [stdout]     | ------------------------ the item `serde_json` is already imported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Vec` is imported redundantly
[INFO] [stdout]  --> src/assert.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::vec::Vec;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout]  --> /rustc/57fe1b734d9ff1c8a92bda60b85506b9648158d3/library/std/src/prelude/mod.rs:124:13
[INFO] [stdout]   |
[INFO] [stdout]   = note: the item `Vec` is already defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `failure` is imported redundantly
[INFO] [stdout]    --> src/assert.rs:9:5
[INFO] [stdout]     |
[INFO] [stdout] 9   | use failure;
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:124:1
[INFO] [stdout]     |
[INFO] [stdout] 124 | extern crate failure;
[INFO] [stdout]     | --------------------- the item `failure` is already imported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `OsString` is imported redundantly
[INFO] [stdout]    --> src/assert.rs:556:9
[INFO] [stdout]     |
[INFO] [stdout] 555 |     use super::*;
[INFO] [stdout]     |         -------- the item `OsString` is already imported here
[INFO] [stdout] 556 |     use std::ffi::OsString;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `failure` is imported redundantly
[INFO] [stdout]    --> src/output.rs:6:5
[INFO] [stdout]     |
[INFO] [stdout] 6   | use failure;
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:124:1
[INFO] [stdout]     |
[INFO] [stdout] 124 | extern crate failure;
[INFO] [stdout]     | --------------------- the item `failure` is already imported here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 25 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/output.rs:146:22
[INFO] [stdout]     |
[INFO] [stdout] 146 |     pub pred: rc::Rc<Fn(&str) -> 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: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 146 |     pub pred: rc::Rc<dyn Fn(&str) -> bool>,
[INFO] [stdout]     |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/errors.rs:79:32
[INFO] [stdout]    |
[INFO] [stdout] 79 |     fn cause(&self) -> Option<&failure::Fail> {
[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] 79 |     fn cause(&self) -> Option<&dyn failure::Fail> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/errors.rs:124:32
[INFO] [stdout]     |
[INFO] [stdout] 124 |     fn cause(&self) -> Option<&failure::Fail> {
[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] 124 |     fn cause(&self) -> Option<&dyn failure::Fail> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/errors.rs:183:32
[INFO] [stdout]     |
[INFO] [stdout] 183 |     fn cause(&self) -> Option<&failure::Fail> {
[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] 183 |     fn cause(&self) -> Option<&dyn failure::Fail> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/output.rs:538:32
[INFO] [stdout]     |
[INFO] [stdout] 538 |     fn cause(&self) -> Option<&failure::Fail> {
[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] 538 |     fn cause(&self) -> Option<&dyn failure::Fail> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `failure::Error::cause`: please use 'as_fail()' method instead
[INFO] [stdout]   --> src/errors.rs:80:49
[INFO] [stdout]    |
[INFO] [stdout] 80 |         self.cause.as_ref().map(failure::Error::cause)
[INFO] [stdout]    |                                                 ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `failure::Error::cause`: please use 'as_fail()' method instead
[INFO] [stdout]    --> src/errors.rs:125:49
[INFO] [stdout]     |
[INFO] [stdout] 125 |         self.cause.as_ref().map(failure::Error::cause)
[INFO] [stdout]     |                                                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `failure::Error::cause`: please use 'as_fail()' method instead
[INFO] [stdout]    --> src/errors.rs:184:49
[INFO] [stdout]     |
[INFO] [stdout] 184 |         self.cause.as_ref().map(failure::Error::cause)
[INFO] [stdout]     |                                                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `failure::Fail::causes`: please use the 'iter_chain()' method instead
[INFO] [stdout]    --> src/assert.rs:441:44
[INFO] [stdout]     |
[INFO] [stdout] 441 |             panic!(Self::format_causes(err.causes()));
[INFO] [stdout]     |                                            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `failure::Error::cause`: please use 'as_fail()' method instead
[INFO] [stdout]    --> src/output.rs:539:49
[INFO] [stdout]     |
[INFO] [stdout] 539 |         self.cause.as_ref().map(failure::Error::cause)
[INFO] [stdout]     |                                                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/assert.rs:441:20
[INFO] [stdout]     |
[INFO] [stdout] 441 |             panic!(Self::format_causes(err.causes()));
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 441 |             panic!("{}", Self::format_causes(err.causes()));
[INFO] [stdout]     |                    +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> src/output.rs:346:10
[INFO] [stdout]     |
[INFO] [stdout] 346 | #[derive(Fail, Debug)]
[INFO] [stdout]     |          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_StrDoesntContain`
[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: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]     = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> src/output.rs:366:10
[INFO] [stdout]     |
[INFO] [stdout] 366 | #[derive(Fail, Debug)]
[INFO] [stdout]     |          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_BytesDoesntContain`
[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: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> src/output.rs:386:10
[INFO] [stdout]     |
[INFO] [stdout] 386 | #[derive(Fail, Debug)]
[INFO] [stdout]     |          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_StrContains`
[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: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> src/output.rs:406:10
[INFO] [stdout]     |
[INFO] [stdout] 406 | #[derive(Fail, Debug)]
[INFO] [stdout]     |          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_BytesContains`
[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: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> src/output.rs:426:10
[INFO] [stdout]     |
[INFO] [stdout] 426 | #[derive(Fail, Debug)]
[INFO] [stdout]     |          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_StrDoesntMatch`
[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: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> src/output.rs:450:10
[INFO] [stdout]     |
[INFO] [stdout] 450 | #[derive(Fail, Debug)]
[INFO] [stdout]     |          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_BytesDoesntMatch`
[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: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> src/output.rs:470:10
[INFO] [stdout]     |
[INFO] [stdout] 470 | #[derive(Fail, Debug)]
[INFO] [stdout]     |          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_StrMatches`
[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: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> src/output.rs:488:10
[INFO] [stdout]     |
[INFO] [stdout] 488 | #[derive(Fail, Debug)]
[INFO] [stdout]     |          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_BytesMatches`
[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: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> src/output.rs:506:10
[INFO] [stdout]     |
[INFO] [stdout] 506 | #[derive(Fail, Debug)]
[INFO] [stdout]     |          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current constant `_DERIVE_failure_Fail_FOR_PredicateFailed`
[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: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 26 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2.90s
[INFO] running `Command { std: "docker" "inspect" "f76810af71177b41e68d39b2caf2731a94de01a27ef14a7564cce04a96b73024", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f76810af71177b41e68d39b2caf2731a94de01a27ef14a7564cce04a96b73024", kill_on_drop: false }`
[INFO] [stdout] f76810af71177b41e68d39b2caf2731a94de01a27ef14a7564cce04a96b73024
