[INFO] fetching crate aero 0.1.4...
[INFO] testing aero-0.1.4 against master#c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38 for pr-146098-7
[INFO] extracting crate aero 0.1.4 into /workspace/builds/worker-2-tc1/source
[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-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate aero 0.1.4 on toolchain c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[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" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded mio v0.8.3
[INFO] [stderr]   Downloaded tokio v1.18.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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] c6cba3a9653dc04b041729a7fa2fd6713c5eaf298e3d079c32cf8c90edef5f2d
[INFO] running `Command { std: "docker" "start" "-a" "c6cba3a9653dc04b041729a7fa2fd6713c5eaf298e3d079c32cf8c90edef5f2d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c6cba3a9653dc04b041729a7fa2fd6713c5eaf298e3d079c32cf8c90edef5f2d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c6cba3a9653dc04b041729a7fa2fd6713c5eaf298e3d079c32cf8c90edef5f2d", kill_on_drop: false }`
[INFO] [stdout] c6cba3a9653dc04b041729a7fa2fd6713c5eaf298e3d079c32cf8c90edef5f2d
[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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] f7a403d8d1aca0e5a3d375da1fd517c1f0be57e9742797e47c7464ce78ae221f
[INFO] running `Command { std: "docker" "start" "-a" "f7a403d8d1aca0e5a3d375da1fd517c1f0be57e9742797e47c7464ce78ae221f", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v1.0.96
[INFO] [stderr]    Compiling futures-core v0.3.21
[INFO] [stderr]    Compiling futures-task v0.3.21
[INFO] [stderr]    Compiling futures-channel v0.3.21
[INFO] [stderr]    Compiling serde_derive v1.0.137
[INFO] [stderr]    Compiling futures-sink v0.3.21
[INFO] [stderr]    Compiling futures-util v0.3.21
[INFO] [stderr]    Compiling slab v0.4.6
[INFO] [stderr]    Compiling smallvec v1.8.0
[INFO] [stderr]    Compiling futures-io v0.3.21
[INFO] [stderr]    Compiling serde v1.0.137
[INFO] [stderr]    Compiling serde_json v1.0.81
[INFO] [stderr]    Compiling parking_lot_core v0.9.3
[INFO] [stderr]    Compiling mio v0.8.3
[INFO] [stderr]    Compiling once_cell v1.12.0
[INFO] [stderr]    Compiling bytes v1.1.0
[INFO] [stderr]    Compiling parking_lot v0.12.1
[INFO] [stderr]    Compiling futures-macro v0.3.21
[INFO] [stderr]    Compiling tokio-macros v1.7.0
[INFO] [stderr]    Compiling tokio v1.18.2
[INFO] [stderr]    Compiling futures-executor v0.3.21
[INFO] [stderr]    Compiling futures v0.3.21
[INFO] [stderr]    Compiling 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)]` (part of `#[warn(unused)]`) 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)]` (part of `#[warn(unused)]`) 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)]` (part of `#[warn(unused)]`) 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] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 28.35s
[INFO] running `Command { std: "docker" "inspect" "f7a403d8d1aca0e5a3d375da1fd517c1f0be57e9742797e47c7464ce78ae221f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f7a403d8d1aca0e5a3d375da1fd517c1f0be57e9742797e47c7464ce78ae221f", kill_on_drop: false }`
[INFO] [stdout] f7a403d8d1aca0e5a3d375da1fd517c1f0be57e9742797e47c7464ce78ae221f
[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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 44756a3b5e24928b1b34fc56e99d5c57e5ada94c85abd9a4e08d2f172850d697
[INFO] running `Command { std: "docker" "start" "-a" "44756a3b5e24928b1b34fc56e99d5c57e5ada94c85abd9a4e08d2f172850d697", kill_on_drop: false }`
[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)]` (part of `#[warn(unused)]`) 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)]` (part of `#[warn(unused)]`) 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)]` (part of `#[warn(unused)]`) 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] [stderr]    Compiling aero v0.1.4 (/opt/rustwide/workdir)
[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)]` (part of `#[warn(unused)]`) on by default
[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)]` (part of `#[warn(unused)]`) 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: 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]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[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] 
[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)]` (part of `#[warn(unused)]`) 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 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)]` (part of `#[warn(unused)]`) 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 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)]` (part of `#[warn(unused)]`) 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/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)]` (part of `#[warn(unused)]`) on by default
[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)]` (part of `#[warn(unused)]`) 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: 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)]` (part of `#[warn(unused)]`) 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]   --> 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)]` (part of `#[warn(unused)]`) 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: 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)]` (part of `#[warn(unused)]`) 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)]` (part of `#[warn(unused)]`) 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] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 3.32s
[INFO] running `Command { std: "docker" "inspect" "44756a3b5e24928b1b34fc56e99d5c57e5ada94c85abd9a4e08d2f172850d697", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "44756a3b5e24928b1b34fc56e99d5c57e5ada94c85abd9a4e08d2f172850d697", kill_on_drop: false }`
[INFO] [stdout] 44756a3b5e24928b1b34fc56e99d5c57e5ada94c85abd9a4e08d2f172850d697
[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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 763dd5d293b2bedbd82e880270781de5263337754fced46267e81f9d1786724d
[INFO] running `Command { std: "docker" "start" "-a" "763dd5d293b2bedbd82e880270781de5263337754fced46267e81f9d1786724d", kill_on_drop: false }`
[INFO] [stderr] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stderr]  --> src/lib.rs:1:13
[INFO] [stderr]   |
[INFO] [stderr] 1 | use serde::{Deserialize, Serialize};
[INFO] [stderr]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::error::Error`
[INFO] [stderr]  --> src/lib.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use std::error::Error;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Arc` and `Mutex`
[INFO] [stderr]  --> src/lib.rs:3:17
[INFO] [stderr]   |
[INFO] [stderr] 3 | use std::sync::{Arc, Mutex};
[INFO] [stderr]   |                 ^^^  ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `AsyncReadExt`, `AsyncWriteExt`, and `self`
[INFO] [stderr]  --> src/lib.rs:4:17
[INFO] [stderr]   |
[INFO] [stderr] 4 | use tokio::io::{self, AsyncReadExt, AsyncWriteExt};
[INFO] [stderr]   |                 ^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `tokio::net::TcpListener`
[INFO] [stderr]  --> src/lib.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 5 | use tokio::net::TcpListener;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Deserialize`
[INFO] [stderr]  --> src/application.rs:5:13
[INFO] [stderr]   |
[INFO] [stderr] 5 | use serde::{Deserialize, Serialize};
[INFO] [stderr]   |             ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Mutex`
[INFO] [stderr]  --> src/application.rs:8:22
[INFO] [stderr]   |
[INFO] [stderr] 8 | use std::sync::{Arc, Mutex};
[INFO] [stderr]   |                      ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `self`
[INFO] [stderr]  --> src/application.rs:9:17
[INFO] [stderr]   |
[INFO] [stderr] 9 | use tokio::io::{self, AsyncReadExt, AsyncWriteExt};
[INFO] [stderr]   |                 ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `AsyncReadExt`
[INFO] [stderr]  --> src/response.rs:3:17
[INFO] [stderr]   |
[INFO] [stderr] 3 | use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stderr]   |                 ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `ctx`
[INFO] [stderr]    --> src/application.rs:100:40
[INFO] [stderr]     |
[INFO] [stderr] 100 |                     handler(ctx, &mut |ctx| {});
[INFO] [stderr]     |                                        ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused borrow that must be used
[INFO] [stderr]    --> src/application.rs:124:9
[INFO] [stderr]     |
[INFO] [stderr] 124 | /         &self.layers.push(Handler {
[INFO] [stderr] 125 | |             method: "GET".to_string(),
[INFO] [stderr] 126 | |             path: path.to_string(),
[INFO] [stderr] 127 | |             func: func,
[INFO] [stderr] 128 | |         });
[INFO] [stderr]     | |__________^ the borrow produces a value
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 124 |         let _ = &self.layers.push(Handler {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused borrow that must be used
[INFO] [stderr]    --> src/application.rs:132:9
[INFO] [stderr]     |
[INFO] [stderr] 132 | /         &self.layers.push(Handler {
[INFO] [stderr] 133 | |             method: "POST".to_string(),
[INFO] [stderr] 134 | |             path: path.to_string(),
[INFO] [stderr] 135 | |             func: func,
[INFO] [stderr] 136 | |         });
[INFO] [stderr]     | |__________^ the borrow produces a value
[INFO] [stderr]     |
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 132 |         let _ = &self.layers.push(Handler {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused borrow that must be used
[INFO] [stderr]    --> src/application.rs:140:9
[INFO] [stderr]     |
[INFO] [stderr] 140 | /         &self.layers.push(Handler {
[INFO] [stderr] 141 | |             method: "ALL".to_string(),
[INFO] [stderr] 142 | |             path: path.to_string(),
[INFO] [stderr] 143 | |             func: func,
[INFO] [stderr] 144 | |         });
[INFO] [stderr]     | |__________^ the borrow produces a value
[INFO] [stderr]     |
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 140 |         let _ = &self.layers.push(Handler {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused borrow that must be used
[INFO] [stderr]    --> src/application.rs:150:13
[INFO] [stderr]     |
[INFO] [stderr] 150 | /             &self.layers.push(Handler {
[INFO] [stderr] 151 | |                 method: x.method,
[INFO] [stderr] 152 | |                 path: format!("{}{}", router.prefix, x.path),
[INFO] [stderr] 153 | |                 func: x.func,
[INFO] [stderr] 154 | |             });
[INFO] [stderr]     | |______________^ the borrow produces a value
[INFO] [stderr]     |
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 150 |             let _ = &self.layers.push(Handler {
[INFO] [stderr]     |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused borrow that must be used
[INFO] [stderr]   --> src/router.rs:17:9
[INFO] [stderr]    |
[INFO] [stderr] 17 | /         &self.layers.push(Handler {
[INFO] [stderr] 18 | |             method: "GET".to_string(),
[INFO] [stderr] 19 | |             path: path.to_string(),
[INFO] [stderr] 20 | |             func: func,
[INFO] [stderr] 21 | |         });
[INFO] [stderr]    | |__________^ the borrow produces a value
[INFO] [stderr]    |
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 17 |         let _ = &self.layers.push(Handler {
[INFO] [stderr]    |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused borrow that must be used
[INFO] [stderr]   --> src/router.rs:25:9
[INFO] [stderr]    |
[INFO] [stderr] 25 | /         &self.layers.push(Handler {
[INFO] [stderr] 26 | |             method: "POST".to_string(),
[INFO] [stderr] 27 | |             path: path.to_string(),
[INFO] [stderr] 28 | |             func: func,
[INFO] [stderr] 29 | |         });
[INFO] [stderr]    | |__________^ the borrow produces a value
[INFO] [stderr]    |
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 25 |         let _ = &self.layers.push(Handler {
[INFO] [stderr]    |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused borrow that must be used
[INFO] [stderr]   --> src/router.rs:33:9
[INFO] [stderr]    |
[INFO] [stderr] 33 | /         &self.layers.push(Handler {
[INFO] [stderr] 34 | |             method: "ALL".to_string(),
[INFO] [stderr] 35 | |             path: path.to_string(),
[INFO] [stderr] 36 | |             func: func,
[INFO] [stderr] 37 | |         });
[INFO] [stderr]    | |__________^ the borrow produces a value
[INFO] [stderr]    |
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 33 |         let _ = &self.layers.push(Handler {
[INFO] [stderr]    |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: `aero` (lib) generated 17 warnings (run `cargo fix --lib -p aero` to apply 10 suggestions)
[INFO] [stderr] warning: `aero` (lib test) generated 17 warnings (17 duplicates)
[INFO] [stderr] warning: unused variable: `next`
[INFO] [stderr]   --> examples/middleware.rs:29:43
[INFO] [stderr]    |
[INFO] [stderr] 29 |     app.get("/hello", |ctx: &mut Context, next: Next| {
[INFO] [stderr]    |                                           ^^^^ help: if this is intentional, prefix it with an underscore: `_next`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> examples/middleware.rs:37:5
[INFO] [stderr]    |
[INFO] [stderr] 37 | /     tokio::runtime::Builder::new_multi_thread()
[INFO] [stderr] 38 | |         // .worker_threads(6)
[INFO] [stderr] 39 | |         .enable_all()
[INFO] [stderr] 40 | |         .build()
[INFO] [stderr] 41 | |         .unwrap()
[INFO] [stderr] 42 | |         .block_on(app.run());
[INFO] [stderr]    | |____________________________^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 37 |     let _ = tokio::runtime::Builder::new_multi_thread()
[INFO] [stderr]    |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `next`
[INFO] [stderr]   --> examples/hello.rs:12:43
[INFO] [stderr]    |
[INFO] [stderr] 12 |     app.get("/hello", |ctx: &mut Context, next: Next| {
[INFO] [stderr]    |                                           ^^^^ help: if this is intentional, prefix it with an underscore: `_next`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `next`
[INFO] [stderr]  --> examples/hello.rs:8:38
[INFO] [stderr]   |
[INFO] [stderr] 8 |     app.get("/", |ctx: &mut Context, next: Next| {
[INFO] [stderr]   |                                      ^^^^ help: if this is intentional, prefix it with an underscore: `_next`
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> examples/hello.rs:18:5
[INFO] [stderr]    |
[INFO] [stderr] 18 | /     tokio::runtime::Builder::new_multi_thread()
[INFO] [stderr] 19 | |         // .worker_threads(6)
[INFO] [stderr] 20 | |         .enable_all()
[INFO] [stderr] 21 | |         .build()
[INFO] [stderr] 22 | |         .unwrap()
[INFO] [stderr] 23 | |         .block_on(app.run());
[INFO] [stderr]    | |____________________________^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 18 |     let _ = tokio::runtime::Builder::new_multi_thread()
[INFO] [stderr]    |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `next`
[INFO] [stderr]   --> examples/json.rs:29:43
[INFO] [stderr]    |
[INFO] [stderr] 29 |     app.get("/hello", |ctx: &mut Context, next: Next| {
[INFO] [stderr]    |                                           ^^^^ help: if this is intentional, prefix it with an underscore: `_next`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> examples/json.rs:35:5
[INFO] [stderr]    |
[INFO] [stderr] 35 | /     tokio::runtime::Builder::new_multi_thread()
[INFO] [stderr] 36 | |         // .worker_threads(6)
[INFO] [stderr] 37 | |         .enable_all()
[INFO] [stderr] 38 | |         .build()
[INFO] [stderr] 39 | |         .unwrap()
[INFO] [stderr] 40 | |         .block_on(app.run());
[INFO] [stderr]    | |____________________________^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 35 |     let _ = tokio::runtime::Builder::new_multi_thread()
[INFO] [stderr]    |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::error::Error`
[INFO] [stderr]  --> tests/server.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use std::error::Error;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Arc` and `Mutex`
[INFO] [stderr]  --> tests/server.rs:4:17
[INFO] [stderr]   |
[INFO] [stderr] 4 | use std::sync::{Arc, Mutex};
[INFO] [stderr]   |                 ^^^  ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `AsyncReadExt`, `AsyncWriteExt`, and `self`
[INFO] [stderr]  --> tests/server.rs:5:17
[INFO] [stderr]   |
[INFO] [stderr] 5 | use tokio::io::{self, AsyncReadExt, AsyncWriteExt};
[INFO] [stderr]   |                 ^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `tokio::net::TcpListener`
[INFO] [stderr]  --> tests/server.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use tokio::net::TcpListener;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> tests/server.rs:57:5
[INFO] [stderr]    |
[INFO] [stderr] 57 | /     tokio::runtime::Builder::new_multi_thread()
[INFO] [stderr] 58 | |         // .worker_threads(6)
[INFO] [stderr] 59 | |         .enable_all()
[INFO] [stderr] 60 | |         .build()
[INFO] [stderr] 61 | |         .unwrap()
[INFO] [stderr] 62 | |         .block_on(app.run());
[INFO] [stderr]    | |____________________________^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 57 |     let _ = tokio::runtime::Builder::new_multi_thread()
[INFO] [stderr]    |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> examples/router.rs:19:5
[INFO] [stderr]    |
[INFO] [stderr] 19 | /     tokio::runtime::Builder::new_multi_thread()
[INFO] [stderr] 20 | |         // .worker_threads(6)
[INFO] [stderr] 21 | |         .enable_all()
[INFO] [stderr] 22 | |         .build()
[INFO] [stderr] 23 | |         .unwrap()
[INFO] [stderr] 24 | |         .block_on(app.run());
[INFO] [stderr]    | |____________________________^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 19 |     let _ = tokio::runtime::Builder::new_multi_thread()
[INFO] [stderr]    |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: `aero` (example "middleware") generated 2 warnings (run `cargo fix --example "middleware" -p aero` to apply 1 suggestion)
[INFO] [stderr] warning: `aero` (example "hello") generated 3 warnings (run `cargo fix --example "hello" -p aero` to apply 2 suggestions)
[INFO] [stderr] warning: `aero` (example "json") generated 2 warnings (run `cargo fix --example "json" -p aero` to apply 1 suggestion)
[INFO] [stderr] warning: `aero` (test "server") generated 5 warnings (run `cargo fix --test "server" -p aero` to apply 4 suggestions)
[INFO] [stderr] warning: `aero` (example "router") generated 1 warning
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.23s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/aero-bd1c8dd8c6e545fa)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/server.rs (/opt/rustwide/target/debug/deps/server-c636bc967ef5c34d)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test start has been running for over 60 seconds
[ERROR] error running command: no output for 300 seconds
[INFO] running `Command { std: "docker" "inspect" "763dd5d293b2bedbd82e880270781de5263337754fced46267e81f9d1786724d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "763dd5d293b2bedbd82e880270781de5263337754fced46267e81f9d1786724d", kill_on_drop: false }`
[INFO] [stdout] 763dd5d293b2bedbd82e880270781de5263337754fced46267e81f9d1786724d
