[INFO] cloning repository https://github.com/dbrgn/traefik-phpbb-basic-auth
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/dbrgn/traefik-phpbb-basic-auth" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdbrgn%2Ftraefik-phpbb-basic-auth", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdbrgn%2Ftraefik-phpbb-basic-auth'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 906aad555a5f13843208ac38e2af5941f9bce71f
[INFO] checking dbrgn/traefik-phpbb-basic-auth against try#4f260f0f20b3133d20cfb50353c0221943af5796+rustflags=-Dunmustuse_in_always_ok for pr-148577
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdbrgn%2Ftraefik-phpbb-basic-auth" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/dbrgn/traefik-phpbb-basic-auth
[INFO] finished tweaking git repo https://github.com/dbrgn/traefik-phpbb-basic-auth
[INFO] tweaked toml for git repo https://github.com/dbrgn/traefik-phpbb-basic-auth written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/dbrgn/traefik-phpbb-basic-auth on toolchain 4f260f0f20b3133d20cfb50353c0221943af5796
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4f260f0f20b3133d20cfb50353c0221943af5796" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/dbrgn/traefik-phpbb-basic-auth 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" "+4f260f0f20b3133d20cfb50353c0221943af5796" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+4f260f0f20b3133d20cfb50353c0221943af5796" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] a51db778a8abe43c5a9b5bcc9a546db1ef58f212b2496a4a13a841d864afee31
[INFO] running `Command { std: "docker" "start" "-a" "a51db778a8abe43c5a9b5bcc9a546db1ef58f212b2496a4a13a841d864afee31", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a51db778a8abe43c5a9b5bcc9a546db1ef58f212b2496a4a13a841d864afee31", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a51db778a8abe43c5a9b5bcc9a546db1ef58f212b2496a4a13a841d864afee31", kill_on_drop: false }`
[INFO] [stdout] a51db778a8abe43c5a9b5bcc9a546db1ef58f212b2496a4a13a841d864afee31
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dunmustuse_in_always_ok" "-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" "+4f260f0f20b3133d20cfb50353c0221943af5796" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 1335cbe57818bc6f7458f03c0885649112708df46efa10228ae585f127a6ad0a
[INFO] running `Command { std: "docker" "start" "-a" "1335cbe57818bc6f7458f03c0885649112708df46efa10228ae585f127a6ad0a", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v1.0.56
[INFO] [stderr]    Compiling quote v1.0.8
[INFO] [stderr]    Compiling libc v0.2.81
[INFO] [stderr]     Checking futures-core v0.3.8
[INFO] [stderr]     Checking pin-project-lite v0.2.0
[INFO] [stderr]    Compiling memchr v2.3.4
[INFO] [stderr]    Compiling pin-project-internal v0.4.27
[INFO] [stderr]     Checking bytes v1.0.0
[INFO] [stderr]    Compiling tokio v1.0.1
[INFO] [stderr]    Compiling indexmap v1.6.1
[INFO] [stderr]     Checking http v0.2.2
[INFO] [stderr]    Compiling httparse v1.3.4
[INFO] [stderr]     Checking futures-task v0.3.8
[INFO] [stderr]     Checking futures-sink v0.3.8
[INFO] [stderr]     Checking want v0.3.0
[INFO] [stderr]     Checking tower-service v0.3.0
[INFO] [stderr]     Checking futures-channel v0.3.8
[INFO] [stderr]     Checking tracing v0.1.22
[INFO] [stderr]     Checking base64 v0.12.3
[INFO] [stderr]     Checking phpbb-pwhash v0.1.1
[INFO] [stderr]     Checking mio v0.7.7
[INFO] [stderr]     Checking socket2 v0.3.19
[INFO] [stderr]     Checking http-body v0.4.0
[INFO] [stderr]    Compiling async-stream-impl v0.3.0
[INFO] [stderr]    Compiling tokio-macros v1.0.0
[INFO] [stderr]    Compiling pin-project-internal v1.0.2
[INFO] [stderr]     Checking async-stream v0.3.0
[INFO] [stderr]     Checking pin-project v0.4.27
[INFO] [stderr]     Checking tracing-futures v0.2.4
[INFO] [stderr]     Checking pin-project v1.0.2
[INFO] [stderr]     Checking futures-util v0.3.8
[INFO] [stderr]     Checking tokio-stream v0.1.0
[INFO] [stderr]     Checking tokio-util v0.6.0
[INFO] [stderr]     Checking h2 v0.3.0
[INFO] [stderr]     Checking hyper v0.14.2
[INFO] [stderr]     Checking traefik-phpbb-basic-auth v0.3.0 (/opt/rustwide/workdir)
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:26:75
[INFO] [stdout]    |
[INFO] [stdout] 26 |   async fn handle(req: Request<Body>) -> Result<Response<Body>, Infallible> {
[INFO] [stdout]    |  ___________________________________________________________________________^
[INFO] [stdout] 27 | |     const BASIC_AUTH_PREFIX: &[u8] = b"Basic ";
[INFO] [stdout] 28 | |     match req
[INFO] [stdout] 29 | |         .headers()
[INFO] [stdout] ...  |
[INFO] [stdout] 39 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-D unmustuse-in-always-ok`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:26:75
[INFO] [stdout]    |
[INFO] [stdout] 26 |   async fn handle(req: Request<Body>) -> Result<Response<Body>, Infallible> {
[INFO] [stdout]    |  ___________________________________________________________________________^
[INFO] [stdout] 27 | |     const BASIC_AUTH_PREFIX: &[u8] = b"Basic ";
[INFO] [stdout] 28 | |     match req
[INFO] [stdout] 29 | |         .headers()
[INFO] [stdout] ...  |
[INFO] [stdout] 39 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 | /     match req
[INFO] [stdout] 29 | |         .headers()
[INFO] [stdout] 30 | |         .get("authorization")
[INFO] [stdout] 31 | |         .map(HeaderValue::as_bytes)
[INFO] [stdout] ...  |
[INFO] [stdout] 37 | |         None => handle_noauth().await,
[INFO] [stdout] 38 | |     }
[INFO] [stdout]    | |_____^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:33:62
[INFO] [stdout]    |
[INFO] [stdout] 33 |           Some(auth) if auth.starts_with(BASIC_AUTH_PREFIX) => {
[INFO] [stdout]    |  ______________________________________________________________^
[INFO] [stdout] 34 | |             handle_auth(&auth[BASIC_AUTH_PREFIX.len()..]).await
[INFO] [stdout] 35 | |         }
[INFO] [stdout]    | |_________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:34:13
[INFO] [stdout]    |
[INFO] [stdout] 34 |             handle_auth(&auth[BASIC_AUTH_PREFIX.len()..]).await
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:34:59
[INFO] [stdout]    |
[INFO] [stdout] 34 |             handle_auth(&auth[BASIC_AUTH_PREFIX.len()..]).await
[INFO] [stdout]    |                                                           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:34:13
[INFO] [stdout]    |
[INFO] [stdout] 34 |             handle_auth(&auth[BASIC_AUTH_PREFIX.len()..]).await
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:36:20
[INFO] [stdout]    |
[INFO] [stdout] 36 |         Some(_) => handle_noauth().await,
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:36:36
[INFO] [stdout]    |
[INFO] [stdout] 36 |         Some(_) => handle_noauth().await,
[INFO] [stdout]    |                                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:36:20
[INFO] [stdout]    |
[INFO] [stdout] 36 |         Some(_) => handle_noauth().await,
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:37:17
[INFO] [stdout]    |
[INFO] [stdout] 37 |         None => handle_noauth().await,
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:37:33
[INFO] [stdout]    |
[INFO] [stdout] 37 |         None => handle_noauth().await,
[INFO] [stdout]    |                                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `traefik-phpbb-basic-auth` (bin "traefik-phpbb-basic-auth") due to 30 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:37:17
[INFO] [stdout]    |
[INFO] [stdout] 37 |         None => handle_noauth().await,
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:42:79
[INFO] [stdout]    |
[INFO] [stdout] 42 |   async fn handle_auth(auth_value: &[u8]) -> Result<Response<Body>, Infallible> {
[INFO] [stdout]    |  _______________________________________________________________________________^
[INFO] [stdout] 43 | |     fn invalid(reason: impl AsRef<str>) -> Result<Response<Body>, Infallible> {
[INFO] [stdout] 44 | |         println!("[handle_auth  ] Invalid ({})", reason.as_ref());
[INFO] [stdout] 45 | |         Ok(Response::builder()
[INFO] [stdout] ...  |
[INFO] [stdout] 84 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:42:79
[INFO] [stdout]    |
[INFO] [stdout] 42 |   async fn handle_auth(auth_value: &[u8]) -> Result<Response<Body>, Infallible> {
[INFO] [stdout]    |  _______________________________________________________________________________^
[INFO] [stdout] 43 | |     fn invalid(reason: impl AsRef<str>) -> Result<Response<Body>, Infallible> {
[INFO] [stdout] 44 | |         println!("[handle_auth  ] Invalid ({})", reason.as_ref());
[INFO] [stdout] 45 | |         Ok(Response::builder()
[INFO] [stdout] ...  |
[INFO] [stdout] 84 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:43:79
[INFO] [stdout]    |
[INFO] [stdout] 43 |       fn invalid(reason: impl AsRef<str>) -> Result<Response<Body>, Infallible> {
[INFO] [stdout]    |  _______________________________________________________________________________^
[INFO] [stdout] 44 | |         println!("[handle_auth  ] Invalid ({})", reason.as_ref());
[INFO] [stdout] 45 | |         Ok(Response::builder()
[INFO] [stdout] 46 | |             .status(StatusCode::FORBIDDEN)
[INFO] [stdout] ...  |
[INFO] [stdout] 49 | |             .unwrap())
[INFO] [stdout] 50 | |     }
[INFO] [stdout]    | |_____^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 45 | /         Ok(Response::builder()
[INFO] [stdout] 46 | |             .status(StatusCode::FORBIDDEN)
[INFO] [stdout] 47 | |             .header("content-type", "text/plain")
[INFO] [stdout] 48 | |             .body(Body::from("Authentication failed. To retry, please close and re-open your browser."))
[INFO] [stdout] 49 | |             .unwrap())
[INFO] [stdout]    | |______________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:58:24
[INFO] [stdout]    |
[INFO] [stdout] 58 |         None => return invalid("Base64 or UTF-8 decode failed"),
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:62:16
[INFO] [stdout]    |
[INFO] [stdout] 62 |         return invalid("Header value splitting failed");
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:71:20
[INFO] [stdout]    |
[INFO] [stdout] 71 |             return invalid("User not found");
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:76:5
[INFO] [stdout]    |
[INFO] [stdout] 76 | /     match check_hash(&hash, password) {
[INFO] [stdout] 77 | |         CheckHashResult::Valid => {
[INFO] [stdout] 78 | |             println!("[handle_auth  ] OK");
[INFO] [stdout] 79 | |             Ok(Response::new(Body::from("Login successful")))
[INFO] [stdout] ...  |
[INFO] [stdout] 82 | |         _ => return invalid("Invalid hash"),
[INFO] [stdout] 83 | |     }
[INFO] [stdout]    | |_____^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:77:35
[INFO] [stdout]    |
[INFO] [stdout] 77 |           CheckHashResult::Valid => {
[INFO] [stdout]    |  ___________________________________^
[INFO] [stdout] 78 | |             println!("[handle_auth  ] OK");
[INFO] [stdout] 79 | |             Ok(Response::new(Body::from("Login successful")))
[INFO] [stdout] 80 | |         }
[INFO] [stdout]    | |_________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:79:13
[INFO] [stdout]    |
[INFO] [stdout] 79 |             Ok(Response::new(Body::from("Login successful")))
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:81:44
[INFO] [stdout]    |
[INFO] [stdout] 81 |         CheckHashResult::Invalid => return invalid(format!("Login failed for user {}", username)),
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:82:21
[INFO] [stdout]    |
[INFO] [stdout] 82 |         _ => return invalid("Invalid hash"),
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:87:64
[INFO] [stdout]    |
[INFO] [stdout] 87 |   async fn handle_noauth() -> Result<Response<Body>, Infallible> {
[INFO] [stdout]    |  ________________________________________________________________^
[INFO] [stdout] 88 | |     let resp = Response::builder()
[INFO] [stdout] 89 | |         .status(StatusCode::UNAUTHORIZED)
[INFO] [stdout] 90 | |         .header("content-type", "text/plain")
[INFO] [stdout] ...  |
[INFO] [stdout] 98 | |     Ok(resp)
[INFO] [stdout] 99 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:87:64
[INFO] [stdout]    |
[INFO] [stdout] 87 |   async fn handle_noauth() -> Result<Response<Body>, Infallible> {
[INFO] [stdout]    |  ________________________________________________________________^
[INFO] [stdout] 88 | |     let resp = Response::builder()
[INFO] [stdout] 89 | |         .status(StatusCode::UNAUTHORIZED)
[INFO] [stdout] 90 | |         .header("content-type", "text/plain")
[INFO] [stdout] ...  |
[INFO] [stdout] 98 | |     Ok(resp)
[INFO] [stdout] 99 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:98:5
[INFO] [stdout]    |
[INFO] [stdout] 98 |     Ok(resp)
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<service::util::ServiceFn<fn(hyper::Request<Body>) -> impl Future<Output = Result<Response<Body>, Infallible>> {handle}, Body>, Infallible>
[INFO] [stdout]    --> src/main.rs:160:54
[INFO] [stdout]     |
[INFO] [stdout] 160 |     let make_service = make_service_fn(|_conn| async { Ok::<_, Infallible>(service_fn(handle)) });
[INFO] [stdout]     |                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<service::util::ServiceFn<fn(hyper::Request<Body>) -> impl Future<Output = Result<Response<Body>, Infallible>> {handle}, Body>, Infallible>
[INFO] [stdout]    --> src/main.rs:160:56
[INFO] [stdout]     |
[INFO] [stdout] 160 |     let make_service = make_service_fn(|_conn| async { Ok::<_, Infallible>(service_fn(handle)) });
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:26:75
[INFO] [stdout]    |
[INFO] [stdout] 26 |   async fn handle(req: Request<Body>) -> Result<Response<Body>, Infallible> {
[INFO] [stdout]    |  ___________________________________________________________________________^
[INFO] [stdout] 27 | |     const BASIC_AUTH_PREFIX: &[u8] = b"Basic ";
[INFO] [stdout] 28 | |     match req
[INFO] [stdout] 29 | |         .headers()
[INFO] [stdout] ...  |
[INFO] [stdout] 39 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-D unmustuse-in-always-ok`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:26:75
[INFO] [stdout]    |
[INFO] [stdout] 26 |   async fn handle(req: Request<Body>) -> Result<Response<Body>, Infallible> {
[INFO] [stdout]    |  ___________________________________________________________________________^
[INFO] [stdout] 27 | |     const BASIC_AUTH_PREFIX: &[u8] = b"Basic ";
[INFO] [stdout] 28 | |     match req
[INFO] [stdout] 29 | |         .headers()
[INFO] [stdout] ...  |
[INFO] [stdout] 39 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 | /     match req
[INFO] [stdout] 29 | |         .headers()
[INFO] [stdout] 30 | |         .get("authorization")
[INFO] [stdout] 31 | |         .map(HeaderValue::as_bytes)
[INFO] [stdout] ...  |
[INFO] [stdout] 37 | |         None => handle_noauth().await,
[INFO] [stdout] 38 | |     }
[INFO] [stdout]    | |_____^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:33:62
[INFO] [stdout]    |
[INFO] [stdout] 33 |           Some(auth) if auth.starts_with(BASIC_AUTH_PREFIX) => {
[INFO] [stdout]    |  ______________________________________________________________^
[INFO] [stdout] 34 | |             handle_auth(&auth[BASIC_AUTH_PREFIX.len()..]).await
[INFO] [stdout] 35 | |         }
[INFO] [stdout]    | |_________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:34:13
[INFO] [stdout]    |
[INFO] [stdout] 34 |             handle_auth(&auth[BASIC_AUTH_PREFIX.len()..]).await
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:34:59
[INFO] [stdout]    |
[INFO] [stdout] 34 |             handle_auth(&auth[BASIC_AUTH_PREFIX.len()..]).await
[INFO] [stdout]    |                                                           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:34:13
[INFO] [stdout]    |
[INFO] [stdout] 34 |             handle_auth(&auth[BASIC_AUTH_PREFIX.len()..]).await
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:36:20
[INFO] [stdout]    |
[INFO] [stdout] 36 |         Some(_) => handle_noauth().await,
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:36:36
[INFO] [stdout]    |
[INFO] [stdout] 36 |         Some(_) => handle_noauth().await,
[INFO] [stdout]    |                                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:36:20
[INFO] [stdout]    |
[INFO] [stdout] 36 |         Some(_) => handle_noauth().await,
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:37:17
[INFO] [stdout]    |
[INFO] [stdout] 37 |         None => handle_noauth().await,
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:37:33
[INFO] [stdout]    |
[INFO] [stdout] 37 |         None => handle_noauth().await,
[INFO] [stdout]    |                                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:37:17
[INFO] [stdout]    |
[INFO] [stdout] 37 |         None => handle_noauth().await,
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:42:79
[INFO] [stdout]    |
[INFO] [stdout] 42 |   async fn handle_auth(auth_value: &[u8]) -> Result<Response<Body>, Infallible> {
[INFO] [stdout]    |  _______________________________________________________________________________^
[INFO] [stdout] 43 | |     fn invalid(reason: impl AsRef<str>) -> Result<Response<Body>, Infallible> {
[INFO] [stdout] 44 | |         println!("[handle_auth  ] Invalid ({})", reason.as_ref());
[INFO] [stdout] 45 | |         Ok(Response::builder()
[INFO] [stdout] ...  |
[INFO] [stdout] 84 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:42:79
[INFO] [stdout]    |
[INFO] [stdout] 42 |   async fn handle_auth(auth_value: &[u8]) -> Result<Response<Body>, Infallible> {
[INFO] [stdout]    |  _______________________________________________________________________________^
[INFO] [stdout] 43 | |     fn invalid(reason: impl AsRef<str>) -> Result<Response<Body>, Infallible> {
[INFO] [stdout] 44 | |         println!("[handle_auth  ] Invalid ({})", reason.as_ref());
[INFO] [stdout] 45 | |         Ok(Response::builder()
[INFO] [stdout] ...  |
[INFO] [stdout] 84 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:43:79
[INFO] [stdout]    |
[INFO] [stdout] 43 |       fn invalid(reason: impl AsRef<str>) -> Result<Response<Body>, Infallible> {
[INFO] [stdout]    |  _______________________________________________________________________________^
[INFO] [stdout] 44 | |         println!("[handle_auth  ] Invalid ({})", reason.as_ref());
[INFO] [stdout] 45 | |         Ok(Response::builder()
[INFO] [stdout] 46 | |             .status(StatusCode::FORBIDDEN)
[INFO] [stdout] ...  |
[INFO] [stdout] 49 | |             .unwrap())
[INFO] [stdout] 50 | |     }
[INFO] [stdout]    | |_____^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 45 | /         Ok(Response::builder()
[INFO] [stdout] 46 | |             .status(StatusCode::FORBIDDEN)
[INFO] [stdout] 47 | |             .header("content-type", "text/plain")
[INFO] [stdout] 48 | |             .body(Body::from("Authentication failed. To retry, please close and re-open your browser."))
[INFO] [stdout] 49 | |             .unwrap())
[INFO] [stdout]    | |______________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:58:24
[INFO] [stdout]    |
[INFO] [stdout] 58 |         None => return invalid("Base64 or UTF-8 decode failed"),
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:62:16
[INFO] [stdout]    |
[INFO] [stdout] 62 |         return invalid("Header value splitting failed");
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:71:20
[INFO] [stdout]    |
[INFO] [stdout] 71 |             return invalid("User not found");
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:76:5
[INFO] [stdout]    |
[INFO] [stdout] 76 | /     match check_hash(&hash, password) {
[INFO] [stdout] 77 | |         CheckHashResult::Valid => {
[INFO] [stdout] 78 | |             println!("[handle_auth  ] OK");
[INFO] [stdout] 79 | |             Ok(Response::new(Body::from("Login successful")))
[INFO] [stdout] ...  |
[INFO] [stdout] 82 | |         _ => return invalid("Invalid hash"),
[INFO] [stdout] 83 | |     }
[INFO] [stdout]    | |_____^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:77:35
[INFO] [stdout]    |
[INFO] [stdout] 77 |           CheckHashResult::Valid => {
[INFO] [stdout]    |  ___________________________________^
[INFO] [stdout] 78 | |             println!("[handle_auth  ] OK");
[INFO] [stdout] 79 | |             Ok(Response::new(Body::from("Login successful")))
[INFO] [stdout] 80 | |         }
[INFO] [stdout]    | |_________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:79:13
[INFO] [stdout]    |
[INFO] [stdout] 79 |             Ok(Response::new(Body::from("Login successful")))
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:81:44
[INFO] [stdout]    |
[INFO] [stdout] 81 |         CheckHashResult::Invalid => return invalid(format!("Login failed for user {}", username)),
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:82:21
[INFO] [stdout]    |
[INFO] [stdout] 82 |         _ => return invalid("Invalid hash"),
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:87:64
[INFO] [stdout]    |
[INFO] [stdout] 87 |   async fn handle_noauth() -> Result<Response<Body>, Infallible> {
[INFO] [stdout]    |  ________________________________________________________________^
[INFO] [stdout] 88 | |     let resp = Response::builder()
[INFO] [stdout] 89 | |         .status(StatusCode::UNAUTHORIZED)
[INFO] [stdout] 90 | |         .header("content-type", "text/plain")
[INFO] [stdout] ...  |
[INFO] [stdout] 98 | |     Ok(resp)
[INFO] [stdout] 99 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:87:64
[INFO] [stdout]    |
[INFO] [stdout] 87 |   async fn handle_noauth() -> Result<Response<Body>, Infallible> {
[INFO] [stdout]    |  ________________________________________________________________^
[INFO] [stdout] 88 | |     let resp = Response::builder()
[INFO] [stdout] 89 | |         .status(StatusCode::UNAUTHORIZED)
[INFO] [stdout] 90 | |         .header("content-type", "text/plain")
[INFO] [stdout] ...  |
[INFO] [stdout] 98 | |     Ok(resp)
[INFO] [stdout] 99 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Response<Body>, Infallible>
[INFO] [stdout]   --> src/main.rs:98:5
[INFO] [stdout]    |
[INFO] [stdout] 98 |     Ok(resp)
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<service::util::ServiceFn<fn(hyper::Request<Body>) -> impl Future<Output = Result<Response<Body>, Infallible>> {handle}, Body>, Infallible>
[INFO] [stdout]    --> src/main.rs:160:54
[INFO] [stdout]     |
[INFO] [stdout] 160 |     let make_service = make_service_fn(|_conn| async { Ok::<_, Infallible>(service_fn(handle)) });
[INFO] [stdout]     |                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<service::util::ServiceFn<fn(hyper::Request<Body>) -> impl Future<Output = Result<Response<Body>, Infallible>> {handle}, Body>, Infallible>
[INFO] [stdout]    --> src/main.rs:160:56
[INFO] [stdout]     |
[INFO] [stdout] 160 |     let make_service = make_service_fn(|_conn| async { Ok::<_, Infallible>(service_fn(handle)) });
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `traefik-phpbb-basic-auth` (bin "traefik-phpbb-basic-auth" test) due to 30 previous errors
[INFO] running `Command { std: "docker" "inspect" "1335cbe57818bc6f7458f03c0885649112708df46efa10228ae585f127a6ad0a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1335cbe57818bc6f7458f03c0885649112708df46efa10228ae585f127a6ad0a", kill_on_drop: false }`
[INFO] [stdout] 1335cbe57818bc6f7458f03c0885649112708df46efa10228ae585f127a6ad0a
