[INFO] cloning repository https://github.com/liruohrh/rustbook-httpserver
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/liruohrh/rustbook-httpserver" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fliruohrh%2Frustbook-httpserver", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fliruohrh%2Frustbook-httpserver'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 273ec275678e0dd7920f42536a5ce3327d6c2e53
[INFO] checking liruohrh/rustbook-httpserver against 5c543b0b8c73c7b72bc8284ced4fb22ead15734d for pr-160186
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fliruohrh%2Frustbook-httpserver" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/liruohrh/rustbook-httpserver
[INFO] finished tweaking git repo https://github.com/liruohrh/rustbook-httpserver
[INFO] tweaked toml for git repo https://github.com/liruohrh/rustbook-httpserver written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/liruohrh/rustbook-httpserver on toolchain 5c543b0b8c73c7b72bc8284ced4fb22ead15734d
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+5c543b0b8c73c7b72bc8284ced4fb22ead15734d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/liruohrh/rustbook-httpserver 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" "+5c543b0b8c73c7b72bc8284ced4fb22ead15734d" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] b1fdacb737be5634a4d4558f03bd580c1233b22f6aeaf5a1f5a126711c0cf662
[INFO] running `Command { std: "docker" "start" "b1fdacb737be5634a4d4558f03bd580c1233b22f6aeaf5a1f5a126711c0cf662", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "b1fdacb737be5634a4d4558f03bd580c1233b22f6aeaf5a1f5a126711c0cf662", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "b1fdacb737be5634a4d4558f03bd580c1233b22f6aeaf5a1f5a126711c0cf662" "/opt/rustwide/cargo-home/bin/cargo" "+5c543b0b8c73c7b72bc8284ced4fb22ead15734d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "b1fdacb737be5634a4d4558f03bd580c1233b22f6aeaf5a1f5a126711c0cf662", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "b1fdacb737be5634a4d4558f03bd580c1233b22f6aeaf5a1f5a126711c0cf662" "/opt/rustwide/cargo-home/bin/cargo" "+5c543b0b8c73c7b72bc8284ced4fb22ead15734d" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]     Checking rustbook-httpserver v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused variable: `now`
[INFO] [stdout]    --> src/main.rs:473:9
[INFO] [stdout]     |
[INFO] [stdout] 473 |     let now = SystemTime::now();
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_now`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `order` is never read
[INFO] [stdout]   --> src/main.rs:68:5
[INFO] [stdout]    |
[INFO] [stdout] 65 | struct Middleware {
[INFO] [stdout]    |        ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 68 |     order: usize,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Middleware` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `method`, `path`, and `order` are never used
[INFO] [stdout]   --> src/main.rs:80:8
[INFO] [stdout]    |
[INFO] [stdout] 71 | impl Middleware {
[INFO] [stdout]    | --------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 80 |     fn method(mut self, method: HttpMethod) -> Self {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 84 |     fn path(mut self, path: String) -> Self {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 88 |     fn order(mut self, order: usize) -> Self {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `abort` is never used
[INFO] [stdout]    --> src/main.rs:113:8
[INFO] [stdout]     |
[INFO] [stdout] 101 | impl<'a> MiddlewareChain<'a> {
[INFO] [stdout]     | ---------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 113 |     fn abort(&mut self) {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `version`, `headers`, and `body` are never read
[INFO] [stdout]    --> src/main.rs:332:5
[INFO] [stdout]     |
[INFO] [stdout] 328 | struct HttpRequest {
[INFO] [stdout]     |        ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 332 |     version: String,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 333 |     headers: HashMap<String, String>,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 334 |     body: Option<String>,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `HttpRequest` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `view`, `status_code`, `headers`, `add_header`, and `body` are never used
[INFO] [stdout]    --> src/main.rs:358:8
[INFO] [stdout]     |
[INFO] [stdout] 345 | impl HttpResponse {
[INFO] [stdout]     | ----------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 358 |     fn view(view_name: String) -> HttpResponse {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 391 |     fn status_code(mut self, status_code: u16) -> Self {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 395 |     fn headers(mut self, headers: HashMap<String, String>) -> Self {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 399 |     fn add_header(mut self, key: String, value: String) -> Self {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 406 |     fn body(mut self, body: String) -> Self {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pong` is never used
[INFO] [stdout]    --> src/main.rs:464:4
[INFO] [stdout]     |
[INFO] [stdout] 464 | fn pong(mut stream: TcpStream) {
[INFO] [stdout]     |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `now`
[INFO] [stdout]    --> src/main.rs:473:9
[INFO] [stdout]     |
[INFO] [stdout] 473 |     let now = SystemTime::now();
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_now`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `order` is never read
[INFO] [stdout]   --> src/main.rs:68:5
[INFO] [stdout]    |
[INFO] [stdout] 65 | struct Middleware {
[INFO] [stdout]    |        ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 68 |     order: usize,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Middleware` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `method`, `path`, and `order` are never used
[INFO] [stdout]   --> src/main.rs:80:8
[INFO] [stdout]    |
[INFO] [stdout] 71 | impl Middleware {
[INFO] [stdout]    | --------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 80 |     fn method(mut self, method: HttpMethod) -> Self {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 84 |     fn path(mut self, path: String) -> Self {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 88 |     fn order(mut self, order: usize) -> Self {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `abort` is never used
[INFO] [stdout]    --> src/main.rs:113:8
[INFO] [stdout]     |
[INFO] [stdout] 101 | impl<'a> MiddlewareChain<'a> {
[INFO] [stdout]     | ---------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 113 |     fn abort(&mut self) {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `version`, `headers`, and `body` are never read
[INFO] [stdout]    --> src/main.rs:332:5
[INFO] [stdout]     |
[INFO] [stdout] 328 | struct HttpRequest {
[INFO] [stdout]     |        ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 332 |     version: String,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 333 |     headers: HashMap<String, String>,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 334 |     body: Option<String>,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `HttpRequest` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `view`, `status_code`, `headers`, `add_header`, and `body` are never used
[INFO] [stdout]    --> src/main.rs:358:8
[INFO] [stdout]     |
[INFO] [stdout] 345 | impl HttpResponse {
[INFO] [stdout]     | ----------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 358 |     fn view(view_name: String) -> HttpResponse {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 391 |     fn status_code(mut self, status_code: u16) -> Self {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 395 |     fn headers(mut self, headers: HashMap<String, String>) -> Self {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 399 |     fn add_header(mut self, key: String, value: String) -> Self {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 406 |     fn body(mut self, body: String) -> Self {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pong` is never used
[INFO] [stdout]    --> src/main.rs:464:4
[INFO] [stdout]     |
[INFO] [stdout] 464 | fn pong(mut stream: TcpStream) {
[INFO] [stdout]     |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.19s
[INFO] running `Command { std: "docker" "inspect" "b1fdacb737be5634a4d4558f03bd580c1233b22f6aeaf5a1f5a126711c0cf662", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b1fdacb737be5634a4d4558f03bd580c1233b22f6aeaf5a1f5a126711c0cf662", kill_on_drop: false }`
[INFO] [stdout] b1fdacb737be5634a4d4558f03bd580c1233b22f6aeaf5a1f5a126711c0cf662
