[INFO] crate ytdl 0.1.5 is already in cache [INFO] extracting crate ytdl 0.1.5 into work/ex/clippy-test-run/sources/stable/reg/ytdl/0.1.5 [INFO] extracting crate ytdl 0.1.5 into work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/ytdl/0.1.5 [INFO] validating manifest of ytdl-0.1.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 ytdl-0.1.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 ytdl-0.1.5 [INFO] finished frobbing ytdl-0.1.5 [INFO] frobbed toml for ytdl-0.1.5 written to work/ex/clippy-test-run/sources/stable/reg/ytdl/0.1.5/Cargo.toml [INFO] started frobbing ytdl-0.1.5 [INFO] finished frobbing ytdl-0.1.5 [INFO] frobbed toml for ytdl-0.1.5 written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/ytdl/0.1.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 ytdl-0.1.5 against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-1/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/reg/ytdl/0.1.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] 3f99cf94bc7f0e8c3c6207835aebe592725c155bb620207cb8423e5093f04c21 [INFO] running `"docker" "start" "-a" "3f99cf94bc7f0e8c3c6207835aebe592725c155bb620207cb8423e5093f04c21"` [INFO] [stderr] Checking rand v0.3.23 [INFO] [stderr] Checking pbr v1.0.1 [INFO] [stderr] Checking error-chain v0.10.0 [INFO] [stderr] Checking env-variables v0.1.1 [INFO] [stderr] Checking tokio-tls v0.1.4 [INFO] [stderr] Checking tokio-proto v0.1.1 [INFO] [stderr] Checking hyper v0.11.27 [INFO] [stderr] Checking hyper-tls v0.1.4 [INFO] [stderr] Checking reqwest v0.7.3 [INFO] [stderr] Checking ytdl v0.1.5 (/opt/crater/workdir) [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/video_info.rs:182:5 [INFO] [stderr] | [INFO] [stderr] 182 | / return parse_query [INFO] [stderr] 183 | | .into_owned() [INFO] [stderr] 184 | | .collect::>(); [INFO] [stderr] | |______________________________________________^ [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] help: remove `return` as shown [INFO] [stderr] | [INFO] [stderr] 182 | parse_query [INFO] [stderr] 183 | .into_owned() [INFO] [stderr] 184 | .collect::>() [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/video_info.rs:74:43 [INFO] [stderr] | [INFO] [stderr] 74 | let path = u.path().trim_left_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: length comparison to zero [INFO] [stderr] --> src/video_info.rs:75:8 [INFO] [stderr] | [INFO] [stderr] 75 | if path.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!path.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: single-character string constant used as pattern [INFO] [stderr] --> src/video_info.rs:130:46 [INFO] [stderr] | [INFO] [stderr] 130 | video_info.keywords = keywords.split(",").map(|s| s.to_string()).collect(); [INFO] [stderr] | ^^^ help: try using a char instead: `','` [INFO] [stderr] | [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: single-character string constant used as pattern [INFO] [stderr] --> src/video_info.rs:137:53 [INFO] [stderr] | [INFO] [stderr] 137 | format_strings.append(&mut fmt_stream.split(",").collect()) [INFO] [stderr] | ^^^ help: try using a char instead: `','` [INFO] [stderr] | [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: single-character string constant used as pattern [INFO] [stderr] --> src/video_info.rs:141:56 [INFO] [stderr] | [INFO] [stderr] 141 | format_strings.append(&mut adaptive_fmts.split(",").collect()); [INFO] [stderr] | ^^^ help: try using a char instead: `','` [INFO] [stderr] | [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: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/format.rs:597:9 [INFO] [stderr] | [INFO] [stderr] 597 | FORMATS.get(&itag).map(|f| f.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: Consider calling the dedicated `cloned` method: `FORMATS.get(&itag).cloned()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::map_clone)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/format.rs:616:68 [INFO] [stderr] | [INFO] [stderr] 616 | FormatValue::String(v) => v.trim_right_matches("p").to_string(), [INFO] [stderr] | ^^^ help: try using a char instead: `'p'` [INFO] [stderr] | [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: single-character string constant used as pattern [INFO] [stderr] --> src/format.rs:621:68 [INFO] [stderr] | [INFO] [stderr] 621 | FormatValue::String(v) => v.trim_right_matches("p").to_string(), [INFO] [stderr] | ^^^ help: try using a char instead: `'p'` [INFO] [stderr] | [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: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/format_list.rs:9:33 [INFO] [stderr] | [INFO] [stderr] 9 | fn filter(&self, key: &str, &Vec<&str>) -> Self; [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[&str]` [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: useless use of `format!` [INFO] [stderr] --> src/format_list.rs:61:47 [INFO] [stderr] | [INFO] [stderr] 61 | FormatValue::String(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: useless use of `format!` [INFO] [stderr] --> src/format_list.rs:62:45 [INFO] [stderr] | [INFO] [stderr] 62 | FormatValue::Default => format!(""), [INFO] [stderr] | ^^^^^^^^^^^ help: consider using .to_string(): `"".to_string()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stderr] [INFO] [stderr] warning: useless use of `format!` [INFO] [stderr] --> src/format_list.rs:65:29 [INFO] [stderr] | [INFO] [stderr] 65 | if value == format!("{}", v) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: consider using .to_string(): `v.to_string()` [INFO] [stderr] | [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: unneeded return statement [INFO] [stderr] --> src/video_info.rs:182:5 [INFO] [stderr] | [INFO] [stderr] 182 | / return parse_query [INFO] [stderr] 183 | | .into_owned() [INFO] [stderr] 184 | | .collect::>(); [INFO] [stderr] | |______________________________________________^ [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] help: remove `return` as shown [INFO] [stderr] | [INFO] [stderr] 182 | parse_query [INFO] [stderr] 183 | .into_owned() [INFO] [stderr] 184 | .collect::>() [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/video_info.rs:74:43 [INFO] [stderr] | [INFO] [stderr] 74 | let path = u.path().trim_left_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: length comparison to zero [INFO] [stderr] --> src/video_info.rs:75:8 [INFO] [stderr] | [INFO] [stderr] 75 | if path.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!path.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: single-character string constant used as pattern [INFO] [stderr] --> src/video_info.rs:130:46 [INFO] [stderr] | [INFO] [stderr] 130 | video_info.keywords = keywords.split(",").map(|s| s.to_string()).collect(); [INFO] [stderr] | ^^^ help: try using a char instead: `','` [INFO] [stderr] | [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: single-character string constant used as pattern [INFO] [stderr] --> src/video_info.rs:137:53 [INFO] [stderr] | [INFO] [stderr] 137 | format_strings.append(&mut fmt_stream.split(",").collect()) [INFO] [stderr] | ^^^ help: try using a char instead: `','` [INFO] [stderr] | [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: single-character string constant used as pattern [INFO] [stderr] --> src/video_info.rs:141:56 [INFO] [stderr] | [INFO] [stderr] 141 | format_strings.append(&mut adaptive_fmts.split(",").collect()); [INFO] [stderr] | ^^^ help: try using a char instead: `','` [INFO] [stderr] | [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: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/format.rs:597:9 [INFO] [stderr] | [INFO] [stderr] 597 | FORMATS.get(&itag).map(|f| f.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: Consider calling the dedicated `cloned` method: `FORMATS.get(&itag).cloned()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::map_clone)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/format.rs:616:68 [INFO] [stderr] | [INFO] [stderr] 616 | FormatValue::String(v) => v.trim_right_matches("p").to_string(), [INFO] [stderr] | ^^^ help: try using a char instead: `'p'` [INFO] [stderr] | [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: single-character string constant used as pattern [INFO] [stderr] --> src/format.rs:621:68 [INFO] [stderr] | [INFO] [stderr] 621 | FormatValue::String(v) => v.trim_right_matches("p").to_string(), [INFO] [stderr] | ^^^ help: try using a char instead: `'p'` [INFO] [stderr] | [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: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/format_list.rs:9:33 [INFO] [stderr] | [INFO] [stderr] 9 | fn filter(&self, key: &str, &Vec<&str>) -> Self; [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[&str]` [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: useless use of `format!` [INFO] [stderr] --> src/format_list.rs:61:47 [INFO] [stderr] | [INFO] [stderr] 61 | FormatValue::String(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: useless use of `format!` [INFO] [stderr] --> src/format_list.rs:62:45 [INFO] [stderr] | [INFO] [stderr] 62 | FormatValue::Default => format!(""), [INFO] [stderr] | ^^^^^^^^^^^ help: consider using .to_string(): `"".to_string()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stderr] [INFO] [stderr] warning: useless use of `format!` [INFO] [stderr] --> src/format_list.rs:65:29 [INFO] [stderr] | [INFO] [stderr] 65 | if value == format!("{}", v) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: consider using .to_string(): `v.to_string()` [INFO] [stderr] | [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: using `println!("")` [INFO] [stderr] --> src/bin/main.rs:267:5 [INFO] [stderr] | [INFO] [stderr] 267 | println!(""); [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `println!()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::println_empty_string)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#println_empty_string [INFO] [stderr] [INFO] [stderr] warning: using `println!("")` [INFO] [stderr] --> src/bin/main.rs:267:5 [INFO] [stderr] | [INFO] [stderr] 267 | println!(""); [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `println!()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::println_empty_string)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#println_empty_string [INFO] [stderr] [INFO] [stderr] warning: useless use of `format!` [INFO] [stderr] --> src/bin/main.rs:140:13 [INFO] [stderr] | [INFO] [stderr] 140 | format!("best"), [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: consider using .to_string(): `"best".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] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/bin/main.rs:270:28 [INFO] [stderr] | [INFO] [stderr] 270 | fn filter_formats(filters: &Vec, formats: &FormatList) -> FormatList { [INFO] [stderr] | ^^^^^^^^^^^^ help: change this to: `&[String]` [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: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/bin/main.rs:270:51 [INFO] [stderr] | [INFO] [stderr] 270 | fn filter_formats(filters: &Vec, formats: &FormatList) -> FormatList { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] 271 | let mut formats = formats.clone(); [INFO] [stderr] | --------------- help: change `formats.clone()` to: `formats.to_owned()` [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: single-character string constant used as pattern [INFO] [stderr] --> src/bin/main.rs:287:50 [INFO] [stderr] | [INFO] [stderr] 287 | let split = filter_str.splitn(2, ":").collect::>(); [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: single-character string constant used as pattern [INFO] [stderr] --> src/bin/main.rs:293:47 [INFO] [stderr] | [INFO] [stderr] 293 | let exclude = key.starts_with("!"); [INFO] [stderr] | ^^^ help: try using a char instead: `'!'` [INFO] [stderr] | [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: single-character string constant used as pattern [INFO] [stderr] --> src/bin/main.rs:302:44 [INFO] [stderr] | [INFO] [stderr] 302 | let mut vals = value.split(",").collect::>(); [INFO] [stderr] | ^^^ help: try using a char instead: `','` [INFO] [stderr] | [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: the loop variable `i` is only used to index `vals`. [INFO] [stderr] --> src/bin/main.rs:303:26 [INFO] [stderr] | [INFO] [stderr] 303 | for i in 0..vals.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] 303 | for in &mut vals { [INFO] [stderr] | ^^^^^^ ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: useless use of `format!` [INFO] [stderr] --> src/bin/main.rs:140:13 [INFO] [stderr] | [INFO] [stderr] 140 | format!("best"), [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: consider using .to_string(): `"best".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] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/bin/main.rs:270:28 [INFO] [stderr] | [INFO] [stderr] 270 | fn filter_formats(filters: &Vec, formats: &FormatList) -> FormatList { [INFO] [stderr] | ^^^^^^^^^^^^ help: change this to: `&[String]` [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: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/bin/main.rs:270:51 [INFO] [stderr] | [INFO] [stderr] 270 | fn filter_formats(filters: &Vec, formats: &FormatList) -> FormatList { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] 271 | let mut formats = formats.clone(); [INFO] [stderr] | --------------- help: change `formats.clone()` to: `formats.to_owned()` [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: single-character string constant used as pattern [INFO] [stderr] --> src/bin/main.rs:287:50 [INFO] [stderr] | [INFO] [stderr] 287 | let split = filter_str.splitn(2, ":").collect::>(); [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: single-character string constant used as pattern [INFO] [stderr] --> src/bin/main.rs:293:47 [INFO] [stderr] | [INFO] [stderr] 293 | let exclude = key.starts_with("!"); [INFO] [stderr] | ^^^ help: try using a char instead: `'!'` [INFO] [stderr] | [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: single-character string constant used as pattern [INFO] [stderr] --> src/bin/main.rs:302:44 [INFO] [stderr] | [INFO] [stderr] 302 | let mut vals = value.split(",").collect::>(); [INFO] [stderr] | ^^^ help: try using a char instead: `','` [INFO] [stderr] | [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: the loop variable `i` is only used to index `vals`. [INFO] [stderr] --> src/bin/main.rs:303:26 [INFO] [stderr] | [INFO] [stderr] 303 | for i in 0..vals.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] 303 | for in &mut vals { [INFO] [stderr] | ^^^^^^ ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 52.77s [INFO] running `"docker" "inspect" "3f99cf94bc7f0e8c3c6207835aebe592725c155bb620207cb8423e5093f04c21"` [INFO] running `"docker" "rm" "-f" "3f99cf94bc7f0e8c3c6207835aebe592725c155bb620207cb8423e5093f04c21"` [INFO] [stdout] 3f99cf94bc7f0e8c3c6207835aebe592725c155bb620207cb8423e5093f04c21