[INFO] fetching crate pi_async_wsc 0.5.1...
[INFO] testing pi_async_wsc-0.5.1 against master#0d162b25edd5bf0dba9a22e83b614f1113e90474 for pr-150681
[INFO] extracting crate pi_async_wsc 0.5.1 into /workspace/builds/worker-7-tc1/source
[INFO] started tweaking crates.io crate pi_async_wsc 0.5.1
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate pi_async_wsc 0.5.1
[INFO] tweaked toml for crates.io crate pi_async_wsc 0.5.1 written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate pi_async_wsc 0.5.1 on toolchain 0d162b25edd5bf0dba9a22e83b614f1113e90474
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate pi_async_wsc 0.5.1 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" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded spin_sleep v1.3.1
[INFO] [stderr]   Downloaded pi_null v0.1.11
[INFO] [stderr]   Downloaded webpki v0.22.4
[INFO] [stderr]   Downloaded pi_atom v0.6.1
[INFO] [stderr]   Downloaded zstd v0.10.2+zstd.1.5.2
[INFO] [stderr]   Downloaded pi_bon v0.3.1
[INFO] [stderr]   Downloaded sha-1 v0.10.1
[INFO] [stderr]   Downloaded const-oid v0.7.1
[INFO] [stderr]   Downloaded pi_tcp v0.5.5
[INFO] [stderr]   Downloaded zstd-safe v4.1.6+zstd.1.5.2
[INFO] [stderr]   Downloaded jiff-static v0.2.14
[INFO] [stderr]   Downloaded rsa v0.6.1
[INFO] [stderr]   Downloaded pi-async-rt v0.2.5
[INFO] [stderr]   Downloaded cc v1.2.26
[INFO] [stderr]   Downloaded actix-http v3.0.4
[INFO] [stderr]   Downloaded pi_slotmap v0.2.1
[INFO] [stderr]   Downloaded rustls v0.20.9
[INFO] [stderr]   Downloaded actix-tls v3.4.0
[INFO] [stderr]   Downloaded crypto-bigint v0.3.2
[INFO] [stderr]   Downloaded pem-rfc7468 v0.3.1
[INFO] [stderr]   Downloaded pi_awc v0.1.0
[INFO] [stderr]   Downloaded pi_crypto v0.1.1
[INFO] [stderr]   Downloaded pi_share v0.5.2
[INFO] [stderr]   Downloaded jsonwebtoken v7.2.0
[INFO] [stderr]   Downloaded pkcs1 v0.3.3
[INFO] [stderr]   Downloaded der v0.5.1
[INFO] [stderr]   Downloaded simple_asn1 v0.4.1
[INFO] [stderr]   Downloaded pi_async_buffer v0.8.0
[INFO] [stderr]   Downloaded pi_wheel v0.1.0
[INFO] [stderr]   Downloaded pi_wrr v0.1.1
[INFO] [stderr]   Downloaded pi_ext_heap v0.1.1
[INFO] [stderr]   Downloaded pi_hash_value v0.1.0
[INFO] [stderr]   Downloaded pi_cancel_timer v0.2.0
[INFO] [stderr]   Downloaded jiff v0.2.14
[INFO] [stderr]   Downloaded libsecp256k1-gen-genmult v0.2.1
[INFO] [stderr]   Downloaded pkcs8 v0.8.0
[INFO] [stderr]   Downloaded pi_slot_deque v0.2.1
[INFO] [stderr]   Downloaded pi_hash v0.1.1
[INFO] [stderr]   Downloaded pi_ws v0.6.1
[INFO] [stderr]   Downloaded libsecp256k1-core v0.2.2
[INFO] [stderr]   Downloaded libsecp256k1 v0.6.0
[INFO] [stderr]   Downloaded pi_key_alloter v0.6.1
[INFO] [stderr]   Downloaded spin_sleep_util v0.1.1
[INFO] [stderr]   Downloaded pem v0.8.3
[INFO] [stderr]   Downloaded libsecp256k1-gen-ecmult v0.2.1
[INFO] [stderr]   Downloaded spki v0.5.4
[INFO] [stderr]   Downloaded pi_rand v0.3.0
[INFO] [stderr]   Downloaded pi_timer v0.1.0
[INFO] [stderr]   Downloaded pi_slot_wheel v0.2.0
[INFO] [stderr]   Downloaded zstd-sys v1.6.3+zstd.1.5.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 2e131457b33994e1cd7e783f5019c9da75e2b9afb6377a32ed5f66e05b196512
[INFO] running `Command { std: "docker" "start" "-a" "2e131457b33994e1cd7e783f5019c9da75e2b9afb6377a32ed5f66e05b196512", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2e131457b33994e1cd7e783f5019c9da75e2b9afb6377a32ed5f66e05b196512", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2e131457b33994e1cd7e783f5019c9da75e2b9afb6377a32ed5f66e05b196512", kill_on_drop: false }`
[INFO] [stdout] 2e131457b33994e1cd7e783f5019c9da75e2b9afb6377a32ed5f66e05b196512
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c881cbcc9c663956a500e2b8a16b3f53bc7e42025abf8d3ead62fa97d33d9293
[INFO] running `Command { std: "docker" "start" "-a" "c881cbcc9c663956a500e2b8a16b3f53bc7e42025abf8d3ead62fa97d33d9293", kill_on_drop: false }`
[INFO] [stderr]    Compiling jobserver v0.1.33
[INFO] [stderr]    Compiling getrandom v0.2.16
[INFO] [stderr]    Compiling parking_lot_core v0.9.11
[INFO] [stderr]    Compiling mio v1.0.4
[INFO] [stderr]    Compiling signal-hook-registry v1.4.5
[INFO] [stderr]    Compiling socket2 v0.5.10
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling miniz_oxide v0.8.8
[INFO] [stderr]    Compiling zerovec-derive v0.11.1
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling tracing-attributes v0.1.29
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.0
[INFO] [stderr]    Compiling getrandom v0.3.3
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling parking_lot v0.12.4
[INFO] [stderr]    Compiling crossbeam-channel v0.5.15
[INFO] [stderr]    Compiling cc v1.2.26
[INFO] [stderr]    Compiling object v0.36.7
[INFO] [stderr]    Compiling tokio v1.45.1
[INFO] [stderr]    Compiling rustls v0.20.9
[INFO] [stderr]    Compiling pi_slot_deque v0.2.1
[INFO] [stderr]    Compiling rand_core v0.9.3
[INFO] [stderr]    Compiling spin v0.9.8
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling gimli v0.31.1
[INFO] [stderr]    Compiling pi_ext_heap v0.1.1
[INFO] [stderr]    Compiling alloc-no-stdlib v2.0.4
[INFO] [stderr]    Compiling local-waker v0.1.4
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling zstd-safe v4.1.6+zstd.1.5.2
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling fxhash v0.2.1
[INFO] [stderr]    Compiling pi_slot_wheel v0.2.0
[INFO] [stderr]    Compiling alloc-stdlib v0.2.2
[INFO] [stderr]    Compiling nanorand v0.7.0
[INFO] [stderr]    Compiling async-stream-impl v0.3.6
[INFO] [stderr]    Compiling actix-macros v0.2.4
[INFO] [stderr]    Compiling raw-cpuid v11.5.0
[INFO] [stderr]    Compiling ahash v0.7.8
[INFO] [stderr]    Compiling rustc-demangle v0.1.24
[INFO] [stderr]    Compiling pi_null v0.1.11
[INFO] [stderr]    Compiling pi_wheel v0.1.0
[INFO] [stderr]    Compiling zerofrom v0.1.6
[INFO] [stderr]    Compiling time-core v0.1.4
[INFO] [stderr]    Compiling pi_share v0.5.2
[INFO] [stderr]    Compiling time-macros v0.2.22
[INFO] [stderr]    Compiling flume v0.11.1
[INFO] [stderr]    Compiling yoke v0.8.0
[INFO] [stderr]    Compiling pi_timer v0.1.0
[INFO] [stderr]    Compiling tracing v0.1.41
[INFO] [stderr]    Compiling twox-hash v1.6.3
[INFO] [stderr]    Compiling addr2line v0.24.2
[INFO] [stderr]    Compiling async-stream v0.3.6
[INFO] [stderr]    Compiling zerovec v0.11.2
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling ring v0.16.20
[INFO] [stderr]    Compiling zstd-sys v1.6.3+zstd.1.5.2
[INFO] [stderr]    Compiling zerotrie v0.2.2
[INFO] [stderr]    Compiling pi_hash v0.1.1
[INFO] [stderr]    Compiling indexmap v2.9.0
[INFO] [stderr]    Compiling deranged v0.4.0
[INFO] [stderr]    Compiling brotli-decompressor v2.5.1
[INFO] [stderr]    Compiling rand v0.9.1
[INFO] [stderr]    Compiling pi_cancel_timer v0.2.0
[INFO] [stderr]    Compiling actix-utils v3.0.1
[INFO] [stderr]    Compiling crossbeam v0.8.4
[INFO] [stderr]    Compiling st3 v0.4.1
[INFO] [stderr]    Compiling concurrent-queue v2.5.0
[INFO] [stderr]    Compiling num_cpus v1.17.0
[INFO] [stderr]    Compiling actix-service v2.0.3
[INFO] [stderr]    Compiling cookie v0.16.2
[INFO] [stderr]    Compiling pi_slotmap v0.2.1
[INFO] [stderr]    Compiling pi_wrr v0.1.1
[INFO] [stderr]    Compiling sha-1 v0.10.1
[INFO] [stderr]    Compiling event-listener v5.4.0
[INFO] [stderr]    Compiling quanta v0.12.5
[INFO] [stderr]    Compiling derive_more v0.99.20
[INFO] [stderr]    Compiling flate2 v1.1.2
[INFO] [stderr]    Compiling brotli v3.5.0
[INFO] [stderr]    Compiling pi_key_alloter v0.6.1
[INFO] [stderr]    Compiling local-channel v0.1.5
[INFO] [stderr]    Compiling bytestring v1.4.0
[INFO] [stderr]    Compiling spin_sleep v1.3.1
[INFO] [stderr]    Compiling time v0.3.41
[INFO] [stderr]    Compiling language-tags v0.3.2
[INFO] [stderr]    Compiling impl-more v0.1.9
[INFO] [stderr]    Compiling dashmap v6.1.0
[INFO] [stderr]    Compiling spin_sleep_util v0.1.1
[INFO] [stderr]    Compiling event-listener-strategy v0.5.4
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]    Compiling tinystr v0.8.1
[INFO] [stderr]    Compiling potential_utf v0.1.2
[INFO] [stderr]    Compiling lazy_static v1.5.0
[INFO] [stderr]    Compiling mio v0.8.11
[INFO] [stderr]    Compiling icu_collections v2.0.0
[INFO] [stderr]    Compiling async-lock v3.4.0
[INFO] [stderr]    Compiling pi_rand v0.3.0
[INFO] [stderr]    Compiling icu_locale_core v2.0.0
[INFO] [stderr]    Compiling futures-executor v0.3.31
[INFO] [stderr]    Compiling futures v0.3.31
[INFO] [stderr]    Compiling icu_provider v2.0.0
[INFO] [stderr]    Compiling icu_normalizer v2.0.0
[INFO] [stderr]    Compiling icu_properties v2.0.1
[INFO] [stderr]    Compiling backtrace v0.3.75
[INFO] [stderr]    Compiling tokio-util v0.7.15
[INFO] [stderr]    Compiling actix-rt v2.10.0
[INFO] [stderr]    Compiling serde_json v1.0.140
[INFO] [stderr]    Compiling pi-async-rt v0.2.5
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling actix-codec v0.5.2
[INFO] [stderr]    Compiling h2 v0.3.26
[INFO] [stderr]    Compiling webpki v0.22.4
[INFO] [stderr]    Compiling sct v0.7.1
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling webpki-roots v0.22.6
[INFO] [stderr]    Compiling idna v1.0.3
[INFO] [stderr]    Compiling pi_async_buffer v0.8.0
[INFO] [stderr]    Compiling url v2.5.4
[INFO] [stderr]    Compiling tokio-rustls v0.23.4
[INFO] [stderr]    Compiling actix-tls v3.4.0
[INFO] [stderr]    Compiling pi_tcp v0.5.5
[INFO] [stderr]    Compiling zstd v0.10.2+zstd.1.5.2
[INFO] [stderr]    Compiling actix-http v3.0.4
[INFO] [stderr]    Compiling pi_awc v0.1.0
[INFO] [stderr]    Compiling pi_async_wsc v0.5.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> src/lib.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[macro_use]
[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: `webpki`
[INFO] [stdout]   --> src/lib.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | use webpki;
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ClientResponse`
[INFO] [stdout]   --> src/lib.rs:27:43
[INFO] [stdout]    |
[INFO] [stdout] 27 | use awc::{Client, Connector, BoxedSocket, ClientResponse,
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]     --> src/lib.rs:1142:16
[INFO] [stdout]      |
[INFO] [stdout] 1142 |         top -= (len - offset); //更新缓冲区当前长度
[INFO] [stdout]      |                ^            ^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1142 -         top -= (len - offset); //更新缓冲区当前长度
[INFO] [stdout] 1142 +         top -= len - offset; //更新缓冲区当前长度
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:199:29
[INFO] [stdout]     |
[INFO] [stdout] 199 |                         let mut client = Client::builder()
[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: `Buf`
[INFO] [stdout]   --> src/lib.rs:29:13
[INFO] [stdout]    |
[INFO] [stdout] 29 | use bytes::{Buf, BufMut, Bytes, BytesMut};
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:88:17
[INFO] [stdout]    |
[INFO] [stdout] 88 |             let mut runner = System::new();
[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]    --> src/lib.rs:120:21
[INFO] [stdout]     |
[INFO] [stdout] 120 |                 let mut ws = AsyncWebsocket::new(self.rt.clone(),
[INFO] [stdout]     |                     ----^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `error`
[INFO] [stdout]    --> src/lib.rs:727:53
[INFO] [stdout]     |
[INFO] [stdout] 727 |         if let AsyncWebsocketStatus::Error(_, _, _, error) = self {
[INFO] [stdout]     |                                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_error`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/lib.rs:1372:13
[INFO] [stdout]      |
[INFO] [stdout] 1372 |     fn poll(mut self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Self::Output> {
[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]     --> src/lib.rs:1527:13
[INFO] [stdout]      |
[INFO] [stdout] 1527 |     fn poll(mut self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Self::Output> {
[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]   --> src/lib.rs:89:13
[INFO] [stdout]    |
[INFO] [stdout] 89 |             send.send(());
[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] 89 |             let _ = send.send(());
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:158:21
[INFO] [stdout]     |
[INFO] [stdout] 158 |                     ws_con.send(ws::Message::Close(Some(CloseReason::from(CloseCode::Other(500))))).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 _ = ws_con.send(ws::Message::Close(Some(CloseReason::from(CloseCode::Other(500))))).await;
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:232:37
[INFO] [stdout]     |
[INFO] [stdout] 232 | ...                   ws_con.send(ws::Message::Close(None)).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] 232 |                                     let _ = ws_con.send(ws::Message::Close(None)).await;
[INFO] [stdout]     |                                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:241:37
[INFO] [stdout]     |
[INFO] [stdout] 241 | / ...                   sender.send_async(AsyncWebsocketCmd::ReceiveSeed(ws_copy,
[INFO] [stdout] 242 | | ...                                                                    task_id,
[INFO] [stdout] 243 | | ...                                                                    format!("{:?}", resp),
[INFO] [stdout] 244 | | ...                                                                    None,
[INFO] [stdout] 245 | | ...                                                                    5000)).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] 241 |                                     let _ = sender.send_async(AsyncWebsocketCmd::ReceiveSeed(ws_copy,
[INFO] [stdout]     |                                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:286:49
[INFO] [stdout]     |
[INFO] [stdout] 286 | / ...                   sender.send_async(AsyncWebsocketCmd::ReceiveSeed(
[INFO] [stdout] 287 | | ...                       ws_copy,
[INFO] [stdout] 288 | | ...                       task_id,
[INFO] [stdout] 289 | | ...                       resp,
[INFO] [stdout] 290 | | ...                       received_message,
[INFO] [stdout] 291 | | ...                       receive_timeout)).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] 286 |                                                 let _ = sender.send_async(AsyncWebsocketCmd::ReceiveSeed(
[INFO] [stdout]     |                                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:464:41
[INFO] [stdout]     |
[INFO] [stdout] 464 | / ...                   sender.send_async(AsyncWebsocketCmd::Receive(
[INFO] [stdout] 465 | | ...                       ws_copy,
[INFO] [stdout] 466 | | ...                       task_id,
[INFO] [stdout] 467 | | ...                       require_count,
[INFO] [stdout] ...   |
[INFO] [stdout] 470 | | ...                       receive_timeout,
[INFO] [stdout] 471 | | ...                       result)).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] 464 |                                         let _ = sender.send_async(AsyncWebsocketCmd::Receive(
[INFO] [stdout]     |                                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:501:57
[INFO] [stdout]     |
[INFO] [stdout] 501 | / ...                   sender.send_async(AsyncWebsocketCmd::Receive(
[INFO] [stdout] 502 | | ...                       ws_copy,
[INFO] [stdout] 503 | | ...                       task_id,
[INFO] [stdout] 504 | | ...                       require_count,
[INFO] [stdout] ...   |
[INFO] [stdout] 507 | | ...                       receive_timeout,
[INFO] [stdout] 508 | | ...                       result)).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] 501 |                                                         let _ = sender.send_async(AsyncWebsocketCmd::Receive(
[INFO] [stdout]     |                                                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:550:69
[INFO] [stdout]     |
[INFO] [stdout] 550 | / ...                   sender.send_async(AsyncWebsocketCmd::Receive(
[INFO] [stdout] 551 | | ...                       ws_copy,
[INFO] [stdout] 552 | | ...                       task_id,
[INFO] [stdout] 553 | | ...                       Some(count - 1),
[INFO] [stdout] ...   |
[INFO] [stdout] 556 | | ...                       receive_timeout,
[INFO] [stdout] 557 | | ...                       result)).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] 550 |                                                                     let _ = sender.send_async(AsyncWebsocketCmd::Receive(
[INFO] [stdout]     |                                                                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:559:69
[INFO] [stdout]     |
[INFO] [stdout] 559 | / ...                   sender.send_async(AsyncWebsocketCmd::Receive(
[INFO] [stdout] 560 | | ...                       ws_copy,
[INFO] [stdout] 561 | | ...                       task_id,
[INFO] [stdout] 562 | | ...                       None,
[INFO] [stdout] ...   |
[INFO] [stdout] 565 | | ...                       receive_timeout,
[INFO] [stdout] 566 | | ...                       result)).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] 559 |                                                                     let _ = sender.send_async(AsyncWebsocketCmd::Receive(
[INFO] [stdout]     |                                                                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:632:29
[INFO] [stdout]     |
[INFO] [stdout] 632 | ...                   ws_con.send(ws::Message::Close(close_reason)).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] 632 |                             let _ = ws_con.send(ws::Message::Close(close_reason)).await;
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:927:9
[INFO] [stdout]     |
[INFO] [stdout] 927 | /         wait_any.spawn(rt.clone(),
[INFO] [stdout] 928 | |                        AsyncOpenWebsocket::new(rt.clone(),
[INFO] [stdout] 929 | |                                                task_id,
[INFO] [stdout] 930 | |                                                ws,
[INFO] [stdout] 931 | |                                                is_strict,
[INFO] [stdout] 932 | |                                                is_sync_seed,
[INFO] [stdout] 933 | |                                                timeout).boxed());
[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] 927 |         let _ = wait_any.spawn(rt.clone(),
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:934:9
[INFO] [stdout]     |
[INFO] [stdout] 934 | / ...   wait_any.spawn(rt.clone(),
[INFO] [stdout] 935 | | ...                  async move {
[INFO] [stdout] 936 | | ...                      rt.timeout(timeout as usize).await;
[INFO] [stdout] 937 | | ...                      Err(Error::new(ErrorKind::TimedOut, format!("Open websocket failed, url: {}, protocols: {:?}, reason: co...
[INFO] [stdout] 938 | | ...                  }.boxed());
[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] 934 |         let _ = wait_any.spawn(rt.clone(),
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]     --> src/lib.rs:1313:9
[INFO] [stdout]      |
[INFO] [stdout] 1313 | /         self.rt.spawn(async move {
[INFO] [stdout] 1314 | |             if let Err(e) = ws.send_to_client(cmd).await {
[INFO] [stdout] 1315 | |                 error!("Open websocket failed, reason: {:?}", e);
[INFO] [stdout] 1316 | |             }
[INFO] [stdout] 1317 | |         });
[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] 1313 |         let _ = self.rt.spawn(async move {
[INFO] [stdout]      |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]     --> src/lib.rs:1391:9
[INFO] [stdout]      |
[INFO] [stdout] 1391 | /         self.rt.spawn(async move {
[INFO] [stdout] 1392 | |             if let Err(e) = ws.send_to_client(cmd).await {
[INFO] [stdout] 1393 | |                 error!("Send websocket failed, reason: {:?}", e);
[INFO] [stdout] 1394 | |             }
[INFO] [stdout] 1395 | |         });
[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] 1391 |         let _ = self.rt.spawn(async move {
[INFO] [stdout]      |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]     --> src/lib.rs:1465:9
[INFO] [stdout]      |
[INFO] [stdout] 1465 | /         self.rt.spawn(async move {
[INFO] [stdout] 1466 | |             if let Err(e) = ws.send_to_client(cmd).await {
[INFO] [stdout] 1467 | |                 error!("Receive websocket failed, reason: {:?}", e);
[INFO] [stdout] 1468 | |             }
[INFO] [stdout] 1469 | |         });
[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] 1465 |         let _ = self.rt.spawn(async move {
[INFO] [stdout]      |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]     --> src/lib.rs:1546:9
[INFO] [stdout]      |
[INFO] [stdout] 1546 | /         self.rt.spawn(async move {
[INFO] [stdout] 1547 | |             if let Err(e) = ws.send_to_client(cmd).await {
[INFO] [stdout] 1548 | |                 error!("Close websocket failed, reason: {:?}", e);
[INFO] [stdout] 1549 | |             }
[INFO] [stdout] 1550 | |         });
[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] 1546 |         let _ = self.rt.spawn(async move {
[INFO] [stdout]      |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 24s
[INFO] running `Command { std: "docker" "inspect" "c881cbcc9c663956a500e2b8a16b3f53bc7e42025abf8d3ead62fa97d33d9293", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c881cbcc9c663956a500e2b8a16b3f53bc7e42025abf8d3ead62fa97d33d9293", kill_on_drop: false }`
[INFO] [stdout] c881cbcc9c663956a500e2b8a16b3f53bc7e42025abf8d3ead62fa97d33d9293
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 4c89646c75f7d72e34514fe550a912bb33d17c02890e10c4bf30201bf61092e5
[INFO] running `Command { std: "docker" "start" "-a" "4c89646c75f7d72e34514fe550a912bb33d17c02890e10c4bf30201bf61092e5", kill_on_drop: false }`
[INFO] [stderr]    Compiling subtle v2.6.1
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling digest v0.9.0
[INFO] [stderr]    Compiling crunchy v0.2.3
[INFO] [stderr]    Compiling regex-syntax v0.8.5
[INFO] [stderr]    Compiling base64ct v1.8.0
[INFO] [stderr]    Compiling const-oid v0.7.1
[INFO] [stderr]    Compiling getrandom v0.1.16
[INFO] [stderr]    Compiling block-padding v0.3.3
[INFO] [stderr]    Compiling num-bigint v0.2.6
[INFO] [stderr]    Compiling gcc v0.3.55
[INFO] [stderr]    Compiling num-bigint-dig v0.8.4
[INFO] [stderr]    Compiling iana-time-zone v0.1.63
[INFO] [stderr]    Compiling block-buffer v0.9.0
[INFO] [stderr]    Compiling rand v0.4.6
[INFO] [stderr]    Compiling rustc-serialize v0.3.25
[INFO] [stderr]    Compiling base64 v0.12.3
[INFO] [stderr]    Compiling libsecp256k1-core v0.2.2
[INFO] [stderr]    Compiling crypto-bigint v0.3.2
[INFO] [stderr]    Compiling rand_core v0.5.1
[INFO] [stderr]    Compiling inout v0.1.4
[INFO] [stderr]    Compiling crypto-mac v0.8.0
[INFO] [stderr]    Compiling sha2 v0.9.9
[INFO] [stderr]    Compiling pem-rfc7468 v0.3.1
[INFO] [stderr]    Compiling cipher v0.4.4
[INFO] [stderr]    Compiling rand_chacha v0.2.2
[INFO] [stderr]    Compiling hmac v0.8.1
[INFO] [stderr]    Compiling time v0.1.45
[INFO] [stderr]    Compiling siphasher v0.3.11
[INFO] [stderr]    Compiling anstyle-query v1.1.3
[INFO] [stderr]    Compiling hmac-drbg v0.3.0
[INFO] [stderr]    Compiling anstream v0.6.19
[INFO] [stderr]    Compiling jiff v0.2.14
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> src/lib.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[macro_use]
[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: `webpki`
[INFO] [stdout]   --> src/lib.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | use webpki;
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ClientResponse`
[INFO] [stdout]   --> src/lib.rs:27:43
[INFO] [stdout]    |
[INFO] [stdout] 27 | use awc::{Client, Connector, BoxedSocket, ClientResponse,
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]     --> src/lib.rs:1142:16
[INFO] [stdout]      |
[INFO] [stdout] 1142 |         top -= (len - offset); //更新缓冲区当前长度
[INFO] [stdout]      |                ^            ^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1142 -         top -= (len - offset); //更新缓冲区当前长度
[INFO] [stdout] 1142 +         top -= len - offset; //更新缓冲区当前长度
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:199:29
[INFO] [stdout]     |
[INFO] [stdout] 199 |                         let mut client = Client::builder()
[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: `Buf`
[INFO] [stdout]   --> src/lib.rs:29:13
[INFO] [stdout]    |
[INFO] [stdout] 29 | use bytes::{Buf, BufMut, Bytes, BytesMut};
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:88:17
[INFO] [stdout]    |
[INFO] [stdout] 88 |             let mut runner = System::new();
[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]    --> src/lib.rs:120:21
[INFO] [stdout]     |
[INFO] [stdout] 120 |                 let mut ws = AsyncWebsocket::new(self.rt.clone(),
[INFO] [stdout]     |                     ----^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `error`
[INFO] [stdout]    --> src/lib.rs:727:53
[INFO] [stdout]     |
[INFO] [stdout] 727 |         if let AsyncWebsocketStatus::Error(_, _, _, error) = self {
[INFO] [stdout]     |                                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_error`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/lib.rs:1372:13
[INFO] [stdout]      |
[INFO] [stdout] 1372 |     fn poll(mut self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Self::Output> {
[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]     --> src/lib.rs:1527:13
[INFO] [stdout]      |
[INFO] [stdout] 1527 |     fn poll(mut self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Self::Output> {
[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]   --> src/lib.rs:89:13
[INFO] [stdout]    |
[INFO] [stdout] 89 |             send.send(());
[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] 89 |             let _ = send.send(());
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:158:21
[INFO] [stdout]     |
[INFO] [stdout] 158 |                     ws_con.send(ws::Message::Close(Some(CloseReason::from(CloseCode::Other(500))))).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 _ = ws_con.send(ws::Message::Close(Some(CloseReason::from(CloseCode::Other(500))))).await;
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:232:37
[INFO] [stdout]     |
[INFO] [stdout] 232 | ...                   ws_con.send(ws::Message::Close(None)).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] 232 |                                     let _ = ws_con.send(ws::Message::Close(None)).await;
[INFO] [stdout]     |                                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:241:37
[INFO] [stdout]     |
[INFO] [stdout] 241 | / ...                   sender.send_async(AsyncWebsocketCmd::ReceiveSeed(ws_copy,
[INFO] [stdout] 242 | | ...                                                                    task_id,
[INFO] [stdout] 243 | | ...                                                                    format!("{:?}", resp),
[INFO] [stdout] 244 | | ...                                                                    None,
[INFO] [stdout] 245 | | ...                                                                    5000)).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] 241 |                                     let _ = sender.send_async(AsyncWebsocketCmd::ReceiveSeed(ws_copy,
[INFO] [stdout]     |                                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:286:49
[INFO] [stdout]     |
[INFO] [stdout] 286 | / ...                   sender.send_async(AsyncWebsocketCmd::ReceiveSeed(
[INFO] [stdout] 287 | | ...                       ws_copy,
[INFO] [stdout] 288 | | ...                       task_id,
[INFO] [stdout] 289 | | ...                       resp,
[INFO] [stdout] 290 | | ...                       received_message,
[INFO] [stdout] 291 | | ...                       receive_timeout)).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] 286 |                                                 let _ = sender.send_async(AsyncWebsocketCmd::ReceiveSeed(
[INFO] [stdout]     |                                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:464:41
[INFO] [stdout]     |
[INFO] [stdout] 464 | / ...                   sender.send_async(AsyncWebsocketCmd::Receive(
[INFO] [stdout] 465 | | ...                       ws_copy,
[INFO] [stdout] 466 | | ...                       task_id,
[INFO] [stdout] 467 | | ...                       require_count,
[INFO] [stdout] ...   |
[INFO] [stdout] 470 | | ...                       receive_timeout,
[INFO] [stdout] 471 | | ...                       result)).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] 464 |                                         let _ = sender.send_async(AsyncWebsocketCmd::Receive(
[INFO] [stdout]     |                                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:501:57
[INFO] [stdout]     |
[INFO] [stdout] 501 | / ...                   sender.send_async(AsyncWebsocketCmd::Receive(
[INFO] [stdout] 502 | | ...                       ws_copy,
[INFO] [stdout] 503 | | ...                       task_id,
[INFO] [stdout] 504 | | ...                       require_count,
[INFO] [stdout] ...   |
[INFO] [stdout] 507 | | ...                       receive_timeout,
[INFO] [stdout] 508 | | ...                       result)).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] 501 |                                                         let _ = sender.send_async(AsyncWebsocketCmd::Receive(
[INFO] [stdout]     |                                                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:550:69
[INFO] [stdout]     |
[INFO] [stdout] 550 | / ...                   sender.send_async(AsyncWebsocketCmd::Receive(
[INFO] [stdout] 551 | | ...                       ws_copy,
[INFO] [stdout] 552 | | ...                       task_id,
[INFO] [stdout] 553 | | ...                       Some(count - 1),
[INFO] [stdout] ...   |
[INFO] [stdout] 556 | | ...                       receive_timeout,
[INFO] [stdout] 557 | | ...                       result)).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] 550 |                                                                     let _ = sender.send_async(AsyncWebsocketCmd::Receive(
[INFO] [stdout]     |                                                                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:559:69
[INFO] [stdout]     |
[INFO] [stdout] 559 | / ...                   sender.send_async(AsyncWebsocketCmd::Receive(
[INFO] [stdout] 560 | | ...                       ws_copy,
[INFO] [stdout] 561 | | ...                       task_id,
[INFO] [stdout] 562 | | ...                       None,
[INFO] [stdout] ...   |
[INFO] [stdout] 565 | | ...                       receive_timeout,
[INFO] [stdout] 566 | | ...                       result)).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] 559 |                                                                     let _ = sender.send_async(AsyncWebsocketCmd::Receive(
[INFO] [stdout]     |                                                                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:632:29
[INFO] [stdout]     |
[INFO] [stdout] 632 | ...                   ws_con.send(ws::Message::Close(close_reason)).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] 632 |                             let _ = ws_con.send(ws::Message::Close(close_reason)).await;
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:927:9
[INFO] [stdout]     |
[INFO] [stdout] 927 | /         wait_any.spawn(rt.clone(),
[INFO] [stdout] 928 | |                        AsyncOpenWebsocket::new(rt.clone(),
[INFO] [stdout] 929 | |                                                task_id,
[INFO] [stdout] 930 | |                                                ws,
[INFO] [stdout] 931 | |                                                is_strict,
[INFO] [stdout] 932 | |                                                is_sync_seed,
[INFO] [stdout] 933 | |                                                timeout).boxed());
[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] 927 |         let _ = wait_any.spawn(rt.clone(),
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:934:9
[INFO] [stdout]     |
[INFO] [stdout] 934 | / ...   wait_any.spawn(rt.clone(),
[INFO] [stdout] 935 | | ...                  async move {
[INFO] [stdout] 936 | | ...                      rt.timeout(timeout as usize).await;
[INFO] [stdout] 937 | | ...                      Err(Error::new(ErrorKind::TimedOut, format!("Open websocket failed, url: {}, protocols: {:?}, reason: co...
[INFO] [stdout] 938 | | ...                  }.boxed());
[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] 934 |         let _ = wait_any.spawn(rt.clone(),
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]     --> src/lib.rs:1313:9
[INFO] [stdout]      |
[INFO] [stdout] 1313 | /         self.rt.spawn(async move {
[INFO] [stdout] 1314 | |             if let Err(e) = ws.send_to_client(cmd).await {
[INFO] [stdout] 1315 | |                 error!("Open websocket failed, reason: {:?}", e);
[INFO] [stdout] 1316 | |             }
[INFO] [stdout] 1317 | |         });
[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] 1313 |         let _ = self.rt.spawn(async move {
[INFO] [stdout]      |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]     --> src/lib.rs:1391:9
[INFO] [stdout]      |
[INFO] [stdout] 1391 | /         self.rt.spawn(async move {
[INFO] [stdout] 1392 | |             if let Err(e) = ws.send_to_client(cmd).await {
[INFO] [stdout] 1393 | |                 error!("Send websocket failed, reason: {:?}", e);
[INFO] [stdout] 1394 | |             }
[INFO] [stdout] 1395 | |         });
[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] 1391 |         let _ = self.rt.spawn(async move {
[INFO] [stdout]      |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]     --> src/lib.rs:1465:9
[INFO] [stdout]      |
[INFO] [stdout] 1465 | /         self.rt.spawn(async move {
[INFO] [stdout] 1466 | |             if let Err(e) = ws.send_to_client(cmd).await {
[INFO] [stdout] 1467 | |                 error!("Receive websocket failed, reason: {:?}", e);
[INFO] [stdout] 1468 | |             }
[INFO] [stdout] 1469 | |         });
[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] 1465 |         let _ = self.rt.spawn(async move {
[INFO] [stdout]      |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]     --> src/lib.rs:1546:9
[INFO] [stdout]      |
[INFO] [stdout] 1546 | /         self.rt.spawn(async move {
[INFO] [stdout] 1547 | |             if let Err(e) = ws.send_to_client(cmd).await {
[INFO] [stdout] 1548 | |                 error!("Close websocket failed, reason: {:?}", e);
[INFO] [stdout] 1549 | |             }
[INFO] [stdout] 1550 | |         });
[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] 1546 |         let _ = self.rt.spawn(async move {
[INFO] [stdout]      |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling aes v0.8.4
[INFO] [stderr]    Compiling cbc v0.1.2
[INFO] [stderr]    Compiling rand v0.7.3
[INFO] [stderr]    Compiling libsecp256k1-gen-ecmult v0.2.1
[INFO] [stderr]    Compiling libsecp256k1-gen-genmult v0.2.1
[INFO] [stderr]    Compiling rust-crypto v0.2.36
[INFO] [stderr]    Compiling der v0.5.1
[INFO] [stderr]    Compiling libsecp256k1 v0.6.0
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling chrono v0.4.41
[INFO] [stderr]    Compiling rand v0.3.23
[INFO] [stderr]    Compiling num-iter v0.1.45
[INFO] [stderr]    Compiling num-bigint v0.4.6
[INFO] [stderr]    Compiling pi_hash_value v0.1.0
[INFO] [stderr]    Compiling spki v0.5.4
[INFO] [stderr]    Compiling pkcs8 v0.8.0
[INFO] [stderr]    Compiling regex-automata v0.4.9
[INFO] [stderr]    Compiling pkcs1 v0.3.3
[INFO] [stderr]    Compiling pi_bon v0.3.1
[INFO] [stderr]    Compiling rsa v0.6.1
[INFO] [stderr]    Compiling pi_atom v0.6.1
[INFO] [stderr]    Compiling simple_asn1 v0.4.1
[INFO] [stderr]    Compiling regex v1.11.1
[INFO] [stderr]    Compiling pem v0.8.3
[INFO] [stderr]    Compiling env_filter v0.1.3
[INFO] [stderr]    Compiling jsonwebtoken v7.2.0
[INFO] [stderr]    Compiling env_logger v0.11.8
[INFO] [stderr]    Compiling pi_crypto v0.1.1
[INFO] [stderr]    Compiling pi_ws v0.6.1
[INFO] [stderr]    Compiling pi_async_wsc v0.5.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> src/lib.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[macro_use]
[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: `webpki`
[INFO] [stdout]   --> src/lib.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | use webpki;
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ClientResponse`
[INFO] [stdout]   --> src/lib.rs:27:43
[INFO] [stdout]    |
[INFO] [stdout] 27 | use awc::{Client, Connector, BoxedSocket, ClientResponse,
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]     --> src/lib.rs:1142:16
[INFO] [stdout]      |
[INFO] [stdout] 1142 |         top -= (len - offset); //更新缓冲区当前长度
[INFO] [stdout]      |                ^            ^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1142 -         top -= (len - offset); //更新缓冲区当前长度
[INFO] [stdout] 1142 +         top -= len - offset; //更新缓冲区当前长度
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BoxFuture`
[INFO] [stdout]   --> tests/test.rs:10:34
[INFO] [stdout]    |
[INFO] [stdout] 10 | use futures::future::{FutureExt, BoxFuture};
[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: `AsyncService`, `Ready`, `SocketStatus`, `TlsConfig`, and `tls_connect::TlsSocket`
[INFO] [stdout]   --> tests/test.rs:25:11
[INFO] [stdout]    |
[INFO] [stdout] 25 | use tcp::{AsyncService, Socket, SocketHandle, SocketConfig, SocketStatus, SocketEvent,
[INFO] [stdout]    |           ^^^^^^^^^^^^                                      ^^^^^^^^^^^^
[INFO] [stdout] 26 |           connect::TcpSocket,
[INFO] [stdout] 27 |           tls_connect::TlsSocket,
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 28 |           server::{PortsAdapterFactory, SocketListener},
[INFO] [stdout] 29 |           utils::{TlsConfig, Ready}};
[INFO] [stdout]    |                   ^^^^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> tests/test.rs:69:13
[INFO] [stdout]    |
[INFO] [stdout] 69 |         let mut msg = if self.is_strict() {
[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: `connect`
[INFO] [stdout]   --> tests/test.rs:89:23
[INFO] [stdout]    |
[INFO] [stdout] 89 |                       connect: WsSocket<S>,
[INFO] [stdout]    |                       ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_connect`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]   --> tests/test.rs:90:23
[INFO] [stdout]    |
[INFO] [stdout] 90 |                       context: WsSession,
[INFO] [stdout]    |                       ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `connect`
[INFO] [stdout]    --> tests/test.rs:102:25
[INFO] [stdout]     |
[INFO] [stdout] 102 |                         connect: WsSocket<S>,
[INFO] [stdout]     |                         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_connect`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]    --> tests/test.rs:103:25
[INFO] [stdout]     |
[INFO] [stdout] 103 |                         context: &mut WsSession,
[INFO] [stdout]     |                         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `event`
[INFO] [stdout]    --> tests/test.rs:104:25
[INFO] [stdout]     |
[INFO] [stdout] 104 |                         event: SocketEvent) -> LocalBoxFuture<'static, Result<()>> {
[INFO] [stdout]     |                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_event`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> tests/test.rs:160:13
[INFO] [stdout]     |
[INFO] [stdout] 160 |         let mut runner = System::new();
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `driver`
[INFO] [stdout]    --> tests/test.rs:153:12
[INFO] [stdout]     |
[INFO] [stdout] 153 |         Ok(driver) => {
[INFO] [stdout]     |            ^^^^^^ help: if this is intentional, prefix it with an underscore: `_driver`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> tests/test.rs:330:9
[INFO] [stdout]     |
[INFO] [stdout] 330 |     let mut handler = AsyncWebsocketHandler::default();
[INFO] [stdout]     |         ----^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `driver`
[INFO] [stdout]    --> tests/test.rs:317:12
[INFO] [stdout]     |
[INFO] [stdout] 317 |         Ok(driver) => {
[INFO] [stdout]     |            ^^^^^^ help: if this is intentional, prefix it with an underscore: `_driver`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> tests/test.rs:444:9
[INFO] [stdout]     |
[INFO] [stdout] 444 |     let mut handler = AsyncWebsocketHandler::default();
[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/test.rs:473:9
[INFO] [stdout]     |
[INFO] [stdout] 473 |     let mut err_count = Arc::new(AtomicUsize::new(0));
[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/test.rs:474:9
[INFO] [stdout]     |
[INFO] [stdout] 474 |     let mut ok_count = Arc::new(AtomicUsize::new(0));
[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]    --> src/lib.rs:199:29
[INFO] [stdout]     |
[INFO] [stdout] 199 |                         let mut client = Client::builder()
[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 `Result` that must be used
[INFO] [stdout]    --> tests/test.rs:193:53
[INFO] [stdout]     |
[INFO] [stdout] 193 | ...                   last_ws_con.send(ws::Message::Close(None)).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] 193 |                                                     let _ = last_ws_con.send(ws::Message::Close(None)).await;
[INFO] [stdout]     |                                                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> tests/test.rs:250:45
[INFO] [stdout]     |
[INFO] [stdout] 250 | ...                   ws_con.send(ws::Message::Close(None)).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] 250 |                                             let _ = ws_con.send(ws::Message::Close(None)).await;
[INFO] [stdout]     |                                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> tests/test.rs:265:5
[INFO] [stdout]     |
[INFO] [stdout] 265 |     sender.send(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] 265 |     let _ = sender.send(0);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> tests/test.rs:269:5
[INFO] [stdout]     |
[INFO] [stdout] 269 |     sender.send(1);
[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] 269 |     let _ = sender.send(1);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> tests/test.rs:273:5
[INFO] [stdout]     |
[INFO] [stdout] 273 |     sender.send(2);
[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] 273 |     let _ = sender.send(2);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> tests/test.rs:277:5
[INFO] [stdout]     |
[INFO] [stdout] 277 |     sender.send(3);
[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] 277 |     let _ = sender.send(3);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> tests/test.rs:363:5
[INFO] [stdout]     |
[INFO] [stdout] 363 | /     rt.spawn(async move {
[INFO] [stdout] 364 | |         println!("!!!!!!Websocket status: {:?}", ws.get_status());
[INFO] [stdout] 365 | |         match ws.open(true, true, 5000).await {
[INFO] [stdout] 366 | |             Err(e) => {
[INFO] [stdout] ...   |
[INFO] [stdout] 383 | |     });
[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] 363 |     let _ = rt.spawn(async move {
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> tests/test.rs:375:21
[INFO] [stdout]     |
[INFO] [stdout] 375 |                     ws.send(AsyncWebsocketMessage::Text(ByteString::from("Hello Ws!".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] 375 |                     let _ = ws.send(AsyncWebsocketMessage::Text(ByteString::from("Hello Ws!".to_string()))).await;
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> tests/test.rs:376:21
[INFO] [stdout]     |
[INFO] [stdout] 376 |                     ws.send(AsyncWebsocketMessage::Binary(Bytes::from("Hello Ws!"))).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] 376 |                     let _ = ws.send(AsyncWebsocketMessage::Binary(Bytes::from("Hello Ws!"))).await;
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> tests/test.rs:377:21
[INFO] [stdout]     |
[INFO] [stdout] 377 | ...   ws.send(AsyncWebsocketMessage::Binary(Bytes::from("a...aaaaaaaaaaaaaaaaaaaaaaaaaa"))).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] 377 |                     let _ = ws.send(AsyncWebsocketMessage::Binary(Bytes::from("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"))).await;
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> tests/test.rs:380:17
[INFO] [stdout]     |
[INFO] [stdout] 380 |                 ws.close(AsyncWebsocketCloseCode::Normal).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] 380 |                 let _ = ws.close(AsyncWebsocketCloseCode::Normal).await;
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> tests/test.rs:486:9
[INFO] [stdout]     |
[INFO] [stdout] 486 | /         rt.spawn(async move {
[INFO] [stdout] 487 | |             println!("!!!!!!Websocket status: {:?}", ws_copy.get_status());
[INFO] [stdout] 488 | |             let now = std::time::Instant::now();
[INFO] [stdout] 489 | |             match ws_copy.open(true, true, 30000).await {
[INFO] [stdout] ...   |
[INFO] [stdout] 509 | |             sender.send(());
[INFO] [stdout] 510 | |         });
[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] 486 |         let _ = rt.spawn(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> tests/test.rs:505:21
[INFO] [stdout]     |
[INFO] [stdout] 505 |                     ws_copy.close(AsyncWebsocketCloseCode::Normal).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] 505 |                     let _ = ws_copy.close(AsyncWebsocketCloseCode::Normal).await;
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> tests/test.rs:509:13
[INFO] [stdout]     |
[INFO] [stdout] 509 |             sender.send(());
[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] 509 |             let _ = sender.send(());
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `Result::<T, E>::is_ok` that must be used
[INFO] [stdout]    --> tests/test.rs:512:9
[INFO] [stdout]     |
[INFO] [stdout] 512 |         receiver.recv().is_ok();
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: if you intended to assert that this is ok, consider `.unwrap()` instead
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 512 |         let _ = receiver.recv().is_ok();
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> tests/test.rs:522:5
[INFO] [stdout]     |
[INFO] [stdout] 522 | /     rt.spawn(async move {
[INFO] [stdout] 523 | |         if ws.get_status() > 0 && ws.get_status() < 3 {
[INFO] [stdout] 524 | |             if let Ok(_) = ws.receive_once(None, 1).await {
[INFO] [stdout] ...   |
[INFO] [stdout] 529 | |     });
[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] 522 |     let _ = rt.spawn(async move {
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Buf`
[INFO] [stdout]   --> src/lib.rs:29:13
[INFO] [stdout]    |
[INFO] [stdout] 29 | use bytes::{Buf, BufMut, Bytes, BytesMut};
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:88:17
[INFO] [stdout]    |
[INFO] [stdout] 88 |             let mut runner = System::new();
[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]    --> src/lib.rs:120:21
[INFO] [stdout]     |
[INFO] [stdout] 120 |                 let mut ws = AsyncWebsocket::new(self.rt.clone(),
[INFO] [stdout]     |                     ----^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `error`
[INFO] [stdout]    --> src/lib.rs:727:53
[INFO] [stdout]     |
[INFO] [stdout] 727 |         if let AsyncWebsocketStatus::Error(_, _, _, error) = self {
[INFO] [stdout]     |                                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_error`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/lib.rs:1372:13
[INFO] [stdout]      |
[INFO] [stdout] 1372 |     fn poll(mut self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Self::Output> {
[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]     --> src/lib.rs:1527:13
[INFO] [stdout]      |
[INFO] [stdout] 1527 |     fn poll(mut self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Self::Output> {
[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]   --> src/lib.rs:89:13
[INFO] [stdout]    |
[INFO] [stdout] 89 |             send.send(());
[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] 89 |             let _ = send.send(());
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:158:21
[INFO] [stdout]     |
[INFO] [stdout] 158 |                     ws_con.send(ws::Message::Close(Some(CloseReason::from(CloseCode::Other(500))))).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 _ = ws_con.send(ws::Message::Close(Some(CloseReason::from(CloseCode::Other(500))))).await;
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:232:37
[INFO] [stdout]     |
[INFO] [stdout] 232 | ...                   ws_con.send(ws::Message::Close(None)).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] 232 |                                     let _ = ws_con.send(ws::Message::Close(None)).await;
[INFO] [stdout]     |                                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:241:37
[INFO] [stdout]     |
[INFO] [stdout] 241 | / ...                   sender.send_async(AsyncWebsocketCmd::ReceiveSeed(ws_copy,
[INFO] [stdout] 242 | | ...                                                                    task_id,
[INFO] [stdout] 243 | | ...                                                                    format!("{:?}", resp),
[INFO] [stdout] 244 | | ...                                                                    None,
[INFO] [stdout] 245 | | ...                                                                    5000)).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] 241 |                                     let _ = sender.send_async(AsyncWebsocketCmd::ReceiveSeed(ws_copy,
[INFO] [stdout]     |                                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:286:49
[INFO] [stdout]     |
[INFO] [stdout] 286 | / ...                   sender.send_async(AsyncWebsocketCmd::ReceiveSeed(
[INFO] [stdout] 287 | | ...                       ws_copy,
[INFO] [stdout] 288 | | ...                       task_id,
[INFO] [stdout] 289 | | ...                       resp,
[INFO] [stdout] 290 | | ...                       received_message,
[INFO] [stdout] 291 | | ...                       receive_timeout)).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] 286 |                                                 let _ = sender.send_async(AsyncWebsocketCmd::ReceiveSeed(
[INFO] [stdout]     |                                                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:464:41
[INFO] [stdout]     |
[INFO] [stdout] 464 | / ...                   sender.send_async(AsyncWebsocketCmd::Receive(
[INFO] [stdout] 465 | | ...                       ws_copy,
[INFO] [stdout] 466 | | ...                       task_id,
[INFO] [stdout] 467 | | ...                       require_count,
[INFO] [stdout] ...   |
[INFO] [stdout] 470 | | ...                       receive_timeout,
[INFO] [stdout] 471 | | ...                       result)).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] 464 |                                         let _ = sender.send_async(AsyncWebsocketCmd::Receive(
[INFO] [stdout]     |                                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:501:57
[INFO] [stdout]     |
[INFO] [stdout] 501 | / ...                   sender.send_async(AsyncWebsocketCmd::Receive(
[INFO] [stdout] 502 | | ...                       ws_copy,
[INFO] [stdout] 503 | | ...                       task_id,
[INFO] [stdout] 504 | | ...                       require_count,
[INFO] [stdout] ...   |
[INFO] [stdout] 507 | | ...                       receive_timeout,
[INFO] [stdout] 508 | | ...                       result)).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] 501 |                                                         let _ = sender.send_async(AsyncWebsocketCmd::Receive(
[INFO] [stdout]     |                                                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:550:69
[INFO] [stdout]     |
[INFO] [stdout] 550 | / ...                   sender.send_async(AsyncWebsocketCmd::Receive(
[INFO] [stdout] 551 | | ...                       ws_copy,
[INFO] [stdout] 552 | | ...                       task_id,
[INFO] [stdout] 553 | | ...                       Some(count - 1),
[INFO] [stdout] ...   |
[INFO] [stdout] 556 | | ...                       receive_timeout,
[INFO] [stdout] 557 | | ...                       result)).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] 550 |                                                                     let _ = sender.send_async(AsyncWebsocketCmd::Receive(
[INFO] [stdout]     |                                                                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:559:69
[INFO] [stdout]     |
[INFO] [stdout] 559 | / ...                   sender.send_async(AsyncWebsocketCmd::Receive(
[INFO] [stdout] 560 | | ...                       ws_copy,
[INFO] [stdout] 561 | | ...                       task_id,
[INFO] [stdout] 562 | | ...                       None,
[INFO] [stdout] ...   |
[INFO] [stdout] 565 | | ...                       receive_timeout,
[INFO] [stdout] 566 | | ...                       result)).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] 559 |                                                                     let _ = sender.send_async(AsyncWebsocketCmd::Receive(
[INFO] [stdout]     |                                                                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:632:29
[INFO] [stdout]     |
[INFO] [stdout] 632 | ...                   ws_con.send(ws::Message::Close(close_reason)).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] 632 |                             let _ = ws_con.send(ws::Message::Close(close_reason)).await;
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:927:9
[INFO] [stdout]     |
[INFO] [stdout] 927 | /         wait_any.spawn(rt.clone(),
[INFO] [stdout] 928 | |                        AsyncOpenWebsocket::new(rt.clone(),
[INFO] [stdout] 929 | |                                                task_id,
[INFO] [stdout] 930 | |                                                ws,
[INFO] [stdout] 931 | |                                                is_strict,
[INFO] [stdout] 932 | |                                                is_sync_seed,
[INFO] [stdout] 933 | |                                                timeout).boxed());
[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] 927 |         let _ = wait_any.spawn(rt.clone(),
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:934:9
[INFO] [stdout]     |
[INFO] [stdout] 934 | / ...   wait_any.spawn(rt.clone(),
[INFO] [stdout] 935 | | ...                  async move {
[INFO] [stdout] 936 | | ...                      rt.timeout(timeout as usize).await;
[INFO] [stdout] 937 | | ...                      Err(Error::new(ErrorKind::TimedOut, format!("Open websocket failed, url: {}, protocols: {:?}, reason: co...
[INFO] [stdout] 938 | | ...                  }.boxed());
[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] 934 |         let _ = wait_any.spawn(rt.clone(),
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]     --> src/lib.rs:1313:9
[INFO] [stdout]      |
[INFO] [stdout] 1313 | /         self.rt.spawn(async move {
[INFO] [stdout] 1314 | |             if let Err(e) = ws.send_to_client(cmd).await {
[INFO] [stdout] 1315 | |                 error!("Open websocket failed, reason: {:?}", e);
[INFO] [stdout] 1316 | |             }
[INFO] [stdout] 1317 | |         });
[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] 1313 |         let _ = self.rt.spawn(async move {
[INFO] [stdout]      |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]     --> src/lib.rs:1391:9
[INFO] [stdout]      |
[INFO] [stdout] 1391 | /         self.rt.spawn(async move {
[INFO] [stdout] 1392 | |             if let Err(e) = ws.send_to_client(cmd).await {
[INFO] [stdout] 1393 | |                 error!("Send websocket failed, reason: {:?}", e);
[INFO] [stdout] 1394 | |             }
[INFO] [stdout] 1395 | |         });
[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] 1391 |         let _ = self.rt.spawn(async move {
[INFO] [stdout]      |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]     --> src/lib.rs:1465:9
[INFO] [stdout]      |
[INFO] [stdout] 1465 | /         self.rt.spawn(async move {
[INFO] [stdout] 1466 | |             if let Err(e) = ws.send_to_client(cmd).await {
[INFO] [stdout] 1467 | |                 error!("Receive websocket failed, reason: {:?}", e);
[INFO] [stdout] 1468 | |             }
[INFO] [stdout] 1469 | |         });
[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] 1465 |         let _ = self.rt.spawn(async move {
[INFO] [stdout]      |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]     --> src/lib.rs:1546:9
[INFO] [stdout]      |
[INFO] [stdout] 1546 | /         self.rt.spawn(async move {
[INFO] [stdout] 1547 | |             if let Err(e) = ws.send_to_client(cmd).await {
[INFO] [stdout] 1548 | |                 error!("Close websocket failed, reason: {:?}", e);
[INFO] [stdout] 1549 | |             }
[INFO] [stdout] 1550 | |         });
[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] 1546 |         let _ = self.rt.spawn(async move {
[INFO] [stdout]      |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 31.56s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: num-bigint-dig v0.8.4
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 4`
[INFO] running `Command { std: "docker" "inspect" "4c89646c75f7d72e34514fe550a912bb33d17c02890e10c4bf30201bf61092e5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4c89646c75f7d72e34514fe550a912bb33d17c02890e10c4bf30201bf61092e5", kill_on_drop: false }`
[INFO] [stdout] 4c89646c75f7d72e34514fe550a912bb33d17c02890e10c4bf30201bf61092e5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 5cd6b0aaca06c2fc32319f6f05c21288c12ddc43005090b4495046297139005b
[INFO] running `Command { std: "docker" "start" "-a" "5cd6b0aaca06c2fc32319f6f05c21288c12ddc43005090b4495046297139005b", kill_on_drop: false }`
[INFO] [stderr] warning: unused `#[macro_use]` import
[INFO] [stderr]  --> src/lib.rs:1:1
[INFO] [stderr]   |
[INFO] [stderr] 1 | #[macro_use]
[INFO] [stderr]   | ^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `webpki`
[INFO] [stderr]   --> src/lib.rs:21:5
[INFO] [stderr]    |
[INFO] [stderr] 21 | use webpki;
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `ClientResponse`
[INFO] [stderr]   --> src/lib.rs:27:43
[INFO] [stderr]    |
[INFO] [stderr] 27 | use awc::{Client, Connector, BoxedSocket, ClientResponse,
[INFO] [stderr]    |                                           ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around assigned value
[INFO] [stderr]     --> src/lib.rs:1142:16
[INFO] [stderr]      |
[INFO] [stderr] 1142 |         top -= (len - offset); //更新缓冲区当前长度
[INFO] [stderr]      |                ^            ^
[INFO] [stderr]      |
[INFO] [stderr]      = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]      |
[INFO] [stderr] 1142 -         top -= (len - offset); //更新缓冲区当前长度
[INFO] [stderr] 1142 +         top -= len - offset; //更新缓冲区当前长度
[INFO] [stderr]      |
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/lib.rs:199:29
[INFO] [stderr]     |
[INFO] [stderr] 199 |                         let mut client = Client::builder()
[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 import: `Buf`
[INFO] [stderr]   --> src/lib.rs:29:13
[INFO] [stderr]    |
[INFO] [stderr] 29 | use bytes::{Buf, BufMut, Bytes, BytesMut};
[INFO] [stderr]    |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/lib.rs:88:17
[INFO] [stderr]    |
[INFO] [stderr] 88 |             let mut runner = System::new();
[INFO] [stderr]    |                 ----^^^^^^
[INFO] [stderr]    |                 |
[INFO] [stderr]    |                 help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/lib.rs:120:21
[INFO] [stderr]     |
[INFO] [stderr] 120 |                 let mut ws = AsyncWebsocket::new(self.rt.clone(),
[INFO] [stderr]     |                     ----^^
[INFO] [stderr]     |                     |
[INFO] [stderr]     |                     help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `error`
[INFO] [stderr]    --> src/lib.rs:727:53
[INFO] [stderr]     |
[INFO] [stderr] 727 |         if let AsyncWebsocketStatus::Error(_, _, _, error) = self {
[INFO] [stderr]     |                                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_error`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> src/lib.rs:1372:13
[INFO] [stderr]      |
[INFO] [stderr] 1372 |     fn poll(mut self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Self::Output> {
[INFO] [stderr]      |             ----^^^^
[INFO] [stderr]      |             |
[INFO] [stderr]      |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> src/lib.rs:1527:13
[INFO] [stderr]      |
[INFO] [stderr] 1527 |     fn poll(mut self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Self::Output> {
[INFO] [stderr]      |             ----^^^^
[INFO] [stderr]      |             |
[INFO] [stderr]      |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> src/lib.rs:89:13
[INFO] [stderr]    |
[INFO] [stderr] 89 |             send.send(());
[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] 89 |             let _ = send.send(());
[INFO] [stderr]    |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/lib.rs:158:21
[INFO] [stderr]     |
[INFO] [stderr] 158 |                     ws_con.send(ws::Message::Close(Some(CloseReason::from(CloseCode::Other(500))))).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 _ = ws_con.send(ws::Message::Close(Some(CloseReason::from(CloseCode::Other(500))))).await;
[INFO] [stderr]     |                     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/lib.rs:232:37
[INFO] [stderr]     |
[INFO] [stderr] 232 | ...                   ws_con.send(ws::Message::Close(None)).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] 232 |                                     let _ = ws_con.send(ws::Message::Close(None)).await;
[INFO] [stderr]     |                                     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/lib.rs:241:37
[INFO] [stderr]     |
[INFO] [stderr] 241 | / ...                   sender.send_async(AsyncWebsocketCmd::ReceiveSeed(ws_copy,
[INFO] [stderr] 242 | | ...                                                                    task_id,
[INFO] [stderr] 243 | | ...                                                                    format!("{:?}", resp),
[INFO] [stderr] 244 | | ...                                                                    None,
[INFO] [stderr] 245 | | ...                                                                    5000)).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] 241 |                                     let _ = sender.send_async(AsyncWebsocketCmd::ReceiveSeed(ws_copy,
[INFO] [stderr]     |                                     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/lib.rs:286:49
[INFO] [stderr]     |
[INFO] [stderr] 286 | / ...                   sender.send_async(AsyncWebsocketCmd::ReceiveSeed(
[INFO] [stderr] 287 | | ...                       ws_copy,
[INFO] [stderr] 288 | | ...                       task_id,
[INFO] [stderr] 289 | | ...                       resp,
[INFO] [stderr] 290 | | ...                       received_message,
[INFO] [stderr] 291 | | ...                       receive_timeout)).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] 286 |                                                 let _ = sender.send_async(AsyncWebsocketCmd::ReceiveSeed(
[INFO] [stderr]     |                                                 +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/lib.rs:464:41
[INFO] [stderr]     |
[INFO] [stderr] 464 | / ...                   sender.send_async(AsyncWebsocketCmd::Receive(
[INFO] [stderr] 465 | | ...                       ws_copy,
[INFO] [stderr] 466 | | ...                       task_id,
[INFO] [stderr] 467 | | ...                       require_count,
[INFO] [stderr] ...   |
[INFO] [stderr] 470 | | ...                       receive_timeout,
[INFO] [stderr] 471 | | ...                       result)).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] 464 |                                         let _ = sender.send_async(AsyncWebsocketCmd::Receive(
[INFO] [stderr]     |                                         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/lib.rs:501:57
[INFO] [stderr]     |
[INFO] [stderr] 501 | / ...                   sender.send_async(AsyncWebsocketCmd::Receive(
[INFO] [stderr] 502 | | ...                       ws_copy,
[INFO] [stderr] 503 | | ...                       task_id,
[INFO] [stderr] 504 | | ...                       require_count,
[INFO] [stderr] ...   |
[INFO] [stderr] 507 | | ...                       receive_timeout,
[INFO] [stderr] 508 | | ...                       result)).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] 501 |                                                         let _ = sender.send_async(AsyncWebsocketCmd::Receive(
[INFO] [stderr]     |                                                         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/lib.rs:550:69
[INFO] [stderr]     |
[INFO] [stderr] 550 | / ...                   sender.send_async(AsyncWebsocketCmd::Receive(
[INFO] [stderr] 551 | | ...                       ws_copy,
[INFO] [stderr] 552 | | ...                       task_id,
[INFO] [stderr] 553 | | ...                       Some(count - 1),
[INFO] [stderr] ...   |
[INFO] [stderr] 556 | | ...                       receive_timeout,
[INFO] [stderr] 557 | | ...                       result)).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] 550 |                                                                     let _ = sender.send_async(AsyncWebsocketCmd::Receive(
[INFO] [stderr]     |                                                                     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/lib.rs:559:69
[INFO] [stderr]     |
[INFO] [stderr] 559 | / ...                   sender.send_async(AsyncWebsocketCmd::Receive(
[INFO] [stderr] 560 | | ...                       ws_copy,
[INFO] [stderr] 561 | | ...                       task_id,
[INFO] [stderr] 562 | | ...                       None,
[INFO] [stderr] ...   |
[INFO] [stderr] 565 | | ...                       receive_timeout,
[INFO] [stderr] 566 | | ...                       result)).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] 559 |                                                                     let _ = sender.send_async(AsyncWebsocketCmd::Receive(
[INFO] [stderr]     |                                                                     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/lib.rs:632:29
[INFO] [stderr]     |
[INFO] [stderr] 632 | ...                   ws_con.send(ws::Message::Close(close_reason)).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] 632 |                             let _ = ws_con.send(ws::Message::Close(close_reason)).await;
[INFO] [stderr]     |                             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/lib.rs:927:9
[INFO] [stderr]     |
[INFO] [stderr] 927 | /         wait_any.spawn(rt.clone(),
[INFO] [stderr] 928 | |                        AsyncOpenWebsocket::new(rt.clone(),
[INFO] [stderr] 929 | |                                                task_id,
[INFO] [stderr] 930 | |                                                ws,
[INFO] [stderr] 931 | |                                                is_strict,
[INFO] [stderr] 932 | |                                                is_sync_seed,
[INFO] [stderr] 933 | |                                                timeout).boxed());
[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] 927 |         let _ = wait_any.spawn(rt.clone(),
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/lib.rs:934:9
[INFO] [stderr]     |
[INFO] [stderr] 934 | / ...   wait_any.spawn(rt.clone(),
[INFO] [stderr] 935 | | ...                  async move {
[INFO] [stderr] 936 | | ...                      rt.timeout(timeout as usize).await;
[INFO] [stderr] 937 | | ...                      Err(Error::new(ErrorKind::TimedOut, format!("Open websocket failed, url: {}, protocols: {:?}, reason: co...
[INFO] [stderr] 938 | | ...                  }.boxed());
[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] 934 |         let _ = wait_any.spawn(rt.clone(),
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]     --> src/lib.rs:1313:9
[INFO] [stderr]      |
[INFO] [stderr] 1313 | /         self.rt.spawn(async move {
[INFO] [stderr] 1314 | |             if let Err(e) = ws.send_to_client(cmd).await {
[INFO] [stderr] 1315 | |                 error!("Open websocket failed, reason: {:?}", e);
[INFO] [stderr] 1316 | |             }
[INFO] [stderr] 1317 | |         });
[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] 1313 |         let _ = self.rt.spawn(async move {
[INFO] [stderr]      |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]     --> src/lib.rs:1391:9
[INFO] [stderr]      |
[INFO] [stderr] 1391 | /         self.rt.spawn(async move {
[INFO] [stderr] 1392 | |             if let Err(e) = ws.send_to_client(cmd).await {
[INFO] [stderr] 1393 | |                 error!("Send websocket failed, reason: {:?}", e);
[INFO] [stderr] 1394 | |             }
[INFO] [stderr] 1395 | |         });
[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] 1391 |         let _ = self.rt.spawn(async move {
[INFO] [stderr]      |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]     --> src/lib.rs:1465:9
[INFO] [stderr]      |
[INFO] [stderr] 1465 | /         self.rt.spawn(async move {
[INFO] [stderr] 1466 | |             if let Err(e) = ws.send_to_client(cmd).await {
[INFO] [stderr] 1467 | |                 error!("Receive websocket failed, reason: {:?}", e);
[INFO] [stderr] 1468 | |             }
[INFO] [stderr] 1469 | |         });
[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] 1465 |         let _ = self.rt.spawn(async move {
[INFO] [stderr]      |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]     --> src/lib.rs:1546:9
[INFO] [stderr]      |
[INFO] [stderr] 1546 | /         self.rt.spawn(async move {
[INFO] [stderr] 1547 | |             if let Err(e) = ws.send_to_client(cmd).await {
[INFO] [stderr] 1548 | |                 error!("Close websocket failed, reason: {:?}", e);
[INFO] [stderr] 1549 | |             }
[INFO] [stderr] 1550 | |         });
[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] 1546 |         let _ = self.rt.spawn(async move {
[INFO] [stderr]      |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: `pi_async_wsc` (lib) generated 27 warnings (run `cargo fix --lib -p pi_async_wsc` to apply 9 suggestions)
[INFO] [stderr] warning: unused import: `BoxFuture`
[INFO] [stderr]   --> tests/test.rs:10:34
[INFO] [stderr]    |
[INFO] [stderr] 10 | use futures::future::{FutureExt, BoxFuture};
[INFO] [stderr]    |                                  ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `AsyncService`, `Ready`, `SocketStatus`, `TlsConfig`, and `tls_connect::TlsSocket`
[INFO] [stderr]   --> tests/test.rs:25:11
[INFO] [stderr]    |
[INFO] [stderr] 25 | use tcp::{AsyncService, Socket, SocketHandle, SocketConfig, SocketStatus, SocketEvent,
[INFO] [stderr]    |           ^^^^^^^^^^^^                                      ^^^^^^^^^^^^
[INFO] [stderr] 26 |           connect::TcpSocket,
[INFO] [stderr] 27 |           tls_connect::TlsSocket,
[INFO] [stderr]    |           ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 28 |           server::{PortsAdapterFactory, SocketListener},
[INFO] [stderr] 29 |           utils::{TlsConfig, Ready}};
[INFO] [stderr]    |                   ^^^^^^^^^  ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> tests/test.rs:69:13
[INFO] [stderr]    |
[INFO] [stderr] 69 |         let mut msg = if self.is_strict() {
[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: `connect`
[INFO] [stderr]   --> tests/test.rs:89:23
[INFO] [stderr]    |
[INFO] [stderr] 89 |                       connect: WsSocket<S>,
[INFO] [stderr]    |                       ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_connect`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `context`
[INFO] [stderr]   --> tests/test.rs:90:23
[INFO] [stderr]    |
[INFO] [stderr] 90 |                       context: WsSession,
[INFO] [stderr]    |                       ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `connect`
[INFO] [stderr]    --> tests/test.rs:102:25
[INFO] [stderr]     |
[INFO] [stderr] 102 |                         connect: WsSocket<S>,
[INFO] [stderr]     |                         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_connect`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `context`
[INFO] [stderr]    --> tests/test.rs:103:25
[INFO] [stderr]     |
[INFO] [stderr] 103 |                         context: &mut WsSession,
[INFO] [stderr]     |                         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `event`
[INFO] [stderr]    --> tests/test.rs:104:25
[INFO] [stderr]     |
[INFO] [stderr] 104 |                         event: SocketEvent) -> LocalBoxFuture<'static, Result<()>> {
[INFO] [stderr]     |                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_event`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> tests/test.rs:160:13
[INFO] [stderr]     |
[INFO] [stderr] 160 |         let mut runner = System::new();
[INFO] [stderr]     |             ----^^^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `driver`
[INFO] [stderr]    --> tests/test.rs:153:12
[INFO] [stderr]     |
[INFO] [stderr] 153 |         Ok(driver) => {
[INFO] [stderr]     |            ^^^^^^ help: if this is intentional, prefix it with an underscore: `_driver`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> tests/test.rs:330:9
[INFO] [stderr]     |
[INFO] [stderr] 330 |     let mut handler = AsyncWebsocketHandler::default();
[INFO] [stderr]     |         ----^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `driver`
[INFO] [stderr]    --> tests/test.rs:317:12
[INFO] [stderr]     |
[INFO] [stderr] 317 |         Ok(driver) => {
[INFO] [stderr]     |            ^^^^^^ help: if this is intentional, prefix it with an underscore: `_driver`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> tests/test.rs:444:9
[INFO] [stderr]     |
[INFO] [stderr] 444 |     let mut handler = AsyncWebsocketHandler::default();
[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/test.rs:473:9
[INFO] [stderr]     |
[INFO] [stderr] 473 |     let mut err_count = Arc::new(AtomicUsize::new(0));
[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/test.rs:474:9
[INFO] [stderr]     |
[INFO] [stderr] 474 |     let mut ok_count = Arc::new(AtomicUsize::new(0));
[INFO] [stderr]     |         ----^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> tests/test.rs:193:53
[INFO] [stderr]     |
[INFO] [stderr] 193 | ...                   last_ws_con.send(ws::Message::Close(None)).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] 193 |                                                     let _ = last_ws_con.send(ws::Message::Close(None)).await;
[INFO] [stderr]     |                                                     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> tests/test.rs:250:45
[INFO] [stderr]     |
[INFO] [stderr] 250 | ...                   ws_con.send(ws::Message::Close(None)).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] 250 |                                             let _ = ws_con.send(ws::Message::Close(None)).await;
[INFO] [stderr]     |                                             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> tests/test.rs:265:5
[INFO] [stderr]     |
[INFO] [stderr] 265 |     sender.send(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] 265 |     let _ = sender.send(0);
[INFO] [stderr]     |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> tests/test.rs:269:5
[INFO] [stderr]     |
[INFO] [stderr] 269 |     sender.send(1);
[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] 269 |     let _ = sender.send(1);
[INFO] [stderr]     |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> tests/test.rs:273:5
[INFO] [stderr]     |
[INFO] [stderr] 273 |     sender.send(2);
[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] 273 |     let _ = sender.send(2);
[INFO] [stderr]     |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> tests/test.rs:277:5
[INFO] [stderr]     |
[INFO] [stderr] 277 |     sender.send(3);
[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] 277 |     let _ = sender.send(3);
[INFO] [stderr]     |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> tests/test.rs:363:5
[INFO] [stderr]     |
[INFO] [stderr] 363 | /     rt.spawn(async move {
[INFO] [stderr] 364 | |         println!("!!!!!!Websocket status: {:?}", ws.get_status());
[INFO] [stderr] 365 | |         match ws.open(true, true, 5000).await {
[INFO] [stderr] 366 | |             Err(e) => {
[INFO] [stderr] ...   |
[INFO] [stderr] 383 | |     });
[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] 363 |     let _ = rt.spawn(async move {
[INFO] [stderr]     |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> tests/test.rs:375:21
[INFO] [stderr]     |
[INFO] [stderr] 375 |                     ws.send(AsyncWebsocketMessage::Text(ByteString::from("Hello Ws!".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] 375 |                     let _ = ws.send(AsyncWebsocketMessage::Text(ByteString::from("Hello Ws!".to_string()))).await;
[INFO] [stderr]     |                     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> tests/test.rs:376:21
[INFO] [stderr]     |
[INFO] [stderr] 376 |                     ws.send(AsyncWebsocketMessage::Binary(Bytes::from("Hello Ws!"))).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] 376 |                     let _ = ws.send(AsyncWebsocketMessage::Binary(Bytes::from("Hello Ws!"))).await;
[INFO] [stderr]     |                     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> tests/test.rs:377:21
[INFO] [stderr]     |
[INFO] [stderr] 377 | ...   ws.send(AsyncWebsocketMessage::Binary(Bytes::from("a...aaaaaaaaaaaaaaaaaaaaaaaaaa"))).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] 377 |                     let _ = ws.send(AsyncWebsocketMessage::Binary(Bytes::from("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"))).await;
[INFO] [stderr]     |                     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> tests/test.rs:380:17
[INFO] [stderr]     |
[INFO] [stderr] 380 |                 ws.close(AsyncWebsocketCloseCode::Normal).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] 380 |                 let _ = ws.close(AsyncWebsocketCloseCode::Normal).await;
[INFO] [stderr]     |                 +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> tests/test.rs:486:9
[INFO] [stderr]     |
[INFO] [stderr] 486 | /         rt.spawn(async move {
[INFO] [stderr] 487 | |             println!("!!!!!!Websocket status: {:?}", ws_copy.get_status());
[INFO] [stderr] 488 | |             let now = std::time::Instant::now();
[INFO] [stderr] 489 | |             match ws_copy.open(true, true, 30000).await {
[INFO] [stderr] ...   |
[INFO] [stderr] 509 | |             sender.send(());
[INFO] [stderr] 510 | |         });
[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] 486 |         let _ = rt.spawn(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> tests/test.rs:505:21
[INFO] [stderr]     |
[INFO] [stderr] 505 |                     ws_copy.close(AsyncWebsocketCloseCode::Normal).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] 505 |                     let _ = ws_copy.close(AsyncWebsocketCloseCode::Normal).await;
[INFO] [stderr]     |                     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> tests/test.rs:509:13
[INFO] [stderr]     |
[INFO] [stderr] 509 |             sender.send(());
[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] 509 |             let _ = sender.send(());
[INFO] [stderr]     |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused return value of `Result::<T, E>::is_ok` that must be used
[INFO] [stderr]    --> tests/test.rs:512:9
[INFO] [stderr]     |
[INFO] [stderr] 512 |         receiver.recv().is_ok();
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: if you intended to assert that this is ok, consider `.unwrap()` instead
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 512 |         let _ = receiver.recv().is_ok();
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> tests/test.rs:522:5
[INFO] [stderr]     |
[INFO] [stderr] 522 | /     rt.spawn(async move {
[INFO] [stderr] 523 | |         if ws.get_status() > 0 && ws.get_status() < 3 {
[INFO] [stderr] 524 | |             if let Ok(_) = ws.receive_once(None, 1).await {
[INFO] [stderr] ...   |
[INFO] [stderr] 529 | |     });
[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] 522 |     let _ = rt.spawn(async move {
[INFO] [stderr]     |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: `pi_async_wsc` (test "test") generated 31 warnings (run `cargo fix --test "test" -p pi_async_wsc` to apply 15 suggestions)
[INFO] [stderr] warning: `pi_async_wsc` (lib test) generated 27 warnings (27 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.50s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: num-bigint-dig v0.8.4
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 4`
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/pi_async_wsc-04f8c3c061352d48)
[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] [stderr]      Running tests/test.rs (/opt/rustwide/target/debug/deps/test-1615b51abe9014c4)
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test test_tls_wsc ... FAILED
[INFO] [stdout] test test_awc ... FAILED
[INFO] [stdout] test test_wsc has been running for over 60 seconds
[ERROR] error running command: no output for 300 seconds
[INFO] running `Command { std: "docker" "inspect" "5cd6b0aaca06c2fc32319f6f05c21288c12ddc43005090b4495046297139005b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5cd6b0aaca06c2fc32319f6f05c21288c12ddc43005090b4495046297139005b", kill_on_drop: false }`
[INFO] [stdout] 5cd6b0aaca06c2fc32319f6f05c21288c12ddc43005090b4495046297139005b
