[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, Infallible> [INFO] [stdout] --> src/main.rs:26:75 [INFO] [stdout] | [INFO] [stdout] 26 | async fn handle(req: Request) -> Result, 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, Infallible> [INFO] [stdout] --> src/main.rs:26:75 [INFO] [stdout] | [INFO] [stdout] 26 | async fn handle(req: Request) -> Result, 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, 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, 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, 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, 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, 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, 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, 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, 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, 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, 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, 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, Infallible> [INFO] [stdout] --> src/main.rs:42:79 [INFO] [stdout] | [INFO] [stdout] 42 | async fn handle_auth(auth_value: &[u8]) -> Result, Infallible> { [INFO] [stdout] | _______________________________________________________________________________^ [INFO] [stdout] 43 | | fn invalid(reason: impl AsRef) -> Result, 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, Infallible> [INFO] [stdout] --> src/main.rs:42:79 [INFO] [stdout] | [INFO] [stdout] 42 | async fn handle_auth(auth_value: &[u8]) -> Result, Infallible> { [INFO] [stdout] | _______________________________________________________________________________^ [INFO] [stdout] 43 | | fn invalid(reason: impl AsRef) -> Result, 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, Infallible> [INFO] [stdout] --> src/main.rs:43:79 [INFO] [stdout] | [INFO] [stdout] 43 | fn invalid(reason: impl AsRef) -> Result, 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, 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, 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, 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, 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, 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, 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, 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, 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, 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, Infallible> [INFO] [stdout] --> src/main.rs:87:64 [INFO] [stdout] | [INFO] [stdout] 87 | async fn handle_noauth() -> Result, 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, Infallible> [INFO] [stdout] --> src/main.rs:87:64 [INFO] [stdout] | [INFO] [stdout] 87 | async fn handle_noauth() -> Result, 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, 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) -> impl Future, 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) -> impl Future, 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, Infallible> [INFO] [stdout] --> src/main.rs:26:75 [INFO] [stdout] | [INFO] [stdout] 26 | async fn handle(req: Request) -> Result, 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, Infallible> [INFO] [stdout] --> src/main.rs:26:75 [INFO] [stdout] | [INFO] [stdout] 26 | async fn handle(req: Request) -> Result, 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, 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, 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, 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, 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, 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, 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, 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, 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, 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, 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, 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, Infallible> [INFO] [stdout] --> src/main.rs:42:79 [INFO] [stdout] | [INFO] [stdout] 42 | async fn handle_auth(auth_value: &[u8]) -> Result, Infallible> { [INFO] [stdout] | _______________________________________________________________________________^ [INFO] [stdout] 43 | | fn invalid(reason: impl AsRef) -> Result, 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, Infallible> [INFO] [stdout] --> src/main.rs:42:79 [INFO] [stdout] | [INFO] [stdout] 42 | async fn handle_auth(auth_value: &[u8]) -> Result, Infallible> { [INFO] [stdout] | _______________________________________________________________________________^ [INFO] [stdout] 43 | | fn invalid(reason: impl AsRef) -> Result, 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, Infallible> [INFO] [stdout] --> src/main.rs:43:79 [INFO] [stdout] | [INFO] [stdout] 43 | fn invalid(reason: impl AsRef) -> Result, 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, 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, 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, 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, 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, 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, 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, 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, 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, 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, Infallible> [INFO] [stdout] --> src/main.rs:87:64 [INFO] [stdout] | [INFO] [stdout] 87 | async fn handle_noauth() -> Result, 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, Infallible> [INFO] [stdout] --> src/main.rs:87:64 [INFO] [stdout] | [INFO] [stdout] 87 | async fn handle_noauth() -> Result, 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, 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) -> impl Future, 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) -> impl Future, 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