[INFO] fetching crate lambda_runtime_errors_derive 0.1.1... [INFO] testing lambda_runtime_errors_derive-0.1.1 against try#b83b707f97d809763b7861afa7638871f3339a33 for pr-145838-1 [INFO] extracting crate lambda_runtime_errors_derive 0.1.1 into /workspace/builds/worker-4-tc2/source [INFO] started tweaking crates.io crate lambda_runtime_errors_derive 0.1.1 [INFO] finished tweaking crates.io crate lambda_runtime_errors_derive 0.1.1 [INFO] tweaked toml for crates.io crate lambda_runtime_errors_derive 0.1.1 written to /workspace/builds/worker-4-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate lambda_runtime_errors_derive 0.1.1 on toolchain b83b707f97d809763b7861afa7638871f3339a33 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b83b707f97d809763b7861afa7638871f3339a33" "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" "+b83b707f97d809763b7861afa7638871f3339a33" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 41 packages to latest compatible versions [INFO] [stderr] Adding proc-macro2 v0.4.30 (available: v1.0.101) [INFO] [stderr] Adding quote v0.6.13 (available: v1.0.40) [INFO] [stderr] Adding syn v0.15.44 (available: v2.0.106) [INFO] [stderr] Adding synstructure v0.10.2 (available: v0.13.2) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b83b707f97d809763b7861afa7638871f3339a33" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+b83b707f97d809763b7861afa7638871f3339a33" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 8ca736fce3b0a24cb92d1fe80e58e60931392098bc00b276430a4bf3a7be5ba2 [INFO] running `Command { std: "docker" "start" "-a" "8ca736fce3b0a24cb92d1fe80e58e60931392098bc00b276430a4bf3a7be5ba2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "8ca736fce3b0a24cb92d1fe80e58e60931392098bc00b276430a4bf3a7be5ba2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "8ca736fce3b0a24cb92d1fe80e58e60931392098bc00b276430a4bf3a7be5ba2", kill_on_drop: false }` [INFO] [stdout] 8ca736fce3b0a24cb92d1fe80e58e60931392098bc00b276430a4bf3a7be5ba2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+b83b707f97d809763b7861afa7638871f3339a33" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] bfabc671aeac0d1b8915d13a75c3ebe3dd050b5ebb65a7421e8fd28ef55aa717 [INFO] running `Command { std: "docker" "start" "-a" "bfabc671aeac0d1b8915d13a75c3ebe3dd050b5ebb65a7421e8fd28ef55aa717", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v0.4.30 [INFO] [stderr] Compiling unicode-xid v0.1.0 [INFO] [stderr] Compiling syn v0.15.44 [INFO] [stderr] Compiling quote v0.6.13 [INFO] [stderr] Compiling synstructure v0.10.2 [INFO] [stderr] Compiling lambda_runtime_errors_derive v0.1.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/lib.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 20 | (quote! { [INFO] [stdout] | ^ [INFO] [stdout] 21 | #err_impl [INFO] [stdout] 22 | }) [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 20 ~ quote! { [INFO] [stdout] 21 | #err_impl [INFO] [stdout] 22 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 5.20s [INFO] running `Command { std: "docker" "inspect" "bfabc671aeac0d1b8915d13a75c3ebe3dd050b5ebb65a7421e8fd28ef55aa717", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "bfabc671aeac0d1b8915d13a75c3ebe3dd050b5ebb65a7421e8fd28ef55aa717", kill_on_drop: false }` [INFO] [stdout] bfabc671aeac0d1b8915d13a75c3ebe3dd050b5ebb65a7421e8fd28ef55aa717 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+b83b707f97d809763b7861afa7638871f3339a33" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 94310d2a08c06bdc5dfe8dc7046caa182158e25a7d9ff922698d4f9ced4e0ab4 [INFO] running `Command { std: "docker" "start" "-a" "94310d2a08c06bdc5dfe8dc7046caa182158e25a7d9ff922698d4f9ced4e0ab4", kill_on_drop: false }` [INFO] [stderr] Compiling unicode-xid v0.1.0 [INFO] [stderr] Compiling serde v1.0.219 [INFO] [stderr] Compiling proc-macro2 v0.4.30 [INFO] [stderr] Compiling syn v0.15.44 [INFO] [stderr] Compiling libc v0.2.175 [INFO] [stderr] Compiling quote v0.6.13 [INFO] [stderr] Compiling backtrace v0.3.75 [INFO] [stderr] Compiling failure v0.1.8 [INFO] [stderr] Compiling synstructure v0.10.2 [INFO] [stderr] Compiling lambda_runtime_errors_derive v0.1.1 [INFO] [stderr] Compiling lambda_runtime_errors_derive v0.1.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/lib.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 20 | (quote! { [INFO] [stdout] | ^ [INFO] [stdout] 21 | #err_impl [INFO] [stdout] 22 | }) [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 20 ~ quote! { [INFO] [stdout] 21 | #err_impl [INFO] [stdout] 22 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling serde_json v1.0.143 [INFO] [stderr] Compiling lambda_runtime_errors v0.1.1 [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/lib.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 20 | (quote! { [INFO] [stdout] | ^ [INFO] [stdout] 21 | #err_impl [INFO] [stdout] 22 | }) [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 20 ~ quote! { [INFO] [stdout] 21 | #err_impl [INFO] [stdout] 22 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> tests/tests.rs:26:32 [INFO] [stdout] | [INFO] [stdout] 26 | fn cause(&self) -> Option<&Fail> { [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)]` (part of `#[warn(rust_2021_compatibility)]`) on by default [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 26 | fn cause(&self) -> Option<&dyn Fail> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `err` [INFO] [stdout] --> tests/tests.rs:73:9 [INFO] [stdout] | [INFO] [stdout] 73 | let err = FailureCustomWithKind::from(FailureErrorKind::FirstVariant); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_err` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SecondVariant` is never constructed [INFO] [stdout] --> tests/tests.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 18 | enum FailureErrorKind { [INFO] [stdout] | ---------------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 22 | SecondVariant(String), [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FailureErrorKind` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `kind` is never used [INFO] [stdout] --> tests/tests.rs:42:12 [INFO] [stdout] | [INFO] [stdout] 41 | impl FailureCustomWithKind { [INFO] [stdout] | -------------------------- method in this implementation [INFO] [stdout] 42 | pub fn kind(&self) -> FailureErrorKind { [INFO] [stdout] | ^^^^ [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] --> tests/tests.rs:5:10 [INFO] [stdout] | [INFO] [stdout] 5 | #[derive(LambdaErrorExt)] [INFO] [stdout] | ^------------- [INFO] [stdout] | | [INFO] [stdout] | `LambdaErrorExt` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_LambdaErrorExt_FOR_BasicCustomError` [INFO] [stdout] 6 | struct BasicCustomError; [INFO] [stdout] | ---------------- `BasicCustomError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `LambdaErrorExt` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `LambdaErrorExt` may come from an old version of the `lambda_runtime_errors_derive` crate, try updating your dependency with `cargo update -p lambda_runtime_errors_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: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `LambdaErrorExt` (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] --> tests/tests.rs:8:10 [INFO] [stdout] | [INFO] [stdout] 8 | #[derive(Fail, LambdaErrorExt, 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_FailureCustomError` [INFO] [stdout] 9 | #[fail(display = "Input was invalid UTF-8")] [INFO] [stdout] 10 | struct FailureCustomError; [INFO] [stdout] | ------------------ `FailureCustomError` 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 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] --> tests/tests.rs:8:10 [INFO] [stdout] | [INFO] [stdout] 8 | #[derive(Fail, LambdaErrorExt, 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_FailureCustomError` [INFO] [stdout] 9 | #[fail(display = "Input was invalid UTF-8")] [INFO] [stdout] 10 | struct FailureCustomError; [INFO] [stdout] | ------------------ `FailureCustomError` 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 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] --> tests/tests.rs:8:16 [INFO] [stdout] | [INFO] [stdout] 8 | #[derive(Fail, LambdaErrorExt, Debug)] [INFO] [stdout] | ^------------- [INFO] [stdout] | | [INFO] [stdout] | `LambdaErrorExt` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_LambdaErrorExt_FOR_FailureCustomError` [INFO] [stdout] 9 | #[fail(display = "Input was invalid UTF-8")] [INFO] [stdout] 10 | struct FailureCustomError; [INFO] [stdout] | ------------------ `FailureCustomError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `LambdaErrorExt` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `LambdaErrorExt` may come from an old version of the `lambda_runtime_errors_derive` crate, try updating your dependency with `cargo update -p lambda_runtime_errors_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 warning originates in the derive macro `LambdaErrorExt` (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] --> tests/tests.rs:12:17 [INFO] [stdout] | [INFO] [stdout] 12 | #[derive(Debug, LambdaErrorExt)] [INFO] [stdout] | ^------------- [INFO] [stdout] | | [INFO] [stdout] | `LambdaErrorExt` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_LambdaErrorExt_FOR_FailureCustomWithKind` [INFO] [stdout] 13 | struct FailureCustomWithKind { [INFO] [stdout] | --------------------- `FailureCustomWithKind` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `LambdaErrorExt` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `LambdaErrorExt` may come from an old version of the `lambda_runtime_errors_derive` crate, try updating your dependency with `cargo update -p lambda_runtime_errors_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 warning originates in the derive macro `LambdaErrorExt` (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] --> tests/tests.rs:17:39 [INFO] [stdout] | [INFO] [stdout] 17 | #[derive(Clone, Eq, PartialEq, Debug, Fail, LambdaErrorExt)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_FailureErrorKind` [INFO] [stdout] 18 | enum FailureErrorKind { [INFO] [stdout] | ---------------- `FailureErrorKind` 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 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] --> tests/tests.rs:17:39 [INFO] [stdout] | [INFO] [stdout] 17 | #[derive(Clone, Eq, PartialEq, Debug, Fail, LambdaErrorExt)] [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_FailureErrorKind` [INFO] [stdout] 18 | enum FailureErrorKind { [INFO] [stdout] | ---------------- `FailureErrorKind` 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 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] --> tests/tests.rs:17:45 [INFO] [stdout] | [INFO] [stdout] 17 | #[derive(Clone, Eq, PartialEq, Debug, Fail, LambdaErrorExt)] [INFO] [stdout] | ^------------- [INFO] [stdout] | | [INFO] [stdout] | `LambdaErrorExt` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_LambdaErrorExt_FOR_FailureErrorKind` [INFO] [stdout] 18 | enum FailureErrorKind { [INFO] [stdout] | ---------------- `FailureErrorKind` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `LambdaErrorExt` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `LambdaErrorExt` may come from an old version of the `lambda_runtime_errors_derive` crate, try updating your dependency with `cargo update -p lambda_runtime_errors_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 warning originates in the derive macro `LambdaErrorExt` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 10.02s [INFO] running `Command { std: "docker" "inspect" "94310d2a08c06bdc5dfe8dc7046caa182158e25a7d9ff922698d4f9ced4e0ab4", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "94310d2a08c06bdc5dfe8dc7046caa182158e25a7d9ff922698d4f9ced4e0ab4", kill_on_drop: false }` [INFO] [stdout] 94310d2a08c06bdc5dfe8dc7046caa182158e25a7d9ff922698d4f9ced4e0ab4 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+b83b707f97d809763b7861afa7638871f3339a33" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] b124817289b4b81fbc13ee6a3930bd8bc92bab66601aad0fb1628908fb1ad70b [INFO] running `Command { std: "docker" "start" "-a" "b124817289b4b81fbc13ee6a3930bd8bc92bab66601aad0fb1628908fb1ad70b", kill_on_drop: false }` [INFO] [stderr] warning: unnecessary parentheses around block return value [INFO] [stderr] --> src/lib.rs:20:5 [INFO] [stderr] | [INFO] [stderr] 20 | (quote! { [INFO] [stderr] | ^ [INFO] [stderr] 21 | #err_impl [INFO] [stderr] 22 | }) [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 20 ~ quote! { [INFO] [stderr] 21 | #err_impl [INFO] [stderr] 22 ~ } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: `lambda_runtime_errors_derive` (lib) generated 1 warning (run `cargo fix --lib -p lambda_runtime_errors_derive` to apply 1 suggestion) [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> tests/tests.rs:26:32 [INFO] [stderr] | [INFO] [stderr] 26 | fn cause(&self) -> Option<&Fail> { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default [INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 26 | fn cause(&self) -> Option<&dyn Fail> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `err` [INFO] [stderr] --> tests/tests.rs:73:9 [INFO] [stderr] | [INFO] [stderr] 73 | let err = FailureCustomWithKind::from(FailureErrorKind::FirstVariant); [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_err` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: variant `SecondVariant` is never constructed [INFO] [stderr] --> tests/tests.rs:22:5 [INFO] [stderr] | [INFO] [stderr] 18 | enum FailureErrorKind { [INFO] [stderr] | ---------------- variant in this enum [INFO] [stderr] ... [INFO] [stderr] 22 | SecondVariant(String), [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `FailureErrorKind` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: method `kind` is never used [INFO] [stderr] --> tests/tests.rs:42:12 [INFO] [stderr] | [INFO] [stderr] 41 | impl FailureCustomWithKind { [INFO] [stderr] | -------------------------- method in this implementation [INFO] [stderr] 42 | pub fn kind(&self) -> FailureErrorKind { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> tests/tests.rs:5:10 [INFO] [stderr] | [INFO] [stderr] 5 | #[derive(LambdaErrorExt)] [INFO] [stderr] | ^------------- [INFO] [stderr] | | [INFO] [stderr] | `LambdaErrorExt` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_DERIVE_LambdaErrorExt_FOR_BasicCustomError` [INFO] [stderr] 6 | struct BasicCustomError; [INFO] [stderr] | ---------------- `BasicCustomError` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `LambdaErrorExt` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `LambdaErrorExt` may come from an old version of the `lambda_runtime_errors_derive` crate, try updating your dependency with `cargo update -p lambda_runtime_errors_derive` [INFO] [stderr] = 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] [stderr] = 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] [stderr] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stderr] = note: this warning originates in the derive macro `LambdaErrorExt` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> tests/tests.rs:8:10 [INFO] [stderr] | [INFO] [stderr] 8 | #[derive(Fail, LambdaErrorExt, Debug)] [INFO] [stderr] | ^--- [INFO] [stderr] | | [INFO] [stderr] | `Fail` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_FailureCustomError` [INFO] [stderr] 9 | #[fail(display = "Input was invalid UTF-8")] [INFO] [stderr] 10 | struct FailureCustomError; [INFO] [stderr] | ------------------ `FailureCustomError` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = 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] [stderr] = 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] [stderr] = 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] [stderr] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> tests/tests.rs:8:10 [INFO] [stderr] | [INFO] [stderr] 8 | #[derive(Fail, LambdaErrorExt, Debug)] [INFO] [stderr] | ^--- [INFO] [stderr] | | [INFO] [stderr] | `Display` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_FailureCustomError` [INFO] [stderr] 9 | #[fail(display = "Input was invalid UTF-8")] [INFO] [stderr] 10 | struct FailureCustomError; [INFO] [stderr] | ------------------ `FailureCustomError` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = 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] [stderr] = 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] [stderr] = 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] [stderr] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> tests/tests.rs:8:16 [INFO] [stderr] | [INFO] [stderr] 8 | #[derive(Fail, LambdaErrorExt, Debug)] [INFO] [stderr] | ^------------- [INFO] [stderr] | | [INFO] [stderr] | `LambdaErrorExt` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_DERIVE_LambdaErrorExt_FOR_FailureCustomError` [INFO] [stderr] 9 | #[fail(display = "Input was invalid UTF-8")] [INFO] [stderr] 10 | struct FailureCustomError; [INFO] [stderr] | ------------------ `FailureCustomError` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `LambdaErrorExt` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `LambdaErrorExt` may come from an old version of the `lambda_runtime_errors_derive` crate, try updating your dependency with `cargo update -p lambda_runtime_errors_derive` [INFO] [stderr] = 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] [stderr] = 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] [stderr] = note: this warning originates in the derive macro `LambdaErrorExt` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> tests/tests.rs:12:17 [INFO] [stderr] | [INFO] [stderr] 12 | #[derive(Debug, LambdaErrorExt)] [INFO] [stderr] | ^------------- [INFO] [stderr] | | [INFO] [stderr] | `LambdaErrorExt` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_DERIVE_LambdaErrorExt_FOR_FailureCustomWithKind` [INFO] [stderr] 13 | struct FailureCustomWithKind { [INFO] [stderr] | --------------------- `FailureCustomWithKind` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `LambdaErrorExt` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `LambdaErrorExt` may come from an old version of the `lambda_runtime_errors_derive` crate, try updating your dependency with `cargo update -p lambda_runtime_errors_derive` [INFO] [stderr] = 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] [stderr] = 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] [stderr] = note: this warning originates in the derive macro `LambdaErrorExt` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> tests/tests.rs:17:39 [INFO] [stderr] | [INFO] [stderr] 17 | #[derive(Clone, Eq, PartialEq, Debug, Fail, LambdaErrorExt)] [INFO] [stderr] | ^--- [INFO] [stderr] | | [INFO] [stderr] | `Fail` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_FailureErrorKind` [INFO] [stderr] 18 | enum FailureErrorKind { [INFO] [stderr] | ---------------- `FailureErrorKind` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = 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] [stderr] = 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] [stderr] = 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] [stderr] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> tests/tests.rs:17:39 [INFO] [stderr] | [INFO] [stderr] 17 | #[derive(Clone, Eq, PartialEq, Debug, Fail, LambdaErrorExt)] [INFO] [stderr] | ^--- [INFO] [stderr] | | [INFO] [stderr] | `Display` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_FailureErrorKind` [INFO] [stderr] 18 | enum FailureErrorKind { [INFO] [stderr] | ---------------- `FailureErrorKind` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = 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] [stderr] = 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] [stderr] = 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] [stderr] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> tests/tests.rs:17:45 [INFO] [stderr] | [INFO] [stderr] 17 | #[derive(Clone, Eq, PartialEq, Debug, Fail, LambdaErrorExt)] [INFO] [stderr] | ^------------- [INFO] [stderr] | | [INFO] [stderr] | `LambdaErrorExt` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_DERIVE_LambdaErrorExt_FOR_FailureErrorKind` [INFO] [stderr] 18 | enum FailureErrorKind { [INFO] [stderr] | ---------------- `FailureErrorKind` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `LambdaErrorExt` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `LambdaErrorExt` may come from an old version of the `lambda_runtime_errors_derive` crate, try updating your dependency with `cargo update -p lambda_runtime_errors_derive` [INFO] [stderr] = 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] [stderr] = 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] [stderr] = note: this warning originates in the derive macro `LambdaErrorExt` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: `lambda_runtime_errors_derive` (lib test) generated 1 warning (1 duplicate) [INFO] [stderr] warning: `lambda_runtime_errors_derive` (test "tests") generated 12 warnings (run `cargo fix --test "tests"` to apply 1 suggestion) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.12s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/lambda_runtime_errors_derive-57d86a7c024019d4) [INFO] [stdout] [INFO] [stderr] Running tests/tests.rs (/opt/rustwide/target/debug/deps/tests-2dc438814e36184a) [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 3 tests [INFO] [stdout] test fail_variant_first ... ok [INFO] [stdout] test fail_custom_error ... ok [INFO] [stdout] test simple_error_type ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Doc-tests lambda_runtime_errors_derive [INFO] [stderr] warning: unnecessary parentheses around block return value [INFO] [stderr] --> src/lib.rs:20:5 [INFO] [stderr] | [INFO] [stderr] 20 | (quote! { [INFO] [stderr] | ^ [INFO] [stderr] 21 | #err_impl [INFO] [stderr] 22 | }) [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 20 ~ quote! { [INFO] [stderr] 21 | #err_impl [INFO] [stderr] 22 ~ } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: 1 warning emitted [INFO] [stderr] [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "b124817289b4b81fbc13ee6a3930bd8bc92bab66601aad0fb1628908fb1ad70b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b124817289b4b81fbc13ee6a3930bd8bc92bab66601aad0fb1628908fb1ad70b", kill_on_drop: false }` [INFO] [stdout] b124817289b4b81fbc13ee6a3930bd8bc92bab66601aad0fb1628908fb1ad70b