[INFO] updating cached repository euclio/seventeen [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/euclio/seventeen [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/euclio/seventeen" "work/ex/clippy-test-run/sources/stable/gh/euclio/seventeen"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/euclio/seventeen'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/euclio/seventeen" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/euclio/seventeen"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/euclio/seventeen'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 241200cc673fda4456a1f6c67c1520a7be1c4255 [INFO] sha for GitHub repo euclio/seventeen: 241200cc673fda4456a1f6c67c1520a7be1c4255 [INFO] validating manifest of euclio/seventeen 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 euclio/seventeen 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 euclio/seventeen [INFO] finished frobbing euclio/seventeen [INFO] frobbed toml for euclio/seventeen written to work/ex/clippy-test-run/sources/stable/gh/euclio/seventeen/Cargo.toml [INFO] started frobbing euclio/seventeen [INFO] finished frobbing euclio/seventeen [INFO] frobbed toml for euclio/seventeen written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/euclio/seventeen/Cargo.toml [INFO] crate euclio/seventeen 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 euclio/seventeen against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-0/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/gh/euclio/seventeen:/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] a2d12ae0987414a93c1bbe59d3b576ec2cb6d68334ed3c8bd7d9d94d5d9e5175 [INFO] running `"docker" "start" "-a" "a2d12ae0987414a93c1bbe59d3b576ec2cb6d68334ed3c8bd7d9d94d5d9e5175"` [INFO] [stderr] warning: the cargo feature `rename-dependency` is now stable and is no longer necessary to be listed in the manifest [INFO] [stderr] Compiling serde v1.0.65 [INFO] [stderr] Compiling ndarray v0.11.2 [INFO] [stderr] Checking clap v2.31.2 [INFO] [stderr] Checking num-integer v0.1.38 [INFO] [stderr] Checking num-complex v0.1.43 [INFO] [stderr] Checking euclid v0.19.2 [INFO] [stderr] Compiling serde_derive v1.0.65 [INFO] [stderr] Checking flate2 v1.0.1 [INFO] [stderr] Checking crossbeam-epoch v0.6.0 [INFO] [stderr] Checking parking_lot_core v0.3.1 [INFO] [stderr] Checking chrono v0.4.2 [INFO] [stderr] Checking parking_lot v0.6.4 [INFO] [stderr] Checking crossbeam-channel v0.2.6 [INFO] [stderr] Checking structopt v0.2.8 [INFO] [stderr] Checking serde_yaml v0.7.4 [INFO] [stderr] Checking serde-value v0.5.2 [INFO] [stderr] Checking serde_json v1.0.19 [INFO] [stderr] Checking log v0.4.1 [INFO] [stderr] Checking log-panics v2.0.0 [INFO] [stderr] Checking log4rs v0.8.0 [INFO] [stderr] Checking seventeen v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/screen/color.rs:51:30 [INFO] [stderr] | [INFO] [stderr] 51 | Color::from_argb(4292032130), [INFO] [stderr] | ^^^^^^^^^^ help: consider: `4_292_032_130` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unreadable_literal)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/screen/color.rs:62:37 [INFO] [stderr] | [INFO] [stderr] 62 | assert_eq!(Color::from_argb(4292032130).to_string(), "#d33682"); [INFO] [stderr] | ^^^^^^^^^^ help: consider: `4_292_032_130` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: length comparison to one [INFO] [stderr] --> src/editor/layout.rs:23:12 [INFO] [stderr] | [INFO] [stderr] 23 | if self.windows.len() >= 1 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!self.windows.is_empty()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::len_zero)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: called `.iter().nth()` on a Vec. Calling `.get()` is both faster and more readable [INFO] [stderr] --> src/editor/line_cache.rs:101:9 [INFO] [stderr] | [INFO] [stderr] 101 | / self.lines [INFO] [stderr] 102 | | .iter() [INFO] [stderr] 103 | | .nth(usize::from(coordinate.y)) [INFO] [stderr] | |___________________________________________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::iter_nth)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#iter_nth [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> src/editor/line_cache.rs:103:18 [INFO] [stderr] | [INFO] [stderr] 103 | .nth(usize::from(coordinate.y)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `usize::from()`: `coordinate.y` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::identity_conversion)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> src/editor/line_cache.rs:104:52 [INFO] [stderr] | [INFO] [stderr] 104 | .and_then(|line| line.text.chars().nth(usize::from(coordinate.x))) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `usize::from()`: `coordinate.x` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> src/editor/window.rs:88:29 [INFO] [stderr] | [INFO] [stderr] 88 | if offset < self.offsets.left.into() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into()`: `self.offsets.left` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [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/editor.rs:298:29 [INFO] [stderr] | [INFO] [stderr] 298 | / match line.command() { [INFO] [stderr] 299 | | "q" => { [INFO] [stderr] 300 | | return Some(ExitRequest); [INFO] [stderr] 301 | | } [INFO] [stderr] 302 | | _ => (), [INFO] [stderr] 303 | | } [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] 298 | if let "q" = line.command() { [INFO] [stderr] 299 | return Some(ExitRequest); [INFO] [stderr] 300 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: length comparison to one [INFO] [stderr] --> src/editor/layout.rs:23:12 [INFO] [stderr] | [INFO] [stderr] 23 | if self.windows.len() >= 1 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!self.windows.is_empty()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::len_zero)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: called `.iter().nth()` on a Vec. Calling `.get()` is both faster and more readable [INFO] [stderr] --> src/editor/line_cache.rs:101:9 [INFO] [stderr] | [INFO] [stderr] 101 | / self.lines [INFO] [stderr] 102 | | .iter() [INFO] [stderr] 103 | | .nth(usize::from(coordinate.y)) [INFO] [stderr] | |___________________________________________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::iter_nth)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#iter_nth [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> src/editor/line_cache.rs:103:18 [INFO] [stderr] | [INFO] [stderr] 103 | .nth(usize::from(coordinate.y)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `usize::from()`: `coordinate.y` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::identity_conversion)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> src/editor/line_cache.rs:104:52 [INFO] [stderr] | [INFO] [stderr] 104 | .and_then(|line| line.text.chars().nth(usize::from(coordinate.x))) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `usize::from()`: `coordinate.x` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> src/editor/window.rs:88:29 [INFO] [stderr] | [INFO] [stderr] 88 | if offset < self.offsets.left.into() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into()`: `self.offsets.left` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [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/editor.rs:298:29 [INFO] [stderr] | [INFO] [stderr] 298 | / match line.command() { [INFO] [stderr] 299 | | "q" => { [INFO] [stderr] 300 | | return Some(ExitRequest); [INFO] [stderr] 301 | | } [INFO] [stderr] 302 | | _ => (), [INFO] [stderr] 303 | | } [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] 298 | if let "q" = line.command() { [INFO] [stderr] 299 | return Some(ExitRequest); [INFO] [stderr] 300 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/screen/color.rs:23:23 [INFO] [stderr] | [INFO] [stderr] 23 | pub fn as_escapes(&self) -> Rgb { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::trivially_copy_pass_by_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is only used to index `row`. [INFO] [stderr] --> src/screen.rs:93:18 [INFO] [stderr] | [INFO] [stderr] 93 | for i in x..(x + n) { [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] 93 | for in row.iter_mut().skip(x).take(n) { [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/screen/color.rs:23:23 [INFO] [stderr] | [INFO] [stderr] 23 | pub fn as_escapes(&self) -> Rgb { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::trivially_copy_pass_by_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is only used to index `row`. [INFO] [stderr] --> src/screen.rs:93:18 [INFO] [stderr] | [INFO] [stderr] 93 | for i in x..(x + n) { [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] 93 | for in row.iter_mut().skip(x).take(n) { [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 1m 04s [INFO] running `"docker" "inspect" "a2d12ae0987414a93c1bbe59d3b576ec2cb6d68334ed3c8bd7d9d94d5d9e5175"` [INFO] running `"docker" "rm" "-f" "a2d12ae0987414a93c1bbe59d3b576ec2cb6d68334ed3c8bd7d9d94d5d9e5175"` [INFO] [stdout] a2d12ae0987414a93c1bbe59d3b576ec2cb6d68334ed3c8bd7d9d94d5d9e5175