[INFO] updating cached repository obs145628/rust-bandits [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/obs145628/rust-bandits [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/obs145628/rust-bandits" "work/ex/clippy-test-run/sources/stable/gh/obs145628/rust-bandits"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/obs145628/rust-bandits'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/obs145628/rust-bandits" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/obs145628/rust-bandits"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/obs145628/rust-bandits'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] a6aa73c01e8ae8e5c9f7b5d20a074abc2bd532dd [INFO] sha for GitHub repo obs145628/rust-bandits: a6aa73c01e8ae8e5c9f7b5d20a074abc2bd532dd [INFO] validating manifest of obs145628/rust-bandits 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 obs145628/rust-bandits 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 obs145628/rust-bandits [INFO] finished frobbing obs145628/rust-bandits [INFO] frobbed toml for obs145628/rust-bandits written to work/ex/clippy-test-run/sources/stable/gh/obs145628/rust-bandits/Cargo.toml [INFO] started frobbing obs145628/rust-bandits [INFO] finished frobbing obs145628/rust-bandits [INFO] frobbed toml for obs145628/rust-bandits written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/obs145628/rust-bandits/Cargo.toml [INFO] crate obs145628/rust-bandits 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 obs145628/rust-bandits 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-0/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/obs145628/rust-bandits:/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] f0c321d6305762327aea636596bb04476a8bdba8f8c7c150e63511f8ddaed31f [INFO] running `"docker" "start" "-a" "f0c321d6305762327aea636596bb04476a8bdba8f8c7c150e63511f8ddaed31f"` [INFO] [stderr] Checking rust-bandits v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/bandits.rs:240:9 [INFO] [stderr] | [INFO] [stderr] 240 | return random::randn() / self.lambda.sqrt() + self.mean [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `random::randn() / self.lambda.sqrt() + self.mean` [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: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/random.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | v [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::let_and_return)] on by default [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/random.rs:9:13 [INFO] [stderr] | [INFO] [stderr] 9 | let v = normal.sample(&mut rand::thread_rng()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/bandits.rs:240:9 [INFO] [stderr] | [INFO] [stderr] 240 | return random::randn() / self.lambda.sqrt() + self.mean [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `random::randn() / self.lambda.sqrt() + self.mean` [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: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/random.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | v [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::let_and_return)] on by default [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/random.rs:9:13 [INFO] [stderr] | [INFO] [stderr] 9 | let v = normal.sample(&mut rand::thread_rng()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/bandits.rs:74:14 [INFO] [stderr] | [INFO] [stderr] 74 | for t in 1..npulls+1 { [INFO] [stderr] | ^^^^^^^^^^^ help: use: `1..=npulls` [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: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/bandits.rs:164:24 [INFO] [stderr] | [INFO] [stderr] 164 | pub fn argmax_ucb1(v : &Vec, mab: &MultiArmBandit) -> usize { [INFO] [stderr] | ^^^^^^^^^ help: change this to: `&[f64]` [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: the loop variable `i` is used to index `v` [INFO] [stderr] --> src/bandits.rs:167:14 [INFO] [stderr] | [INFO] [stderr] 167 | for i in 0..v.len() { [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] 167 | for (i, ) in v.iter().enumerate() { [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/bandits.rs:252:24 [INFO] [stderr] | [INFO] [stderr] 252 | fn argmax_thompson(v : &Vec) -> usize { [INFO] [stderr] | ^^^^^^^^^^^^^ help: change this to: `&[BayeArm]` [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: the loop variable `i` is used to index `v` [INFO] [stderr] --> src/bandits.rs:255:14 [INFO] [stderr] | [INFO] [stderr] 255 | for i in 0..v.len() { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [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] 255 | for (i, ) in v.iter().enumerate() { [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/bandits.rs:74:14 [INFO] [stderr] | [INFO] [stderr] 74 | for t in 1..npulls+1 { [INFO] [stderr] | ^^^^^^^^^^^ help: use: `1..=npulls` [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: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/bandits.rs:164:24 [INFO] [stderr] | [INFO] [stderr] 164 | pub fn argmax_ucb1(v : &Vec, mab: &MultiArmBandit) -> usize { [INFO] [stderr] | ^^^^^^^^^ help: change this to: `&[f64]` [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: the loop variable `i` is used to index `v` [INFO] [stderr] --> src/bandits.rs:167:14 [INFO] [stderr] | [INFO] [stderr] 167 | for i in 0..v.len() { [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] 167 | for (i, ) in v.iter().enumerate() { [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/bandits.rs:252:24 [INFO] [stderr] | [INFO] [stderr] 252 | fn argmax_thompson(v : &Vec) -> usize { [INFO] [stderr] | ^^^^^^^^^^^^^ help: change this to: `&[BayeArm]` [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: the loop variable `i` is used to index `v` [INFO] [stderr] --> src/bandits.rs:255:14 [INFO] [stderr] | [INFO] [stderr] 255 | for i in 0..v.len() { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [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] 255 | for (i, ) in v.iter().enumerate() { [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 0.59s [INFO] running `"docker" "inspect" "f0c321d6305762327aea636596bb04476a8bdba8f8c7c150e63511f8ddaed31f"` [INFO] running `"docker" "rm" "-f" "f0c321d6305762327aea636596bb04476a8bdba8f8c7c150e63511f8ddaed31f"` [INFO] [stdout] f0c321d6305762327aea636596bb04476a8bdba8f8c7c150e63511f8ddaed31f