[INFO] crate grin_config 0.4.2 is already in cache [INFO] extracting crate grin_config 0.4.2 into work/ex/clippy-test-run/sources/stable/reg/grin_config/0.4.2 [INFO] extracting crate grin_config 0.4.2 into work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/grin_config/0.4.2 [INFO] validating manifest of grin_config-0.4.2 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 grin_config-0.4.2 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 grin_config-0.4.2 [INFO] finished frobbing grin_config-0.4.2 [INFO] frobbed toml for grin_config-0.4.2 written to work/ex/clippy-test-run/sources/stable/reg/grin_config/0.4.2/Cargo.toml [INFO] started frobbing grin_config-0.4.2 [INFO] finished frobbing grin_config-0.4.2 [INFO] frobbed toml for grin_config-0.4.2 written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/grin_config/0.4.2/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 grin_config-0.4.2 against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-0/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/reg/grin_config/0.4.2:/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] e208848a530cad77bc33897b121ca50d10d07161b98d4ab2291c63d279d0b2b8 [INFO] running `"docker" "start" "-a" "e208848a530cad77bc33897b121ca50d10d07161b98d4ab2291c63d279d0b2b8"` [INFO] [stderr] Checking supercow v0.1.0 [INFO] [stderr] Compiling liblmdb-sys v0.2.2 [INFO] [stderr] Compiling log v0.4.6 [INFO] [stderr] Checking crossbeam-epoch v0.7.1 [INFO] [stderr] Compiling nom v3.2.1 [INFO] [stderr] Checking log v0.3.9 [INFO] [stderr] Checking num-rational v0.2.1 [INFO] [stderr] Checking env_logger v0.5.13 [INFO] [stderr] Checking log4rs v0.8.1 [INFO] [stderr] Checking jsonrpc-core v8.0.1 [INFO] [stderr] Checking crossbeam-deque v0.6.3 [INFO] [stderr] Checking num v0.2.0 [INFO] [stderr] Checking crossbeam v0.6.0 [INFO] [stderr] Compiling cexpr v0.2.3 [INFO] [stderr] Checking grin_util v0.4.2 [INFO] [stderr] Checking lmdb-zero v0.4.4 [INFO] [stderr] Checking tokio-threadpool v0.1.11 [INFO] [stderr] Compiling bindgen v0.37.4 [INFO] [stderr] Checking tokio-fs v0.1.5 [INFO] [stderr] Checking grin_keychain v0.4.2 [INFO] [stderr] Checking tokio v0.1.15 [INFO] [stderr] Checking hyper v0.12.23 [INFO] [stderr] Checking tokio-rustls v0.7.2 [INFO] [stderr] Checking tokio-core v0.1.17 [INFO] [stderr] Compiling croaring-sys v0.3.8 [INFO] [stderr] Checking tokio-retry v0.1.1 [INFO] [stderr] Checking hyper-rustls v0.14.0 [INFO] [stderr] Checking hyper-staticfile v0.3.0 [INFO] [stderr] Checking croaring v0.3.8 [INFO] [stderr] Checking grin_core v0.4.2 [INFO] [stderr] Checking grin_store v0.4.2 [INFO] [stderr] Checking grin_pool v0.4.2 [INFO] [stderr] Checking grin_chain v0.4.2 [INFO] [stderr] Checking grin_p2p v0.4.2 [INFO] [stderr] Checking grin_api v0.4.2 [INFO] [stderr] Checking grin_wallet v0.4.2 [INFO] [stderr] Checking grin_servers v0.4.2 [INFO] [stderr] Checking grin_config v0.4.2 (/opt/crater/workdir) [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/comments.rs:434:3 [INFO] [stderr] | [INFO] [stderr] 434 | return line.to_owned(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `line.to_owned()` [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] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/comments.rs:436:3 [INFO] [stderr] | [INFO] [stderr] 436 | return line.split("=").collect::>()[0].trim().to_owned(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `line.split("=").collect::>()[0].trim().to_owned()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/comments.rs:438:3 [INFO] [stderr] | [INFO] [stderr] 438 | return "NOT_FOUND".to_owned(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `"NOT_FOUND".to_owned()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/config.rs:38:37 [INFO] [stderr] | [INFO] [stderr] 38 | pub const SERVER_CONFIG_FILE_NAME: &'static str = "grin-server.toml"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::const_static_lifetime)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/config.rs:40:37 [INFO] [stderr] | [INFO] [stderr] 40 | pub const WALLET_CONFIG_FILE_NAME: &'static str = "grin-wallet.toml"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/config.rs:41:30 [INFO] [stderr] | [INFO] [stderr] 41 | const SERVER_LOG_FILE_NAME: &'static str = "grin-server.log"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/config.rs:42:30 [INFO] [stderr] | [INFO] [stderr] 42 | const WALLET_LOG_FILE_NAME: &'static str = "grin-wallet.log"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/config.rs:43:19 [INFO] [stderr] | [INFO] [stderr] 43 | const GRIN_HOME: &'static str = ".grin"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/config.rs:44:24 [INFO] [stderr] | [INFO] [stderr] 44 | const GRIN_CHAIN_DIR: &'static str = "chain_data"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/config.rs:45:25 [INFO] [stderr] | [INFO] [stderr] 45 | const GRIN_WALLET_DIR: &'static str = "wallet_data"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/config.rs:46:30 [INFO] [stderr] | [INFO] [stderr] 46 | const API_SECRET_FILE_NAME: &'static str = ".api_secret"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/config.rs:238:5 [INFO] [stderr] | [INFO] [stderr] 238 | return Ok(self); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(self)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/config.rs:241:5 [INFO] [stderr] | [INFO] [stderr] 241 | return Err(ConfigError::ParseError( [INFO] [stderr] | _________________^ [INFO] [stderr] 242 | | String::from( [INFO] [stderr] 243 | | self.config_file_path [INFO] [stderr] 244 | | .as_mut() [INFO] [stderr] ... | [INFO] [stderr] 250 | | String::from(format!("{}", e)), [INFO] [stderr] 251 | | )); [INFO] [stderr] | |___________________^ [INFO] [stderr] | [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] 241 | Err(ConfigError::ParseError( [INFO] [stderr] 242 | String::from( [INFO] [stderr] 243 | self.config_file_path [INFO] [stderr] 244 | .as_mut() [INFO] [stderr] 245 | .unwrap() [INFO] [stderr] 246 | .to_str() [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/config.rs:279:3 [INFO] [stderr] | [INFO] [stderr] 279 | return self [INFO] [stderr] | _________^ [INFO] [stderr] 280 | | .members [INFO] [stderr] 281 | | .as_mut() [INFO] [stderr] 282 | | .unwrap() [INFO] [stderr] ... | [INFO] [stderr] 287 | | .enable_stratum_server [INFO] [stderr] 288 | | .unwrap(); [INFO] [stderr] | |______________________^ [INFO] [stderr] | [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] 279 | self [INFO] [stderr] 280 | .members [INFO] [stderr] 281 | .as_mut() [INFO] [stderr] 282 | .unwrap() [INFO] [stderr] 283 | .server [INFO] [stderr] 284 | .stratum_mining_config [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/config.rs:296:15 [INFO] [stderr] | [INFO] [stderr] 296 | Ok(enc) => return Ok(enc), [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(enc)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/config.rs:298:5 [INFO] [stderr] | [INFO] [stderr] 298 | return Err(ConfigError::SerializationError(String::from(format!( [INFO] [stderr] | _________________^ [INFO] [stderr] 299 | | "{}", [INFO] [stderr] 300 | | e [INFO] [stderr] 301 | | )))); [INFO] [stderr] | |_____________________^ [INFO] [stderr] | [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] 298 | Err(ConfigError::SerializationError(String::from(format!( [INFO] [stderr] 299 | "{}", [INFO] [stderr] 300 | e [INFO] [stderr] 301 | )))) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/config.rs:345:5 [INFO] [stderr] | [INFO] [stderr] 345 | return Ok(self); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(self)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/config.rs:348:5 [INFO] [stderr] | [INFO] [stderr] 348 | return Err(ConfigError::ParseError( [INFO] [stderr] | _________________^ [INFO] [stderr] 349 | | String::from( [INFO] [stderr] 350 | | self.config_file_path [INFO] [stderr] 351 | | .as_mut() [INFO] [stderr] ... | [INFO] [stderr] 357 | | String::from(format!("{}", e)), [INFO] [stderr] 358 | | )); [INFO] [stderr] | |___________________^ [INFO] [stderr] | [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] 348 | Err(ConfigError::ParseError( [INFO] [stderr] 349 | String::from( [INFO] [stderr] 350 | self.config_file_path [INFO] [stderr] 351 | .as_mut() [INFO] [stderr] 352 | .unwrap() [INFO] [stderr] 353 | .to_str() [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/config.rs:393:15 [INFO] [stderr] | [INFO] [stderr] 393 | Ok(enc) => return Ok(enc), [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(enc)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/config.rs:395:5 [INFO] [stderr] | [INFO] [stderr] 395 | return Err(ConfigError::SerializationError(String::from(format!( [INFO] [stderr] | _________________^ [INFO] [stderr] 396 | | "{}", [INFO] [stderr] 397 | | e [INFO] [stderr] 398 | | )))); [INFO] [stderr] | |_____________________^ [INFO] [stderr] | [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] 395 | Err(ConfigError::SerializationError(String::from(format!( [INFO] [stderr] 396 | "{}", [INFO] [stderr] 397 | e [INFO] [stderr] 398 | )))) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/comments.rs:434:3 [INFO] [stderr] | [INFO] [stderr] 434 | return line.to_owned(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `line.to_owned()` [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] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/comments.rs:436:3 [INFO] [stderr] | [INFO] [stderr] 436 | return line.split("=").collect::>()[0].trim().to_owned(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `line.split("=").collect::>()[0].trim().to_owned()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/comments.rs:438:3 [INFO] [stderr] | [INFO] [stderr] 438 | return "NOT_FOUND".to_owned(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `"NOT_FOUND".to_owned()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/config.rs:38:37 [INFO] [stderr] | [INFO] [stderr] 38 | pub const SERVER_CONFIG_FILE_NAME: &'static str = "grin-server.toml"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::const_static_lifetime)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/config.rs:40:37 [INFO] [stderr] | [INFO] [stderr] 40 | pub const WALLET_CONFIG_FILE_NAME: &'static str = "grin-wallet.toml"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/config.rs:41:30 [INFO] [stderr] | [INFO] [stderr] 41 | const SERVER_LOG_FILE_NAME: &'static str = "grin-server.log"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/config.rs:42:30 [INFO] [stderr] | [INFO] [stderr] 42 | const WALLET_LOG_FILE_NAME: &'static str = "grin-wallet.log"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/config.rs:43:19 [INFO] [stderr] | [INFO] [stderr] 43 | const GRIN_HOME: &'static str = ".grin"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/config.rs:44:24 [INFO] [stderr] | [INFO] [stderr] 44 | const GRIN_CHAIN_DIR: &'static str = "chain_data"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/config.rs:45:25 [INFO] [stderr] | [INFO] [stderr] 45 | const GRIN_WALLET_DIR: &'static str = "wallet_data"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/config.rs:46:30 [INFO] [stderr] | [INFO] [stderr] 46 | const API_SECRET_FILE_NAME: &'static str = ".api_secret"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/config.rs:238:5 [INFO] [stderr] | [INFO] [stderr] 238 | return Ok(self); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(self)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/config.rs:241:5 [INFO] [stderr] | [INFO] [stderr] 241 | return Err(ConfigError::ParseError( [INFO] [stderr] | _________________^ [INFO] [stderr] 242 | | String::from( [INFO] [stderr] 243 | | self.config_file_path [INFO] [stderr] 244 | | .as_mut() [INFO] [stderr] ... | [INFO] [stderr] 250 | | String::from(format!("{}", e)), [INFO] [stderr] 251 | | )); [INFO] [stderr] | |___________________^ [INFO] [stderr] | [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] 241 | Err(ConfigError::ParseError( [INFO] [stderr] 242 | String::from( [INFO] [stderr] 243 | self.config_file_path [INFO] [stderr] 244 | .as_mut() [INFO] [stderr] 245 | .unwrap() [INFO] [stderr] 246 | .to_str() [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/config.rs:279:3 [INFO] [stderr] | [INFO] [stderr] 279 | return self [INFO] [stderr] | _________^ [INFO] [stderr] 280 | | .members [INFO] [stderr] 281 | | .as_mut() [INFO] [stderr] 282 | | .unwrap() [INFO] [stderr] ... | [INFO] [stderr] 287 | | .enable_stratum_server [INFO] [stderr] 288 | | .unwrap(); [INFO] [stderr] | |______________________^ [INFO] [stderr] | [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] 279 | self [INFO] [stderr] 280 | .members [INFO] [stderr] 281 | .as_mut() [INFO] [stderr] 282 | .unwrap() [INFO] [stderr] 283 | .server [INFO] [stderr] 284 | .stratum_mining_config [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/config.rs:296:15 [INFO] [stderr] | [INFO] [stderr] 296 | Ok(enc) => return Ok(enc), [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(enc)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/config.rs:298:5 [INFO] [stderr] | [INFO] [stderr] 298 | return Err(ConfigError::SerializationError(String::from(format!( [INFO] [stderr] | _________________^ [INFO] [stderr] 299 | | "{}", [INFO] [stderr] 300 | | e [INFO] [stderr] 301 | | )))); [INFO] [stderr] | |_____________________^ [INFO] [stderr] | [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] 298 | Err(ConfigError::SerializationError(String::from(format!( [INFO] [stderr] 299 | "{}", [INFO] [stderr] 300 | e [INFO] [stderr] 301 | )))) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/config.rs:345:5 [INFO] [stderr] | [INFO] [stderr] 345 | return Ok(self); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(self)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/config.rs:348:5 [INFO] [stderr] | [INFO] [stderr] 348 | return Err(ConfigError::ParseError( [INFO] [stderr] | _________________^ [INFO] [stderr] 349 | | String::from( [INFO] [stderr] 350 | | self.config_file_path [INFO] [stderr] 351 | | .as_mut() [INFO] [stderr] ... | [INFO] [stderr] 357 | | String::from(format!("{}", e)), [INFO] [stderr] 358 | | )); [INFO] [stderr] | |___________________^ [INFO] [stderr] | [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] 348 | Err(ConfigError::ParseError( [INFO] [stderr] 349 | String::from( [INFO] [stderr] 350 | self.config_file_path [INFO] [stderr] 351 | .as_mut() [INFO] [stderr] 352 | .unwrap() [INFO] [stderr] 353 | .to_str() [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/config.rs:393:15 [INFO] [stderr] | [INFO] [stderr] 393 | Ok(enc) => return Ok(enc), [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(enc)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/config.rs:395:5 [INFO] [stderr] | [INFO] [stderr] 395 | return Err(ConfigError::SerializationError(String::from(format!( [INFO] [stderr] | _________________^ [INFO] [stderr] 396 | | "{}", [INFO] [stderr] 397 | | e [INFO] [stderr] 398 | | )))); [INFO] [stderr] | |_____________________^ [INFO] [stderr] | [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] 395 | Err(ConfigError::SerializationError(String::from(format!( [INFO] [stderr] 396 | "{}", [INFO] [stderr] 397 | e [INFO] [stderr] 398 | )))) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/comments.rs:433:19 [INFO] [stderr] | [INFO] [stderr] 433 | if line.contains("[") && line.contains("]") { [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/comments.rs:433:41 [INFO] [stderr] | [INFO] [stderr] 433 | if line.contains("[") && line.contains("]") { [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/comments.rs:435:26 [INFO] [stderr] | [INFO] [stderr] 435 | } else if line.contains("=") { [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/comments.rs:436:21 [INFO] [stderr] | [INFO] [stderr] 436 | return line.split("=").collect::>()[0].trim().to_owned(); [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/comments.rs:444:36 [INFO] [stderr] | [INFO] [stderr] 444 | let lines: Vec<&str> = orig.split("\n").collect(); [INFO] [stderr] | ^^^^ help: try using a char instead: `'\n'` [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] error: using `clone` on a double-reference; this will copy the reference instead of cloning the inner type [INFO] [stderr] --> src/config.rs:243:7 [INFO] [stderr] | [INFO] [stderr] 243 | self.config_file_path [INFO] [stderr] | _________________________^ [INFO] [stderr] 244 | | .as_mut() [INFO] [stderr] 245 | | .unwrap() [INFO] [stderr] 246 | | .to_str() [INFO] [stderr] 247 | | .unwrap() [INFO] [stderr] 248 | | .clone(), [INFO] [stderr] | |____________________________________^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::clone_double_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_double_ref [INFO] [stderr] help: try dereferencing it [INFO] [stderr] | [INFO] [stderr] 243 | &(*self.config_file_path [INFO] [stderr] 244 | .as_mut() [INFO] [stderr] 245 | .unwrap() [INFO] [stderr] 246 | .to_str() [INFO] [stderr] 247 | .unwrap()).clone(), [INFO] [stderr] | [INFO] [stderr] help: or try being explicit about what type to clone [INFO] [stderr] | [INFO] [stderr] 243 | &str::clone(self.config_file_path [INFO] [stderr] 244 | .as_mut() [INFO] [stderr] 245 | .unwrap() [INFO] [stderr] 246 | .to_str() [INFO] [stderr] 247 | .unwrap()), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> src/config.rs:250:6 [INFO] [stderr] | [INFO] [stderr] 250 | String::from(format!("{}", e)), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `String::from()`: `format!("{}", e)` [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: identical conversion [INFO] [stderr] --> src/config.rs:298:48 [INFO] [stderr] | [INFO] [stderr] 298 | return Err(ConfigError::SerializationError(String::from(format!( [INFO] [stderr] | ____________________________________________________________^ [INFO] [stderr] 299 | | "{}", [INFO] [stderr] 300 | | e [INFO] [stderr] 301 | | )))); [INFO] [stderr] | |__________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] help: consider removing `String::from()` [INFO] [stderr] | [INFO] [stderr] 298 | return Err(ConfigError::SerializationError(format!( [INFO] [stderr] 299 | "{}", [INFO] [stderr] 300 | e [INFO] [stderr] 301 | ))); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] error: using `clone` on a double-reference; this will copy the reference instead of cloning the inner type [INFO] [stderr] --> src/config.rs:350:7 [INFO] [stderr] | [INFO] [stderr] 350 | self.config_file_path [INFO] [stderr] | _________________________^ [INFO] [stderr] 351 | | .as_mut() [INFO] [stderr] 352 | | .unwrap() [INFO] [stderr] 353 | | .to_str() [INFO] [stderr] 354 | | .unwrap() [INFO] [stderr] 355 | | .clone(), [INFO] [stderr] | |____________________________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_double_ref [INFO] [stderr] help: try dereferencing it [INFO] [stderr] | [INFO] [stderr] 350 | &(*self.config_file_path [INFO] [stderr] 351 | .as_mut() [INFO] [stderr] 352 | .unwrap() [INFO] [stderr] 353 | .to_str() [INFO] [stderr] 354 | .unwrap()).clone(), [INFO] [stderr] | [INFO] [stderr] help: or try being explicit about what type to clone [INFO] [stderr] | [INFO] [stderr] 350 | &str::clone(self.config_file_path [INFO] [stderr] 351 | .as_mut() [INFO] [stderr] 352 | .unwrap() [INFO] [stderr] 353 | .to_str() [INFO] [stderr] 354 | .unwrap()), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> src/config.rs:357:6 [INFO] [stderr] | [INFO] [stderr] 357 | String::from(format!("{}", e)), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `String::from()`: `format!("{}", e)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> src/config.rs:395:48 [INFO] [stderr] | [INFO] [stderr] 395 | return Err(ConfigError::SerializationError(String::from(format!( [INFO] [stderr] | ____________________________________________________________^ [INFO] [stderr] 396 | | "{}", [INFO] [stderr] 397 | | e [INFO] [stderr] 398 | | )))); [INFO] [stderr] | |__________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] help: consider removing `String::from()` [INFO] [stderr] | [INFO] [stderr] 395 | return Err(ConfigError::SerializationError(format!( [INFO] [stderr] 396 | "{}", [INFO] [stderr] 397 | e [INFO] [stderr] 398 | ))); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> src/types.rs:66:4 [INFO] [stderr] | [INFO] [stderr] 66 | String::from(format!("Error loading config file: {}", error)), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `String::from()`: `format!("Error loading config file: {}", error)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] error: aborting due to 2 previous errors [INFO] [stderr] [INFO] [stderr] error: Could not compile `grin_config`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/comments.rs:433:19 [INFO] [stderr] | [INFO] [stderr] 433 | if line.contains("[") && line.contains("]") { [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/comments.rs:433:41 [INFO] [stderr] | [INFO] [stderr] 433 | if line.contains("[") && line.contains("]") { [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/comments.rs:435:26 [INFO] [stderr] | [INFO] [stderr] 435 | } else if line.contains("=") { [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/comments.rs:436:21 [INFO] [stderr] | [INFO] [stderr] 436 | return line.split("=").collect::>()[0].trim().to_owned(); [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/comments.rs:444:36 [INFO] [stderr] | [INFO] [stderr] 444 | let lines: Vec<&str> = orig.split("\n").collect(); [INFO] [stderr] | ^^^^ help: try using a char instead: `'\n'` [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] error: using `clone` on a double-reference; this will copy the reference instead of cloning the inner type [INFO] [stderr] --> src/config.rs:243:7 [INFO] [stderr] | [INFO] [stderr] 243 | self.config_file_path [INFO] [stderr] | _________________________^ [INFO] [stderr] 244 | | .as_mut() [INFO] [stderr] 245 | | .unwrap() [INFO] [stderr] 246 | | .to_str() [INFO] [stderr] 247 | | .unwrap() [INFO] [stderr] 248 | | .clone(), [INFO] [stderr] | |____________________________________^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::clone_double_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_double_ref [INFO] [stderr] help: try dereferencing it [INFO] [stderr] | [INFO] [stderr] 243 | &(*self.config_file_path [INFO] [stderr] 244 | .as_mut() [INFO] [stderr] 245 | .unwrap() [INFO] [stderr] 246 | .to_str() [INFO] [stderr] 247 | .unwrap()).clone(), [INFO] [stderr] | [INFO] [stderr] help: or try being explicit about what type to clone [INFO] [stderr] | [INFO] [stderr] 243 | &str::clone(self.config_file_path [INFO] [stderr] 244 | .as_mut() [INFO] [stderr] 245 | .unwrap() [INFO] [stderr] 246 | .to_str() [INFO] [stderr] 247 | .unwrap()), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> src/config.rs:250:6 [INFO] [stderr] | [INFO] [stderr] 250 | String::from(format!("{}", e)), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `String::from()`: `format!("{}", e)` [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: identical conversion [INFO] [stderr] --> src/config.rs:298:48 [INFO] [stderr] | [INFO] [stderr] 298 | return Err(ConfigError::SerializationError(String::from(format!( [INFO] [stderr] | ____________________________________________________________^ [INFO] [stderr] 299 | | "{}", [INFO] [stderr] 300 | | e [INFO] [stderr] 301 | | )))); [INFO] [stderr] | |__________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] help: consider removing `String::from()` [INFO] [stderr] | [INFO] [stderr] 298 | return Err(ConfigError::SerializationError(format!( [INFO] [stderr] 299 | "{}", [INFO] [stderr] 300 | e [INFO] [stderr] 301 | ))); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] error: using `clone` on a double-reference; this will copy the reference instead of cloning the inner type [INFO] [stderr] --> src/config.rs:350:7 [INFO] [stderr] | [INFO] [stderr] 350 | self.config_file_path [INFO] [stderr] | _________________________^ [INFO] [stderr] 351 | | .as_mut() [INFO] [stderr] 352 | | .unwrap() [INFO] [stderr] 353 | | .to_str() [INFO] [stderr] 354 | | .unwrap() [INFO] [stderr] 355 | | .clone(), [INFO] [stderr] | |____________________________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_double_ref [INFO] [stderr] help: try dereferencing it [INFO] [stderr] | [INFO] [stderr] 350 | &(*self.config_file_path [INFO] [stderr] 351 | .as_mut() [INFO] [stderr] 352 | .unwrap() [INFO] [stderr] 353 | .to_str() [INFO] [stderr] 354 | .unwrap()).clone(), [INFO] [stderr] | [INFO] [stderr] help: or try being explicit about what type to clone [INFO] [stderr] | [INFO] [stderr] 350 | &str::clone(self.config_file_path [INFO] [stderr] 351 | .as_mut() [INFO] [stderr] 352 | .unwrap() [INFO] [stderr] 353 | .to_str() [INFO] [stderr] 354 | .unwrap()), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> src/config.rs:357:6 [INFO] [stderr] | [INFO] [stderr] 357 | String::from(format!("{}", e)), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `String::from()`: `format!("{}", e)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> src/config.rs:395:48 [INFO] [stderr] | [INFO] [stderr] 395 | return Err(ConfigError::SerializationError(String::from(format!( [INFO] [stderr] | ____________________________________________________________^ [INFO] [stderr] 396 | | "{}", [INFO] [stderr] 397 | | e [INFO] [stderr] 398 | | )))); [INFO] [stderr] | |__________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] help: consider removing `String::from()` [INFO] [stderr] | [INFO] [stderr] 395 | return Err(ConfigError::SerializationError(format!( [INFO] [stderr] 396 | "{}", [INFO] [stderr] 397 | e [INFO] [stderr] 398 | ))); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> src/types.rs:66:4 [INFO] [stderr] | [INFO] [stderr] 66 | String::from(format!("Error loading config file: {}", error)), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `String::from()`: `format!("Error loading config file: {}", error)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] error: aborting due to 2 previous errors [INFO] [stderr] [INFO] [stderr] error: Could not compile `grin_config`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "e208848a530cad77bc33897b121ca50d10d07161b98d4ab2291c63d279d0b2b8"` [INFO] running `"docker" "rm" "-f" "e208848a530cad77bc33897b121ca50d10d07161b98d4ab2291c63d279d0b2b8"` [INFO] [stdout] e208848a530cad77bc33897b121ca50d10d07161b98d4ab2291c63d279d0b2b8