[INFO] updating cached repository yashsriv/scrap [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/yashsriv/scrap [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/yashsriv/scrap" "work/ex/clippy-test-run/sources/stable/gh/yashsriv/scrap"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/yashsriv/scrap'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/yashsriv/scrap" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/yashsriv/scrap"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/yashsriv/scrap'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] ea403dd71ea95e72472f759b4c92c1c95f8101b2 [INFO] sha for GitHub repo yashsriv/scrap: ea403dd71ea95e72472f759b4c92c1c95f8101b2 [INFO] validating manifest of yashsriv/scrap 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 yashsriv/scrap 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 yashsriv/scrap [INFO] finished frobbing yashsriv/scrap [INFO] frobbed toml for yashsriv/scrap written to work/ex/clippy-test-run/sources/stable/gh/yashsriv/scrap/Cargo.toml [INFO] started frobbing yashsriv/scrap [INFO] finished frobbing yashsriv/scrap [INFO] frobbed toml for yashsriv/scrap written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/yashsriv/scrap/Cargo.toml [INFO] crate yashsriv/scrap 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 yashsriv/scrap against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-7/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/gh/yashsriv/scrap:/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] 61e287ca2f634e71d9de95bff98abe0099d02ba073d4454557b1c99d8dcd6428 [INFO] running `"docker" "start" "-a" "61e287ca2f634e71d9de95bff98abe0099d02ba073d4454557b1c99d8dcd6428"` [INFO] [stderr] Compiling pkg-config v0.3.14 [INFO] [stderr] Compiling cc v1.0.25 [INFO] [stderr] Checking rand_core v0.3.0 [INFO] [stderr] Checking ucd-util v0.1.2 [INFO] [stderr] Compiling regex v1.0.5 [INFO] [stderr] Checking same-file v1.0.4 [INFO] [stderr] Checking bitflags v0.7.0 [INFO] [stderr] Checking utf8-ranges v1.0.2 [INFO] [stderr] Checking username v0.2.0 [INFO] [stderr] Compiling memchr v2.1.1 [INFO] [stderr] Compiling lazy_static v1.1.0 [INFO] [stderr] Checking walkdir v2.2.6 [INFO] [stderr] Checking regex-syntax v0.6.2 [INFO] [stderr] Checking rand_core v0.2.2 [INFO] [stderr] Checking rand v0.5.5 [INFO] [stderr] Checking thread_local v0.3.6 [INFO] [stderr] Checking aho-corasick v0.6.9 [INFO] [stderr] Compiling openssl-sys v0.9.39 [INFO] [stderr] Compiling libz-sys v1.0.25 [INFO] [stderr] Compiling libssh2-sys v0.2.11 [INFO] [stderr] Checking tempfile v3.0.4 [INFO] [stderr] Checking ssh2 v0.3.3 [INFO] [stderr] Checking scrap v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: this `else { if .. }` block can be collapsed [INFO] [stderr] --> src/main.rs:71:12 [INFO] [stderr] | [INFO] [stderr] 71 | } else { [INFO] [stderr] | ____________^ [INFO] [stderr] 72 | | if source.contains(':') { [INFO] [stderr] 73 | | re.captures(source).map(|c| RemotePath{ [INFO] [stderr] 74 | | username: c.name("username").map(|u| u.as_str().into()), [INFO] [stderr] ... | [INFO] [stderr] 80 | | } [INFO] [stderr] 81 | | }; [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::collapsible_if)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 71 | } else if source.contains(':') { [INFO] [stderr] 72 | re.captures(source).map(|c| RemotePath{ [INFO] [stderr] 73 | username: c.name("username").map(|u| u.as_str().into()), [INFO] [stderr] 74 | hostname: c.name("hostname").unwrap().as_str().into(), [INFO] [stderr] 75 | path: c.name("path").unwrap().as_str().into(), [INFO] [stderr] 76 | }) [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: this `else { if .. }` block can be collapsed [INFO] [stderr] --> src/main.rs:85:12 [INFO] [stderr] | [INFO] [stderr] 85 | } else { [INFO] [stderr] | ____________^ [INFO] [stderr] 86 | | if destination.contains(':') { [INFO] [stderr] 87 | | re.captures(destination).map(|c| RemotePath{ [INFO] [stderr] 88 | | username: c.name("username").map(|u| u.as_str().into()), [INFO] [stderr] ... | [INFO] [stderr] 94 | | } [INFO] [stderr] 95 | | }; [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 85 | } else if destination.contains(':') { [INFO] [stderr] 86 | re.captures(destination).map(|c| RemotePath{ [INFO] [stderr] 87 | username: c.name("username").map(|u| u.as_str().into()), [INFO] [stderr] 88 | hostname: c.name("hostname").unwrap().as_str().into(), [INFO] [stderr] 89 | path: c.name("path").unwrap().as_str().into(), [INFO] [stderr] 90 | }) [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: this `else { if .. }` block can be collapsed [INFO] [stderr] --> src/main.rs:71:12 [INFO] [stderr] | [INFO] [stderr] 71 | } else { [INFO] [stderr] | ____________^ [INFO] [stderr] 72 | | if source.contains(':') { [INFO] [stderr] 73 | | re.captures(source).map(|c| RemotePath{ [INFO] [stderr] 74 | | username: c.name("username").map(|u| u.as_str().into()), [INFO] [stderr] ... | [INFO] [stderr] 80 | | } [INFO] [stderr] 81 | | }; [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::collapsible_if)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 71 | } else if source.contains(':') { [INFO] [stderr] 72 | re.captures(source).map(|c| RemotePath{ [INFO] [stderr] 73 | username: c.name("username").map(|u| u.as_str().into()), [INFO] [stderr] 74 | hostname: c.name("hostname").unwrap().as_str().into(), [INFO] [stderr] 75 | path: c.name("path").unwrap().as_str().into(), [INFO] [stderr] 76 | }) [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: this `else { if .. }` block can be collapsed [INFO] [stderr] --> src/main.rs:85:12 [INFO] [stderr] | [INFO] [stderr] 85 | } else { [INFO] [stderr] | ____________^ [INFO] [stderr] 86 | | if destination.contains(':') { [INFO] [stderr] 87 | | re.captures(destination).map(|c| RemotePath{ [INFO] [stderr] 88 | | username: c.name("username").map(|u| u.as_str().into()), [INFO] [stderr] ... | [INFO] [stderr] 94 | | } [INFO] [stderr] 95 | | }; [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 85 | } else if destination.contains(':') { [INFO] [stderr] 86 | re.captures(destination).map(|c| RemotePath{ [INFO] [stderr] 87 | username: c.name("username").map(|u| u.as_str().into()), [INFO] [stderr] 88 | hostname: c.name("hostname").unwrap().as_str().into(), [INFO] [stderr] 89 | path: c.name("path").unwrap().as_str().into(), [INFO] [stderr] 90 | }) [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/main.rs:69:67 [INFO] [stderr] | [INFO] [stderr] 69 | let remote_source: Option = if source.starts_with(".") { [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/main.rs:83:70 [INFO] [stderr] | [INFO] [stderr] 83 | let remote_dest: Option = if destination.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: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/main.rs:130:5 [INFO] [stderr] | [INFO] [stderr] 130 | / match sess.handshake(&tcp) { [INFO] [stderr] 131 | | Err(_) => { [INFO] [stderr] 132 | | println!("Error in session tcp handshake"); [INFO] [stderr] 133 | | return Ok(()); [INFO] [stderr] 134 | | }, [INFO] [stderr] 135 | | Ok(_) => () [INFO] [stderr] 136 | | } [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] 130 | if let Err(_) = sess.handshake(&tcp) { [INFO] [stderr] 131 | println!("Error in session tcp handshake"); [INFO] [stderr] 132 | return Ok(()); [INFO] [stderr] 133 | } [INFO] [stderr] | [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/main.rs:137:5 [INFO] [stderr] | [INFO] [stderr] 137 | / match sess.userauth_agent(&username) { [INFO] [stderr] 138 | | Err(_) => { [INFO] [stderr] 139 | | println!("Error in session userauth agent"); [INFO] [stderr] 140 | | return Ok(()); [INFO] [stderr] 141 | | }, [INFO] [stderr] 142 | | Ok(_) => () [INFO] [stderr] 143 | | }; [INFO] [stderr] | |_____^ [INFO] [stderr] | [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] 137 | if let Err(_) = sess.userauth_agent(&username) { [INFO] [stderr] 138 | println!("Error in session userauth agent"); [INFO] [stderr] 139 | return Ok(()); [INFO] [stderr] 140 | }; [INFO] [stderr] | [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/main.rs:181:5 [INFO] [stderr] | [INFO] [stderr] 181 | / match sess.handshake(&tcp) { [INFO] [stderr] 182 | | Err(_) => { [INFO] [stderr] 183 | | println!("Error in session tcp handshake"); [INFO] [stderr] 184 | | return Ok(()); [INFO] [stderr] 185 | | }, [INFO] [stderr] 186 | | Ok(_) => () [INFO] [stderr] 187 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [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] 181 | if let Err(_) = sess.handshake(&tcp) { [INFO] [stderr] 182 | println!("Error in session tcp handshake"); [INFO] [stderr] 183 | return Ok(()); [INFO] [stderr] 184 | } [INFO] [stderr] | [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/main.rs:188:5 [INFO] [stderr] | [INFO] [stderr] 188 | / match sess.userauth_agent(&username) { [INFO] [stderr] 189 | | Err(_) => { [INFO] [stderr] 190 | | println!("Error in session userauth agent"); [INFO] [stderr] 191 | | return Ok(()); [INFO] [stderr] 192 | | }, [INFO] [stderr] 193 | | Ok(_) => () [INFO] [stderr] 194 | | }; [INFO] [stderr] | |_____^ [INFO] [stderr] | [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] 188 | if let Err(_) = sess.userauth_agent(&username) { [INFO] [stderr] 189 | println!("Error in session userauth agent"); [INFO] [stderr] 190 | return Ok(()); [INFO] [stderr] 191 | }; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/main.rs:69:67 [INFO] [stderr] | [INFO] [stderr] 69 | let remote_source: Option = if source.starts_with(".") { [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/main.rs:83:70 [INFO] [stderr] | [INFO] [stderr] 83 | let remote_dest: Option = if destination.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: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/main.rs:130:5 [INFO] [stderr] | [INFO] [stderr] 130 | / match sess.handshake(&tcp) { [INFO] [stderr] 131 | | Err(_) => { [INFO] [stderr] 132 | | println!("Error in session tcp handshake"); [INFO] [stderr] 133 | | return Ok(()); [INFO] [stderr] 134 | | }, [INFO] [stderr] 135 | | Ok(_) => () [INFO] [stderr] 136 | | } [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] 130 | if let Err(_) = sess.handshake(&tcp) { [INFO] [stderr] 131 | println!("Error in session tcp handshake"); [INFO] [stderr] 132 | return Ok(()); [INFO] [stderr] 133 | } [INFO] [stderr] | [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/main.rs:137:5 [INFO] [stderr] | [INFO] [stderr] 137 | / match sess.userauth_agent(&username) { [INFO] [stderr] 138 | | Err(_) => { [INFO] [stderr] 139 | | println!("Error in session userauth agent"); [INFO] [stderr] 140 | | return Ok(()); [INFO] [stderr] 141 | | }, [INFO] [stderr] 142 | | Ok(_) => () [INFO] [stderr] 143 | | }; [INFO] [stderr] | |_____^ [INFO] [stderr] | [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] 137 | if let Err(_) = sess.userauth_agent(&username) { [INFO] [stderr] 138 | println!("Error in session userauth agent"); [INFO] [stderr] 139 | return Ok(()); [INFO] [stderr] 140 | }; [INFO] [stderr] | [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/main.rs:181:5 [INFO] [stderr] | [INFO] [stderr] 181 | / match sess.handshake(&tcp) { [INFO] [stderr] 182 | | Err(_) => { [INFO] [stderr] 183 | | println!("Error in session tcp handshake"); [INFO] [stderr] 184 | | return Ok(()); [INFO] [stderr] 185 | | }, [INFO] [stderr] 186 | | Ok(_) => () [INFO] [stderr] 187 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [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] 181 | if let Err(_) = sess.handshake(&tcp) { [INFO] [stderr] 182 | println!("Error in session tcp handshake"); [INFO] [stderr] 183 | return Ok(()); [INFO] [stderr] 184 | } [INFO] [stderr] | [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/main.rs:188:5 [INFO] [stderr] | [INFO] [stderr] 188 | / match sess.userauth_agent(&username) { [INFO] [stderr] 189 | | Err(_) => { [INFO] [stderr] 190 | | println!("Error in session userauth agent"); [INFO] [stderr] 191 | | return Ok(()); [INFO] [stderr] 192 | | }, [INFO] [stderr] 193 | | Ok(_) => () [INFO] [stderr] 194 | | }; [INFO] [stderr] | |_____^ [INFO] [stderr] | [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] 188 | if let Err(_) = sess.userauth_agent(&username) { [INFO] [stderr] 189 | println!("Error in session userauth agent"); [INFO] [stderr] 190 | return Ok(()); [INFO] [stderr] 191 | }; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 31.58s [INFO] running `"docker" "inspect" "61e287ca2f634e71d9de95bff98abe0099d02ba073d4454557b1c99d8dcd6428"` [INFO] running `"docker" "rm" "-f" "61e287ca2f634e71d9de95bff98abe0099d02ba073d4454557b1c99d8dcd6428"` [INFO] [stdout] 61e287ca2f634e71d9de95bff98abe0099d02ba073d4454557b1c99d8dcd6428