[INFO] cloning repository https://github.com/hangj/advent-of-code
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/hangj/advent-of-code" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhangj%2Fadvent-of-code", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhangj%2Fadvent-of-code'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 5c3e06570cfb0dc5297c4661f00df01640d6d417
[INFO] checking hangj/advent-of-code against 895980e0290783bb09b1ccf1b11f14eb09b10430 for pr-160186
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhangj%2Fadvent-of-code" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/hangj/advent-of-code
[INFO] finished tweaking git repo https://github.com/hangj/advent-of-code
[INFO] tweaked toml for git repo https://github.com/hangj/advent-of-code written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/hangj/advent-of-code on toolchain 895980e0290783bb09b1ccf1b11f14eb09b10430
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+895980e0290783bb09b1ccf1b11f14eb09b10430" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/hangj/advent-of-code 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" "+895980e0290783bb09b1ccf1b11f14eb09b10430" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] f4e5a2df3d0339fd21b7f5736dea0f4940de7d0abb92b8260902bc28504ac064
[INFO] running `Command { std: "docker" "start" "f4e5a2df3d0339fd21b7f5736dea0f4940de7d0abb92b8260902bc28504ac064", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "f4e5a2df3d0339fd21b7f5736dea0f4940de7d0abb92b8260902bc28504ac064", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "f4e5a2df3d0339fd21b7f5736dea0f4940de7d0abb92b8260902bc28504ac064" "/opt/rustwide/cargo-home/bin/cargo" "+895980e0290783bb09b1ccf1b11f14eb09b10430" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "f4e5a2df3d0339fd21b7f5736dea0f4940de7d0abb92b8260902bc28504ac064", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "f4e5a2df3d0339fd21b7f5736dea0f4940de7d0abb92b8260902bc28504ac064" "/opt/rustwide/cargo-home/bin/cargo" "+895980e0290783bb09b1ccf1b11f14eb09b10430" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]     Checking adventofcode v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `HashMap`
[INFO] [stdout]  --> src/day6.rs:1:86
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{path::PathBuf, io::{BufReader, BufRead}, fs::File, collections::{VecDeque, HashMap, HashSet}};
[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: `HashMap`
[INFO] [stdout]  --> src/day6.rs:1:86
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{path::PathBuf, io::{BufReader, BufRead}, fs::File, collections::{VecDeque, HashMap, HashSet}};
[INFO] [stdout]   |                                                                                      ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/day5.rs:144:9
[INFO] [stdout]     |
[INFO] [stdout] 144 |     let mut v2 = vec![4,5,6,7,8];
[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 `day1` is never used
[INFO] [stdout]  --> src/day1.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn day1(path: PathBuf) -> std::io::Result<()> {
[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 `get_one` is never used
[INFO] [stdout]   --> src/day1.rs:40:4
[INFO] [stdout]    |
[INFO] [stdout] 40 | fn get_one(iter: &mut Lines<BufReader<File>>) -> Option<u64> {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `RockPaperScissors` is never used
[INFO] [stdout]   --> src/day2.rs:11:6
[INFO] [stdout]    |
[INFO] [stdout] 11 | enum RockPaperScissors {
[INFO] [stdout]    |      ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `GameResult` is never used
[INFO] [stdout]   --> src/day2.rs:22:6
[INFO] [stdout]    |
[INFO] [stdout] 22 | enum GameResult {
[INFO] [stdout]    |      ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_score` is never used
[INFO] [stdout]   --> src/day2.rs:29:8
[INFO] [stdout]    |
[INFO] [stdout] 28 | impl GameResult {
[INFO] [stdout]    | --------------- method in this implementation
[INFO] [stdout] 29 |     fn get_score(&self) -> u64 {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_score`, `calc_game_result`, `generate_winner`, and `generate_failer` are never used
[INFO] [stdout]   --> src/day2.rs:39:8
[INFO] [stdout]    |
[INFO] [stdout] 38 | impl RockPaperScissors {
[INFO] [stdout]    | ---------------------- methods in this implementation
[INFO] [stdout] 39 |     fn get_score(&self) -> u64 {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 47 |     fn calc_game_result(&self, opponent: &Self) -> GameResult {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 60 |     fn generate_winner(&self) -> Self {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 67 |     fn generate_failer(&self) -> Self {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day2` is never used
[INFO] [stdout]    --> src/day2.rs:139:8
[INFO] [stdout]     |
[INFO] [stdout] 139 | pub fn day2(path: &PathBuf) -> std::io::Result<()> {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part2` is never used
[INFO] [stdout]    --> src/day2.rs:168:4
[INFO] [stdout]     |
[INFO] [stdout] 168 | fn part2(path: &PathBuf) -> std::io::Result<()> {
[INFO] [stdout]     |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_one_score` is never used
[INFO] [stdout]    --> src/day2.rs:197:4
[INFO] [stdout]     |
[INFO] [stdout] 197 | fn get_one_score(iter: &mut Lines<BufReader<File>>) -> Option<u64> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Priority` is never constructed
[INFO] [stdout]  --> src/day3.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | struct Priority(u8);
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day3` is never used
[INFO] [stdout]   --> src/day3.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub fn day3(path: &PathBuf) -> std::io::Result<()> {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_group` is never used
[INFO] [stdout]   --> src/day3.rs:98:4
[INFO] [stdout]    |
[INFO] [stdout] 98 | fn get_group(iter: &mut Lines<BufReader<File>>) -> Option<[String; 3]> {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day4` is never used
[INFO] [stdout]  --> src/day4.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn day4(path: &PathBuf) -> std::io::Result<()> {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fully_contains` is never used
[INFO] [stdout]   --> src/day4.rs:45:4
[INFO] [stdout]    |
[INFO] [stdout] 45 | fn fully_contains<Idx: PartialOrd>(range1: &RangeInclusive<Idx>, range2: &RangeInclusive<Idx>) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `overlaps` is never used
[INFO] [stdout]   --> src/day4.rs:52:4
[INFO] [stdout]    |
[INFO] [stdout] 52 | fn overlaps<Idx: PartialOrd>(range1: &RangeInclusive<Idx>, range2: &RangeInclusive<Idx>) -> bool {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day5` is never used
[INFO] [stdout]  --> src/day5.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn day5(path: &PathBuf) -> std::io::Result<()> {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_matrix` is never used
[INFO] [stdout]   --> src/day5.rs:40:4
[INFO] [stdout]    |
[INFO] [stdout] 40 | fn get_matrix(iter: &mut Lines<BufReader<File>>) -> Option<Vec<Vec<char>>> {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rotate_matrix` is never used
[INFO] [stdout]   --> src/day5.rs:68:4
[INFO] [stdout]    |
[INFO] [stdout] 68 | fn rotate_matrix(matrix: Vec<Vec<char>>) -> Vec<Vec<char>> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Command` is never constructed
[INFO] [stdout]   --> src/day5.rs:84:8
[INFO] [stdout]    |
[INFO] [stdout] 84 | struct Command {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_commands` is never used
[INFO] [stdout]   --> src/day5.rs:90:4
[INFO] [stdout]    |
[INFO] [stdout] 90 | fn read_commands(iter: &mut Lines<BufReader<File>>) -> Vec<Command> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_command` is never used
[INFO] [stdout]    --> src/day5.rs:111:4
[INFO] [stdout]     |
[INFO] [stdout] 111 | fn run_command(matrix: &mut Vec<Vec<char>>, cmd: &Command) {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_command_part2` is never used
[INFO] [stdout]    --> src/day5.rs:120:4
[INFO] [stdout]     |
[INFO] [stdout] 120 | fn run_command_part2(matrix: &mut Vec<Vec<char>>, cmd: &Command) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day6` is never used
[INFO] [stdout]  --> src/day6.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn day6(path: &PathBuf) -> std::io::Result<()> {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Command` is never used
[INFO] [stdout]   --> src/day7.rs:10:6
[INFO] [stdout]    |
[INFO] [stdout] 10 | enum Command {
[INFO] [stdout]    |      ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Directory` is never constructed
[INFO] [stdout]   --> src/day7.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | struct Directory {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/day7.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | impl Directory {
[INFO] [stdout]    | -------------- associated function in this implementation
[INFO] [stdout] 26 |     fn new(cwd: PathBuf) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day7` is never used
[INFO] [stdout]   --> src/day7.rs:37:8
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub fn day7(path: &PathBuf) -> std::io::Result<()> {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calc_size` is never used
[INFO] [stdout]    --> src/day7.rs:106:4
[INFO] [stdout]     |
[INFO] [stdout] 106 | fn calc_size(path: &PathBuf, hm_directories: &HashMap<PathBuf, Directory>) -> usize {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_command` is never used
[INFO] [stdout]    --> src/day7.rs:132:4
[INFO] [stdout]     |
[INFO] [stdout] 132 | fn run_command(cmd: Command, working_directory: &mut PathBuf) {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day8` is never used
[INFO] [stdout]  --> src/day8.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn day8(path: &PathBuf) -> std::io::Result<()> {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `scenic_score` is never used
[INFO] [stdout]    --> src/day8.rs:155:4
[INFO] [stdout]     |
[INFO] [stdout] 155 | fn scenic_score(forest: &Vec<Vec<u32>>, row: usize, column: usize) -> usize {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `head` and `tail` are never read
[INFO] [stdout]   --> src/day9.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 39 | struct Rope {
[INFO] [stdout]    |        ---- fields in this struct
[INFO] [stdout] 40 |     head: (i32, i32), // x, y
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 41 |     tail: (i32, i32), // x, y
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Rope` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cb_test` is never used
[INFO] [stdout]    --> src/day9.rs:140:4
[INFO] [stdout]     |
[INFO] [stdout] 140 | fn cb_test<F>(mut cb: F) where F: FnMut(i32) {
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day1` is never used
[INFO] [stdout]  --> src/day1.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn day1(path: PathBuf) -> std::io::Result<()> {
[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 `get_one` is never used
[INFO] [stdout]   --> src/day1.rs:40:4
[INFO] [stdout]    |
[INFO] [stdout] 40 | fn get_one(iter: &mut Lines<BufReader<File>>) -> Option<u64> {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `RockPaperScissors` is never used
[INFO] [stdout]   --> src/day2.rs:11:6
[INFO] [stdout]    |
[INFO] [stdout] 11 | enum RockPaperScissors {
[INFO] [stdout]    |      ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `GameResult` is never used
[INFO] [stdout]   --> src/day2.rs:22:6
[INFO] [stdout]    |
[INFO] [stdout] 22 | enum GameResult {
[INFO] [stdout]    |      ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_score` is never used
[INFO] [stdout]   --> src/day2.rs:29:8
[INFO] [stdout]    |
[INFO] [stdout] 28 | impl GameResult {
[INFO] [stdout]    | --------------- method in this implementation
[INFO] [stdout] 29 |     fn get_score(&self) -> u64 {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_score`, `calc_game_result`, `generate_winner`, and `generate_failer` are never used
[INFO] [stdout]   --> src/day2.rs:39:8
[INFO] [stdout]    |
[INFO] [stdout] 38 | impl RockPaperScissors {
[INFO] [stdout]    | ---------------------- methods in this implementation
[INFO] [stdout] 39 |     fn get_score(&self) -> u64 {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 47 |     fn calc_game_result(&self, opponent: &Self) -> GameResult {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 60 |     fn generate_winner(&self) -> Self {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 67 |     fn generate_failer(&self) -> Self {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day2` is never used
[INFO] [stdout]    --> src/day2.rs:139:8
[INFO] [stdout]     |
[INFO] [stdout] 139 | pub fn day2(path: &PathBuf) -> std::io::Result<()> {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `part2` is never used
[INFO] [stdout]    --> src/day2.rs:168:4
[INFO] [stdout]     |
[INFO] [stdout] 168 | fn part2(path: &PathBuf) -> std::io::Result<()> {
[INFO] [stdout]     |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_one_score` is never used
[INFO] [stdout]    --> src/day2.rs:197:4
[INFO] [stdout]     |
[INFO] [stdout] 197 | fn get_one_score(iter: &mut Lines<BufReader<File>>) -> Option<u64> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Priority` is never constructed
[INFO] [stdout]  --> src/day3.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | struct Priority(u8);
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day3` is never used
[INFO] [stdout]   --> src/day3.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub fn day3(path: &PathBuf) -> std::io::Result<()> {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_group` is never used
[INFO] [stdout]   --> src/day3.rs:98:4
[INFO] [stdout]    |
[INFO] [stdout] 98 | fn get_group(iter: &mut Lines<BufReader<File>>) -> Option<[String; 3]> {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day4` is never used
[INFO] [stdout]  --> src/day4.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn day4(path: &PathBuf) -> std::io::Result<()> {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fully_contains` is never used
[INFO] [stdout]   --> src/day4.rs:45:4
[INFO] [stdout]    |
[INFO] [stdout] 45 | fn fully_contains<Idx: PartialOrd>(range1: &RangeInclusive<Idx>, range2: &RangeInclusive<Idx>) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `overlaps` is never used
[INFO] [stdout]   --> src/day4.rs:52:4
[INFO] [stdout]    |
[INFO] [stdout] 52 | fn overlaps<Idx: PartialOrd>(range1: &RangeInclusive<Idx>, range2: &RangeInclusive<Idx>) -> bool {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day5` is never used
[INFO] [stdout]  --> src/day5.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn day5(path: &PathBuf) -> std::io::Result<()> {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_matrix` is never used
[INFO] [stdout]   --> src/day5.rs:40:4
[INFO] [stdout]    |
[INFO] [stdout] 40 | fn get_matrix(iter: &mut Lines<BufReader<File>>) -> Option<Vec<Vec<char>>> {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rotate_matrix` is never used
[INFO] [stdout]   --> src/day5.rs:68:4
[INFO] [stdout]    |
[INFO] [stdout] 68 | fn rotate_matrix(matrix: Vec<Vec<char>>) -> Vec<Vec<char>> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Command` is never constructed
[INFO] [stdout]   --> src/day5.rs:84:8
[INFO] [stdout]    |
[INFO] [stdout] 84 | struct Command {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_commands` is never used
[INFO] [stdout]   --> src/day5.rs:90:4
[INFO] [stdout]    |
[INFO] [stdout] 90 | fn read_commands(iter: &mut Lines<BufReader<File>>) -> Vec<Command> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_command` is never used
[INFO] [stdout]    --> src/day5.rs:111:4
[INFO] [stdout]     |
[INFO] [stdout] 111 | fn run_command(matrix: &mut Vec<Vec<char>>, cmd: &Command) {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_command_part2` is never used
[INFO] [stdout]    --> src/day5.rs:120:4
[INFO] [stdout]     |
[INFO] [stdout] 120 | fn run_command_part2(matrix: &mut Vec<Vec<char>>, cmd: &Command) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day6` is never used
[INFO] [stdout]  --> src/day6.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn day6(path: &PathBuf) -> std::io::Result<()> {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Command` is never used
[INFO] [stdout]   --> src/day7.rs:10:6
[INFO] [stdout]    |
[INFO] [stdout] 10 | enum Command {
[INFO] [stdout]    |      ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Directory` is never constructed
[INFO] [stdout]   --> src/day7.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | struct Directory {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/day7.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | impl Directory {
[INFO] [stdout]    | -------------- associated function in this implementation
[INFO] [stdout] 26 |     fn new(cwd: PathBuf) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day7` is never used
[INFO] [stdout]   --> src/day7.rs:37:8
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub fn day7(path: &PathBuf) -> std::io::Result<()> {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calc_size` is never used
[INFO] [stdout]    --> src/day7.rs:106:4
[INFO] [stdout]     |
[INFO] [stdout] 106 | fn calc_size(path: &PathBuf, hm_directories: &HashMap<PathBuf, Directory>) -> usize {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_command` is never used
[INFO] [stdout]    --> src/day7.rs:132:4
[INFO] [stdout]     |
[INFO] [stdout] 132 | fn run_command(cmd: Command, working_directory: &mut PathBuf) {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `day8` is never used
[INFO] [stdout]  --> src/day8.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn day8(path: &PathBuf) -> std::io::Result<()> {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `scenic_score` is never used
[INFO] [stdout]    --> src/day8.rs:155:4
[INFO] [stdout]     |
[INFO] [stdout] 155 | fn scenic_score(forest: &Vec<Vec<u32>>, row: usize, column: usize) -> usize {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `head` and `tail` are never read
[INFO] [stdout]   --> src/day9.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 39 | struct Rope {
[INFO] [stdout]    |        ---- fields in this struct
[INFO] [stdout] 40 |     head: (i32, i32), // x, y
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 41 |     tail: (i32, i32), // x, y
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Rope` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.53s
[INFO] running `Command { std: "docker" "inspect" "f4e5a2df3d0339fd21b7f5736dea0f4940de7d0abb92b8260902bc28504ac064", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f4e5a2df3d0339fd21b7f5736dea0f4940de7d0abb92b8260902bc28504ac064", kill_on_drop: false }`
[INFO] [stdout] f4e5a2df3d0339fd21b7f5736dea0f4940de7d0abb92b8260902bc28504ac064
