[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<std::str::Chars>, 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<std::str::Chars>, 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<dyn std::err...
[INFO] [stdout]    |                                                                                          ----^^^^^
[INFO] [stdout]    |                                                                                          |
[INFO] [stdout]    |                                                                                          help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> 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::<Ipv4Addr>().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<dyn std::err...
[INFO] [stdout]    |                                                                                          ----^^^^^
[INFO] [stdout]    |                                                                                          |
[INFO] [stdout]    |                                                                                          help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> 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<dyn std::err...
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RoundRobin` is never constructed
[INFO] [stdout]  --> lb-core/src/algorithms/round_robin.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct RoundRobin<T> {
[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 <T: Clone> RoundRobin<T> {
[INFO] [stdout]    | ----------------------------- associated items in this implementation
[INFO] [stdout]  7 |   pub fn new(nodes: Vec<T>) -> Self {
[INFO] [stdout]    |          ^^^
[INFO] [stdout] ...
[INFO] [stdout] 14 |   pub fn get_next_backend(&mut self) -> Option<T> {
[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::<Ipv4Addr>().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<dyn std::err...
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RoundRobin` is never constructed
[INFO] [stdout]  --> lb-core/src/algorithms/round_robin.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct RoundRobin<T> {
[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 <T: Clone> RoundRobin<T> {
[INFO] [stdout]    | ----------------------------- associated items in this implementation
[INFO] [stdout]  7 |   pub fn new(nodes: Vec<T>) -> Self {
[INFO] [stdout]    |          ^^^
[INFO] [stdout] ...
[INFO] [stdout] 14 |   pub fn get_next_backend(&mut self) -> Option<T> {
[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
