[INFO] fetching crate rzmq 0.5.26...
[INFO] checking rzmq-0.5.26 against a5689b034ad287112f709693384a37f1377eb9cc for pr-129249-3
[INFO] extracting crate rzmq 0.5.26 into /workspace/builds/worker-6-tc2/source
[INFO] started tweaking crates.io crate rzmq 0.5.26
[INFO] removed 0 missing examples
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate rzmq 0.5.26
[INFO] tweaked toml for crates.io crate rzmq 0.5.26 written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate rzmq 0.5.26 on toolchain a5689b034ad287112f709693384a37f1377eb9cc
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate rzmq 0.5.26 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" "+a5689b034ad287112f709693384a37f1377eb9cc" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]    --> Cargo.toml:224:12
[INFO] [stderr]     |
[INFO] [stderr] 224 | homepage = "https://github.com/excsn/rzmq"
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 230 | repository = "https://github.com/excsn/rzmq"
[INFO] [stderr]     |              -------------------------------
[INFO] [stderr]     |
[INFO] [stderr]     = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `rzmq` (manifest) generated 1 warning
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] f4edb0f2e4da2e83bf9379d8d3836ecb1b48f8c29b34a60d5b8102124c842b5a
[INFO] running `Command { std: "docker" "start" "f4edb0f2e4da2e83bf9379d8d3836ecb1b48f8c29b34a60d5b8102124c842b5a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "f4edb0f2e4da2e83bf9379d8d3836ecb1b48f8c29b34a60d5b8102124c842b5a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "f4edb0f2e4da2e83bf9379d8d3836ecb1b48f8c29b34a60d5b8102124c842b5a" "/opt/rustwide/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "f4edb0f2e4da2e83bf9379d8d3836ecb1b48f8c29b34a60d5b8102124c842b5a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "f4edb0f2e4da2e83bf9379d8d3836ecb1b48f8c29b34a60d5b8102124c842b5a" "/opt/rustwide/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]    --> Cargo.toml:224:12
[INFO] [stderr]     |
[INFO] [stderr] 224 | homepage = "https://github.com/excsn/rzmq"
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 230 | repository = "https://github.com/excsn/rzmq"
[INFO] [stderr]     |              -------------------------------
[INFO] [stderr]     |
[INFO] [stderr]     = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `rzmq` (manifest) generated 1 warning
[INFO] [stderr]    Compiling zerocopy v0.8.59
[INFO] [stderr]     Checking smallvec v1.16.2
[INFO] [stderr]     Checking futures-channel v0.3.34
[INFO] [stderr]     Checking either v1.18.0
[INFO] [stderr]     Checking regex-syntax v0.8.11
[INFO] [stderr]    Compiling syn v3.0.6
[INFO] [stderr]    Compiling syn v2.0.119
[INFO] [stderr]    Compiling cc v1.5.1
[INFO] [stderr]    Compiling memchr v2.8.3
[INFO] [stderr]    Compiling toml_parser v1.1.3+spec-1.1.0
[INFO] [stderr]     Checking plotters-backend v0.3.7
[INFO] [stderr]     Checking clap_lex v1.1.1
[INFO] [stderr]     Checking digest v0.11.3
[INFO] [stderr]    Compiling rstest_macros v0.26.1
[INFO] [stderr]     Checking seize v0.5.1
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking clap_builder v4.6.7
[INFO] [stderr]    Compiling convert_case v0.4.0
[INFO] [stderr]     Checking sha2 v0.11.0
[INFO] [stderr]     Checking itertools v0.13.0
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking rayon v1.12.0
[INFO] [stderr]     Checking plotters-svg v0.3.7
[INFO] [stderr]     Checking papaya v0.2.5
[INFO] [stderr]     Checking futures-intrusive v0.5.0
[INFO] [stderr]     Checking plotters v0.3.7
[INFO] [stderr]     Checking page_size v0.6.0
[INFO] [stderr]     Checking anes v0.1.6
[INFO] [stderr]     Checking seahash v4.1.0
[INFO] [stderr]    Compiling toml_edit v0.25.15+spec-1.1.0
[INFO] [stderr]    Compiling aho-corasick v1.1.5
[INFO] [stderr]    Compiling relative-path v1.9.3
[INFO] [stderr]     Checking regex-automata v0.4.18
[INFO] [stderr]     Checking itertools v0.12.1
[INFO] [stderr]     Checking futures-timer v3.0.4
[INFO] [stderr]     Checking atomic_float v1.1.0
[INFO] [stderr]     Checking bitflags v2.13.2
[INFO] [stderr]     Checking criterion-plot v0.8.2
[INFO] [stderr]    Compiling proc-macro-crate v3.5.0
[INFO] [stderr]    Compiling alloca v0.4.0
[INFO] [stderr]     Checking clap v4.6.7
[INFO] [stderr]     Checking regex v1.13.1
[INFO] [stderr]     Checking matchers v0.2.0
[INFO] [stderr]    Compiling tokio-macros v2.7.2
[INFO] [stderr]    Compiling futures-macro v0.3.34
[INFO] [stderr]    Compiling serde_derive v1.0.229
[INFO] [stderr]    Compiling thiserror-impl v2.0.21
[INFO] [stderr]    Compiling async-trait v0.1.92
[INFO] [stderr]    Compiling zerocopy-derive v0.8.59
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling derive_more v0.99.20
[INFO] [stderr]    Compiling async-recursion v1.1.1
[INFO] [stderr]    Compiling serial_test_derive v3.5.0
[INFO] [stderr]     Checking tokio v1.53.1
[INFO] [stderr]     Checking futures-util v0.3.34
[INFO] [stderr]     Checking thiserror v2.0.21
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]     Checking tracing-subscriber v0.3.23
[INFO] [stderr]     Checking futures-executor v0.3.34
[INFO] [stderr]     Checking fibre v0.6.7
[INFO] [stderr]     Checking futures v0.3.34
[INFO] [stderr]     Checking serial_test v3.5.0
[INFO] [stderr]     Checking serde v1.0.229
[INFO] [stderr]     Checking tinytemplate v1.2.1
[INFO] [stderr]     Checking rstest v0.26.1
[INFO] [stderr]     Checking tokio-stream v0.1.19
[INFO] [stderr]     Checking tokio-util v0.7.19
[INFO] [stderr]     Checking tokio-test v0.4.6
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking half v2.7.1
[INFO] [stderr]     Checking ciborium-ll v0.2.2
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking ciborium v0.2.2
[INFO] [stderr]     Checking rand v0.9.5
[INFO] [stderr]     Checking criterion v0.8.2
[INFO] [stderr]     Checking xskiplist v0.1.0
[INFO] [stderr]     Checking xs_foundation v0.4.10
[INFO] [stderr]     Checking rzmq v0.5.26 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking bench_matrix v0.2.2
[INFO] [stdout] warning: unused import: `BufMut`
[INFO] [stdout]  --> src/protocol/zmtp/manual_parser.rs:4:18
[INFO] [stdout]   |
[INFO] [stdout] 4 | use bytes::{Buf, BufMut, Bytes, BytesMut};
[INFO] [stdout]   |                  ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SystemEvent`
[INFO] [stdout]  --> src/runtime/actor_drop_guard.rs:3:33
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::runtime::{ActorType, SystemEvent}; // Adjust imports as needed
[INFO] [stdout]   |                                 ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AtomicBool` and `Ordering`
[INFO] [stdout]  --> src/runtime/actor_drop_guard.rs:5:25
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::sync::atomic::{AtomicBool, Ordering};
[INFO] [stdout]   |                         ^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/runtime/actor_drop_guard.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::os::unix::io::RawFd`
[INFO] [stdout]   --> src/runtime/command.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::os::unix::io::RawFd;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::socket::connection_iface::ISocketConnection`
[INFO] [stdout]  --> src/runtime/system_events.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::socket::connection_iface::ISocketConnection;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fibre::oneshot`
[INFO] [stdout]   --> src/runtime/system_events.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use fibre::oneshot;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::task::Id as TaskId`
[INFO] [stdout]   --> src/runtime/system_events.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use tokio::task::Id as TaskId;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MailboxSyncSender`
[INFO] [stdout]   --> src/runtime/mod.rs:14:67
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub(crate) use mailbox::{mailbox, MailboxReceiver, MailboxSender, MailboxSyncSender};
[INFO] [stdout]    |                                                                   ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `latch::CountDownLatch`
[INFO] [stdout]   --> src/runtime/mod.rs:22:16
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub(crate) use latch::CountDownLatch;
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `IDataCipher`
[INFO] [stdout]  --> src/security/mechanism.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::{IDataCipher, ZmqError};
[INFO] [stdout]   |             ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `IDataCipher` and `cipher::PassThroughDataCipher`
[INFO] [stdout]  --> src/security/null.rs:9:13
[INFO] [stdout]   |
[INFO] [stdout] 9 | use super::{cipher::PassThroughDataCipher, IDataCipher, Mechanism, MechanismStatus};
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `IDataCipher` and `cipher::PassThroughDataCipher`
[INFO] [stdout]   --> src/security/plain.rs:11:13
[INFO] [stdout]    |
[INFO] [stdout] 11 | use super::{cipher::PassThroughDataCipher, IDataCipher, Mechanism, MechanismStatus};
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::message::Metadata`
[INFO] [stdout]   --> src/security/mod.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::message::Metadata;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ZmtpWriteHalf`
[INFO] [stdout]   --> src/sessionx/actor.rs:15:39
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::transport::{ZmtpStdStream, ZmtpWriteHalf};
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::atomic::Ordering`
[INFO] [stdout]   --> src/sessionx/actor.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 37 | use std::sync::atomic::Ordering;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::os::fd::AsRawFd`
[INFO] [stdout]    --> src/sessionx/actor.rs:124:11
[INFO] [stdout]     |
[INFO] [stdout] 124 |       use std::os::fd::AsRawFd;
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::IoSlice`
[INFO] [stdout]  --> src/sessionx/egress_driver.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::io::IoSlice;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `FromRawFd`
[INFO] [stdout]  --> src/sessionx/cork.rs:3:28
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::os::fd::{AsRawFd, FromRawFd, RawFd};
[INFO] [stdout]   |                            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::error::ZmqError`
[INFO] [stdout]  --> src/sessionx/types.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::error::ZmqError;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::Blob`
[INFO] [stdout]  --> src/sessionx/types.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::Blob;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Msg`
[INFO] [stdout]  --> src/socket/core/command_processor.rs:2:34
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::message::{FrameBatch, Msg};
[INFO] [stdout]   |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::runtime::ActorType`
[INFO] [stdout]  --> src/socket/core/command_processor.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::runtime::ActorType;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::socket::core::pipe_manager`
[INFO] [stdout]   --> src/socket/core/command_processor.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::socket::core::pipe_manager;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `command_processor`
[INFO] [stdout]  --> src/socket/core/shutdown.rs:5:27
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::socket::core::{command_processor, pipe_manager, SocketCore};
[INFO] [stdout]   |                           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ReadyPipeQueue` and `ReadyPipeSender`
[INFO] [stdout]   --> src/socket/patterns/mod.rs:21:35
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub(crate) use ready_pipe_queue::{ReadyPipeQueue, ReadyPipeSender, PipeMessageSender};
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SocketAddr as StdSocketAddr`
[INFO] [stdout]   --> src/transport/tcp.rs:30:16
[INFO] [stdout]    |
[INFO] [stdout] 30 | use std::net::{SocketAddr as StdSocketAddr, ToSocketAddrs};
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `debug`, `error`, `info`, `trace`, and `warn`
[INFO] [stdout]   --> src/transport/tcp.rs:38:15
[INFO] [stdout]    |
[INFO] [stdout] 38 | use tracing::{debug, error, info, trace, warn};
[INFO] [stdout]    |               ^^^^^  ^^^^^  ^^^^  ^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `LoopProfiler` and `ProfileGuard`
[INFO] [stdout]    --> src/profiler.rs:120:23
[INFO] [stdout]     |
[INFO] [stdout] 120 | pub(crate) use stub::{LoopProfiler, ProfileGuard};
[INFO] [stdout]     |                       ^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MailboxSender`
[INFO] [stdout]   --> src/lib.rs:44:43
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub(crate) use runtime::{MailboxReceiver, MailboxSender};
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::usize::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/transport/ipc.rs:100:67
[INFO] [stdout]     |
[INFO] [stdout] 100 |     let max_conns = options.max_connections.unwrap_or(std::usize::MAX);
[INFO] [stdout]     |                                                                   ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::usize::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/transport/tcp.rs:145:67
[INFO] [stdout]     |
[INFO] [stdout] 145 |     let max_conns = options.max_connections.unwrap_or(std::usize::MAX);
[INFO] [stdout]     |                                                                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SystemEvent`
[INFO] [stdout]  --> src/runtime/actor_drop_guard.rs:3:33
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::runtime::{ActorType, SystemEvent}; // Adjust imports as needed
[INFO] [stdout]   |                                 ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AtomicBool` and `Ordering`
[INFO] [stdout]  --> src/runtime/actor_drop_guard.rs:5:25
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::sync::atomic::{AtomicBool, Ordering};
[INFO] [stdout]   |                         ^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/runtime/actor_drop_guard.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::os::unix::io::RawFd`
[INFO] [stdout]   --> src/runtime/command.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::os::unix::io::RawFd;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::socket::connection_iface::ISocketConnection`
[INFO] [stdout]  --> src/runtime/system_events.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::socket::connection_iface::ISocketConnection;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fibre::oneshot`
[INFO] [stdout]   --> src/runtime/system_events.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use fibre::oneshot;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::task::Id as TaskId`
[INFO] [stdout]   --> src/runtime/system_events.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use tokio::task::Id as TaskId;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MailboxSyncSender`
[INFO] [stdout]   --> src/runtime/mod.rs:14:67
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub(crate) use mailbox::{mailbox, MailboxReceiver, MailboxSender, MailboxSyncSender};
[INFO] [stdout]    |                                                                   ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `latch::CountDownLatch`
[INFO] [stdout]   --> src/runtime/mod.rs:22:16
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub(crate) use latch::CountDownLatch;
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `IDataCipher`
[INFO] [stdout]  --> src/security/mechanism.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::{IDataCipher, ZmqError};
[INFO] [stdout]   |             ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `IDataCipher` and `cipher::PassThroughDataCipher`
[INFO] [stdout]  --> src/security/null.rs:9:13
[INFO] [stdout]   |
[INFO] [stdout] 9 | use super::{cipher::PassThroughDataCipher, IDataCipher, Mechanism, MechanismStatus};
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `IDataCipher` and `cipher::PassThroughDataCipher`
[INFO] [stdout]   --> src/security/plain.rs:11:13
[INFO] [stdout]    |
[INFO] [stdout] 11 | use super::{cipher::PassThroughDataCipher, IDataCipher, Mechanism, MechanismStatus};
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::message::Metadata`
[INFO] [stdout]   --> src/security/mod.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::message::Metadata;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ZmtpWriteHalf`
[INFO] [stdout]   --> src/sessionx/actor.rs:15:39
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::transport::{ZmtpStdStream, ZmtpWriteHalf};
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::atomic::Ordering`
[INFO] [stdout]   --> src/sessionx/actor.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 37 | use std::sync::atomic::Ordering;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::os::fd::AsRawFd`
[INFO] [stdout]    --> src/sessionx/actor.rs:124:11
[INFO] [stdout]     |
[INFO] [stdout] 124 |       use std::os::fd::AsRawFd;
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::IoSlice`
[INFO] [stdout]  --> src/sessionx/egress_driver.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::io::IoSlice;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `FromRawFd`
[INFO] [stdout]  --> src/sessionx/cork.rs:3:28
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::os::fd::{AsRawFd, FromRawFd, RawFd};
[INFO] [stdout]   |                            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::error::ZmqError`
[INFO] [stdout]  --> src/sessionx/types.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::error::ZmqError;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::Blob`
[INFO] [stdout]  --> src/sessionx/types.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::Blob;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Msg`
[INFO] [stdout]  --> src/socket/core/command_processor.rs:2:34
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::message::{FrameBatch, Msg};
[INFO] [stdout]   |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::runtime::ActorType`
[INFO] [stdout]  --> src/socket/core/command_processor.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::runtime::ActorType;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::socket::core::pipe_manager`
[INFO] [stdout]   --> src/socket/core/command_processor.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::socket::core::pipe_manager;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `command_processor`
[INFO] [stdout]  --> src/socket/core/shutdown.rs:5:27
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::socket::core::{command_processor, pipe_manager, SocketCore};
[INFO] [stdout]   |                           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::atomic::Ordering`
[INFO] [stdout]     --> src/socket/patterns/ready_pipe_queue.rs:1444:7
[INFO] [stdout]      |
[INFO] [stdout] 1444 |   use std::sync::atomic::Ordering;
[INFO] [stdout]      |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ReadyPipeQueue` and `ReadyPipeSender`
[INFO] [stdout]   --> src/socket/patterns/mod.rs:21:35
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub(crate) use ready_pipe_queue::{ReadyPipeQueue, ReadyPipeSender, PipeMessageSender};
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SocketAddr as StdSocketAddr`
[INFO] [stdout]   --> src/transport/tcp.rs:30:16
[INFO] [stdout]    |
[INFO] [stdout] 30 | use std::net::{SocketAddr as StdSocketAddr, ToSocketAddrs};
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `debug`, `error`, `info`, `trace`, and `warn`
[INFO] [stdout]   --> src/transport/tcp.rs:38:15
[INFO] [stdout]    |
[INFO] [stdout] 38 | use tracing::{debug, error, info, trace, warn};
[INFO] [stdout]    |               ^^^^^  ^^^^^  ^^^^  ^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `LoopProfiler` and `ProfileGuard`
[INFO] [stdout]    --> src/profiler.rs:120:23
[INFO] [stdout]     |
[INFO] [stdout] 120 | pub(crate) use stub::{LoopProfiler, ProfileGuard};
[INFO] [stdout]     |                       ^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MailboxSender`
[INFO] [stdout]   --> src/lib.rs:44:43
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub(crate) use runtime::{MailboxReceiver, MailboxSender};
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::usize::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/transport/ipc.rs:100:67
[INFO] [stdout]     |
[INFO] [stdout] 100 |     let max_conns = options.max_connections.unwrap_or(std::usize::MAX);
[INFO] [stdout]     |                                                                   ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::usize::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/transport/tcp.rs:145:67
[INFO] [stdout]     |
[INFO] [stdout] 145 |     let max_conns = options.max_connections.unwrap_or(std::usize::MAX);
[INFO] [stdout]     |                                                                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/socket/core/command_processor.rs:543:5
[INFO] [stdout]     |
[INFO] [stdout] 543 |     _ => bind_result = Err(ZmqError::UnsupportedTransport(endpoint.to_string())),
[INFO] [stdout]     |     ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/socket/core/command_processor.rs:543:5
[INFO] [stdout]     |
[INFO] [stdout] 418 |     Ok(Endpoint::Tcp(_addr, ref uri_from_parse)) => {
[INFO] [stdout]     |     -------------------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 471 |     Ok(Endpoint::Ipc(ref path_buf, ref uri_from_parse)) => {
[INFO] [stdout]     |     --------------------------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 522 |     Ok(Endpoint::Inproc(ref name)) => {
[INFO] [stdout]     |     ------------------------------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 542 |     Err(e) => bind_result = Err(e), // Error from parse_endpoint
[INFO] [stdout]     |     ------ matches some of the same values
[INFO] [stdout] 543 |     _ => bind_result = Err(ZmqError::UnsupportedTransport(endpoint.to_string())),
[INFO] [stdout]     |     ^ collectively making this unreachable
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/socket/core/command_processor.rs:607:5
[INFO] [stdout]     |
[INFO] [stdout] 607 |     _ => {
[INFO] [stdout]     |     ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/socket/core/command_processor.rs:607:5
[INFO] [stdout]     |
[INFO] [stdout] 582 | /     Ok(Endpoint::Tcp(_, ref parsed_uri_for_connecter))
[INFO] [stdout] 583 | |     | Ok(Endpoint::Ipc(_, ref parsed_uri_for_connecter)) => {
[INFO] [stdout]     | |________________________________________________________- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 595 |       Ok(Endpoint::Inproc(ref name)) => {
[INFO] [stdout]     |       ------------------------------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 604 |       Err(e) => {
[INFO] [stdout]     |       ------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 607 |       _ => {
[INFO] [stdout]     |       ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/socket/core/command_processor.rs:694:5
[INFO] [stdout]     |
[INFO] [stdout] 694 |     _ => {
[INFO] [stdout]     |     ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/socket/core/command_processor.rs:694:5
[INFO] [stdout]     |
[INFO] [stdout] 628 |     Ok(Endpoint::Tcp(_, _)) => {
[INFO] [stdout]     |     ----------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 659 |     Ok(Endpoint::Ipc(path_buf, _)) => {
[INFO] [stdout]     |     ------------------------------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 679 |     Ok(Endpoint::Inproc(_)) => {
[INFO] [stdout]     |     ----------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 682 |     Err(err) => {
[INFO] [stdout]     |     -------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 694 |     _ => {
[INFO] [stdout]     |     ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/socket/core/command_processor.rs:543:5
[INFO] [stdout]     |
[INFO] [stdout] 543 |     _ => bind_result = Err(ZmqError::UnsupportedTransport(endpoint.to_string())),
[INFO] [stdout]     |     ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/socket/core/command_processor.rs:543:5
[INFO] [stdout]     |
[INFO] [stdout] 418 |     Ok(Endpoint::Tcp(_addr, ref uri_from_parse)) => {
[INFO] [stdout]     |     -------------------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 471 |     Ok(Endpoint::Ipc(ref path_buf, ref uri_from_parse)) => {
[INFO] [stdout]     |     --------------------------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 522 |     Ok(Endpoint::Inproc(ref name)) => {
[INFO] [stdout]     |     ------------------------------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 542 |     Err(e) => bind_result = Err(e), // Error from parse_endpoint
[INFO] [stdout]     |     ------ matches some of the same values
[INFO] [stdout] 543 |     _ => bind_result = Err(ZmqError::UnsupportedTransport(endpoint.to_string())),
[INFO] [stdout]     |     ^ collectively making this unreachable
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/transport/ipc.rs:311:19
[INFO] [stdout]     |
[INFO] [stdout] 311 |               let mut unix_stream_opt = Some(unix_stream);
[INFO] [stdout]     |                   ----^^^^^^^^^^^^^^^
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/transport/ipc.rs:250:9
[INFO] [stdout]     |
[INFO] [stdout] 250 |     let mut loop_error_to_report: Option<ZmqError>;
[INFO] [stdout]     |         ----^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/socket/core/command_processor.rs:607:5
[INFO] [stdout]     |
[INFO] [stdout] 607 |     _ => {
[INFO] [stdout]     |     ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/socket/core/command_processor.rs:607:5
[INFO] [stdout]     |
[INFO] [stdout] 582 | /     Ok(Endpoint::Tcp(_, ref parsed_uri_for_connecter))
[INFO] [stdout] 583 | |     | Ok(Endpoint::Ipc(_, ref parsed_uri_for_connecter)) => {
[INFO] [stdout]     | |________________________________________________________- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 595 |       Ok(Endpoint::Inproc(ref name)) => {
[INFO] [stdout]     |       ------------------------------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 604 |       Err(e) => {
[INFO] [stdout]     |       ------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 607 |       _ => {
[INFO] [stdout]     |       ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/transport/ipc.rs:606:17
[INFO] [stdout]     |
[INFO] [stdout] 606 |             let mut unix_stream_opt = Some(unix_stream);
[INFO] [stdout]     |                 ----^^^^^^^^^^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/socket/core/command_processor.rs:694:5
[INFO] [stdout]     |
[INFO] [stdout] 694 |     _ => {
[INFO] [stdout]     |     ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/socket/core/command_processor.rs:694:5
[INFO] [stdout]     |
[INFO] [stdout] 628 |     Ok(Endpoint::Tcp(_, _)) => {
[INFO] [stdout]     |     ----------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 659 |     Ok(Endpoint::Ipc(path_buf, _)) => {
[INFO] [stdout]     |     ------------------------------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 679 |     Ok(Endpoint::Inproc(_)) => {
[INFO] [stdout]     |     ----------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 682 |     Err(err) => {
[INFO] [stdout]     |     -------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 694 |     _ => {
[INFO] [stdout]     |     ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/transport/ipc.rs:311:19
[INFO] [stdout]     |
[INFO] [stdout] 311 |               let mut unix_stream_opt = Some(unix_stream);
[INFO] [stdout]     |                   ----^^^^^^^^^^^^^^^
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/transport/ipc.rs:250:9
[INFO] [stdout]     |
[INFO] [stdout] 250 |     let mut loop_error_to_report: Option<ZmqError>;
[INFO] [stdout]     |         ----^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/transport/ipc.rs:606:17
[INFO] [stdout]     |
[INFO] [stdout] 606 |             let mut unix_stream_opt = Some(unix_stream);
[INFO] [stdout]     |                 ----^^^^^^^^^^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::socket::connection_iface::ISocketConnection`
[INFO] [stdout]  --> src/socket/req_socket.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::socket::connection_iface::ISocketConnection;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `popped_msgs`
[INFO] [stdout]   --> src/sessionx/egress_driver.rs:75:11
[INFO] [stdout]    |
[INFO] [stdout] 75 |       let popped_msgs = this.egress_buffer.advance(n);
[INFO] [stdout]    |           ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_popped_msgs`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `site`
[INFO] [stdout]    --> src/socket/patterns/ready_pipe_queue.rs:305:3
[INFO] [stdout]     |
[INFO] [stdout] 305 |   site: &str,
[INFO] [stdout]     |   ^^^^ help: if this is intentional, prefix it with an underscore: `_site`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `spins` is assigned to, but never used
[INFO] [stdout]    --> src/socket/patterns/ready_pipe_queue.rs:307:7
[INFO] [stdout]     |
[INFO] [stdout] 307 |   let mut spins = 0usize;
[INFO] [stdout]     |       ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_spins` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `spins` is never read
[INFO] [stdout]    --> src/socket/patterns/ready_pipe_queue.rs:312:9
[INFO] [stdout]     |
[INFO] [stdout] 312 |         spins += 1;
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::socket::connection_iface::ISocketConnection`
[INFO] [stdout]  --> src/socket/req_socket.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::socket::connection_iface::ISocketConnection;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `use_io_uring`
[INFO] [stdout]    --> src/transport/ipc.rs:294:15
[INFO] [stdout]     |
[INFO] [stdout] 294 |           let use_io_uring = false;
[INFO] [stdout]     |               ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_use_io_uring`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `connect_use_io_uring`
[INFO] [stdout]    --> src/transport/ipc.rs:604:17
[INFO] [stdout]     |
[INFO] [stdout] 604 |             let connect_use_io_uring = false;
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_connect_use_io_uring`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `socket_type`
[INFO] [stdout]    --> src/transport/tcp.rs:501:25
[INFO] [stdout]     |
[INFO] [stdout] 501 |                     let socket_type = socket_options_clone.socket_type_name.as_str();
[INFO] [stdout]     |                         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_socket_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `setup_successful` is never read
[INFO] [stdout]    --> src/transport/tcp.rs:483:19
[INFO] [stdout]     |
[INFO] [stdout] 483 |                   setup_successful = false;
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `socket_type`
[INFO] [stdout]     --> src/transport/tcp.rs:1093:17
[INFO] [stdout]      |
[INFO] [stdout] 1093 |             let socket_type = self.socket_options.socket_type_name.as_str();
[INFO] [stdout]      |                 ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_socket_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `options::ZmtpEngineConfig` is more private than the item `ZmtpEngine::new`
[INFO] [stdout]    --> src/protocol/zmtp/engine.rs:84:3
[INFO] [stdout]     |
[INFO] [stdout]  84 |   pub fn new(is_server: bool, config: Arc<ZmtpEngineConfig>) -> Self {
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ associated function `ZmtpEngine::new` is reachable at visibility `pub`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `options::ZmtpEngineConfig` is only usable at visibility `pub(crate)`
[INFO] [stdout]    --> src/socket/options.rs:280:1
[INFO] [stdout]     |
[INFO] [stdout] 280 | pub(crate) struct ZmtpEngineConfig {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `options::ZmtpEngineConfig` is more private than the item `ZmtpEngine::config`
[INFO] [stdout]    --> src/protocol/zmtp/engine.rs:134:3
[INFO] [stdout]     |
[INFO] [stdout] 134 |   pub fn config(&self) -> &Arc<ZmtpEngineConfig> {
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `ZmtpEngine::config` is reachable at visibility `pub`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `options::ZmtpEngineConfig` is only usable at visibility `pub(crate)`
[INFO] [stdout]    --> src/socket/options.rs:280:1
[INFO] [stdout]     |
[INFO] [stdout] 280 | pub(crate) struct ZmtpEngineConfig {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `PipeMessageSender` is more private than the item `runtime::command::Command::ScaInitializePipes::incoming_pipe_sender`
[INFO] [stdout]    --> src/runtime/command.rs:103:5
[INFO] [stdout]     |
[INFO] [stdout] 103 |     incoming_pipe_sender: Option<PipeMessageSender>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field `runtime::command::Command::ScaInitializePipes::incoming_pipe_sender` is reachable at visibility `pub`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `PipeMessageSender` is only usable at visibility `pub(crate)`
[INFO] [stdout]    --> src/socket/patterns/ready_pipe_queue.rs:961:1
[INFO] [stdout]     |
[INFO] [stdout] 961 | pub(crate) enum PipeMessageSender {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `ISocketConnection` is more private than the item `runtime::command::Command::NewConnectionEstablished::connection_iface`
[INFO] [stdout]    --> src/runtime/command.rs:110:5
[INFO] [stdout]     |
[INFO] [stdout] 110 |     connection_iface: Option<Arc<dyn ISocketConnection>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field `runtime::command::Command::NewConnectionEstablished::connection_iface` is reachable at visibility `pub`
[INFO] [stdout]     |
[INFO] [stdout] note: but trait `ISocketConnection` is only usable at visibility `pub(crate)`
[INFO] [stdout]    --> src/socket/connection_iface.rs:32:1
[INFO] [stdout]     |
[INFO] [stdout]  32 | pub(crate) trait ISocketConnection: Send + Sync + fmt::Debug {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `InprocHandshakeRequest` is more private than the item `SystemEvent::InprocBindingRequest::handshake_request`
[INFO] [stdout]    --> src/runtime/system_events.rs:129:5
[INFO] [stdout]     |
[INFO] [stdout] 129 |     handshake_request: Arc<std::sync::Mutex<Option<InprocHandshakeRequest>>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field `SystemEvent::InprocBindingRequest::handshake_request` is reachable at visibility `pub`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `InprocHandshakeRequest` is only usable at visibility `pub(crate)`
[INFO] [stdout]    --> src/transport/inproc/types.rs:7:1
[INFO] [stdout]     |
[INFO] [stdout]   7 | pub(crate) struct InprocHandshakeRequest {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `ProcessTokenAction` is more private than the item `Mechanism::process_token`
[INFO] [stdout]   --> src/security/mechanism.rs:35:3
[INFO] [stdout]    |
[INFO] [stdout] 35 |   fn process_token(&mut self, token: &[u8]) -> Result<ProcessTokenAction, ZmqError>;
[INFO] [stdout]    |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `Mechanism::process_token` is reachable at visibility `pub`
[INFO] [stdout]    |
[INFO] [stdout] note: but type `ProcessTokenAction` is only usable at visibility `pub(crate)`
[INFO] [stdout]   --> src/security/mechanism.rs:15:1
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub(crate) enum ProcessTokenAction {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `ISecureFramer` is more private than the item `Mechanism::into_framer`
[INFO] [stdout]   --> src/security/mechanism.rs:87:3
[INFO] [stdout]    |
[INFO] [stdout] 87 | /   fn into_framer(
[INFO] [stdout] 88 | |     self: Box<Self>,
[INFO] [stdout] 89 | |     max_msg_size: i64,
[INFO] [stdout] 90 | |     sndbatch_count: usize,
[INFO] [stdout] 91 | |     sndbatch_bytes_physical: usize,
[INFO] [stdout] 92 | |   ) -> Result<(Box<dyn ISecureFramer>, Option<Vec<u8>>), ZmqError>;
[INFO] [stdout]    | |___________________________________________________________________^ method `Mechanism::into_framer` is reachable at visibility `pub`
[INFO] [stdout]    |
[INFO] [stdout] note: but trait `ISecureFramer` is only usable at visibility `pub(crate)`
[INFO] [stdout]   --> src/security/framer/mod.rs:12:1
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub(crate) trait ISecureFramer: Send + Sync + 'static {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `PipeMessageSender` is more private than the item `ISocket::get_incoming_pipe_sender`
[INFO] [stdout]    --> src/socket/mod.rs:212:3
[INFO] [stdout]     |
[INFO] [stdout] 212 |   fn get_incoming_pipe_sender(&self, _pipe_read_id: usize) -> Option<PipeMessageSender> {
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `ISocket::get_incoming_pipe_sender` is reachable at visibility `pub`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `PipeMessageSender` is only usable at visibility `pub(crate)`
[INFO] [stdout]    --> src/socket/patterns/ready_pipe_queue.rs:961:1
[INFO] [stdout]     |
[INFO] [stdout] 961 | pub(crate) enum PipeMessageSender {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `PipeState` is more private than the item `WritePipeCoordinator::remove_pipe`
[INFO] [stdout]   --> src/socket/patterns/pipe_coordinator.rs:46:3
[INFO] [stdout]    |
[INFO] [stdout] 46 |   pub async fn remove_pipe(&self, pipe_id: PipeId) -> Option<Arc<PipeState>> {
[INFO] [stdout]    |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `WritePipeCoordinator::remove_pipe` is reachable at visibility `pub`
[INFO] [stdout]    |
[INFO] [stdout] note: but type `PipeState` is only usable at visibility `pub(crate)`
[INFO] [stdout]   --> src/socket/patterns/pipe_coordinator.rs:12:1
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub(crate) struct PipeState {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `binder_core_id` is never read
[INFO] [stdout]   --> src/context.rs:25:14
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub(crate) struct InprocBinding {
[INFO] [stdout]    |                   ------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 25 |   pub(crate) binder_core_id: usize,
[INFO] [stdout]    |              ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `InprocBinding` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_socket_command_sender` is never used
[INFO] [stdout]    --> src/context.rs:217:17
[INFO] [stdout]     |
[INFO] [stdout]  55 | impl ContextInner {
[INFO] [stdout]     | ----------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 217 |   pub(crate) fn get_socket_command_sender(&self, handle: usize) -> Option<MailboxSender> {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PeerAddress` is never constructed
[INFO] [stdout]    --> src/message/metadata.rs:103:12
[INFO] [stdout]     |
[INFO] [stdout] 103 | pub struct PeerAddress(pub SocketAddr);
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ZapUserId` is never constructed
[INFO] [stdout]    --> src/message/metadata.rs:106:12
[INFO] [stdout]     |
[INFO] [stdout] 106 | pub struct ZapUserId(pub String);
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `ReadBody` is never constructed
[INFO] [stdout]   --> src/protocol/zmtp/manual_parser.rs:10:3
[INFO] [stdout]    |
[INFO] [stdout]  7 | enum ManualDecodingState {
[INFO] [stdout]    |      ------------------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 10 |   ReadBody {
[INFO] [stdout]    |   ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ManualDecodingState` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `notify` is never read
[INFO] [stdout]  --> src/runtime/latch.rs:8:3
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub(crate) struct CountDownLatch {
[INFO] [stdout]   |                   -------------- field in this struct
[INFO] [stdout] 7 |   count: Arc<AtomicUsize>,
[INFO] [stdout] 8 |   notify: Arc<Notify>,
[INFO] [stdout]   |   ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `CountDownLatch` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `count_down`, and `await_` are never used
[INFO] [stdout]   --> src/runtime/latch.rs:13:10
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl CountDownLatch {
[INFO] [stdout]    | ------------------- associated items in this implementation
[INFO] [stdout] 12 |   /// Creates a new latch initialized with the given count.
[INFO] [stdout] 13 |   pub fn new(count: usize) -> Self {
[INFO] [stdout]    |          ^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |   pub async fn count_down(&self) {
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 37 |   pub async fn await_(&self) {
[INFO] [stdout]    |                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `poll` is never used
[INFO] [stdout]   --> src/runtime/reusable_box.rs:73:10
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl<'a, T> ReusableBoxFuture<'a, T> {
[INFO] [stdout]    | ------------------------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 73 |   pub fn poll(&mut self, cx: &mut Context<'_>) -> Poll<T> {
[INFO] [stdout]    |          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `IDataCipher` is never used
[INFO] [stdout]  --> src/security/cipher.rs:5:11
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub trait IDataCipher: Send + Sync + 'static {
[INFO] [stdout]   |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PassThroughDataCipher` is never constructed
[INFO] [stdout]   --> src/security/cipher.rs:18:19
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub(crate) struct PassThroughDataCipher;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `write_msg_split` and `try_read_msgs_from_bytes` are never used
[INFO] [stdout]   --> src/security/framer/mod.rs:19:6
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub(crate) trait ISecureFramer: Send + Sync + 'static {
[INFO] [stdout]    |                  ------------- methods in this trait
[INFO] [stdout] ...
[INFO] [stdout] 19 |   fn write_msg_split(&mut self, msg: Msg) -> Result<(Bytes, Option<Bytes>), ZmqError> {
[INFO] [stdout]    |      ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |   fn try_read_msgs_from_bytes(
[INFO] [stdout]    |      ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LengthPrefixedFramer` is never constructed
[INFO] [stdout]    --> src/security/framer/mod.rs:109:19
[INFO] [stdout]     |
[INFO] [stdout] 109 | pub(crate) struct LengthPrefixedFramer {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `frame_with_length_prefix` are never used
[INFO] [stdout]    --> src/security/framer/mod.rs:118:17
[INFO] [stdout]     |
[INFO] [stdout] 117 | impl LengthPrefixedFramer {
[INFO] [stdout]     | ------------------------- associated items in this implementation
[INFO] [stdout] 118 |   pub(crate) fn new(cipher: Box<dyn IDataCipher>, max_msg_size: i64, sndbatch_count: usize, sndbatch_bytes_physical: usize) -> Self {
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] ...
[INFO] [stdout] 131 |   fn frame_with_length_prefix(&mut self, plaintext: &[u8]) -> Result<Bytes, ZmqError> {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `ContinueWaiting` is never constructed
[INFO] [stdout]   --> src/security/mechanism.rs:17:3
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub(crate) enum ProcessTokenAction {
[INFO] [stdout]    |                 ------------------ variant in this enum
[INFO] [stdout] 16 |   /// No immediate action is required. The handler should wait for the next event.
[INFO] [stdout] 17 |   ContinueWaiting,
[INFO] [stdout]    |   ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ProcessTokenAction` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Initializing` is never constructed
[INFO] [stdout]   --> src/security/plain.rs:16:3
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum PlainState {
[INFO] [stdout]    |      ---------- variant in this enum
[INFO] [stdout] 16 |   Initializing, // Start state (not strictly used as we set initial state in new())
[INFO] [stdout]    |   ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PlainState` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `peak_messages`, `peak_bytes`, `current_slice`, and `total_pending_bytes` are never used
[INFO] [stdout]    --> src/sessionx/egress_buffer.rs:39:17
[INFO] [stdout]     |
[INFO] [stdout]  14 | impl EgressBuffer {
[INFO] [stdout]     | ----------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  39 |   pub(crate) fn peak_messages(&self) -> usize {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  43 |   pub(crate) fn peak_bytes(&self) -> usize {
[INFO] [stdout]     |                 ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  62 |   pub(crate) fn current_slice(&self) -> Option<&[u8]> {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 123 |   pub(crate) fn total_pending_bytes(&self) -> usize {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `actor_handle` is never read
[INFO] [stdout]   --> src/sessionx/egress_driver.rs:20:3
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub(crate) struct EgressDriver<'a, W: ZmtpWriteHalf> {
[INFO] [stdout]    |                   ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 20 |   actor_handle: usize,
[INFO] [stdout]    |   ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `READ_CHUNK` is never used
[INFO] [stdout]   --> src/sessionx/message_processor.rs:14:7
[INFO] [stdout]    |
[INFO] [stdout] 14 | const READ_CHUNK: usize = 65536 * 2;
[INFO] [stdout]    |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `expecting_first_frame_of_new_zmq_message` is never read
[INFO] [stdout]   --> src/sessionx/cork.rs:14:3
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub(crate) struct TcpCorkInfoX {
[INFO] [stdout]    |                   ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 14 |   expecting_first_frame_of_new_zmq_message: bool,
[INFO] [stdout]    |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TcpCorkInfoX` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `fd`, `is_expecting_first_frame`, and `set_expecting_first_frame` are never used
[INFO] [stdout]   --> src/sessionx/cork.rs:37:17
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl TcpCorkInfoX {
[INFO] [stdout]    | ----------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 37 |   pub(crate) fn fd(&self) -> RawFd {
[INFO] [stdout]    |                 ^^
[INFO] [stdout] ...
[INFO] [stdout] 47 |   pub(crate) fn is_expecting_first_frame(&self) -> bool {
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 54 |   pub(crate) fn set_expecting_first_frame(&mut self, expecting: bool) {
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Initial` is never constructed
[INFO] [stdout]  --> src/sessionx/types.rs:8:3
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub(crate) enum ConnectionPhaseX {
[INFO] [stdout]   |                 ---------------- variant in this enum
[INFO] [stdout] 7 |   /// Actor just started, stream might be present but no pipes from SocketCore yet.
[INFO] [stdout] 8 |   Initial,
[INFO] [stdout]   |   ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `ConnectionPhaseX` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cleanup_session_state_by_uri` is never used
[INFO] [stdout]    --> src/socket/core/pipe_manager.rs:157:21
[INFO] [stdout]     |
[INFO] [stdout] 157 | pub(crate) async fn cleanup_session_state_by_uri(
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cleanup_session_state_by_pipe` is never used
[INFO] [stdout]    --> src/socket/core/pipe_manager.rs:235:21
[INFO] [stdout]     |
[INFO] [stdout] 235 | pub(crate) async fn cleanup_session_state_by_pipe(
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `current_phase` is never used
[INFO] [stdout]   --> src/socket/core/shutdown.rs:14:17
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl ShutdownCoordinator {
[INFO] [stdout]    | ------------------------ method in this implementation
[INFO] [stdout] 14 |   pub(crate) fn current_phase(&self) -> ShutdownPhase {
[INFO] [stdout]    |                 ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_pipe_sender` is never used
[INFO] [stdout]    --> src/socket/core/state.rs:161:17
[INFO] [stdout]     |
[INFO] [stdout] 143 | impl CoreState {
[INFO] [stdout]     | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 161 |   pub(crate) fn get_pipe_sender(&self, pipe_write_id: usize) -> Option<BoundedAsyncSender<FrameBatch>> {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `StoppingChildren` is never constructed
[INFO] [stdout]    --> src/socket/core/state.rs:369:3
[INFO] [stdout]     |
[INFO] [stdout] 367 | pub(crate) enum ShutdownPhase {
[INFO] [stdout]     |                 ------------- variant in this enum
[INFO] [stdout] 368 |   Running,
[INFO] [stdout] 369 |   StoppingChildren,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ShutdownPhase` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `sndtimeo`, `use_recv_multishot`, `rcvhwm`, and `rcvbuf` are never read
[INFO] [stdout]    --> src/socket/options.rs:292:7
[INFO] [stdout]     |
[INFO] [stdout] 280 | pub(crate) struct ZmtpEngineConfig {
[INFO] [stdout]     |                   ---------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 292 |   pub sndtimeo: Option<Duration>,
[INFO] [stdout]     |       ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 299 |   pub use_recv_multishot: bool,
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 324 |   pub rcvhwm: usize,
[INFO] [stdout]     |       ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 332 |   pub rcvbuf: Option<usize>,
[INFO] [stdout]     |       ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ZmtpEngineConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_duration_ms_option` is never used
[INFO] [stdout]    --> src/socket/options.rs:513:15
[INFO] [stdout]     |
[INFO] [stdout] 513 | pub(crate) fn parse_duration_ms_option(value: &[u8]) -> Result<Option<Duration>, ZmqError> {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_key_option` is never used
[INFO] [stdout]    --> src/socket/options.rs:668:15
[INFO] [stdout]     |
[INFO] [stdout] 668 | pub(crate) fn parse_key_option<const N: usize>(
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `decoders` is never read
[INFO] [stdout]   --> src/socket/patterns/framing.rs:21:3
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub(crate) struct FramingLatch {
[INFO] [stdout]    |                   ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 21 |   decoders: [FramingOp; 2],
[INFO] [stdout]    |   ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FramingLatch` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `decode` is never used
[INFO] [stdout]   --> src/socket/patterns/framing.rs:45:10
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl FramingLatch {
[INFO] [stdout]    | ----------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 45 |   pub fn decode(&self, frames: &mut FrameBatch) {
[INFO] [stdout]    |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `wait_for_connection` is never used
[INFO] [stdout]   --> src/socket/patterns/outgoing_orchestrator.rs:34:16
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl OutgoingMessageOrchestrator {
[INFO] [stdout]    | -------------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 34 |   pub async fn wait_for_connection(&self) -> Result<(), ZmqError> {
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `reserved_of` is never used
[INFO] [stdout]    --> src/socket/patterns/ready_pipe_queue.rs:110:4
[INFO] [stdout]     |
[INFO] [stdout] 110 | fn reserved_of(counts: u64) -> usize {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `capacity` and `lwm` are never read
[INFO] [stdout]    --> src/socket/patterns/ready_pipe_queue.rs:162:3
[INFO] [stdout]     |
[INFO] [stdout] 157 | pub(crate) struct PipeSlot<T: Send + 'static> {
[INFO] [stdout]     |                   -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 162 |   capacity: usize,
[INFO] [stdout]     |   ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 175 |   pub(crate) lwm: usize,
[INFO] [stdout]     |              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `reserved`, `capacity`, `is_congested`, and `is_drained` are never used
[INFO] [stdout]    --> src/socket/patterns/ready_pipe_queue.rs:229:10
[INFO] [stdout]     |
[INFO] [stdout] 217 | impl<T: Send + 'static> PipeSlot<T> {
[INFO] [stdout]     | ----------------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 229 |   pub fn reserved(&self) -> usize {
[INFO] [stdout]     |          ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 233 |   pub fn capacity(&self) -> usize {
[INFO] [stdout]     |          ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 237 |   pub fn is_congested(&self) -> bool {
[INFO] [stdout]     |          ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 241 |   pub fn is_drained(&self) -> bool {
[INFO] [stdout]     |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/socket/patterns/ready_pipe_queue.rs:735:10
[INFO] [stdout]     |
[INFO] [stdout] 690 | impl<T: Send + 'static> ReadyPipeSender<T> {
[INFO] [stdout]     | ------------------------------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 735 |   pub fn try_send(&self, item: T) -> Result<(), TrySendError<T>> {
[INFO] [stdout]     |          ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 924 |   pub fn queued_count(&self) -> usize {
[INFO] [stdout]     |          ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 928 |   pub fn reserved_count(&self) -> usize {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 932 |   pub fn len(&self) -> usize {
[INFO] [stdout]     |          ^^^
[INFO] [stdout] ...
[INFO] [stdout] 936 |   pub fn capacity(&self) -> usize {
[INFO] [stdout]     |          ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 944 |   pub fn is_congested(&self) -> bool {
[INFO] [stdout]     |          ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 952 |   pub fn is_drained(&self) -> bool {
[INFO] [stdout]     |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]     --> src/socket/patterns/ready_pipe_queue.rs:1084:10
[INFO] [stdout]      |
[INFO] [stdout] 1023 | impl PipeMessageSender {
[INFO] [stdout]      | ---------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1084 |   pub fn try_send_sync(&self, batch: FrameBatch) -> Result<(), TrySendError<FrameBatch>> {
[INFO] [stdout]      |          ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1214 |   pub fn queued_count(&self) -> usize {
[INFO] [stdout]      |          ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1223 |   pub fn reserved_count(&self) -> usize {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1232 |   pub fn len(&self) -> usize {
[INFO] [stdout]      |          ^^^
[INFO] [stdout] ...
[INFO] [stdout] 1241 |   pub fn capacity(&self) -> usize {
[INFO] [stdout]      |          ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1250 |   pub fn is_congested(&self) -> bool {
[INFO] [stdout]      |          ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1259 |   pub fn is_drained(&self) -> bool {
[INFO] [stdout]      |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_identity_by_read_pipe` is never used
[INFO] [stdout]   --> src/socket/patterns/router.rs:97:16
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl RouterMap {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 97 |   pub async fn get_identity_by_read_pipe(&self, pipe_read_id: usize) -> Option<Blob> {
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `core_state_read` is never used
[INFO] [stdout]   --> src/socket/req_socket.rs:55:6
[INFO] [stdout]    |
[INFO] [stdout] 38 | impl ReqSocket {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 55 |   fn core_state_read(&self) -> RwLockReadGuard<'_, CoreState> {
[INFO] [stdout]    |      ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `try_read_chunk` is never used
[INFO] [stdout]   --> src/transport/mod.rs:47:6
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub(crate) trait ZmtpReadHalf: AsyncRead + Unpin + Send + std::fmt::Debug + 'static {
[INFO] [stdout]    |                  ------------ method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 47 |   fn try_read_chunk(&mut self, _buf: &mut [u8]) -> std::io::Result<usize> {
[INFO] [stdout]    |      ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `set_cork` is never used
[INFO] [stdout]   --> src/transport/mod.rs:69:6
[INFO] [stdout]    |
[INFO] [stdout] 66 | pub(crate) trait ZmtpWriteHalf: AsyncWrite + Unpin + Send + std::fmt::Debug + 'static {
[INFO] [stdout]    |                  ------------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 69 |   fn set_cork(&self, _enable: bool) {}
[INFO] [stdout]    |      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `connection_id` is never read
[INFO] [stdout]   --> src/transport/inproc/connection.rs:15:7
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub(crate) struct DirectInprocConnection {
[INFO] [stdout]    |                   ---------------------- field in this struct
[INFO] [stdout] 15 |   pub connection_id: usize,
[INFO] [stdout]    |       ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DirectInprocConnection` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `connector_id` is never read
[INFO] [stdout]  --> src/transport/inproc/types.rs:8:7
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub(crate) struct InprocHandshakeRequest {
[INFO] [stdout]   |                   ---------------------- field in this struct
[INFO] [stdout] 8 |   pub connector_id: usize,
[INFO] [stdout]   |       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `binder_id` is never read
[INFO] [stdout]   --> src/transport/inproc/types.rs:17:7
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub(crate) struct InprocHandshakeResponse {
[INFO] [stdout]    |                   ----------------------- field in this struct
[INFO] [stdout] 17 |   pub binder_id: usize,
[INFO] [stdout]    |       ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `InprocHandshakeResponse` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `verify_response` is never used
[INFO] [stdout]   --> src/transport/inproc/types.rs:24:10
[INFO] [stdout]    |
[INFO] [stdout] 23 | impl InprocHandshakeRequest {
[INFO] [stdout]    | --------------------------- method in this implementation
[INFO] [stdout] 24 |   pub fn verify_response(&self, response: &InprocHandshakeResponse) -> Result<(), ZmqError> {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/transport/inproc_stream.rs:18:17
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl InprocStream {
[INFO] [stdout]    | ----------------- associated function in this implementation
[INFO] [stdout] 18 |   pub(crate) fn new(inner: tokio::io::DuplexStream) -> Self {
[INFO] [stdout]    |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `socket_logic` is never read
[INFO] [stdout]   --> src/transport/ipc.rs:49:3
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub(crate) struct IpcListener {
[INFO] [stdout]    |                   ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 49 |   socket_logic: Arc<dyn ISocket>,
[INFO] [stdout]    |   ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `socket_logic` is never read
[INFO] [stdout]   --> src/transport/tcp.rs:53:3
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub(crate) struct TcpListener {
[INFO] [stdout]    |                   ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 53 |   socket_logic: Arc<dyn ISocket>,
[INFO] [stdout]    |   ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `begin_work` is never used
[INFO] [stdout]    --> src/throttle/mod.rs:107:10
[INFO] [stdout]     |
[INFO] [stdout]  78 | impl AdaptiveThrottle {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 107 |   pub fn begin_work(&self, dir: Direction) -> ThrottleGuard {
[INFO] [stdout]     |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_current_balance` is never used
[INFO] [stdout]    --> src/throttle/mod.rs:194:10
[INFO] [stdout]     |
[INFO] [stdout] 193 | impl ThrottleGuard {
[INFO] [stdout]     | ------------------ method in this implementation
[INFO] [stdout] 194 |   pub fn get_current_balance(&self) -> i32 {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `linear_strategy` is never used
[INFO] [stdout]   --> src/throttle/strategies.rs:35:8
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub fn linear_strategy(state: &ThrottleStateView) -> f64 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ProfileGuard` is never constructed
[INFO] [stdout]   --> src/profiler.rs:92:14
[INFO] [stdout]    |
[INFO] [stdout] 92 |   pub struct ProfileGuard;
[INFO] [stdout]    |              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LoopProfiler` is never constructed
[INFO] [stdout]   --> src/profiler.rs:95:14
[INFO] [stdout]    |
[INFO] [stdout] 95 |   pub struct LoopProfiler;
[INFO] [stdout]    |              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `loop_start`, `profile`, and `log_and_reset_for_next_loop` are never used
[INFO] [stdout]    --> src/profiler.rs:99:12
[INFO] [stdout]     |
[INFO] [stdout]  97 |   impl LoopProfiler {
[INFO] [stdout]     |   ----------------- associated items in this implementation
[INFO] [stdout]  98 |     #[inline(always)]
[INFO] [stdout]  99 |     pub fn new(_threshold: Duration, _log_interval: usize) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 104 |     pub fn loop_start(&mut self) {}
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 107 |     pub fn profile(&mut self, _index: usize, _label: &'static str) -> ProfileGuard {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 112 |     pub fn log_and_reset_for_next_loop(&mut self) {}
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/security/plain.rs:347:9
[INFO] [stdout]     |
[INFO] [stdout] 347 |         "PLAIN handshake not complete.".into(),
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: `#[deny(self_type_conversion)]` on by default
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 347 -         "PLAIN handshake not complete.".into(),
[INFO] [stdout] 347 +         "PLAIN handshake not complete.",
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 347 -         "PLAIN handshake not complete.".into(),
[INFO] [stdout] 347 +         <&str as Into<_>>::into("PLAIN handshake not complete."),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/core/command_processor.rs:123:11
[INFO] [stdout]     |
[INFO] [stdout] 123 |           "Socket is shutting down".into(),
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 123 -           "Socket is shutting down".into(),
[INFO] [stdout] 123 +           "Socket is shutting down",
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 123 -           "Socket is shutting down".into(),
[INFO] [stdout] 123 +           <&str as Into<_>>::into("Socket is shutting down"),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/core/command_processor.rs:128:11
[INFO] [stdout]     |
[INFO] [stdout] 128 |           "Socket is shutting down".into(),
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 128 -           "Socket is shutting down".into(),
[INFO] [stdout] 128 +           "Socket is shutting down",
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 128 -           "Socket is shutting down".into(),
[INFO] [stdout] 128 +           <&str as Into<_>>::into("Socket is shutting down"),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/core/command_processor.rs:133:11
[INFO] [stdout]     |
[INFO] [stdout] 133 |           "Socket is shutting down".into(),
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 133 -           "Socket is shutting down".into(),
[INFO] [stdout] 133 +           "Socket is shutting down",
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 133 -           "Socket is shutting down".into(),
[INFO] [stdout] 133 +           <&str as Into<_>>::into("Socket is shutting down"),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/core/event_processor.rs:164:15
[INFO] [stdout]     |
[INFO] [stdout] 164 |               "Binder socket is shutting down".into(),
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 164 -               "Binder socket is shutting down".into(),
[INFO] [stdout] 164 +               "Binder socket is shutting down",
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 164 -               "Binder socket is shutting down".into(),
[INFO] [stdout] 164 +               <&str as Into<_>>::into("Binder socket is shutting down"),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/patterns/load_balancer.rs:101:43
[INFO] [stdout]     |
[INFO] [stdout] 101 |         return Err(ZmqError::InvalidState("Socket closed".into()));
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 101 -         return Err(ZmqError::InvalidState("Socket closed".into()));
[INFO] [stdout] 101 +         return Err(ZmqError::InvalidState("Socket closed"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 101 -         return Err(ZmqError::InvalidState("Socket closed".into()));
[INFO] [stdout] 101 +         return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket closed")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]   --> src/socket/connection_iface.rs:70:7
[INFO] [stdout]    |
[INFO] [stdout] 70 |       "DummyConnection cannot send".into(),
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 70 -       "DummyConnection cannot send".into(),
[INFO] [stdout] 70 +       "DummyConnection cannot send",
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 70 -       "DummyConnection cannot send".into(),
[INFO] [stdout] 70 +       <&str as Into<_>>::into("DummyConnection cannot send"),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]   --> src/socket/connection_iface.rs:76:7
[INFO] [stdout]    |
[INFO] [stdout] 76 |       "DummyConnection cannot send multipart".into(),
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 76 -       "DummyConnection cannot send multipart".into(),
[INFO] [stdout] 76 +       "DummyConnection cannot send multipart",
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 76 -       "DummyConnection cannot send multipart".into(),
[INFO] [stdout] 76 +       <&str as Into<_>>::into("DummyConnection cannot send multipart"),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/dealer_socket.rs:298:41
[INFO] [stdout]     |
[INFO] [stdout] 298 |       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 298 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 298 +       return Err(ZmqError::InvalidState("Socket is closing"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 298 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 298 +       return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/dealer_socket.rs:369:47
[INFO] [stdout]     |
[INFO] [stdout] 369 |       return Err((msg, ZmqError::InvalidState("Socket is closing".into())));
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 369 -       return Err((msg, ZmqError::InvalidState("Socket is closing".into())));
[INFO] [stdout] 369 +       return Err((msg, ZmqError::InvalidState("Socket is closing")));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 369 -       return Err((msg, ZmqError::InvalidState("Socket is closing".into())));
[INFO] [stdout] 369 +       return Err((msg, ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing"))));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/dealer_socket.rs:392:41
[INFO] [stdout]     |
[INFO] [stdout] 392 |       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 392 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 392 +       return Err(ZmqError::InvalidState("Socket is closing"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 392 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 392 +       return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/dealer_socket.rs:426:80
[INFO] [stdout]     |
[INFO] [stdout] 426 | ...   _ = closing_signal_future => return Err(ZmqError::InvalidState("Socket is closing while waiting for prior send tx".into())),
[INFO] [stdout]     |                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 426 -                 _ = closing_signal_future => return Err(ZmqError::InvalidState("Socket is closing while waiting for prior send tx".into())),
[INFO] [stdout] 426 +                 _ = closing_signal_future => return Err(ZmqError::InvalidState("Socket is closing while waiting for prior send tx")),
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 426 -                 _ = closing_signal_future => return Err(ZmqError::InvalidState("Socket is closing while waiting for prior send tx".into())),
[INFO] [stdout] 426 +                 _ = closing_signal_future => return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing while waiting for prior send tx"))),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/dealer_socket.rs:435:80
[INFO] [stdout]     |
[INFO] [stdout] 435 | ...   _ = closing_signal_future => return Err(ZmqError::InvalidState("Socket is closing while waiting for prior send tx".into())),
[INFO] [stdout]     |                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 435 -                 _ = closing_signal_future => return Err(ZmqError::InvalidState("Socket is closing while waiting for prior send tx".into())),
[INFO] [stdout] 435 +                 _ = closing_signal_future => return Err(ZmqError::InvalidState("Socket is closing while waiting for prior send tx")),
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 435 -                 _ = closing_signal_future => return Err(ZmqError::InvalidState("Socket is closing while waiting for prior send tx".into())),
[INFO] [stdout] 435 +                 _ = closing_signal_future => return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing while waiting for prior send tx"))),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/dealer_socket.rs:447:41
[INFO] [stdout]     |
[INFO] [stdout] 447 |       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 447 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 447 +       return Err(ZmqError::InvalidState("Socket is closing"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 447 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 447 +       return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/dealer_socket.rs:478:41
[INFO] [stdout]     |
[INFO] [stdout] 478 |       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 478 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 478 +       return Err(ZmqError::InvalidState("Socket is closing"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 478 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 478 +       return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/dealer_socket.rs:601:9
[INFO] [stdout]     |
[INFO] [stdout] 601 |         "Socket is closing or terminated".into(),
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 601 -         "Socket is closing or terminated".into(),
[INFO] [stdout] 601 +         "Socket is closing or terminated",
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 601 -         "Socket is closing or terminated".into(),
[INFO] [stdout] 601 +         <&str as Into<_>>::into("Socket is closing or terminated"),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/dealer_socket.rs:634:11
[INFO] [stdout]     |
[INFO] [stdout] 634 |           "Socket is closing while trying to queue".into(),
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 634 -           "Socket is closing while trying to queue".into(),
[INFO] [stdout] 634 +           "Socket is closing while trying to queue",
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 634 -           "Socket is closing while trying to queue".into(),
[INFO] [stdout] 634 +           <&str as Into<_>>::into("Socket is closing while trying to queue"),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/dealer_socket.rs:657:49
[INFO] [stdout]     |
[INFO] [stdout] 657 |               return Err(ZmqError::InvalidState("Socket is closing while waiting for queue space".into()));
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 657 -               return Err(ZmqError::InvalidState("Socket is closing while waiting for queue space".into()));
[INFO] [stdout] 657 +               return Err(ZmqError::InvalidState("Socket is closing while waiting for queue space"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 657 -               return Err(ZmqError::InvalidState("Socket is closing while waiting for queue space".into()));
[INFO] [stdout] 657 +               return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing while waiting for queue space")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/pub_socket.rs:105:41
[INFO] [stdout]     |
[INFO] [stdout] 105 |       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 105 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 105 +       return Err(ZmqError::InvalidState("Socket is closing"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 105 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 105 +       return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/pub_socket.rs:130:41
[INFO] [stdout]     |
[INFO] [stdout] 130 |       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 130 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 130 +       return Err(ZmqError::InvalidState("Socket is closing"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 130 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 130 +       return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]   --> src/socket/pull_socket.rs:71:32
[INFO] [stdout]    |
[INFO] [stdout] 71 |     Err(ZmqError::InvalidState("PULL sockets cannot send messages".into()))
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 71 -     Err(ZmqError::InvalidState("PULL sockets cannot send messages".into()))
[INFO] [stdout] 71 +     Err(ZmqError::InvalidState("PULL sockets cannot send messages"))
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 71 -     Err(ZmqError::InvalidState("PULL sockets cannot send messages".into()))
[INFO] [stdout] 71 +     Err(ZmqError::InvalidState(<&str as Into<_>>::into("PULL sockets cannot send messages")))
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]   --> src/socket/pull_socket.rs:76:41
[INFO] [stdout]    |
[INFO] [stdout] 76 |       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 76 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 76 +       return Err(ZmqError::InvalidState("Socket is closing"));
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 76 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 76 +       return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing")));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]   --> src/socket/pull_socket.rs:83:32
[INFO] [stdout]    |
[INFO] [stdout] 83 |     Err(ZmqError::InvalidState("PULL sockets cannot send messages".into()))
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 83 -     Err(ZmqError::InvalidState("PULL sockets cannot send messages".into()))
[INFO] [stdout] 83 +     Err(ZmqError::InvalidState("PULL sockets cannot send messages"))
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 83 -     Err(ZmqError::InvalidState("PULL sockets cannot send messages".into()))
[INFO] [stdout] 83 +     Err(ZmqError::InvalidState(<&str as Into<_>>::into("PULL sockets cannot send messages")))
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]   --> src/socket/pull_socket.rs:88:41
[INFO] [stdout]    |
[INFO] [stdout] 88 |       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 88 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 88 +       return Err(ZmqError::InvalidState("Socket is closing"));
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 88 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 88 +       return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing")));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]   --> src/socket/push_socket.rs:87:47
[INFO] [stdout]    |
[INFO] [stdout] 87 |       return Err((msg, ZmqError::InvalidState("Socket is closing".into())));
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 87 -       return Err((msg, ZmqError::InvalidState("Socket is closing".into())));
[INFO] [stdout] 87 +       return Err((msg, ZmqError::InvalidState("Socket is closing")));
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 87 -       return Err((msg, ZmqError::InvalidState("Socket is closing".into())));
[INFO] [stdout] 87 +       return Err((msg, ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing"))));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/rep_socket.rs:135:41
[INFO] [stdout]     |
[INFO] [stdout] 135 |       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 135 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 135 +       return Err(ZmqError::InvalidState("Socket is closing"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 135 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 135 +       return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/rep_socket.rs:147:41
[INFO] [stdout]     |
[INFO] [stdout] 147 |       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 147 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 147 +       return Err(ZmqError::InvalidState("Socket is closing"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 147 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 147 +       return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/rep_socket.rs:169:41
[INFO] [stdout]     |
[INFO] [stdout] 169 |       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 169 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 169 +       return Err(ZmqError::InvalidState("Socket is closing"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 169 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 169 +       return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/rep_socket.rs:233:41
[INFO] [stdout]     |
[INFO] [stdout] 233 |       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 233 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 233 +       return Err(ZmqError::InvalidState("Socket is closing"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 233 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 233 +       return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/req_socket.rs:114:41
[INFO] [stdout]     |
[INFO] [stdout] 114 |       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 114 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 114 +       return Err(ZmqError::InvalidState("Socket is closing"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 114 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 114 +       return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/req_socket.rs:143:45
[INFO] [stdout]     |
[INFO] [stdout] 143 |           return Err(ZmqError::InvalidState("Socket terminated".into()));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 143 -           return Err(ZmqError::InvalidState("Socket terminated".into()));
[INFO] [stdout] 143 +           return Err(ZmqError::InvalidState("Socket terminated"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 143 -           return Err(ZmqError::InvalidState("Socket terminated".into()));
[INFO] [stdout] 143 +           return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket terminated")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/req_socket.rs:189:41
[INFO] [stdout]     |
[INFO] [stdout] 189 |       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 189 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 189 +       return Err(ZmqError::InvalidState("Socket is closing"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 189 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 189 +       return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/req_socket.rs:226:66
[INFO] [stdout]     |
[INFO] [stdout] 226 |                 received_msg_result = Err(ZmqError::InvalidState("Socket state changed while waiting for reply".into()));
[INFO] [stdout]     |                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 226 -                 received_msg_result = Err(ZmqError::InvalidState("Socket state changed while waiting for reply".into()));
[INFO] [stdout] 226 +                 received_msg_result = Err(ZmqError::InvalidState("Socket state changed while waiting for reply"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 226 -                 received_msg_result = Err(ZmqError::InvalidState("Socket state changed while waiting for reply".into()));
[INFO] [stdout] 226 +                 received_msg_result = Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket state changed while waiting for reply")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/req_socket.rs:273:7
[INFO] [stdout]     |
[INFO] [stdout] 273 |       "REQ sockets use send() for single-part requests. Use DEALER for general multipart messaging.".into(),
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 273 -       "REQ sockets use send() for single-part requests. Use DEALER for general multipart messaging.".into(),
[INFO] [stdout] 273 +       "REQ sockets use send() for single-part requests. Use DEALER for general multipart messaging.",
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 273 -       "REQ sockets use send() for single-part requests. Use DEALER for general multipart messaging.".into(),
[INFO] [stdout] 273 +       <&str as Into<_>>::into("REQ sockets use send() for single-part requests. Use DEALER for general multipart messaging."),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/req_socket.rs:279:41
[INFO] [stdout]     |
[INFO] [stdout] 279 |       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 279 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 279 +       return Err(ZmqError::InvalidState("Socket is closing"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 279 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 279 +       return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/router_socket.rs:340:41
[INFO] [stdout]     |
[INFO] [stdout] 340 |       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 340 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 340 +       return Err(ZmqError::InvalidState("Socket is closing"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 340 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 340 +       return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/router_socket.rs:532:41
[INFO] [stdout]     |
[INFO] [stdout] 532 |       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 532 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 532 +       return Err(ZmqError::InvalidState("Socket is closing"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 532 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 532 +       return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/router_socket.rs:564:41
[INFO] [stdout]     |
[INFO] [stdout] 564 |       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 564 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 564 +       return Err(ZmqError::InvalidState("Socket is closing"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 564 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 564 +       return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/router_socket.rs:689:41
[INFO] [stdout]     |
[INFO] [stdout] 689 |       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 689 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 689 +       return Err(ZmqError::InvalidState("Socket is closing"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 689 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 689 +       return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/sub_socket.rs:162:41
[INFO] [stdout]     |
[INFO] [stdout] 162 |       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 162 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 162 +       return Err(ZmqError::InvalidState("Socket is closing"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 162 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 162 +       return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/sub_socket.rs:174:41
[INFO] [stdout]     |
[INFO] [stdout] 174 |       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 174 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 174 +       return Err(ZmqError::InvalidState("Socket is closing"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 174 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 174 +       return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/socket/core/inproc_reader.rs:29:7
[INFO] [stdout]    |
[INFO] [stdout] 29 |       rx.try_recv_batch_mut(&mut drain_buf, rcvbatch_count - 1);
[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)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 29 |       let _ = rx.try_recv_batch_mut(&mut drain_buf, rcvbatch_count - 1);
[INFO] [stdout]    |       +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/socket/patterns/ready_pipe_queue.rs:676:5
[INFO] [stdout]     |
[INFO] [stdout] 676 |     self.ready_tx.close();
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 676 |     let _ = self.ready_tx.close();
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/transport/inproc/connection.rs:114:5
[INFO] [stdout]     |
[INFO] [stdout] 114 |     self.peer_queue_sender.close();
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 114 |     let _ = self.peer_queue_sender.close();
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `popped_msgs`
[INFO] [stdout]   --> src/sessionx/egress_driver.rs:75:11
[INFO] [stdout]    |
[INFO] [stdout] 75 |       let popped_msgs = this.egress_buffer.advance(n);
[INFO] [stdout]    |           ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_popped_msgs`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rzmq` (lib) due to 41 previous errors; 114 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: unused variable: `site`
[INFO] [stdout]    --> src/socket/patterns/ready_pipe_queue.rs:305:3
[INFO] [stdout]     |
[INFO] [stdout] 305 |   site: &str,
[INFO] [stdout]     |   ^^^^ help: if this is intentional, prefix it with an underscore: `_site`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `spins` is assigned to, but never used
[INFO] [stdout]    --> src/socket/patterns/ready_pipe_queue.rs:307:7
[INFO] [stdout]     |
[INFO] [stdout] 307 |   let mut spins = 0usize;
[INFO] [stdout]     |       ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_spins` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `spins` is never read
[INFO] [stdout]    --> src/socket/patterns/ready_pipe_queue.rs:312:9
[INFO] [stdout]     |
[INFO] [stdout] 312 |         spins += 1;
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `seq` is never read
[INFO] [stdout]     --> src/socket/patterns/ready_pipe_queue.rs:1768:11
[INFO] [stdout]      |
[INFO] [stdout] 1768 |           seq += 1;
[INFO] [stdout]      |           ^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `use_io_uring`
[INFO] [stdout]    --> src/transport/ipc.rs:294:15
[INFO] [stdout]     |
[INFO] [stdout] 294 |           let use_io_uring = false;
[INFO] [stdout]     |               ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_use_io_uring`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `connect_use_io_uring`
[INFO] [stdout]    --> src/transport/ipc.rs:604:17
[INFO] [stdout]     |
[INFO] [stdout] 604 |             let connect_use_io_uring = false;
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_connect_use_io_uring`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `socket_type`
[INFO] [stdout]    --> src/transport/tcp.rs:501:25
[INFO] [stdout]     |
[INFO] [stdout] 501 |                     let socket_type = socket_options_clone.socket_type_name.as_str();
[INFO] [stdout]     |                         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_socket_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `setup_successful` is never read
[INFO] [stdout]    --> src/transport/tcp.rs:483:19
[INFO] [stdout]     |
[INFO] [stdout] 483 |                   setup_successful = false;
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `socket_type`
[INFO] [stdout]     --> src/transport/tcp.rs:1093:17
[INFO] [stdout]      |
[INFO] [stdout] 1093 |             let socket_type = self.socket_options.socket_type_name.as_str();
[INFO] [stdout]      |                 ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_socket_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `options::ZmtpEngineConfig` is more private than the item `engine::ZmtpEngine::new`
[INFO] [stdout]    --> src/protocol/zmtp/engine.rs:84:3
[INFO] [stdout]     |
[INFO] [stdout]  84 |   pub fn new(is_server: bool, config: Arc<ZmtpEngineConfig>) -> Self {
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ associated function `engine::ZmtpEngine::new` is reachable at visibility `pub`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `options::ZmtpEngineConfig` is only usable at visibility `pub(crate)`
[INFO] [stdout]    --> src/socket/options.rs:280:1
[INFO] [stdout]     |
[INFO] [stdout] 280 | pub(crate) struct ZmtpEngineConfig {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `options::ZmtpEngineConfig` is more private than the item `engine::ZmtpEngine::config`
[INFO] [stdout]    --> src/protocol/zmtp/engine.rs:134:3
[INFO] [stdout]     |
[INFO] [stdout] 134 |   pub fn config(&self) -> &Arc<ZmtpEngineConfig> {
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `engine::ZmtpEngine::config` is reachable at visibility `pub`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `options::ZmtpEngineConfig` is only usable at visibility `pub(crate)`
[INFO] [stdout]    --> src/socket/options.rs:280:1
[INFO] [stdout]     |
[INFO] [stdout] 280 | pub(crate) struct ZmtpEngineConfig {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `PipeMessageSender` is more private than the item `runtime::command::Command::ScaInitializePipes::incoming_pipe_sender`
[INFO] [stdout]    --> src/runtime/command.rs:103:5
[INFO] [stdout]     |
[INFO] [stdout] 103 |     incoming_pipe_sender: Option<PipeMessageSender>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field `runtime::command::Command::ScaInitializePipes::incoming_pipe_sender` is reachable at visibility `pub`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `PipeMessageSender` is only usable at visibility `pub(crate)`
[INFO] [stdout]    --> src/socket/patterns/ready_pipe_queue.rs:961:1
[INFO] [stdout]     |
[INFO] [stdout] 961 | pub(crate) enum PipeMessageSender {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `connection_iface::ISocketConnection` is more private than the item `runtime::command::Command::NewConnectionEstablished::connection_iface`
[INFO] [stdout]    --> src/runtime/command.rs:110:5
[INFO] [stdout]     |
[INFO] [stdout] 110 |     connection_iface: Option<Arc<dyn ISocketConnection>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field `runtime::command::Command::NewConnectionEstablished::connection_iface` is reachable at visibility `pub`
[INFO] [stdout]     |
[INFO] [stdout] note: but trait `connection_iface::ISocketConnection` is only usable at visibility `pub(crate)`
[INFO] [stdout]    --> src/socket/connection_iface.rs:32:1
[INFO] [stdout]     |
[INFO] [stdout]  32 | pub(crate) trait ISocketConnection: Send + Sync + fmt::Debug {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `inproc::types::InprocHandshakeRequest` is more private than the item `SystemEvent::InprocBindingRequest::handshake_request`
[INFO] [stdout]    --> src/runtime/system_events.rs:129:5
[INFO] [stdout]     |
[INFO] [stdout] 129 |     handshake_request: Arc<std::sync::Mutex<Option<InprocHandshakeRequest>>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field `SystemEvent::InprocBindingRequest::handshake_request` is reachable at visibility `pub`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `inproc::types::InprocHandshakeRequest` is only usable at visibility `pub(crate)`
[INFO] [stdout]    --> src/transport/inproc/types.rs:7:1
[INFO] [stdout]     |
[INFO] [stdout]   7 | pub(crate) struct InprocHandshakeRequest {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `ProcessTokenAction` is more private than the item `Mechanism::process_token`
[INFO] [stdout]   --> src/security/mechanism.rs:35:3
[INFO] [stdout]    |
[INFO] [stdout] 35 |   fn process_token(&mut self, token: &[u8]) -> Result<ProcessTokenAction, ZmqError>;
[INFO] [stdout]    |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `Mechanism::process_token` is reachable at visibility `pub`
[INFO] [stdout]    |
[INFO] [stdout] note: but type `ProcessTokenAction` is only usable at visibility `pub(crate)`
[INFO] [stdout]   --> src/security/mechanism.rs:15:1
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub(crate) enum ProcessTokenAction {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `ISecureFramer` is more private than the item `Mechanism::into_framer`
[INFO] [stdout]   --> src/security/mechanism.rs:87:3
[INFO] [stdout]    |
[INFO] [stdout] 87 | /   fn into_framer(
[INFO] [stdout] 88 | |     self: Box<Self>,
[INFO] [stdout] 89 | |     max_msg_size: i64,
[INFO] [stdout] 90 | |     sndbatch_count: usize,
[INFO] [stdout] 91 | |     sndbatch_bytes_physical: usize,
[INFO] [stdout] 92 | |   ) -> Result<(Box<dyn ISecureFramer>, Option<Vec<u8>>), ZmqError>;
[INFO] [stdout]    | |___________________________________________________________________^ method `Mechanism::into_framer` is reachable at visibility `pub`
[INFO] [stdout]    |
[INFO] [stdout] note: but trait `ISecureFramer` is only usable at visibility `pub(crate)`
[INFO] [stdout]   --> src/security/framer/mod.rs:12:1
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub(crate) trait ISecureFramer: Send + Sync + 'static {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `PipeMessageSender` is more private than the item `ISocket::get_incoming_pipe_sender`
[INFO] [stdout]    --> src/socket/mod.rs:212:3
[INFO] [stdout]     |
[INFO] [stdout] 212 |   fn get_incoming_pipe_sender(&self, _pipe_read_id: usize) -> Option<PipeMessageSender> {
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `ISocket::get_incoming_pipe_sender` is reachable at visibility `pub`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `PipeMessageSender` is only usable at visibility `pub(crate)`
[INFO] [stdout]    --> src/socket/patterns/ready_pipe_queue.rs:961:1
[INFO] [stdout]     |
[INFO] [stdout] 961 | pub(crate) enum PipeMessageSender {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `PipeState` is more private than the item `pipe_coordinator::WritePipeCoordinator::remove_pipe`
[INFO] [stdout]   --> src/socket/patterns/pipe_coordinator.rs:46:3
[INFO] [stdout]    |
[INFO] [stdout] 46 |   pub async fn remove_pipe(&self, pipe_id: PipeId) -> Option<Arc<PipeState>> {
[INFO] [stdout]    |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `pipe_coordinator::WritePipeCoordinator::remove_pipe` is reachable at visibility `pub`
[INFO] [stdout]    |
[INFO] [stdout] note: but type `PipeState` is only usable at visibility `pub(crate)`
[INFO] [stdout]   --> src/socket/patterns/pipe_coordinator.rs:12:1
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub(crate) struct PipeState {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_socket_command_sender` is never used
[INFO] [stdout]    --> src/context.rs:217:17
[INFO] [stdout]     |
[INFO] [stdout]  55 | impl ContextInner {
[INFO] [stdout]     | ----------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 217 |   pub(crate) fn get_socket_command_sender(&self, handle: usize) -> Option<MailboxSender> {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `ReadBody` is never constructed
[INFO] [stdout]   --> src/protocol/zmtp/manual_parser.rs:10:3
[INFO] [stdout]    |
[INFO] [stdout]  7 | enum ManualDecodingState {
[INFO] [stdout]    |      ------------------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 10 |   ReadBody {
[INFO] [stdout]    |   ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ManualDecodingState` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `poll` is never used
[INFO] [stdout]   --> src/runtime/reusable_box.rs:73:10
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl<'a, T> ReusableBoxFuture<'a, T> {
[INFO] [stdout]    | ------------------------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 73 |   pub fn poll(&mut self, cx: &mut Context<'_>) -> Poll<T> {
[INFO] [stdout]    |          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `IDataCipher` is never used
[INFO] [stdout]  --> src/security/cipher.rs:5:11
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub trait IDataCipher: Send + Sync + 'static {
[INFO] [stdout]   |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PassThroughDataCipher` is never constructed
[INFO] [stdout]   --> src/security/cipher.rs:18:19
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub(crate) struct PassThroughDataCipher;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `write_msg_split` and `try_read_msgs_from_bytes` are never used
[INFO] [stdout]   --> src/security/framer/mod.rs:19:6
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub(crate) trait ISecureFramer: Send + Sync + 'static {
[INFO] [stdout]    |                  ------------- methods in this trait
[INFO] [stdout] ...
[INFO] [stdout] 19 |   fn write_msg_split(&mut self, msg: Msg) -> Result<(Bytes, Option<Bytes>), ZmqError> {
[INFO] [stdout]    |      ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |   fn try_read_msgs_from_bytes(
[INFO] [stdout]    |      ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LengthPrefixedFramer` is never constructed
[INFO] [stdout]    --> src/security/framer/mod.rs:109:19
[INFO] [stdout]     |
[INFO] [stdout] 109 | pub(crate) struct LengthPrefixedFramer {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `frame_with_length_prefix` are never used
[INFO] [stdout]    --> src/security/framer/mod.rs:118:17
[INFO] [stdout]     |
[INFO] [stdout] 117 | impl LengthPrefixedFramer {
[INFO] [stdout]     | ------------------------- associated items in this implementation
[INFO] [stdout] 118 |   pub(crate) fn new(cipher: Box<dyn IDataCipher>, max_msg_size: i64, sndbatch_count: usize, sndbatch_bytes_physical: usize) -> Self {
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] ...
[INFO] [stdout] 131 |   fn frame_with_length_prefix(&mut self, plaintext: &[u8]) -> Result<Bytes, ZmqError> {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `ContinueWaiting` is never constructed
[INFO] [stdout]   --> src/security/mechanism.rs:17:3
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub(crate) enum ProcessTokenAction {
[INFO] [stdout]    |                 ------------------ variant in this enum
[INFO] [stdout] 16 |   /// No immediate action is required. The handler should wait for the next event.
[INFO] [stdout] 17 |   ContinueWaiting,
[INFO] [stdout]    |   ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ProcessTokenAction` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Initializing` is never constructed
[INFO] [stdout]   --> src/security/plain.rs:16:3
[INFO] [stdout]    |
[INFO] [stdout] 15 | enum PlainState {
[INFO] [stdout]    |      ---------- variant in this enum
[INFO] [stdout] 16 |   Initializing, // Start state (not strictly used as we set initial state in new())
[INFO] [stdout]    |   ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PlainState` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `peak_messages` and `peak_bytes` are never used
[INFO] [stdout]   --> src/sessionx/egress_buffer.rs:39:17
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl EgressBuffer {
[INFO] [stdout]    | ----------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 39 |   pub(crate) fn peak_messages(&self) -> usize {
[INFO] [stdout]    |                 ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 43 |   pub(crate) fn peak_bytes(&self) -> usize {
[INFO] [stdout]    |                 ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `actor_handle` is never read
[INFO] [stdout]   --> src/sessionx/egress_driver.rs:20:3
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub(crate) struct EgressDriver<'a, W: ZmtpWriteHalf> {
[INFO] [stdout]    |                   ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 20 |   actor_handle: usize,
[INFO] [stdout]    |   ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `READ_CHUNK` is never used
[INFO] [stdout]   --> src/sessionx/message_processor.rs:14:7
[INFO] [stdout]    |
[INFO] [stdout] 14 | const READ_CHUNK: usize = 65536 * 2;
[INFO] [stdout]    |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `expecting_first_frame_of_new_zmq_message` is never read
[INFO] [stdout]   --> src/sessionx/cork.rs:14:3
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub(crate) struct TcpCorkInfoX {
[INFO] [stdout]    |                   ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 14 |   expecting_first_frame_of_new_zmq_message: bool,
[INFO] [stdout]    |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TcpCorkInfoX` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `fd`, `is_expecting_first_frame`, and `set_expecting_first_frame` are never used
[INFO] [stdout]   --> src/sessionx/cork.rs:37:17
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl TcpCorkInfoX {
[INFO] [stdout]    | ----------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 37 |   pub(crate) fn fd(&self) -> RawFd {
[INFO] [stdout]    |                 ^^
[INFO] [stdout] ...
[INFO] [stdout] 47 |   pub(crate) fn is_expecting_first_frame(&self) -> bool {
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 54 |   pub(crate) fn set_expecting_first_frame(&mut self, expecting: bool) {
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Initial` is never constructed
[INFO] [stdout]  --> src/sessionx/types.rs:8:3
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub(crate) enum ConnectionPhaseX {
[INFO] [stdout]   |                 ---------------- variant in this enum
[INFO] [stdout] 7 |   /// Actor just started, stream might be present but no pipes from SocketCore yet.
[INFO] [stdout] 8 |   Initial,
[INFO] [stdout]   |   ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `ConnectionPhaseX` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cleanup_session_state_by_uri` is never used
[INFO] [stdout]    --> src/socket/core/pipe_manager.rs:157:21
[INFO] [stdout]     |
[INFO] [stdout] 157 | pub(crate) async fn cleanup_session_state_by_uri(
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cleanup_session_state_by_pipe` is never used
[INFO] [stdout]    --> src/socket/core/pipe_manager.rs:235:21
[INFO] [stdout]     |
[INFO] [stdout] 235 | pub(crate) async fn cleanup_session_state_by_pipe(
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `current_phase` is never used
[INFO] [stdout]   --> src/socket/core/shutdown.rs:14:17
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl ShutdownCoordinator {
[INFO] [stdout]    | ------------------------ method in this implementation
[INFO] [stdout] 14 |   pub(crate) fn current_phase(&self) -> ShutdownPhase {
[INFO] [stdout]    |                 ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_pipe_sender` is never used
[INFO] [stdout]    --> src/socket/core/state.rs:161:17
[INFO] [stdout]     |
[INFO] [stdout] 143 | impl CoreState {
[INFO] [stdout]     | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 161 |   pub(crate) fn get_pipe_sender(&self, pipe_write_id: usize) -> Option<BoundedAsyncSender<FrameBatch>> {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `StoppingChildren` is never constructed
[INFO] [stdout]    --> src/socket/core/state.rs:369:3
[INFO] [stdout]     |
[INFO] [stdout] 367 | pub(crate) enum ShutdownPhase {
[INFO] [stdout]     |                 ------------- variant in this enum
[INFO] [stdout] 368 |   Running,
[INFO] [stdout] 369 |   StoppingChildren,
[INFO] [stdout]     |   ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ShutdownPhase` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `sndtimeo`, `use_recv_multishot`, `rcvhwm`, and `rcvbuf` are never read
[INFO] [stdout]    --> src/socket/options.rs:292:7
[INFO] [stdout]     |
[INFO] [stdout] 280 | pub(crate) struct ZmtpEngineConfig {
[INFO] [stdout]     |                   ---------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 292 |   pub sndtimeo: Option<Duration>,
[INFO] [stdout]     |       ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 299 |   pub use_recv_multishot: bool,
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 324 |   pub rcvhwm: usize,
[INFO] [stdout]     |       ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 332 |   pub rcvbuf: Option<usize>,
[INFO] [stdout]     |       ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ZmtpEngineConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_duration_ms_option` is never used
[INFO] [stdout]    --> src/socket/options.rs:513:15
[INFO] [stdout]     |
[INFO] [stdout] 513 | pub(crate) fn parse_duration_ms_option(value: &[u8]) -> Result<Option<Duration>, ZmqError> {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_key_option` is never used
[INFO] [stdout]    --> src/socket/options.rs:668:15
[INFO] [stdout]     |
[INFO] [stdout] 668 | pub(crate) fn parse_key_option<const N: usize>(
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `decoders` is never read
[INFO] [stdout]   --> src/socket/patterns/framing.rs:21:3
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub(crate) struct FramingLatch {
[INFO] [stdout]    |                   ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 21 |   decoders: [FramingOp; 2],
[INFO] [stdout]    |   ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FramingLatch` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `decode` is never used
[INFO] [stdout]   --> src/socket/patterns/framing.rs:45:10
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl FramingLatch {
[INFO] [stdout]    | ----------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 45 |   pub fn decode(&self, frames: &mut FrameBatch) {
[INFO] [stdout]    |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `wait_for_connection` is never used
[INFO] [stdout]   --> src/socket/patterns/outgoing_orchestrator.rs:34:16
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl OutgoingMessageOrchestrator {
[INFO] [stdout]    | -------------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 34 |   pub async fn wait_for_connection(&self) -> Result<(), ZmqError> {
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `capacity` and `lwm` are never read
[INFO] [stdout]    --> src/socket/patterns/ready_pipe_queue.rs:162:3
[INFO] [stdout]     |
[INFO] [stdout] 157 | pub(crate) struct PipeSlot<T: Send + 'static> {
[INFO] [stdout]     |                   -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 162 |   capacity: usize,
[INFO] [stdout]     |   ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 175 |   pub(crate) lwm: usize,
[INFO] [stdout]     |              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `capacity`, `is_congested`, and `is_drained` are never used
[INFO] [stdout]    --> src/socket/patterns/ready_pipe_queue.rs:233:10
[INFO] [stdout]     |
[INFO] [stdout] 217 | impl<T: Send + 'static> PipeSlot<T> {
[INFO] [stdout]     | ----------------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 233 |   pub fn capacity(&self) -> usize {
[INFO] [stdout]     |          ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 237 |   pub fn is_congested(&self) -> bool {
[INFO] [stdout]     |          ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 241 |   pub fn is_drained(&self) -> bool {
[INFO] [stdout]     |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `queued_count`, `reserved_count`, `len`, `capacity`, `is_congested`, and `is_drained` are never used
[INFO] [stdout]    --> src/socket/patterns/ready_pipe_queue.rs:924:10
[INFO] [stdout]     |
[INFO] [stdout] 690 | impl<T: Send + 'static> ReadyPipeSender<T> {
[INFO] [stdout]     | ------------------------------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 924 |   pub fn queued_count(&self) -> usize {
[INFO] [stdout]     |          ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 928 |   pub fn reserved_count(&self) -> usize {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 932 |   pub fn len(&self) -> usize {
[INFO] [stdout]     |          ^^^
[INFO] [stdout] ...
[INFO] [stdout] 936 |   pub fn capacity(&self) -> usize {
[INFO] [stdout]     |          ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 944 |   pub fn is_congested(&self) -> bool {
[INFO] [stdout]     |          ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 952 |   pub fn is_drained(&self) -> bool {
[INFO] [stdout]     |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]     --> src/socket/patterns/ready_pipe_queue.rs:1084:10
[INFO] [stdout]      |
[INFO] [stdout] 1023 | impl PipeMessageSender {
[INFO] [stdout]      | ---------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1084 |   pub fn try_send_sync(&self, batch: FrameBatch) -> Result<(), TrySendError<FrameBatch>> {
[INFO] [stdout]      |          ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1214 |   pub fn queued_count(&self) -> usize {
[INFO] [stdout]      |          ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1223 |   pub fn reserved_count(&self) -> usize {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1232 |   pub fn len(&self) -> usize {
[INFO] [stdout]      |          ^^^
[INFO] [stdout] ...
[INFO] [stdout] 1241 |   pub fn capacity(&self) -> usize {
[INFO] [stdout]      |          ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1250 |   pub fn is_congested(&self) -> bool {
[INFO] [stdout]      |          ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1259 |   pub fn is_drained(&self) -> bool {
[INFO] [stdout]      |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `core_state_read` is never used
[INFO] [stdout]   --> src/socket/req_socket.rs:55:6
[INFO] [stdout]    |
[INFO] [stdout] 38 | impl ReqSocket {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 55 |   fn core_state_read(&self) -> RwLockReadGuard<'_, CoreState> {
[INFO] [stdout]    |      ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `try_read_chunk` is never used
[INFO] [stdout]   --> src/transport/mod.rs:47:6
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub(crate) trait ZmtpReadHalf: AsyncRead + Unpin + Send + std::fmt::Debug + 'static {
[INFO] [stdout]    |                  ------------ method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 47 |   fn try_read_chunk(&mut self, _buf: &mut [u8]) -> std::io::Result<usize> {
[INFO] [stdout]    |      ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `set_cork` is never used
[INFO] [stdout]   --> src/transport/mod.rs:69:6
[INFO] [stdout]    |
[INFO] [stdout] 66 | pub(crate) trait ZmtpWriteHalf: AsyncWrite + Unpin + Send + std::fmt::Debug + 'static {
[INFO] [stdout]    |                  ------------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 69 |   fn set_cork(&self, _enable: bool) {}
[INFO] [stdout]    |      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `connection_id` is never read
[INFO] [stdout]   --> src/transport/inproc/connection.rs:15:7
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub(crate) struct DirectInprocConnection {
[INFO] [stdout]    |                   ---------------------- field in this struct
[INFO] [stdout] 15 |   pub connection_id: usize,
[INFO] [stdout]    |       ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DirectInprocConnection` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `connector_id` is never read
[INFO] [stdout]  --> src/transport/inproc/types.rs:8:7
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub(crate) struct InprocHandshakeRequest {
[INFO] [stdout]   |                   ---------------------- field in this struct
[INFO] [stdout] 8 |   pub connector_id: usize,
[INFO] [stdout]   |       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `binder_id` is never read
[INFO] [stdout]   --> src/transport/inproc/types.rs:17:7
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub(crate) struct InprocHandshakeResponse {
[INFO] [stdout]    |                   ----------------------- field in this struct
[INFO] [stdout] 17 |   pub binder_id: usize,
[INFO] [stdout]    |       ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `InprocHandshakeResponse` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/transport/inproc_stream.rs:18:17
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl InprocStream {
[INFO] [stdout]    | ----------------- associated function in this implementation
[INFO] [stdout] 18 |   pub(crate) fn new(inner: tokio::io::DuplexStream) -> Self {
[INFO] [stdout]    |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `socket_logic` is never read
[INFO] [stdout]   --> src/transport/ipc.rs:49:3
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub(crate) struct IpcListener {
[INFO] [stdout]    |                   ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 49 |   socket_logic: Arc<dyn ISocket>,
[INFO] [stdout]    |   ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `socket_logic` is never read
[INFO] [stdout]   --> src/transport/tcp.rs:53:3
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub(crate) struct TcpListener {
[INFO] [stdout]    |                   ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 53 |   socket_logic: Arc<dyn ISocket>,
[INFO] [stdout]    |   ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_current_balance` is never used
[INFO] [stdout]    --> src/throttle/mod.rs:194:10
[INFO] [stdout]     |
[INFO] [stdout] 193 | impl ThrottleGuard {
[INFO] [stdout]     | ------------------ method in this implementation
[INFO] [stdout] 194 |   pub fn get_current_balance(&self) -> i32 {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ProfileGuard` is never constructed
[INFO] [stdout]   --> src/profiler.rs:92:14
[INFO] [stdout]    |
[INFO] [stdout] 92 |   pub struct ProfileGuard;
[INFO] [stdout]    |              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LoopProfiler` is never constructed
[INFO] [stdout]   --> src/profiler.rs:95:14
[INFO] [stdout]    |
[INFO] [stdout] 95 |   pub struct LoopProfiler;
[INFO] [stdout]    |              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `loop_start`, `profile`, and `log_and_reset_for_next_loop` are never used
[INFO] [stdout]    --> src/profiler.rs:99:12
[INFO] [stdout]     |
[INFO] [stdout]  97 |   impl LoopProfiler {
[INFO] [stdout]     |   ----------------- associated items in this implementation
[INFO] [stdout]  98 |     #[inline(always)]
[INFO] [stdout]  99 |     pub fn new(_threshold: Duration, _log_interval: usize) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 104 |     pub fn loop_start(&mut self) {}
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 107 |     pub fn profile(&mut self, _index: usize, _label: &'static str) -> ProfileGuard {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 112 |     pub fn log_and_reset_for_next_loop(&mut self) {}
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/security/plain.rs:347:9
[INFO] [stdout]     |
[INFO] [stdout] 347 |         "PLAIN handshake not complete.".into(),
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: `#[deny(self_type_conversion)]` on by default
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 347 -         "PLAIN handshake not complete.".into(),
[INFO] [stdout] 347 +         "PLAIN handshake not complete.",
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 347 -         "PLAIN handshake not complete.".into(),
[INFO] [stdout] 347 +         <&str as Into<_>>::into("PLAIN handshake not complete."),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/core/command_processor.rs:123:11
[INFO] [stdout]     |
[INFO] [stdout] 123 |           "Socket is shutting down".into(),
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 123 -           "Socket is shutting down".into(),
[INFO] [stdout] 123 +           "Socket is shutting down",
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 123 -           "Socket is shutting down".into(),
[INFO] [stdout] 123 +           <&str as Into<_>>::into("Socket is shutting down"),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/core/command_processor.rs:128:11
[INFO] [stdout]     |
[INFO] [stdout] 128 |           "Socket is shutting down".into(),
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 128 -           "Socket is shutting down".into(),
[INFO] [stdout] 128 +           "Socket is shutting down",
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 128 -           "Socket is shutting down".into(),
[INFO] [stdout] 128 +           <&str as Into<_>>::into("Socket is shutting down"),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/core/command_processor.rs:133:11
[INFO] [stdout]     |
[INFO] [stdout] 133 |           "Socket is shutting down".into(),
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 133 -           "Socket is shutting down".into(),
[INFO] [stdout] 133 +           "Socket is shutting down",
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 133 -           "Socket is shutting down".into(),
[INFO] [stdout] 133 +           <&str as Into<_>>::into("Socket is shutting down"),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/core/event_processor.rs:164:15
[INFO] [stdout]     |
[INFO] [stdout] 164 |               "Binder socket is shutting down".into(),
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 164 -               "Binder socket is shutting down".into(),
[INFO] [stdout] 164 +               "Binder socket is shutting down",
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 164 -               "Binder socket is shutting down".into(),
[INFO] [stdout] 164 +               <&str as Into<_>>::into("Binder socket is shutting down"),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/patterns/load_balancer.rs:101:43
[INFO] [stdout]     |
[INFO] [stdout] 101 |         return Err(ZmqError::InvalidState("Socket closed".into()));
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 101 -         return Err(ZmqError::InvalidState("Socket closed".into()));
[INFO] [stdout] 101 +         return Err(ZmqError::InvalidState("Socket closed"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 101 -         return Err(ZmqError::InvalidState("Socket closed".into()));
[INFO] [stdout] 101 +         return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket closed")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]   --> src/socket/connection_iface.rs:70:7
[INFO] [stdout]    |
[INFO] [stdout] 70 |       "DummyConnection cannot send".into(),
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 70 -       "DummyConnection cannot send".into(),
[INFO] [stdout] 70 +       "DummyConnection cannot send",
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 70 -       "DummyConnection cannot send".into(),
[INFO] [stdout] 70 +       <&str as Into<_>>::into("DummyConnection cannot send"),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]   --> src/socket/connection_iface.rs:76:7
[INFO] [stdout]    |
[INFO] [stdout] 76 |       "DummyConnection cannot send multipart".into(),
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 76 -       "DummyConnection cannot send multipart".into(),
[INFO] [stdout] 76 +       "DummyConnection cannot send multipart",
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 76 -       "DummyConnection cannot send multipart".into(),
[INFO] [stdout] 76 +       <&str as Into<_>>::into("DummyConnection cannot send multipart"),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/dealer_socket.rs:298:41
[INFO] [stdout]     |
[INFO] [stdout] 298 |       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 298 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 298 +       return Err(ZmqError::InvalidState("Socket is closing"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 298 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 298 +       return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/dealer_socket.rs:369:47
[INFO] [stdout]     |
[INFO] [stdout] 369 |       return Err((msg, ZmqError::InvalidState("Socket is closing".into())));
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 369 -       return Err((msg, ZmqError::InvalidState("Socket is closing".into())));
[INFO] [stdout] 369 +       return Err((msg, ZmqError::InvalidState("Socket is closing")));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 369 -       return Err((msg, ZmqError::InvalidState("Socket is closing".into())));
[INFO] [stdout] 369 +       return Err((msg, ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing"))));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/dealer_socket.rs:392:41
[INFO] [stdout]     |
[INFO] [stdout] 392 |       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 392 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 392 +       return Err(ZmqError::InvalidState("Socket is closing"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 392 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 392 +       return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/dealer_socket.rs:426:80
[INFO] [stdout]     |
[INFO] [stdout] 426 | ...   _ = closing_signal_future => return Err(ZmqError::InvalidState("Socket is closing while waiting for prior send tx".into())),
[INFO] [stdout]     |                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 426 -                 _ = closing_signal_future => return Err(ZmqError::InvalidState("Socket is closing while waiting for prior send tx".into())),
[INFO] [stdout] 426 +                 _ = closing_signal_future => return Err(ZmqError::InvalidState("Socket is closing while waiting for prior send tx")),
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 426 -                 _ = closing_signal_future => return Err(ZmqError::InvalidState("Socket is closing while waiting for prior send tx".into())),
[INFO] [stdout] 426 +                 _ = closing_signal_future => return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing while waiting for prior send tx"))),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/dealer_socket.rs:435:80
[INFO] [stdout]     |
[INFO] [stdout] 435 | ...   _ = closing_signal_future => return Err(ZmqError::InvalidState("Socket is closing while waiting for prior send tx".into())),
[INFO] [stdout]     |                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 435 -                 _ = closing_signal_future => return Err(ZmqError::InvalidState("Socket is closing while waiting for prior send tx".into())),
[INFO] [stdout] 435 +                 _ = closing_signal_future => return Err(ZmqError::InvalidState("Socket is closing while waiting for prior send tx")),
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 435 -                 _ = closing_signal_future => return Err(ZmqError::InvalidState("Socket is closing while waiting for prior send tx".into())),
[INFO] [stdout] 435 +                 _ = closing_signal_future => return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing while waiting for prior send tx"))),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/dealer_socket.rs:447:41
[INFO] [stdout]     |
[INFO] [stdout] 447 |       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 447 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 447 +       return Err(ZmqError::InvalidState("Socket is closing"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 447 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 447 +       return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/dealer_socket.rs:478:41
[INFO] [stdout]     |
[INFO] [stdout] 478 |       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 478 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 478 +       return Err(ZmqError::InvalidState("Socket is closing"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 478 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 478 +       return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/dealer_socket.rs:601:9
[INFO] [stdout]     |
[INFO] [stdout] 601 |         "Socket is closing or terminated".into(),
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 601 -         "Socket is closing or terminated".into(),
[INFO] [stdout] 601 +         "Socket is closing or terminated",
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 601 -         "Socket is closing or terminated".into(),
[INFO] [stdout] 601 +         <&str as Into<_>>::into("Socket is closing or terminated"),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/dealer_socket.rs:634:11
[INFO] [stdout]     |
[INFO] [stdout] 634 |           "Socket is closing while trying to queue".into(),
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 634 -           "Socket is closing while trying to queue".into(),
[INFO] [stdout] 634 +           "Socket is closing while trying to queue",
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 634 -           "Socket is closing while trying to queue".into(),
[INFO] [stdout] 634 +           <&str as Into<_>>::into("Socket is closing while trying to queue"),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/dealer_socket.rs:657:49
[INFO] [stdout]     |
[INFO] [stdout] 657 |               return Err(ZmqError::InvalidState("Socket is closing while waiting for queue space".into()));
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 657 -               return Err(ZmqError::InvalidState("Socket is closing while waiting for queue space".into()));
[INFO] [stdout] 657 +               return Err(ZmqError::InvalidState("Socket is closing while waiting for queue space"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 657 -               return Err(ZmqError::InvalidState("Socket is closing while waiting for queue space".into()));
[INFO] [stdout] 657 +               return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing while waiting for queue space")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/pub_socket.rs:105:41
[INFO] [stdout]     |
[INFO] [stdout] 105 |       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 105 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 105 +       return Err(ZmqError::InvalidState("Socket is closing"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 105 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 105 +       return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/pub_socket.rs:130:41
[INFO] [stdout]     |
[INFO] [stdout] 130 |       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 130 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 130 +       return Err(ZmqError::InvalidState("Socket is closing"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 130 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 130 +       return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]   --> src/socket/pull_socket.rs:71:32
[INFO] [stdout]    |
[INFO] [stdout] 71 |     Err(ZmqError::InvalidState("PULL sockets cannot send messages".into()))
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 71 -     Err(ZmqError::InvalidState("PULL sockets cannot send messages".into()))
[INFO] [stdout] 71 +     Err(ZmqError::InvalidState("PULL sockets cannot send messages"))
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 71 -     Err(ZmqError::InvalidState("PULL sockets cannot send messages".into()))
[INFO] [stdout] 71 +     Err(ZmqError::InvalidState(<&str as Into<_>>::into("PULL sockets cannot send messages")))
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]   --> src/socket/pull_socket.rs:76:41
[INFO] [stdout]    |
[INFO] [stdout] 76 |       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 76 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 76 +       return Err(ZmqError::InvalidState("Socket is closing"));
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 76 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 76 +       return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing")));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]   --> src/socket/pull_socket.rs:83:32
[INFO] [stdout]    |
[INFO] [stdout] 83 |     Err(ZmqError::InvalidState("PULL sockets cannot send messages".into()))
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 83 -     Err(ZmqError::InvalidState("PULL sockets cannot send messages".into()))
[INFO] [stdout] 83 +     Err(ZmqError::InvalidState("PULL sockets cannot send messages"))
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 83 -     Err(ZmqError::InvalidState("PULL sockets cannot send messages".into()))
[INFO] [stdout] 83 +     Err(ZmqError::InvalidState(<&str as Into<_>>::into("PULL sockets cannot send messages")))
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]   --> src/socket/pull_socket.rs:88:41
[INFO] [stdout]    |
[INFO] [stdout] 88 |       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 88 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 88 +       return Err(ZmqError::InvalidState("Socket is closing"));
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 88 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 88 +       return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing")));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]   --> src/socket/push_socket.rs:87:47
[INFO] [stdout]    |
[INFO] [stdout] 87 |       return Err((msg, ZmqError::InvalidState("Socket is closing".into())));
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 87 -       return Err((msg, ZmqError::InvalidState("Socket is closing".into())));
[INFO] [stdout] 87 +       return Err((msg, ZmqError::InvalidState("Socket is closing")));
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 87 -       return Err((msg, ZmqError::InvalidState("Socket is closing".into())));
[INFO] [stdout] 87 +       return Err((msg, ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing"))));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/rep_socket.rs:135:41
[INFO] [stdout]     |
[INFO] [stdout] 135 |       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 135 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 135 +       return Err(ZmqError::InvalidState("Socket is closing"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 135 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 135 +       return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/rep_socket.rs:147:41
[INFO] [stdout]     |
[INFO] [stdout] 147 |       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 147 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 147 +       return Err(ZmqError::InvalidState("Socket is closing"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 147 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 147 +       return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/rep_socket.rs:169:41
[INFO] [stdout]     |
[INFO] [stdout] 169 |       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 169 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 169 +       return Err(ZmqError::InvalidState("Socket is closing"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 169 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 169 +       return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/rep_socket.rs:233:41
[INFO] [stdout]     |
[INFO] [stdout] 233 |       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 233 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 233 +       return Err(ZmqError::InvalidState("Socket is closing"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 233 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 233 +       return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/req_socket.rs:114:41
[INFO] [stdout]     |
[INFO] [stdout] 114 |       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 114 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 114 +       return Err(ZmqError::InvalidState("Socket is closing"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 114 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 114 +       return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/req_socket.rs:143:45
[INFO] [stdout]     |
[INFO] [stdout] 143 |           return Err(ZmqError::InvalidState("Socket terminated".into()));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 143 -           return Err(ZmqError::InvalidState("Socket terminated".into()));
[INFO] [stdout] 143 +           return Err(ZmqError::InvalidState("Socket terminated"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 143 -           return Err(ZmqError::InvalidState("Socket terminated".into()));
[INFO] [stdout] 143 +           return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket terminated")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/req_socket.rs:189:41
[INFO] [stdout]     |
[INFO] [stdout] 189 |       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 189 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 189 +       return Err(ZmqError::InvalidState("Socket is closing"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 189 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 189 +       return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/req_socket.rs:226:66
[INFO] [stdout]     |
[INFO] [stdout] 226 |                 received_msg_result = Err(ZmqError::InvalidState("Socket state changed while waiting for reply".into()));
[INFO] [stdout]     |                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 226 -                 received_msg_result = Err(ZmqError::InvalidState("Socket state changed while waiting for reply".into()));
[INFO] [stdout] 226 +                 received_msg_result = Err(ZmqError::InvalidState("Socket state changed while waiting for reply"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 226 -                 received_msg_result = Err(ZmqError::InvalidState("Socket state changed while waiting for reply".into()));
[INFO] [stdout] 226 +                 received_msg_result = Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket state changed while waiting for reply")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/req_socket.rs:273:7
[INFO] [stdout]     |
[INFO] [stdout] 273 |       "REQ sockets use send() for single-part requests. Use DEALER for general multipart messaging.".into(),
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 273 -       "REQ sockets use send() for single-part requests. Use DEALER for general multipart messaging.".into(),
[INFO] [stdout] 273 +       "REQ sockets use send() for single-part requests. Use DEALER for general multipart messaging.",
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 273 -       "REQ sockets use send() for single-part requests. Use DEALER for general multipart messaging.".into(),
[INFO] [stdout] 273 +       <&str as Into<_>>::into("REQ sockets use send() for single-part requests. Use DEALER for general multipart messaging."),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/req_socket.rs:279:41
[INFO] [stdout]     |
[INFO] [stdout] 279 |       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 279 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 279 +       return Err(ZmqError::InvalidState("Socket is closing"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 279 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 279 +       return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/router_socket.rs:340:41
[INFO] [stdout]     |
[INFO] [stdout] 340 |       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 340 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 340 +       return Err(ZmqError::InvalidState("Socket is closing"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 340 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 340 +       return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/router_socket.rs:532:41
[INFO] [stdout]     |
[INFO] [stdout] 532 |       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 532 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 532 +       return Err(ZmqError::InvalidState("Socket is closing"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 532 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 532 +       return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/router_socket.rs:564:41
[INFO] [stdout]     |
[INFO] [stdout] 564 |       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 564 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 564 +       return Err(ZmqError::InvalidState("Socket is closing"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 564 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 564 +       return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/router_socket.rs:689:41
[INFO] [stdout]     |
[INFO] [stdout] 689 |       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 689 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 689 +       return Err(ZmqError::InvalidState("Socket is closing"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 689 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 689 +       return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/sub_socket.rs:162:41
[INFO] [stdout]     |
[INFO] [stdout] 162 |       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 162 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 162 +       return Err(ZmqError::InvalidState("Socket is closing"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 162 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 162 +       return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]    --> src/socket/sub_socket.rs:174:41
[INFO] [stdout]     |
[INFO] [stdout] 174 |       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 174 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 174 +       return Err(ZmqError::InvalidState("Socket is closing"));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 174 -       return Err(ZmqError::InvalidState("Socket is closing".into()));
[INFO] [stdout] 174 +       return Err(ZmqError::InvalidState(<&str as Into<_>>::into("Socket is closing")));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/socket/core/inproc_reader.rs:29:7
[INFO] [stdout]    |
[INFO] [stdout] 29 |       rx.try_recv_batch_mut(&mut drain_buf, rcvbatch_count - 1);
[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)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 29 |       let _ = rx.try_recv_batch_mut(&mut drain_buf, rcvbatch_count - 1);
[INFO] [stdout]    |       +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/socket/patterns/ready_pipe_queue.rs:676:5
[INFO] [stdout]     |
[INFO] [stdout] 676 |     self.ready_tx.close();
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 676 |     let _ = self.ready_tx.close();
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/transport/inproc/connection.rs:114:5
[INFO] [stdout]     |
[INFO] [stdout] 114 |     self.peer_queue_sender.close();
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 114 |     let _ = self.peer_queue_sender.close();
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rzmq` (lib test) due to 41 previous errors; 105 warnings emitted
[INFO] [stderr] warning: unused dependency `async-recursion`
[INFO] [stderr]   --> Cargo.toml:30:15
[INFO] [stderr]    |
[INFO] [stderr] 30 | [dependencies.async-recursion]
[INFO] [stderr]    |               ^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `async-recursion`
[INFO] [stderr] warning: unused dependency `linked-hash-map`
[INFO] [stderr]   --> Cargo.toml:69:15
[INFO] [stderr]    |
[INFO] [stderr] 69 | [dependencies.linked-hash-map]
[INFO] [stderr]    |               ^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr] help: consider removing the dependency on `linked-hash-map`
[INFO] [stderr] warning: unused dependency `zeroize`
[INFO] [stderr]    --> Cargo.toml:118:15
[INFO] [stderr]     |
[INFO] [stderr] 118 | [dependencies.zeroize]
[INFO] [stderr]     |               ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr] help: consider removing the dependency on `zeroize`
[INFO] [stderr] warning: `rzmq` (manifest) generated 3 warnings
[INFO] running `Command { std: "docker" "inspect" "f4edb0f2e4da2e83bf9379d8d3836ecb1b48f8c29b34a60d5b8102124c842b5a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f4edb0f2e4da2e83bf9379d8d3836ecb1b48f8c29b34a60d5b8102124c842b5a", kill_on_drop: false }`
[INFO] [stdout] f4edb0f2e4da2e83bf9379d8d3836ecb1b48f8c29b34a60d5b8102124c842b5a
