[INFO] cloning repository https://github.com/poffomoe/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/poffomoe/aoc-2024" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpoffomoe%2Faoc-2024", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpoffomoe%2Faoc-2024'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 2ece4638a9f44c7195df03e8167154f591dc4f75 [INFO] linting poffomoe/aoc-2024 against nightly for clippy-nonminimal_bool-denied [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpoffomoe%2Faoc-2024" "/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/poffomoe/aoc-2024 [INFO] finished tweaking git repo https://github.com/poffomoe/aoc-2024 [INFO] tweaked toml for git repo https://github.com/poffomoe/aoc-2024 written to /workspace/builds/worker-4-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/poffomoe/aoc-2024 on toolchain nightly [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/poffomoe/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" "+nightly" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] dab286d9580f1070639f7f5985830db86958916e435fcb40d1b9d4b833a53939 [INFO] running `Command { std: "docker" "start" "-a" "dab286d9580f1070639f7f5985830db86958916e435fcb40d1b9d4b833a53939", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "dab286d9580f1070639f7f5985830db86958916e435fcb40d1b9d4b833a53939", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "dab286d9580f1070639f7f5985830db86958916e435fcb40d1b9d4b833a53939", kill_on_drop: false }` [INFO] [stdout] dab286d9580f1070639f7f5985830db86958916e435fcb40d1b9d4b833a53939 [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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "clippy" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 4b3d65d6dc9e38ee9f5b6d21ca283622eae81df0215ea921a8aec8dfe6276037 [INFO] running `Command { std: "docker" "start" "-a" "4b3d65d6dc9e38ee9f5b6d21ca283622eae81df0215ea921a8aec8dfe6276037", kill_on_drop: false }` [INFO] [stderr] Checking regex-automata v0.4.9 [INFO] [stderr] Checking day_1 v0.1.0 (/opt/rustwide/workdir/day_1) [INFO] [stderr] Checking day_2 v0.1.0 (/opt/rustwide/workdir/day_2) [INFO] [stderr] Checking day_5 v0.1.0 (/opt/rustwide/workdir/day_5) [INFO] [stderr] Checking day_6 v0.1.0 (/opt/rustwide/workdir/day_6) [INFO] [stderr] Checking day_4 v0.1.0 (/opt/rustwide/workdir/day_4) [INFO] [stdout] warning: the loop variable `i` is used to index `matrix` [INFO] [stdout] --> day_6/src/main.rs:22:14 [INFO] [stdout] | [INFO] [stdout] 22 | for i in 0..matrix.len() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] = note: `#[warn(clippy::needless_range_loop)]` on by default [INFO] [stdout] help: consider using an iterator and enumerate() [INFO] [stdout] | [INFO] [stdout] 22 - for i in 0..matrix.len() { [INFO] [stdout] 22 + for (i, ) in matrix.iter().enumerate() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `j` is used to index `matrix` [INFO] [stdout] --> day_6/src/main.rs:23:18 [INFO] [stdout] | [INFO] [stdout] 23 | for j in 0..matrix[i].len() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator and enumerate() [INFO] [stdout] | [INFO] [stdout] 23 - for j in 0..matrix[i].len() { [INFO] [stdout] 23 + for (j, ) in matrix.iter().enumerate().take(matrix[i].len()) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `i` is used to index `matrix` [INFO] [stdout] --> day_6/src/main.rs:54:14 [INFO] [stdout] | [INFO] [stdout] 54 | for i in 0..matrix.len() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator and enumerate() [INFO] [stdout] | [INFO] [stdout] 54 - for i in 0..matrix.len() { [INFO] [stdout] 54 + for (i, ) in matrix.iter().enumerate() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `j` is used to index `matrix` [INFO] [stdout] --> day_6/src/main.rs:55:18 [INFO] [stdout] | [INFO] [stdout] 55 | for j in 0..matrix[i].len() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator and enumerate() [INFO] [stdout] | [INFO] [stdout] 55 - for j in 0..matrix[i].len() { [INFO] [stdout] 55 + for (j, ) in matrix.iter().enumerate().take(matrix[i].len()) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded unit return type [INFO] [stdout] --> day_6/src/main.rs:67:55 [INFO] [stdout] | [INFO] [stdout] 67 | fn part_2(contents: &str, marked: Vec<(usize, usize)>) -> () { [INFO] [stdout] | ^^^^^^ help: remove the `-> ()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stdout] = note: `#[warn(clippy::unused_unit)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `i` is used to index `matrix` [INFO] [stdout] --> day_6/src/main.rs:78:14 [INFO] [stdout] | [INFO] [stdout] 78 | for i in 0..matrix.len() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator and enumerate() [INFO] [stdout] | [INFO] [stdout] 78 - for i in 0..matrix.len() { [INFO] [stdout] 78 + for (i, ) in matrix.iter().enumerate() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `j` is used to index `matrix` [INFO] [stdout] --> day_6/src/main.rs:79:18 [INFO] [stdout] | [INFO] [stdout] 79 | for j in 0..matrix[i].len() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator and enumerate() [INFO] [stdout] | [INFO] [stdout] 79 - for j in 0..matrix[i].len() { [INFO] [stdout] 79 + for (j, ) in matrix.iter().enumerate().take(matrix[i].len()) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant pattern matching, consider using `is_some()` [INFO] [stdout] --> day_6/src/main.rs:108:24 [INFO] [stdout] | [INFO] [stdout] 108 | if let Some(_) = visited [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stdout] = note: `#[warn(clippy::redundant_pattern_matching)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 108 ~ if visited [INFO] [stdout] 109 + .iter() [INFO] [stdout] 110 + .find(|&&x| x == (current_dir, (next_pos_i, next_pos_j))).is_some() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> day_4/src/main.rs:73:28 [INFO] [stdout] | [INFO] [stdout] 73 | if !(matrix[i + (DIRECTIONS[dir].0 as usize * a)] [INFO] [stdout] | ____________________________^ [INFO] [stdout] 74 | | [j + (DIRECTIONS[dir].1 as usize * a)] [INFO] [stdout] 75 | | == ORDER[a - 1]) [INFO] [stdout] | |____________________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] = note: `#[warn(clippy::nonminimal_bool)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 73 ~ if (matrix[i + (DIRECTIONS[dir].0 as usize * a)] [INFO] [stdout] 74 + [j + (DIRECTIONS[dir].1 as usize * a)] != ORDER[a - 1]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded unit return type [INFO] [stdout] --> day_4/src/main.rs:11:26 [INFO] [stdout] | [INFO] [stdout] 11 | fn part_1(contents: &str) -> () { [INFO] [stdout] | ^^^^^^ help: remove the `-> ()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stdout] = note: `#[warn(clippy::unused_unit)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded unit return type [INFO] [stdout] --> day_4/src/main.rs:92:26 [INFO] [stdout] | [INFO] [stdout] 92 | fn part_2(contents: &str) -> () { [INFO] [stdout] | ^^^^^^ help: remove the `-> ()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `i` is used to index `matrix` [INFO] [stdout] --> day_6/src/main.rs:22:14 [INFO] [stdout] | [INFO] [stdout] 22 | for i in 0..matrix.len() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] = note: `#[warn(clippy::needless_range_loop)]` on by default [INFO] [stdout] help: consider using an iterator and enumerate() [INFO] [stdout] | [INFO] [stdout] 22 - for i in 0..matrix.len() { [INFO] [stdout] 22 + for (i, ) in matrix.iter().enumerate() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `j` is used to index `matrix` [INFO] [stdout] --> day_6/src/main.rs:23:18 [INFO] [stdout] | [INFO] [stdout] 23 | for j in 0..matrix[i].len() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator and enumerate() [INFO] [stdout] | [INFO] [stdout] 23 - for j in 0..matrix[i].len() { [INFO] [stdout] 23 + for (j, ) in matrix.iter().enumerate().take(matrix[i].len()) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `i` is used to index `matrix` [INFO] [stdout] --> day_6/src/main.rs:54:14 [INFO] [stdout] | [INFO] [stdout] 54 | for i in 0..matrix.len() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator and enumerate() [INFO] [stdout] | [INFO] [stdout] 54 - for i in 0..matrix.len() { [INFO] [stdout] 54 + for (i, ) in matrix.iter().enumerate() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `j` is used to index `matrix` [INFO] [stdout] --> day_6/src/main.rs:55:18 [INFO] [stdout] | [INFO] [stdout] 55 | for j in 0..matrix[i].len() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator and enumerate() [INFO] [stdout] | [INFO] [stdout] 55 - for j in 0..matrix[i].len() { [INFO] [stdout] 55 + for (j, ) in matrix.iter().enumerate().take(matrix[i].len()) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded unit return type [INFO] [stdout] --> day_6/src/main.rs:67:55 [INFO] [stdout] | [INFO] [stdout] 67 | fn part_2(contents: &str, marked: Vec<(usize, usize)>) -> () { [INFO] [stdout] | ^^^^^^ help: remove the `-> ()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stdout] = note: `#[warn(clippy::unused_unit)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `i` is used to index `matrix` [INFO] [stdout] --> day_6/src/main.rs:78:14 [INFO] [stdout] | [INFO] [stdout] 78 | for i in 0..matrix.len() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator and enumerate() [INFO] [stdout] | [INFO] [stdout] 78 - for i in 0..matrix.len() { [INFO] [stdout] 78 + for (i, ) in matrix.iter().enumerate() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `j` is used to index `matrix` [INFO] [stdout] --> day_6/src/main.rs:79:18 [INFO] [stdout] | [INFO] [stdout] 79 | for j in 0..matrix[i].len() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator and enumerate() [INFO] [stdout] | [INFO] [stdout] 79 - for j in 0..matrix[i].len() { [INFO] [stdout] 79 + for (j, ) in matrix.iter().enumerate().take(matrix[i].len()) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant pattern matching, consider using `is_some()` [INFO] [stdout] --> day_6/src/main.rs:108:24 [INFO] [stdout] | [INFO] [stdout] 108 | if let Some(_) = visited [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stdout] = note: `#[warn(clippy::redundant_pattern_matching)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 108 ~ if visited [INFO] [stdout] 109 + .iter() [INFO] [stdout] 110 + .find(|&&x| x == (current_dir, (next_pos_i, next_pos_j))).is_some() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded unit return type [INFO] [stdout] --> day_1/src/main.rs:11:26 [INFO] [stdout] | [INFO] [stdout] 11 | fn part_1(contents: &str) -> () { [INFO] [stdout] | ^^^^^^ help: remove the `-> ()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stdout] = note: `#[warn(clippy::unused_unit)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded unit return type [INFO] [stdout] --> day_1/src/main.rs:34:26 [INFO] [stdout] | [INFO] [stdout] 34 | fn part_2(contents: &str) -> () { [INFO] [stdout] | ^^^^^^ help: remove the `-> ()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded unit return type [INFO] [stdout] --> day_2/src/main.rs:12:26 [INFO] [stdout] | [INFO] [stdout] 12 | fn part_1(contents: &str) -> () { [INFO] [stdout] | ^^^^^^ help: remove the `-> ()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stdout] = note: `#[warn(clippy::unused_unit)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> day_2/src/main.rs:50:18 [INFO] [stdout] | [INFO] [stdout] 50 | fn is_safe(nums: &Vec) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 50 - fn is_safe(nums: &Vec) -> bool { [INFO] [stdout] 50 + fn is_safe(nums: &[i32]) -> bool { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> day_2/src/main.rs:67:16 [INFO] [stdout] | [INFO] [stdout] 67 | if is_safe(&nums) { [INFO] [stdout] | ^^^^^ help: change this to: `nums` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] = note: `#[warn(clippy::needless_borrow)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> day_4/src/main.rs:73:28 [INFO] [stdout] | [INFO] [stdout] 73 | if !(matrix[i + (DIRECTIONS[dir].0 as usize * a)] [INFO] [stdout] | ____________________________^ [INFO] [stdout] 74 | | [j + (DIRECTIONS[dir].1 as usize * a)] [INFO] [stdout] 75 | | == ORDER[a - 1]) [INFO] [stdout] | |____________________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] = note: `#[warn(clippy::nonminimal_bool)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 73 ~ if (matrix[i + (DIRECTIONS[dir].0 as usize * a)] [INFO] [stdout] 74 + [j + (DIRECTIONS[dir].1 as usize * a)] != ORDER[a - 1]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded unit return type [INFO] [stdout] --> day_4/src/main.rs:11:26 [INFO] [stdout] | [INFO] [stdout] 11 | fn part_1(contents: &str) -> () { [INFO] [stdout] | ^^^^^^ help: remove the `-> ()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stdout] = note: `#[warn(clippy::unused_unit)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded unit return type [INFO] [stdout] --> day_4/src/main.rs:92:26 [INFO] [stdout] | [INFO] [stdout] 92 | fn part_2(contents: &str) -> () { [INFO] [stdout] | ^^^^^^ help: remove the `-> ()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded unit return type [INFO] [stdout] --> day_1/src/main.rs:11:26 [INFO] [stdout] | [INFO] [stdout] 11 | fn part_1(contents: &str) -> () { [INFO] [stdout] | ^^^^^^ help: remove the `-> ()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stdout] = note: `#[warn(clippy::unused_unit)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded unit return type [INFO] [stdout] --> day_1/src/main.rs:34:26 [INFO] [stdout] | [INFO] [stdout] 34 | fn part_2(contents: &str) -> () { [INFO] [stdout] | ^^^^^^ help: remove the `-> ()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded unit return type [INFO] [stdout] --> day_5/src/main.rs:11:26 [INFO] [stdout] | [INFO] [stdout] 11 | fn part_1(contents: &str) -> () { [INFO] [stdout] | ^^^^^^ help: remove the `-> ()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stdout] = note: `#[warn(clippy::unused_unit)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `idx_2` is only used to index `pages` [INFO] [stdout] --> day_5/src/main.rs:43:26 [INFO] [stdout] | [INFO] [stdout] 43 | for idx_2 in (idx + 1)..pages.len() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] = note: `#[warn(clippy::needless_range_loop)]` on by default [INFO] [stdout] help: consider using an iterator [INFO] [stdout] | [INFO] [stdout] 43 - for idx_2 in (idx + 1)..pages.len() { [INFO] [stdout] 43 + for in pages.iter().skip((idx + 1)) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant pattern matching, consider using `is_none()` [INFO] [stdout] --> day_5/src/main.rs:45:24 [INFO] [stdout] | [INFO] [stdout] 45 | if let None = rules.iter().find(|x| (x[0] == num) && (x[1] == num_2)) { [INFO] [stdout] | -------^^^^---------------------------------------------------------- help: try: `if rules.iter().find(|x| (x[0] == num) && (x[1] == num_2)).is_none()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stdout] = note: `#[warn(clippy::redundant_pattern_matching)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded unit return type [INFO] [stdout] --> day_5/src/main.rs:57:26 [INFO] [stdout] | [INFO] [stdout] 57 | fn part_2(contents: &str) -> () { [INFO] [stdout] | ^^^^^^ help: remove the `-> ()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `idx_2` is only used to index `pages` [INFO] [stdout] --> day_5/src/main.rs:91:26 [INFO] [stdout] | [INFO] [stdout] 91 | for idx_2 in (idx + 1)..pages.len() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator [INFO] [stdout] | [INFO] [stdout] 91 - for idx_2 in (idx + 1)..pages.len() { [INFO] [stdout] 91 + for in pages.iter().skip((idx + 1)) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant pattern matching, consider using `is_none()` [INFO] [stdout] --> day_5/src/main.rs:93:24 [INFO] [stdout] | [INFO] [stdout] 93 | if let None = rules.iter().find(|x| (x[0] == num) && (x[1] == num_2)) { [INFO] [stdout] | -------^^^^---------------------------------------------------------- help: try: `if rules.iter().find(|x| (x[0] == num) && (x[1] == num_2)).is_none()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant pattern matching, consider using `is_some()` [INFO] [stdout] --> day_5/src/main.rs:103:24 [INFO] [stdout] | [INFO] [stdout] 103 | if let Some(_) = rules.iter().find(|&num| *num == Vec::from([a, b])) { [INFO] [stdout] | -------^^^^^^^------------------------------------------------------ help: try: `if rules.iter().find(|&num| *num == Vec::from([a, b])).is_some()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> day_5/src/main.rs:103:59 [INFO] [stdout] | [INFO] [stdout] 103 | if let Some(_) = rules.iter().find(|&num| *num == Vec::from([a, b])) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ try implementing the comparison without allocating [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] = note: `#[warn(clippy::cmp_owned)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded unit return type [INFO] [stdout] --> day_2/src/main.rs:12:26 [INFO] [stdout] | [INFO] [stdout] 12 | fn part_1(contents: &str) -> () { [INFO] [stdout] | ^^^^^^ help: remove the `-> ()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stdout] = note: `#[warn(clippy::unused_unit)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> day_2/src/main.rs:50:18 [INFO] [stdout] | [INFO] [stdout] 50 | fn is_safe(nums: &Vec) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 50 - fn is_safe(nums: &Vec) -> bool { [INFO] [stdout] 50 + fn is_safe(nums: &[i32]) -> bool { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> day_2/src/main.rs:67:16 [INFO] [stdout] | [INFO] [stdout] 67 | if is_safe(&nums) { [INFO] [stdout] | ^^^^^ help: change this to: `nums` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] = note: `#[warn(clippy::needless_borrow)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded unit return type [INFO] [stdout] --> day_5/src/main.rs:11:26 [INFO] [stdout] | [INFO] [stdout] 11 | fn part_1(contents: &str) -> () { [INFO] [stdout] | ^^^^^^ help: remove the `-> ()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stdout] = note: `#[warn(clippy::unused_unit)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `idx_2` is only used to index `pages` [INFO] [stdout] --> day_5/src/main.rs:43:26 [INFO] [stdout] | [INFO] [stdout] 43 | for idx_2 in (idx + 1)..pages.len() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] = note: `#[warn(clippy::needless_range_loop)]` on by default [INFO] [stdout] help: consider using an iterator [INFO] [stdout] | [INFO] [stdout] 43 - for idx_2 in (idx + 1)..pages.len() { [INFO] [stdout] 43 + for in pages.iter().skip((idx + 1)) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant pattern matching, consider using `is_none()` [INFO] [stdout] --> day_5/src/main.rs:45:24 [INFO] [stdout] | [INFO] [stdout] 45 | if let None = rules.iter().find(|x| (x[0] == num) && (x[1] == num_2)) { [INFO] [stdout] | -------^^^^---------------------------------------------------------- help: try: `if rules.iter().find(|x| (x[0] == num) && (x[1] == num_2)).is_none()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stdout] = note: `#[warn(clippy::redundant_pattern_matching)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded unit return type [INFO] [stdout] --> day_5/src/main.rs:57:26 [INFO] [stdout] | [INFO] [stdout] 57 | fn part_2(contents: &str) -> () { [INFO] [stdout] | ^^^^^^ help: remove the `-> ()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `idx_2` is only used to index `pages` [INFO] [stdout] --> day_5/src/main.rs:91:26 [INFO] [stdout] | [INFO] [stdout] 91 | for idx_2 in (idx + 1)..pages.len() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator [INFO] [stdout] | [INFO] [stdout] 91 - for idx_2 in (idx + 1)..pages.len() { [INFO] [stdout] 91 + for in pages.iter().skip((idx + 1)) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant pattern matching, consider using `is_none()` [INFO] [stdout] --> day_5/src/main.rs:93:24 [INFO] [stdout] | [INFO] [stdout] 93 | if let None = rules.iter().find(|x| (x[0] == num) && (x[1] == num_2)) { [INFO] [stdout] | -------^^^^---------------------------------------------------------- help: try: `if rules.iter().find(|x| (x[0] == num) && (x[1] == num_2)).is_none()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant pattern matching, consider using `is_some()` [INFO] [stdout] --> day_5/src/main.rs:103:24 [INFO] [stdout] | [INFO] [stdout] 103 | if let Some(_) = rules.iter().find(|&num| *num == Vec::from([a, b])) { [INFO] [stdout] | -------^^^^^^^------------------------------------------------------ help: try: `if rules.iter().find(|&num| *num == Vec::from([a, b])).is_some()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> day_5/src/main.rs:103:59 [INFO] [stdout] | [INFO] [stdout] 103 | if let Some(_) = rules.iter().find(|&num| *num == Vec::from([a, b])) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ try implementing the comparison without allocating [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] = note: `#[warn(clippy::cmp_owned)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking regex v1.11.1 [INFO] [stderr] Checking day_3 v0.1.0 (/opt/rustwide/workdir/day_3) [INFO] [stdout] warning: unneeded unit return type [INFO] [stdout] --> day_3/src/main.rs:13:26 [INFO] [stdout] | [INFO] [stdout] 13 | fn part_1(contents: &str) -> () { [INFO] [stdout] | ^^^^^^ help: remove the `-> ()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stdout] = note: `#[warn(clippy::unused_unit)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded unit return type [INFO] [stdout] --> day_3/src/main.rs:13:26 [INFO] [stdout] | [INFO] [stdout] 13 | fn part_1(contents: &str) -> () { [INFO] [stdout] | ^^^^^^ help: remove the `-> ()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stdout] = note: `#[warn(clippy::unused_unit)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> day_3/src/main.rs:17:37 [INFO] [stdout] | [INFO] [stdout] 17 | for capture in re.captures_iter(&contents) { [INFO] [stdout] | ^^^^^^^^^ help: change this to: `contents` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] = note: `#[warn(clippy::needless_borrow)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded unit return type [INFO] [stdout] --> day_3/src/main.rs:30:26 [INFO] [stdout] | [INFO] [stdout] 30 | fn part_2(contents: &str) -> () { [INFO] [stdout] | ^^^^^^ help: remove the `-> ()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> day_3/src/main.rs:17:37 [INFO] [stdout] | [INFO] [stdout] 17 | for capture in re.captures_iter(&contents) { [INFO] [stdout] | ^^^^^^^^^ help: change this to: `contents` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] = note: `#[warn(clippy::needless_borrow)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded unit return type [INFO] [stdout] --> day_3/src/main.rs:30:26 [INFO] [stdout] | [INFO] [stdout] 30 | fn part_2(contents: &str) -> () { [INFO] [stdout] | ^^^^^^ help: remove the `-> ()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> day_3/src/main.rs:35:37 [INFO] [stdout] | [INFO] [stdout] 35 | for capture in re.captures_iter(&contents) { [INFO] [stdout] | ^^^^^^^^^ help: change this to: `contents` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> day_3/src/main.rs:35:37 [INFO] [stdout] | [INFO] [stdout] 35 | for capture in re.captures_iter(&contents) { [INFO] [stdout] | ^^^^^^^^^ help: change this to: `contents` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 2.95s [INFO] running `Command { std: "docker" "inspect" "4b3d65d6dc9e38ee9f5b6d21ca283622eae81df0215ea921a8aec8dfe6276037", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4b3d65d6dc9e38ee9f5b6d21ca283622eae81df0215ea921a8aec8dfe6276037", kill_on_drop: false }` [INFO] [stdout] 4b3d65d6dc9e38ee9f5b6d21ca283622eae81df0215ea921a8aec8dfe6276037