[INFO] cloning repository https://github.com/pat0089/AdventOfCode2024
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/pat0089/AdventOfCode2024" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpat0089%2FAdventOfCode2024", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpat0089%2FAdventOfCode2024'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] fc2309cce3a4793dab0846b75a7ae250c62cf28c
[INFO] testing pat0089/AdventOfCode2024 against try#c2e32f1c9652b13ed99608599c1e855462f421f3 for pr-146098-7
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpat0089%2FAdventOfCode2024" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/pat0089/AdventOfCode2024
[INFO] finished tweaking git repo https://github.com/pat0089/AdventOfCode2024
[INFO] tweaked toml for git repo https://github.com/pat0089/AdventOfCode2024 written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/pat0089/AdventOfCode2024 on toolchain c2e32f1c9652b13ed99608599c1e855462f421f3
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/pat0089/AdventOfCode2024 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" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] eab7631824404b6756823d42d9c623fd4a1877a5d126b6b6a5c280aa376f3f4a
[INFO] running `Command { std: "docker" "start" "-a" "eab7631824404b6756823d42d9c623fd4a1877a5d126b6b6a5c280aa376f3f4a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "eab7631824404b6756823d42d9c623fd4a1877a5d126b6b6a5c280aa376f3f4a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "eab7631824404b6756823d42d9c623fd4a1877a5d126b6b6a5c280aa376f3f4a", kill_on_drop: false }`
[INFO] [stdout] eab7631824404b6756823d42d9c623fd4a1877a5d126b6b6a5c280aa376f3f4a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] fda3873ad63a4bf34c19afe80864af48e4f0b6307bf703cc52ad92a9916b828b
[INFO] running `Command { std: "docker" "start" "-a" "fda3873ad63a4bf34c19afe80864af48e4f0b6307bf703cc52ad92a9916b828b", kill_on_drop: false }`
[INFO] [stderr]    Compiling memchr v2.7.4
[INFO] [stderr]    Compiling regex-syntax v0.8.5
[INFO] [stderr]    Compiling aho-corasick v1.1.3
[INFO] [stderr]    Compiling regex-automata v0.4.9
[INFO] [stderr]    Compiling regex v1.11.1
[INFO] [stderr]    Compiling AdventOfCode2024 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `iter`
[INFO] [stdout]  --> src/days/day_10/mod.rs:1:53
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{collections::HashSet, fs::read_to_string, iter};
[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 import: `HashSet`
[INFO] [stdout]  --> src/days/day_11/mod.rs:2:28
[INFO] [stdout]   |
[INFO] [stdout] 2 |     collections::{HashMap, HashSet},
[INFO] [stdout]   |                            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `VecDeque`
[INFO] [stdout]  --> src/days/day_6/mod.rs:2:28
[INFO] [stdout]   |
[INFO] [stdout] 2 |     collections::{HashSet, VecDeque},
[INFO] [stdout]   |                            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `btree_set::Intersection` and `hash::Hash`
[INFO] [stdout]  --> src/days/day_8/mod.rs:2:19
[INFO] [stdout]   |
[INFO] [stdout] 2 |     collections::{btree_set::Intersection, HashMap, HashSet},
[INFO] [stdout]   |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 3 |     fs::read_to_string,
[INFO] [stdout] 4 |     hash::Hash,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `intermediate2`
[INFO] [stdout]   --> src/days/day_10/mod.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 28 |     let intermediate2 = input2
[INFO] [stdout]    |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_intermediate2`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `first_intermediate`
[INFO] [stdout]   --> src/days/day_4/mod.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 |     let first_intermediate = first
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_first_intermediate`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `input2`
[INFO] [stdout]   --> src/days/day_5/mod.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     let input2 = "47|53
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_input2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `intermediate2`
[INFO] [stdout]   --> src/days/day_6/mod.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |     let intermediate2 = input2
[INFO] [stdout]    |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_intermediate2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `intermediate2`
[INFO] [stdout]   --> src/days/day_7/mod.rs:37:9
[INFO] [stdout]    |
[INFO] [stdout] 37 |     let intermediate2 = input2
[INFO] [stdout]    |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_intermediate2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `intermediate2`
[INFO] [stdout]   --> src/days/day_8/mod.rs:35:9
[INFO] [stdout]    |
[INFO] [stdout] 35 |     let intermediate2 = input2
[INFO] [stdout]    |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_intermediate2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `intermediate2`
[INFO] [stdout]   --> src/days/day_9/mod.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 |     let intermediate2 = input2
[INFO] [stdout]    |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_intermediate2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/days/day_1/mod.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn run() {
[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 `part_1` is never used
[INFO] [stdout]   --> src/days/day_1/mod.rs:31:4
[INFO] [stdout]    |
[INFO] [stdout] 31 | fn part_1(mut inter: Vec<u32>, mut inter2: Vec<u32>) -> u32 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_2` is never used
[INFO] [stdout]   --> src/days/day_1/mod.rs:40:4
[INFO] [stdout]    |
[INFO] [stdout] 40 | fn part_2(left: Vec<u32>, right: Vec<u32>) -> u32 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/days/day_10/mod.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn run() {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_1` is never used
[INFO] [stdout]   --> src/days/day_10/mod.rs:46:4
[INFO] [stdout]    |
[INFO] [stdout] 46 | fn part_1(input: &[Vec<u32>], trailheads: &HashSet<(i32, i32)>) -> u32 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_2` is never used
[INFO] [stdout]   --> src/days/day_10/mod.rs:56:4
[INFO] [stdout]    |
[INFO] [stdout] 56 | fn part_2(input: &[Vec<u32>], trailheads: &HashSet<(i32, i32)>) -> u32 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `try_trailhead` is never used
[INFO] [stdout]   --> src/days/day_10/mod.rs:63:4
[INFO] [stdout]    |
[INFO] [stdout] 63 | fn try_trailhead(input: &[Vec<u32>], x: i32, y: i32) -> u32 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `try_trailhead2` is never used
[INFO] [stdout]   --> src/days/day_10/mod.rs:70:4
[INFO] [stdout]    |
[INFO] [stdout] 70 | fn try_trailhead2(input: &[Vec<u32>], x: i32, y: i32) -> u32 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `try_step` is never used
[INFO] [stdout]   --> src/days/day_10/mod.rs:77:4
[INFO] [stdout]    |
[INFO] [stdout] 77 | fn try_step(
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `try_step2` is never used
[INFO] [stdout]    --> src/days/day_10/mod.rs:110:4
[INFO] [stdout]     |
[INFO] [stdout] 110 | fn try_step2(
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_trailheads` is never used
[INFO] [stdout]    --> src/days/day_10/mod.rs:143:4
[INFO] [stdout]     |
[INFO] [stdout] 143 | fn get_trailheads(intermediate: &[Vec<u32>]) -> HashSet<(i32, i32)> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/days/day_2/mod.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn run() {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_1` is never used
[INFO] [stdout]   --> src/days/day_2/mod.rs:24:4
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn part_1(intermediate: Vec<Vec<u32>>) -> u32 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_safe` is never used
[INFO] [stdout]   --> src/days/day_2/mod.rs:30:4
[INFO] [stdout]    |
[INFO] [stdout] 30 | fn is_safe(report: &Vec<u32>) -> bool {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_2` is never used
[INFO] [stdout]   --> src/days/day_2/mod.rs:45:4
[INFO] [stdout]    |
[INFO] [stdout] 45 | fn part_2(intermediate: Vec<Vec<u32>>) -> u32 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/days/day_3/mod.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn run() {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/days/day_4/mod.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn run() {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_1` is never used
[INFO] [stdout]   --> src/days/day_4/mod.rs:37:4
[INFO] [stdout]    |
[INFO] [stdout] 37 | fn part_1(intermediate: &Vec<Vec<char>>) -> u32 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_locations` is never used
[INFO] [stdout]   --> src/days/day_4/mod.rs:74:4
[INFO] [stdout]    |
[INFO] [stdout] 74 | fn find_locations(intermediate: &Vec<Vec<char>>, target: char) -> Vec<(i32, i32)> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_word` is never used
[INFO] [stdout]   --> src/days/day_4/mod.rs:92:4
[INFO] [stdout]    |
[INFO] [stdout] 92 | fn find_word(
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_2` is never used
[INFO] [stdout]    --> src/days/day_4/mod.rs:130:4
[INFO] [stdout]     |
[INFO] [stdout] 130 | fn part_2(intermediate: &Vec<Vec<char>>) -> u32 {
[INFO] [stdout]     |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/days/day_5/mod.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn run() {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_1` is never used
[INFO] [stdout]   --> src/days/day_5/mod.rs:47:4
[INFO] [stdout]    |
[INFO] [stdout] 47 | fn part_1(rules: &HashMap<u32, HashSet<u32>>, input: &Vec<Vec<u32>>) -> u32 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_2` is never used
[INFO] [stdout]   --> src/days/day_5/mod.rs:57:4
[INFO] [stdout]    |
[INFO] [stdout] 57 | fn part_2(rules: &HashMap<u32, HashSet<u32>>, input: &Vec<Vec<u32>>) -> u32 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_input` is never used
[INFO] [stdout]   --> src/days/day_5/mod.rs:82:4
[INFO] [stdout]    |
[INFO] [stdout] 82 | fn parse_input(input: &str) -> (HashMap<u32, HashSet<u32>>, Vec<Vec<u32>>) {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_valid_update_list` is never used
[INFO] [stdout]    --> src/days/day_5/mod.rs:113:4
[INFO] [stdout]     |
[INFO] [stdout] 113 | fn is_valid_update_list(updates: &Vec<u32>, rules: &HashMap<u32, HashSet<u32>>) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/days/day_6/mod.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub fn run() {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_1` is never used
[INFO] [stdout]   --> src/days/day_6/mod.rs:43:4
[INFO] [stdout]    |
[INFO] [stdout] 43 | fn part_1(input: &Vec<Vec<char>>) -> u32 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `simulate` is never used
[INFO] [stdout]   --> src/days/day_6/mod.rs:56:4
[INFO] [stdout]    |
[INFO] [stdout] 56 | fn simulate(
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `position_is_valid` is never used
[INFO] [stdout]   --> src/days/day_6/mod.rs:82:4
[INFO] [stdout]    |
[INFO] [stdout] 82 | fn position_is_valid(size: (usize, usize), position: (i32, i32)) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_next_position` is never used
[INFO] [stdout]   --> src/days/day_6/mod.rs:94:4
[INFO] [stdout]    |
[INFO] [stdout] 94 | fn get_next_position(position: (i32, i32), direction_index: usize) -> (i32, i32) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `should_turn` is never used
[INFO] [stdout]    --> src/days/day_6/mod.rs:101:4
[INFO] [stdout]     |
[INFO] [stdout] 101 | fn should_turn(obstacles: &HashSet<(usize, usize)>, next_position: &(i32, i32)) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_starting_position` is never used
[INFO] [stdout]    --> src/days/day_6/mod.rs:106:4
[INFO] [stdout]     |
[INFO] [stdout] 106 | fn get_starting_position(input: &Vec<Vec<char>>) -> (usize, usize) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_obstacles` is never used
[INFO] [stdout]    --> src/days/day_6/mod.rs:118:4
[INFO] [stdout]     |
[INFO] [stdout] 118 | fn get_obstacles(input: &Vec<Vec<char>>) -> HashSet<(usize, usize)> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_2` is never used
[INFO] [stdout]    --> src/days/day_6/mod.rs:136:4
[INFO] [stdout]     |
[INFO] [stdout] 136 | fn part_2(input: &Vec<Vec<char>>) -> u32 {
[INFO] [stdout]     |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `movement` is never used
[INFO] [stdout]    --> src/days/day_6/mod.rs:171:4
[INFO] [stdout]     |
[INFO] [stdout] 171 | fn movement(
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `simulate_with_loops` is never used
[INFO] [stdout]    --> src/days/day_6/mod.rs:188:4
[INFO] [stdout]     |
[INFO] [stdout] 188 | fn simulate_with_loops(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/days/day_7/mod.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn run() {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_1` is never used
[INFO] [stdout]   --> src/days/day_7/mod.rs:57:4
[INFO] [stdout]    |
[INFO] [stdout] 57 | fn part_1(input: &Vec<(u64, Vec<u64>)>) -> u64 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_2` is never used
[INFO] [stdout]   --> src/days/day_7/mod.rs:67:4
[INFO] [stdout]    |
[INFO] [stdout] 67 | fn part_2(input: &Vec<(u64, Vec<u64>)>) -> u64 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_safe` is never used
[INFO] [stdout]   --> src/days/day_7/mod.rs:77:4
[INFO] [stdout]    |
[INFO] [stdout] 77 | fn is_safe(report: &[u64], accumulator: u64, target: u64) -> bool {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_safe_concatenate` is never used
[INFO] [stdout]   --> src/days/day_7/mod.rs:86:4
[INFO] [stdout]    |
[INFO] [stdout] 86 | fn is_safe_concatenate(report: &[u64], accumulator: u64, target: u64) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `concatenate` is never used
[INFO] [stdout]   --> src/days/day_7/mod.rs:96:4
[INFO] [stdout]    |
[INFO] [stdout] 96 | fn concatenate(accumulator: u64, report: u64) -> u64 {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/days/day_8/mod.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn run() {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_1` is never used
[INFO] [stdout]   --> src/days/day_8/mod.rs:44:4
[INFO] [stdout]    |
[INFO] [stdout] 44 | fn part_1(input: &Vec<Vec<char>>) -> u32 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_antennae_locations` is never used
[INFO] [stdout]   --> src/days/day_8/mod.rs:78:4
[INFO] [stdout]    |
[INFO] [stdout] 78 | fn get_antennae_locations(input: &[Vec<char>]) -> HashMap<char, Vec<(i32, i32)>> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_combinations` is never used
[INFO] [stdout]   --> src/days/day_8/mod.rs:95:4
[INFO] [stdout]    |
[INFO] [stdout] 95 | fn get_combinations(antennae: &Vec<(i32, i32)>) -> Vec<((i32, i32), (i32, i32))> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_valid_location` is never used
[INFO] [stdout]    --> src/days/day_8/mod.rs:108:4
[INFO] [stdout]     |
[INFO] [stdout] 108 | fn is_valid_location(input_size: (usize, usize), position: (i32, i32)) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_2` is never used
[INFO] [stdout]    --> src/days/day_8/mod.rs:120:4
[INFO] [stdout]     |
[INFO] [stdout] 120 | fn part_2(input: &Vec<Vec<char>>) -> u32 {
[INFO] [stdout]     |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/days/day_9/mod.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn run() {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_1` is never used
[INFO] [stdout]   --> src/days/day_9/mod.rs:28:4
[INFO] [stdout]    |
[INFO] [stdout] 28 | fn part_1(input: &Vec<u32>) -> u64 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_disk_by_id` is never used
[INFO] [stdout]   --> src/days/day_9/mod.rs:55:4
[INFO] [stdout]    |
[INFO] [stdout] 55 | fn get_disk_by_id(input: &[u32]) -> Vec<Vec<Option<u32>>> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calculate_checksum` is never used
[INFO] [stdout]   --> src/days/day_9/mod.rs:69:4
[INFO] [stdout]    |
[INFO] [stdout] 69 | fn calculate_checksum(input: &Vec<u32>) -> u64 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calculate_optional_checksum` is never used
[INFO] [stdout]   --> src/days/day_9/mod.rs:76:4
[INFO] [stdout]    |
[INFO] [stdout] 76 | fn calculate_optional_checksum(input: &Vec<Option<u32>>) -> u64 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_2` is never used
[INFO] [stdout]   --> src/days/day_9/mod.rs:83:4
[INFO] [stdout]    |
[INFO] [stdout] 83 | fn part_2(input: &Vec<u32>) -> u64 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_disk` is never used
[INFO] [stdout]    --> src/days/day_9/mod.rs:125:4
[INFO] [stdout]     |
[INFO] [stdout] 125 | fn print_disk(disk: &Vec<(usize, Option<u32>)>) {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_first_valid_empty_index` is never used
[INFO] [stdout]    --> src/days/day_9/mod.rs:142:4
[INFO] [stdout]     |
[INFO] [stdout] 142 | fn find_first_valid_empty_index(input: &Vec<(usize, Option<u32>)>, size: usize) -> Option<usize> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `concatenate_adjacent_none` is never used
[INFO] [stdout]    --> src/days/day_9/mod.rs:151:4
[INFO] [stdout]     |
[INFO] [stdout] 151 | fn concatenate_adjacent_none(input: &mut Vec<(usize, Option<u32>)>) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `modified_swap` is never used
[INFO] [stdout]    --> src/days/day_9/mod.rs:163:4
[INFO] [stdout]     |
[INFO] [stdout] 163 | fn modified_swap(input: &mut Vec<(usize, Option<u32>)>, left: usize, right: usize) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `DIRECTIONS` is never used
[INFO] [stdout]  --> src/util/mod.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub const DIRECTIONS: [(i32, i32); 4] = [(-1, 0), (0, 1), (1, 0), (0, -1)];
[INFO] [stdout]   |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 8.92s
[INFO] running `Command { std: "docker" "inspect" "fda3873ad63a4bf34c19afe80864af48e4f0b6307bf703cc52ad92a9916b828b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fda3873ad63a4bf34c19afe80864af48e4f0b6307bf703cc52ad92a9916b828b", kill_on_drop: false }`
[INFO] [stdout] fda3873ad63a4bf34c19afe80864af48e4f0b6307bf703cc52ad92a9916b828b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a6eead1e70dc4dfe59dc5e0f021f38c8a37300adc0d5d9e567ccb831e5690e5a
[INFO] running `Command { std: "docker" "start" "-a" "a6eead1e70dc4dfe59dc5e0f021f38c8a37300adc0d5d9e567ccb831e5690e5a", kill_on_drop: false }`
[INFO] [stderr]    Compiling AdventOfCode2024 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `iter`
[INFO] [stdout]  --> src/days/day_10/mod.rs:1:53
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{collections::HashSet, fs::read_to_string, iter};
[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 import: `HashSet`
[INFO] [stdout]  --> src/days/day_11/mod.rs:2:28
[INFO] [stdout]   |
[INFO] [stdout] 2 |     collections::{HashMap, HashSet},
[INFO] [stdout]   |                            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `VecDeque`
[INFO] [stdout]  --> src/days/day_6/mod.rs:2:28
[INFO] [stdout]   |
[INFO] [stdout] 2 |     collections::{HashSet, VecDeque},
[INFO] [stdout]   |                            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `btree_set::Intersection` and `hash::Hash`
[INFO] [stdout]  --> src/days/day_8/mod.rs:2:19
[INFO] [stdout]   |
[INFO] [stdout] 2 |     collections::{btree_set::Intersection, HashMap, HashSet},
[INFO] [stdout]   |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 3 |     fs::read_to_string,
[INFO] [stdout] 4 |     hash::Hash,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `intermediate2`
[INFO] [stdout]   --> src/days/day_10/mod.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 28 |     let intermediate2 = input2
[INFO] [stdout]    |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_intermediate2`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `first_intermediate`
[INFO] [stdout]   --> src/days/day_4/mod.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 |     let first_intermediate = first
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_first_intermediate`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `input2`
[INFO] [stdout]   --> src/days/day_5/mod.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     let input2 = "47|53
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_input2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `intermediate2`
[INFO] [stdout]   --> src/days/day_6/mod.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |     let intermediate2 = input2
[INFO] [stdout]    |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_intermediate2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `intermediate2`
[INFO] [stdout]   --> src/days/day_7/mod.rs:37:9
[INFO] [stdout]    |
[INFO] [stdout] 37 |     let intermediate2 = input2
[INFO] [stdout]    |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_intermediate2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `intermediate2`
[INFO] [stdout]   --> src/days/day_8/mod.rs:35:9
[INFO] [stdout]    |
[INFO] [stdout] 35 |     let intermediate2 = input2
[INFO] [stdout]    |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_intermediate2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `intermediate2`
[INFO] [stdout]   --> src/days/day_9/mod.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 |     let intermediate2 = input2
[INFO] [stdout]    |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_intermediate2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/days/day_1/mod.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn run() {
[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 `part_1` is never used
[INFO] [stdout]   --> src/days/day_1/mod.rs:31:4
[INFO] [stdout]    |
[INFO] [stdout] 31 | fn part_1(mut inter: Vec<u32>, mut inter2: Vec<u32>) -> u32 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_2` is never used
[INFO] [stdout]   --> src/days/day_1/mod.rs:40:4
[INFO] [stdout]    |
[INFO] [stdout] 40 | fn part_2(left: Vec<u32>, right: Vec<u32>) -> u32 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/days/day_10/mod.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn run() {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_1` is never used
[INFO] [stdout]   --> src/days/day_10/mod.rs:46:4
[INFO] [stdout]    |
[INFO] [stdout] 46 | fn part_1(input: &[Vec<u32>], trailheads: &HashSet<(i32, i32)>) -> u32 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_2` is never used
[INFO] [stdout]   --> src/days/day_10/mod.rs:56:4
[INFO] [stdout]    |
[INFO] [stdout] 56 | fn part_2(input: &[Vec<u32>], trailheads: &HashSet<(i32, i32)>) -> u32 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `try_trailhead` is never used
[INFO] [stdout]   --> src/days/day_10/mod.rs:63:4
[INFO] [stdout]    |
[INFO] [stdout] 63 | fn try_trailhead(input: &[Vec<u32>], x: i32, y: i32) -> u32 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `try_trailhead2` is never used
[INFO] [stdout]   --> src/days/day_10/mod.rs:70:4
[INFO] [stdout]    |
[INFO] [stdout] 70 | fn try_trailhead2(input: &[Vec<u32>], x: i32, y: i32) -> u32 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `try_step` is never used
[INFO] [stdout]   --> src/days/day_10/mod.rs:77:4
[INFO] [stdout]    |
[INFO] [stdout] 77 | fn try_step(
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `try_step2` is never used
[INFO] [stdout]    --> src/days/day_10/mod.rs:110:4
[INFO] [stdout]     |
[INFO] [stdout] 110 | fn try_step2(
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_trailheads` is never used
[INFO] [stdout]    --> src/days/day_10/mod.rs:143:4
[INFO] [stdout]     |
[INFO] [stdout] 143 | fn get_trailheads(intermediate: &[Vec<u32>]) -> HashSet<(i32, i32)> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/days/day_2/mod.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn run() {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_1` is never used
[INFO] [stdout]   --> src/days/day_2/mod.rs:24:4
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn part_1(intermediate: Vec<Vec<u32>>) -> u32 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_safe` is never used
[INFO] [stdout]   --> src/days/day_2/mod.rs:30:4
[INFO] [stdout]    |
[INFO] [stdout] 30 | fn is_safe(report: &Vec<u32>) -> bool {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_2` is never used
[INFO] [stdout]   --> src/days/day_2/mod.rs:45:4
[INFO] [stdout]    |
[INFO] [stdout] 45 | fn part_2(intermediate: Vec<Vec<u32>>) -> u32 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/days/day_3/mod.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn run() {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/days/day_4/mod.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn run() {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_1` is never used
[INFO] [stdout]   --> src/days/day_4/mod.rs:37:4
[INFO] [stdout]    |
[INFO] [stdout] 37 | fn part_1(intermediate: &Vec<Vec<char>>) -> u32 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_locations` is never used
[INFO] [stdout]   --> src/days/day_4/mod.rs:74:4
[INFO] [stdout]    |
[INFO] [stdout] 74 | fn find_locations(intermediate: &Vec<Vec<char>>, target: char) -> Vec<(i32, i32)> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_word` is never used
[INFO] [stdout]   --> src/days/day_4/mod.rs:92:4
[INFO] [stdout]    |
[INFO] [stdout] 92 | fn find_word(
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_2` is never used
[INFO] [stdout]    --> src/days/day_4/mod.rs:130:4
[INFO] [stdout]     |
[INFO] [stdout] 130 | fn part_2(intermediate: &Vec<Vec<char>>) -> u32 {
[INFO] [stdout]     |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/days/day_5/mod.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn run() {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_1` is never used
[INFO] [stdout]   --> src/days/day_5/mod.rs:47:4
[INFO] [stdout]    |
[INFO] [stdout] 47 | fn part_1(rules: &HashMap<u32, HashSet<u32>>, input: &Vec<Vec<u32>>) -> u32 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_2` is never used
[INFO] [stdout]   --> src/days/day_5/mod.rs:57:4
[INFO] [stdout]    |
[INFO] [stdout] 57 | fn part_2(rules: &HashMap<u32, HashSet<u32>>, input: &Vec<Vec<u32>>) -> u32 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_input` is never used
[INFO] [stdout]   --> src/days/day_5/mod.rs:82:4
[INFO] [stdout]    |
[INFO] [stdout] 82 | fn parse_input(input: &str) -> (HashMap<u32, HashSet<u32>>, Vec<Vec<u32>>) {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_valid_update_list` is never used
[INFO] [stdout]    --> src/days/day_5/mod.rs:113:4
[INFO] [stdout]     |
[INFO] [stdout] 113 | fn is_valid_update_list(updates: &Vec<u32>, rules: &HashMap<u32, HashSet<u32>>) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/days/day_6/mod.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub fn run() {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_1` is never used
[INFO] [stdout]   --> src/days/day_6/mod.rs:43:4
[INFO] [stdout]    |
[INFO] [stdout] 43 | fn part_1(input: &Vec<Vec<char>>) -> u32 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `simulate` is never used
[INFO] [stdout]   --> src/days/day_6/mod.rs:56:4
[INFO] [stdout]    |
[INFO] [stdout] 56 | fn simulate(
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `position_is_valid` is never used
[INFO] [stdout]   --> src/days/day_6/mod.rs:82:4
[INFO] [stdout]    |
[INFO] [stdout] 82 | fn position_is_valid(size: (usize, usize), position: (i32, i32)) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_next_position` is never used
[INFO] [stdout]   --> src/days/day_6/mod.rs:94:4
[INFO] [stdout]    |
[INFO] [stdout] 94 | fn get_next_position(position: (i32, i32), direction_index: usize) -> (i32, i32) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `should_turn` is never used
[INFO] [stdout]    --> src/days/day_6/mod.rs:101:4
[INFO] [stdout]     |
[INFO] [stdout] 101 | fn should_turn(obstacles: &HashSet<(usize, usize)>, next_position: &(i32, i32)) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_starting_position` is never used
[INFO] [stdout]    --> src/days/day_6/mod.rs:106:4
[INFO] [stdout]     |
[INFO] [stdout] 106 | fn get_starting_position(input: &Vec<Vec<char>>) -> (usize, usize) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_obstacles` is never used
[INFO] [stdout]    --> src/days/day_6/mod.rs:118:4
[INFO] [stdout]     |
[INFO] [stdout] 118 | fn get_obstacles(input: &Vec<Vec<char>>) -> HashSet<(usize, usize)> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_2` is never used
[INFO] [stdout]    --> src/days/day_6/mod.rs:136:4
[INFO] [stdout]     |
[INFO] [stdout] 136 | fn part_2(input: &Vec<Vec<char>>) -> u32 {
[INFO] [stdout]     |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `movement` is never used
[INFO] [stdout]    --> src/days/day_6/mod.rs:171:4
[INFO] [stdout]     |
[INFO] [stdout] 171 | fn movement(
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `simulate_with_loops` is never used
[INFO] [stdout]    --> src/days/day_6/mod.rs:188:4
[INFO] [stdout]     |
[INFO] [stdout] 188 | fn simulate_with_loops(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/days/day_7/mod.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn run() {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_1` is never used
[INFO] [stdout]   --> src/days/day_7/mod.rs:57:4
[INFO] [stdout]    |
[INFO] [stdout] 57 | fn part_1(input: &Vec<(u64, Vec<u64>)>) -> u64 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_2` is never used
[INFO] [stdout]   --> src/days/day_7/mod.rs:67:4
[INFO] [stdout]    |
[INFO] [stdout] 67 | fn part_2(input: &Vec<(u64, Vec<u64>)>) -> u64 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_safe` is never used
[INFO] [stdout]   --> src/days/day_7/mod.rs:77:4
[INFO] [stdout]    |
[INFO] [stdout] 77 | fn is_safe(report: &[u64], accumulator: u64, target: u64) -> bool {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_safe_concatenate` is never used
[INFO] [stdout]   --> src/days/day_7/mod.rs:86:4
[INFO] [stdout]    |
[INFO] [stdout] 86 | fn is_safe_concatenate(report: &[u64], accumulator: u64, target: u64) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/days/day_8/mod.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn run() {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_1` is never used
[INFO] [stdout]   --> src/days/day_8/mod.rs:44:4
[INFO] [stdout]    |
[INFO] [stdout] 44 | fn part_1(input: &Vec<Vec<char>>) -> u32 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_antennae_locations` is never used
[INFO] [stdout]   --> src/days/day_8/mod.rs:78:4
[INFO] [stdout]    |
[INFO] [stdout] 78 | fn get_antennae_locations(input: &[Vec<char>]) -> HashMap<char, Vec<(i32, i32)>> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_valid_location` is never used
[INFO] [stdout]    --> src/days/day_8/mod.rs:108:4
[INFO] [stdout]     |
[INFO] [stdout] 108 | fn is_valid_location(input_size: (usize, usize), position: (i32, i32)) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_2` is never used
[INFO] [stdout]    --> src/days/day_8/mod.rs:120:4
[INFO] [stdout]     |
[INFO] [stdout] 120 | fn part_2(input: &Vec<Vec<char>>) -> u32 {
[INFO] [stdout]     |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/days/day_9/mod.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn run() {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_1` is never used
[INFO] [stdout]   --> src/days/day_9/mod.rs:28:4
[INFO] [stdout]    |
[INFO] [stdout] 28 | fn part_1(input: &Vec<u32>) -> u64 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calculate_checksum` is never used
[INFO] [stdout]   --> src/days/day_9/mod.rs:69:4
[INFO] [stdout]    |
[INFO] [stdout] 69 | fn calculate_checksum(input: &Vec<u32>) -> u64 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calculate_optional_checksum` is never used
[INFO] [stdout]   --> src/days/day_9/mod.rs:76:4
[INFO] [stdout]    |
[INFO] [stdout] 76 | fn calculate_optional_checksum(input: &Vec<Option<u32>>) -> u64 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part_2` is never used
[INFO] [stdout]   --> src/days/day_9/mod.rs:83:4
[INFO] [stdout]    |
[INFO] [stdout] 83 | fn part_2(input: &Vec<u32>) -> u64 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `DIRECTIONS` is never used
[INFO] [stdout]  --> src/util/mod.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub const DIRECTIONS: [(i32, i32); 4] = [(-1, 0), (0, 1), (1, 0), (0, -1)];
[INFO] [stdout]   |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.76s
[INFO] running `Command { std: "docker" "inspect" "a6eead1e70dc4dfe59dc5e0f021f38c8a37300adc0d5d9e567ccb831e5690e5a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a6eead1e70dc4dfe59dc5e0f021f38c8a37300adc0d5d9e567ccb831e5690e5a", kill_on_drop: false }`
[INFO] [stdout] a6eead1e70dc4dfe59dc5e0f021f38c8a37300adc0d5d9e567ccb831e5690e5a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 742b94f78273b8ad1865aacd367c552dda68c18ed887eab45e0bce8b6ac601db
[INFO] running `Command { std: "docker" "start" "-a" "742b94f78273b8ad1865aacd367c552dda68c18ed887eab45e0bce8b6ac601db", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `iter`
[INFO] [stderr]  --> src/days/day_10/mod.rs:1:53
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::{collections::HashSet, fs::read_to_string, iter};
[INFO] [stderr]   |                                                     ^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `HashSet`
[INFO] [stderr]  --> src/days/day_11/mod.rs:2:28
[INFO] [stderr]   |
[INFO] [stderr] 2 |     collections::{HashMap, HashSet},
[INFO] [stderr]   |                            ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `VecDeque`
[INFO] [stderr]  --> src/days/day_6/mod.rs:2:28
[INFO] [stderr]   |
[INFO] [stderr] 2 |     collections::{HashSet, VecDeque},
[INFO] [stderr]   |                            ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `btree_set::Intersection` and `hash::Hash`
[INFO] [stderr]  --> src/days/day_8/mod.rs:2:19
[INFO] [stderr]   |
[INFO] [stderr] 2 |     collections::{btree_set::Intersection, HashMap, HashSet},
[INFO] [stderr]   |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 3 |     fs::read_to_string,
[INFO] [stderr] 4 |     hash::Hash,
[INFO] [stderr]   |     ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `intermediate2`
[INFO] [stderr]   --> src/days/day_10/mod.rs:28:9
[INFO] [stderr]    |
[INFO] [stderr] 28 |     let intermediate2 = input2
[INFO] [stderr]    |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_intermediate2`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `first_intermediate`
[INFO] [stderr]   --> src/days/day_4/mod.rs:27:9
[INFO] [stderr]    |
[INFO] [stderr] 27 |     let first_intermediate = first
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_first_intermediate`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `input2`
[INFO] [stderr]   --> src/days/day_5/mod.rs:12:9
[INFO] [stderr]    |
[INFO] [stderr] 12 |     let input2 = "47|53
[INFO] [stderr]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_input2`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `intermediate2`
[INFO] [stderr]   --> src/days/day_6/mod.rs:34:9
[INFO] [stderr]    |
[INFO] [stderr] 34 |     let intermediate2 = input2
[INFO] [stderr]    |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_intermediate2`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `intermediate2`
[INFO] [stderr]   --> src/days/day_7/mod.rs:37:9
[INFO] [stderr]    |
[INFO] [stderr] 37 |     let intermediate2 = input2
[INFO] [stderr]    |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_intermediate2`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `intermediate2`
[INFO] [stderr]   --> src/days/day_8/mod.rs:35:9
[INFO] [stderr]    |
[INFO] [stderr] 35 |     let intermediate2 = input2
[INFO] [stderr]    |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_intermediate2`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `intermediate2`
[INFO] [stderr]   --> src/days/day_9/mod.rs:13:9
[INFO] [stderr]    |
[INFO] [stderr] 13 |     let intermediate2 = input2
[INFO] [stderr]    |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_intermediate2`
[INFO] [stderr] 
[INFO] [stderr] warning: function `run` is never used
[INFO] [stderr]  --> src/days/day_1/mod.rs:3:8
[INFO] [stderr]   |
[INFO] [stderr] 3 | pub fn run() {
[INFO] [stderr]   |        ^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `part_1` is never used
[INFO] [stderr]   --> src/days/day_1/mod.rs:31:4
[INFO] [stderr]    |
[INFO] [stderr] 31 | fn part_1(mut inter: Vec<u32>, mut inter2: Vec<u32>) -> u32 {
[INFO] [stderr]    |    ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `part_2` is never used
[INFO] [stderr]   --> src/days/day_1/mod.rs:40:4
[INFO] [stderr]    |
[INFO] [stderr] 40 | fn part_2(left: Vec<u32>, right: Vec<u32>) -> u32 {
[INFO] [stderr]    |    ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `run` is never used
[INFO] [stderr]  --> src/days/day_10/mod.rs:5:8
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub fn run() {
[INFO] [stderr]   |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `part_1` is never used
[INFO] [stderr]   --> src/days/day_10/mod.rs:46:4
[INFO] [stderr]    |
[INFO] [stderr] 46 | fn part_1(input: &[Vec<u32>], trailheads: &HashSet<(i32, i32)>) -> u32 {
[INFO] [stderr]    |    ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `part_2` is never used
[INFO] [stderr]   --> src/days/day_10/mod.rs:56:4
[INFO] [stderr]    |
[INFO] [stderr] 56 | fn part_2(input: &[Vec<u32>], trailheads: &HashSet<(i32, i32)>) -> u32 {
[INFO] [stderr]    |    ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `try_trailhead` is never used
[INFO] [stderr]   --> src/days/day_10/mod.rs:63:4
[INFO] [stderr]    |
[INFO] [stderr] 63 | fn try_trailhead(input: &[Vec<u32>], x: i32, y: i32) -> u32 {
[INFO] [stderr]    |    ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `try_trailhead2` is never used
[INFO] [stderr]   --> src/days/day_10/mod.rs:70:4
[INFO] [stderr]    |
[INFO] [stderr] 70 | fn try_trailhead2(input: &[Vec<u32>], x: i32, y: i32) -> u32 {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `try_step` is never used
[INFO] [stderr]   --> src/days/day_10/mod.rs:77:4
[INFO] [stderr]    |
[INFO] [stderr] 77 | fn try_step(
[INFO] [stderr]    |    ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `try_step2` is never used
[INFO] [stderr]    --> src/days/day_10/mod.rs:110:4
[INFO] [stderr]     |
[INFO] [stderr] 110 | fn try_step2(
[INFO] [stderr]     |    ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `get_trailheads` is never used
[INFO] [stderr]    --> src/days/day_10/mod.rs:143:4
[INFO] [stderr]     |
[INFO] [stderr] 143 | fn get_trailheads(intermediate: &[Vec<u32>]) -> HashSet<(i32, i32)> {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `run` is never used
[INFO] [stderr]  --> src/days/day_2/mod.rs:3:8
[INFO] [stderr]   |
[INFO] [stderr] 3 | pub fn run() {
[INFO] [stderr]   |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `part_1` is never used
[INFO] [stderr]   --> src/days/day_2/mod.rs:24:4
[INFO] [stderr]    |
[INFO] [stderr] 24 | fn part_1(intermediate: Vec<Vec<u32>>) -> u32 {
[INFO] [stderr]    |    ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `is_safe` is never used
[INFO] [stderr]   --> src/days/day_2/mod.rs:30:4
[INFO] [stderr]    |
[INFO] [stderr] 30 | fn is_safe(report: &Vec<u32>) -> bool {
[INFO] [stderr]    |    ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `part_2` is never used
[INFO] [stderr]   --> src/days/day_2/mod.rs:45:4
[INFO] [stderr]    |
[INFO] [stderr] 45 | fn part_2(intermediate: Vec<Vec<u32>>) -> u32 {
[INFO] [stderr]    |    ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `run` is never used
[INFO] [stderr]  --> src/days/day_3/mod.rs:5:8
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub fn run() {
[INFO] [stderr]   |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `run` is never used
[INFO] [stderr]  --> src/days/day_4/mod.rs:3:8
[INFO] [stderr]   |
[INFO] [stderr] 3 | pub fn run() {
[INFO] [stderr]   |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `part_1` is never used
[INFO] [stderr]   --> src/days/day_4/mod.rs:37:4
[INFO] [stderr]    |
[INFO] [stderr] 37 | fn part_1(intermediate: &Vec<Vec<char>>) -> u32 {
[INFO] [stderr]    |    ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `find_locations` is never used
[INFO] [stderr]   --> src/days/day_4/mod.rs:74:4
[INFO] [stderr]    |
[INFO] [stderr] 74 | fn find_locations(intermediate: &Vec<Vec<char>>, target: char) -> Vec<(i32, i32)> {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `find_word` is never used
[INFO] [stderr]   --> src/days/day_4/mod.rs:92:4
[INFO] [stderr]    |
[INFO] [stderr] 92 | fn find_word(
[INFO] [stderr]    |    ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `part_2` is never used
[INFO] [stderr]    --> src/days/day_4/mod.rs:130:4
[INFO] [stderr]     |
[INFO] [stderr] 130 | fn part_2(intermediate: &Vec<Vec<char>>) -> u32 {
[INFO] [stderr]     |    ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `run` is never used
[INFO] [stderr]  --> src/days/day_5/mod.rs:6:8
[INFO] [stderr]   |
[INFO] [stderr] 6 | pub fn run() {
[INFO] [stderr]   |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `part_1` is never used
[INFO] [stderr]   --> src/days/day_5/mod.rs:47:4
[INFO] [stderr]    |
[INFO] [stderr] 47 | fn part_1(rules: &HashMap<u32, HashSet<u32>>, input: &Vec<Vec<u32>>) -> u32 {
[INFO] [stderr]    |    ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `part_2` is never used
[INFO] [stderr]   --> src/days/day_5/mod.rs:57:4
[INFO] [stderr]    |
[INFO] [stderr] 57 | fn part_2(rules: &HashMap<u32, HashSet<u32>>, input: &Vec<Vec<u32>>) -> u32 {
[INFO] [stderr]    |    ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `parse_input` is never used
[INFO] [stderr]   --> src/days/day_5/mod.rs:82:4
[INFO] [stderr]    |
[INFO] [stderr] 82 | fn parse_input(input: &str) -> (HashMap<u32, HashSet<u32>>, Vec<Vec<u32>>) {
[INFO] [stderr]    |    ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `is_valid_update_list` is never used
[INFO] [stderr]    --> src/days/day_5/mod.rs:113:4
[INFO] [stderr]     |
[INFO] [stderr] 113 | fn is_valid_update_list(updates: &Vec<u32>, rules: &HashMap<u32, HashSet<u32>>) -> bool {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `run` is never used
[INFO] [stderr]  --> src/days/day_6/mod.rs:8:8
[INFO] [stderr]   |
[INFO] [stderr] 8 | pub fn run() {
[INFO] [stderr]   |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `part_1` is never used
[INFO] [stderr]   --> src/days/day_6/mod.rs:43:4
[INFO] [stderr]    |
[INFO] [stderr] 43 | fn part_1(input: &Vec<Vec<char>>) -> u32 {
[INFO] [stderr]    |    ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `simulate` is never used
[INFO] [stderr]   --> src/days/day_6/mod.rs:56:4
[INFO] [stderr]    |
[INFO] [stderr] 56 | fn simulate(
[INFO] [stderr]    |    ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `position_is_valid` is never used
[INFO] [stderr]   --> src/days/day_6/mod.rs:82:4
[INFO] [stderr]    |
[INFO] [stderr] 82 | fn position_is_valid(size: (usize, usize), position: (i32, i32)) -> bool {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `get_next_position` is never used
[INFO] [stderr]   --> src/days/day_6/mod.rs:94:4
[INFO] [stderr]    |
[INFO] [stderr] 94 | fn get_next_position(position: (i32, i32), direction_index: usize) -> (i32, i32) {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `should_turn` is never used
[INFO] [stderr]    --> src/days/day_6/mod.rs:101:4
[INFO] [stderr]     |
[INFO] [stderr] 101 | fn should_turn(obstacles: &HashSet<(usize, usize)>, next_position: &(i32, i32)) -> bool {
[INFO] [stderr]     |    ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `get_starting_position` is never used
[INFO] [stderr]    --> src/days/day_6/mod.rs:106:4
[INFO] [stderr]     |
[INFO] [stderr] 106 | fn get_starting_position(input: &Vec<Vec<char>>) -> (usize, usize) {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `get_obstacles` is never used
[INFO] [stderr]    --> src/days/day_6/mod.rs:118:4
[INFO] [stderr]     |
[INFO] [stderr] 118 | fn get_obstacles(input: &Vec<Vec<char>>) -> HashSet<(usize, usize)> {
[INFO] [stderr]     |    ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `part_2` is never used
[INFO] [stderr]    --> src/days/day_6/mod.rs:136:4
[INFO] [stderr]     |
[INFO] [stderr] 136 | fn part_2(input: &Vec<Vec<char>>) -> u32 {
[INFO] [stderr]     |    ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `movement` is never used
[INFO] [stderr]    --> src/days/day_6/mod.rs:171:4
[INFO] [stderr]     |
[INFO] [stderr] 171 | fn movement(
[INFO] [stderr]     |    ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `simulate_with_loops` is never used
[INFO] [stderr]    --> src/days/day_6/mod.rs:188:4
[INFO] [stderr]     |
[INFO] [stderr] 188 | fn simulate_with_loops(
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `run` is never used
[INFO] [stderr]  --> src/days/day_7/mod.rs:3:8
[INFO] [stderr]   |
[INFO] [stderr] 3 | pub fn run() {
[INFO] [stderr]   |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `part_1` is never used
[INFO] [stderr]   --> src/days/day_7/mod.rs:57:4
[INFO] [stderr]    |
[INFO] [stderr] 57 | fn part_1(input: &Vec<(u64, Vec<u64>)>) -> u64 {
[INFO] [stderr]    |    ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `part_2` is never used
[INFO] [stderr]   --> src/days/day_7/mod.rs:67:4
[INFO] [stderr]    |
[INFO] [stderr] 67 | fn part_2(input: &Vec<(u64, Vec<u64>)>) -> u64 {
[INFO] [stderr]    |    ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `is_safe` is never used
[INFO] [stderr]   --> src/days/day_7/mod.rs:77:4
[INFO] [stderr]    |
[INFO] [stderr] 77 | fn is_safe(report: &[u64], accumulator: u64, target: u64) -> bool {
[INFO] [stderr]    |    ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `is_safe_concatenate` is never used
[INFO] [stderr]   --> src/days/day_7/mod.rs:86:4
[INFO] [stderr]    |
[INFO] [stderr] 86 | fn is_safe_concatenate(report: &[u64], accumulator: u64, target: u64) -> bool {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `run` is never used
[INFO] [stderr]  --> src/days/day_8/mod.rs:7:8
[INFO] [stderr]   |
[INFO] [stderr] 7 | pub fn run() {
[INFO] [stderr]   |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `part_1` is never used
[INFO] [stderr]   --> src/days/day_8/mod.rs:44:4
[INFO] [stderr]    |
[INFO] [stderr] 44 | fn part_1(input: &Vec<Vec<char>>) -> u32 {
[INFO] [stderr]    |    ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `get_antennae_locations` is never used
[INFO] [stderr]   --> src/days/day_8/mod.rs:78:4
[INFO] [stderr]    |
[INFO] [stderr] 78 | fn get_antennae_locations(input: &[Vec<char>]) -> HashMap<char, Vec<(i32, i32)>> {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `is_valid_location` is never used
[INFO] [stderr]    --> src/days/day_8/mod.rs:108:4
[INFO] [stderr]     |
[INFO] [stderr] 108 | fn is_valid_location(input_size: (usize, usize), position: (i32, i32)) -> bool {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `part_2` is never used
[INFO] [stderr]    --> src/days/day_8/mod.rs:120:4
[INFO] [stderr]     |
[INFO] [stderr] 120 | fn part_2(input: &Vec<Vec<char>>) -> u32 {
[INFO] [stderr]     |    ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `run` is never used
[INFO] [stderr]  --> src/days/day_9/mod.rs:3:8
[INFO] [stderr]   |
[INFO] [stderr] 3 | pub fn run() {
[INFO] [stderr]   |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `part_1` is never used
[INFO] [stderr]   --> src/days/day_9/mod.rs:28:4
[INFO] [stderr]    |
[INFO] [stderr] 28 | fn part_1(input: &Vec<u32>) -> u64 {
[INFO] [stderr]    |    ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `calculate_checksum` is never used
[INFO] [stderr]   --> src/days/day_9/mod.rs:69:4
[INFO] [stderr]    |
[INFO] [stderr] 69 | fn calculate_checksum(input: &Vec<u32>) -> u64 {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `calculate_optional_checksum` is never used
[INFO] [stderr]   --> src/days/day_9/mod.rs:76:4
[INFO] [stderr]    |
[INFO] [stderr] 76 | fn calculate_optional_checksum(input: &Vec<Option<u32>>) -> u64 {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `part_2` is never used
[INFO] [stderr]   --> src/days/day_9/mod.rs:83:4
[INFO] [stderr]    |
[INFO] [stderr] 83 | fn part_2(input: &Vec<u32>) -> u64 {
[INFO] [stderr]    |    ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `DIRECTIONS` is never used
[INFO] [stderr]  --> src/util/mod.rs:1:11
[INFO] [stderr]   |
[INFO] [stderr] 1 | pub const DIRECTIONS: [(i32, i32); 4] = [(-1, 0), (0, 1), (1, 0), (0, -1)];
[INFO] [stderr]   |           ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `AdventOfCode2024` (bin "AdventOfCode2024" test) generated 64 warnings (run `cargo fix --bin "AdventOfCode2024" -p AdventOfCode2024 --tests` to apply 11 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.03s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/AdventOfCode2024-514c07ada86a2959)
[INFO] [stdout] 
[INFO] [stdout] running 5 tests
[INFO] [stdout] test days::day_11::tests::test_part_1 ... ok
[INFO] [stdout] test days::day_7::tests::test_concatenate ... ok
[INFO] [stdout] test days::day_8::tests::test_combinations ... ok
[INFO] [stdout] test days::day_9::tests::test_part_2_funcs ... ok
[INFO] [stdout] test days::day_11::tests::run_test_1 ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "742b94f78273b8ad1865aacd367c552dda68c18ed887eab45e0bce8b6ac601db", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "742b94f78273b8ad1865aacd367c552dda68c18ed887eab45e0bce8b6ac601db", kill_on_drop: false }`
[INFO] [stdout] 742b94f78273b8ad1865aacd367c552dda68c18ed887eab45e0bce8b6ac601db
