[INFO] fetching crate dianmeng 0.1.0...
[INFO] checking dianmeng-0.1.0 against master#779e19d8baa3e3625bd4fc5c85cbb2ad47b43155 for pr-147589-1
[INFO] extracting crate dianmeng 0.1.0 into /workspace/builds/worker-0-tc1/source
[INFO] started tweaking crates.io crate dianmeng 0.1.0
[INFO] finished tweaking crates.io crate dianmeng 0.1.0
[INFO] tweaked toml for crates.io crate dianmeng 0.1.0 written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate dianmeng 0.1.0 on toolchain 779e19d8baa3e3625bd4fc5c85cbb2ad47b43155
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate dianmeng 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" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded rbtree v0.1.5
[INFO] [stderr]   Downloaded memchr v2.6.2
[INFO] [stderr]   Downloaded reqwest v0.11.20
[INFO] [stderr]   Downloaded webparse v0.1.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] cc27a4a906146e04af0a07e04250576c69ecebb686160d5f4a12ca5fda0a1ae9
[INFO] running `Command { std: "docker" "start" "-a" "cc27a4a906146e04af0a07e04250576c69ecebb686160d5f4a12ca5fda0a1ae9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "cc27a4a906146e04af0a07e04250576c69ecebb686160d5f4a12ca5fda0a1ae9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cc27a4a906146e04af0a07e04250576c69ecebb686160d5f4a12ca5fda0a1ae9", kill_on_drop: false }`
[INFO] [stdout] cc27a4a906146e04af0a07e04250576c69ecebb686160d5f4a12ca5fda0a1ae9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 9acd30d230f18eb2ce5d8efd86f0ea7b458fb53712f908f637e66304362b4c73
[INFO] running `Command { std: "docker" "start" "-a" "9acd30d230f18eb2ce5d8efd86f0ea7b458fb53712f908f637e66304362b4c73", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.147
[INFO] [stderr]    Compiling unicode-ident v1.0.11
[INFO] [stderr]    Compiling futures-core v0.3.28
[INFO] [stderr]    Compiling parking_lot_core v0.9.8
[INFO] [stderr]    Compiling futures-task v0.3.28
[INFO] [stderr]    Compiling futures-channel v0.3.28
[INFO] [stderr]     Checking bytes v1.4.0
[INFO] [stderr]     Checking smallvec v1.11.0
[INFO] [stderr]     Checking once_cell v1.18.0
[INFO] [stderr]    Compiling futures-util v0.3.28
[INFO] [stderr]    Compiling lock_api v0.4.10
[INFO] [stderr]     Checking futures-sink v0.3.28
[INFO] [stderr]     Checking memchr v2.6.2
[INFO] [stderr]     Checking itoa v1.0.9
[INFO] [stderr]     Checking futures-io v0.3.28
[INFO] [stderr]    Compiling proc-macro2 v1.0.66
[INFO] [stderr]     Checking bitflags v2.4.0
[INFO] [stderr]    Compiling serde v1.0.188
[INFO] [stderr]    Compiling openssl v0.10.57
[INFO] [stderr]     Checking tracing-core v0.1.31
[INFO] [stderr]     Checking try-lock v0.2.4
[INFO] [stderr]    Compiling native-tls v0.2.11
[INFO] [stderr]     Checking ryu v1.0.15
[INFO] [stderr]    Compiling serde_json v1.0.105
[INFO] [stderr]     Checking percent-encoding v2.3.0
[INFO] [stderr]     Checking want v0.3.1
[INFO] [stderr]    Compiling quote v1.0.33
[INFO] [stderr]     Checking http v0.2.9
[INFO] [stderr]     Checking form_urlencoded v1.2.0
[INFO] [stderr]     Checking unicode-bidi v0.3.13
[INFO] [stderr]     Checking webparse v0.1.2
[INFO] [stderr]     Checking rbtree v0.1.5
[INFO] [stderr]     Checking ipnet v2.8.0
[INFO] [stderr]     Checking base64 v0.21.4
[INFO] [stderr]    Compiling syn v2.0.29
[INFO] [stderr]     Checking tracing v0.1.37
[INFO] [stderr]     Checking idna v0.4.0
[INFO] [stderr]    Compiling cc v1.0.83
[INFO] [stderr]     Checking http-body v0.4.5
[INFO] [stderr]     Checking num_cpus v1.16.0
[INFO] [stderr]     Checking mio v0.8.8
[INFO] [stderr]     Checking signal-hook-registry v1.4.1
[INFO] [stderr]     Checking socket2 v0.5.3
[INFO] [stderr]     Checking socket2 v0.4.9
[INFO] [stderr]     Checking url v2.4.1
[INFO] [stderr]     Checking parking_lot v0.12.1
[INFO] [stderr]    Compiling openssl-sys v0.9.93
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling futures-macro v0.3.28
[INFO] [stderr]    Compiling tokio-macros v2.1.0
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling serde_derive v1.0.188
[INFO] [stderr]     Checking tokio v1.32.0
[INFO] [stderr]     Checking futures-executor v0.3.28
[INFO] [stderr]     Checking futures v0.3.28
[INFO] [stderr]     Checking tokio-util v0.7.8
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking tokio-stream v0.1.14
[INFO] [stderr]     Checking h2 v0.3.21
[INFO] [stderr]     Checking hyper v0.14.27
[INFO] [stderr]     Checking hyper-tls v0.5.0
[INFO] [stderr]     Checking dianmeng v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `stream`
[INFO] [stdout]  --> src/protocol/server.rs:3:20
[INFO] [stdout]   |
[INFO] [stdout] 3 | use futures_core::{stream, Future};
[INFO] [stdout]   |                    ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `SendControl` and `SendStream`
[INFO] [stdout]  --> src/protocol/server.rs:7:62
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::{H2Connection, ProtError, ProtResult, RecvStream, SendControl, SendStream};
[INFO] [stdout]   |                                                              ^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `future::poll_fn`
[INFO] [stdout]  --> src/protocol/http1/connection.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 |     future::poll_fn,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sync::mpsc::Receiver`
[INFO] [stdout]   --> src/protocol/http1/connection.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     sync::mpsc::Receiver,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `http::response`
[INFO] [stdout]   --> src/protocol/http1/connection.rs:13:16
[INFO] [stdout]    |
[INFO] [stdout] 13 | use webparse::{http::response, Binary, BinaryMut, Request, Response, Serialize};
[INFO] [stdout]    |                ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `protocol::recv_stream`
[INFO] [stdout]   --> src/protocol/http1/connection.rs:15:13
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::{protocol::recv_stream, H2Connection, ProtResult, RecvStream};
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `futures_util::future::poll_fn`
[INFO] [stdout]  --> src/protocol/http1/io.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use futures_util::future::poll_fn;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `http::request`
[INFO] [stdout]  --> src/protocol/http1/io.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use http::request;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio_util::io::poll_read_buf`
[INFO] [stdout]   --> src/protocol/http1/io.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use tokio_util::io::poll_read_buf;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Serialize` and `WebError`
[INFO] [stdout]   --> src/protocol/http1/io.rs:14:69
[INFO] [stdout]    |
[INFO] [stdout] 14 |     http::http2, Binary, BinaryMut, Buf, BufMut, Request, Response, Serialize, WebError,
[INFO] [stdout]    |                                                                     ^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `H2Connection`
[INFO] [stdout]  --> src/protocol/http2/state/state_handshake.rs:1:53
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::{protocol::http2::codec::Codec, Builder, H2Connection, ProtError, ProtResult};
[INFO] [stdout]   |                                                     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `future::Future`
[INFO] [stdout]  --> src/protocol/http2/state/state_handshake.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 |     future::Future,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncWriteExt`
[INFO] [stdout]  --> src/protocol/http2/state/state_handshake.rs:9:40
[INFO] [stdout]   |
[INFO] [stdout] 9 | use tokio::io::{AsyncRead, AsyncWrite, AsyncWriteExt, ReadBuf};
[INFO] [stdout]   |                                        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Control`
[INFO] [stdout]  --> src/protocol/http2/state/state_settings.rs:7:61
[INFO] [stdout]   |
[INFO] [stdout] 7 |     protocol::http2::{codec::Codec, control::ControlConfig, Control},
[INFO] [stdout]   |                                                             ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `io`
[INFO] [stdout]  --> src/protocol/http2/codec/error.rs:2:23
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::{error, fmt, io};
[INFO] [stdout]   |                       ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `length_delimited`
[INFO] [stdout]  --> src/protocol/http2/codec/framed_read.rs:7:56
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tokio_util::codec::{FramedRead as InnerFramedRead, length_delimited};
[INFO] [stdout]   |                                                        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `LengthDelimitedCodecError`
[INFO] [stdout]  --> src/protocol/http2/codec/framed_read.rs:8:47
[INFO] [stdout]   |
[INFO] [stdout] 8 | use tokio_util::codec::{LengthDelimitedCodec, LengthDelimitedCodecError};
[INFO] [stdout]   |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HeaderIndex`
[INFO] [stdout]   --> src/protocol/http2/codec/framed_read.rs:10:45
[INFO] [stdout]    |
[INFO] [stdout] 10 | use webparse::http::http2::{frame, Decoder, HeaderIndex};
[INFO] [stdout]    |                                             ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `WebResult`
[INFO] [stdout]   --> src/protocol/http2/codec/framed_read.rs:11:35
[INFO] [stdout]    |
[INFO] [stdout] 11 | use webparse::{Binary, BinaryMut, WebResult, Buf};
[INFO] [stdout]    |                                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ProtError`
[INFO] [stdout]   --> src/protocol/http2/codec/framed_read.rs:13:23
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::protocol::{ProtError, ProtResult};
[INFO] [stdout]    |                       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::FramedWrite`
[INFO] [stdout]   --> src/protocol/http2/codec/framed_read.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use super::FramedWrite;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncReadExt`, `Interest`, and `Ready`
[INFO] [stdout]  --> src/protocol/http2/codec/mod.rs:8:48
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::task::{Context, Poll};use tokio::io::{Interest, Ready, AsyncReadExt};
[INFO] [stdout]   |                                                ^^^^^^^^  ^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `pin::Pin`
[INFO] [stdout]  --> src/protocol/http2/connection.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     pin::Pin,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `futures_util::future::poll_fn`
[INFO] [stdout]  --> src/protocol/http2/connection.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use futures_util::future::poll_fn;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Sender` and `net::TcpStream`
[INFO] [stdout]   --> src/protocol/http2/connection.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     net::TcpStream,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 11 |     sync::mpsc::{Receiver, Sender, channel},
[INFO] [stdout]    |                            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Frame` and `Settings`
[INFO] [stdout]   --> src/protocol/http2/connection.rs:14:26
[INFO] [stdout]    |
[INFO] [stdout] 14 |     http::http2::frame::{Frame, Reason, Settings, StreamIdentifier},
[INFO] [stdout]    |                          ^^^^^          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Server`
[INFO] [stdout]   --> src/protocol/http2/connection.rs:20:37
[INFO] [stdout]    |
[INFO] [stdout] 20 |     Builder, Initiator, RecvStream, Server,
[INFO] [stdout]    |                                     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `FramedRead`, `FramedWrite`, `SendResponse`, and `send_response::SendControl`
[INFO] [stdout]   --> src/protocol/http2/connection.rs:24:20
[INFO] [stdout]    |
[INFO] [stdout] 24 |     codec::{Codec, FramedRead, FramedWrite},
[INFO] [stdout]    |                    ^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 25 |     control::ControlConfig,
[INFO] [stdout] 26 |     send_response::SendControl,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 27 |     Control, SendResponse,
[INFO] [stdout]    |              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `io`
[INFO] [stdout]  --> src/protocol/http2/control.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 |     io,
[INFO] [stdout]   |     ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `stream`
[INFO] [stdout]   --> src/protocol/http2/control.rs:11:27
[INFO] [stdout]    |
[INFO] [stdout] 11 | use futures_core::{ready, stream, Stream};
[INFO] [stdout]    |                           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BinaryMut`, `Flag`, `Kind`, `Serialize`, and `request`
[INFO] [stdout]   --> src/protocol/http2/control.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     Serialize,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 18 |     http::{
[INFO] [stdout] 19 |         http2::frame::{Flag, Frame, GoAway, Kind, Reason, Settings, StreamIdentifier},
[INFO] [stdout]    |                        ^^^^                 ^^^^
[INFO] [stdout] 20 |         request,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 21 |     },
[INFO] [stdout] 22 |     Binary, BinaryMut, Request, Response,
[INFO] [stdout]    |             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `futures_core::Stream`
[INFO] [stdout]  --> src/protocol/http2/send_response.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use futures_core::Stream;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rbtree::RBTree`
[INFO] [stdout]  --> src/protocol/http2/send_response.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use rbtree::RBTree;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Arc` and `Mutex`
[INFO] [stdout]  --> src/protocol/http2/send_response.rs:4:17
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                 ^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Receiver` and `channel`
[INFO] [stdout]  --> src/protocol/http2/send_response.rs:6:25
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::sync::mpsc::{channel, Receiver, Sender};
[INFO] [stdout]   |                         ^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Decoder`, `PriorityFrame`, `Priority`, and `Serialize`
[INFO] [stdout]   --> src/protocol/http2/send_response.rs:11:60
[INFO] [stdout]    |
[INFO] [stdout] 11 |             Data, Flag, Frame, FrameHeader, Headers, Kind, Priority, PriorityFrame,
[INFO] [stdout]    |                                                            ^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 14 |         Decoder,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 15 |     },
[INFO] [stdout] 16 |     Binary, Method, Response, Serialize,
[INFO] [stdout]    |                               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::SendStream`
[INFO] [stdout]   --> src/protocol/http2/send_response.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | use crate::SendStream;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Buf`
[INFO] [stdout]  --> src/protocol/http2/builder.rs:4:16
[INFO] [stdout]   |
[INFO] [stdout] 4 | use webparse::{Buf, http::http2::frame::Settings};
[INFO] [stdout]   |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sync::Arc`
[INFO] [stdout]  --> src/protocol/http2/priority_queue.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{sync::Arc, task::{Context, Poll}, collections::HashMap};
[INFO] [stdout]   |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Response` and `Serialize`
[INFO] [stdout]  --> src/protocol/http2/priority_queue.rs:7:13
[INFO] [stdout]   |
[INFO] [stdout] 7 |     Binary, Serialize, Response,
[INFO] [stdout]   |             ^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BinaryMut`
[INFO] [stdout]  --> src/protocol/error.rs:3:62
[INFO] [stdout]   |
[INFO] [stdout] 3 | use webparse::{WebError, Binary, http::http2::frame::Reason, BinaryMut, Request};
[INFO] [stdout]   |                                                              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `any::TypeId`, `ready`, and `time`
[INFO] [stdout]  --> src/protocol/recv_stream.rs:1:21
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{io::Read, time, task::{Context, ready, Poll}, any::TypeId};
[INFO] [stdout]   |                     ^^^^                  ^^^^^         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bytes::buf`
[INFO] [stdout]  --> src/protocol/recv_stream.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use bytes::buf;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `join`
[INFO] [stdout]  --> src/protocol/recv_stream.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     join,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ProtError`
[INFO] [stdout]   --> src/protocol/recv_stream.rs:11:25
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::{ProtResult, ProtError};
[INFO] [stdout]    |                         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BinaryMut`
[INFO] [stdout]  --> src/protocol/send_stream.rs:5:24
[INFO] [stdout]   |
[INFO] [stdout] 5 | use webparse::{Binary, BinaryMut, Serialize};
[INFO] [stdout]   |                        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/protocol/server.rs:45:21
[INFO] [stdout]    |
[INFO] [stdout] 45 |                 let mut res = res.into_type::<RecvStream>();
[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]    --> src/protocol/http1/io.rs:217:43
[INFO] [stdout]     |
[INFO] [stdout] 217 |     pub async fn send_response(&mut self, mut res: Response<RecvStream>) -> ProtResult<()> {
[INFO] [stdout]     |                                           ----^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking reqwest v0.11.20
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/protocol/http2/connection.rs:292:9
[INFO] [stdout]     |
[INFO] [stdout] 255 | /         loop {
[INFO] [stdout] 256 | |             println!("sssssssssssssssssss +{:?}", self.inner.state);
[INFO] [stdout] 257 | |             match self.inner.state {
[INFO] [stdout] 258 | |                 State::Open => {
[INFO] [stdout] ...   |
[INFO] [stdout] 291 | |         }
[INFO] [stdout]     | |_________- any code following this expression is unreachable
[INFO] [stdout] 292 |           println!("end!!!!!");
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout]     = note: this warning originates in the macro `println` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Pointer`
[INFO] [stdout]  --> src/protocol/error.rs:1:26
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{fmt::{Display, Pointer}, io};
[INFO] [stdout]   |                          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio_stream::StreamExt`
[INFO] [stdout]  --> src/protocol/http2/control.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use tokio_stream::StreamExt;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result`
[INFO] [stdout]   --> src/protocol/server.rs:39:13
[INFO] [stdout]    |
[INFO] [stdout] 39 |         let result = if let Some(h1) = &mut self.http1 {
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `recv`
[INFO] [stdout]   --> src/protocol/server.rs:43:21
[INFO] [stdout]    |
[INFO] [stdout] 43 |                 let recv = RecvStream::only(Binary::new());
[INFO] [stdout]    |                     ^^^^ help: if this is intentional, prefix it with an underscore: `_recv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/protocol/http2/codec/framed_read.rs:109:5
[INFO] [stdout]     |
[INFO] [stdout] 109 |     mut bytes: BytesMut,
[INFO] [stdout]     |     ----^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `kind`
[INFO] [stdout]    --> src/protocol/http2/codec/framed_read.rs:127:9
[INFO] [stdout]     |
[INFO] [stdout] 127 |     let kind = head.kind();
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_kind`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/protocol/http2/codec/mod.rs:55:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |         let mut inner = FramedRead::new(delimited);
[INFO] [stdout]    |             ----^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `max_frame_size`
[INFO] [stdout]   --> src/protocol/http2/codec/mod.rs:43:44
[INFO] [stdout]    |
[INFO] [stdout] 43 |     pub fn with_max_recv_frame_size(io: T, max_frame_size: usize) -> Self {
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_max_frame_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cx`
[INFO] [stdout]   --> src/protocol/http2/connection.rs:84:35
[INFO] [stdout]    |
[INFO] [stdout] 84 |     pub fn pull_accept(&mut self, cx: &mut Context<'_>) -> Poll<Option<ProtResult<()>>> {
[INFO] [stdout]    |                                   ^^ help: if this is intentional, prefix it with an underscore: `_cx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/protocol/http2/control.rs:173:45
[INFO] [stdout]     |
[INFO] [stdout] 173 |                         Frame::WindowUpdate(v) => {
[INFO] [stdout]     |                                             ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/protocol/http2/control.rs:176:38
[INFO] [stdout]     |
[INFO] [stdout] 176 |                         Frame::Reset(v) => {}
[INFO] [stdout]     |                                      ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `frames`
[INFO] [stdout]    --> src/protocol/http2/control.rs:193:9
[INFO] [stdout]     |
[INFO] [stdout] 193 |         frames: &Vec<Frame<Binary>>,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_frames`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_end_stream`
[INFO] [stdout]    --> src/protocol/http2/control.rs:230:13
[INFO] [stdout]     |
[INFO] [stdout] 230 |         let is_end_stream = frame.is_end_stream();
[INFO] [stdout]     |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_end_stream`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/protocol/http2/inner_stream.rs:72:13
[INFO] [stdout]    |
[INFO] [stdout] 72 |         let mut now_frames = self.take();
[INFO] [stdout]    |             ----^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_data`
[INFO] [stdout]   --> src/protocol/http2/priority_queue.rs:75:21
[INFO] [stdout]    |
[INFO] [stdout] 75 |                 let is_data = first.0.frame.is_data();
[INFO] [stdout]    |                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `size`
[INFO] [stdout]   --> src/protocol/http2/priority_queue.rs:76:21
[INFO] [stdout]    |
[INFO] [stdout] 76 |                 let size = codec.send_frame(first.0.frame)?;
[INFO] [stdout]    |                     ^^^^ help: if this is intentional, prefix it with an underscore: `_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cx`
[INFO] [stdout]    --> src/protocol/recv_stream.rs:183:9
[INFO] [stdout]     |
[INFO] [stdout] 183 |         cx: &mut std::task::Context<'_>,
[INFO] [stdout]     |         ^^ help: if this is intentional, prefix it with an underscore: `_cx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cx`
[INFO] [stdout]   --> src/protocol/send_stream.rs:56:50
[INFO] [stdout]    |
[INFO] [stdout] 56 |     fn poll_next(self: std::pin::Pin<&mut Self>, cx: &mut std::task::Context<'_>) -> std::task::Poll<Option<Self::Item>> {
[INFO] [stdout]    |                                                  ^^ help: if this is intentional, prefix it with an underscore: `_cx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `buf`
[INFO] [stdout]   --> src/protocol/send_stream.rs:62:24
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn read(&mut self, buf: &mut [u8]) -> std::io::Result<usize> {
[INFO] [stdout]    |                        ^^^ help: if this is intentional, prefix it with an underscore: `_buf`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `buffer`
[INFO] [stdout]   --> src/protocol/send_stream.rs:68:82
[INFO] [stdout]    |
[INFO] [stdout] 68 |     fn serialize<B: webparse::Buf+webparse::BufMut+webparse::MarkBuf>(&mut self, buffer: &mut B) -> webparse::WebResult<usize> {
[INFO] [stdout]    |                                                                                  ^^^^^^ help: if this is intentional, prefix it with an underscore: `_buffer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `builder` and `span` are never read
[INFO] [stdout]   --> src/protocol/http2/state/state_handshake.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct StateHandshake {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] 13 |     /// 默认参数
[INFO] [stdout] 14 |     builder: Builder,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     span: tracing::Span,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `SendError` is never used
[INFO] [stdout]  --> src/protocol/http2/codec/error.rs:8:10
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub enum SendError {
[INFO] [stdout]   |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `UserError` is never used
[INFO] [stdout]   --> src/protocol/http2/codec/error.rs:15:10
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub enum UserError {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `frame` and `buf` are never read
[INFO] [stdout]   --> src/protocol/http2/codec/framed_read.rs:32:5
[INFO] [stdout]    |
[INFO] [stdout] 30 | struct Partial {
[INFO] [stdout]    |        ------- fields in this struct
[INFO] [stdout] 31 |     /// Empty frame
[INFO] [stdout] 32 |     frame: Continuable,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 35 |     buf: BinaryMut,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Partial` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Headers` and `PushPromise` are never constructed
[INFO] [stdout]   --> src/protocol/http2/codec/framed_read.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 39 | enum Continuable {
[INFO] [stdout]    |      ----------- variants in this enum
[INFO] [stdout] 40 |     Headers(frame::Headers),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 41 |     PushPromise(frame::PushPromise),
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Continuable` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `id` is never read
[INFO] [stdout]   --> src/protocol/http2/inner_stream.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct InnerStream {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 17 |     id: StreamIdentifier,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `window_size` is never read
[INFO] [stdout]  --> src/protocol/http2/flow_control.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct FlowControl {
[INFO] [stdout]   |            ----------- field in this struct
[INFO] [stdout] 5 |     window_size: i32,
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `FlowControl` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/protocol/http2/control.rs:235:13
[INFO] [stdout]     |
[INFO] [stdout] 235 |             self.recv_frames.get_mut(&stream_id).unwrap().push(frame);
[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] 235 |             let _ = self.recv_frames.get_mut(&stream_id).unwrap().push(frame);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bytes::BytesMut`
[INFO] [stdout]   --> src/main.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use bytes::BytesMut;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `StatusCode` and `http2::frame::Frame`
[INFO] [stdout]   --> src/main.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 19 |     http::{http2::frame::Frame, StatusCode},
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `borrow::BorrowMut`, `self`, and `time::Duration`
[INFO] [stdout]   --> src/main.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     borrow::BorrowMut,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     fmt::{self},
[INFO] [stdout]    |           ^^^^
[INFO] [stdout] 29 |     io::{self, Read},
[INFO] [stdout] 30 |     time::Duration,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Sender`
[INFO] [stdout]   --> src/main.rs:34:27
[INFO] [stdout]    |
[INFO] [stdout] 34 |     sync::mpsc::{channel, Sender},
[INFO] [stdout]    |                           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio_stream::StreamExt`
[INFO] [stdout]   --> src/main.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 36 | use tokio_stream::StreamExt;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Decoder`, `Encoder`, and `Framed`
[INFO] [stdout]   --> src/main.rs:37:25
[INFO] [stdout]    |
[INFO] [stdout] 37 | use tokio_util::codec::{Decoder, Encoder, Framed};
[INFO] [stdout]    |                         ^^^^^^^  ^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `H2Connection`, `SendStream`, and `StateHandshake`
[INFO] [stdout]   --> src/main.rs:40:11
[INFO] [stdout]    |
[INFO] [stdout] 40 |     self, H2Connection, ProtResult, RecvStream, SendControl, SendStream, Server, StateHandshake,
[INFO] [stdout]    |           ^^^^^^^^^^^^                                       ^^^^^^^^^^          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:155:13
[INFO] [stdout]     |
[INFO] [stdout] 155 |         let mut send = control.unwrap().send_response(res).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: `futures::SinkExt`
[INFO] [stdout]   --> src/main.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use futures::SinkExt;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `err`
[INFO] [stdout]    --> src/main.rs:153:23
[INFO] [stdout]     |
[INFO] [stdout] 153 |             .map_err(|err| io::Error::new(io::ErrorKind::Other, ""))?;
[INFO] [stdout]     |                       ^^^ help: if this is intentional, prefix it with an underscore: `_err`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `err`
[INFO] [stdout]    --> src/main.rs:135:19
[INFO] [stdout]     |
[INFO] [stdout] 135 |         .map_err(|err| io::Error::new(io::ErrorKind::Other, ""))?;
[INFO] [stdout]     |                   ^^^ help: if this is intentional, prefix it with an underscore: `_err`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `send`
[INFO] [stdout]    --> src/main.rs:155:13
[INFO] [stdout]     |
[INFO] [stdout] 155 |         let mut send = control.unwrap().send_response(res).await?;
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_send`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `err`
[INFO] [stdout]    --> src/main.rs:211:19
[INFO] [stdout]     |
[INFO] [stdout] 211 |         .map_err(|err| io::Error::new(io::ErrorKind::Other, ""))?;
[INFO] [stdout]     |                   ^^^ help: if this is intentional, prefix it with an underscore: `_err`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `body`
[INFO] [stdout]    --> src/main.rs:188:17
[INFO] [stdout]     |
[INFO] [stdout] 188 |             let body = req.body_mut();
[INFO] [stdout]     |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_body`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Xx` is never used
[INFO] [stdout]   --> src/main.rs:43:7
[INFO] [stdout]    |
[INFO] [stdout] 43 | trait Xx {
[INFO] [stdout]    |       ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `operate1` is never used
[INFO] [stdout]    --> src/main.rs:180:10
[INFO] [stdout]     |
[INFO] [stdout] 180 | async fn operate1(mut req: Request<String>) -> ProtResult<Option<Response<String>>> {
[INFO] [stdout]     |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/main.rs:158:17
[INFO] [stdout]     |
[INFO] [stdout] 158 | /                 sender
[INFO] [stdout] 159 | |                     .send((false, Binary::from(format!("hello{} ", i).into_bytes())))
[INFO] [stdout] 160 | |                     .await;
[INFO] [stdout]     | |__________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 158 |                 let _ = sender
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/main.rs:163:13
[INFO] [stdout]     |
[INFO] [stdout] 163 |             sender.send((true, Binary::from_static("world\r\n".as_bytes()))).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] 163 |             let _ = sender.send((true, Binary::from_static("world\r\n".as_bytes()))).await;
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/main.rs:170:13
[INFO] [stdout]     |
[INFO] [stdout] 170 | /             sender
[INFO] [stdout] 171 | |                 .send((false, Binary::from(format!("hello{} ", i).into_bytes())))
[INFO] [stdout] 172 | |                 .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] 170 |             let _ = sender
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bytes::BytesMut`
[INFO] [stdout]   --> src/main.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use bytes::BytesMut;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `StatusCode` and `http2::frame::Frame`
[INFO] [stdout]   --> src/main.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 19 |     http::{http2::frame::Frame, StatusCode},
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `borrow::BorrowMut`, `self`, and `time::Duration`
[INFO] [stdout]   --> src/main.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     borrow::BorrowMut,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     fmt::{self},
[INFO] [stdout]    |           ^^^^
[INFO] [stdout] 29 |     io::{self, Read},
[INFO] [stdout] 30 |     time::Duration,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Sender`
[INFO] [stdout]   --> src/main.rs:34:27
[INFO] [stdout]    |
[INFO] [stdout] 34 |     sync::mpsc::{channel, Sender},
[INFO] [stdout]    |                           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio_stream::StreamExt`
[INFO] [stdout]   --> src/main.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 36 | use tokio_stream::StreamExt;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Decoder`, `Encoder`, and `Framed`
[INFO] [stdout]   --> src/main.rs:37:25
[INFO] [stdout]    |
[INFO] [stdout] 37 | use tokio_util::codec::{Decoder, Encoder, Framed};
[INFO] [stdout]    |                         ^^^^^^^  ^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `H2Connection`, `SendStream`, and `StateHandshake`
[INFO] [stdout]   --> src/main.rs:40:11
[INFO] [stdout]    |
[INFO] [stdout] 40 |     self, H2Connection, ProtResult, RecvStream, SendControl, SendStream, Server, StateHandshake,
[INFO] [stdout]    |           ^^^^^^^^^^^^                                       ^^^^^^^^^^          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:155:13
[INFO] [stdout]     |
[INFO] [stdout] 155 |         let mut send = control.unwrap().send_response(res).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: `futures::SinkExt`
[INFO] [stdout]   --> src/main.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use futures::SinkExt;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `err`
[INFO] [stdout]    --> src/main.rs:153:23
[INFO] [stdout]     |
[INFO] [stdout] 153 |             .map_err(|err| io::Error::new(io::ErrorKind::Other, ""))?;
[INFO] [stdout]     |                       ^^^ help: if this is intentional, prefix it with an underscore: `_err`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `err`
[INFO] [stdout]    --> src/main.rs:135:19
[INFO] [stdout]     |
[INFO] [stdout] 135 |         .map_err(|err| io::Error::new(io::ErrorKind::Other, ""))?;
[INFO] [stdout]     |                   ^^^ help: if this is intentional, prefix it with an underscore: `_err`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `send`
[INFO] [stdout]    --> src/main.rs:155:13
[INFO] [stdout]     |
[INFO] [stdout] 155 |         let mut send = control.unwrap().send_response(res).await?;
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_send`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `err`
[INFO] [stdout]    --> src/main.rs:211:19
[INFO] [stdout]     |
[INFO] [stdout] 211 |         .map_err(|err| io::Error::new(io::ErrorKind::Other, ""))?;
[INFO] [stdout]     |                   ^^^ help: if this is intentional, prefix it with an underscore: `_err`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `body`
[INFO] [stdout]    --> src/main.rs:188:17
[INFO] [stdout]     |
[INFO] [stdout] 188 |             let body = req.body_mut();
[INFO] [stdout]     |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_body`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Xx` is never used
[INFO] [stdout]   --> src/main.rs:43:7
[INFO] [stdout]    |
[INFO] [stdout] 43 | trait Xx {
[INFO] [stdout]    |       ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `operate1` is never used
[INFO] [stdout]    --> src/main.rs:180:10
[INFO] [stdout]     |
[INFO] [stdout] 180 | async fn operate1(mut req: Request<String>) -> ProtResult<Option<Response<String>>> {
[INFO] [stdout]     |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/main.rs:158:17
[INFO] [stdout]     |
[INFO] [stdout] 158 | /                 sender
[INFO] [stdout] 159 | |                     .send((false, Binary::from(format!("hello{} ", i).into_bytes())))
[INFO] [stdout] 160 | |                     .await;
[INFO] [stdout]     | |__________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 158 |                 let _ = sender
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/main.rs:163:13
[INFO] [stdout]     |
[INFO] [stdout] 163 |             sender.send((true, Binary::from_static("world\r\n".as_bytes()))).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] 163 |             let _ = sender.send((true, Binary::from_static("world\r\n".as_bytes()))).await;
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/main.rs:170:13
[INFO] [stdout]     |
[INFO] [stdout] 170 | /             sender
[INFO] [stdout] 171 | |                 .send((false, Binary::from(format!("hello{} ", i).into_bytes())))
[INFO] [stdout] 172 | |                 .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] 170 |             let _ = sender
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `stream`
[INFO] [stdout]  --> src/protocol/server.rs:3:20
[INFO] [stdout]   |
[INFO] [stdout] 3 | use futures_core::{stream, Future};
[INFO] [stdout]   |                    ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `SendControl` and `SendStream`
[INFO] [stdout]  --> src/protocol/server.rs:7:62
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::{H2Connection, ProtError, ProtResult, RecvStream, SendControl, SendStream};
[INFO] [stdout]   |                                                              ^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `future::poll_fn`
[INFO] [stdout]  --> src/protocol/http1/connection.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 |     future::poll_fn,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sync::mpsc::Receiver`
[INFO] [stdout]   --> src/protocol/http1/connection.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     sync::mpsc::Receiver,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `http::response`
[INFO] [stdout]   --> src/protocol/http1/connection.rs:13:16
[INFO] [stdout]    |
[INFO] [stdout] 13 | use webparse::{http::response, Binary, BinaryMut, Request, Response, Serialize};
[INFO] [stdout]    |                ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `protocol::recv_stream`
[INFO] [stdout]   --> src/protocol/http1/connection.rs:15:13
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::{protocol::recv_stream, H2Connection, ProtResult, RecvStream};
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `futures_util::future::poll_fn`
[INFO] [stdout]  --> src/protocol/http1/io.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use futures_util::future::poll_fn;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `http::request`
[INFO] [stdout]  --> src/protocol/http1/io.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use http::request;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio_util::io::poll_read_buf`
[INFO] [stdout]   --> src/protocol/http1/io.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use tokio_util::io::poll_read_buf;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Serialize` and `WebError`
[INFO] [stdout]   --> src/protocol/http1/io.rs:14:69
[INFO] [stdout]    |
[INFO] [stdout] 14 |     http::http2, Binary, BinaryMut, Buf, BufMut, Request, Response, Serialize, WebError,
[INFO] [stdout]    |                                                                     ^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `H2Connection`
[INFO] [stdout]  --> src/protocol/http2/state/state_handshake.rs:1:53
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::{protocol::http2::codec::Codec, Builder, H2Connection, ProtError, ProtResult};
[INFO] [stdout]   |                                                     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `future::Future`
[INFO] [stdout]  --> src/protocol/http2/state/state_handshake.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 |     future::Future,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncWriteExt`
[INFO] [stdout]  --> src/protocol/http2/state/state_handshake.rs:9:40
[INFO] [stdout]   |
[INFO] [stdout] 9 | use tokio::io::{AsyncRead, AsyncWrite, AsyncWriteExt, ReadBuf};
[INFO] [stdout]   |                                        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Control`
[INFO] [stdout]  --> src/protocol/http2/state/state_settings.rs:7:61
[INFO] [stdout]   |
[INFO] [stdout] 7 |     protocol::http2::{codec::Codec, control::ControlConfig, Control},
[INFO] [stdout]   |                                                             ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `io`
[INFO] [stdout]  --> src/protocol/http2/codec/error.rs:2:23
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::{error, fmt, io};
[INFO] [stdout]   |                       ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `length_delimited`
[INFO] [stdout]  --> src/protocol/http2/codec/framed_read.rs:7:56
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tokio_util::codec::{FramedRead as InnerFramedRead, length_delimited};
[INFO] [stdout]   |                                                        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `LengthDelimitedCodecError`
[INFO] [stdout]  --> src/protocol/http2/codec/framed_read.rs:8:47
[INFO] [stdout]   |
[INFO] [stdout] 8 | use tokio_util::codec::{LengthDelimitedCodec, LengthDelimitedCodecError};
[INFO] [stdout]   |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HeaderIndex`
[INFO] [stdout]   --> src/protocol/http2/codec/framed_read.rs:10:45
[INFO] [stdout]    |
[INFO] [stdout] 10 | use webparse::http::http2::{frame, Decoder, HeaderIndex};
[INFO] [stdout]    |                                             ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `WebResult`
[INFO] [stdout]   --> src/protocol/http2/codec/framed_read.rs:11:35
[INFO] [stdout]    |
[INFO] [stdout] 11 | use webparse::{Binary, BinaryMut, WebResult, Buf};
[INFO] [stdout]    |                                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ProtError`
[INFO] [stdout]   --> src/protocol/http2/codec/framed_read.rs:13:23
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::protocol::{ProtError, ProtResult};
[INFO] [stdout]    |                       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::FramedWrite`
[INFO] [stdout]   --> src/protocol/http2/codec/framed_read.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use super::FramedWrite;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncReadExt`, `Interest`, and `Ready`
[INFO] [stdout]  --> src/protocol/http2/codec/mod.rs:8:48
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::task::{Context, Poll};use tokio::io::{Interest, Ready, AsyncReadExt};
[INFO] [stdout]   |                                                ^^^^^^^^  ^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `pin::Pin`
[INFO] [stdout]  --> src/protocol/http2/connection.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     pin::Pin,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `futures_util::future::poll_fn`
[INFO] [stdout]  --> src/protocol/http2/connection.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use futures_util::future::poll_fn;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Sender` and `net::TcpStream`
[INFO] [stdout]   --> src/protocol/http2/connection.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     net::TcpStream,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 11 |     sync::mpsc::{Receiver, Sender, channel},
[INFO] [stdout]    |                            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Frame` and `Settings`
[INFO] [stdout]   --> src/protocol/http2/connection.rs:14:26
[INFO] [stdout]    |
[INFO] [stdout] 14 |     http::http2::frame::{Frame, Reason, Settings, StreamIdentifier},
[INFO] [stdout]    |                          ^^^^^          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Server`
[INFO] [stdout]   --> src/protocol/http2/connection.rs:20:37
[INFO] [stdout]    |
[INFO] [stdout] 20 |     Builder, Initiator, RecvStream, Server,
[INFO] [stdout]    |                                     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `FramedRead`, `FramedWrite`, `SendResponse`, and `send_response::SendControl`
[INFO] [stdout]   --> src/protocol/http2/connection.rs:24:20
[INFO] [stdout]    |
[INFO] [stdout] 24 |     codec::{Codec, FramedRead, FramedWrite},
[INFO] [stdout]    |                    ^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 25 |     control::ControlConfig,
[INFO] [stdout] 26 |     send_response::SendControl,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 27 |     Control, SendResponse,
[INFO] [stdout]    |              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `io`
[INFO] [stdout]  --> src/protocol/http2/control.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 |     io,
[INFO] [stdout]   |     ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `stream`
[INFO] [stdout]   --> src/protocol/http2/control.rs:11:27
[INFO] [stdout]    |
[INFO] [stdout] 11 | use futures_core::{ready, stream, Stream};
[INFO] [stdout]    |                           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BinaryMut`, `Flag`, `Kind`, `Serialize`, and `request`
[INFO] [stdout]   --> src/protocol/http2/control.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     Serialize,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 18 |     http::{
[INFO] [stdout] 19 |         http2::frame::{Flag, Frame, GoAway, Kind, Reason, Settings, StreamIdentifier},
[INFO] [stdout]    |                        ^^^^                 ^^^^
[INFO] [stdout] 20 |         request,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 21 |     },
[INFO] [stdout] 22 |     Binary, BinaryMut, Request, Response,
[INFO] [stdout]    |             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `futures_core::Stream`
[INFO] [stdout]  --> src/protocol/http2/send_response.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use futures_core::Stream;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rbtree::RBTree`
[INFO] [stdout]  --> src/protocol/http2/send_response.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use rbtree::RBTree;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Arc` and `Mutex`
[INFO] [stdout]  --> src/protocol/http2/send_response.rs:4:17
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                 ^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Receiver` and `channel`
[INFO] [stdout]  --> src/protocol/http2/send_response.rs:6:25
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::sync::mpsc::{channel, Receiver, Sender};
[INFO] [stdout]   |                         ^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Decoder`, `PriorityFrame`, `Priority`, and `Serialize`
[INFO] [stdout]   --> src/protocol/http2/send_response.rs:11:60
[INFO] [stdout]    |
[INFO] [stdout] 11 |             Data, Flag, Frame, FrameHeader, Headers, Kind, Priority, PriorityFrame,
[INFO] [stdout]    |                                                            ^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 14 |         Decoder,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 15 |     },
[INFO] [stdout] 16 |     Binary, Method, Response, Serialize,
[INFO] [stdout]    |                               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::SendStream`
[INFO] [stdout]   --> src/protocol/http2/send_response.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | use crate::SendStream;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Buf`
[INFO] [stdout]  --> src/protocol/http2/builder.rs:4:16
[INFO] [stdout]   |
[INFO] [stdout] 4 | use webparse::{Buf, http::http2::frame::Settings};
[INFO] [stdout]   |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sync::Arc`
[INFO] [stdout]  --> src/protocol/http2/priority_queue.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{sync::Arc, task::{Context, Poll}, collections::HashMap};
[INFO] [stdout]   |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Response` and `Serialize`
[INFO] [stdout]  --> src/protocol/http2/priority_queue.rs:7:13
[INFO] [stdout]   |
[INFO] [stdout] 7 |     Binary, Serialize, Response,
[INFO] [stdout]   |             ^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BinaryMut`
[INFO] [stdout]  --> src/protocol/error.rs:3:62
[INFO] [stdout]   |
[INFO] [stdout] 3 | use webparse::{WebError, Binary, http::http2::frame::Reason, BinaryMut, Request};
[INFO] [stdout]   |                                                              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `any::TypeId`, `ready`, and `time`
[INFO] [stdout]  --> src/protocol/recv_stream.rs:1:21
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{io::Read, time, task::{Context, ready, Poll}, any::TypeId};
[INFO] [stdout]   |                     ^^^^                  ^^^^^         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bytes::buf`
[INFO] [stdout]  --> src/protocol/recv_stream.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use bytes::buf;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `join`
[INFO] [stdout]  --> src/protocol/recv_stream.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     join,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ProtError`
[INFO] [stdout]   --> src/protocol/recv_stream.rs:11:25
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::{ProtResult, ProtError};
[INFO] [stdout]    |                         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BinaryMut`
[INFO] [stdout]  --> src/protocol/send_stream.rs:5:24
[INFO] [stdout]   |
[INFO] [stdout] 5 | use webparse::{Binary, BinaryMut, Serialize};
[INFO] [stdout]   |                        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/protocol/server.rs:45:21
[INFO] [stdout]    |
[INFO] [stdout] 45 |                 let mut res = res.into_type::<RecvStream>();
[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]    --> src/protocol/http1/io.rs:217:43
[INFO] [stdout]     |
[INFO] [stdout] 217 |     pub async fn send_response(&mut self, mut res: Response<RecvStream>) -> ProtResult<()> {
[INFO] [stdout]     |                                           ----^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/protocol/http2/connection.rs:292:9
[INFO] [stdout]     |
[INFO] [stdout] 255 | /         loop {
[INFO] [stdout] 256 | |             println!("sssssssssssssssssss +{:?}", self.inner.state);
[INFO] [stdout] 257 | |             match self.inner.state {
[INFO] [stdout] 258 | |                 State::Open => {
[INFO] [stdout] ...   |
[INFO] [stdout] 291 | |         }
[INFO] [stdout]     | |_________- any code following this expression is unreachable
[INFO] [stdout] 292 |           println!("end!!!!!");
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout]     = note: this warning originates in the macro `println` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Pointer`
[INFO] [stdout]  --> src/protocol/error.rs:1:26
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{fmt::{Display, Pointer}, io};
[INFO] [stdout]   |                          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio_stream::StreamExt`
[INFO] [stdout]  --> src/protocol/http2/control.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use tokio_stream::StreamExt;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result`
[INFO] [stdout]   --> src/protocol/server.rs:39:13
[INFO] [stdout]    |
[INFO] [stdout] 39 |         let result = if let Some(h1) = &mut self.http1 {
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `recv`
[INFO] [stdout]   --> src/protocol/server.rs:43:21
[INFO] [stdout]    |
[INFO] [stdout] 43 |                 let recv = RecvStream::only(Binary::new());
[INFO] [stdout]    |                     ^^^^ help: if this is intentional, prefix it with an underscore: `_recv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/protocol/http2/codec/framed_read.rs:109:5
[INFO] [stdout]     |
[INFO] [stdout] 109 |     mut bytes: BytesMut,
[INFO] [stdout]     |     ----^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `kind`
[INFO] [stdout]    --> src/protocol/http2/codec/framed_read.rs:127:9
[INFO] [stdout]     |
[INFO] [stdout] 127 |     let kind = head.kind();
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_kind`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/protocol/http2/codec/mod.rs:55:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |         let mut inner = FramedRead::new(delimited);
[INFO] [stdout]    |             ----^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `max_frame_size`
[INFO] [stdout]   --> src/protocol/http2/codec/mod.rs:43:44
[INFO] [stdout]    |
[INFO] [stdout] 43 |     pub fn with_max_recv_frame_size(io: T, max_frame_size: usize) -> Self {
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_max_frame_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cx`
[INFO] [stdout]   --> src/protocol/http2/connection.rs:84:35
[INFO] [stdout]    |
[INFO] [stdout] 84 |     pub fn pull_accept(&mut self, cx: &mut Context<'_>) -> Poll<Option<ProtResult<()>>> {
[INFO] [stdout]    |                                   ^^ help: if this is intentional, prefix it with an underscore: `_cx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/protocol/http2/control.rs:173:45
[INFO] [stdout]     |
[INFO] [stdout] 173 |                         Frame::WindowUpdate(v) => {
[INFO] [stdout]     |                                             ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/protocol/http2/control.rs:176:38
[INFO] [stdout]     |
[INFO] [stdout] 176 |                         Frame::Reset(v) => {}
[INFO] [stdout]     |                                      ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `frames`
[INFO] [stdout]    --> src/protocol/http2/control.rs:193:9
[INFO] [stdout]     |
[INFO] [stdout] 193 |         frames: &Vec<Frame<Binary>>,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_frames`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_end_stream`
[INFO] [stdout]    --> src/protocol/http2/control.rs:230:13
[INFO] [stdout]     |
[INFO] [stdout] 230 |         let is_end_stream = frame.is_end_stream();
[INFO] [stdout]     |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_end_stream`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/protocol/http2/inner_stream.rs:72:13
[INFO] [stdout]    |
[INFO] [stdout] 72 |         let mut now_frames = self.take();
[INFO] [stdout]    |             ----^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_data`
[INFO] [stdout]   --> src/protocol/http2/priority_queue.rs:75:21
[INFO] [stdout]    |
[INFO] [stdout] 75 |                 let is_data = first.0.frame.is_data();
[INFO] [stdout]    |                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `size`
[INFO] [stdout]   --> src/protocol/http2/priority_queue.rs:76:21
[INFO] [stdout]    |
[INFO] [stdout] 76 |                 let size = codec.send_frame(first.0.frame)?;
[INFO] [stdout]    |                     ^^^^ help: if this is intentional, prefix it with an underscore: `_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cx`
[INFO] [stdout]    --> src/protocol/recv_stream.rs:183:9
[INFO] [stdout]     |
[INFO] [stdout] 183 |         cx: &mut std::task::Context<'_>,
[INFO] [stdout]     |         ^^ help: if this is intentional, prefix it with an underscore: `_cx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cx`
[INFO] [stdout]   --> src/protocol/send_stream.rs:56:50
[INFO] [stdout]    |
[INFO] [stdout] 56 |     fn poll_next(self: std::pin::Pin<&mut Self>, cx: &mut std::task::Context<'_>) -> std::task::Poll<Option<Self::Item>> {
[INFO] [stdout]    |                                                  ^^ help: if this is intentional, prefix it with an underscore: `_cx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `buf`
[INFO] [stdout]   --> src/protocol/send_stream.rs:62:24
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn read(&mut self, buf: &mut [u8]) -> std::io::Result<usize> {
[INFO] [stdout]    |                        ^^^ help: if this is intentional, prefix it with an underscore: `_buf`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `buffer`
[INFO] [stdout]   --> src/protocol/send_stream.rs:68:82
[INFO] [stdout]    |
[INFO] [stdout] 68 |     fn serialize<B: webparse::Buf+webparse::BufMut+webparse::MarkBuf>(&mut self, buffer: &mut B) -> webparse::WebResult<usize> {
[INFO] [stdout]    |                                                                                  ^^^^^^ help: if this is intentional, prefix it with an underscore: `_buffer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `builder` and `span` are never read
[INFO] [stdout]   --> src/protocol/http2/state/state_handshake.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct StateHandshake {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] 13 |     /// 默认参数
[INFO] [stdout] 14 |     builder: Builder,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     span: tracing::Span,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `SendError` is never used
[INFO] [stdout]  --> src/protocol/http2/codec/error.rs:8:10
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub enum SendError {
[INFO] [stdout]   |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `UserError` is never used
[INFO] [stdout]   --> src/protocol/http2/codec/error.rs:15:10
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub enum UserError {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `frame` and `buf` are never read
[INFO] [stdout]   --> src/protocol/http2/codec/framed_read.rs:32:5
[INFO] [stdout]    |
[INFO] [stdout] 30 | struct Partial {
[INFO] [stdout]    |        ------- fields in this struct
[INFO] [stdout] 31 |     /// Empty frame
[INFO] [stdout] 32 |     frame: Continuable,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 35 |     buf: BinaryMut,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Partial` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Headers` and `PushPromise` are never constructed
[INFO] [stdout]   --> src/protocol/http2/codec/framed_read.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 39 | enum Continuable {
[INFO] [stdout]    |      ----------- variants in this enum
[INFO] [stdout] 40 |     Headers(frame::Headers),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 41 |     PushPromise(frame::PushPromise),
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Continuable` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `id` is never read
[INFO] [stdout]   --> src/protocol/http2/inner_stream.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct InnerStream {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 17 |     id: StreamIdentifier,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `window_size` is never read
[INFO] [stdout]  --> src/protocol/http2/flow_control.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct FlowControl {
[INFO] [stdout]   |            ----------- field in this struct
[INFO] [stdout] 5 |     window_size: i32,
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `FlowControl` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/protocol/http2/control.rs:235:13
[INFO] [stdout]     |
[INFO] [stdout] 235 |             self.recv_frames.get_mut(&stream_id).unwrap().push(frame);
[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] 235 |             let _ = self.recv_frames.get_mut(&stream_id).unwrap().push(frame);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 17.19s
[INFO] running `Command { std: "docker" "inspect" "9acd30d230f18eb2ce5d8efd86f0ea7b458fb53712f908f637e66304362b4c73", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9acd30d230f18eb2ce5d8efd86f0ea7b458fb53712f908f637e66304362b4c73", kill_on_drop: false }`
[INFO] [stdout] 9acd30d230f18eb2ce5d8efd86f0ea7b458fb53712f908f637e66304362b4c73
