[INFO] cloning repository https://github.com/gnome-skillet/aoc-2024
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/gnome-skillet/aoc-2024" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgnome-skillet%2Faoc-2024", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgnome-skillet%2Faoc-2024'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] f603b05e58bd72be49aa2b376d9e5b5214844051
[INFO] testing gnome-skillet/aoc-2024 against master#2fd6efc32704647e64d3d646d21c4c68eae100e4 for pr-149852-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgnome-skillet%2Faoc-2024" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-7-tc1/source/.cargo/config.toml
[INFO] removed /workspace/builds/worker-7-tc1/source/rust-toolchain.toml
[INFO] started tweaking git repo https://github.com/gnome-skillet/aoc-2024
[INFO] finished tweaking git repo https://github.com/gnome-skillet/aoc-2024
[INFO] tweaked toml for git repo https://github.com/gnome-skillet/aoc-2024 written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/gnome-skillet/aoc-2024 on toolchain 2fd6efc32704647e64d3d646d21c4c68eae100e4
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/gnome-skillet/aoc-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" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded enum_dispatch v0.3.13
[INFO] [stderr]   Downloaded env_filter v0.1.2
[INFO] [stderr]   Downloaded env_logger v0.11.5
[INFO] [stderr]   Downloaded anstyle-wincon v3.0.6
[INFO] [stderr]   Downloaded clap v4.5.23
[INFO] [stderr]   Downloaded relative-path v1.9.3
[INFO] [stderr]   Downloaded rstest v0.23.0
[INFO] [stderr]   Downloaded rstest_macros v0.23.0
[INFO] [stderr]   Downloaded clap_builder v4.5.23
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] c7898484d6cedbcf847a567a880619de17c5296d4683781640ab3ee5c85cce7e
[INFO] running `Command { std: "docker" "start" "-a" "c7898484d6cedbcf847a567a880619de17c5296d4683781640ab3ee5c85cce7e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c7898484d6cedbcf847a567a880619de17c5296d4683781640ab3ee5c85cce7e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c7898484d6cedbcf847a567a880619de17c5296d4683781640ab3ee5c85cce7e", kill_on_drop: false }`
[INFO] [stdout] c7898484d6cedbcf847a567a880619de17c5296d4683781640ab3ee5c85cce7e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 4810809e6a85be68671a9af9c87b1fb08ee4b0f806ef4c54aa0c4ffa1bcb4cd2
[INFO] running `Command { std: "docker" "start" "-a" "4810809e6a85be68671a9af9c87b1fb08ee4b0f806ef4c54aa0c4ffa1bcb4cd2", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.92
[INFO] [stderr]    Compiling unicode-ident v1.0.14
[INFO] [stderr]    Compiling regex-syntax v0.8.5
[INFO] [stderr]    Compiling semver v1.0.23
[INFO] [stderr]    Compiling indexmap v2.7.0
[INFO] [stderr]    Compiling futures-core v0.3.31
[INFO] [stderr]    Compiling anstyle-parse v0.2.6
[INFO] [stderr]    Compiling colorchoice v1.0.3
[INFO] [stderr]    Compiling is_terminal_polyfill v1.70.1
[INFO] [stderr]    Compiling memchr v2.7.4
[INFO] [stderr]    Compiling anstyle v1.0.10
[INFO] [stderr]    Compiling futures-sink v0.3.31
[INFO] [stderr]    Compiling anstyle-query v1.1.2
[INFO] [stderr]    Compiling aho-corasick v1.1.3
[INFO] [stderr]    Compiling futures-channel v0.3.31
[INFO] [stderr]    Compiling rustc_version v0.4.1
[INFO] [stderr]    Compiling anstream v0.6.18
[INFO] [stderr]    Compiling winnow v0.6.20
[INFO] [stderr]    Compiling pin-project-lite v0.2.15
[INFO] [stderr]    Compiling toml_datetime v0.6.8
[INFO] [stderr]    Compiling futures-io v0.3.31
[INFO] [stderr]    Compiling rstest_macros v0.23.0
[INFO] [stderr]    Compiling clap_lex v0.7.4
[INFO] [stderr]    Compiling rustversion v1.0.18
[INFO] [stderr]    Compiling quote v1.0.37
[INFO] [stderr]    Compiling clap_builder v4.5.23
[INFO] [stderr]    Compiling relative-path v1.9.3
[INFO] [stderr]    Compiling cfg-if v1.0.0
[INFO] [stderr]    Compiling log v0.4.22
[INFO] [stderr]    Compiling syn v2.0.90
[INFO] [stderr]    Compiling glob v0.3.1
[INFO] [stderr]    Compiling once_cell v1.20.2
[INFO] [stderr]    Compiling portable-atomic v1.10.0
[INFO] [stderr]    Compiling futures-timer v3.0.3
[INFO] [stderr]    Compiling toml_edit v0.22.22
[INFO] [stderr]    Compiling fixedbitset v0.4.2
[INFO] [stderr]    Compiling minimal-lexical v0.2.1
[INFO] [stderr]    Compiling regex-automata v0.4.9
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling petgraph v0.6.5
[INFO] [stderr]    Compiling proc-macro-crate v3.2.0
[INFO] [stderr]    Compiling regex v1.11.1
[INFO] [stderr]    Compiling env_filter v0.1.2
[INFO] [stderr]    Compiling strum v0.26.3
[INFO] [stderr]    Compiling env_logger v0.11.5
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling clap_derive v4.5.18
[INFO] [stderr]    Compiling enum_dispatch v0.3.13
[INFO] [stderr]    Compiling strum_macros v0.26.4
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling clap v4.5.23
[INFO] [stderr]    Compiling xtask v0.1.0 (/opt/rustwide/workdir/xtask)
[INFO] [stderr]    Compiling futures-executor v0.3.31
[INFO] [stderr]    Compiling futures v0.3.31
[INFO] [stderr]    Compiling rstest v0.23.0
[INFO] [stderr]    Compiling aoc v0.1.0 (/opt/rustwide/workdir/aoc)
[INFO] [stdout] warning: unused imports: `debug` and `info`
[INFO] [stdout]  --> aoc/src/commands/day15.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use log::{debug, info};
[INFO] [stdout]   |           ^^^^^  ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: impl trait in impl method signature does not match trait method signature
[INFO] [stdout]   --> aoc/src/commands/day20.rs:73:73
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn neighborhood(&self, nrows: usize, ncols: usize) -> impl Iterator;
[INFO] [stdout]    |                                                           ------------- return type from trait method defined here
[INFO] [stdout] ...
[INFO] [stdout] 73 |     fn neighborhood(&self, nrows: usize, ncols: usize) -> impl Iterator<Item = (usize, usize)> {
[INFO] [stdout]    |                                                                         ^^^^^^^^^^^^^^^^^^^^^ this bound is stronger than that defined on the trait
[INFO] [stdout]    |
[INFO] [stdout]    = note: add `#[allow(refining_impl_trait)]` if it is intended for this to be part of the public API of this crate
[INFO] [stdout]    = note: we are soliciting feedback, see issue #121718 <https://github.com/rust-lang/rust/issues/121718> for more information
[INFO] [stdout]    = note: `#[warn(refining_impl_trait_reachable)]` (part of `#[warn(refining_impl_trait)]`) on by default
[INFO] [stdout] help: replace the return type so that it matches the trait
[INFO] [stdout]    |
[INFO] [stdout] 73 -     fn neighborhood(&self, nrows: usize, ncols: usize) -> impl Iterator<Item = (usize, usize)> {
[INFO] [stdout] 73 +     fn neighborhood(&self, nrows: usize, ncols: usize) -> impl Iterator {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: impl trait in impl method signature does not match trait method signature
[INFO] [stdout]   --> aoc/src/commands/day20.rs:93:24
[INFO] [stdout]    |
[INFO] [stdout] 67 |     fn cheats(&self, nrows: usize, ncols: usize, cheat_duration: usize) -> impl Iterator;
[INFO] [stdout]    |                                                                            ------------- return type from trait method defined here
[INFO] [stdout] ...
[INFO] [stdout] 93 |     ) -> impl Iterator<Item = Point> {
[INFO] [stdout]    |                        ^^^^^^^^^^^^ this bound is stronger than that defined on the trait
[INFO] [stdout]    |
[INFO] [stdout]    = note: add `#[allow(refining_impl_trait)]` if it is intended for this to be part of the public API of this crate
[INFO] [stdout]    = note: we are soliciting feedback, see issue #121718 <https://github.com/rust-lang/rust/issues/121718> for more information
[INFO] [stdout] help: replace the return type so that it matches the trait
[INFO] [stdout]    |
[INFO] [stdout] 93 -     ) -> impl Iterator<Item = Point> {
[INFO] [stdout] 93 +     ) -> impl Iterator {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> aoc/src/commands/day15.rs:57:13
[INFO] [stdout]    |
[INFO] [stdout] 57 |             _ => panic!(),
[INFO] [stdout]    |             ^ no value can reach this
[INFO] [stdout]    |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]   --> aoc/src/commands/day15.rs:57:13
[INFO] [stdout]    |
[INFO] [stdout] 51 |             Object::Space => '.',
[INFO] [stdout]    |             ------------- matches some of the same values
[INFO] [stdout] 52 |             Object::BoxLeft => '[',
[INFO] [stdout]    |             --------------- matches some of the same values
[INFO] [stdout] 53 |             Object::BoxRight => ']',
[INFO] [stdout]    |             ---------------- matches some of the same values
[INFO] [stdout] 54 |             Object::Box => 'O',
[INFO] [stdout]    |             ----------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 57 |             _ => panic!(),
[INFO] [stdout]    |             ^ ...and 2 other patterns collectively make this unreachable
[INFO] [stdout]    = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> aoc/src/commands/day15.rs:131:47
[INFO] [stdout]     |
[INFO] [stdout] 131 |     fn vertical_move(&mut self, d: Direction, i: usize) {
[INFO] [stdout]     |                                               ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `show_robot_position` and `show_rows` are never used
[INFO] [stdout]    --> aoc/src/commands/day15.rs:118:8
[INFO] [stdout]     |
[INFO] [stdout] 117 | impl Grid {
[INFO] [stdout]     | --------- methods in this implementation
[INFO] [stdout] 118 |     fn show_robot_position(&self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 122 |     fn show_rows(&self) {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `move_steps` and `move_arm` are never used
[INFO] [stdout]   --> aoc/src/commands/day21.rs:28:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl DirectionalKey {
[INFO] [stdout]    | ------------------- methods in this implementation
[INFO] [stdout] 28 |     fn move_steps(&self) -> (i32, i32) {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     fn move_arm(&mut self, other: &DirectionalKey) -> DirectionalKey {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 10s
[INFO] running `Command { std: "docker" "inspect" "4810809e6a85be68671a9af9c87b1fb08ee4b0f806ef4c54aa0c4ffa1bcb4cd2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4810809e6a85be68671a9af9c87b1fb08ee4b0f806ef4c54aa0c4ffa1bcb4cd2", kill_on_drop: false }`
[INFO] [stdout] 4810809e6a85be68671a9af9c87b1fb08ee4b0f806ef4c54aa0c4ffa1bcb4cd2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e492d2d4cac5f768c86b96857c509565e7b38cecdfd459464a056bfbe4fe8e37
[INFO] running `Command { std: "docker" "start" "-a" "e492d2d4cac5f768c86b96857c509565e7b38cecdfd459464a056bfbe4fe8e37", kill_on_drop: false }`
[INFO] [stderr]    Compiling xtask v0.1.0 (/opt/rustwide/workdir/xtask)
[INFO] [stderr]    Compiling aoc v0.1.0 (/opt/rustwide/workdir/aoc)
[INFO] [stdout] warning: unused imports: `debug` and `info`
[INFO] [stdout]  --> aoc/src/commands/day15.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use log::{debug, info};
[INFO] [stdout]   |           ^^^^^  ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: impl trait in impl method signature does not match trait method signature
[INFO] [stdout]   --> aoc/src/commands/day20.rs:73:73
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn neighborhood(&self, nrows: usize, ncols: usize) -> impl Iterator;
[INFO] [stdout]    |                                                           ------------- return type from trait method defined here
[INFO] [stdout] ...
[INFO] [stdout] 73 |     fn neighborhood(&self, nrows: usize, ncols: usize) -> impl Iterator<Item = (usize, usize)> {
[INFO] [stdout]    |                                                                         ^^^^^^^^^^^^^^^^^^^^^ this bound is stronger than that defined on the trait
[INFO] [stdout]    |
[INFO] [stdout]    = note: add `#[allow(refining_impl_trait)]` if it is intended for this to be part of the public API of this crate
[INFO] [stdout]    = note: we are soliciting feedback, see issue #121718 <https://github.com/rust-lang/rust/issues/121718> for more information
[INFO] [stdout]    = note: `#[warn(refining_impl_trait_reachable)]` (part of `#[warn(refining_impl_trait)]`) on by default
[INFO] [stdout] help: replace the return type so that it matches the trait
[INFO] [stdout]    |
[INFO] [stdout] 73 -     fn neighborhood(&self, nrows: usize, ncols: usize) -> impl Iterator<Item = (usize, usize)> {
[INFO] [stdout] 73 +     fn neighborhood(&self, nrows: usize, ncols: usize) -> impl Iterator {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: impl trait in impl method signature does not match trait method signature
[INFO] [stdout]   --> aoc/src/commands/day20.rs:93:24
[INFO] [stdout]    |
[INFO] [stdout] 67 |     fn cheats(&self, nrows: usize, ncols: usize, cheat_duration: usize) -> impl Iterator;
[INFO] [stdout]    |                                                                            ------------- return type from trait method defined here
[INFO] [stdout] ...
[INFO] [stdout] 93 |     ) -> impl Iterator<Item = Point> {
[INFO] [stdout]    |                        ^^^^^^^^^^^^ this bound is stronger than that defined on the trait
[INFO] [stdout]    |
[INFO] [stdout]    = note: add `#[allow(refining_impl_trait)]` if it is intended for this to be part of the public API of this crate
[INFO] [stdout]    = note: we are soliciting feedback, see issue #121718 <https://github.com/rust-lang/rust/issues/121718> for more information
[INFO] [stdout] help: replace the return type so that it matches the trait
[INFO] [stdout]    |
[INFO] [stdout] 93 -     ) -> impl Iterator<Item = Point> {
[INFO] [stdout] 93 +     ) -> impl Iterator {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> aoc/src/commands/day15.rs:57:13
[INFO] [stdout]    |
[INFO] [stdout] 57 |             _ => panic!(),
[INFO] [stdout]    |             ^ no value can reach this
[INFO] [stdout]    |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]   --> aoc/src/commands/day15.rs:57:13
[INFO] [stdout]    |
[INFO] [stdout] 51 |             Object::Space => '.',
[INFO] [stdout]    |             ------------- matches some of the same values
[INFO] [stdout] 52 |             Object::BoxLeft => '[',
[INFO] [stdout]    |             --------------- matches some of the same values
[INFO] [stdout] 53 |             Object::BoxRight => ']',
[INFO] [stdout]    |             ---------------- matches some of the same values
[INFO] [stdout] 54 |             Object::Box => 'O',
[INFO] [stdout]    |             ----------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 57 |             _ => panic!(),
[INFO] [stdout]    |             ^ ...and 2 other patterns collectively make this unreachable
[INFO] [stdout]    = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> aoc/src/commands/day15.rs:131:47
[INFO] [stdout]     |
[INFO] [stdout] 131 |     fn vertical_move(&mut self, d: Direction, i: usize) {
[INFO] [stdout]     |                                               ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `show_robot_position` and `show_rows` are never used
[INFO] [stdout]    --> aoc/src/commands/day15.rs:118:8
[INFO] [stdout]     |
[INFO] [stdout] 117 | impl Grid {
[INFO] [stdout]     | --------- methods in this implementation
[INFO] [stdout] 118 |     fn show_robot_position(&self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 122 |     fn show_rows(&self) {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `move_steps` and `move_arm` are never used
[INFO] [stdout]   --> aoc/src/commands/day21.rs:28:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl DirectionalKey {
[INFO] [stdout]    | ------------------- methods in this implementation
[INFO] [stdout] 28 |     fn move_steps(&self) -> (i32, i32) {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     fn move_arm(&mut self, other: &DirectionalKey) -> DirectionalKey {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 3.24s
[INFO] running `Command { std: "docker" "inspect" "e492d2d4cac5f768c86b96857c509565e7b38cecdfd459464a056bfbe4fe8e37", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e492d2d4cac5f768c86b96857c509565e7b38cecdfd459464a056bfbe4fe8e37", kill_on_drop: false }`
[INFO] [stdout] e492d2d4cac5f768c86b96857c509565e7b38cecdfd459464a056bfbe4fe8e37
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 1efc3eb11e609d6104618d09f01f4904b36a3f2a8b17bdf0ba3a86b1fb8807c8
[INFO] running `Command { std: "docker" "start" "-a" "1efc3eb11e609d6104618d09f01f4904b36a3f2a8b17bdf0ba3a86b1fb8807c8", kill_on_drop: false }`
[INFO] [stderr] warning: unused imports: `debug` and `info`
[INFO] [stderr]  --> aoc/src/commands/day15.rs:1:11
[INFO] [stderr]   |
[INFO] [stderr] 1 | use log::{debug, info};
[INFO] [stderr]   |           ^^^^^  ^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: impl trait in impl method signature does not match trait method signature
[INFO] [stderr]   --> aoc/src/commands/day20.rs:73:73
[INFO] [stderr]    |
[INFO] [stderr] 62 |     fn neighborhood(&self, nrows: usize, ncols: usize) -> impl Iterator;
[INFO] [stderr]    |                                                           ------------- return type from trait method defined here
[INFO] [stderr] ...
[INFO] [stderr] 73 |     fn neighborhood(&self, nrows: usize, ncols: usize) -> impl Iterator<Item = (usize, usize)> {
[INFO] [stderr]    |                                                                         ^^^^^^^^^^^^^^^^^^^^^ this bound is stronger than that defined on the trait
[INFO] [stderr]    |
[INFO] [stderr]    = note: add `#[allow(refining_impl_trait)]` if it is intended for this to be part of the public API of this crate
[INFO] [stderr]    = note: we are soliciting feedback, see issue #121718 <https://github.com/rust-lang/rust/issues/121718> for more information
[INFO] [stderr]    = note: `#[warn(refining_impl_trait_reachable)]` (part of `#[warn(refining_impl_trait)]`) on by default
[INFO] [stderr] help: replace the return type so that it matches the trait
[INFO] [stderr]    |
[INFO] [stderr] 73 -     fn neighborhood(&self, nrows: usize, ncols: usize) -> impl Iterator<Item = (usize, usize)> {
[INFO] [stderr] 73 +     fn neighborhood(&self, nrows: usize, ncols: usize) -> impl Iterator {
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: impl trait in impl method signature does not match trait method signature
[INFO] [stderr]   --> aoc/src/commands/day20.rs:93:24
[INFO] [stderr]    |
[INFO] [stderr] 67 |     fn cheats(&self, nrows: usize, ncols: usize, cheat_duration: usize) -> impl Iterator;
[INFO] [stderr]    |                                                                            ------------- return type from trait method defined here
[INFO] [stderr] ...
[INFO] [stderr] 93 |     ) -> impl Iterator<Item = Point> {
[INFO] [stderr]    |                        ^^^^^^^^^^^^ this bound is stronger than that defined on the trait
[INFO] [stderr]    |
[INFO] [stderr]    = note: add `#[allow(refining_impl_trait)]` if it is intended for this to be part of the public API of this crate
[INFO] [stderr]    = note: we are soliciting feedback, see issue #121718 <https://github.com/rust-lang/rust/issues/121718> for more information
[INFO] [stderr] help: replace the return type so that it matches the trait
[INFO] [stderr]    |
[INFO] [stderr] 93 -     ) -> impl Iterator<Item = Point> {
[INFO] [stderr] 93 +     ) -> impl Iterator {
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]   --> aoc/src/commands/day15.rs:57:13
[INFO] [stderr]    |
[INFO] [stderr] 57 |             _ => panic!(),
[INFO] [stderr]    |             ^ no value can reach this
[INFO] [stderr]    |
[INFO] [stderr] note: multiple earlier patterns match some of the same values
[INFO] [stderr]   --> aoc/src/commands/day15.rs:57:13
[INFO] [stderr]    |
[INFO] [stderr] 51 |             Object::Space => '.',
[INFO] [stderr]    |             ------------- matches some of the same values
[INFO] [stderr] 52 |             Object::BoxLeft => '[',
[INFO] [stderr]    |             --------------- matches some of the same values
[INFO] [stderr] 53 |             Object::BoxRight => ']',
[INFO] [stderr]    |             ---------------- matches some of the same values
[INFO] [stderr] 54 |             Object::Box => 'O',
[INFO] [stderr]    |             ----------- matches some of the same values
[INFO] [stderr] ...
[INFO] [stderr] 57 |             _ => panic!(),
[INFO] [stderr]    |             ^ ...and 2 other patterns collectively make this unreachable
[INFO] [stderr]    = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `i`
[INFO] [stderr]    --> aoc/src/commands/day15.rs:131:47
[INFO] [stderr]     |
[INFO] [stderr] 131 |     fn vertical_move(&mut self, d: Direction, i: usize) {
[INFO] [stderr]     |                                               ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: methods `show_robot_position` and `show_rows` are never used
[INFO] [stderr]    --> aoc/src/commands/day15.rs:118:8
[INFO] [stderr]     |
[INFO] [stderr] 117 | impl Grid {
[INFO] [stderr]     | --------- methods in this implementation
[INFO] [stderr] 118 |     fn show_robot_position(&self) {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 122 |     fn show_rows(&self) {
[INFO] [stderr]     |        ^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: methods `move_steps` and `move_arm` are never used
[INFO] [stderr]   --> aoc/src/commands/day21.rs:28:8
[INFO] [stderr]    |
[INFO] [stderr] 27 | impl DirectionalKey {
[INFO] [stderr]    | ------------------- methods in this implementation
[INFO] [stderr] 28 |     fn move_steps(&self) -> (i32, i32) {
[INFO] [stderr]    |        ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 39 |     fn move_arm(&mut self, other: &DirectionalKey) -> DirectionalKey {
[INFO] [stderr]    |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `aoc` (bin "aoc" test) generated 7 warnings (run `cargo fix --bin "aoc" -p aoc --tests` to apply 2 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.24s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/aoc-aaf6dcb5b26aaf18)
[INFO] [stdout] 
[INFO] [stdout] running 28 tests
[INFO] [stdout] test commands::day13::test::test_parse_button ... ok
[INFO] [stdout] test commands::day13::test::test_parse_x ... ok
[INFO] [stdout] test commands::day13::test::test_parse_buttons ... ok
[INFO] [stdout] test commands::day13::test::test_prize ... ok
[INFO] [stdout] test commands::day13::test::test_parse_y ... ok
[INFO] [stdout] test commands::day14::test::test_parse_point ... ok
[INFO] [stdout] test commands::day14::test::test_parse_point_negative ... ok
[INFO] [stdout] test commands::day17::test::test_parse_command ... ok
[INFO] [stdout] test commands::day22::test::test_div_floor::case_1 ... ok
[INFO] [stdout] test commands::day17::test::test_parse_register ... ok
[INFO] [stdout] test commands::day14::test::test_parse_robots ... ok
[INFO] [stdout] test commands::day14::test::test_parse_robot ... ok
[INFO] [stdout] test commands::day22::test::test_mutate::case_3 ... ok
[INFO] [stdout] test commands::day22::test::test_div_floor::case_2 ... ok
[INFO] [stdout] test commands::day22::test::test_first_sequence ... ok
[INFO] [stdout] test commands::day22::test::test_mix::case_1 ... ok
[INFO] [stdout] test commands::day22::test::test_mutate::case_2 ... ok
[INFO] [stdout] test commands::day21::test::test_numerical_distance ... ok
[INFO] [stdout] test commands::day22::test::test_prune::case_1 ... ok
[INFO] [stdout] test commands::day22::test::test_mutate::case_1 ... ok
[INFO] [stdout] test commands::day25::test::test_first_key ... ok
[INFO] [stdout] test commands::day2a::test::test_slices ... ok
[INFO] [stdout] test commands::day7a::test::test_parse_test::case_1 ... ok
[INFO] [stdout] test commands::day5a::test::test_parse_point ... ok
[INFO] [stdout] test commands::day22::test::test_mutate::case_4 ... ok
[INFO] [stdout] test commands::day25::test::test_first_lock ... ok
[INFO] [stdout] test commands::day25::test::test_second_lock ... ok
[INFO] [stderr] error: test failed, to rerun pass `-p aoc --bin aoc`
[INFO] [stdout] test commands::day21::test::test_direction_distance ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- commands::day21::test::test_direction_distance stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'commands::day21::test::test_direction_distance' (28) panicked at aoc/src/commands/day21.rs:444:9:
[INFO] [stdout] assertion `left == right` failed
[INFO] [stdout]   left: Left(2)
[INFO] [stdout]  right: Down(1)
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5955f2f399d2 - std[716c9a7a72e5c14e]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5955f2f399d2 - std[716c9a7a72e5c14e]::backtrace_rs::backtrace::trace_unsynchronized::<std[716c9a7a72e5c14e]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5955f2f399d2 - std[716c9a7a72e5c14e]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5955f2f399d2 - <<std[716c9a7a72e5c14e]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[c5ed12ab89cc536a]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5955f2f4e34a - <core[c5ed12ab89cc536a]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5955f2f4e34a - core[c5ed12ab89cc536a]::fmt::write
[INFO] [stdout]    6:     0x5955f2f3e806 - std[716c9a7a72e5c14e]::io::default_write_fmt::<alloc[9c68fdf4f4f29218]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5955f2f3e806 - <alloc[9c68fdf4f4f29218]::vec::Vec<u8> as std[716c9a7a72e5c14e]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5955f2f17dbf - <std[716c9a7a72e5c14e]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5955f2f17dbf - std[716c9a7a72e5c14e]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5955f2f31bd9 - std[716c9a7a72e5c14e]::panicking::default_hook
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5955f2ec605e - <alloc[9c68fdf4f4f29218]::boxed::Box<dyn for<'a, 'b> core[c5ed12ab89cc536a]::ops::function::Fn<(&'a std[716c9a7a72e5c14e]::panic::PanicHookInfo<'b>,), Output = ()> + core[c5ed12ab89cc536a]::marker::Sync + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::Fn<(&std[716c9a7a72e5c14e]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x5955f2ec605e - test[64760d2bdea328cc]::test_main_with_exit_callback::<test[64760d2bdea328cc]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5955f2f31d92 - <alloc[9c68fdf4f4f29218]::boxed::Box<dyn for<'a, 'b> core[c5ed12ab89cc536a]::ops::function::Fn<(&'a std[716c9a7a72e5c14e]::panic::PanicHookInfo<'b>,), Output = ()> + core[c5ed12ab89cc536a]::marker::Sync + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::Fn<(&std[716c9a7a72e5c14e]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x5955f2f31d92 - std[716c9a7a72e5c14e]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5955f2f17e78 - std[716c9a7a72e5c14e]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5955f2f0f849 - std[716c9a7a72e5c14e]::sys::backtrace::__rust_end_short_backtrace::<std[716c9a7a72e5c14e]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5955f2f18ccd - __rustc[4f0b026143eab78e]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5955f2f4ea8c - core[c5ed12ab89cc536a]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5955f2f4e913 - core[c5ed12ab89cc536a]::panicking::assert_failed_inner
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panicking.rs:439:17
[INFO] [stdout]   20:     0x5955f2eb47b6 - core[c5ed12ab89cc536a]::panicking::assert_failed::<aoc[4bb5fafca56461cc]::commands::day21::Direction, aoc[4bb5fafca56461cc]::commands::day21::Direction>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panicking.rs:394:5
[INFO] [stdout]   21:     0x5955f2e9fa53 - aoc[4bb5fafca56461cc]::commands::day21::test::test_direction_distance
[INFO] [stdout]                                at /opt/rustwide/workdir/aoc/src/commands/day21.rs:444:9
[INFO] [stdout]   22:     0x5955f2e9da17 - aoc[4bb5fafca56461cc]::commands::day21::test::test_direction_distance::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/aoc/src/commands/day21.rs:440:37
[INFO] [stdout]   23:     0x5955f2eb9d26 - <aoc[4bb5fafca56461cc]::commands::day21::test::test_direction_distance::{closure#0} as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x5955f2eba40b - <fn() -> core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x5955f2eba40b - test[64760d2bdea328cc]::__rust_begin_short_backtrace::<core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>, fn() -> core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:663:18
[INFO] [stdout]   26:     0x5955f2ec6c6a - test[64760d2bdea328cc]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:686:74
[INFO] [stdout]   27:     0x5955f2ec6c6a - <core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<test[64760d2bdea328cc]::run_test_in_process::{closure#0}> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   28:     0x5955f2ec6c6a - std[716c9a7a72e5c14e]::panicking::catch_unwind::do_call::<core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<test[64760d2bdea328cc]::run_test_in_process::{closure#0}>, core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:581:40
[INFO] [stdout]   29:     0x5955f2ec6c6a - std[716c9a7a72e5c14e]::panicking::catch_unwind::<core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>, core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<test[64760d2bdea328cc]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:544:19
[INFO] [stdout]   30:     0x5955f2ec6c6a - std[716c9a7a72e5c14e]::panic::catch_unwind::<core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<test[64760d2bdea328cc]::run_test_in_process::{closure#0}>, core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x5955f2ec6c6a - test[64760d2bdea328cc]::run_test_in_process
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:686:27
[INFO] [stdout]   32:     0x5955f2ec6c6a - test[64760d2bdea328cc]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:607:43
[INFO] [stdout]   33:     0x5955f2ec1134 - test[64760d2bdea328cc]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:637:41
[INFO] [stdout]   34:     0x5955f2ec1134 - std[716c9a7a72e5c14e]::sys::backtrace::__rust_begin_short_backtrace::<test[64760d2bdea328cc]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   35:     0x5955f2ec9762 - std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked::<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   36:     0x5955f2ec9762 - <core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   37:     0x5955f2ec9762 - std[716c9a7a72e5c14e]::panicking::catch_unwind::do_call::<core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:581:40
[INFO] [stdout]   38:     0x5955f2ec9762 - std[716c9a7a72e5c14e]::panicking::catch_unwind::<(), core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:544:19
[INFO] [stdout]   39:     0x5955f2ec9762 - std[716c9a7a72e5c14e]::panic::catch_unwind::<core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panic.rs:359:14
[INFO] [stdout]   40:     0x5955f2ec9762 - std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked::<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   41:     0x5955f2ec9762 - <std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1} as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x5955f2f3927f - <alloc[9c68fdf4f4f29218]::boxed::Box<dyn core[c5ed12ab89cc536a]::ops::function::FnOnce<(), Output = ()> + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   43:     0x5955f2f3927f - <std[716c9a7a72e5c14e]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/thread/unix.rs:119:17
[INFO] [stdout]   44:     0x70beb0031aa4 - <unknown>
[INFO] [stdout]   45:     0x70beb00bea64 - clone
[INFO] [stdout]   46:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     commands::day21::test::test_direction_distance
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 27 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.13s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "1efc3eb11e609d6104618d09f01f4904b36a3f2a8b17bdf0ba3a86b1fb8807c8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1efc3eb11e609d6104618d09f01f4904b36a3f2a8b17bdf0ba3a86b1fb8807c8", kill_on_drop: false }`
[INFO] [stdout] 1efc3eb11e609d6104618d09f01f4904b36a3f2a8b17bdf0ba3a86b1fb8807c8
