[INFO] cloning repository https://github.com/mystica2000/load-balancer [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/mystica2000/load-balancer" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmystica2000%2Fload-balancer", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmystica2000%2Fload-balancer'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 0d2a888ccf41c7449217fed5c12fbd4c15b806a3 [INFO] checking mystica2000/load-balancer against master#642c19bfc3a5c1de985bf5d0cc8207ac9d22708a for pr-148577 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmystica2000%2Fload-balancer" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/mystica2000/load-balancer [INFO] finished tweaking git repo https://github.com/mystica2000/load-balancer [INFO] tweaked toml for git repo https://github.com/mystica2000/load-balancer written to /workspace/builds/worker-5-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/mystica2000/load-balancer on toolchain 642c19bfc3a5c1de985bf5d0cc8207ac9d22708a [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+642c19bfc3a5c1de985bf5d0cc8207ac9d22708a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/mystica2000/load-balancer 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" "+642c19bfc3a5c1de985bf5d0cc8207ac9d22708a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2021 which implies `resolver = "2"` [INFO] [stderr] | [INFO] [stderr] = note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest [INFO] [stderr] = note: to use the edition 2021 resolver, specify `workspace.resolver = "2"` in the workspace root's manifest [INFO] [stderr] = note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded syn v2.0.71 [INFO] [stderr] Downloaded tokio v1.38.1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+642c19bfc3a5c1de985bf5d0cc8207ac9d22708a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 2daa17657ae970694bc8aadfb8d5ad851d9025c1d6866bc75cc6e39bf6c12eea [INFO] running `Command { std: "docker" "start" "-a" "2daa17657ae970694bc8aadfb8d5ad851d9025c1d6866bc75cc6e39bf6c12eea", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "2daa17657ae970694bc8aadfb8d5ad851d9025c1d6866bc75cc6e39bf6c12eea", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2daa17657ae970694bc8aadfb8d5ad851d9025c1d6866bc75cc6e39bf6c12eea", kill_on_drop: false }` [INFO] [stdout] 2daa17657ae970694bc8aadfb8d5ad851d9025c1d6866bc75cc6e39bf6c12eea [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+642c19bfc3a5c1de985bf5d0cc8207ac9d22708a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 0ba587bc5f68a561ab1db20d64c099f6d755ae16d60c2c9909716bcd7f29c611 [INFO] running `Command { std: "docker" "start" "-a" "0ba587bc5f68a561ab1db20d64c099f6d755ae16d60c2c9909716bcd7f29c611", kill_on_drop: false }` [INFO] [stderr] warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2021 which implies `resolver = "2"` [INFO] [stderr] | [INFO] [stderr] = note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest [INFO] [stderr] = note: to use the edition 2021 resolver, specify `workspace.resolver = "2"` in the workspace root's manifest [INFO] [stderr] = note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions [INFO] [stderr] Checking bytes v1.6.1 [INFO] [stderr] Checking errors v0.1.0 (/opt/rustwide/workdir/errors) [INFO] [stderr] Checking yml-parser v0.1.0 (/opt/rustwide/workdir/yml-parser) [INFO] [stderr] Checking parking_lot_core v0.9.10 [INFO] [stderr] Checking signal-hook-registry v1.4.2 [INFO] [stderr] Compiling syn v2.0.71 [INFO] [stdout] warning: unused import: `super::*` [INFO] [stdout] --> yml-parser/src/parser.rs:302:7 [INFO] [stdout] | [INFO] [stdout] 302 | use super::*; [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 variable: `prev_char` [INFO] [stdout] --> yml-parser/src/preprocess.rs:56:113 [INFO] [stdout] | [INFO] [stdout] 56 | ...eekable, prev_char: char, index: usize, line: &str) -> Result<(), &'static str> { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_prev_char` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> yml-parser/src/lib.rs:51:11 [INFO] [stdout] | [INFO] [stdout] 51 | Err(e) => Err(io::Error::new(io::ErrorKind::InvalidData, "No YML Content to process")), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `prev_char` [INFO] [stdout] --> yml-parser/src/preprocess.rs:56:113 [INFO] [stdout] | [INFO] [stdout] 56 | ...eekable, prev_char: char, index: usize, line: &str) -> Result<(), &'static str> { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_prev_char` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> yml-parser/src/lib.rs:51:11 [INFO] [stdout] | [INFO] [stdout] 51 | Err(e) => Err(io::Error::new(io::ErrorKind::InvalidData, "No YML Content to process")), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking parking_lot v0.12.3 [INFO] [stderr] Compiling tokio-macros v2.3.0 [INFO] [stderr] Checking tokio v1.38.1 [INFO] [stderr] Checking lb-pooling v0.1.0 (/opt/rustwide/workdir/lb-pooling) [INFO] [stdout] warning: unused import: `sync::Arc` [INFO] [stdout] --> lb-pooling/src/pooling/tcp.rs:1:30 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{net::SocketAddrV4, sync::Arc, time::{Duration, Instant}}; [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: `CustomError` [INFO] [stdout] --> lb-pooling/src/pooling/tcp.rs:2:14 [INFO] [stdout] | [INFO] [stdout] 2 | use errors::{CustomError, Error}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Mutex` and `time::timeout` [INFO] [stdout] --> lb-pooling/src/pooling/tcp.rs:3:36 [INFO] [stdout] | [INFO] [stdout] 3 | use tokio::{net::TcpStream, sync::{Mutex, RwLock}, time::timeout}; [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `sync::Arc` [INFO] [stdout] --> lb-pooling/src/pooling/tcp.rs:1:30 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{net::SocketAddrV4, sync::Arc, time::{Duration, Instant}}; [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: `CustomError` [INFO] [stdout] --> lb-pooling/src/pooling/tcp.rs:2:14 [INFO] [stdout] | [INFO] [stdout] 2 | use errors::{CustomError, Error}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Mutex` and `time::timeout` [INFO] [stdout] --> lb-pooling/src/pooling/tcp.rs:3:36 [INFO] [stdout] | [INFO] [stdout] 3 | use tokio::{net::TcpStream, sync::{Mutex, RwLock}, time::timeout}; [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `id` and `last_used` are never read [INFO] [stdout] --> lb-pooling/src/pooling/tcp.rs:6:3 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct PooledConnection { [INFO] [stdout] | ---------------- fields in this struct [INFO] [stdout] 6 | id: u8, [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 9 | last_used: Instant [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `max_size` and `max_idle_time` are never read [INFO] [stdout] --> lb-pooling/src/pooling/tcp.rs:27:3 [INFO] [stdout] | [INFO] [stdout] 25 | pub struct TcpConnectionPooling { [INFO] [stdout] | -------------------- fields in this struct [INFO] [stdout] 26 | initial_pool_size: u8, [INFO] [stdout] 27 | max_size: u8, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 28 | max_idle_time: Duration, // for example: if a connection is idle for a long time, then unlock() the server; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `id` and `last_used` are never read [INFO] [stdout] --> lb-pooling/src/pooling/tcp.rs:6:3 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct PooledConnection { [INFO] [stdout] | ---------------- fields in this struct [INFO] [stdout] 6 | id: u8, [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 9 | last_used: Instant [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `max_size` and `max_idle_time` are never read [INFO] [stdout] --> lb-pooling/src/pooling/tcp.rs:27:3 [INFO] [stdout] | [INFO] [stdout] 25 | pub struct TcpConnectionPooling { [INFO] [stdout] | -------------------- fields in this struct [INFO] [stdout] 26 | initial_pool_size: u8, [INFO] [stdout] 27 | max_size: u8, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 28 | max_idle_time: Duration, // for example: if a connection is idle for a long time, then unlock() the server; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking lb-core v0.1.0 (/opt/rustwide/workdir/lb-core) [INFO] [stdout] warning: unused import: `CustomError` [INFO] [stdout] --> lb-core/src/listener/tcp.rs:3:14 [INFO] [stdout] | [INFO] [stdout] 3 | use errors::{CustomError, Error}; [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: `AsyncReadExt`, `AsyncWriteExt`, `TcpStream`, `select`, and `sync::mpsc` [INFO] [stdout] --> lb-core/src/listener/tcp.rs:4:18 [INFO] [stdout] | [INFO] [stdout] 4 | use tokio::{io::{AsyncReadExt, AsyncWriteExt}, net::{TcpListener, TcpStream}, select, sync::mpsc}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^^^ ^^^^^^^^^ ^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `io` [INFO] [stdout] --> lb-core/src/connector/tcp.rs:1:11 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{io, net::{Ipv4Addr, SocketAddrV4}, sync::Arc}; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Error` [INFO] [stdout] --> lb-core/src/connector/tcp.rs:3:27 [INFO] [stdout] | [INFO] [stdout] 3 | use errors::{CustomError, Error}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Server` and `self` [INFO] [stdout] --> lb-core/src/connector/tcp.rs:4:27 [INFO] [stdout] | [INFO] [stdout] 4 | use lb_pooling::pooling::{self, tcp::{Server, TcpConnectionPooling}}; [INFO] [stdout] | ^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `select` and `try_join` [INFO] [stdout] --> lb-core/src/connector/tcp.rs:5:79 [INFO] [stdout] | [INFO] [stdout] 5 | use tokio::{io::{AsyncReadExt, AsyncWriteExt}, net::{TcpListener, TcpStream}, select, sync::{mpsc, Mutex}, try_join}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::*` [INFO] [stdout] --> lb-core/src/lib.rs:51:9 [INFO] [stdout] | [INFO] [stdout] 51 | use super::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `CustomError` [INFO] [stdout] --> lb-core/src/listener/tcp.rs:3:14 [INFO] [stdout] | [INFO] [stdout] 3 | use errors::{CustomError, Error}; [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: `AsyncReadExt`, `AsyncWriteExt`, `TcpStream`, `select`, and `sync::mpsc` [INFO] [stdout] --> lb-core/src/listener/tcp.rs:4:18 [INFO] [stdout] | [INFO] [stdout] 4 | use tokio::{io::{AsyncReadExt, AsyncWriteExt}, net::{TcpListener, TcpStream}, select, sync::mpsc}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^^^ ^^^^^^^^^ ^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `io` [INFO] [stdout] --> lb-core/src/connector/tcp.rs:1:11 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{io, net::{Ipv4Addr, SocketAddrV4}, sync::Arc}; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Error` [INFO] [stdout] --> lb-core/src/connector/tcp.rs:3:27 [INFO] [stdout] | [INFO] [stdout] 3 | use errors::{CustomError, Error}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Server` and `self` [INFO] [stdout] --> lb-core/src/connector/tcp.rs:4:27 [INFO] [stdout] | [INFO] [stdout] 4 | use lb_pooling::pooling::{self, tcp::{Server, TcpConnectionPooling}}; [INFO] [stdout] | ^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `select` and `try_join` [INFO] [stdout] --> lb-core/src/connector/tcp.rs:5:79 [INFO] [stdout] | [INFO] [stdout] 5 | use tokio::{io::{AsyncReadExt, AsyncWriteExt}, net::{TcpListener, TcpStream}, select, sync::{mpsc, Mutex}, try_join}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> lb-core/src/connector/tcp.rs:137:3 [INFO] [stdout] | [INFO] [stdout] 117 | / loop { [INFO] [stdout] 118 | | tokio::select! { [INFO] [stdout] 119 | | result = client_stream.read(&mut client_buf) => { [INFO] [stdout] 120 | | match result? { [INFO] [stdout] ... | [INFO] [stdout] 135 | | } [INFO] [stdout] | |___- any code following this expression is unreachable [INFO] [stdout] 136 | [INFO] [stdout] 137 | Ok(()) [INFO] [stdout] | ^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> lb-core/src/connector/tcp.rs:93:90 [INFO] [stdout] | [INFO] [stdout] 93 | async fn handle_connection(stream: &TcpConnectionPooling,mut client_stream: TcpStream, mut count: usize) -> Result<(), Box lb-core/src/connector/tcp.rs:98:7 [INFO] [stdout] | [INFO] [stdout] 98 | let mut server_stream = stream.create_new_connection(count as u8).await; [INFO] [stdout] | ----^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> lb-core/src/connector/tcp.rs:20:60 [INFO] [stdout] | [INFO] [stdout] 20 | let ip_addr = server.ip.parse::().map_err(|e| CustomError::Ipv4AddrParseError)?; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> lb-core/src/connector/tcp.rs:137:3 [INFO] [stdout] | [INFO] [stdout] 117 | / loop { [INFO] [stdout] 118 | | tokio::select! { [INFO] [stdout] 119 | | result = client_stream.read(&mut client_buf) => { [INFO] [stdout] 120 | | match result? { [INFO] [stdout] ... | [INFO] [stdout] 135 | | } [INFO] [stdout] | |___- any code following this expression is unreachable [INFO] [stdout] 136 | [INFO] [stdout] 137 | Ok(()) [INFO] [stdout] | ^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `current_count` [INFO] [stdout] --> lb-core/src/connector/tcp.rs:56:17 [INFO] [stdout] | [INFO] [stdout] 56 | let current_count = *count_lock; [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_current_count` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `stream` [INFO] [stdout] --> lb-core/src/connector/tcp.rs:47:24 [INFO] [stdout] | [INFO] [stdout] 47 | while let Some(stream) = recv.recv().await { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_stream` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pooling_clone` [INFO] [stdout] --> lb-core/src/connector/tcp.rs:50:15 [INFO] [stdout] | [INFO] [stdout] 50 | let pooling_clone = Arc::clone(&pooling); [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pooling_clone` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index` [INFO] [stdout] --> lb-core/src/connector/tcp.rs:94:7 [INFO] [stdout] | [INFO] [stdout] 94 | let index = count % 2; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> lb-core/src/connector/tcp.rs:93:90 [INFO] [stdout] | [INFO] [stdout] 93 | async fn handle_connection(stream: &TcpConnectionPooling,mut client_stream: TcpStream, mut count: usize) -> Result<(), Box lb-core/src/connector/tcp.rs:98:7 [INFO] [stdout] | [INFO] [stdout] 98 | let mut server_stream = stream.create_new_connection(count as u8).await; [INFO] [stdout] | ----^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `handle_connection` is never used [INFO] [stdout] --> lb-core/src/connector/tcp.rs:93:12 [INFO] [stdout] | [INFO] [stdout] 93 | async fn handle_connection(stream: &TcpConnectionPooling,mut client_stream: TcpStream, mut count: usize) -> Result<(), Box lb-core/src/algorithms/round_robin.rs:1:12 [INFO] [stdout] | [INFO] [stdout] 1 | pub struct RoundRobin { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `get_next_backend` are never used [INFO] [stdout] --> lb-core/src/algorithms/round_robin.rs:7:10 [INFO] [stdout] | [INFO] [stdout] 6 | impl RoundRobin { [INFO] [stdout] | ----------------------------- associated items in this implementation [INFO] [stdout] 7 | pub fn new(nodes: Vec) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 14 | pub fn get_next_backend(&mut self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> lb-core/src/connector/tcp.rs:20:60 [INFO] [stdout] | [INFO] [stdout] 20 | let ip_addr = server.ip.parse::().map_err(|e| CustomError::Ipv4AddrParseError)?; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `current_count` [INFO] [stdout] --> lb-core/src/connector/tcp.rs:56:17 [INFO] [stdout] | [INFO] [stdout] 56 | let current_count = *count_lock; [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_current_count` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `stream` [INFO] [stdout] --> lb-core/src/connector/tcp.rs:47:24 [INFO] [stdout] | [INFO] [stdout] 47 | while let Some(stream) = recv.recv().await { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_stream` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pooling_clone` [INFO] [stdout] --> lb-core/src/connector/tcp.rs:50:15 [INFO] [stdout] | [INFO] [stdout] 50 | let pooling_clone = Arc::clone(&pooling); [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pooling_clone` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index` [INFO] [stdout] --> lb-core/src/connector/tcp.rs:94:7 [INFO] [stdout] | [INFO] [stdout] 94 | let index = count % 2; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused implementer of `Future` that must be used [INFO] [stdout] --> lb-core/src/lib.rs:26:7 [INFO] [stdout] | [INFO] [stdout] 26 | tcp_connector.initialize_algorithm(lb_config.algorithm); [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 `Result` that must be used [INFO] [stdout] --> lb-core/src/lib.rs:37:7 [INFO] [stdout] | [INFO] [stdout] 37 | tcp_connector.accept(tcp_listener).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 37 | let _ = tcp_connector.accept(tcp_listener).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `handle_connection` is never used [INFO] [stdout] --> lb-core/src/connector/tcp.rs:93:12 [INFO] [stdout] | [INFO] [stdout] 93 | async fn handle_connection(stream: &TcpConnectionPooling,mut client_stream: TcpStream, mut count: usize) -> Result<(), Box lb-core/src/algorithms/round_robin.rs:1:12 [INFO] [stdout] | [INFO] [stdout] 1 | pub struct RoundRobin { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `get_next_backend` are never used [INFO] [stdout] --> lb-core/src/algorithms/round_robin.rs:7:10 [INFO] [stdout] | [INFO] [stdout] 6 | impl RoundRobin { [INFO] [stdout] | ----------------------------- associated items in this implementation [INFO] [stdout] 7 | pub fn new(nodes: Vec) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 14 | pub fn get_next_backend(&mut self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused implementer of `Future` that must be used [INFO] [stdout] --> lb-core/src/lib.rs:26:7 [INFO] [stdout] | [INFO] [stdout] 26 | tcp_connector.initialize_algorithm(lb_config.algorithm); [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 `Result` that must be used [INFO] [stdout] --> lb-core/src/lib.rs:37:7 [INFO] [stdout] | [INFO] [stdout] 37 | tcp_connector.accept(tcp_listener).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 37 | let _ = tcp_connector.accept(tcp_listener).await; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking lb-app v0.1.0 (/opt/rustwide/workdir/lb-app) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 9.99s [INFO] running `Command { std: "docker" "inspect" "0ba587bc5f68a561ab1db20d64c099f6d755ae16d60c2c9909716bcd7f29c611", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0ba587bc5f68a561ab1db20d64c099f6d755ae16d60c2c9909716bcd7f29c611", kill_on_drop: false }` [INFO] [stdout] 0ba587bc5f68a561ab1db20d64c099f6d755ae16d60c2c9909716bcd7f29c611