[INFO] cloning repository https://github.com/arjovanramshorst/advent-of-code [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/arjovanramshorst/advent-of-code" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Farjovanramshorst%2Fadvent-of-code", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Farjovanramshorst%2Fadvent-of-code'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] faa27087d680fc04318a2e7916b01e5549da9b15 [INFO] checking arjovanramshorst/advent-of-code against master#fe55364329579d361b1ab565728bc033a7dba07e for pr-146013 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Farjovanramshorst%2Fadvent-of-code" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/arjovanramshorst/advent-of-code [INFO] finished tweaking git repo https://github.com/arjovanramshorst/advent-of-code [INFO] tweaked toml for git repo https://github.com/arjovanramshorst/advent-of-code written to /workspace/builds/worker-0-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/arjovanramshorst/advent-of-code on toolchain fe55364329579d361b1ab565728bc033a7dba07e [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+fe55364329579d361b1ab565728bc033a7dba07e" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/arjovanramshorst/advent-of-code already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+fe55364329579d361b1ab565728bc033a7dba07e" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+fe55364329579d361b1ab565728bc033a7dba07e" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] d534f25702fc392cf52f1e1154e0b7eae6e346461f4132723de28459c6145ee5 [INFO] running `Command { std: "docker" "start" "-a" "d534f25702fc392cf52f1e1154e0b7eae6e346461f4132723de28459c6145ee5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "d534f25702fc392cf52f1e1154e0b7eae6e346461f4132723de28459c6145ee5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d534f25702fc392cf52f1e1154e0b7eae6e346461f4132723de28459c6145ee5", kill_on_drop: false }` [INFO] [stdout] d534f25702fc392cf52f1e1154e0b7eae6e346461f4132723de28459c6145ee5 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+fe55364329579d361b1ab565728bc033a7dba07e" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] f63211cbde53e2060132df335d597a26fd1611494c7000bb912484819bb0315e [INFO] running `Command { std: "docker" "start" "-a" "f63211cbde53e2060132df335d597a26fd1611494c7000bb912484819bb0315e", kill_on_drop: false }` [INFO] [stderr] Checking memchr v2.7.4 [INFO] [stderr] Checking regex-syntax v0.8.5 [INFO] [stderr] Checking lib v0.1.0 (/opt/rustwide/workdir/lib) [INFO] [stderr] Compiling proc-macro2 v1.0.92 [INFO] [stderr] Compiling unicode-ident v1.0.14 [INFO] [stderr] Compiling libc v0.2.167 [INFO] [stderr] Checking utf8parse v0.2.2 [INFO] [stderr] Checking anstyle v1.0.10 [INFO] [stderr] Compiling portable-atomic v1.10.0 [INFO] [stderr] Checking is_terminal_polyfill v1.70.1 [INFO] [stderr] Checking anstyle-query v1.1.2 [INFO] [stderr] Checking colorchoice v1.0.3 [INFO] [stderr] Checking clap_lex v0.7.4 [INFO] [stderr] Checking lazy_static v1.5.0 [INFO] [stderr] Checking strsim v0.11.1 [INFO] [stderr] Checking unicode-width v0.1.14 [INFO] [stdout] warning: unused import: `std::collections::HashSet` [INFO] [stdout] --> lib/src/lib.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::HashSet; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling heck v0.5.0 [INFO] [stderr] Checking anstyle-parse v0.2.6 [INFO] [stderr] Checking unicode-width v0.2.0 [INFO] [stderr] Checking number_prefix v0.4.0 [INFO] [stderr] Checking day2407 v0.1.0 (/opt/rustwide/workdir/day2407) [INFO] [stderr] Checking day2408 v0.1.0 (/opt/rustwide/workdir/day2408) [INFO] [stdout] warning: unused variable: `count` [INFO] [stdout] --> day2407/src/ex_1.rs:31:17 [INFO] [stdout] | [INFO] [stdout] 31 | let count = vals.iter().count() as u64; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_count` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `count` [INFO] [stdout] --> day2407/src/ex_2.rs:38:17 [INFO] [stdout] | [INFO] [stdout] 38 | let count = vals.iter().count() as u64; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_count` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking day2409 v0.1.0 (/opt/rustwide/workdir/day2409) [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> day2408/src/ex_1.rs:17:16 [INFO] [stdout] | [INFO] [stdout] 17 | if (*char != '.') { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 17 - if (*char != '.') { [INFO] [stdout] 17 + if *char != '.' { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> day2408/src/ex_2.rs:17:16 [INFO] [stdout] | [INFO] [stdout] 17 | if (*char != '.') { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 17 - if (*char != '.') { [INFO] [stdout] 17 + if *char != '.' { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `while` condition [INFO] [stdout] --> day2408/src/ex_2.rs:39:19 [INFO] [stdout] | [INFO] [stdout] 39 | while (finger.x >= 0 && finger.x < width && finger.y >= 0 && finger.y < height) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 39 - while (finger.x >= 0 && finger.x < width && finger.y >= 0 && finger.y < height) { [INFO] [stdout] 39 + while finger.x >= 0 && finger.x < width && finger.y >= 0 && finger.y < height { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `while` condition [INFO] [stdout] --> day2408/src/ex_2.rs:50:19 [INFO] [stdout] | [INFO] [stdout] 50 | while (finger.x >= 0 && finger.x < width && finger.y >= 0 && finger.y < height) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 50 - while (finger.x >= 0 && finger.x < width && finger.y >= 0 && finger.y < height) { [INFO] [stdout] 50 + while finger.x >= 0 && finger.x < width && finger.y >= 0 && finger.y < height { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking day2405 v0.1.0 (/opt/rustwide/workdir/day2405) [INFO] [stdout] warning: unused import: `lib::*` [INFO] [stdout] --> day2409/src/ex_1.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use lib::*; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> day2409/src/ex_1.rs:9:35 [INFO] [stdout] | [INFO] [stdout] 9 | let count: usize = if (!char.is_digit(10)) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 9 - let count: usize = if (!char.is_digit(10)) { [INFO] [stdout] 9 + let count: usize = if !char.is_digit(10) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> day2409/src/ex_1.rs:11:23 [INFO] [stdout] | [INFO] [stdout] 11 | } else if (i % 2 == 0) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 11 - } else if (i % 2 == 0) { [INFO] [stdout] 11 + } else if i % 2 == 0 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `while` condition [INFO] [stdout] --> day2409/src/ex_1.rs:27:11 [INFO] [stdout] | [INFO] [stdout] 27 | while (finger_left <= finger_right) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 27 - while (finger_left <= finger_right) { [INFO] [stdout] 27 + while finger_left <= finger_right { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> day2409/src/ex_1.rs:28:12 [INFO] [stdout] | [INFO] [stdout] 28 | if (arr[finger_left] == last_id_left) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 28 - if (arr[finger_left] == last_id_left) { [INFO] [stdout] 28 + if arr[finger_left] == last_id_left { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `lib::*` [INFO] [stdout] --> day2409/src/ex_2.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use lib::*; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> day2409/src/ex_2.rs:26:24 [INFO] [stdout] | [INFO] [stdout] 26 | let count = if (!char.is_digit(10)) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 26 - let count = if (!char.is_digit(10)) { [INFO] [stdout] 26 + let count = if !char.is_digit(10) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> day2409/src/ex_2.rs:32:24 [INFO] [stdout] | [INFO] [stdout] 32 | let value = if (i % 2 == 0) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 32 - let value = if (i % 2 == 0) { [INFO] [stdout] 32 + let value = if i % 2 == 0 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression [INFO] [stdout] --> day2409/src/ex_2.rs:58:15 [INFO] [stdout] | [INFO] [stdout] 58 | match (empty) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 58 - match (empty) { [INFO] [stdout] 58 + match empty { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `count` [INFO] [stdout] --> day2407/src/ex_1.rs:31:17 [INFO] [stdout] | [INFO] [stdout] 31 | let count = vals.iter().count() as u64; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_count` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `count` [INFO] [stdout] --> day2407/src/ex_2.rs:38:17 [INFO] [stdout] | [INFO] [stdout] 38 | let count = vals.iter().count() as u64; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_count` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `char` [INFO] [stdout] --> day2408/src/ex_1.rs:28:38 [INFO] [stdout] | [INFO] [stdout] 28 | nodes_per_char.iter().for_each(|(char, points)| { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_char` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `char` [INFO] [stdout] --> day2408/src/ex_2.rs:28:38 [INFO] [stdout] | [INFO] [stdout] 28 | nodes_per_char.iter().for_each(|(char, points)| { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_char` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `idx` [INFO] [stdout] --> day2409/src/ex_2.rs:55:21 [INFO] [stdout] | [INFO] [stdout] 55 | .find(|(idx, empty)| empty.count >= entry.count && empty.idx < entry.idx) [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_idx` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> day2409/src/ex_2.rs:47:9 [INFO] [stdout] | [INFO] [stdout] 47 | let mut value_map: Vec<&Entry> = arr_map.iter().filter(|it| it.value.is_some()).collect(); [INFO] [stdout] | ----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> day2409/src/ex_1.rs:14:17 [INFO] [stdout] | [INFO] [stdout] 14 | &space.push(char.to_digit(10).unwrap() as usize); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [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 _ = &space.push(char.to_digit(10).unwrap() as usize); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking day2401 v0.1.0 (/opt/rustwide/workdir/day2401) [INFO] [stderr] Checking day2404 v0.1.0 (/opt/rustwide/workdir/day2404) [INFO] [stdout] warning: unused import: `lib::*` [INFO] [stdout] --> day2409/src/ex_1.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use lib::*; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> day2409/src/ex_1.rs:9:35 [INFO] [stdout] | [INFO] [stdout] 9 | let count: usize = if (!char.is_digit(10)) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 9 - let count: usize = if (!char.is_digit(10)) { [INFO] [stdout] 9 + let count: usize = if !char.is_digit(10) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> day2409/src/ex_1.rs:11:23 [INFO] [stdout] | [INFO] [stdout] 11 | } else if (i % 2 == 0) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 11 - } else if (i % 2 == 0) { [INFO] [stdout] 11 + } else if i % 2 == 0 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `while` condition [INFO] [stdout] --> day2409/src/ex_1.rs:27:11 [INFO] [stdout] | [INFO] [stdout] 27 | while (finger_left <= finger_right) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 27 - while (finger_left <= finger_right) { [INFO] [stdout] 27 + while finger_left <= finger_right { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> day2409/src/ex_1.rs:28:12 [INFO] [stdout] | [INFO] [stdout] 28 | if (arr[finger_left] == last_id_left) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 28 - if (arr[finger_left] == last_id_left) { [INFO] [stdout] 28 + if arr[finger_left] == last_id_left { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `lib::*` [INFO] [stdout] --> day2409/src/ex_2.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use lib::*; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> day2409/src/ex_2.rs:26:24 [INFO] [stdout] | [INFO] [stdout] 26 | let count = if (!char.is_digit(10)) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 26 - let count = if (!char.is_digit(10)) { [INFO] [stdout] 26 + let count = if !char.is_digit(10) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> day2409/src/ex_2.rs:32:24 [INFO] [stdout] | [INFO] [stdout] 32 | let value = if (i % 2 == 0) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 32 - let value = if (i % 2 == 0) { [INFO] [stdout] 32 + let value = if i % 2 == 0 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression [INFO] [stdout] --> day2409/src/ex_2.rs:58:15 [INFO] [stdout] | [INFO] [stdout] 58 | match (empty) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 58 - match (empty) { [INFO] [stdout] 58 + match empty { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> day2405/src/ex_1.rs:20:20 [INFO] [stdout] | [INFO] [stdout] 20 | if (invalid.contains(it)) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 20 - if (invalid.contains(it)) { [INFO] [stdout] 20 + if invalid.contains(it) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> day2405/src/ex_1.rs:24:24 [INFO] [stdout] | [INFO] [stdout] 24 | if (to_invalidate.is_some()) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 24 - if (to_invalidate.is_some()) { [INFO] [stdout] 24 + if to_invalidate.is_some() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> day2405/src/ex_2.rs:20:20 [INFO] [stdout] | [INFO] [stdout] 20 | if (invalid.contains(it)) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 20 - if (invalid.contains(it)) { [INFO] [stdout] 20 + if invalid.contains(it) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> day2405/src/ex_2.rs:24:24 [INFO] [stdout] | [INFO] [stdout] 24 | if (to_invalidate.is_some()) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 24 - if (to_invalidate.is_some()) { [INFO] [stdout] 24 + if to_invalidate.is_some() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> day2405/src/ex_2.rs:40:20 [INFO] [stdout] | [INFO] [stdout] 40 | if (ordering.contains_key(a) && ordering[a].contains(b)) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 40 - if (ordering.contains_key(a) && ordering[a].contains(b)) { [INFO] [stdout] 40 + if ordering.contains_key(a) && ordering[a].contains(b) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> day2405/src/ex_2.rs:42:27 [INFO] [stdout] | [INFO] [stdout] 42 | } else if (ordering.contains_key(b) && ordering[b].contains(a)) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 42 - } else if (ordering.contains_key(b) && ordering[b].contains(a)) { [INFO] [stdout] 42 + } else if ordering.contains_key(b) && ordering[b].contains(a) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> day2405/src/ex_1.rs:20:20 [INFO] [stdout] | [INFO] [stdout] 20 | if (invalid.contains(it)) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 20 - if (invalid.contains(it)) { [INFO] [stdout] 20 + if invalid.contains(it) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> day2405/src/ex_1.rs:24:24 [INFO] [stdout] | [INFO] [stdout] 24 | if (to_invalidate.is_some()) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 24 - if (to_invalidate.is_some()) { [INFO] [stdout] 24 + if to_invalidate.is_some() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> day2405/src/ex_2.rs:20:20 [INFO] [stdout] | [INFO] [stdout] 20 | if (invalid.contains(it)) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 20 - if (invalid.contains(it)) { [INFO] [stdout] 20 + if invalid.contains(it) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> day2405/src/ex_2.rs:24:24 [INFO] [stdout] | [INFO] [stdout] 24 | if (to_invalidate.is_some()) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 24 - if (to_invalidate.is_some()) { [INFO] [stdout] 24 + if to_invalidate.is_some() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> day2405/src/ex_2.rs:40:20 [INFO] [stdout] | [INFO] [stdout] 40 | if (ordering.contains_key(a) && ordering[a].contains(b)) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 40 - if (ordering.contains_key(a) && ordering[a].contains(b)) { [INFO] [stdout] 40 + if ordering.contains_key(a) && ordering[a].contains(b) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> day2405/src/ex_2.rs:42:27 [INFO] [stdout] | [INFO] [stdout] 42 | } else if (ordering.contains_key(b) && ordering[b].contains(a)) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 42 - } else if (ordering.contains_key(b) && ordering[b].contains(a)) { [INFO] [stdout] 42 + } else if ordering.contains_key(b) && ordering[b].contains(a) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `idx` [INFO] [stdout] --> day2409/src/ex_2.rs:55:21 [INFO] [stdout] | [INFO] [stdout] 55 | .find(|(idx, empty)| empty.count >= entry.count && empty.idx < entry.idx) [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_idx` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> day2409/src/ex_2.rs:47:9 [INFO] [stdout] | [INFO] [stdout] 47 | let mut value_map: Vec<&Entry> = arr_map.iter().filter(|it| it.value.is_some()).collect(); [INFO] [stdout] | ----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> day2409/src/ex_1.rs:14:17 [INFO] [stdout] | [INFO] [stdout] 14 | &space.push(char.to_digit(10).unwrap() as usize); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [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 _ = &space.push(char.to_digit(10).unwrap() as usize); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `solve` is never used [INFO] [stdout] --> day2405/src/ex_1.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn solve(input: &str) -> i32 { [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 `solve` is never used [INFO] [stdout] --> day2405/src/ex_1.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn solve(input: &str) -> i32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking day2402 v0.1.0 (/opt/rustwide/workdir/day2402) [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> day2408/src/ex_1.rs:17:16 [INFO] [stdout] | [INFO] [stdout] 17 | if (*char != '.') { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 17 - if (*char != '.') { [INFO] [stdout] 17 + if *char != '.' { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> day2408/src/ex_2.rs:17:16 [INFO] [stdout] | [INFO] [stdout] 17 | if (*char != '.') { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 17 - if (*char != '.') { [INFO] [stdout] 17 + if *char != '.' { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `while` condition [INFO] [stdout] --> day2408/src/ex_2.rs:39:19 [INFO] [stdout] | [INFO] [stdout] 39 | while (finger.x >= 0 && finger.x < width && finger.y >= 0 && finger.y < height) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 39 - while (finger.x >= 0 && finger.x < width && finger.y >= 0 && finger.y < height) { [INFO] [stdout] 39 + while finger.x >= 0 && finger.x < width && finger.y >= 0 && finger.y < height { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `while` condition [INFO] [stdout] --> day2408/src/ex_2.rs:50:19 [INFO] [stdout] | [INFO] [stdout] 50 | while (finger.x >= 0 && finger.x < width && finger.y >= 0 && finger.y < height) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 50 - while (finger.x >= 0 && finger.x < width && finger.y >= 0 && finger.y < height) { [INFO] [stdout] 50 + while finger.x >= 0 && finger.x < width && finger.y >= 0 && finger.y < height { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashSet` [INFO] [stdout] --> lib/src/lib.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::HashSet; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking day00 v0.1.0 (/opt/rustwide/workdir/day00) [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> day2404/src/ex_1.rs:34:15 [INFO] [stdout] | [INFO] [stdout] 34 | return if (str == "XMAS" || str == "SAMX") { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 34 - return if (str == "XMAS" || str == "SAMX") { [INFO] [stdout] 34 + return if str == "XMAS" || str == "SAMX" { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> day2404/src/ex_2.rs:19:15 [INFO] [stdout] | [INFO] [stdout] 19 | return if (str == "MMASS" || str == "MSAMS" || str == "SMASM" || str == "SSAMM") { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 19 - return if (str == "MMASS" || str == "MSAMS" || str == "SMASM" || str == "SSAMM") { [INFO] [stdout] 19 + return if str == "MMASS" || str == "MSAMS" || str == "SMASM" || str == "SSAMM" { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> day2404/src/ex_1.rs:34:15 [INFO] [stdout] | [INFO] [stdout] 34 | return if (str == "XMAS" || str == "SAMX") { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 34 - return if (str == "XMAS" || str == "SAMX") { [INFO] [stdout] 34 + return if str == "XMAS" || str == "SAMX" { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> day2404/src/ex_2.rs:19:15 [INFO] [stdout] | [INFO] [stdout] 19 | return if (str == "MMASS" || str == "MSAMS" || str == "SMASM" || str == "SSAMM") { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 19 - return if (str == "MMASS" || str == "MSAMS" || str == "SMASM" || str == "SSAMM") { [INFO] [stdout] 19 + return if str == "MMASS" || str == "MSAMS" || str == "SMASM" || str == "SSAMM" { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `char` [INFO] [stdout] --> day2408/src/ex_1.rs:28:38 [INFO] [stdout] | [INFO] [stdout] 28 | nodes_per_char.iter().for_each(|(char, points)| { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_char` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `char` [INFO] [stdout] --> day2408/src/ex_2.rs:28:38 [INFO] [stdout] | [INFO] [stdout] 28 | nodes_per_char.iter().for_each(|(char, points)| { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_char` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input` [INFO] [stdout] --> day00/src/main.rs:6:10 [INFO] [stdout] | [INFO] [stdout] 6 | fn solve(input: &str) -> &str { [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] [stderr] Checking aho-corasick v1.1.3 [INFO] [stdout] warning: unused variable: `input` [INFO] [stdout] --> day00/src/main.rs:6:10 [INFO] [stdout] | [INFO] [stdout] 6 | fn solve(input: &str) -> &str { [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] [stderr] Checking anstream v0.6.18 [INFO] [stderr] Checking clap_builder v4.5.23 [INFO] [stderr] Compiling quote v1.0.37 [INFO] [stderr] error: could not parse/generate dep info at: /opt/rustwide/target/debug/deps/portable_atomic-443dc16f9c039c09.d [INFO] [stderr] [INFO] [stderr] Caused by: [INFO] [stderr] No such file or directory (os error 2) [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] running `Command { std: "docker" "inspect" "f63211cbde53e2060132df335d597a26fd1611494c7000bb912484819bb0315e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f63211cbde53e2060132df335d597a26fd1611494c7000bb912484819bb0315e", kill_on_drop: false }` [INFO] [stdout] f63211cbde53e2060132df335d597a26fd1611494c7000bb912484819bb0315e