[INFO] crate ag 0.7.5 is already in cache [INFO] extracting crate ag 0.7.5 into work/ex/clippy-test-run/sources/stable/reg/ag/0.7.5 [INFO] extracting crate ag 0.7.5 into work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/ag/0.7.5 [INFO] validating manifest of ag-0.7.5 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 ag-0.7.5 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 ag-0.7.5 [INFO] finished frobbing ag-0.7.5 [INFO] frobbed toml for ag-0.7.5 written to work/ex/clippy-test-run/sources/stable/reg/ag/0.7.5/Cargo.toml [INFO] started frobbing ag-0.7.5 [INFO] finished frobbing ag-0.7.5 [INFO] frobbed toml for ag-0.7.5 written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/ag/0.7.5/Cargo.toml [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [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 ag-0.7.5 against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-2/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/reg/ag/0.7.5:/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] 82f77a81be2e44732565ad6eb59298205e18832c9d34d27ff0ddbf8464db1e93 [INFO] running `"docker" "start" "-a" "82f77a81be2e44732565ad6eb59298205e18832c9d34d27ff0ddbf8464db1e93"` [INFO] [stderr] Checking quantiles v0.7.1 [INFO] [stderr] Checking regex-syntax v0.2.6 [INFO] [stderr] Compiling assert_cli v0.5.4 [INFO] [stderr] Checking ag v0.7.5 (/opt/crater/workdir) [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] 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] 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] Finished dev [unoptimized + debuginfo] target(s) in 25.65s [INFO] running `"docker" "inspect" "82f77a81be2e44732565ad6eb59298205e18832c9d34d27ff0ddbf8464db1e93"` [INFO] running `"docker" "rm" "-f" "82f77a81be2e44732565ad6eb59298205e18832c9d34d27ff0ddbf8464db1e93"` [INFO] [stdout] 82f77a81be2e44732565ad6eb59298205e18832c9d34d27ff0ddbf8464db1e93