[INFO] cloning repository https://github.com/RoyShulman/aoc-rs-2024 [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/RoyShulman/aoc-rs-2024" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FRoyShulman%2Faoc-rs-2024", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FRoyShulman%2Faoc-rs-2024'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 0e6dfb85f4ae146e2dcdb2dc42f4a994affbf11c [INFO] checking RoyShulman/aoc-rs-2024 against try#4f260f0f20b3133d20cfb50353c0221943af5796+rustflags=-Dunmustuse_in_always_ok for pr-148577 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FRoyShulman%2Faoc-rs-2024" "/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/RoyShulman/aoc-rs-2024 [INFO] finished tweaking git repo https://github.com/RoyShulman/aoc-rs-2024 [INFO] tweaked toml for git repo https://github.com/RoyShulman/aoc-rs-2024 written to /workspace/builds/worker-3-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/RoyShulman/aoc-rs-2024 on toolchain 4f260f0f20b3133d20cfb50353c0221943af5796 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4f260f0f20b3133d20cfb50353c0221943af5796" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/RoyShulman/aoc-rs-2024 already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4f260f0f20b3133d20cfb50353c0221943af5796" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] 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" "+4f260f0f20b3133d20cfb50353c0221943af5796" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] f4900f64df34b1b1f4ab0398af15ffb118385b81676a5c4bbb90cf61005e76f2 [INFO] running `Command { std: "docker" "start" "-a" "f4900f64df34b1b1f4ab0398af15ffb118385b81676a5c4bbb90cf61005e76f2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "f4900f64df34b1b1f4ab0398af15ffb118385b81676a5c4bbb90cf61005e76f2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f4900f64df34b1b1f4ab0398af15ffb118385b81676a5c4bbb90cf61005e76f2", kill_on_drop: false }` [INFO] [stdout] f4900f64df34b1b1f4ab0398af15ffb118385b81676a5c4bbb90cf61005e76f2 [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 -Dunmustuse_in_always_ok" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+4f260f0f20b3133d20cfb50353c0221943af5796" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] ecfab7500092438d44a3fa9ce3490645f7f904155d177a5864795cdc298bc505 [INFO] running `Command { std: "docker" "start" "-a" "ecfab7500092438d44a3fa9ce3490645f7f904155d177a5864795cdc298bc505", kill_on_drop: false }` [INFO] [stderr] Checking either v1.13.0 [INFO] [stderr] Checking itertools v0.13.0 [INFO] [stderr] Checking aoc-rs-2024 v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `str::FromStr` [INFO] [stdout] --> src/day2.rs:1:33 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{collections::HashMap, str::FromStr}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around closure body [INFO] [stdout] --> src/day2.rs:115:49 [INFO] [stdout] | [INFO] [stdout] 115 | let num_2 = counter.values().filter(|x| (**x == 2)).count(); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 115 - let num_2 = counter.values().filter(|x| (**x == 2)).count(); [INFO] [stdout] 115 + let num_2 = counter.values().filter(|x| **x == 2 ).count(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `slice` and `str::Chars` [INFO] [stdout] --> src/day3.rs:1:11 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{slice, str::Chars}; [INFO] [stdout] | ^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `repeat_n` [INFO] [stdout] --> src/day7.rs:1:17 [INFO] [stdout] | [INFO] [stdout] 1 | use itertools::{repeat_n, Itertools}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::*` [INFO] [stdout] --> src/day10.rs:144:9 [INFO] [stdout] | [INFO] [stdout] 144 | use super::*; [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: `super::*` [INFO] [stdout] --> src/day11.rs:110:9 [INFO] [stdout] | [INFO] [stdout] 110 | use super::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `str::FromStr` [INFO] [stdout] --> src/day2.rs:1:33 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{collections::HashMap, str::FromStr}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around closure body [INFO] [stdout] --> src/day2.rs:115:49 [INFO] [stdout] | [INFO] [stdout] 115 | let num_2 = counter.values().filter(|x| (**x == 2)).count(); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 115 - let num_2 = counter.values().filter(|x| (**x == 2)).count(); [INFO] [stdout] 115 + let num_2 = counter.values().filter(|x| **x == 2 ).count(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `slice` and `str::Chars` [INFO] [stdout] --> src/day3.rs:1:11 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{slice, str::Chars}; [INFO] [stdout] | ^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `repeat_n` [INFO] [stdout] --> src/day7.rs:1:17 [INFO] [stdout] | [INFO] [stdout] 1 | use itertools::{repeat_n, Itertools}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/day11.rs:100:9 [INFO] [stdout] | [INFO] [stdout] 100 | let mut stones = Stones::from_line(input); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/day11.rs:100:9 [INFO] [stdout] | [INFO] [stdout] 100 | let mut stones = Stones::from_line(input); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part1` is never used [INFO] [stdout] --> src/day1.rs:1:4 [INFO] [stdout] | [INFO] [stdout] 1 | fn part1(input: &str) -> u32 { [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 `part2` is never used [INFO] [stdout] --> src/day1.rs:28:4 [INFO] [stdout] | [INFO] [stdout] 28 | fn part2(input: &str) -> u32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Position` is never constructed [INFO] [stdout] --> src/day10.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | struct Position { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `neighbors` is never used [INFO] [stdout] --> src/day10.rs:10:8 [INFO] [stdout] | [INFO] [stdout] 9 | impl Position { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] 10 | fn neighbors(&self, num_rows: usize, num_columns: usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TrailMap` is never constructed [INFO] [stdout] --> src/day10.rs:44:8 [INFO] [stdout] | [INFO] [stdout] 44 | struct TrailMap { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_str` is never used [INFO] [stdout] --> src/day10.rs:50:8 [INFO] [stdout] | [INFO] [stdout] 49 | impl TrailMap { [INFO] [stdout] | ------------- associated function in this implementation [INFO] [stdout] 50 | fn from_str(input: &str) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `insert_possible_neighbors` is never used [INFO] [stdout] --> src/day10.rs:72:4 [INFO] [stdout] | [INFO] [stdout] 72 | fn insert_possible_neighbors(stack: &mut Vec, current: Position, grid: &[Vec]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `find_num_trails` is never used [INFO] [stdout] --> src/day10.rs:88:4 [INFO] [stdout] | [INFO] [stdout] 88 | fn find_num_trails(grid: &[Vec], position: Position) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_trail_ratings` is never used [INFO] [stdout] --> src/day10.rs:110:4 [INFO] [stdout] | [INFO] [stdout] 110 | fn get_trail_ratings(grid: &[Vec], position: Position) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part1` is never used [INFO] [stdout] --> src/day10.rs:125:8 [INFO] [stdout] | [INFO] [stdout] 125 | pub fn part1(input: &str) -> u32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part2` is never used [INFO] [stdout] --> src/day10.rs:134:8 [INFO] [stdout] | [INFO] [stdout] 134 | pub fn part2(input: &str) -> u32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `INPUT` is never used [INFO] [stdout] --> src/day10.rs:145:11 [INFO] [stdout] | [INFO] [stdout] 145 | const INPUT: &str = r#"89010123 [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `blink` is never used [INFO] [stdout] --> src/day11.rs:26:8 [INFO] [stdout] | [INFO] [stdout] 17 | impl Stones { [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 26 | fn blink(&mut self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part1` is never used [INFO] [stdout] --> src/day11.rs:50:8 [INFO] [stdout] | [INFO] [stdout] 50 | pub fn part1(input: &str) -> u64 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `INPUT` is never used [INFO] [stdout] --> src/day11.rs:111:11 [INFO] [stdout] | [INFO] [stdout] 111 | const INPUT: &str = r#"125 17"#; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `maybe_skip_nth` is never used [INFO] [stdout] --> src/day2.rs:3:4 [INFO] [stdout] | [INFO] [stdout] 3 | fn maybe_skip_nth(it: impl Iterator, skip: Option) -> impl Iterator { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Report` is never constructed [INFO] [stdout] --> src/day2.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct Report { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `from_line`, `is_safe`, `invalid_index`, and `is_safe_with_toleration` are never used [INFO] [stdout] --> src/day2.rs:23:8 [INFO] [stdout] | [INFO] [stdout] 22 | impl Report { [INFO] [stdout] | ----------- associated items in this implementation [INFO] [stdout] 23 | fn from_line(line: &str) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 31 | fn is_safe(&self) -> bool { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 64 | fn invalid_index(&self, skip: Option) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 104 | fn is_safe_with_toleration(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part1` is never used [INFO] [stdout] --> src/day2.rs:144:8 [INFO] [stdout] | [INFO] [stdout] 144 | pub fn part1(inputs: &str) -> u16 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part2` is never used [INFO] [stdout] --> src/day2.rs:149:8 [INFO] [stdout] | [INFO] [stdout] 149 | pub fn part2(inputs: &str) -> u16 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `InstructionParser` is never constructed [INFO] [stdout] --> src/day3.rs:3:12 [INFO] [stdout] | [INFO] [stdout] 3 | pub struct InstructionParser<'a> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_1_to_3_digits` is never used [INFO] [stdout] --> src/day3.rs:14:4 [INFO] [stdout] | [INFO] [stdout] 14 | fn parse_1_to_3_digits(input: &[u8], cursor: usize) -> Option<(u16, usize)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `get_do_instruction`, `get_dont_instruction`, and `try_get_single_instruction` are never used [INFO] [stdout] --> src/day3.rs:45:12 [INFO] [stdout] | [INFO] [stdout] 44 | impl<'a> InstructionParser<'a> { [INFO] [stdout] | ------------------------------ associated items in this implementation [INFO] [stdout] 45 | pub fn new(input: &'a str, parse_enabled: bool) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 55 | fn get_do_instruction(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 66 | fn get_dont_instruction(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 80 | fn try_get_single_instruction(&mut self) -> Option<(u32, usize)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part1` is never used [INFO] [stdout] --> src/day3.rs:149:8 [INFO] [stdout] | [INFO] [stdout] 149 | pub fn part1(input: &str) -> u32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part2` is never used [INFO] [stdout] --> src/day3.rs:154:8 [INFO] [stdout] | [INFO] [stdout] 154 | pub fn part2(input: &str) -> u32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part1` is never used [INFO] [stdout] --> src/day4.rs:2:8 [INFO] [stdout] | [INFO] [stdout] 2 | pub fn part1(input: &str) -> u32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part2` is never used [INFO] [stdout] --> src/day4.rs:73:8 [INFO] [stdout] | [INFO] [stdout] 73 | pub fn part2(input: &str) -> u32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `OrderingRule` is never constructed [INFO] [stdout] --> src/day5.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct OrderingRule { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `OrderingRules` is never constructed [INFO] [stdout] --> src/day5.rs:31:12 [INFO] [stdout] | [INFO] [stdout] 31 | pub struct OrderingRules { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `from_ordering_rules_slice`, `convert_ordering_rule`, and `exists` are never used [INFO] [stdout] --> src/day5.rs:37:8 [INFO] [stdout] | [INFO] [stdout] 36 | impl OrderingRules { [INFO] [stdout] | ------------------ associated items in this implementation [INFO] [stdout] 37 | fn from_ordering_rules_slice(ordering_rules: &[OrderingRule]) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 46 | fn convert_ordering_rule(rule: &OrderingRule) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 50 | fn exists(&self, rule: &OrderingRule) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PageUpdate` is never constructed [INFO] [stdout] --> src/day5.rs:63:12 [INFO] [stdout] | [INFO] [stdout] 63 | pub struct PageUpdate { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `convert_update_to_right_order` is never used [INFO] [stdout] --> src/day5.rs:76:4 [INFO] [stdout] | [INFO] [stdout] 76 | fn convert_update_to_right_order(update: PageUpdate, ordering_rules: &OrderingRules) -> PageUpdate { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_in_right_order`, `middle`, and `convert_to_right_order` are never used [INFO] [stdout] --> src/day5.rs:103:8 [INFO] [stdout] | [INFO] [stdout] 102 | impl PageUpdate { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] 103 | fn is_in_right_order(&self, ordering_rules: &OrderingRules) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 120 | fn middle(&self) -> u8 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 125 | fn convert_to_right_order(&self, ordering_rules: &OrderingRules) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SafetyManual` is never constructed [INFO] [stdout] --> src/day5.rs:134:12 [INFO] [stdout] | [INFO] [stdout] 134 | pub struct SafetyManual { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part1` is never used [INFO] [stdout] --> src/day5.rs:165:8 [INFO] [stdout] | [INFO] [stdout] 165 | pub fn part1(input: &str) -> u32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part2` is never used [INFO] [stdout] --> src/day5.rs:176:8 [INFO] [stdout] | [INFO] [stdout] 176 | pub fn part2(input: &str) -> u32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `MapItem` is never used [INFO] [stdout] --> src/day6.rs:4:6 [INFO] [stdout] | [INFO] [stdout] 4 | enum MapItem { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Direction` is never used [INFO] [stdout] --> src/day6.rs:32:6 [INFO] [stdout] | [INFO] [stdout] 32 | enum Direction { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Grid` is never constructed [INFO] [stdout] --> src/day6.rs:40:8 [INFO] [stdout] | [INFO] [stdout] 40 | struct Grid { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `move_guard` is never used [INFO] [stdout] --> src/day6.rs:88:8 [INFO] [stdout] | [INFO] [stdout] 87 | impl Grid { [INFO] [stdout] | --------- method in this implementation [INFO] [stdout] 88 | fn move_guard(&mut self) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part1` is never used [INFO] [stdout] --> src/day6.rs:138:8 [INFO] [stdout] | [INFO] [stdout] 138 | pub fn part1(input: &str) -> u32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `try_find_single_loop` is never used [INFO] [stdout] --> src/day6.rs:150:4 [INFO] [stdout] | [INFO] [stdout] 150 | fn try_find_single_loop(grid: &Grid, position: (usize, usize)) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part2` is never used [INFO] [stdout] --> src/day6.rs:187:8 [INFO] [stdout] | [INFO] [stdout] 187 | pub fn part2(input: &str) -> u32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Op` is never used [INFO] [stdout] --> src/day7.rs:5:6 [INFO] [stdout] | [INFO] [stdout] 5 | enum Op { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Equation` is never constructed [INFO] [stdout] --> src/day7.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct Equation { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_satisfiable` and `is_satisfiable_with_concat` are never used [INFO] [stdout] --> src/day7.rs:33:8 [INFO] [stdout] | [INFO] [stdout] 32 | impl Equation { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] 33 | fn is_satisfiable(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 54 | fn is_satisfiable_with_concat(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part1` is never used [INFO] [stdout] --> src/day7.rs:86:8 [INFO] [stdout] | [INFO] [stdout] 86 | pub fn part1(input: &str) -> u64 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part2` is never used [INFO] [stdout] --> src/day7.rs:95:8 [INFO] [stdout] | [INFO] [stdout] 95 | pub fn part2(input: &str) -> u64 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Antenna` is never constructed [INFO] [stdout] --> src/day8.rs:12:8 [INFO] [stdout] | [INFO] [stdout] 12 | struct Antenna { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_num_with_inc_until_max` is never used [INFO] [stdout] --> src/day8.rs:17:4 [INFO] [stdout] | [INFO] [stdout] 17 | fn get_num_with_inc_until_max(num: i16, max: i16, diff: i16) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_num_with_dec_until_min` is never used [INFO] [stdout] --> src/day8.rs:28:4 [INFO] [stdout] | [INFO] [stdout] 28 | fn get_num_with_dec_until_min(num: i16, min: i16, diff: i16) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_antinodes` and `get_antinodes_any_distance` are never used [INFO] [stdout] --> src/day8.rs:40:8 [INFO] [stdout] | [INFO] [stdout] 39 | impl Antenna { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] 40 | fn get_antinodes( [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 97 | fn get_antinodes_any_distance( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AntennaGrid` is never constructed [INFO] [stdout] --> src/day8.rs:143:8 [INFO] [stdout] | [INFO] [stdout] 143 | struct AntennaGrid { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `find_antinodes` and `find_antinodes_any_distance` are never used [INFO] [stdout] --> src/day8.rs:150:8 [INFO] [stdout] | [INFO] [stdout] 149 | impl AntennaGrid { [INFO] [stdout] | ---------------- methods in this implementation [INFO] [stdout] 150 | fn find_antinodes(&self) -> HashSet { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 169 | fn find_antinodes_any_distance(&self) -> HashSet { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part1` is never used [INFO] [stdout] --> src/day8.rs:215:8 [INFO] [stdout] | [INFO] [stdout] 215 | pub fn part1(input: &str) -> usize { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part2` is never used [INFO] [stdout] --> src/day8.rs:221:8 [INFO] [stdout] | [INFO] [stdout] 221 | pub fn part2(input: &str) -> usize { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `DiskEntry` is never used [INFO] [stdout] --> src/day9.rs:4:6 [INFO] [stdout] | [INFO] [stdout] 4 | enum DiskEntry { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MemoryMap` is never constructed [INFO] [stdout] --> src/day9.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 9 | struct MemoryMap { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_packed` is never used [INFO] [stdout] --> src/day9.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 13 | impl MemoryMap { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] 14 | fn from_packed(packed: &str) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part1` is never used [INFO] [stdout] --> src/day9.rs:51:8 [INFO] [stdout] | [INFO] [stdout] 51 | pub fn part1(input: &str) -> usize { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `BlocksAndIndex` is never constructed [INFO] [stdout] --> src/day9.rs:95:8 [INFO] [stdout] | [INFO] [stdout] 95 | struct BlocksAndIndex { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `display_blocks` is never used [INFO] [stdout] --> src/day9.rs:101:4 [INFO] [stdout] | [INFO] [stdout] 101 | fn display_blocks(blocks: &[BlocksAndIndex]) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MemoryMapOptimized` is never constructed [INFO] [stdout] --> src/day9.rs:119:8 [INFO] [stdout] | [INFO] [stdout] 119 | struct MemoryMapOptimized { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `from_packed` and `move_files` are never used [INFO] [stdout] --> src/day9.rs:125:8 [INFO] [stdout] | [INFO] [stdout] 124 | impl MemoryMapOptimized { [INFO] [stdout] | ----------------------- associated items in this implementation [INFO] [stdout] 125 | fn from_packed(packed: &str) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 151 | fn move_files(mut self) -> Vec { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part2` is never used [INFO] [stdout] --> src/day9.rs:191:8 [INFO] [stdout] | [INFO] [stdout] 191 | pub fn part2(input: &str) -> usize { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result [INFO] [stdout] --> src/day5.rs:16:53 [INFO] [stdout] | [INFO] [stdout] 16 | fn from_str(s: &str) -> Result { [INFO] [stdout] | _____________________________________________________^ [INFO] [stdout] 17 | | let mut it = s.split("|").fuse(); [INFO] [stdout] 18 | | let before = it.next().unwrap().parse().unwrap(); [INFO] [stdout] 19 | | let after = it.next().unwrap().parse().unwrap(); [INFO] [stdout] 20 | | Ok(Self { before, after }) [INFO] [stdout] 21 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = note: requested on the command line with `-D unmustuse-in-always-ok` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result [INFO] [stdout] --> src/day5.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 20 | Ok(Self { before, after }) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result [INFO] [stdout] --> src/day5.rs:70:53 [INFO] [stdout] | [INFO] [stdout] 70 | fn from_str(s: &str) -> Result { [INFO] [stdout] | _____________________________________________________^ [INFO] [stdout] 71 | | let pages = s.split(",").map(|x| x.parse().unwrap()).collect(); [INFO] [stdout] 72 | | Ok(Self { pages }) [INFO] [stdout] 73 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result [INFO] [stdout] --> src/day5.rs:72:9 [INFO] [stdout] | [INFO] [stdout] 72 | Ok(Self { pages }) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result [INFO] [stdout] --> src/day5.rs:142:53 [INFO] [stdout] | [INFO] [stdout] 142 | fn from_str(s: &str) -> Result { [INFO] [stdout] | _____________________________________________________^ [INFO] [stdout] 143 | | let mut parsing_ordering = true; [INFO] [stdout] 144 | | let mut ordering_rules = Vec::new(); [INFO] [stdout] 145 | | let mut update = Vec::new(); [INFO] [stdout] ... | [INFO] [stdout] 161 | | }) [INFO] [stdout] 162 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result [INFO] [stdout] --> src/day5.rs:152:37 [INFO] [stdout] | [INFO] [stdout] 152 | ordering_rules.push(line.parse().unwrap()); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result [INFO] [stdout] --> src/day5.rs:154:29 [INFO] [stdout] | [INFO] [stdout] 154 | update.push(line.parse().unwrap()); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result [INFO] [stdout] --> src/day5.rs:158:9 [INFO] [stdout] | [INFO] [stdout] 158 | / Ok(Self { [INFO] [stdout] 159 | | ordering_rules: ordering_rules.into(), [INFO] [stdout] 160 | | update, [INFO] [stdout] 161 | | }) [INFO] [stdout] | |__________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result [INFO] [stdout] --> src/day5.rs:166:32 [INFO] [stdout] | [INFO] [stdout] 166 | let manual: SafetyManual = input.parse().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result [INFO] [stdout] --> src/day5.rs:177:32 [INFO] [stdout] | [INFO] [stdout] 177 | let manual: SafetyManual = input.parse().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result [INFO] [stdout] --> src/day6.rs:63:53 [INFO] [stdout] | [INFO] [stdout] 63 | fn from_str(s: &str) -> Result { [INFO] [stdout] | _____________________________________________________^ [INFO] [stdout] 64 | | let mut rows = Vec::new(); [INFO] [stdout] 65 | | let mut guard_start_position = None; [INFO] [stdout] 66 | | for (row_index, line) in s.lines().enumerate() { [INFO] [stdout] ... | [INFO] [stdout] 83 | | }) [INFO] [stdout] 84 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result [INFO] [stdout] --> src/day6.rs:79:9 [INFO] [stdout] | [INFO] [stdout] 79 | / Ok(Self { [INFO] [stdout] 80 | | rows, [INFO] [stdout] 81 | | guard_position: guard_start_position.unwrap(), [INFO] [stdout] 82 | | guard_direction: Direction::Up, [INFO] [stdout] 83 | | }) [INFO] [stdout] | |__________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result [INFO] [stdout] --> src/day6.rs:139:26 [INFO] [stdout] | [INFO] [stdout] 139 | let mut grid: Grid = input.parse().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result [INFO] [stdout] --> src/day6.rs:188:22 [INFO] [stdout] | [INFO] [stdout] 188 | let grid: Grid = input.parse().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result [INFO] [stdout] --> src/day7.rs:19:53 [INFO] [stdout] | [INFO] [stdout] 19 | fn from_str(s: &str) -> Result { [INFO] [stdout] | _____________________________________________________^ [INFO] [stdout] 20 | | let mut it = s.split(": ").fuse(); [INFO] [stdout] 21 | | let result = it.next().unwrap().parse().unwrap(); [INFO] [stdout] 22 | | let numbers = it [INFO] [stdout] ... | [INFO] [stdout] 28 | | Ok(Self { result, numbers }) [INFO] [stdout] 29 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result [INFO] [stdout] --> src/day7.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 28 | Ok(Self { result, numbers }) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result [INFO] [stdout] --> src/day7.rs:87:61 [INFO] [stdout] | [INFO] [stdout] 87 | let equations: Vec = input.lines().map(|line| line.parse().unwrap()).collect(); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result [INFO] [stdout] --> src/day7.rs:96:61 [INFO] [stdout] | [INFO] [stdout] 96 | let equations: Vec = input.lines().map(|line| line.parse().unwrap()).collect(); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result [INFO] [stdout] --> src/day8.rs:185:53 [INFO] [stdout] | [INFO] [stdout] 185 | fn from_str(s: &str) -> Result { [INFO] [stdout] | _____________________________________________________^ [INFO] [stdout] 186 | | let mut num_rows = 0; [INFO] [stdout] 187 | | let mut num_columns = 0; [INFO] [stdout] 188 | | let mut antenas = HashMap::new(); [INFO] [stdout] ... | [INFO] [stdout] 211 | | }) [INFO] [stdout] 212 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result [INFO] [stdout] --> src/day8.rs:207:9 [INFO] [stdout] | [INFO] [stdout] 207 | / Ok(Self { [INFO] [stdout] 208 | | num_rows, [INFO] [stdout] 209 | | num_columns, [INFO] [stdout] 210 | | antenas, [INFO] [stdout] 211 | | }) [INFO] [stdout] | |__________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result [INFO] [stdout] --> src/day8.rs:216:29 [INFO] [stdout] | [INFO] [stdout] 216 | let grid: AntennaGrid = input.parse().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result [INFO] [stdout] --> src/day8.rs:222:29 [INFO] [stdout] | [INFO] [stdout] 222 | let grid: AntennaGrid = input.parse().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `aoc-rs-2024` (bin "aoc-rs-2024") due to 22 previous errors; 72 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] warning: enum `DiskEntry` is never used [INFO] [stdout] --> src/day9.rs:4:6 [INFO] [stdout] | [INFO] [stdout] 4 | enum DiskEntry { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MemoryMap` is never constructed [INFO] [stdout] --> src/day9.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 9 | struct MemoryMap { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_packed` is never used [INFO] [stdout] --> src/day9.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 13 | impl MemoryMap { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] 14 | fn from_packed(packed: &str) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `part1` is never used [INFO] [stdout] --> src/day9.rs:51:8 [INFO] [stdout] | [INFO] [stdout] 51 | pub fn part1(input: &str) -> usize { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `display_blocks` is never used [INFO] [stdout] --> src/day9.rs:101:4 [INFO] [stdout] | [INFO] [stdout] 101 | fn display_blocks(blocks: &[BlocksAndIndex]) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result [INFO] [stdout] --> src/day5.rs:16:53 [INFO] [stdout] | [INFO] [stdout] 16 | fn from_str(s: &str) -> Result { [INFO] [stdout] | _____________________________________________________^ [INFO] [stdout] 17 | | let mut it = s.split("|").fuse(); [INFO] [stdout] 18 | | let before = it.next().unwrap().parse().unwrap(); [INFO] [stdout] 19 | | let after = it.next().unwrap().parse().unwrap(); [INFO] [stdout] 20 | | Ok(Self { before, after }) [INFO] [stdout] 21 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = note: requested on the command line with `-D unmustuse-in-always-ok` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result [INFO] [stdout] --> src/day5.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 20 | Ok(Self { before, after }) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result [INFO] [stdout] --> src/day5.rs:70:53 [INFO] [stdout] | [INFO] [stdout] 70 | fn from_str(s: &str) -> Result { [INFO] [stdout] | _____________________________________________________^ [INFO] [stdout] 71 | | let pages = s.split(",").map(|x| x.parse().unwrap()).collect(); [INFO] [stdout] 72 | | Ok(Self { pages }) [INFO] [stdout] 73 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result [INFO] [stdout] --> src/day5.rs:72:9 [INFO] [stdout] | [INFO] [stdout] 72 | Ok(Self { pages }) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result [INFO] [stdout] --> src/day5.rs:142:53 [INFO] [stdout] | [INFO] [stdout] 142 | fn from_str(s: &str) -> Result { [INFO] [stdout] | _____________________________________________________^ [INFO] [stdout] 143 | | let mut parsing_ordering = true; [INFO] [stdout] 144 | | let mut ordering_rules = Vec::new(); [INFO] [stdout] 145 | | let mut update = Vec::new(); [INFO] [stdout] ... | [INFO] [stdout] 161 | | }) [INFO] [stdout] 162 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result [INFO] [stdout] --> src/day5.rs:152:37 [INFO] [stdout] | [INFO] [stdout] 152 | ordering_rules.push(line.parse().unwrap()); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result [INFO] [stdout] --> src/day5.rs:154:29 [INFO] [stdout] | [INFO] [stdout] 154 | update.push(line.parse().unwrap()); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result [INFO] [stdout] --> src/day5.rs:158:9 [INFO] [stdout] | [INFO] [stdout] 158 | / Ok(Self { [INFO] [stdout] 159 | | ordering_rules: ordering_rules.into(), [INFO] [stdout] 160 | | update, [INFO] [stdout] 161 | | }) [INFO] [stdout] | |__________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result [INFO] [stdout] --> src/day5.rs:166:32 [INFO] [stdout] | [INFO] [stdout] 166 | let manual: SafetyManual = input.parse().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result [INFO] [stdout] --> src/day5.rs:177:32 [INFO] [stdout] | [INFO] [stdout] 177 | let manual: SafetyManual = input.parse().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result [INFO] [stdout] --> src/day6.rs:63:53 [INFO] [stdout] | [INFO] [stdout] 63 | fn from_str(s: &str) -> Result { [INFO] [stdout] | _____________________________________________________^ [INFO] [stdout] 64 | | let mut rows = Vec::new(); [INFO] [stdout] 65 | | let mut guard_start_position = None; [INFO] [stdout] 66 | | for (row_index, line) in s.lines().enumerate() { [INFO] [stdout] ... | [INFO] [stdout] 83 | | }) [INFO] [stdout] 84 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result [INFO] [stdout] --> src/day6.rs:79:9 [INFO] [stdout] | [INFO] [stdout] 79 | / Ok(Self { [INFO] [stdout] 80 | | rows, [INFO] [stdout] 81 | | guard_position: guard_start_position.unwrap(), [INFO] [stdout] 82 | | guard_direction: Direction::Up, [INFO] [stdout] 83 | | }) [INFO] [stdout] | |__________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result [INFO] [stdout] --> src/day6.rs:139:26 [INFO] [stdout] | [INFO] [stdout] 139 | let mut grid: Grid = input.parse().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result [INFO] [stdout] --> src/day6.rs:188:22 [INFO] [stdout] | [INFO] [stdout] 188 | let grid: Grid = input.parse().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result [INFO] [stdout] --> src/day7.rs:19:53 [INFO] [stdout] | [INFO] [stdout] 19 | fn from_str(s: &str) -> Result { [INFO] [stdout] | _____________________________________________________^ [INFO] [stdout] 20 | | let mut it = s.split(": ").fuse(); [INFO] [stdout] 21 | | let result = it.next().unwrap().parse().unwrap(); [INFO] [stdout] 22 | | let numbers = it [INFO] [stdout] ... | [INFO] [stdout] 28 | | Ok(Self { result, numbers }) [INFO] [stdout] 29 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result [INFO] [stdout] --> src/day7.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 28 | Ok(Self { result, numbers }) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result [INFO] [stdout] --> src/day7.rs:87:61 [INFO] [stdout] | [INFO] [stdout] 87 | let equations: Vec = input.lines().map(|line| line.parse().unwrap()).collect(); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result [INFO] [stdout] --> src/day7.rs:96:61 [INFO] [stdout] | [INFO] [stdout] 96 | let equations: Vec = input.lines().map(|line| line.parse().unwrap()).collect(); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result [INFO] [stdout] --> src/day8.rs:185:53 [INFO] [stdout] | [INFO] [stdout] 185 | fn from_str(s: &str) -> Result { [INFO] [stdout] | _____________________________________________________^ [INFO] [stdout] 186 | | let mut num_rows = 0; [INFO] [stdout] 187 | | let mut num_columns = 0; [INFO] [stdout] 188 | | let mut antenas = HashMap::new(); [INFO] [stdout] ... | [INFO] [stdout] 211 | | }) [INFO] [stdout] 212 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result [INFO] [stdout] --> src/day8.rs:207:9 [INFO] [stdout] | [INFO] [stdout] 207 | / Ok(Self { [INFO] [stdout] 208 | | num_rows, [INFO] [stdout] 209 | | num_columns, [INFO] [stdout] 210 | | antenas, [INFO] [stdout] 211 | | }) [INFO] [stdout] | |__________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result [INFO] [stdout] --> src/day8.rs:216:29 [INFO] [stdout] | [INFO] [stdout] 216 | let grid: AntennaGrid = input.parse().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result [INFO] [stdout] --> src/day8.rs:222:29 [INFO] [stdout] | [INFO] [stdout] 222 | let grid: AntennaGrid = input.parse().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `aoc-rs-2024` (bin "aoc-rs-2024" test) due to 22 previous errors; 10 warnings emitted [INFO] running `Command { std: "docker" "inspect" "ecfab7500092438d44a3fa9ce3490645f7f904155d177a5864795cdc298bc505", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ecfab7500092438d44a3fa9ce3490645f7f904155d177a5864795cdc298bc505", kill_on_drop: false }` [INFO] [stdout] ecfab7500092438d44a3fa9ce3490645f7f904155d177a5864795cdc298bc505