[INFO] cloning repository https://github.com/Elias6970/AdventOfCode2025 [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Elias6970/AdventOfCode2025" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FElias6970%2FAdventOfCode2025", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FElias6970%2FAdventOfCode2025'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 58561caa6d76f5b7562446b6f0c9badb7a1a98cf [INFO] linting Elias6970/AdventOfCode2025 against nightly for clippy-nonminimal_bool-denied [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FElias6970%2FAdventOfCode2025" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/Elias6970/AdventOfCode2025 [INFO] finished tweaking git repo https://github.com/Elias6970/AdventOfCode2025 [INFO] tweaked toml for git repo https://github.com/Elias6970/AdventOfCode2025 written to /workspace/builds/worker-2-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/Elias6970/AdventOfCode2025 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/Elias6970/AdventOfCode2025 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-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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] ff26162199736d8af1da230d6e35de71519b8b8db485bf9373a116c78ebcb717 [INFO] running `Command { std: "docker" "start" "-a" "ff26162199736d8af1da230d6e35de71519b8b8db485bf9373a116c78ebcb717", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "ff26162199736d8af1da230d6e35de71519b8b8db485bf9373a116c78ebcb717", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ff26162199736d8af1da230d6e35de71519b8b8db485bf9373a116c78ebcb717", kill_on_drop: false }` [INFO] [stdout] ff26162199736d8af1da230d6e35de71519b8b8db485bf9373a116c78ebcb717 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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] 4a8a70cc8c4b6e8e0ef7b02f6e0404468313c2f860ba2ee0ae190484686ee88e [INFO] running `Command { std: "docker" "start" "-a" "4a8a70cc8c4b6e8e0ef7b02f6e0404468313c2f860ba2ee0ae190484686ee88e", kill_on_drop: false }` [INFO] [stderr] Checking memchr v2.7.4 [INFO] [stderr] Checking either v1.13.0 [INFO] [stderr] Checking itertools v0.11.0 [INFO] [stderr] Checking aho-corasick v1.1.3 [INFO] [stderr] Checking regex-automata v0.4.9 [INFO] [stderr] Checking regex v1.11.1 [INFO] [stderr] Checking advent_of_code v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: the variable `i` is used as a loop counter [INFO] [stdout] --> src/days/day1/star1.rs:12:13 [INFO] [stdout] | [INFO] [stdout] 12 | for line in content.lines(){ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `for (i, line) in content.lines().enumerate()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_counter_loop [INFO] [stdout] = note: `#[warn(clippy::explicit_counter_loop)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the variable `i` is used as a loop counter [INFO] [stdout] --> src/days/day1/star2.rs:12:13 [INFO] [stdout] | [INFO] [stdout] 12 | for line in content.lines(){ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `for (i, line) in content.lines().enumerate()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_counter_loop [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` has identical blocks [INFO] [stdout] --> src/days/day2/star1.rs:19:94 [INFO] [stdout] | [INFO] [stdout] 19 | else if desc && (vect[i] <= vect[i+1] || (vect[i] - vect[i+1]).abs() > 3){ [INFO] [stdout] | ______________________________________________________________________________________________^ [INFO] [stdout] 20 | | break; [INFO] [stdout] 21 | | } [INFO] [stdout] | |_____________________^ [INFO] [stdout] | [INFO] [stdout] note: same as this [INFO] [stdout] --> src/days/day2/star1.rs:22:95 [INFO] [stdout] | [INFO] [stdout] 22 | else if !desc && (vect[i] >= vect[i+1] || (vect[i] - vect[i+1]).abs() > 3){ [INFO] [stdout] | _______________________________________________________________________________________________^ [INFO] [stdout] 23 | | break; [INFO] [stdout] 24 | | } [INFO] [stdout] | |_____________________^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#if_same_then_else [INFO] [stdout] = note: `#[warn(clippy::if_same_then_else)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/days/day2/star2.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | return num_desc >= (vect.len() - num_desc); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 10 - return num_desc >= (vect.len() - num_desc); [INFO] [stdout] 10 + num_desc >= (vect.len() - num_desc) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/days/day2/star2.rs:3:17 [INFO] [stdout] | [INFO] [stdout] 3 | fn is_desc(vect:&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] 3 - fn is_desc(vect:&Vec) -> bool{ [INFO] [stdout] 3 + fn is_desc(vect:&[i32]) -> bool{ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/days/day2/star2.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 34 | return false; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 34 - return false; [INFO] [stdout] 34 + false [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` has identical blocks [INFO] [stdout] --> src/days/day2/star2.rs:20:101 [INFO] [stdout] | [INFO] [stdout] 20 | if desc && (vect[actual_id] <= vect[next_id] || (vect[actual_id] - vect[next_id]).abs() > 3){ [INFO] [stdout] | _____________________________________________________________________________________________________^ [INFO] [stdout] 21 | | if deleted_id == vect.len() as i32 - 1{ [INFO] [stdout] 22 | | return false; [INFO] [stdout] ... | [INFO] [stdout] 25 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] note: same as this [INFO] [stdout] --> src/days/day2/star2.rs:26:107 [INFO] [stdout] | [INFO] [stdout] 26 | else if !desc && (vect[actual_id] >= vect[next_id] || (vect[actual_id] - vect[next_id]).abs() > 3){ [INFO] [stdout] | ___________________________________________________________________________________________________________^ [INFO] [stdout] 27 | | if deleted_id == vect.len() as i32 - 1{ [INFO] [stdout] 28 | | return false; [INFO] [stdout] ... | [INFO] [stdout] 31 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#if_same_then_else [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the variable `i` is used as a loop counter [INFO] [stdout] --> src/days/day1/star1.rs:12:13 [INFO] [stdout] | [INFO] [stdout] 12 | for line in content.lines(){ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `for (i, line) in content.lines().enumerate()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_counter_loop [INFO] [stdout] = note: `#[warn(clippy::explicit_counter_loop)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the variable `i` is used as a loop counter [INFO] [stdout] --> src/days/day1/star2.rs:12:13 [INFO] [stdout] | [INFO] [stdout] 12 | for line in content.lines(){ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `for (i, line) in content.lines().enumerate()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_counter_loop [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/days/day3/star1.rs:13:45 [INFO] [stdout] | [INFO] [stdout] 13 | for mat in re_general.find_iter(&content.as_str()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: change this to: `content.as_str()` [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 expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/days/day3/star2.rs:14:45 [INFO] [stdout] | [INFO] [stdout] 14 | for mat in re_general.find_iter(&content.as_str()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: change this to: `content.as_str()` [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 `if` has identical blocks [INFO] [stdout] --> src/days/day2/star1.rs:19:94 [INFO] [stdout] | [INFO] [stdout] 19 | else if desc && (vect[i] <= vect[i+1] || (vect[i] - vect[i+1]).abs() > 3){ [INFO] [stdout] | ______________________________________________________________________________________________^ [INFO] [stdout] 20 | | break; [INFO] [stdout] 21 | | } [INFO] [stdout] | |_____________________^ [INFO] [stdout] | [INFO] [stdout] note: same as this [INFO] [stdout] --> src/days/day2/star1.rs:22:95 [INFO] [stdout] | [INFO] [stdout] 22 | else if !desc && (vect[i] >= vect[i+1] || (vect[i] - vect[i+1]).abs() > 3){ [INFO] [stdout] | _______________________________________________________________________________________________^ [INFO] [stdout] 23 | | break; [INFO] [stdout] 24 | | } [INFO] [stdout] | |_____________________^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#if_same_then_else [INFO] [stdout] = note: `#[warn(clippy::if_same_then_else)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/days/day2/star2.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | return num_desc >= (vect.len() - num_desc); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 10 - return num_desc >= (vect.len() - num_desc); [INFO] [stdout] 10 + num_desc >= (vect.len() - num_desc) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/days/day2/star2.rs:3:17 [INFO] [stdout] | [INFO] [stdout] 3 | fn is_desc(vect:&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] 3 - fn is_desc(vect:&Vec) -> bool{ [INFO] [stdout] 3 + fn is_desc(vect:&[i32]) -> bool{ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/days/day2/star2.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 34 | return false; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 34 - return false; [INFO] [stdout] 34 + false [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/days/day4/star1.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | return count_words; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 11 - return count_words; [INFO] [stdout] 11 + count_words [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `i` is only used to index `matrix` [INFO] [stdout] --> src/days/day4/star1.rs:36:22 [INFO] [stdout] | [INFO] [stdout] 36 | 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 [INFO] [stdout] | [INFO] [stdout] 36 - for i in 0..matrix.len(){ [INFO] [stdout] 36 + for in &matrix{ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `j` is only used to index `matrix` [INFO] [stdout] --> src/days/day4/star1.rs:39:26 [INFO] [stdout] | [INFO] [stdout] 39 | 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 [INFO] [stdout] | [INFO] [stdout] 39 - for j in 0..matrix[i].len(){ [INFO] [stdout] 39 + for in matrix.iter().take(matrix[i].len()){ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` has identical blocks [INFO] [stdout] --> src/days/day2/star2.rs:20:101 [INFO] [stdout] | [INFO] [stdout] 20 | if desc && (vect[actual_id] <= vect[next_id] || (vect[actual_id] - vect[next_id]).abs() > 3){ [INFO] [stdout] | _____________________________________________________________________________________________________^ [INFO] [stdout] 21 | | if deleted_id == vect.len() as i32 - 1{ [INFO] [stdout] 22 | | return false; [INFO] [stdout] ... | [INFO] [stdout] 25 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] note: same as this [INFO] [stdout] --> src/days/day2/star2.rs:26:107 [INFO] [stdout] | [INFO] [stdout] 26 | else if !desc && (vect[actual_id] >= vect[next_id] || (vect[actual_id] - vect[next_id]).abs() > 3){ [INFO] [stdout] | ___________________________________________________________________________________________________________^ [INFO] [stdout] 27 | | if deleted_id == vect.len() as i32 - 1{ [INFO] [stdout] 28 | | return false; [INFO] [stdout] ... | [INFO] [stdout] 31 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#if_same_then_else [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/days/day3/star1.rs:13:45 [INFO] [stdout] | [INFO] [stdout] 13 | for mat in re_general.find_iter(&content.as_str()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: change this to: `content.as_str()` [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 `return` statement [INFO] [stdout] --> src/days/day4/star2.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | return re_xmas.find_iter(line).count() > 0 || re_samx.find_iter(line).count() > 0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 9 - return re_xmas.find_iter(line).count() > 0 || re_samx.find_iter(line).count() > 0; [INFO] [stdout] 9 + re_xmas.find_iter(line).count() > 0 || re_samx.find_iter(line).count() > 0 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/days/day3/star2.rs:14:45 [INFO] [stdout] | [INFO] [stdout] 14 | for mat in re_general.find_iter(&content.as_str()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: change this to: `content.as_str()` [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: unneeded `return` statement [INFO] [stdout] --> src/days/day4/star1.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | return count_words; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 11 - return count_words; [INFO] [stdout] 11 + count_words [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/days/day5/star1.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 22 | return applying_rules; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 22 - return applying_rules; [INFO] [stdout] 22 + applying_rules [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `i` is only used to index `matrix` [INFO] [stdout] --> src/days/day4/star1.rs:36:22 [INFO] [stdout] | [INFO] [stdout] 36 | 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 [INFO] [stdout] | [INFO] [stdout] 36 - for i in 0..matrix.len(){ [INFO] [stdout] 36 + for in &matrix{ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/days/day5/star1.rs:4:30 [INFO] [stdout] | [INFO] [stdout] 4 | fn find_applying_rules(rules:&Vec>,update:&Vec) -> Vec>{ [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] help: change this to [INFO] [stdout] | [INFO] [stdout] 4 - fn find_applying_rules(rules:&Vec>,update:&Vec) -> Vec>{ [INFO] [stdout] 4 + fn find_applying_rules(rules:&[Vec],update:&Vec) -> Vec>{ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/days/day5/star1.rs:4:54 [INFO] [stdout] | [INFO] [stdout] 4 | fn find_applying_rules(rules:&Vec>,update:&Vec) -> Vec>{ [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] help: change this to [INFO] [stdout] | [INFO] [stdout] 4 ~ fn find_applying_rules(rules:&Vec>,update:&[usize]) -> Vec>{ [INFO] [stdout] 5 | let mut applying_rules:Vec> = Vec::new(); [INFO] [stdout] 6 ~ let mut sort_update: Vec = update.to_owned(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `j` is only used to index `matrix` [INFO] [stdout] --> src/days/day4/star1.rs:39:26 [INFO] [stdout] | [INFO] [stdout] 39 | 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 [INFO] [stdout] | [INFO] [stdout] 39 - for j in 0..matrix[i].len(){ [INFO] [stdout] 39 + for in matrix.iter().take(matrix[i].len()){ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: binary comparison to literal `Option::None` [INFO] [stdout] --> src/days/day5/star1.rs:12:16 [INFO] [stdout] | [INFO] [stdout] 12 | if update.iter().position(|&x| x == rules[1][j]) != None{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `Option::is_some()` instead: `update.iter().position(|&x| x == rules[1][j]).is_some()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#partialeq_to_none [INFO] [stdout] = note: `#[warn(clippy::partialeq_to_none)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/days/day5/star1.rs:35:5 [INFO] [stdout] | [INFO] [stdout] 35 | return true; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 35 - return true; [INFO] [stdout] 35 + true [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/days/day5/star1.rs:26:23 [INFO] [stdout] | [INFO] [stdout] 26 | fn apply_rules(update:&Vec,applying_rules:&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] help: change this to [INFO] [stdout] | [INFO] [stdout] 26 - fn apply_rules(update:&Vec,applying_rules:&Vec>) -> bool{ [INFO] [stdout] 26 + fn apply_rules(update:&[usize],applying_rules:&Vec>) -> bool{ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/days/day5/star1.rs:40:9 [INFO] [stdout] | [INFO] [stdout] 40 | return 0; // Return None if the array is empty [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 40 - return 0; // Return None if the array is empty [INFO] [stdout] 40 + 0// Return None if the array is empty [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/days/day5/star1.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 42 | return arr[arr.len() / 2]; // Return the middle element [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 42 - return arr[arr.len() / 2]; // Return the middle element [INFO] [stdout] 42 + arr[arr.len() / 2]// Return the middle element [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/days/day5/star1.rs:38:27 [INFO] [stdout] | [INFO] [stdout] 38 | fn find_middle_value(arr: &Vec) -> usize { [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] help: change this to [INFO] [stdout] | [INFO] [stdout] 38 - fn find_middle_value(arr: &Vec) -> usize { [INFO] [stdout] 38 + fn find_middle_value(arr: &[usize]) -> usize { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison to empty slice [INFO] [stdout] --> src/days/day5/star1.rs:59:20 [INFO] [stdout] | [INFO] [stdout] 59 | if i == ""{ [INFO] [stdout] | ^^^^^^^ help: using `is_empty` is clearer and more explicit: `i.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#comparison_to_empty [INFO] [stdout] = note: `#[warn(clippy::comparison_to_empty)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/days/day4/star2.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | return re_xmas.find_iter(line).count() > 0 || re_samx.find_iter(line).count() > 0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 9 - return re_xmas.find_iter(line).count() > 0 || re_samx.find_iter(line).count() > 0; [INFO] [stdout] 9 + re_xmas.find_iter(line).count() > 0 || re_samx.find_iter(line).count() > 0 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/days/day5/star2.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | return applying_rules; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 21 - return applying_rules; [INFO] [stdout] 21 + applying_rules [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/days/day5/star2.rs:3:30 [INFO] [stdout] | [INFO] [stdout] 3 | fn find_applying_rules(rules:&Vec>,update:&Vec) -> Vec>{ [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] help: change this to [INFO] [stdout] | [INFO] [stdout] 3 - fn find_applying_rules(rules:&Vec>,update:&Vec) -> Vec>{ [INFO] [stdout] 3 + fn find_applying_rules(rules:&[Vec],update:&Vec) -> Vec>{ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/days/day5/star2.rs:3:54 [INFO] [stdout] | [INFO] [stdout] 3 | fn find_applying_rules(rules:&Vec>,update:&Vec) -> Vec>{ [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] help: change this to [INFO] [stdout] | [INFO] [stdout] 3 ~ fn find_applying_rules(rules:&Vec>,update:&[usize]) -> Vec>{ [INFO] [stdout] 4 | let mut applying_rules:Vec> = Vec::new(); [INFO] [stdout] 5 ~ let mut sort_update: Vec = update.to_owned(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: binary comparison to literal `Option::None` [INFO] [stdout] --> src/days/day5/star2.rs:11:16 [INFO] [stdout] | [INFO] [stdout] 11 | if update.iter().position(|&x| x == rules[1][j]) != None{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `Option::is_some()` instead: `update.iter().position(|&x| x == rules[1][j]).is_some()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#partialeq_to_none [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/days/day5/star2.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 34 | return true; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 34 - return true; [INFO] [stdout] 34 + true [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/days/day5/star1.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 22 | return applying_rules; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 22 - return applying_rules; [INFO] [stdout] 22 + applying_rules [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/days/day5/star2.rs:25:23 [INFO] [stdout] | [INFO] [stdout] 25 | fn apply_rules(update:&Vec,applying_rules:&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] help: change this to [INFO] [stdout] | [INFO] [stdout] 25 - fn apply_rules(update:&Vec,applying_rules:&Vec>) -> bool{ [INFO] [stdout] 25 + fn apply_rules(update:&[usize],applying_rules:&Vec>) -> bool{ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/days/day5/star1.rs:4:30 [INFO] [stdout] | [INFO] [stdout] 4 | fn find_applying_rules(rules:&Vec>,update:&Vec) -> Vec>{ [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] help: change this to [INFO] [stdout] | [INFO] [stdout] 4 - fn find_applying_rules(rules:&Vec>,update:&Vec) -> Vec>{ [INFO] [stdout] 4 + fn find_applying_rules(rules:&[Vec],update:&Vec) -> Vec>{ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/days/day5/star1.rs:4:54 [INFO] [stdout] | [INFO] [stdout] 4 | fn find_applying_rules(rules:&Vec>,update:&Vec) -> Vec>{ [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] help: change this to [INFO] [stdout] | [INFO] [stdout] 4 ~ fn find_applying_rules(rules:&Vec>,update:&[usize]) -> Vec>{ [INFO] [stdout] 5 | let mut applying_rules:Vec> = Vec::new(); [INFO] [stdout] 6 ~ let mut sort_update: Vec = update.to_owned(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/days/day5/star2.rs:39:9 [INFO] [stdout] | [INFO] [stdout] 39 | return 0; // Return None if the array is empty [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 39 - return 0; // Return None if the array is empty [INFO] [stdout] 39 + 0// Return None if the array is empty [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: binary comparison to literal `Option::None` [INFO] [stdout] --> src/days/day5/star1.rs:12:16 [INFO] [stdout] | [INFO] [stdout] 12 | if update.iter().position(|&x| x == rules[1][j]) != None{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `Option::is_some()` instead: `update.iter().position(|&x| x == rules[1][j]).is_some()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#partialeq_to_none [INFO] [stdout] = note: `#[warn(clippy::partialeq_to_none)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/days/day5/star2.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 41 | return arr[arr.len() / 2]; // Return the middle element [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 41 - return arr[arr.len() / 2]; // Return the middle element [INFO] [stdout] 41 + arr[arr.len() / 2]// Return the middle element [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/days/day5/star2.rs:37:27 [INFO] [stdout] | [INFO] [stdout] 37 | fn find_middle_value(arr: &Vec) -> usize { [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] help: change this to [INFO] [stdout] | [INFO] [stdout] 37 - fn find_middle_value(arr: &Vec) -> usize { [INFO] [stdout] 37 + fn find_middle_value(arr: &[usize]) -> usize { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/days/day5/star2.rs:51:20 [INFO] [stdout] | [INFO] [stdout] 51 | if !(left < right){ [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `(left >= right)` [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] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/days/day5/star2.rs:64:5 [INFO] [stdout] | [INFO] [stdout] 64 | return new_update; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 64 - return new_update; [INFO] [stdout] 64 + new_update [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/days/day5/star2.rs:44:23 [INFO] [stdout] | [INFO] [stdout] 44 | fn sort_update(update:&Vec,applying_rules:&Vec>) -> Vec{ [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] help: change this to [INFO] [stdout] | [INFO] [stdout] 44 ~ fn sort_update(update:&[usize],applying_rules:&Vec>) -> Vec{ [INFO] [stdout] 45 ~ let mut new_update: Vec = update.to_owned(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/days/day5/star1.rs:35:5 [INFO] [stdout] | [INFO] [stdout] 35 | return true; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 35 - return true; [INFO] [stdout] 35 + true [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `i` is only used to index `applying_rules` [INFO] [stdout] --> src/days/day5/star2.rs:47:18 [INFO] [stdout] | [INFO] [stdout] 47 | for i in 0..applying_rules.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] 47 - for i in 0..applying_rules.len(){ [INFO] [stdout] 47 + for in &applying_rules{ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/days/day5/star1.rs:26:23 [INFO] [stdout] | [INFO] [stdout] 26 | fn apply_rules(update:&Vec,applying_rules:&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] help: change this to [INFO] [stdout] | [INFO] [stdout] 26 - fn apply_rules(update:&Vec,applying_rules:&Vec>) -> bool{ [INFO] [stdout] 26 + fn apply_rules(update:&[usize],applying_rules:&Vec>) -> bool{ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/days/day5/star1.rs:40:9 [INFO] [stdout] | [INFO] [stdout] 40 | return 0; // Return None if the array is empty [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 40 - return 0; // Return None if the array is empty [INFO] [stdout] 40 + 0// Return None if the array is empty [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/days/day5/star2.rs:60:37 [INFO] [stdout] | [INFO] [stdout] 60 | if apply_rules(&new_update, &applying_rules){ [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: change this to: `applying_rules` [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: comparison to empty slice [INFO] [stdout] --> src/days/day5/star2.rs:80:20 [INFO] [stdout] | [INFO] [stdout] 80 | if i == ""{ [INFO] [stdout] | ^^^^^^^ help: using `is_empty` is clearer and more explicit: `i.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#comparison_to_empty [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/days/day5/star1.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 42 | return arr[arr.len() / 2]; // Return the middle element [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 42 - return arr[arr.len() / 2]; // Return the middle element [INFO] [stdout] 42 + arr[arr.len() / 2]// Return the middle element [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/days/day5/star1.rs:38:27 [INFO] [stdout] | [INFO] [stdout] 38 | fn find_middle_value(arr: &Vec) -> usize { [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] help: change this to [INFO] [stdout] | [INFO] [stdout] 38 - fn find_middle_value(arr: &Vec) -> usize { [INFO] [stdout] 38 + fn find_middle_value(arr: &[usize]) -> usize { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison to empty slice [INFO] [stdout] --> src/days/day5/star1.rs:59:20 [INFO] [stdout] | [INFO] [stdout] 59 | if i == ""{ [INFO] [stdout] | ^^^^^^^ help: using `is_empty` is clearer and more explicit: `i.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#comparison_to_empty [INFO] [stdout] = note: `#[warn(clippy::comparison_to_empty)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/days/day6/star1.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 19 | return (0,0); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 19 - return (0,0); [INFO] [stdout] 19 + (0,0) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/days/day5/star2.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | return applying_rules; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 21 - return applying_rules; [INFO] [stdout] 21 + applying_rules [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/days/day5/star2.rs:3:30 [INFO] [stdout] | [INFO] [stdout] 3 | fn find_applying_rules(rules:&Vec>,update:&Vec) -> Vec>{ [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] help: change this to [INFO] [stdout] | [INFO] [stdout] 3 - fn find_applying_rules(rules:&Vec>,update:&Vec) -> Vec>{ [INFO] [stdout] 3 + fn find_applying_rules(rules:&[Vec],update:&Vec) -> Vec>{ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/days/day5/star2.rs:3:54 [INFO] [stdout] | [INFO] [stdout] 3 | fn find_applying_rules(rules:&Vec>,update:&Vec) -> Vec>{ [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] help: change this to [INFO] [stdout] | [INFO] [stdout] 3 ~ fn find_applying_rules(rules:&Vec>,update:&[usize]) -> Vec>{ [INFO] [stdout] 4 | let mut applying_rules:Vec> = Vec::new(); [INFO] [stdout] 5 ~ let mut sort_update: Vec = update.to_owned(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/days/day6/star1.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | return (num1,num2); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 37 - return (num1,num2); [INFO] [stdout] 37 + (num1,num2) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/days/day6/star1.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | let num1: usize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] = note: `#[warn(clippy::needless_late_init)]` on by default [INFO] [stdout] help: move the declaration `num1` here and remove the assignments from the branches [INFO] [stdout] | [INFO] [stdout] 23 ~ [INFO] [stdout] 24 | let num2:usize; [INFO] [stdout] 25 | [INFO] [stdout] 26 ~ let num1: usize = if dir.0.is_negative() { [INFO] [stdout] 27 ~ pos.0.checked_sub(dir.0.unsigned_abs() as usize).unwrap_or(usize::MAX) [INFO] [stdout] 28 | } else { [INFO] [stdout] 29 ~ pos.0 + dir.0 as usize [INFO] [stdout] 30 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/days/day6/star1.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 24 | let num2:usize; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] help: move the declaration `num2` here and remove the assignments from the branches [INFO] [stdout] | [INFO] [stdout] 24 ~ [INFO] [stdout] 25 | [INFO] [stdout] ... [INFO] [stdout] 30 | } [INFO] [stdout] 31 ~ let num2:usize = if dir.1.is_negative() { [INFO] [stdout] 32 ~ pos.1.checked_sub(dir.1.unsigned_abs() as usize).unwrap_or(usize::MAX) [INFO] [stdout] 33 | } else { [INFO] [stdout] 34 ~ pos.1 + dir.1 as usize [INFO] [stdout] 35 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: binary comparison to literal `Option::None` [INFO] [stdout] --> src/days/day5/star2.rs:11:16 [INFO] [stdout] | [INFO] [stdout] 11 | if update.iter().position(|&x| x == rules[1][j]) != None{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `Option::is_some()` instead: `update.iter().position(|&x| x == rules[1][j]).is_some()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#partialeq_to_none [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/days/day5/star2.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 34 | return true; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 34 - return true; [INFO] [stdout] 34 + true [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/days/day5/star2.rs:25:23 [INFO] [stdout] | [INFO] [stdout] 25 | fn apply_rules(update:&Vec,applying_rules:&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] help: change this to [INFO] [stdout] | [INFO] [stdout] 25 - fn apply_rules(update:&Vec,applying_rules:&Vec>) -> bool{ [INFO] [stdout] 25 + fn apply_rules(update:&[usize],applying_rules:&Vec>) -> bool{ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/days/day5/star2.rs:39:9 [INFO] [stdout] | [INFO] [stdout] 39 | return 0; // Return None if the array is empty [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 39 - return 0; // Return None if the array is empty [INFO] [stdout] 39 + 0// Return None if the array is empty [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the variable `line_row` is used as a loop counter [INFO] [stdout] --> src/days/day6/star1.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 54 | for line in content.lines(){ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `for (line_row, line) in content.lines().enumerate()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_counter_loop [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/days/day5/star2.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 41 | return arr[arr.len() / 2]; // Return the middle element [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 41 - return arr[arr.len() / 2]; // Return the middle element [INFO] [stdout] 41 + arr[arr.len() / 2]// Return the middle element [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/days/day5/star2.rs:37:27 [INFO] [stdout] | [INFO] [stdout] 37 | fn find_middle_value(arr: &Vec) -> usize { [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] help: change this to [INFO] [stdout] | [INFO] [stdout] 37 - fn find_middle_value(arr: &Vec) -> usize { [INFO] [stdout] 37 + fn find_middle_value(arr: &[usize]) -> usize { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/days/day5/star2.rs:51:20 [INFO] [stdout] | [INFO] [stdout] 51 | if !(left < right){ [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `(left >= right)` [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] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/days/day5/star2.rs:64:5 [INFO] [stdout] | [INFO] [stdout] 64 | return new_update; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 64 - return new_update; [INFO] [stdout] 64 + new_update [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/days/day5/star2.rs:44:23 [INFO] [stdout] | [INFO] [stdout] 44 | fn sort_update(update:&Vec,applying_rules:&Vec>) -> Vec{ [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] help: change this to [INFO] [stdout] | [INFO] [stdout] 44 ~ fn sort_update(update:&[usize],applying_rules:&Vec>) -> Vec{ [INFO] [stdout] 45 ~ let mut new_update: Vec = update.to_owned(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `i` is only used to index `applying_rules` [INFO] [stdout] --> src/days/day5/star2.rs:47:18 [INFO] [stdout] | [INFO] [stdout] 47 | for i in 0..applying_rules.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] 47 - for i in 0..applying_rules.len(){ [INFO] [stdout] 47 + for in &applying_rules{ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/days/day5/star2.rs:60:37 [INFO] [stdout] | [INFO] [stdout] 60 | if apply_rules(&new_update, &applying_rules){ [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: change this to: `applying_rules` [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: unneeded `return` statement [INFO] [stdout] --> src/days/day7/star1.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 29 | return Err(operators.iter().cloned().collect()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 29 - return Err(operators.iter().cloned().collect()); [INFO] [stdout] 29 + Err(operators.iter().cloned().collect()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/days/day7/star1.rs:14:22 [INFO] [stdout] | [INFO] [stdout] 14 | fn calculate(numbers:&Vec,result:usize,operators:&Vec) -> Result>{ [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] help: change this to [INFO] [stdout] | [INFO] [stdout] 14 - fn calculate(numbers:&Vec,result:usize,operators:&Vec) -> Result>{ [INFO] [stdout] 14 + fn calculate(numbers:&[usize],result:usize,operators:&Vec) -> Result>{ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/days/day7/star1.rs:14:57 [INFO] [stdout] | [INFO] [stdout] 14 | fn calculate(numbers:&Vec,result:usize,operators:&Vec) -> Result>{ [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] help: change this to [INFO] [stdout] | [INFO] [stdout] 14 - fn calculate(numbers:&Vec,result:usize,operators:&Vec) -> Result>{ [INFO] [stdout] 14 + fn calculate(numbers:&Vec,result:usize,operators:&[char]) -> Result>{ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison to empty slice [INFO] [stdout] --> src/days/day5/star2.rs:80:20 [INFO] [stdout] | [INFO] [stdout] 80 | if i == ""{ [INFO] [stdout] | ^^^^^^^ help: using `is_empty` is clearer and more explicit: `i.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#comparison_to_empty [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `iter().cloned().collect()` on a slice to create a `Vec`. Calling `to_vec()` is both faster and more readable [INFO] [stdout] --> src/days/day7/star1.rs:29:25 [INFO] [stdout] | [INFO] [stdout] 29 | return Err(operators.iter().cloned().collect()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `.to_vec()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#iter_cloned_collect [INFO] [stdout] = note: `#[warn(clippy::iter_cloned_collect)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/days/day7/star1.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 42 | return permutations; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 42 - return permutations; [INFO] [stdout] 42 + permutations [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/days/day7/star1.rs:47:30 [INFO] [stdout] | [INFO] [stdout] 47 | fn starts_with_sequence(vec: &Vec, sequence: &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] help: change this to [INFO] [stdout] | [INFO] [stdout] 47 - fn starts_with_sequence(vec: &Vec, sequence: &Vec) -> bool { [INFO] [stdout] 47 + fn starts_with_sequence(vec: &[char], sequence: &Vec) -> bool { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/days/day7/star1.rs:47:52 [INFO] [stdout] | [INFO] [stdout] 47 | fn starts_with_sequence(vec: &Vec, sequence: &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] help: change this to [INFO] [stdout] | [INFO] [stdout] 47 - fn starts_with_sequence(vec: &Vec, sequence: &Vec) -> bool { [INFO] [stdout] 47 + fn starts_with_sequence(vec: &Vec, sequence: &[char]) -> bool { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/days/day6/star1.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 19 | return (0,0); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 19 - return (0,0); [INFO] [stdout] 19 + (0,0) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/days/day6/star1.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | return (num1,num2); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 37 - return (num1,num2); [INFO] [stdout] 37 + (num1,num2) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/days/day6/star1.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | let num1: usize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] = note: `#[warn(clippy::needless_late_init)]` on by default [INFO] [stdout] help: move the declaration `num1` here and remove the assignments from the branches [INFO] [stdout] | [INFO] [stdout] 23 ~ [INFO] [stdout] 24 | let num2:usize; [INFO] [stdout] 25 | [INFO] [stdout] 26 ~ let num1: usize = if dir.0.is_negative() { [INFO] [stdout] 27 ~ pos.0.checked_sub(dir.0.unsigned_abs() as usize).unwrap_or(usize::MAX) [INFO] [stdout] 28 | } else { [INFO] [stdout] 29 ~ pos.0 + dir.0 as usize [INFO] [stdout] 30 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/days/day6/star1.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 24 | let num2:usize; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] help: move the declaration `num2` here and remove the assignments from the branches [INFO] [stdout] | [INFO] [stdout] 24 ~ [INFO] [stdout] 25 | [INFO] [stdout] ... [INFO] [stdout] 30 | } [INFO] [stdout] 31 ~ let num2:usize = if dir.1.is_negative() { [INFO] [stdout] 32 ~ pos.1.checked_sub(dir.1.unsigned_abs() as usize).unwrap_or(usize::MAX) [INFO] [stdout] 33 | } else { [INFO] [stdout] 34 ~ pos.1 + dir.1 as usize [INFO] [stdout] 35 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/days/day8/star1.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | return par1.0 + par1.1 > par2.0 + par2.1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 8 - return par1.0 + par1.1 > par2.0 + par2.1; [INFO] [stdout] 8 + par1.0 + par1.1 > par2.0 + par2.1 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/days/day8/star1.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | return (bigger.0 - lower.0, bigger.1 - lower.1); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 14 - return (bigger.0 - lower.0, bigger.1 - lower.1); [INFO] [stdout] 14 + (bigger.0 - lower.0, bigger.1 - lower.1) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the variable `line_row` is used as a loop counter [INFO] [stdout] --> src/days/day6/star1.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 54 | for line in content.lines(){ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `for (line_row, line) in content.lines().enumerate()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_counter_loop [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's values [INFO] [stdout] --> src/days/day8/star1.rs:50:34 [INFO] [stdout] | [INFO] [stdout] 50 | for (_,positions) in &antennas{ [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] = note: `#[warn(clippy::for_kv_map)]` on by default [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 50 - for (_,positions) in &antennas{ [INFO] [stdout] 50 + for positions in antennas.values(){ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/days/day7/star1.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 29 | return Err(operators.iter().cloned().collect()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 29 - return Err(operators.iter().cloned().collect()); [INFO] [stdout] 29 + Err(operators.iter().cloned().collect()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/days/day7/star1.rs:14:22 [INFO] [stdout] | [INFO] [stdout] 14 | fn calculate(numbers:&Vec,result:usize,operators:&Vec) -> Result>{ [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] help: change this to [INFO] [stdout] | [INFO] [stdout] 14 - fn calculate(numbers:&Vec,result:usize,operators:&Vec) -> Result>{ [INFO] [stdout] 14 + fn calculate(numbers:&[usize],result:usize,operators:&Vec) -> Result>{ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/days/day7/star1.rs:14:57 [INFO] [stdout] | [INFO] [stdout] 14 | fn calculate(numbers:&Vec,result:usize,operators:&Vec) -> Result>{ [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] help: change this to [INFO] [stdout] | [INFO] [stdout] 14 - fn calculate(numbers:&Vec,result:usize,operators:&Vec) -> Result>{ [INFO] [stdout] 14 + fn calculate(numbers:&Vec,result:usize,operators:&[char]) -> Result>{ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `iter().cloned().collect()` on a slice to create a `Vec`. Calling `to_vec()` is both faster and more readable [INFO] [stdout] --> src/days/day7/star1.rs:29:25 [INFO] [stdout] | [INFO] [stdout] 29 | return Err(operators.iter().cloned().collect()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `.to_vec()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#iter_cloned_collect [INFO] [stdout] = note: `#[warn(clippy::iter_cloned_collect)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/days/day7/star1.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 42 | return permutations; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 42 - return permutations; [INFO] [stdout] 42 + permutations [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/days/day7/star1.rs:47:30 [INFO] [stdout] | [INFO] [stdout] 47 | fn starts_with_sequence(vec: &Vec, sequence: &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] help: change this to [INFO] [stdout] | [INFO] [stdout] 47 - fn starts_with_sequence(vec: &Vec, sequence: &Vec) -> bool { [INFO] [stdout] 47 + fn starts_with_sequence(vec: &[char], sequence: &Vec) -> bool { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/days/day8/star2.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | return par1.0 + par1.1 > par2.0 + par2.1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 8 - return par1.0 + par1.1 > par2.0 + par2.1; [INFO] [stdout] 8 + par1.0 + par1.1 > par2.0 + par2.1 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/days/day7/star1.rs:47:52 [INFO] [stdout] | [INFO] [stdout] 47 | fn starts_with_sequence(vec: &Vec, sequence: &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] help: change this to [INFO] [stdout] | [INFO] [stdout] 47 - fn starts_with_sequence(vec: &Vec, sequence: &Vec) -> bool { [INFO] [stdout] 47 + fn starts_with_sequence(vec: &Vec, sequence: &[char]) -> bool { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/days/day8/star2.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | return (bigger.0 - lower.0, bigger.1 - lower.1); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 14 - return (bigger.0 - lower.0, bigger.1 - lower.1); [INFO] [stdout] 14 + (bigger.0 - lower.0, bigger.1 - lower.1) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's values [INFO] [stdout] --> src/days/day8/star2.rs:50:34 [INFO] [stdout] | [INFO] [stdout] 50 | for (_,positions) in &antennas{ [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 50 - for (_,positions) in &antennas{ [INFO] [stdout] 50 + for positions in antennas.values(){ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/days/day8/star1.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | return par1.0 + par1.1 > par2.0 + par2.1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 8 - return par1.0 + par1.1 > par2.0 + par2.1; [INFO] [stdout] 8 + par1.0 + par1.1 > par2.0 + par2.1 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/days/day8/star1.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | return (bigger.0 - lower.0, bigger.1 - lower.1); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 14 - return (bigger.0 - lower.0, bigger.1 - lower.1); [INFO] [stdout] 14 + (bigger.0 - lower.0, bigger.1 - lower.1) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's values [INFO] [stdout] --> src/days/day8/star1.rs:50:34 [INFO] [stdout] | [INFO] [stdout] 50 | for (_,positions) in &antennas{ [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] = note: `#[warn(clippy::for_kv_map)]` on by default [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 50 - for (_,positions) in &antennas{ [INFO] [stdout] 50 + for positions in antennas.values(){ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/days/day8/star2.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | return par1.0 + par1.1 > par2.0 + par2.1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 8 - return par1.0 + par1.1 > par2.0 + par2.1; [INFO] [stdout] 8 + par1.0 + par1.1 > par2.0 + par2.1 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/days/day8/star2.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | return (bigger.0 - lower.0, bigger.1 - lower.1); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 14 - return (bigger.0 - lower.0, bigger.1 - lower.1); [INFO] [stdout] 14 + (bigger.0 - lower.0, bigger.1 - lower.1) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's values [INFO] [stdout] --> src/days/day8/star2.rs:50:34 [INFO] [stdout] | [INFO] [stdout] 50 | for (_,positions) in &antennas{ [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 50 - for (_,positions) in &antennas{ [INFO] [stdout] 50 + for positions in antennas.values(){ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 4.38s [INFO] running `Command { std: "docker" "inspect" "4a8a70cc8c4b6e8e0ef7b02f6e0404468313c2f860ba2ee0ae190484686ee88e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4a8a70cc8c4b6e8e0ef7b02f6e0404468313c2f860ba2ee0ae190484686ee88e", kill_on_drop: false }` [INFO] [stdout] 4a8a70cc8c4b6e8e0ef7b02f6e0404468313c2f860ba2ee0ae190484686ee88e