[INFO] fetching crate garage_net 2.0.0... [INFO] checking garage_net-2.0.0 against try#998b6603a58e47f42ccce7a67943234e96b6839e for pr-143170 [INFO] extracting crate garage_net 2.0.0 into /workspace/builds/worker-2-tc2/source [INFO] started tweaking crates.io crate garage_net 2.0.0 [INFO] finished tweaking crates.io crate garage_net 2.0.0 [INFO] tweaked toml for crates.io crate garage_net 2.0.0 written to /workspace/builds/worker-2-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate garage_net 2.0.0 on toolchain 998b6603a58e47f42ccce7a67943234e96b6839e [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+998b6603a58e47f42ccce7a67943234e96b6839e" "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" "+998b6603a58e47f42ccce7a67943234e96b6839e" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 113 packages to latest compatible versions [INFO] [stderr] Adding opentelemetry v0.17.0 (available: v0.30.0) [INFO] [stderr] Adding opentelemetry-contrib v0.9.0 (available: v0.22.0) [INFO] [stderr] Adding rand v0.8.5 (available: v0.9.1) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+998b6603a58e47f42ccce7a67943234e96b6839e" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+998b6603a58e47f42ccce7a67943234e96b6839e" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 8206880cd7ea84e3c9c68bdc5f2b0037fa5669262d796000d7107edce5d98216 [INFO] running `Command { std: "docker" "start" "-a" "8206880cd7ea84e3c9c68bdc5f2b0037fa5669262d796000d7107edce5d98216", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "8206880cd7ea84e3c9c68bdc5f2b0037fa5669262d796000d7107edce5d98216", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "8206880cd7ea84e3c9c68bdc5f2b0037fa5669262d796000d7107edce5d98216", kill_on_drop: false }` [INFO] [stdout] 8206880cd7ea84e3c9c68bdc5f2b0037fa5669262d796000d7107edce5d98216 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+998b6603a58e47f42ccce7a67943234e96b6839e" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 209364558d97865020ba88fba47908d57fdc3502992c5888d4fd2f9ed07e8dd3 [INFO] running `Command { std: "docker" "start" "-a" "209364558d97865020ba88fba47908d57fdc3502992c5888d4fd2f9ed07e8dd3", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.174 [INFO] [stderr] Compiling same-file v1.0.6 [INFO] [stderr] Compiling zerocopy v0.8.26 [INFO] [stderr] Compiling rustversion v1.0.21 [INFO] [stderr] Compiling cc v1.2.27 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling serde v1.0.219 [INFO] [stderr] Compiling syn v2.0.104 [INFO] [stderr] Compiling walkdir v2.5.0 [INFO] [stderr] Checking futures-io v0.3.31 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Checking futures-channel v0.3.31 [INFO] [stderr] Compiling proc-macro-error-attr v1.0.4 [INFO] [stderr] Checking cfg-if v1.0.1 [INFO] [stderr] Compiling proc-macro-error v1.0.4 [INFO] [stderr] Checking aho-corasick v1.1.3 [INFO] [stderr] Checking regex-syntax v0.8.5 [INFO] [stderr] Checking log v0.4.27 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Compiling err-derive v0.3.1 [INFO] [stderr] Checking byteorder v1.5.0 [INFO] [stderr] Checking mio v1.0.4 [INFO] [stderr] Compiling libsodium-sys v0.2.7 [INFO] [stderr] Checking signal-hook-registry v1.4.5 [INFO] [stderr] Checking getrandom v0.2.16 [INFO] [stderr] Checking socket2 v0.5.10 [INFO] [stderr] Checking regex-automata v0.4.9 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Compiling unicode-xid v0.2.6 [INFO] [stderr] Checking rmp v0.8.14 [INFO] [stderr] Checking is-terminal v0.4.16 [INFO] [stderr] Checking hex v0.4.3 [INFO] [stderr] Checking termcolor v1.4.1 [INFO] [stderr] Checking humantime v2.2.0 [INFO] [stderr] Checking arc-swap v1.7.1 [INFO] [stderr] Checking ppv-lite86 v0.2.21 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Compiling synstructure v0.12.6 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking regex v1.11.1 [INFO] [stderr] Compiling futures-macro v0.3.31 [INFO] [stderr] Compiling serde_derive v1.0.219 [INFO] [stderr] Compiling tokio-macros v2.5.0 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling pin-project-internal v1.1.10 [INFO] [stderr] Checking env_logger v0.10.2 [INFO] [stderr] Checking tokio v1.45.1 [INFO] [stderr] Checking pretty_env_logger v0.5.0 [INFO] [stderr] Checking futures-util v0.3.31 [INFO] [stderr] Checking pin-project v1.1.10 [INFO] [stderr] Checking futures-executor v0.3.31 [INFO] [stderr] Checking futures v0.3.31 [INFO] [stderr] Checking tokio-stream v0.1.17 [INFO] [stderr] Checking tokio-util v0.7.15 [INFO] [stderr] Checking rmp-serde v1.3.0 [INFO] [stderr] Checking kuska-sodiumoxide v0.2.5-0 [INFO] [stderr] Checking kuska-handshake v0.2.0 [INFO] [stderr] Checking garage_net v2.0.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> error.rs:6:17 [INFO] [stdout] | [INFO] [stdout] 6 | #[derive(Debug, Error)] [INFO] [stdout] | ^---- [INFO] [stdout] | | [INFO] [stdout] | `Error` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_std_error_Error_FOR_Error` [INFO] [stdout] 7 | pub enum Error { [INFO] [stdout] | ----- `Error` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Error` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Error` may come from an old version of the `err_derive` crate, try updating your dependency with `cargo update -p err_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 `Error` (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] --> error.rs:6:17 [INFO] [stdout] | [INFO] [stdout] 6 | #[derive(Debug, Error)] [INFO] [stdout] | ^---- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_core_fmt_Display_FOR_Error` [INFO] [stdout] 7 | pub enum Error { [INFO] [stdout] | ----- `Error` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Error` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Error` may come from an old version of the `err_derive` crate, try updating your dependency with `cargo update -p err_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 `Error` (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] --> error.rs:6:17 [INFO] [stdout] | [INFO] [stdout] 6 | #[derive(Debug, Error)] [INFO] [stdout] | ^---- [INFO] [stdout] | | [INFO] [stdout] | `From` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_core_convert_From_io_Error_FOR_Error` [INFO] [stdout] 7 | pub enum Error { [INFO] [stdout] | ----- `Error` is not local [INFO] [stdout] 8 | #[error(display = "IO error: {}", _0)] [INFO] [stdout] 9 | Io(#[error(source)] io::Error), [INFO] [stdout] | --------- `Error` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Error` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Error` may come from an old version of the `err_derive` crate, try updating your dependency with `cargo update -p err_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 `Error` (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] --> error.rs:6:17 [INFO] [stdout] | [INFO] [stdout] 6 | #[derive(Debug, Error)] [INFO] [stdout] | ^---- [INFO] [stdout] | | [INFO] [stdout] | `From` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_core_convert_From_rmp_serde_encode_Error_FOR_Error` [INFO] [stdout] 7 | pub enum Error { [INFO] [stdout] | ----- `Error` is not local [INFO] [stdout] ... [INFO] [stdout] 12 | RMPEncode(#[error(source)] rmp_serde::encode::Error), [INFO] [stdout] | ------------------------ `Error` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Error` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Error` may come from an old version of the `err_derive` crate, try updating your dependency with `cargo update -p err_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 `Error` (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] --> error.rs:6:17 [INFO] [stdout] | [INFO] [stdout] 6 | #[derive(Debug, Error)] [INFO] [stdout] | ^---- [INFO] [stdout] | | [INFO] [stdout] | `From` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_core_convert_From_rmp_serde_decode_Error_FOR_Error` [INFO] [stdout] 7 | pub enum Error { [INFO] [stdout] | ----- `Error` is not local [INFO] [stdout] ... [INFO] [stdout] 14 | RMPDecode(#[error(source)] rmp_serde::decode::Error), [INFO] [stdout] | ------------------------ `Error` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Error` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Error` may come from an old version of the `err_derive` crate, try updating your dependency with `cargo update -p err_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 `Error` (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] --> error.rs:6:17 [INFO] [stdout] | [INFO] [stdout] 6 | #[derive(Debug, Error)] [INFO] [stdout] | ^---- [INFO] [stdout] | | [INFO] [stdout] | `From` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_core_convert_From_tokio_task_JoinError_FOR_Error` [INFO] [stdout] 7 | pub enum Error { [INFO] [stdout] | ----- `Error` is not local [INFO] [stdout] ... [INFO] [stdout] 17 | TokioJoin(#[error(source)] tokio::task::JoinError), [INFO] [stdout] | ---------------------- `JoinError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Error` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Error` may come from an old version of the `err_derive` crate, try updating your dependency with `cargo update -p err_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 `Error` (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] --> error.rs:6:17 [INFO] [stdout] | [INFO] [stdout] 6 | #[derive(Debug, Error)] [INFO] [stdout] | ^---- [INFO] [stdout] | | [INFO] [stdout] | `From` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_core_convert_From_tokio_sync_oneshot_error_RecvError_FOR_Error` [INFO] [stdout] 7 | pub enum Error { [INFO] [stdout] | ----- `Error` is not local [INFO] [stdout] ... [INFO] [stdout] 20 | OneshotRecv(#[error(source)] tokio::sync::oneshot::error::RecvError), [INFO] [stdout] | -------------------------------------- `RecvError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Error` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Error` may come from an old version of the `err_derive` crate, try updating your dependency with `cargo update -p err_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 `Error` (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] --> error.rs:6:17 [INFO] [stdout] | [INFO] [stdout] 6 | #[derive(Debug, Error)] [INFO] [stdout] | ^---- [INFO] [stdout] | | [INFO] [stdout] | `From` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_core_convert_From_kuska_handshake_async_std_Error_FOR_Error` [INFO] [stdout] 7 | pub enum Error { [INFO] [stdout] | ----- `Error` is not local [INFO] [stdout] ... [INFO] [stdout] 23 | Handshake(#[error(source)] kuska_handshake::async_std::Error), [INFO] [stdout] | --------------------------------- `Error` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Error` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Error` may come from an old version of the `err_derive` crate, try updating your dependency with `cargo update -p err_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 `Error` (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] --> error.rs:6:17 [INFO] [stdout] | [INFO] [stdout] 6 | #[derive(Debug, Error)] [INFO] [stdout] | ^---- [INFO] [stdout] | | [INFO] [stdout] | `From` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_core_convert_From_std_string_FromUtf8Error_FOR_Error` [INFO] [stdout] 7 | pub enum Error { [INFO] [stdout] | ----- `Error` is not local [INFO] [stdout] ... [INFO] [stdout] 26 | UTF8(#[error(source)] std::string::FromUtf8Error), [INFO] [stdout] | -------------------------- `FromUtf8Error` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Error` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Error` may come from an old version of the `err_derive` crate, try updating your dependency with `cargo update -p err_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 `Error` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> endpoint.rs:162:12 [INFO] [stdout] | [INFO] [stdout] 162 | fn handle(&self, req_enc: ReqEnc, from: NodeID) -> BoxFuture>; [INFO] [stdout] | ^^^^^ this lifetime flows to the output --------------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 162 | fn handle(&self, req_enc: ReqEnc, from: NodeID) -> BoxFuture<'_, Result>; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> endpoint.rs:178:12 [INFO] [stdout] | [INFO] [stdout] 178 | fn handle(&self, req_enc: ReqEnc, from: NodeID) -> BoxFuture> { [INFO] [stdout] | ^^^^^ this lifetime flows to the output --------------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 178 | fn handle(&self, req_enc: ReqEnc, from: NodeID) -> BoxFuture<'_, Result> { [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] --> error.rs:6:17 [INFO] [stdout] | [INFO] [stdout] 6 | #[derive(Debug, Error)] [INFO] [stdout] | ^---- [INFO] [stdout] | | [INFO] [stdout] | `Error` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_std_error_Error_FOR_Error` [INFO] [stdout] 7 | pub enum Error { [INFO] [stdout] | ----- `Error` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Error` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Error` may come from an old version of the `err_derive` crate, try updating your dependency with `cargo update -p err_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 `Error` (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] --> error.rs:6:17 [INFO] [stdout] | [INFO] [stdout] 6 | #[derive(Debug, Error)] [INFO] [stdout] | ^---- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_core_fmt_Display_FOR_Error` [INFO] [stdout] 7 | pub enum Error { [INFO] [stdout] | ----- `Error` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Error` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Error` may come from an old version of the `err_derive` crate, try updating your dependency with `cargo update -p err_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 `Error` (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] --> error.rs:6:17 [INFO] [stdout] | [INFO] [stdout] 6 | #[derive(Debug, Error)] [INFO] [stdout] | ^---- [INFO] [stdout] | | [INFO] [stdout] | `From` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_core_convert_From_io_Error_FOR_Error` [INFO] [stdout] 7 | pub enum Error { [INFO] [stdout] | ----- `Error` is not local [INFO] [stdout] 8 | #[error(display = "IO error: {}", _0)] [INFO] [stdout] 9 | Io(#[error(source)] io::Error), [INFO] [stdout] | --------- `Error` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Error` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Error` may come from an old version of the `err_derive` crate, try updating your dependency with `cargo update -p err_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 `Error` (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] --> error.rs:6:17 [INFO] [stdout] | [INFO] [stdout] 6 | #[derive(Debug, Error)] [INFO] [stdout] | ^---- [INFO] [stdout] | | [INFO] [stdout] | `From` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_core_convert_From_rmp_serde_encode_Error_FOR_Error` [INFO] [stdout] 7 | pub enum Error { [INFO] [stdout] | ----- `Error` is not local [INFO] [stdout] ... [INFO] [stdout] 12 | RMPEncode(#[error(source)] rmp_serde::encode::Error), [INFO] [stdout] | ------------------------ `Error` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Error` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Error` may come from an old version of the `err_derive` crate, try updating your dependency with `cargo update -p err_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 `Error` (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] --> error.rs:6:17 [INFO] [stdout] | [INFO] [stdout] 6 | #[derive(Debug, Error)] [INFO] [stdout] | ^---- [INFO] [stdout] | | [INFO] [stdout] | `From` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_core_convert_From_rmp_serde_decode_Error_FOR_Error` [INFO] [stdout] 7 | pub enum Error { [INFO] [stdout] | ----- `Error` is not local [INFO] [stdout] ... [INFO] [stdout] 14 | RMPDecode(#[error(source)] rmp_serde::decode::Error), [INFO] [stdout] | ------------------------ `Error` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Error` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Error` may come from an old version of the `err_derive` crate, try updating your dependency with `cargo update -p err_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 `Error` (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] --> error.rs:6:17 [INFO] [stdout] | [INFO] [stdout] 6 | #[derive(Debug, Error)] [INFO] [stdout] | ^---- [INFO] [stdout] | | [INFO] [stdout] | `From` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_core_convert_From_tokio_task_JoinError_FOR_Error` [INFO] [stdout] 7 | pub enum Error { [INFO] [stdout] | ----- `Error` is not local [INFO] [stdout] ... [INFO] [stdout] 17 | TokioJoin(#[error(source)] tokio::task::JoinError), [INFO] [stdout] | ---------------------- `JoinError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Error` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Error` may come from an old version of the `err_derive` crate, try updating your dependency with `cargo update -p err_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 `Error` (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] --> error.rs:6:17 [INFO] [stdout] | [INFO] [stdout] 6 | #[derive(Debug, Error)] [INFO] [stdout] | ^---- [INFO] [stdout] | | [INFO] [stdout] | `From` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_core_convert_From_tokio_sync_oneshot_error_RecvError_FOR_Error` [INFO] [stdout] 7 | pub enum Error { [INFO] [stdout] | ----- `Error` is not local [INFO] [stdout] ... [INFO] [stdout] 20 | OneshotRecv(#[error(source)] tokio::sync::oneshot::error::RecvError), [INFO] [stdout] | -------------------------------------- `RecvError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Error` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Error` may come from an old version of the `err_derive` crate, try updating your dependency with `cargo update -p err_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 `Error` (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] --> error.rs:6:17 [INFO] [stdout] | [INFO] [stdout] 6 | #[derive(Debug, Error)] [INFO] [stdout] | ^---- [INFO] [stdout] | | [INFO] [stdout] | `From` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_core_convert_From_kuska_handshake_async_std_Error_FOR_Error` [INFO] [stdout] 7 | pub enum Error { [INFO] [stdout] | ----- `Error` is not local [INFO] [stdout] ... [INFO] [stdout] 23 | Handshake(#[error(source)] kuska_handshake::async_std::Error), [INFO] [stdout] | --------------------------------- `Error` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Error` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Error` may come from an old version of the `err_derive` crate, try updating your dependency with `cargo update -p err_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 `Error` (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] --> error.rs:6:17 [INFO] [stdout] | [INFO] [stdout] 6 | #[derive(Debug, Error)] [INFO] [stdout] | ^---- [INFO] [stdout] | | [INFO] [stdout] | `From` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_core_convert_From_std_string_FromUtf8Error_FOR_Error` [INFO] [stdout] 7 | pub enum Error { [INFO] [stdout] | ----- `Error` is not local [INFO] [stdout] ... [INFO] [stdout] 26 | UTF8(#[error(source)] std::string::FromUtf8Error), [INFO] [stdout] | -------------------------- `FromUtf8Error` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Error` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Error` may come from an old version of the `err_derive` crate, try updating your dependency with `cargo update -p err_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 `Error` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> endpoint.rs:162:12 [INFO] [stdout] | [INFO] [stdout] 162 | fn handle(&self, req_enc: ReqEnc, from: NodeID) -> BoxFuture>; [INFO] [stdout] | ^^^^^ this lifetime flows to the output --------------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 162 | fn handle(&self, req_enc: ReqEnc, from: NodeID) -> BoxFuture<'_, Result>; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> endpoint.rs:178:12 [INFO] [stdout] | [INFO] [stdout] 178 | fn handle(&self, req_enc: ReqEnc, from: NodeID) -> BoxFuture> { [INFO] [stdout] | ^^^^^ this lifetime flows to the output --------------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 178 | fn handle(&self, req_enc: ReqEnc, from: NodeID) -> BoxFuture<'_, Result> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 52s [INFO] running `Command { std: "docker" "inspect" "209364558d97865020ba88fba47908d57fdc3502992c5888d4fd2f9ed07e8dd3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "209364558d97865020ba88fba47908d57fdc3502992c5888d4fd2f9ed07e8dd3", kill_on_drop: false }` [INFO] [stdout] 209364558d97865020ba88fba47908d57fdc3502992c5888d4fd2f9ed07e8dd3