[INFO] fetching crate iryna 0.1.4...
[INFO] checking iryna-0.1.4 against master#30f74ff0dc4d66debc8b50724c446f817e5f75f4 for pr-121848-1
[INFO] extracting crate iryna 0.1.4 into /workspace/builds/worker-2-tc1/source
[INFO] validating manifest of crates.io crate iryna 0.1.4 on toolchain 30f74ff0dc4d66debc8b50724c446f817e5f75f4
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+30f74ff0dc4d66debc8b50724c446f817e5f75f4" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate iryna 0.1.4
[INFO] finished tweaking crates.io crate iryna 0.1.4
[INFO] tweaked toml for crates.io crate iryna 0.1.4 written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+30f74ff0dc4d66debc8b50724c446f817e5f75f4" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+30f74ff0dc4d66debc8b50724c446f817e5f75f4" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded parking_lot v0.4.8
[INFO] [stderr]   Downloaded chashmap v2.2.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+30f74ff0dc4d66debc8b50724c446f817e5f75f4" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 879aa45a4b097e1dce53bce5bcc5a04e809b99717a52f6bdf40a8b8f3163ece0
[INFO] running `Command { std: "docker" "start" "-a" "879aa45a4b097e1dce53bce5bcc5a04e809b99717a52f6bdf40a8b8f3163ece0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "879aa45a4b097e1dce53bce5bcc5a04e809b99717a52f6bdf40a8b8f3163ece0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "879aa45a4b097e1dce53bce5bcc5a04e809b99717a52f6bdf40a8b8f3163ece0", kill_on_drop: false }`
[INFO] [stdout] 879aa45a4b097e1dce53bce5bcc5a04e809b99717a52f6bdf40a8b8f3163ece0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+30f74ff0dc4d66debc8b50724c446f817e5f75f4" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 83285db1d4e4ea5eaca7af08b86c03026d93523727b75a1daa47f3ca115919f1
[INFO] running `Command { std: "docker" "start" "-a" "83285db1d4e4ea5eaca7af08b86c03026d93523727b75a1daa47f3ca115919f1", kill_on_drop: false }`
[INFO] [stderr]     Checking stable_deref_trait v1.2.0
[INFO] [stderr]     Checking log v0.4.21
[INFO] [stderr]     Checking rand v0.4.6
[INFO] [stderr]     Checking net2 v0.2.39
[INFO] [stderr]     Checking iovec v0.1.4
[INFO] [stderr]     Checking smallvec v0.6.14
[INFO] [stderr]     Checking owning_ref v0.3.3
[INFO] [stderr]     Checking mio v0.6.23
[INFO] [stderr]     Checking parking_lot_core v0.2.14
[INFO] [stderr]     Checking parking_lot v0.4.8
[INFO] [stderr]     Checking chashmap v2.2.2
[INFO] [stderr]     Checking iryna v0.1.4 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]  --> src/eventloop.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::time::Duration;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Read`, `Result`, `Write`
[INFO] [stdout]  --> src/eventloop.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::io::{Read, Result, Write};
[INFO] [stdout]   |               ^^^^  ^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RwLock`
[INFO] [stdout]  --> src/eventloop.rs:6:22
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::sync::{Arc, RwLock};
[INFO] [stdout]   |                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `acceptor::*`
[INFO] [stdout]  --> src/channel.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use acceptor::*;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `eventloop::*`
[INFO] [stdout]  --> src/channel.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use eventloop::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Clone` is imported redundantly
[INFO] [stdout]  --> src/acceptor.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::clone::Clone;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]  --> /rustc/30f74ff0dc4d66debc8b50724c446f817e5f75f4/library/std/src/prelude/mod.rs:105:13
[INFO] [stdout]   |
[INFO] [stdout]   = note: the item `Clone` is already defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Mutex`, `RwLock`
[INFO] [stdout]  --> src/acceptor.rs:4:22
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::sync::{Arc, Mutex, RwLock};
[INFO] [stdout]   |                      ^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]  --> src/eventloop.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::time::Duration;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `IpAddr`
[INFO] [stdout]  --> src/acceptor.rs:5:16
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::net::{IpAddr, SocketAddr};
[INFO] [stdout]   |                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Result`
[INFO] [stdout]  --> src/acceptor.rs:6:15
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::io::{Result, Write};
[INFO] [stdout]   |               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TcpStream`
[INFO] [stdout]  --> src/acceptor.rs:8:29
[INFO] [stdout]   |
[INFO] [stdout] 8 | use mio::net::{TcpListener, TcpStream};
[INFO] [stdout]   |                             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Read`, `Result`, `Write`
[INFO] [stdout]  --> src/eventloop.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::io::{Read, Result, Write};
[INFO] [stdout]   |               ^^^^  ^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RwLock`
[INFO] [stdout]  --> src/eventloop.rs:6:22
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::sync::{Arc, RwLock};
[INFO] [stdout]   |                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `acceptor::*`
[INFO] [stdout]  --> src/channel.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use acceptor::*;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `eventloop::*`
[INFO] [stdout]  --> src/channel.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use eventloop::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Clone` is imported redundantly
[INFO] [stdout]  --> src/acceptor.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::clone::Clone;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]  --> /rustc/30f74ff0dc4d66debc8b50724c446f817e5f75f4/library/std/src/prelude/mod.rs:105:13
[INFO] [stdout]   |
[INFO] [stdout]   = note: the item `Clone` is already defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Mutex`, `RwLock`
[INFO] [stdout]  --> src/acceptor.rs:4:22
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::sync::{Arc, Mutex, RwLock};
[INFO] [stdout]   |                      ^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `IpAddr`
[INFO] [stdout]  --> src/acceptor.rs:5:16
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::net::{IpAddr, SocketAddr};
[INFO] [stdout]   |                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Result`
[INFO] [stdout]  --> src/acceptor.rs:6:15
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::io::{Result, Write};
[INFO] [stdout]   |               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TcpStream`
[INFO] [stdout]  --> src/acceptor.rs:8:29
[INFO] [stdout]   |
[INFO] [stdout] 8 | use mio::net::{TcpListener, TcpStream};
[INFO] [stdout]   |                             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `std` is imported redundantly
[INFO] [stdout]   --> src/lib.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     use std;
[INFO] [stdout]    |         ^^^ the item `std` is already imported by prelude
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `channel::*`
[INFO] [stdout]   --> src/lib.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 |     use channel::*;
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::thread::sleep_ms`: replaced by `std::thread::sleep`
[INFO] [stdout]   --> src/lib.rs:40:22
[INFO] [stdout]    |
[INFO] [stdout] 40 |         std::thread::sleep_ms(99999999999999);
[INFO] [stdout]    |                      ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `match_default_bindings` has been stable since 1.26.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> src/lib.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(match_default_bindings)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/channel.rs:12:24
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub type Closure = Box<Fn(&mut ChanCtx) + Send + Sync>;
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub type Closure = Box<dyn Fn(&mut ChanCtx) + Send + Sync>;
[INFO] [stdout]    |                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `match_default_bindings` has been stable since 1.26.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> src/lib.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(match_default_bindings)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/channel.rs:12:24
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub type Closure = Box<Fn(&mut ChanCtx) + Send + Sync>;
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub type Closure = Box<dyn Fn(&mut ChanCtx) + Send + Sync>;
[INFO] [stdout]    |                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Write`
[INFO] [stdout]  --> src/acceptor.rs:6:23
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::io::{Result, Write};
[INFO] [stdout]   |                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_right`: superseded by `trim_end`
[INFO] [stdout]   --> src/lib.rs:27:28
[INFO] [stdout]    |
[INFO] [stdout] 27 |                 match sbuf.trim_right() {
[INFO] [stdout]    |                            ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]    |
[INFO] [stdout] 27 |                 match sbuf.trim_end() {
[INFO] [stdout]    |                            ~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Write`
[INFO] [stdout]  --> src/acceptor.rs:6:23
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::io::{Result, Write};
[INFO] [stdout]   |                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EventLoop` is never constructed
[INFO] [stdout]   --> src/eventloop.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct EventLoop {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `attach`, and `run` are never used
[INFO] [stdout]   --> src/eventloop.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl EventLoop {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 18 |     pub fn new() -> EventLoop {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub fn attach(
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     pub fn run(&self) {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Closure` is never used
[INFO] [stdout]   --> src/channel.rs:12:10
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub type Closure = Box<Fn(&mut ChanCtx) + Send + Sync>;
[INFO] [stdout]    |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `OptionValue` is never used
[INFO] [stdout]   --> src/channel.rs:15:10
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub enum OptionValue {
[INFO] [stdout]    |          ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `OptionValue` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Channel` is never constructed
[INFO] [stdout]   --> src/channel.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct Channel {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `create` and `register` are never used
[INFO] [stdout]   --> src/channel.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl Channel {
[INFO] [stdout]    | ------------ associated items in this implementation
[INFO] [stdout] 28 |     pub fn create(
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 47 |     pub fn register(&self, selector: &Poll) {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChanCtx` is never constructed
[INFO] [stdout]   --> src/channel.rs:57:12
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub struct ChanCtx {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `close`, `write`, `read_test`, and `chan_id` are never used
[INFO] [stdout]    --> src/channel.rs:67:12
[INFO] [stdout]     |
[INFO] [stdout] 66  | impl ChanCtx {
[INFO] [stdout]     | ------------ associated items in this implementation
[INFO] [stdout] 67  |     pub fn new(
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 127 |     pub fn close(&self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 |     pub fn write(&mut self, data: &[u8]) -> Result<()> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 138 |     pub fn read_test(&mut self) -> String {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 154 |     pub fn chan_id(&self) -> Token {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Acceptor` is never constructed
[INFO] [stdout]   --> src/acceptor.rs:43:12
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub struct Acceptor {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/acceptor.rs:55:12
[INFO] [stdout]     |
[INFO] [stdout] 54  | impl Acceptor {
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout] 55  |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 75  |     pub fn opt_ttl_ms(&mut self, ttl: usize) -> &mut Self {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 81  |     pub fn opt_linger_ms(&mut self, linger: usize) -> &mut Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 88  |     pub fn opt_nodelay(&mut self, nodelay: bool) -> &mut Self {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 94  |     pub fn opt_keep_alive_ms(&mut self, keep_alive: usize) -> &mut Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 |     pub fn opt_recv_buf_size(&mut self, buf_size: usize) -> &mut Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 106 |     pub fn opt_send_buf_size(&mut self, buf_size: usize) -> &mut Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 113 |     pub fn worker_count(&mut self, size: usize) -> &mut Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 124 |     pub fn on_ready<T>(&mut self, p: T) -> &mut Self
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 133 |     pub fn on_receive<T>(&mut self, p: T) -> &mut Self
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 142 |     pub fn on_close<T>(&mut self, p: T) -> &mut Self
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 151 |     pub fn bind(&mut self, host: &str, port: u16) -> &mut Self {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 158 |     pub fn terminate(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 163 |     pub fn accept(&self) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 213 |     fn incr_id(cur_id: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `remote_addr` and `options` are never read
[INFO] [stdout]   --> src/channel.rs:58:5
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub struct ChanCtx {
[INFO] [stdout]    |            ------- fields in this struct
[INFO] [stdout] 58 |     remote_addr: SocketAddr,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 61 |     options: HashMap<String, OptionValue>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `chan_id` is never used
[INFO] [stdout]    --> src/channel.rs:154:12
[INFO] [stdout]     |
[INFO] [stdout] 66  | impl ChanCtx {
[INFO] [stdout]     | ------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 154 |     pub fn chan_id(&self) -> Token {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `opt_ttl_ms`, `opt_linger_ms`, `on_close`, and `terminate` are never used
[INFO] [stdout]    --> src/acceptor.rs:75:12
[INFO] [stdout]     |
[INFO] [stdout] 54  | impl Acceptor {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 75  |     pub fn opt_ttl_ms(&mut self, ttl: usize) -> &mut Self {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 81  |     pub fn opt_linger_ms(&mut self, linger: usize) -> &mut Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 142 |     pub fn on_close<T>(&mut self, p: T) -> &mut Self
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 158 |     pub fn terminate(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/channel.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 48 | /         selector.register(
[INFO] [stdout] 49 | |             &self.ctx.chan,
[INFO] [stdout] 50 | |             self.ctx.id,
[INFO] [stdout] 51 | |             Ready::readable(),
[INFO] [stdout] 52 | |             PollOpt::edge(),
[INFO] [stdout] 53 | |         );
[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)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 48 |         let _ = selector.register(
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/channel.rs:80:25
[INFO] [stdout]    |
[INFO] [stdout] 80 |                         ch.set_ttl(*ttl as u32);
[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] 80 |                         let _ = ch.set_ttl(*ttl as u32);
[INFO] [stdout]    |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/channel.rs:86:25
[INFO] [stdout]    |
[INFO] [stdout] 86 |                         ch.set_linger(Some(Duration::from_millis(*linger as u64)));
[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] 86 |                         let _ = ch.set_linger(Some(Duration::from_millis(*linger as u64)));
[INFO] [stdout]    |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/channel.rs:93:25
[INFO] [stdout]    |
[INFO] [stdout] 93 |                         ch.set_nodelay(*b);
[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] 93 |                         let _ = ch.set_nodelay(*b);
[INFO] [stdout]    |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/channel.rs:98:25
[INFO] [stdout]    |
[INFO] [stdout] 98 |                         ch.set_keepalive(Some(Duration::from_millis(*keepalive as u64)));
[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] 98 |                         let _ = ch.set_keepalive(Some(Duration::from_millis(*keepalive as u64)));
[INFO] [stdout]    |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/channel.rs:104:25
[INFO] [stdout]     |
[INFO] [stdout] 104 |                         ch.set_recv_buffer_size(*bufsize);
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 104 |                         let _ = ch.set_recv_buffer_size(*bufsize);
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/channel.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 48 | /         selector.register(
[INFO] [stdout] 49 | |             &self.ctx.chan,
[INFO] [stdout] 50 | |             self.ctx.id,
[INFO] [stdout] 51 | |             Ready::readable(),
[INFO] [stdout] 52 | |             PollOpt::edge(),
[INFO] [stdout] 53 | |         );
[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)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 48 |         let _ = selector.register(
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/channel.rs:110:25
[INFO] [stdout]     |
[INFO] [stdout] 110 |                         ch.set_send_buffer_size(*bufsize);
[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] 110 |                         let _ = ch.set_send_buffer_size(*bufsize);
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/channel.rs:80:25
[INFO] [stdout]    |
[INFO] [stdout] 80 |                         ch.set_ttl(*ttl as u32);
[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] 80 |                         let _ = ch.set_ttl(*ttl as u32);
[INFO] [stdout]    |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/channel.rs:129:9
[INFO] [stdout]     |
[INFO] [stdout] 129 |         self.selector.deregister(&self.chan);
[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] 129 |         let _ = self.selector.deregister(&self.chan);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/channel.rs:86:25
[INFO] [stdout]    |
[INFO] [stdout] 86 |                         ch.set_linger(Some(Duration::from_millis(*linger as u64)));
[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] 86 |                         let _ = ch.set_linger(Some(Duration::from_millis(*linger as u64)));
[INFO] [stdout]    |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/channel.rs:131:9
[INFO] [stdout]     |
[INFO] [stdout] 131 |         self.chan.shutdown(Shutdown::Both);
[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] 131 |         let _ = self.chan.shutdown(Shutdown::Both);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/channel.rs:93:25
[INFO] [stdout]    |
[INFO] [stdout] 93 |                         ch.set_nodelay(*b);
[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] 93 |                         let _ = ch.set_nodelay(*b);
[INFO] [stdout]    |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/acceptor.rs:61:17
[INFO] [stdout]    |
[INFO] [stdout] 61 |                 ch.write("Hello, world.\n".as_bytes());
[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] 61 |                 let _ = ch.write("Hello, world.\n".as_bytes());
[INFO] [stdout]    |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/channel.rs:98:25
[INFO] [stdout]    |
[INFO] [stdout] 98 |                         ch.set_keepalive(Some(Duration::from_millis(*keepalive as u64)));
[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] 98 |                         let _ = ch.set_keepalive(Some(Duration::from_millis(*keepalive as u64)));
[INFO] [stdout]    |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/acceptor.rs:64:17
[INFO] [stdout]    |
[INFO] [stdout] 64 |                 ch.write("Welcome\n".as_bytes());
[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] 64 |                 let _ = ch.write("Welcome\n".as_bytes());
[INFO] [stdout]    |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/channel.rs:104:25
[INFO] [stdout]     |
[INFO] [stdout] 104 |                         ch.set_recv_buffer_size(*bufsize);
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 104 |                         let _ = ch.set_recv_buffer_size(*bufsize);
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/acceptor.rs:67:17
[INFO] [stdout]    |
[INFO] [stdout] 67 |                 ch.write("Bye\n".as_bytes());
[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] 67 |                 let _ = ch.write("Bye\n".as_bytes());
[INFO] [stdout]    |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/channel.rs:110:25
[INFO] [stdout]     |
[INFO] [stdout] 110 |                         ch.set_send_buffer_size(*bufsize);
[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] 110 |                         let _ = ch.set_send_buffer_size(*bufsize);
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/lib.rs:32:25
[INFO] [stdout]    |
[INFO] [stdout] 32 |                         ch.write(sbuf.as_bytes());
[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] 32 |                         let _ = ch.write(sbuf.as_bytes());
[INFO] [stdout]    |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/channel.rs:129:9
[INFO] [stdout]     |
[INFO] [stdout] 129 |         self.selector.deregister(&self.chan);
[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] 129 |         let _ = self.selector.deregister(&self.chan);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/lib.rs:37:17
[INFO] [stdout]    |
[INFO] [stdout] 37 |                 ch.write("Welcome.\n".as_bytes());
[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] 37 |                 let _ = ch.write("Welcome.\n".as_bytes());
[INFO] [stdout]    |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/channel.rs:131:9
[INFO] [stdout]     |
[INFO] [stdout] 131 |         self.chan.shutdown(Shutdown::Both);
[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] 131 |         let _ = self.chan.shutdown(Shutdown::Both);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: literal out of range for `u32`
[INFO] [stdout]   --> src/lib.rs:40:31
[INFO] [stdout]    |
[INFO] [stdout] 40 |         std::thread::sleep_ms(99999999999999);
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: the literal `99999999999999` does not fit into the type `u32` whose range is `0..=4294967295`
[INFO] [stdout]    = note: `#[deny(overflowing_literals)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/acceptor.rs:61:17
[INFO] [stdout]    |
[INFO] [stdout] 61 |                 ch.write("Hello, world.\n".as_bytes());
[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] 61 |                 let _ = ch.write("Hello, world.\n".as_bytes());
[INFO] [stdout]    |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/acceptor.rs:64:17
[INFO] [stdout]    |
[INFO] [stdout] 64 |                 ch.write("Welcome\n".as_bytes());
[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] 64 |                 let _ = ch.write("Welcome\n".as_bytes());
[INFO] [stdout]    |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/acceptor.rs:67:17
[INFO] [stdout]    |
[INFO] [stdout] 67 |                 ch.write("Bye\n".as_bytes());
[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] 67 |                 let _ = ch.write("Bye\n".as_bytes());
[INFO] [stdout]    |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error; 34 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 35 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `iryna` (lib test) due to 2 previous errors; 34 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] running `Command { std: "docker" "inspect" "83285db1d4e4ea5eaca7af08b86c03026d93523727b75a1daa47f3ca115919f1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "83285db1d4e4ea5eaca7af08b86c03026d93523727b75a1daa47f3ca115919f1", kill_on_drop: false }`
[INFO] [stdout] 83285db1d4e4ea5eaca7af08b86c03026d93523727b75a1daa47f3ca115919f1
[INFO] checking iryna-0.1.4 against try#72eda894eb3548c7ba774079ce0afab42958d4ee for pr-121848-1
[INFO] extracting crate iryna 0.1.4 into /workspace/builds/worker-2-tc2/source
[INFO] validating manifest of crates.io crate iryna 0.1.4 on toolchain 72eda894eb3548c7ba774079ce0afab42958d4ee
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+72eda894eb3548c7ba774079ce0afab42958d4ee" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate iryna 0.1.4
[INFO] finished tweaking crates.io crate iryna 0.1.4
[INFO] tweaked toml for crates.io crate iryna 0.1.4 written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+72eda894eb3548c7ba774079ce0afab42958d4ee" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+72eda894eb3548c7ba774079ce0afab42958d4ee" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+72eda894eb3548c7ba774079ce0afab42958d4ee" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 51d5a30a9baf142d4c706bde7ca9502217d65a48ddfba4d770d727eded1b47ab
[INFO] running `Command { std: "docker" "start" "-a" "51d5a30a9baf142d4c706bde7ca9502217d65a48ddfba4d770d727eded1b47ab", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "51d5a30a9baf142d4c706bde7ca9502217d65a48ddfba4d770d727eded1b47ab", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "51d5a30a9baf142d4c706bde7ca9502217d65a48ddfba4d770d727eded1b47ab", kill_on_drop: false }`
[INFO] [stdout] 51d5a30a9baf142d4c706bde7ca9502217d65a48ddfba4d770d727eded1b47ab
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+72eda894eb3548c7ba774079ce0afab42958d4ee" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 97ffa68b67511be1b6dd5e122ab1010b45be20e489357ab2a3d21bc881b9c351
[INFO] running `Command { std: "docker" "start" "-a" "97ffa68b67511be1b6dd5e122ab1010b45be20e489357ab2a3d21bc881b9c351", kill_on_drop: false }`
[INFO] [stderr]     Checking stable_deref_trait v1.2.0
[INFO] [stderr]     Checking log v0.4.21
[INFO] [stderr]     Checking rand v0.4.6
[INFO] [stderr]     Checking iovec v0.1.4
[INFO] [stderr]     Checking net2 v0.2.39
[INFO] [stderr]     Checking smallvec v0.6.14
[INFO] [stderr]     Checking owning_ref v0.3.3
[INFO] [stderr]     Checking mio v0.6.23
[INFO] [stderr]     Checking parking_lot_core v0.2.14
[INFO] [stderr]     Checking parking_lot v0.4.8
[INFO] [stderr]     Checking chashmap v2.2.2
[INFO] [stderr]     Checking iryna v0.1.4 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]  --> src/eventloop.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::time::Duration;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Read`, `Result`, `Write`
[INFO] [stdout]  --> src/eventloop.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::io::{Read, Result, Write};
[INFO] [stdout]   |               ^^^^  ^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RwLock`
[INFO] [stdout]  --> src/eventloop.rs:6:22
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::sync::{Arc, RwLock};
[INFO] [stdout]   |                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `acceptor::*`
[INFO] [stdout]  --> src/channel.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use acceptor::*;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `eventloop::*`
[INFO] [stdout]  --> src/channel.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use eventloop::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Clone` is imported redundantly
[INFO] [stdout]  --> src/acceptor.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::clone::Clone;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]  --> /rustc/72eda894eb3548c7ba774079ce0afab42958d4ee/library/std/src/prelude/mod.rs:105:13
[INFO] [stdout]   |
[INFO] [stdout]   = note: the item `Clone` is already defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Mutex`, `RwLock`
[INFO] [stdout]  --> src/acceptor.rs:4:22
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::sync::{Arc, Mutex, RwLock};
[INFO] [stdout]   |                      ^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `IpAddr`
[INFO] [stdout]  --> src/acceptor.rs:5:16
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::net::{IpAddr, SocketAddr};
[INFO] [stdout]   |                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]  --> src/eventloop.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::time::Duration;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Result`
[INFO] [stdout]  --> src/acceptor.rs:6:15
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::io::{Result, Write};
[INFO] [stdout]   |               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TcpStream`
[INFO] [stdout]  --> src/acceptor.rs:8:29
[INFO] [stdout]   |
[INFO] [stdout] 8 | use mio::net::{TcpListener, TcpStream};
[INFO] [stdout]   |                             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Read`, `Result`, `Write`
[INFO] [stdout]  --> src/eventloop.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::io::{Read, Result, Write};
[INFO] [stdout]   |               ^^^^  ^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RwLock`
[INFO] [stdout]  --> src/eventloop.rs:6:22
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::sync::{Arc, RwLock};
[INFO] [stdout]   |                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `acceptor::*`
[INFO] [stdout]  --> src/channel.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use acceptor::*;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `eventloop::*`
[INFO] [stdout]  --> src/channel.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use eventloop::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Clone` is imported redundantly
[INFO] [stdout]  --> src/acceptor.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::clone::Clone;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]  --> /rustc/72eda894eb3548c7ba774079ce0afab42958d4ee/library/std/src/prelude/mod.rs:105:13
[INFO] [stdout]   |
[INFO] [stdout]   = note: the item `Clone` is already defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Mutex`, `RwLock`
[INFO] [stdout]  --> src/acceptor.rs:4:22
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::sync::{Arc, Mutex, RwLock};
[INFO] [stdout]   |                      ^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `IpAddr`
[INFO] [stdout]  --> src/acceptor.rs:5:16
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::net::{IpAddr, SocketAddr};
[INFO] [stdout]   |                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Result`
[INFO] [stdout]  --> src/acceptor.rs:6:15
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::io::{Result, Write};
[INFO] [stdout]   |               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TcpStream`
[INFO] [stdout]  --> src/acceptor.rs:8:29
[INFO] [stdout]   |
[INFO] [stdout] 8 | use mio::net::{TcpListener, TcpStream};
[INFO] [stdout]   |                             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `std` is imported redundantly
[INFO] [stdout]   --> src/lib.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     use std;
[INFO] [stdout]    |         ^^^ the item `std` is already imported by prelude
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `channel::*`
[INFO] [stdout]   --> src/lib.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 |     use channel::*;
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `match_default_bindings` has been stable since 1.26.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> src/lib.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(match_default_bindings)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/channel.rs:12:24
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub type Closure = Box<Fn(&mut ChanCtx) + Send + Sync>;
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub type Closure = Box<dyn Fn(&mut ChanCtx) + Send + Sync>;
[INFO] [stdout]    |                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::thread::sleep_ms`: replaced by `std::thread::sleep`
[INFO] [stdout]   --> src/lib.rs:40:22
[INFO] [stdout]    |
[INFO] [stdout] 40 |         std::thread::sleep_ms(99999999999999);
[INFO] [stdout]    |                      ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `match_default_bindings` has been stable since 1.26.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> src/lib.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(match_default_bindings)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/channel.rs:12:24
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub type Closure = Box<Fn(&mut ChanCtx) + Send + Sync>;
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub type Closure = Box<dyn Fn(&mut ChanCtx) + Send + Sync>;
[INFO] [stdout]    |                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Write`
[INFO] [stdout]  --> src/acceptor.rs:6:23
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::io::{Result, Write};
[INFO] [stdout]   |                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_right`: superseded by `trim_end`
[INFO] [stdout]   --> src/lib.rs:27:28
[INFO] [stdout]    |
[INFO] [stdout] 27 |                 match sbuf.trim_right() {
[INFO] [stdout]    |                            ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]    |
[INFO] [stdout] 27 |                 match sbuf.trim_end() {
[INFO] [stdout]    |                            ~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Write`
[INFO] [stdout]  --> src/acceptor.rs:6:23
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::io::{Result, Write};
[INFO] [stdout]   |                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EventLoop` is never constructed
[INFO] [stdout]   --> src/eventloop.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct EventLoop {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `attach`, and `run` are never used
[INFO] [stdout]   --> src/eventloop.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl EventLoop {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 18 |     pub fn new() -> EventLoop {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub fn attach(
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     pub fn run(&self) {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Closure` is never used
[INFO] [stdout]   --> src/channel.rs:12:10
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub type Closure = Box<Fn(&mut ChanCtx) + Send + Sync>;
[INFO] [stdout]    |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `OptionValue` is never used
[INFO] [stdout]   --> src/channel.rs:15:10
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub enum OptionValue {
[INFO] [stdout]    |          ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `OptionValue` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Channel` is never constructed
[INFO] [stdout]   --> src/channel.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct Channel {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `create` and `register` are never used
[INFO] [stdout]   --> src/channel.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl Channel {
[INFO] [stdout]    | ------------ associated items in this implementation
[INFO] [stdout] 28 |     pub fn create(
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 47 |     pub fn register(&self, selector: &Poll) {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChanCtx` is never constructed
[INFO] [stdout]   --> src/channel.rs:57:12
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub struct ChanCtx {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `close`, `write`, `read_test`, and `chan_id` are never used
[INFO] [stdout]    --> src/channel.rs:67:12
[INFO] [stdout]     |
[INFO] [stdout] 66  | impl ChanCtx {
[INFO] [stdout]     | ------------ associated items in this implementation
[INFO] [stdout] 67  |     pub fn new(
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 127 |     pub fn close(&self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 |     pub fn write(&mut self, data: &[u8]) -> Result<()> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 138 |     pub fn read_test(&mut self) -> String {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 154 |     pub fn chan_id(&self) -> Token {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Acceptor` is never constructed
[INFO] [stdout]   --> src/acceptor.rs:43:12
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub struct Acceptor {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/acceptor.rs:55:12
[INFO] [stdout]     |
[INFO] [stdout] 54  | impl Acceptor {
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout] 55  |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 75  |     pub fn opt_ttl_ms(&mut self, ttl: usize) -> &mut Self {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 81  |     pub fn opt_linger_ms(&mut self, linger: usize) -> &mut Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 88  |     pub fn opt_nodelay(&mut self, nodelay: bool) -> &mut Self {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 94  |     pub fn opt_keep_alive_ms(&mut self, keep_alive: usize) -> &mut Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 |     pub fn opt_recv_buf_size(&mut self, buf_size: usize) -> &mut Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 106 |     pub fn opt_send_buf_size(&mut self, buf_size: usize) -> &mut Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 113 |     pub fn worker_count(&mut self, size: usize) -> &mut Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 124 |     pub fn on_ready<T>(&mut self, p: T) -> &mut Self
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 133 |     pub fn on_receive<T>(&mut self, p: T) -> &mut Self
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 142 |     pub fn on_close<T>(&mut self, p: T) -> &mut Self
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 151 |     pub fn bind(&mut self, host: &str, port: u16) -> &mut Self {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 158 |     pub fn terminate(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 163 |     pub fn accept(&self) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 213 |     fn incr_id(cur_id: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/channel.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 48 | /         selector.register(
[INFO] [stdout] 49 | |             &self.ctx.chan,
[INFO] [stdout] 50 | |             self.ctx.id,
[INFO] [stdout] 51 | |             Ready::readable(),
[INFO] [stdout] 52 | |             PollOpt::edge(),
[INFO] [stdout] 53 | |         );
[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)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 48 |         let _ = selector.register(
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/channel.rs:80:25
[INFO] [stdout]    |
[INFO] [stdout] 80 |                         ch.set_ttl(*ttl as u32);
[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] 80 |                         let _ = ch.set_ttl(*ttl as u32);
[INFO] [stdout]    |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/channel.rs:86:25
[INFO] [stdout]    |
[INFO] [stdout] 86 |                         ch.set_linger(Some(Duration::from_millis(*linger as u64)));
[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] 86 |                         let _ = ch.set_linger(Some(Duration::from_millis(*linger as u64)));
[INFO] [stdout]    |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/channel.rs:93:25
[INFO] [stdout]    |
[INFO] [stdout] 93 |                         ch.set_nodelay(*b);
[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] 93 |                         let _ = ch.set_nodelay(*b);
[INFO] [stdout]    |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/channel.rs:98:25
[INFO] [stdout]    |
[INFO] [stdout] 98 |                         ch.set_keepalive(Some(Duration::from_millis(*keepalive as u64)));
[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] 98 |                         let _ = ch.set_keepalive(Some(Duration::from_millis(*keepalive as u64)));
[INFO] [stdout]    |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/channel.rs:104:25
[INFO] [stdout]     |
[INFO] [stdout] 104 |                         ch.set_recv_buffer_size(*bufsize);
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 104 |                         let _ = ch.set_recv_buffer_size(*bufsize);
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/channel.rs:110:25
[INFO] [stdout]     |
[INFO] [stdout] 110 |                         ch.set_send_buffer_size(*bufsize);
[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] 110 |                         let _ = ch.set_send_buffer_size(*bufsize);
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/channel.rs:129:9
[INFO] [stdout]     |
[INFO] [stdout] 129 |         self.selector.deregister(&self.chan);
[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] 129 |         let _ = self.selector.deregister(&self.chan);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/channel.rs:131:9
[INFO] [stdout]     |
[INFO] [stdout] 131 |         self.chan.shutdown(Shutdown::Both);
[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] 131 |         let _ = self.chan.shutdown(Shutdown::Both);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/acceptor.rs:61:17
[INFO] [stdout]    |
[INFO] [stdout] 61 |                 ch.write("Hello, world.\n".as_bytes());
[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] 61 |                 let _ = ch.write("Hello, world.\n".as_bytes());
[INFO] [stdout]    |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/acceptor.rs:64:17
[INFO] [stdout]    |
[INFO] [stdout] 64 |                 ch.write("Welcome\n".as_bytes());
[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] 64 |                 let _ = ch.write("Welcome\n".as_bytes());
[INFO] [stdout]    |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/acceptor.rs:67:17
[INFO] [stdout]    |
[INFO] [stdout] 67 |                 ch.write("Bye\n".as_bytes());
[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] 67 |                 let _ = ch.write("Bye\n".as_bytes());
[INFO] [stdout]    |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 35 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `remote_addr` and `options` are never read
[INFO] [stdout]   --> src/channel.rs:58:5
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub struct ChanCtx {
[INFO] [stdout]    |            ------- fields in this struct
[INFO] [stdout] 58 |     remote_addr: SocketAddr,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 61 |     options: HashMap<String, OptionValue>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `chan_id` is never used
[INFO] [stdout]    --> src/channel.rs:154:12
[INFO] [stdout]     |
[INFO] [stdout] 66  | impl ChanCtx {
[INFO] [stdout]     | ------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 154 |     pub fn chan_id(&self) -> Token {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `opt_ttl_ms`, `opt_linger_ms`, `on_close`, and `terminate` are never used
[INFO] [stdout]    --> src/acceptor.rs:75:12
[INFO] [stdout]     |
[INFO] [stdout] 54  | impl Acceptor {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 75  |     pub fn opt_ttl_ms(&mut self, ttl: usize) -> &mut Self {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 81  |     pub fn opt_linger_ms(&mut self, linger: usize) -> &mut Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 142 |     pub fn on_close<T>(&mut self, p: T) -> &mut Self
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 158 |     pub fn terminate(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/channel.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 48 | /         selector.register(
[INFO] [stdout] 49 | |             &self.ctx.chan,
[INFO] [stdout] 50 | |             self.ctx.id,
[INFO] [stdout] 51 | |             Ready::readable(),
[INFO] [stdout] 52 | |             PollOpt::edge(),
[INFO] [stdout] 53 | |         );
[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)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 48 |         let _ = selector.register(
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/channel.rs:80:25
[INFO] [stdout]    |
[INFO] [stdout] 80 |                         ch.set_ttl(*ttl as u32);
[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] 80 |                         let _ = ch.set_ttl(*ttl as u32);
[INFO] [stdout]    |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/channel.rs:86:25
[INFO] [stdout]    |
[INFO] [stdout] 86 |                         ch.set_linger(Some(Duration::from_millis(*linger as u64)));
[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] 86 |                         let _ = ch.set_linger(Some(Duration::from_millis(*linger as u64)));
[INFO] [stdout]    |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/channel.rs:93:25
[INFO] [stdout]    |
[INFO] [stdout] 93 |                         ch.set_nodelay(*b);
[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] 93 |                         let _ = ch.set_nodelay(*b);
[INFO] [stdout]    |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/channel.rs:98:25
[INFO] [stdout]    |
[INFO] [stdout] 98 |                         ch.set_keepalive(Some(Duration::from_millis(*keepalive as u64)));
[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] 98 |                         let _ = ch.set_keepalive(Some(Duration::from_millis(*keepalive as u64)));
[INFO] [stdout]    |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/channel.rs:104:25
[INFO] [stdout]     |
[INFO] [stdout] 104 |                         ch.set_recv_buffer_size(*bufsize);
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 104 |                         let _ = ch.set_recv_buffer_size(*bufsize);
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/channel.rs:110:25
[INFO] [stdout]     |
[INFO] [stdout] 110 |                         ch.set_send_buffer_size(*bufsize);
[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] 110 |                         let _ = ch.set_send_buffer_size(*bufsize);
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/channel.rs:129:9
[INFO] [stdout]     |
[INFO] [stdout] 129 |         self.selector.deregister(&self.chan);
[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] 129 |         let _ = self.selector.deregister(&self.chan);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/channel.rs:131:9
[INFO] [stdout]     |
[INFO] [stdout] 131 |         self.chan.shutdown(Shutdown::Both);
[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] 131 |         let _ = self.chan.shutdown(Shutdown::Both);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/acceptor.rs:61:17
[INFO] [stdout]    |
[INFO] [stdout] 61 |                 ch.write("Hello, world.\n".as_bytes());
[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] 61 |                 let _ = ch.write("Hello, world.\n".as_bytes());
[INFO] [stdout]    |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/acceptor.rs:64:17
[INFO] [stdout]    |
[INFO] [stdout] 64 |                 ch.write("Welcome\n".as_bytes());
[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] 64 |                 let _ = ch.write("Welcome\n".as_bytes());
[INFO] [stdout]    |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/acceptor.rs:67:17
[INFO] [stdout]    |
[INFO] [stdout] 67 |                 ch.write("Bye\n".as_bytes());
[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] 67 |                 let _ = ch.write("Bye\n".as_bytes());
[INFO] [stdout]    |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/lib.rs:32:25
[INFO] [stdout]    |
[INFO] [stdout] 32 |                         ch.write(sbuf.as_bytes());
[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] 32 |                         let _ = ch.write(sbuf.as_bytes());
[INFO] [stdout]    |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/lib.rs:37:17
[INFO] [stdout]    |
[INFO] [stdout] 37 |                 ch.write("Welcome.\n".as_bytes());
[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] 37 |                 let _ = ch.write("Welcome.\n".as_bytes());
[INFO] [stdout]    |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: literal out of range for `u32`
[INFO] [stdout]   --> src/lib.rs:40:31
[INFO] [stdout]    |
[INFO] [stdout] 40 |         std::thread::sleep_ms(99999999999999);
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: the literal `99999999999999` does not fit into the type `u32` whose range is `0..=4294967295`
[INFO] [stdout]    = note: `#[deny(overflowing_literals)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error; 34 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `iryna` (lib test) due to 2 previous errors; 34 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "97ffa68b67511be1b6dd5e122ab1010b45be20e489357ab2a3d21bc881b9c351", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "97ffa68b67511be1b6dd5e122ab1010b45be20e489357ab2a3d21bc881b9c351", kill_on_drop: false }`
[INFO] [stdout] 97ffa68b67511be1b6dd5e122ab1010b45be20e489357ab2a3d21bc881b9c351
