[INFO] fetching crate mesh-portal-tcp-server 0.2.0-rc1...
[INFO] checking mesh-portal-tcp-server-0.2.0-rc1 against 5c543b0b8c73c7b72bc8284ced4fb22ead15734d for pr-160186
[INFO] extracting crate mesh-portal-tcp-server 0.2.0-rc1 into /workspace/builds/worker-6-tc1/source
[INFO] started tweaking crates.io crate mesh-portal-tcp-server 0.2.0-rc1
[INFO] finished tweaking crates.io crate mesh-portal-tcp-server 0.2.0-rc1
[INFO] tweaked toml for crates.io crate mesh-portal-tcp-server 0.2.0-rc1 written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate mesh-portal-tcp-server 0.2.0-rc1 on toolchain 5c543b0b8c73c7b72bc8284ced4fb22ead15734d
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+5c543b0b8c73c7b72bc8284ced4fb22ead15734d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+5c543b0b8c73c7b72bc8284ced4fb22ead15734d" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 84 packages to highest compatible versions
[INFO] [stderr]       Adding bincode v1.3.3 (available: v3.0.0)
[INFO] [stderr]       Adding psm v0.1.24 (available: v0.1.32)
[INFO] [stderr]       Adding strum v0.21.0 (available: v0.28.0)
[INFO] [stderr]       Adding strum_macros v0.21.1 (available: v0.28.0)
[INFO] [stderr]       Adding uuid v0.8.2 (available: v1.28.0)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+5c543b0b8c73c7b72bc8284ced4fb22ead15734d" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded strum v0.21.0
[INFO] [stderr]   Downloaded mesh-portal v0.2.0-rc1
[INFO] [stderr]   Downloaded strum_macros v0.21.1
[INFO] [stderr]   Downloaded mesh-portal-tcp-common v0.2.0-rc1
[INFO] [stderr]   Downloaded uuid v0.8.2
[INFO] [stderr]   Downloaded brownstone v1.1.0
[INFO] [stderr]   Downloaded mesh-portal-api-server v0.2.0-rc1
[INFO] [stderr]   Downloaded joinery v2.1.0
[INFO] [stderr]   Downloaded indent_write v2.2.0
[INFO] [stderr]   Downloaded mesh-portal-versions v0.2.0-rc1
[INFO] [stderr]   Downloaded nom-supreme v0.6.0
[INFO] [stderr]   Downloaded dashmap v4.0.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 5bbe94d6b50ee0eb417e8a02d040d49982c1e4a0562b7d1ec97a5a261af136cc
[INFO] running `Command { std: "docker" "start" "5bbe94d6b50ee0eb417e8a02d040d49982c1e4a0562b7d1ec97a5a261af136cc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5bbe94d6b50ee0eb417e8a02d040d49982c1e4a0562b7d1ec97a5a261af136cc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "5bbe94d6b50ee0eb417e8a02d040d49982c1e4a0562b7d1ec97a5a261af136cc" "/opt/rustwide/cargo-home/bin/cargo" "+5c543b0b8c73c7b72bc8284ced4fb22ead15734d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5bbe94d6b50ee0eb417e8a02d040d49982c1e4a0562b7d1ec97a5a261af136cc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "5bbe94d6b50ee0eb417e8a02d040d49982c1e4a0562b7d1ec97a5a261af136cc" "/opt/rustwide/cargo-home/bin/cargo" "+5c543b0b8c73c7b72bc8284ced4fb22ead15734d" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling serde_core v1.0.229
[INFO] [stderr]    Compiling serde v1.0.229
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking brownstone v1.1.0
[INFO] [stderr]    Compiling heck v0.3.3
[INFO] [stderr]     Checking joinery v2.1.0
[INFO] [stderr]     Checking indent_write v2.2.0
[INFO] [stderr]     Checking regex-automata v0.4.18
[INFO] [stderr]     Checking futures-sink v0.3.34
[INFO] [stderr]    Compiling futures-macro v0.3.34
[INFO] [stderr]     Checking strum v0.21.0
[INFO] [stderr]    Compiling tokio-macros v2.7.2
[INFO] [stderr]     Checking semver-parser v0.10.3
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]     Checking dashmap v4.0.2
[INFO] [stderr]     Checking futures-channel v0.3.34
[INFO] [stderr]     Checking nom-supreme v0.6.0
[INFO] [stderr]     Checking semver v0.11.0
[INFO] [stderr]     Checking tokio v1.53.3
[INFO] [stderr]     Checking futures-util v0.3.34
[INFO] [stderr]     Checking regex v1.13.1
[INFO] [stderr]    Compiling strum_macros v0.21.1
[INFO] [stderr]     Checking bincode v1.3.3
[INFO] [stderr]     Checking uuid v0.8.2
[INFO] [stderr]     Checking futures-executor v0.3.34
[INFO] [stderr]     Checking mesh-portal-versions v0.2.0-rc1
[INFO] [stderr]     Checking futures v0.3.34
[INFO] [stderr]     Checking mesh-portal v0.2.0-rc1
[INFO] [stderr]     Checking mesh-portal-tcp-common v0.2.0-rc1
[INFO] [stderr]     Checking mesh-portal-api-server v0.2.0-rc1
[INFO] [stderr]     Checking mesh-portal-tcp-server v0.2.0-rc1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> src/lib.rs:7:1
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[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 imports: `TryFrom` and `TryInto`
[INFO] [stdout]   --> src/lib.rs:10:20
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::convert::{TryFrom, TryInto};
[INFO] [stdout]    |                    ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread`
[INFO] [stdout]   --> src/lib.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::thread;
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OwnedReadHalf` and `OwnedWriteHalf`
[INFO] [stdout]   --> src/lib.rs:17:23
[INFO] [stdout]    |
[INFO] [stdout] 17 | use tokio::net::tcp::{OwnedReadHalf, OwnedWriteHalf};
[INFO] [stdout]    |                       ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::sync::mpsc::error::SendTimeoutError`
[INFO] [stdout]   --> src/lib.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use tokio::sync::mpsc::error::SendTimeoutError;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `mesh_portal::version::latest::frame::CloseReason`
[INFO] [stdout]   --> src/lib.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | use mesh_portal::version::latest::frame::CloseReason;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `mesh_portal::version::latest::messaging::Request`
[INFO] [stdout]   --> src/lib.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 | use mesh_portal::version::latest::messaging::Request;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Message` and `Response`
[INFO] [stdout]   --> src/lib.rs:26:47
[INFO] [stdout]    |
[INFO] [stdout] 26 | use mesh_portal::version::latest::messaging::{Message, Response};
[INFO] [stdout]    |                                               ^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Frame`
[INFO] [stdout]   --> src/lib.rs:28:51
[INFO] [stdout]    |
[INFO] [stdout] 28 | use mesh_portal::version::latest::portal::inlet::{Frame, Log};
[INFO] [stdout]    |                                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Exchanger`
[INFO] [stdout]   --> src/lib.rs:29:76
[INFO] [stdout]    |
[INFO] [stdout] 29 | use mesh_portal::version::latest::portal::{initin, initout, inlet, outlet, Exchanger};
[INFO] [stdout]    |                                                                            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ResourceStub`
[INFO] [stdout]   --> src/lib.rs:31:46
[INFO] [stdout]    |
[INFO] [stdout] 31 | use mesh_portal::version::latest::resource::{ResourceStub, Status};
[INFO] [stdout]    |                                              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]   --> src/lib.rs:35:13
[INFO] [stdout]    |
[INFO] [stdout] 35 | use serde::{Deserialize, Serialize};
[INFO] [stdout]    |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::future::Future`
[INFO] [stdout]   --> src/lib.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 36 | use std::future::Future;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AtomicU64` and `Ordering`
[INFO] [stdout]   --> src/lib.rs:37:25
[INFO] [stdout]    |
[INFO] [stdout] 37 | use std::sync::atomic::{AtomicU64, Ordering};
[INFO] [stdout]    |                         ^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::sync::broadcast::Receiver`
[INFO] [stdout]   --> src/lib.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 38 | use tokio::sync::broadcast::Receiver;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::sync::oneshot::error::RecvError`
[INFO] [stdout]   --> src/lib.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 39 | use tokio::sync::oneshot::error::RecvError;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> src/lib.rs:7:1
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[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 imports: `TryFrom` and `TryInto`
[INFO] [stdout]   --> src/lib.rs:10:20
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::convert::{TryFrom, TryInto};
[INFO] [stdout]    |                    ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread`
[INFO] [stdout]   --> src/lib.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::thread;
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `OwnedReadHalf` and `OwnedWriteHalf`
[INFO] [stdout]   --> src/lib.rs:17:23
[INFO] [stdout]    |
[INFO] [stdout] 17 | use tokio::net::tcp::{OwnedReadHalf, OwnedWriteHalf};
[INFO] [stdout]    |                       ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::sync::mpsc::error::SendTimeoutError`
[INFO] [stdout]   --> src/lib.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use tokio::sync::mpsc::error::SendTimeoutError;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `mesh_portal::version::latest::frame::CloseReason`
[INFO] [stdout]   --> src/lib.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | use mesh_portal::version::latest::frame::CloseReason;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `mesh_portal::version::latest::messaging::Request`
[INFO] [stdout]   --> src/lib.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 | use mesh_portal::version::latest::messaging::Request;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Message` and `Response`
[INFO] [stdout]   --> src/lib.rs:26:47
[INFO] [stdout]    |
[INFO] [stdout] 26 | use mesh_portal::version::latest::messaging::{Message, Response};
[INFO] [stdout]    |                                               ^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Frame`
[INFO] [stdout]   --> src/lib.rs:28:51
[INFO] [stdout]    |
[INFO] [stdout] 28 | use mesh_portal::version::latest::portal::inlet::{Frame, Log};
[INFO] [stdout]    |                                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Exchanger`
[INFO] [stdout]   --> src/lib.rs:29:76
[INFO] [stdout]    |
[INFO] [stdout] 29 | use mesh_portal::version::latest::portal::{initin, initout, inlet, outlet, Exchanger};
[INFO] [stdout]    |                                                                            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ResourceStub`
[INFO] [stdout]   --> src/lib.rs:31:46
[INFO] [stdout]    |
[INFO] [stdout] 31 | use mesh_portal::version::latest::resource::{ResourceStub, Status};
[INFO] [stdout]    |                                              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]   --> src/lib.rs:35:13
[INFO] [stdout]    |
[INFO] [stdout] 35 | use serde::{Deserialize, Serialize};
[INFO] [stdout]    |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::future::Future`
[INFO] [stdout]   --> src/lib.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 36 | use std::future::Future;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AtomicU64` and `Ordering`
[INFO] [stdout]   --> src/lib.rs:37:25
[INFO] [stdout]    |
[INFO] [stdout] 37 | use std::sync::atomic::{AtomicU64, Ordering};
[INFO] [stdout]    |                         ^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::sync::broadcast::Receiver`
[INFO] [stdout]   --> src/lib.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 38 | use tokio::sync::broadcast::Receiver;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::sync::oneshot::error::RecvError`
[INFO] [stdout]   --> src/lib.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 39 | use tokio::sync::oneshot::error::RecvError;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:189:13
[INFO] [stdout]     |
[INFO] [stdout] 189 |         let mut reader = PrimitiveFrameReader::new(reader);
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:190:13
[INFO] [stdout]     |
[INFO] [stdout] 190 |         let mut writer = PrimitiveFrameWriter::new(writer);
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncReadExt`
[INFO] [stdout]   --> src/lib.rs:16:17
[INFO] [stdout]    |
[INFO] [stdout] 16 | use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]    |                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncWriteExt`
[INFO] [stdout]   --> src/lib.rs:16:31
[INFO] [stdout]    |
[INFO] [stdout] 16 | use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]    |                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:189:13
[INFO] [stdout]     |
[INFO] [stdout] 189 |         let mut reader = PrimitiveFrameReader::new(reader);
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:190:13
[INFO] [stdout]     |
[INFO] [stdout] 190 |         let mut writer = PrimitiveFrameWriter::new(writer);
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncReadExt`
[INFO] [stdout]   --> src/lib.rs:16:17
[INFO] [stdout]    |
[INFO] [stdout] 16 | use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]    |                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `logger`
[INFO] [stdout]    --> src/lib.rs:315:21
[INFO] [stdout]     |
[INFO] [stdout] 315 |                 let logger = self.server.logger();
[INFO] [stdout]     |                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_logger`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncWriteExt`
[INFO] [stdout]   --> src/lib.rs:16:31
[INFO] [stdout]    |
[INFO] [stdout] 16 | use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]    |                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `logger`
[INFO] [stdout]    --> src/lib.rs:315:21
[INFO] [stdout]     |
[INFO] [stdout] 315 |                 let logger = self.server.logger();
[INFO] [stdout]     |                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_logger`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `writer`
[INFO] [stdout]    --> src/lib.rs:346:9
[INFO] [stdout]     |
[INFO] [stdout] 346 |         writer: &mut PrimitiveFrameWriter,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_writer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `call_tx` is never read
[INFO] [stdout]   --> src/lib.rs:79:5
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub struct PortalTcpServer {
[INFO] [stdout]    |            --------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 79 |     call_tx: mpsc::Sender<TcpServerCall>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `writer`
[INFO] [stdout]    --> src/lib.rs:346:9
[INFO] [stdout]     |
[INFO] [stdout] 346 |         writer: &mut PrimitiveFrameWriter,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_writer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `call_tx` is never read
[INFO] [stdout]   --> src/lib.rs:79:5
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub struct PortalTcpServer {
[INFO] [stdout]    |            --------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 79 |     call_tx: mpsc::Sender<TcpServerCall>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:120:41
[INFO] [stdout]     |
[INFO] [stdout] 120 | ...                   tx.send(server_event_broadcaster_tx.subscribe());
[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 _unused = ...` to ignore the resulting value without dropping it immediately
[INFO] [stdout]     |
[INFO] [stdout] 120 |                                         let _unused = tx.send(server_event_broadcaster_tx.subscribe());
[INFO] [stdout]     |                                         +++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:123:41
[INFO] [stdout]     |
[INFO] [stdout] 123 | ...                   tx.send(portal_broadcast_tx.subscribe());
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _unused = ...` to ignore the resulting value without dropping it immediately
[INFO] [stdout]     |
[INFO] [stdout] 123 |                                         let _unused = tx.send(portal_broadcast_tx.subscribe());
[INFO] [stdout]     |                                         +++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:171:21
[INFO] [stdout]     |
[INFO] [stdout] 171 |                     (&self).handle(stream).await;
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _unused = ...` to ignore the resulting value without dropping it immediately
[INFO] [stdout]     |
[INFO] [stdout] 171 |                     let _unused = (&self).handle(stream).await;
[INFO] [stdout]     |                     +++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:289:13
[INFO] [stdout]     |
[INFO] [stdout] 289 |             self.portal_broadcast_tx.send( PortalEvent::PortalAdded(portal_api));
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _unused = ...` to ignore the resulting value without dropping it immediately
[INFO] [stdout]     |
[INFO] [stdout] 289 |             let _unused = self.portal_broadcast_tx.send( PortalEvent::PortalAdded(portal_api));
[INFO] [stdout]     |             +++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:323:29
[INFO] [stdout]     |
[INFO] [stdout] 323 | ...                   writer.write(frame).await;
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _unused = ...` to ignore the resulting value without dropping it immediately
[INFO] [stdout]     |
[INFO] [stdout] 323 |                             let _unused = writer.write(frame).await;
[INFO] [stdout]     |                             +++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:120:41
[INFO] [stdout]     |
[INFO] [stdout] 120 | ...                   tx.send(server_event_broadcaster_tx.subscribe());
[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 _unused = ...` to ignore the resulting value without dropping it immediately
[INFO] [stdout]     |
[INFO] [stdout] 120 |                                         let _unused = tx.send(server_event_broadcaster_tx.subscribe());
[INFO] [stdout]     |                                         +++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:123:41
[INFO] [stdout]     |
[INFO] [stdout] 123 | ...                   tx.send(portal_broadcast_tx.subscribe());
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _unused = ...` to ignore the resulting value without dropping it immediately
[INFO] [stdout]     |
[INFO] [stdout] 123 |                                         let _unused = tx.send(portal_broadcast_tx.subscribe());
[INFO] [stdout]     |                                         +++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:171:21
[INFO] [stdout]     |
[INFO] [stdout] 171 |                     (&self).handle(stream).await;
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _unused = ...` to ignore the resulting value without dropping it immediately
[INFO] [stdout]     |
[INFO] [stdout] 171 |                     let _unused = (&self).handle(stream).await;
[INFO] [stdout]     |                     +++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:289:13
[INFO] [stdout]     |
[INFO] [stdout] 289 |             self.portal_broadcast_tx.send( PortalEvent::PortalAdded(portal_api));
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _unused = ...` to ignore the resulting value without dropping it immediately
[INFO] [stdout]     |
[INFO] [stdout] 289 |             let _unused = self.portal_broadcast_tx.send( PortalEvent::PortalAdded(portal_api));
[INFO] [stdout]     |             +++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:323:29
[INFO] [stdout]     |
[INFO] [stdout] 323 | ...                   writer.write(frame).await;
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _unused = ...` to ignore the resulting value without dropping it immediately
[INFO] [stdout]     |
[INFO] [stdout] 323 |                             let _unused = writer.write(frame).await;
[INFO] [stdout]     |                             +++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 8.79s
[INFO] running `Command { std: "docker" "inspect" "5bbe94d6b50ee0eb417e8a02d040d49982c1e4a0562b7d1ec97a5a261af136cc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5bbe94d6b50ee0eb417e8a02d040d49982c1e4a0562b7d1ec97a5a261af136cc", kill_on_drop: false }`
[INFO] [stdout] 5bbe94d6b50ee0eb417e8a02d040d49982c1e4a0562b7d1ec97a5a261af136cc
