[INFO] updating cached repository rcoverick/rust_dailyprogrammer [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/rcoverick/rust_dailyprogrammer [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/rcoverick/rust_dailyprogrammer" "work/ex/clippy-test-run/sources/stable/gh/rcoverick/rust_dailyprogrammer"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/rcoverick/rust_dailyprogrammer'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/rcoverick/rust_dailyprogrammer" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/rcoverick/rust_dailyprogrammer"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/rcoverick/rust_dailyprogrammer'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 7eba5007eb1ec145617b2771d020da0663dd7473 [INFO] sha for GitHub repo rcoverick/rust_dailyprogrammer: 7eba5007eb1ec145617b2771d020da0663dd7473 [INFO] validating manifest of rcoverick/rust_dailyprogrammer on toolchain stable [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of rcoverick/rust_dailyprogrammer on toolchain stable+rustflags=-Dclippy::into_iter_on_array [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing rcoverick/rust_dailyprogrammer [INFO] finished frobbing rcoverick/rust_dailyprogrammer [INFO] frobbed toml for rcoverick/rust_dailyprogrammer written to work/ex/clippy-test-run/sources/stable/gh/rcoverick/rust_dailyprogrammer/Cargo.toml [INFO] started frobbing rcoverick/rust_dailyprogrammer [INFO] finished frobbing rcoverick/rust_dailyprogrammer [INFO] frobbed toml for rcoverick/rust_dailyprogrammer written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/rcoverick/rust_dailyprogrammer/Cargo.toml [INFO] crate rcoverick/rust_dailyprogrammer has a lockfile. skipping [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] linting rcoverick/rust_dailyprogrammer against stable+rustflags=-Dclippy::into_iter_on_array for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-5/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/rcoverick/rust_dailyprogrammer:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dclippy::into_iter_on_array" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+stable" "clippy" "--frozen" "--all" "--all-targets"` [INFO] [stdout] 3521c9f5eebe65010edf168da32ea77753804e8ffc2318a3f52a2cf55bb8624c [INFO] running `"docker" "start" "-a" "3521c9f5eebe65010edf168da32ea77753804e8ffc2318a3f52a2cf55bb8624c"` [INFO] [stderr] Checking dailyprogrammer v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: using `println!("")` [INFO] [stderr] --> src/challenge/easy/kid_lotto.rs:46:9 [INFO] [stderr] | [INFO] [stderr] 46 | println!(""); [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `println!()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::println_empty_string)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#println_empty_string [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/challenge/intermediate/pgm_manipulation.rs:77:13 [INFO] [stderr] | [INFO] [stderr] 77 | let j = (b * height) + a; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::many_single_char_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/challenge/intermediate/pgm_manipulation.rs:99:13 [INFO] [stderr] | [INFO] [stderr] 99 | let j = (b * height) + a; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: using `println!("")` [INFO] [stderr] --> src/challenge/intermediate/pgm_manipulation.rs:139:5 [INFO] [stderr] | [INFO] [stderr] 139 | println!(""); [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `println!()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#println_empty_string [INFO] [stderr] [INFO] [stderr] warning: using `println!("")` [INFO] [stderr] --> src/challenge/easy/kid_lotto.rs:46:9 [INFO] [stderr] | [INFO] [stderr] 46 | println!(""); [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `println!()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::println_empty_string)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#println_empty_string [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/challenge/intermediate/pgm_manipulation.rs:77:13 [INFO] [stderr] | [INFO] [stderr] 77 | let j = (b * height) + a; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::many_single_char_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/challenge/intermediate/pgm_manipulation.rs:99:13 [INFO] [stderr] | [INFO] [stderr] 99 | let j = (b * height) + a; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: using `println!("")` [INFO] [stderr] --> src/challenge/intermediate/pgm_manipulation.rs:139:5 [INFO] [stderr] | [INFO] [stderr] 139 | println!(""); [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `println!()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#println_empty_string [INFO] [stderr] [INFO] [stderr] warning: this if statement can be collapsed [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:67:13 [INFO] [stderr] | [INFO] [stderr] 67 | / if acctnr == entry.0 { [INFO] [stderr] 68 | | if entry.1.tm_year >= start.tm_year && entry.1.tm_year <= end.tm_year{ [INFO] [stderr] 69 | | if entry.1.tm_mon >= start.tm_mon && entry.1.tm_mon <= end.tm_mon{ [INFO] [stderr] 70 | | debit += entry.2; [INFO] [stderr] 71 | | } [INFO] [stderr] 72 | | } [INFO] [stderr] 73 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::collapsible_if)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 67 | if acctnr == entry.0 && entry.1.tm_year >= start.tm_year && entry.1.tm_year <= end.tm_year { [INFO] [stderr] 68 | if entry.1.tm_mon >= start.tm_mon && entry.1.tm_mon <= end.tm_mon{ [INFO] [stderr] 69 | debit += entry.2; [INFO] [stderr] 70 | } [INFO] [stderr] 71 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this if statement can be collapsed [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:68:17 [INFO] [stderr] | [INFO] [stderr] 68 | / if entry.1.tm_year >= start.tm_year && entry.1.tm_year <= end.tm_year{ [INFO] [stderr] 69 | | if entry.1.tm_mon >= start.tm_mon && entry.1.tm_mon <= end.tm_mon{ [INFO] [stderr] 70 | | debit += entry.2; [INFO] [stderr] 71 | | } [INFO] [stderr] 72 | | } [INFO] [stderr] | |_________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 68 | if entry.1.tm_year >= start.tm_year && entry.1.tm_year <= end.tm_year && entry.1.tm_mon >= start.tm_mon && entry.1.tm_mon <= end.tm_mon { [INFO] [stderr] 69 | debit += entry.2; [INFO] [stderr] 70 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this if statement can be collapsed [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:77:13 [INFO] [stderr] | [INFO] [stderr] 77 | / if entry.1.tm_year >= start.tm_year && entry.1.tm_year <= end.tm_year{ [INFO] [stderr] 78 | | if entry.1.tm_mon >= start.tm_mon && entry.1.tm_mon <= end.tm_mon{ [INFO] [stderr] 79 | | debit += entry.2; [INFO] [stderr] 80 | | } [INFO] [stderr] 81 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 77 | if entry.1.tm_year >= start.tm_year && entry.1.tm_year <= end.tm_year && entry.1.tm_mon >= start.tm_mon && entry.1.tm_mon <= end.tm_mon { [INFO] [stderr] 78 | debit += entry.2; [INFO] [stderr] 79 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this if statement can be collapsed [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:93:13 [INFO] [stderr] | [INFO] [stderr] 93 | / if acctnr == entry.0 { [INFO] [stderr] 94 | | if entry.1.tm_year >= start.tm_year && entry.1.tm_year <= end.tm_year{ [INFO] [stderr] 95 | | if entry.1.tm_mon >= start.tm_mon && entry.1.tm_mon <= end.tm_mon{ [INFO] [stderr] 96 | | credit += entry.3; [INFO] [stderr] 97 | | } [INFO] [stderr] 98 | | } [INFO] [stderr] 99 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 93 | if acctnr == entry.0 && entry.1.tm_year >= start.tm_year && entry.1.tm_year <= end.tm_year { [INFO] [stderr] 94 | if entry.1.tm_mon >= start.tm_mon && entry.1.tm_mon <= end.tm_mon{ [INFO] [stderr] 95 | credit += entry.3; [INFO] [stderr] 96 | } [INFO] [stderr] 97 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this if statement can be collapsed [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:94:17 [INFO] [stderr] | [INFO] [stderr] 94 | / if entry.1.tm_year >= start.tm_year && entry.1.tm_year <= end.tm_year{ [INFO] [stderr] 95 | | if entry.1.tm_mon >= start.tm_mon && entry.1.tm_mon <= end.tm_mon{ [INFO] [stderr] 96 | | credit += entry.3; [INFO] [stderr] 97 | | } [INFO] [stderr] 98 | | } [INFO] [stderr] | |_________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 94 | if entry.1.tm_year >= start.tm_year && entry.1.tm_year <= end.tm_year && entry.1.tm_mon >= start.tm_mon && entry.1.tm_mon <= end.tm_mon { [INFO] [stderr] 95 | credit += entry.3; [INFO] [stderr] 96 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this if statement can be collapsed [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:103:13 [INFO] [stderr] | [INFO] [stderr] 103 | / if entry.1.tm_year >= start.tm_year && entry.1.tm_year <= end.tm_year{ [INFO] [stderr] 104 | | if entry.1.tm_mon >= start.tm_mon && entry.1.tm_mon <= end.tm_mon{ [INFO] [stderr] 105 | | credit += entry.3; [INFO] [stderr] 106 | | } [INFO] [stderr] 107 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 103 | if entry.1.tm_year >= start.tm_year && entry.1.tm_year <= end.tm_year && entry.1.tm_mon >= start.tm_mon && entry.1.tm_mon <= end.tm_mon { [INFO] [stderr] 104 | credit += entry.3; [INFO] [stderr] 105 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this if statement can be collapsed [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:195:5 [INFO] [stderr] | [INFO] [stderr] 195 | / if target.tm_year >= start.tm_year && target.tm_year <= end.tm_year{ [INFO] [stderr] 196 | | if target.tm_mon >= start.tm_mon && target.tm_mon <= end.tm_mon{ [INFO] [stderr] 197 | | return true; [INFO] [stderr] 198 | | } [INFO] [stderr] 199 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] warning: this if statement can be collapsed [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:67:13 [INFO] [stderr] | [INFO] [stderr] 67 | / if acctnr == entry.0 { [INFO] [stderr] 68 | | if entry.1.tm_year >= start.tm_year && entry.1.tm_year <= end.tm_year{ [INFO] [stderr] 69 | | if entry.1.tm_mon >= start.tm_mon && entry.1.tm_mon <= end.tm_mon{ [INFO] [stderr] 70 | | debit += entry.2; [INFO] [stderr] 71 | | } [INFO] [stderr] 72 | | } [INFO] [stderr] 73 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::collapsible_if)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 67 | if acctnr == entry.0 && entry.1.tm_year >= start.tm_year && entry.1.tm_year <= end.tm_year { [INFO] [stderr] 68 | if entry.1.tm_mon >= start.tm_mon && entry.1.tm_mon <= end.tm_mon{ [INFO] [stderr] 69 | debit += entry.2; [INFO] [stderr] 70 | } [INFO] [stderr] 71 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this if statement can be collapsed [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:68:17 [INFO] [stderr] | [INFO] [stderr] 68 | / if entry.1.tm_year >= start.tm_year && entry.1.tm_year <= end.tm_year{ [INFO] [stderr] 69 | | if entry.1.tm_mon >= start.tm_mon && entry.1.tm_mon <= end.tm_mon{ [INFO] [stderr] 70 | | debit += entry.2; [INFO] [stderr] 71 | | } [INFO] [stderr] 72 | | } [INFO] [stderr] | |_________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 68 | if entry.1.tm_year >= start.tm_year && entry.1.tm_year <= end.tm_year && entry.1.tm_mon >= start.tm_mon && entry.1.tm_mon <= end.tm_mon { [INFO] [stderr] 69 | debit += entry.2; [INFO] [stderr] 70 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this if statement can be collapsed [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:77:13 [INFO] [stderr] | [INFO] [stderr] 77 | / if entry.1.tm_year >= start.tm_year && entry.1.tm_year <= end.tm_year{ [INFO] [stderr] 78 | | if entry.1.tm_mon >= start.tm_mon && entry.1.tm_mon <= end.tm_mon{ [INFO] [stderr] 79 | | debit += entry.2; [INFO] [stderr] 80 | | } [INFO] [stderr] 81 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 77 | if entry.1.tm_year >= start.tm_year && entry.1.tm_year <= end.tm_year && entry.1.tm_mon >= start.tm_mon && entry.1.tm_mon <= end.tm_mon { [INFO] [stderr] 78 | debit += entry.2; [INFO] [stderr] 79 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this if statement can be collapsed [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:93:13 [INFO] [stderr] | [INFO] [stderr] 93 | / if acctnr == entry.0 { [INFO] [stderr] 94 | | if entry.1.tm_year >= start.tm_year && entry.1.tm_year <= end.tm_year{ [INFO] [stderr] 95 | | if entry.1.tm_mon >= start.tm_mon && entry.1.tm_mon <= end.tm_mon{ [INFO] [stderr] 96 | | credit += entry.3; [INFO] [stderr] 97 | | } [INFO] [stderr] 98 | | } [INFO] [stderr] 99 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 93 | if acctnr == entry.0 && entry.1.tm_year >= start.tm_year && entry.1.tm_year <= end.tm_year { [INFO] [stderr] 94 | if entry.1.tm_mon >= start.tm_mon && entry.1.tm_mon <= end.tm_mon{ [INFO] [stderr] 95 | credit += entry.3; [INFO] [stderr] 96 | } [INFO] [stderr] 97 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this if statement can be collapsed [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:94:17 [INFO] [stderr] | [INFO] [stderr] 94 | / if entry.1.tm_year >= start.tm_year && entry.1.tm_year <= end.tm_year{ [INFO] [stderr] 95 | | if entry.1.tm_mon >= start.tm_mon && entry.1.tm_mon <= end.tm_mon{ [INFO] [stderr] 96 | | credit += entry.3; [INFO] [stderr] 97 | | } [INFO] [stderr] 98 | | } [INFO] [stderr] | |_________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 94 | if entry.1.tm_year >= start.tm_year && entry.1.tm_year <= end.tm_year && entry.1.tm_mon >= start.tm_mon && entry.1.tm_mon <= end.tm_mon { [INFO] [stderr] 95 | credit += entry.3; [INFO] [stderr] 96 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this if statement can be collapsed [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:103:13 [INFO] [stderr] | [INFO] [stderr] 103 | / if entry.1.tm_year >= start.tm_year && entry.1.tm_year <= end.tm_year{ [INFO] [stderr] 104 | | if entry.1.tm_mon >= start.tm_mon && entry.1.tm_mon <= end.tm_mon{ [INFO] [stderr] 105 | | credit += entry.3; [INFO] [stderr] 106 | | } [INFO] [stderr] 107 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 103 | if entry.1.tm_year >= start.tm_year && entry.1.tm_year <= end.tm_year && entry.1.tm_mon >= start.tm_mon && entry.1.tm_mon <= end.tm_mon { [INFO] [stderr] 104 | credit += entry.3; [INFO] [stderr] 105 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this if statement can be collapsed [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:195:5 [INFO] [stderr] | [INFO] [stderr] 195 | / if target.tm_year >= start.tm_year && target.tm_year <= end.tm_year{ [INFO] [stderr] 196 | | if target.tm_mon >= start.tm_mon && target.tm_mon <= end.tm_mon{ [INFO] [stderr] 197 | | return true; [INFO] [stderr] 198 | | } [INFO] [stderr] 199 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 195 | if target.tm_year >= start.tm_year && target.tm_year <= end.tm_year && target.tm_mon >= start.tm_mon && target.tm_mon <= end.tm_mon { [INFO] [stderr] 196 | return true; [INFO] [stderr] 197 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 195 | if target.tm_year >= start.tm_year && target.tm_year <= end.tm_year && target.tm_mon >= start.tm_mon && target.tm_mon <= end.tm_mon { [INFO] [stderr] 196 | return true; [INFO] [stderr] 197 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: doc comment not used by rustdoc [INFO] [stderr] --> src/challenge/easy/pandigital_roman_numbers.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | ///Numerals need to be in order. Each pair of numerals can be swapped to form a different number. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_doc_comments)] on by default [INFO] [stderr] [INFO] [stderr] warning: doc comment not used by rustdoc [INFO] [stderr] --> src/challenge/easy/pandigital_roman_numbers.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | ///Numerals need to be in order. Each pair of numerals can be swapped to form a different number. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_doc_comments)] on by default [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/challenge/easy/adding_calculator.rs:75:9 [INFO] [stderr] | [INFO] [stderr] 75 | return CalculationResult::Ans(ans); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `CalculationResult::Ans(ans)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_return)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/challenge/easy/adding_calculator.rs:80:9 [INFO] [stderr] | [INFO] [stderr] 80 | return CalculationResult::Negative(ans); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `CalculationResult::Negative(ans)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/challenge/easy/adding_calculator.rs:151:9 [INFO] [stderr] | [INFO] [stderr] 151 | return CalculationResult::Ans(ans); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `CalculationResult::Ans(ans)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/challenge/easy/adding_calculator.rs:155:9 [INFO] [stderr] | [INFO] [stderr] 155 | return CalculationResult::NotIntegral; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `CalculationResult::NotIntegral` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around method argument [INFO] [stderr] --> src/challenge/intermediate/pgm_manipulation.rs:20:32 [INFO] [stderr] | [INFO] [stderr] 20 | io::stdin().read_to_string((&mut buf)).unwrap(); [INFO] [stderr] | ^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_parens)] on by default [INFO] [stderr] [INFO] [stderr] warning: Consider removing unnecessary double parentheses [INFO] [stderr] --> src/challenge/intermediate/pgm_manipulation.rs:20:32 [INFO] [stderr] | [INFO] [stderr] 20 | io::stdin().read_to_string((&mut buf)).unwrap(); [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::double_parens)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#double_parens [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/challenge/easy/adding_calculator.rs:75:9 [INFO] [stderr] | [INFO] [stderr] 75 | return CalculationResult::Ans(ans); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `CalculationResult::Ans(ans)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_return)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/challenge/easy/adding_calculator.rs:80:9 [INFO] [stderr] | [INFO] [stderr] 80 | return CalculationResult::Negative(ans); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `CalculationResult::Negative(ans)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/challenge/easy/adding_calculator.rs:151:9 [INFO] [stderr] | [INFO] [stderr] 151 | return CalculationResult::Ans(ans); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `CalculationResult::Ans(ans)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/challenge/easy/adding_calculator.rs:155:9 [INFO] [stderr] | [INFO] [stderr] 155 | return CalculationResult::NotIntegral; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `CalculationResult::NotIntegral` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around method argument [INFO] [stderr] --> src/challenge/intermediate/pgm_manipulation.rs:20:32 [INFO] [stderr] | [INFO] [stderr] 20 | io::stdin().read_to_string((&mut buf)).unwrap(); [INFO] [stderr] | ^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_parens)] on by default [INFO] [stderr] [INFO] [stderr] warning: Consider removing unnecessary double parentheses [INFO] [stderr] --> src/challenge/intermediate/pgm_manipulation.rs:20:32 [INFO] [stderr] | [INFO] [stderr] 20 | io::stdin().read_to_string((&mut buf)).unwrap(); [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::double_parens)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#double_parens [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/challenge/intermediate/pgm_manipulation.rs:38:41 [INFO] [stderr] | [INFO] [stderr] 38 | res.chunks_mut(width as usize).map(|mut x| x.reverse()).count(); [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_mut)] on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/challenge/intermediate/pgm_manipulation.rs:38:41 [INFO] [stderr] | [INFO] [stderr] 38 | res.chunks_mut(width as usize).map(|mut x| x.reverse()).count(); [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_mut)] on by default [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:45:37 [INFO] [stderr] | [INFO] [stderr] 45 | fn verify_journal_balanced(journal: &Vec<(i32,time::Tm,i32,i32)>) -> Result<&str, &str>{ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `&[(i32,time::Tm,i32,i32)]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::ptr_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:63:26 [INFO] [stderr] | [INFO] [stderr] 63 | fn total_debits(journal: &Vec<(i32, time::Tm, i32, i32)>, acctnr: i32, start: &time::Tm, end: &time::Tm) -> i32{ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `&[(i32, time::Tm, i32, i32)]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:45:37 [INFO] [stderr] | [INFO] [stderr] 45 | fn verify_journal_balanced(journal: &Vec<(i32,time::Tm,i32,i32)>) -> Result<&str, &str>{ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `&[(i32,time::Tm,i32,i32)]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::ptr_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:63:26 [INFO] [stderr] | [INFO] [stderr] 63 | fn total_debits(journal: &Vec<(i32, time::Tm, i32, i32)>, acctnr: i32, start: &time::Tm, end: &time::Tm) -> i32{ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `&[(i32, time::Tm, i32, i32)]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:89:27 [INFO] [stderr] | [INFO] [stderr] 89 | fn total_credits(journal: &Vec<(i32, time::Tm, i32, i32)>, acctnr: i32, start: &time::Tm, end: &time::Tm) -> i32{ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `&[(i32, time::Tm, i32, i32)]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:89:27 [INFO] [stderr] | [INFO] [stderr] 89 | fn total_credits(journal: &Vec<(i32, time::Tm, i32, i32)>, acctnr: i32, start: &time::Tm, end: &time::Tm) -> i32{ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `&[(i32, time::Tm, i32, i32)]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:117:30 [INFO] [stderr] | [INFO] [stderr] 117 | fn process_user_input(input: &String, journal: &Vec<(i32, time::Tm, i32, i32)>, acct_list: &Vec<(i32, String)> ) -> (i32,i32,time::Tm, time::Tm, String){ [INFO] [stderr] | ^^^^^^^ help: change this to: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:117:48 [INFO] [stderr] | [INFO] [stderr] 117 | fn process_user_input(input: &String, journal: &Vec<(i32, time::Tm, i32, i32)>, acct_list: &Vec<(i32, String)> ) -> (i32,i32,time::Tm, time::Tm, String){ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `&[(i32, time::Tm, i32, i32)]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:117:92 [INFO] [stderr] | [INFO] [stderr] 117 | fn process_user_input(input: &String, journal: &Vec<(i32, time::Tm, i32, i32)>, acct_list: &Vec<(i32, String)> ) -> (i32,i32,time::Tm, time::Tm, String){ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: change this to: `&[(i32, String)]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:117:30 [INFO] [stderr] | [INFO] [stderr] 117 | fn process_user_input(input: &String, journal: &Vec<(i32, time::Tm, i32, i32)>, acct_list: &Vec<(i32, String)> ) -> (i32,i32,time::Tm, time::Tm, String){ [INFO] [stderr] | ^^^^^^^ help: change this to: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:117:48 [INFO] [stderr] | [INFO] [stderr] 117 | fn process_user_input(input: &String, journal: &Vec<(i32, time::Tm, i32, i32)>, acct_list: &Vec<(i32, String)> ) -> (i32,i32,time::Tm, time::Tm, String){ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `&[(i32, time::Tm, i32, i32)]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:117:92 [INFO] [stderr] | [INFO] [stderr] 117 | fn process_user_input(input: &String, journal: &Vec<(i32, time::Tm, i32, i32)>, acct_list: &Vec<(i32, String)> ) -> (i32,i32,time::Tm, time::Tm, String){ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: change this to: `&[(i32, String)]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: this creates an owned instance just for comparison [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:124:8 [INFO] [stderr] | [INFO] [stderr] 124 | if fields[0].to_string() == "*"{ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `fields[0]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cmp_owned)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stderr] [INFO] [stderr] warning: this creates an owned instance just for comparison [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:135:8 [INFO] [stderr] | [INFO] [stderr] 135 | if fields[1].to_string() == "*"{ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `fields[1]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stderr] [INFO] [stderr] warning: this creates an owned instance just for comparison [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:146:8 [INFO] [stderr] | [INFO] [stderr] 146 | if fields[2].to_string() == "*"{ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `fields[2]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stderr] [INFO] [stderr] warning: this creates an owned instance just for comparison [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:153:8 [INFO] [stderr] | [INFO] [stderr] 153 | if fields[3].to_string() == "*"{ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `fields[3]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stderr] [INFO] [stderr] warning: this creates an owned instance just for comparison [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:124:8 [INFO] [stderr] | [INFO] [stderr] 124 | if fields[0].to_string() == "*"{ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `fields[0]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cmp_owned)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stderr] [INFO] [stderr] warning: this creates an owned instance just for comparison [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:135:8 [INFO] [stderr] | [INFO] [stderr] 135 | if fields[1].to_string() == "*"{ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `fields[1]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stderr] [INFO] [stderr] warning: this creates an owned instance just for comparison [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:146:8 [INFO] [stderr] | [INFO] [stderr] 146 | if fields[2].to_string() == "*"{ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `fields[2]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stderr] [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:180:50 [INFO] [stderr] | [INFO] [stderr] 180 | fn append_title_line(buffer: &mut String, style: &String) { [INFO] [stderr] | ^^^^^^^ help: change this to: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: this creates an owned instance just for comparison [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:153:8 [INFO] [stderr] | [INFO] [stderr] 153 | if fields[3].to_string() == "*"{ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `fields[3]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stderr] [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:180:50 [INFO] [stderr] | [INFO] [stderr] 180 | fn append_title_line(buffer: &mut String, style: &String) { [INFO] [stderr] | ^^^^^^^ help: change this to: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:206:43 [INFO] [stderr] | [INFO] [stderr] 206 | fn append_data(buffer: &mut String, data: &String, style: &String){ [INFO] [stderr] | ^^^^^^^ help: change this to: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:206:59 [INFO] [stderr] | [INFO] [stderr] 206 | fn append_data(buffer: &mut String, data: &String, style: &String){ [INFO] [stderr] | ^^^^^^^ help: change this to: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:219:71 [INFO] [stderr] | [INFO] [stderr] 219 | fn text_output(input: &(i32,i32,time::Tm, time::Tm, String), journal: &Vec<(i32, time::Tm, i32, i32)>, acct_list: &Vec<(i32, String)>){ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `&[(i32, time::Tm, i32, i32)]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:206:43 [INFO] [stderr] | [INFO] [stderr] 206 | fn append_data(buffer: &mut String, data: &String, style: &String){ [INFO] [stderr] | ^^^^^^^ help: change this to: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:219:115 [INFO] [stderr] | [INFO] [stderr] 219 | fn text_output(input: &(i32,i32,time::Tm, time::Tm, String), journal: &Vec<(i32, time::Tm, i32, i32)>, acct_list: &Vec<(i32, String)>){ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: change this to: `&[(i32, String)]` [INFO] [stderr] [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:206:59 [INFO] [stderr] | [INFO] [stderr] 206 | fn append_data(buffer: &mut String, data: &String, style: &String){ [INFO] [stderr] | ^^^^^^^ help: change this to: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:219:71 [INFO] [stderr] | [INFO] [stderr] 219 | fn text_output(input: &(i32,i32,time::Tm, time::Tm, String), journal: &Vec<(i32, time::Tm, i32, i32)>, acct_list: &Vec<(i32, String)>){ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `&[(i32, time::Tm, i32, i32)]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:219:115 [INFO] [stderr] | [INFO] [stderr] 219 | fn text_output(input: &(i32,i32,time::Tm, time::Tm, String), journal: &Vec<(i32, time::Tm, i32, i32)>, acct_list: &Vec<(i32, String)>){ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: change this to: `&[(i32, String)]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:262:25 [INFO] [stderr] | [INFO] [stderr] 262 | / match acct_map.get(&entry.0){ [INFO] [stderr] 263 | | Some(desc) => { [INFO] [stderr] 264 | | append_data(&mut output, &desc, &input.4); [INFO] [stderr] 265 | | output.push_str(&separator); [INFO] [stderr] ... | [INFO] [stderr] 269 | | } [INFO] [stderr] 270 | | }; [INFO] [stderr] | |_________________________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_match)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 262 | if let Some(desc) = acct_map.get(&entry.0) { [INFO] [stderr] 263 | append_data(&mut output, &desc, &input.4); [INFO] [stderr] 264 | output.push_str(&separator); [INFO] [stderr] 265 | }; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:262:25 [INFO] [stderr] | [INFO] [stderr] 262 | / match acct_map.get(&entry.0){ [INFO] [stderr] 263 | | Some(desc) => { [INFO] [stderr] 264 | | append_data(&mut output, &desc, &input.4); [INFO] [stderr] 265 | | output.push_str(&separator); [INFO] [stderr] ... | [INFO] [stderr] 269 | | } [INFO] [stderr] 270 | | }; [INFO] [stderr] | |_________________________^ [INFO] [stderr] warning: The function/method `append_data` doesn't need a mutable reference [INFO] [stderr] | [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:295:30 [INFO] [stderr] | [INFO] [stderr] 295 | append_data(&mut output, &mut acct_debits.to_string(), &input.4); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = note: #[warn(clippy::single_match)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] | [INFO] [stderr] help: try this [INFO] [stderr] = note: #[warn(clippy::unnecessary_mut_passed)] on by default [INFO] [stderr] | [INFO] [stderr] 262 | if let Some(desc) = acct_map.get(&entry.0) { [INFO] [stderr] 263 | append_data(&mut output, &desc, &input.4); [INFO] [stderr] 264 | output.push_str(&separator); [INFO] [stderr] 265 | }; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stderr] [INFO] [stderr] warning: The function/method `append_data` doesn't need a mutable reference [INFO] [stderr] --> src/challenge/easy/little_accountant.rs:295:30 [INFO] [stderr] | [INFO] [stderr] 295 | append_data(&mut output, &mut acct_debits.to_string(), &input.4); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unnecessary_mut_passed)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/challenge/easy/kid_lotto.rs:17:48 [INFO] [stderr] | [INFO] [stderr] 17 | let roster:Vec<&str> = roster.trim().split(";").collect(); [INFO] [stderr] | ^^^ help: try using a char instead: `';'` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_char_pattern)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_pattern [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/challenge/easy/kid_lotto.rs:31:18 [INFO] [stderr] | [INFO] [stderr] 31 | for _ in 0..list_size+1{ [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use: `0..=list_size` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::range_plus_one)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/challenge/easy/kid_lotto.rs:17:48 [INFO] [stderr] | [INFO] [stderr] 17 | let roster:Vec<&str> = roster.trim().split(";").collect(); [INFO] [stderr] | ^^^ help: try using a char instead: `';'` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_char_pattern)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_pattern [INFO] [stderr] [INFO] [stderr] warning: this creates an owned instance just for comparison [INFO] [stderr] --> src/challenge/easy/kid_lotto.rs:34:19 [INFO] [stderr] | [INFO] [stderr] 34 | while roster[next_kid as usize].to_string() == kid.to_string() || lotto_list.contains_key(&kid.to_string()){ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `roster[next_kid as usize]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stderr] [INFO] [stderr] warning: this creates an owned instance just for comparison [INFO] [stderr] --> src/challenge/easy/kid_lotto.rs:34:60 [INFO] [stderr] | [INFO] [stderr] 34 | while roster[next_kid as usize].to_string() == kid.to_string() || lotto_list.contains_key(&kid.to_string()){ [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `*kid` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] [INFO] [stderr] --> src/challenge/easy/kid_lotto.rs:31:18 [INFO] [stderr] | [INFO] [stderr] 31 | for _ in 0..list_size+1{ [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use: `0..=list_size` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::range_plus_one)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: this creates an owned instance just for comparison [INFO] [stderr] --> src/challenge/easy/kid_lotto.rs:34:19 [INFO] [stderr] | [INFO] [stderr] 34 | while roster[next_kid as usize].to_string() == kid.to_string() || lotto_list.contains_key(&kid.to_string()){ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `roster[next_kid as usize]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stderr] [INFO] [stderr] warning: this creates an owned instance just for comparison [INFO] [stderr] --> src/challenge/easy/kid_lotto.rs:34:60 [INFO] [stderr] | [INFO] [stderr] 34 | while roster[next_kid as usize].to_string() == kid.to_string() || lotto_list.contains_key(&kid.to_string()){ [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `*kid` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stderr] [INFO] [stderr] error: this .into_iter() call is equivalent to .iter() and will not move the array [INFO] [stderr] --> src/challenge/easy/pandigital_roman_numbers.rs:5:21 [INFO] [stderr] | [INFO] [stderr] 5 | for m in [1000].into_iter(){ [INFO] [stderr] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stderr] | [INFO] [stderr] = note: requested on the command line with `-D clippy::into-iter-on-array` [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_array [INFO] [stderr] [INFO] [stderr] error: this .into_iter() call is equivalent to .iter() and will not move the array [INFO] [stderr] --> src/challenge/easy/pandigital_roman_numbers.rs:6:30 [INFO] [stderr] | [INFO] [stderr] 6 | for cd in [400, 600].into_iter(){ [INFO] [stderr] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_array [INFO] [stderr] [INFO] [stderr] error: this .into_iter() call is equivalent to .iter() and will not move the array [INFO] [stderr] --> src/challenge/easy/pandigital_roman_numbers.rs:5:21 [INFO] [stderr] | [INFO] [stderr] 5 | for m in [1000].into_iter(){ [INFO] [stderr] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stderr] | [INFO] [stderr] = note: requested on the command line with `-D clippy::into-iter-on-array` [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_array [INFO] [stderr] [INFO] [stderr] error: this .into_iter() call is equivalent to .iter() and will not move the array [INFO] [stderr] --> src/challenge/easy/pandigital_roman_numbers.rs:7:31 [INFO] [stderr] | [INFO] [stderr] 7 | for xl in [40,60].into_iter(){ [INFO] [stderr] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_array [INFO] [stderr] [INFO] [stderr] error: this .into_iter() call is equivalent to .iter() and will not move the array [INFO] [stderr] --> src/challenge/easy/pandigital_roman_numbers.rs:6:30 [INFO] [stderr] | [INFO] [stderr] 6 | for cd in [400, 600].into_iter(){ [INFO] [stderr] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stderr] | [INFO] [stderr] error: this .into_iter() call is equivalent to .iter() and will not move the array [INFO] [stderr] --> src/challenge/easy/pandigital_roman_numbers.rs:8:34 [INFO] [stderr] | [INFO] [stderr] 8 | for iv in [4,6].into_iter(){ [INFO] [stderr] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_array [INFO] [stderr] [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_array [INFO] [stderr] [INFO] [stderr] error: this .into_iter() call is equivalent to .iter() and will not move the array [INFO] [stderr] --> src/challenge/easy/pandigital_roman_numbers.rs:7:31 [INFO] [stderr] | [INFO] [stderr] 7 | for xl in [40,60].into_iter(){ [INFO] [stderr] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_array [INFO] [stderr] [INFO] [stderr] error: this .into_iter() call is equivalent to .iter() and will not move the array [INFO] [stderr] --> src/challenge/easy/pandigital_roman_numbers.rs:8:34 [INFO] [stderr] | [INFO] [stderr] 8 | for iv in [4,6].into_iter(){ [INFO] [stderr] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_array [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/challenge/easy/jolly_jumpers.rs:8:19 [INFO] [stderr] | [INFO] [stderr] 8 | fn jolly(numbers: &Vec) -> bool{ [INFO] [stderr] | ^^^^^^^^^ help: change this to: `&[i32]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/challenge/easy/jolly_jumpers.rs:8:19 [INFO] [stderr] | [INFO] [stderr] 8 | fn jolly(numbers: &Vec) -> bool{ [INFO] [stderr] | ^^^^^^^^^ help: change this to: `&[i32]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/challenge/easy/jolly_jumpers.rs:42:51 [INFO] [stderr] | [INFO] [stderr] 42 | let numbers:Vec = input.trim().split(" ") [INFO] [stderr] | ^^^ help: try using a char instead: `' '` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_pattern [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/challenge/easy/jolly_jumpers.rs:47:9 [INFO] [stderr] | [INFO] [stderr] 47 | / match jolly(&numbers){ [INFO] [stderr] 48 | | true => { [INFO] [stderr] 49 | | println!("{} - JOLLY", input.trim()); [INFO] [stderr] 50 | | }, [INFO] [stderr] ... | [INFO] [stderr] 53 | | } [INFO] [stderr] 54 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/challenge/easy/jolly_jumpers.rs:42:51 [INFO] [stderr] | [INFO] [stderr] 42 | let numbers:Vec = input.trim().split(" ") [INFO] [stderr] | ^^^ help: try using a char instead: `' '` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_bool)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] help: consider using an if/else expression [INFO] [stderr] | [INFO] [stderr] | [INFO] [stderr] 47 | if jolly(&numbers) { [INFO] [stderr] 48 | println!("{} - JOLLY", input.trim()); [INFO] [stderr] 49 | } else { [INFO] [stderr] 50 | println!("{} - NOT JOLLY", input.trim()); [INFO] [stderr] 51 | } [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_pattern [INFO] [stderr] [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/challenge/easy/jolly_jumpers.rs:47:9 [INFO] [stderr] | [INFO] [stderr] 47 | / match jolly(&numbers){ [INFO] [stderr] 48 | | true => { [INFO] [stderr] 49 | | println!("{} - JOLLY", input.trim()); [INFO] [stderr] 50 | | }, [INFO] [stderr] ... | [INFO] [stderr] 53 | | } [INFO] [stderr] 54 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_bool)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] help: consider using an if/else expression [INFO] [stderr] | [INFO] [stderr] 47 | if jolly(&numbers) { [INFO] [stderr] 48 | println!("{} - JOLLY", input.trim()); [INFO] [stderr] 49 | } else { [INFO] [stderr] 50 | println!("{} - NOT JOLLY", input.trim()); [INFO] [stderr] 51 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this .into_iter() call is equivalent to .iter() and will not move the slice [INFO] [stderr] --> src/challenge/easy/subset_sum.rs:3:11 [INFO] [stderr] | [INFO] [stderr] 3 | i.into_iter().any(|x| vector.binary_search(&(*x * -1)).is_ok()) [INFO] [stderr] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::into_iter_on_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stderr] [INFO] [stderr] warning: this .into_iter() call is equivalent to .iter() and will not move the slice [INFO] [stderr] --> src/challenge/easy/subset_sum.rs:3:11 [INFO] [stderr] | [INFO] [stderr] 3 | i.into_iter().any(|x| vector.binary_search(&(*x * -1)).is_ok()) [INFO] [stderr] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::into_iter_on_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/challenge/intermediate/subnet_calc.rs:17:46 [INFO] [stderr] | [INFO] [stderr] 17 | let mut v:Vec<&str> = input.trim().split("\n").collect(); [INFO] [stderr] | ^^^^ help: try using a char instead: `'\n'` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_pattern [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/challenge/intermediate/subnet_calc.rs:17:46 [INFO] [stderr] | [INFO] [stderr] 17 | let mut v:Vec<&str> = input.trim().split("\n").collect(); [INFO] [stderr] | ^^^^ help: try using a char instead: `'\n'` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_pattern [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/challenge/intermediate/subnet_calc.rs:27:46 [INFO] [stderr] | [INFO] [stderr] 27 | let address: Vec<&str> = ip.trim().split(".").collect(); [INFO] [stderr] | ^^^ help: try using a char instead: `'.'` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_pattern [INFO] [stderr] [INFO] [stderr] warning: the loop variable `octect` is only used to index `address`. [INFO] [stderr] --> src/challenge/intermediate/subnet_calc.rs:29:19 [INFO] [stderr] | [INFO] [stderr] 29 | for octect in 0..address.len()-1{ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_range_loop)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stderr] help: consider using an iterator [INFO] [stderr] | [INFO] [stderr] 29 | for in address.iter().take(address.len()-1){ [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/challenge/intermediate/subnet_calc.rs:27:46 [INFO] [stderr] | [INFO] [stderr] 27 | let address: Vec<&str> = ip.trim().split(".").collect(); [INFO] [stderr] | ^^^ help: try using a char instead: `'.'` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_pattern [INFO] [stderr] [INFO] [stderr] warning: the loop variable `octect` is only used to index `address`. [INFO] [stderr] --> src/challenge/intermediate/subnet_calc.rs:29:19 [INFO] [stderr] | [INFO] [stderr] 29 | for octect in 0..address.len()-1{ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_range_loop)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stderr] help: consider using an iterator [INFO] [stderr] | [INFO] [stderr] 29 | for in address.iter().take(address.len()-1){ [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/challenge/intermediate/subnet_calc.rs:33:9 [INFO] [stderr] | [INFO] [stderr] 33 | result = result | address[octect].parse::().unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `result |= address[octect].parse::().unwrap()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::assign_op_pattern)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/challenge/intermediate/subnet_calc.rs:33:9 [INFO] [stderr] | [INFO] [stderr] 33 | result = result | address[octect].parse::().unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `result |= address[octect].parse::().unwrap()` [INFO] [stderr] | [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] = note: #[warn(clippy::assign_op_pattern)] on by default [INFO] [stderr] --> src/challenge/intermediate/subnet_calc.rs:38:5 [INFO] [stderr] | [INFO] [stderr] 38 | result = result | address[address.len()-1].parse::().unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `result |= address[address.len()-1].parse::().unwrap()` [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/challenge/intermediate/subnet_calc.rs:38:5 [INFO] [stderr] | [INFO] [stderr] 38 | result = result | address[address.len()-1].parse::().unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `result |= address[address.len()-1].parse::().unwrap()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/challenge/intermediate/subnet_calc.rs:52:41 [INFO] [stderr] | [INFO] [stderr] 52 | let parts: Vec<&str> = ip.split("/").collect(); [INFO] [stderr] | ^^^ help: try using a char instead: `'/'` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_pattern [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/challenge/intermediate/subnet_calc.rs:81:31 [INFO] [stderr] | [INFO] [stderr] 81 | minimal_set.push((addr.0.clone(), addr.1.clone(), addr.2.clone())); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try removing the `clone` call: `addr.0` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::clone_on_copy)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/challenge/intermediate/subnet_calc.rs:81:47 [INFO] [stderr] | [INFO] [stderr] 81 | minimal_set.push((addr.0.clone(), addr.1.clone(), addr.2.clone())); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try removing the `clone` call: `addr.1` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/challenge/intermediate/subnet_calc.rs:52:41 [INFO] [stderr] | [INFO] [stderr] 52 | let parts: Vec<&str> = ip.split("/").collect(); [INFO] [stderr] | ^^^ help: try using a char instead: `'/'` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_pattern [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/challenge/intermediate/subnet_calc.rs:81:31 [INFO] [stderr] | [INFO] [stderr] 81 | minimal_set.push((addr.0.clone(), addr.1.clone(), addr.2.clone())); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try removing the `clone` call: `addr.0` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::clone_on_copy)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/challenge/intermediate/subnet_calc.rs:81:47 [INFO] [stderr] | [INFO] [stderr] 81 | minimal_set.push((addr.0.clone(), addr.1.clone(), addr.2.clone())); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try removing the `clone` call: `addr.1` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: this looks like you are swapping elements of `v` manually [INFO] [stderr] --> src/challenge/intermediate/next_largest_number.rs:7:2 [INFO] [stderr] | [INFO] [stderr] 7 | let swap = v[i]; [INFO] [stderr] | _____^ [INFO] [stderr] 8 | | v[i]=v[j]; [INFO] [stderr] 9 | | v[j] =swap; [INFO] [stderr] | |______________^ help: try: `v.swap(i, j)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::manual_swap)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_swap [INFO] [stderr] [INFO] [stderr] warning: taken reference of right operand [INFO] [stderr] --> src/challenge/intermediate/next_largest_number.rs:45:19 [INFO] [stderr] | [INFO] [stderr] 45 | .filter(|x| *x > &input ) [INFO] [stderr] | ^^^^^------ [INFO] [stderr] | | [INFO] [stderr] | help: use the right value directly: `input` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::op_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#op_ref [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/challenge/intermediate/pgm_manipulation.rs:7:25 [INFO] [stderr] | [INFO] [stderr] 7 | fn meta_tuple<'a>(meta: &Vec<&'a str>) -> (i32,i32,i32) { [INFO] [stderr] | ^^^^^^^^^^^^^ help: change this to: `&[&'a str]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: this looks like you are swapping elements of `v` manually [INFO] [stderr] --> src/challenge/intermediate/next_largest_number.rs:7:2 [INFO] [stderr] | [INFO] [stderr] 7 | let swap = v[i]; [INFO] [stderr] | _____^ [INFO] [stderr] 8 | | v[i]=v[j]; [INFO] [stderr] 9 | | v[j] =swap; [INFO] [stderr] | |______________^ help: try: `v.swap(i, j)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::manual_swap)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_swap [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/challenge/intermediate/pgm_manipulation.rs:17:19 [INFO] [stderr] | [INFO] [stderr] 17 | fn read_img(meta: &Vec<&str>) -> Result, &'static str> { [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[&str]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/challenge/intermediate/pgm_manipulation.rs:34:31 [INFO] [stderr] | [INFO] [stderr] 34 | fn flip_horizontal <'a> (img: &Vec, pgm_meta: &Vec<&'a str>) -> (Vec, Vec<&'a str>){ [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] help: change this to [INFO] [stderr] | [INFO] [stderr] 34 | fn flip_horizontal <'a> (img: &[i32], pgm_meta: &Vec<&'a str>) -> (Vec, Vec<&'a str>){ [INFO] [stderr] | ^^^^^^ [INFO] [stderr] help: change `img.clone()` to [INFO] [stderr] | [INFO] [stderr] 37 | let mut res = img.to_owned(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/challenge/intermediate/pgm_manipulation.rs:34:52 [INFO] [stderr] | [INFO] [stderr] 34 | fn flip_horizontal <'a> (img: &Vec, pgm_meta: &Vec<&'a str>) -> (Vec, Vec<&'a str>){ [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] help: change this to [INFO] [stderr] | [INFO] [stderr] 34 | fn flip_horizontal <'a> (img: &Vec, pgm_meta: &[&'a str]) -> (Vec, Vec<&'a str>){ [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] help: change `pgm_meta.clone()` to [INFO] [stderr] | [INFO] [stderr] 40 | (res, pgm_meta.to_owned()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/challenge/intermediate/pgm_manipulation.rs:44:54 [INFO] [stderr] | [INFO] [stderr] 44 | fn flip_vertical <'a> (img: &mut Vec, pgm_meta: &Vec<&'a str>) -> (Vec, Vec<&'a str>){ [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] help: change this to [INFO] [stderr] | [INFO] [stderr] 44 | fn flip_vertical <'a> (img: &mut Vec, pgm_meta: &[&'a str]) -> (Vec, Vec<&'a str>){ [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] help: change `pgm_meta.clone()` to [INFO] [stderr] | [INFO] [stderr] 53 | (res, pgm_meta.to_owned()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/challenge/intermediate/pgm_manipulation.rs:62:51 [INFO] [stderr] | [INFO] [stderr] 62 | fn rotate_right<'a>(img: &mut Vec, pgm_meta: &Vec<&'a str>) -> (Vec, Vec<&'a str>){ [INFO] [stderr] | ^^^^^^^^^^^^^ help: change this to: `&[&'a str]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: taken reference of right operand [INFO] [stderr] --> src/challenge/intermediate/next_largest_number.rs:45:19 [INFO] [stderr] | [INFO] [stderr] 45 | .filter(|x| *x > &input ) [INFO] [stderr] | ^^^^^------ [INFO] [stderr] | | [INFO] [stderr] | help: use the right value directly: `input` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::op_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#op_ref [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/challenge/intermediate/pgm_manipulation.rs:7:25 [INFO] [stderr] | [INFO] [stderr] 7 | fn meta_tuple<'a>(meta: &Vec<&'a str>) -> (i32,i32,i32) { [INFO] [stderr] | ^^^^^^^^^^^^^ help: change this to: `&[&'a str]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/challenge/intermediate/pgm_manipulation.rs:85:50 [INFO] [stderr] | [INFO] [stderr] 85 | fn rotate_left<'a>(img: &mut Vec, pgm_meta: &Vec<&'a str>) -> (Vec, Vec<&'a str>){ [INFO] [stderr] | ^^^^^^^^^^^^^ help: change this to: `&[&'a str]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/challenge/intermediate/pgm_manipulation.rs:17:19 [INFO] [stderr] | [INFO] [stderr] 17 | fn read_img(meta: &Vec<&str>) -> Result, &'static str> { [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[&str]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/challenge/intermediate/pgm_manipulation.rs:34:31 [INFO] [stderr] | [INFO] [stderr] 34 | fn flip_horizontal <'a> (img: &Vec, pgm_meta: &Vec<&'a str>) -> (Vec, Vec<&'a str>){ [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] help: change this to [INFO] [stderr] | [INFO] [stderr] 34 | fn flip_horizontal <'a> (img: &[i32], pgm_meta: &Vec<&'a str>) -> (Vec, Vec<&'a str>){ [INFO] [stderr] | ^^^^^^ [INFO] [stderr] help: change `img.clone()` to [INFO] [stderr] | [INFO] [stderr] 37 | let mut res = img.to_owned(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/challenge/intermediate/pgm_manipulation.rs:34:52 [INFO] [stderr] | [INFO] [stderr] 34 | fn flip_horizontal <'a> (img: &Vec, pgm_meta: &Vec<&'a str>) -> (Vec, Vec<&'a str>){ [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] help: change this to [INFO] [stderr] | [INFO] [stderr] 34 | fn flip_horizontal <'a> (img: &Vec, pgm_meta: &[&'a str]) -> (Vec, Vec<&'a str>){ [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] help: change `pgm_meta.clone()` to [INFO] [stderr] | [INFO] [stderr] 40 | (res, pgm_meta.to_owned()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/challenge/intermediate/pgm_manipulation.rs:44:54 [INFO] [stderr] | [INFO] [stderr] 44 | fn flip_vertical <'a> (img: &mut Vec, pgm_meta: &Vec<&'a str>) -> (Vec, Vec<&'a str>){ [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] help: change this to [INFO] [stderr] | [INFO] [stderr] 44 | fn flip_vertical <'a> (img: &mut Vec, pgm_meta: &[&'a str]) -> (Vec, Vec<&'a str>){ [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] help: change `pgm_meta.clone()` to [INFO] [stderr] | [INFO] [stderr] 53 | (res, pgm_meta.to_owned()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/challenge/intermediate/pgm_manipulation.rs:62:51 [INFO] [stderr] | [INFO] [stderr] 62 | fn rotate_right<'a>(img: &mut Vec, pgm_meta: &Vec<&'a str>) -> (Vec, Vec<&'a str>){ [INFO] [stderr] | ^^^^^^^^^^^^^ help: change this to: `&[&'a str]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/challenge/intermediate/pgm_manipulation.rs:85:50 [INFO] [stderr] | [INFO] [stderr] 85 | fn rotate_left<'a>(img: &mut Vec, pgm_meta: &Vec<&'a str>) -> (Vec, Vec<&'a str>){ [INFO] [stderr] | ^^^^^^^^^^^^^ help: change this to: `&[&'a str]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] error: aborting due to 4 previous errors [INFO] [stderr] [INFO] [stderr] error: aborting due to 4 previous errors [INFO] [stderr] [INFO] [stderr] error: Could not compile `dailyprogrammer`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error: Could not compile `dailyprogrammer`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "3521c9f5eebe65010edf168da32ea77753804e8ffc2318a3f52a2cf55bb8624c"` [INFO] running `"docker" "rm" "-f" "3521c9f5eebe65010edf168da32ea77753804e8ffc2318a3f52a2cf55bb8624c"` [INFO] [stdout] 3521c9f5eebe65010edf168da32ea77753804e8ffc2318a3f52a2cf55bb8624c