[INFO] cloning repository https://github.com/abstractqqq/aoc_2024_rust_tq
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/abstractqqq/aoc_2024_rust_tq" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fabstractqqq%2Faoc_2024_rust_tq", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fabstractqqq%2Faoc_2024_rust_tq'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] a0d89cef42482d7e9ec573d54285461a4830a3e9
[INFO] checking abstractqqq/aoc_2024_rust_tq against try#012cd62c9add58ab3910e44c137d87db3ab70f61 for pr-155915
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fabstractqqq%2Faoc_2024_rust_tq" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-5-tc2/source/rust-toolchain.toml
[INFO] started tweaking git repo https://github.com/abstractqqq/aoc_2024_rust_tq
[INFO] finished tweaking git repo https://github.com/abstractqqq/aoc_2024_rust_tq
[INFO] tweaked toml for git repo https://github.com/abstractqqq/aoc_2024_rust_tq written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/abstractqqq/aoc_2024_rust_tq on toolchain 012cd62c9add58ab3910e44c137d87db3ab70f61
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+012cd62c9add58ab3910e44c137d87db3ab70f61" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/abstractqqq/aoc_2024_rust_tq 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" "+012cd62c9add58ab3910e44c137d87db3ab70f61" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+012cd62c9add58ab3910e44c137d87db3ab70f61" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] bd808c02bab77e0a12f5357f43a715a6e4bc2d90907d5f8ecdbdbbd0f6dd3947
[INFO] running `Command { std: "docker" "start" "-a" "bd808c02bab77e0a12f5357f43a715a6e4bc2d90907d5f8ecdbdbbd0f6dd3947", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "bd808c02bab77e0a12f5357f43a715a6e4bc2d90907d5f8ecdbdbbd0f6dd3947", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bd808c02bab77e0a12f5357f43a715a6e4bc2d90907d5f8ecdbdbbd0f6dd3947", kill_on_drop: false }`
[INFO] [stdout] bd808c02bab77e0a12f5357f43a715a6e4bc2d90907d5f8ecdbdbbd0f6dd3947
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+012cd62c9add58ab3910e44c137d87db3ab70f61" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 38402bc7ee11ce6151ab06f83f379bd8b0998427b98def443ff53c22821e6807
[INFO] running `Command { std: "docker" "start" "-a" "38402bc7ee11ce6151ab06f83f379bd8b0998427b98def443ff53c22821e6807", kill_on_drop: false }`
[INFO] [stderr]     Checking aoc_2024 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `d1_part1_solution` and `d1_part2_solution`
[INFO] [stdout]   --> src/main.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | use day1::{d1_part1_solution, d1_part2_solution};
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `d2_part1_solution` and `d2_part2_solution`
[INFO] [stdout]   --> src/main.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | use day2::{d2_part1_solution, d2_part2_solution};
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `d3_part1_solution` and `d3_part2_solution`
[INFO] [stdout]   --> src/main.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | use day3::{d3_part1_solution, d3_part2_solution};
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `d4_part1_solution` and `d4_part2_solution`
[INFO] [stdout]   --> src/main.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | use day4::{d4_part1_solution, d4_part2_solution};
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `d5_part1_solution` and `d5_part2_solution`
[INFO] [stdout]   --> src/main.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | use day5::{d5_part1_solution, d5_part2_solution};
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `d6_part1_solution` and `d6_part2_solution`
[INFO] [stdout]   --> src/main.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | use day6::{d6_part1_solution, d6_part2_solution};
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `d1_part1_solution` and `d1_part2_solution`
[INFO] [stdout]   --> src/main.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | use day1::{d1_part1_solution, d1_part2_solution};
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `d2_part1_solution` and `d2_part2_solution`
[INFO] [stdout]   --> src/main.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | use day2::{d2_part1_solution, d2_part2_solution};
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `d3_part1_solution` and `d3_part2_solution`
[INFO] [stdout]   --> src/main.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | use day3::{d3_part1_solution, d3_part2_solution};
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `d4_part1_solution` and `d4_part2_solution`
[INFO] [stdout]   --> src/main.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | use day4::{d4_part1_solution, d4_part2_solution};
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `d5_part1_solution` and `d5_part2_solution`
[INFO] [stdout]   --> src/main.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | use day5::{d5_part1_solution, d5_part2_solution};
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `d6_part1_solution` and `d6_part2_solution`
[INFO] [stdout]   --> src/main.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | use day6::{d6_part1_solution, d6_part2_solution};
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `array_windows` has been stable since 1.94.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> src/main.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(array_windows)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `array_windows` has been stable since 1.94.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> src/main.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(array_windows)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `d1_part1_solution` is never used
[INFO] [stdout]  --> src/day1.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn d1_part1_solution(input_path: &str) -> Result<(usize, Vec<usize>, Vec<usize>), Error> {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `d1_part1_solution` is never used
[INFO] [stdout]  --> src/day1.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn d1_part1_solution(input_path: &str) -> Result<(usize, Vec<usize>, Vec<usize>), Error> {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `d1_part2_solution` is never used
[INFO] [stdout]   --> src/day1.rs:41:8
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub fn d1_part2_solution(c1: Vec<usize>, c2: Vec<usize>) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_safety` is never used
[INFO] [stdout]  --> src/day2.rs:6:4
[INFO] [stdout]   |
[INFO] [stdout] 6 | fn check_safety(data: &[i32]) -> bool {
[INFO] [stdout]   |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_safety_with_dampener` is never used
[INFO] [stdout]   --> src/day2.rs:29:4
[INFO] [stdout]    |
[INFO] [stdout] 29 | fn check_safety_with_dampener(data: &[i32]) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_line` is never used
[INFO] [stdout]   --> src/day2.rs:62:4
[INFO] [stdout]    |
[INFO] [stdout] 62 | fn parse_line(line: String) -> Result<Vec<i32>, Error> {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `d2_part1_solution` is never used
[INFO] [stdout]   --> src/day2.rs:73:8
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub fn d2_part1_solution(input_path: &str) -> Result<usize, Error> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `d2_part2_solution` is never used
[INFO] [stdout]   --> src/day2.rs:88:8
[INFO] [stdout]    |
[INFO] [stdout] 88 | pub fn d2_part2_solution(input_path: &str) -> Result<usize, Error> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `mul_and_sum` is never used
[INFO] [stdout]  --> src/day3.rs:9:4
[INFO] [stdout]   |
[INFO] [stdout] 9 | fn mul_and_sum(text:&str) -> Result<f64, Error> {
[INFO] [stdout]   |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `d3_part1_solution` is never used
[INFO] [stdout]   --> src/day3.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn d3_part1_solution(input_path: &str) -> Result<f64, Error> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `d3_part2_solution` is never used
[INFO] [stdout]   --> src/day3.rs:33:8
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub fn d3_part2_solution(input_path: &str) -> Result<f64, Error> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Direction` is never used
[INFO] [stdout]  --> src/day4.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub enum Direction<const N: usize> {
[INFO] [stdout]   |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `step` is never used
[INFO] [stdout]   --> src/day4.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl <const N: usize> Direction<N> {
[INFO] [stdout]    | ---------------------------------- method in this implementation
[INFO] [stdout] 17 |
[INFO] [stdout] 18 |     fn step(&self, i:usize, j:usize) -> Option<(usize, usize)> {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `XMAS` is never used
[INFO] [stdout]   --> src/day4.rs:85:6
[INFO] [stdout]    |
[INFO] [stdout] 85 | enum XMAS {
[INFO] [stdout]    |      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `d1_part2_solution` is never used
[INFO] [stdout]   --> src/day1.rs:41:8
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub fn d1_part2_solution(c1: Vec<usize>, c2: Vec<usize>) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_safety` is never used
[INFO] [stdout]  --> src/day2.rs:6:4
[INFO] [stdout]   |
[INFO] [stdout] 6 | fn check_safety(data: &[i32]) -> bool {
[INFO] [stdout]   |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_safety_with_dampener` is never used
[INFO] [stdout]   --> src/day2.rs:29:4
[INFO] [stdout]    |
[INFO] [stdout] 29 | fn check_safety_with_dampener(data: &[i32]) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_line` is never used
[INFO] [stdout]   --> src/day2.rs:62:4
[INFO] [stdout]    |
[INFO] [stdout] 62 | fn parse_line(line: String) -> Result<Vec<i32>, Error> {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `d2_part1_solution` is never used
[INFO] [stdout]   --> src/day2.rs:73:8
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub fn d2_part1_solution(input_path: &str) -> Result<usize, Error> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `d2_part2_solution` is never used
[INFO] [stdout]   --> src/day2.rs:88:8
[INFO] [stdout]    |
[INFO] [stdout] 88 | pub fn d2_part2_solution(input_path: &str) -> Result<usize, Error> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `mul_and_sum` is never used
[INFO] [stdout]  --> src/day3.rs:9:4
[INFO] [stdout]   |
[INFO] [stdout] 9 | fn mul_and_sum(text:&str) -> Result<f64, Error> {
[INFO] [stdout]   |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `d3_part1_solution` is never used
[INFO] [stdout]   --> src/day3.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn d3_part1_solution(input_path: &str) -> Result<f64, Error> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `next`, `prev`, and `is_final` are never used
[INFO] [stdout]    --> src/day4.rs:107:8
[INFO] [stdout]     |
[INFO] [stdout] 105 | impl XMAS {
[INFO] [stdout]     | --------- methods in this implementation
[INFO] [stdout] 106 |
[INFO] [stdout] 107 |     fn next(&self) -> Self {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 116 |     fn prev(&self) -> Self {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 125 |     fn is_final(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `d3_part2_solution` is never used
[INFO] [stdout]   --> src/day3.rs:33:8
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub fn d3_part2_solution(input_path: &str) -> Result<f64, Error> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Direction` is never used
[INFO] [stdout]  --> src/day4.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub enum Direction<const N: usize> {
[INFO] [stdout]   |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `step` is never used
[INFO] [stdout]   --> src/day4.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl <const N: usize> Direction<N> {
[INFO] [stdout]    | ---------------------------------- method in this implementation
[INFO] [stdout] 17 |
[INFO] [stdout] 18 |     fn step(&self, i:usize, j:usize) -> Option<(usize, usize)> {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_map` is never used
[INFO] [stdout]    --> src/day4.rs:136:4
[INFO] [stdout]     |
[INFO] [stdout] 136 | fn load_map(data_string: String) -> [[XMAS; 140]; 140] {
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `XMAS` is never used
[INFO] [stdout]   --> src/day4.rs:85:6
[INFO] [stdout]    |
[INFO] [stdout] 85 | enum XMAS {
[INFO] [stdout]    |      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `next`, `prev`, and `is_final` are never used
[INFO] [stdout]    --> src/day4.rs:107:8
[INFO] [stdout]     |
[INFO] [stdout] 105 | impl XMAS {
[INFO] [stdout]     | --------- methods in this implementation
[INFO] [stdout] 106 |
[INFO] [stdout] 107 |     fn next(&self) -> Self {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 116 |     fn prev(&self) -> Self {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 125 |     fn is_final(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_target_coords` is never used
[INFO] [stdout]    --> src/day4.rs:146:4
[INFO] [stdout]     |
[INFO] [stdout] 146 | fn get_target_coords(map: &[[XMAS; 140]; 140], target: XMAS) -> Vec<(usize, usize, XMAS)> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_map` is never used
[INFO] [stdout]    --> src/day4.rs:136:4
[INFO] [stdout]     |
[INFO] [stdout] 136 | fn load_map(data_string: String) -> [[XMAS; 140]; 140] {
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_target_coords` is never used
[INFO] [stdout]    --> src/day4.rs:146:4
[INFO] [stdout]     |
[INFO] [stdout] 146 | fn get_target_coords(map: &[[XMAS; 140]; 140], target: XMAS) -> Vec<(usize, usize, XMAS)> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_xmas_in_direction` is never used
[INFO] [stdout]    --> src/day4.rs:159:4
[INFO] [stdout]     |
[INFO] [stdout] 159 | fn check_xmas_in_direction(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_xmas_in_direction` is never used
[INFO] [stdout]    --> src/day4.rs:159:4
[INFO] [stdout]     |
[INFO] [stdout] 159 | fn check_xmas_in_direction(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_mas_in_square` is never used
[INFO] [stdout]    --> src/day4.rs:188:4
[INFO] [stdout]     |
[INFO] [stdout] 188 | fn check_mas_in_square(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `d4_part1_solution` is never used
[INFO] [stdout]    --> src/day4.rs:221:8
[INFO] [stdout]     |
[INFO] [stdout] 221 | pub fn d4_part1_solution(input_path: &str) -> Result<usize, Error> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_mas_in_square` is never used
[INFO] [stdout]    --> src/day4.rs:188:4
[INFO] [stdout]     |
[INFO] [stdout] 188 | fn check_mas_in_square(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `d4_part2_solution` is never used
[INFO] [stdout]    --> src/day4.rs:249:8
[INFO] [stdout]     |
[INFO] [stdout] 249 | pub fn d4_part2_solution(input_path: &str) -> Result<usize, Error> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_rules` is never used
[INFO] [stdout]  --> src/day5.rs:6:4
[INFO] [stdout]   |
[INFO] [stdout] 6 | fn parse_rules(rule_str: &str) -> HashMap<usize, HashSet<usize>> {
[INFO] [stdout]   |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_update_lists` is never used
[INFO] [stdout]   --> src/day5.rs:26:4
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn parse_update_lists(update_str: &str) -> Vec<Vec<usize>> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_page_validity` is never used
[INFO] [stdout]   --> src/day5.rs:37:4
[INFO] [stdout]    |
[INFO] [stdout] 37 | fn check_page_validity(rules: &HashMap<usize, HashSet<usize>>, page_nums: &[usize]) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `d5_part1_solution` is never used
[INFO] [stdout]   --> src/day5.rs:55:8
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub fn d5_part1_solution(input_path: &str) -> Result<usize, Error> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `recursive_fix_page_nums` is never used
[INFO] [stdout]   --> src/day5.rs:84:4
[INFO] [stdout]    |
[INFO] [stdout] 84 | fn recursive_fix_page_nums(rules: &HashMap<usize, HashSet<usize>>, page_nums: &mut Vec<usize>) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `d5_part2_solution` is never used
[INFO] [stdout]    --> src/day5.rs:112:8
[INFO] [stdout]     |
[INFO] [stdout] 112 | pub fn d5_part2_solution(input_path: &str) -> Result<usize, Error> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Direction` is never used
[INFO] [stdout]  --> src/day6.rs:7:6
[INFO] [stdout]   |
[INFO] [stdout] 7 | enum Direction {
[INFO] [stdout]   |      ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `d4_part1_solution` is never used
[INFO] [stdout]    --> src/day4.rs:221:8
[INFO] [stdout]     |
[INFO] [stdout] 221 | pub fn d4_part1_solution(input_path: &str) -> Result<usize, Error> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `d4_part2_solution` is never used
[INFO] [stdout]    --> src/day4.rs:249:8
[INFO] [stdout]     |
[INFO] [stdout] 249 | pub fn d4_part2_solution(input_path: &str) -> Result<usize, Error> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_rules` is never used
[INFO] [stdout]  --> src/day5.rs:6:4
[INFO] [stdout]   |
[INFO] [stdout] 6 | fn parse_rules(rule_str: &str) -> HashMap<usize, HashSet<usize>> {
[INFO] [stdout]   |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_update_lists` is never used
[INFO] [stdout]   --> src/day5.rs:26:4
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn parse_update_lists(update_str: &str) -> Vec<Vec<usize>> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_page_validity` is never used
[INFO] [stdout]   --> src/day5.rs:37:4
[INFO] [stdout]    |
[INFO] [stdout] 37 | fn check_page_validity(rules: &HashMap<usize, HashSet<usize>>, page_nums: &[usize]) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `d5_part1_solution` is never used
[INFO] [stdout]   --> src/day5.rs:55:8
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub fn d5_part1_solution(input_path: &str) -> Result<usize, Error> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `recursive_fix_page_nums` is never used
[INFO] [stdout]   --> src/day5.rs:84:4
[INFO] [stdout]    |
[INFO] [stdout] 84 | fn recursive_fix_page_nums(rules: &HashMap<usize, HashSet<usize>>, page_nums: &mut Vec<usize>) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `d5_part2_solution` is never used
[INFO] [stdout]    --> src/day5.rs:112:8
[INFO] [stdout]     |
[INFO] [stdout] 112 | pub fn d5_part2_solution(input_path: &str) -> Result<usize, Error> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Direction` is never used
[INFO] [stdout]  --> src/day6.rs:7:6
[INFO] [stdout]   |
[INFO] [stdout] 7 | enum Direction {
[INFO] [stdout]   |      ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `turn` are never used
[INFO] [stdout]   --> src/day6.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl Direction {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 15 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 19 |     fn turn(&self) -> Self {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Guard` is never constructed
[INFO] [stdout]   --> src/day6.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub struct Guard {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `get_direction`, `turn`, and `check_and_move` are never used
[INFO] [stdout]   --> src/day6.rs:41:8
[INFO] [stdout]    |
[INFO] [stdout] 39 | impl Guard {
[INFO] [stdout]    | ---------- associated items in this implementation
[INFO] [stdout] 40 |
[INFO] [stdout] 41 |     fn new(x: usize, y:usize) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 54 |     fn get_direction(&self) -> Direction {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 58 |     fn turn(&mut self) {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 62 |     fn check_and_move(&mut self, map: &[[bool; 130];130]) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_map` is never used
[INFO] [stdout]    --> src/day6.rs:127:4
[INFO] [stdout]     |
[INFO] [stdout] 127 | fn load_map(input_path: &str) -> Result<([[bool;130];130], (usize, usize)), Error> {
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `d6_part1_solution` is never used
[INFO] [stdout]    --> src/day6.rs:151:8
[INFO] [stdout]     |
[INFO] [stdout] 151 | pub fn d6_part1_solution(input_path: &str) -> Result<usize, Error> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_loop_or_oob` is never used
[INFO] [stdout]    --> src/day6.rs:172:4
[INFO] [stdout]     |
[INFO] [stdout] 172 | fn check_loop_or_oob(map: &[[bool;130];130], mut guard: Guard) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `d6_part2_solution` is never used
[INFO] [stdout]    --> src/day6.rs:184:8
[INFO] [stdout]     |
[INFO] [stdout] 184 | pub fn d6_part2_solution(input_path: &str) -> Result<usize, Error> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/error.rs:6:13
[INFO] [stdout]   |
[INFO] [stdout] 6 |     IOError(std::io::Error),
[INFO] [stdout]   |     ------- ^^^^^^^^^^^^^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     field in this variant
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]   |
[INFO] [stdout] 6 -     IOError(std::io::Error),
[INFO] [stdout] 6 +     IOError(()),
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/error.rs:9:11
[INFO] [stdout]   |
[INFO] [stdout] 9 |     Other(String)
[INFO] [stdout]   |     ----- ^^^^^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     field in this variant
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]   |
[INFO] [stdout] 9 -     Other(String)
[INFO] [stdout] 9 +     Other(())
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `ParseIntError` and `RegexError` are never constructed
[INFO] [stdout]  --> src/error.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub enum Error {
[INFO] [stdout]   |          ----- variants in this enum
[INFO] [stdout] 6 |     IOError(std::io::Error),
[INFO] [stdout] 7 |     ParseIntError(std::num::ParseIntError),
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 8 |     RegexError(regex::Error),
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `turn` are never used
[INFO] [stdout]   --> src/day6.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl Direction {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 15 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 19 |     fn turn(&self) -> Self {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Guard` is never constructed
[INFO] [stdout]   --> src/day6.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub struct Guard {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `get_direction`, `turn`, and `check_and_move` are never used
[INFO] [stdout]   --> src/day6.rs:41:8
[INFO] [stdout]    |
[INFO] [stdout] 39 | impl Guard {
[INFO] [stdout]    | ---------- associated items in this implementation
[INFO] [stdout] 40 |
[INFO] [stdout] 41 |     fn new(x: usize, y:usize) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 54 |     fn get_direction(&self) -> Direction {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 58 |     fn turn(&mut self) {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 62 |     fn check_and_move(&mut self, map: &[[bool; 130];130]) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_map` is never used
[INFO] [stdout]    --> src/day6.rs:127:4
[INFO] [stdout]     |
[INFO] [stdout] 127 | fn load_map(input_path: &str) -> Result<([[bool;130];130], (usize, usize)), Error> {
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `d6_part1_solution` is never used
[INFO] [stdout]    --> src/day6.rs:151:8
[INFO] [stdout]     |
[INFO] [stdout] 151 | pub fn d6_part1_solution(input_path: &str) -> Result<usize, Error> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_loop_or_oob` is never used
[INFO] [stdout]    --> src/day6.rs:172:4
[INFO] [stdout]     |
[INFO] [stdout] 172 | fn check_loop_or_oob(map: &[[bool;130];130], mut guard: Guard) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `d6_part2_solution` is never used
[INFO] [stdout]    --> src/day6.rs:184:8
[INFO] [stdout]     |
[INFO] [stdout] 184 | pub fn d6_part2_solution(input_path: &str) -> Result<usize, Error> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/error.rs:6:13
[INFO] [stdout]   |
[INFO] [stdout] 6 |     IOError(std::io::Error),
[INFO] [stdout]   |     ------- ^^^^^^^^^^^^^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     field in this variant
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]   |
[INFO] [stdout] 6 -     IOError(std::io::Error),
[INFO] [stdout] 6 +     IOError(()),
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/error.rs:9:11
[INFO] [stdout]   |
[INFO] [stdout] 9 |     Other(String)
[INFO] [stdout]   |     ----- ^^^^^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     field in this variant
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]   |
[INFO] [stdout] 9 -     Other(String)
[INFO] [stdout] 9 +     Other(())
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `ParseIntError` and `RegexError` are never constructed
[INFO] [stdout]  --> src/error.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub enum Error {
[INFO] [stdout]   |          ----- variants in this enum
[INFO] [stdout] 6 |     IOError(std::io::Error),
[INFO] [stdout] 7 |     ParseIntError(std::num::ParseIntError),
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 8 |     RegexError(regex::Error),
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.51s
[INFO] running `Command { std: "docker" "inspect" "38402bc7ee11ce6151ab06f83f379bd8b0998427b98def443ff53c22821e6807", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "38402bc7ee11ce6151ab06f83f379bd8b0998427b98def443ff53c22821e6807", kill_on_drop: false }`
[INFO] [stdout] 38402bc7ee11ce6151ab06f83f379bd8b0998427b98def443ff53c22821e6807
