[INFO] cloning repository https://github.com/kvnvelasco/advent-of-code-2020
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/kvnvelasco/advent-of-code-2020" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkvnvelasco%2Fadvent-of-code-2020", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkvnvelasco%2Fadvent-of-code-2020'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 4b999e256cbb51485db94193dc1c195f0e1c681f
[INFO] checking kvnvelasco/advent-of-code-2020 against e5e97e3ef0ee95d34bea49cdac051ed1bbac01df for pr-158759-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkvnvelasco%2Fadvent-of-code-2020" "/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/kvnvelasco/advent-of-code-2020
[INFO] finished tweaking git repo https://github.com/kvnvelasco/advent-of-code-2020
[INFO] tweaked toml for git repo https://github.com/kvnvelasco/advent-of-code-2020 written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/kvnvelasco/advent-of-code-2020 on toolchain e5e97e3ef0ee95d34bea49cdac051ed1bbac01df
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+e5e97e3ef0ee95d34bea49cdac051ed1bbac01df" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/kvnvelasco/advent-of-code-2020 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" "+e5e97e3ef0ee95d34bea49cdac051ed1bbac01df" "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:3d5ced03c013a94a2f102a4510f48a6e9184255caf5fd8244f58017bde7f5210" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] e17e82f1bcf5cb4b0a6cfaea69d8fdb013d7fae6baf73c8b550c2abd74e32a3e
[INFO] running `Command { std: "docker" "start" "e17e82f1bcf5cb4b0a6cfaea69d8fdb013d7fae6baf73c8b550c2abd74e32a3e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e17e82f1bcf5cb4b0a6cfaea69d8fdb013d7fae6baf73c8b550c2abd74e32a3e", 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" "e17e82f1bcf5cb4b0a6cfaea69d8fdb013d7fae6baf73c8b550c2abd74e32a3e" "/opt/rustwide/cargo-home/bin/cargo" "+e5e97e3ef0ee95d34bea49cdac051ed1bbac01df" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e17e82f1bcf5cb4b0a6cfaea69d8fdb013d7fae6baf73c8b550c2abd74e32a3e", 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" "e17e82f1bcf5cb4b0a6cfaea69d8fdb013d7fae6baf73c8b550c2abd74e32a3e" "/opt/rustwide/cargo-home/bin/cargo" "+e5e97e3ef0ee95d34bea49cdac051ed1bbac01df" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling unindent v0.1.7
[INFO] [stderr]    Compiling indoc v1.0.3
[INFO] [stderr]     Checking advent-of-code-2020 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> src/main.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Add` and `Deref`
[INFO] [stdout]  --> src/day_ten.rs:6:16
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::ops::{Add, AddAssign, Deref};
[INFO] [stdout]   |                ^^^             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::borrow::Borrow`
[INFO] [stdout]  --> src/day_ten.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::borrow::Borrow;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> src/main.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Add` and `Deref`
[INFO] [stdout]  --> src/day_ten.rs:6:16
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::ops::{Add, AddAssign, Deref};
[INFO] [stdout]   |                ^^^             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]   --> src/day_four.rs:70:21
[INFO] [stdout]    |
[INFO] [stdout] 70 |                 (Ok(value @ 150..=193), unit @ "cm") | (Ok(value @ 59..=76), unit @ "in") => true,
[INFO] [stdout]    |                     ^^^^^                                  ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: if this is intentional, prefix it with an underscore
[INFO] [stdout]    |
[INFO] [stdout] 70 |                 (Ok(_value @ 150..=193), unit @ "cm") | (Ok(_value @ 59..=76), unit @ "in") => true,
[INFO] [stdout]    |                     +                                       +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `unit`
[INFO] [stdout]   --> src/day_four.rs:70:41
[INFO] [stdout]    |
[INFO] [stdout] 70 |                 (Ok(value @ 150..=193), unit @ "cm") | (Ok(value @ 59..=76), unit @ "in") => true,
[INFO] [stdout]    |                                         ^^^^                                 ^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: if this is intentional, prefix it with an underscore
[INFO] [stdout]    |
[INFO] [stdout] 70 |                 (Ok(value @ 150..=193), _unit @ "cm") | (Ok(value @ 59..=76), _unit @ "in") => true,
[INFO] [stdout]    |                                         +                                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `split_once_at` is never used
[INFO] [stdout]  --> src/utils.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn split_once_at(source: &'static str, pattern: &'static str) -> (&'static str, &'static str) {
[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 `split_into_array_by` is never used
[INFO] [stdout]   --> src/utils.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub fn split_into_array_by<'a>(source: &'a str, delimiter: &'static str) -> Vec<&'a str> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_input_into_vec_str` is never used
[INFO] [stdout]   --> src/utils.rs:29:8
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub fn parse_input_into_vec_str(input: &'static str) -> Vec<&'static str> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Op` is never used
[INFO] [stdout]  --> src/day_eight.rs:6:6
[INFO] [stdout]   |
[INFO] [stdout] 6 | enum Op {
[INFO] [stdout]   |      ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Program` is never constructed
[INFO] [stdout]   --> src/day_eight.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | struct Program {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Instruction` is never constructed
[INFO] [stdout]   --> src/day_eight.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | struct Instruction {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `parse_from_text` is never used
[INFO] [stdout]   --> src/day_eight.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | impl Instruction {
[INFO] [stdout]    | ---------------- associated function in this implementation
[INFO] [stdout] 26 |     fn parse_from_text(source: &'static str) -> Self {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `parse_from_text`, `reset_program`, `program_step`, `execute`, and `self_debug` are never used
[INFO] [stdout]    --> src/day_eight.rs:43:8
[INFO] [stdout]     |
[INFO] [stdout]  42 | impl Program {
[INFO] [stdout]     | ------------ associated items in this implementation
[INFO] [stdout]  43 |     fn parse_from_text(source: &'static str) -> Self {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  53 |     fn reset_program(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  62 |     fn program_step(&mut self) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  88 |     fn execute(&mut self) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 |     fn self_debug(mut self) -> Self {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Finder` is never constructed
[INFO] [stdout]  --> src/day_five.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | struct Finder(Range<u8>);
[INFO] [stdout]   |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_seat_row_number` is never used
[INFO] [stdout]  --> src/day_five.rs:7:4
[INFO] [stdout]   |
[INFO] [stdout] 7 | fn find_seat_row_number(source: &str) -> u8 {
[INFO] [stdout]   |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_column_number` is never used
[INFO] [stdout]   --> src/day_five.rs:26:4
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn find_column_number(source: &str) -> u8 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `process_boarding_pass` is never used
[INFO] [stdout]   --> src/day_five.rs:45:4
[INFO] [stdout]    |
[INFO] [stdout] 45 | fn process_boarding_pass(pass: &str) -> (u8, u8) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Field` is never used
[INFO] [stdout]   --> src/day_four.rs:10:6
[INFO] [stdout]    |
[INFO] [stdout] 10 | enum Field<'a> {
[INFO] [stdout]    |      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `from_string_field`, `type_representation`, and `validate` are never used
[INFO] [stdout]   --> src/day_four.rs:34:8
[INFO] [stdout]    |
[INFO] [stdout] 33 | impl<'a> Field<'a> {
[INFO] [stdout]    | ------------------ associated items in this implementation
[INFO] [stdout] 34 |     fn from_string_field(source: &'static str) -> Option<Self> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 51 |     fn type_representation(&self) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 64 |     fn validate(&self) -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Passport` is never constructed
[INFO] [stdout]   --> src/day_four.rs:87:8
[INFO] [stdout]    |
[INFO] [stdout] 87 | struct Passport<'a> {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `validate` and `validate_with_field_validation` are never used
[INFO] [stdout]    --> src/day_four.rs:92:8
[INFO] [stdout]     |
[INFO] [stdout]  91 | impl<'a> Passport<'a> {
[INFO] [stdout]     | --------------------- methods in this implementation
[INFO] [stdout]  92 |     fn validate(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 105 |     fn validate_with_field_validation(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_passport_batch` is never used
[INFO] [stdout]    --> src/day_four.rs:121:4
[INFO] [stdout]     |
[INFO] [stdout] 121 | fn parse_passport_batch(source: &'static str) -> Vec<Passport> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `XmasData` is never constructed
[INFO] [stdout]  --> src/day_nine.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | struct XmasData {
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `find_first_invalid_data_point` and `find_contiguous_section_with_sum` are never used
[INFO] [stdout]   --> src/day_nine.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl XmasData {
[INFO] [stdout]    | ------------- methods in this implementation
[INFO] [stdout] 12 |     fn find_first_invalid_data_point(&self) -> Option<isize> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |     fn find_contiguous_section_with_sum(&self, target: isize) -> Range<usize> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `a` is never used
[INFO] [stdout]  --> src/day_one.rs:4:4
[INFO] [stdout]   |
[INFO] [stdout] 4 | fn a() -> Result<usize, Box<dyn Error>> {
[INFO] [stdout]   |    ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `b` is never used
[INFO] [stdout]   --> src/day_one.rs:30:4
[INFO] [stdout]    |
[INFO] [stdout] 30 | fn b() -> Result<usize, Box<dyn Error>> {
[INFO] [stdout]    |    ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_pair_of_numbers_with_sum_in_list` is never used
[INFO] [stdout]   --> src/day_one.rs:64:8
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub fn find_pair_of_numbers_with_sum_in_list<'a>(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `a_optimal` is never used
[INFO] [stdout]   --> src/day_one.rs:80:8
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub fn a_optimal() {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `InputLine` is never constructed
[INFO] [stdout]  --> src/day_seven.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | struct InputLine {
[INFO] [stdout]   |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `contains_bag_type` is never used
[INFO] [stdout]   --> src/day_seven.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl InputLine {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] 12 |     // basic queries about input line internals
[INFO] [stdout] 13 |     fn contains_bag_type(&self, bag_type: &'static str) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `InputChild` is never constructed
[INFO] [stdout]   --> src/day_seven.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | struct InputChild {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_input_line` is never used
[INFO] [stdout]   --> src/day_seven.rs:28:4
[INFO] [stdout]    |
[INFO] [stdout] 28 | fn parse_input_line(input_line: &'static str) -> InputLine {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RuleSearch` is never constructed
[INFO] [stdout]   --> src/day_seven.rs:54:8
[INFO] [stdout]    |
[INFO] [stdout] 54 | struct RuleSearch {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `from_input_lines`, `search_for_all_bags_that_contain_bag`, `search_for_all_bags_that_can_eventually_contain`, `count_total_number_of_bags_from`, and `count_number_of_bags_nested_in` are never used
[INFO] [stdout]    --> src/day_seven.rs:59:8
[INFO] [stdout]     |
[INFO] [stdout]  58 | impl RuleSearch {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout]  59 |     fn from_input_lines(input_lines: impl Iterator<Item = InputLine>) -> Self {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  68 |     fn search_for_all_bags_that_contain_bag(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  82 |     fn search_for_all_bags_that_can_eventually_contain(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 108 |     fn count_total_number_of_bags_from(&self, target_bag: &'static str) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 120 |     fn count_number_of_bags_nested_in(&self, target_bag: &'static str) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GroupIterator` is never constructed
[INFO] [stdout]  --> src/day_six.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | struct GroupIterator {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/day_six.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout]  9 | impl GroupIterator {
[INFO] [stdout]    | ------------------ associated function in this implementation
[INFO] [stdout] 10 |     fn new(source: &'static str) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Group` is never constructed
[INFO] [stdout]   --> src/day_six.rs:46:8
[INFO] [stdout]    |
[INFO] [stdout] 46 | struct Group {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `determine_answer_set_for_group` is never used
[INFO] [stdout]   --> src/day_six.rs:62:4
[INFO] [stdout]    |
[INFO] [stdout] 62 | fn determine_answer_set_for_group(group: &mut Group) -> HashSet<char> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `determine_common_answer_set_for_group` is never used
[INFO] [stdout]   --> src/day_six.rs:72:4
[INFO] [stdout]    |
[INFO] [stdout] 72 | fn determine_common_answer_set_for_group(group: &mut Group) -> HashSet<char> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_deltas_for_sorted_list` is never used
[INFO] [stdout]   --> src/day_ten.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 | fn compute_deltas_for_sorted_list(input_set: &Vec<isize>) -> Vec<isize> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fold_up_differences_into_map` is never used
[INFO] [stdout]   --> src/day_ten.rs:33:4
[INFO] [stdout]    |
[INFO] [stdout] 33 | fn fold_up_differences_into_map(input: &Vec<isize>) -> HashMap<isize, isize> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chunk_nodes_by_pivot_nodes` is never used
[INFO] [stdout]   --> src/day_ten.rs:50:4
[INFO] [stdout]    |
[INFO] [stdout] 50 | fn chunk_nodes_by_pivot_nodes(source: &Vec<isize>) -> Vec<Vec<isize>> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Tile` is never used
[INFO] [stdout]  --> src/day_three.rs:4:6
[INFO] [stdout]   |
[INFO] [stdout] 4 | enum Tile {
[INFO] [stdout]   |      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ForestRow` is never constructed
[INFO] [stdout]   --> src/day_three.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | struct ForestRow {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_str` is never used
[INFO] [stdout]   --> src/day_three.rs:17:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl ForestRow {
[INFO] [stdout]    | -------------- associated function in this implementation
[INFO] [stdout] 17 |     fn from_str(source: &'static str) -> Self {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Map` is never constructed
[INFO] [stdout]   --> src/day_three.rs:44:8
[INFO] [stdout]    |
[INFO] [stdout] 44 | struct Map {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `get` and `from_string_iterator` are never used
[INFO] [stdout]   --> src/day_three.rs:49:8
[INFO] [stdout]    |
[INFO] [stdout] 48 | impl Map {
[INFO] [stdout]    | -------- associated items in this implementation
[INFO] [stdout] 49 |     fn get(&self, (x, y): (usize, usize)) -> Option<Tile> {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 53 |     fn from_string_iterator(source: impl Iterator<Item = &'static str>) -> Self {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `a` is never used
[INFO] [stdout]   --> src/day_three.rs:59:4
[INFO] [stdout]    |
[INFO] [stdout] 59 | fn a(input: impl Iterator<Item = &'static str>, (delta_x, delta_y): (usize, usize)) -> usize {
[INFO] [stdout]    |    ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `b` is never used
[INFO] [stdout]   --> src/day_three.rs:75:4
[INFO] [stdout]    |
[INFO] [stdout] 75 | fn b(source: &'static str) -> usize {
[INFO] [stdout]    |    ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Line` is never constructed
[INFO] [stdout]  --> src/day_two.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | struct Line<'a> {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `parse_from_str`, `evaluate_valid_line_incorrectly`, and `evaluate_valid_line_correctly` are never used
[INFO] [stdout]   --> src/day_two.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl<'a> Line<'a> {
[INFO] [stdout]    | ----------------- associated items in this implementation
[INFO] [stdout] 13 |     fn parse_from_str(input: &'a str) -> Result<Self, Box<dyn Error>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 49 |     fn evaluate_valid_line_incorrectly(&self) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 62 |     fn evaluate_valid_line_correctly(&self) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `a` is never used
[INFO] [stdout]   --> src/day_two.rs:77:8
[INFO] [stdout]    |
[INFO] [stdout] 77 | pub fn a(input_set: impl Iterator<Item = &'static str>) -> Result<usize, Box<dyn Error>> {
[INFO] [stdout]    |        ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `b` is never used
[INFO] [stdout]   --> src/day_two.rs:89:8
[INFO] [stdout]    |
[INFO] [stdout] 89 | pub fn b(input_set: impl Iterator<Item = &'static str>) -> Result<usize, Box<dyn Error>> {
[INFO] [stdout]    |        ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/day_four.rs:121:54
[INFO] [stdout]     |
[INFO] [stdout] 121 | fn parse_passport_batch(source: &'static str) -> Vec<Passport> {
[INFO] [stdout]     |                                  -------             ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                  |
[INFO] [stdout]     |                                  the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'static`
[INFO] [stdout]     |
[INFO] [stdout] 121 | fn parse_passport_batch(source: &'static str) -> Vec<Passport<'static>> {
[INFO] [stdout]     |                                                              +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::borrow::Borrow`
[INFO] [stdout]  --> src/day_ten.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::borrow::Borrow;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]   --> src/day_four.rs:70:21
[INFO] [stdout]    |
[INFO] [stdout] 70 |                 (Ok(value @ 150..=193), unit @ "cm") | (Ok(value @ 59..=76), unit @ "in") => true,
[INFO] [stdout]    |                     ^^^^^                                  ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: if this is intentional, prefix it with an underscore
[INFO] [stdout]    |
[INFO] [stdout] 70 |                 (Ok(_value @ 150..=193), unit @ "cm") | (Ok(_value @ 59..=76), unit @ "in") => true,
[INFO] [stdout]    |                     +                                       +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `unit`
[INFO] [stdout]   --> src/day_four.rs:70:41
[INFO] [stdout]    |
[INFO] [stdout] 70 |                 (Ok(value @ 150..=193), unit @ "cm") | (Ok(value @ 59..=76), unit @ "in") => true,
[INFO] [stdout]    |                                         ^^^^                                 ^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: if this is intentional, prefix it with an underscore
[INFO] [stdout]    |
[INFO] [stdout] 70 |                 (Ok(value @ 150..=193), _unit @ "cm") | (Ok(value @ 59..=76), _unit @ "in") => true,
[INFO] [stdout]    |                                         +                                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_input_into_vec_str` is never used
[INFO] [stdout]   --> src/utils.rs:29:8
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub fn parse_input_into_vec_str(input: &'static str) -> Vec<&'static str> {
[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 `Finder` is never constructed
[INFO] [stdout]  --> src/day_five.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | struct Finder(Range<u8>);
[INFO] [stdout]   |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/day_four.rs:18:15
[INFO] [stdout]    |
[INFO] [stdout] 18 |     CountryID(&'a str),
[INFO] [stdout]    |     --------- ^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Field` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 18 -     CountryID(&'a str),
[INFO] [stdout] 18 +     CountryID(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `a` is never used
[INFO] [stdout]  --> src/day_one.rs:4:4
[INFO] [stdout]   |
[INFO] [stdout] 4 | fn a() -> Result<usize, Box<dyn Error>> {
[INFO] [stdout]   |    ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `b` is never used
[INFO] [stdout]   --> src/day_one.rs:30:4
[INFO] [stdout]    |
[INFO] [stdout] 30 | fn b() -> Result<usize, Box<dyn Error>> {
[INFO] [stdout]    |    ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `a_optimal` is never used
[INFO] [stdout]   --> src/day_one.rs:80:8
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub fn a_optimal() {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/day_eight.rs:178:9
[INFO] [stdout]     |
[INFO] [stdout] 178 |         program.execute();
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 178 |         let _ = program.execute();
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/day_four.rs:121:54
[INFO] [stdout]     |
[INFO] [stdout] 121 | fn parse_passport_batch(source: &'static str) -> Vec<Passport> {
[INFO] [stdout]     |                                  -------             ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                  |
[INFO] [stdout]     |                                  the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'static`
[INFO] [stdout]     |
[INFO] [stdout] 121 | fn parse_passport_batch(source: &'static str) -> Vec<Passport<'static>> {
[INFO] [stdout]     |                                                              +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `b_production_Case` should have a snake case name
[INFO] [stdout]    --> src/day_three.rs:145:8
[INFO] [stdout]     |
[INFO] [stdout] 145 |     fn b_production_Case() {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `b_production_case`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.21s
[INFO] running `Command { std: "docker" "inspect" "e17e82f1bcf5cb4b0a6cfaea69d8fdb013d7fae6baf73c8b550c2abd74e32a3e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e17e82f1bcf5cb4b0a6cfaea69d8fdb013d7fae6baf73c8b550c2abd74e32a3e", kill_on_drop: false }`
[INFO] [stdout] e17e82f1bcf5cb4b0a6cfaea69d8fdb013d7fae6baf73c8b550c2abd74e32a3e
