[INFO] fetching crate apns2 0.1.0... [INFO] checking apns2-0.1.0 against master#cf38b8e663f15db10ce49d7bbce02c99fc3dbc0c for pr-143170 [INFO] extracting crate apns2 0.1.0 into /workspace/builds/worker-0-tc1/source [INFO] started tweaking crates.io crate apns2 0.1.0 [INFO] finished tweaking crates.io crate apns2 0.1.0 [INFO] tweaked toml for crates.io crate apns2 0.1.0 written to /workspace/builds/worker-0-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate apns2 0.1.0 on toolchain cf38b8e663f15db10ce49d7bbce02c99fc3dbc0c [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cf38b8e663f15db10ce49d7bbce02c99fc3dbc0c" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cf38b8e663f15db10ce49d7bbce02c99fc3dbc0c" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Updating crates.io index [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Locking 56 packages to latest compatible versions [INFO] [stderr] Adding uuid v0.6.5 (available: v1.17.0) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cf38b8e663f15db10ce49d7bbce02c99fc3dbc0c" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Blocking waiting for file lock on package cache [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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+cf38b8e663f15db10ce49d7bbce02c99fc3dbc0c" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 020c3ce87d6323c837af08ab186aee69fd77928bdec6276bcea1d8e471bc44f7 [INFO] running `Command { std: "docker" "start" "-a" "020c3ce87d6323c837af08ab186aee69fd77928bdec6276bcea1d8e471bc44f7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "020c3ce87d6323c837af08ab186aee69fd77928bdec6276bcea1d8e471bc44f7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "020c3ce87d6323c837af08ab186aee69fd77928bdec6276bcea1d8e471bc44f7", kill_on_drop: false }` [INFO] [stdout] 020c3ce87d6323c837af08ab186aee69fd77928bdec6276bcea1d8e471bc44f7 [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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+cf38b8e663f15db10ce49d7bbce02c99fc3dbc0c" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 9e1ddb77429390ec86a41d59c22aa193b8da4dd978ea61c67da2999808b26ce2 [INFO] running `Command { std: "docker" "start" "-a" "9e1ddb77429390ec86a41d59c22aa193b8da4dd978ea61c67da2999808b26ce2", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Compiling shlex v1.3.0 [INFO] [stderr] Compiling pkg-config v0.3.32 [INFO] [stderr] Compiling libc v0.2.174 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling serde v1.0.219 [INFO] [stderr] Compiling object v0.36.7 [INFO] [stderr] Compiling failure_derive v0.1.8 [INFO] [stderr] Compiling unicode-xid v0.2.6 [INFO] [stderr] Checking gimli v0.31.1 [INFO] [stderr] Checking adler2 v2.0.1 [INFO] [stderr] Compiling curl v0.4.48 [INFO] [stderr] Compiling serde_json v1.0.140 [INFO] [stderr] Checking rustc-demangle v0.1.25 [INFO] [stderr] Checking itoa v1.0.15 [INFO] [stderr] Checking ryu v1.0.20 [INFO] [stderr] Compiling syn v2.0.104 [INFO] [stderr] Checking openssl-probe v0.1.6 [INFO] [stderr] Checking miniz_oxide v0.8.9 [INFO] [stderr] Checking cfg-if v0.1.10 [INFO] [stderr] Compiling cc v1.2.27 [INFO] [stderr] Checking socket2 v0.5.10 [INFO] [stderr] Checking rand v0.4.6 [INFO] [stderr] Compiling openssl-sys v0.9.109 [INFO] [stderr] Compiling libz-sys v1.1.22 [INFO] [stderr] Compiling curl-sys v0.4.82+curl-8.14.1 [INFO] [stderr] Compiling serde_derive v1.0.219 [INFO] [stderr] Compiling synstructure v0.12.6 [INFO] [stderr] Checking addr2line v0.24.2 [INFO] [stderr] Checking uuid v0.6.5 [INFO] [stderr] Checking backtrace v0.3.75 [INFO] [stderr] Checking failure v0.1.8 [INFO] [stderr] Checking apns2 v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/types.rs:29:10 [INFO] [stdout] | [INFO] [stdout] 29 | #[derive(Fail, Debug)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_CollapseIdTooLongError` [INFO] [stdout] 30 | #[fail(display = "CollapseId too long (must be at most 64 bytes)")] [INFO] [stdout] 31 | pub struct CollapseIdTooLongError; [INFO] [stdout] | ---------------------- `CollapseIdTooLongError` 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: the lint level is defined here [INFO] [stdout] --> src/lib.rs:1:9 [INFO] [stdout] | [INFO] [stdout] 1 | #![deny(warnings)] [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] = note: `#[deny(non_local_definitions)]` implied by `#[deny(warnings)]` [INFO] [stdout] = note: this error originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/types.rs:29:10 [INFO] [stdout] | [INFO] [stdout] 29 | #[derive(Fail, Debug)] [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_CollapseIdTooLongError` [INFO] [stdout] 30 | #[fail(display = "CollapseId too long (must be at most 64 bytes)")] [INFO] [stdout] 31 | pub struct CollapseIdTooLongError; [INFO] [stdout] | ---------------------- `CollapseIdTooLongError` 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 error originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/error.rs:123:10 [INFO] [stdout] | [INFO] [stdout] 123 | #[derive(Fail, Serialize, Deserialize, Clone, Debug)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_ApiError` [INFO] [stdout] 124 | #[fail(display = "{} (status: {}", reason, status)] [INFO] [stdout] 125 | pub struct ApiError { [INFO] [stdout] | -------- `ApiError` 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 error originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/error.rs:123:10 [INFO] [stdout] | [INFO] [stdout] 123 | #[derive(Fail, Serialize, Deserialize, Clone, Debug)] [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_ApiError` [INFO] [stdout] 124 | #[fail(display = "{} (status: {}", reason, status)] [INFO] [stdout] 125 | pub struct ApiError { [INFO] [stdout] | -------- `ApiError` 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 error originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/error.rs:153:10 [INFO] [stdout] | [INFO] [stdout] 153 | #[derive(Fail, Debug)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_SendError` [INFO] [stdout] 154 | pub enum SendError { [INFO] [stdout] | --------- `SendError` 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 error originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/error.rs:153:10 [INFO] [stdout] | [INFO] [stdout] 153 | #[derive(Fail, Debug)] [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_SendError` [INFO] [stdout] 154 | pub enum SendError { [INFO] [stdout] | --------- `SendError` 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 error originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `apns2` (lib) due to 6 previous errors [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/types.rs:29:10 [INFO] [stdout] | [INFO] [stdout] 29 | #[derive(Fail, Debug)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_CollapseIdTooLongError` [INFO] [stdout] 30 | #[fail(display = "CollapseId too long (must be at most 64 bytes)")] [INFO] [stdout] 31 | pub struct CollapseIdTooLongError; [INFO] [stdout] | ---------------------- `CollapseIdTooLongError` 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: the lint level is defined here [INFO] [stdout] --> src/lib.rs:1:9 [INFO] [stdout] | [INFO] [stdout] 1 | #![deny(warnings)] [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] = note: `#[deny(non_local_definitions)]` implied by `#[deny(warnings)]` [INFO] [stdout] = note: this error originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/types.rs:29:10 [INFO] [stdout] | [INFO] [stdout] 29 | #[derive(Fail, Debug)] [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_CollapseIdTooLongError` [INFO] [stdout] 30 | #[fail(display = "CollapseId too long (must be at most 64 bytes)")] [INFO] [stdout] 31 | pub struct CollapseIdTooLongError; [INFO] [stdout] | ---------------------- `CollapseIdTooLongError` 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 error originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/error.rs:123:10 [INFO] [stdout] | [INFO] [stdout] 123 | #[derive(Fail, Serialize, Deserialize, Clone, Debug)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_ApiError` [INFO] [stdout] 124 | #[fail(display = "{} (status: {}", reason, status)] [INFO] [stdout] 125 | pub struct ApiError { [INFO] [stdout] | -------- `ApiError` 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 error originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/error.rs:123:10 [INFO] [stdout] | [INFO] [stdout] 123 | #[derive(Fail, Serialize, Deserialize, Clone, Debug)] [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_ApiError` [INFO] [stdout] 124 | #[fail(display = "{} (status: {}", reason, status)] [INFO] [stdout] 125 | pub struct ApiError { [INFO] [stdout] | -------- `ApiError` 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 error originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/error.rs:153:10 [INFO] [stdout] | [INFO] [stdout] 153 | #[derive(Fail, Debug)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_SendError` [INFO] [stdout] 154 | pub enum SendError { [INFO] [stdout] | --------- `SendError` 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 error originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/error.rs:153:10 [INFO] [stdout] | [INFO] [stdout] 153 | #[derive(Fail, Debug)] [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_SendError` [INFO] [stdout] 154 | pub enum SendError { [INFO] [stdout] | --------- `SendError` 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 error originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `apns2` (lib test) due to 6 previous errors [INFO] running `Command { std: "docker" "inspect" "9e1ddb77429390ec86a41d59c22aa193b8da4dd978ea61c67da2999808b26ce2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9e1ddb77429390ec86a41d59c22aa193b8da4dd978ea61c67da2999808b26ce2", kill_on_drop: false }` [INFO] [stdout] 9e1ddb77429390ec86a41d59c22aa193b8da4dd978ea61c67da2999808b26ce2