[INFO] cloning repository https://github.com/katerd/aoc2023 [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/katerd/aoc2023" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkaterd%2Faoc2023", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkaterd%2Faoc2023'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 6a97a3726fa749ee727583e170bd578617a6ecf4 [INFO] checking katerd/aoc2023 against master#9c3064e131f4939cc95a29bb11413c49bbda1491 for pr-144098 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkaterd%2Faoc2023" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/katerd/aoc2023 [INFO] finished tweaking git repo https://github.com/katerd/aoc2023 [INFO] tweaked toml for git repo https://github.com/katerd/aoc2023 written to /workspace/builds/worker-7-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/katerd/aoc2023 on toolchain 9c3064e131f4939cc95a29bb11413c49bbda1491 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+9c3064e131f4939cc95a29bb11413c49bbda1491" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/katerd/aoc2023 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" "+9c3064e131f4939cc95a29bb11413c49bbda1491" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:cf8efcab8866f2cf4285301c7418e2f4f2a9b088c91ba69c40d5b659f81557f7" "/opt/rustwide/cargo-home/bin/cargo" "+9c3064e131f4939cc95a29bb11413c49bbda1491" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 822ae4da4726590db36af03a0639333f3b40645eaad6e1e07c3befd8f66e7f37 [INFO] running `Command { std: "docker" "start" "-a" "822ae4da4726590db36af03a0639333f3b40645eaad6e1e07c3befd8f66e7f37", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "822ae4da4726590db36af03a0639333f3b40645eaad6e1e07c3befd8f66e7f37", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "822ae4da4726590db36af03a0639333f3b40645eaad6e1e07c3befd8f66e7f37", kill_on_drop: false }` [INFO] [stdout] 822ae4da4726590db36af03a0639333f3b40645eaad6e1e07c3befd8f66e7f37 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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" "-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:cf8efcab8866f2cf4285301c7418e2f4f2a9b088c91ba69c40d5b659f81557f7" "/opt/rustwide/cargo-home/bin/cargo" "+9c3064e131f4939cc95a29bb11413c49bbda1491" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] fd0b291d4544bf54b61d832a33ece281de1a233f3835d79b1cd843240f263186 [INFO] running `Command { std: "docker" "start" "-a" "fd0b291d4544bf54b61d832a33ece281de1a233f3835d79b1cd843240f263186", kill_on_drop: false }` [INFO] [stderr] Checking regex-syntax v0.8.2 [INFO] [stderr] Checking regex-automata v0.4.3 [INFO] [stderr] Checking regex v1.10.2 [INFO] [stderr] Checking aoc2023 v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::primitive` [INFO] [stdout] --> src/main.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::primitive; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::primitive` [INFO] [stdout] --> src/main.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::primitive; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:312:20 [INFO] [stdout] | [INFO] [stdout] 312 | if (end_index == line.len() - 1) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 312 - if (end_index == line.len() - 1) { [INFO] [stdout] 312 + if end_index == line.len() - 1 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:312:20 [INFO] [stdout] | [INFO] [stdout] 312 | if (end_index == line.len() - 1) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 312 - if (end_index == line.len() - 1) { [INFO] [stdout] 312 + if end_index == line.len() - 1 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> src/main.rs:126:13 [INFO] [stdout] | [INFO] [stdout] 126 | let mut result : i64 = 9999999999999; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `calc_count` [INFO] [stdout] --> src/main.rs:131:13 [INFO] [stdout] | [INFO] [stdout] 131 | let mut calc_count : i64 = 0; [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_calc_count` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> src/main.rs:126:13 [INFO] [stdout] | [INFO] [stdout] 126 | let mut result : i64 = 9999999999999; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `calc_count` [INFO] [stdout] --> src/main.rs:131:13 [INFO] [stdout] | [INFO] [stdout] 131 | let mut calc_count : i64 = 0; [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_calc_count` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:126:9 [INFO] [stdout] | [INFO] [stdout] 126 | let mut result : i64 = 9999999999999; [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:131:9 [INFO] [stdout] | [INFO] [stdout] 131 | let mut calc_count : i64 = 0; [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `add_count` is assigned to, but never used [INFO] [stdout] --> src/main.rs:244:17 [INFO] [stdout] | [INFO] [stdout] 244 | let mut add_count = 0; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_add_count` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:126:9 [INFO] [stdout] | [INFO] [stdout] 126 | let mut result : i64 = 9999999999999; [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:131:9 [INFO] [stdout] | [INFO] [stdout] 131 | let mut calc_count : i64 = 0; [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:243:13 [INFO] [stdout] | [INFO] [stdout] 243 | let mut match_count = line.0; [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `add_count` is assigned to, but never used [INFO] [stdout] --> src/main.rs:244:17 [INFO] [stdout] | [INFO] [stdout] 244 | let mut add_count = 0; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_add_count` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:243:13 [INFO] [stdout] | [INFO] [stdout] 243 | let mut match_count = line.0; [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_digit_str` is never used [INFO] [stdout] --> src/main.rs:8:4 [INFO] [stdout] | [INFO] [stdout] 8 | fn is_digit_str(contents: &String, i: usize, x: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `winning_number_count` is never used [INFO] [stdout] --> src/main.rs:203:4 [INFO] [stdout] | [INFO] [stdout] 203 | fn winning_number_count(line: &str) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day_4` is never used [INFO] [stdout] --> src/main.rs:224:4 [INFO] [stdout] | [INFO] [stdout] 224 | fn day_4() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `NumberSpan` is never constructed [INFO] [stdout] --> src/main.rs:263:8 [INFO] [stdout] | [INFO] [stdout] 263 | struct NumberSpan { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day_3` is never used [INFO] [stdout] --> src/main.rs:270:4 [INFO] [stdout] | [INFO] [stdout] 270 | fn day_3() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_location_gear_ratio` is never used [INFO] [stdout] --> src/main.rs:365:4 [INFO] [stdout] | [INFO] [stdout] 365 | fn get_location_gear_ratio(row: i32, column: i32, nums: &Vec) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_location_sum` is never used [INFO] [stdout] --> src/main.rs:402:4 [INFO] [stdout] | [INFO] [stdout] 402 | fn get_location_sum(row: i32, column: i32, nums: &Vec) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day_2_part_2` is never used [INFO] [stdout] --> src/main.rs:438:4 [INFO] [stdout] | [INFO] [stdout] 438 | fn day_2_part_2() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day_2` is never used [INFO] [stdout] --> src/main.rs:496:4 [INFO] [stdout] | [INFO] [stdout] 496 | fn day_2() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day_1` is never used [INFO] [stdout] --> src/main.rs:573:4 [INFO] [stdout] | [INFO] [stdout] 573 | fn day_1() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `rowIndex` should have a snake case name [INFO] [stdout] --> src/main.rs:280:10 [INFO] [stdout] | [INFO] [stdout] 280 | for (rowIndex, line) in lines.iter().enumerate() { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `row_index` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `rowIndex` should have a snake case name [INFO] [stdout] --> src/main.rs:340:10 [INFO] [stdout] | [INFO] [stdout] 340 | for (rowIndex, line) in lines.iter().enumerate() { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `row_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `columnIndex` should have a snake case name [INFO] [stdout] --> src/main.rs:341:14 [INFO] [stdout] | [INFO] [stdout] 341 | for (columnIndex, chr) in line.chars().enumerate() { [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `column_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_digit_str` is never used [INFO] [stdout] --> src/main.rs:8:4 [INFO] [stdout] | [INFO] [stdout] 8 | fn is_digit_str(contents: &String, i: usize, x: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `winning_number_count` is never used [INFO] [stdout] --> src/main.rs:203:4 [INFO] [stdout] | [INFO] [stdout] 203 | fn winning_number_count(line: &str) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day_4` is never used [INFO] [stdout] --> src/main.rs:224:4 [INFO] [stdout] | [INFO] [stdout] 224 | fn day_4() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `NumberSpan` is never constructed [INFO] [stdout] --> src/main.rs:263:8 [INFO] [stdout] | [INFO] [stdout] 263 | struct NumberSpan { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day_3` is never used [INFO] [stdout] --> src/main.rs:270:4 [INFO] [stdout] | [INFO] [stdout] 270 | fn day_3() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_location_gear_ratio` is never used [INFO] [stdout] --> src/main.rs:365:4 [INFO] [stdout] | [INFO] [stdout] 365 | fn get_location_gear_ratio(row: i32, column: i32, nums: &Vec) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_location_sum` is never used [INFO] [stdout] --> src/main.rs:402:4 [INFO] [stdout] | [INFO] [stdout] 402 | fn get_location_sum(row: i32, column: i32, nums: &Vec) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day_2_part_2` is never used [INFO] [stdout] --> src/main.rs:438:4 [INFO] [stdout] | [INFO] [stdout] 438 | fn day_2_part_2() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day_2` is never used [INFO] [stdout] --> src/main.rs:496:4 [INFO] [stdout] | [INFO] [stdout] 496 | fn day_2() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `day_1` is never used [INFO] [stdout] --> src/main.rs:573:4 [INFO] [stdout] | [INFO] [stdout] 573 | fn day_1() -> std::io::Result<()> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `rowIndex` should have a snake case name [INFO] [stdout] --> src/main.rs:280:10 [INFO] [stdout] | [INFO] [stdout] 280 | for (rowIndex, line) in lines.iter().enumerate() { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `row_index` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `rowIndex` should have a snake case name [INFO] [stdout] --> src/main.rs:340:10 [INFO] [stdout] | [INFO] [stdout] 340 | for (rowIndex, line) in lines.iter().enumerate() { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `row_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `columnIndex` should have a snake case name [INFO] [stdout] --> src/main.rs:341:14 [INFO] [stdout] | [INFO] [stdout] 341 | for (columnIndex, chr) in line.chars().enumerate() { [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `column_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 4.78s [INFO] running `Command { std: "docker" "inspect" "fd0b291d4544bf54b61d832a33ece281de1a233f3835d79b1cd843240f263186", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "fd0b291d4544bf54b61d832a33ece281de1a233f3835d79b1cd843240f263186", kill_on_drop: false }` [INFO] [stdout] fd0b291d4544bf54b61d832a33ece281de1a233f3835d79b1cd843240f263186