[INFO] fetching crate aero 0.1.4...
[INFO] checking aero-0.1.4 against try#47af3d0de9d26c7deba4cfb203b710cc3f764e91 for pr-130443
[INFO] extracting crate aero 0.1.4 into /workspace/builds/worker-2-tc2/source
[INFO] validating manifest of crates.io crate aero 0.1.4 on toolchain 47af3d0de9d26c7deba4cfb203b710cc3f764e91
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+47af3d0de9d26c7deba4cfb203b710cc3f764e91" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate aero 0.1.4
[INFO] finished tweaking crates.io crate aero 0.1.4
[INFO] tweaked toml for crates.io crate aero 0.1.4 written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] crate crates.io crate aero 0.1.4 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+47af3d0de9d26c7deba4cfb203b710cc3f764e91" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[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:ceb6ea022f8a89cebbe621bb4987e73a935bd40dfbb726f832cfff4742a5b95a" "/opt/rustwide/cargo-home/bin/cargo" "+47af3d0de9d26c7deba4cfb203b710cc3f764e91" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] f827baf3c8bc8586a373c08fbda13ffdd16d42733667a2f580a5abd3f418d11c
[INFO] running `Command { std: "docker" "start" "-a" "f827baf3c8bc8586a373c08fbda13ffdd16d42733667a2f580a5abd3f418d11c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "f827baf3c8bc8586a373c08fbda13ffdd16d42733667a2f580a5abd3f418d11c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f827baf3c8bc8586a373c08fbda13ffdd16d42733667a2f580a5abd3f418d11c", kill_on_drop: false }`
[INFO] [stdout] f827baf3c8bc8586a373c08fbda13ffdd16d42733667a2f580a5abd3f418d11c
[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:ceb6ea022f8a89cebbe621bb4987e73a935bd40dfbb726f832cfff4742a5b95a" "/opt/rustwide/cargo-home/bin/cargo" "+47af3d0de9d26c7deba4cfb203b710cc3f764e91" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 466af651dc974beb2b92fa0bad158a144924f470314c4e52cb9886d12913512a
[INFO] running `Command { std: "docker" "start" "-a" "466af651dc974beb2b92fa0bad158a144924f470314c4e52cb9886d12913512a", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.39
[INFO] [stderr]    Compiling unicode-ident v1.0.0
[INFO] [stderr]    Compiling syn v1.0.96
[INFO] [stderr]    Compiling libc v0.2.126
[INFO] [stderr]    Compiling futures-core v0.3.21
[INFO] [stderr]    Compiling autocfg v1.1.0
[INFO] [stderr]    Compiling futures-task v0.3.21
[INFO] [stderr]    Compiling futures-channel v0.3.21
[INFO] [stderr]     Checking pin-project-lite v0.2.9
[INFO] [stderr]     Checking futures-sink v0.3.21
[INFO] [stderr]    Compiling log v0.4.17
[INFO] [stderr]    Compiling parking_lot_core v0.9.3
[INFO] [stderr]    Compiling serde_derive v1.0.137
[INFO] [stderr]    Compiling futures-util v0.3.21
[INFO] [stderr]     Checking slab v0.4.6
[INFO] [stderr]     Checking smallvec v1.8.0
[INFO] [stderr]    Compiling serde v1.0.137
[INFO] [stderr]     Checking futures-io v0.3.21
[INFO] [stderr]     Checking scopeguard v1.1.0
[INFO] [stderr]    Compiling serde_json v1.0.81
[INFO] [stderr]     Checking ryu v1.0.10
[INFO] [stderr]     Checking bytes v1.1.0
[INFO] [stderr]     Checking once_cell v1.12.0
[INFO] [stderr]     Checking itoa v1.0.2
[INFO] [stderr]    Compiling lock_api v0.4.7
[INFO] [stderr]    Compiling quote v1.0.18
[INFO] [stderr]     Checking num_cpus v1.13.1
[INFO] [stderr]     Checking socket2 v0.4.4
[INFO] [stderr]     Checking mio v0.8.3
[INFO] [stderr]     Checking signal-hook-registry v1.4.0
[INFO] [stderr]     Checking parking_lot v0.12.1
[INFO] [stderr]    Compiling futures-macro v0.3.21
[INFO] [stderr]    Compiling tokio-macros v1.7.0
[INFO] [stderr]     Checking tokio v1.18.2
[INFO] [stderr]     Checking futures-executor v0.3.21
[INFO] [stderr]     Checking futures v0.3.21
[INFO] [stderr]     Checking aero v0.1.4 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> src/lib.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::error::Error`
[INFO] [stdout]  --> src/lib.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::error::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Arc` and `Mutex`
[INFO] [stdout]  --> src/lib.rs:3:17
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                 ^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncReadExt`, `AsyncWriteExt`, and `self`
[INFO] [stdout]  --> src/lib.rs:4:17
[INFO] [stdout]   |
[INFO] [stdout] 4 | use tokio::io::{self, AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]   |                 ^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::net::TcpListener`
[INFO] [stdout]  --> src/lib.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tokio::net::TcpListener;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Deserialize`
[INFO] [stdout]  --> src/application.rs:5:13
[INFO] [stdout]   |
[INFO] [stdout] 5 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/application.rs:8:22
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]  --> src/application.rs:9:17
[INFO] [stdout]   |
[INFO] [stdout] 9 | use tokio::io::{self, AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]   |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncReadExt`
[INFO] [stdout]  --> src/response.rs:3:17
[INFO] [stdout]   |
[INFO] [stdout] 3 | use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]   |                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> src/lib.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::error::Error`
[INFO] [stdout]  --> src/lib.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::error::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Arc` and `Mutex`
[INFO] [stdout]  --> src/lib.rs:3:17
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                 ^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncReadExt`, `AsyncWriteExt`, and `self`
[INFO] [stdout]  --> src/lib.rs:4:17
[INFO] [stdout]   |
[INFO] [stdout] 4 | use tokio::io::{self, AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]   |                 ^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::net::TcpListener`
[INFO] [stdout]  --> src/lib.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tokio::net::TcpListener;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Deserialize`
[INFO] [stdout]  --> src/application.rs:5:13
[INFO] [stdout]   |
[INFO] [stdout] 5 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/application.rs:8:22
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]  --> src/application.rs:9:17
[INFO] [stdout]   |
[INFO] [stdout] 9 | use tokio::io::{self, AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]   |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncReadExt`
[INFO] [stdout]  --> src/response.rs:3:17
[INFO] [stdout]   |
[INFO] [stdout] 3 | use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]   |                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> src/application.rs:100:40
[INFO] [stdout]     |
[INFO] [stdout] 100 |                     handler(ctx, &mut |ctx| {});
[INFO] [stdout]     |                                        ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> src/application.rs:100:40
[INFO] [stdout]     |
[INFO] [stdout] 100 |                     handler(ctx, &mut |ctx| {});
[INFO] [stdout]     |                                        ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/application.rs:124:9
[INFO] [stdout]     |
[INFO] [stdout] 124 | /         &self.layers.push(Handler {
[INFO] [stdout] 125 | |             method: "GET".to_string(),
[INFO] [stdout] 126 | |             path: path.to_string(),
[INFO] [stdout] 127 | |             func: func,
[INFO] [stdout] 128 | |         });
[INFO] [stdout]     | |__________^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 124 |         let _ = &self.layers.push(Handler {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/application.rs:132:9
[INFO] [stdout]     |
[INFO] [stdout] 132 | /         &self.layers.push(Handler {
[INFO] [stdout] 133 | |             method: "POST".to_string(),
[INFO] [stdout] 134 | |             path: path.to_string(),
[INFO] [stdout] 135 | |             func: func,
[INFO] [stdout] 136 | |         });
[INFO] [stdout]     | |__________^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 132 |         let _ = &self.layers.push(Handler {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/application.rs:140:9
[INFO] [stdout]     |
[INFO] [stdout] 140 | /         &self.layers.push(Handler {
[INFO] [stdout] 141 | |             method: "ALL".to_string(),
[INFO] [stdout] 142 | |             path: path.to_string(),
[INFO] [stdout] 143 | |             func: func,
[INFO] [stdout] 144 | |         });
[INFO] [stdout]     | |__________^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 140 |         let _ = &self.layers.push(Handler {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/application.rs:150:13
[INFO] [stdout]     |
[INFO] [stdout] 150 | /             &self.layers.push(Handler {
[INFO] [stdout] 151 | |                 method: x.method,
[INFO] [stdout] 152 | |                 path: format!("{}{}", router.prefix, x.path),
[INFO] [stdout] 153 | |                 func: x.func,
[INFO] [stdout] 154 | |             });
[INFO] [stdout]     | |______________^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 150 |             let _ = &self.layers.push(Handler {
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]   --> src/router.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 17 | /         &self.layers.push(Handler {
[INFO] [stdout] 18 | |             method: "GET".to_string(),
[INFO] [stdout] 19 | |             path: path.to_string(),
[INFO] [stdout] 20 | |             func: func,
[INFO] [stdout] 21 | |         });
[INFO] [stdout]    | |__________^ the borrow produces a value
[INFO] [stdout]    |
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 17 |         let _ = &self.layers.push(Handler {
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]   --> src/router.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 25 | /         &self.layers.push(Handler {
[INFO] [stdout] 26 | |             method: "POST".to_string(),
[INFO] [stdout] 27 | |             path: path.to_string(),
[INFO] [stdout] 28 | |             func: func,
[INFO] [stdout] 29 | |         });
[INFO] [stdout]    | |__________^ the borrow produces a value
[INFO] [stdout]    |
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 25 |         let _ = &self.layers.push(Handler {
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]   --> src/router.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 33 | /         &self.layers.push(Handler {
[INFO] [stdout] 34 | |             method: "ALL".to_string(),
[INFO] [stdout] 35 | |             path: path.to_string(),
[INFO] [stdout] 36 | |             func: func,
[INFO] [stdout] 37 | |         });
[INFO] [stdout]    | |__________^ the borrow produces a value
[INFO] [stdout]    |
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 33 |         let _ = &self.layers.push(Handler {
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/application.rs:124:9
[INFO] [stdout]     |
[INFO] [stdout] 124 | /         &self.layers.push(Handler {
[INFO] [stdout] 125 | |             method: "GET".to_string(),
[INFO] [stdout] 126 | |             path: path.to_string(),
[INFO] [stdout] 127 | |             func: func,
[INFO] [stdout] 128 | |         });
[INFO] [stdout]     | |__________^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 124 |         let _ = &self.layers.push(Handler {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/application.rs:132:9
[INFO] [stdout]     |
[INFO] [stdout] 132 | /         &self.layers.push(Handler {
[INFO] [stdout] 133 | |             method: "POST".to_string(),
[INFO] [stdout] 134 | |             path: path.to_string(),
[INFO] [stdout] 135 | |             func: func,
[INFO] [stdout] 136 | |         });
[INFO] [stdout]     | |__________^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 132 |         let _ = &self.layers.push(Handler {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/application.rs:140:9
[INFO] [stdout]     |
[INFO] [stdout] 140 | /         &self.layers.push(Handler {
[INFO] [stdout] 141 | |             method: "ALL".to_string(),
[INFO] [stdout] 142 | |             path: path.to_string(),
[INFO] [stdout] 143 | |             func: func,
[INFO] [stdout] 144 | |         });
[INFO] [stdout]     | |__________^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 140 |         let _ = &self.layers.push(Handler {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/application.rs:150:13
[INFO] [stdout]     |
[INFO] [stdout] 150 | /             &self.layers.push(Handler {
[INFO] [stdout] 151 | |                 method: x.method,
[INFO] [stdout] 152 | |                 path: format!("{}{}", router.prefix, x.path),
[INFO] [stdout] 153 | |                 func: x.func,
[INFO] [stdout] 154 | |             });
[INFO] [stdout]     | |______________^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 150 |             let _ = &self.layers.push(Handler {
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]   --> src/router.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 17 | /         &self.layers.push(Handler {
[INFO] [stdout] 18 | |             method: "GET".to_string(),
[INFO] [stdout] 19 | |             path: path.to_string(),
[INFO] [stdout] 20 | |             func: func,
[INFO] [stdout] 21 | |         });
[INFO] [stdout]    | |__________^ the borrow produces a value
[INFO] [stdout]    |
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 17 |         let _ = &self.layers.push(Handler {
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]   --> src/router.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 25 | /         &self.layers.push(Handler {
[INFO] [stdout] 26 | |             method: "POST".to_string(),
[INFO] [stdout] 27 | |             path: path.to_string(),
[INFO] [stdout] 28 | |             func: func,
[INFO] [stdout] 29 | |         });
[INFO] [stdout]    | |__________^ the borrow produces a value
[INFO] [stdout]    |
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 25 |         let _ = &self.layers.push(Handler {
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]   --> src/router.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 33 | /         &self.layers.push(Handler {
[INFO] [stdout] 34 | |             method: "ALL".to_string(),
[INFO] [stdout] 35 | |             path: path.to_string(),
[INFO] [stdout] 36 | |             func: func,
[INFO] [stdout] 37 | |         });
[INFO] [stdout]    | |__________^ the borrow produces a value
[INFO] [stdout]    |
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 33 |         let _ = &self.layers.push(Handler {
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 17 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 17 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::error::Error`
[INFO] [stdout]  --> tests/server.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::error::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Arc` and `Mutex`
[INFO] [stdout]  --> tests/server.rs:4:17
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                 ^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncReadExt`, `AsyncWriteExt`, and `self`
[INFO] [stdout]  --> tests/server.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tokio::io::{self, AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]   |                 ^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::net::TcpListener`
[INFO] [stdout]  --> tests/server.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::net::TcpListener;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `next`
[INFO] [stdout]  --> examples/hello.rs:8:38
[INFO] [stdout]   |
[INFO] [stdout] 8 |     app.get("/", |ctx: &mut Context, next: Next| {
[INFO] [stdout]   |                                      ^^^^ help: if this is intentional, prefix it with an underscore: `_next`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `next`
[INFO] [stdout]   --> examples/hello.rs:12:43
[INFO] [stdout]    |
[INFO] [stdout] 12 |     app.get("/hello", |ctx: &mut Context, next: Next| {
[INFO] [stdout]    |                                           ^^^^ help: if this is intentional, prefix it with an underscore: `_next`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `next`
[INFO] [stdout]   --> examples/middleware.rs:29:43
[INFO] [stdout]    |
[INFO] [stdout] 29 |     app.get("/hello", |ctx: &mut Context, next: Next| {
[INFO] [stdout]    |                                           ^^^^ help: if this is intentional, prefix it with an underscore: `_next`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> examples/hello.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | /     tokio::runtime::Builder::new_multi_thread()
[INFO] [stdout] 19 | |         // .worker_threads(6)
[INFO] [stdout] 20 | |         .enable_all()
[INFO] [stdout] 21 | |         .build()
[INFO] [stdout] 22 | |         .unwrap()
[INFO] [stdout] 23 | |         .block_on(app.run());
[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] 18 |     let _ = tokio::runtime::Builder::new_multi_thread()
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> examples/router.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | /     tokio::runtime::Builder::new_multi_thread()
[INFO] [stdout] 20 | |         // .worker_threads(6)
[INFO] [stdout] 21 | |         .enable_all()
[INFO] [stdout] 22 | |         .build()
[INFO] [stdout] 23 | |         .unwrap()
[INFO] [stdout] 24 | |         .block_on(app.run());
[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] 19 |     let _ = tokio::runtime::Builder::new_multi_thread()
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> examples/middleware.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 37 | /     tokio::runtime::Builder::new_multi_thread()
[INFO] [stdout] 38 | |         // .worker_threads(6)
[INFO] [stdout] 39 | |         .enable_all()
[INFO] [stdout] 40 | |         .build()
[INFO] [stdout] 41 | |         .unwrap()
[INFO] [stdout] 42 | |         .block_on(app.run());
[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] 37 |     let _ = tokio::runtime::Builder::new_multi_thread()
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 3 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `next`
[INFO] [stdout]   --> examples/json.rs:29:43
[INFO] [stdout]    |
[INFO] [stdout] 29 |     app.get("/hello", |ctx: &mut Context, next: Next| {
[INFO] [stdout]    |                                           ^^^^ help: if this is intentional, prefix it with an underscore: `_next`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> tests/server.rs:57:5
[INFO] [stdout]    |
[INFO] [stdout] 57 | /     tokio::runtime::Builder::new_multi_thread()
[INFO] [stdout] 58 | |         // .worker_threads(6)
[INFO] [stdout] 59 | |         .enable_all()
[INFO] [stdout] 60 | |         .build()
[INFO] [stdout] 61 | |         .unwrap()
[INFO] [stdout] 62 | |         .block_on(app.run());
[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] 57 |     let _ = tokio::runtime::Builder::new_multi_thread()
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 5 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> examples/json.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 35 | /     tokio::runtime::Builder::new_multi_thread()
[INFO] [stdout] 36 | |         // .worker_threads(6)
[INFO] [stdout] 37 | |         .enable_all()
[INFO] [stdout] 38 | |         .build()
[INFO] [stdout] 39 | |         .unwrap()
[INFO] [stdout] 40 | |         .block_on(app.run());
[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] 35 |     let _ = tokio::runtime::Builder::new_multi_thread()
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 7.46s
[INFO] running `Command { std: "docker" "inspect" "466af651dc974beb2b92fa0bad158a144924f470314c4e52cb9886d12913512a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "466af651dc974beb2b92fa0bad158a144924f470314c4e52cb9886d12913512a", kill_on_drop: false }`
[INFO] [stdout] 466af651dc974beb2b92fa0bad158a144924f470314c4e52cb9886d12913512a
