[INFO] cloning repository https://github.com/connotarsp9/gossamer [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/connotarsp9/gossamer" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fconnotarsp9%2Fgossamer", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fconnotarsp9%2Fgossamer'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 7a8fd9e6b2d75cc0b5ce4530d0b448eadd4f6d08 [INFO] checking connotarsp9/gossamer against try#c659ee110de67e82444e4b6c8407c1a9af9c2cf6 for pr-145608-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fconnotarsp9%2Fgossamer" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/connotarsp9/gossamer [INFO] finished tweaking git repo https://github.com/connotarsp9/gossamer [INFO] tweaked toml for git repo https://github.com/connotarsp9/gossamer written to /workspace/builds/worker-1-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/connotarsp9/gossamer on toolchain c659ee110de67e82444e4b6c8407c1a9af9c2cf6 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c659ee110de67e82444e4b6c8407c1a9af9c2cf6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/connotarsp9/gossamer already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c659ee110de67e82444e4b6c8407c1a9af9c2cf6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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" "+c659ee110de67e82444e4b6c8407c1a9af9c2cf6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 0e75e05911e6a62b9e09bcc3b8e0c6b793553b30f360e6a05f84c7971c71c19d [INFO] running `Command { std: "docker" "start" "-a" "0e75e05911e6a62b9e09bcc3b8e0c6b793553b30f360e6a05f84c7971c71c19d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "0e75e05911e6a62b9e09bcc3b8e0c6b793553b30f360e6a05f84c7971c71c19d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0e75e05911e6a62b9e09bcc3b8e0c6b793553b30f360e6a05f84c7971c71c19d", kill_on_drop: false }` [INFO] [stdout] 0e75e05911e6a62b9e09bcc3b8e0c6b793553b30f360e6a05f84c7971c71c19d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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" "+c659ee110de67e82444e4b6c8407c1a9af9c2cf6" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 6d7428db28a60c00cec92ca8733343ba275efc876be9f31bcf4367abed7d6b1a [INFO] running `Command { std: "docker" "start" "-a" "6d7428db28a60c00cec92ca8733343ba275efc876be9f31bcf4367abed7d6b1a", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.18 [INFO] [stderr] Compiling syn v1.0.30 [INFO] [stderr] Compiling memchr v2.3.3 [INFO] [stderr] Compiling libc v0.2.71 [INFO] [stderr] Checking futures-core v0.3.5 [INFO] [stderr] Checking futures-sink v0.3.5 [INFO] [stderr] Compiling proc-macro-hack v0.5.16 [INFO] [stderr] Compiling log v0.4.8 [INFO] [stderr] Checking once_cell v1.4.0 [INFO] [stderr] Checking futures-io v0.3.5 [INFO] [stderr] Compiling serde v1.0.111 [INFO] [stderr] Checking queues v1.1.0 [INFO] [stderr] Checking pin-project-lite v0.1.6 [INFO] [stderr] Checking take_mut v0.2.2 [INFO] [stderr] Checking futures-task v0.3.5 [INFO] [stderr] Checking futures-channel v0.3.5 [INFO] [stderr] Checking net2 v0.2.34 [INFO] [stderr] Checking iovec v0.1.4 [INFO] [stderr] Checking mio v0.6.22 [INFO] [stderr] Compiling quote v1.0.6 [INFO] [stderr] Checking mio-uds v0.6.8 [INFO] [stderr] Compiling pin-project-internal v0.4.17 [INFO] [stderr] Compiling futures-macro v0.3.5 [INFO] [stderr] Compiling serde_derive v1.0.111 [INFO] [stderr] Compiling async-trait v0.1.31 [INFO] [stderr] Compiling tokio-macros v0.2.5 [INFO] [stderr] Checking tokio v0.2.21 [INFO] [stderr] Checking pin-project v0.4.17 [INFO] [stderr] Checking futures-util v0.3.5 [INFO] [stderr] Checking tokio-util v0.3.1 [INFO] [stderr] Checking futures-executor v0.3.5 [INFO] [stderr] Checking futures v0.3.5 [INFO] [stderr] Checking libgossamer v0.1.0 (/opt/rustwide/workdir/libgossamer) [INFO] [stdout] warning: unused imports: `Future` and `pin_mut` [INFO] [stdout] --> libgossamer/src/engine/mod.rs:7:15 [INFO] [stdout] | [INFO] [stdout] 7 | use futures::{pin_mut, Future, FutureExt, SinkExt, StreamExt}; [INFO] [stdout] | ^^^^^^^ ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::pin::Pin` [INFO] [stdout] --> libgossamer/src/engine/mod.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use std::pin::Pin; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `pin_mut` [INFO] [stdout] --> libgossamer/src/engine/mod.rs:7:15 [INFO] [stdout] | [INFO] [stdout] 7 | use futures::{pin_mut, Future, FutureExt, SinkExt, StreamExt}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Receiver` [INFO] [stdout] --> libgossamer/src/engine/testing.rs:5:42 [INFO] [stdout] | [INFO] [stdout] 5 | use futures::channel::oneshot::{channel, Receiver, Sender}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `pending` [INFO] [stdout] --> libgossamer/src/engine/testing.rs:7:33 [INFO] [stdout] | [INFO] [stdout] 7 | use futures::future::{join_all, pending}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `pin_mut` [INFO] [stdout] --> libgossamer/src/engine/testing.rs:10:21 [INFO] [stdout] | [INFO] [stdout] 10 | use futures::{join, pin_mut, select}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::state::*` [INFO] [stdout] --> libgossamer/src/engine/test_basic.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use super::state::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `async_trait::async_trait` [INFO] [stdout] --> libgossamer/src/engine/test_basic.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use async_trait::async_trait; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `futures::executor::block_on` [INFO] [stdout] --> libgossamer/src/engine/test_basic.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use futures::executor::block_on; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `futures::join` [INFO] [stdout] --> libgossamer/src/engine/test_basic.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use futures::join; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> libgossamer/src/proto/link.rs:136:7 [INFO] [stdout] | [INFO] [stdout] 136 | _ => unimplemented!(), [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> libgossamer/src/proto/link.rs:136:7 [INFO] [stdout] | [INFO] [stdout] 127 | Control::Send(msg) => { [INFO] [stdout] | ------------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 130 | Control::Close => match self.state { [INFO] [stdout] | -------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 136 | _ => unimplemented!(), [INFO] [stdout] | ^ collectively making this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `FutureExt` [INFO] [stdout] --> libgossamer/src/engine/mod.rs:7:32 [INFO] [stdout] | [INFO] [stdout] 7 | use futures::{pin_mut, Future, FutureExt, SinkExt, StreamExt}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `id` [INFO] [stdout] --> libgossamer/src/engine/state/mod.rs:191:43 [INFO] [stdout] | [INFO] [stdout] 191 | pub fn channel_remove_member(&mut self, id: ChannelId, member_id: ClientId) {} [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_id` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `member_id` [INFO] [stdout] --> libgossamer/src/engine/state/mod.rs:191:58 [INFO] [stdout] | [INFO] [stdout] 191 | pub fn channel_remove_member(&mut self, id: ChannelId, member_id: ClientId) {} [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_member_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `next_channel_id` is never read [INFO] [stdout] --> libgossamer/src/engine/state/mod.rs:61:3 [INFO] [stdout] | [INFO] [stdout] 58 | pub struct State { [INFO] [stdout] | ----- field in this struct [INFO] [stdout] ... [INFO] [stdout] 61 | next_channel_id: ChannelId, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> libgossamer/src/engine/mod.rs:394:5 [INFO] [stdout] | [INFO] [stdout] 394 | self.ctrl_tx.try_send(EngineControlMsg::LinkClosed(id)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 394 | let _ = self.ctrl_tx.try_send(EngineControlMsg::LinkClosed(id)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused pinned boxed `futures::Future` trait object that must be used [INFO] [stdout] --> libgossamer/src/engine/mod.rs:426:5 [INFO] [stdout] | [INFO] [stdout] 426 | self.handler.on_netsplit(&mut self.network, id, 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: futures do nothing unless you `.await` or poll them [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `Handler::on_netsplit` that must be used [INFO] [stdout] --> libgossamer/src/engine/mod.rs:426:5 [INFO] [stdout] | [INFO] [stdout] 426 | self.handler.on_netsplit(&mut self.network, id, 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 426 | let _ = self.handler.on_netsplit(&mut self.network, id, 0); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `network` [INFO] [stdout] --> libgossamer/src/engine/testing.rs:285:34 [INFO] [stdout] | [INFO] [stdout] 285 | async fn on_startup(&mut self, network: &mut Network) {} [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_network` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> libgossamer/src/proto/link.rs:8:17 [INFO] [stdout] | [INFO] [stdout] 8 | #[derive(Debug, Deserialize, Serialize, Clone)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Hello` [INFO] [stdout] 9 | pub struct Hello { [INFO] [stdout] | ----- `Hello` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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] --> libgossamer/src/proto/link.rs:8:30 [INFO] [stdout] | [INFO] [stdout] 8 | #[derive(Debug, Deserialize, Serialize, Clone)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Hello` [INFO] [stdout] 9 | pub struct Hello { [INFO] [stdout] | ----- `Hello` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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] --> libgossamer/src/proto/link.rs:13:17 [INFO] [stdout] | [INFO] [stdout] 13 | #[derive(Debug, Deserialize, Serialize, Clone)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Subnet` [INFO] [stdout] 14 | pub struct Subnet { [INFO] [stdout] | ------ `Subnet` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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] --> libgossamer/src/proto/link.rs:13:30 [INFO] [stdout] | [INFO] [stdout] 13 | #[derive(Debug, Deserialize, Serialize, Clone)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Subnet` [INFO] [stdout] 14 | pub struct Subnet { [INFO] [stdout] | ------ `Subnet` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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] --> libgossamer/src/proto/link.rs:18:17 [INFO] [stdout] | [INFO] [stdout] 18 | #[derive(Debug, Deserialize, Serialize, Clone)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Server` [INFO] [stdout] 19 | pub struct Server { [INFO] [stdout] | ------ `Server` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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] --> libgossamer/src/proto/link.rs:18:30 [INFO] [stdout] | [INFO] [stdout] 18 | #[derive(Debug, Deserialize, Serialize, Clone)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Server` [INFO] [stdout] 19 | pub struct Server { [INFO] [stdout] | ------ `Server` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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] --> libgossamer/src/proto/link.rs:24:17 [INFO] [stdout] | [INFO] [stdout] 24 | #[derive(Debug, Deserialize, Serialize, Clone)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Client` [INFO] [stdout] 25 | pub struct Client { [INFO] [stdout] | ------ `Client` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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] --> libgossamer/src/proto/link.rs:24:30 [INFO] [stdout] | [INFO] [stdout] 24 | #[derive(Debug, Deserialize, Serialize, Clone)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Client` [INFO] [stdout] 25 | pub struct Client { [INFO] [stdout] | ------ `Client` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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] --> libgossamer/src/proto/link.rs:34:17 [INFO] [stdout] | [INFO] [stdout] 34 | #[derive(Debug, Deserialize, Serialize, Clone)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Netsplit` [INFO] [stdout] 35 | pub struct Netsplit { [INFO] [stdout] | -------- `Netsplit` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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] --> libgossamer/src/proto/link.rs:34:30 [INFO] [stdout] | [INFO] [stdout] 34 | #[derive(Debug, Deserialize, Serialize, Clone)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Netsplit` [INFO] [stdout] 35 | pub struct Netsplit { [INFO] [stdout] | -------- `Netsplit` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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] --> libgossamer/src/proto/link.rs:39:17 [INFO] [stdout] | [INFO] [stdout] 39 | #[derive(Debug, Deserialize, Serialize, Clone)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_SyncRequest` [INFO] [stdout] 40 | pub struct SyncRequest { [INFO] [stdout] | ----------- `SyncRequest` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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] --> libgossamer/src/proto/link.rs:39:30 [INFO] [stdout] | [INFO] [stdout] 39 | #[derive(Debug, Deserialize, Serialize, Clone)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_SyncRequest` [INFO] [stdout] 40 | pub struct SyncRequest { [INFO] [stdout] | ----------- `SyncRequest` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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] --> libgossamer/src/proto/link.rs:44:17 [INFO] [stdout] | [INFO] [stdout] 44 | #[derive(Debug, Deserialize, Serialize, Clone)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_SyncResponse` [INFO] [stdout] 45 | pub struct SyncResponse { [INFO] [stdout] | ------------ `SyncResponse` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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] --> libgossamer/src/proto/link.rs:44:30 [INFO] [stdout] | [INFO] [stdout] 44 | #[derive(Debug, Deserialize, Serialize, Clone)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_SyncResponse` [INFO] [stdout] 45 | pub struct SyncResponse { [INFO] [stdout] | ------------ `SyncResponse` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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] --> libgossamer/src/proto/link.rs:50:17 [INFO] [stdout] | [INFO] [stdout] 50 | #[derive(Debug, Deserialize, Serialize, Clone)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Message` [INFO] [stdout] 51 | pub enum Message { [INFO] [stdout] | ------- `Message` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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] --> libgossamer/src/proto/link.rs:50:30 [INFO] [stdout] | [INFO] [stdout] 50 | #[derive(Debug, Deserialize, Serialize, Clone)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Message` [INFO] [stdout] 51 | pub enum Message { [INFO] [stdout] | ------- `Message` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> libgossamer/src/engine/testing.rs:321:7 [INFO] [stdout] | [INFO] [stdout] 321 | _ => unimplemented!(), [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> libgossamer/src/engine/testing.rs:321:7 [INFO] [stdout] | [INFO] [stdout] 289 | TestEvent::Run(f, tx) => { [INFO] [stdout] | --------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 293 | TestEvent::SubnetAdd(name, tx) => { [INFO] [stdout] | ------------------------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 296 | TestEvent::RequestLinkNotify(notify_tx, tx) => { [INFO] [stdout] | ------------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 303 | TestEvent::ClientAdd(subnet, nick, ident, host, gecos, tx) => { [INFO] [stdout] | ---------------------------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 321 | _ => unimplemented!(), [INFO] [stdout] | ^ ...and 1 other patterns collectively make this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `network` [INFO] [stdout] --> libgossamer/src/engine/testing.rs:325:31 [INFO] [stdout] | [INFO] [stdout] 325 | async fn on_link(&mut self, network: &mut Network, peer: ServerId) { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_network` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `peer` [INFO] [stdout] --> libgossamer/src/engine/testing.rs:325:54 [INFO] [stdout] | [INFO] [stdout] 325 | async fn on_link(&mut self, network: &mut Network, peer: ServerId) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_peer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `network` [INFO] [stdout] --> libgossamer/src/engine/testing.rs:338:40 [INFO] [stdout] | [INFO] [stdout] 338 | async fn on_sync_response(&mut self, network: &mut Network, server: ServerId) { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_network` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `server` [INFO] [stdout] --> libgossamer/src/engine/testing.rs:338:63 [INFO] [stdout] | [INFO] [stdout] 338 | async fn on_sync_response(&mut self, network: &mut Network, server: ServerId) { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_server` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `from` [INFO] [stdout] --> libgossamer/src/engine/testing.rs:342:74 [INFO] [stdout] | [INFO] [stdout] 342 | async fn on_netsplit(&mut self, network: &mut Network, peer: ServerId, from: ServerId) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_from` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> libgossamer/src/proto/link.rs:136:7 [INFO] [stdout] | [INFO] [stdout] 136 | _ => unimplemented!(), [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> libgossamer/src/proto/link.rs:136:7 [INFO] [stdout] | [INFO] [stdout] 127 | Control::Send(msg) => { [INFO] [stdout] | ------------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 130 | Control::Close => match self.state { [INFO] [stdout] | -------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 136 | _ => unimplemented!(), [INFO] [stdout] | ^ collectively making this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking gossamerd v0.1.0 (/opt/rustwide/workdir/gossamerd) [INFO] [stdout] warning: unused import: `Buffer` [INFO] [stdout] --> gossamerd/src/client/mod.rs:1:20 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::proto::{Buffer, IrcMessage, LineCodec}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SinkExt` and `Sink` [INFO] [stdout] --> gossamerd/src/client/mod.rs:4:21 [INFO] [stdout] | [INFO] [stdout] 4 | use futures::sink::{Sink, SinkExt}; [INFO] [stdout] | ^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Stream` [INFO] [stdout] --> gossamerd/src/client/mod.rs:5:23 [INFO] [stdout] | [INFO] [stdout] 5 | use futures::stream::{Stream, StreamExt}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Buffer` [INFO] [stdout] --> gossamerd/src/client/mod.rs:1:20 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::proto::{Buffer, IrcMessage, LineCodec}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SinkExt` and `Sink` [INFO] [stdout] --> gossamerd/src/client/mod.rs:4:21 [INFO] [stdout] | [INFO] [stdout] 4 | use futures::sink::{Sink, SinkExt}; [INFO] [stdout] | ^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Stream` [INFO] [stdout] --> gossamerd/src/client/mod.rs:5:23 [INFO] [stdout] | [INFO] [stdout] 5 | use futures::stream::{Stream, StreamExt}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `FutureExt` [INFO] [stdout] --> libgossamer/src/engine/mod.rs:7:32 [INFO] [stdout] | [INFO] [stdout] 7 | use futures::{pin_mut, Future, FutureExt, SinkExt, StreamExt}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super` [INFO] [stdout] --> libgossamer/src/engine/test_basic.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use super::*; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `id` [INFO] [stdout] --> libgossamer/src/engine/state/mod.rs:191:43 [INFO] [stdout] | [INFO] [stdout] 191 | pub fn channel_remove_member(&mut self, id: ChannelId, member_id: ClientId) {} [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `member_id` [INFO] [stdout] --> libgossamer/src/engine/state/mod.rs:191:58 [INFO] [stdout] | [INFO] [stdout] 191 | pub fn channel_remove_member(&mut self, id: ChannelId, member_id: ClientId) {} [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_member_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `err` [INFO] [stdout] --> gossamerd/src/client/mod.rs:162:42 [INFO] [stdout] | [INFO] [stdout] 162 | async fn process_disconnect(&mut self, err: Option) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_err` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `id` [INFO] [stdout] --> gossamerd/src/ircd/listener.rs:38:3 [INFO] [stdout] | [INFO] [stdout] 38 | id: ListenerId, [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `network` [INFO] [stdout] --> gossamerd/src/ircd/mod.rs:115:31 [INFO] [stdout] | [INFO] [stdout] 115 | async fn on_link(&mut self, network: &mut Network, peer: ServerId) { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_network` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `peer` [INFO] [stdout] --> gossamerd/src/ircd/mod.rs:115:54 [INFO] [stdout] | [INFO] [stdout] 115 | async fn on_link(&mut self, network: &mut Network, peer: ServerId) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_peer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `network` [INFO] [stdout] --> gossamerd/src/ircd/mod.rs:119:40 [INFO] [stdout] | [INFO] [stdout] 119 | async fn on_sync_response(&mut self, network: &mut Network, server: ServerId) { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_network` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `server` [INFO] [stdout] --> gossamerd/src/ircd/mod.rs:119:63 [INFO] [stdout] | [INFO] [stdout] 119 | async fn on_sync_response(&mut self, network: &mut Network, server: ServerId) { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_server` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `network` [INFO] [stdout] --> gossamerd/src/ircd/mod.rs:122:35 [INFO] [stdout] | [INFO] [stdout] 122 | async fn on_netsplit(&mut self, network: &mut Network, peer: ServerId, from: ServerId) { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_network` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `peer` [INFO] [stdout] --> gossamerd/src/ircd/mod.rs:122:58 [INFO] [stdout] | [INFO] [stdout] 122 | async fn on_netsplit(&mut self, network: &mut Network, peer: ServerId, from: ServerId) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_peer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `from` [INFO] [stdout] --> gossamerd/src/ircd/mod.rs:122:74 [INFO] [stdout] | [INFO] [stdout] 122 | async fn on_netsplit(&mut self, network: &mut Network, peer: ServerId, from: ServerId) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_from` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `core::str::::slice_unchecked`: use `get_unchecked(begin..end)` instead [INFO] [stdout] --> gossamerd/src/proto/raw.rs:70:23 [INFO] [stdout] | [INFO] [stdout] 70 | unsafe { buffer.slice_unchecked(start, start + len) } [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fmt::Write` [INFO] [stdout] --> gossamerd/src/proto/buffer.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::fmt::Write; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `err` [INFO] [stdout] --> gossamerd/src/client/mod.rs:162:42 [INFO] [stdout] | [INFO] [stdout] 162 | async fn process_disconnect(&mut self, err: Option) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_err` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `ClientDriver` is never used [INFO] [stdout] --> gossamerd/src/client/mod.rs:22:11 [INFO] [stdout] | [INFO] [stdout] 22 | pub trait ClientDriver { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `handle` is never read [INFO] [stdout] --> gossamerd/src/ircd/mod.rs:28:3 [INFO] [stdout] | [INFO] [stdout] 27 | pub struct Ircd { [INFO] [stdout] | ---- field in this struct [INFO] [stdout] 28 | handle: EngineHandle, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Close` is never constructed [INFO] [stdout] --> gossamerd/src/ircd/listener.rs:64:3 [INFO] [stdout] | [INFO] [stdout] 63 | enum Control { [INFO] [stdout] | ------- variant in this enum [INFO] [stdout] 64 | Close, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `as_mut_str` is never used [INFO] [stdout] --> gossamerd/src/proto/buffer.rs:28:10 [INFO] [stdout] | [INFO] [stdout] 9 | impl Buffer { [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 28 | pub fn as_mut_str(&mut self) -> &mut str { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `size_buffers` is never used [INFO] [stdout] --> gossamerd/src/proto/buffer.rs:87:10 [INFO] [stdout] | [INFO] [stdout] 57 | impl BufferPool { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 87 | pub fn size_buffers(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `arg` is never used [INFO] [stdout] --> gossamerd/src/proto/raw.rs:36:6 [INFO] [stdout] | [INFO] [stdout] 11 | impl IrcArgs { [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 36 | fn arg(&self, index: usize) -> (usize, usize) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `lines` and `is_empty` are never used [INFO] [stdout] --> gossamerd/src/proto/codec.rs:29:10 [INFO] [stdout] | [INFO] [stdout] 11 | impl LineCodec { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 29 | pub fn lines(&mut self) -> AddBytesIter { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | pub fn is_empty(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> gossamerd/src/proto/irc.rs:13:17 [INFO] [stdout] | [INFO] [stdout] 13 | WrongArgCount(RawMessage), [INFO] [stdout] | ------------- ^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `IrcMessageError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 13 - WrongArgCount(RawMessage), [INFO] [stdout] 13 + WrongArgCount(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> gossamerd/src/proto/raw.rs:23:11 [INFO] [stdout] | [INFO] [stdout] 23 | std::mem::replace(self, IrcArgs::VarLength(rest)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 23 | let _ = std::mem::replace(self, IrcArgs::VarLength(rest)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing [INFO] [stdout] --> gossamerd/src/proto/codec.rs:21:28 [INFO] [stdout] | [INFO] [stdout] 21 | pub fn add_bytes<'iter>(&'iter mut self, bytes: &'iter [u8]) -> AddBytesIter { [INFO] [stdout] | ^^^^^ ^^^^^ ------------ the same lifetime is hidden here [INFO] [stdout] | | | [INFO] [stdout] | | the lifetime is named here [INFO] [stdout] | the lifetime is named 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: consistently use `'iter` [INFO] [stdout] | [INFO] [stdout] 21 | pub fn add_bytes<'iter>(&'iter mut self, bytes: &'iter [u8]) -> AddBytesIter<'iter> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> gossamerd/src/proto/codec.rs:29:16 [INFO] [stdout] | [INFO] [stdout] 29 | pub fn lines(&mut self) -> AddBytesIter { [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] 29 | pub fn lines(&mut self) -> AddBytesIter<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `id` [INFO] [stdout] --> gossamerd/src/ircd/listener.rs:38:3 [INFO] [stdout] | [INFO] [stdout] 38 | id: ListenerId, [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `network` [INFO] [stdout] --> gossamerd/src/ircd/mod.rs:115:31 [INFO] [stdout] | [INFO] [stdout] 115 | async fn on_link(&mut self, network: &mut Network, peer: ServerId) { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_network` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `peer` [INFO] [stdout] --> gossamerd/src/ircd/mod.rs:115:54 [INFO] [stdout] | [INFO] [stdout] 115 | async fn on_link(&mut self, network: &mut Network, peer: ServerId) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_peer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `network` [INFO] [stdout] --> gossamerd/src/ircd/mod.rs:119:40 [INFO] [stdout] | [INFO] [stdout] 119 | async fn on_sync_response(&mut self, network: &mut Network, server: ServerId) { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_network` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `server` [INFO] [stdout] --> gossamerd/src/ircd/mod.rs:119:63 [INFO] [stdout] | [INFO] [stdout] 119 | async fn on_sync_response(&mut self, network: &mut Network, server: ServerId) { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_server` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `network` [INFO] [stdout] --> gossamerd/src/ircd/mod.rs:122:35 [INFO] [stdout] | [INFO] [stdout] 122 | async fn on_netsplit(&mut self, network: &mut Network, peer: ServerId, from: ServerId) { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_network` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `peer` [INFO] [stdout] --> gossamerd/src/ircd/mod.rs:122:58 [INFO] [stdout] | [INFO] [stdout] 122 | async fn on_netsplit(&mut self, network: &mut Network, peer: ServerId, from: ServerId) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_peer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `from` [INFO] [stdout] --> gossamerd/src/ircd/mod.rs:122:74 [INFO] [stdout] | [INFO] [stdout] 122 | async fn on_netsplit(&mut self, network: &mut Network, peer: ServerId, from: ServerId) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_from` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `core::str::::slice_unchecked`: use `get_unchecked(begin..end)` instead [INFO] [stdout] --> gossamerd/src/proto/raw.rs:70:23 [INFO] [stdout] | [INFO] [stdout] 70 | unsafe { buffer.slice_unchecked(start, start + len) } [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `next_channel_id` is never read [INFO] [stdout] --> libgossamer/src/engine/state/mod.rs:61:3 [INFO] [stdout] | [INFO] [stdout] 58 | pub struct State { [INFO] [stdout] | ----- field in this struct [INFO] [stdout] ... [INFO] [stdout] 61 | next_channel_id: ChannelId, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `shutdown` and `link_notify` are never used [INFO] [stdout] --> libgossamer/src/engine/testing.rs:160:16 [INFO] [stdout] | [INFO] [stdout] 98 | impl TestEngine { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 160 | pub async fn shutdown(&mut self) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 164 | async fn link_notify(&mut self, sender: Sender<()>) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> libgossamer/src/engine/mod.rs:394:5 [INFO] [stdout] | [INFO] [stdout] 394 | self.ctrl_tx.try_send(EngineControlMsg::LinkClosed(id)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 394 | let _ = self.ctrl_tx.try_send(EngineControlMsg::LinkClosed(id)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused pinned boxed `futures::Future` trait object that must be used [INFO] [stdout] --> libgossamer/src/engine/mod.rs:426:5 [INFO] [stdout] | [INFO] [stdout] 426 | self.handler.on_netsplit(&mut self.network, id, 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: futures do nothing unless you `.await` or poll them [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `engine::Handler::on_netsplit` that must be used [INFO] [stdout] --> libgossamer/src/engine/mod.rs:426:5 [INFO] [stdout] | [INFO] [stdout] 426 | self.handler.on_netsplit(&mut self.network, id, 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 426 | let _ = self.handler.on_netsplit(&mut self.network, id, 0); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fmt::Write` [INFO] [stdout] --> gossamerd/src/proto/buffer.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::fmt::Write; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` in tuple element 0 that must be used [INFO] [stdout] --> libgossamer/src/engine/testing.rs:44:7 [INFO] [stdout] | [INFO] [stdout] 44 | / select! { [INFO] [stdout] 45 | | ctrl_msg = self.ctrl_rx.next() => { [INFO] [stdout] 46 | | match ctrl_msg { [INFO] [stdout] 47 | | Some(LinkControl::Start(ready)) => { [INFO] [stdout] ... | [INFO] [stdout] 93 | | } [INFO] [stdout] | |_______^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` in tuple element 1 that must be used [INFO] [stdout] --> libgossamer/src/engine/testing.rs:44:7 [INFO] [stdout] | [INFO] [stdout] 44 | / select! { [INFO] [stdout] 45 | | ctrl_msg = self.ctrl_rx.next() => { [INFO] [stdout] 46 | | match ctrl_msg { [INFO] [stdout] 47 | | Some(LinkControl::Start(ready)) => { [INFO] [stdout] ... | [INFO] [stdout] 93 | | } [INFO] [stdout] | |_______^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [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] --> libgossamer/src/proto/link.rs:8:17 [INFO] [stdout] | [INFO] [stdout] 8 | #[derive(Debug, Deserialize, Serialize, Clone)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Hello` [INFO] [stdout] 9 | pub struct Hello { [INFO] [stdout] | ----- `Hello` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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] --> libgossamer/src/proto/link.rs:8:30 [INFO] [stdout] | [INFO] [stdout] 8 | #[derive(Debug, Deserialize, Serialize, Clone)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Hello` [INFO] [stdout] 9 | pub struct Hello { [INFO] [stdout] | ----- `Hello` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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] --> libgossamer/src/proto/link.rs:13:17 [INFO] [stdout] | [INFO] [stdout] 13 | #[derive(Debug, Deserialize, Serialize, Clone)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Subnet` [INFO] [stdout] 14 | pub struct Subnet { [INFO] [stdout] | ------ `Subnet` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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] --> libgossamer/src/proto/link.rs:13:30 [INFO] [stdout] | [INFO] [stdout] 13 | #[derive(Debug, Deserialize, Serialize, Clone)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Subnet` [INFO] [stdout] 14 | pub struct Subnet { [INFO] [stdout] | ------ `Subnet` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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] --> libgossamer/src/proto/link.rs:18:17 [INFO] [stdout] | [INFO] [stdout] 18 | #[derive(Debug, Deserialize, Serialize, Clone)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Server` [INFO] [stdout] 19 | pub struct Server { [INFO] [stdout] | ------ `Server` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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] --> libgossamer/src/proto/link.rs:18:30 [INFO] [stdout] | [INFO] [stdout] 18 | #[derive(Debug, Deserialize, Serialize, Clone)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Server` [INFO] [stdout] 19 | pub struct Server { [INFO] [stdout] | ------ `Server` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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] --> libgossamer/src/proto/link.rs:24:17 [INFO] [stdout] | [INFO] [stdout] 24 | #[derive(Debug, Deserialize, Serialize, Clone)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Client` [INFO] [stdout] 25 | pub struct Client { [INFO] [stdout] | ------ `Client` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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] --> libgossamer/src/proto/link.rs:24:30 [INFO] [stdout] | [INFO] [stdout] 24 | #[derive(Debug, Deserialize, Serialize, Clone)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Client` [INFO] [stdout] 25 | pub struct Client { [INFO] [stdout] | ------ `Client` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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] --> libgossamer/src/proto/link.rs:34:17 [INFO] [stdout] | [INFO] [stdout] 34 | #[derive(Debug, Deserialize, Serialize, Clone)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Netsplit` [INFO] [stdout] 35 | pub struct Netsplit { [INFO] [stdout] | -------- `Netsplit` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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] --> libgossamer/src/proto/link.rs:34:30 [INFO] [stdout] | [INFO] [stdout] 34 | #[derive(Debug, Deserialize, Serialize, Clone)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Netsplit` [INFO] [stdout] 35 | pub struct Netsplit { [INFO] [stdout] | -------- `Netsplit` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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] --> libgossamer/src/proto/link.rs:39:17 [INFO] [stdout] | [INFO] [stdout] 39 | #[derive(Debug, Deserialize, Serialize, Clone)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_SyncRequest` [INFO] [stdout] 40 | pub struct SyncRequest { [INFO] [stdout] | ----------- `SyncRequest` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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] --> libgossamer/src/proto/link.rs:39:30 [INFO] [stdout] | [INFO] [stdout] 39 | #[derive(Debug, Deserialize, Serialize, Clone)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_SyncRequest` [INFO] [stdout] 40 | pub struct SyncRequest { [INFO] [stdout] | ----------- `SyncRequest` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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] --> libgossamer/src/proto/link.rs:44:17 [INFO] [stdout] | [INFO] [stdout] 44 | #[derive(Debug, Deserialize, Serialize, Clone)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_SyncResponse` [INFO] [stdout] 45 | pub struct SyncResponse { [INFO] [stdout] | ------------ `SyncResponse` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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] --> libgossamer/src/proto/link.rs:44:30 [INFO] [stdout] | [INFO] [stdout] 44 | #[derive(Debug, Deserialize, Serialize, Clone)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_SyncResponse` [INFO] [stdout] 45 | pub struct SyncResponse { [INFO] [stdout] | ------------ `SyncResponse` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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] --> libgossamer/src/proto/link.rs:50:17 [INFO] [stdout] | [INFO] [stdout] 50 | #[derive(Debug, Deserialize, Serialize, Clone)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Message` [INFO] [stdout] 51 | pub enum Message { [INFO] [stdout] | ------- `Message` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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] --> libgossamer/src/proto/link.rs:50:30 [INFO] [stdout] | [INFO] [stdout] 50 | #[derive(Debug, Deserialize, Serialize, Clone)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Message` [INFO] [stdout] 51 | pub enum Message { [INFO] [stdout] | ------- `Message` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `ClientDriver` is never used [INFO] [stdout] --> gossamerd/src/client/mod.rs:22:11 [INFO] [stdout] | [INFO] [stdout] 22 | pub trait ClientDriver { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `handle` is never read [INFO] [stdout] --> gossamerd/src/ircd/mod.rs:28:3 [INFO] [stdout] | [INFO] [stdout] 27 | pub struct Ircd { [INFO] [stdout] | ---- field in this struct [INFO] [stdout] 28 | handle: EngineHandle, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Close` is never constructed [INFO] [stdout] --> gossamerd/src/ircd/listener.rs:64:3 [INFO] [stdout] | [INFO] [stdout] 63 | enum Control { [INFO] [stdout] | ------- variant in this enum [INFO] [stdout] 64 | Close, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `as_mut_str` is never used [INFO] [stdout] --> gossamerd/src/proto/buffer.rs:28:10 [INFO] [stdout] | [INFO] [stdout] 9 | impl Buffer { [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 28 | pub fn as_mut_str(&mut self) -> &mut str { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `arg` is never used [INFO] [stdout] --> gossamerd/src/proto/raw.rs:36:6 [INFO] [stdout] | [INFO] [stdout] 11 | impl IrcArgs { [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 36 | fn arg(&self, index: usize) -> (usize, usize) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `lines` is never used [INFO] [stdout] --> gossamerd/src/proto/codec.rs:29:10 [INFO] [stdout] | [INFO] [stdout] 11 | impl LineCodec { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 29 | pub fn lines(&mut self) -> AddBytesIter { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> gossamerd/src/proto/irc.rs:13:17 [INFO] [stdout] | [INFO] [stdout] 13 | WrongArgCount(RawMessage), [INFO] [stdout] | ------------- ^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `IrcMessageError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 13 - WrongArgCount(RawMessage), [INFO] [stdout] 13 + WrongArgCount(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> gossamerd/src/proto/raw.rs:23:11 [INFO] [stdout] | [INFO] [stdout] 23 | std::mem::replace(self, IrcArgs::VarLength(rest)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 23 | let _ = std::mem::replace(self, IrcArgs::VarLength(rest)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing [INFO] [stdout] --> gossamerd/src/proto/codec.rs:21:28 [INFO] [stdout] | [INFO] [stdout] 21 | pub fn add_bytes<'iter>(&'iter mut self, bytes: &'iter [u8]) -> AddBytesIter { [INFO] [stdout] | ^^^^^ ^^^^^ ------------ the same lifetime is hidden here [INFO] [stdout] | | | [INFO] [stdout] | | the lifetime is named here [INFO] [stdout] | the lifetime is named 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: consistently use `'iter` [INFO] [stdout] | [INFO] [stdout] 21 | pub fn add_bytes<'iter>(&'iter mut self, bytes: &'iter [u8]) -> AddBytesIter<'iter> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> gossamerd/src/proto/codec.rs:29:16 [INFO] [stdout] | [INFO] [stdout] 29 | pub fn lines(&mut self) -> AddBytesIter { [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] 29 | pub fn lines(&mut self) -> AddBytesIter<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 17.31s [INFO] running `Command { std: "docker" "inspect" "6d7428db28a60c00cec92ca8733343ba275efc876be9f31bcf4367abed7d6b1a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "6d7428db28a60c00cec92ca8733343ba275efc876be9f31bcf4367abed7d6b1a", kill_on_drop: false }` [INFO] [stdout] 6d7428db28a60c00cec92ca8733343ba275efc876be9f31bcf4367abed7d6b1a