[INFO] updating cached repository rcoh/angle-grinder [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/rcoh/angle-grinder [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/rcoh/angle-grinder" "work/ex/clippy-test-run/sources/stable/gh/rcoh/angle-grinder"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/rcoh/angle-grinder'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/rcoh/angle-grinder" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/rcoh/angle-grinder"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/rcoh/angle-grinder'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 0d1585472e2147f3ba3a6922830cc25460ce0b52 [INFO] sha for GitHub repo rcoh/angle-grinder: 0d1585472e2147f3ba3a6922830cc25460ce0b52 [INFO] validating manifest of rcoh/angle-grinder 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 rcoh/angle-grinder 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 rcoh/angle-grinder [INFO] finished frobbing rcoh/angle-grinder [INFO] frobbed toml for rcoh/angle-grinder written to work/ex/clippy-test-run/sources/stable/gh/rcoh/angle-grinder/Cargo.toml [INFO] started frobbing rcoh/angle-grinder [INFO] finished frobbing rcoh/angle-grinder [INFO] frobbed toml for rcoh/angle-grinder written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/rcoh/angle-grinder/Cargo.toml [INFO] crate rcoh/angle-grinder 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 rcoh/angle-grinder against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-3/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/gh/rcoh/angle-grinder:/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] bcb4ef4aec1c200a08dfab1a470a724f89894acc560cf4cdc2cbb4b2e2e6ad20 [INFO] running `"docker" "start" "-a" "bcb4ef4aec1c200a08dfab1a470a724f89894acc560cf4cdc2cbb4b2e2e6ad20"` [INFO] [stderr] Compiling serde v1.0.27 [INFO] [stderr] Compiling getopts v0.2.17 [INFO] [stderr] Checking quantiles v0.7.1 [INFO] [stderr] Checking regex-syntax v0.2.6 [INFO] [stderr] Compiling backtrace-sys v0.1.16 [INFO] [stderr] Compiling pulldown-cmark v0.1.2 [INFO] [stderr] Checking itertools v0.7.6 [INFO] [stderr] Checking toml v0.4.6 [INFO] [stderr] Checking nom v4.0.0-beta3 [INFO] [stderr] Checking parking_lot_core v0.2.13 [INFO] [stderr] Checking ordered-float v0.5.0 [INFO] [stderr] Checking regex v0.2.6 [INFO] [stderr] Compiling structopt-derive v0.2.6 [INFO] [stderr] Compiling remove_dir_all v0.3.0 [INFO] [stderr] Checking terminal_size v0.1.7 [INFO] [stderr] Checking rayon-core v1.4.0 [INFO] [stderr] Checking parking_lot v0.4.8 [INFO] [stderr] Compiling tempdir v0.3.6 [INFO] [stderr] Checking crossbeam-channel v0.1.2 [INFO] [stderr] Checking rayon v0.9.0 [INFO] [stderr] Checking structopt v0.2.6 [INFO] [stderr] Checking env_logger v0.5.6 [INFO] [stderr] Compiling serde_json v1.0.9 [INFO] [stderr] Compiling semver v0.8.0 [INFO] [stderr] Compiling backtrace v0.3.5 [INFO] [stderr] Checking failure v0.1.1 [INFO] [stderr] Checking error-chain v0.11.0 [INFO] [stderr] Checking quicli v0.2.0 [INFO] [stderr] Compiling cargo_metadata v0.3.3 [INFO] [stderr] Checking ag v0.7.6 (/opt/crater/workdir) [INFO] [stderr] Compiling skeptic v0.13.2 [INFO] [stderr] warning: useless use of `format!` [INFO] [stderr] --> src/data.rs:94:34 [INFO] [stderr] | [INFO] [stderr] 94 | Value::Str(ref s) => format!("{}", s), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: consider using .to_string(): `s.to_string()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::useless_format)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/data.rs:103:9 [INFO] [stderr] | [INFO] [stderr] 103 | / match b { [INFO] [stderr] 104 | | true => TRUE_VALUE, [INFO] [stderr] 105 | | false => FALSE_VALUE, [INFO] [stderr] 106 | | } [INFO] [stderr] | |_________^ help: consider using an if/else expression: `if b { TRUE_VALUE } else { FALSE_VALUE }` [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] [INFO] [stderr] warning: This binary expression can be simplified [INFO] [stderr] --> src/lang.rs:270:1 [INFO] [stderr] | [INFO] [stderr] 270 | / named!(p_nn, ws!( [INFO] [stderr] 271 | | do_parse!( [INFO] [stderr] 272 | | alt!(tag!("pct") | tag!("percentile") | tag!("p")) >> [INFO] [stderr] 273 | | pct: take_while_m_n!(2, 2, is_digit_char) >> [INFO] [stderr] ... | [INFO] [stderr] 280 | | ) [INFO] [stderr] 281 | | )); [INFO] [stderr] | |___^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::double_comparisons)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#double_comparisons [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use `&Box`. Consider using just `&T` [INFO] [stderr] --> src/lib.rs:334:19 [INFO] [stderr] | [INFO] [stderr] 334 | head: &Box, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&operator::AggregateOperator` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::borrowed_box)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#borrowed_box [INFO] [stderr] [INFO] [stderr] Compiling assert_cli v0.5.4 [INFO] [stderr] warning: use of `expect` followed by a function call [INFO] [stderr] --> tests/integration.rs:164:30 [INFO] [stderr] | [INFO] [stderr] 164 | Pipeline::new(query).expect(&format!( [INFO] [stderr] | ______________________________^ [INFO] [stderr] 165 | | "Query: `{}` from the README should have parsed", [INFO] [stderr] 166 | | query [INFO] [stderr] 167 | | )); [INFO] [stderr] | |__________^ help: try this: `unwrap_or_else(|_| panic!("Query: `{}` from the README should have parsed", query))` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::expect_fun_call)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#expect_fun_call [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/data.rs:240:61 [INFO] [stderr] | [INFO] [stderr] 240 | assert_eq!(Value::from_string("949919"), Value::Int(949919)); [INFO] [stderr] | ^^^^^^ help: consider: `949_919` [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: useless use of `format!` [INFO] [stderr] --> src/data.rs:94:34 [INFO] [stderr] | [INFO] [stderr] 94 | Value::Str(ref s) => format!("{}", s), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: consider using .to_string(): `s.to_string()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::useless_format)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/data.rs:103:9 [INFO] [stderr] | [INFO] [stderr] 103 | / match b { [INFO] [stderr] 104 | | true => TRUE_VALUE, [INFO] [stderr] 105 | | false => FALSE_VALUE, [INFO] [stderr] 106 | | } [INFO] [stderr] | |_________^ help: consider using an if/else expression: `if b { TRUE_VALUE } else { FALSE_VALUE }` [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] [INFO] [stderr] warning: called `.get().unwrap()` on a HashMap. Using `[]` is more clear and more concise [INFO] [stderr] --> src/data.rs:198:20 [INFO] [stderr] | [INFO] [stderr] 198 | assert_eq!(rec.data.get("key1").unwrap(), &Value::Int(9999)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `&rec.data["key1"]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::get_unwrap)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_unwrap [INFO] [stderr] [INFO] [stderr] warning: This binary expression can be simplified [INFO] [stderr] --> src/lang.rs:270:1 [INFO] [stderr] | [INFO] [stderr] 270 | / named!(p_nn, ws!( [INFO] [stderr] 271 | | do_parse!( [INFO] [stderr] 272 | | alt!(tag!("pct") | tag!("percentile") | tag!("p")) >> [INFO] [stderr] 273 | | pct: take_while_m_n!(2, 2, is_digit_char) >> [INFO] [stderr] ... | [INFO] [stderr] 280 | | ) [INFO] [stderr] 281 | | )); [INFO] [stderr] | |___^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::double_comparisons)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#double_comparisons [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: called `.get().unwrap()` on a HashMap. Using `[]` is more clear and more concise [INFO] [stderr] --> src/operator.rs:813:13 [INFO] [stderr] | [INFO] [stderr] 813 | rec.data.get("sender").unwrap(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `&rec.data["sender"]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_unwrap [INFO] [stderr] [INFO] [stderr] warning: called `.get().unwrap()` on a HashMap. Using `[]` is more clear and more concise [INFO] [stderr] --> src/operator.rs:816:20 [INFO] [stderr] | [INFO] [stderr] 816 | assert_eq!(rec.data.get("length").unwrap(), &Value::Int(99)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `&rec.data["length"]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_unwrap [INFO] [stderr] [INFO] [stderr] warning: called `.get().unwrap()` on a HashMap. Using `[]` is more clear and more concise [INFO] [stderr] --> src/operator.rs:818:13 [INFO] [stderr] | [INFO] [stderr] 818 | rec.data.get("recip").unwrap(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `&rec.data["recip"]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_unwrap [INFO] [stderr] [INFO] [stderr] warning: called `.get().unwrap()` on a HashMap. Using `[]` is more clear and more concise [INFO] [stderr] --> src/operator.rs:834:13 [INFO] [stderr] | [INFO] [stderr] 834 | rec.data.get("key").unwrap(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `&rec.data["key"]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_unwrap [INFO] [stderr] [INFO] [stderr] warning: called `.get().unwrap()` on a HashMap. Using `[]` is more clear and more concise [INFO] [stderr] --> src/operator.rs:838:13 [INFO] [stderr] | [INFO] [stderr] 838 | rec.data.get("value").unwrap(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `&rec.data["value"]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_unwrap [INFO] [stderr] [INFO] [stderr] warning: this let-binding has unit value. Consider omitting `let _ =` [INFO] [stderr] --> src/operator.rs:1042:9 [INFO] [stderr] | [INFO] [stderr] 1042 | let _: () = adapted.process(Row::Aggregate(agg.clone())); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::let_unit_value)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_unit_value [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use `&Box`. Consider using just `&T` [INFO] [stderr] --> src/lib.rs:334:19 [INFO] [stderr] | [INFO] [stderr] 334 | head: &Box, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&operator::AggregateOperator` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::borrowed_box)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#borrowed_box [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 49.76s [INFO] running `"docker" "inspect" "bcb4ef4aec1c200a08dfab1a470a724f89894acc560cf4cdc2cbb4b2e2e6ad20"` [INFO] running `"docker" "rm" "-f" "bcb4ef4aec1c200a08dfab1a470a724f89894acc560cf4cdc2cbb4b2e2e6ad20"` [INFO] [stdout] bcb4ef4aec1c200a08dfab1a470a724f89894acc560cf4cdc2cbb4b2e2e6ad20