[INFO] updating cached repository dalance/softether_exporter [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/dalance/softether_exporter [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/dalance/softether_exporter" "work/ex/clippy-test-run/sources/stable/gh/dalance/softether_exporter"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/dalance/softether_exporter'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/dalance/softether_exporter" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/dalance/softether_exporter"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/dalance/softether_exporter'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] c6840f9a27c2c40aee329ea18f09b02edb5b2029 [INFO] sha for GitHub repo dalance/softether_exporter: c6840f9a27c2c40aee329ea18f09b02edb5b2029 [INFO] validating manifest of dalance/softether_exporter 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 dalance/softether_exporter 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 dalance/softether_exporter [INFO] finished frobbing dalance/softether_exporter [INFO] frobbed toml for dalance/softether_exporter written to work/ex/clippy-test-run/sources/stable/gh/dalance/softether_exporter/Cargo.toml [INFO] started frobbing dalance/softether_exporter [INFO] finished frobbing dalance/softether_exporter [INFO] frobbed toml for dalance/softether_exporter written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/dalance/softether_exporter/Cargo.toml [INFO] crate dalance/softether_exporter 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 dalance/softether_exporter against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-5/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/gh/dalance/softether_exporter:/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] 7b305f2e97990b2fb842f548b0e9462a60e2eaeb79d823ea81e87fd14af9e296 [INFO] running `"docker" "start" "-a" "7b305f2e97990b2fb842f548b0e9462a60e2eaeb79d823ea81e87fd14af9e296"` [INFO] [stderr] Checking mime v0.2.6 [INFO] [stderr] Checking memchr v2.0.1 [INFO] [stderr] Checking prometheus v0.3.9 [INFO] [stderr] Checking cookie v0.2.5 [INFO] [stderr] Checking csv-core v0.1.4 [INFO] [stderr] Checking hyper v0.9.18 [INFO] [stderr] Checking csv v1.0.0-beta.5 [INFO] [stderr] Checking softether_exporter v0.1.3 (/opt/crater/workdir) [INFO] [stderr] warning: use of `unwrap_or` followed by a function call [INFO] [stderr] --> src/exporter.rs:171:37 [INFO] [stderr] | [INFO] [stderr] 171 | let vpncmd = config.vpncmd.unwrap_or( String::from( "vpncmd" ) ); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `unwrap_or_else(|| String::from( "vpncmd" ))` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::or_fun_call)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `unwrap_or` followed by a function call [INFO] [stderr] --> src/exporter.rs:172:37 [INFO] [stderr] | [INFO] [stderr] 172 | let server = config.server.unwrap_or( String::from( "localhost" ) ); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `unwrap_or_else(|| String::from( "localhost" ))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `unwrap_or` followed by a function call [INFO] [stderr] --> src/exporter.rs:182:49 [INFO] [stderr] | [INFO] [stderr] 182 | let name = hub.name.unwrap_or( String::from( "" ) ); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `unwrap_or_else(|| String::from( "" ))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `unwrap_or` followed by a function call [INFO] [stderr] --> src/exporter.rs:183:53 [INFO] [stderr] | [INFO] [stderr] 183 | let password = hub.password.unwrap_or( String::from( "" ) ); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `unwrap_or_else(|| String::from( "" ))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> src/softether_reader.rs:50:56 [INFO] [stderr] | [INFO] [stderr] 50 | return Err( Box::new( SoftEtherError{ msg: String::from( format!( "vpncmd failed ( {} )", msg ) ) } ) ) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `String::from()`: `format!( "vpncmd failed ( {} )", msg )` [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: this call to `as_ref` does nothing [INFO] [stderr] --> src/softether_reader.rs:60:19 [INFO] [stderr] | [INFO] [stderr] 60 | match key.as_ref() { [INFO] [stderr] | ^^^^^^^^^^^^ help: try this: `key` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::useless_asref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_asref [INFO] [stderr] [INFO] [stderr] warning: this if-then-else expression returns a bool literal [INFO] [stderr] --> src/softether_reader.rs:62:88 [INFO] [stderr] | [INFO] [stderr] 62 | "状態" => status.online = if val == "オンライン" { true } else { false }, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: you can reduce it to: `val == "オンライン"` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_bool)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_bool [INFO] [stderr] [INFO] [stderr] warning: this if-then-else expression returns a bool literal [INFO] [stderr] --> src/softether_reader.rs:63:88 [INFO] [stderr] | [INFO] [stderr] 63 | "SecureNAT 機能" => status.secure_nat = if val == "無効" { false } else { true }, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: you can reduce it to: `!(val == "無効")` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_bool [INFO] [stderr] [INFO] [stderr] warning: this if-then-else expression returns a bool literal [INFO] [stderr] --> src/softether_reader.rs:82:90 [INFO] [stderr] | [INFO] [stderr] 82 | "Status" => status.online = if val == "Online" { true } else { false }, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: you can reduce it to: `val == "Online"` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_bool [INFO] [stderr] [INFO] [stderr] warning: this if-then-else expression returns a bool literal [INFO] [stderr] --> src/softether_reader.rs:83:90 [INFO] [stderr] | [INFO] [stderr] 83 | "SecureNAT" => status.secure_nat = if val == "Disabled" { false } else { true }, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: you can reduce it to: `!(val == "Disabled")` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_bool [INFO] [stderr] [INFO] [stderr] warning: use of `unwrap_or` followed by a function call [INFO] [stderr] --> src/exporter.rs:171:37 [INFO] [stderr] | [INFO] [stderr] 171 | let vpncmd = config.vpncmd.unwrap_or( String::from( "vpncmd" ) ); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `unwrap_or_else(|| String::from( "vpncmd" ))` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::or_fun_call)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `unwrap_or` followed by a function call [INFO] [stderr] --> src/exporter.rs:172:37 [INFO] [stderr] | [INFO] [stderr] 172 | let server = config.server.unwrap_or( String::from( "localhost" ) ); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `unwrap_or_else(|| String::from( "localhost" ))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: this if-then-else expression returns a bool literal [INFO] [stderr] --> src/softether_reader.rs:102:88 [INFO] [stderr] | [INFO] [stderr] 102 | "状态" => status.online = if val == "在线" { true } else { false }, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: you can reduce it to: `val == "在线"` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_bool [INFO] [stderr] [INFO] [stderr] warning: this if-then-else expression returns a bool literal [INFO] [stderr] --> src/softether_reader.rs:103:88 [INFO] [stderr] | [INFO] [stderr] 103 | "SecureNAT 机能" => status.secure_nat = if val == "无效" { false } else { true }, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: you can reduce it to: `!(val == "无效")` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_bool [INFO] [stderr] [INFO] [stderr] warning: use of `unwrap_or` followed by a function call [INFO] [stderr] --> src/exporter.rs:182:49 [INFO] [stderr] | [INFO] [stderr] 182 | let name = hub.name.unwrap_or( String::from( "" ) ); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `unwrap_or_else(|| String::from( "" ))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `unwrap_or` followed by a function call [INFO] [stderr] --> src/exporter.rs:183:53 [INFO] [stderr] | [INFO] [stderr] 183 | let password = hub.password.unwrap_or( String::from( "" ) ); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `unwrap_or_else(|| String::from( "" ))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> src/softether_reader.rs:50:56 [INFO] [stderr] | [INFO] [stderr] 50 | return Err( Box::new( SoftEtherError{ msg: String::from( format!( "vpncmd failed ( {} )", msg ) ) } ) ) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `String::from()`: `format!( "vpncmd failed ( {} )", msg )` [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: this call to `as_ref` does nothing [INFO] [stderr] --> src/softether_reader.rs:60:19 [INFO] [stderr] | [INFO] [stderr] 60 | match key.as_ref() { [INFO] [stderr] | ^^^^^^^^^^^^ help: try this: `key` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::useless_asref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_asref [INFO] [stderr] [INFO] [stderr] warning: this if-then-else expression returns a bool literal [INFO] [stderr] --> src/softether_reader.rs:62:88 [INFO] [stderr] | [INFO] [stderr] 62 | "状態" => status.online = if val == "オンライン" { true } else { false }, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: you can reduce it to: `val == "オンライン"` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_bool)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_bool [INFO] [stderr] [INFO] [stderr] warning: this if-then-else expression returns a bool literal [INFO] [stderr] --> src/softether_reader.rs:63:88 [INFO] [stderr] | [INFO] [stderr] 63 | "SecureNAT 機能" => status.secure_nat = if val == "無効" { false } else { true }, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: you can reduce it to: `!(val == "無効")` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_bool [INFO] [stderr] [INFO] [stderr] warning: this if-then-else expression returns a bool literal [INFO] [stderr] --> src/softether_reader.rs:82:90 [INFO] [stderr] | [INFO] [stderr] 82 | "Status" => status.online = if val == "Online" { true } else { false }, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: you can reduce it to: `val == "Online"` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_bool [INFO] [stderr] [INFO] [stderr] warning: this if-then-else expression returns a bool literal [INFO] [stderr] --> src/softether_reader.rs:83:90 [INFO] [stderr] | [INFO] [stderr] 83 | "SecureNAT" => status.secure_nat = if val == "Disabled" { false } else { true }, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: you can reduce it to: `!(val == "Disabled")` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_bool [INFO] [stderr] [INFO] [stderr] warning: this if-then-else expression returns a bool literal [INFO] [stderr] --> src/softether_reader.rs:102:88 [INFO] [stderr] | [INFO] [stderr] 102 | "状态" => status.online = if val == "在线" { true } else { false }, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: you can reduce it to: `val == "在线"` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_bool [INFO] [stderr] [INFO] [stderr] warning: this if-then-else expression returns a bool literal [INFO] [stderr] --> src/softether_reader.rs:103:88 [INFO] [stderr] | [INFO] [stderr] 103 | "SecureNAT 机能" => status.secure_nat = if val == "无效" { false } else { true }, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: you can reduce it to: `!(val == "无效")` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_bool [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 13.44s [INFO] running `"docker" "inspect" "7b305f2e97990b2fb842f548b0e9462a60e2eaeb79d823ea81e87fd14af9e296"` [INFO] running `"docker" "rm" "-f" "7b305f2e97990b2fb842f548b0e9462a60e2eaeb79d823ea81e87fd14af9e296"` [INFO] [stdout] 7b305f2e97990b2fb842f548b0e9462a60e2eaeb79d823ea81e87fd14af9e296