[INFO] cloning repository https://github.com/gpwclark/learnrust
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/gpwclark/learnrust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgpwclark%2Flearnrust", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgpwclark%2Flearnrust'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] fc02c9b4e669a3865709ba3108457a9e86a8df2b
[INFO] checking gpwclark/learnrust 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%2Fgpwclark%2Flearnrust" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/gpwclark/learnrust
[INFO] finished tweaking git repo https://github.com/gpwclark/learnrust
[INFO] tweaked toml for git repo https://github.com/gpwclark/learnrust written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/gpwclark/learnrust 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/gpwclark/learnrust 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] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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] bb82d09bf9d8cd989cfde7853b690d41d41eda76fc129b87304a7a6f283f017a
[INFO] running `Command { std: "docker" "start" "-a" "bb82d09bf9d8cd989cfde7853b690d41d41eda76fc129b87304a7a6f283f017a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "bb82d09bf9d8cd989cfde7853b690d41d41eda76fc129b87304a7a6f283f017a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bb82d09bf9d8cd989cfde7853b690d41d41eda76fc129b87304a7a6f283f017a", kill_on_drop: false }`
[INFO] [stdout] bb82d09bf9d8cd989cfde7853b690d41d41eda76fc129b87304a7a6f283f017a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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] f24baa0c9dfb6252afcc4f566bc8c621aa05967aa2a045f59b6edc3dbf39f3db
[INFO] running `Command { std: "docker" "start" "-a" "f24baa0c9dfb6252afcc4f566bc8c621aa05967aa2a045f59b6edc3dbf39f3db", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]    Compiling proc-macro2 v1.0.26
[INFO] [stderr]    Compiling unicode-xid v0.2.1
[INFO] [stderr]    Compiling syn v1.0.68
[INFO] [stderr]    Compiling serde_derive v1.0.125
[INFO] [stderr]    Compiling memchr v2.3.4
[INFO] [stderr]    Compiling serde v1.0.125
[INFO] [stderr]    Compiling libc v0.2.92
[INFO] [stderr]     Checking rand_core v0.3.1
[INFO] [stderr]     Checking directories v0.10.0
[INFO] [stderr]     Checking regex-syntax v0.6.23
[INFO] [stderr]     Checking aho-corasick v0.7.15
[INFO] [stderr]     Checking rand v0.5.6
[INFO] [stderr]    Compiling quote v1.0.9
[INFO] [stderr]     Checking regex v1.4.5
[INFO] [stderr]    Compiling enum-display-derive v0.1.1
[INFO] [stderr]     Checking toml v0.4.10
[INFO] [stderr]     Checking confy v0.3.1
[INFO] [stderr]     Checking learn v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: irrefutable `if let` pattern
[INFO] [stdout]   --> src/advent_of_code/mod.rs:32:32
[INFO] [stdout]    |
[INFO] [stdout] 32 | ...                   if let Ok(item) = l.parse() {
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this pattern will always match, so the `if let` is useless
[INFO] [stdout]    = help: consider replacing the `if let` with a `let`
[INFO] [stdout]    = note: `#[warn(irrefutable_let_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Password` is never constructed
[INFO] [stdout]   --> src/advent_of_code/mod.rs:47:16
[INFO] [stdout]    |
[INFO] [stdout] 47 |     pub struct Password {
[INFO] [stdout]    |                ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `make_password`, `is_valid_new`, and `is_valid` are never used
[INFO] [stdout]    --> src/advent_of_code/mod.rs:55:16
[INFO] [stdout]     |
[INFO] [stdout]  54 |     impl Password {
[INFO] [stdout]     |     ------------- associated items in this implementation
[INFO] [stdout]  55 |         pub fn new(line: &str) -> Option<Password> {
[INFO] [stdout]     |                ^^^
[INFO] [stdout] ...
[INFO] [stdout]  59 |         fn make_password(line: &str) -> Option<Password> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  82 |         pub fn is_valid_new(&self) -> bool {
[INFO] [stdout]     |                ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 101 |         pub fn is_valid(&self) -> bool {
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `solve_puzzle_1` is never used
[INFO] [stdout]    --> src/advent_of_code/mod.rs:205:12
[INFO] [stdout]     |
[INFO] [stdout] 205 |     pub fn solve_puzzle_1() -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `solve_puzzle_2` is never used
[INFO] [stdout]    --> src/advent_of_code/mod.rs:217:12
[INFO] [stdout]     |
[INFO] [stdout] 217 |     pub fn solve_puzzle_2() -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CircArr` is never constructed
[INFO] [stdout]    --> src/advent_of_code/mod.rs:235:16
[INFO] [stdout]     |
[INFO] [stdout] 235 |     pub struct CircArr {
[INFO] [stdout]     |                ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `get` are never used
[INFO] [stdout]    --> src/advent_of_code/mod.rs:242:16
[INFO] [stdout]     |
[INFO] [stdout] 241 |     impl CircArr {
[INFO] [stdout]     |     ------------ associated items in this implementation
[INFO] [stdout] 242 |         pub fn new(arr: Vec<u8>) -> CircArr {
[INFO] [stdout]     |                ^^^
[INFO] [stdout] ...
[INFO] [stdout] 248 |         pub fn get(&self, idx: usize) -> u8 {
[INFO] [stdout]     |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `solve_puzzle_1` is never used
[INFO] [stdout]    --> src/advent_of_code/mod.rs:278:12
[INFO] [stdout]     |
[INFO] [stdout] 278 |     pub fn solve_puzzle_1() -> u32 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `solve_puzzle_2` is never used
[INFO] [stdout]    --> src/advent_of_code/mod.rs:300:12
[INFO] [stdout]     |
[INFO] [stdout] 300 |     pub fn solve_puzzle_2() {}
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `bar` and `tup` are never read
[INFO] [stdout]  --> src/data_structures/mod.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 3 |     struct MyStruct {
[INFO] [stdout]   |            -------- fields in this struct
[INFO] [stdout] 4 |         foo: String,
[INFO] [stdout] 5 |         bar: bool,
[INFO] [stdout]   |         ^^^
[INFO] [stdout] 6 |         tup: (u32, u32),
[INFO] [stdout]   |         ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `MyStruct` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<String, Infallible>
[INFO] [stdout]   --> src/advent_of_code/mod.rs:32:47
[INFO] [stdout]    |
[INFO] [stdout] 32 | ...                   if let Ok(item) = l.parse() {
[INFO] [stdout]    |                                         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-D unmustuse-in-always-ok`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: irrefutable `if let` pattern
[INFO] [stdout]   --> src/advent_of_code/mod.rs:32:32
[INFO] [stdout]    |
[INFO] [stdout] 32 | ...                   if let Ok(item) = l.parse() {
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this pattern will always match, so the `if let` is useless
[INFO] [stdout]    = help: consider replacing the `if let` with a `let`
[INFO] [stdout]    = note: `#[warn(irrefutable_let_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `learn` (bin "learn") due to 1 previous error; 10 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: fields `bar` and `tup` are never read
[INFO] [stdout]  --> src/data_structures/mod.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 3 |     struct MyStruct {
[INFO] [stdout]   |            -------- fields in this struct
[INFO] [stdout] 4 |         foo: String,
[INFO] [stdout] 5 |         bar: bool,
[INFO] [stdout]   |         ^^^
[INFO] [stdout] 6 |         tup: (u32, u32),
[INFO] [stdout]   |         ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `MyStruct` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<String, Infallible>
[INFO] [stdout]   --> src/advent_of_code/mod.rs:32:47
[INFO] [stdout]    |
[INFO] [stdout] 32 | ...                   if let Ok(item) = l.parse() {
[INFO] [stdout]    |                                         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-D unmustuse-in-always-ok`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `learn` (bin "learn" test) due to 1 previous error; 2 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "f24baa0c9dfb6252afcc4f566bc8c621aa05967aa2a045f59b6edc3dbf39f3db", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f24baa0c9dfb6252afcc4f566bc8c621aa05967aa2a045f59b6edc3dbf39f3db", kill_on_drop: false }`
[INFO] [stdout] f24baa0c9dfb6252afcc4f566bc8c621aa05967aa2a045f59b6edc3dbf39f3db
