[INFO] fetching crate heel-gun 0.1.1... [INFO] checking heel-gun-0.1.1 against try#7014e13d5becc920d4bea3cd87942c8a13d359bf+rustflags=-Dtail_expr_drop_order for pr-129864 [INFO] extracting crate heel-gun 0.1.1 into /workspace/builds/worker-0-tc2/source [INFO] validating manifest of crates.io crate heel-gun 0.1.1 on toolchain 7014e13d5becc920d4bea3cd87942c8a13d359bf [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+7014e13d5becc920d4bea3cd87942c8a13d359bf" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate heel-gun 0.1.1 [INFO] finished tweaking crates.io crate heel-gun 0.1.1 [INFO] tweaked toml for crates.io crate heel-gun 0.1.1 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" "+7014e13d5becc920d4bea3cd87942c8a13d359bf" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 149 packages to latest compatible versions [INFO] [stderr] Adding autocfg v0.1.8 (available: v1.3.0) [INFO] [stderr] Adding bitflags v1.3.2 (available: v2.6.0) [INFO] [stderr] Adding bytes v0.4.12 (available: v1.7.2) [INFO] [stderr] Adding cfg-if v0.1.10 (available: v1.0.0) [INFO] [stderr] Adding clap v2.34.0 (available: v4.5.18) [INFO] [stderr] Adding cloudabi v0.0.3 (available: v0.1.0) [INFO] [stderr] Adding crossbeam-deque v0.7.4 (available: v0.8.5) [INFO] [stderr] Adding crossbeam-epoch v0.8.2 (available: v0.9.18) [INFO] [stderr] Adding crossbeam-queue v0.2.3 (available: v0.3.11) [INFO] [stderr] Adding crossbeam-utils v0.7.2 (available: v0.8.20) [INFO] [stderr] Adding env_logger v0.6.2 (available: v0.11.5) [INFO] [stderr] Adding futures v0.1.31 (available: v0.3.30) [INFO] [stderr] Adding h2 v0.1.26 (available: v0.4.6) [INFO] [stderr] Adding hashbrown v0.12.3 (available: v0.14.5) [INFO] [stderr] Adding heck v0.3.3 (available: v0.5.0) [INFO] [stderr] Adding hermit-abi v0.1.19 (available: v0.4.0) [INFO] [stderr] Adding hermit-abi v0.3.9 (available: v0.4.0) [INFO] [stderr] Adding http v0.1.21 (available: v1.1.0) [INFO] [stderr] Adding http-body v0.1.0 (available: v1.0.1) [INFO] [stderr] Adding humantime v1.3.0 (available: v2.1.0) [INFO] [stderr] Adding hyper v0.12.36 (available: v1.4.1) [INFO] [stderr] Adding indexmap v1.9.3 (available: v2.5.0) [INFO] [stderr] Adding itertools v0.8.2 (available: v0.13.0) [INFO] [stderr] Adding itoa v0.4.8 (available: v1.0.11) [INFO] [stderr] Adding lock_api v0.3.4 (available: v0.4.12) [INFO] [stderr] Adding memoffset v0.5.6 (available: v0.9.1) [INFO] [stderr] Adding mio v0.6.23 (available: v1.0.2) [INFO] [stderr] Adding miow v0.2.2 (available: v0.6.0) [INFO] [stderr] Adding parking_lot v0.9.0 (available: v0.12.3) [INFO] [stderr] Adding parking_lot_core v0.6.3 (available: v0.9.10) [INFO] [stderr] Adding proc-macro2 v0.4.30 (available: v1.0.86) [INFO] [stderr] Adding quick-error v1.2.3 (available: v2.0.1) [INFO] [stderr] Adding quote v0.6.13 (available: v1.0.37) [INFO] [stderr] Adding rand v0.6.5 (available: v0.8.5) [INFO] [stderr] Adding rand_chacha v0.1.1 (available: v0.3.1) [INFO] [stderr] Adding rand_core v0.3.1 (available: v0.6.4) [INFO] [stderr] Adding rand_core v0.4.2 (available: v0.6.4) [INFO] [stderr] Adding rand_hc v0.1.0 (available: v0.3.2) [INFO] [stderr] Adding rand_isaac v0.1.1 (available: v0.3.0) [INFO] [stderr] Adding rand_jitter v0.1.4 (available: v0.4.0) [INFO] [stderr] Adding rand_os v0.1.3 (available: v0.2.2) [INFO] [stderr] Adding rand_pcg v0.1.2 (available: v0.3.1) [INFO] [stderr] Adding rand_xorshift v0.1.1 (available: v0.3.0) [INFO] [stderr] Adding rdrand v0.4.0 (available: v0.8.3) [INFO] [stderr] Adding redox_syscall v0.1.57 (available: v0.5.6) [INFO] [stderr] Adding rustc_version v0.2.3 (available: v0.4.1) [INFO] [stderr] Adding semver v0.9.0 (available: v1.0.23) [INFO] [stderr] Adding semver-parser v0.7.0 (available: v0.10.2) [INFO] [stderr] Adding serde_yaml v0.8.26 (available: v0.9.34+deprecated) [INFO] [stderr] Adding smallvec v0.6.14 (available: v1.13.2) [INFO] [stderr] Adding string v0.2.1 (available: v0.3.1) [INFO] [stderr] Adding strsim v0.8.0 (available: v0.11.1) [INFO] [stderr] Adding structopt v0.2.18 (available: v0.3.26) [INFO] [stderr] Adding structopt-derive v0.2.18 (available: v0.4.18) [INFO] [stderr] Adding syn v0.15.44 (available: v2.0.77) [INFO] [stderr] Adding syn v1.0.109 (available: v2.0.77) [INFO] [stderr] Adding synstructure v0.12.6 (available: v0.13.1) [INFO] [stderr] Adding textwrap v0.11.0 (available: v0.16.1) [INFO] [stderr] Adding time v0.1.45 (available: v0.3.36) [INFO] [stderr] Adding tokio v0.1.22 (available: v1.40.0) [INFO] [stderr] Adding unicode-width v0.1.14 (available: v0.2.0) [INFO] [stderr] Adding unicode-xid v0.1.0 (available: v0.2.6) [INFO] [stderr] Adding want v0.2.0 (available: v0.3.1) [INFO] [stderr] Adding wasi v0.10.0+wasi-snapshot-preview1 (available: v0.10.2+wasi-snapshot-preview1) [INFO] [stderr] Adding winapi v0.2.8 (available: v0.3.9) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+7014e13d5becc920d4bea3cd87942c8a13d359bf" "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:ceb6ea022f8a89cebbe621bb4987e73a935bd40dfbb726f832cfff4742a5b95a" "/opt/rustwide/cargo-home/bin/cargo" "+7014e13d5becc920d4bea3cd87942c8a13d359bf" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 3c1ce8694807178b13c012ec2d4eaa2546102ca5664f75e26fceb28e68e3db82 [INFO] running `Command { std: "docker" "start" "-a" "3c1ce8694807178b13c012ec2d4eaa2546102ca5664f75e26fceb28e68e3db82", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "3c1ce8694807178b13c012ec2d4eaa2546102ca5664f75e26fceb28e68e3db82", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3c1ce8694807178b13c012ec2d4eaa2546102ca5664f75e26fceb28e68e3db82", kill_on_drop: false }` [INFO] [stdout] 3c1ce8694807178b13c012ec2d4eaa2546102ca5664f75e26fceb28e68e3db82 [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 -Dtail_expr_drop_order" "-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:ceb6ea022f8a89cebbe621bb4987e73a935bd40dfbb726f832cfff4742a5b95a" "/opt/rustwide/cargo-home/bin/cargo" "+7014e13d5becc920d4bea3cd87942c8a13d359bf" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] cc53fee7828bea6f7ff6ed7db85447ead89eb21a02a1158af8d0e9177310047f [INFO] running `Command { std: "docker" "start" "-a" "cc53fee7828bea6f7ff6ed7db85447ead89eb21a02a1158af8d0e9177310047f", kill_on_drop: false }` [INFO] [stderr] Checking futures v0.1.31 [INFO] [stderr] Compiling crossbeam-utils v0.7.2 [INFO] [stderr] Checking either v1.13.0 [INFO] [stderr] Compiling semver-parser v0.7.0 [INFO] [stderr] Compiling memoffset v0.5.6 [INFO] [stderr] Checking lock_api v0.3.4 [INFO] [stderr] Compiling crossbeam-epoch v0.8.2 [INFO] [stderr] Compiling serde v1.0.210 [INFO] [stderr] Checking bytes v0.4.12 [INFO] [stderr] Checking itoa v0.4.8 [INFO] [stderr] Checking mio-uds v0.6.8 [INFO] [stderr] Compiling heck v0.3.3 [INFO] [stderr] Compiling semver v0.9.0 [INFO] [stderr] Checking linked-hash-map v0.5.6 [INFO] [stderr] Checking vec_map v0.8.2 [INFO] [stderr] Checking strsim v0.8.0 [INFO] [stderr] Checking quick-error v1.2.3 [INFO] [stderr] Checking clap v2.34.0 [INFO] [stderr] Checking yaml-rust v0.4.5 [INFO] [stderr] Compiling rustc_version v0.2.3 [INFO] [stderr] Checking http v0.1.21 [INFO] [stderr] Checking string v0.2.1 [INFO] [stderr] Checking crossbeam-queue v0.2.3 [INFO] [stderr] Compiling parking_lot_core v0.6.3 [INFO] [stderr] Compiling parking_lot v0.9.0 [INFO] [stderr] Compiling hyper v0.12.36 [INFO] [stderr] Checking crossbeam-deque v0.7.4 [INFO] [stderr] Checking humantime v1.3.0 [INFO] [stderr] Compiling structopt-derive v0.2.18 [INFO] [stderr] Checking time v0.1.45 [INFO] [stderr] Checking env_logger v0.6.2 [INFO] [stderr] Checking itertools v0.8.2 [INFO] [stderr] Checking tokio-executor v0.1.10 [INFO] [stderr] Checking tokio-io v0.1.13 [INFO] [stderr] Checking tokio-sync v0.1.8 [INFO] [stderr] Checking tokio-threadpool v0.1.18 [INFO] [stderr] Checking tokio-codec v0.1.2 [INFO] [stderr] Checking tokio-timer v0.2.13 [INFO] [stderr] Checking tokio-current-thread v0.1.7 [INFO] [stderr] Checking tokio-reactor v0.1.12 [INFO] [stderr] Checking tokio-fs v0.1.7 [INFO] [stderr] Checking tokio-buf v0.1.1 [INFO] [stderr] Checking futures-cpupool v0.1.8 [INFO] [stderr] Checking want v0.2.0 [INFO] [stderr] Checking tokio-tcp v0.1.4 [INFO] [stderr] Checking tokio-uds v0.2.7 [INFO] [stderr] Checking tokio-udp v0.1.6 [INFO] [stderr] Checking structopt v0.2.18 [INFO] [stderr] Checking tokio v0.1.22 [INFO] [stderr] Checking http-body v0.1.0 [INFO] [stderr] Checking h2 v0.1.26 [INFO] [stderr] Checking serde_yaml v0.8.26 [INFO] [stderr] Checking csv v1.3.0 [INFO] [stderr] Checking serde_json v1.0.128 [INFO] [stderr] Checking heel-gun v0.1.1 (/opt/rustwide/workdir) [INFO] [stdout] error: this value of type `Result, http::Error>` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/main.rs:147:23 [INFO] [stdout] | [INFO] [stdout] 144 | .and_then(move |(i, target, uri)| { [INFO] [stdout] | ---------------- [INFO] [stdout] | | | [INFO] [stdout] | | these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] | these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 145 | let method = target.method(); [INFO] [stdout] | ------ these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 146 | result( [INFO] [stdout] 147 | match Request::builder() [INFO] [stdout] | _______________________^ [INFO] [stdout] 148 | | .method(target.method()) [INFO] [stdout] 149 | | .uri(&uri) [INFO] [stdout] 150 | | .body(Body::empty()) [INFO] [stdout] | |________________________________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] = note: requested on the command line with `-D tail-expr-drop-order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/config.rs:11:25 [INFO] [stdout] | [INFO] [stdout] 11 | pub type DynError = Box; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 11 | pub type DynError = Box; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `Result, http::Error>` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/main.rs:147:23 [INFO] [stdout] | [INFO] [stdout] 144 | .and_then(move |(i, target, uri)| { [INFO] [stdout] | ---------------- [INFO] [stdout] | | | [INFO] [stdout] | | these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] | these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 145 | let method = target.method(); [INFO] [stdout] | ------ these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 146 | result( [INFO] [stdout] 147 | match Request::builder() [INFO] [stdout] | _______________________^ [INFO] [stdout] 148 | | .method(target.method()) [INFO] [stdout] 149 | | .uri(&uri) [INFO] [stdout] 150 | | .body(Body::empty()) [INFO] [stdout] | |________________________________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] = note: requested on the command line with `-D tail-expr-drop-order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/config.rs:11:25 [INFO] [stdout] | [INFO] [stdout] 11 | pub type DynError = Box; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 11 | pub type DynError = Box; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `status` and `body` are never read [INFO] [stdout] --> src/outcome.rs:49:9 [INFO] [stdout] | [INFO] [stdout] 47 | Good { [INFO] [stdout] | ---- fields in this variant [INFO] [stdout] 48 | /// the status code returned by the server [INFO] [stdout] 49 | status: StatusCode, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 50 | /// the body of the respective HTTP response [INFO] [stdout] 51 | body: Body, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `OutcomeKind` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `status` and `body` are never read [INFO] [stdout] --> src/outcome.rs:49:9 [INFO] [stdout] | [INFO] [stdout] 47 | Good { [INFO] [stdout] | ---- fields in this variant [INFO] [stdout] 48 | /// the status code returned by the server [INFO] [stdout] 49 | status: StatusCode, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 50 | /// the body of the respective HTTP response [INFO] [stdout] 51 | body: Body, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `OutcomeKind` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:46:17 [INFO] [stdout] | [INFO] [stdout] 46 | #[derive(Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error` [INFO] [stdout] 47 | pub enum Error { [INFO] [stdout] | ----- `Error` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [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: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:46:17 [INFO] [stdout] | [INFO] [stdout] 46 | #[derive(Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error` [INFO] [stdout] 47 | pub enum Error { [INFO] [stdout] | ----- `Error` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [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: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:46:17 [INFO] [stdout] | [INFO] [stdout] 46 | #[derive(Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error` [INFO] [stdout] 47 | pub enum Error { [INFO] [stdout] | ----- `Error` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [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: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/main.rs:46:17 [INFO] [stdout] | [INFO] [stdout] 46 | #[derive(Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error` [INFO] [stdout] 47 | pub enum Error { [INFO] [stdout] | ----- `Error` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [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: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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] error: aborting due to 1 previous error; 4 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error; 4 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `heel-gun` (bin "heel-gun" test) due to 2 previous errors; 4 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error: could not compile `heel-gun` (bin "heel-gun") due to 2 previous errors; 4 warnings emitted [INFO] running `Command { std: "docker" "inspect" "cc53fee7828bea6f7ff6ed7db85447ead89eb21a02a1158af8d0e9177310047f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "cc53fee7828bea6f7ff6ed7db85447ead89eb21a02a1158af8d0e9177310047f", kill_on_drop: false }` [INFO] [stdout] cc53fee7828bea6f7ff6ed7db85447ead89eb21a02a1158af8d0e9177310047f