[INFO] cloning repository https://github.com/jparkhouse/aoc-rust-2023
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/jparkhouse/aoc-rust-2023" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjparkhouse%2Faoc-rust-2023", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjparkhouse%2Faoc-rust-2023'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] a60250d0549c248ddcdba17171bf0cbb0a6b4475
[INFO] testing jparkhouse/aoc-rust-2023 against 1.99.0-beta.1+cargoflags=--release for beta-release-1.99-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjparkhouse%2Faoc-rust-2023" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/jparkhouse/aoc-rust-2023
[INFO] finished tweaking git repo https://github.com/jparkhouse/aoc-rust-2023
[INFO] tweaked toml for git repo https://github.com/jparkhouse/aoc-rust-2023 written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/jparkhouse/aoc-rust-2023 on toolchain 1.99.0-beta.1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/jparkhouse/aoc-rust-2023 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" "+1.99.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:8683fc1fc2eb5c9ac98e0d076ab094b2ffac7f99da555d2b6a2e27f346de2ec7" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] db020b1bbb49a6aeb6fb3277910982e8365785bb2452c78a34af27396ce8a044
[INFO] running `Command { std: "docker" "start" "db020b1bbb49a6aeb6fb3277910982e8365785bb2452c78a34af27396ce8a044", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "db020b1bbb49a6aeb6fb3277910982e8365785bb2452c78a34af27396ce8a044", 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" "db020b1bbb49a6aeb6fb3277910982e8365785bb2452c78a34af27396ce8a044" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "db020b1bbb49a6aeb6fb3277910982e8365785bb2452c78a34af27396ce8a044", 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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "db020b1bbb49a6aeb6fb3277910982e8365785bb2452c78a34af27396ce8a044" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.1" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.86
[INFO] [stderr]    Compiling version_check v0.9.4
[INFO] [stderr]    Compiling unicode-ident v1.0.12
[INFO] [stderr]    Compiling libc v0.2.155
[INFO] [stderr]    Compiling autocfg v1.3.0
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling cfg-if v1.0.0
[INFO] [stderr]    Compiling memchr v2.7.4
[INFO] [stderr]    Compiling once_cell v1.19.0
[INFO] [stderr]    Compiling parking_lot_core v0.9.10
[INFO] [stderr]    Compiling crossbeam-utils v0.8.20
[INFO] [stderr]    Compiling smallvec v1.13.2
[INFO] [stderr]    Compiling heck v0.4.1
[INFO] [stderr]    Compiling scopeguard v1.2.0
[INFO] [stderr]    Compiling os_str_bytes v6.6.1
[INFO] [stderr]    Compiling hashbrown v0.12.3
[INFO] [stderr]    Compiling arrayvec v0.7.4
[INFO] [stderr]    Compiling bytemuck v1.16.1
[INFO] [stderr]    Compiling bitflags v1.3.2
[INFO] [stderr]    Compiling itoa v1.0.11
[INFO] [stderr]    Compiling textwrap v0.16.1
[INFO] [stderr]    Compiling termcolor v1.4.1
[INFO] [stderr]    Compiling log v0.4.22
[INFO] [stderr]    Compiling strsim v0.10.0
[INFO] [stderr]    Compiling hashbrown v0.14.5
[INFO] [stderr]    Compiling num-format v0.4.4
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]    Compiling ahash v0.7.8
[INFO] [stderr]    Compiling clap_lex v0.2.4
[INFO] [stderr]    Compiling lock_api v0.4.12
[INFO] [stderr]    Compiling indexmap v1.9.3
[INFO] [stderr]    Compiling env_logger v0.9.3
[INFO] [stderr]    Compiling rgb v0.8.45
[INFO] [stderr]    Compiling str_stack v0.1.0
[INFO] [stderr]    Compiling lazy_static v1.5.0
[INFO] [stderr]    Compiling firestorm-core v0.1.2
[INFO] [stderr]    Compiling thiserror v1.0.62
[INFO] [stderr]    Compiling regex-syntax v0.8.4
[INFO] [stderr]    Compiling quote v1.0.36
[INFO] [stderr]    Compiling quick-xml v0.22.0
[INFO] [stderr]    Compiling aho-corasick v1.1.3
[INFO] [stderr]    Compiling atty v0.2.14
[INFO] [stderr]    Compiling getrandom v0.2.15
[INFO] [stderr]    Compiling crossbeam-channel v0.5.13
[INFO] [stderr]    Compiling num_cpus v1.16.0
[INFO] [stderr]    Compiling dashmap v5.5.3
[INFO] [stderr]    Compiling syn v2.0.70
[INFO] [stderr]    Compiling regex-automata v0.4.7
[INFO] [stderr]    Compiling thiserror-impl v1.0.62
[INFO] [stderr]    Compiling clap_derive v3.2.25
[INFO] [stderr]    Compiling clap v3.2.25
[INFO] [stderr]    Compiling regex v1.10.5
[INFO] [stderr]    Compiling inferno v0.10.12
[INFO] [stderr]    Compiling firestorm-enabled v0.3.1
[INFO] [stderr]    Compiling firestorm-enabled v0.4.3
[INFO] [stderr]    Compiling firestorm v0.3.1
[INFO] [stderr]    Compiling firestorm v0.4.6
[INFO] [stderr]    Compiling aoc-rust-2023 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> src/day_4/mod.rs:117:9
[INFO] [stdout]     |
[INFO] [stdout] 117 |     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/day_4/mod.rs:119:13
[INFO] [stdout]     |
[INFO] [stdout] 119 |         use super::*;
[INFO] [stdout]     |             ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `input`
[INFO] [stdout]   --> src/day_6/mod.rs:44:17
[INFO] [stdout]    |
[INFO] [stdout] 44 | fn solve_part_2(input: &str) -> Result<usize, String> {
[INFO] [stdout]    |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_input`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `from_map_tuple_source`, `from_map_tuple_destination`, and `contains` are never used
[INFO] [stdout]   --> src/day_5/linear_range.rs:43:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | impl LinearRange {
[INFO] [stdout]    | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 43 |     pub fn from_map_tuple_source(map_tuple: &MapTuple) -> Result<Self, LinearRangeError> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 47 |     pub fn from_map_tuple_destination(map_tuple: &MapTuple) -> Result<Self, LinearRangeError> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 59 |     pub fn contains(&self, value: usize) -> bool {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `contains`, and `get_search_direction` are never used
[INFO] [stdout]    --> src/day_5/mod.rs:290:16
[INFO] [stdout]     |
[INFO] [stdout] 289 |     impl SeedSet {
[INFO] [stdout]     |     ------------ associated items in this implementation
[INFO] [stdout] 290 |         pub fn new(start: usize, steps: usize) -> Self {
[INFO] [stdout]     |                ^^^
[INFO] [stdout] ...
[INFO] [stdout] 297 |         pub fn contains(&self, value: usize) -> bool {
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 306 |         pub fn get_search_direction(&self, value: usize) -> SearchDirection {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/day_3/mod.rs:338:44
[INFO] [stdout]     |
[INFO] [stdout] 338 | fn build_valid_gear(index: usize, numbers: &Vec<Number>) -> Option<Gear> {
[INFO] [stdout]     |                                            ^^^^^^^^^^^^            ^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            the lifetime is elided 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: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 338 | fn build_valid_gear(index: usize, numbers: &Vec<Number>) -> Option<Gear<'_>> {
[INFO] [stdout]     |                                                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `release` profile [optimized + debuginfo] target(s) in 55.59s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: quick-xml v0.22.0
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 7`
[INFO] running `Command { std: "docker" "inspect" "db020b1bbb49a6aeb6fb3277910982e8365785bb2452c78a34af27396ce8a044", 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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "db020b1bbb49a6aeb6fb3277910982e8365785bb2452c78a34af27396ce8a044" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling aoc-rust-2023 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused variable: `input`
[INFO] [stdout]   --> src/day_6/mod.rs:44:17
[INFO] [stdout]    |
[INFO] [stdout] 44 | fn solve_part_2(input: &str) -> Result<usize, String> {
[INFO] [stdout]    |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_input`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `from_map_tuple_source`, `from_map_tuple_destination`, and `contains` are never used
[INFO] [stdout]   --> src/day_5/linear_range.rs:43:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | impl LinearRange {
[INFO] [stdout]    | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 43 |     pub fn from_map_tuple_source(map_tuple: &MapTuple) -> Result<Self, LinearRangeError> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 47 |     pub fn from_map_tuple_destination(map_tuple: &MapTuple) -> Result<Self, LinearRangeError> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 59 |     pub fn contains(&self, value: usize) -> bool {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `contains`, and `get_search_direction` are never used
[INFO] [stdout]    --> src/day_5/mod.rs:290:16
[INFO] [stdout]     |
[INFO] [stdout] 289 |     impl SeedSet {
[INFO] [stdout]     |     ------------ associated items in this implementation
[INFO] [stdout] 290 |         pub fn new(start: usize, steps: usize) -> Self {
[INFO] [stdout]     |                ^^^
[INFO] [stdout] ...
[INFO] [stdout] 297 |         pub fn contains(&self, value: usize) -> bool {
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 306 |         pub fn get_search_direction(&self, value: usize) -> SearchDirection {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/day_3/mod.rs:338:44
[INFO] [stdout]     |
[INFO] [stdout] 338 | fn build_valid_gear(index: usize, numbers: &Vec<Number>) -> Option<Gear> {
[INFO] [stdout]     |                                            ^^^^^^^^^^^^            ^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            the lifetime is elided 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: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 338 | fn build_valid_gear(index: usize, numbers: &Vec<Number>) -> Option<Gear<'_>> {
[INFO] [stdout]     |                                                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `release` profile [optimized + debuginfo] target(s) in 5.25s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: quick-xml v0.22.0
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 7`
[INFO] running `Command { std: "docker" "inspect" "db020b1bbb49a6aeb6fb3277910982e8365785bb2452c78a34af27396ce8a044", 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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "db020b1bbb49a6aeb6fb3277910982e8365785bb2452c78a34af27396ce8a044" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.1" "test" "--frozen" "--release", kill_on_drop: false }`
[INFO] [stderr] warning: unused variable: `input`
[INFO] [stderr]   --> src/day_6/mod.rs:44:17
[INFO] [stderr]    |
[INFO] [stderr] 44 | fn solve_part_2(input: &str) -> Result<usize, String> {
[INFO] [stderr]    |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_input`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `from_map_tuple_source`, `from_map_tuple_destination`, and `contains` are never used
[INFO] [stderr]   --> src/day_5/linear_range.rs:43:12
[INFO] [stderr]    |
[INFO] [stderr] 29 | impl LinearRange {
[INFO] [stderr]    | ---------------- associated items in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 43 |     pub fn from_map_tuple_source(map_tuple: &MapTuple) -> Result<Self, LinearRangeError> {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 47 |     pub fn from_map_tuple_destination(map_tuple: &MapTuple) -> Result<Self, LinearRangeError> {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 59 |     pub fn contains(&self, value: usize) -> bool {
[INFO] [stderr]    |            ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `contains`, and `get_search_direction` are never used
[INFO] [stderr]    --> src/day_5/mod.rs:290:16
[INFO] [stderr]     |
[INFO] [stderr] 289 |     impl SeedSet {
[INFO] [stderr]     |     ------------ associated items in this implementation
[INFO] [stderr] 290 |         pub fn new(start: usize, steps: usize) -> Self {
[INFO] [stderr]     |                ^^^
[INFO] [stderr] ...
[INFO] [stderr] 297 |         pub fn contains(&self, value: usize) -> bool {
[INFO] [stderr]     |                ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 306 |         pub fn get_search_direction(&self, value: usize) -> SearchDirection {
[INFO] [stderr]     |                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/day_3/mod.rs:338:44
[INFO] [stderr]     |
[INFO] [stderr] 338 | fn build_valid_gear(index: usize, numbers: &Vec<Number>) -> Option<Gear> {
[INFO] [stderr]     |                                            ^^^^^^^^^^^^            ^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                                            |
[INFO] [stderr]     |                                            the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 338 | fn build_valid_gear(index: usize, numbers: &Vec<Number>) -> Option<Gear<'_>> {
[INFO] [stderr]     |                                                                        ++++
[INFO] [stderr] 
[INFO] [stderr] warning: `aoc-rust-2023` (bin "aoc-rust-2023" test) generated 4 warnings (run `cargo fix --bin "aoc-rust-2023" -p aoc-rust-2023 --tests` to apply 2 suggestions)
[INFO] [stderr]     Finished `release` profile [optimized + debuginfo] target(s) in 0.08s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: quick-xml v0.22.0
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 7`
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/release/deps/aoc_rust_2023-14f8ae310777a0ad)
[INFO] [stdout] 
[INFO] [stdout] running 47 tests
[INFO] [stdout] test day_1::tests::examples::test_worked_example_part_2 ... ok
[INFO] [stdout] test day_1::tests::test_find_all_ints::handles_examples ... ok
[INFO] [stdout] test day_1::tests::test_find_all_ints::handles_mixed_numerics_and_chars ... ok
[INFO] [stdout] test day_1::tests::examples::test_worked_example_part_1 ... ok
[INFO] [stdout] test day_1::tests::test_find_all_ints::handles_random_chars ... ok
[INFO] [stdout] test day_1::tests::test_find_all_ints::successfully_returns_numerics ... ok
[INFO] [stdout] test day_1::tests::test_find_first_int::errors_when_no_ints ... ok
[INFO] [stdout] test day_1::tests::test_find_first_int::successfully_skips_none_int ... ok
[INFO] [stdout] test day_1::tests::test_find_last_int::errors_when_no_ints ... ok
[INFO] [stdout] test day_1::tests::test_find_last_int::successfully_returns_an_int ... ok
[INFO] [stdout] test day_1::tests::test_find_all_ints::successfully_returns_strings_as_numerics ... ok
[INFO] [stdout] test day_1::tests::test_find_first_int::successfully_returns_an_int ... ok
[INFO] [stdout] test day_1::tests::test_find_first_int::only_returns_first_int ... ok
[INFO] [stdout] test day_1::tests::test_find_last_int::successfully_skips_none_int ... ok
[INFO] [stdout] test day_1::tests::test_find_last_int::only_returns_last_int ... ok
[INFO] [stdout] test day_1::tests::test_get_next_x::collects_correct_values ... ok
[INFO] [stdout] test day_1::tests::test_get_next_x::successfully_returns_x ... ok
[INFO] [stdout] test day_3::tests::test_examples::test_example_1 ... ok
[INFO] [stdout] test day_3::tests::test_examples::test_example_2 ... ok
[INFO] [stdout] test day_3::tests::test_get_machine_numbers::test_top_and_middle_row ... ok
[INFO] [stdout] test day_3::tests::test_three_row_grid::initialises_middle_only ... ok
[INFO] [stdout] test day_3::tests::test_three_row_grid::initialises_all_rows ... ok
[INFO] [stdout] test day_3::tests::test_get_machine_numbers::test_all_rows ... ok
[INFO] [stdout] test day_3::tests::test_three_row_grid::initialises_empty ... ok
[INFO] [stdout] test day_3::tests::test_get_all_numbers::finds_no_numbers ... ok
[INFO] [stdout] test day_3::tests::test_get_gear_ratios_from_all_rows::returns_correct_gear_ratio_from_second_example ... ok
[INFO] [stdout] test day_3::tests::test_get_bitmasks::returns_all_false_with_full_stops ... ok
[INFO] [stdout] test day_3::tests::test_three_row_grid::insert_bottom_row_when_all_rows_filled ... ok
[INFO] [stdout] test day_3::tests::test_three_row_grid::initialises_top_and_middle_only ... ok
[INFO] [stdout] test day_3::tests::test_three_row_grid::insert_bottom_row_when_top_and_middle_only ... ok
[INFO] [stdout] test day_3::tests::test_three_row_grid::insert_bottom_row_when_middle_only ... ok
[INFO] [stdout] test day_3::tests::test_three_row_grid::insert_next_row_when_empty ... ok
[INFO] [stdout] test day_5::tests::merge_linear_ranges_and_map_tuples::first_example_from_part_2 ... ok
[INFO] [stdout] test day_3::tests::test_get_bitmasks::finds_symbols ... ok
[INFO] [stdout] test day_6::tests::solutions_to_race_info_solves_example_1 ... ok
[INFO] [stdout] test day_3::tests::test_get_bitmasks::finds_numbers ... ok
[INFO] [stdout] test day_3::tests::test_get_all_numbers::can_find_multiple_numbers ... ok
[INFO] [stdout] test day_3::tests::test_get_all_numbers::can_find_a_number ... ok
[INFO] [stdout] test day_3::tests::test_get_gear_ratios::test_each_line_of_the_example ... ok
[INFO] [stdout] test day_3::tests::test_get_gear_ratios_from_all_rows::returns_correct_gear_ratio_from_example ... ok
[INFO] [stdout] test day_4::tests::test_calculate_part_1_card_score::test_example_1_card_1 ... ok
[INFO] [stdout] test day_4::card_parser::tests::test_parse_card ... ok
[INFO] [stdout] test day_4::tests::test_examples::test_example_1 ... ok
[INFO] [stdout] test day_3::tests::test_get_bitmasks::finds_both ... ok
[INFO] [stdout] test day_5::tests::examples::example_for_part_2 ... ok
[INFO] [stdout] test day_2::tests::examples::test_worked_example_part_2 ... ok
[INFO] [stdout] test day_2::tests::examples::test_worked_example_part_1 ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 47 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "db020b1bbb49a6aeb6fb3277910982e8365785bb2452c78a34af27396ce8a044", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "db020b1bbb49a6aeb6fb3277910982e8365785bb2452c78a34af27396ce8a044", kill_on_drop: false }`
[INFO] [stdout] db020b1bbb49a6aeb6fb3277910982e8365785bb2452c78a34af27396ce8a044
