[INFO] fetching crate masquerade-proxy 0.1.0...
[INFO] testing masquerade-proxy-0.1.0 against 1.91.0 for beta-1.92-2
[INFO] extracting crate masquerade-proxy 0.1.0 into /workspace/builds/worker-5-tc1/source
[INFO] started tweaking crates.io crate masquerade-proxy 0.1.0
[INFO] finished tweaking crates.io crate masquerade-proxy 0.1.0
[INFO] tweaked toml for crates.io crate masquerade-proxy 0.1.0 written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate masquerade-proxy 0.1.0 on toolchain 1.91.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.91.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate masquerade-proxy 0.1.0 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" "+1.91.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded socks5-proto v0.3.2
[INFO] [stderr]   Downloaded libc v0.2.138
[INFO] [stderr]   Downloaded tokio-macros v1.8.2
[INFO] [stderr]   Downloaded regex v1.7.0
[INFO] [stderr]   Downloaded matches v0.1.9
[INFO] [stderr]   Downloaded test-log v0.2.11
[INFO] [stderr]   Downloaded cc v1.0.77
[INFO] [stderr]   Downloaded cmake v0.1.49
[INFO] [stderr]   Downloaded linux-raw-sys v0.1.3
[INFO] [stderr]   Downloaded parking_lot_core v0.9.5
[INFO] [stderr]   Downloaded quiche v0.16.0
[INFO] [stderr]   Downloaded tokio v1.20.4
[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" "+1.91.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] fd654571e2ae70277d1b58e971b96f4aa62d67fd9a47fd414ffd3b78668ebe0d
[INFO] running `Command { std: "docker" "start" "-a" "fd654571e2ae70277d1b58e971b96f4aa62d67fd9a47fd414ffd3b78668ebe0d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "fd654571e2ae70277d1b58e971b96f4aa62d67fd9a47fd414ffd3b78668ebe0d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fd654571e2ae70277d1b58e971b96f4aa62d67fd9a47fd414ffd3b78668ebe0d", kill_on_drop: false }`
[INFO] [stdout] fd654571e2ae70277d1b58e971b96f4aa62d67fd9a47fd414ffd3b78668ebe0d
[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=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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+1.91.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 6f7fe3251c45669e4907f504eaed813ff92845d1044798002411cdd59daea085
[INFO] running `Command { std: "docker" "start" "-a" "6f7fe3251c45669e4907f504eaed813ff92845d1044798002411cdd59daea085", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.138
[INFO] [stderr]    Compiling cc v1.0.77
[INFO] [stderr]    Compiling proc-macro2 v1.0.47
[INFO] [stderr]    Compiling unicode-ident v1.0.5
[INFO] [stderr]    Compiling lock_api v0.4.9
[INFO] [stderr]    Compiling io-lifetimes v1.0.3
[INFO] [stderr]    Compiling parking_lot_core v0.9.5
[INFO] [stderr]    Compiling syn v1.0.105
[INFO] [stderr]    Compiling tinyvec_macros v0.1.0
[INFO] [stderr]    Compiling rustix v0.36.5
[INFO] [stderr]    Compiling smallvec v1.10.0
[INFO] [stderr]    Compiling tokio v1.20.4
[INFO] [stderr]    Compiling libm v0.2.6
[INFO] [stderr]    Compiling linux-raw-sys v0.1.3
[INFO] [stderr]    Compiling aho-corasick v0.7.20
[INFO] [stderr]    Compiling bytes v1.2.1
[INFO] [stderr]    Compiling tinyvec v1.6.0
[INFO] [stderr]    Compiling once_cell v1.16.0
[INFO] [stderr]    Compiling matches v0.1.9
[INFO] [stderr]    Compiling regex-syntax v0.6.28
[INFO] [stderr]    Compiling unicode-bidi v0.3.8
[INFO] [stderr]    Compiling termcolor v1.1.3
[INFO] [stderr]    Compiling humantime v2.1.0
[INFO] [stderr]    Compiling octets v0.2.0
[INFO] [stderr]    Compiling cmake v0.1.49
[INFO] [stderr]    Compiling quote v1.0.21
[INFO] [stderr]    Compiling ring v0.16.20
[INFO] [stderr]    Compiling unicode-normalization v0.1.22
[INFO] [stderr]    Compiling quiche v0.16.0
[INFO] [stderr]    Compiling regex v1.7.0
[INFO] [stderr]    Compiling signal-hook-registry v1.4.0
[INFO] [stderr]    Compiling mio v0.8.5
[INFO] [stderr]    Compiling num_cpus v1.15.0
[INFO] [stderr]    Compiling socket2 v0.4.7
[INFO] [stderr]    Compiling parking_lot v0.12.1
[INFO] [stderr]    Compiling idna v0.1.5
[INFO] [stderr]    Compiling url v1.7.2
[INFO] [stderr]    Compiling is-terminal v0.4.1
[INFO] [stderr]    Compiling env_logger v0.10.0
[INFO] [stderr]    Compiling tokio-macros v1.8.2
[INFO] [stderr]    Compiling socks5-proto v0.3.2
[INFO] [stderr]    Compiling masquerade-proxy v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Header`
[INFO] [stdout]  --> src/client.rs:2:29
[INFO] [stdout]   |
[INFO] [stdout] 2 | use quiche::h3::{NameValue, Header};
[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: `self`
[INFO] [stdout]  --> src/client.rs:8:25
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::error::{Error, self};
[INFO] [stdout]   |                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `UnboundedReceiver`
[INFO] [stdout]   --> src/client.rs:14:48
[INFO] [stdout]    |
[INFO] [stdout] 14 | use tokio::sync::mpsc::{self, UnboundedSender, UnboundedReceiver};
[INFO] [stdout]    |                                                ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/client.rs:79:13
[INFO] [stdout]    |
[INFO] [stdout] 79 |         let mut listener = TcpListener::bind(bind_addr).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: unused variable: `e`
[INFO] [stdout]    --> src/client.rs:182:29
[INFO] [stdout]     |
[INFO] [stdout] 182 |                         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: `e`
[INFO] [stdout]    --> src/client.rs:345:33
[INFO] [stdout]     |
[INFO] [stdout] 345 | ...                   Err(e) => break,
[INFO] [stdout]     |                           ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `res`
[INFO] [stdout]    --> src/client.rs:488:9
[INFO] [stdout]     |
[INFO] [stdout] 488 |     let res = req.parse(&buf[..pos]).unwrap();
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_res`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/server.rs:484:65
[INFO] [stdout]     |
[INFO] [stdout] 484 | ...                   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]    --> src/server.rs:385:29
[INFO] [stdout]     |
[INFO] [stdout] 385 |                         Err(e) => break,
[INFO] [stdout]     |                             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Finished` is never constructed
[INFO] [stdout]   --> src/server.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | enum Content {
[INFO] [stdout]    |      ------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 30 |     Finished,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Content` has a derived impl for the trait `Debug`, 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]    --> src/client.rs:212:41
[INFO] [stdout]     |
[INFO] [stdout] 212 | ...                   sender.send(Content::Headers { headers: list });
[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] 212 |                                         let _ = sender.send(Content::Headers { headers: list });
[INFO] [stdout]     |                                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:222:45
[INFO] [stdout]     |
[INFO] [stdout] 222 | ...                   sender.send(Content::Data { data: buf[..read].to_vec() });
[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] 222 |                                             let _ = sender.send(Content::Data { data: buf[..read].to_vec() });
[INFO] [stdout]     |                                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:231:41
[INFO] [stdout]     |
[INFO] [stdout] 231 | ...                   sender.send(Content::Finished {});
[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] 231 |                                         let _ = sender.send(Content::Finished {});
[INFO] [stdout]     |                                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:239:41
[INFO] [stdout]     |
[INFO] [stdout] 239 | ...                   sender.send(Content::Finished {});
[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] 239 |                                         let _ = sender.send(Content::Finished {});
[INFO] [stdout]     |                                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:252:49
[INFO] [stdout]     |
[INFO] [stdout] 252 | ...                   sender.send(Content::Datagram { payload: buf[flow_id_len..read].to_vec() });
[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] 252 |                                                 let _ = sender.send(Content::Datagram { payload: buf[flow_id_len..read].to_vec() });
[INFO] [stdout]     |                                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:295:41
[INFO] [stdout]     |
[INFO] [stdout] 295 | ...                   stream_id_sender.send(stream_id).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] 295 |                                         let _ = stream_id_sender.send(stream_id).await;
[INFO] [stdout]     |                                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:336:33
[INFO] [stdout]     |
[INFO] [stdout] 336 | ...                   conn.stream_shutdown(to_send.stream_id, quiche::Shutdown::Write, 0);
[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] 336 |                                 let _ = conn.stream_shutdown(to_send.stream_id, quiche::Shutdown::Write, 0);
[INFO] [stdout]     |                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:371:37
[INFO] [stdout]     |
[INFO] [stdout] 371 | ...                   stream_id_sender.send(stream_id).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] 371 |                                     let _ = stream_id_sender.send(stream_id).await;
[INFO] [stdout]     |                                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:413:29
[INFO] [stdout]     |
[INFO] [stdout] 413 | ...                   conn.stream_shutdown(to_send.stream_id, quiche::Shutdown::Write, 0);
[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] 413 |                             let _ = conn.stream_shutdown(to_send.stream_id, quiche::Shutdown::Write, 0);
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:501:17
[INFO] [stdout]     |
[INFO] [stdout] 501 |                 http3_sender.send(ToSend { content: Content::Request { headers, stream_id_sender }, finished: false, stream_id: 0});
[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] 501 |                 let _ = http3_sender.send(ToSend { content: Content::Request { headers, stream_id_sender }, finished: false, stream_id: 0});
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:524:37
[INFO] [stdout]     |
[INFO] [stdout] 524 | ...                   stream.write(&b"HTTP/1.1 200 OK\r\n\r\n".to_vec()).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] 524 |                                     let _ = stream.write(&b"HTTP/1.1 200 OK\r\n\r\n".to_vec()).await;
[INFO] [stdout]     |                                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:550:25
[INFO] [stdout]     |
[INFO] [stdout] 550 | ...   http3_sender_clone.send(ToSend { stream_id: stream_id, content: Content::Data { data: buf[..read].to_vec() }, finished: false });
[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] 550 |                         let _ = http3_sender_clone.send(ToSend { stream_id: stream_id, content: Content::Data { data: buf[..read].to_vec() }, finished: false });
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` in tuple element 0 that must be used
[INFO] [stdout]    --> src/client.rs:585:17
[INFO] [stdout]     |
[INFO] [stdout] 585 |                 tokio::join!(read_task, write_task);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` in tuple element 1 that must be used
[INFO] [stdout]    --> src/client.rs:585:17
[INFO] [stdout]     |
[INFO] [stdout] 585 |                 tokio::join!(read_task, write_task);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:595:5
[INFO] [stdout]     |
[INFO] [stdout] 595 |     stream.write(&b"HTTP/1.1 400 Bad Request\r\n\r\n".to_vec()).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] 595 |     let _ = stream.write(&b"HTTP/1.1 400 Bad Request\r\n\r\n".to_vec()).await;
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:681:13
[INFO] [stdout]     |
[INFO] [stdout] 681 |             http3_sender.send(ToSend { content: Content::Request { headers, stream_id_sender }, finished: false, stream_id: 0});
[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] 681 |             let _ = http3_sender.send(ToSend { content: Content::Request { headers, stream_id_sender }, finished: false, stream_id: 0});
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:747:21
[INFO] [stdout]     |
[INFO] [stdout] 747 | ...   http3_sender_clone.send(ToSend { stream_id: stream_id, content: Content::Data { data: buf[..read].to_vec() }, finished: false });
[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] 747 |                     let _ = http3_sender_clone.send(ToSend { stream_id: stream_id, content: Content::Data { data: buf[..read].to_vec() }, finished: false });
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` in tuple element 0 that must be used
[INFO] [stdout]    --> src/client.rs:782:13
[INFO] [stdout]     |
[INFO] [stdout] 782 |             tokio::join!(read_task, write_task);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` in tuple element 1 that must be used
[INFO] [stdout]    --> src/client.rs:782:13
[INFO] [stdout]     |
[INFO] [stdout] 782 |             tokio::join!(read_task, write_task);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:840:45
[INFO] [stdout]     |
[INFO] [stdout] 840 | ...                   http3_sender.send(ToSend { content: Content::Request { headers, stream_id_sender }, finished: false, stream_id: 0});
[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] 840 |                                             let _ = http3_sender.send(ToSend { content: Content::Request { headers, stream_id_sender }, finished: false, stream_id: 0});
[INFO] [stdout]     |                                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:930:37
[INFO] [stdout]     |
[INFO] [stdout] 930 | ...                   http3_sender_clone.send(ToSend { stream_id: flow_id, content: Content::Datagram { payload: data }, finished: false });
[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] 930 |                                     let _ = http3_sender_clone.send(ToSend { stream_id: flow_id, content: Content::Datagram { payload: data }, finished: false });
[INFO] [stdout]     |                                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` in tuple element 0 that must be used
[INFO] [stdout]    --> src/client.rs:939:21
[INFO] [stdout]     |
[INFO] [stdout] 939 |                     tokio::join!(listen_task);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `str::<impl str>::replace` that must be used
[INFO] [stdout]    --> src/client.rs:998:13
[INFO] [stdout]     |
[INFO] [stdout] 998 |             ip_string.replace(":", "%3A"); // encode ':' in IPv6 address in URI
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this returns the replaced string as a new allocation, without modifying the original
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 998 |             let _ = ip_string.replace(":", "%3A"); // encode ':' in IPv6 address in URI
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/server.rs:379:29
[INFO] [stdout]     |
[INFO] [stdout] 379 | ...                   client.conn.stream_shutdown(to_send.stream_id, quiche::Shutdown::Write, 0);
[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] 379 |                             let _ = client.conn.stream_shutdown(to_send.stream_id, quiche::Shutdown::Write, 0);
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/server.rs:511:65
[INFO] [stdout]     |
[INFO] [stdout] 511 | ...   http3_sender_clone_1.send(ToSend { stream_id: flow_id, content: Content::Datagram { payload: data }, finished: false });
[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] 511 |                                                                 let _ = http3_sender_clone_1.send(ToSend { stream_id: flow_id, content: Content::Datagram { payload: data }, finished: false });
[INFO] [stdout]     |                                                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` in tuple element 0 that must be used
[INFO] [stdout]    --> src/server.rs:544:57
[INFO] [stdout]     |
[INFO] [stdout] 544 | ...                   tokio::join!(read_task, write_task);
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` in tuple element 1 that must be used
[INFO] [stdout]    --> src/server.rs:544:57
[INFO] [stdout]     |
[INFO] [stdout] 544 | ...                   tokio::join!(read_task, write_task);
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/server.rs:580:65
[INFO] [stdout]     |
[INFO] [stdout] 580 | ...   http3_sender_clone_1.send(ToSend { stream_id: stream_id, content: Content::Data { data: buf[..read].to_vec() }, finished: false });
[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] 580 |                                                                 let _ = http3_sender_clone_1.send(ToSend { stream_id: stream_id, content: Content::Data { data: buf[..read].to_vec() }, finished: false });
[INFO] [stdout]     |                                                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` in tuple element 0 that must be used
[INFO] [stdout]    --> src/server.rs:612:57
[INFO] [stdout]     |
[INFO] [stdout] 612 | ...                   tokio::join!(read_task, write_task);
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` in tuple element 1 that must be used
[INFO] [stdout]    --> src/server.rs:612:57
[INFO] [stdout]     |
[INFO] [stdout] 612 | ...                   tokio::join!(read_task, write_task);
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/server.rs:747:25
[INFO] [stdout]     |
[INFO] [stdout] 747 |                         client.conn.stream_shutdown(to_send.stream_id, quiche::Shutdown::Write, 0);
[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] 747 |                         let _ = client.conn.stream_shutdown(to_send.stream_id, quiche::Shutdown::Write, 0);
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 53.59s
[INFO] running `Command { std: "docker" "inspect" "6f7fe3251c45669e4907f504eaed813ff92845d1044798002411cdd59daea085", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6f7fe3251c45669e4907f504eaed813ff92845d1044798002411cdd59daea085", kill_on_drop: false }`
[INFO] [stdout] 6f7fe3251c45669e4907f504eaed813ff92845d1044798002411cdd59daea085
[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=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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+1.91.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 1b3706492cdc6c2e70755eaa032e7f4be5d134b890d9ac19f69a4242407fe35f
[INFO] running `Command { std: "docker" "start" "-a" "1b3706492cdc6c2e70755eaa032e7f4be5d134b890d9ac19f69a4242407fe35f", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v1.0.105
[INFO] [stderr]    Compiling getrandom v0.2.8
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling tokio-macros v1.8.2
[INFO] [stderr]    Compiling test-log v0.2.11
[INFO] [stderr]    Compiling tokio v1.20.4
[INFO] [stderr]    Compiling socks5-proto v0.3.2
[INFO] [stderr]    Compiling masquerade-proxy v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Header`
[INFO] [stdout]  --> src/client.rs:2:29
[INFO] [stdout]   |
[INFO] [stdout] 2 | use quiche::h3::{NameValue, Header};
[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: `self`
[INFO] [stdout]  --> src/client.rs:8:25
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::error::{Error, self};
[INFO] [stdout]   |                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `UnboundedReceiver`
[INFO] [stdout]   --> src/client.rs:14:48
[INFO] [stdout]    |
[INFO] [stdout] 14 | use tokio::sync::mpsc::{self, UnboundedSender, UnboundedReceiver};
[INFO] [stdout]    |                                                ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/client.rs:79:13
[INFO] [stdout]    |
[INFO] [stdout] 79 |         let mut listener = TcpListener::bind(bind_addr).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: unused variable: `e`
[INFO] [stdout]    --> src/client.rs:182:29
[INFO] [stdout]     |
[INFO] [stdout] 182 |                         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: `e`
[INFO] [stdout]    --> src/client.rs:345:33
[INFO] [stdout]     |
[INFO] [stdout] 345 | ...                   Err(e) => break,
[INFO] [stdout]     |                           ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `res`
[INFO] [stdout]    --> src/client.rs:488:9
[INFO] [stdout]     |
[INFO] [stdout] 488 |     let res = req.parse(&buf[..pos]).unwrap();
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_res`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/server.rs:484:65
[INFO] [stdout]     |
[INFO] [stdout] 484 | ...                   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]    --> src/server.rs:385:29
[INFO] [stdout]     |
[INFO] [stdout] 385 |                         Err(e) => break,
[INFO] [stdout]     |                             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Finished` is never constructed
[INFO] [stdout]   --> src/server.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | enum Content {
[INFO] [stdout]    |      ------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 30 |     Finished,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Content` has a derived impl for the trait `Debug`, 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]    --> src/client.rs:212:41
[INFO] [stdout]     |
[INFO] [stdout] 212 | ...                   sender.send(Content::Headers { headers: list });
[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] 212 |                                         let _ = sender.send(Content::Headers { headers: list });
[INFO] [stdout]     |                                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:222:45
[INFO] [stdout]     |
[INFO] [stdout] 222 | ...                   sender.send(Content::Data { data: buf[..read].to_vec() });
[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] 222 |                                             let _ = sender.send(Content::Data { data: buf[..read].to_vec() });
[INFO] [stdout]     |                                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:231:41
[INFO] [stdout]     |
[INFO] [stdout] 231 | ...                   sender.send(Content::Finished {});
[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] 231 |                                         let _ = sender.send(Content::Finished {});
[INFO] [stdout]     |                                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:239:41
[INFO] [stdout]     |
[INFO] [stdout] 239 | ...                   sender.send(Content::Finished {});
[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] 239 |                                         let _ = sender.send(Content::Finished {});
[INFO] [stdout]     |                                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:252:49
[INFO] [stdout]     |
[INFO] [stdout] 252 | ...                   sender.send(Content::Datagram { payload: buf[flow_id_len..read].to_vec() });
[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] 252 |                                                 let _ = sender.send(Content::Datagram { payload: buf[flow_id_len..read].to_vec() });
[INFO] [stdout]     |                                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:295:41
[INFO] [stdout]     |
[INFO] [stdout] 295 | ...                   stream_id_sender.send(stream_id).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] 295 |                                         let _ = stream_id_sender.send(stream_id).await;
[INFO] [stdout]     |                                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:336:33
[INFO] [stdout]     |
[INFO] [stdout] 336 | ...                   conn.stream_shutdown(to_send.stream_id, quiche::Shutdown::Write, 0);
[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] 336 |                                 let _ = conn.stream_shutdown(to_send.stream_id, quiche::Shutdown::Write, 0);
[INFO] [stdout]     |                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:371:37
[INFO] [stdout]     |
[INFO] [stdout] 371 | ...                   stream_id_sender.send(stream_id).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] 371 |                                     let _ = stream_id_sender.send(stream_id).await;
[INFO] [stdout]     |                                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:413:29
[INFO] [stdout]     |
[INFO] [stdout] 413 | ...                   conn.stream_shutdown(to_send.stream_id, quiche::Shutdown::Write, 0);
[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] 413 |                             let _ = conn.stream_shutdown(to_send.stream_id, quiche::Shutdown::Write, 0);
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:501:17
[INFO] [stdout]     |
[INFO] [stdout] 501 |                 http3_sender.send(ToSend { content: Content::Request { headers, stream_id_sender }, finished: false, stream_id: 0});
[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] 501 |                 let _ = http3_sender.send(ToSend { content: Content::Request { headers, stream_id_sender }, finished: false, stream_id: 0});
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:524:37
[INFO] [stdout]     |
[INFO] [stdout] 524 | ...                   stream.write(&b"HTTP/1.1 200 OK\r\n\r\n".to_vec()).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] 524 |                                     let _ = stream.write(&b"HTTP/1.1 200 OK\r\n\r\n".to_vec()).await;
[INFO] [stdout]     |                                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:550:25
[INFO] [stdout]     |
[INFO] [stdout] 550 | ...   http3_sender_clone.send(ToSend { stream_id: stream_id, content: Content::Data { data: buf[..read].to_vec() }, finished: false });
[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] 550 |                         let _ = http3_sender_clone.send(ToSend { stream_id: stream_id, content: Content::Data { data: buf[..read].to_vec() }, finished: false });
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` in tuple element 0 that must be used
[INFO] [stdout]    --> src/client.rs:585:17
[INFO] [stdout]     |
[INFO] [stdout] 585 |                 tokio::join!(read_task, write_task);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` in tuple element 1 that must be used
[INFO] [stdout]    --> src/client.rs:585:17
[INFO] [stdout]     |
[INFO] [stdout] 585 |                 tokio::join!(read_task, write_task);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:595:5
[INFO] [stdout]     |
[INFO] [stdout] 595 |     stream.write(&b"HTTP/1.1 400 Bad Request\r\n\r\n".to_vec()).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] 595 |     let _ = stream.write(&b"HTTP/1.1 400 Bad Request\r\n\r\n".to_vec()).await;
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:681:13
[INFO] [stdout]     |
[INFO] [stdout] 681 |             http3_sender.send(ToSend { content: Content::Request { headers, stream_id_sender }, finished: false, stream_id: 0});
[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] 681 |             let _ = http3_sender.send(ToSend { content: Content::Request { headers, stream_id_sender }, finished: false, stream_id: 0});
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:747:21
[INFO] [stdout]     |
[INFO] [stdout] 747 | ...   http3_sender_clone.send(ToSend { stream_id: stream_id, content: Content::Data { data: buf[..read].to_vec() }, finished: false });
[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] 747 |                     let _ = http3_sender_clone.send(ToSend { stream_id: stream_id, content: Content::Data { data: buf[..read].to_vec() }, finished: false });
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` in tuple element 0 that must be used
[INFO] [stdout]    --> src/client.rs:782:13
[INFO] [stdout]     |
[INFO] [stdout] 782 |             tokio::join!(read_task, write_task);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` in tuple element 1 that must be used
[INFO] [stdout]    --> src/client.rs:782:13
[INFO] [stdout]     |
[INFO] [stdout] 782 |             tokio::join!(read_task, write_task);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:840:45
[INFO] [stdout]     |
[INFO] [stdout] 840 | ...                   http3_sender.send(ToSend { content: Content::Request { headers, stream_id_sender }, finished: false, stream_id: 0});
[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] 840 |                                             let _ = http3_sender.send(ToSend { content: Content::Request { headers, stream_id_sender }, finished: false, stream_id: 0});
[INFO] [stdout]     |                                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:930:37
[INFO] [stdout]     |
[INFO] [stdout] 930 | ...                   http3_sender_clone.send(ToSend { stream_id: flow_id, content: Content::Datagram { payload: data }, finished: false });
[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] 930 |                                     let _ = http3_sender_clone.send(ToSend { stream_id: flow_id, content: Content::Datagram { payload: data }, finished: false });
[INFO] [stdout]     |                                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` in tuple element 0 that must be used
[INFO] [stdout]    --> src/client.rs:939:21
[INFO] [stdout]     |
[INFO] [stdout] 939 |                     tokio::join!(listen_task);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `str::<impl str>::replace` that must be used
[INFO] [stdout]    --> src/client.rs:998:13
[INFO] [stdout]     |
[INFO] [stdout] 998 |             ip_string.replace(":", "%3A"); // encode ':' in IPv6 address in URI
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this returns the replaced string as a new allocation, without modifying the original
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 998 |             let _ = ip_string.replace(":", "%3A"); // encode ':' in IPv6 address in URI
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/server.rs:379:29
[INFO] [stdout]     |
[INFO] [stdout] 379 | ...                   client.conn.stream_shutdown(to_send.stream_id, quiche::Shutdown::Write, 0);
[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] 379 |                             let _ = client.conn.stream_shutdown(to_send.stream_id, quiche::Shutdown::Write, 0);
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/server.rs:511:65
[INFO] [stdout]     |
[INFO] [stdout] 511 | ...   http3_sender_clone_1.send(ToSend { stream_id: flow_id, content: Content::Datagram { payload: data }, finished: false });
[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] 511 |                                                                 let _ = http3_sender_clone_1.send(ToSend { stream_id: flow_id, content: Content::Datagram { payload: data }, finished: false });
[INFO] [stdout]     |                                                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` in tuple element 0 that must be used
[INFO] [stdout]    --> src/server.rs:544:57
[INFO] [stdout]     |
[INFO] [stdout] 544 | ...                   tokio::join!(read_task, write_task);
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` in tuple element 1 that must be used
[INFO] [stdout]    --> src/server.rs:544:57
[INFO] [stdout]     |
[INFO] [stdout] 544 | ...                   tokio::join!(read_task, write_task);
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/server.rs:580:65
[INFO] [stdout]     |
[INFO] [stdout] 580 | ...   http3_sender_clone_1.send(ToSend { stream_id: stream_id, content: Content::Data { data: buf[..read].to_vec() }, finished: false });
[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] 580 |                                                                 let _ = http3_sender_clone_1.send(ToSend { stream_id: stream_id, content: Content::Data { data: buf[..read].to_vec() }, finished: false });
[INFO] [stdout]     |                                                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` in tuple element 0 that must be used
[INFO] [stdout]    --> src/server.rs:612:57
[INFO] [stdout]     |
[INFO] [stdout] 612 | ...                   tokio::join!(read_task, write_task);
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` in tuple element 1 that must be used
[INFO] [stdout]    --> src/server.rs:612:57
[INFO] [stdout]     |
[INFO] [stdout] 612 | ...                   tokio::join!(read_task, write_task);
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/server.rs:747:25
[INFO] [stdout]     |
[INFO] [stdout] 747 |                         client.conn.stream_shutdown(to_send.stream_id, quiche::Shutdown::Write, 0);
[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] 747 |                         let _ = client.conn.stream_shutdown(to_send.stream_id, quiche::Shutdown::Write, 0);
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Header`
[INFO] [stdout]  --> src/client.rs:2:29
[INFO] [stdout]   |
[INFO] [stdout] 2 | use quiche::h3::{NameValue, Header};
[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: `self`
[INFO] [stdout]  --> src/client.rs:8:25
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::error::{Error, self};
[INFO] [stdout]   |                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `UnboundedReceiver`
[INFO] [stdout]   --> src/client.rs:14:48
[INFO] [stdout]    |
[INFO] [stdout] 14 | use tokio::sync::mpsc::{self, UnboundedSender, UnboundedReceiver};
[INFO] [stdout]    |                                                ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/client.rs:79:13
[INFO] [stdout]    |
[INFO] [stdout] 79 |         let mut listener = TcpListener::bind(bind_addr).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: unused import: `masquerade_proxy::client`
[INFO] [stdout]  --> tests/integration_test.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use masquerade_proxy::client;
[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: `masquerade_proxy::server`
[INFO] [stdout]  --> tests/integration_test.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use masquerade_proxy::server;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log::*`
[INFO] [stdout]  --> tests/integration_test.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use log::*;
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `TcpListener`, `TcpSocket`, and `TcpStream`
[INFO] [stdout]  --> tests/integration_test.rs:5:18
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tokio::net::{TcpStream, TcpSocket, TcpListener};
[INFO] [stdout]   |                  ^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncReadExt` and `AsyncWriteExt`
[INFO] [stdout]  --> tests/integration_test.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::io::{AsyncWriteExt, AsyncReadExt};
[INFO] [stdout]   |                 ^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `server_task`
[INFO] [stdout]   --> tests/common/mod.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let server_task = tokio::spawn(async move {
[INFO] [stdout]    |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_server_task`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `client_task`
[INFO] [stdout]   --> tests/common/mod.rs:29:9
[INFO] [stdout]    |
[INFO] [stdout] 29 |     let client_task = tokio::spawn(async move {
[INFO] [stdout]    |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_client_task`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `client_addr`
[INFO] [stdout]   --> tests/common/mod.rs:45:25
[INFO] [stdout]    |
[INFO] [stdout] 45 |     let (server_stream, client_addr) = listener.accept().await?;
[INFO] [stdout]    |                         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_client_addr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/client.rs:182:29
[INFO] [stdout]     |
[INFO] [stdout] 182 |                         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: `e`
[INFO] [stdout]    --> src/client.rs:345:33
[INFO] [stdout]     |
[INFO] [stdout] 345 | ...                   Err(e) => break,
[INFO] [stdout]     |                           ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `server_task`
[INFO] [stdout]    --> tests/common/mod.rs:100:9
[INFO] [stdout]     |
[INFO] [stdout] 100 |     let server_task = tokio::spawn(async move {
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_server_task`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `client_task`
[INFO] [stdout]    --> tests/common/mod.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |     let client_task = tokio::spawn(async move {
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_client_task`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `client_addr`
[INFO] [stdout]    --> tests/common/mod.rs:128:25
[INFO] [stdout]     |
[INFO] [stdout] 128 |     let (server_stream, client_addr) = listener.accept().await?;
[INFO] [stdout]     |                         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_client_addr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `server_task`
[INFO] [stdout]    --> tests/common/mod.rs:154:9
[INFO] [stdout]     |
[INFO] [stdout] 154 |     let server_task = tokio::spawn(async move {
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_server_task`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `client_task`
[INFO] [stdout]    --> tests/common/mod.rs:157:9
[INFO] [stdout]     |
[INFO] [stdout] 157 |     let client_task = tokio::spawn(async move {
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_client_task`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> tests/common/mod.rs:166:9
[INFO] [stdout]     |
[INFO] [stdout] 166 |     let mut request: Vec<u8> = vec![5, 3, 0, 1, 0, 0, 0, 0, 0, 0];
[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]    --> tests/common/mod.rs:196:9
[INFO] [stdout]     |
[INFO] [stdout] 196 |     let mut handshake: Vec<u8> = vec![5, 1, 0]; // Ask only for no authentication method
[INFO] [stdout]     |         ----^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `client_stream`
[INFO] [stdout]   --> tests/integration_test.rs:26:14
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let (mut client_stream, mut server_stream) =  common::assert_stream_connected(client_stream, server_stream, 84783).await;
[INFO] [stdout]    |              ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_client_stream`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `server_stream`
[INFO] [stdout]   --> tests/integration_test.rs:26:33
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let (mut client_stream, mut server_stream) =  common::assert_stream_connected(client_stream, server_stream, 84783).await;
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_server_stream`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> tests/integration_test.rs:21:10
[INFO] [stdout]    |
[INFO] [stdout] 21 |     let (mut client_stream, mut server_stream) = timeout(timeout_duration, common::setup_http1_client()).await.unwrap().unwrap();
[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]   --> tests/integration_test.rs:21:29
[INFO] [stdout]    |
[INFO] [stdout] 21 |     let (mut client_stream, mut server_stream) = timeout(timeout_duration, common::setup_http1_client()).await.unwrap().unwrap();
[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]   --> tests/integration_test.rs:23:10
[INFO] [stdout]    |
[INFO] [stdout] 23 |     let (mut client_stream, mut server_stream) =  common::assert_stream_connected(client_stream, server_stream, 74783).await;
[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]   --> tests/integration_test.rs:23:29
[INFO] [stdout]    |
[INFO] [stdout] 23 |     let (mut client_stream, mut server_stream) =  common::assert_stream_connected(client_stream, server_stream, 74783).await;
[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]   --> tests/integration_test.rs:24:10
[INFO] [stdout]    |
[INFO] [stdout] 24 |     let (mut client_stream, mut server_stream) = common::assert_stream_connected(server_stream, client_stream, 84783).await;
[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]   --> tests/integration_test.rs:24:29
[INFO] [stdout]    |
[INFO] [stdout] 24 |     let (mut client_stream, mut server_stream) = common::assert_stream_connected(server_stream, client_stream, 84783).await;
[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]   --> tests/integration_test.rs:25:10
[INFO] [stdout]    |
[INFO] [stdout] 25 |     let (mut client_stream, mut server_stream) = common::assert_stream_connected(server_stream, client_stream, 84783).await;
[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]   --> tests/integration_test.rs:25:29
[INFO] [stdout]    |
[INFO] [stdout] 25 |     let (mut client_stream, mut server_stream) = common::assert_stream_connected(server_stream, client_stream, 84783).await;
[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]   --> tests/integration_test.rs:26:10
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let (mut client_stream, mut server_stream) =  common::assert_stream_connected(client_stream, server_stream, 84783).await;
[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]   --> tests/integration_test.rs:26:29
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let (mut client_stream, mut server_stream) =  common::assert_stream_connected(client_stream, server_stream, 84783).await;
[INFO] [stdout]    |                             ----^^^^^^^^^^^^^
[INFO] [stdout]    |                             |
[INFO] [stdout]    |                             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `client_stream`
[INFO] [stdout]   --> tests/integration_test.rs:41:14
[INFO] [stdout]    |
[INFO] [stdout] 41 |     let (mut client_stream, mut server_stream) =  common::assert_stream_connected(client_stream, server_stream, 84783).await;
[INFO] [stdout]    |              ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_client_stream`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `server_stream`
[INFO] [stdout]   --> tests/integration_test.rs:41:33
[INFO] [stdout]    |
[INFO] [stdout] 41 |     let (mut client_stream, mut server_stream) =  common::assert_stream_connected(client_stream, server_stream, 84783).await;
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_server_stream`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> tests/integration_test.rs:36:10
[INFO] [stdout]    |
[INFO] [stdout] 36 |     let (mut client_stream, mut server_stream) = timeout(timeout_duration, common::setup_socks5_tcp_client()).await.unwrap().unwrap();
[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]   --> tests/integration_test.rs:36:29
[INFO] [stdout]    |
[INFO] [stdout] 36 |     let (mut client_stream, mut server_stream) = timeout(timeout_duration, common::setup_socks5_tcp_client()).await.unwrap().unwrap();
[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]   --> tests/integration_test.rs:38:10
[INFO] [stdout]    |
[INFO] [stdout] 38 |     let (mut client_stream, mut server_stream) =  common::assert_stream_connected(client_stream, server_stream, 74783).await;
[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]   --> tests/integration_test.rs:38:29
[INFO] [stdout]    |
[INFO] [stdout] 38 |     let (mut client_stream, mut server_stream) =  common::assert_stream_connected(client_stream, server_stream, 74783).await;
[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]   --> tests/integration_test.rs:39:10
[INFO] [stdout]    |
[INFO] [stdout] 39 |     let (mut client_stream, mut server_stream) = common::assert_stream_connected(server_stream, client_stream, 84783).await;
[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]   --> tests/integration_test.rs:39:29
[INFO] [stdout]    |
[INFO] [stdout] 39 |     let (mut client_stream, mut server_stream) = common::assert_stream_connected(server_stream, client_stream, 84783).await;
[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]   --> tests/integration_test.rs:40:10
[INFO] [stdout]    |
[INFO] [stdout] 40 |     let (mut client_stream, mut server_stream) = common::assert_stream_connected(server_stream, client_stream, 84783).await;
[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]   --> tests/integration_test.rs:40:29
[INFO] [stdout]    |
[INFO] [stdout] 40 |     let (mut client_stream, mut server_stream) = common::assert_stream_connected(server_stream, client_stream, 84783).await;
[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]   --> tests/integration_test.rs:41:10
[INFO] [stdout]    |
[INFO] [stdout] 41 |     let (mut client_stream, mut server_stream) =  common::assert_stream_connected(client_stream, server_stream, 84783).await;
[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]   --> tests/integration_test.rs:41:29
[INFO] [stdout]    |
[INFO] [stdout] 41 |     let (mut client_stream, mut server_stream) =  common::assert_stream_connected(client_stream, server_stream, 84783).await;
[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]   --> tests/integration_test.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 52 |     let mut client_socket = timeout(timeout_duration, common::setup_socks5_udp_client()).await.unwrap().unwrap();
[INFO] [stdout]    |         ----^^^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> tests/common/mod.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 |         server.run().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] 27 |         let _ = server.run().await;
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> tests/common/mod.rs:30:9
[INFO] [stdout]    |
[INFO] [stdout] 30 |         client.run(&server_addr.to_string()).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] 30 |         let _ = client.run(&server_addr.to_string()).await;
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> tests/common/mod.rs:101:9
[INFO] [stdout]     |
[INFO] [stdout] 101 |         server.run().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] 101 |         let _ = server.run().await;
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> tests/common/mod.rs:104:9
[INFO] [stdout]     |
[INFO] [stdout] 104 |         client.run(&server_addr.to_string()).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] 104 |         let _ = client.run(&server_addr.to_string()).await;
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> tests/common/mod.rs:155:9
[INFO] [stdout]     |
[INFO] [stdout] 155 |         server.run().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] 155 |         let _ = server.run().await;
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> tests/common/mod.rs:158:9
[INFO] [stdout]     |
[INFO] [stdout] 158 |         client.run(&server_addr.to_string()).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] 158 |         let _ = client.run(&server_addr.to_string()).await;
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `res`
[INFO] [stdout]    --> src/client.rs:488:9
[INFO] [stdout]     |
[INFO] [stdout] 488 |     let res = req.parse(&buf[..pos]).unwrap();
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_res`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/server.rs:484:65
[INFO] [stdout]     |
[INFO] [stdout] 484 | ...                   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]    --> src/server.rs:385:29
[INFO] [stdout]     |
[INFO] [stdout] 385 |                         Err(e) => break,
[INFO] [stdout]     |                             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Finished` is never constructed
[INFO] [stdout]   --> src/server.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | enum Content {
[INFO] [stdout]    |      ------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 30 |     Finished,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Content` has a derived impl for the trait `Debug`, 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]    --> src/client.rs:212:41
[INFO] [stdout]     |
[INFO] [stdout] 212 | ...                   sender.send(Content::Headers { headers: list });
[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] 212 |                                         let _ = sender.send(Content::Headers { headers: list });
[INFO] [stdout]     |                                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:222:45
[INFO] [stdout]     |
[INFO] [stdout] 222 | ...                   sender.send(Content::Data { data: buf[..read].to_vec() });
[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] 222 |                                             let _ = sender.send(Content::Data { data: buf[..read].to_vec() });
[INFO] [stdout]     |                                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:231:41
[INFO] [stdout]     |
[INFO] [stdout] 231 | ...                   sender.send(Content::Finished {});
[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] 231 |                                         let _ = sender.send(Content::Finished {});
[INFO] [stdout]     |                                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:239:41
[INFO] [stdout]     |
[INFO] [stdout] 239 | ...                   sender.send(Content::Finished {});
[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] 239 |                                         let _ = sender.send(Content::Finished {});
[INFO] [stdout]     |                                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:252:49
[INFO] [stdout]     |
[INFO] [stdout] 252 | ...                   sender.send(Content::Datagram { payload: buf[flow_id_len..read].to_vec() });
[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] 252 |                                                 let _ = sender.send(Content::Datagram { payload: buf[flow_id_len..read].to_vec() });
[INFO] [stdout]     |                                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:295:41
[INFO] [stdout]     |
[INFO] [stdout] 295 | ...                   stream_id_sender.send(stream_id).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] 295 |                                         let _ = stream_id_sender.send(stream_id).await;
[INFO] [stdout]     |                                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:336:33
[INFO] [stdout]     |
[INFO] [stdout] 336 | ...                   conn.stream_shutdown(to_send.stream_id, quiche::Shutdown::Write, 0);
[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] 336 |                                 let _ = conn.stream_shutdown(to_send.stream_id, quiche::Shutdown::Write, 0);
[INFO] [stdout]     |                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:371:37
[INFO] [stdout]     |
[INFO] [stdout] 371 | ...                   stream_id_sender.send(stream_id).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] 371 |                                     let _ = stream_id_sender.send(stream_id).await;
[INFO] [stdout]     |                                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:413:29
[INFO] [stdout]     |
[INFO] [stdout] 413 | ...                   conn.stream_shutdown(to_send.stream_id, quiche::Shutdown::Write, 0);
[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] 413 |                             let _ = conn.stream_shutdown(to_send.stream_id, quiche::Shutdown::Write, 0);
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:501:17
[INFO] [stdout]     |
[INFO] [stdout] 501 |                 http3_sender.send(ToSend { content: Content::Request { headers, stream_id_sender }, finished: false, stream_id: 0});
[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] 501 |                 let _ = http3_sender.send(ToSend { content: Content::Request { headers, stream_id_sender }, finished: false, stream_id: 0});
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:524:37
[INFO] [stdout]     |
[INFO] [stdout] 524 | ...                   stream.write(&b"HTTP/1.1 200 OK\r\n\r\n".to_vec()).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] 524 |                                     let _ = stream.write(&b"HTTP/1.1 200 OK\r\n\r\n".to_vec()).await;
[INFO] [stdout]     |                                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:550:25
[INFO] [stdout]     |
[INFO] [stdout] 550 | ...   http3_sender_clone.send(ToSend { stream_id: stream_id, content: Content::Data { data: buf[..read].to_vec() }, finished: false });
[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] 550 |                         let _ = http3_sender_clone.send(ToSend { stream_id: stream_id, content: Content::Data { data: buf[..read].to_vec() }, finished: false });
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` in tuple element 0 that must be used
[INFO] [stdout]    --> src/client.rs:585:17
[INFO] [stdout]     |
[INFO] [stdout] 585 |                 tokio::join!(read_task, write_task);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` in tuple element 1 that must be used
[INFO] [stdout]    --> src/client.rs:585:17
[INFO] [stdout]     |
[INFO] [stdout] 585 |                 tokio::join!(read_task, write_task);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:595:5
[INFO] [stdout]     |
[INFO] [stdout] 595 |     stream.write(&b"HTTP/1.1 400 Bad Request\r\n\r\n".to_vec()).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] 595 |     let _ = stream.write(&b"HTTP/1.1 400 Bad Request\r\n\r\n".to_vec()).await;
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:681:13
[INFO] [stdout]     |
[INFO] [stdout] 681 |             http3_sender.send(ToSend { content: Content::Request { headers, stream_id_sender }, finished: false, stream_id: 0});
[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] 681 |             let _ = http3_sender.send(ToSend { content: Content::Request { headers, stream_id_sender }, finished: false, stream_id: 0});
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:747:21
[INFO] [stdout]     |
[INFO] [stdout] 747 | ...   http3_sender_clone.send(ToSend { stream_id: stream_id, content: Content::Data { data: buf[..read].to_vec() }, finished: false });
[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] 747 |                     let _ = http3_sender_clone.send(ToSend { stream_id: stream_id, content: Content::Data { data: buf[..read].to_vec() }, finished: false });
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` in tuple element 0 that must be used
[INFO] [stdout]    --> src/client.rs:782:13
[INFO] [stdout]     |
[INFO] [stdout] 782 |             tokio::join!(read_task, write_task);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` in tuple element 1 that must be used
[INFO] [stdout]    --> src/client.rs:782:13
[INFO] [stdout]     |
[INFO] [stdout] 782 |             tokio::join!(read_task, write_task);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:840:45
[INFO] [stdout]     |
[INFO] [stdout] 840 | ...                   http3_sender.send(ToSend { content: Content::Request { headers, stream_id_sender }, finished: false, stream_id: 0});
[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] 840 |                                             let _ = http3_sender.send(ToSend { content: Content::Request { headers, stream_id_sender }, finished: false, stream_id: 0});
[INFO] [stdout]     |                                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/client.rs:930:37
[INFO] [stdout]     |
[INFO] [stdout] 930 | ...                   http3_sender_clone.send(ToSend { stream_id: flow_id, content: Content::Datagram { payload: data }, finished: false });
[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] 930 |                                     let _ = http3_sender_clone.send(ToSend { stream_id: flow_id, content: Content::Datagram { payload: data }, finished: false });
[INFO] [stdout]     |                                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` in tuple element 0 that must be used
[INFO] [stdout]    --> src/client.rs:939:21
[INFO] [stdout]     |
[INFO] [stdout] 939 |                     tokio::join!(listen_task);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `str::<impl str>::replace` that must be used
[INFO] [stdout]    --> src/client.rs:998:13
[INFO] [stdout]     |
[INFO] [stdout] 998 |             ip_string.replace(":", "%3A"); // encode ':' in IPv6 address in URI
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this returns the replaced string as a new allocation, without modifying the original
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 998 |             let _ = ip_string.replace(":", "%3A"); // encode ':' in IPv6 address in URI
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/server.rs:379:29
[INFO] [stdout]     |
[INFO] [stdout] 379 | ...                   client.conn.stream_shutdown(to_send.stream_id, quiche::Shutdown::Write, 0);
[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] 379 |                             let _ = client.conn.stream_shutdown(to_send.stream_id, quiche::Shutdown::Write, 0);
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/server.rs:511:65
[INFO] [stdout]     |
[INFO] [stdout] 511 | ...   http3_sender_clone_1.send(ToSend { stream_id: flow_id, content: Content::Datagram { payload: data }, finished: false });
[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] 511 |                                                                 let _ = http3_sender_clone_1.send(ToSend { stream_id: flow_id, content: Content::Datagram { payload: data }, finished: false });
[INFO] [stdout]     |                                                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` in tuple element 0 that must be used
[INFO] [stdout]    --> src/server.rs:544:57
[INFO] [stdout]     |
[INFO] [stdout] 544 | ...                   tokio::join!(read_task, write_task);
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` in tuple element 1 that must be used
[INFO] [stdout]    --> src/server.rs:544:57
[INFO] [stdout]     |
[INFO] [stdout] 544 | ...                   tokio::join!(read_task, write_task);
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/server.rs:580:65
[INFO] [stdout]     |
[INFO] [stdout] 580 | ...   http3_sender_clone_1.send(ToSend { stream_id: stream_id, content: Content::Data { data: buf[..read].to_vec() }, finished: false });
[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] 580 |                                                                 let _ = http3_sender_clone_1.send(ToSend { stream_id: stream_id, content: Content::Data { data: buf[..read].to_vec() }, finished: false });
[INFO] [stdout]     |                                                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` in tuple element 0 that must be used
[INFO] [stdout]    --> src/server.rs:612:57
[INFO] [stdout]     |
[INFO] [stdout] 612 | ...                   tokio::join!(read_task, write_task);
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` in tuple element 1 that must be used
[INFO] [stdout]    --> src/server.rs:612:57
[INFO] [stdout]     |
[INFO] [stdout] 612 | ...                   tokio::join!(read_task, write_task);
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/server.rs:747:25
[INFO] [stdout]     |
[INFO] [stdout] 747 |                         client.conn.stream_shutdown(to_send.stream_id, quiche::Shutdown::Write, 0);
[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] 747 |                         let _ = client.conn.stream_shutdown(to_send.stream_id, quiche::Shutdown::Write, 0);
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 20.07s
[INFO] running `Command { std: "docker" "inspect" "1b3706492cdc6c2e70755eaa032e7f4be5d134b890d9ac19f69a4242407fe35f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1b3706492cdc6c2e70755eaa032e7f4be5d134b890d9ac19f69a4242407fe35f", kill_on_drop: false }`
[INFO] [stdout] 1b3706492cdc6c2e70755eaa032e7f4be5d134b890d9ac19f69a4242407fe35f
[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=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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+1.91.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] c72db746e202973a8a35604edf2984261f92e01fe5a8b9afc1c033e92d84c430
[INFO] running `Command { std: "docker" "start" "-a" "c72db746e202973a8a35604edf2984261f92e01fe5a8b9afc1c033e92d84c430", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `Header`
[INFO] [stderr]  --> src/client.rs:2:29
[INFO] [stderr]   |
[INFO] [stderr] 2 | use quiche::h3::{NameValue, Header};
[INFO] [stderr]   |                             ^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `self`
[INFO] [stderr]  --> src/client.rs:8:25
[INFO] [stderr]   |
[INFO] [stderr] 8 | use std::error::{Error, self};
[INFO] [stderr]   |                         ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `UnboundedReceiver`
[INFO] [stderr]   --> src/client.rs:14:48
[INFO] [stderr]    |
[INFO] [stderr] 14 | use tokio::sync::mpsc::{self, UnboundedSender, UnboundedReceiver};
[INFO] [stderr]    |                                                ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/client.rs:79:13
[INFO] [stderr]    |
[INFO] [stderr] 79 |         let mut listener = TcpListener::bind(bind_addr).await?;
[INFO] [stderr]    |             ----^^^^^^^^
[INFO] [stderr]    |             |
[INFO] [stderr]    |             help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e`
[INFO] [stderr]    --> src/client.rs:182:29
[INFO] [stderr]     |
[INFO] [stderr] 182 |                         Err(e) => {
[INFO] [stderr]     |                             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e`
[INFO] [stderr]    --> src/client.rs:345:33
[INFO] [stderr]     |
[INFO] [stderr] 345 | ...                   Err(e) => break,
[INFO] [stderr]     |                           ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `res`
[INFO] [stderr]    --> src/client.rs:488:9
[INFO] [stderr]     |
[INFO] [stderr] 488 |     let res = req.parse(&buf[..pos]).unwrap();
[INFO] [stderr]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_res`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e`
[INFO] [stderr]    --> src/server.rs:484:65
[INFO] [stderr]     |
[INFO] [stderr] 484 | ...                   Err(e) => {
[INFO] [stderr]     |                           ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e`
[INFO] [stderr]    --> src/server.rs:385:29
[INFO] [stderr]     |
[INFO] [stderr] 385 |                         Err(e) => break,
[INFO] [stderr]     |                             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `Finished` is never constructed
[INFO] [stderr]   --> src/server.rs:30:5
[INFO] [stderr]    |
[INFO] [stderr] 20 | enum Content {
[INFO] [stderr]    |      ------- variant in this enum
[INFO] [stderr] ...
[INFO] [stderr] 30 |     Finished,
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `Content` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/client.rs:212:41
[INFO] [stderr]     |
[INFO] [stderr] 212 | ...                   sender.send(Content::Headers { headers: list });
[INFO] [stderr]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 212 |                                         let _ = sender.send(Content::Headers { headers: list });
[INFO] [stderr]     |                                         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/client.rs:222:45
[INFO] [stderr]     |
[INFO] [stderr] 222 | ...                   sender.send(Content::Data { data: buf[..read].to_vec() });
[INFO] [stderr]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 222 |                                             let _ = sender.send(Content::Data { data: buf[..read].to_vec() });
[INFO] [stderr]     |                                             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/client.rs:231:41
[INFO] [stderr]     |
[INFO] [stderr] 231 | ...                   sender.send(Content::Finished {});
[INFO] [stderr]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 231 |                                         let _ = sender.send(Content::Finished {});
[INFO] [stderr]     |                                         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/client.rs:239:41
[INFO] [stderr]     |
[INFO] [stderr] 239 | ...                   sender.send(Content::Finished {});
[INFO] [stderr]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 239 |                                         let _ = sender.send(Content::Finished {});
[INFO] [stderr]     |                                         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/client.rs:252:49
[INFO] [stderr]     |
[INFO] [stderr] 252 | ...                   sender.send(Content::Datagram { payload: buf[flow_id_len..read].to_vec() });
[INFO] [stderr]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 252 |                                                 let _ = sender.send(Content::Datagram { payload: buf[flow_id_len..read].to_vec() });
[INFO] [stderr]     |                                                 +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/client.rs:295:41
[INFO] [stderr]     |
[INFO] [stderr] 295 | ...                   stream_id_sender.send(stream_id).await;
[INFO] [stderr]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 295 |                                         let _ = stream_id_sender.send(stream_id).await;
[INFO] [stderr]     |                                         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/client.rs:336:33
[INFO] [stderr]     |
[INFO] [stderr] 336 | ...                   conn.stream_shutdown(to_send.stream_id, quiche::Shutdown::Write, 0);
[INFO] [stderr]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 336 |                                 let _ = conn.stream_shutdown(to_send.stream_id, quiche::Shutdown::Write, 0);
[INFO] [stderr]     |                                 +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/client.rs:371:37
[INFO] [stderr]     |
[INFO] [stderr] 371 | ...                   stream_id_sender.send(stream_id).await;
[INFO] [stderr]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 371 |                                     let _ = stream_id_sender.send(stream_id).await;
[INFO] [stderr]     |                                     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/client.rs:413:29
[INFO] [stderr]     |
[INFO] [stderr] 413 | ...                   conn.stream_shutdown(to_send.stream_id, quiche::Shutdown::Write, 0);
[INFO] [stderr]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 413 |                             let _ = conn.stream_shutdown(to_send.stream_id, quiche::Shutdown::Write, 0);
[INFO] [stderr]     |                             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/client.rs:501:17
[INFO] [stderr]     |
[INFO] [stderr] 501 |                 http3_sender.send(ToSend { content: Content::Request { headers, stream_id_sender }, finished: false, stream_id: 0});
[INFO] [stderr]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 501 |                 let _ = http3_sender.send(ToSend { content: Content::Request { headers, stream_id_sender }, finished: false, stream_id: 0});
[INFO] [stderr]     |                 +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/client.rs:524:37
[INFO] [stderr]     |
[INFO] [stderr] 524 | ...                   stream.write(&b"HTTP/1.1 200 OK\r\n\r\n".to_vec()).await;
[INFO] [stderr]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 524 |                                     let _ = stream.write(&b"HTTP/1.1 200 OK\r\n\r\n".to_vec()).await;
[INFO] [stderr]     |                                     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/client.rs:550:25
[INFO] [stderr]     |
[INFO] [stderr] 550 | ...   http3_sender_clone.send(ToSend { stream_id: stream_id, content: Content::Data { data: buf[..read].to_vec() }, finished: false });
[INFO] [stderr]     |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 550 |                         let _ = http3_sender_clone.send(ToSend { stream_id: stream_id, content: Content::Data { data: buf[..read].to_vec() }, finished: false });
[INFO] [stderr]     |                         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` in tuple element 0 that must be used
[INFO] [stderr]    --> src/client.rs:585:17
[INFO] [stderr]     |
[INFO] [stderr] 585 |                 tokio::join!(read_task, write_task);
[INFO] [stderr]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` in tuple element 1 that must be used
[INFO] [stderr]    --> src/client.rs:585:17
[INFO] [stderr]     |
[INFO] [stderr] 585 |                 tokio::join!(read_task, write_task);
[INFO] [stderr]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/client.rs:595:5
[INFO] [stderr]     |
[INFO] [stderr] 595 |     stream.write(&b"HTTP/1.1 400 Bad Request\r\n\r\n".to_vec()).await;
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 595 |     let _ = stream.write(&b"HTTP/1.1 400 Bad Request\r\n\r\n".to_vec()).await;
[INFO] [stderr]     |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/client.rs:681:13
[INFO] [stderr]     |
[INFO] [stderr] 681 |             http3_sender.send(ToSend { content: Content::Request { headers, stream_id_sender }, finished: false, stream_id: 0});
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 681 |             let _ = http3_sender.send(ToSend { content: Content::Request { headers, stream_id_sender }, finished: false, stream_id: 0});
[INFO] [stderr]     |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/client.rs:747:21
[INFO] [stderr]     |
[INFO] [stderr] 747 | ...   http3_sender_clone.send(ToSend { stream_id: stream_id, content: Content::Data { data: buf[..read].to_vec() }, finished: false });
[INFO] [stderr]     |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 747 |                     let _ = http3_sender_clone.send(ToSend { stream_id: stream_id, content: Content::Data { data: buf[..read].to_vec() }, finished: false });
[INFO] [stderr]     |                     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` in tuple element 0 that must be used
[INFO] [stderr]    --> src/client.rs:782:13
[INFO] [stderr]     |
[INFO] [stderr] 782 |             tokio::join!(read_task, write_task);
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` in tuple element 1 that must be used
[INFO] [stderr]    --> src/client.rs:782:13
[INFO] [stderr]     |
[INFO] [stderr] 782 |             tokio::join!(read_task, write_task);
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/client.rs:840:45
[INFO] [stderr]     |
[INFO] [stderr] 840 | ...                   http3_sender.send(ToSend { content: Content::Request { headers, stream_id_sender }, finished: false, stream_id: 0});
[INFO] [stderr]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 840 |                                             let _ = http3_sender.send(ToSend { content: Content::Request { headers, stream_id_sender }, finished: false, stream_id: 0});
[INFO] [stderr]     |                                             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/client.rs:930:37
[INFO] [stderr]     |
[INFO] [stderr] 930 | ...                   http3_sender_clone.send(ToSend { stream_id: flow_id, content: Content::Datagram { payload: data }, finished: false });
[INFO] [stderr]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 930 |                                     let _ = http3_sender_clone.send(ToSend { stream_id: flow_id, content: Content::Datagram { payload: data }, finished: false });
[INFO] [stderr]     |                                     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` in tuple element 0 that must be used
[INFO] [stderr]    --> src/client.rs:939:21
[INFO] [stderr]     |
[INFO] [stderr] 939 |                     tokio::join!(listen_task);
[INFO] [stderr]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] 
[INFO] [stderr] warning: unused return value of `str::<impl str>::replace` that must be used
[INFO] [stderr]    --> src/client.rs:998:13
[INFO] [stderr]     |
[INFO] [stderr] 998 |             ip_string.replace(":", "%3A"); // encode ':' in IPv6 address in URI
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this returns the replaced string as a new allocation, without modifying the original
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 998 |             let _ = ip_string.replace(":", "%3A"); // encode ':' in IPv6 address in URI
[INFO] [stderr]     |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/server.rs:379:29
[INFO] [stderr]     |
[INFO] [stderr] 379 | ...                   client.conn.stream_shutdown(to_send.stream_id, quiche::Shutdown::Write, 0);
[INFO] [stderr]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 379 |                             let _ = client.conn.stream_shutdown(to_send.stream_id, quiche::Shutdown::Write, 0);
[INFO] [stderr]     |                             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/server.rs:511:65
[INFO] [stderr]     |
[INFO] [stderr] 511 | ...   http3_sender_clone_1.send(ToSend { stream_id: flow_id, content: Content::Datagram { payload: data }, finished: false });
[INFO] [stderr]     |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 511 |                                                                 let _ = http3_sender_clone_1.send(ToSend { stream_id: flow_id, content: Content::Datagram { payload: data }, finished: false });
[INFO] [stderr]     |                                                                 +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` in tuple element 0 that must be used
[INFO] [stderr]    --> src/server.rs:544:57
[INFO] [stderr]     |
[INFO] [stderr] 544 | ...                   tokio::join!(read_task, write_task);
[INFO] [stderr]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` in tuple element 1 that must be used
[INFO] [stderr]    --> src/server.rs:544:57
[INFO] [stderr]     |
[INFO] [stderr] 544 | ...                   tokio::join!(read_task, write_task);
[INFO] [stderr]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/server.rs:580:65
[INFO] [stderr]     |
[INFO] [stderr] 580 | ...   http3_sender_clone_1.send(ToSend { stream_id: stream_id, content: Content::Data { data: buf[..read].to_vec() }, finished: false });
[INFO] [stderr]     |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 580 |                                                                 let _ = http3_sender_clone_1.send(ToSend { stream_id: stream_id, content: Content::Data { data: buf[..read].to_vec() }, finished: false });
[INFO] [stderr]     |                                                                 +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` in tuple element 0 that must be used
[INFO] [stderr]    --> src/server.rs:612:57
[INFO] [stderr]     |
[INFO] [stderr] 612 | ...                   tokio::join!(read_task, write_task);
[INFO] [stderr]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` in tuple element 1 that must be used
[INFO] [stderr]    --> src/server.rs:612:57
[INFO] [stderr]     |
[INFO] [stderr] 612 | ...                   tokio::join!(read_task, write_task);
[INFO] [stderr]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/server.rs:747:25
[INFO] [stderr]     |
[INFO] [stderr] 747 |                         client.conn.stream_shutdown(to_send.stream_id, quiche::Shutdown::Write, 0);
[INFO] [stderr]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 747 |                         let _ = client.conn.stream_shutdown(to_send.stream_id, quiche::Shutdown::Write, 0);
[INFO] [stderr]     |                         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: `masquerade-proxy` (lib) generated 41 warnings (run `cargo fix --lib -p masquerade-proxy` to apply 4 suggestions)
[INFO] [stderr] warning: `masquerade-proxy` (lib test) generated 41 warnings (41 duplicates)
[INFO] [stderr] warning: unused import: `masquerade_proxy::client`
[INFO] [stderr]  --> tests/integration_test.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use masquerade_proxy::client;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `masquerade_proxy::server`
[INFO] [stderr]  --> tests/integration_test.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use masquerade_proxy::server;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `log::*`
[INFO] [stderr]  --> tests/integration_test.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use log::*;
[INFO] [stderr]   |     ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `TcpListener`, `TcpSocket`, and `TcpStream`
[INFO] [stderr]  --> tests/integration_test.rs:5:18
[INFO] [stderr]   |
[INFO] [stderr] 5 | use tokio::net::{TcpStream, TcpSocket, TcpListener};
[INFO] [stderr]   |                  ^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `AsyncReadExt` and `AsyncWriteExt`
[INFO] [stderr]  --> tests/integration_test.rs:6:17
[INFO] [stderr]   |
[INFO] [stderr] 6 | use tokio::io::{AsyncWriteExt, AsyncReadExt};
[INFO] [stderr]   |                 ^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `server_task`
[INFO] [stderr]   --> tests/common/mod.rs:26:9
[INFO] [stderr]    |
[INFO] [stderr] 26 |     let server_task = tokio::spawn(async move {
[INFO] [stderr]    |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_server_task`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `client_task`
[INFO] [stderr]   --> tests/common/mod.rs:29:9
[INFO] [stderr]    |
[INFO] [stderr] 29 |     let client_task = tokio::spawn(async move {
[INFO] [stderr]    |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_client_task`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `client_addr`
[INFO] [stderr]   --> tests/common/mod.rs:45:25
[INFO] [stderr]    |
[INFO] [stderr] 45 |     let (server_stream, client_addr) = listener.accept().await?;
[INFO] [stderr]    |                         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_client_addr`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `server_task`
[INFO] [stderr]    --> tests/common/mod.rs:100:9
[INFO] [stderr]     |
[INFO] [stderr] 100 |     let server_task = tokio::spawn(async move {
[INFO] [stderr]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_server_task`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `client_task`
[INFO] [stderr]    --> tests/common/mod.rs:103:9
[INFO] [stderr]     |
[INFO] [stderr] 103 |     let client_task = tokio::spawn(async move {
[INFO] [stderr]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_client_task`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `client_addr`
[INFO] [stderr]    --> tests/common/mod.rs:128:25
[INFO] [stderr]     |
[INFO] [stderr] 128 |     let (server_stream, client_addr) = listener.accept().await?;
[INFO] [stderr]     |                         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_client_addr`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `server_task`
[INFO] [stderr]    --> tests/common/mod.rs:154:9
[INFO] [stderr]     |
[INFO] [stderr] 154 |     let server_task = tokio::spawn(async move {
[INFO] [stderr]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_server_task`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `client_task`
[INFO] [stderr]    --> tests/common/mod.rs:157:9
[INFO] [stderr]     |
[INFO] [stderr] 157 |     let client_task = tokio::spawn(async move {
[INFO] [stderr]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_client_task`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> tests/common/mod.rs:166:9
[INFO] [stderr]     |
[INFO] [stderr] 166 |     let mut request: Vec<u8> = vec![5, 3, 0, 1, 0, 0, 0, 0, 0, 0];
[INFO] [stderr]     |         ----^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> tests/common/mod.rs:196:9
[INFO] [stderr]     |
[INFO] [stderr] 196 |     let mut handshake: Vec<u8> = vec![5, 1, 0]; // Ask only for no authentication method
[INFO] [stderr]     |         ----^^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `client_stream`
[INFO] [stderr]   --> tests/integration_test.rs:26:14
[INFO] [stderr]    |
[INFO] [stderr] 26 |     let (mut client_stream, mut server_stream) =  common::assert_stream_connected(client_stream, server_stream, 84783).await;
[INFO] [stderr]    |              ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_client_stream`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `server_stream`
[INFO] [stderr]   --> tests/integration_test.rs:26:33
[INFO] [stderr]    |
[INFO] [stderr] 26 |     let (mut client_stream, mut server_stream) =  common::assert_stream_connected(client_stream, server_stream, 84783).await;
[INFO] [stderr]    |                                 ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_server_stream`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> tests/integration_test.rs:21:10
[INFO] [stderr]    |
[INFO] [stderr] 21 |     let (mut client_stream, mut server_stream) = timeout(timeout_duration, common::setup_http1_client()).await.unwrap().unwrap();
[INFO] [stderr]    |          ----^^^^^^^^^^^^^
[INFO] [stderr]    |          |
[INFO] [stderr]    |          help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> tests/integration_test.rs:21:29
[INFO] [stderr]    |
[INFO] [stderr] 21 |     let (mut client_stream, mut server_stream) = timeout(timeout_duration, common::setup_http1_client()).await.unwrap().unwrap();
[INFO] [stderr]    |                             ----^^^^^^^^^^^^^
[INFO] [stderr]    |                             |
[INFO] [stderr]    |                             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> tests/integration_test.rs:23:10
[INFO] [stderr]    |
[INFO] [stderr] 23 |     let (mut client_stream, mut server_stream) =  common::assert_stream_connected(client_stream, server_stream, 74783).await;
[INFO] [stderr]    |          ----^^^^^^^^^^^^^
[INFO] [stderr]    |          |
[INFO] [stderr]    |          help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> tests/integration_test.rs:23:29
[INFO] [stderr]    |
[INFO] [stderr] 23 |     let (mut client_stream, mut server_stream) =  common::assert_stream_connected(client_stream, server_stream, 74783).await;
[INFO] [stderr]    |                             ----^^^^^^^^^^^^^
[INFO] [stderr]    |                             |
[INFO] [stderr]    |                             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> tests/integration_test.rs:24:10
[INFO] [stderr]    |
[INFO] [stderr] 24 |     let (mut client_stream, mut server_stream) = common::assert_stream_connected(server_stream, client_stream, 84783).await;
[INFO] [stderr]    |          ----^^^^^^^^^^^^^
[INFO] [stderr]    |          |
[INFO] [stderr]    |          help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> tests/integration_test.rs:24:29
[INFO] [stderr]    |
[INFO] [stderr] 24 |     let (mut client_stream, mut server_stream) = common::assert_stream_connected(server_stream, client_stream, 84783).await;
[INFO] [stderr]    |                             ----^^^^^^^^^^^^^
[INFO] [stderr]    |                             |
[INFO] [stderr]    |                             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> tests/integration_test.rs:25:10
[INFO] [stderr]    |
[INFO] [stderr] 25 |     let (mut client_stream, mut server_stream) = common::assert_stream_connected(server_stream, client_stream, 84783).await;
[INFO] [stderr]    |          ----^^^^^^^^^^^^^
[INFO] [stderr]    |          |
[INFO] [stderr]    |          help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> tests/integration_test.rs:25:29
[INFO] [stderr]    |
[INFO] [stderr] 25 |     let (mut client_stream, mut server_stream) = common::assert_stream_connected(server_stream, client_stream, 84783).await;
[INFO] [stderr]    |                             ----^^^^^^^^^^^^^
[INFO] [stderr]    |                             |
[INFO] [stderr]    |                             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> tests/integration_test.rs:26:10
[INFO] [stderr]    |
[INFO] [stderr] 26 |     let (mut client_stream, mut server_stream) =  common::assert_stream_connected(client_stream, server_stream, 84783).await;
[INFO] [stderr]    |          ----^^^^^^^^^^^^^
[INFO] [stderr]    |          |
[INFO] [stderr]    |          help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> tests/integration_test.rs:26:29
[INFO] [stderr]    |
[INFO] [stderr] 26 |     let (mut client_stream, mut server_stream) =  common::assert_stream_connected(client_stream, server_stream, 84783).await;
[INFO] [stderr]    |                             ----^^^^^^^^^^^^^
[INFO] [stderr]    |                             |
[INFO] [stderr]    |                             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stdout] 
[INFO] [stderr] warning: unused variable: `client_stream`
[INFO] [stdout] running 0 tests
[INFO] [stderr]   --> tests/integration_test.rs:41:14
[INFO] [stdout] 
[INFO] [stderr]    |
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stderr] 41 |     let (mut client_stream, mut server_stream) =  common::assert_stream_connected(client_stream, server_stream, 84783).await;
[INFO] [stdout] 
[INFO] [stderr]    |              ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_client_stream`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `server_stream`
[INFO] [stderr]   --> tests/integration_test.rs:41:33
[INFO] [stderr]    |
[INFO] [stderr] 41 |     let (mut client_stream, mut server_stream) =  common::assert_stream_connected(client_stream, server_stream, 84783).await;
[INFO] [stderr]    |                                 ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_server_stream`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> tests/integration_test.rs:36:10
[INFO] [stderr]    |
[INFO] [stderr] 36 |     let (mut client_stream, mut server_stream) = timeout(timeout_duration, common::setup_socks5_tcp_client()).await.unwrap().unwrap();
[INFO] [stderr]    |          ----^^^^^^^^^^^^^
[INFO] [stderr]    |          |
[INFO] [stderr]    |          help: remove this `mut`
[INFO] [stdout] 
[INFO] [stderr] 
[INFO] [stdout] running 0 tests
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stdout] 
[INFO] [stderr]   --> tests/integration_test.rs:36:29
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stderr]    |
[INFO] [stdout] 
[INFO] [stderr] 36 |     let (mut client_stream, mut server_stream) = timeout(timeout_duration, common::setup_socks5_tcp_client()).await.unwrap().unwrap();
[INFO] [stderr]    |                             ----^^^^^^^^^^^^^
[INFO] [stderr]    |                             |
[INFO] [stderr]    |                             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> tests/integration_test.rs:38:10
[INFO] [stderr]    |
[INFO] [stderr] 38 |     let (mut client_stream, mut server_stream) =  common::assert_stream_connected(client_stream, server_stream, 74783).await;
[INFO] [stderr]    |          ----^^^^^^^^^^^^^
[INFO] [stderr]    |          |
[INFO] [stderr]    |          help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> tests/integration_test.rs:38:29
[INFO] [stderr]    |
[INFO] [stderr] 38 |     let (mut client_stream, mut server_stream) =  common::assert_stream_connected(client_stream, server_stream, 74783).await;
[INFO] [stderr]    |                             ----^^^^^^^^^^^^^
[INFO] [stderr]    |                             |
[INFO] [stderr]    |                             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> tests/integration_test.rs:39:10
[INFO] [stderr]    |
[INFO] [stderr] 39 |     let (mut client_stream, mut server_stream) = common::assert_stream_connected(server_stream, client_stream, 84783).await;
[INFO] [stderr]    |          ----^^^^^^^^^^^^^
[INFO] [stderr]    |          |
[INFO] [stderr]    |          help: remove this `mut`
[INFO] [stderr] 
[INFO] [stdout] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stdout] running 0 tests
[INFO] [stderr]   --> tests/integration_test.rs:39:29
[INFO] [stderr]    |
[INFO] [stderr] 39 |     let (mut client_stream, mut server_stream) = common::assert_stream_connected(server_stream, client_stream, 84783).await;
[INFO] [stderr]    |                             ----^^^^^^^^^^^^^
[INFO] [stderr]    |                             |
[INFO] [stderr]    |                             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> tests/integration_test.rs:40:10
[INFO] [stderr]    |
[INFO] [stderr] 40 |     let (mut client_stream, mut server_stream) = common::assert_stream_connected(server_stream, client_stream, 84783).await;
[INFO] [stderr]    |          ----^^^^^^^^^^^^^
[INFO] [stderr]    |          |
[INFO] [stdout] 
[INFO] [stderr]    |          help: remove this `mut`
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stderr] 
[INFO] [stdout] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> tests/integration_test.rs:40:29
[INFO] [stderr]    |
[INFO] [stderr] 40 |     let (mut client_stream, mut server_stream) = common::assert_stream_connected(server_stream, client_stream, 84783).await;
[INFO] [stderr]    |                             ----^^^^^^^^^^^^^
[INFO] [stderr]    |                             |
[INFO] [stderr]    |                             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> tests/integration_test.rs:41:10
[INFO] [stderr]    |
[INFO] [stderr] 41 |     let (mut client_stream, mut server_stream) =  common::assert_stream_connected(client_stream, server_stream, 84783).await;
[INFO] [stderr]    |          ----^^^^^^^^^^^^^
[INFO] [stderr]    |          |
[INFO] [stderr]    |          help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> tests/integration_test.rs:41:29
[INFO] [stderr]    |
[INFO] [stderr] 41 |     let (mut client_stream, mut server_stream) =  common::assert_stream_connected(client_stream, server_stream, 84783).await;
[INFO] [stderr]    |                             ----^^^^^^^^^^^^^
[INFO] [stderr]    |                             |
[INFO] [stderr]    |                             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> tests/integration_test.rs:52:9
[INFO] [stderr]    |
[INFO] [stderr] 52 |     let mut client_socket = timeout(timeout_duration, common::setup_socks5_udp_client()).await.unwrap().unwrap();
[INFO] [stderr]    |         ----^^^^^^^^^^^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> tests/common/mod.rs:27:9
[INFO] [stderr]    |
[INFO] [stderr] 27 |         server.run().await;
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 27 |         let _ = server.run().await;
[INFO] [stderr]    |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> tests/common/mod.rs:30:9
[INFO] [stderr]    |
[INFO] [stderr] 30 |         client.run(&server_addr.to_string()).await;
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 30 |         let _ = client.run(&server_addr.to_string()).await;
[INFO] [stderr]    |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> tests/common/mod.rs:101:9
[INFO] [stderr]     |
[INFO] [stderr] 101 |         server.run().await;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 101 |         let _ = server.run().await;
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> tests/common/mod.rs:104:9
[INFO] [stderr]     |
[INFO] [stderr] 104 |         client.run(&server_addr.to_string()).await;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stdout] 
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] running 3 tests
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 104 |         let _ = client.run(&server_addr.to_string()).await;
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> tests/common/mod.rs:155:9
[INFO] [stderr]     |
[INFO] [stderr] 155 |         server.run().await;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 155 |         let _ = server.run().await;
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> tests/common/mod.rs:158:9
[INFO] [stderr]     |
[INFO] [stderr] 158 |         client.run(&server_addr.to_string()).await;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 158 |         let _ = client.run(&server_addr.to_string()).await;
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: `masquerade-proxy` (test "integration_test") generated 46 warnings (run `cargo fix --test "integration_test"` to apply 28 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.19s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/masquerade_proxy-1d1e93889263b55b)
[INFO] [stderr]      Running unittests src/bin/client.rs (/opt/rustwide/target/debug/deps/client-198165fe91b5de31)
[INFO] [stderr]      Running unittests src/bin/server.rs (/opt/rustwide/target/debug/deps/server-2134238be8ad3978)
[INFO] [stderr]      Running tests/integration_test.rs (/opt/rustwide/target/debug/deps/integration_test-70bef40392dbbad7)
[INFO] [stdout] test end_to_end_socks5_udp_test ... ok
[INFO] [stdout] test end_to_end_http1_tcp_test ... ok
[INFO] [stdout] test end_to_end_socks5_tcp_test ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.55s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests masquerade_proxy
[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" "c72db746e202973a8a35604edf2984261f92e01fe5a8b9afc1c033e92d84c430", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c72db746e202973a8a35604edf2984261f92e01fe5a8b9afc1c033e92d84c430", kill_on_drop: false }`
[INFO] [stdout] c72db746e202973a8a35604edf2984261f92e01fe5a8b9afc1c033e92d84c430
