[INFO] fetching crate swish_swish 0.1.1...
[INFO] checking swish_swish-0.1.1 against beta-2020-07-24 for pr-75494-beta
[INFO] extracting crate swish_swish 0.1.1 into /workspace/builds/worker-0/source
[INFO] validating manifest of crates.io crate swish_swish 0.1.1 on toolchain beta-2020-07-24
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2020-07-24" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] started tweaking crates.io crate swish_swish 0.1.1
[INFO] finished tweaking crates.io crate swish_swish 0.1.1
[INFO] tweaked toml for crates.io crate swish_swish 0.1.1 written to /workspace/builds/worker-0/source/Cargo.toml
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2020-07-24" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }`
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2020-07-24" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/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" "rustops/crates-build-env@sha256:a636fd89d022f18117e1dc8fb37a0a009933cdbbe082814857f0e2024962d47c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-07-24" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 553a17e77329f67e1d446a1e42469e09b4b8ef4588283ba723b7dafa516bc407
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "553a17e77329f67e1d446a1e42469e09b4b8ef4588283ba723b7dafa516bc407", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "553a17e77329f67e1d446a1e42469e09b4b8ef4588283ba723b7dafa516bc407", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "553a17e77329f67e1d446a1e42469e09b4b8ef4588283ba723b7dafa516bc407", kill_on_drop: false }`
[INFO] [stdout] 553a17e77329f67e1d446a1e42469e09b4b8ef4588283ba723b7dafa516bc407
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/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" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:a636fd89d022f18117e1dc8fb37a0a009933cdbbe082814857f0e2024962d47c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-07-24" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] f2bfde0b7ef5c8a23e5a8a7e3258f72f7f57c202eeaba5a2011beeb9ad2254dd
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "f2bfde0b7ef5c8a23e5a8a7e3258f72f7f57c202eeaba5a2011beeb9ad2254dd", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.19
[INFO] [stderr]    Compiling unicode-xid v0.2.1
[INFO] [stderr]    Compiling memchr v2.3.3
[INFO] [stderr]    Compiling serde_derive v1.0.115
[INFO] [stderr]    Compiling ryu v1.0.5
[INFO] [stderr]    Compiling serde v1.0.115
[INFO] [stderr]    Compiling serde_json v1.0.57
[INFO] [stderr]     Checking lazy_static v1.4.0
[INFO] [stderr]     Checking regex-syntax v0.6.18
[INFO] [stderr]     Checking itoa v0.4.6
[INFO] [stderr]     Checking thread_local v1.0.1
[INFO] [stderr]     Checking aho-corasick v0.7.13
[INFO] [stderr]    Compiling quote v1.0.7
[INFO] [stderr]    Compiling syn v1.0.39
[INFO] [stderr]     Checking regex v1.3.9
[INFO] [stderr]     Checking swish_swish v0.1.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `crate::json::Json`
[INFO] [stdout]  --> src/error.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::json::Json;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::response::Response`
[INFO] [stdout]  --> src/error.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::response::Response;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::types::Body`
[INFO] [stdout]  --> src/json.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::types::Body;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde_json::json`
[INFO] [stdout]  --> src/json.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use serde_json::json;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::json::Json`
[INFO] [stdout]  --> src/matcher.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::json::Json;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::response::Response`
[INFO] [stdout]  --> src/matcher.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::response::Response;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::types::Body`
[INFO] [stdout]  --> src/matcher.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::types::Body;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize`, `Serialize`
[INFO] [stdout]  --> src/matcher.rs:8:13
[INFO] [stdout]   |
[INFO] [stdout] 8 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/matcher.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 11 |     if (route.method == req.method) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HTTP_VERSION`
[INFO] [stdout]  --> src/response.rs:1:35
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::config::{HeaderConfig, HTTP_VERSION};
[INFO] [stdout]   |                                   ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::request::Request`
[INFO] [stdout]  --> src/response.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::request::Request;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::router::Handler`
[INFO] [stdout]  --> src/response.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::router::Handler;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::response::Response`
[INFO] [stdout]  --> src/router.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::response::Response;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::prelude::*`
[INFO] [stdout]   --> src/swish.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use std::io::prelude::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ErrorContents`
[INFO] [stdout]  --> src/types.rs:1:27
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::error::{Error, ErrorContents, ReturnError};
[INFO] [stdout]   |                           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]   --> src/cors.rs:66:9
[INFO] [stdout]    |
[INFO] [stdout] 55 | /         match req.header.elements.get("Host") {
[INFO] [stdout] 56 | |             Some(origin) => {
[INFO] [stdout] 57 | |                 for allowed_origin in origins {
[INFO] [stdout] 58 | |                     if origin == allowed_origin {
[INFO] [stdout] ...  |
[INFO] [stdout] 64 | |             None => return (false, "invalid shaddy request".to_string()),
[INFO] [stdout] 65 | |         }
[INFO] [stdout]    | |_________- any code following this `match` expression is unreachable, as all arms diverge
[INFO] [stdout] 66 |           (true, "ok".to_string())
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^ unreachable expression
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::json::Json`
[INFO] [stdout]  --> src/error.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::json::Json;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::response::Response`
[INFO] [stdout]  --> src/error.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::response::Response;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::types::Body`
[INFO] [stdout]  --> src/json.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::types::Body;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde_json::json`
[INFO] [stdout]  --> src/json.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use serde_json::json;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::json::Json`
[INFO] [stdout]  --> src/matcher.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::json::Json;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::response::Response`
[INFO] [stdout]  --> src/matcher.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::response::Response;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::types::Body`
[INFO] [stdout]  --> src/matcher.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::types::Body;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize`, `Serialize`
[INFO] [stdout]  --> src/matcher.rs:8:13
[INFO] [stdout]   |
[INFO] [stdout] 8 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/matcher.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 11 |     if (route.method == req.method) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HTTP_VERSION`
[INFO] [stdout]  --> src/response.rs:1:35
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::config::{HeaderConfig, HTTP_VERSION};
[INFO] [stdout]   |                                   ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::request::Request`
[INFO] [stdout]  --> src/response.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::request::Request;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::router::Handler`
[INFO] [stdout]  --> src/response.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::router::Handler;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::response::Response`
[INFO] [stdout]  --> src/router.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::response::Response;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::prelude::*`
[INFO] [stdout]   --> src/swish.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use std::io::prelude::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ErrorContents`
[INFO] [stdout]  --> src/types.rs:1:27
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::error::{Error, ErrorContents, ReturnError};
[INFO] [stdout]   |                           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::types::Body`
[INFO] [stdout]  --> src/response.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::types::Body;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/http.rs:20:13
[INFO] [stdout]    |
[INFO] [stdout] 20 |             _ => 500,
[INFO] [stdout]    |             ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/http.rs:31:13
[INFO] [stdout]    |
[INFO] [stdout] 31 |             _ => "Internal Server Error".to_string(),
[INFO] [stdout]    |             ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `req`
[INFO] [stdout]   --> src/cors.rs:87:35
[INFO] [stdout]    |
[INFO] [stdout] 87 |     fn validate_credential(&self, req: &Request, credential: &bool) -> (bool, String) {
[INFO] [stdout]    |                                   ^^^ help: if this is intentional, prefix it with an underscore: `_req`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `credential`
[INFO] [stdout]   --> src/cors.rs:87:50
[INFO] [stdout]    |
[INFO] [stdout] 87 |     fn validate_credential(&self, req: &Request, credential: &bool) -> (bool, String) {
[INFO] [stdout]    |                                                  ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_credential`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `req`
[INFO] [stdout]   --> src/error.rs:31:19
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub fn is_invalid(req: &Request) -> Box<dyn Body> {
[INFO] [stdout]    |                   ^^^ help: if this is intentional, prefix it with an underscore: `_req`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `req`
[INFO] [stdout]   --> src/error.rs:38:24
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub fn is_unauthorized(req: &Request) -> Box<dyn Body> {
[INFO] [stdout]    |                        ^^^ help: if this is intentional, prefix it with an underscore: `_req`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `req`
[INFO] [stdout]   --> src/error.rs:45:21
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub fn is_not_found(req: &Request) -> Box<dyn Body> {
[INFO] [stdout]    |                     ^^^ help: if this is intentional, prefix it with an underscore: `_req`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `res`
[INFO] [stdout]   --> src/swish.rs:52:17
[INFO] [stdout]    |
[INFO] [stdout] 52 |             let mut res = self.search(&mut req);
[INFO] [stdout]    |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_res`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `msg`
[INFO] [stdout]   --> src/swish.rs:56:32
[INFO] [stdout]    |
[INFO] [stdout] 56 |                 let (is_valid, msg) = e.validate_request(&req);
[INFO] [stdout]    |                                ^^^ help: if this is intentional, prefix it with an underscore: `_msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]   --> src/cors.rs:66:9
[INFO] [stdout]    |
[INFO] [stdout] 55 | /         match req.header.elements.get("Host") {
[INFO] [stdout] 56 | |             Some(origin) => {
[INFO] [stdout] 57 | |                 for allowed_origin in origins {
[INFO] [stdout] 58 | |                     if origin == allowed_origin {
[INFO] [stdout] ...  |
[INFO] [stdout] 64 | |             None => return (false, "invalid shaddy request".to_string()),
[INFO] [stdout] 65 | |         }
[INFO] [stdout]    | |_________- any code following this `match` expression is unreachable, as all arms diverge
[INFO] [stdout] 66 |           (true, "ok".to_string())
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^^^^ unreachable expression
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/swish.rs:52:17
[INFO] [stdout]    |
[INFO] [stdout] 52 |             let mut res = self.search(&mut req);
[INFO] [stdout]    |                 ----^^^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/swish.rs:70:13
[INFO] [stdout]    |
[INFO] [stdout] 70 |         let mut header = format!("Content-Type: {}; {}", res.ctype, self.config.get_charset());
[INFO] [stdout]    |             ----^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `allow_everything`
[INFO] [stdout]   --> src/cors.rs:92:8
[INFO] [stdout]    |
[INFO] [stdout] 92 | pub fn allow_everything() -> Cors {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::types::Body`
[INFO] [stdout]  --> src/response.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::types::Body;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/http.rs:20:13
[INFO] [stdout]    |
[INFO] [stdout] 20 |             _ => 500,
[INFO] [stdout]    |             ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/http.rs:31:13
[INFO] [stdout]    |
[INFO] [stdout] 31 |             _ => "Internal Server Error".to_string(),
[INFO] [stdout]    |             ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `req`
[INFO] [stdout]   --> src/cors.rs:87:35
[INFO] [stdout]    |
[INFO] [stdout] 87 |     fn validate_credential(&self, req: &Request, credential: &bool) -> (bool, String) {
[INFO] [stdout]    |                                   ^^^ help: if this is intentional, prefix it with an underscore: `_req`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `credential`
[INFO] [stdout]   --> src/cors.rs:87:50
[INFO] [stdout]    |
[INFO] [stdout] 87 |     fn validate_credential(&self, req: &Request, credential: &bool) -> (bool, String) {
[INFO] [stdout]    |                                                  ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_credential`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `req`
[INFO] [stdout]   --> src/error.rs:31:19
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub fn is_invalid(req: &Request) -> Box<dyn Body> {
[INFO] [stdout]    |                   ^^^ help: if this is intentional, prefix it with an underscore: `_req`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `req`
[INFO] [stdout]   --> src/error.rs:38:24
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub fn is_unauthorized(req: &Request) -> Box<dyn Body> {
[INFO] [stdout]    |                        ^^^ help: if this is intentional, prefix it with an underscore: `_req`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `req`
[INFO] [stdout]   --> src/error.rs:45:21
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub fn is_not_found(req: &Request) -> Box<dyn Body> {
[INFO] [stdout]    |                     ^^^ help: if this is intentional, prefix it with an underscore: `_req`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `res`
[INFO] [stdout]   --> src/swish.rs:52:17
[INFO] [stdout]    |
[INFO] [stdout] 52 |             let mut res = self.search(&mut req);
[INFO] [stdout]    |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_res`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `msg`
[INFO] [stdout]   --> src/swish.rs:56:32
[INFO] [stdout]    |
[INFO] [stdout] 56 |                 let (is_valid, msg) = e.validate_request(&req);
[INFO] [stdout]    |                                ^^^ help: if this is intentional, prefix it with an underscore: `_msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `req`
[INFO] [stdout]   --> src/lib.rs:46:21
[INFO] [stdout]    |
[INFO] [stdout] 46 |     fn path_handler(req: &Request) -> Box<dyn Body> {
[INFO] [stdout]    |                     ^^^ help: if this is intentional, prefix it with an underscore: `_req`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `req`
[INFO] [stdout]   --> src/lib.rs:53:22
[INFO] [stdout]    |
[INFO] [stdout] 53 |     fn greet_handler(req: &Request) -> Box<dyn Body> {
[INFO] [stdout]    |                      ^^^ help: if this is intentional, prefix it with an underscore: `_req`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 29 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/swish.rs:52:17
[INFO] [stdout]    |
[INFO] [stdout] 52 |             let mut res = self.search(&mut req);
[INFO] [stdout]    |                 ----^^^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/swish.rs:70:13
[INFO] [stdout]    |
[INFO] [stdout] 70 |         let mut header = format!("Content-Type: {}; {}", res.ctype, self.config.get_charset());
[INFO] [stdout]    |             ----^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `allow_everything`
[INFO] [stdout]   --> src/cors.rs:92:8
[INFO] [stdout]    |
[INFO] [stdout] 92 | pub fn allow_everything() -> Cors {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `swish_swish`
[INFO] [stdout]   --> src/lib.rs:37:8
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn swish_swish() -> Swish {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `path_handler`
[INFO] [stdout]   --> src/lib.rs:46:8
[INFO] [stdout]    |
[INFO] [stdout] 46 |     fn path_handler(req: &Request) -> Box<dyn Body> {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `greet_handler`
[INFO] [stdout]   --> src/lib.rs:53:8
[INFO] [stdout]    |
[INFO] [stdout] 53 |     fn greet_handler(req: &Request) -> Box<dyn Body> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `user_id_handler`
[INFO] [stdout]   --> src/lib.rs:60:8
[INFO] [stdout]    |
[INFO] [stdout] 60 |     fn user_id_handler(req: &Request) -> Box<dyn Body> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `user_register_handler`
[INFO] [stdout]   --> src/lib.rs:67:8
[INFO] [stdout]    |
[INFO] [stdout] 67 |     fn user_register_handler(req: &Request) -> Box<dyn Body> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 36 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 41.71s
[INFO] running `Command { std: "docker" "inspect" "f2bfde0b7ef5c8a23e5a8a7e3258f72f7f57c202eeaba5a2011beeb9ad2254dd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f2bfde0b7ef5c8a23e5a8a7e3258f72f7f57c202eeaba5a2011beeb9ad2254dd", kill_on_drop: false }`
[INFO] [stdout] f2bfde0b7ef5c8a23e5a8a7e3258f72f7f57c202eeaba5a2011beeb9ad2254dd
