[INFO] cloning repository https://github.com/NikhilSDate/TCProxy
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/NikhilSDate/TCProxy" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FNikhilSDate%2FTCProxy", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FNikhilSDate%2FTCProxy'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 6e3d28e5ba8212516806985640a0d9235101ae2b
[INFO] checking NikhilSDate/TCProxy against 24e1a22664233bce1f9b5dc6eee7c1f74327e28c for pr-159343-retry
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FNikhilSDate%2FTCProxy" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/NikhilSDate/TCProxy
[INFO] finished tweaking git repo https://github.com/NikhilSDate/TCProxy
[INFO] tweaked toml for git repo https://github.com/NikhilSDate/TCProxy written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/NikhilSDate/TCProxy on toolchain 24e1a22664233bce1f9b5dc6eee7c1f74327e28c
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+24e1a22664233bce1f9b5dc6eee7c1f74327e28c" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/NikhilSDate/TCProxy 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" "+24e1a22664233bce1f9b5dc6eee7c1f74327e28c" "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/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3d5ced03c013a94a2f102a4510f48a6e9184255caf5fd8244f58017bde7f5210" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] d0e5d3ca31736bfecb91b74ddcc98bdadf87031f39c367a2a12623a6c7ce6c93
[INFO] running `Command { std: "docker" "start" "d0e5d3ca31736bfecb91b74ddcc98bdadf87031f39c367a2a12623a6c7ce6c93", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d0e5d3ca31736bfecb91b74ddcc98bdadf87031f39c367a2a12623a6c7ce6c93", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "d0e5d3ca31736bfecb91b74ddcc98bdadf87031f39c367a2a12623a6c7ce6c93" "/opt/rustwide/cargo-home/bin/cargo" "+24e1a22664233bce1f9b5dc6eee7c1f74327e28c" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d0e5d3ca31736bfecb91b74ddcc98bdadf87031f39c367a2a12623a6c7ce6c93", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "d0e5d3ca31736bfecb91b74ddcc98bdadf87031f39c367a2a12623a6c7ce6c93" "/opt/rustwide/cargo-home/bin/cargo" "+24e1a22664233bce1f9b5dc6eee7c1f74327e28c" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.86
[INFO] [stderr]    Compiling unicode-ident v1.0.13
[INFO] [stderr]    Compiling libc v0.2.159
[INFO] [stderr]    Compiling thiserror v1.0.64
[INFO] [stderr]     Checking once_cell v1.19.0
[INFO] [stderr]     Checking log v0.4.22
[INFO] [stderr]    Compiling serde v1.0.210
[INFO] [stderr]     Checking memchr v2.7.4
[INFO] [stderr]     Checking pin-project-lite v0.2.14
[INFO] [stderr]     Checking smallvec v1.13.2
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling crossbeam-utils v0.8.20
[INFO] [stderr]    Compiling indexmap v1.9.3
[INFO] [stderr]     Checking overload v0.1.1
[INFO] [stderr]     Checking itoa v1.0.11
[INFO] [stderr]     Checking bytes v1.7.2
[INFO] [stderr]     Checking sharded-slab v0.1.7
[INFO] [stderr]     Checking nu-ansi-term v0.46.0
[INFO] [stderr]    Compiling serde_json v1.0.128
[INFO] [stderr]     Checking ryu v1.0.18
[INFO] [stderr]     Checking tracing-core v0.1.32
[INFO] [stderr]     Checking thread_local v1.1.8
[INFO] [stderr]    Compiling anyhow v1.0.89
[INFO] [stderr]    Compiling ahash v0.8.11
[INFO] [stderr]     Checking anstyle-parse v0.2.5
[INFO] [stderr]    Compiling lock_api v0.4.12
[INFO] [stderr]    Compiling parking_lot_core v0.9.10
[INFO] [stderr]     Checking colorchoice v1.0.2
[INFO] [stderr]     Checking anstyle v1.0.8
[INFO] [stderr]    Compiling rustix v0.38.37
[INFO] [stderr]    Compiling signal-hook v0.3.17
[INFO] [stderr]     Checking anstyle-query v1.1.1
[INFO] [stderr]     Checking humantime v2.1.0
[INFO] [stderr]    Compiling cc v1.1.31
[INFO] [stderr]    Compiling quote v1.0.37
[INFO] [stderr]     Checking strsim v0.11.1
[INFO] [stderr]     Checking getrandom v0.2.15
[INFO] [stderr]     Checking mio v1.0.2
[INFO] [stderr]     Checking socket2 v0.5.7
[INFO] [stderr]     Checking anstream v0.6.15
[INFO] [stderr]    Compiling syn v2.0.79
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking signal-hook-registry v1.4.2
[INFO] [stderr]     Checking tracing-log v0.2.0
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking clap_lex v0.7.2
[INFO] [stderr]    Compiling rustversion v1.0.18
[INFO] [stderr]    Compiling pkg-config v0.3.31
[INFO] [stderr]     Checking linux-raw-sys v0.4.14
[INFO] [stderr]    Compiling vte_generate_state_changes v0.1.2
[INFO] [stderr]     Checking tracing-subscriber v0.3.18
[INFO] [stderr]     Checking crossbeam-channel v0.5.13
[INFO] [stderr]     Checking clap_builder v4.5.20
[INFO] [stderr]    Compiling unicode-segmentation v1.12.0
[INFO] [stderr]     Checking deranged v0.3.11
[INFO] [stderr]     Checking vte v0.11.1
[INFO] [stderr]     Checking signal-hook-mio v0.2.4
[INFO] [stderr]     Checking parking_lot v0.12.3
[INFO] [stderr]     Checking time-core v0.1.2
[INFO] [stderr]     Checking either v1.13.0
[INFO] [stderr]     Checking iana-time-zone v0.1.61
[INFO] [stderr]     Checking strum v0.26.3
[INFO] [stderr]     Checking itertools v0.12.1
[INFO] [stderr]     Checking nu-ansi-term v0.50.1
[INFO] [stderr]    Compiling convert_case v0.6.0
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling libsqlite3-sys v0.30.1
[INFO] [stderr]    Compiling num-bigint v0.4.6
[INFO] [stderr]     Checking strip-ansi-escapes v0.2.0
[INFO] [stderr]     Checking time v0.3.36
[INFO] [stderr]    Compiling tarpc-plugins v0.13.1
[INFO] [stderr]    Compiling thiserror-impl v1.0.64
[INFO] [stderr]    Compiling serde_derive v1.0.210
[INFO] [stderr]    Compiling zerocopy-derive v0.7.35
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling tokio-macros v2.4.0
[INFO] [stderr]    Compiling async-trait v0.1.83
[INFO] [stderr]    Compiling tracing-attributes v0.1.27
[INFO] [stderr]    Compiling enum-ordinalize v3.1.15
[INFO] [stderr]    Compiling pin-project-internal v1.1.6
[INFO] [stderr]    Compiling clap_derive v4.5.18
[INFO] [stderr]    Compiling derive_more-impl v1.0.0
[INFO] [stderr]    Compiling strum_macros v0.26.4
[INFO] [stderr]    Compiling educe v0.4.23
[INFO] [stderr]     Checking tokio v1.40.0
[INFO] [stderr]     Checking zerocopy v0.7.35
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]     Checking tracing v0.1.40
[INFO] [stderr]     Checking pin-project v1.1.6
[INFO] [stderr]    Compiling pest v2.7.13
[INFO] [stderr]     Checking tracing-appender v0.2.3
[INFO] [stderr]     Checking ppv-lite86 v0.2.20
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking clap v4.5.20
[INFO] [stderr]     Checking hashlink v0.9.1
[INFO] [stderr]    Compiling pest_meta v2.7.13
[INFO] [stderr]     Checking derive_more v1.0.0
[INFO] [stderr]     Checking futures-executor v0.3.31
[INFO] [stderr]     Checking opentelemetry_api v0.18.0
[INFO] [stderr]     Checking futures v0.3.31
[INFO] [stderr]    Compiling pest_generator v2.7.13
[INFO] [stderr]     Checking tokio-util v0.7.12
[INFO] [stderr]     Checking tokio-stream v0.1.16
[INFO] [stderr]     Checking opentelemetry_sdk v0.18.0
[INFO] [stderr]     Checking opentelemetry v0.18.0
[INFO] [stderr]     Checking tracing-opentelemetry v0.18.0
[INFO] [stderr]    Compiling pest_derive v2.7.13
[INFO] [stderr]     Checking rulelib v0.1.0 (/opt/rustwide/workdir/rulelib)
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> rulelib/src/vm/mod.rs:173:9
[INFO] [stdout]     |
[INFO] [stdout] 173 |         vm.run_program(&program, &packet);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 173 |         let _ = vm.run_program(&program, &packet);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> rulelib/src/vm/mod.rs:221:9
[INFO] [stdout]     |
[INFO] [stdout] 221 |         vm.run_program(&program, &packet);
[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] 221 |         let _ = vm.run_program(&program, &packet);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking bitflags v2.6.0
[INFO] [stderr]     Checking bincode v1.3.3
[INFO] [stderr]     Checking chrono v0.4.38
[INFO] [stderr]     Checking rusqlite v0.32.1
[INFO] [stderr]     Checking tokio-serde v0.8.0
[INFO] [stderr]     Checking tarpc v0.34.0
[INFO] [stderr]     Checking shared v0.1.0 (/opt/rustwide/workdir/shared)
[INFO] [stderr]     Checking crossterm v0.28.1
[INFO] [stderr]     Checking fd-lock v4.0.2
[INFO] [stderr]     Checking redirector v0.1.0 (/opt/rustwide/workdir/redirector)
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> redirector/src/main.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::HashMap;
[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: `DROP`, `ITE`, and `SEQ`
[INFO] [stdout]   --> redirector/src/main.rs:10:32
[INFO] [stdout]    |
[INFO] [stdout] 10 | use rulelib::vm::Instruction::{DROP, ITE, REDIRECT, SEQ};
[INFO] [stdout]    |                                ^^^^  ^^^            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Object` and `PACKET_SOURCE_IP`
[INFO] [stdout]   --> redirector/src/main.rs:11:19
[INFO] [stdout]    |
[INFO] [stdout] 11 | use rulelib::vm::{Object, PACKET_SOURCE_IP, Program};
[INFO] [stdout]    |                   ^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `FutureExt`, `TryFutureExt`, and `future`
[INFO] [stdout]  --> redirector/src/redirector/mod.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 | use futures::{future, FutureExt, StreamExt, TryFutureExt};
[INFO] [stdout]   |               ^^^^^^  ^^^^^^^^^             ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::RefCell`
[INFO] [stdout]  --> redirector/src/redirector/mod.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::cell::RefCell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io`
[INFO] [stdout]  --> redirector/src/redirector/mod.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::io;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::process::Output`
[INFO] [stdout]   --> redirector/src/redirector/mod.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::process::Output;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Poll` and `ready`
[INFO] [stdout]   --> redirector/src/redirector/mod.rs:13:17
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::task::{ready, Poll};
[INFO] [stdout]    |                 ^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncReadExt`, `AsyncRead`, `AsyncWrite`, and `copy_bidirectional`
[INFO] [stdout]   --> redirector/src/redirector/mod.rs:14:17
[INFO] [stdout]    |
[INFO] [stdout] 14 | use tokio::io::{copy_bidirectional, AsyncRead, AsyncReadExt, AsyncWrite, AsyncWriteExt};
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::macros::support::poll_fn`
[INFO] [stdout]   --> redirector/src/redirector/mod.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use tokio::macros::support::poll_fn;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TcpStream`
[INFO] [stdout]   --> redirector/src/redirector/mod.rs:16:31
[INFO] [stdout]    |
[INFO] [stdout] 16 | use tokio::net::{TcpListener, TcpStream};
[INFO] [stdout]    |                               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio_stream::wrappers::TcpListenerStream`
[INFO] [stdout]   --> redirector/src/redirector/mod.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use tokio_stream::wrappers::TcpListenerStream;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `StreamReader`
[INFO] [stdout]   --> redirector/src/redirector/mod.rs:19:36
[INFO] [stdout]    |
[INFO] [stdout] 19 | use tokio_util::io::{ReaderStream, StreamReader};
[INFO] [stdout]    |                                    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rulelib::vm::Program`
[INFO] [stdout]  --> redirector/src/rpc/mod.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use rulelib::vm::Program;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tarpc::Request`
[INFO] [stdout]   --> redirector/src/rpc/mod.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use tarpc::Request;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> redirector/src/main.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::HashMap;
[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: `DROP`, `ITE`, and `SEQ`
[INFO] [stdout]   --> redirector/src/main.rs:10:32
[INFO] [stdout]    |
[INFO] [stdout] 10 | use rulelib::vm::Instruction::{DROP, ITE, REDIRECT, SEQ};
[INFO] [stdout]    |                                ^^^^  ^^^            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Object` and `PACKET_SOURCE_IP`
[INFO] [stdout]   --> redirector/src/main.rs:11:19
[INFO] [stdout]    |
[INFO] [stdout] 11 | use rulelib::vm::{Object, PACKET_SOURCE_IP, Program};
[INFO] [stdout]    |                   ^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `FutureExt`, `TryFutureExt`, and `future`
[INFO] [stdout]  --> redirector/src/redirector/mod.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 | use futures::{future, FutureExt, StreamExt, TryFutureExt};
[INFO] [stdout]   |               ^^^^^^  ^^^^^^^^^             ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::RefCell`
[INFO] [stdout]  --> redirector/src/redirector/mod.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::cell::RefCell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io`
[INFO] [stdout]  --> redirector/src/redirector/mod.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::io;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::process::Output`
[INFO] [stdout]   --> redirector/src/redirector/mod.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::process::Output;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Poll` and `ready`
[INFO] [stdout]   --> redirector/src/redirector/mod.rs:13:17
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::task::{ready, Poll};
[INFO] [stdout]    |                 ^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncReadExt`, `AsyncRead`, `AsyncWrite`, and `copy_bidirectional`
[INFO] [stdout]   --> redirector/src/redirector/mod.rs:14:17
[INFO] [stdout]    |
[INFO] [stdout] 14 | use tokio::io::{copy_bidirectional, AsyncRead, AsyncReadExt, AsyncWrite, AsyncWriteExt};
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::macros::support::poll_fn`
[INFO] [stdout]   --> redirector/src/redirector/mod.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use tokio::macros::support::poll_fn;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TcpStream`
[INFO] [stdout]   --> redirector/src/redirector/mod.rs:16:31
[INFO] [stdout]    |
[INFO] [stdout] 16 | use tokio::net::{TcpListener, TcpStream};
[INFO] [stdout]    |                               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio_stream::wrappers::TcpListenerStream`
[INFO] [stdout]   --> redirector/src/redirector/mod.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use tokio_stream::wrappers::TcpListenerStream;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `StreamReader`
[INFO] [stdout]   --> redirector/src/redirector/mod.rs:19:36
[INFO] [stdout]    |
[INFO] [stdout] 19 | use tokio_util::io::{ReaderStream, StreamReader};
[INFO] [stdout]    |                                    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tarpc::Request`
[INFO] [stdout]   --> redirector/src/rpc/mod.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use tarpc::Request;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> redirector/src/redirector/mod.rs:69:19
[INFO] [stdout]    |
[INFO] [stdout] 69 |     while let Ok((mut inbound, _)) = listener.accept().await {
[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]   --> redirector/src/redirector/mod.rs:76:13
[INFO] [stdout]    |
[INFO] [stdout] 76 |         let mut outbound =
[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]   --> redirector/src/redirector/mod.rs:69:19
[INFO] [stdout]    |
[INFO] [stdout] 69 |     while let Ok((mut inbound, _)) = listener.accept().await {
[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]   --> redirector/src/redirector/mod.rs:76:13
[INFO] [stdout]    |
[INFO] [stdout] 76 |         let mut outbound =
[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]   --> redirector/src/rpc/mod.rs:98:13
[INFO] [stdout]    |
[INFO] [stdout] 98 |         let mut stmt = conn.prepare("SELECT id, name, content FROM rulefiles");
[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]   --> redirector/src/rpc/mod.rs:98:13
[INFO] [stdout]    |
[INFO] [stdout] 98 |         let mut stmt = conn.prepare("SELECT id, name, content FROM rulefiles");
[INFO] [stdout]    |             ----^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> redirector/src/redirector/mod.rs:160:25
[INFO] [stdout]     |
[INFO] [stdout] 160 |                     Err(e) => {
[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: `destination`
[INFO] [stdout]    --> redirector/src/redirector/mod.rs:110:46
[INFO] [stdout]     |
[INFO] [stdout] 110 | ...                   Action::REDIRECT(destination, port) => {
[INFO] [stdout]     |                                        ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_destination`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `port`
[INFO] [stdout]    --> redirector/src/redirector/mod.rs:110:59
[INFO] [stdout]     |
[INFO] [stdout] 110 | ...                   Action::REDIRECT(destination, port) => {
[INFO] [stdout]     |                                                     ^^^^ help: if this is intentional, prefix it with an underscore: `_port`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> redirector/src/redirector/mod.rs:147:25
[INFO] [stdout]     |
[INFO] [stdout] 147 |                     Err(e) => {
[INFO] [stdout]     |                         ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> redirector/src/redirector/mod.rs:160:25
[INFO] [stdout]     |
[INFO] [stdout] 160 |                     Err(e) => {
[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: `destination`
[INFO] [stdout]    --> redirector/src/redirector/mod.rs:110:46
[INFO] [stdout]     |
[INFO] [stdout] 110 | ...                   Action::REDIRECT(destination, port) => {
[INFO] [stdout]     |                                        ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_destination`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `port`
[INFO] [stdout]    --> redirector/src/redirector/mod.rs:110:59
[INFO] [stdout]     |
[INFO] [stdout] 110 | ...                   Action::REDIRECT(destination, port) => {
[INFO] [stdout]     |                                                     ^^^^ help: if this is intentional, prefix it with an underscore: `_port`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> redirector/src/redirector/mod.rs:147:25
[INFO] [stdout]     |
[INFO] [stdout] 147 |                     Err(e) => {
[INFO] [stdout]     |                         ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `addr` is never read
[INFO] [stdout]   --> redirector/src/rpc/mod.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 27 | struct Server {
[INFO] [stdout]    |        ------ field in this struct
[INFO] [stdout] 28 |     addr: SocketAddr,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Server` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> redirector/src/redirector/mod.rs:158:25
[INFO] [stdout]     |
[INFO] [stdout] 158 |                         itx.write_all(&bytes).await;
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 158 |                         let _ = itx.write_all(&bytes).await;
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `addr` is never read
[INFO] [stdout]   --> redirector/src/rpc/mod.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 27 | struct Server {
[INFO] [stdout]    |        ------ field in this struct
[INFO] [stdout] 28 |     addr: SocketAddr,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Server` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> redirector/src/redirector/mod.rs:158:25
[INFO] [stdout]     |
[INFO] [stdout] 158 |                         itx.write_all(&bytes).await;
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 158 |                         let _ = itx.write_all(&bytes).await;
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking reedline v0.36.0
[INFO] [stderr]     Checking client v0.1.0 (/opt/rustwide/workdir/client)
[INFO] [stdout] warning: unused import: `Subcommand`
[INFO] [stdout]  --> client/src/command/create.rs:2:20
[INFO] [stdout]   |
[INFO] [stdout] 2 | use clap::{Parser, Subcommand};
[INFO] [stdout]   |                    ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs`
[INFO] [stdout]  --> client/src/command/request.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fs;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs`
[INFO] [stdout]  --> client/src/command/set_program.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fs;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Subcommand`
[INFO] [stdout]  --> client/src/command/create.rs:2:20
[INFO] [stdout]   |
[INFO] [stdout] 2 | use clap::{Parser, Subcommand};
[INFO] [stdout]   |                    ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs`
[INFO] [stdout]  --> client/src/command/request.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fs;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs`
[INFO] [stdout]  --> client/src/command/set_program.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fs;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `prompt`
[INFO] [stdout]   --> client/src/io.rs:12:17
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub fn readline(prompt: Option<String>) -> Result<String> {
[INFO] [stdout]    |                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_prompt`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `prompt`
[INFO] [stdout]   --> client/src/io.rs:12:17
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub fn readline(prompt: Option<String>) -> Result<String> {
[INFO] [stdout]    |                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_prompt`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 58.42s
[INFO] running `Command { std: "docker" "inspect" "d0e5d3ca31736bfecb91b74ddcc98bdadf87031f39c367a2a12623a6c7ce6c93", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d0e5d3ca31736bfecb91b74ddcc98bdadf87031f39c367a2a12623a6c7ce6c93", kill_on_drop: false }`
[INFO] [stdout] d0e5d3ca31736bfecb91b74ddcc98bdadf87031f39c367a2a12623a6c7ce6c93
