[INFO] cloning repository https://github.com/whyster/Advent-of-Code-2023
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/whyster/Advent-of-Code-2023" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fwhyster%2FAdvent-of-Code-2023", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fwhyster%2FAdvent-of-Code-2023'...
[INFO] [stderr] fatal: write error: No space left on device
[INFO] [stderr] fatal: fetch-pack: invalid index-pack output
[WARN] Retrying crate fetch in 3 seconds (attempt 1)
[INFO] cloning repository https://github.com/whyster/Advent-of-Code-2023
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/whyster/Advent-of-Code-2023" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fwhyster%2FAdvent-of-Code-2023", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fwhyster%2FAdvent-of-Code-2023'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] d72575bf0ad2197581f72a6a6fd1f1fd4a9b14bd
[INFO] checking whyster/Advent-of-Code-2023 against master#32cd9114712a24010b0583624dc52ac302194128 for pr-143717
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fwhyster%2FAdvent-of-Code-2023" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/whyster/Advent-of-Code-2023
[INFO] finished tweaking git repo https://github.com/whyster/Advent-of-Code-2023
[INFO] tweaked toml for git repo https://github.com/whyster/Advent-of-Code-2023 written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/whyster/Advent-of-Code-2023 on toolchain 32cd9114712a24010b0583624dc52ac302194128
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+32cd9114712a24010b0583624dc52ac302194128" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/whyster/Advent-of-Code-2023 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" "+32cd9114712a24010b0583624dc52ac302194128" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+32cd9114712a24010b0583624dc52ac302194128" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] e1b5e3a39669bbf25b6b6f18f3e1b5e9f2e20b046794412a2f3111ebf3cbd2a5
[INFO] running `Command { std: "docker" "start" "-a" "e1b5e3a39669bbf25b6b6f18f3e1b5e9f2e20b046794412a2f3111ebf3cbd2a5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e1b5e3a39669bbf25b6b6f18f3e1b5e9f2e20b046794412a2f3111ebf3cbd2a5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e1b5e3a39669bbf25b6b6f18f3e1b5e9f2e20b046794412a2f3111ebf3cbd2a5", kill_on_drop: false }`
[INFO] [stdout] e1b5e3a39669bbf25b6b6f18f3e1b5e9f2e20b046794412a2f3111ebf3cbd2a5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/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" "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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+32cd9114712a24010b0583624dc52ac302194128" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 691ed56de434c8da4f85568b8a14c20941cfbb51e4b96527e12aba498b16bcac
[INFO] running `Command { std: "docker" "start" "-a" "691ed56de434c8da4f85568b8a14c20941cfbb51e4b96527e12aba498b16bcac", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.70
[INFO] [stderr]    Compiling unicode-ident v1.0.12
[INFO] [stderr]     Checking once_cell v1.18.0
[INFO] [stderr]     Checking log v0.4.20
[INFO] [stderr]    Compiling anyhow v1.0.75
[INFO] [stderr]     Checking lazy_static v1.4.0
[INFO] [stderr]     Checking cfg-if v1.0.0
[INFO] [stderr]     Checking overload v0.1.1
[INFO] [stderr]     Checking either v1.9.0
[INFO] [stderr]     Checking pin-project-lite v0.2.13
[INFO] [stderr]     Checking minimal-lexical v0.2.1
[INFO] [stderr]     Checking memchr v2.6.4
[INFO] [stderr]     Checking smallvec v1.11.2
[INFO] [stderr]     Checking nu-ansi-term v0.46.0
[INFO] [stderr]     Checking sharded-slab v0.1.7
[INFO] [stderr]     Checking itertools v0.12.0
[INFO] [stderr]     Checking tracing-core v0.1.32
[INFO] [stderr]     Checking thread_local v1.1.7
[INFO] [stderr]     Checking tracing-log v0.2.0
[INFO] [stderr]     Checking tracing-subscriber v0.3.18
[INFO] [stderr]     Checking nom v7.1.3
[INFO] [stderr]    Compiling quote v1.0.33
[INFO] [stderr]    Compiling syn v2.0.39
[INFO] [stderr]    Compiling tracing-attributes v0.1.27
[INFO] [stderr]     Checking tracing v0.1.40
[INFO] [stderr]     Checking day-03 v0.1.0 (/opt/rustwide/workdir/day-03)
[INFO] [stderr]     Checking day-01 v0.1.0 (/opt/rustwide/workdir/day-01)
[INFO] [stderr]     Checking day-02 v0.1.0 (/opt/rustwide/workdir/day-02)
[INFO] [stdout] warning: unused import: `nom::branch::alt`
[INFO] [stdout]  --> day-01/src/part1.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use nom::branch::alt;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `tag` and `take_while_m_n`
[INFO] [stdout]  --> day-01/src/part1.rs:3:28
[INFO] [stdout]   |
[INFO] [stdout] 3 | use nom::bytes::complete::{tag, take_while_m_n};
[INFO] [stdout]   |                            ^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `alpha0`, `alpha1`, `digit0`, and `digit1`
[INFO] [stdout]  --> day-01/src/part1.rs:4:32
[INFO] [stdout]   |
[INFO] [stdout] 4 | use nom::character::complete::{alpha0, alpha1, digit0, digit1};
[INFO] [stdout]   |                                ^^^^^^  ^^^^^^  ^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `is_alphabetic` and `is_alphanumeric`
[INFO] [stdout]  --> day-01/src/part1.rs:5:22
[INFO] [stdout]   |
[INFO] [stdout] 5 | use nom::character::{is_alphabetic, is_alphanumeric};
[INFO] [stdout]   |                      ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `many0` and `many1`
[INFO] [stdout]  --> day-01/src/part1.rs:6:18
[INFO] [stdout]   |
[INFO] [stdout] 6 | use nom::multi::{many0, many1};
[INFO] [stdout]   |                  ^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `nom::IResult`
[INFO] [stdout]  --> day-01/src/part1.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use nom::IResult;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::mem::take`
[INFO] [stdout]  --> day-01/src/part1.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::mem::take;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tracing::field::debug`
[INFO] [stdout]  --> day-01/src/part1.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use tracing::field::debug;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Level`, `debug`, `event`, `info`, and `trace`
[INFO] [stdout]   --> day-01/src/part1.rs:10:15
[INFO] [stdout]    |
[INFO] [stdout] 10 | use tracing::{debug, event, info, instrument, trace, Level};
[INFO] [stdout]    |               ^^^^^  ^^^^^  ^^^^              ^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Lines`
[INFO] [stdout]  --> day-01/src/part2.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::io::Lines;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `multispace1` and `newline`
[INFO] [stdout]  --> day-02/src/part1.rs:3:61
[INFO] [stdout]   |
[INFO] [stdout] 3 | use nom::character::complete::{alpha1, digit1, line_ending, multispace1, newline};
[INFO] [stdout]   |                                                             ^^^^^^^^^^^  ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `many0`
[INFO] [stdout]  --> day-02/src/part1.rs:5:18
[INFO] [stdout]   |
[INFO] [stdout] 5 | use nom::multi::{many0, separated_list0, separated_list1};
[INFO] [stdout]   |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `any`, `ascii::AsciiExt`, and `ops::Index`
[INFO] [stdout]  --> day-03/src/part1.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{any, ascii::AsciiExt, ops::Index};
[INFO] [stdout]   |           ^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `nom::Slice`
[INFO] [stdout]  --> day-03/src/part1.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use nom::Slice;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> day-03/src/part1.rs:26:20
[INFO] [stdout]    |
[INFO] [stdout] 26 |                 if (y == self.y && x >= self.x && x < bottom_right_x) {
[INFO] [stdout]    |                    ^                                                ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 26 -                 if (y == self.y && x >= self.x && x < bottom_right_x) {
[INFO] [stdout] 26 +                 if y == self.y && x >= self.x && x < bottom_right_x {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `nom::branch::alt`
[INFO] [stdout]  --> day-01/src/part1.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use nom::branch::alt;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `tag` and `take_while_m_n`
[INFO] [stdout]  --> day-01/src/part1.rs:3:28
[INFO] [stdout]   |
[INFO] [stdout] 3 | use nom::bytes::complete::{tag, take_while_m_n};
[INFO] [stdout]   |                            ^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `alpha0`, `alpha1`, `digit0`, and `digit1`
[INFO] [stdout]  --> day-01/src/part1.rs:4:32
[INFO] [stdout]   |
[INFO] [stdout] 4 | use nom::character::complete::{alpha0, alpha1, digit0, digit1};
[INFO] [stdout]   |                                ^^^^^^  ^^^^^^  ^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `is_alphabetic` and `is_alphanumeric`
[INFO] [stdout]  --> day-01/src/part1.rs:5:22
[INFO] [stdout]   |
[INFO] [stdout] 5 | use nom::character::{is_alphabetic, is_alphanumeric};
[INFO] [stdout]   |                      ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `many0` and `many1`
[INFO] [stdout]  --> day-01/src/part1.rs:6:18
[INFO] [stdout]   |
[INFO] [stdout] 6 | use nom::multi::{many0, many1};
[INFO] [stdout]   |                  ^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `nom::IResult`
[INFO] [stdout]  --> day-01/src/part1.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use nom::IResult;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::mem::take`
[INFO] [stdout]  --> day-01/src/part1.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::mem::take;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tracing::field::debug`
[INFO] [stdout]  --> day-01/src/part1.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use tracing::field::debug;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Level`, `debug`, `event`, `info`, and `trace`
[INFO] [stdout]   --> day-01/src/part1.rs:10:15
[INFO] [stdout]    |
[INFO] [stdout] 10 | use tracing::{debug, event, info, instrument, trace, Level};
[INFO] [stdout]    |               ^^^^^  ^^^^^  ^^^^              ^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Lines`
[INFO] [stdout]  --> day-01/src/part2.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::io::Lines;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `any`, `ascii::AsciiExt`, and `ops::Index`
[INFO] [stdout]  --> day-03/src/part1.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{any, ascii::AsciiExt, ops::Index};
[INFO] [stdout]   |           ^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `nom::Slice`
[INFO] [stdout]  --> day-03/src/part1.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use nom::Slice;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> day-03/src/part1.rs:26:20
[INFO] [stdout]    |
[INFO] [stdout] 26 |                 if (y == self.y && x >= self.x && x < bottom_right_x) {
[INFO] [stdout]    |                    ^                                                ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 26 -                 if (y == self.y && x >= self.x && x < bottom_right_x) {
[INFO] [stdout] 26 +                 if y == self.y && x >= self.x && x < bottom_right_x {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `std::ascii::AsciiExt`: use inherent methods instead
[INFO] [stdout]  --> day-03/src/part1.rs:1:23
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{any, ascii::AsciiExt, ops::Index};
[INFO] [stdout]   |                       ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `multispace1` and `newline`
[INFO] [stdout]  --> day-02/src/part1.rs:3:61
[INFO] [stdout]   |
[INFO] [stdout] 3 | use nom::character::complete::{alpha1, digit1, line_ending, multispace1, newline};
[INFO] [stdout]   |                                                             ^^^^^^^^^^^  ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `many0`
[INFO] [stdout]  --> day-02/src/part1.rs:5:18
[INFO] [stdout]   |
[INFO] [stdout] 5 | use nom::multi::{many0, separated_list0, separated_list1};
[INFO] [stdout]   |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `std::ascii::AsciiExt`: use inherent methods instead
[INFO] [stdout]  --> day-03/src/part1.rs:1:23
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{any, ascii::AsciiExt, ops::Index};
[INFO] [stdout]   |                       ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `matching_number` is never read
[INFO] [stdout]   --> day-03/src/part1.rs:80:17
[INFO] [stdout]    |
[INFO] [stdout] 80 |                 matching_number = false;
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `start_x` is never read
[INFO] [stdout]   --> day-03/src/part1.rs:87:17
[INFO] [stdout]    |
[INFO] [stdout] 87 |                 start_x = 0;
[INFO] [stdout]    |                 ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `num_length` is never read
[INFO] [stdout]   --> day-03/src/part1.rs:88:17
[INFO] [stdout]    |
[INFO] [stdout] 88 |                 num_length = 0;
[INFO] [stdout]    |                 ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> day-02/src/part1.rs:67:21
[INFO] [stdout]    |
[INFO] [stdout] 67 |                 let mut cube_count = *played_cubes.get(&played_cube.1).unwrap_or(&0);
[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: unused variable: `input`
[INFO] [stdout]  --> day-03/src/part2.rs:3:16
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn process(input: &str) -> Result<i32> {
[INFO] [stdout]   |                ^^^^^ help: if this is intentional, prefix it with an underscore: `_input`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dbg_round`
[INFO] [stdout]    --> day-02/src/part1.rs:106:17
[INFO] [stdout]     |
[INFO] [stdout] 106 |             let dbg_round = round.clone();
[INFO] [stdout]     |                 ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_dbg_round`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]   --> day-03/src/part2.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 13 |         todo!("haven't built test yet");
[INFO] [stdout]    |         ------------------------------- any code following this expression is unreachable
[INFO] [stdout] 14 |         let input = include_str!("../input2.txt");
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[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]   --> day-02/src/part1.rs:67:21
[INFO] [stdout]    |
[INFO] [stdout] 67 |                 let mut cube_count = *played_cubes.get(&played_cube.1).unwrap_or(&0);
[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: unused variable: `dbg_round`
[INFO] [stdout]    --> day-02/src/part1.rs:106:17
[INFO] [stdout]     |
[INFO] [stdout] 106 |             let dbg_round = round.clone();
[INFO] [stdout]     |                 ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_dbg_round`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `matching_number` is never read
[INFO] [stdout]   --> day-03/src/part1.rs:80:17
[INFO] [stdout]    |
[INFO] [stdout] 80 |                 matching_number = false;
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `start_x` is never read
[INFO] [stdout]   --> day-03/src/part1.rs:87:17
[INFO] [stdout]    |
[INFO] [stdout] 87 |                 start_x = 0;
[INFO] [stdout]    |                 ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `num_length` is never read
[INFO] [stdout]   --> day-03/src/part1.rs:88:17
[INFO] [stdout]    |
[INFO] [stdout] 88 |                 num_length = 0;
[INFO] [stdout]    |                 ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rest`
[INFO] [stdout]   --> day-01/src/part2.rs:98:14
[INFO] [stdout]    |
[INFO] [stdout] 98 |         let (rest, dig) = parse_digit("one")?;
[INFO] [stdout]    |              ^^^^ help: if this is intentional, prefix it with an underscore: `_rest`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rest`
[INFO] [stdout]    --> day-01/src/part2.rs:100:14
[INFO] [stdout]     |
[INFO] [stdout] 100 |         let (rest, dig) = parse_digit("two")?;
[INFO] [stdout]     |              ^^^^ help: if this is intentional, prefix it with an underscore: `_rest`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rest`
[INFO] [stdout]    --> day-01/src/part2.rs:102:14
[INFO] [stdout]     |
[INFO] [stdout] 102 |         let (rest, dig) = parse_digit("ztwo")?;
[INFO] [stdout]     |              ^^^^ help: if this is intentional, prefix it with an underscore: `_rest`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rest`
[INFO] [stdout]    --> day-01/src/part2.rs:104:14
[INFO] [stdout]     |
[INFO] [stdout] 104 |         let (rest, dig) = parse_digit("ztwo3")?;
[INFO] [stdout]     |              ^^^^ help: if this is intentional, prefix it with an underscore: `_rest`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rest`
[INFO] [stdout]    --> day-01/src/part2.rs:108:14
[INFO] [stdout]     |
[INFO] [stdout] 108 |         let (rest, dig) = parse_digit(rest)?;
[INFO] [stdout]     |              ^^^^ help: if this is intentional, prefix it with an underscore: `_rest`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `input`
[INFO] [stdout]  --> day-03/src/part2.rs:3:16
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn process(input: &str) -> Result<i32> {
[INFO] [stdout]   |                ^^^^^ help: if this is intentional, prefix it with an underscore: `_input`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 10.27s
[INFO] running `Command { std: "docker" "inspect" "691ed56de434c8da4f85568b8a14c20941cfbb51e4b96527e12aba498b16bcac", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "691ed56de434c8da4f85568b8a14c20941cfbb51e4b96527e12aba498b16bcac", kill_on_drop: false }`
[INFO] [stdout] 691ed56de434c8da4f85568b8a14c20941cfbb51e4b96527e12aba498b16bcac
