[INFO] cloning repository https://github.com/picklenerd/advent_of_code_2018
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/picklenerd/advent_of_code_2018" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpicklenerd%2Fadvent_of_code_2018", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpicklenerd%2Fadvent_of_code_2018'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] d47848b73a5ffced978a66a2105dc76a1449dfd6
[INFO] checking picklenerd/advent_of_code_2018 against master#bca37a20bd376ce3fd138e7cdee7fe704e0f8814 for pr-139493-3
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpicklenerd%2Fadvent_of_code_2018" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/picklenerd/advent_of_code_2018
[INFO] finished tweaking git repo https://github.com/picklenerd/advent_of_code_2018
[INFO] tweaked toml for git repo https://github.com/picklenerd/advent_of_code_2018 written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/picklenerd/advent_of_code_2018 on toolchain bca37a20bd376ce3fd138e7cdee7fe704e0f8814
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/picklenerd/advent_of_code_2018 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" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 82776f412831192c71f661939229fa2f58483a4a9d3517ecdf9765efe98ef757
[INFO] running `Command { std: "docker" "start" "-a" "82776f412831192c71f661939229fa2f58483a4a9d3517ecdf9765efe98ef757", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "82776f412831192c71f661939229fa2f58483a4a9d3517ecdf9765efe98ef757", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "82776f412831192c71f661939229fa2f58483a4a9d3517ecdf9765efe98ef757", kill_on_drop: false }`
[INFO] [stdout] 82776f412831192c71f661939229fa2f58483a4a9d3517ecdf9765efe98ef757
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b6714949135184a462f57d866a9bc72359ac3e3f3b22c5a55412957806236b7f
[INFO] running `Command { std: "docker" "start" "-a" "b6714949135184a462f57d866a9bc72359ac3e3f3b22c5a55412957806236b7f", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.44
[INFO] [stderr]    Compiling memchr v2.1.1
[INFO] [stderr]     Checking aho-corasick v0.6.9
[INFO] [stderr]     Checking regex v1.1.0
[INFO] [stderr]     Checking aoc2018 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused variable: `cmp12`
[INFO] [stdout]   --> src/challenges/day7.rs:90:29
[INFO] [stdout]    |
[INFO] [stdout] 90 |                 for (step2, cmp12) in step1_rules {
[INFO] [stdout]    |                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_cmp12`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/utils.rs:21:17
[INFO] [stdout]    |
[INFO] [stdout] 21 |             Err(e) => panic!(),
[INFO] [stdout]    |                 ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_previous` is never used
[INFO] [stdout]   --> src/main.rs:20:4
[INFO] [stdout]    |
[INFO] [stdout] 20 | fn run_previous() -> Result<()> {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `draw` is never used
[INFO] [stdout]   --> src/challenges/day3.rs:98:4
[INFO] [stdout]    |
[INFO] [stdout] 98 | fn draw(inputs: &[ElfClaim]) {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TEST_INPUT` is never used
[INFO] [stdout]    --> src/challenges/day5.rs:160:7
[INFO] [stdout]     |
[INFO] [stdout] 160 | const TEST_INPUT: &str = "dabAcCaCBAcCcaDA";
[INFO] [stdout]     |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]   --> src/main.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     challenges::day7::day7_1();
[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] 14 |     let _ = challenges::day7::day7_1();
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]   --> src/main.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     challenges::day7::day7_2();
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 15 |     let _ = challenges::day7::day7_2();
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> src/challenges/day3.rs:87:16
[INFO] [stdout]    |
[INFO] [stdout] 87 |           panic!(format!(
[INFO] [stdout]    |  ________________^
[INFO] [stdout] 88 | |             "{} possibilites remaining. Should be 1.",
[INFO] [stdout] 89 | |             possibilities.len()
[INFO] [stdout] 90 | |         ));
[INFO] [stdout]    | |_________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout]    = note: `#[warn(non_fmt_panics)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]    |
[INFO] [stdout] 87 ~         panic!(
[INFO] [stdout] 88 |             "{} possibilites remaining. Should be 1.",
[INFO] [stdout] 89 |             possibilities.len()
[INFO] [stdout] 90 ~         );
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/challenges/day5.rs:148:52
[INFO] [stdout]     |
[INFO] [stdout] 148 |         File::open(path).unwrap_or_else(|_| panic!(format!("Error opening file {}", path)));
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 148 -         File::open(path).unwrap_or_else(|_| panic!(format!("Error opening file {}", path)));
[INFO] [stdout] 148 +         File::open(path).unwrap_or_else(|_| panic!("Error opening file {}", path));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> src/utils.rs:14:60
[INFO] [stdout]    |
[INFO] [stdout] 14 |     let input = File::open(path).unwrap_or_else(|_| panic!(format!("Error opening file {}", path)));
[INFO] [stdout]    |                                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]    |
[INFO] [stdout] 14 -     let input = File::open(path).unwrap_or_else(|_| panic!(format!("Error opening file {}", path)));
[INFO] [stdout] 14 +     let input = File::open(path).unwrap_or_else(|_| panic!("Error opening file {}", path));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cmp12`
[INFO] [stdout]   --> src/challenges/day7.rs:90:29
[INFO] [stdout]    |
[INFO] [stdout] 90 |                 for (step2, cmp12) in step1_rules {
[INFO] [stdout]    |                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_cmp12`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/utils.rs:21:17
[INFO] [stdout]    |
[INFO] [stdout] 21 |             Err(e) => panic!(),
[INFO] [stdout]    |                 ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_previous` is never used
[INFO] [stdout]   --> src/main.rs:20:4
[INFO] [stdout]    |
[INFO] [stdout] 20 | fn run_previous() -> Result<()> {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `draw` is never used
[INFO] [stdout]   --> src/challenges/day3.rs:98:4
[INFO] [stdout]    |
[INFO] [stdout] 98 | fn draw(inputs: &[ElfClaim]) {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TEST_INPUT` is never used
[INFO] [stdout]    --> src/challenges/day5.rs:160:7
[INFO] [stdout]     |
[INFO] [stdout] 160 | const TEST_INPUT: &str = "dabAcCaCBAcCcaDA";
[INFO] [stdout]     |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]   --> src/main.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     challenges::day7::day7_1();
[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] 14 |     let _ = challenges::day7::day7_1();
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]   --> src/main.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     challenges::day7::day7_2();
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 15 |     let _ = challenges::day7::day7_2();
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> src/challenges/day3.rs:87:16
[INFO] [stdout]    |
[INFO] [stdout] 87 |           panic!(format!(
[INFO] [stdout]    |  ________________^
[INFO] [stdout] 88 | |             "{} possibilites remaining. Should be 1.",
[INFO] [stdout] 89 | |             possibilities.len()
[INFO] [stdout] 90 | |         ));
[INFO] [stdout]    | |_________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout]    = note: `#[warn(non_fmt_panics)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]    |
[INFO] [stdout] 87 ~         panic!(
[INFO] [stdout] 88 |             "{} possibilites remaining. Should be 1.",
[INFO] [stdout] 89 |             possibilities.len()
[INFO] [stdout] 90 ~         );
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/challenges/day5.rs:148:52
[INFO] [stdout]     |
[INFO] [stdout] 148 |         File::open(path).unwrap_or_else(|_| panic!(format!("Error opening file {}", path)));
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 148 -         File::open(path).unwrap_or_else(|_| panic!(format!("Error opening file {}", path)));
[INFO] [stdout] 148 +         File::open(path).unwrap_or_else(|_| panic!("Error opening file {}", path));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> src/utils.rs:14:60
[INFO] [stdout]    |
[INFO] [stdout] 14 |     let input = File::open(path).unwrap_or_else(|_| panic!(format!("Error opening file {}", path)));
[INFO] [stdout]    |                                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]    |
[INFO] [stdout] 14 -     let input = File::open(path).unwrap_or_else(|_| panic!(format!("Error opening file {}", path)));
[INFO] [stdout] 14 +     let input = File::open(path).unwrap_or_else(|_| panic!("Error opening file {}", path));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2.86s
[INFO] running `Command { std: "docker" "inspect" "b6714949135184a462f57d866a9bc72359ac3e3f3b22c5a55412957806236b7f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b6714949135184a462f57d866a9bc72359ac3e3f3b22c5a55412957806236b7f", kill_on_drop: false }`
[INFO] [stdout] b6714949135184a462f57d866a9bc72359ac3e3f3b22c5a55412957806236b7f
