[INFO] fetching crate aex 0.1.5...
[INFO] testing aex-0.1.5 against try#b8e88e5ddf5521a9f43ee3f62a702388c713e4bb for pr-155114
[INFO] extracting crate aex 0.1.5 into /workspace/builds/worker-1-tc2/source
[INFO] started tweaking crates.io crate aex 0.1.5
[INFO] removed 0 missing examples
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate aex 0.1.5
[INFO] tweaked toml for crates.io crate aex 0.1.5 written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate aex 0.1.5 on toolchain b8e88e5ddf5521a9f43ee3f62a702388c713e4bb
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b8e88e5ddf5521a9f43ee3f62a702388c713e4bb" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate aex 0.1.5 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" "+b8e88e5ddf5521a9f43ee3f62a702388c713e4bb" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: file `/workspace/builds/worker-1-tc2/source/benches/comparison.rs` found to be present in multiple build targets:
[INFO] [stderr]   * `example` target `comparison`
[INFO] [stderr]   * `bench` target `comparison`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+b8e88e5ddf5521a9f43ee3f62a702388c713e4bb" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 6037c25365bd6eca31d1399140884f758956a3f52237f1778dfb041192e2b994
[INFO] running `Command { std: "docker" "start" "-a" "6037c25365bd6eca31d1399140884f758956a3f52237f1778dfb041192e2b994", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "6037c25365bd6eca31d1399140884f758956a3f52237f1778dfb041192e2b994", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6037c25365bd6eca31d1399140884f758956a3f52237f1778dfb041192e2b994", kill_on_drop: false }`
[INFO] [stdout] 6037c25365bd6eca31d1399140884f758956a3f52237f1778dfb041192e2b994
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+b8e88e5ddf5521a9f43ee3f62a702388c713e4bb" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] bee074550bceb844e6a5b86664a4a7e624b4413c0d7588c19fd4af7d69e36473
[INFO] running `Command { std: "docker" "start" "-a" "bee074550bceb844e6a5b86664a4a7e624b4413c0d7588c19fd4af7d69e36473", kill_on_drop: false }`
[INFO] [stderr] warning: file `/opt/rustwide/workdir/benches/comparison.rs` found to be present in multiple build targets:
[INFO] [stderr]   * `example` target `comparison`
[INFO] [stderr]   * `bench` target `comparison`
[INFO] [stderr]    Compiling proc-macro2 v1.0.105
[INFO] [stderr]    Compiling quote v1.0.43
[INFO] [stderr]    Compiling libc v0.2.182
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling rustix v1.1.3
[INFO] [stderr]    Compiling linux-raw-sys v0.11.0
[INFO] [stderr]    Compiling async-io v2.6.0
[INFO] [stderr]    Compiling event-listener v5.4.1
[INFO] [stderr]    Compiling bitflags v2.10.0
[INFO] [stderr]    Compiling futures-sink v0.3.31
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling regex-syntax v0.8.8
[INFO] [stderr]    Compiling semver v1.0.27
[INFO] [stderr]    Compiling piper v0.2.5
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling http v1.4.0
[INFO] [stderr]    Compiling futures-channel v0.3.31
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling rustc_version v0.4.1
[INFO] [stderr]    Compiling zmij v1.0.12
[INFO] [stderr]    Compiling percent-encoding v2.3.2
[INFO] [stderr]    Compiling ahash v0.7.8
[INFO] [stderr]    Compiling event-listener-strategy v0.5.4
[INFO] [stderr]    Compiling form_urlencoded v1.2.2
[INFO] [stderr]    Compiling virtue v0.0.18
[INFO] [stderr]    Compiling anyhow v1.0.100
[INFO] [stderr]    Compiling indexmap v2.12.1
[INFO] [stderr]    Compiling async-channel v2.5.0
[INFO] [stderr]    Compiling async-lock v3.4.2
[INFO] [stderr]    Compiling tracing-log v0.2.0
[INFO] [stderr]    Compiling async-executor v1.14.0
[INFO] [stderr]    Compiling blocking v1.6.2
[INFO] [stderr]    Compiling curve25519-dalek v4.1.3
[INFO] [stderr]    Compiling http-body v1.0.1
[INFO] [stderr]    Compiling thread_local v1.1.9
[INFO] [stderr]    Compiling iana-time-zone v0.1.64
[INFO] [stderr]    Compiling c_linked_list v1.1.1
[INFO] [stderr]    Compiling nu-ansi-term v0.50.3
[INFO] [stderr]    Compiling getrandom v0.2.16
[INFO] [stderr]    Compiling errno v0.3.14
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling socket2 v0.6.1
[INFO] [stderr]    Compiling mio v1.1.1
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling syn v2.0.114
[INFO] [stderr]    Compiling signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling async-fs v2.2.0
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling bincode_derive v2.0.1
[INFO] [stderr]    Compiling dirs-sys-next v0.1.2
[INFO] [stderr]    Compiling hashbrown v0.14.5
[INFO] [stderr]    Compiling regex-automata v0.4.13
[INFO] [stderr]    Compiling unty v0.0.4
[INFO] [stderr]    Compiling universal-hash v0.5.1
[INFO] [stderr]    Compiling aead v0.5.2
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling poly1305 v0.8.0
[INFO] [stderr]    Compiling dirs-next v2.0.0
[INFO] [stderr]    Compiling get_if_addrs v0.5.3
[INFO] [stderr]    Compiling dashmap v6.1.0
[INFO] [stderr]    Compiling sha1 v0.10.6
[INFO] [stderr]    Compiling chrono v0.4.43
[INFO] [stderr]    Compiling http-body-util v0.1.3
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling bincode v2.0.1
[INFO] [stderr]    Compiling derivative v2.2.0
[INFO] [stderr]    Compiling matchers v0.2.0
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling polling v3.11.0
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.1
[INFO] [stderr]    Compiling zerovec-derive v0.11.2
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling zeroize_derive v1.4.3
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling tokio-macros v2.6.0
[INFO] [stderr]    Compiling curve25519-dalek-derive v0.1.1
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling async-signal v0.2.14
[INFO] [stderr]    Compiling async-net v2.0.0
[INFO] [stderr]    Compiling async-process v2.5.0
[INFO] [stderr]    Compiling zeroize v1.8.2
[INFO] [stderr]    Compiling tokio v1.49.0
[INFO] [stderr]    Compiling cipher v0.4.4
[INFO] [stderr]    Compiling smol v2.0.2
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling chacha20 v0.9.1
[INFO] [stderr]    Compiling chacha20poly1305 v0.10.1
[INFO] [stderr]    Compiling zerofrom v0.1.6
[INFO] [stderr]    Compiling yoke v0.8.1
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling zerovec v0.11.5
[INFO] [stderr]    Compiling zerotrie v0.2.3
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling x25519-dalek v2.0.1
[INFO] [stderr]    Compiling tracing-subscriber v0.3.22
[INFO] [stderr]    Compiling tinystr v0.8.2
[INFO] [stderr]    Compiling potential_utf v0.1.4
[INFO] [stderr]    Compiling icu_locale_core v2.1.1
[INFO] [stderr]    Compiling icu_collections v2.1.1
[INFO] [stderr]    Compiling icu_provider v2.1.1
[INFO] [stderr]    Compiling icu_normalizer v2.1.1
[INFO] [stderr]    Compiling icu_properties v2.1.2
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling futures-executor v0.3.31
[INFO] [stderr]    Compiling futures v0.3.31
[INFO] [stderr]    Compiling zz-validator v0.1.2
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling h2 v0.4.13
[INFO] [stderr]    Compiling aex v0.1.5 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `crate::constants::server::SERVER_NAME`
[INFO] [stdout]   --> src/connection/context.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 29 | use crate::constants::server::SERVER_NAME;
[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: `TypeMapExt` and `get_tcp_router`
[INFO] [stdout]  --> src/connection/entry.rs:1:65
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::connection::context::{BoxReader, BoxWriter, Context, TypeMapExt, get_tcp_router};
[INFO] [stdout]   |                                                                 ^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::constants::tcp::HANDSHAKE_VERSION`
[INFO] [stdout]  --> src/connection/handshake.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::constants::tcp::HANDSHAKE_VERSION;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Duration` and `Instant`
[INFO] [stdout]  --> src/connection/message_queue.rs:3:17
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::time::{Duration, Instant};
[INFO] [stdout]   |                 ^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MAX_FRAME_SIZE`
[INFO] [stdout]  --> src/connection/protocol_codec.rs:5:29
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::constants::tcp::{MAX_FRAME_SIZE, PROTOCOL_HEADER_SIZE};
[INFO] [stdout]   |                             ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `WebSocketHandler`
[INFO] [stdout]  --> src/http/middlewares/websocket.rs:7:67
[INFO] [stdout]   |
[INFO] [stdout] 7 |         websocket::{BinaryHandler, TextHandler, WSCodec, WSFrame, WebSocketHandler},
[INFO] [stdout]   |                                                                   ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::constants::protocol::EMPTY_STRING`
[INFO] [stdout]  --> src/http/params.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::constants::protocol::EMPTY_STRING;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]  --> src/http/req.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::time::Duration;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `time::timeout`
[INFO] [stdout]  --> src/http/req.rs:6:34
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::{io::AsyncBufReadExt, time::timeout};
[INFO] [stdout]   |                                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::http::protocol::status::StatusCode as AexStatusCode`
[INFO] [stdout]   --> src/http2/mod.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | use crate::http::protocol::status::StatusCode as AexStatusCode;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Command` and `Frame`
[INFO] [stdout]   --> src/server.rs:40:25
[INFO] [stdout]    |
[INFO] [stdout] 40 | use crate::tcp::types::{Command, Frame};
[INFO] [stdout]    |                         ^^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::io::AsyncReadExt`
[INFO] [stdout]    --> src/server.rs:313:29
[INFO] [stdout]     |
[INFO] [stdout] 313 |                         use tokio::io::AsyncReadExt;
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::connection::types::IDExtractor`
[INFO] [stdout]   --> src/tcp/router.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::connection::types::IDExtractor;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::connection::types::IDExtractor`
[INFO] [stdout]  --> src/udp/router.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::connection::types::IDExtractor;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `peer_addr`
[INFO] [stdout]    --> src/connection/entry.rs:153:9
[INFO] [stdout]     |
[INFO] [stdout] 153 |         peer_addr: SocketAddr,
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_peer_addr`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_server`
[INFO] [stdout]    --> src/connection/entry.rs:154:9
[INFO] [stdout]     |
[INFO] [stdout] 154 |         is_server: bool,
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_server`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `local_node`
[INFO] [stdout]    --> src/connection/heartbeat.rs:189:33
[INFO] [stdout]     |
[INFO] [stdout] 189 |     async fn send_ping_internal(local_node: &Node, ctx: &Arc<Mutex<Context>>, ping: PingCommand) -> Result<()> {
[INFO] [stdout]     |                                 ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_local_node`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/connection/protocol_codec.rs:131:13
[INFO] [stdout]     |
[INFO] [stdout] 131 |         let mut frame = self.encode();
[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: unused variable: `ctx`
[INFO] [stdout]    --> src/http/macros.rs:44:21
[INFO] [stdout]     |
[INFO] [stdout]  44 |                   let $pre_ctx: &mut Context = &mut *$ctx;
[INFO] [stdout]     |                       ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/http/middlewares/cors.rs:74:9
[INFO] [stdout]     |
[INFO] [stdout]  74 | /         exe!(move |ctx, config| {
[INFO] [stdout]  75 | |             let mut is_options = false;
[INFO] [stdout]  76 | |             
[INFO] [stdout]  77 | |             if let Some(meta) = ctx.local.get_mut::<HttpMetadata>() {
[INFO] [stdout] ...   |
[INFO] [stdout] 117 | |             true
[INFO] [stdout] 118 | |         }, |ctx| { config.clone() })
[INFO] [stdout]     | |____________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] help: `ctx` is captured in macro and introduced a unused variable
[INFO] [stdout]    --> src/http/macros.rs:44:21
[INFO] [stdout]     |
[INFO] [stdout]  44 |                   let $pre_ctx: &mut Context = &mut *$ctx;
[INFO] [stdout]     |                       ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/http/middlewares/cors.rs:74:9
[INFO] [stdout]     |
[INFO] [stdout]  74 | /         exe!(move |ctx, config| {
[INFO] [stdout]  75 | |             let mut is_options = false;
[INFO] [stdout]  76 | |             
[INFO] [stdout]  77 | |             if let Some(meta) = ctx.local.get_mut::<HttpMetadata>() {
[INFO] [stdout] ...   |
[INFO] [stdout] 117 | |             true
[INFO] [stdout] 118 | |         }, |ctx| { config.clone() })
[INFO] [stdout]     | |____________________________________- in this macro invocation
[INFO] [stdout]     = note: this warning originates in the macro `exe` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]   --> src/http/macros.rs:44:21
[INFO] [stdout]    |
[INFO] [stdout] 44 |                   let $pre_ctx: &mut Context = &mut *$ctx;
[INFO] [stdout]    |                       ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/http/middlewares/logger.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 41 | /         exe!(move |ctx, config| {
[INFO] [stdout] 42 | |             if let Some(meta) = ctx.local.get_ref::<HttpMetadata>() {
[INFO] [stdout] 43 | |                 let method = if config.log_method {
[INFO] [stdout] 44 | |                     Some(meta.method.to_str())
[INFO] [stdout] ...  |
[INFO] [stdout] 69 | |             true
[INFO] [stdout] 70 | |         }, |ctx| { config.clone() })
[INFO] [stdout]    | |____________________________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] help: `ctx` is captured in macro and introduced a unused variable
[INFO] [stdout]   --> src/http/macros.rs:44:21
[INFO] [stdout]    |
[INFO] [stdout] 44 |                   let $pre_ctx: &mut Context = &mut *$ctx;
[INFO] [stdout]    |                       ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/http/middlewares/logger.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 41 | /         exe!(move |ctx, config| {
[INFO] [stdout] 42 | |             if let Some(meta) = ctx.local.get_ref::<HttpMetadata>() {
[INFO] [stdout] 43 | |                 let method = if config.log_method {
[INFO] [stdout] 44 | |                     Some(meta.method.to_str())
[INFO] [stdout] ...  |
[INFO] [stdout] 69 | |             true
[INFO] [stdout] 70 | |         }, |ctx| { config.clone() })
[INFO] [stdout]    | |____________________________________- in this macro invocation
[INFO] [stdout]    = note: this warning originates in the macro `exe` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `version_str`
[INFO] [stdout]   --> src/http/req.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 47 |         let version_str = b"HTTP/1.1";
[INFO] [stdout]    |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_version_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/server.rs:170:22
[INFO] [stdout]     |
[INFO] [stdout] 170 |     pub fn tcp<F, C>(mut self, router: TcpRouter<F, C>) -> Self
[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/server.rs:183:22
[INFO] [stdout]     |
[INFO] [stdout] 183 |     pub fn udp<F, C>(mut self, router: UdpRouter<F, C>) -> Self
[INFO] [stdout]     |                      ----^^^^
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `loop_token`
[INFO] [stdout]    --> src/server.rs:349:41
[INFO] [stdout]     |
[INFO] [stdout] 349 |     pub async fn start_udp<F, C>(&self, loop_token: CancellationToken) -> anyhow::Result<()>
[INFO] [stdout]     |                                         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_loop_token`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `extractor`
[INFO] [stdout]    --> src/tcp/router.rs:125:13
[INFO] [stdout]     |
[INFO] [stdout] 125 |         let extractor = self.extractor.as_ref()
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_extractor`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `HeartbeatState` is more private than the item `HeartbeatManager::new_with_arc`
[INFO] [stdout]    --> src/connection/heartbeat.rs:108:5
[INFO] [stdout]     |
[INFO] [stdout] 108 |     pub fn new_with_arc(local_node: Node, active: Arc<tokio::sync::RwLock<std::collections::HashMap<SocketAddr, HeartbeatState>>>) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ associated function `HeartbeatManager::new_with_arc` is reachable at visibility `pub`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `HeartbeatState` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/connection/heartbeat.rs:89:1
[INFO] [stdout]     |
[INFO] [stdout]  89 | struct HeartbeatState {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `send_frame_internal` is never used
[INFO] [stdout]    --> src/connection/handshake_handler.rs:169:14
[INFO] [stdout]     |
[INFO] [stdout]  23 | impl HandshakeHandler {
[INFO] [stdout]     | --------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 169 |     async fn send_frame_internal(ctx: &Arc<Mutex<Context>>, data: Vec<u8>) -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `abort_handle` is never read
[INFO] [stdout]   --> src/connection/heartbeat.rs:95:5
[INFO] [stdout]    |
[INFO] [stdout] 89 | struct HeartbeatState {
[INFO] [stdout]    |        -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 95 |     abort_handle: Option<AbortHandle>,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `tx` is never read
[INFO] [stdout]   --> src/connection/message_queue.rs:82:5
[INFO] [stdout]    |
[INFO] [stdout] 77 | pub struct MessageQueue {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 82 |     tx: mpsc::Sender<Message>,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Extractor` is never used
[INFO] [stdout]   --> src/server.rs:49:6
[INFO] [stdout]    |
[INFO] [stdout] 49 | type Extractor = Arc<dyn Fn(&dyn std::any::Any) -> u32 + Send + Sync>;
[INFO] [stdout]    |      ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused implementer of `futures::Future` that must be used
[INFO] [stdout]   --> src/connection/entry.rs:90:9
[INFO] [stdout]    |
[INFO] [stdout] 90 |         heartbeat.start_server_heartbeat(ctx, self.addr, self.cancel_token.clone());
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: futures do nothing unless you `.await` or poll them
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused implementer of `futures::Future` that must be used
[INFO] [stdout]   --> src/connection/global.rs:86:13
[INFO] [stdout]    |
[INFO] [stdout] 86 |             manager.start_server_heartbeat(ctx, peer_addr, cancel_token);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: futures do nothing unless you `.await` or poll them
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:24:13
[INFO] [stdout]    |
[INFO] [stdout] 24 |         let mut router = TcpRouter::<RawCodec, RawCodec>::new();
[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/main.rs:41:13
[INFO] [stdout]    |
[INFO] [stdout] 41 |         let mut router = UdpRouter::<RawCodec, RawCodec>::new();
[INFO] [stdout]    |             ----^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 50.39s
[INFO] running `Command { std: "docker" "inspect" "bee074550bceb844e6a5b86664a4a7e624b4413c0d7588c19fd4af7d69e36473", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bee074550bceb844e6a5b86664a4a7e624b4413c0d7588c19fd4af7d69e36473", kill_on_drop: false }`
[INFO] [stdout] bee074550bceb844e6a5b86664a4a7e624b4413c0d7588c19fd4af7d69e36473
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+b8e88e5ddf5521a9f43ee3f62a702388c713e4bb" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] dc449db92124ecd0d3662716856c7cd5e96699f8547c755a78070a55f8a3b1c2
[INFO] running `Command { std: "docker" "start" "-a" "dc449db92124ecd0d3662716856c7cd5e96699f8547c755a78070a55f8a3b1c2", kill_on_drop: false }`
[INFO] [stderr] warning: file `/opt/rustwide/workdir/benches/comparison.rs` found to be present in multiple build targets:
[INFO] [stderr]   * `example` target `comparison`
[INFO] [stderr]   * `bench` target `comparison`
[INFO] [stderr]    Compiling find-msvc-tools v0.1.6
[INFO] [stderr]    Compiling futures-channel v0.3.31
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling mio v1.1.1
[INFO] [stderr]    Compiling bitflags v2.10.0
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling zeroize v1.8.2
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling aws-lc-rs v1.16.0
[INFO] [stderr]    Compiling icu_normalizer v2.1.1
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling rustls v0.23.36
[INFO] [stderr]    Compiling zerocopy v0.8.32
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling zerocopy-derive v0.8.32
[INFO] [stderr]    Compiling cc v1.2.51
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling rustix v1.1.3
[INFO] [stderr]    Compiling sync_wrapper v1.0.2
[INFO] [stderr]    Compiling unicode-segmentation v1.13.2
[INFO] [stderr]    Compiling local-waker v0.1.4
[INFO] [stderr]    Compiling rustls-pki-types v1.13.2
[INFO] [stderr]    Compiling zstd-safe v7.2.4
[INFO] [stderr]    Compiling alloc-no-stdlib v2.0.4
[INFO] [stderr]    Compiling alloc-stdlib v0.2.2
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling http v0.2.12
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling bytes v1.11.1
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling tokio v1.49.0
[INFO] [stderr]    Compiling inout v0.1.4
[INFO] [stderr]    Compiling universal-hash v0.5.1
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling cipher v0.4.4
[INFO] [stderr]    Compiling ipnet v2.11.0
[INFO] [stderr]    Compiling time-core v0.1.6
[INFO] [stderr]    Compiling regex-lite v0.1.9
[INFO] [stderr]    Compiling convert_case v0.10.0
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling simd-adler32 v0.3.9
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling poly1305 v0.8.0
[INFO] [stderr]    Compiling derive_more-impl v2.1.1
[INFO] [stderr]    Compiling chacha20 v0.9.1
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling bytestring v1.5.0
[INFO] [stderr]    Compiling time-macros v0.2.24
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling deranged v0.5.5
[INFO] [stderr]    Compiling aead v0.5.2
[INFO] [stderr]    Compiling curve25519-dalek v4.1.3
[INFO] [stderr]    Compiling brotli-decompressor v5.0.0
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling actix-utils v3.0.1
[INFO] [stderr]    Compiling cmake v0.1.57
[INFO] [stderr]    Compiling cookie v0.16.2
[INFO] [stderr]    Compiling actix-service v2.0.3
[INFO] [stderr]    Compiling ryu v1.0.22
[INFO] [stderr]    Compiling anstyle v1.0.13
[INFO] [stderr]    Compiling clap_lex v0.7.6
[INFO] [stderr]    Compiling futures-executor v0.3.31
[INFO] [stderr]    Compiling chrono v0.4.43
[INFO] [stderr]    Compiling tracing-subscriber v0.3.22
[INFO] [stderr]    Compiling clap_builder v4.5.54
[INFO] [stderr]    Compiling futures v0.3.31
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling dashmap v6.1.0
[INFO] [stderr]    Compiling rustls-native-certs v0.8.3
[INFO] [stderr]    Compiling rand v0.10.1
[INFO] [stderr]    Compiling aws-lc-sys v0.37.1
[INFO] [stderr]    Compiling zstd-sys v2.0.16+zstd.1.5.7
[INFO] [stderr]    Compiling time v0.3.44
[INFO] [stderr]    Compiling chacha20poly1305 v0.10.1
[INFO] [stderr]    Compiling half v2.7.1
[INFO] [stderr]    Compiling brotli v8.0.2
[INFO] [stderr]    Compiling flate2 v1.1.9
[INFO] [stderr]    Compiling x25519-dalek v2.0.1
[INFO] [stderr]    Compiling sha1 v0.10.6
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling sha1 v0.11.0
[INFO] [stderr]    Compiling zz-validator v0.1.2
[INFO] [stderr]    Compiling local-channel v0.1.5
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling socket2 v0.5.10
[INFO] [stderr]    Compiling foldhash v0.1.5
[INFO] [stderr]    Compiling language-tags v0.3.2
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling rayon v1.12.0
[INFO] [stderr]    Compiling polling v3.11.0
[INFO] [stderr]    Compiling derive_more v2.1.1
[INFO] [stderr]    Compiling axum-core v0.4.5
[INFO] [stderr]    Compiling actix-router v0.5.4
[INFO] [stderr]    Compiling async-io v2.6.0
[INFO] [stderr]    Compiling clap v4.5.54
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling actix-macros v0.2.4
[INFO] [stderr]    Compiling async-signal v0.2.14
[INFO] [stderr]    Compiling async-process v2.5.0
[INFO] [stderr]    Compiling async-net v2.0.0
[INFO] [stderr]    Compiling is-terminal v0.4.17
[INFO] [stderr]    Compiling serde_path_to_error v0.1.20
[INFO] [stderr]    Compiling impl-more v0.1.9
[INFO] [stderr]    Compiling actix-web-codegen v4.3.0
[INFO] [stderr]    Compiling smol v2.0.2
[INFO] [stderr]    Compiling criterion v0.5.1
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling actix-rt v2.11.0
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling actix-server v2.6.0
[INFO] [stderr]    Compiling h2 v0.4.13
[INFO] [stderr]    Compiling actix-codec v0.5.2
[INFO] [stderr]    Compiling h2 v0.3.27
[INFO] [stderr]    Compiling tower-http v0.6.8
[INFO] [stderr]    Compiling zstd v0.13.3
[INFO] [stderr]    Compiling hyper v1.8.1
[INFO] [stderr]    Compiling aex v0.1.5 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `crate::constants::server::SERVER_NAME`
[INFO] [stdout]   --> src/connection/context.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 29 | use crate::constants::server::SERVER_NAME;
[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: `TypeMapExt` and `get_tcp_router`
[INFO] [stdout]  --> src/connection/entry.rs:1:65
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::connection::context::{BoxReader, BoxWriter, Context, TypeMapExt, get_tcp_router};
[INFO] [stdout]   |                                                                 ^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::constants::tcp::HANDSHAKE_VERSION`
[INFO] [stdout]  --> src/connection/handshake.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::constants::tcp::HANDSHAKE_VERSION;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Duration` and `Instant`
[INFO] [stdout]  --> src/connection/message_queue.rs:3:17
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::time::{Duration, Instant};
[INFO] [stdout]   |                 ^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MAX_FRAME_SIZE`
[INFO] [stdout]  --> src/connection/protocol_codec.rs:5:29
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::constants::tcp::{MAX_FRAME_SIZE, PROTOCOL_HEADER_SIZE};
[INFO] [stdout]   |                             ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `WebSocketHandler`
[INFO] [stdout]  --> src/http/middlewares/websocket.rs:7:67
[INFO] [stdout]   |
[INFO] [stdout] 7 |         websocket::{BinaryHandler, TextHandler, WSCodec, WSFrame, WebSocketHandler},
[INFO] [stdout]   |                                                                   ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::constants::protocol::EMPTY_STRING`
[INFO] [stdout]  --> src/http/params.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::constants::protocol::EMPTY_STRING;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]  --> src/http/req.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::time::Duration;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `time::timeout`
[INFO] [stdout]  --> src/http/req.rs:6:34
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::{io::AsyncBufReadExt, time::timeout};
[INFO] [stdout]   |                                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::http::protocol::status::StatusCode as AexStatusCode`
[INFO] [stdout]   --> src/http2/mod.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | use crate::http::protocol::status::StatusCode as AexStatusCode;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Command` and `Frame`
[INFO] [stdout]   --> src/server.rs:40:25
[INFO] [stdout]    |
[INFO] [stdout] 40 | use crate::tcp::types::{Command, Frame};
[INFO] [stdout]    |                         ^^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::io::AsyncReadExt`
[INFO] [stdout]    --> src/server.rs:313:29
[INFO] [stdout]     |
[INFO] [stdout] 313 |                         use tokio::io::AsyncReadExt;
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::connection::types::IDExtractor`
[INFO] [stdout]   --> src/tcp/router.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::connection::types::IDExtractor;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::connection::types::IDExtractor`
[INFO] [stdout]  --> src/udp/router.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::connection::types::IDExtractor;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling actix-http v3.12.1
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stdout] warning: unused variable: `peer_addr`
[INFO] [stdout]    --> src/connection/entry.rs:153:9
[INFO] [stdout]     |
[INFO] [stdout] 153 |         peer_addr: SocketAddr,
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_peer_addr`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_server`
[INFO] [stdout]    --> src/connection/entry.rs:154:9
[INFO] [stdout]     |
[INFO] [stdout] 154 |         is_server: bool,
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_server`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `local_node`
[INFO] [stdout]    --> src/connection/heartbeat.rs:189:33
[INFO] [stdout]     |
[INFO] [stdout] 189 |     async fn send_ping_internal(local_node: &Node, ctx: &Arc<Mutex<Context>>, ping: PingCommand) -> Result<()> {
[INFO] [stdout]     |                                 ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_local_node`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/connection/protocol_codec.rs:131:13
[INFO] [stdout]     |
[INFO] [stdout] 131 |         let mut frame = self.encode();
[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: unused variable: `ctx`
[INFO] [stdout]    --> src/http/macros.rs:44:21
[INFO] [stdout]     |
[INFO] [stdout]  44 |                   let $pre_ctx: &mut Context = &mut *$ctx;
[INFO] [stdout]     |                       ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/http/middlewares/cors.rs:74:9
[INFO] [stdout]     |
[INFO] [stdout]  74 | /         exe!(move |ctx, config| {
[INFO] [stdout]  75 | |             let mut is_options = false;
[INFO] [stdout]  76 | |             
[INFO] [stdout]  77 | |             if let Some(meta) = ctx.local.get_mut::<HttpMetadata>() {
[INFO] [stdout] ...   |
[INFO] [stdout] 117 | |             true
[INFO] [stdout] 118 | |         }, |ctx| { config.clone() })
[INFO] [stdout]     | |____________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] help: `ctx` is captured in macro and introduced a unused variable
[INFO] [stdout]    --> src/http/macros.rs:44:21
[INFO] [stdout]     |
[INFO] [stdout]  44 |                   let $pre_ctx: &mut Context = &mut *$ctx;
[INFO] [stdout]     |                       ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/http/middlewares/cors.rs:74:9
[INFO] [stdout]     |
[INFO] [stdout]  74 | /         exe!(move |ctx, config| {
[INFO] [stdout]  75 | |             let mut is_options = false;
[INFO] [stdout]  76 | |             
[INFO] [stdout]  77 | |             if let Some(meta) = ctx.local.get_mut::<HttpMetadata>() {
[INFO] [stdout] ...   |
[INFO] [stdout] 117 | |             true
[INFO] [stdout] 118 | |         }, |ctx| { config.clone() })
[INFO] [stdout]     | |____________________________________- in this macro invocation
[INFO] [stdout]     = note: this warning originates in the macro `exe` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]   --> src/http/macros.rs:44:21
[INFO] [stdout]    |
[INFO] [stdout] 44 |                   let $pre_ctx: &mut Context = &mut *$ctx;
[INFO] [stdout]    |                       ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/http/middlewares/logger.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 41 | /         exe!(move |ctx, config| {
[INFO] [stdout] 42 | |             if let Some(meta) = ctx.local.get_ref::<HttpMetadata>() {
[INFO] [stdout] 43 | |                 let method = if config.log_method {
[INFO] [stdout] 44 | |                     Some(meta.method.to_str())
[INFO] [stdout] ...  |
[INFO] [stdout] 69 | |             true
[INFO] [stdout] 70 | |         }, |ctx| { config.clone() })
[INFO] [stdout]    | |____________________________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] help: `ctx` is captured in macro and introduced a unused variable
[INFO] [stdout]   --> src/http/macros.rs:44:21
[INFO] [stdout]    |
[INFO] [stdout] 44 |                   let $pre_ctx: &mut Context = &mut *$ctx;
[INFO] [stdout]    |                       ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/http/middlewares/logger.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 41 | /         exe!(move |ctx, config| {
[INFO] [stdout] 42 | |             if let Some(meta) = ctx.local.get_ref::<HttpMetadata>() {
[INFO] [stdout] 43 | |                 let method = if config.log_method {
[INFO] [stdout] 44 | |                     Some(meta.method.to_str())
[INFO] [stdout] ...  |
[INFO] [stdout] 69 | |             true
[INFO] [stdout] 70 | |         }, |ctx| { config.clone() })
[INFO] [stdout]    | |____________________________________- in this macro invocation
[INFO] [stdout]    = note: this warning originates in the macro `exe` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `version_str`
[INFO] [stdout]   --> src/http/req.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 47 |         let version_str = b"HTTP/1.1";
[INFO] [stdout]    |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_version_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/server.rs:170:22
[INFO] [stdout]     |
[INFO] [stdout] 170 |     pub fn tcp<F, C>(mut self, router: TcpRouter<F, C>) -> Self
[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/server.rs:183:22
[INFO] [stdout]     |
[INFO] [stdout] 183 |     pub fn udp<F, C>(mut self, router: UdpRouter<F, C>) -> Self
[INFO] [stdout]     |                      ----^^^^
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `loop_token`
[INFO] [stdout]    --> src/server.rs:349:41
[INFO] [stdout]     |
[INFO] [stdout] 349 |     pub async fn start_udp<F, C>(&self, loop_token: CancellationToken) -> anyhow::Result<()>
[INFO] [stdout]     |                                         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_loop_token`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `extractor`
[INFO] [stdout]    --> src/tcp/router.rs:125:13
[INFO] [stdout]     |
[INFO] [stdout] 125 |         let extractor = self.extractor.as_ref()
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_extractor`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `HeartbeatState` is more private than the item `HeartbeatManager::new_with_arc`
[INFO] [stdout]    --> src/connection/heartbeat.rs:108:5
[INFO] [stdout]     |
[INFO] [stdout] 108 |     pub fn new_with_arc(local_node: Node, active: Arc<tokio::sync::RwLock<std::collections::HashMap<SocketAddr, HeartbeatState>>>) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ associated function `HeartbeatManager::new_with_arc` is reachable at visibility `pub`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `HeartbeatState` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/connection/heartbeat.rs:89:1
[INFO] [stdout]     |
[INFO] [stdout]  89 | struct HeartbeatState {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `send_frame_internal` is never used
[INFO] [stdout]    --> src/connection/handshake_handler.rs:169:14
[INFO] [stdout]     |
[INFO] [stdout]  23 | impl HandshakeHandler {
[INFO] [stdout]     | --------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 169 |     async fn send_frame_internal(ctx: &Arc<Mutex<Context>>, data: Vec<u8>) -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `abort_handle` is never read
[INFO] [stdout]   --> src/connection/heartbeat.rs:95:5
[INFO] [stdout]    |
[INFO] [stdout] 89 | struct HeartbeatState {
[INFO] [stdout]    |        -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 95 |     abort_handle: Option<AbortHandle>,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `tx` is never read
[INFO] [stdout]   --> src/connection/message_queue.rs:82:5
[INFO] [stdout]    |
[INFO] [stdout] 77 | pub struct MessageQueue {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 82 |     tx: mpsc::Sender<Message>,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Extractor` is never used
[INFO] [stdout]   --> src/server.rs:49:6
[INFO] [stdout]    |
[INFO] [stdout] 49 | type Extractor = Arc<dyn Fn(&dyn std::any::Any) -> u32 + Send + Sync>;
[INFO] [stdout]    |      ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused implementer of `futures::Future` that must be used
[INFO] [stdout]   --> src/connection/entry.rs:90:9
[INFO] [stdout]    |
[INFO] [stdout] 90 |         heartbeat.start_server_heartbeat(ctx, self.addr, self.cancel_token.clone());
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: futures do nothing unless you `.await` or poll them
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused implementer of `futures::Future` that must be used
[INFO] [stdout]   --> src/connection/global.rs:86:13
[INFO] [stdout]    |
[INFO] [stdout] 86 |             manager.start_server_heartbeat(ctx, peer_addr, cancel_token);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: futures do nothing unless you `.await` or poll them
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling axum v0.7.9
[INFO] [stderr]    Compiling actix-web v4.13.0
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:24:13
[INFO] [stdout]    |
[INFO] [stdout] 24 |         let mut router = TcpRouter::<RawCodec, RawCodec>::new();
[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/main.rs:41:13
[INFO] [stdout]    |
[INFO] [stdout] 41 |         let mut router = UdpRouter::<RawCodec, RawCodec>::new();
[INFO] [stdout]    |             ----^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling rustls-webpki v0.103.8
[INFO] [stderr]    Compiling tokio-rustls v0.26.4
[INFO] [stderr]    Compiling rustls-platform-verifier v0.6.2
[INFO] [stderr]    Compiling hyper-rustls v0.27.7
[INFO] [stderr]    Compiling reqwest v0.13.2
[INFO] [stdout] warning: unused import: `aex::connection::context::TypeMapExt`
[INFO] [stdout]  --> tests/server_test.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use aex::connection::context::TypeMapExt;
[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: `timeout`
[INFO] [stdout]   --> tests/server_test.rs:10:36
[INFO] [stdout]    |
[INFO] [stdout] 10 | use tokio::time::{Duration, sleep, timeout};
[INFO] [stdout]    |                                    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::net::TcpListener`
[INFO] [stdout]  --> tests/p2p_bidirectional_test.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use tokio::net::TcpListener;
[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: `aex::connection::manager::ConnectionManager`
[INFO] [stdout]  --> tests/p2p_bidirectional_test.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use aex::connection::manager::ConnectionManager;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_global` is never used
[INFO] [stdout]  --> tests/p2p_bidirectional_test.rs:9:4
[INFO] [stdout]   |
[INFO] [stdout] 9 | fn create_global(addr: SocketAddr) -> Arc<GlobalContext> {
[INFO] [stdout]   |    ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:24:13
[INFO] [stdout]    |
[INFO] [stdout] 24 |         let mut router = TcpRouter::<RawCodec, RawCodec>::new();
[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/main.rs:41:13
[INFO] [stdout]    |
[INFO] [stdout] 41 |         let mut router = UdpRouter::<RawCodec, RawCodec>::new();
[INFO] [stdout]    |             ----^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `server`
[INFO] [stdout]   --> tests/server_test.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 |     let server = Server::new(addr, None);
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_server`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]   --> tests/connection_metrics_test.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |     assert!(metrics.uptime_secs() >= 0);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_comparisons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `client_node_id`
[INFO] [stdout]    --> tests/handshake_test.rs:340:9
[INFO] [stdout]     |
[INFO] [stdout] 340 |     let client_node_id = client_node.id.clone();
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_client_node_id`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `client_node_id`
[INFO] [stdout]    --> tests/handshake_test.rs:387:9
[INFO] [stdout]     |
[INFO] [stdout] 387 |     let client_node_id = client_node.id.clone();
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_client_node_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RawCodec`
[INFO] [stdout]   --> tests/http_router_test.rs:22:31
[INFO] [stdout]    |
[INFO] [stdout] 22 |         tcp::types::{Command, RawCodec},
[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: `aex::server::Server`
[INFO] [stdout]  --> tests/http2_test.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use aex::server::Server;
[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: `std::net::SocketAddr`
[INFO] [stdout]  --> tests/http2_test.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::net::SocketAddr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> tests/connection_handshake_test.rs:4:9
[INFO] [stdout]   |
[INFO] [stdout] 4 |     use std::sync::Arc;
[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: `tokio::sync::Mutex`
[INFO] [stdout]  --> tests/connection_handshake_test.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 |     use tokio::sync::Mutex;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TypeMapExt`
[INFO] [stdout]   --> tests/http_router_test.rs:13:40
[INFO] [stdout]    |
[INFO] [stdout] 13 |         connection::context::{Context, TypeMapExt},
[INFO] [stdout]    |                                        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Command`
[INFO] [stdout]   --> tests/http_router_test.rs:22:22
[INFO] [stdout]    |
[INFO] [stdout] 22 |         tcp::types::{Command, RawCodec},
[INFO] [stdout]    |                      ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Codec`
[INFO] [stdout]  --> tests/http_websocket_test.rs:5:27
[INFO] [stdout]   |
[INFO] [stdout] 5 |     use aex::tcp::types::{Codec, Command, Frame};
[INFO] [stdout]   |                           ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> tests/http_router_test.rs:609:13
[INFO] [stdout]     |
[INFO] [stdout] 609 |         let mut server = HTTPServer::new(actual_addr, None);
[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: unused variable: `handle`
[INFO] [stdout]   --> examples/http_benchmark_aex.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |     let handle = tokio::spawn(async move {
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_handle`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::net::SocketAddr`
[INFO] [stdout]  --> tests/connection_handshake_handler_test.rs:3:9
[INFO] [stdout]   |
[INFO] [stdout] 3 |     use std::net::SocketAddr;
[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: `AckCommand`, `HelloCommand`, `RejectCommand`, and `WelcomeCommand`
[INFO] [stdout]  --> tests/connection_handshake_handler_test.rs:7:37
[INFO] [stdout]   |
[INFO] [stdout] 7 |     use aex::connection::commands::{AckCommand, HelloCommand, RejectCommand, WelcomeCommand};
[INFO] [stdout]   |                                     ^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RawCodec`
[INFO] [stdout]  --> examples/fluent_api.rs:7:32
[INFO] [stdout]   |
[INFO] [stdout] 7 | use aex::tcp::types::{Command, RawCodec};
[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: `aex::connection::context::TypeMapExt`
[INFO] [stdout]  --> examples/fluent_api.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use aex::connection::context::TypeMapExt;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Command`
[INFO] [stdout]  --> examples/fluent_api.rs:7:23
[INFO] [stdout]   |
[INFO] [stdout] 7 | use aex::tcp::types::{Command, RawCodec};
[INFO] [stdout]   |                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `st`
[INFO] [stdout]   --> tests/time_test.rs:80:13
[INFO] [stdout]    |
[INFO] [stdout] 80 |         let st = SystemTime::default();
[INFO] [stdout]    |             ^^ help: if this is intentional, prefix it with an underscore: `_st`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Command` and `RawCodec`
[INFO] [stdout]  --> examples/websocket.rs:6:23
[INFO] [stdout]   |
[INFO] [stdout] 6 | use aex::tcp::types::{Command, RawCodec};
[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: `Command`
[INFO] [stdout]  --> tests/connection_manager_test.rs:8:22
[INFO] [stdout]   |
[INFO] [stdout] 8 |         tcp::types::{Command, RawCodec},
[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: `std::sync::Arc`
[INFO] [stdout]   --> tests/http_req_test.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     use std::sync::Arc;
[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: `TypeMapExt`
[INFO] [stdout]  --> tests/http_req_test.rs:3:47
[INFO] [stdout]   |
[INFO] [stdout] 3 |     use aex::connection::context::{BoxReader, TypeMapExt};
[INFO] [stdout]   |                                               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> tests/http_middlewares_validator_test.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::sync::Arc;
[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: `RawCodec`
[INFO] [stdout]   --> tests/http_middlewares_validator_test.rs:13:27
[INFO] [stdout]    |
[INFO] [stdout] 13 |     tcp::types::{Command, RawCodec},
[INFO] [stdout]    |                           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `connection::context::TypeMapExt`
[INFO] [stdout]  --> tests/http_middlewares_validator_test.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 |     connection::context::TypeMapExt,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Command`
[INFO] [stdout]   --> tests/http_middlewares_validator_test.rs:13:18
[INFO] [stdout]    |
[INFO] [stdout] 13 |     tcp::types::{Command, RawCodec},
[INFO] [stdout]    |                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `aex::connection::global::GlobalContext`
[INFO] [stdout]  --> examples/multi_protocol_demo.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use aex::connection::global::GlobalContext;
[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: `Command` and `RawCodec`
[INFO] [stdout]  --> examples/hello_world.rs:3:23
[INFO] [stdout]   |
[INFO] [stdout] 3 | use aex::tcp::types::{Command, RawCodec};
[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: `std::sync::Arc`
[INFO] [stdout]  --> examples/hello_world.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> tests/crypto_mod_test.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 |     use std::sync::Arc;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `lines` is assigned to, but never used
[INFO] [stdout]   --> examples/bench_simulate.rs:19:25
[INFO] [stdout]    |
[INFO] [stdout] 19 |                     let mut lines = 0;
[INFO] [stdout]    |                         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using `_lines` instead
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `path`
[INFO] [stdout]   --> examples/bench_simulate.rs:25:25
[INFO] [stdout]    |
[INFO] [stdout] 25 |                     let path = "/";
[INFO] [stdout]    |                         ^^^^ help: if this is intentional, prefix it with an underscore: `_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `lines` is never read
[INFO] [stdout]   --> examples/bench_simulate.rs:22:25
[INFO] [stdout]    |
[INFO] [stdout] 22 |                         lines += 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 variable: `local_time`
[INFO] [stdout]    --> tests/connection_commands_test.rs:282:13
[INFO] [stdout]     |
[INFO] [stdout] 282 |         let local_time = 1100;
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_local_time`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::constants::server::SERVER_NAME`
[INFO] [stdout]   --> src/connection/context.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 29 | use crate::constants::server::SERVER_NAME;
[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: `TypeMapExt` and `get_tcp_router`
[INFO] [stdout]  --> src/connection/entry.rs:1:65
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::connection::context::{BoxReader, BoxWriter, Context, TypeMapExt, get_tcp_router};
[INFO] [stdout]   |                                                                 ^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::constants::tcp::HANDSHAKE_VERSION`
[INFO] [stdout]  --> src/connection/handshake.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::constants::tcp::HANDSHAKE_VERSION;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Duration` and `Instant`
[INFO] [stdout]  --> src/connection/message_queue.rs:3:17
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::time::{Duration, Instant};
[INFO] [stdout]   |                 ^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MAX_FRAME_SIZE`
[INFO] [stdout]  --> src/connection/protocol_codec.rs:5:29
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::constants::tcp::{MAX_FRAME_SIZE, PROTOCOL_HEADER_SIZE};
[INFO] [stdout]   |                             ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `WebSocketHandler`
[INFO] [stdout]  --> src/http/middlewares/websocket.rs:7:67
[INFO] [stdout]   |
[INFO] [stdout] 7 |         websocket::{BinaryHandler, TextHandler, WSCodec, WSFrame, WebSocketHandler},
[INFO] [stdout]   |                                                                   ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::constants::protocol::EMPTY_STRING`
[INFO] [stdout]  --> src/http/params.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::constants::protocol::EMPTY_STRING;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]  --> src/http/req.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::time::Duration;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `time::timeout`
[INFO] [stdout]  --> src/http/req.rs:6:34
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::{io::AsyncBufReadExt, time::timeout};
[INFO] [stdout]   |                                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::http::protocol::status::StatusCode as AexStatusCode`
[INFO] [stdout]   --> src/http2/mod.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | use crate::http::protocol::status::StatusCode as AexStatusCode;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Command` and `Frame`
[INFO] [stdout]   --> src/server.rs:40:25
[INFO] [stdout]    |
[INFO] [stdout] 40 | use crate::tcp::types::{Command, Frame};
[INFO] [stdout]    |                         ^^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::io::AsyncReadExt`
[INFO] [stdout]    --> src/server.rs:313:29
[INFO] [stdout]     |
[INFO] [stdout] 313 |                         use tokio::io::AsyncReadExt;
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::connection::types::IDExtractor`
[INFO] [stdout]   --> src/tcp/router.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::connection::types::IDExtractor;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::connection::types::IDExtractor`
[INFO] [stdout]  --> src/udp/router.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::connection::types::IDExtractor;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RawCodec`
[INFO] [stdout]  --> examples/middleware_api.rs:7:32
[INFO] [stdout]   |
[INFO] [stdout] 7 | use aex::tcp::types::{Command, RawCodec};
[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: `aex::connection::context::TypeMapExt`
[INFO] [stdout]  --> examples/middleware_api.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use aex::connection::context::TypeMapExt;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Command`
[INFO] [stdout]  --> examples/middleware_api.rs:7:23
[INFO] [stdout]   |
[INFO] [stdout] 7 | use aex::tcp::types::{Command, RawCodec};
[INFO] [stdout]   |                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `peer_addr`
[INFO] [stdout]    --> src/connection/entry.rs:153:9
[INFO] [stdout]     |
[INFO] [stdout] 153 |         peer_addr: SocketAddr,
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_peer_addr`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_server`
[INFO] [stdout]    --> src/connection/entry.rs:154:9
[INFO] [stdout]     |
[INFO] [stdout] 154 |         is_server: bool,
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_server`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `local_node`
[INFO] [stdout]    --> src/connection/heartbeat.rs:189:33
[INFO] [stdout]     |
[INFO] [stdout] 189 |     async fn send_ping_internal(local_node: &Node, ctx: &Arc<Mutex<Context>>, ping: PingCommand) -> Result<()> {
[INFO] [stdout]     |                                 ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_local_node`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/connection/protocol_codec.rs:131:13
[INFO] [stdout]     |
[INFO] [stdout] 131 |         let mut frame = self.encode();
[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: unused variable: `ctx`
[INFO] [stdout]    --> src/http/macros.rs:44:21
[INFO] [stdout]     |
[INFO] [stdout]  44 |                   let $pre_ctx: &mut Context = &mut *$ctx;
[INFO] [stdout]     |                       ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/http/middlewares/cors.rs:74:9
[INFO] [stdout]     |
[INFO] [stdout]  74 | /         exe!(move |ctx, config| {
[INFO] [stdout]  75 | |             let mut is_options = false;
[INFO] [stdout]  76 | |             
[INFO] [stdout]  77 | |             if let Some(meta) = ctx.local.get_mut::<HttpMetadata>() {
[INFO] [stdout] ...   |
[INFO] [stdout] 117 | |             true
[INFO] [stdout] 118 | |         }, |ctx| { config.clone() })
[INFO] [stdout]     | |____________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] help: `ctx` is captured in macro and introduced a unused variable
[INFO] [stdout]    --> src/http/macros.rs:44:21
[INFO] [stdout]     |
[INFO] [stdout]  44 |                   let $pre_ctx: &mut Context = &mut *$ctx;
[INFO] [stdout]     |                       ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/http/middlewares/cors.rs:74:9
[INFO] [stdout]     |
[INFO] [stdout]  74 | /         exe!(move |ctx, config| {
[INFO] [stdout]  75 | |             let mut is_options = false;
[INFO] [stdout]  76 | |             
[INFO] [stdout]  77 | |             if let Some(meta) = ctx.local.get_mut::<HttpMetadata>() {
[INFO] [stdout] ...   |
[INFO] [stdout] 117 | |             true
[INFO] [stdout] 118 | |         }, |ctx| { config.clone() })
[INFO] [stdout]     | |____________________________________- in this macro invocation
[INFO] [stdout]     = note: this warning originates in the macro `exe` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]   --> src/http/macros.rs:44:21
[INFO] [stdout]    |
[INFO] [stdout] 44 |                   let $pre_ctx: &mut Context = &mut *$ctx;
[INFO] [stdout]    |                       ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/http/middlewares/logger.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 41 | /         exe!(move |ctx, config| {
[INFO] [stdout] 42 | |             if let Some(meta) = ctx.local.get_ref::<HttpMetadata>() {
[INFO] [stdout] 43 | |                 let method = if config.log_method {
[INFO] [stdout] 44 | |                     Some(meta.method.to_str())
[INFO] [stdout] ...  |
[INFO] [stdout] 69 | |             true
[INFO] [stdout] 70 | |         }, |ctx| { config.clone() })
[INFO] [stdout]    | |____________________________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] help: `ctx` is captured in macro and introduced a unused variable
[INFO] [stdout]   --> src/http/macros.rs:44:21
[INFO] [stdout]    |
[INFO] [stdout] 44 |                   let $pre_ctx: &mut Context = &mut *$ctx;
[INFO] [stdout]    |                       ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/http/middlewares/logger.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 41 | /         exe!(move |ctx, config| {
[INFO] [stdout] 42 | |             if let Some(meta) = ctx.local.get_ref::<HttpMetadata>() {
[INFO] [stdout] 43 | |                 let method = if config.log_method {
[INFO] [stdout] 44 | |                     Some(meta.method.to_str())
[INFO] [stdout] ...  |
[INFO] [stdout] 69 | |             true
[INFO] [stdout] 70 | |         }, |ctx| { config.clone() })
[INFO] [stdout]    | |____________________________________- in this macro invocation
[INFO] [stdout]    = note: this warning originates in the macro `exe` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `version_str`
[INFO] [stdout]   --> src/http/req.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 47 |         let version_str = b"HTTP/1.1";
[INFO] [stdout]    |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_version_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/server.rs:170:22
[INFO] [stdout]     |
[INFO] [stdout] 170 |     pub fn tcp<F, C>(mut self, router: TcpRouter<F, C>) -> Self
[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/server.rs:183:22
[INFO] [stdout]     |
[INFO] [stdout] 183 |     pub fn udp<F, C>(mut self, router: UdpRouter<F, C>) -> Self
[INFO] [stdout]     |                      ----^^^^
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `loop_token`
[INFO] [stdout]    --> src/server.rs:349:41
[INFO] [stdout]     |
[INFO] [stdout] 349 |     pub async fn start_udp<F, C>(&self, loop_token: CancellationToken) -> anyhow::Result<()>
[INFO] [stdout]     |                                         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_loop_token`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `extractor`
[INFO] [stdout]    --> src/tcp/router.rs:125:13
[INFO] [stdout]     |
[INFO] [stdout] 125 |         let extractor = self.extractor.as_ref()
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_extractor`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `HeartbeatState` is more private than the item `HeartbeatManager::new_with_arc`
[INFO] [stdout]    --> src/connection/heartbeat.rs:108:5
[INFO] [stdout]     |
[INFO] [stdout] 108 |     pub fn new_with_arc(local_node: Node, active: Arc<tokio::sync::RwLock<std::collections::HashMap<SocketAddr, HeartbeatState>>>) -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ associated function `HeartbeatManager::new_with_arc` is reachable at visibility `pub`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `HeartbeatState` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/connection/heartbeat.rs:89:1
[INFO] [stdout]     |
[INFO] [stdout]  89 | struct HeartbeatState {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `abort_handle` is never read
[INFO] [stdout]   --> src/connection/heartbeat.rs:95:5
[INFO] [stdout]    |
[INFO] [stdout] 89 | struct HeartbeatState {
[INFO] [stdout]    |        -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 95 |     abort_handle: Option<AbortHandle>,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `tx` is never read
[INFO] [stdout]   --> src/connection/message_queue.rs:82:5
[INFO] [stdout]    |
[INFO] [stdout] 77 | pub struct MessageQueue {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 82 |     tx: mpsc::Sender<Message>,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Extractor` is never used
[INFO] [stdout]   --> src/server.rs:49:6
[INFO] [stdout]    |
[INFO] [stdout] 49 | type Extractor = Arc<dyn Fn(&dyn std::any::Any) -> u32 + Send + Sync>;
[INFO] [stdout]    |      ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused implementer of `futures::Future` that must be used
[INFO] [stdout]   --> src/connection/entry.rs:90:9
[INFO] [stdout]    |
[INFO] [stdout] 90 |         heartbeat.start_server_heartbeat(ctx, self.addr, self.cancel_token.clone());
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: futures do nothing unless you `.await` or poll them
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused implementer of `futures::Future` that must be used
[INFO] [stdout]   --> src/connection/global.rs:86:13
[INFO] [stdout]    |
[INFO] [stdout] 86 |             manager.start_server_heartbeat(ctx, peer_addr, cancel_token);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: futures do nothing unless you `.await` or poll them
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 2m 28s
[INFO] running `Command { std: "docker" "inspect" "dc449db92124ecd0d3662716856c7cd5e96699f8547c755a78070a55f8a3b1c2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "dc449db92124ecd0d3662716856c7cd5e96699f8547c755a78070a55f8a3b1c2", kill_on_drop: false }`
[INFO] [stdout] dc449db92124ecd0d3662716856c7cd5e96699f8547c755a78070a55f8a3b1c2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+b8e88e5ddf5521a9f43ee3f62a702388c713e4bb" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 257c6c8213bcbf834aa0e5279efeb479f39754ac4100edd64fd1754de4630758
[INFO] running `Command { std: "docker" "start" "-a" "257c6c8213bcbf834aa0e5279efeb479f39754ac4100edd64fd1754de4630758", kill_on_drop: false }`
[INFO] [stderr] warning: file `/opt/rustwide/workdir/benches/comparison.rs` found to be present in multiple build targets:
[INFO] [stderr]   * `example` target `comparison`
[INFO] [stderr]   * `bench` target `comparison`
[INFO] [stderr] warning: unused import: `crate::constants::server::SERVER_NAME`
[INFO] [stderr]   --> src/connection/context.rs:29:5
[INFO] [stderr]    |
[INFO] [stderr] 29 | use crate::constants::server::SERVER_NAME;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `TypeMapExt` and `get_tcp_router`
[INFO] [stderr]  --> src/connection/entry.rs:1:65
[INFO] [stderr]   |
[INFO] [stderr] 1 | use crate::connection::context::{BoxReader, BoxWriter, Context, TypeMapExt, get_tcp_router};
[INFO] [stderr]   |                                                                 ^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::constants::tcp::HANDSHAKE_VERSION`
[INFO] [stderr]  --> src/connection/handshake.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 5 | use crate::constants::tcp::HANDSHAKE_VERSION;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Duration` and `Instant`
[INFO] [stderr]  --> src/connection/message_queue.rs:3:17
[INFO] [stderr]   |
[INFO] [stderr] 3 | use std::time::{Duration, Instant};
[INFO] [stderr]   |                 ^^^^^^^^  ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `MAX_FRAME_SIZE`
[INFO] [stderr]  --> src/connection/protocol_codec.rs:5:29
[INFO] [stderr]   |
[INFO] [stderr] 5 | use crate::constants::tcp::{MAX_FRAME_SIZE, PROTOCOL_HEADER_SIZE};
[INFO] [stderr]   |                             ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `WebSocketHandler`
[INFO] [stderr]  --> src/http/middlewares/websocket.rs:7:67
[INFO] [stderr]   |
[INFO] [stderr] 7 |         websocket::{BinaryHandler, TextHandler, WSCodec, WSFrame, WebSocketHandler},
[INFO] [stderr]   |                                                                   ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::constants::protocol::EMPTY_STRING`
[INFO] [stderr]  --> src/http/params.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use crate::constants::protocol::EMPTY_STRING;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::time::Duration`
[INFO] [stderr]  --> src/http/req.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::time::Duration;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `time::timeout`
[INFO] [stderr]  --> src/http/req.rs:6:34
[INFO] [stderr]   |
[INFO] [stderr] 6 | use tokio::{io::AsyncBufReadExt, time::timeout};
[INFO] [stderr]   |                                  ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::http::protocol::status::StatusCode as AexStatusCode`
[INFO] [stderr]   --> src/http2/mod.rs:20:5
[INFO] [stderr]    |
[INFO] [stderr] 20 | use crate::http::protocol::status::StatusCode as AexStatusCode;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Command` and `Frame`
[INFO] [stderr]   --> src/server.rs:40:25
[INFO] [stderr]    |
[INFO] [stderr] 40 | use crate::tcp::types::{Command, Frame};
[INFO] [stderr]    |                         ^^^^^^^  ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `tokio::io::AsyncReadExt`
[INFO] [stderr]    --> src/server.rs:313:29
[INFO] [stderr]     |
[INFO] [stderr] 313 |                         use tokio::io::AsyncReadExt;
[INFO] [stderr]     |                             ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::connection::types::IDExtractor`
[INFO] [stderr]   --> src/tcp/router.rs:10:5
[INFO] [stderr]    |
[INFO] [stderr] 10 | use crate::connection::types::IDExtractor;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::connection::types::IDExtractor`
[INFO] [stderr]  --> src/udp/router.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 9 | use crate::connection::types::IDExtractor;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `peer_addr`
[INFO] [stderr]    --> src/connection/entry.rs:153:9
[INFO] [stderr]     |
[INFO] [stderr] 153 |         peer_addr: SocketAddr,
[INFO] [stderr]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_peer_addr`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `is_server`
[INFO] [stderr]    --> src/connection/entry.rs:154:9
[INFO] [stderr]     |
[INFO] [stderr] 154 |         is_server: bool,
[INFO] [stderr]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_server`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `local_node`
[INFO] [stderr]    --> src/connection/heartbeat.rs:189:33
[INFO] [stderr]     |
[INFO] [stderr] 189 |     async fn send_ping_internal(local_node: &Node, ctx: &Arc<Mutex<Context>>, ping: PingCommand) -> Result<()> {
[INFO] [stderr]     |                                 ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_local_node`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/connection/protocol_codec.rs:131:13
[INFO] [stderr]     |
[INFO] [stderr] 131 |         let mut frame = self.encode();
[INFO] [stderr]     |             ----^^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `ctx`
[INFO] [stderr]    --> src/http/macros.rs:44:21
[INFO] [stderr]     |
[INFO] [stderr]  44 |                   let $pre_ctx: &mut Context = &mut *$ctx;
[INFO] [stderr]     |                       ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/http/middlewares/cors.rs:74:9
[INFO] [stderr]     |
[INFO] [stderr]  74 | /         exe!(move |ctx, config| {
[INFO] [stderr]  75 | |             let mut is_options = false;
[INFO] [stderr]  76 | |             
[INFO] [stderr]  77 | |             if let Some(meta) = ctx.local.get_mut::<HttpMetadata>() {
[INFO] [stderr] ...   |
[INFO] [stderr] 117 | |             true
[INFO] [stderr] 118 | |         }, |ctx| { config.clone() })
[INFO] [stderr]     | |____________________________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr] help: `ctx` is captured in macro and introduced a unused variable
[INFO] [stderr]    --> src/http/macros.rs:44:21
[INFO] [stderr]     |
[INFO] [stderr]  44 |                   let $pre_ctx: &mut Context = &mut *$ctx;
[INFO] [stderr]     |                       ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/http/middlewares/cors.rs:74:9
[INFO] [stderr]     |
[INFO] [stderr]  74 | /         exe!(move |ctx, config| {
[INFO] [stderr]  75 | |             let mut is_options = false;
[INFO] [stderr]  76 | |             
[INFO] [stderr]  77 | |             if let Some(meta) = ctx.local.get_mut::<HttpMetadata>() {
[INFO] [stderr] ...   |
[INFO] [stderr] 117 | |             true
[INFO] [stderr] 118 | |         }, |ctx| { config.clone() })
[INFO] [stderr]     | |____________________________________- in this macro invocation
[INFO] [stderr]     = note: this warning originates in the macro `exe` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `ctx`
[INFO] [stderr]   --> src/http/macros.rs:44:21
[INFO] [stderr]    |
[INFO] [stderr] 44 |                   let $pre_ctx: &mut Context = &mut *$ctx;
[INFO] [stderr]    |                       ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]   ::: src/http/middlewares/logger.rs:41:9
[INFO] [stderr]    |
[INFO] [stderr] 41 | /         exe!(move |ctx, config| {
[INFO] [stderr] 42 | |             if let Some(meta) = ctx.local.get_ref::<HttpMetadata>() {
[INFO] [stderr] 43 | |                 let method = if config.log_method {
[INFO] [stderr] 44 | |                     Some(meta.method.to_str())
[INFO] [stderr] ...  |
[INFO] [stderr] 69 | |             true
[INFO] [stderr] 70 | |         }, |ctx| { config.clone() })
[INFO] [stderr]    | |____________________________________- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr] help: `ctx` is captured in macro and introduced a unused variable
[INFO] [stderr]   --> src/http/macros.rs:44:21
[INFO] [stderr]    |
[INFO] [stderr] 44 |                   let $pre_ctx: &mut Context = &mut *$ctx;
[INFO] [stderr]    |                       ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]   ::: src/http/middlewares/logger.rs:41:9
[INFO] [stderr]    |
[INFO] [stderr] 41 | /         exe!(move |ctx, config| {
[INFO] [stderr] 42 | |             if let Some(meta) = ctx.local.get_ref::<HttpMetadata>() {
[INFO] [stderr] 43 | |                 let method = if config.log_method {
[INFO] [stderr] 44 | |                     Some(meta.method.to_str())
[INFO] [stderr] ...  |
[INFO] [stderr] 69 | |             true
[INFO] [stderr] 70 | |         }, |ctx| { config.clone() })
[INFO] [stderr]    | |____________________________________- in this macro invocation
[INFO] [stderr]    = note: this warning originates in the macro `exe` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `version_str`
[INFO] [stderr]   --> src/http/req.rs:47:13
[INFO] [stderr]    |
[INFO] [stderr] 47 |         let version_str = b"HTTP/1.1";
[INFO] [stderr]    |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_version_str`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/server.rs:170:22
[INFO] [stderr]     |
[INFO] [stderr] 170 |     pub fn tcp<F, C>(mut self, router: TcpRouter<F, C>) -> Self
[INFO] [stderr]     |                      ----^^^^
[INFO] [stderr]     |                      |
[INFO] [stderr]     |                      help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/server.rs:183:22
[INFO] [stderr]     |
[INFO] [stderr] 183 |     pub fn udp<F, C>(mut self, router: UdpRouter<F, C>) -> Self
[INFO] [stderr]     |                      ----^^^^
[INFO] [stderr]     |                      |
[INFO] [stderr]     |                      help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `loop_token`
[INFO] [stderr]    --> src/server.rs:349:41
[INFO] [stderr]     |
[INFO] [stderr] 349 |     pub async fn start_udp<F, C>(&self, loop_token: CancellationToken) -> anyhow::Result<()>
[INFO] [stderr]     |                                         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_loop_token`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `extractor`
[INFO] [stderr]    --> src/tcp/router.rs:125:13
[INFO] [stderr]     |
[INFO] [stderr] 125 |         let extractor = self.extractor.as_ref()
[INFO] [stderr]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_extractor`
[INFO] [stderr] 
[INFO] [stderr] warning: type `HeartbeatState` is more private than the item `HeartbeatManager::new_with_arc`
[INFO] [stderr]    --> src/connection/heartbeat.rs:108:5
[INFO] [stderr]     |
[INFO] [stderr] 108 |     pub fn new_with_arc(local_node: Node, active: Arc<tokio::sync::RwLock<std::collections::HashMap<SocketAddr, HeartbeatState>>>) -> Self {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ associated function `HeartbeatManager::new_with_arc` is reachable at visibility `pub`
[INFO] [stderr]     |
[INFO] [stderr] note: but type `HeartbeatState` is only usable at visibility `pub(self)`
[INFO] [stderr]    --> src/connection/heartbeat.rs:89:1
[INFO] [stderr]     |
[INFO] [stderr]  89 | struct HeartbeatState {
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `send_frame_internal` is never used
[INFO] [stderr]    --> src/connection/handshake_handler.rs:169:14
[INFO] [stderr]     |
[INFO] [stderr]  23 | impl HandshakeHandler {
[INFO] [stderr]     | --------------------- associated function in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 169 |     async fn send_frame_internal(ctx: &Arc<Mutex<Context>>, data: Vec<u8>) -> Result<()> {
[INFO] [stderr]     |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: field `abort_handle` is never read
[INFO] [stderr]   --> src/connection/heartbeat.rs:95:5
[INFO] [stderr]    |
[INFO] [stderr] 89 | struct HeartbeatState {
[INFO] [stderr]    |        -------------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 95 |     abort_handle: Option<AbortHandle>,
[INFO] [stderr]    |     ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `tx` is never read
[INFO] [stderr]   --> src/connection/message_queue.rs:82:5
[INFO] [stderr]    |
[INFO] [stderr] 77 | pub struct MessageQueue {
[INFO] [stderr]    |            ------------ field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 82 |     tx: mpsc::Sender<Message>,
[INFO] [stderr]    |     ^^
[INFO] [stderr] 
[INFO] [stderr] warning: type alias `Extractor` is never used
[INFO] [stderr]   --> src/server.rs:49:6
[INFO] [stderr]    |
[INFO] [stderr] 49 | type Extractor = Arc<dyn Fn(&dyn std::any::Any) -> u32 + Send + Sync>;
[INFO] [stderr]    |      ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused implementer of `futures::Future` that must be used
[INFO] [stderr]   --> src/connection/entry.rs:90:9
[INFO] [stderr]    |
[INFO] [stderr] 90 |         heartbeat.start_server_heartbeat(ctx, self.addr, self.cancel_token.clone());
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: futures do nothing unless you `.await` or poll them
[INFO] [stderr]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused implementer of `futures::Future` that must be used
[INFO] [stderr]   --> src/connection/global.rs:86:13
[INFO] [stderr]    |
[INFO] [stderr] 86 |             manager.start_server_heartbeat(ctx, peer_addr, cancel_token);
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: futures do nothing unless you `.await` or poll them
[INFO] [stderr] 
[INFO] [stderr] warning: `aex` (lib) generated 32 warnings (run `cargo fix --lib -p aex` to apply 23 suggestions)
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/main.rs:24:13
[INFO] [stderr]    |
[INFO] [stderr] 24 |         let mut router = TcpRouter::<RawCodec, RawCodec>::new();
[INFO] [stderr]    |             ----^^^^^^
[INFO] [stderr]    |             |
[INFO] [stderr]    |             help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/main.rs:41:13
[INFO] [stderr]    |
[INFO] [stderr] 41 |         let mut router = UdpRouter::<RawCodec, RawCodec>::new();
[INFO] [stderr]    |             ----^^^^^^
[INFO] [stderr]    |             |
[INFO] [stderr]    |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: `aex` (bin "http-server") generated 2 warnings (run `cargo fix --bin "http-server" -p aex` to apply 2 suggestions)
[INFO] [stderr] warning: unused variable: `client_node_id`
[INFO] [stderr]    --> tests/handshake_test.rs:340:9
[INFO] [stderr]     |
[INFO] [stderr] 340 |     let client_node_id = client_node.id.clone();
[INFO] [stderr]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_client_node_id`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `client_node_id`
[INFO] [stderr]    --> tests/handshake_test.rs:387:9
[INFO] [stderr]     |
[INFO] [stderr] 387 |     let client_node_id = client_node.id.clone();
[INFO] [stderr]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_client_node_id`
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `aex::connection::global::GlobalContext`
[INFO] [stderr]  --> examples/multi_protocol_demo.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use aex::connection::global::GlobalContext;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `st`
[INFO] [stderr]   --> tests/time_test.rs:80:13
[INFO] [stderr]    |
[INFO] [stderr] 80 |         let st = SystemTime::default();
[INFO] [stderr]    |             ^^ help: if this is intentional, prefix it with an underscore: `_st`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::sync::Arc`
[INFO] [stderr]  --> tests/crypto_mod_test.rs:5:9
[INFO] [stderr]   |
[INFO] [stderr] 5 |     use std::sync::Arc;
[INFO] [stderr]   |         ^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::sync::Arc`
[INFO] [stderr]  --> tests/connection_handshake_test.rs:4:9
[INFO] [stderr]   |
[INFO] [stderr] 4 |     use std::sync::Arc;
[INFO] [stderr]   |         ^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `tokio::sync::Mutex`
[INFO] [stderr]  --> tests/connection_handshake_test.rs:5:9
[INFO] [stderr]   |
[INFO] [stderr] 5 |     use tokio::sync::Mutex;
[INFO] [stderr]   |         ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `RawCodec`
[INFO] [stderr]   --> tests/http_router_test.rs:22:31
[INFO] [stderr]    |
[INFO] [stderr] 22 |         tcp::types::{Command, RawCodec},
[INFO] [stderr]    |                               ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `TypeMapExt`
[INFO] [stderr]   --> tests/http_router_test.rs:13:40
[INFO] [stderr]    |
[INFO] [stderr] 13 |         connection::context::{Context, TypeMapExt},
[INFO] [stderr]    |                                        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Command`
[INFO] [stderr]   --> tests/http_router_test.rs:22:22
[INFO] [stderr]    |
[INFO] [stderr] 22 |         tcp::types::{Command, RawCodec},
[INFO] [stderr]    |                      ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> tests/http_router_test.rs:609:13
[INFO] [stderr]     |
[INFO] [stderr] 609 |         let mut server = HTTPServer::new(actual_addr, None);
[INFO] [stderr]     |             ----^^^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `aex` (test "handshake_test") generated 2 warnings (run `cargo fix --test "handshake_test" -p aex` to apply 2 suggestions)
[INFO] [stderr] warning: `aex` (example "multi_protocol_demo") generated 1 warning (run `cargo fix --example "multi_protocol_demo" -p aex` to apply 1 suggestion)
[INFO] [stderr] warning: `aex` (test "time_test") generated 1 warning (run `cargo fix --test "time_test" -p aex` to apply 1 suggestion)
[INFO] [stderr] warning: `aex` (test "crypto_mod_test") generated 1 warning (run `cargo fix --test "crypto_mod_test" -p aex` to apply 1 suggestion)
[INFO] [stderr] warning: `aex` (test "connection_handshake_test") generated 2 warnings (run `cargo fix --test "connection_handshake_test" -p aex` to apply 2 suggestions)
[INFO] [stderr] warning: `aex` (test "http_router_test") generated 4 warnings (run `cargo fix --test "http_router_test" -p aex` to apply 2 suggestions)
[INFO] [stderr] warning: unused imports: `Command` and `RawCodec`
[INFO] [stderr]  --> examples/websocket.rs:6:23
[INFO] [stderr]   |
[INFO] [stderr] 6 | use aex::tcp::types::{Command, RawCodec};
[INFO] [stderr]   |                       ^^^^^^^  ^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Codec`
[INFO] [stderr]  --> tests/http_websocket_test.rs:5:27
[INFO] [stderr]   |
[INFO] [stderr] 5 |     use aex::tcp::types::{Codec, Command, Frame};
[INFO] [stderr]   |                           ^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Command`
[INFO] [stderr]  --> tests/connection_manager_test.rs:8:22
[INFO] [stderr]   |
[INFO] [stderr] 8 |         tcp::types::{Command, RawCodec},
[INFO] [stderr]   |                      ^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `RawCodec`
[INFO] [stderr]  --> examples/fluent_api.rs:7:32
[INFO] [stderr]   |
[INFO] [stderr] 7 | use aex::tcp::types::{Command, RawCodec};
[INFO] [stderr]   |                                ^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `aex::connection::context::TypeMapExt`
[INFO] [stderr]  --> examples/fluent_api.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use aex::connection::context::TypeMapExt;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Command`
[INFO] [stderr]  --> examples/fluent_api.rs:7:23
[INFO] [stderr]   |
[INFO] [stderr] 7 | use aex::tcp::types::{Command, RawCodec};
[INFO] [stderr]   |                       ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `RawCodec`
[INFO] [stderr]  --> examples/middleware_api.rs:7:32
[INFO] [stderr]   |
[INFO] [stderr] 7 | use aex::tcp::types::{Command, RawCodec};
[INFO] [stderr]   |                                ^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `aex::connection::context::TypeMapExt`
[INFO] [stderr]  --> examples/middleware_api.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use aex::connection::context::TypeMapExt;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Command`
[INFO] [stderr]  --> examples/middleware_api.rs:7:23
[INFO] [stderr]   |
[INFO] [stderr] 7 | use aex::tcp::types::{Command, RawCodec};
[INFO] [stderr]   |                       ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `aex::connection::context::TypeMapExt`
[INFO] [stderr]  --> tests/server_test.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use aex::connection::context::TypeMapExt;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `timeout`
[INFO] [stderr]   --> tests/server_test.rs:10:36
[INFO] [stderr]    |
[INFO] [stderr] 10 | use tokio::time::{Duration, sleep, timeout};
[INFO] [stderr]    |                                    ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `server`
[INFO] [stderr]   --> tests/server_test.rs:15:9
[INFO] [stderr]    |
[INFO] [stderr] 15 |     let server = Server::new(addr, None);
[INFO] [stderr]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_server`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `aex` (bin "http-server" test) generated 2 warnings (2 duplicates)
[INFO] [stderr] warning: `aex` (example "websocket") generated 1 warning (run `cargo fix --example "websocket" -p aex` to apply 1 suggestion)
[INFO] [stderr] warning: `aex` (test "http_websocket_test") generated 1 warning
[INFO] [stderr] warning: `aex` (test "connection_manager_test") generated 1 warning (run `cargo fix --test "connection_manager_test" -p aex` to apply 1 suggestion)
[INFO] [stderr] warning: `aex` (example "fluent_api") generated 3 warnings (run `cargo fix --example "fluent_api" -p aex` to apply 1 suggestion)
[INFO] [stderr] warning: `aex` (example "middleware_api") generated 3 warnings (run `cargo fix --example "middleware_api" -p aex` to apply 1 suggestion)
[INFO] [stderr] warning: `aex` (test "server_test") generated 3 warnings (run `cargo fix --test "server_test" -p aex` to apply 3 suggestions)
[INFO] [stderr] warning: comparison is useless due to type limits
[INFO] [stderr]   --> tests/connection_metrics_test.rs:82:13
[INFO] [stderr]    |
[INFO] [stderr] 82 |     assert!(metrics.uptime_secs() >= 0);
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_comparisons)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `handle`
[INFO] [stderr]   --> examples/http_benchmark_aex.rs:39:9
[INFO] [stderr]    |
[INFO] [stderr] 39 |     let handle = tokio::spawn(async move {
[INFO] [stderr]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_handle`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::sync::Arc`
[INFO] [stderr]   --> tests/http_req_test.rs:12:9
[INFO] [stderr]    |
[INFO] [stderr] 12 |     use std::sync::Arc;
[INFO] [stderr]    |         ^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `TypeMapExt`
[INFO] [stderr]  --> tests/http_req_test.rs:3:47
[INFO] [stderr]   |
[INFO] [stderr] 3 |     use aex::connection::context::{BoxReader, TypeMapExt};
[INFO] [stderr]   |                                               ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable `lines` is assigned to, but never used
[INFO] [stderr]   --> examples/bench_simulate.rs:19:25
[INFO] [stderr]    |
[INFO] [stderr] 19 |                     let mut lines = 0;
[INFO] [stderr]    |                         ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: consider using `_lines` instead
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `path`
[INFO] [stderr]   --> examples/bench_simulate.rs:25:25
[INFO] [stderr]    |
[INFO] [stderr] 25 |                     let path = "/";
[INFO] [stderr]    |                         ^^^^ help: if this is intentional, prefix it with an underscore: `_path`
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `lines` is never read
[INFO] [stderr]   --> examples/bench_simulate.rs:22:25
[INFO] [stderr]    |
[INFO] [stderr] 22 |                         lines += 1;
[INFO] [stderr]    |                         ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: maybe it is overwritten before being read?
[INFO] [stderr]    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `aex` (test "connection_metrics_test") generated 1 warning
[INFO] [stderr] warning: `aex` (example "http_benchmark_aex") generated 1 warning (run `cargo fix --example "http_benchmark_aex" -p aex` to apply 1 suggestion)
[INFO] [stderr] warning: `aex` (test "http_req_test") generated 2 warnings (run `cargo fix --test "http_req_test" -p aex` to apply 1 suggestion)
[INFO] [stderr] warning: `aex` (example "bench_simulate") generated 3 warnings (run `cargo fix --example "bench_simulate" -p aex` to apply 1 suggestion)
[INFO] [stderr] warning: unused import: `std::net::SocketAddr`
[INFO] [stderr]  --> tests/connection_handshake_handler_test.rs:3:9
[INFO] [stderr]   |
[INFO] [stderr] 3 |     use std::net::SocketAddr;
[INFO] [stderr]   |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `AckCommand`, `HelloCommand`, `RejectCommand`, and `WelcomeCommand`
[INFO] [stderr]  --> tests/connection_handshake_handler_test.rs:7:37
[INFO] [stderr]   |
[INFO] [stderr] 7 |     use aex::connection::commands::{AckCommand, HelloCommand, RejectCommand, WelcomeCommand};
[INFO] [stderr]   |                                     ^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `local_time`
[INFO] [stderr]    --> tests/connection_commands_test.rs:282:13
[INFO] [stderr]     |
[INFO] [stderr] 282 |         let local_time = 1100;
[INFO] [stderr]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_local_time`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `aex` (test "connection_handshake_handler_test") generated 2 warnings (run `cargo fix --test "connection_handshake_handler_test" -p aex` to apply 2 suggestions)
[INFO] [stderr] warning: `aex` (test "connection_commands_test") generated 1 warning (run `cargo fix --test "connection_commands_test" -p aex` to apply 1 suggestion)
[INFO] [stderr] warning: unused import: `std::sync::Arc`
[INFO] [stderr]  --> tests/http_middlewares_validator_test.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::sync::Arc;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `RawCodec`
[INFO] [stderr]   --> tests/http_middlewares_validator_test.rs:13:27
[INFO] [stderr]    |
[INFO] [stderr] 13 |     tcp::types::{Command, RawCodec},
[INFO] [stderr]    |                           ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `connection::context::TypeMapExt`
[INFO] [stderr]  --> tests/http_middlewares_validator_test.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 5 |     connection::context::TypeMapExt,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Command`
[INFO] [stderr]   --> tests/http_middlewares_validator_test.rs:13:18
[INFO] [stderr]    |
[INFO] [stderr] 13 |     tcp::types::{Command, RawCodec},
[INFO] [stderr]    |                  ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `tokio::net::TcpListener`
[INFO] [stderr]  --> tests/p2p_bidirectional_test.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use tokio::net::TcpListener;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `aex::connection::manager::ConnectionManager`
[INFO] [stderr]  --> tests/p2p_bidirectional_test.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use aex::connection::manager::ConnectionManager;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `create_global` is never used
[INFO] [stderr]  --> tests/p2p_bidirectional_test.rs:9:4
[INFO] [stderr]   |
[INFO] [stderr] 9 | fn create_global(addr: SocketAddr) -> Arc<GlobalContext> {
[INFO] [stderr]   |    ^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `aex::server::Server`
[INFO] [stderr]  --> tests/http2_test.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use aex::server::Server;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::net::SocketAddr`
[INFO] [stderr]  --> tests/http2_test.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use std::net::SocketAddr;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Command` and `RawCodec`
[INFO] [stderr]  --> examples/hello_world.rs:3:23
[INFO] [stderr]   |
[INFO] [stderr] 3 | use aex::tcp::types::{Command, RawCodec};
[INFO] [stderr]   |                       ^^^^^^^  ^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::sync::Arc`
[INFO] [stderr]  --> examples/hello_world.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use std::sync::Arc;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `abort_handle` is never read
[INFO] [stderr]   --> src/connection/heartbeat.rs:95:5
[INFO] [stderr]    |
[INFO] [stderr] 89 | struct HeartbeatState {
[INFO] [stderr]    |        -------------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 95 |     abort_handle: Option<AbortHandle>,
[INFO] [stderr]    |     ^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `aex` (test "http_middlewares_validator_test") generated 4 warnings (run `cargo fix --test "http_middlewares_validator_test" -p aex` to apply 2 suggestions)
[INFO] [stderr] warning: `aex` (test "p2p_bidirectional_test") generated 3 warnings (run `cargo fix --test "p2p_bidirectional_test" -p aex` to apply 2 suggestions)
[INFO] [stderr] warning: `aex` (test "http2_test") generated 2 warnings (run `cargo fix --test "http2_test" -p aex` to apply 2 suggestions)
[INFO] [stderr] warning: `aex` (example "hello_world") generated 2 warnings (run `cargo fix --example "hello_world" -p aex` to apply 2 suggestions)
[INFO] [stderr] warning: `aex` (lib test) generated 31 warnings (30 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.75s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/aex-6288277f875c6818)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/http_server-1cde1096242ed5e0)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/communicators_event_test.rs (/opt/rustwide/target/debug/deps/communicators_event_test-315d5e656bc38e3d)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test tests::test_event_emitter_complex ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/communicators_pipe_test.rs (/opt/rustwide/target/debug/deps/communicators_pipe_test-cc2ffa1d79e0fc41)
[INFO] [stdout] 
[INFO] [stdout] running 5 tests
[INFO] [stdout] test tests::test_pipe_conflict_error ... ok
[INFO] [stdout] test tests::test_pipe_registration_race_condition_fixed ... ok
[INFO] [stdout] test tests::test_pipe_type_mismatch ... ok
[INFO] [stdout] test tests::test_pipe_not_found ... ok
[INFO] [stdout] test tests::test_pipe_register_and_send_success ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/communicators_spreader_test.rs (/opt/rustwide/target/debug/deps/communicators_spreader_test-061b8a25d1c46e6e)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stderr]      Running tests/connection_commands_ack_test.rs (/opt/rustwide/target/debug/deps/connection_commands_ack_test-277ff29606277a4e)
[INFO] [stdout] test test_spread_broadcast ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 7 tests
[INFO] [stdout] test test_ack_command_id ... ok
[INFO] [stdout] test test_ack_command_accepted_with_key ... ok
[INFO] [stdout] test test_ack_command_accepted ... ok
[INFO] [stdout] test test_ack_command_decode_invalid_id ... ok
[INFO] [stdout] test test_ack_command_decode_too_short ... ok
[INFO] [stdout] test test_ack_command_rejected ... ok
[INFO] [stderr]      Running tests/connection_commands_hello_test.rs (/opt/rustwide/target/debug/deps/connection_commands_hello_test-525648a20f747237)
[INFO] [stdout] test test_ack_command_encode_decode ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 7 tests
[INFO] [stdout] test test_hello_command_id ... ok
[INFO] [stdout] test test_hello_command_decode_too_short ... ok
[INFO] [stdout] test test_hello_command_decode_invalid_id ... ok
[INFO] [stdout] test test_hello_command_is_valid ... ok
[INFO] [stdout] test test_hello_command_new ... ok
[INFO] [stdout] test test_hello_command_new_with_encryption ... ok
[INFO] [stderr]      Running tests/connection_commands_mod_test.rs (/opt/rustwide/target/debug/deps/connection_commands_mod_test-a86739519935e5a2)
[INFO] [stdout] test test_hello_command_encode_decode ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test test_detect_command_unknown ... ok
[INFO] [stdout] test test_detect_command_too_short ... ok
[INFO] [stdout] test test_detect_command_valid ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/connection_commands_reject_test.rs (/opt/rustwide/target/debug/deps/connection_commands_reject_test-a987c1e3d067d154)
[INFO] [stdout] 
[INFO] [stdout] running 5 tests
[INFO] [stdout] test test_reject_command_id ... ok
[INFO] [stdout] test test_reject_command_new ... ok
[INFO] [stdout] test test_reject_command_decode_too_short ... ok
[INFO] [stdout] test test_reject_command_decode_invalid_id ... ok
[INFO] [stdout] test test_reject_command_encode_decode ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/connection_commands_router_test.rs (/opt/rustwide/target/debug/deps/connection_commands_router_test-3b71df4520892821)
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test test_command_router_new ... ok
[INFO] [stdout] test test_command_router_default ... ok
[INFO] [stdout] test test_command_router_register ... ok
[INFO] [stdout] test test_command_router_dispatch ... ok
[INFO] [stdout] test test_command_router_dispatch_unknown_command ... ok
[INFO] [stdout] test test_command_router_dispatch_data_too_short ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/connection_commands_test.rs (/opt/rustwide/target/debug/deps/connection_commands_test-204129125aadf6fa)
[INFO] [stdout] 
[INFO] [stdout] running 41 tests
[INFO] [stdout] test tests::test_command_id_from_u32_ack ... ok
[INFO] [stdout] test tests::test_ack_command_id ... ok
[INFO] [stdout] test tests::test_command_id_as_u32 ... ok
[INFO] [stdout] test tests::test_command_id_from_u32_pong ... ok
[INFO] [stdout] test tests::test_command_id_from_u32_ping ... ok
[INFO] [stdout] test tests::test_ack_command_rejected ... ok
[INFO] [stdout] test tests::test_ack_command_accepted ... ok
[INFO] [stdout] test tests::test_command_id_from_u32_reject ... ok
[INFO] [stdout] test tests::test_command_id_from_u32_welcome ... ok
[INFO] [stdout] test tests::test_command_id_into_u32 ... ok
[INFO] [stdout] test tests::test_command_id_from_u32_hello ... ok
[INFO] [stdout] test tests::test_command_id_traits ... ok
[INFO] [stdout] test tests::test_hello_command_decode_invalid_id ... ok
[INFO] [stdout] test tests::test_detect_command_type_too_short ... ok
[INFO] [stdout] test tests::test_detect_command_type_invalid_id ... ok
[INFO] [stdout] test tests::test_command_id_from_u32_invalid ... ok
[INFO] [stdout] test tests::test_hello_command_decode_too_short ... ok
[INFO] [stdout] test tests::test_detect_command_type ... ok
[INFO] [stdout] test tests::test_hello_command_id ... ok
[INFO] [stdout] test tests::test_hello_command_is_valid ... ok
[INFO] [stdout] test tests::test_ping_command_new ... ok
[INFO] [stdout] test tests::test_ping_command_default ... ok
[INFO] [stdout] test tests::test_pong_command_id ... ok
[INFO] [stdout] test tests::test_hello_command_decode ... ok
[INFO] [stdout] test tests::test_ping_command_id ... ok
[INFO] [stdout] test tests::test_pong_command_latency ... ok
[INFO] [stdout] test tests::test_ack_command_encode_decode ... ok
[INFO] [stdout] test tests::test_hello_command_encode ... ok
[INFO] [stdout] test tests::test_ping_command_with_nonce ... ok
[INFO] [stdout] test tests::test_reject_command_id ... ok
[INFO] [stdout] test tests::test_reject_command_new ... ok
[INFO] [stdout] test tests::test_hello_command_new ... ok
[INFO] [stdout] test tests::test_pong_command_new ... ok
[INFO] [stdout] test tests::test_ping_command_encode_decode ... ok
[INFO] [stdout] test tests::test_welcome_command_id ... ok
[INFO] [stdout] test tests::test_welcome_command_encode_decode ... ok
[INFO] [stdout] test tests::test_welcome_command_is_valid ... ok
[INFO] [stdout] test tests::test_welcome_command_rejected ... ok
[INFO] [stdout] test tests::test_welcome_command_new ... ok
[INFO] [stdout] test tests::test_pong_command_encode_decode ... ok
[INFO] [stdout] test tests::test_reject_command_encode_decode ... ok
[INFO] [stdout] 
[INFO] [stderr]      Running tests/connection_commands_welcome_test.rs (/opt/rustwide/target/debug/deps/connection_commands_welcome_test-58db8f2be6f2d15e)
[INFO] [stdout] test result: ok. 41 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 8 tests
[INFO] [stdout] test test_welcome_command_id ... ok
[INFO] [stdout] test test_welcome_command_decode_invalid_id ... ok
[INFO] [stdout] test test_welcome_command_decode_too_short ... ok
[INFO] [stdout] test test_welcome_command_rejected ... ok
[INFO] [stdout] test test_welcome_command_is_valid ... ok
[INFO] [stdout] test test_welcome_command_new ... ok
[INFO] [stdout] test test_welcome_command_new_with_key ... ok
[INFO] [stdout] test test_welcome_command_encode_decode ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/connection_context_test.rs (/opt/rustwide/target/debug/deps/connection_context_test-ed53028655d4e68a)
[INFO] [stdout] 
[INFO] [stdout] running 7 tests
[INFO] [stdout] test tests::test_typemap_ext ... ok
[INFO] [stdout] test tests::test_global_context_init ... ok
[INFO] [stdout] test tests::test_type_map_concurrency_cloning ... ok
[INFO] [stdout] test tests::test_context_concurrency ... ok
[INFO] [stdout] test tests::test_context_type_map_extensions ... ok
[INFO] [stdout] test tests::test_context_flow ... ok
[INFO] [stdout] test tests::test_context_full_flow ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.16s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/connection_global_context_test.rs (/opt/rustwide/target/debug/deps/connection_global_context_test-bfd7df6c0413b528)
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test tests::test_global_context_extensions ... ok
[INFO] [stdout] test tests::test_global_lifecycle_management ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/connection_handshake_handler_test.rs (/opt/rustwide/target/debug/deps/connection_handshake_handler_test-a665245d68fc8cab)
[INFO] [stdout] 
[INFO] [stdout] running 11 tests
[INFO] [stdout] test tests::test_handshake_handler_create_hello_with_encryption_no_keys ... ok
[INFO] [stdout] test tests::test_handshake_handler_create_reject ... ok
[INFO] [stdout] test tests::test_handshake_handler_create_ack ... ok
[INFO] [stdout] test tests::test_handshake_handler_create_hello_without_encryption ... ok
[INFO] [stdout] test tests::test_handshake_handler_create_hello_with_encryption_and_keys ... ok
[INFO] [stdout] test tests::test_handshake_handler_create_welcome_rejected ... ok
[INFO] [stdout] test tests::test_handshake_handler_new ... ok
[INFO] [stdout] test tests::test_handshake_handler_create_welcome_accepted ... ok
[INFO] [stdout] test tests::test_handshake_handler_on_established ... ok
[INFO] [stdout] test tests::test_handshake_handler_on_rejected ... ok
[INFO] [stdout] test tests::test_handshake_handler_with_session_keys ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 11 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/connection_handshake_test.rs (/opt/rustwide/target/debug/deps/connection_handshake_test-4b4cc31c1fe2c07c)
[INFO] [stdout] 
[INFO] [stdout] running 18 tests
[INFO] [stdout] test tests::test_handshake_version_constant ... ok
[INFO] [stdout] test tests::test_ack_command_rejected ... ok
[INFO] [stdout] test tests::test_ack_command_accepted ... ok
[INFO] [stdout] test tests::test_handshake_state_get_or_create ... ok
[INFO] [stdout] test tests::test_handshake_state_get_or_create_existing ... ok
[INFO] [stdout] test tests::test_handshake_state_remove ... ok
[INFO] [stdout] test tests::test_handshake_context_new ... ok
[INFO] [stdout] test tests::test_handshake_context_with_encryption ... ok
[INFO] [stdout] test tests::test_handshake_state_new ... ok
[INFO] [stdout] test tests::test_handshake_context_set_peer_node ... ok
[INFO] [stdout] test tests::test_handshake_context_confirm ... ok
[INFO] [stdout] test tests::test_reject_command_new ... ok
[INFO] [stdout] test tests::test_hello_command_is_valid ... ok
[INFO] [stdout] test tests::test_handshake_context_send_frame_not_supported ... ok
[INFO] [stdout] test tests::test_reject_command_encode_decode ... ok
[INFO] [stdout] test tests::test_welcome_command_rejected ... ok
[INFO] [stdout] test tests::test_welcome_command_encode_decode ... ok
[INFO] [stdout] test tests::test_hello_command_encode_decode ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 18 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/connection_manager_test.rs (/opt/rustwide/target/debug/deps/connection_manager_test-02a93feb46aeccee)
[INFO] [stdout] 
[INFO] [stdout] running 16 tests
[INFO] [stdout] test tests::test_cleanup_deadlock_prevention ... ok
[INFO] [stdout] test tests::test_cancel_operations ... ok
[INFO] [stdout] test tests::test_add_and_remove_logic ... ok
[INFO] [stdout] test tests::test_connection_notify_by_node_id ... ok
[INFO] [stdout] test tests::test_connect_success ... ok
[INFO] [stdout] test tests::test_deactivate_and_status ... ok
[INFO] [stdout] test tests::test_connect_closure_execution ... ok
[INFO] [stdout] test tests::test_connect_duplicate_prevented ... ok
[INFO] [stdout] test tests::test_network_scope_coverage ... ok
[INFO] [stdout] test tests::test_connect_physical_failure ... ok
[INFO] [stdout] test tests::test_notify_multiple_connections ... ok
[INFO] [stdout] test tests::test_extreme_deactivate ... ok
[INFO] [stdout] test tests::test_new_manager ... ok
[INFO] [stdout] test tests::test_connection_forward_all ... ok
[INFO] [stdout] test tests::test_shutdown ... ok
[INFO] [stdout] test tests::test_status_empty_manager ... ok
[INFO] [stderr]      Running tests/connection_metrics_test.rs (/opt/rustwide/target/debug/deps/connection_metrics_test-3d8a5d4b277b7fd7)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 16 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 11 tests
[INFO] [stdout] test test_connection_metrics_latency_min_max ... ok
[INFO] [stdout] test test_connection_metrics_record_latency ... ok
[INFO] [stdout] test test_connection_metrics_latency_avg ... ok
[INFO] [stdout] test test_connection_metrics_packet_loss_rate ... ok
[INFO] [stdout] test test_connection_metrics_default ... ok
[INFO] [stdout] test test_connection_metrics_record_received ... ok
[INFO] [stdout] test test_connection_metrics_new ... ok
[INFO] [stdout] test test_connection_metrics_throughput ... ok
[INFO] [stdout] test test_connection_metrics_record_sent ... ok
[INFO] [stdout] test test_connection_metrics_record_error ... ok
[INFO] [stdout] test test_connection_metrics_uptime ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 11 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/connection_node_test.rs (/opt/rustwide/target/debug/deps/connection_node_test-2a609e6e25fff683)
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test tests::test_node_ip_filtering ... ok
[INFO] [stdout] test tests::test_from_system ... ok
[INFO] [stderr]      Running tests/connection_pool_limit_test.rs (/opt/rustwide/target/debug/deps/connection_pool_limit_test-6c198b884420ca8e)
[INFO] [stdout] test tests::test_node_protocols ... ok
[INFO] [stdout] test tests::test_node_new_and_from_addr ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 14 tests
[INFO] [stdout] test tests::test_pool_config_default ... ok
[INFO] [stdout] test tests::test_pool_allow_result_is_allowed ... ok
[INFO] [stdout] test tests::test_pool_config_new ... ok
[INFO] [stdout] test tests::test_pool_config_with_idle_timeout ... ok
[INFO] [stdout] test tests::test_pool_config_with_per_ip_limit ... ok
[INFO] [stdout] test tests::test_connection_pool_limits_new ... ok
[INFO] [stdout] test tests::test_connection_pool_total_limit ... ok
[INFO] [stdout] test tests::test_connection_pool_can_connect_allowed ... ok
[INFO] [stdout] test tests::test_per_ip_count ... ok
[INFO] [stdout] test tests::test_outbound_inbound_count ... ok
[INFO] [stdout] test tests::test_connection_pool_outbound_inbound_limits ... ok
[INFO] [stdout] test tests::test_connection_pool_per_ip_limit ... ok
[INFO] [stdout] test tests::test_pool_config_with_subnet_limit ... ok
[INFO] [stdout] test tests::test_connection_pool_cleanup_idle ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 14 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.11s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/connection_protocol_test.rs (/opt/rustwide/target/debug/deps/connection_protocol_test-26aa708a913f425c)
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test tests::test_derived_traits ... ok
[INFO] [stdout] test tests::test_protocol_from_str_logic ... ok
[INFO] [stdout] test tests::test_protocol_as_str_exhaustive ... ok
[INFO] [stdout] test tests::test_protocol_serde_roundtrip ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/connection_scope_test.rs (/opt/rustwide/target/debug/deps/connection_scope_test-a107371818a3b0e3)
[INFO] [stdout] 
[INFO] [stdout] running 13 tests
[INFO] [stdout] test tests::test_network_scope_from_ipv4_private_10 ... ok
[INFO] [stdout] test tests::test_network_scope_from_ipv4_private_192 ... ok
[INFO] [stdout] test tests::test_network_scope_from_ipv6_extranet ... ok
[INFO] [stdout] test tests::test_network_scope_from_ipv4_loopback ... ok
[INFO] [stdout] test tests::test_network_scope_is_intranet ... ok
[INFO] [stdout] test tests::test_network_scope_from_ipv6_ula ... ok
[INFO] [stdout] test tests::test_network_scope_from_ipv6_loopback ... ok
[INFO] [stdout] test tests::test_network_scope_from_ipv4_private_172 ... ok
[INFO] [stdout] test tests::test_network_scope_traits ... ok
[INFO] [stdout] test tests::test_network_scope_from_ipv6_link_local ... ok
[INFO] [stdout] test tests::test_network_scope_from_ipv4_extranet ... ok
[INFO] [stdout] test tests::test_network_scope_from_ipv4_link_local ... ok
[INFO] [stdout] test tests::test_network_scope_is_extranet ... ok
[INFO] [stderr]      Running tests/connection_state_machine_test.rs (/opt/rustwide/target/debug/deps/connection_state_machine_test-768b2b0e9519ff59)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 13 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 12 tests
[INFO] [stdout] test test_connection_state_as_u8 ... ok
[INFO] [stderr]      Running tests/connection_status_test.rs (/opt/rustwide/target/debug/deps/connection_status_test-3f59862e067e22ee)
[INFO] [stdout] test test_connection_state_all_variants ... ok
[INFO] [stdout] test test_connection_state_can_send ... ok
[INFO] [stdout] test test_connection_state_display ... ok
[INFO] [stdout] test test_connection_state_can_receive ... ok
[INFO] [stdout] test test_connection_state_is_connected ... ok
[INFO] [stdout] test test_connection_state_machine_new ... ok
[INFO] [stdout] test test_connection_state_machine_set_invalid ... ok
[INFO] [stdout] test test_connection_state_machine_set_valid ... ok
[INFO] [stdout] test test_connection_state_machine_transitions ... ok
[INFO] [stdout] test test_connection_state_should_heartbeat ... ok
[INFO] [stdout] test test_connection_state_unknown ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 12 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test tests::test_connection_status_debug ... ok
[INFO] [stdout] test tests::test_connection_status_display_format ... ok
[INFO] [stdout] test tests::test_connection_status_default ... ok
[INFO] [stdout] 
[INFO] [stderr]      Running tests/connection_types_test.rs (/opt/rustwide/target/debug/deps/connection_types_test-ffe4637c0b396cd7)
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test tests::test_network_scope_logic ... ok
[INFO] [stderr]      Running tests/crypto_mod_test.rs (/opt/rustwide/target/debug/deps/crypto_mod_test-c118623f44d09bab)
[INFO] [stdout] test tests::test_is_deactivated_logic ... ok
[INFO] [stdout] test tests::test_drop_aborts_handle ... ok
[INFO] [stdout] test tests::test_connection_entry_lifecycle ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 9 tests
[INFO] [stdout] test tests::test_session_key_creation ... ok
[INFO] [stdout] test tests::test_paired_session_key_new ... ok
[INFO] [stdout] test tests::test_crypto_exports ... ok
[INFO] [stdout] test tests::test_session_key_public_key ... ok
[INFO] [stdout] test tests::test_paired_session_key_save ... ok
[INFO] [stdout] test tests::test_paired_session_key_establish_begins ... ok
[INFO] [stdout] test tests::test_paired_session_key_with_session ... ok
[INFO] [stdout] test tests::test_paired_session_key_create_temp ... ok
[INFO] [stdout] test tests::test_paired_session_key_create_main ... ok
[INFO] [stderr]      Running tests/crypto_session_key_pair_test.rs (/opt/rustwide/target/debug/deps/crypto_session_key_pair_test-dddba85ecd30c1e6)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 8 tests
[INFO] [stdout] test tests::test_with_session_callback ... ok
[INFO] [stdout] test tests::test_session_cleanup ... ok
[INFO] [stdout] test tests::test_session_migration ... ok
[INFO] [stdout] test tests::test_session_not_found_errors ... ok
[INFO] [stdout] test tests::test_establish_ends_flow ... ok
[INFO] [stdout] test tests::test_session_lifecycle ... ok
[INFO] [stdout] test tests::test_full_handshake_and_communication ... ok
[INFO] [stdout] test tests::test_cleanup_expiry ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/crypto_session_key_test.rs (/opt/rustwide/target/debug/deps/crypto_session_key_test-5cb1b98c3e4bbaaf)
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test tests::test_ciphertext_too_short ... ok
[INFO] [stdout] test tests::test_full_handshake_and_communication ... ok
[INFO] [stdout] test tests::test_tampered_data ... ok
[INFO] [stdout] test tests::test_decrypt_with_wrong_key ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/handshake_state_test.rs (/opt/rustwide/target/debug/deps/handshake_state_test-b3ac423bdf6907b6)
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test test_handshake_context_with_encryption ... ok
[INFO] [stdout] test test_handshake_state_remove ... ok
[INFO] [stdout] test test_handshake_state ... ok
[INFO] [stdout] test test_handshake_context_confirm ... ok
[INFO] [stdout] test test_handshake_context_set_peer_node ... ok
[INFO] [stdout] test test_handshake_context ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stderr]      Running tests/handshake_test.rs (/opt/rustwide/target/debug/deps/handshake_test-f8d83133faf8f61e)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 34 tests
[INFO] [stdout] test test_ack_command_creation ... ok
[INFO] [stdout] test test_ack_command_rejected ... ok
[INFO] [stdout] test test_handshake_state_creation ... ok
[INFO] [stdout] test test_handshake_handler_create_hello_without_encryption ... ok
[INFO] [stdout] test test_handshake_handler_create_ack ... ok
[INFO] [stdout] test test_handshake_state_remove ... ok
[INFO] [stdout] test test_handshake_context_set_peer_node ... ok
[INFO] [stdout] test test_handshake_handler_create_reject ... ok
[INFO] [stdout] test test_handshake_context_with_encryption ... ok
[INFO] [stdout] test test_handshake_state_get_or_create ... ok
[INFO] [stdout] test test_handshake_handler_create_hello_with_encryption ... ok
[INFO] [stdout] test test_handshake_handler_creation ... ok
[INFO] [stdout] test test_handshake_handler_callbacks ... ok
[INFO] [stdout] test test_handshake_handler_with_session_keys ... ok
[INFO] [stdout] test test_handshake_handler_create_welcome ... ok
[INFO] [stdout] test test_handshake_context_creation ... ok
[INFO] [stdout] test test_handshake_context_confirm ... ok
[INFO] [stdout] test test_hello_command_decode_invalid ... ok
[INFO] [stdout] test test_hello_command_decode_wrong_id ... ok
[INFO] [stdout] test test_welcome_command_creation ... ok
[INFO] [stdout] test test_hello_command_constants ... ok
[INFO] [stdout] test test_ack_command_encode_decode ... ok
[INFO] [stdout] test test_hello_command_creation ... ok
[INFO] [stdout] test test_hello_command_encode_decode ... ok
[INFO] [stdout] test test_welcome_command_encode_decode ... ok
[INFO] [stdout] test test_welcome_command_is_valid ... ok
[INFO] [stdout] test test_hello_command_is_valid ... ok
[INFO] [stdout] test test_reject_command_encode_decode ... ok
[INFO] [stdout] test test_welcome_command_rejected ... ok
[INFO] [stdout] test test_reject_command_creation ... ok
[INFO] [stdout] test test_p2p_handshake_full_flow ... ok
[INFO] [stdout] test test_p2p_handshake_with_encryption_request ... ok
[INFO] [stdout] test test_p2p_handshake_rejection ... ok
[INFO] [stdout] test test_p2p_handshake_version_mismatch ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 34 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.07s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/heartbeat_test.rs (/opt/rustwide/target/debug/deps/heartbeat_test-244104fd74af6a44)
[INFO] [stdout] 
[INFO] [stdout] running 21 tests
[INFO] [stdout] test test_heartbeat_config_creation ... ok
[INFO] [stdout] test test_heartbeat_config_builder ... ok
[INFO] [stdout] test test_heartbeat_config_callbacks ... ok
[INFO] [stdout] test test_ping_command_creation ... ok
[INFO] [stdout] test test_ping_command_constants ... ok
[INFO] [stdout] test test_ping_command_decode_invalid ... ok
[INFO] [stdout] test test_ping_command_with_nonce ... ok
[INFO] [stdout] test test_ping_command_encode_decode ... ok
[INFO] [stdout] test test_heartbeat_manager_check_timeout ... ok
[INFO] [stdout] test test_heartbeat_manager_create_ping ... ok
[INFO] [stdout] test test_heartbeat_manager_create_ping_with_keys ... ok
[INFO] [stdout] test test_heartbeat_manager_create_pong ... ok
[INFO] [stdout] test test_heartbeat_manager_creation ... ok
[INFO] [stdout] test test_pong_command_encode_decode ... ok
[INFO] [stdout] test test_pong_command_with_nonce ... ok
[INFO] [stdout] test test_pong_latency_calculation ... ok
[INFO] [stdout] test test_heartbeat_manager_remove_connection ... ok
[INFO] [stdout] test test_heartbeat_manager_get_latency ... ok
[INFO] [stdout] test test_heartbeat_manager_with_config ... ok
[INFO] [stdout] test test_pong_command_creation ... ok
[INFO] [stderr]      Running tests/http2_test.rs (/opt/rustwide/target/debug/deps/http2_test-ebb2fb0c817fb5f4)
[INFO] [stdout] test test_ping_command_decode_wrong_id ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 21 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stderr]      Running tests/http_content_type_test.rs (/opt/rustwide/target/debug/deps/http_content_type_test-02cd2a86f4387cfe)
[INFO] [stdout] test test_h2_codec_new ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 9 tests
[INFO] [stdout] test tests::test_constructors ... ok
[INFO] [stdout] test tests::test_content_type_to_string ... ok
[INFO] [stdout] test tests::test_parse_malformed_and_empty ... ok
[INFO] [stdout] test tests::test_parse_simple ... ok
[INFO] [stdout] test tests::test_parse_with_params ... ok
[INFO] [stdout] test tests::test_semantic_checks ... ok
[INFO] [stdout] test tests::test_top_level_parse ... ok
[INFO] [stdout] test tests::test_to_string ... ok
[INFO] [stdout] test tests::test_content_type_parse ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/http_header_test.rs (/opt/rustwide/target/debug/deps/http_header_test-0cedc04e4237b1ca)
[INFO] [stdout] 
[INFO] [stdout] running 19 tests
[INFO] [stdout] test tests::test_as_str_custom ... ok
[INFO] [stdout] test tests::test_display_preservation ... ok
[INFO] [stdout] test tests::test_display_custom ... ok
[INFO] [stdout] test tests::test_display_standard ... ok
[INFO] [stdout] test tests::test_as_str_standard ... ok
[INFO] [stdout] test tests::test_eq_and_hash ... ok
[INFO] [stdout] test tests::test_from_conversions ... ok
[INFO] [stderr]      Running tests/http_media_test.rs (/opt/rustwide/target/debug/deps/http_media_test-9c633ed94c941660)
[INFO] [stdout] test tests::test_from_iterator ... ok
[INFO] [stdout] test tests::test_deref_and_iteration ... ok
[INFO] [stdout] test tests::test_case_insensitivity ... ok
[INFO] [stdout] test tests::test_chained_construction ... ok
[INFO] [stdout] test tests::test_all_standard_headers_as_str ... ok
[INFO] [stdout] test tests::test_custom_header_case ... ok
[INFO] [stdout] test tests::test_from_str_custom ... ok
[INFO] [stdout] test tests::test_from_str_case_insensitive ... ok
[INFO] [stdout] test tests::test_from_str_standard ... ok
[INFO] [stdout] test tests::test_from_str_trim ... ok
[INFO] [stdout] test tests::test_remove_case_insensitive ... ok
[INFO] [stdout] test tests::test_remove_non_existent ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 19 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 18 tests
[INFO] [stdout] test tests::test_as_str ... ok
[INFO] [stderr]      Running tests/http_meta_test.rs (/opt/rustwide/target/debug/deps/http_meta_test-f09d2e812e5d7aeb)
[INFO] [stdout] test tests::test_fromstr_trait ... ok
[INFO] [stdout] test tests::test_from_str_exact ... ok
[INFO] [stdout] test tests::test_media_type_as_str_and_from_str ... ok
[INFO] [stdout] test tests::test_guess ... ok
[INFO] [stdout] test tests::test_media_type_boolean_logic_exhaustive ... ok
[INFO] [stdout] test tests::test_media_type_guess_all_extensions ... ok
[INFO] [stdout] test tests::test_media_type_guess ... ok
[INFO] [stdout] test tests::test_media_type_helpers ... ok
[INFO] [stdout] test tests::test_media_type_exhaustive ... ok
[INFO] [stdout] test tests::test_sub_media_type_as_str ... ok
[INFO] [stdout] test tests::test_sub_media_type_boolean_helpers ... ok
[INFO] [stdout] test tests::test_sub_media_type_boolean_logic_exhaustive ... ok
[INFO] [stdout] test tests::test_sub_media_type_exhaustive_as_str ... ok
[INFO] [stdout] test tests::test_sub_media_type_exhaustive_from_str ... ok
[INFO] [stdout] test tests::test_sub_media_type_from_str ... ok
[INFO] [stdout] test tests::test_sub_media_type_top_level_exhaustive ... ok
[INFO] [stdout] test tests::test_sub_media_type_top_level_mapping ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 18 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 5 tests
[INFO] [stderr]      Running tests/http_method_test.rs (/opt/rustwide/target/debug/deps/http_method_test-0954f9732adb5cdd)
[INFO] [stdout] test tests::test_default_metadata ... ok
[INFO] [stdout] test tests::test_body_and_status ... ok
[INFO] [stdout] test tests::test_modification ... ok
[INFO] [stdout] test tests::test_new_metadata ... ok
[INFO] [stdout] test tests::test_params_integration ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test tests::test_is_http_connection_peek_error ... ok
[INFO] [stdout] test tests::test_is_http_connection_eof ... ok
[INFO] [stdout] test tests::test_is_http_connection_invalid_utf8 ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/http_middlewares_cors_test.rs (/opt/rustwide/target/debug/deps/http_middlewares_cors_test-950d413b92d9632d)
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test tests::test_cors_config_new ... ok
[INFO] [stdout] test tests::test_cors_build ... ok
[INFO] [stdout] test tests::test_cors_config_default ... ok
[INFO] [stdout] test tests::test_cors_builder_full ... ok
[INFO] [stdout] test tests::test_cors_builder_methods ... ok
[INFO] [stdout] test tests::test_cors_builder_headers ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/http_middlewares_logger_test.rs (/opt/rustwide/target/debug/deps/http_middlewares_logger_test-ab36736325923a5c)
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test tests::test_logger_clone ... ok
[INFO] [stdout] test tests::test_logger_all ... ok
[INFO] [stdout] test tests::test_logger_log_method ... ok
[INFO] [stdout] test tests::test_logger_log_path ... ok
[INFO] [stdout] test tests::test_logger_log_user_agent ... ok
[INFO] [stdout] test tests::test_logger_new ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/http_middlewares_rate_limit_test.rs (/opt/rustwide/target/debug/deps/http_middlewares_rate_limit_test-e0da6bc283bef31a)
[INFO] [stdout] 
[INFO] [stdout] running 7 tests
[INFO] [stdout] test test_rate_limit_config_by_ip ... ok
[INFO] [stdout] test test_rate_limit_config_new ... ok
[INFO] [stdout] test test_rate_limit_config_by_header ... ok
[INFO] [stdout] test test_rate_limit_config_by_path ... ok
[INFO] [stdout] test test_rate_limit_macro_by_header ... ok
[INFO] [stdout] test test_rate_limit_macro_by_ip ... ok
[INFO] [stdout] test test_rate_limit_macro_default ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/http_middlewares_validator_test.rs (/opt/rustwide/target/debug/deps/http_middlewares_validator_test-e71b72b65f2f0e80)
[INFO] [stdout] 
[INFO] [stdout] running 12 tests
[INFO] [stdout] test test_value_to_string_all_variants ... ok
[INFO] [stdout] test test_validator_params_none_fallback ... ok
[INFO] [stdout] test test_validator_float_strict_error_integration ... ok
[INFO] [stdout] test test_validator_boolean_strict_error_integration ... ok
[INFO] [stdout] test test_validator_integer_strict_error_integration ... ok
[INFO] [stdout] test test_validator_value_to_string_fallback ... ok
[INFO] [stdout] test test_validator_float_auto_completion_promotion ... ok
[INFO] [stdout] test test_v_macro_integration_full ... ok
[INFO] [stdout] test test_validator_conversion_logic_hardcore ... ok
[INFO] [stdout] test test_validator_to_handler_data_flow ... ok
[INFO] [stdout] test test_validator_edge_cases_and_fallback ... ok
[INFO] [stdout] test test_to_validator_integration_full ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 12 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.39s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/http_middlewares_websocket_test.rs (/opt/rustwide/target/debug/deps/http_middlewares_websocket_test-d42d2126fa407f5e)
[INFO] [stdout] 
[INFO] [stdout] running 36 tests
[INFO] [stdout] test websocket_tests::test_binary_ping_pong_command_trait ... ok
[INFO] [stdout] test websocket_tests::test_continuation_command_trait ... ok
[INFO] [stdout] test websocket_tests::test_continuation_and_reserved_payload ... ok
[INFO] [stdout] test websocket_tests::test_continuation_payload_mapping ... ok
[INFO] [stdout] test websocket_tests::test_continuation_reassembly_logic ... ok
[INFO] [stdout] test websocket_tests::test_check_handshake_logic ... ok
[INFO] [stdout] test websocket_tests::test_decode_incomplete_127_extended_len ... ok
[INFO] [stdout] test websocket_tests::test_decode_incomplete_126_extended_len ... ok
[INFO] [stdout] test websocket_tests::test_decode_extended_len_127_step_by_step ... ok
[INFO] [stdout] test websocket_tests::test_codec_to_command_id_flow ... ok
[INFO] [stdout] test websocket_tests::test_decode_continuation_frame ... ok
[INFO] [stdout] test websocket_tests::test_decode_missing_mask_key ... ok
[INFO] [stdout] test websocket_tests::test_decode_incomplete_base_header ... ok
[INFO] [stdout] test websocket_tests::test_reserved_opcodes_codec_roundtrip ... ok
[INFO] [stdout] test websocket_tests::test_parse_close_payload_result_chain ... ok
[INFO] [stdout] test websocket_tests::test_parse_close_payload_logic ... ok
[INFO] [stdout] test websocket_tests::test_match_unsupported_opcode_logic ... ok
[INFO] [stdout] test websocket_tests::test_ws_frame_as_command_mapping ... ok
[INFO] [stdout] test websocket_tests::test_parse_close_payload_error_scenarios ... ok
[INFO] [stdout] test websocket_tests::test_ws_frame_close_command_behavior ... ok
[INFO] [stdout] test websocket_tests::test_parse_close_payload_comprehensive ... ok
[INFO] [stdout] test websocket_tests::test_ws_frame_trait_methods ... ok
[INFO] [stdout] test websocket_tests::test_ws_pong_payload_trait ... ok
[INFO] [stdout] test websocket_tests::test_ws_codec_opcode_and_payload_integrity ... ok
[INFO] [stdout] test websocket_tests::test_ws_encode_payload_len_127 ... ok
[INFO] [stdout] test websocket_tests::test_ws_codec_decode_text ... ok
[INFO] [stdout] test websocket_tests::test_decode_opcode_0x8_full_path ... ok
[INFO] [stdout] test websocket_tests::test_ws_codec_encode_binary ... ok
[INFO] [stdout] test websocket_tests::test_ws_codec_comprehensive ... ok
[INFO] [stdout] test websocket_tests::test_pong_codec_full_cycle ... ok
[INFO] [stdout] test websocket_tests::test_codec_all_types ... ok
[INFO] [stdout] test websocket_tests::test_ws_decode_extended_lengths ... ok
[INFO] [stdout] test websocket_tests::test_websocket_run_loop ... ok
[INFO] [stdout] test websocket_tests::test_websocket_full_interaction ... ok
[INFO] [stdout] test websocket_tests::test_ping_pong_payload_echo ... ok
[INFO] [stdout] test websocket_tests::test_ws_encode_payload_len_126 ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 36 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/http_mod_test.rs (/opt/rustwide/target/debug/deps/http_mod_test-aa09b40745788806)
[INFO] [stdout] 
[INFO] [stdout] running 5 tests
[INFO] [stdout] test tests::test_http_module_protocol_exports ... ok
[INFO] [stdout] test tests::test_http_router_node_type ... ok
[INFO] [stdout] test tests::test_http_module_re_exports ... ok
[INFO] [stdout] test tests::test_http_metadata_default ... ok
[INFO] [stdout] test tests::test_http_params_empty ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stderr]      Running tests/http_params_test.rs (/opt/rustwide/target/debug/deps/http_params_test-778162357bd5933f)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 5 tests
[INFO] [stdout] test tests::test_new_params_without_query ... ok
[INFO] [stdout] test tests::test_parse_special_characters ... ok
[INFO] [stdout] test tests::test_new_params_with_query ... ok
[INFO] [stdout] test tests::test_empty_values ... ok
[INFO] [stdout] test tests::test_set_form ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/http_protocol_test.rs (/opt/rustwide/target/debug/deps/http_protocol_test-2e96baa2d6b6d4b2)
[INFO] [stdout] 
[INFO] [stdout] running 13 tests
[INFO] [stdout] test tests::test_header_key_standard ... ok
[INFO] [stdout] test tests::test_content_type_parsing ... ok
[INFO] [stdout] test tests::test_content_type_to_string ... ok
[INFO] [stdout] test tests::test_media_type_sub_type ... ok
[INFO] [stdout] test tests::test_method_from_str ... ok
[INFO] [stdout] test tests::test_method_is_prefixed ... ok
[INFO] [stdout] test tests::test_method_to_str ... ok
[INFO] [stdout] test tests::test_status_code_from_u16 ... ok
[INFO] [stdout] test tests::test_status_code_to_http_status ... ok
[INFO] [stdout] test tests::test_status_code_to_str ... ok
[INFO] [stdout] test tests::test_version_from_str ... ok
[INFO] [stdout] test tests::test_version_as_str ... ok
[INFO] [stderr]      Running tests/http_req_test.rs (/opt/rustwide/target/debug/deps/http_req_test-cdcb887df0cf209c)
[INFO] [stdout] test tests::test_method_is_http_connection ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 13 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test tests::test_getters ... ok
[INFO] [stdout] test tests::test_cookie_parsing_edge_cases ... ok
[INFO] [stdout] test tests::test_parse_to_local_success ... ok
[INFO] [stdout] test tests::test_parse_errors ... ok
[INFO] [stdout] test tests::test_parse_multipart_boundary ... ok
[INFO] [stdout] test tests::test_read_line_limit_exceeded ... ok
[INFO] [stdout] 
[INFO] [stderr]      Running tests/http_res_test.rs (/opt/rustwide/target/debug/deps/http_res_test-512d598df24d28f3)
[INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test tests::test_send_full_response_manual ... ok
[INFO] [stdout] test tests::test_send_response_from_metadata ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/http_router_test.rs (/opt/rustwide/target/debug/deps/http_router_test-73c80c6cd0657cd6)
[INFO] [stdout] 
[INFO] [stdout] running 22 tests
[INFO] [stdout] test tests::test_header_key_case_insensitivity ... ok
[INFO] [stdout] test tests::test_header_key_standard_match ... ok
[INFO] [stdout] test tests::test_header_key_trimming ... ok
[INFO] [stdout] test tests::test_header_key_display_trait ... ok
[INFO] [stdout] test tests::test_header_key_roundtrip ... ok
[INFO] [stdout] test tests::test_header_key_custom_fallback ... ok
[INFO] [stdout] test tests::test_server_auto_parsing_and_routing ... ok
[INFO] [stdout] test tests::test_full_stack_wildcard_and_middleware ... ok
[INFO] [stdout] test tests::test_wildcard_method_middleware_with_executor ... ok
[INFO] [stdout] test tests::test_router_patch_method ... ok
[INFO] [stdout] test tests::test_router_head_method ... ok
[INFO] [stdout] test tests::test_full_macros_suite ... ok
[INFO] [stdout] test tests::test_router_options_method ... ok
[INFO] [stdout] test tests::test_router_404_not_found ... ok
[INFO] [stdout] test tests::test_router_delete_method ... ok
[INFO] [stdout] test tests::test_router_put_method ... ok
[INFO] [stdout] test tests::test_full_macros_suite1 ... ok
[INFO] [stdout] test tests::test_router_404_fallback ... ok
[INFO] [stdout] test tests::test_middleware_interruption_full_stack ... ok
[INFO] [stdout] test tests::test_form_body_auto_parsing ... ok
[INFO] [stdout] test tests::test_wildcard_method_matching ... ok
[INFO] [stdout] test tests::test_wildcard_method_middleware ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 22 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.66s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/http_status_test.rs (/opt/rustwide/target/debug/deps/http_status_test-e0ea0ba3bb081d1b)
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test tests::test_from_u16_valid ... ok
[INFO] [stderr]      Running tests/http_test.rs (/opt/rustwide/target/debug/deps/http_test-94b31ae3907cb5f0)
[INFO] [stdout] test tests::test_roundtrip_from_u16_to_str ... ok
[INFO] [stdout] test tests::test_from_u16_invalid ... ok
[INFO] [stdout] test tests::test_to_str ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 5 tests
[INFO] [stdout] test tests::test_is_prefixed_bytes ... ok
[INFO] [stdout] test tests::test_to_str_from_str_roundtrip ... ok
[INFO] [stdout] test tests::test_is_prefixed_str ... ok
[INFO] [stdout] test tests::test_from_str ... ok
[INFO] [stdout] test tests::test_to_str ... ok
[INFO] [stderr]      Running tests/http_types_test.rs (/opt/rustwide/target/debug/deps/http_types_test-483f1185fca5b6b0)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.11s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/http_version_test.rs (/opt/rustwide/target/debug/deps/http_version_test-d9c0cadc325a12cc)
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stderr]      Running tests/http_websocket_test.rs (/opt/rustwide/target/debug/deps/http_websocket_test-fe69d7c9f78b43c3)
[INFO] [stdout] test tests::test_http_version_as_str ... ok
[INFO] [stdout] test tests::test_http_version_from_str ... ok
[INFO] [stdout] test tests::test_derived_traits ... ok
[INFO] [stdout] test tests::test_http_version_display ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 24 tests
[INFO] [stdout] test tests::test_ws_codec_decode_insufficient_data ... ok
[INFO] [stdout] test tests::test_ws_codec_decode_binary_frame ... ok
[INFO] [stdout] test tests::test_ws_codec_decode_close_frame ... ok
[INFO] [stdout] test tests::test_ws_codec_decode_ping_frame ... ok
[INFO] [stdout] test tests::test_ws_codec_decode_extended_length_64 ... ok
[INFO] [stdout] test tests::test_ws_codec_encode_ping ... ok
[INFO] [stdout] test tests::test_ws_codec_encode_extended_length ... ok
[INFO] [stdout] test tests::test_ws_codec_decode_reserved_control ... ok
[INFO] [stdout] test tests::test_ws_codec_decode_extended_length_16 ... ok
[INFO] [stdout] test tests::test_ws_codec_decode_continuation ... ok
[INFO] [stdout] test tests::test_ws_codec_decode_masked ... ok
[INFO] [stdout] test tests::test_ws_codec_encode_binary ... ok
[INFO] [stdout] test tests::test_ws_codec_decode_text_frame ... ok
[INFO] [stdout] test tests::test_ws_codec_encode_close ... ok
[INFO] [stdout] test tests::test_ws_frame_traits ... ok
[INFO] [stdout] test tests::test_ws_frame_variants ... ok
[INFO] [stdout] test tests::test_ws_frame_command ... ok
[INFO] [stdout] test tests::test_ws_frame_data ... ok
[INFO] [stdout] test tests::test_ws_frame_opcode_via_command_trait ... ok
[INFO] [stdout] test tests::test_ws_codec_decode_reserved_non_control ... ok
[INFO] [stdout] test tests::test_ws_codec_decode_pong_frame ... ok
[INFO] [stdout] test tests::test_ws_codec_encode_pong ... ok
[INFO] [stdout] test tests::test_ws_codec_encode_text ... ok
[INFO] [stderr]      Running tests/macros_test.rs (/opt/rustwide/target/debug/deps/macros_test-af89a012e5525047)
[INFO] [stdout] test tests::test_ws_frame_payload ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 24 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test tests::test_macro_usable_via_on ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/message_queue_test.rs (/opt/rustwide/target/debug/deps/message_queue_test-2977f7dc50fb795f)
[INFO] [stdout] 
[INFO] [stdout] running 7 tests
[INFO] [stdout] test test_message_queue_new ... ok
[INFO] [stdout] test test_message_queue_retry_failed ... ok
[INFO] [stdout] test test_message_queue_full ... ok
[INFO] [stdout] test test_message_with_ack ... ok
[INFO] [stdout] test test_message_queue_mark_sent_and_confirm ... ok
[INFO] [stdout] test test_message_queue_clear_expired ... ok
[INFO] [stdout] test test_message_queue_enqueue_dequeue ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/multicast_test.rs (/opt/rustwide/target/debug/deps/multicast_test-3b3e161b3c209655)
[INFO] [stdout] 
[INFO] [stdout] running 10 tests
[INFO] [stdout] test test_multicast_scope_address_range ... ok
[INFO] [stdout] test test_multicast_scope_is_admin_local ... ok
[INFO] [stdout] test test_multicast_scope_from_addr ... ok
[INFO] [stdout] test test_multicast_group_new ... ok
[INFO] [stdout] test test_multicast_group_new_site_local ... ok
[INFO] [stdout] test test_multicast_group_join_leave ... ok
[INFO] [stdout] test test_multicast_members ... ok
[INFO] [stdout] test test_multicast_manager_remove_group ... ok
[INFO] [stdout] test test_multicast_manager_new ... ok
[INFO] [stdout] test test_multicast_manager_create_and_get_group ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 10 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/p2p_bidirectional_test.rs (/opt/rustwide/target/debug/deps/p2p_bidirectional_test-dd1b8258d708d793)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test test_p2p_node_entry_basic ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- test_p2p_node_entry_basic stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'test_p2p_node_entry_basic' (589) panicked at tests/p2p_bidirectional_test.rs:22:5:
[INFO] [stdout] assertion failed: !ips.is_empty()
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5c7e673a079a - std[fce30c26ee6459b]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/b8e88e5ddf5521a9f43ee3f62a702388c713e4bb/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5c7e673a079a - std[fce30c26ee6459b]::backtrace_rs::backtrace::trace_unsynchronized::<std[fce30c26ee6459b]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/b8e88e5ddf5521a9f43ee3f62a702388c713e4bb/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5c7e673a079a - std[fce30c26ee6459b]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/b8e88e5ddf5521a9f43ee3f62a702388c713e4bb/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5c7e673a079a - <<std[fce30c26ee6459b]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[d17f6591d688f3bd]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/b8e88e5ddf5521a9f43ee3f62a702388c713e4bb/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5c7e673b479a - <core[d17f6591d688f3bd]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/b8e88e5ddf5521a9f43ee3f62a702388c713e4bb/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5c7e673b479a - core[d17f6591d688f3bd]::fmt::write
[INFO] [stdout]    6:     0x5c7e673a50f2 - std[fce30c26ee6459b]::io::default_write_fmt::<alloc[dad09f3a48280dba]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/b8e88e5ddf5521a9f43ee3f62a702388c713e4bb/library/std/src/io/mod.rs:621:11
[INFO] [stdout]    7:     0x5c7e673a50f2 - <alloc[dad09f3a48280dba]::vec::Vec<u8> as std[fce30c26ee6459b]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/b8e88e5ddf5521a9f43ee3f62a702388c713e4bb/library/std/src/io/mod.rs:1976:13
[INFO] [stdout]    8:     0x5c7e6737f2df - <std[fce30c26ee6459b]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/b8e88e5ddf5521a9f43ee3f62a702388c713e4bb/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5c7e6737f2df - std[fce30c26ee6459b]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/b8e88e5ddf5521a9f43ee3f62a702388c713e4bb/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5c7e67398a79 - std[fce30c26ee6459b]::panicking::default_hook
[INFO] [stdout]                                at /rustc/b8e88e5ddf5521a9f43ee3f62a702388c713e4bb/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5c7e672a5eec - <alloc[dad09f3a48280dba]::boxed::Box<dyn for<'a, 'b> core[d17f6591d688f3bd]::ops::function::Fn<(&'a std[fce30c26ee6459b]::panic::PanicHookInfo<'b>,), Output = ()> + core[d17f6591d688f3bd]::marker::Sync + core[d17f6591d688f3bd]::marker::Send> as core[d17f6591d688f3bd]::ops::function::Fn<(&std[fce30c26ee6459b]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/b8e88e5ddf5521a9f43ee3f62a702388c713e4bb/library/alloc/src/boxed.rs:2285:9
[INFO] [stdout]   12:     0x5c7e672a5eec - test[9653f4f1d2ca1489]::test_main_inner::<test[9653f4f1d2ca1489]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/b8e88e5ddf5521a9f43ee3f62a702388c713e4bb/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x5c7e67398cf2 - <alloc[dad09f3a48280dba]::boxed::Box<dyn for<'a, 'b> core[d17f6591d688f3bd]::ops::function::Fn<(&'a std[fce30c26ee6459b]::panic::PanicHookInfo<'b>,), Output = ()> + core[d17f6591d688f3bd]::marker::Sync + core[d17f6591d688f3bd]::marker::Send> as core[d17f6591d688f3bd]::ops::function::Fn<(&std[fce30c26ee6459b]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/b8e88e5ddf5521a9f43ee3f62a702388c713e4bb/library/alloc/src/boxed.rs:2285:9
[INFO] [stdout]   14:     0x5c7e67398cf2 - std[fce30c26ee6459b]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/b8e88e5ddf5521a9f43ee3f62a702388c713e4bb/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5c7e6737f3ca - std[fce30c26ee6459b]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/b8e88e5ddf5521a9f43ee3f62a702388c713e4bb/library/std/src/panicking.rs:691:13
[INFO] [stdout]   16:     0x5c7e673745a9 - std[fce30c26ee6459b]::sys::backtrace::__rust_end_short_backtrace::<std[fce30c26ee6459b]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/b8e88e5ddf5521a9f43ee3f62a702388c713e4bb/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5c7e673800ad - __rustc[de152adb51f02556]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/b8e88e5ddf5521a9f43ee3f62a702388c713e4bb/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5c7e673b4f8c - core[d17f6591d688f3bd]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/b8e88e5ddf5521a9f43ee3f62a702388c713e4bb/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5c7e673b4f52 - core[d17f6591d688f3bd]::panicking::panic
[INFO] [stdout]                                at /rustc/b8e88e5ddf5521a9f43ee3f62a702388c713e4bb/library/core/src/panicking.rs:150:5
[INFO] [stdout]   20:     0x5c7e67298247 - p2p_bidirectional_test[b20fde4b47b52af4]::test_p2p_node_entry_basic::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/p2p_bidirectional_test.rs:22:5
[INFO] [stdout]   21:     0x5c7e67298fb2 - <core[d17f6591d688f3bd]::pin::Pin<&mut dyn core[d17f6591d688f3bd]::future::future::Future<Output = ()>> as core[d17f6591d688f3bd]::future::future::Future>::poll
[INFO] [stdout]                                at /rustc/b8e88e5ddf5521a9f43ee3f62a702388c713e4bb/library/core/src/future/future.rs:133:9
[INFO] [stdout]   22:     0x5c7e6729902d - <core[d17f6591d688f3bd]::pin::Pin<&mut core[d17f6591d688f3bd]::pin::Pin<&mut dyn core[d17f6591d688f3bd]::future::future::Future<Output = ()>>> as core[d17f6591d688f3bd]::future::future::Future>::poll
[INFO] [stdout]                                at /rustc/b8e88e5ddf5521a9f43ee3f62a702388c713e4bb/library/core/src/future/future.rs:133:9
[INFO] [stdout]   23:     0x5c7e67297f1d - <tokio[ed82851049bdc8cd]::runtime::scheduler::current_thread::CoreGuard>::block_on::<core[d17f6591d688f3bd]::pin::Pin<&mut core[d17f6591d688f3bd]::pin::Pin<&mut dyn core[d17f6591d688f3bd]::future::future::Future<Output = ()>>>>::{closure#0}::{closure#0}::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/current_thread/mod.rs:753:70
[INFO] [stdout]   24:     0x5c7e67297e1b - tokio[ed82851049bdc8cd]::task::coop::with_budget::<core[d17f6591d688f3bd]::task::poll::Poll<()>, <tokio[ed82851049bdc8cd]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[d17f6591d688f3bd]::pin::Pin<&mut core[d17f6591d688f3bd]::pin::Pin<&mut dyn core[d17f6591d688f3bd]::future::future::Future<Output = ()>>>>::{closure#0}::{closure#0}::{closure#0}>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/task/coop/mod.rs:167:5
[INFO] [stdout]   25:     0x5c7e67297e1b - tokio[ed82851049bdc8cd]::task::coop::budget::<core[d17f6591d688f3bd]::task::poll::Poll<()>, <tokio[ed82851049bdc8cd]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[d17f6591d688f3bd]::pin::Pin<&mut core[d17f6591d688f3bd]::pin::Pin<&mut dyn core[d17f6591d688f3bd]::future::future::Future<Output = ()>>>>::{closure#0}::{closure#0}::{closure#0}>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/task/coop/mod.rs:133:5
[INFO] [stdout]   26:     0x5c7e67297e1b - <tokio[ed82851049bdc8cd]::runtime::scheduler::current_thread::CoreGuard>::block_on::<core[d17f6591d688f3bd]::pin::Pin<&mut core[d17f6591d688f3bd]::pin::Pin<&mut dyn core[d17f6591d688f3bd]::future::future::Future<Output = ()>>>>::{closure#0}::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/current_thread/mod.rs:753:25
[INFO] [stdout]   27:     0x5c7e67290dc0 - <tokio[ed82851049bdc8cd]::runtime::scheduler::current_thread::Context>::enter::<core[d17f6591d688f3bd]::task::poll::Poll<()>, <tokio[ed82851049bdc8cd]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[d17f6591d688f3bd]::pin::Pin<&mut core[d17f6591d688f3bd]::pin::Pin<&mut dyn core[d17f6591d688f3bd]::future::future::Future<Output = ()>>>>::{closure#0}::{closure#0}>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/current_thread/mod.rs:442:19
[INFO] [stdout]   28:     0x5c7e672965bd - <tokio[ed82851049bdc8cd]::runtime::scheduler::current_thread::CoreGuard>::block_on::<core[d17f6591d688f3bd]::pin::Pin<&mut core[d17f6591d688f3bd]::pin::Pin<&mut dyn core[d17f6591d688f3bd]::future::future::Future<Output = ()>>>>::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/current_thread/mod.rs:752:44
[INFO] [stdout]   29:     0x5c7e672958b4 - <tokio[ed82851049bdc8cd]::runtime::scheduler::current_thread::CoreGuard>::enter::<<tokio[ed82851049bdc8cd]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[d17f6591d688f3bd]::pin::Pin<&mut core[d17f6591d688f3bd]::pin::Pin<&mut dyn core[d17f6591d688f3bd]::future::future::Future<Output = ()>>>>::{closure#0}, core[d17f6591d688f3bd]::option::Option<()>>::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/current_thread/mod.rs:840:68
[INFO] [stdout]   30:     0x5c7e6729048b - <tokio[ed82851049bdc8cd]::runtime::context::scoped::Scoped<tokio[ed82851049bdc8cd]::runtime::scheduler::Context>>::set::<<tokio[ed82851049bdc8cd]::runtime::scheduler::current_thread::CoreGuard>::enter<<tokio[ed82851049bdc8cd]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[d17f6591d688f3bd]::pin::Pin<&mut core[d17f6591d688f3bd]::pin::Pin<&mut dyn core[d17f6591d688f3bd]::future::future::Future<Output = ()>>>>::{closure#0}, core[d17f6591d688f3bd]::option::Option<()>>::{closure#0}, (alloc[dad09f3a48280dba]::boxed::Box<tokio[ed82851049bdc8cd]::runtime::scheduler::current_thread::Core>, core[d17f6591d688f3bd]::option::Option<()>)>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/context/scoped.rs:40:9
[INFO] [stdout]   31:     0x5c7e67297209 - tokio[ed82851049bdc8cd]::runtime::context::set_scheduler::<(alloc[dad09f3a48280dba]::boxed::Box<tokio[ed82851049bdc8cd]::runtime::scheduler::current_thread::Core>, core[d17f6591d688f3bd]::option::Option<()>), <tokio[ed82851049bdc8cd]::runtime::scheduler::current_thread::CoreGuard>::enter<<tokio[ed82851049bdc8cd]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[d17f6591d688f3bd]::pin::Pin<&mut core[d17f6591d688f3bd]::pin::Pin<&mut dyn core[d17f6591d688f3bd]::future::future::Future<Output = ()>>>>::{closure#0}, core[d17f6591d688f3bd]::option::Option<()>>::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/context.rs:176:38
[INFO] [stdout]   32:     0x5c7e67291d42 - <std[fce30c26ee6459b]::thread::local::LocalKey<tokio[ed82851049bdc8cd]::runtime::context::Context>>::try_with::<tokio[ed82851049bdc8cd]::runtime::context::set_scheduler<(alloc[dad09f3a48280dba]::boxed::Box<tokio[ed82851049bdc8cd]::runtime::scheduler::current_thread::Core>, core[d17f6591d688f3bd]::option::Option<()>), <tokio[ed82851049bdc8cd]::runtime::scheduler::current_thread::CoreGuard>::enter<<tokio[ed82851049bdc8cd]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[d17f6591d688f3bd]::pin::Pin<&mut core[d17f6591d688f3bd]::pin::Pin<&mut dyn core[d17f6591d688f3bd]::future::future::Future<Output = ()>>>>::{closure#0}, core[d17f6591d688f3bd]::option::Option<()>>::{closure#0}>::{closure#0}, (alloc[dad09f3a48280dba]::boxed::Box<tokio[ed82851049bdc8cd]::runtime::scheduler::current_thread::Core>, core[d17f6591d688f3bd]::option::Option<()>)>
[INFO] [stdout]                                at /rustc/b8e88e5ddf5521a9f43ee3f62a702388c713e4bb/library/std/src/thread/local.rs:462:12
[INFO] [stdout]   33:     0x5c7e672918ce - <std[fce30c26ee6459b]::thread::local::LocalKey<tokio[ed82851049bdc8cd]::runtime::context::Context>>::with::<tokio[ed82851049bdc8cd]::runtime::context::set_scheduler<(alloc[dad09f3a48280dba]::boxed::Box<tokio[ed82851049bdc8cd]::runtime::scheduler::current_thread::Core>, core[d17f6591d688f3bd]::option::Option<()>), <tokio[ed82851049bdc8cd]::runtime::scheduler::current_thread::CoreGuard>::enter<<tokio[ed82851049bdc8cd]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[d17f6591d688f3bd]::pin::Pin<&mut core[d17f6591d688f3bd]::pin::Pin<&mut dyn core[d17f6591d688f3bd]::future::future::Future<Output = ()>>>>::{closure#0}, core[d17f6591d688f3bd]::option::Option<()>>::{closure#0}>::{closure#0}, (alloc[dad09f3a48280dba]::boxed::Box<tokio[ed82851049bdc8cd]::runtime::scheduler::current_thread::Core>, core[d17f6591d688f3bd]::option::Option<()>)>
[INFO] [stdout]                                at /rustc/b8e88e5ddf5521a9f43ee3f62a702388c713e4bb/library/std/src/thread/local.rs:426:20
[INFO] [stdout]   34:     0x5c7e672946fd - tokio[ed82851049bdc8cd]::runtime::context::set_scheduler::<(alloc[dad09f3a48280dba]::boxed::Box<tokio[ed82851049bdc8cd]::runtime::scheduler::current_thread::Core>, core[d17f6591d688f3bd]::option::Option<()>), <tokio[ed82851049bdc8cd]::runtime::scheduler::current_thread::CoreGuard>::enter<<tokio[ed82851049bdc8cd]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[d17f6591d688f3bd]::pin::Pin<&mut core[d17f6591d688f3bd]::pin::Pin<&mut dyn core[d17f6591d688f3bd]::future::future::Future<Output = ()>>>>::{closure#0}, core[d17f6591d688f3bd]::option::Option<()>>::{closure#0}>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/context.rs:176:17
[INFO] [stdout]   35:     0x5c7e67294140 - <tokio[ed82851049bdc8cd]::runtime::scheduler::current_thread::CoreGuard>::enter::<<tokio[ed82851049bdc8cd]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[d17f6591d688f3bd]::pin::Pin<&mut core[d17f6591d688f3bd]::pin::Pin<&mut dyn core[d17f6591d688f3bd]::future::future::Future<Output = ()>>>>::{closure#0}, core[d17f6591d688f3bd]::option::Option<()>>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/current_thread/mod.rs:840:27
[INFO] [stdout]   36:     0x5c7e67294436 - <tokio[ed82851049bdc8cd]::runtime::scheduler::current_thread::CoreGuard>::block_on::<core[d17f6591d688f3bd]::pin::Pin<&mut core[d17f6591d688f3bd]::pin::Pin<&mut dyn core[d17f6591d688f3bd]::future::future::Future<Output = ()>>>>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/current_thread/mod.rs:740:24
[INFO] [stdout]   37:     0x5c7e672953c0 - <tokio[ed82851049bdc8cd]::runtime::scheduler::current_thread::CurrentThread>::block_on::<core[d17f6591d688f3bd]::pin::Pin<&mut dyn core[d17f6591d688f3bd]::future::future::Future<Output = ()>>>::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/current_thread/mod.rs:200:33
[INFO] [stdout]   38:     0x5c7e67294d03 - tokio[ed82851049bdc8cd]::runtime::context::runtime::enter_runtime::<<tokio[ed82851049bdc8cd]::runtime::scheduler::current_thread::CurrentThread>::block_on<core[d17f6591d688f3bd]::pin::Pin<&mut dyn core[d17f6591d688f3bd]::future::future::Future<Output = ()>>>::{closure#0}, ()>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/context/runtime.rs:65:16
[INFO] [stdout]   39:     0x5c7e672908f1 - <tokio[ed82851049bdc8cd]::runtime::scheduler::current_thread::CurrentThread>::block_on::<core[d17f6591d688f3bd]::pin::Pin<&mut dyn core[d17f6591d688f3bd]::future::future::Future<Output = ()>>>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/scheduler/current_thread/mod.rs:188:9
[INFO] [stdout]   40:     0x5c7e67290014 - <tokio[ed82851049bdc8cd]::runtime::runtime::Runtime>::block_on_inner::<core[d17f6591d688f3bd]::pin::Pin<&mut dyn core[d17f6591d688f3bd]::future::future::Future<Output = ()>>>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/runtime.rs:368:52
[INFO] [stdout]   41:     0x5c7e672901df - <tokio[ed82851049bdc8cd]::runtime::runtime::Runtime>::block_on::<core[d17f6591d688f3bd]::pin::Pin<&mut dyn core[d17f6591d688f3bd]::future::future::Future<Output = ()>>>
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.49.0/src/runtime/runtime.rs:342:18
[INFO] [stdout]   42:     0x5c7e672983e7 - p2p_bidirectional_test[b20fde4b47b52af4]::test_p2p_node_entry_basic
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/p2p_bidirectional_test.rs:22:29
[INFO] [stdout]   43:     0x5c7e67297f47 - p2p_bidirectional_test[b20fde4b47b52af4]::test_p2p_node_entry_basic::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/p2p_bidirectional_test.rs:14:37
[INFO] [stdout]   44:     0x5c7e67299126 - <p2p_bidirectional_test[b20fde4b47b52af4]::test_p2p_node_entry_basic::{closure#0} as core[d17f6591d688f3bd]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b8e88e5ddf5521a9f43ee3f62a702388c713e4bb/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x5c7e672991cb - <fn() -> core[d17f6591d688f3bd]::result::Result<(), alloc[dad09f3a48280dba]::string::String> as core[d17f6591d688f3bd]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b8e88e5ddf5521a9f43ee3f62a702388c713e4bb/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   46:     0x5c7e672991cb - test[9653f4f1d2ca1489]::__rust_begin_short_backtrace::<core[d17f6591d688f3bd]::result::Result<(), alloc[dad09f3a48280dba]::string::String>, fn() -> core[d17f6591d688f3bd]::result::Result<(), alloc[dad09f3a48280dba]::string::String>>
[INFO] [stdout]                                at /rustc/b8e88e5ddf5521a9f43ee3f62a702388c713e4bb/library/test/src/lib.rs:724:18
[INFO] [stdout]   47:     0x5c7e672a69bb - test[9653f4f1d2ca1489]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/b8e88e5ddf5521a9f43ee3f62a702388c713e4bb/library/test/src/lib.rs:747:74
[INFO] [stdout]   48:     0x5c7e672a69bb - <core[d17f6591d688f3bd]::panic::unwind_safe::AssertUnwindSafe<test[9653f4f1d2ca1489]::run_test_in_process::{closure#0}> as core[d17f6591d688f3bd]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b8e88e5ddf5521a9f43ee3f62a702388c713e4bb/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   49:     0x5c7e672a69bb - std[fce30c26ee6459b]::panicking::catch_unwind::do_call::<core[d17f6591d688f3bd]::panic::unwind_safe::AssertUnwindSafe<test[9653f4f1d2ca1489]::run_test_in_process::{closure#0}>, core[d17f6591d688f3bd]::result::Result<(), alloc[dad09f3a48280dba]::string::String>>
[INFO] [stdout]                                at /rustc/b8e88e5ddf5521a9f43ee3f62a702388c713e4bb/library/std/src/panicking.rs:581:40
[INFO] [stdout]   50:     0x5c7e672a69bb - std[fce30c26ee6459b]::panicking::catch_unwind::<core[d17f6591d688f3bd]::result::Result<(), alloc[dad09f3a48280dba]::string::String>, core[d17f6591d688f3bd]::panic::unwind_safe::AssertUnwindSafe<test[9653f4f1d2ca1489]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/b8e88e5ddf5521a9f43ee3f62a702388c713e4bb/library/std/src/panicking.rs:544:19
[INFO] [stdout]   51:     0x5c7e672a69bb - std[fce30c26ee6459b]::panic::catch_unwind::<core[d17f6591d688f3bd]::panic::unwind_safe::AssertUnwindSafe<test[9653f4f1d2ca1489]::run_test_in_process::{closure#0}>, core[d17f6591d688f3bd]::result::Result<(), alloc[dad09f3a48280dba]::string::String>>
[INFO] [stdout]                                at /rustc/b8e88e5ddf5521a9f43ee3f62a702388c713e4bb/library/std/src/panic.rs:359:14
[INFO] [stdout]   52:     0x5c7e672a69bb - test[9653f4f1d2ca1489]::run_test_in_process
[INFO] [stdout]                                at /rustc/b8e88e5ddf5521a9f43ee3f62a702388c713e4bb/library/test/src/lib.rs:747:27
[INFO] [stdout]   53:     0x5c7e672a69bb - test[9653f4f1d2ca1489]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/b8e88e5ddf5521a9f43ee3f62a702388c713e4bb/library/test/src/lib.rs:668:43
[INFO] [stdout]   54:     0x5c7e672a00d4 - test[9653f4f1d2ca1489]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/b8e88e5ddf5521a9f43ee3f62a702388c713e4bb/library/test/src/lib.rs:698:41
[INFO] [stdout]   55:     0x5c7e672a00d4 - std[fce30c26ee6459b]::sys::backtrace::__rust_begin_short_backtrace::<test[9653f4f1d2ca1489]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/b8e88e5ddf5521a9f43ee3f62a702388c713e4bb/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   56:     0x5c7e672a95c2 - std[fce30c26ee6459b]::thread::lifecycle::spawn_unchecked::<test[9653f4f1d2ca1489]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/b8e88e5ddf5521a9f43ee3f62a702388c713e4bb/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   57:     0x5c7e672a95c2 - <core[d17f6591d688f3bd]::panic::unwind_safe::AssertUnwindSafe<std[fce30c26ee6459b]::thread::lifecycle::spawn_unchecked<test[9653f4f1d2ca1489]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[d17f6591d688f3bd]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b8e88e5ddf5521a9f43ee3f62a702388c713e4bb/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   58:     0x5c7e672a95c2 - std[fce30c26ee6459b]::panicking::catch_unwind::do_call::<core[d17f6591d688f3bd]::panic::unwind_safe::AssertUnwindSafe<std[fce30c26ee6459b]::thread::lifecycle::spawn_unchecked<test[9653f4f1d2ca1489]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/b8e88e5ddf5521a9f43ee3f62a702388c713e4bb/library/std/src/panicking.rs:581:40
[INFO] [stdout]   59:     0x5c7e672a95c2 - std[fce30c26ee6459b]::panicking::catch_unwind::<(), core[d17f6591d688f3bd]::panic::unwind_safe::AssertUnwindSafe<std[fce30c26ee6459b]::thread::lifecycle::spawn_unchecked<test[9653f4f1d2ca1489]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/b8e88e5ddf5521a9f43ee3f62a702388c713e4bb/library/std/src/panicking.rs:544:19
[INFO] [stdout]   60:     0x5c7e672a95c2 - std[fce30c26ee6459b]::panic::catch_unwind::<core[d17f6591d688f3bd]::panic::unwind_safe::AssertUnwindSafe<std[fce30c26ee6459b]::thread::lifecycle::spawn_unchecked<test[9653f4f1d2ca1489]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/b8e88e5ddf5521a9f43ee3f62a702388c713e4bb/library/std/src/panic.rs:359:14
[INFO] [stdout]   61:     0x5c7e672a95c2 - std[fce30c26ee6459b]::thread::lifecycle::spawn_unchecked::<test[9653f4f1d2ca1489]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/b8e88e5ddf5521a9f43ee3f62a702388c713e4bb/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   62:     0x5c7e672a95c2 - <std[fce30c26ee6459b]::thread::lifecycle::spawn_unchecked<test[9653f4f1d2ca1489]::run_test::{closure#1}, ()>::{closure#1} as core[d17f6591d688f3bd]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/b8e88e5ddf5521a9f43ee3f62a702388c713e4bb/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   63:     0x5c7e673a009f - <alloc[dad09f3a48280dba]::boxed::Box<dyn core[d17f6591d688f3bd]::ops::function::FnOnce<(), Output = ()> + core[d17f6591d688f3bd]::marker::Send> as core[d17f6591d688f3bd]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b8e88e5ddf5521a9f43ee3f62a702388c713e4bb/library/alloc/src/boxed.rs:2271:9
[INFO] [stdout]   64:     0x5c7e673a009f - <std[fce30c26ee6459b]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/b8e88e5ddf5521a9f43ee3f62a702388c713e4bb/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   65:     0x7bd6f29c0aa4 - <unknown>
[INFO] [stdout]   66:     0x7bd6f2a4da64 - clone
[INFO] [stdout]   67:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     test_p2p_node_entry_basic
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.23s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--test p2p_bidirectional_test`
[INFO] running `Command { std: "docker" "inspect" "257c6c8213bcbf834aa0e5279efeb479f39754ac4100edd64fd1754de4630758", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "257c6c8213bcbf834aa0e5279efeb479f39754ac4100edd64fd1754de4630758", kill_on_drop: false }`
[INFO] [stdout] 257c6c8213bcbf834aa0e5279efeb479f39754ac4100edd64fd1754de4630758
