[INFO] cloning repository https://github.com/yuluo-zy/red-quic [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/yuluo-zy/red-quic" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fyuluo-zy%2Fred-quic", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fyuluo-zy%2Fred-quic'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 364a70b221fe8d0dfe116e295f4089d80062a99b [INFO] testing yuluo-zy/red-quic against beta-2025-04-13 for beta-1.87-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fyuluo-zy%2Fred-quic" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/yuluo-zy/red-quic on toolchain beta-2025-04-13 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2025-04-13" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] removed /workspace/builds/worker-7-tc2/source/.cargo/config.toml [INFO] started tweaking git repo https://github.com/yuluo-zy/red-quic [INFO] finished tweaking git repo https://github.com/yuluo-zy/red-quic [INFO] tweaked toml for git repo https://github.com/yuluo-zy/red-quic written to /workspace/builds/worker-7-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/yuluo-zy/red-quic 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" "+beta-2025-04-13" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:b0b074c097205a61b89e8ad263052f976b2b332c4dc5f02aef1fe52501660d6e" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-04-13" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 58085049104b9bcc672ad8ceff796643edac8db1d7a4e71c78e72a40fc5a69f9 [INFO] running `Command { std: "docker" "start" "-a" "58085049104b9bcc672ad8ceff796643edac8db1d7a4e71c78e72a40fc5a69f9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "58085049104b9bcc672ad8ceff796643edac8db1d7a4e71c78e72a40fc5a69f9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "58085049104b9bcc672ad8ceff796643edac8db1d7a4e71c78e72a40fc5a69f9", kill_on_drop: false }` [INFO] [stdout] 58085049104b9bcc672ad8ceff796643edac8db1d7a4e71c78e72a40fc5a69f9 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:b0b074c097205a61b89e8ad263052f976b2b332c4dc5f02aef1fe52501660d6e" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-04-13" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 05404e13c55d9ea2d0b9f6bf62e1b44ba06aadde0eb1857441de914ac2dea5ec [INFO] running `Command { std: "docker" "start" "-a" "05404e13c55d9ea2d0b9f6bf62e1b44ba06aadde0eb1857441de914ac2dea5ec", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.137 [INFO] [stderr] Compiling proc-macro2 v1.0.47 [INFO] [stderr] Compiling quote v1.0.21 [INFO] [stderr] Compiling unicode-ident v1.0.5 [INFO] [stderr] Compiling syn v1.0.103 [INFO] [stderr] Compiling cfg-if v1.0.0 [INFO] [stderr] Compiling once_cell v1.16.0 [INFO] [stderr] Compiling version_check v0.9.4 [INFO] [stderr] Compiling bytes v1.2.1 [INFO] [stderr] Compiling log v0.4.17 [INFO] [stderr] Compiling pin-project-lite v0.2.9 [INFO] [stderr] Compiling memchr v2.5.0 [INFO] [stderr] Compiling futures-core v0.3.25 [INFO] [stderr] Compiling smallvec v1.10.0 [INFO] [stderr] Compiling lock_api v0.4.9 [INFO] [stderr] Compiling parking_lot_core v0.9.4 [INFO] [stderr] Compiling scopeguard v1.1.0 [INFO] [stderr] Compiling futures-sink v0.3.25 [INFO] [stderr] Compiling futures-channel v0.3.25 [INFO] [stderr] Compiling slab v0.4.7 [INFO] [stderr] Compiling tokio v1.21.2 [INFO] [stderr] Compiling futures-task v0.3.25 [INFO] [stderr] Compiling ahash v0.7.6 [INFO] [stderr] Compiling libm v0.2.6 [INFO] [stderr] Compiling jobserver v0.1.25 [INFO] [stderr] Compiling getrandom v0.2.8 [INFO] [stderr] Compiling cc v1.0.76 [INFO] [stderr] Compiling socket2 v0.4.7 [INFO] [stderr] Compiling signal-hook-registry v1.4.0 [INFO] [stderr] Compiling num_cpus v1.14.0 [INFO] [stderr] Compiling mio v0.8.5 [INFO] [stderr] Compiling parking_lot v0.12.1 [INFO] [stderr] Compiling futures-util v0.3.25 [INFO] [stderr] Compiling tracing-core v0.1.30 [INFO] [stderr] Compiling num-traits v0.2.15 [INFO] [stderr] Compiling pin-utils v0.1.0 [INFO] [stderr] Compiling unicode-xid v0.2.4 [INFO] [stderr] Compiling futures-io v0.3.25 [INFO] [stderr] Compiling fnv v1.0.7 [INFO] [stderr] Compiling byteorder v1.4.3 [INFO] [stderr] Compiling ppv-lite86 v0.2.17 [INFO] [stderr] Compiling itoa v1.0.4 [INFO] [stderr] Compiling hashbrown v0.12.3 [INFO] [stderr] Compiling num-integer v0.1.45 [INFO] [stderr] Compiling indexmap v1.9.1 [INFO] [stderr] Compiling http v0.2.8 [INFO] [stderr] Compiling ring v0.16.20 [INFO] [stderr] Compiling num-rational v0.4.1 [INFO] [stderr] Compiling lazy_static v1.4.0 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling tower-service v0.3.2 [INFO] [stderr] Compiling untrusted v0.7.1 [INFO] [stderr] Compiling pkg-config v0.3.26 [INFO] [stderr] Compiling spin v0.5.2 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling http-body v0.4.5 [INFO] [stderr] Compiling hex-literal v0.3.4 [INFO] [stderr] Compiling subtle v2.4.1 [INFO] [stderr] Compiling openssl-sys v0.9.78 [INFO] [stderr] Compiling serde_derive v1.0.147 [INFO] [stderr] Compiling anyhow v1.0.66 [INFO] [stderr] Compiling httparse v1.8.0 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling either v1.8.0 [INFO] [stderr] Compiling try-lock v0.2.3 [INFO] [stderr] Compiling async-trait v0.1.58 [INFO] [stderr] Compiling tower-layer v0.3.2 [INFO] [stderr] Compiling getrandom v0.1.16 [INFO] [stderr] Compiling typenum v1.16.0 [INFO] [stderr] Compiling serde v1.0.147 [INFO] [stderr] Compiling base64 v0.13.1 [INFO] [stderr] Compiling want v0.3.0 [INFO] [stderr] Compiling synstructure v0.12.6 [INFO] [stderr] Compiling itertools v0.10.5 [INFO] [stderr] Compiling s2n-tls-sys v0.0.19 [INFO] [stderr] Compiling generic-array v0.14.6 [INFO] [stderr] Compiling httpdate v1.0.2 [INFO] [stderr] Compiling bitflags v1.3.2 [INFO] [stderr] Compiling errno v0.2.8 [INFO] [stderr] Compiling proc-macro-error-attr v1.0.4 [INFO] [stderr] Compiling memoffset v0.5.6 [INFO] [stderr] Compiling mime v0.3.16 [INFO] [stderr] Compiling crc32fast v1.3.2 [INFO] [stderr] Compiling http-range-header v0.3.0 [INFO] [stderr] Compiling regex-syntax v0.6.28 [INFO] [stderr] Compiling rand_core v0.5.1 [INFO] [stderr] Compiling proc-macro-error v1.0.4 [INFO] [stderr] Compiling sync_wrapper v0.1.1 [INFO] [stderr] Compiling rustls v0.20.7 [INFO] [stderr] Compiling crossbeam-utils v0.8.12 [INFO] [stderr] Compiling matchit v0.5.0 [INFO] [stderr] Compiling percent-encoding v2.2.0 [INFO] [stderr] Compiling webpki v0.22.0 [INFO] [stderr] Compiling sct v0.7.0 [INFO] [stderr] Compiling miniz_oxide v0.5.4 [INFO] [stderr] Compiling rand_chacha v0.2.2 [INFO] [stderr] Compiling tokio-macros v1.8.0 [INFO] [stderr] Compiling futures-macro v0.3.25 [INFO] [stderr] Compiling tracing-attributes v0.1.23 [INFO] [stderr] Compiling zerocopy-derive v0.3.0 [INFO] [stderr] Compiling pin-project-internal v1.0.12 [INFO] [stderr] Compiling zeroize_derive v1.3.3 [INFO] [stderr] Compiling zerocopy v0.6.0 [INFO] [stderr] Compiling zeroize v1.5.7 [INFO] [stderr] Compiling tracing v0.1.37 [INFO] [stderr] Compiling s2n-codec v0.2.0 [INFO] [stderr] Compiling pin-project v1.0.12 [INFO] [stderr] Compiling prost-derive v0.11.2 [INFO] [stderr] Compiling async-stream-impl v0.3.3 [INFO] [stderr] Compiling s2n-quic-core v0.14.0 [INFO] [stderr] Compiling tracing-futures v0.2.5 [INFO] [stderr] Compiling regex-automata v0.1.10 [INFO] [stderr] Compiling async-stream v0.3.3 [INFO] [stderr] Compiling prost v0.11.2 [INFO] [stderr] Compiling minimal-lexical v0.2.1 [INFO] [stderr] Compiling overload v0.1.1 [INFO] [stderr] Compiling serde_json v1.0.87 [INFO] [stderr] Compiling s2n-quic-platform v0.14.0 [INFO] [stderr] Compiling prost-types v0.11.2 [INFO] [stderr] Compiling axum-core v0.2.9 [INFO] [stderr] Compiling futures v0.3.25 [INFO] [stderr] Compiling matchers v0.1.0 [INFO] [stderr] Compiling nu-ansi-term v0.46.0 [INFO] [stderr] Compiling nom v7.1.1 [INFO] [stderr] Compiling intrusive-collections v0.9.4 [INFO] [stderr] Compiling tokio-util v0.7.4 [INFO] [stderr] Compiling tokio-io-timeout v1.2.0 [INFO] [stderr] Compiling tokio-stream v0.1.11 [INFO] [stderr] Compiling flate2 v1.0.24 [INFO] [stderr] Compiling h2 v0.3.15 [INFO] [stderr] Compiling tower v0.4.13 [INFO] [stderr] Compiling regex v1.7.0 [INFO] [stderr] Compiling block-buffer v0.10.3 [INFO] [stderr] Compiling crypto-common v0.1.6 [INFO] [stderr] Compiling rand v0.7.3 [INFO] [stderr] Compiling tower-http v0.3.4 [INFO] [stderr] Compiling s2n-quic-crypto v0.14.0 [INFO] [stderr] Compiling rustls-pemfile v1.0.1 [INFO] [stderr] Compiling tracing-log v0.1.3 [INFO] [stderr] Compiling sharded-slab v0.1.4 [INFO] [stderr] Compiling thread_local v1.1.4 [INFO] [stderr] Compiling os_str_bytes v6.4.0 [INFO] [stderr] Compiling siphasher v0.3.10 [INFO] [stderr] Compiling thiserror v1.0.37 [INFO] [stderr] Compiling ryu v1.0.11 [INFO] [stderr] Compiling heck v0.4.0 [INFO] [stderr] Compiling tracing-subscriber v0.3.16 [INFO] [stderr] Compiling clap_lex v0.3.0 [INFO] [stderr] Compiling s2n-quic-transport v0.14.0 [INFO] [stderr] Compiling clap_derive v4.0.21 [INFO] [stderr] Compiling crossbeam-channel v0.5.6 [INFO] [stderr] Compiling cuckoofilter v0.5.0 [INFO] [stderr] Compiling s2n-quic-rustls v0.14.0 [INFO] [stderr] Compiling hdrhistogram v7.5.2 [INFO] [stderr] Compiling digest v0.10.6 [INFO] [stderr] Compiling thiserror-impl v1.0.37 [INFO] [stderr] Compiling atty v0.2.14 [INFO] [stderr] Compiling hash_hasher v2.0.3 [INFO] [stderr] Compiling strsim v0.10.0 [INFO] [stderr] Compiling termcolor v1.1.3 [INFO] [stderr] Compiling hyper v0.14.23 [INFO] [stderr] Compiling humantime v2.1.0 [INFO] [stderr] Compiling cpufeatures v0.2.5 [INFO] [stderr] Compiling sha2 v0.10.6 [INFO] [stderr] Compiling clap v4.0.25 [INFO] [stderr] Compiling axum v0.5.17 [INFO] [stderr] Compiling hyper-timeout v0.4.1 [INFO] [stderr] Compiling tonic v0.8.2 [INFO] [stderr] Compiling s2n-tls v0.0.19 [INFO] [stderr] Compiling s2n-quic-tls v0.14.0 [INFO] [stderr] Compiling s2n-quic-tls-default v0.14.0 [INFO] [stderr] Compiling s2n-quic v1.13.0 [INFO] [stderr] Compiling console-api v0.4.0 [INFO] [stderr] Compiling console-subscriber v0.1.8 [INFO] [stderr] Compiling red-quic v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `Ipv4Addr` [INFO] [stdout] --> src/client/handle.rs:2:16 [INFO] [stdout] | [INFO] [stdout] 2 | use std::net::{Ipv4Addr, SocketAddr}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::Arc` [INFO] [stdout] --> src/client/handle.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::sync::Arc; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `oneshot` [INFO] [stdout] --> src/client/handle.rs:5:30 [INFO] [stdout] | [INFO] [stdout] 5 | use tokio::sync::{broadcast, oneshot}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SockRef` and `TcpKeepalive` [INFO] [stdout] --> src/client/handle.rs:10:15 [INFO] [stdout] | [INFO] [stdout] 10 | use socket2::{SockRef, TcpKeepalive}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::time::sleep` [INFO] [stdout] --> src/client/handle.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use tokio::time::sleep; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `debug` [INFO] [stdout] --> src/client/handle.rs:15:15 [INFO] [stdout] | [INFO] [stdout] 15 | use tracing::{debug, error, info}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `log` and `warn` [INFO] [stdout] --> src/client/handle.rs:16:20 [INFO] [stdout] | [INFO] [stdout] 16 | use tracing::log::{log, warn}; [INFO] [stdout] | ^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tracing::log::Level::Debug` [INFO] [stdout] --> src/client/handle.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | use tracing::log::Level::Debug; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ClientConfig` [INFO] [stdout] --> src/client/handle.rs:18:21 [INFO] [stdout] | [INFO] [stdout] 18 | use crate::config::{ClientConfig, ClientServiceConfig}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::services::handle::TCP_SIZE` [INFO] [stdout] --> src/client/handle.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | use crate::services::handle::TCP_SIZE; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::Arc` [INFO] [stdout] --> src/client/mod.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::sync::Arc; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Error as IoError` [INFO] [stdout] --> src/services/handle.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::Error as IoError; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::Duration` [INFO] [stdout] --> src/services/handle.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::time::Duration; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::time` [INFO] [stdout] --> src/services/handle.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use tokio::time; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::RngCore` [INFO] [stdout] --> src/services/handle.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use rand::RngCore; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HASH_WIDTH_IN_BYTES` [INFO] [stdout] --> src/services/handle.rs:11:32 [INFO] [stdout] | [INFO] [stdout] 11 | use crate::protocol::{Command, HASH_WIDTH_IN_BYTES, ProtocolDigest}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `s2n_quic::connection::Handle` [INFO] [stdout] --> src/services/handle.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use s2n_quic::connection::Handle; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `copy_bidirectional` [INFO] [stdout] --> src/services/handle.rs:16:17 [INFO] [stdout] | [INFO] [stdout] 16 | use tokio::io::{copy_bidirectional}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ErrorAckType` and `TransportType` [INFO] [stdout] --> src/services/handle.rs:20:21 [INFO] [stdout] | [INFO] [stdout] 20 | use crate::config::{ErrorAckType, TransportType}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::utils::digest as utils_digest` [INFO] [stdout] --> src/services/handle.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | use crate::utils::digest as utils_digest; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::utils::digest` [INFO] [stdout] --> src/services/service.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::utils::digest; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::protocol::ProtocolDigest` [INFO] [stdout] --> src/services/service.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use crate::protocol::ProtocolDigest; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `error_type` [INFO] [stdout] --> src/client/handle.rs:92:33 [INFO] [stdout] | [INFO] [stdout] 92 | Command::ErrorAck { error_type } => { [INFO] [stdout] | ^^^^^^^^^^ help: try ignoring the field: `error_type: _` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/client/handle.rs:146:9 [INFO] [stdout] | [INFO] [stdout] 117 | / loop { [INFO] [stdout] 118 | | tokio::select! { [INFO] [stdout] 119 | | Ok(command) = Command::read_from( stream) => { [INFO] [stdout] 120 | | match command { [INFO] [stdout] ... | [INFO] [stdout] 144 | | } [INFO] [stdout] | |_________- any code following this expression is unreachable [INFO] [stdout] 145 | [INFO] [stdout] 146 | Ok(()) [INFO] [stdout] | ^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `key` [INFO] [stdout] --> src/client/handle.rs:108:14 [INFO] [stdout] | [INFO] [stdout] 108 | for (key, value) in config.iter() { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_key` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `error_type` [INFO] [stdout] --> src/client/handle.rs:121:45 [INFO] [stdout] | [INFO] [stdout] 121 | Command::ErrorAck {error_type} => { [INFO] [stdout] | ^^^^^^^^^^ help: try ignoring the field: `error_type: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `heartbeats` [INFO] [stdout] --> src/services/handle.rs:110:9 [INFO] [stdout] | [INFO] [stdout] 110 | heartbeats: u64, [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_heartbeats` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `shutdown_rx` [INFO] [stdout] --> src/services/handle.rs:112:27 [INFO] [stdout] | [INFO] [stdout] 112 | let (shutdown_tx, shutdown_rx) = broadcast::channel::(1); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_shutdown_rx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `data_ch_rx` [INFO] [stdout] --> src/services/handle.rs:113:26 [INFO] [stdout] | [INFO] [stdout] 113 | let (data_ch_tx, data_ch_rx) = mpsc::channel(CHAN_SIZE * 2); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_data_ch_rx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `port` [INFO] [stdout] --> src/services/handle.rs:120:67 [INFO] [stdout] | [INFO] [stdout] 120 | Command::DataConnect { transmission_type, port} => { [INFO] [stdout] | ^^^^ help: try ignoring the field: `port: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `data_ch_rx` [INFO] [stdout] --> src/services/handle.rs:271:9 [INFO] [stdout] | [INFO] [stdout] 271 | mut data_ch_rx: mpsc::Receiver, [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_data_ch_rx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `req_connect` [INFO] [stdout] --> src/services/handle.rs:275:13 [INFO] [stdout] | [INFO] [stdout] 275 | let mut req_connect = create_tcp_connect( [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_req_connect` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/services/handle.rs:271:5 [INFO] [stdout] | [INFO] [stdout] 271 | mut data_ch_rx: mpsc::Receiver, [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/services/handle.rs:275:9 [INFO] [stdout] | [INFO] [stdout] 275 | let mut req_connect = create_tcp_connect( [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `shutdown_rx` [INFO] [stdout] --> src/services/service.rs:44:37 [INFO] [stdout] | [INFO] [stdout] 44 | pub async fn run(&mut self, mut shutdown_rx: tokio::sync::broadcast::Receiver) -> Result<()>{ [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_shutdown_rx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/services/service.rs:44:33 [INFO] [stdout] | [INFO] [stdout] 44 | pub async fn run(&mut self, mut shutdown_rx: tokio::sync::broadcast::Receiver) -> Result<()>{ [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/services/service.rs:48:17 [INFO] [stdout] | [INFO] [stdout] 48 | let mut control_channel = ControlChannel::build( [INFO] [stdout] | ----^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/protocol/mod.rs:105:13 [INFO] [stdout] | [INFO] [stdout] 105 | _ => { [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/protocol/mod.rs:105:13 [INFO] [stdout] | [INFO] [stdout] 85 | Command::Heartbeat => { [INFO] [stdout] | ------------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 88 | Command::Hello {service} => { [INFO] [stdout] | ------------------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 92 | Command::AckOk => { [INFO] [stdout] | -------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 95 | Command::DataConnect { transmission_type, port } => { [INFO] [stdout] | ------------------------------------------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 105 | _ => { [INFO] [stdout] | ^ ...and 1 other patterns collectively make this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `KEEPALIVE_DURATION` is never used [INFO] [stdout] --> src/client/handle.rs:24:7 [INFO] [stdout] | [INFO] [stdout] 24 | const KEEPALIVE_DURATION: Duration = Duration::new(20, 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `KEEPALIVE_INTERVAL` is never used [INFO] [stdout] --> src/client/handle.rs:25:7 [INFO] [stdout] | [INFO] [stdout] 25 | const KEEPALIVE_INTERVAL: Duration = Duration::new(8, 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `shutdown_rx` is never read [INFO] [stdout] --> src/client/handle.rs:30:16 [INFO] [stdout] | [INFO] [stdout] 27 | pub struct ClientChannel { [INFO] [stdout] | ------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 30 | pub(crate) shutdown_rx: broadcast::Receiver, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `data_channel_tcp` is never used [INFO] [stdout] --> src/client/handle.rs:150:10 [INFO] [stdout] | [INFO] [stdout] 150 | async fn data_channel_tcp(mut stream: BidirectionalStream, local_host: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `HASH_WIDTH_IN_BYTES` is never used [INFO] [stdout] --> src/protocol/mod.rs:34:11 [INFO] [stdout] | [INFO] [stdout] 27 | impl Command { [INFO] [stdout] | ------------ associated constant in this implementation [INFO] [stdout] ... [INFO] [stdout] 34 | const HASH_WIDTH_IN_BYTES: usize = 32; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `shutdown_tx` and `data_ch_tx` are never read [INFO] [stdout] --> src/services/handle.rs:102:5 [INFO] [stdout] | [INFO] [stdout] 101 | pub struct ControlChannelHandle { [INFO] [stdout] | -------------------- fields in this struct [INFO] [stdout] 102 | shutdown_tx: broadcast::Sender, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 103 | data_ch_tx: mpsc::Sender, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `config` is never read [INFO] [stdout] --> src/services/service.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 17 | pub struct Services { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 21 | config: Arc, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Context` [INFO] [stdout] --> src/main.rs:1:14 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::{Context, Result}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `error` [INFO] [stdout] --> src/main.rs:2:15 [INFO] [stdout] | [INFO] [stdout] 2 | use tracing::{error, info}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 56s [INFO] running `Command { std: "docker" "inspect" "05404e13c55d9ea2d0b9f6bf62e1b44ba06aadde0eb1857441de914ac2dea5ec", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "05404e13c55d9ea2d0b9f6bf62e1b44ba06aadde0eb1857441de914ac2dea5ec", kill_on_drop: false }` [INFO] [stdout] 05404e13c55d9ea2d0b9f6bf62e1b44ba06aadde0eb1857441de914ac2dea5ec [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:b0b074c097205a61b89e8ad263052f976b2b332c4dc5f02aef1fe52501660d6e" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-04-13" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 0e525ae27226637a23cb45da46f79530c7321a6fec90a5ba5439cd370ef28d6f [INFO] running `Command { std: "docker" "start" "-a" "0e525ae27226637a23cb45da46f79530c7321a6fec90a5ba5439cd370ef28d6f", kill_on_drop: false }` [INFO] [stdout] warning: unused import: `Ipv4Addr` [INFO] [stdout] --> src/client/handle.rs:2:16 [INFO] [stdout] | [INFO] [stdout] 2 | use std::net::{Ipv4Addr, SocketAddr}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::Arc` [INFO] [stdout] --> src/client/handle.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::sync::Arc; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `oneshot` [INFO] [stdout] --> src/client/handle.rs:5:30 [INFO] [stdout] | [INFO] [stdout] 5 | use tokio::sync::{broadcast, oneshot}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SockRef` and `TcpKeepalive` [INFO] [stdout] --> src/client/handle.rs:10:15 [INFO] [stdout] | [INFO] [stdout] 10 | use socket2::{SockRef, TcpKeepalive}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::time::sleep` [INFO] [stdout] --> src/client/handle.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use tokio::time::sleep; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `debug` [INFO] [stdout] --> src/client/handle.rs:15:15 [INFO] [stdout] | [INFO] [stdout] 15 | use tracing::{debug, error, info}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `log` and `warn` [INFO] [stdout] --> src/client/handle.rs:16:20 [INFO] [stdout] | [INFO] [stdout] 16 | use tracing::log::{log, warn}; [INFO] [stdout] | ^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tracing::log::Level::Debug` [INFO] [stdout] --> src/client/handle.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | use tracing::log::Level::Debug; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ClientConfig` [INFO] [stdout] --> src/client/handle.rs:18:21 [INFO] [stdout] | [INFO] [stdout] 18 | use crate::config::{ClientConfig, ClientServiceConfig}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::services::handle::TCP_SIZE` [INFO] [stdout] --> src/client/handle.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | use crate::services::handle::TCP_SIZE; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::Arc` [INFO] [stdout] --> src/client/mod.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::sync::Arc; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Error as IoError` [INFO] [stdout] --> src/services/handle.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::Error as IoError; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::Duration` [INFO] [stdout] --> src/services/handle.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::time::Duration; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::time` [INFO] [stdout] --> src/services/handle.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use tokio::time; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::RngCore` [INFO] [stdout] --> src/services/handle.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use rand::RngCore; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HASH_WIDTH_IN_BYTES` [INFO] [stdout] --> src/services/handle.rs:11:32 [INFO] [stdout] | [INFO] [stdout] 11 | use crate::protocol::{Command, HASH_WIDTH_IN_BYTES, ProtocolDigest}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `s2n_quic::connection::Handle` [INFO] [stdout] --> src/services/handle.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use s2n_quic::connection::Handle; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `copy_bidirectional` [INFO] [stdout] --> src/services/handle.rs:16:17 [INFO] [stdout] | [INFO] [stdout] 16 | use tokio::io::{copy_bidirectional}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ErrorAckType` and `TransportType` [INFO] [stdout] --> src/services/handle.rs:20:21 [INFO] [stdout] | [INFO] [stdout] 20 | use crate::config::{ErrorAckType, TransportType}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::utils::digest as utils_digest` [INFO] [stdout] --> src/services/handle.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | use crate::utils::digest as utils_digest; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::utils::digest` [INFO] [stdout] --> src/services/service.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::utils::digest; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::protocol::ProtocolDigest` [INFO] [stdout] --> src/services/service.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use crate::protocol::ProtocolDigest; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `error_type` [INFO] [stdout] --> src/client/handle.rs:92:33 [INFO] [stdout] | [INFO] [stdout] 92 | Command::ErrorAck { error_type } => { [INFO] [stdout] | ^^^^^^^^^^ help: try ignoring the field: `error_type: _` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/client/handle.rs:146:9 [INFO] [stdout] | [INFO] [stdout] 117 | / loop { [INFO] [stdout] 118 | | tokio::select! { [INFO] [stdout] 119 | | Ok(command) = Command::read_from( stream) => { [INFO] [stdout] 120 | | match command { [INFO] [stdout] ... | [INFO] [stdout] 144 | | } [INFO] [stdout] | |_________- any code following this expression is unreachable [INFO] [stdout] 145 | [INFO] [stdout] 146 | Ok(()) [INFO] [stdout] | ^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `key` [INFO] [stdout] --> src/client/handle.rs:108:14 [INFO] [stdout] | [INFO] [stdout] 108 | for (key, value) in config.iter() { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_key` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `error_type` [INFO] [stdout] --> src/client/handle.rs:121:45 [INFO] [stdout] | [INFO] [stdout] 121 | Command::ErrorAck {error_type} => { [INFO] [stdout] | ^^^^^^^^^^ help: try ignoring the field: `error_type: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `heartbeats` [INFO] [stdout] --> src/services/handle.rs:110:9 [INFO] [stdout] | [INFO] [stdout] 110 | heartbeats: u64, [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_heartbeats` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `shutdown_rx` [INFO] [stdout] --> src/services/handle.rs:112:27 [INFO] [stdout] | [INFO] [stdout] 112 | let (shutdown_tx, shutdown_rx) = broadcast::channel::(1); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_shutdown_rx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `data_ch_rx` [INFO] [stdout] --> src/services/handle.rs:113:26 [INFO] [stdout] | [INFO] [stdout] 113 | let (data_ch_tx, data_ch_rx) = mpsc::channel(CHAN_SIZE * 2); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_data_ch_rx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `port` [INFO] [stdout] --> src/services/handle.rs:120:67 [INFO] [stdout] | [INFO] [stdout] 120 | Command::DataConnect { transmission_type, port} => { [INFO] [stdout] | ^^^^ help: try ignoring the field: `port: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `data_ch_rx` [INFO] [stdout] --> src/services/handle.rs:271:9 [INFO] [stdout] | [INFO] [stdout] 271 | mut data_ch_rx: mpsc::Receiver, [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_data_ch_rx` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling red-quic v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused variable: `req_connect` [INFO] [stdout] --> src/services/handle.rs:275:13 [INFO] [stdout] | [INFO] [stdout] 275 | let mut req_connect = create_tcp_connect( [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_req_connect` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/services/handle.rs:271:5 [INFO] [stdout] | [INFO] [stdout] 271 | mut data_ch_rx: mpsc::Receiver, [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/services/handle.rs:275:9 [INFO] [stdout] | [INFO] [stdout] 275 | let mut req_connect = create_tcp_connect( [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `shutdown_rx` [INFO] [stdout] --> src/services/service.rs:44:37 [INFO] [stdout] | [INFO] [stdout] 44 | pub async fn run(&mut self, mut shutdown_rx: tokio::sync::broadcast::Receiver) -> Result<()>{ [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_shutdown_rx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/services/service.rs:44:33 [INFO] [stdout] | [INFO] [stdout] 44 | pub async fn run(&mut self, mut shutdown_rx: tokio::sync::broadcast::Receiver) -> Result<()>{ [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/services/service.rs:48:17 [INFO] [stdout] | [INFO] [stdout] 48 | let mut control_channel = ControlChannel::build( [INFO] [stdout] | ----^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/protocol/mod.rs:105:13 [INFO] [stdout] | [INFO] [stdout] 105 | _ => { [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/protocol/mod.rs:105:13 [INFO] [stdout] | [INFO] [stdout] 85 | Command::Heartbeat => { [INFO] [stdout] | ------------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 88 | Command::Hello {service} => { [INFO] [stdout] | ------------------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 92 | Command::AckOk => { [INFO] [stdout] | -------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 95 | Command::DataConnect { transmission_type, port } => { [INFO] [stdout] | ------------------------------------------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 105 | _ => { [INFO] [stdout] | ^ ...and 1 other patterns collectively make this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `KEEPALIVE_DURATION` is never used [INFO] [stdout] --> src/client/handle.rs:24:7 [INFO] [stdout] | [INFO] [stdout] 24 | const KEEPALIVE_DURATION: Duration = Duration::new(20, 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `KEEPALIVE_INTERVAL` is never used [INFO] [stdout] --> src/client/handle.rs:25:7 [INFO] [stdout] | [INFO] [stdout] 25 | const KEEPALIVE_INTERVAL: Duration = Duration::new(8, 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `shutdown_rx` is never read [INFO] [stdout] --> src/client/handle.rs:30:16 [INFO] [stdout] | [INFO] [stdout] 27 | pub struct ClientChannel { [INFO] [stdout] | ------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 30 | pub(crate) shutdown_rx: broadcast::Receiver, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `data_channel_tcp` is never used [INFO] [stdout] --> src/client/handle.rs:150:10 [INFO] [stdout] | [INFO] [stdout] 150 | async fn data_channel_tcp(mut stream: BidirectionalStream, local_host: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `HASH_WIDTH_IN_BYTES` is never used [INFO] [stdout] --> src/protocol/mod.rs:34:11 [INFO] [stdout] | [INFO] [stdout] 27 | impl Command { [INFO] [stdout] | ------------ associated constant in this implementation [INFO] [stdout] ... [INFO] [stdout] 34 | const HASH_WIDTH_IN_BYTES: usize = 32; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `shutdown_tx` and `data_ch_tx` are never read [INFO] [stdout] --> src/services/handle.rs:102:5 [INFO] [stdout] | [INFO] [stdout] 101 | pub struct ControlChannelHandle { [INFO] [stdout] | -------------------- fields in this struct [INFO] [stdout] 102 | shutdown_tx: broadcast::Sender, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 103 | data_ch_tx: mpsc::Sender, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `config` is never read [INFO] [stdout] --> src/services/service.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 17 | pub struct Services { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 21 | config: Arc, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Ipv4Addr` [INFO] [stdout] --> src/client/handle.rs:2:16 [INFO] [stdout] | [INFO] [stdout] 2 | use std::net::{Ipv4Addr, SocketAddr}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::Arc` [INFO] [stdout] --> src/client/handle.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::sync::Arc; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `oneshot` [INFO] [stdout] --> src/client/handle.rs:5:30 [INFO] [stdout] | [INFO] [stdout] 5 | use tokio::sync::{broadcast, oneshot}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SockRef` and `TcpKeepalive` [INFO] [stdout] --> src/client/handle.rs:10:15 [INFO] [stdout] | [INFO] [stdout] 10 | use socket2::{SockRef, TcpKeepalive}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::time::sleep` [INFO] [stdout] --> src/client/handle.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use tokio::time::sleep; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `debug` [INFO] [stdout] --> src/client/handle.rs:15:15 [INFO] [stdout] | [INFO] [stdout] 15 | use tracing::{debug, error, info}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `log` and `warn` [INFO] [stdout] --> src/client/handle.rs:16:20 [INFO] [stdout] | [INFO] [stdout] 16 | use tracing::log::{log, warn}; [INFO] [stdout] | ^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tracing::log::Level::Debug` [INFO] [stdout] --> src/client/handle.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | use tracing::log::Level::Debug; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ClientConfig` [INFO] [stdout] --> src/client/handle.rs:18:21 [INFO] [stdout] | [INFO] [stdout] 18 | use crate::config::{ClientConfig, ClientServiceConfig}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::services::handle::TCP_SIZE` [INFO] [stdout] --> src/client/handle.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | use crate::services::handle::TCP_SIZE; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::Arc` [INFO] [stdout] --> src/client/mod.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::sync::Arc; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Error as IoError` [INFO] [stdout] --> src/services/handle.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::Error as IoError; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::Duration` [INFO] [stdout] --> src/services/handle.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::time::Duration; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::time` [INFO] [stdout] --> src/services/handle.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use tokio::time; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::RngCore` [INFO] [stdout] --> src/services/handle.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use rand::RngCore; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HASH_WIDTH_IN_BYTES` [INFO] [stdout] --> src/services/handle.rs:11:32 [INFO] [stdout] | [INFO] [stdout] 11 | use crate::protocol::{Command, HASH_WIDTH_IN_BYTES, ProtocolDigest}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `s2n_quic::connection::Handle` [INFO] [stdout] --> src/services/handle.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use s2n_quic::connection::Handle; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `copy_bidirectional` [INFO] [stdout] --> src/services/handle.rs:16:17 [INFO] [stdout] | [INFO] [stdout] 16 | use tokio::io::{copy_bidirectional}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ErrorAckType` and `TransportType` [INFO] [stdout] --> src/services/handle.rs:20:21 [INFO] [stdout] | [INFO] [stdout] 20 | use crate::config::{ErrorAckType, TransportType}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::utils::digest as utils_digest` [INFO] [stdout] --> src/services/handle.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | use crate::utils::digest as utils_digest; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::utils::digest` [INFO] [stdout] --> src/services/service.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::utils::digest; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::protocol::ProtocolDigest` [INFO] [stdout] --> src/services/service.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use crate::protocol::ProtocolDigest; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Context` [INFO] [stdout] --> src/main.rs:1:14 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::{Context, Result}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `error` [INFO] [stdout] --> src/main.rs:2:15 [INFO] [stdout] | [INFO] [stdout] 2 | use tracing::{error, info}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `error_type` [INFO] [stdout] --> src/client/handle.rs:92:33 [INFO] [stdout] | [INFO] [stdout] 92 | Command::ErrorAck { error_type } => { [INFO] [stdout] | ^^^^^^^^^^ help: try ignoring the field: `error_type: _` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/client/handle.rs:146:9 [INFO] [stdout] | [INFO] [stdout] 117 | / loop { [INFO] [stdout] 118 | | tokio::select! { [INFO] [stdout] 119 | | Ok(command) = Command::read_from( stream) => { [INFO] [stdout] 120 | | match command { [INFO] [stdout] ... | [INFO] [stdout] 144 | | } [INFO] [stdout] | |_________- any code following this expression is unreachable [INFO] [stdout] 145 | [INFO] [stdout] 146 | Ok(()) [INFO] [stdout] | ^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `key` [INFO] [stdout] --> src/client/handle.rs:108:14 [INFO] [stdout] | [INFO] [stdout] 108 | for (key, value) in config.iter() { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_key` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `error_type` [INFO] [stdout] --> src/client/handle.rs:121:45 [INFO] [stdout] | [INFO] [stdout] 121 | Command::ErrorAck {error_type} => { [INFO] [stdout] | ^^^^^^^^^^ help: try ignoring the field: `error_type: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `heartbeats` [INFO] [stdout] --> src/services/handle.rs:110:9 [INFO] [stdout] | [INFO] [stdout] 110 | heartbeats: u64, [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_heartbeats` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `shutdown_rx` [INFO] [stdout] --> src/services/handle.rs:112:27 [INFO] [stdout] | [INFO] [stdout] 112 | let (shutdown_tx, shutdown_rx) = broadcast::channel::(1); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_shutdown_rx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `data_ch_rx` [INFO] [stdout] --> src/services/handle.rs:113:26 [INFO] [stdout] | [INFO] [stdout] 113 | let (data_ch_tx, data_ch_rx) = mpsc::channel(CHAN_SIZE * 2); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_data_ch_rx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `port` [INFO] [stdout] --> src/services/handle.rs:120:67 [INFO] [stdout] | [INFO] [stdout] 120 | Command::DataConnect { transmission_type, port} => { [INFO] [stdout] | ^^^^ help: try ignoring the field: `port: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `data_ch_rx` [INFO] [stdout] --> src/services/handle.rs:271:9 [INFO] [stdout] | [INFO] [stdout] 271 | mut data_ch_rx: mpsc::Receiver, [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_data_ch_rx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `req_connect` [INFO] [stdout] --> src/services/handle.rs:275:13 [INFO] [stdout] | [INFO] [stdout] 275 | let mut req_connect = create_tcp_connect( [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_req_connect` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/services/handle.rs:271:5 [INFO] [stdout] | [INFO] [stdout] 271 | mut data_ch_rx: mpsc::Receiver, [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/services/handle.rs:275:9 [INFO] [stdout] | [INFO] [stdout] 275 | let mut req_connect = create_tcp_connect( [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `shutdown_rx` [INFO] [stdout] --> src/services/service.rs:44:37 [INFO] [stdout] | [INFO] [stdout] 44 | pub async fn run(&mut self, mut shutdown_rx: tokio::sync::broadcast::Receiver) -> Result<()>{ [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_shutdown_rx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/services/service.rs:44:33 [INFO] [stdout] | [INFO] [stdout] 44 | pub async fn run(&mut self, mut shutdown_rx: tokio::sync::broadcast::Receiver) -> Result<()>{ [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/services/service.rs:48:17 [INFO] [stdout] | [INFO] [stdout] 48 | let mut control_channel = ControlChannel::build( [INFO] [stdout] | ----^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/protocol/mod.rs:105:13 [INFO] [stdout] | [INFO] [stdout] 105 | _ => { [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/protocol/mod.rs:105:13 [INFO] [stdout] | [INFO] [stdout] 85 | Command::Heartbeat => { [INFO] [stdout] | ------------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 88 | Command::Hello {service} => { [INFO] [stdout] | ------------------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 92 | Command::AckOk => { [INFO] [stdout] | -------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 95 | Command::DataConnect { transmission_type, port } => { [INFO] [stdout] | ------------------------------------------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 105 | _ => { [INFO] [stdout] | ^ ...and 1 other patterns collectively make this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `KEEPALIVE_DURATION` is never used [INFO] [stdout] --> src/client/handle.rs:24:7 [INFO] [stdout] | [INFO] [stdout] 24 | const KEEPALIVE_DURATION: Duration = Duration::new(20, 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `KEEPALIVE_INTERVAL` is never used [INFO] [stdout] --> src/client/handle.rs:25:7 [INFO] [stdout] | [INFO] [stdout] 25 | const KEEPALIVE_INTERVAL: Duration = Duration::new(8, 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `shutdown_rx` is never read [INFO] [stdout] --> src/client/handle.rs:30:16 [INFO] [stdout] | [INFO] [stdout] 27 | pub struct ClientChannel { [INFO] [stdout] | ------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 30 | pub(crate) shutdown_rx: broadcast::Receiver, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `data_channel_tcp` is never used [INFO] [stdout] --> src/client/handle.rs:150:10 [INFO] [stdout] | [INFO] [stdout] 150 | async fn data_channel_tcp(mut stream: BidirectionalStream, local_host: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `HASH_WIDTH_IN_BYTES` is never used [INFO] [stdout] --> src/protocol/mod.rs:34:11 [INFO] [stdout] | [INFO] [stdout] 27 | impl Command { [INFO] [stdout] | ------------ associated constant in this implementation [INFO] [stdout] ... [INFO] [stdout] 34 | const HASH_WIDTH_IN_BYTES: usize = 32; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `shutdown_tx` and `data_ch_tx` are never read [INFO] [stdout] --> src/services/handle.rs:102:5 [INFO] [stdout] | [INFO] [stdout] 101 | pub struct ControlChannelHandle { [INFO] [stdout] | -------------------- fields in this struct [INFO] [stdout] 102 | shutdown_tx: broadcast::Sender, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 103 | data_ch_tx: mpsc::Sender, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `config` is never read [INFO] [stdout] --> src/services/service.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 17 | pub struct Services { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 21 | config: Arc, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 1.93s [INFO] running `Command { std: "docker" "inspect" "0e525ae27226637a23cb45da46f79530c7321a6fec90a5ba5439cd370ef28d6f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0e525ae27226637a23cb45da46f79530c7321a6fec90a5ba5439cd370ef28d6f", kill_on_drop: false }` [INFO] [stdout] 0e525ae27226637a23cb45da46f79530c7321a6fec90a5ba5439cd370ef28d6f [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:b0b074c097205a61b89e8ad263052f976b2b332c4dc5f02aef1fe52501660d6e" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-04-13" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 871eb0038a91b6af71d36e00b1fa585b0c861765629bfae6da140d20daa69808 [INFO] running `Command { std: "docker" "start" "-a" "871eb0038a91b6af71d36e00b1fa585b0c861765629bfae6da140d20daa69808", kill_on_drop: false }` [INFO] [stderr] warning: unused import: `Ipv4Addr` [INFO] [stderr] --> src/client/handle.rs:2:16 [INFO] [stderr] | [INFO] [stderr] 2 | use std::net::{Ipv4Addr, SocketAddr}; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::sync::Arc` [INFO] [stderr] --> src/client/handle.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use std::sync::Arc; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `oneshot` [INFO] [stderr] --> src/client/handle.rs:5:30 [INFO] [stderr] | [INFO] [stderr] 5 | use tokio::sync::{broadcast, oneshot}; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `SockRef` and `TcpKeepalive` [INFO] [stderr] --> src/client/handle.rs:10:15 [INFO] [stderr] | [INFO] [stderr] 10 | use socket2::{SockRef, TcpKeepalive}; [INFO] [stderr] | ^^^^^^^ ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `tokio::time::sleep` [INFO] [stderr] --> src/client/handle.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | use tokio::time::sleep; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `debug` [INFO] [stderr] --> src/client/handle.rs:15:15 [INFO] [stderr] | [INFO] [stderr] 15 | use tracing::{debug, error, info}; [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `log` and `warn` [INFO] [stderr] --> src/client/handle.rs:16:20 [INFO] [stderr] | [INFO] [stderr] 16 | use tracing::log::{log, warn}; [INFO] [stderr] | ^^^ ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `tracing::log::Level::Debug` [INFO] [stderr] --> src/client/handle.rs:17:5 [INFO] [stderr] | [INFO] [stderr] 17 | use tracing::log::Level::Debug; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `ClientConfig` [INFO] [stderr] --> src/client/handle.rs:18:21 [INFO] [stderr] | [INFO] [stderr] 18 | use crate::config::{ClientConfig, ClientServiceConfig}; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::services::handle::TCP_SIZE` [INFO] [stderr] --> src/client/handle.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 21 | use crate::services::handle::TCP_SIZE; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::sync::Arc` [INFO] [stderr] --> src/client/mod.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use std::sync::Arc; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io::Error as IoError` [INFO] [stderr] --> src/services/handle.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use std::io::Error as IoError; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::time::Duration` [INFO] [stderr] --> src/services/handle.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use std::time::Duration; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `tokio::time` [INFO] [stderr] --> src/services/handle.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use tokio::time; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `rand::RngCore` [INFO] [stderr] --> src/services/handle.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use rand::RngCore; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `HASH_WIDTH_IN_BYTES` [INFO] [stderr] --> src/services/handle.rs:11:32 [INFO] [stderr] | [INFO] [stderr] 11 | use crate::protocol::{Command, HASH_WIDTH_IN_BYTES, ProtocolDigest}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `s2n_quic::connection::Handle` [INFO] [stderr] --> src/services/handle.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | use s2n_quic::connection::Handle; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `copy_bidirectional` [INFO] [stderr] --> src/services/handle.rs:16:17 [INFO] [stderr] | [INFO] [stderr] 16 | use tokio::io::{copy_bidirectional}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `ErrorAckType` and `TransportType` [INFO] [stderr] --> src/services/handle.rs:20:21 [INFO] [stderr] | [INFO] [stderr] 20 | use crate::config::{ErrorAckType, TransportType}; [INFO] [stderr] | ^^^^^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::utils::digest as utils_digest` [INFO] [stderr] --> src/services/handle.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 21 | use crate::utils::digest as utils_digest; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::utils::digest` [INFO] [stderr] --> src/services/service.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use crate::utils::digest; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::protocol::ProtocolDigest` [INFO] [stderr] --> src/services/service.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | use crate::protocol::ProtocolDigest; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `error_type` [INFO] [stderr] --> src/client/handle.rs:92:33 [INFO] [stderr] | [INFO] [stderr] 92 | Command::ErrorAck { error_type } => { [INFO] [stderr] | ^^^^^^^^^^ help: try ignoring the field: `error_type: _` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/client/handle.rs:146:9 [INFO] [stderr] | [INFO] [stderr] 117 | / loop { [INFO] [stderr] 118 | | tokio::select! { [INFO] [stderr] 119 | | Ok(command) = Command::read_from( stream) => { [INFO] [stderr] 120 | | match command { [INFO] [stderr] ... | [INFO] [stderr] 144 | | } [INFO] [stderr] | |_________- any code following this expression is unreachable [INFO] [stderr] 145 | [INFO] [stderr] 146 | Ok(()) [INFO] [stderr] | ^^^^^^ unreachable expression [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unreachable_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `key` [INFO] [stderr] --> src/client/handle.rs:108:14 [INFO] [stderr] | [INFO] [stderr] 108 | for (key, value) in config.iter() { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_key` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `error_type` [INFO] [stderr] --> src/client/handle.rs:121:45 [INFO] [stderr] | [INFO] [stderr] 121 | Command::ErrorAck {error_type} => { [INFO] [stderr] | ^^^^^^^^^^ help: try ignoring the field: `error_type: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `heartbeats` [INFO] [stderr] --> src/services/handle.rs:110:9 [INFO] [stderr] | [INFO] [stderr] 110 | heartbeats: u64, [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_heartbeats` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `shutdown_rx` [INFO] [stderr] --> src/services/handle.rs:112:27 [INFO] [stderr] | [INFO] [stderr] 112 | let (shutdown_tx, shutdown_rx) = broadcast::channel::(1); [INFO] [stderr] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_shutdown_rx` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `data_ch_rx` [INFO] [stderr] --> src/services/handle.rs:113:26 [INFO] [stderr] | [INFO] [stderr] 113 | let (data_ch_tx, data_ch_rx) = mpsc::channel(CHAN_SIZE * 2); [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_data_ch_rx` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `port` [INFO] [stderr] --> src/services/handle.rs:120:67 [INFO] [stderr] | [INFO] [stderr] 120 | Command::DataConnect { transmission_type, port} => { [INFO] [stderr] | ^^^^ help: try ignoring the field: `port: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `data_ch_rx` [INFO] [stderr] --> src/services/handle.rs:271:9 [INFO] [stderr] | [INFO] [stderr] 271 | mut data_ch_rx: mpsc::Receiver, [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_data_ch_rx` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `req_connect` [INFO] [stderr] --> src/services/handle.rs:275:13 [INFO] [stderr] | [INFO] [stderr] 275 | let mut req_connect = create_tcp_connect( [INFO] [stderr] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_req_connect` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/services/handle.rs:271:5 [INFO] [stderr] | [INFO] [stderr] 271 | mut data_ch_rx: mpsc::Receiver, [INFO] [stderr] | ----^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/services/handle.rs:275:9 [INFO] [stderr] | [INFO] [stderr] 275 | let mut req_connect = create_tcp_connect( [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `shutdown_rx` [INFO] [stderr] --> src/services/service.rs:44:37 [INFO] [stderr] | [INFO] [stderr] 44 | pub async fn run(&mut self, mut shutdown_rx: tokio::sync::broadcast::Receiver) -> Result<()>{ [INFO] [stderr] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_shutdown_rx` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/services/service.rs:44:33 [INFO] [stderr] | [INFO] [stderr] 44 | pub async fn run(&mut self, mut shutdown_rx: tokio::sync::broadcast::Receiver) -> Result<()>{ [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/services/service.rs:48:17 [INFO] [stderr] | [INFO] [stderr] 48 | let mut control_channel = ControlChannel::build( [INFO] [stderr] | ----^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/protocol/mod.rs:105:13 [INFO] [stderr] | [INFO] [stderr] 105 | _ => { [INFO] [stderr] | ^ no value can reach this [INFO] [stderr] | [INFO] [stderr] note: multiple earlier patterns match some of the same values [INFO] [stderr] --> src/protocol/mod.rs:105:13 [INFO] [stderr] | [INFO] [stderr] 85 | Command::Heartbeat => { [INFO] [stderr] | ------------------ matches some of the same values [INFO] [stderr] ... [INFO] [stderr] 88 | Command::Hello {service} => { [INFO] [stderr] | ------------------------ matches some of the same values [INFO] [stderr] ... [INFO] [stderr] 92 | Command::AckOk => { [INFO] [stderr] | -------------- matches some of the same values [INFO] [stderr] ... [INFO] [stderr] 95 | Command::DataConnect { transmission_type, port } => { [INFO] [stderr] | ------------------------------------------------ matches some of the same values [INFO] [stderr] ... [INFO] [stderr] 105 | _ => { [INFO] [stderr] | ^ ...and 1 other patterns collectively make this unreachable [INFO] [stderr] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stderr] [INFO] [stderr] warning: constant `KEEPALIVE_DURATION` is never used [INFO] [stderr] --> src/client/handle.rs:24:7 [INFO] [stderr] | [INFO] [stderr] 24 | const KEEPALIVE_DURATION: Duration = Duration::new(20, 0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: constant `KEEPALIVE_INTERVAL` is never used [INFO] [stderr] --> src/client/handle.rs:25:7 [INFO] [stderr] | [INFO] [stderr] 25 | const KEEPALIVE_INTERVAL: Duration = Duration::new(8, 0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `shutdown_rx` is never read [INFO] [stderr] --> src/client/handle.rs:30:16 [INFO] [stderr] | [INFO] [stderr] 27 | pub struct ClientChannel { [INFO] [stderr] | ------------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 30 | pub(crate) shutdown_rx: broadcast::Receiver, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `data_channel_tcp` is never used [INFO] [stderr] --> src/client/handle.rs:150:10 [INFO] [stderr] | [INFO] [stderr] 150 | async fn data_channel_tcp(mut stream: BidirectionalStream, local_host: &str) -> Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated constant `HASH_WIDTH_IN_BYTES` is never used [INFO] [stderr] --> src/protocol/mod.rs:34:11 [INFO] [stderr] | [INFO] [stderr] 27 | impl Command { [INFO] [stderr] | ------------ associated constant in this implementation [INFO] [stderr] ... [INFO] [stderr] 34 | const HASH_WIDTH_IN_BYTES: usize = 32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `shutdown_tx` and `data_ch_tx` are never read [INFO] [stderr] --> src/services/handle.rs:102:5 [INFO] [stderr] | [INFO] [stderr] 101 | pub struct ControlChannelHandle { [INFO] [stderr] | -------------------- fields in this struct [INFO] [stderr] 102 | shutdown_tx: broadcast::Sender, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] 103 | data_ch_tx: mpsc::Sender, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `config` is never read [INFO] [stderr] --> src/services/service.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 17 | pub struct Services { [INFO] [stderr] | -------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 21 | config: Arc, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `red-quic` (lib) generated 45 warnings (run `cargo fix --lib -p red-quic` to apply 26 suggestions) [INFO] [stderr] warning: `red-quic` (lib test) generated 45 warnings (45 duplicates) [INFO] [stderr] warning: unused import: `Context` [INFO] [stderr] --> src/main.rs:1:14 [INFO] [stderr] | [INFO] [stderr] 1 | use anyhow::{Context, Result}; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `error` [INFO] [stderr] --> src/main.rs:2:15 [INFO] [stderr] | [INFO] [stderr] 2 | use tracing::{error, info}; [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `red-quic` (bin "red-quic" test) generated 2 warnings (run `cargo fix --bin "red-quic" --tests` to apply 2 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.31s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/red_quic-c3f697e93807199b) [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/red_quic-752a1ca788d7a26d) [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] [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] Doc-tests red_quic [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "871eb0038a91b6af71d36e00b1fa585b0c861765629bfae6da140d20daa69808", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "871eb0038a91b6af71d36e00b1fa585b0c861765629bfae6da140d20daa69808", kill_on_drop: false }` [INFO] [stdout] 871eb0038a91b6af71d36e00b1fa585b0c861765629bfae6da140d20daa69808