[INFO] fetching crate ya-relay-stack 0.5.1... [INFO] testing ya-relay-stack-0.5.1 against try#b83b707f97d809763b7861afa7638871f3339a33 for pr-145838-1 [INFO] extracting crate ya-relay-stack 0.5.1 into /workspace/builds/worker-0-tc2/source [INFO] started tweaking crates.io crate ya-relay-stack 0.5.1 [INFO] finished tweaking crates.io crate ya-relay-stack 0.5.1 [INFO] tweaked toml for crates.io crate ya-relay-stack 0.5.1 written to /workspace/builds/worker-0-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate ya-relay-stack 0.5.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 96 packages to latest compatible versions [INFO] [stderr] Adding derive_more v0.99.20 (available: v2.0.1) [INFO] [stderr] Adding num-derive v0.3.3 (available: v0.4.2) [INFO] [stderr] Adding rand v0.8.5 (available: v0.9.2) [INFO] [stderr] Adding sha3 v0.8.2 (available: v0.10.8) [INFO] [stderr] Adding smoltcp v0.10.0 (available: v0.12.0) [INFO] [stderr] Adding thiserror v1.0.69 (available: v2.0.16) [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] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+b83b707f97d809763b7861afa7638871f3339a33" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 8bd0b5556fb8ea9489c69b9edde1ecab594848f1b1d43216e2ed050c1b696710 [INFO] running `Command { std: "docker" "start" "-a" "8bd0b5556fb8ea9489c69b9edde1ecab594848f1b1d43216e2ed050c1b696710", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "8bd0b5556fb8ea9489c69b9edde1ecab594848f1b1d43216e2ed050c1b696710", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "8bd0b5556fb8ea9489c69b9edde1ecab594848f1b1d43216e2ed050c1b696710", kill_on_drop: false }` [INFO] [stdout] 8bd0b5556fb8ea9489c69b9edde1ecab594848f1b1d43216e2ed050c1b696710 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+b83b707f97d809763b7861afa7638871f3339a33" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 4b81f9872d5f35842374eacdc85cdcea1514542e0ef62ec1a7bd4e3d84fb5c8d [INFO] running `Command { std: "docker" "start" "-a" "4b81f9872d5f35842374eacdc85cdcea1514542e0ef62ec1a7bd4e3d84fb5c8d", kill_on_drop: false }` [INFO] [stderr] Compiling syn v2.0.106 [INFO] [stderr] Compiling semver v1.0.26 [INFO] [stderr] Compiling futures-channel v0.3.31 [INFO] [stderr] Compiling smoltcp v0.10.0 [INFO] [stderr] Compiling convert_case v0.4.0 [INFO] [stderr] Compiling tokio v1.47.1 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling bitflags v1.3.2 [INFO] [stderr] Compiling managed v0.8.0 [INFO] [stderr] Compiling rustc_version v0.4.1 [INFO] [stderr] Compiling heapless v0.7.17 [INFO] [stderr] Compiling num-derive v0.3.3 [INFO] [stderr] Compiling tokio-stream v0.1.17 [INFO] [stderr] Compiling futures-macro v0.3.31 [INFO] [stderr] Compiling derive_more v0.99.20 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Compiling futures-util v0.3.31 [INFO] [stderr] Compiling ya-relay-util v0.1.0 [INFO] [stderr] Compiling futures-executor v0.3.31 [INFO] [stderr] Compiling futures v0.3.31 [INFO] [stderr] Compiling ya-relay-stack v0.5.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/interface.rs:64:26 [INFO] [stdout] | [INFO] [stdout] 64 | pub fn remove_socket(&mut self, handle: SocketHandle) -> smoltcp::socket::Socket { [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 64 | pub fn remove_socket(&mut self, handle: SocketHandle) -> smoltcp::socket::Socket<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/network.rs:173:9 [INFO] [stdout] | [INFO] [stdout] 173 | &self, [INFO] [stdout] | ^^^^^ the lifetime is elided here [INFO] [stdout] ... [INFO] [stdout] 176 | ) -> LocalBoxFuture> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 176 | ) -> LocalBoxFuture<'_, Result> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/network.rs:203:9 [INFO] [stdout] | [INFO] [stdout] 203 | &self, [INFO] [stdout] | ^^^^^ the lifetime is elided here [INFO] [stdout] ... [INFO] [stdout] 206 | ) -> LocalBoxFuture<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 206 | ) -> LocalBoxFuture<'_, ()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/packet.rs:181:19 [INFO] [stdout] | [INFO] [stdout] 181 | pub fn to_tcp(&self) -> Option { [INFO] [stdout] | ^^^^^ ^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 181 | pub fn to_tcp(&self) -> Option> { [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] --> src/protocol.rs:5:68 [INFO] [stdout] | [INFO] [stdout] 5 | #[derive(Clone, Copy, Debug, Hash, Eq, PartialEq, Ord, PartialOrd, num_derive::FromPrimitive)] [INFO] [stdout] | ^------------------------ [INFO] [stdout] | | [INFO] [stdout] | `FromPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_Protocol` [INFO] [stdout] ... [INFO] [stdout] 8 | pub enum Protocol { [INFO] [stdout] | -------- `Protocol` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `num_derive::FromPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `num_derive::FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_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 `num_derive::FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 17.26s [INFO] running `Command { std: "docker" "inspect" "4b81f9872d5f35842374eacdc85cdcea1514542e0ef62ec1a7bd4e3d84fb5c8d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4b81f9872d5f35842374eacdc85cdcea1514542e0ef62ec1a7bd4e3d84fb5c8d", kill_on_drop: false }` [INFO] [stdout] 4b81f9872d5f35842374eacdc85cdcea1514542e0ef62ec1a7bd4e3d84fb5c8d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+b83b707f97d809763b7861afa7638871f3339a33" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 7414566b1dd041dd2fa173377b8e2bee5361865b332b71fcd35f7e5d157aaef9 [INFO] running `Command { std: "docker" "start" "-a" "7414566b1dd041dd2fa173377b8e2bee5361865b332b71fcd35f7e5d157aaef9", kill_on_drop: false }` [INFO] [stderr] Compiling generic-array v0.12.4 [INFO] [stderr] Compiling tokio-macros v2.5.0 [INFO] [stderr] Compiling block-buffer v0.7.3 [INFO] [stderr] Compiling digest v0.8.1 [INFO] [stderr] Compiling sha3 v0.8.2 [INFO] [stderr] Compiling tokio v1.47.1 [INFO] [stderr] Compiling tokio-stream v0.1.17 [INFO] [stderr] Compiling ya-relay-stack v0.5.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/interface.rs:64:26 [INFO] [stdout] | [INFO] [stdout] 64 | pub fn remove_socket(&mut self, handle: SocketHandle) -> smoltcp::socket::Socket { [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 64 | pub fn remove_socket(&mut self, handle: SocketHandle) -> smoltcp::socket::Socket<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/network.rs:173:9 [INFO] [stdout] | [INFO] [stdout] 173 | &self, [INFO] [stdout] | ^^^^^ the lifetime is elided here [INFO] [stdout] ... [INFO] [stdout] 176 | ) -> LocalBoxFuture> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 176 | ) -> LocalBoxFuture<'_, Result> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/network.rs:203:9 [INFO] [stdout] | [INFO] [stdout] 203 | &self, [INFO] [stdout] | ^^^^^ the lifetime is elided here [INFO] [stdout] ... [INFO] [stdout] 206 | ) -> LocalBoxFuture<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 206 | ) -> LocalBoxFuture<'_, ()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/packet.rs:181:19 [INFO] [stdout] | [INFO] [stdout] 181 | pub fn to_tcp(&self) -> Option { [INFO] [stdout] | ^^^^^ ^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 181 | pub fn to_tcp(&self) -> Option> { [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] --> src/protocol.rs:5:68 [INFO] [stdout] | [INFO] [stdout] 5 | #[derive(Clone, Copy, Debug, Hash, Eq, PartialEq, Ord, PartialOrd, num_derive::FromPrimitive)] [INFO] [stdout] | ^------------------------ [INFO] [stdout] | | [INFO] [stdout] | `FromPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_Protocol` [INFO] [stdout] ... [INFO] [stdout] 8 | pub enum Protocol { [INFO] [stdout] | -------- `Protocol` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `num_derive::FromPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `num_derive::FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_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 `num_derive::FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/interface.rs:64:26 [INFO] [stdout] | [INFO] [stdout] 64 | pub fn remove_socket(&mut self, handle: SocketHandle) -> smoltcp::socket::Socket { [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 64 | pub fn remove_socket(&mut self, handle: SocketHandle) -> smoltcp::socket::Socket<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/network.rs:173:9 [INFO] [stdout] | [INFO] [stdout] 173 | &self, [INFO] [stdout] | ^^^^^ the lifetime is elided here [INFO] [stdout] ... [INFO] [stdout] 176 | ) -> LocalBoxFuture> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 176 | ) -> LocalBoxFuture<'_, Result> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/network.rs:203:9 [INFO] [stdout] | [INFO] [stdout] 203 | &self, [INFO] [stdout] | ^^^^^ the lifetime is elided here [INFO] [stdout] ... [INFO] [stdout] 206 | ) -> LocalBoxFuture<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 206 | ) -> LocalBoxFuture<'_, ()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/packet.rs:181:19 [INFO] [stdout] | [INFO] [stdout] 181 | pub fn to_tcp(&self) -> Option { [INFO] [stdout] | ^^^^^ ^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 181 | pub fn to_tcp(&self) -> Option> { [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] --> src/protocol.rs:5:68 [INFO] [stdout] | [INFO] [stdout] 5 | #[derive(Clone, Copy, Debug, Hash, Eq, PartialEq, Ord, PartialOrd, num_derive::FromPrimitive)] [INFO] [stdout] | ^------------------------ [INFO] [stdout] | | [INFO] [stdout] | `FromPrimitive` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_Protocol` [INFO] [stdout] ... [INFO] [stdout] 8 | pub enum Protocol { [INFO] [stdout] | -------- `Protocol` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `num_derive::FromPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `num_derive::FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_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 `num_derive::FromPrimitive` (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 9.57s [INFO] running `Command { std: "docker" "inspect" "7414566b1dd041dd2fa173377b8e2bee5361865b332b71fcd35f7e5d157aaef9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7414566b1dd041dd2fa173377b8e2bee5361865b332b71fcd35f7e5d157aaef9", kill_on_drop: false }` [INFO] [stdout] 7414566b1dd041dd2fa173377b8e2bee5361865b332b71fcd35f7e5d157aaef9 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+b83b707f97d809763b7861afa7638871f3339a33" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 69be518ab82cbcbabe246f989056ab5a6b2212acf751054c834ecaec876b5a20 [INFO] running `Command { std: "docker" "start" "-a" "69be518ab82cbcbabe246f989056ab5a6b2212acf751054c834ecaec876b5a20", kill_on_drop: false }` [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/interface.rs:64:26 [INFO] [stderr] | [INFO] [stderr] 64 | pub fn remove_socket(&mut self, handle: SocketHandle) -> smoltcp::socket::Socket { [INFO] [stderr] | ^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stderr] | | [INFO] [stderr] | the lifetime is elided here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stderr] help: use `'_` for type paths [INFO] [stderr] | [INFO] [stderr] 64 | pub fn remove_socket(&mut self, handle: SocketHandle) -> smoltcp::socket::Socket<'_> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/network.rs:173:9 [INFO] [stderr] | [INFO] [stderr] 173 | &self, [INFO] [stderr] | ^^^^^ the lifetime is elided here [INFO] [stderr] ... [INFO] [stderr] 176 | ) -> LocalBoxFuture> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] help: use `'_` for type paths [INFO] [stderr] | [INFO] [stderr] 176 | ) -> LocalBoxFuture<'_, Result> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/network.rs:203:9 [INFO] [stderr] | [INFO] [stderr] 203 | &self, [INFO] [stderr] | ^^^^^ the lifetime is elided here [INFO] [stderr] ... [INFO] [stderr] 206 | ) -> LocalBoxFuture<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] help: use `'_` for type paths [INFO] [stderr] | [INFO] [stderr] 206 | ) -> LocalBoxFuture<'_, ()> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/packet.rs:181:19 [INFO] [stderr] | [INFO] [stderr] 181 | pub fn to_tcp(&self) -> Option { [INFO] [stderr] | ^^^^^ ^^^^^^^^^ the same lifetime is hidden here [INFO] [stderr] | | [INFO] [stderr] | the lifetime is elided here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] help: use `'_` for type paths [INFO] [stderr] | [INFO] [stderr] 181 | pub fn to_tcp(&self) -> Option> { [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] --> src/protocol.rs:5:68 [INFO] [stderr] | [INFO] [stderr] 5 | #[derive(Clone, Copy, Debug, Hash, Eq, PartialEq, Ord, PartialOrd, num_derive::FromPrimitive)] [INFO] [stderr] | ^------------------------ [INFO] [stderr] | | [INFO] [stderr] | `FromPrimitive` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_Protocol` [INFO] [stderr] ... [INFO] [stderr] 8 | pub enum Protocol { [INFO] [stderr] | -------- `Protocol` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `num_derive::FromPrimitive` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `num_derive::FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_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 `num_derive::FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: `ya-relay-stack` (lib) generated 5 warnings (run `cargo fix --lib -p ya-relay-stack` to apply 4 suggestions) [INFO] [stderr] warning: `ya-relay-stack` (lib test) generated 5 warnings (5 duplicates) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.13s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/ya_relay_stack-00edc3efb8d5195b) [INFO] [stdout] [INFO] [stdout] running 7 tests [INFO] [stdout] test metrics::tests::time_window_ewma_swift ... ok [INFO] [stdout] test metrics::tests::time_window_ewma_tardy ... ok [INFO] [stdout] test metrics::tests::time_window_ewma_steady ... ok [INFO] [stdout] test packet::tests::change_bit_field ... ok [INFO] [stdout] test network::tests::socket_re_binding ... ok [INFO] [stdout] test network::tests::tap_exchange ... ok [INFO] [stdout] test network::tests::tun_exchange ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 13.38s [INFO] [stdout] [INFO] [stderr] Doc-tests ya_relay_stack [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" "69be518ab82cbcbabe246f989056ab5a6b2212acf751054c834ecaec876b5a20", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "69be518ab82cbcbabe246f989056ab5a6b2212acf751054c834ecaec876b5a20", kill_on_drop: false }` [INFO] [stdout] 69be518ab82cbcbabe246f989056ab5a6b2212acf751054c834ecaec876b5a20