[INFO] updating cached repository flaub/rust-kata [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/flaub/rust-kata [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/flaub/rust-kata" "work/ex/clippy-test-run/sources/stable/gh/flaub/rust-kata"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/flaub/rust-kata'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/flaub/rust-kata" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/flaub/rust-kata"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/flaub/rust-kata'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] e426d6863c246d8f9b9ebaed6e6a2753efd0082a [INFO] sha for GitHub repo flaub/rust-kata: e426d6863c246d8f9b9ebaed6e6a2753efd0082a [INFO] validating manifest of flaub/rust-kata 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 flaub/rust-kata 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 flaub/rust-kata [INFO] finished frobbing flaub/rust-kata [INFO] frobbed toml for flaub/rust-kata written to work/ex/clippy-test-run/sources/stable/gh/flaub/rust-kata/Cargo.toml [INFO] started frobbing flaub/rust-kata [INFO] finished frobbing flaub/rust-kata [INFO] frobbed toml for flaub/rust-kata written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/flaub/rust-kata/Cargo.toml [INFO] crate flaub/rust-kata 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 flaub/rust-kata against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-5/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/gh/flaub/rust-kata:/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" "-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] 7b86e5107c328eb64b4b5f40e270be6bf4ef60aa73e89b9a815d0bccf44511f6 [INFO] running `"docker" "start" "-a" "7b86e5107c328eb64b4b5f40e270be6bf4ef60aa73e89b9a815d0bccf44511f6"` [INFO] [stderr] Checking kata v0.0.1 (/opt/crater/workdir) [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/bitvec.rs:43:13 [INFO] [stderr] | [INFO] [stderr] 43 | nbits: nbits [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `nbits` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/kata5.rs:22:4 [INFO] [stderr] | [INFO] [stderr] 22 | nhashes: nhashes, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `nhashes` [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/bitvec.rs:43:13 [INFO] [stderr] | [INFO] [stderr] 43 | nbits: nbits [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `nbits` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/kata5.rs:22:4 [INFO] [stderr] | [INFO] [stderr] 22 | nhashes: nhashes, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `nhashes` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/kata4.rs:57:2 [INFO] [stderr] | [INFO] [stderr] 57 | return (key, value); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `(key, value)` [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/kata4.rs:46:3 [INFO] [stderr] | [INFO] [stderr] 46 | return Some(Data(key, v1, v2)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Some(Data(key, v1, v2))` [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/kata5.rs:41:3 [INFO] [stderr] | [INFO] [stderr] 41 | return true; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `true` [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 `for` head expression [INFO] [stderr] --> src/kata5.rs:35:12 [INFO] [stderr] | [INFO] [stderr] 35 | for i in (0..self.nhashes) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_parens)] on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `for` head expression [INFO] [stderr] --> src/kata5.rs:46:12 [INFO] [stderr] | [INFO] [stderr] 46 | for i in (0..self.nhashes) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/kata5.rs:55:3 [INFO] [stderr] | [INFO] [stderr] 55 | return h.finish(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `h.finish()` [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/kata5.rs:64:3 [INFO] [stderr] | [INFO] [stderr] 64 | return (x % self.bitmap.len() as u64) as usize; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `(x % self.bitmap.len() as u64) as usize` [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/kata4.rs:57:2 [INFO] [stderr] | [INFO] [stderr] 57 | return (key, value); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `(key, value)` [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/kata4.rs:46:3 [INFO] [stderr] | [INFO] [stderr] 46 | return Some(Data(key, v1, v2)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Some(Data(key, v1, v2))` [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/kata5.rs:41:3 [INFO] [stderr] | [INFO] [stderr] 41 | return true; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `true` [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 `for` head expression [INFO] [stderr] --> src/kata5.rs:35:12 [INFO] [stderr] | [INFO] [stderr] 35 | for i in (0..self.nhashes) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_parens)] on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `for` head expression [INFO] [stderr] --> src/kata5.rs:46:12 [INFO] [stderr] | [INFO] [stderr] 46 | for i in (0..self.nhashes) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/kata5.rs:55:3 [INFO] [stderr] | [INFO] [stderr] 55 | return h.finish(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `h.finish()` [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/kata5.rs:64:3 [INFO] [stderr] | [INFO] [stderr] 64 | return (x % self.bitmap.len() as u64) as usize; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `(x % self.bitmap.len() as u64) as usize` [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: this `else { if .. }` block can be collapsed [INFO] [stderr] --> src/kata5.rs:101:11 [INFO] [stderr] | [INFO] [stderr] 101 | } else { [INFO] [stderr] | ____________________^ [INFO] [stderr] 102 | | if actual { [INFO] [stderr] 103 | | self.false_pos += 1_f32; [INFO] [stderr] 104 | | } else { [INFO] [stderr] 105 | | self.true_neg += 1_f32; [INFO] [stderr] 106 | | } [INFO] [stderr] 107 | | } [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] 101 | } else if actual { [INFO] [stderr] 102 | self.false_pos += 1_f32; [INFO] [stderr] 103 | } else { [INFO] [stderr] 104 | self.true_neg += 1_f32; [INFO] [stderr] 105 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/kata5.rs:120:4 [INFO] [stderr] | [INFO] [stderr] 120 | return rate; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `rate` [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: use of deprecated item 'std::hash::SipHasher': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/kata5.rs:71:6 [INFO] [stderr] | [INFO] [stderr] 71 | use std::hash::SipHasher; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(deprecated)] on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::hash::SipHasher': use `std::collections::hash_map::DefaultHasher` instead [INFO] [stderr] --> src/kata5.rs:128:30 [INFO] [stderr] | [INFO] [stderr] 128 | let mut bf = BloomFilter::::new(capacity, error_rate); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: you should consider deriving a `Default` implementation for `bitvec::BitVec` [INFO] [stderr] --> src/bitvec.rs:33:2 [INFO] [stderr] | [INFO] [stderr] 33 | pub fn new() -> BitVec { [INFO] [stderr] | _____^ [INFO] [stderr] 34 | | BitVec { storage: Vec::new(), nbits: 0 } [INFO] [stderr] 35 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default_derive)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default_derive [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 9 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/kata4.rs:9:23 [INFO] [stderr] | [INFO] [stderr] 9 | s.trim_right_matches("*") [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: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/kata5.rs:60:20 [INFO] [stderr] | [INFO] [stderr] 60 | let a = digest & u32::max_value() as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(u32::max_value())` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cast_lossless)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: use of `or_insert` followed by a function call [INFO] [stderr] --> src/kata6.rs:20:5 [INFO] [stderr] | [INFO] [stderr] 20 | .or_insert(vec![]) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try this: `or_insert_with(|| vec![])` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::or_fun_call)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: you should consider deriving a `Default` implementation for `bitvec::BitVec` [INFO] [stderr] --> src/bitvec.rs:33:2 [INFO] [stderr] | [INFO] [stderr] 33 | pub fn new() -> BitVec { [INFO] [stderr] | _____^ [INFO] [stderr] 34 | | BitVec { storage: Vec::new(), nbits: 0 } [INFO] [stderr] 35 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default_derive)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default_derive [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 9 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/kata4.rs:9:23 [INFO] [stderr] | [INFO] [stderr] 9 | s.trim_right_matches("*") [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: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/kata5.rs:60:20 [INFO] [stderr] | [INFO] [stderr] 60 | let a = digest & u32::max_value() as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(u32::max_value())` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cast_lossless)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: use of `or_insert` followed by a function call [INFO] [stderr] --> src/kata6.rs:20:5 [INFO] [stderr] | [INFO] [stderr] 20 | .or_insert(vec![]) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try this: `or_insert_with(|| vec![])` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::or_fun_call)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 1.18s [INFO] running `"docker" "inspect" "7b86e5107c328eb64b4b5f40e270be6bf4ef60aa73e89b9a815d0bccf44511f6"` [INFO] running `"docker" "rm" "-f" "7b86e5107c328eb64b4b5f40e270be6bf4ef60aa73e89b9a815d0bccf44511f6"` [INFO] [stdout] 7b86e5107c328eb64b4b5f40e270be6bf4ef60aa73e89b9a815d0bccf44511f6