[INFO] fetching crate thebakery 1.1.14... [INFO] linting thebakery-1.1.14 against nightly for clippy-nonminimal_bool-denied [INFO] extracting crate thebakery 1.1.14 into /workspace/builds/worker-3-tc1/source [INFO] started tweaking crates.io crate thebakery 1.1.14 [INFO] finished tweaking crates.io crate thebakery 1.1.14 [INFO] tweaked toml for crates.io crate thebakery 1.1.14 written to /workspace/builds/worker-3-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate thebakery 1.1.14 on toolchain nightly [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate thebakery 1.1.14 already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: only one of `license` or `license-file` is necessary [INFO] [stderr] `license` should be used if the package license can be expressed with a standard SPDX expression. [INFO] [stderr] `license-file` should be used if the package uses a non-standard license. [INFO] [stderr] See https://doc.rust-lang.org/cargo/reference/manifest.html#the-license-and-license-file-fields for more information. [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded deranged v0.3.8 [INFO] [stderr] Downloaded os_pipe v1.1.4 [INFO] [stderr] Downloaded serde_json v1.0.105 [INFO] [stderr] Downloaded regexp v0.3.2 [INFO] [stderr] Downloaded clap v4.4.2 [INFO] [stderr] Downloaded anstream v0.5.0 [INFO] [stderr] Downloaded users v0.11.0 [INFO] [stderr] Downloaded syn v2.0.31 [INFO] [stderr] Downloaded anstyle-wincon v2.1.0 [INFO] [stderr] Downloaded anstyle v1.0.2 [INFO] [stderr] Downloaded time v0.3.28 [INFO] [stderr] Downloaded aho-corasick v1.0.5 [INFO] [stderr] Downloaded filetime v0.2.22 [INFO] [stderr] Downloaded clap_builder v4.4.2 [INFO] [stderr] Downloaded xattr v1.0.1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 15910b4b6664f15ee397f106dc05cc198deb5eed99d6a63b6fa0c2d020d8501f [INFO] running `Command { std: "docker" "start" "-a" "15910b4b6664f15ee397f106dc05cc198deb5eed99d6a63b6fa0c2d020d8501f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "15910b4b6664f15ee397f106dc05cc198deb5eed99d6a63b6fa0c2d020d8501f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "15910b4b6664f15ee397f106dc05cc198deb5eed99d6a63b6fa0c2d020d8501f", kill_on_drop: false }` [INFO] [stdout] 15910b4b6664f15ee397f106dc05cc198deb5eed99d6a63b6fa0c2d020d8501f [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "clippy" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] a11c3afb53b2b22bd00919d35e15fbc5b37fcfc7b5d0ff79a3081b9bbb15f9d8 [INFO] running `Command { std: "docker" "start" "-a" "a11c3afb53b2b22bd00919d35e15fbc5b37fcfc7b5d0ff79a3081b9bbb15f9d8", kill_on_drop: false }` [INFO] [stderr] warning: only one of `license` or `license-file` is necessary [INFO] [stderr] `license` should be used if the package license can be expressed with a standard SPDX expression. [INFO] [stderr] `license-file` should be used if the package uses a non-standard license. [INFO] [stderr] See https://doc.rust-lang.org/cargo/reference/manifest.html#the-license-and-license-file-fields for more information. [INFO] [stderr] Compiling libc v0.2.148 [INFO] [stderr] Compiling proc-macro2 v1.0.66 [INFO] [stderr] Checking memchr v2.6.3 [INFO] [stderr] Checking regex-syntax v0.7.5 [INFO] [stderr] Compiling num-traits v0.2.16 [INFO] [stderr] Checking anstyle-parse v0.2.1 [INFO] [stderr] Compiling serde v1.0.188 [INFO] [stderr] Checking either v1.9.0 [INFO] [stderr] Checking anstyle v1.0.2 [INFO] [stderr] Compiling thiserror v1.0.49 [INFO] [stderr] Compiling serde_json v1.0.105 [INFO] [stderr] Checking deranged v0.3.8 [INFO] [stderr] Checking sha2 v0.10.7 [INFO] [stderr] Checking hmac v0.12.1 [INFO] [stderr] Checking sha1 v0.10.5 [INFO] [stderr] Checking flate2 v1.0.27 [INFO] [stderr] Checking itertools v0.10.5 [INFO] [stderr] Checking ryu v1.0.15 [INFO] [stderr] Checking hashbrown v0.14.0 [INFO] [stderr] Checking fragile v2.0.0 [INFO] [stderr] Checking aho-corasick v1.0.5 [INFO] [stderr] Checking anstream v0.5.0 [INFO] [stderr] Checking indexmap v2.0.0 [INFO] [stderr] Checking clap_builder v4.4.2 [INFO] [stderr] Compiling quote v1.0.33 [INFO] [stderr] Compiling jobserver v0.1.26 [INFO] [stderr] Checking getrandom v0.2.10 [INFO] [stderr] Checking xattr v1.0.1 [INFO] [stderr] Checking filetime v0.2.22 [INFO] [stderr] Checking rand v0.4.6 [INFO] [stderr] Checking os_pipe v1.1.4 [INFO] [stderr] Checking subprocess v0.2.9 [INFO] [stderr] Checking users v0.11.0 [INFO] [stderr] Checking time v0.3.28 [INFO] [stderr] Checking regex-automata v0.3.8 [INFO] [stderr] Compiling syn v2.0.31 [INFO] [stderr] Compiling cc v1.0.83 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Checking tar v0.4.40 [INFO] [stderr] Checking password-hash v0.4.2 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking float-cmp v0.9.0 [INFO] [stderr] Checking chrono v0.4.38 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking pbkdf2 v0.11.0 [INFO] [stderr] Checking tempdir v0.3.7 [INFO] [stderr] Compiling zstd-sys v2.0.8+zstd.1.5.5 [INFO] [stderr] Compiling bzip2-sys v0.1.11+1.0.8 [INFO] [stderr] Checking clap v4.4.2 [INFO] [stderr] Checking bzip2 v0.4.4 [INFO] [stderr] Compiling thiserror-impl v1.0.49 [INFO] [stderr] Checking regex v1.9.5 [INFO] [stderr] Checking predicates v2.1.5 [INFO] [stderr] Checking regexp v0.3.2 [INFO] [stderr] Compiling mockall_derive v0.11.4 [INFO] [stderr] Compiling zstd-safe v5.0.2+zstd.1.5.2 [INFO] [stderr] Checking zstd v0.11.2+zstd.1.5.2 [INFO] [stderr] Checking zip v0.6.6 [INFO] [stderr] Checking mockall v0.11.4 [INFO] [stderr] Checking thebakery v1.1.14 (/opt/rustwide/workdir) [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> src/cli/bakery.rs:37:18 [INFO] [stdout] | [INFO] [stdout] 37 | Bakery { cli: cli } [INFO] [stdout] | ^^^^^^^^ help: replace it with: `cli` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] = note: `#[warn(clippy::redundant_field_names)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `bakery::Bakery` [INFO] [stdout] --> src/cli/mod.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 6 | pub use bakery::Bakery; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `system::MockSystem` [INFO] [stdout] --> src/cli/mod.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub use system::MockSystem; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::executers::Docker` [INFO] [stdout] --> src/commands/build.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use crate::executers::Docker; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::executers::Docker` [INFO] [stdout] --> src/commands/clean.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::executers::Docker; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::executers::Docker` [INFO] [stdout] --> src/commands/upload.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::executers::Docker; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `CTX_KEY_CONFIG` [INFO] [stdout] --> src/data/mod.rs:15:36 [INFO] [stdout] | [INFO] [stdout] 15 | WsContextData, CTX_KEY_BRANCH, CTX_KEY_CONFIG, CTX_KEY_DEVICE, CTX_KEY_EYECANDY, CTX_KEY_IMAGE, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::result` [INFO] [stdout] --> src/fs/bitbake.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::result; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `WsContextData` [INFO] [stdout] --> src/workspace/config.rs:6:32 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::data::{WsBuildData, WsContextData}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> src/cli/bakery.rs:37:18 [INFO] [stdout] | [INFO] [stdout] 37 | Bakery { cli: cli } [INFO] [stdout] | ^^^^^^^^ help: replace it with: `cli` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] = note: `#[warn(clippy::redundant_field_names)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `bakery::Bakery` [INFO] [stdout] --> src/cli/mod.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 6 | pub use bakery::Bakery; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::executers::Docker` [INFO] [stdout] --> src/commands/build.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use crate::executers::Docker; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::executers::Docker` [INFO] [stdout] --> src/commands/clean.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::executers::Docker; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::executers::Docker` [INFO] [stdout] --> src/commands/upload.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::executers::Docker; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `CTX_KEY_CONFIG` [INFO] [stdout] --> src/data/mod.rs:15:36 [INFO] [stdout] | [INFO] [stdout] 15 | WsContextData, CTX_KEY_BRANCH, CTX_KEY_CONFIG, CTX_KEY_DEVICE, CTX_KEY_EYECANDY, CTX_KEY_IMAGE, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::result` [INFO] [stdout] --> src/fs/bitbake.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::result; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `WsContextData` [INFO] [stdout] --> src/workspace/config.rs:6:32 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::data::{WsBuildData, WsContextData}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `res` is never read [INFO] [stdout] --> src/commands/shell.rs:53:43 [INFO] [stdout] | [INFO] [stdout] 53 | let mut res: Result<(), BError> = Ok(()); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/data/artifact.rs:156:13 [INFO] [stdout] | [INFO] [stdout] 156 | _ => { [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/data/artifact.rs:156:13 [INFO] [stdout] | [INFO] [stdout] 134 | AType::File => { [INFO] [stdout] | ----------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 139 | AType::Directory => { [INFO] [stdout] | ---------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 142 | AType::Archive => { [INFO] [stdout] | -------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 145 | AType::Manifest => { [INFO] [stdout] | --------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 156 | _ => { [INFO] [stdout] | ^ ...and 2 other patterns collectively make this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `warn` is never used [INFO] [stdout] --> src/cli/logger.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 4 | pub trait Logger { [INFO] [stdout] | ------ method in this trait [INFO] [stdout] ... [INFO] [stdout] 7 | fn warn(&self, message: String); [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `merge` is never used [INFO] [stdout] --> src/configs/context.rs:154:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl Context { [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 154 | pub fn merge(&mut self, context: &Context) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `version` is never read [INFO] [stdout] --> src/configs/settings.rs:16:9 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct WsSettings { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] 16 | pub version: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `WsSettings` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `merge` is never used [INFO] [stdout] --> src/configs/settings.rs:159:12 [INFO] [stdout] | [INFO] [stdout] 38 | impl WsSettings { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 159 | pub fn merge(&mut self, data: &mut WsSettings) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_str` is never used [INFO] [stdout] --> src/data/artifact.rs:31:12 [INFO] [stdout] | [INFO] [stdout] 30 | impl WsArtifactData { [INFO] [stdout] | ------------------- associated function in this implementation [INFO] [stdout] 31 | pub fn from_str(json_string: &str) -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `from_str` and `docker_image` are never used [INFO] [stdout] --> src/data/bitbake.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 25 | impl WsBitbakeData { [INFO] [stdout] | ------------------ associated items in this implementation [INFO] [stdout] 26 | pub fn from_str(json_string: &str, settings: &WsSettingsHandler) -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 146 | pub fn docker_image(&self) -> &str { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_str` is never used [INFO] [stdout] --> src/data/config.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 14 | impl WsConfigData { [INFO] [stdout] | ----------------- associated function in this implementation [INFO] [stdout] 15 | pub fn from_str(json_string: &str) -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `from_str`, `get_ctx_path`, and `get_ctx_value` are never used [INFO] [stdout] --> src/data/context.rs:126:12 [INFO] [stdout] | [INFO] [stdout] 69 | impl WsContextData { [INFO] [stdout] | ------------------ associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 126 | pub fn from_str(json_string: &str) -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 230 | pub fn get_ctx_path(&self, key: &str) -> PathBuf { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 234 | pub fn get_ctx_value(&self, key: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_str` is never used [INFO] [stdout] --> src/data/customsubcmd.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 15 | impl WsCustomSubCmdData { [INFO] [stdout] | ----------------------- associated function in this implementation [INFO] [stdout] 16 | pub fn from_str(name: &str, json_string: &str) -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `data` is never read [INFO] [stdout] --> src/data/data.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct WsBuildData { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] 16 | data: Value, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_str` is never used [INFO] [stdout] --> src/data/data.rs:38:12 [INFO] [stdout] | [INFO] [stdout] 25 | impl WsBuildData { [INFO] [stdout] | ---------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 38 | pub fn from_str(json_config: &str, settings: &WsSettingsHandler) -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_str` is never used [INFO] [stdout] --> src/data/include.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 14 | impl WsIncludeData { [INFO] [stdout] | ------------------ associated function in this implementation [INFO] [stdout] 15 | pub fn from_str(json_string: &str, settings: &WsSettingsHandler) -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `index` is never read [INFO] [stdout] --> src/data/task.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct WsTaskData { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] 17 | index: u32, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `from_str` and `index` are never used [INFO] [stdout] --> src/data/task.rs:49:12 [INFO] [stdout] | [INFO] [stdout] 33 | impl WsTaskData { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 49 | pub fn from_str(json_string: &str, build_data: &WsBuildData) -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 133 | pub fn index(&self) -> u32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `name` is never read [INFO] [stdout] --> src/fs/archiver.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct Archiver { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 9 | path: PathBuf, [INFO] [stdout] 10 | name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Archiver` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `path` and `name` are never used [INFO] [stdout] --> src/fs/archiver.rs:93:12 [INFO] [stdout] | [INFO] [stdout] 21 | impl Archiver { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 93 | pub fn path(&self) -> &PathBuf { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 97 | pub fn name(&self) -> &str { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name` and `extension` are never read [INFO] [stdout] --> src/fs/manifest.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Manifest { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] 8 | path: PathBuf, [INFO] [stdout] 9 | name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 10 | extension: String, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `path`, `name`, and `extension` are never used [INFO] [stdout] --> src/fs/manifest.rs:45:12 [INFO] [stdout] | [INFO] [stdout] 13 | impl Manifest { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 45 | pub fn path(&self) -> &PathBuf { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 49 | pub fn name(&self) -> &str { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 53 | pub fn extension(&self) -> &str { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Helper` is never constructed [INFO] [stdout] --> src/helper/mod.rs:19:12 [INFO] [stdout] | [INFO] [stdout] 19 | pub struct Helper; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated functions are never used [INFO] [stdout] --> src/helper/mod.rs:22:12 [INFO] [stdout] | [INFO] [stdout] 21 | impl Helper { [INFO] [stdout] | ----------- associated functions in this implementation [INFO] [stdout] 22 | pub fn write_json_conf(path: &PathBuf, json_str: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 34 | pub fn setup_test_ws_default_dirs(work_dir: &Path) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 51 | pub fn setup_test_ws_dirs(ws_settings: &WsSettingsHandler) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 62 | pub fn setup_test_build_configs_files(configs: &IndexMap) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 71 | pub fn create_test_files(files: &Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 87 | pub fn list_files_in_dir( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 115 | pub fn list_files_in_archive( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 166 | pub fn verify_archived_files( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 204 | pub fn setup_ws_settings(json_test_str: &str) -> WsSettings { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 234 | pub fn setup_ws_build_config_handler( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 253 | pub fn setup_ws( [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 271 | pub fn setup_build_data( [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 300 | pub fn parse(json_string: &str) -> Result { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 307 | pub fn setup_collector_test_ws( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 321 | pub fn assert_hashmap(hash: &HashMap, verify: &HashMap) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 330 | pub fn env_home() -> String { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 344 | pub fn docker_pull_string(image: &DockerImage) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 350 | pub fn docker_bootstrap_string( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 419 | pub fn docker_cmdline_string( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_str` is never used [INFO] [stdout] --> src/workspace/artifact.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 14 | impl WsArtifactsHandler { [INFO] [stdout] | ----------------------- associated function in this implementation [INFO] [stdout] 15 | pub fn from_str( [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `subcmds` is never used [INFO] [stdout] --> src/workspace/config.rs:134:12 [INFO] [stdout] | [INFO] [stdout] 17 | impl WsBuildConfigHandler { [INFO] [stdout] | ------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 134 | pub fn subcmds(&self) -> &IndexMap { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_str` is never used [INFO] [stdout] --> src/workspace/customsubcmd.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 15 | impl WsCustomSubCmdHandler { [INFO] [stdout] | -------------------------- associated function in this implementation [INFO] [stdout] 16 | pub fn from_str(name: &str, json_config: &str) -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `config` and `docker_dir` are never used [INFO] [stdout] --> src/workspace/settings.rs:91:12 [INFO] [stdout] | [INFO] [stdout] 23 | impl WsSettingsHandler { [INFO] [stdout] | ---------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 91 | pub fn config(&self) -> &WsSettings { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 136 | pub fn docker_dir(&self) -> PathBuf { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `from_str` and `artifacts` are never used [INFO] [stdout] --> src/workspace/tasks.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 20 | impl WsTaskHandler { [INFO] [stdout] | ------------------ associated items in this implementation [INFO] [stdout] 21 | pub fn from_str(json_config: &str, build_data: &WsBuildData) -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 172 | pub fn artifacts(&self) -> &Vec { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/cli/bakery.rs:62:12 [INFO] [stdout] | [INFO] [stdout] 62 | if force || inside_docker || (!inside_docker && !cmd_require_docker) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] = note: `#[warn(clippy::nonminimal_bool)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 62 - if force || inside_docker || (!inside_docker && !cmd_require_docker) { [INFO] [stdout] 62 + if !(!force && !inside_docker && cmd_require_docker) { [INFO] [stdout] | [INFO] [stdout] 62 - if force || inside_docker || (!inside_docker && !cmd_require_docker) { [INFO] [stdout] 62 + if force || inside_docker || !cmd_require_docker { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `to_string` applied to a type that implements `Display` in `format!` args [INFO] [stdout] --> src/cli/bakery.rs:54:48 [INFO] [stdout] | [INFO] [stdout] 54 | self.cli.debug(format!("Error: {}", err.to_string())); [INFO] [stdout] | ^^^^^^^^^^^^ help: remove this [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#to_string_in_format_args [INFO] [stdout] = note: `#[warn(clippy::to_string_in_format_args)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary use of `to_string` [INFO] [stdout] --> src/cli/bakery.rs:127:13 [INFO] [stdout] | [INFO] [stdout] 127 | &cmd_name.to_string(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: use: `cmd_name` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_to_owned [INFO] [stdout] = note: `#[warn(clippy::unnecessary_to_owned)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary use of `to_string` [INFO] [stdout] --> src/cli/bakery.rs:197:21 [INFO] [stdout] | [INFO] [stdout] 197 | &cmd_name.to_string(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: use: `cmd_name` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_to_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary use of `to_string` [INFO] [stdout] --> src/cli/bakery.rs:204:21 [INFO] [stdout] | [INFO] [stdout] 204 | &cmd_name.to_string(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: use: `cmd_name` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_to_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module has the same name as its containing module [INFO] [stdout] --> src/cli/mod.rs:2:1 [INFO] [stdout] | [INFO] [stdout] 2 | pub mod cli; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception [INFO] [stdout] = note: `#[warn(clippy::module_inception)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary map of the identity function [INFO] [stdout] --> src/cli/cli.rs:37:49 [INFO] [stdout] | [INFO] [stdout] 37 | c = std::env::args().into_iter().map(|s| s).collect(); [INFO] [stdout] | ^^^^^^^^^^^ help: remove the call to `map` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_identity [INFO] [stdout] = note: `#[warn(clippy::map_identity)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::env::Args` [INFO] [stdout] --> src/cli/cli.rs:37:21 [INFO] [stdout] | [INFO] [stdout] 37 | c = std::env::args().into_iter().map(|s| s).collect(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into_iter()`: `std::env::args()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] = note: `#[warn(clippy::useless_conversion)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/cli/cli.rs:75:20 [INFO] [stdout] | [INFO] [stdout] 75 | self.debug(format!("{}", cmd.as_str().trim_end())); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `cmd.as_str().trim_end().to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] = note: `#[warn(clippy::useless_format)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `&Box`. Consider using just `&T` [INFO] [stdout] --> src/cli/cli.rs:111:53 [INFO] [stdout] | [INFO] [stdout] 111 | pub fn get_command(&self, name: &str) -> Result<&Box, BError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: try: `&dyn BCommand` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#borrowed_box [INFO] [stdout] = note: `#[warn(clippy::borrowed_box)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/cli/cli.rs:112:34 [INFO] [stdout] | [INFO] [stdout] 112 | self.cmd_handler.get_cmd(&name) [INFO] [stdout] | ^^^^^ help: change this to: `name` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] = note: `#[warn(clippy::needless_borrow)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/cli/cli.rs:126:17 [INFO] [stdout] | [INFO] [stdout] 126 | / return PathBuf::from( [INFO] [stdout] 127 | | var.into_string() [INFO] [stdout] 128 | | .or::(Ok(String::from(""))) [INFO] [stdout] 129 | | .unwrap(), [INFO] [stdout] 130 | | ); [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 126 ~ PathBuf::from( [INFO] [stdout] 127 + var.into_string() [INFO] [stdout] 128 + .or::(Ok(String::from(""))) [INFO] [stdout] 129 + .unwrap(), [INFO] [stdout] 130 ~ ) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/cli/cli.rs:133:17 [INFO] [stdout] | [INFO] [stdout] 133 | return PathBuf::from(""); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 133 - return PathBuf::from(""); [INFO] [stdout] 133 + PathBuf::from("") [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: found `.or(Ok(…)).unwrap()` [INFO] [stdout] --> src/cli/cli.rs:128:26 [INFO] [stdout] | [INFO] [stdout] 128 | .or::(Ok(String::from(""))) [INFO] [stdout] | __________________________^ [INFO] [stdout] 129 | | .unwrap(), [INFO] [stdout] | |_________________________________^ help: try: `unwrap_or(String::from(""))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_then_unwrap [INFO] [stdout] = note: `#[warn(clippy::or_then_unwrap)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/cli/cli.rs:141:17 [INFO] [stdout] | [INFO] [stdout] 141 | return path; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 141 - return path; [INFO] [stdout] 141 + path [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/cli/cli.rs:144:17 [INFO] [stdout] | [INFO] [stdout] 144 | return PathBuf::from(""); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 144 - return PathBuf::from(""); [INFO] [stdout] 144 + PathBuf::from("") [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `&Box`. Consider using just `&T` [INFO] [stdout] --> src/cli/cli.rs:153:34 [INFO] [stdout] | [INFO] [stdout] 153 | pub fn _get_logger(&self) -> &Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: try: `&dyn Logger` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#borrowed_box [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/cli/system.rs:46:20 [INFO] [stdout] | [INFO] [stdout] 46 | init_file: &PathBuf, [INFO] [stdout] | ^^^^^^^^ help: change this to: `&Path` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/cli/system.rs:47:20 [INFO] [stdout] | [INFO] [stdout] 47 | build_dir: &PathBuf, [INFO] [stdout] | ^^^^^^^^ help: change this to: `&Path` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/cli/system.rs:49:40 [INFO] [stdout] | [INFO] [stdout] 49 | fn is_directory_empty(&self, path: &PathBuf) -> Result; [INFO] [stdout] | ^^^^^^^^ help: change this to: `&Path` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/cli/system.rs:50:31 [INFO] [stdout] | [INFO] [stdout] 50 | fn rmdir_all(&self, path: &PathBuf) -> Result<(), BError>; [INFO] [stdout] | ^^^^^^^^ help: change this to: `&Path` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `to_string` applied to a type that implements `Display` in `format!` args [INFO] [stdout] --> src/cli/system.rs:122:44 [INFO] [stdout] | [INFO] [stdout] 122 | init_file.to_string_lossy().to_string() [INFO] [stdout] | ^^^^^^^^^^^^ help: remove this [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#to_string_in_format_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `to_string` applied to a type that implements `Display` in `format!` args [INFO] [stdout] --> src/cli/system.rs:128:40 [INFO] [stdout] | [INFO] [stdout] 128 | init_file.to_string_lossy().to_string(), [INFO] [stdout] | ^^^^^^^^^^^^ help: remove this [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#to_string_in_format_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `to_string` applied to a type that implements `Display` in `format!` args [INFO] [stdout] --> src/cli/system.rs:129:40 [INFO] [stdout] | [INFO] [stdout] 129 | build_dir.to_string_lossy().to_string() [INFO] [stdout] | ^^^^^^^^^^^^ help: remove this [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#to_string_in_format_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/collector/factory.rs:17:9 [INFO] [stdout] | [INFO] [stdout] 17 | let collector: Box; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] = note: `#[warn(clippy::needless_late_init)]` on by default [INFO] [stdout] help: move the declaration `collector` here and remove the assignments from the `match` arms [INFO] [stdout] | [INFO] [stdout] 17 ~ [INFO] [stdout] 18 ~ let collector: Box = match artifact.data().atype() { [INFO] [stdout] 19 | AType::Archive => { [INFO] [stdout] 20 ~ Box::new(ArchiveCollector::new(artifact, cli)) [INFO] [stdout] 21 | } [INFO] [stdout] 22 | AType::Directory => { [INFO] [stdout] 23 ~ Box::new(DirectoryCollector::new(artifact, cli)) [INFO] [stdout] 24 | } [INFO] [stdout] 25 | AType::File => { [INFO] [stdout] 26 ~ Box::new(FileCollector::new(artifact, cli)) [INFO] [stdout] 27 | } [INFO] [stdout] 28 | AType::Manifest => { [INFO] [stdout] 29 ~ Box::new(ManifestCollector::new(artifact, cli)) [INFO] [stdout] 30 | } [INFO] [stdout] 31 | AType::Link => { [INFO] [stdout] 32 ~ Box::new(LinkCollector::new(artifact, cli)) [INFO] [stdout] 33 | } [INFO] [stdout] 34 | AType::Conditional => { [INFO] [stdout] 35 ~ Box::new(ConditionalCollector::new(artifact, cli)) [INFO] [stdout] 36 | } [INFO] [stdout] 37 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/collector/file.rs:86:9 [INFO] [stdout] | [INFO] [stdout] 86 | return true; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 86 - return true; [INFO] [stdout] 86 + true [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/collector/file.rs:71:33 [INFO] [stdout] | [INFO] [stdout] 71 | fn is_dir(&self, dest_path: &PathBuf, dest_str: &str) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 71 - fn is_dir(&self, dest_path: &PathBuf, dest_str: &str) -> bool { [INFO] [stdout] 71 + fn is_dir(&self, dest_path: &Path, dest_str: &str) -> bool { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: binary comparison to literal `Option::None` [INFO] [stdout] --> src/collector/file.rs:78:12 [INFO] [stdout] | [INFO] [stdout] 78 | if file_name == None { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `Option::is_none()` instead: `file_name.is_none()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#partialeq_to_none [INFO] [stdout] = note: `#[warn(clippy::partialeq_to_none)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: binary comparison to literal `Option::None` [INFO] [stdout] --> src/collector/file.rs:82:12 [INFO] [stdout] | [INFO] [stdout] 82 | if dest_path.extension() != None { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `Option::is_some()` instead: `dest_path.extension().is_some()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#partialeq_to_none [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/collector/file.rs:89:45 [INFO] [stdout] | [INFO] [stdout] 89 | fn list_files(&self, glob_pattern_path: &PathBuf) -> Result, BError> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 89 ~ fn list_files(&self, glob_pattern_path: &Path) -> Result, BError> { [INFO] [stdout] 90 | let mut files: Vec = vec![]; [INFO] [stdout] ... [INFO] [stdout] 112 | None => { [INFO] [stdout] 113 ~ files.push(glob_pattern_path.to_path_buf()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/commands/build.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 34 | return String::from("default"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 34 - return String::from("default"); [INFO] [stdout] 34 + String::from("default") [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/commands/build.rs:175:21 [INFO] [stdout] | [INFO] [stdout] 175 | &workspace.config().build_data(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `workspace.config().build_data()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `tasks.get(0)` [INFO] [stdout] --> src/commands/build.rs:185:33 [INFO] [stdout] | [INFO] [stdout] 185 | let task: &String = tasks.get(0).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^ help: try: `tasks.first()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] = note: `#[warn(clippy::get_first)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/commands/build.rs:191:25 [INFO] [stdout] | [INFO] [stdout] 191 | &workspace.config().build_data(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `workspace.config().build_data()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `tasks.get(0)` [INFO] [stdout] --> src/commands/build.rs:201:68 [INFO] [stdout] | [INFO] [stdout] 201 | let task: &WsTaskHandler = workspace.config().task(tasks.get(0).unwrap())?; [INFO] [stdout] | ^^^^^^^^^^^^ help: try: `tasks.first()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/commands/build.rs:204:21 [INFO] [stdout] | [INFO] [stdout] 204 | &workspace.config().build_data(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `workspace.config().build_data()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/commands/clean.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 28 | return String::from("default"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 28 - return String::from("default"); [INFO] [stdout] 28 + String::from("default") [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/commands/clean.rs:91:33 [INFO] [stdout] | [INFO] [stdout] 91 | task.clean(cli, &workspace.config().build_data(), &env_variables, true)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `workspace.config().build_data()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `tasks.get(0)` [INFO] [stdout] --> src/commands/clean.rs:95:33 [INFO] [stdout] | [INFO] [stdout] 95 | let task: &String = tasks.get(0).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^ help: try: `tasks.first()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/commands/clean.rs:99:37 [INFO] [stdout] | [INFO] [stdout] 99 | task.clean(cli, &workspace.config().build_data(), &env_variables, false)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `workspace.config().build_data()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `tasks.get(0)` [INFO] [stdout] --> src/commands/clean.rs:103:68 [INFO] [stdout] | [INFO] [stdout] 103 | let task: &WsTaskHandler = workspace.config().task(tasks.get(0).unwrap())?; [INFO] [stdout] | ^^^^^^^^^^^^ help: try: `tasks.first()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/commands/clean.rs:104:33 [INFO] [stdout] | [INFO] [stdout] 104 | task.clean(cli, &workspace.config().build_data(), &env_variables, true)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `workspace.config().build_data()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/commands/deploy.rs:25:9 [INFO] [stdout] | [INFO] [stdout] 25 | return String::from("default"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 25 - return String::from("default"); [INFO] [stdout] 25 + String::from("default") [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/commands/deploy.rs:52:22 [INFO] [stdout] | [INFO] [stdout] 52 | if device != String::from("NA") { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: try: `"NA"` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] = note: `#[warn(clippy::cmp_owned)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/commands/deploy.rs:58:21 [INFO] [stdout] | [INFO] [stdout] 58 | if image != String::from("NA") { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: try: `"NA"` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `&Box`. Consider using just `&T` [INFO] [stdout] --> src/commands/handler.rs:18:52 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn get_cmd(&self, cmd_str: &str) -> Result<&Box, BError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: try: `&dyn BCommand` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#borrowed_box [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/commands/list.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 27 | return String::from("default"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 27 - return String::from("default"); [INFO] [stdout] 27 + String::from("default") [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/commands/setup.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 26 | return String::from("default"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 26 - return String::from("default"); [INFO] [stdout] 26 + String::from("default") [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `to_string` applied to a type that implements `Display` in `format!` args [INFO] [stdout] --> src/commands/setup.rs:68:26 [INFO] [stdout] | [INFO] [stdout] 68 | e.to_string() [INFO] [stdout] | ^^^^^^^^^^^^ help: remove this [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#to_string_in_format_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/commands/setup.rs:87:22 [INFO] [stdout] | [INFO] [stdout] 87 | if branch != String::from("NA") { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: try: `"NA"` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/commands/shell.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | return String::from("default"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 29 - return String::from("default"); [INFO] [stdout] 29 + String::from("default") [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `to_string` applied to a type that implements `Display` in `format!` args [INFO] [stdout] --> src/commands/shell.rs:110:65 [INFO] [stdout] | [INFO] [stdout] 110 | cli.debug(format!("bootstrap error: {}", err.to_string())); [INFO] [stdout] | ^^^^^^^^^^^^ help: remove this [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#to_string_in_format_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `to_string` applied to a type that implements `Display` in `format!` args [INFO] [stdout] --> src/commands/shell.rs:123:61 [INFO] [stdout] | [INFO] [stdout] 123 | cli.debug(format!("bootstrap error: {}", err.to_string())); [INFO] [stdout] | ^^^^^^^^^^^^ help: remove this [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#to_string_in_format_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `to_string` applied to a type that implements `Display` in `format!` args [INFO] [stdout] --> src/commands/shell.rs:157:57 [INFO] [stdout] | [INFO] [stdout] 157 | cli.debug(format!("shell error: {}", err.to_string())); [INFO] [stdout] | ^^^^^^^^^^^^ help: remove this [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#to_string_in_format_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/commands/shell.rs:359:55 [INFO] [stdout] | [INFO] [stdout] 359 | let image: DockerImage = DockerImage::new(&docker)?; [INFO] [stdout] | ^^^^^^^ help: change this to: `docker` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/commands/shell.rs:389:55 [INFO] [stdout] | [INFO] [stdout] 389 | let image: DockerImage = DockerImage::new(&docker)?; [INFO] [stdout] | ^^^^^^^ help: change this to: `docker` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/commands/shell.rs:408:55 [INFO] [stdout] | [INFO] [stdout] 408 | let image: DockerImage = DockerImage::new(&docker)?; [INFO] [stdout] | ^^^^^^^ help: change this to: `docker` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/commands/sync.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 26 | return String::from("default"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 26 - return String::from("default"); [INFO] [stdout] 26 + String::from("default") [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/commands/sync.rs:63:22 [INFO] [stdout] | [INFO] [stdout] 63 | if branch != String::from("NA") { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: try: `"NA"` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/commands/upload.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 27 | return String::from("default"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 27 - return String::from("default"); [INFO] [stdout] 27 + String::from("default") [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/commands/mod.rs:44:9 [INFO] [stdout] | [INFO] [stdout] 44 | return docker.pull(cli); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 44 - return docker.pull(cli); [INFO] [stdout] 44 + docker.pull(cli) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/commands/mod.rs:67:9 [INFO] [stdout] | [INFO] [stdout] 67 | / return docker.bootstrap_bakery( [INFO] [stdout] 68 | | cmd_line, [INFO] [stdout] 69 | | cli, [INFO] [stdout] 70 | | &workspace.settings().docker_top_dir(), [INFO] [stdout] ... | [INFO] [stdout] 74 | | &env, [INFO] [stdout] 75 | | ); [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 67 ~ docker.bootstrap_bakery( [INFO] [stdout] 68 + cmd_line, [INFO] [stdout] 69 + cli, [INFO] [stdout] 70 + &workspace.settings().docker_top_dir(), [INFO] [stdout] 71 + &workspace.settings().work_dir(), [INFO] [stdout] 72 + workspace.settings().docker_args(), [INFO] [stdout] 73 + volumes, [INFO] [stdout] 74 + &env, [INFO] [stdout] 75 ~ ) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/commands/mod.rs:90:9 [INFO] [stdout] | [INFO] [stdout] 90 | return Err(BError::CliError(format!("Failed to read arg {}", id))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 90 - return Err(BError::CliError(format!("Failed to read arg {}", id))); [INFO] [stdout] 90 + Err(BError::CliError(format!("Failed to read arg {}", id))) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/commands/mod.rs:101:9 [INFO] [stdout] | [INFO] [stdout] 101 | return Err(BError::CliError(format!("Failed to read arg {}", id))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 101 - return Err(BError::CliError(format!("Failed to read arg {}", id))); [INFO] [stdout] 101 + Err(BError::CliError(format!("Failed to read arg {}", id))) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/commands/mod.rs:111:9 [INFO] [stdout] | [INFO] [stdout] 111 | return Err(BError::CliError(format!("Failed to read arg {}", id))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 111 - return Err(BError::CliError(format!("Failed to read arg {}", id))); [INFO] [stdout] 111 + Err(BError::CliError(format!("Failed to read arg {}", id))) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/commands/mod.rs:133:9 [INFO] [stdout] | [INFO] [stdout] 133 | return Err(BError::CliError(format!("Failed to read arg {}", id))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 133 - return Err(BError::CliError(format!("Failed to read arg {}", id))); [INFO] [stdout] 133 + Err(BError::CliError(format!("Failed to read arg {}", id))) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `to_string` applied to a type that implements `Display` in `format!` args [INFO] [stdout] --> src/configs/context.rs:73:54 [INFO] [stdout] | [INFO] [stdout] 73 | return format!("$#[_EMPTY_{}_]", replaced.to_string()); [INFO] [stdout] | ^^^^^^^^^^^^ help: remove this [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#to_string_in_format_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/configs/context.rs:127:34 [INFO] [stdout] | [INFO] [stdout] 127 | pub fn expand_path(&self, p: &PathBuf) -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 127 - pub fn expand_path(&self, p: &PathBuf) -> Result { [INFO] [stdout] 127 + pub fn expand_path(&self, p: &Path) -> Result { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/configs/handler.rs:29:26 [INFO] [stdout] | [INFO] [stdout] 29 | pub fn new(work_dir: &PathBuf, home_dir: &PathBuf) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 29 ~ pub fn new(work_dir: &Path, home_dir: &PathBuf) -> Self { [INFO] [stdout] 30 | let bkry_home_cfg_dir: PathBuf = home_dir.clone().join(".bakery"); [INFO] [stdout] 31 | let bkry_cfg_dir: PathBuf = PathBuf::from(BkryConstants::CFG_DIR); [INFO] [stdout] 32 | WsConfigFileHandler { [INFO] [stdout] 33 ~ work_dir: work_dir.to_path_buf(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/configs/handler.rs:29:46 [INFO] [stdout] | [INFO] [stdout] 29 | pub fn new(work_dir: &PathBuf, home_dir: &PathBuf) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 29 ~ pub fn new(work_dir: &PathBuf, home_dir: &Path) -> Self { [INFO] [stdout] 30 ~ let bkry_home_cfg_dir: PathBuf = home_dir.to_path_buf().join(".bakery"); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/configs/handler.rs:64:9 [INFO] [stdout] | [INFO] [stdout] 64 | return WsSettingsHandler::from_str(&self.work_dir, default_settings, None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 64 - return WsSettingsHandler::from_str(&self.work_dir, default_settings, None); [INFO] [stdout] 64 + WsSettingsHandler::from_str(&self.work_dir, default_settings, None) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/configs/handler.rs:142:9 [INFO] [stdout] | [INFO] [stdout] 142 | return Ok(main_config); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 142 - return Ok(main_config); [INFO] [stdout] 142 + Ok(main_config) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/configs/handler.rs:111:63 [INFO] [stdout] | [INFO] [stdout] 111 | let build_config_json: String = ConfigFileReader::new(&path).read_json()?; [INFO] [stdout] | ^^^^^ help: change this to: `path` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/configs/handler.rs:180:9 [INFO] [stdout] | [INFO] [stdout] 180 | / return Err(BError::ValueError(format!( [INFO] [stdout] 181 | | "No such build config: '{}' does not exist!", [INFO] [stdout] 182 | | build_config.clone().display() [INFO] [stdout] 183 | | ))); [INFO] [stdout] | |___________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 180 ~ Err(BError::ValueError(format!( [INFO] [stdout] 181 + "No such build config: '{}' does not exist!", [INFO] [stdout] 182 + build_config.clone().display() [INFO] [stdout] 183 ~ ))) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/configs/handler.rs:169:50 [INFO] [stdout] | [INFO] [stdout] 169 | if build_config.display().to_string() == "NA.json".to_string() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `"NA.json"` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/configs/handler.rs:177:51 [INFO] [stdout] | [INFO] [stdout] 177 | return WsBuildConfigHandler::from_str(&dummy_config_json, settings); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: change this to: `dummy_config_json` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/configs/settings.rs:51:9 [INFO] [stdout] | [INFO] [stdout] 51 | let supported: Vec; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] help: move the declaration `supported` here and remove the assignments from the `match` arms [INFO] [stdout] | [INFO] [stdout] 51 ~ [INFO] [stdout] 52 | let mut docker_image: String = String::from(BkryConstants::DOCKER_IMAGE); [INFO] [stdout] ... [INFO] [stdout] 83 | [INFO] [stdout] 84 ~ let supported: Vec = match Self::get_value("builds", &data) { [INFO] [stdout] 85 | Ok(build_data) => { [INFO] [stdout] 86 ~ Self::get_array_value("supported", build_data, Some(vec![]))? [INFO] [stdout] 87 | } [INFO] [stdout] 88 | Err(_err) => { [INFO] [stdout] 89 ~ vec![] [INFO] [stdout] 90 | } [INFO] [stdout] 91 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/configs/mod.rs:23:17 [INFO] [stdout] | [INFO] [stdout] 23 | / return Err(BError::ParseError(format!( [INFO] [stdout] 24 | | "Failed to parse manifest. Error when reading object '{}'", [INFO] [stdout] 25 | | name [INFO] [stdout] 26 | | ))); [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 23 ~ Err(BError::ParseError(format!( [INFO] [stdout] 24 + "Failed to parse manifest. Error when reading object '{}'", [INFO] [stdout] 25 + name [INFO] [stdout] 26 ~ ))) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/configs/mod.rs:42:17 [INFO] [stdout] | [INFO] [stdout] 42 | return Ok(value.to_string()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 42 - return Ok(value.to_string()); [INFO] [stdout] 42 + Ok(value.to_string()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/configs/mod.rs:82:21 [INFO] [stdout] | [INFO] [stdout] 82 | / return Ok(array_value [INFO] [stdout] 83 | | .as_array() [INFO] [stdout] 84 | | .unwrap() [INFO] [stdout] 85 | | .iter() [INFO] [stdout] 86 | | .filter_map(|v| v.as_str()) [INFO] [stdout] 87 | | .map(|s| s.to_owned()) [INFO] [stdout] 88 | | .collect()); [INFO] [stdout] | |___________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 82 ~ Ok(array_value [INFO] [stdout] 83 + .as_array() [INFO] [stdout] 84 + .unwrap() [INFO] [stdout] 85 + .iter() [INFO] [stdout] 86 + .filter_map(|v| v.as_str()) [INFO] [stdout] 87 + .map(|s| s.to_owned()) [INFO] [stdout] 88 ~ .collect()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/configs/mod.rs:90:21 [INFO] [stdout] | [INFO] [stdout] 90 | / return Err(BError::ParseError(format!( [INFO] [stdout] 91 | | "Failed to read array '{}'", [INFO] [stdout] 92 | | name [INFO] [stdout] 93 | | ))); [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 90 ~ Err(BError::ParseError(format!( [INFO] [stdout] 91 + "Failed to read array '{}'", [INFO] [stdout] 92 + name [INFO] [stdout] 93 ~ ))) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/configs/mod.rs:126:21 [INFO] [stdout] | [INFO] [stdout] 126 | / return Err(BError::ParseError(format!( [INFO] [stdout] 127 | | "Failed to parse hashmap. Error when reading object '{}'", [INFO] [stdout] 128 | | name [INFO] [stdout] 129 | | ))); [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 126 ~ Err(BError::ParseError(format!( [INFO] [stdout] 127 + "Failed to parse hashmap. Error when reading object '{}'", [INFO] [stdout] 128 + name [INFO] [stdout] 129 ~ ))) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/configs/mod.rs:133:17 [INFO] [stdout] | [INFO] [stdout] 133 | return Ok(IndexMap::new()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 133 - return Ok(IndexMap::new()); [INFO] [stdout] 133 + Ok(IndexMap::new()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/artifact.rs:41:57 [INFO] [stdout] | [INFO] [stdout] 41 | let ttype: String = Self::get_str_value("type", &data, Some(String::from("file")))?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/artifact.rs:42:56 [INFO] [stdout] | [INFO] [stdout] 42 | let name: String = Self::get_str_value("name", &data, Some(String::from("")))?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/artifact.rs:43:60 [INFO] [stdout] | [INFO] [stdout] 43 | let source: String = Self::get_str_value("source", &data, Some(String::from("")))?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/artifact.rs:44:56 [INFO] [stdout] | [INFO] [stdout] 44 | let dest: String = Self::get_str_value("dest", &data, Some(String::from("")))?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/artifact.rs:45:66 [INFO] [stdout] | [INFO] [stdout] 45 | let manifest: String = Self::get_str_manifest("content", &data, Some(String::from("{}")))?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/artifact.rs:46:66 [INFO] [stdout] | [INFO] [stdout] 46 | let condition: String = Self::get_str_value("condition", &data, Some(String::from("")))?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/data/artifact.rs:61:52 [INFO] [stdout] | [INFO] [stdout] 61 | return Err(BError::ParseArtifactsError(format!( [INFO] [stdout] | ____________________________________________________^ [INFO] [stdout] 62 | | "The 'file' type requires a 'source'" [INFO] [stdout] 63 | | ))); [INFO] [stdout] | |_____________^ help: consider using `.to_string()`: `"The 'file' type requires a 'source'".to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/data/artifact.rs:66:52 [INFO] [stdout] | [INFO] [stdout] 66 | return Err(BError::ParseArtifactsError(format!( [INFO] [stdout] | ____________________________________________________^ [INFO] [stdout] 67 | | "The 'directory' type requires a 'name'" [INFO] [stdout] 68 | | ))); [INFO] [stdout] | |_____________^ help: consider using `.to_string()`: `"The 'directory' type requires a 'name'".to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/data/artifact.rs:71:52 [INFO] [stdout] | [INFO] [stdout] 71 | return Err(BError::ParseArtifactsError(format!( [INFO] [stdout] | ____________________________________________________^ [INFO] [stdout] 72 | | "The 'archive' type requires a 'name'" [INFO] [stdout] 73 | | ))); [INFO] [stdout] | |_____________^ help: consider using `.to_string()`: `"The 'archive' type requires a 'name'".to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/data/artifact.rs:76:52 [INFO] [stdout] | [INFO] [stdout] 76 | return Err(BError::ParseArtifactsError(format!( [INFO] [stdout] | ____________________________________________________^ [INFO] [stdout] 77 | | "The 'manifest' type requires a 'name'" [INFO] [stdout] 78 | | ))); [INFO] [stdout] | |_____________^ help: consider using `.to_string()`: `"The 'manifest' type requires a 'name'".to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/data/artifact.rs:81:52 [INFO] [stdout] | [INFO] [stdout] 81 | return Err(BError::ParseArtifactsError(format!( [INFO] [stdout] | ____________________________________________________^ [INFO] [stdout] 82 | | "The 'link' type requires a 'name' and 'source'" [INFO] [stdout] 83 | | ))); [INFO] [stdout] | |_____________^ help: consider using `.to_string()`: `"The 'link' type requires a 'name' and 'source'".to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/data/artifact.rs:86:52 [INFO] [stdout] | [INFO] [stdout] 86 | return Err(BError::ParseArtifactsError(format!( [INFO] [stdout] | ____________________________________________________^ [INFO] [stdout] 87 | | "The 'conditional' type requires a 'condition'" [INFO] [stdout] 88 | | ))); [INFO] [stdout] | |_____________^ help: consider using `.to_string()`: `"The 'conditional' type requires a 'condition'".to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/data/artifact.rs:91:9 [INFO] [stdout] | [INFO] [stdout] 91 | let enum_ttype: AType; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] help: move the declaration `enum_ttype` here and remove the assignments from the `match` arms [INFO] [stdout] | [INFO] [stdout] 91 ~ [INFO] [stdout] 92 ~ let enum_ttype: AType = match ttype.as_str() { [INFO] [stdout] 93 | "file" => { [INFO] [stdout] 94 ~ AType::File [INFO] [stdout] 95 | } [INFO] [stdout] 96 | "directory" => { [INFO] [stdout] 97 ~ AType::Directory [INFO] [stdout] 98 | } [INFO] [stdout] 99 | "archive" => { [INFO] [stdout] 100 ~ AType::Archive [INFO] [stdout] 101 | } [INFO] [stdout] 102 | "manifest" => { [INFO] [stdout] 103 ~ AType::Manifest [INFO] [stdout] 104 | } [INFO] [stdout] 105 | "link" => { [INFO] [stdout] 106 ~ AType::Link [INFO] [stdout] 107 | } [INFO] [stdout] 108 | "conditional" => { [INFO] [stdout] 109 ~ AType::Conditional [INFO] [stdout] 110 | } [INFO] [stdout] ... [INFO] [stdout] 116 | } [INFO] [stdout] 117 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data/artifact.rs:188:83 [INFO] [stdout] | [INFO] [stdout] 188 | "1" | "yes" | "y" | "Y" | "true" | "YES" | "TRUE" | "True" | "Yes" => return true, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 188 - "1" | "yes" | "y" | "Y" | "true" | "YES" | "TRUE" | "True" | "Yes" => return true, [INFO] [stdout] 188 + "1" | "yes" | "y" | "Y" | "true" | "YES" | "TRUE" | "True" | "Yes" => true, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> src/data/bitbake.rs:33:9 [INFO] [stdout] | [INFO] [stdout] 33 | / match data.get("bb") { [INFO] [stdout] 34 | | Some(value) => { [INFO] [stdout] 35 | | bb_data = value; [INFO] [stdout] ... | [INFO] [stdout] 38 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] = note: `#[warn(clippy::single_match)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 33 ~ if let Some(value) = data.get("bb") { [INFO] [stdout] 34 + bb_data = value; [INFO] [stdout] 35 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/data/bitbake.rs:77:52 [INFO] [stdout] | [INFO] [stdout] 77 | pub fn expand_conf(&self, ctx: &Context, conf: &Vec) -> Result, BError> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 77 ~ pub fn expand_conf(&self, ctx: &Context, conf: &[String]) -> Result, BError> { [INFO] [stdout] 78 | let mut config: Vec = Vec::new(); [INFO] [stdout] 79 ~ for line in conf.to_owned() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implementation of inherent method `to_string(&self) -> String` for type `data::bitbake::WsBitbakeData` [INFO] [stdout] --> src/data/bitbake.rs:126:5 [INFO] [stdout] | [INFO] [stdout] 126 | / pub fn to_string(&self) -> String { [INFO] [stdout] 127 | | let bb_str: String = format!("\"bb\": {}", self.data.to_string()); [INFO] [stdout] 128 | | bb_str.clone() [INFO] [stdout] 129 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: implement trait `Display` for type `data::bitbake::WsBitbakeData` instead [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#inherent_to_string [INFO] [stdout] = note: `#[warn(clippy::inherent_to_string)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `to_string` applied to a type that implements `Display` in `format!` args [INFO] [stdout] --> src/data/bitbake.rs:127:61 [INFO] [stdout] | [INFO] [stdout] 127 | let bb_str: String = format!("\"bb\": {}", self.data.to_string()); [INFO] [stdout] | ^^^^^^^^^^^^ help: remove this [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#to_string_in_format_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary use of `to_string` [INFO] [stdout] --> src/data/bitbake.rs:151:31 [INFO] [stdout] | [INFO] [stdout] 151 | self.build_dir().join("conf".to_string()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: use: `"conf"` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_to_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary use of `to_string` [INFO] [stdout] --> src/data/bitbake.rs:155:38 [INFO] [stdout] | [INFO] [stdout] 155 | self.build_config_dir().join("local.conf".to_string()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `"local.conf"` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_to_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary use of `to_string` [INFO] [stdout] --> src/data/bitbake.rs:172:19 [INFO] [stdout] | [INFO] [stdout] 172 | .join("sstate-cache".to_string()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `"sstate-cache"` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_to_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary use of `to_string` [INFO] [stdout] --> src/data/bitbake.rs:179:19 [INFO] [stdout] | [INFO] [stdout] 179 | .join("download".to_string()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: use: `"download"` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_to_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/config.rs:21:62 [INFO] [stdout] | [INFO] [stdout] 21 | let version: String = Self::get_str_value("version", &data, None)?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/config.rs:24:56 [INFO] [stdout] | [INFO] [stdout] 24 | let name: String = Self::get_str_value("name", &data, Some(String::from("NA")))?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data/context.rs:73:17 [INFO] [stdout] | [INFO] [stdout] 73 | / return var [INFO] [stdout] 74 | | .into_string() [INFO] [stdout] 75 | | .or::(Ok(String::from(""))) [INFO] [stdout] 76 | | .unwrap(); [INFO] [stdout] | |_____________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 73 ~ var [INFO] [stdout] 74 + .into_string() [INFO] [stdout] 75 + .or::(Ok(String::from(""))) [INFO] [stdout] 76 ~ .unwrap() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data/context.rs:79:17 [INFO] [stdout] | [INFO] [stdout] 79 | return String::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 79 - return String::new(); [INFO] [stdout] 79 + String::new() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: found `.or(Ok(…)).unwrap()` [INFO] [stdout] --> src/data/context.rs:75:22 [INFO] [stdout] | [INFO] [stdout] 75 | .or::(Ok(String::from(""))) [INFO] [stdout] | ______________________^ [INFO] [stdout] 76 | | .unwrap(); [INFO] [stdout] | |_____________________________^ help: try: `unwrap_or(String::from(""))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_then_unwrap [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/context.rs:132:86 [INFO] [stdout] | [INFO] [stdout] 132 | let variables: IndexMap = Self::get_hashmap_value("context", &data)?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/context.rs:189:20 [INFO] [stdout] | [INFO] [stdout] 189 | ctx.update(&variables); [INFO] [stdout] | ^^^^^^^^^^ help: change this to: `variables` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/data/context.rs:211:13 [INFO] [stdout] | [INFO] [stdout] 211 | / if !value.is_empty() { [INFO] [stdout] 212 | | if value.to_lowercase() != "na" || self.context.value(key).is_empty() { [INFO] [stdout] 213 | | //println!("Update: {}={}", key, value); [INFO] [stdout] 214 | | v.insert(key.to_owned(), value.to_owned()); [INFO] [stdout] 215 | | } [INFO] [stdout] 216 | | } [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] = note: `#[warn(clippy::collapsible_if)]` on by default [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 211 ~ if !value.is_empty() [INFO] [stdout] 212 ~ && (value.to_lowercase() != "na" || self.context.value(key).is_empty()) { [INFO] [stdout] 213 | //println!("Update: {}={}", key, value); [INFO] [stdout] 214 | v.insert(key.to_owned(), value.to_owned()); [INFO] [stdout] 215 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> src/data/customsubcmd.rs:23:9 [INFO] [stdout] | [INFO] [stdout] 23 | / match task_data.get(name) { [INFO] [stdout] 24 | | Some(value) => { [INFO] [stdout] 25 | | task_data = value; [INFO] [stdout] ... | [INFO] [stdout] 28 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 23 ~ if let Some(value) = task_data.get(name) { [INFO] [stdout] 24 + task_data = value; [INFO] [stdout] 25 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module has the same name as its containing module [INFO] [stdout] --> src/data/mod.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | pub mod data; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/data.rs:27:34 [INFO] [stdout] | [INFO] [stdout] 27 | WsTaskHandler::new(data, &self) [INFO] [stdout] | ^^^^^ help: change this to: `self` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/data.rs:35:55 [INFO] [stdout] | [INFO] [stdout] 35 | WsArtifactsHandler::new(data, task_build_dir, &self) [INFO] [stdout] | ^^^^^ help: change this to: `self` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::path::PathBuf` [INFO] [stdout] --> src/data/data.rs:94:19 [INFO] [stdout] | [INFO] [stdout] 94 | .join(PathBuf::from(bitbake.deploy_dir().clone())); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `PathBuf::from()`: `bitbake.deploy_dir().clone()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data/data.rs:129:21 [INFO] [stdout] | [INFO] [stdout] 129 | / return Err(BError::ParseArtifactsError( [INFO] [stdout] 130 | | "Invalid 'artifacts' node in build config".to_string(), [INFO] [stdout] 131 | | )); [INFO] [stdout] | |______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 129 ~ Err(BError::ParseArtifactsError( [INFO] [stdout] 130 + "Invalid 'artifacts' node in build config".to_string(), [INFO] [stdout] 131 ~ )) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data/data.rs:133:21 [INFO] [stdout] | [INFO] [stdout] 133 | / return Err(BError::ParseArtifactsError( [INFO] [stdout] 134 | | "No 'artifacts' array node found in build config".to_string(), [INFO] [stdout] 135 | | )); [INFO] [stdout] | |______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 133 ~ Err(BError::ParseArtifactsError( [INFO] [stdout] 134 + "No 'artifacts' array node found in build config".to_string(), [INFO] [stdout] 135 ~ )) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data/data.rs:139:17 [INFO] [stdout] | [INFO] [stdout] 139 | return Ok(Vec::new()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 139 - return Ok(Vec::new()); [INFO] [stdout] 139 + Ok(Vec::new()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data/data.rs:177:21 [INFO] [stdout] | [INFO] [stdout] 177 | / return Err(BError::ParseTasksError( [INFO] [stdout] 178 | | "Invalid 'task' format in build config".to_string(), [INFO] [stdout] 179 | | )); [INFO] [stdout] | |______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 177 ~ Err(BError::ParseTasksError( [INFO] [stdout] 178 + "Invalid 'task' format in build config".to_string(), [INFO] [stdout] 179 ~ )) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data/data.rs:181:21 [INFO] [stdout] | [INFO] [stdout] 181 | / return Err(BError::ParseTasksError( [INFO] [stdout] 182 | | "No 'tasks' node found in build config".to_string(), [INFO] [stdout] 183 | | )); [INFO] [stdout] | |______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 181 ~ Err(BError::ParseTasksError( [INFO] [stdout] 182 + "No 'tasks' node found in build config".to_string(), [INFO] [stdout] 183 ~ )) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data/data.rs:187:17 [INFO] [stdout] | [INFO] [stdout] 187 | return Ok(IndexMap::new()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 187 - return Ok(IndexMap::new()); [INFO] [stdout] 187 + Ok(IndexMap::new()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data/data.rs:220:9 [INFO] [stdout] | [INFO] [stdout] 220 | / return self.config.version() != "NA" [INFO] [stdout] 221 | | && self.product().name() != "NA" [INFO] [stdout] 222 | | && self.product().description() != "NA"; [INFO] [stdout] | |___________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 220 ~ self.config.version() != "NA" [INFO] [stdout] 221 + && self.product().name() != "NA" [INFO] [stdout] 222 ~ && self.product().description() != "NA" [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/product.rs:25:56 [INFO] [stdout] | [INFO] [stdout] 25 | let name: String = Self::get_str_value("name", &data, Some(String::from("NA")))?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/product.rs:26:62 [INFO] [stdout] | [INFO] [stdout] 26 | let project: String = Self::get_str_value("project", &data, Some(name.clone()))?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/product.rs:27:62 [INFO] [stdout] | [INFO] [stdout] 27 | let product: String = Self::get_str_value("product", &data, Some(name.clone()))?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/product.rs:29:48 [INFO] [stdout] | [INFO] [stdout] 29 | Self::get_str_value("description", &data, Some(String::from("NA")))?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/product.rs:30:56 [INFO] [stdout] | [INFO] [stdout] 30 | let arch: String = Self::get_str_value("arch", &data, Some(String::from("NA")))?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implementation of inherent method `to_string(&self) -> String` for type `data::product::WsProductData` [INFO] [stdout] --> src/data/product.rs:61:5 [INFO] [stdout] | [INFO] [stdout] 61 | / pub fn to_string(&self) -> String { [INFO] [stdout] 62 | | let product_str: String = format!( [INFO] [stdout] 63 | | "\"name\": \"{}\",\"arch\": \"{}\", \"description\": \"{}\"", [INFO] [stdout] 64 | | self.name, self.arch, self.description [INFO] [stdout] 65 | | ); [INFO] [stdout] 66 | | product_str.clone() [INFO] [stdout] 67 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: implement trait `Display` for type `data::product::WsProductData` instead [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#inherent_to_string [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/data/task.rs:37:23 [INFO] [stdout] | [INFO] [stdout] 37 | bb_build_dir: &PathBuf, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 37 ~ bb_build_dir: &Path, [INFO] [stdout] 38 | work_dir: &PathBuf, [INFO] [stdout] ... [INFO] [stdout] 41 | if task_build_dir.is_empty() { [INFO] [stdout] 42 ~ return bb_build_dir.to_path_buf(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/data/task.rs:38:19 [INFO] [stdout] | [INFO] [stdout] 38 | work_dir: &PathBuf, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 38 - work_dir: &PathBuf, [INFO] [stdout] 38 + work_dir: &Path, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/data/task.rs:40:9 [INFO] [stdout] | [INFO] [stdout] 40 | / if ttype == TType::Bitbake { [INFO] [stdout] 41 | | if task_build_dir.is_empty() { [INFO] [stdout] 42 | | return bb_build_dir.clone(); [INFO] [stdout] 43 | | } [INFO] [stdout] 44 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 40 ~ if ttype == TType::Bitbake [INFO] [stdout] 41 ~ && task_build_dir.is_empty() { [INFO] [stdout] 42 | return bb_build_dir.clone(); [INFO] [stdout] 43 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/task.rs:63:55 [INFO] [stdout] | [INFO] [stdout] 63 | let index: u32 = Self::get_u32_value("index", &data, None)?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/task.rs:64:56 [INFO] [stdout] | [INFO] [stdout] 64 | let name: String = Self::get_str_value("name", &data, None)?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/task.rs:65:57 [INFO] [stdout] | [INFO] [stdout] 65 | let ttype: String = Self::get_str_value("type", &data, Some(String::from("bitbake")))?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/task.rs:66:64 [INFO] [stdout] | [INFO] [stdout] 66 | let disabled: String = Self::get_str_value("disabled", &data, Some(String::from("false")))?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/task.rs:67:65 [INFO] [stdout] | [INFO] [stdout] 67 | let build_dir: String = Self::get_str_value("builddir", &data, Some(String::from("")))?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/task.rs:70:58 [INFO] [stdout] | [INFO] [stdout] 70 | let build: String = Self::get_str_value("build", &data, Some(String::from("")))?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/task.rs:71:58 [INFO] [stdout] | [INFO] [stdout] 71 | let clean: String = Self::get_str_value("clean", &data, Some(String::from("")))?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/task.rs:73:48 [INFO] [stdout] | [INFO] [stdout] 73 | Self::get_str_value("description", &data, Some(String::from("NA")))?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/task.rs:74:76 [INFO] [stdout] | [INFO] [stdout] 74 | let env: IndexMap = Self::get_hashmap_value("env", &data)?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/task.rs:75:69 [INFO] [stdout] | [INFO] [stdout] 75 | let recipes: Vec = Self::get_array_value("recipes", &data, Some(vec![]))?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/data/task.rs:77:9 [INFO] [stdout] | [INFO] [stdout] 77 | let enum_ttype: TType; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] help: move the declaration `enum_ttype` here and remove the assignments from the `match` arms [INFO] [stdout] | [INFO] [stdout] 77 ~ [INFO] [stdout] 78 ~ let enum_ttype: TType = match ttype.as_str() { [INFO] [stdout] 79 | "bitbake" => { [INFO] [stdout] 80 ~ TType::Bitbake [INFO] [stdout] 81 | } [INFO] [stdout] 82 | "non-bitbake" => { [INFO] [stdout] 83 ~ TType::NonBitbake [INFO] [stdout] 84 | } [INFO] [stdout] ... [INFO] [stdout] 87 | } [INFO] [stdout] 88 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/data/task.rs:95:48 [INFO] [stdout] | [INFO] [stdout] 95 | return Err(BError::ParseTasksError(format!( [INFO] [stdout] | ________________________________________________^ [INFO] [stdout] 96 | | "The 'bitbake' type requires at least one entry in 'recipes'" [INFO] [stdout] 97 | | ))); [INFO] [stdout] | |_____________^ help: consider using `.to_string()`: `"The 'bitbake' type requires at least one entry in 'recipes'".to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data/task.rs:153:9 [INFO] [stdout] | [INFO] [stdout] 153 | return false; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 153 - return false; [INFO] [stdout] 153 + false [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data/task.rs:168:83 [INFO] [stdout] | [INFO] [stdout] 168 | "1" | "yes" | "y" | "Y" | "true" | "YES" | "TRUE" | "True" | "Yes" => return true, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 168 - "1" | "yes" | "y" | "Y" | "true" | "YES" | "TRUE" | "True" | "Yes" => return true, [INFO] [stdout] 168 + "1" | "yes" | "y" | "Y" | "true" | "YES" | "TRUE" | "True" | "Yes" => true, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data/task.rs:169:18 [INFO] [stdout] | [INFO] [stdout] 169 | _ => return false, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 169 - _ => return false, [INFO] [stdout] 169 + _ => false, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the method `run_cmd` doesn't need a mutable reference [INFO] [stdout] --> src/executers/bitbake.rs:113:32 [INFO] [stdout] | [INFO] [stdout] 113 | docker.run_cmd(&mut cmd_line, &env, &exec_dir, &self.cli)?; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] = note: `#[warn(clippy::unnecessary_mut_passed)]` on by default [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 113 - docker.run_cmd(&mut cmd_line, &env, &exec_dir, &self.cli)?; [INFO] [stdout] 113 + docker.run_cmd(&cmd_line, &env, &exec_dir, &self.cli)?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/executers/bitbake.rs:113:64 [INFO] [stdout] | [INFO] [stdout] 113 | docker.run_cmd(&mut cmd_line, &env, &exec_dir, &self.cli)?; [INFO] [stdout] | ^^^^^^^^^ help: change this to: `self.cli` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the method `run_cmd` doesn't need a mutable reference [INFO] [stdout] --> src/executers/bitbake.rs:156:32 [INFO] [stdout] | [INFO] [stdout] 156 | docker.run_cmd(&mut cmd_line, &env, &exec_dir, &self.cli)?; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 156 - docker.run_cmd(&mut cmd_line, &env, &exec_dir, &self.cli)?; [INFO] [stdout] 156 + docker.run_cmd(&cmd_line, &env, &exec_dir, &self.cli)?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/executers/bitbake.rs:156:64 [INFO] [stdout] | [INFO] [stdout] 156 | docker.run_cmd(&mut cmd_line, &env, &exec_dir, &self.cli)?; [INFO] [stdout] | ^^^^^^^^^ help: change this to: `self.cli` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `push_str()` using a single-character string literal [INFO] [stdout] --> src/executers/docker.rs:55:13 [INFO] [stdout] | [INFO] [stdout] 55 | image.push_str("/"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: consider using `push` with a character literal: `image.push('/')` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_add_str [INFO] [stdout] = note: `#[warn(clippy::single_char_add_str)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/executers/docker.rs:74:17 [INFO] [stdout] | [INFO] [stdout] 74 | / return var [INFO] [stdout] 75 | | .into_string() [INFO] [stdout] 76 | | .or::(Ok(String::from(""))) [INFO] [stdout] 77 | | .unwrap(); [INFO] [stdout] | |_____________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 74 ~ var [INFO] [stdout] 75 + .into_string() [INFO] [stdout] 76 + .or::(Ok(String::from(""))) [INFO] [stdout] 77 ~ .unwrap() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/executers/docker.rs:80:17 [INFO] [stdout] | [INFO] [stdout] 80 | return String::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 80 - return String::new(); [INFO] [stdout] 80 + String::new() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: found `.or(Ok(…)).unwrap()` [INFO] [stdout] --> src/executers/docker.rs:76:22 [INFO] [stdout] | [INFO] [stdout] 76 | .or::(Ok(String::from(""))) [INFO] [stdout] | ______________________^ [INFO] [stdout] 77 | | .unwrap(); [INFO] [stdout] | |_____________________________^ help: try: `unwrap_or(String::from(""))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_then_unwrap [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::string::String` [INFO] [stdout] --> src/executers/docker.rs:104:13 [INFO] [stdout] | [INFO] [stdout] 104 | String::from(format!("{}:{}:ro", BkryConstants::BIN, BkryConstants::BIN)), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `String::from()`: `format!("{}:{}:ro", BkryConstants::BIN, BkryConstants::BIN)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::string::String` [INFO] [stdout] --> src/executers/docker.rs:106:13 [INFO] [stdout] | [INFO] [stdout] 106 | / String::from(format!( [INFO] [stdout] 107 | | "{}:{}:ro", [INFO] [stdout] 108 | | BkryConstants::CFG_DIR, [INFO] [stdout] 109 | | BkryConstants::CFG_DIR [INFO] [stdout] 110 | | )), [INFO] [stdout] | |______________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] help: consider removing `String::from()` [INFO] [stdout] | [INFO] [stdout] 106 ~ format!( [INFO] [stdout] 107 + "{}:{}:ro", [INFO] [stdout] 108 + BkryConstants::CFG_DIR, [INFO] [stdout] 109 + BkryConstants::CFG_DIR [INFO] [stdout] 110 ~ ), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::string::String` [INFO] [stdout] --> src/executers/docker.rs:112:13 [INFO] [stdout] | [INFO] [stdout] 112 | / String::from(format!( [INFO] [stdout] 113 | | "{}:{}:ro", [INFO] [stdout] 114 | | BkryConstants::OPT_DIR, [INFO] [stdout] 115 | | BkryConstants::OPT_DIR [INFO] [stdout] 116 | | )), [INFO] [stdout] | |______________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] help: consider removing `String::from()` [INFO] [stdout] | [INFO] [stdout] 112 ~ format!( [INFO] [stdout] 113 + "{}:{}:ro", [INFO] [stdout] 114 + BkryConstants::OPT_DIR, [INFO] [stdout] 115 + BkryConstants::OPT_DIR [INFO] [stdout] 116 ~ ), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/executers/docker.rs:144:29 [INFO] [stdout] | [INFO] [stdout] 144 | fn work_dir(&self, dir: &PathBuf) -> Vec { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 144 - fn work_dir(&self, dir: &PathBuf) -> Vec { [INFO] [stdout] 144 + fn work_dir(&self, dir: &Path) -> Vec { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/executers/docker.rs:163:34 [INFO] [stdout] | [INFO] [stdout] 163 | fn env_file(&self, env_file: &PathBuf) -> Vec { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 163 - fn env_file(&self, env_file: &PathBuf) -> Vec { [INFO] [stdout] 163 + fn env_file(&self, env_file: &Path) -> Vec { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/executers/docker.rs:170:32 [INFO] [stdout] | [INFO] [stdout] 170 | fn volumes(&self, volumes: &Vec) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 170 - fn volumes(&self, volumes: &Vec) -> Vec { [INFO] [stdout] 170 + fn volumes(&self, volumes: &[String]) -> Vec { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/executers/docker.rs:188:28 [INFO] [stdout] | [INFO] [stdout] 188 | fn top_dir(&self, dir: &PathBuf) -> Vec { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 188 - fn top_dir(&self, dir: &PathBuf) -> Vec { [INFO] [stdout] 188 + fn top_dir(&self, dir: &Path) -> Vec { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/executers/docker.rs:215:19 [INFO] [stdout] | [INFO] [stdout] 215 | cmd_line: &Vec, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 215 ~ cmd_line: &[String], [INFO] [stdout] 216 | docker_top_dir: &PathBuf, [INFO] [stdout] ... [INFO] [stdout] 235 | docker_cmd.push(format!("{}", self.image)); [INFO] [stdout] 236 ~ docker_cmd.append(&mut cmd_line.to_owned()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/executers/docker.rs:218:22 [INFO] [stdout] | [INFO] [stdout] 218 | docker_args: &Vec, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 218 ~ docker_args: &[String], [INFO] [stdout] 219 | volumes: &Vec, [INFO] [stdout] ... [INFO] [stdout] 232 | if !docker_args.is_empty() { [INFO] [stdout] 233 ~ docker_cmd.append(&mut docker_args.to_owned()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/executers/docker.rs:242:19 [INFO] [stdout] | [INFO] [stdout] 242 | cmd_line: &Vec, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 242 ~ cmd_line: &[String], [INFO] [stdout] 243 | env_file: &PathBuf, [INFO] [stdout] ... [INFO] [stdout] 257 | docker_cmd.push(format!("{}", self.image)); [INFO] [stdout] 258 ~ docker_cmd.append(&mut cmd_line.to_owned()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this function has too many arguments (8/7) [INFO] [stdout] --> src/executers/docker.rs:287:5 [INFO] [stdout] | [INFO] [stdout] 287 | / pub fn bootstrap_bakery( [INFO] [stdout] 288 | | &self, [INFO] [stdout] 289 | | cmd_line: &Vec, [INFO] [stdout] 290 | | cli: &Cli, [INFO] [stdout] ... | [INFO] [stdout] 295 | | env: &HashMap, [INFO] [stdout] 296 | | ) -> Result<(), BError> { [INFO] [stdout] | |___________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stdout] = note: `#[warn(clippy::too_many_arguments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/executers/docker.rs:303:13 [INFO] [stdout] | [INFO] [stdout] 303 | &env, [INFO] [stdout] | ^^^^ help: change this to: `env` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the method `run_cmd` doesn't need a mutable reference [INFO] [stdout] --> src/executers/nonbitbake.rs:43:17 [INFO] [stdout] | [INFO] [stdout] 43 | &mut cmd_line, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 43 - &mut cmd_line, [INFO] [stdout] 43 + &cmd_line, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/executers/nonbitbake.rs:46:17 [INFO] [stdout] | [INFO] [stdout] 46 | &self.cli, [INFO] [stdout] | ^^^^^^^^^ help: change this to: `self.cli` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the method `run_cmd` doesn't need a mutable reference [INFO] [stdout] --> src/executers/nonbitbake.rs:96:28 [INFO] [stdout] | [INFO] [stdout] 96 | docker.run_cmd(&mut cmd_line, env_variables, exec_dir, &self.cli)?; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 96 - docker.run_cmd(&mut cmd_line, env_variables, exec_dir, &self.cli)?; [INFO] [stdout] 96 + docker.run_cmd(&cmd_line, env_variables, exec_dir, &self.cli)?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/executers/nonbitbake.rs:96:68 [INFO] [stdout] | [INFO] [stdout] 96 | docker.run_cmd(&mut cmd_line, env_variables, exec_dir, &self.cli)?; [INFO] [stdout] | ^^^^^^^^^ help: change this to: `self.cli` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `r.get(0)` [INFO] [stdout] --> src/executers/recipe.rs:13:22 [INFO] [stdout] | [INFO] [stdout] 13 | recipe = r.get(0).unwrap().to_string(); [INFO] [stdout] | ^^^^^^^^ help: try: `r.first()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `r.get(0)` [INFO] [stdout] --> src/executers/recipe.rs:15:22 [INFO] [stdout] | [INFO] [stdout] 15 | recipe = r.get(0).unwrap().to_string(); [INFO] [stdout] | ^^^^^^^^ help: try: `r.first()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/fs/archiver.rs:22:22 [INFO] [stdout] | [INFO] [stdout] 22 | pub fn new(path: &PathBuf) -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 22 ~ pub fn new(path: &Path) -> Result { [INFO] [stdout] 23 | let archive_name = path.file_name().unwrap_or_default().to_string_lossy(); [INFO] [stdout] ... [INFO] [stdout] 85 | Ok(Archiver { [INFO] [stdout] 86 ~ path: path.to_path_buf(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` branch is empty [INFO] [stdout] --> src/fs/archiver.rs:128:13 [INFO] [stdout] | [INFO] [stdout] 128 | if mode == Mode::Append {} [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: you can remove it [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_ifs [INFO] [stdout] = note: `#[warn(clippy::needless_ifs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` branch is empty [INFO] [stdout] --> src/fs/archiver.rs:158:13 [INFO] [stdout] | [INFO] [stdout] 158 | if mode == Mode::Append {} [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: you can remove it [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_ifs [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `to_owned` call clones the `Cow<'_, str>` itself and does not cause its contents to become owned [INFO] [stdout] --> src/fs/archiver.rs:173:32 [INFO] [stdout] | [INFO] [stdout] 173 | zip.start_file(striped_path.to_string_lossy().to_owned(), options)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_to_owned [INFO] [stdout] = note: `#[warn(clippy::suspicious_to_owned)]` on by default [INFO] [stdout] help: depending on intent, either make the `Cow` an `Owned` variant [INFO] [stdout] | [INFO] [stdout] 173 | zip.start_file(striped_path.to_string_lossy().into_owned(), options)?; [INFO] [stdout] | ++ [INFO] [stdout] help: or clone the `Cow` itself [INFO] [stdout] | [INFO] [stdout] 173 - zip.start_file(striped_path.to_string_lossy().to_owned(), options)?; [INFO] [stdout] 173 + zip.start_file(striped_path.to_string_lossy().clone(), options)?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> src/fs/bitbake.rs:39:13 [INFO] [stdout] | [INFO] [stdout] 39 | / match self.build_conf_dir.parent() { [INFO] [stdout] 40 | | Some(parent) => { [INFO] [stdout] 41 | | return format!("{}{}/workspace \\\n\"\n", trimmed, parent.display()); [INFO] [stdout] ... | [INFO] [stdout] 44 | | } [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 39 ~ if let Some(parent) = self.build_conf_dir.parent() { [INFO] [stdout] 40 + return format!("{}{}/workspace \\\n\"\n", trimmed, parent.display()); [INFO] [stdout] 41 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `push_str()` using a single-character string literal [INFO] [stdout] --> src/fs/bitbake.rs:85:9 [INFO] [stdout] | [INFO] [stdout] 85 | cleaned.push_str("\n"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: consider using `push` with a character literal: `cleaned.push('\n')` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_add_str [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> src/fs/bitbake.rs:121:9 [INFO] [stdout] | [INFO] [stdout] 121 | / match bb_variables { [INFO] [stdout] 122 | | Some(variables) => { [INFO] [stdout] 123 | | for line in variables { [INFO] [stdout] 124 | | conf_str.push_str(format!("{}\n", line).as_str()); [INFO] [stdout] ... | [INFO] [stdout] 127 | | None => {} [INFO] [stdout] 128 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 121 ~ if let Some(variables) = bb_variables { [INFO] [stdout] 122 + for line in variables { [INFO] [stdout] 123 + conf_str.push_str(format!("{}\n", line).as_str()); [INFO] [stdout] 124 + } [INFO] [stdout] 125 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/fs/bitbake.rs:132:38 [INFO] [stdout] | [INFO] [stdout] 132 | self.write_bb_build_conf(&conf_path, &conf_str)?; [INFO] [stdout] | ^^^^^^^^^^ help: change this to: `conf_path` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/fs/bitbake.rs:178:55 [INFO] [stdout] | [INFO] [stdout] 178 | pub fn new(bitbake: &WsBitbakeData, bb_variables: &Vec, force: bool) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 178 ~ pub fn new(bitbake: &WsBitbakeData, bb_variables: &[String], force: bool) -> Self { [INFO] [stdout] 179 | Self::construct( [INFO] [stdout] ... [INFO] [stdout] 185 | force, [INFO] [stdout] 186 ~ bb_variables.to_owned(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/fs/bitbake.rs:191:25 [INFO] [stdout] | [INFO] [stdout] 191 | build_conf_dir: &PathBuf, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 191 ~ build_conf_dir: &Path, [INFO] [stdout] 192 | local_conf_path: &PathBuf, [INFO] [stdout] ... [INFO] [stdout] 199 | BitbakeConf { [INFO] [stdout] 200 ~ build_conf_dir: build_conf_dir.to_path_buf(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/fs/bitbake.rs:192:26 [INFO] [stdout] | [INFO] [stdout] 192 | local_conf_path: &PathBuf, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 192 ~ local_conf_path: &Path, [INFO] [stdout] 193 | bblayers_conf_path: &PathBuf, [INFO] [stdout] ... [INFO] [stdout] 200 | build_conf_dir: build_conf_dir.clone(), [INFO] [stdout] 201 ~ local_conf_path: local_conf_path.to_path_buf(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/fs/bitbake.rs:193:29 [INFO] [stdout] | [INFO] [stdout] 193 | bblayers_conf_path: &PathBuf, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 193 ~ bblayers_conf_path: &Path, [INFO] [stdout] 194 | local_conf_content: String, [INFO] [stdout] ... [INFO] [stdout] 201 | local_conf_path: local_conf_path.clone(), [INFO] [stdout] 202 ~ bblayers_conf_path: bblayers_conf_path.to_path_buf(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/fs/config.rs:18:27 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn new(file_path: &PathBuf) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 18 ~ pub fn new(file_path: &Path) -> Self { [INFO] [stdout] 19 | ConfigFileReader { [INFO] [stdout] 20 ~ file_path: file_path.to_path_buf(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/fs/manifest.rs:14:22 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn new(path: &PathBuf) -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 14 ~ pub fn new(path: &Path) -> Result { [INFO] [stdout] 15 | let name: String = path [INFO] [stdout] ... [INFO] [stdout] 38 | Ok(Manifest { [INFO] [stdout] 39 ~ path: path.to_path_buf(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/helper/mod.rs:27:43 [INFO] [stdout] | [INFO] [stdout] 27 | let mut file: File = File::create(&path).expect("Failed to create file"); [INFO] [stdout] | ^^^^^ help: change this to: `path` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] = note: `#[warn(clippy::needless_borrows_for_generic_args)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/helper/mod.rs:71:37 [INFO] [stdout] | [INFO] [stdout] 71 | pub fn create_test_files(files: &Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 71 - pub fn create_test_files(files: &Vec) { [INFO] [stdout] 71 + pub fn create_test_files(files: &[PathBuf]) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/helper/mod.rs:167:25 [INFO] [stdout] | [INFO] [stdout] 167 | expected_files: &Vec, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 167 - expected_files: &Vec, [INFO] [stdout] 167 + expected_files: &[PathBuf], [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/helper/mod.rs:168:25 [INFO] [stdout] | [INFO] [stdout] 168 | archived_files: &Vec, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 168 - archived_files: &Vec, [INFO] [stdout] 168 + archived_files: &[PathBuf], [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/helper/mod.rs:206:9 [INFO] [stdout] | [INFO] [stdout] 206 | let settings: WsSettings; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] help: move the declaration `settings` here and remove the assignments from the `match` arms [INFO] [stdout] | [INFO] [stdout] 206 ~ [INFO] [stdout] 207 ~ let settings: WsSettings = match result { [INFO] [stdout] 208 | Ok(rsettings) => { [INFO] [stdout] 209 ~ rsettings [INFO] [stdout] 210 | } [INFO] [stdout] ... [INFO] [stdout] 214 | } [INFO] [stdout] 215 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the function `WsBuildConfigHandler::from_str` doesn't need a mutable reference [INFO] [stdout] --> src/helper/mod.rs:243:63 [INFO] [stdout] | [INFO] [stdout] 243 | WsBuildConfigHandler::from_str(json_build_config, &mut settings); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 243 - WsBuildConfigHandler::from_str(json_build_config, &mut settings); [INFO] [stdout] 243 + WsBuildConfigHandler::from_str(json_build_config, &settings); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the function `WsBuildConfigHandler::from_str` doesn't need a mutable reference [INFO] [stdout] --> src/helper/mod.rs:265:63 [INFO] [stdout] | [INFO] [stdout] 265 | WsBuildConfigHandler::from_str(json_build_config, &mut settings) [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 265 - WsBuildConfigHandler::from_str(json_build_config, &mut settings) [INFO] [stdout] 265 + WsBuildConfigHandler::from_str(json_build_config, &settings) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/helper/mod.rs:285:13 [INFO] [stdout] | [INFO] [stdout] 285 | &work_dir, [INFO] [stdout] | ^^^^^^^^^ help: change this to: `work_dir` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/helper/mod.rs:316:65 [INFO] [stdout] | [INFO] [stdout] 316 | WsArtifactsHandler::from_str(json_artifacts_config, &task_build_dir, build_data) [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: change this to: `task_build_dir` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/helper/mod.rs:333:17 [INFO] [stdout] | [INFO] [stdout] 333 | / return var [INFO] [stdout] 334 | | .into_string() [INFO] [stdout] 335 | | .or::(Ok(String::from(""))) [INFO] [stdout] 336 | | .unwrap(); [INFO] [stdout] | |_____________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 333 ~ var [INFO] [stdout] 334 + .into_string() [INFO] [stdout] 335 + .or::(Ok(String::from(""))) [INFO] [stdout] 336 ~ .unwrap() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/helper/mod.rs:339:17 [INFO] [stdout] | [INFO] [stdout] 339 | return String::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 339 - return String::new(); [INFO] [stdout] 339 + String::new() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: found `.or(Ok(…)).unwrap()` [INFO] [stdout] --> src/helper/mod.rs:335:22 [INFO] [stdout] | [INFO] [stdout] 335 | .or::(Ok(String::from(""))) [INFO] [stdout] | ______________________^ [INFO] [stdout] 336 | | .unwrap(); [INFO] [stdout] | |_____________________________^ help: try: `unwrap_or(String::from(""))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_then_unwrap [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/helper/mod.rs:352:15 [INFO] [stdout] | [INFO] [stdout] 352 | args: &Vec, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 352 ~ args: &[String], [INFO] [stdout] 353 | volumes: &Vec, [INFO] [stdout] ... [INFO] [stdout] 410 | if !args.is_empty() { [INFO] [stdout] 411 ~ cmd_line.append(&mut args.to_owned()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/helper/mod.rs:353:18 [INFO] [stdout] | [INFO] [stdout] 353 | volumes: &Vec, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 353 - volumes: &Vec, [INFO] [stdout] 353 + volumes: &[String], [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/helper/mod.rs:354:18 [INFO] [stdout] | [INFO] [stdout] 354 | top_dir: &PathBuf, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 354 - top_dir: &PathBuf, [INFO] [stdout] 354 + top_dir: &Path, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/helper/mod.rs:355:19 [INFO] [stdout] | [INFO] [stdout] 355 | work_dir: &PathBuf, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 355 - work_dir: &PathBuf, [INFO] [stdout] 355 + work_dir: &Path, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/helper/mod.rs:357:14 [INFO] [stdout] | [INFO] [stdout] 357 | cmd: &Vec, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 357 ~ cmd: &[String], [INFO] [stdout] 358 | ) -> Vec { [INFO] [stdout] ... [INFO] [stdout] 413 | cmd_line.push(format!("{}", image)); [INFO] [stdout] 414 ~ cmd_line.append(&mut cmd.to_owned()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::string::String` [INFO] [stdout] --> src/helper/mod.rs:382:13 [INFO] [stdout] | [INFO] [stdout] 382 | String::from(format!("{}:{}:ro", BkryConstants::BIN, BkryConstants::BIN)), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `String::from()`: `format!("{}:{}:ro", BkryConstants::BIN, BkryConstants::BIN)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::string::String` [INFO] [stdout] --> src/helper/mod.rs:384:13 [INFO] [stdout] | [INFO] [stdout] 384 | / String::from(format!( [INFO] [stdout] 385 | | "{}:{}:ro", [INFO] [stdout] 386 | | BkryConstants::CFG_DIR, [INFO] [stdout] 387 | | BkryConstants::CFG_DIR [INFO] [stdout] 388 | | )), [INFO] [stdout] | |______________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] help: consider removing `String::from()` [INFO] [stdout] | [INFO] [stdout] 384 ~ format!( [INFO] [stdout] 385 + "{}:{}:ro", [INFO] [stdout] 386 + BkryConstants::CFG_DIR, [INFO] [stdout] 387 + BkryConstants::CFG_DIR [INFO] [stdout] 388 ~ ), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::string::String` [INFO] [stdout] --> src/helper/mod.rs:390:13 [INFO] [stdout] | [INFO] [stdout] 390 | / String::from(format!( [INFO] [stdout] 391 | | "{}:{}:ro", [INFO] [stdout] 392 | | BkryConstants::OPT_DIR, [INFO] [stdout] 393 | | BkryConstants::OPT_DIR [INFO] [stdout] 394 | | )), [INFO] [stdout] | |______________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] help: consider removing `String::from()` [INFO] [stdout] | [INFO] [stdout] 390 ~ format!( [INFO] [stdout] 391 + "{}:{}:ro", [INFO] [stdout] 392 + BkryConstants::OPT_DIR, [INFO] [stdout] 393 + BkryConstants::OPT_DIR [INFO] [stdout] 394 ~ ), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/helper/mod.rs:421:19 [INFO] [stdout] | [INFO] [stdout] 421 | work_dir: &PathBuf, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 421 - work_dir: &PathBuf, [INFO] [stdout] 421 + work_dir: &Path, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/helper/mod.rs:423:14 [INFO] [stdout] | [INFO] [stdout] 423 | cmd: &Vec, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 423 ~ cmd: &[String], [INFO] [stdout] 424 | env_file: &PathBuf, [INFO] [stdout] ... [INFO] [stdout] 454 | cmd_line.push(format!("{}", image)); [INFO] [stdout] 455 ~ cmd_line.append(&mut cmd.to_owned()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/helper/mod.rs:424:19 [INFO] [stdout] | [INFO] [stdout] 424 | env_file: &PathBuf, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 424 - env_file: &PathBuf, [INFO] [stdout] 424 + env_file: &Path, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/workspace/config.rs:67:17 [INFO] [stdout] | [INFO] [stdout] 67 | return Ok(config); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 67 - return Ok(config); [INFO] [stdout] 67 + Ok(config) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/workspace/config.rs:70:17 [INFO] [stdout] | [INFO] [stdout] 70 | / return Err(BError::ValueError(format!( [INFO] [stdout] 71 | | "Task '{}' does not exists in build config", [INFO] [stdout] 72 | | task [INFO] [stdout] 73 | | ))); [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 70 ~ Err(BError::ValueError(format!( [INFO] [stdout] 71 + "Task '{}' does not exists in build config", [INFO] [stdout] 72 + task [INFO] [stdout] 73 ~ ))) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/workspace/config.rs:81:17 [INFO] [stdout] | [INFO] [stdout] 81 | return Ok(config); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 81 - return Ok(config); [INFO] [stdout] 81 + Ok(config) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/workspace/config.rs:84:17 [INFO] [stdout] | [INFO] [stdout] 84 | / return Err(BError::ValueError(format!( [INFO] [stdout] 85 | | "Sub-command '{}' does not exists in build config", [INFO] [stdout] 86 | | cmd [INFO] [stdout] 87 | | ))); [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 84 ~ Err(BError::ValueError(format!( [INFO] [stdout] 85 + "Sub-command '{}' does not exists in build config", [INFO] [stdout] 86 + cmd [INFO] [stdout] 87 ~ ))) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` can be collapsed into the outer `match` [INFO] [stdout] --> src/workspace/config.rs:110:25 [INFO] [stdout] | [INFO] [stdout] 110 | / if cmd.data().cmd() [INFO] [stdout] 111 | | == &format!( [INFO] [stdout] 112 | | "echo \"INFO: currently no '{}' sub-command defined\"", [INFO] [stdout] 113 | | cmd.data().name() [INFO] [stdout] ... | [INFO] [stdout] 116 | | subcmds.insert(key.clone(), value); [INFO] [stdout] 117 | | } [INFO] [stdout] | |_________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match [INFO] [stdout] = note: `#[warn(clippy::collapsible_match)]` on by default [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 106 ~ Some(cmd) [INFO] [stdout] 107 | /* [INFO] [stdout] ... [INFO] [stdout] 114 | ) [INFO] [stdout] 115 ~ => { [INFO] [stdout] 116 | subcmds.insert(key.clone(), value); [INFO] [stdout] 117 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> src/workspace/config.rs:105:17 [INFO] [stdout] | [INFO] [stdout] 105 | / match subcmds.get(&key) { [INFO] [stdout] 106 | | Some(cmd) => { [INFO] [stdout] 107 | | /* [INFO] [stdout] 108 | | * If the command is the default then we can overwrite it [INFO] [stdout] ... | [INFO] [stdout] 119 | | None => {} [INFO] [stdout] 120 | | } [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 105 ~ if let Some(cmd) = subcmds.get(&key) { [INFO] [stdout] 106 + /* [INFO] [stdout] 107 + * If the command is the default then we can overwrite it [INFO] [stdout] 108 + */ [INFO] [stdout] 109 + if cmd.data().cmd() [INFO] [stdout] 110 + == &format!( [INFO] [stdout] 111 + "echo \"INFO: currently no '{}' sub-command defined\"", [INFO] [stdout] 112 + cmd.data().name() [INFO] [stdout] 113 + ) [INFO] [stdout] 114 + { [INFO] [stdout] 115 + subcmds.insert(key.clone(), value); [INFO] [stdout] 116 + } [INFO] [stdout] 117 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/workspace/config.rs:139:9 [INFO] [stdout] | [INFO] [stdout] 139 | / &self [INFO] [stdout] 140 | | .subcmd("deploy") [INFO] [stdout] 141 | | .expect("Failed to get deploy built-in sub-command") [INFO] [stdout] | |________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 139 ~ self [INFO] [stdout] 140 + .subcmd("deploy") [INFO] [stdout] 141 + .expect("Failed to get deploy built-in sub-command") [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/workspace/config.rs:145:9 [INFO] [stdout] | [INFO] [stdout] 145 | / &self [INFO] [stdout] 146 | | .subcmd("upload") [INFO] [stdout] 147 | | .expect("Failed to get upload built-in sub-command") [INFO] [stdout] | |________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 145 ~ self [INFO] [stdout] 146 + .subcmd("upload") [INFO] [stdout] 147 + .expect("Failed to get upload built-in sub-command") [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/workspace/config.rs:151:9 [INFO] [stdout] | [INFO] [stdout] 151 | / &self [INFO] [stdout] 152 | | .subcmd("setup") [INFO] [stdout] 153 | | .expect("Failed to get setup built-in sub-command") [INFO] [stdout] | |_______________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 151 ~ self [INFO] [stdout] 152 + .subcmd("setup") [INFO] [stdout] 153 + .expect("Failed to get setup built-in sub-command") [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/workspace/config.rs:157:9 [INFO] [stdout] | [INFO] [stdout] 157 | / &self [INFO] [stdout] 158 | | .subcmd("sync") [INFO] [stdout] 159 | | .expect("Failed to get sync built-in sub-command") [INFO] [stdout] | |______________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 157 ~ self [INFO] [stdout] 158 + .subcmd("sync") [INFO] [stdout] 159 + .expect("Failed to get sync built-in sub-command") [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/workspace/config.rs:163:9 [INFO] [stdout] | [INFO] [stdout] 163 | &self.data.product().description() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `self.data.product().description()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the following explicit lifetimes could be elided: 'a [INFO] [stdout] --> src/workspace/customsubcmd.rs:32:16 [INFO] [stdout] | [INFO] [stdout] 32 | pub fn run<'a>( [INFO] [stdout] | ^^ [INFO] [stdout] 33 | &self, [INFO] [stdout] 34 | cli: &'a Cli, [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stdout] = note: `#[warn(clippy::needless_lifetimes)]` on by default [INFO] [stdout] help: elide the lifetimes [INFO] [stdout] | [INFO] [stdout] 32 ~ pub fn run( [INFO] [stdout] 33 | &self, [INFO] [stdout] 34 ~ cli: &Cli, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: name `DEFAULT` contains a capitalized acronym [INFO] [stdout] --> src/workspace/settings.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | DEFAULT, [INFO] [stdout] | ^^^^^^^ help: consider making the acronym lowercase, except the initial letter: `Default` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#upper_case_acronyms [INFO] [stdout] = note: `#[warn(clippy::upper_case_acronyms)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: name `SETUP` contains a capitalized acronym [INFO] [stdout] --> src/workspace/settings.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | SETUP, [INFO] [stdout] | ^^^^^ help: consider making the acronym lowercase, except the initial letter: `Setup` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#upper_case_acronyms [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: name `TEST` contains a capitalized acronym [INFO] [stdout] --> src/workspace/settings.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | TEST, [INFO] [stdout] | ^^^^ help: consider making the acronym lowercase, except the initial letter: `Test` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#upper_case_acronyms [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/workspace/settings.rs:25:19 [INFO] [stdout] | [INFO] [stdout] 25 | work_dir: &PathBuf, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 25 ~ work_dir: &Path, [INFO] [stdout] 26 | json_settings: &str, [INFO] [stdout] 27 | path: Option, [INFO] [stdout] 28 | ) -> Result { [INFO] [stdout] 29 ~ let work_dir: PathBuf = work_dir.to_path_buf(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/workspace/settings.rs:64:9 [INFO] [stdout] | [INFO] [stdout] 64 | return Ok(()); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 64 - return Ok(()); [INFO] [stdout] 64 + Ok(()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/workspace/settings.rs:104:23 [INFO] [stdout] | [INFO] [stdout] 104 | path_buf.push(&dir); [INFO] [stdout] | ^^^^ help: change this to: `dir` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/workspace/settings.rs:146:9 [INFO] [stdout] | [INFO] [stdout] 146 | return self.work_dir(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 146 - return self.work_dir(); [INFO] [stdout] 146 + self.work_dir() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/workspace/settings.rs:160:17 [INFO] [stdout] | [INFO] [stdout] 160 | return true; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 160 - return true; [INFO] [stdout] 160 + true [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/workspace/settings.rs:163:17 [INFO] [stdout] | [INFO] [stdout] 163 | return false; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 163 - return false; [INFO] [stdout] 163 + false [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/workspace/settings.rs:166:17 [INFO] [stdout] | [INFO] [stdout] 166 | return false; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 166 - return false; [INFO] [stdout] 166 + false [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/workspace/settings.rs:174:17 [INFO] [stdout] | [INFO] [stdout] 174 | return Mode::DEFAULT; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 174 - return Mode::DEFAULT; [INFO] [stdout] 174 + Mode::DEFAULT [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/workspace/settings.rs:177:17 [INFO] [stdout] | [INFO] [stdout] 177 | return Mode::SETUP; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 177 - return Mode::SETUP; [INFO] [stdout] 177 + Mode::SETUP [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/workspace/settings.rs:180:17 [INFO] [stdout] | [INFO] [stdout] 180 | return Mode::TEST; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 180 - return Mode::TEST; [INFO] [stdout] 180 + Mode::TEST [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/workspace/settings.rs:183:17 [INFO] [stdout] | [INFO] [stdout] 183 | return Mode::DEFAULT; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 183 - return Mode::DEFAULT; [INFO] [stdout] 183 + Mode::DEFAULT [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the following explicit lifetimes could be elided: 'a [INFO] [stdout] --> src/workspace/tasks.rs:37:18 [INFO] [stdout] | [INFO] [stdout] 37 | pub fn build<'a>( [INFO] [stdout] | ^^ [INFO] [stdout] 38 | &self, [INFO] [stdout] 39 | cli: &'a Cli, [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stdout] help: elide the lifetimes [INFO] [stdout] | [INFO] [stdout] 37 ~ pub fn build( [INFO] [stdout] 38 | &self, [INFO] [stdout] 39 ~ cli: &Cli, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this function has too many arguments (8/7) [INFO] [stdout] --> src/workspace/tasks.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | / pub fn build<'a>( [INFO] [stdout] 38 | | &self, [INFO] [stdout] 39 | | cli: &'a Cli, [INFO] [stdout] 40 | | build_data: &WsBuildData, [INFO] [stdout] ... | [INFO] [stdout] 45 | | force: bool, [INFO] [stdout] 46 | | ) -> Result<(), BError> { [INFO] [stdout] | |___________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/workspace/tasks.rs:47:9 [INFO] [stdout] | [INFO] [stdout] 47 | let executer: Box; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] help: move the declaration `executer` here and remove the assignments from the `match` arms [INFO] [stdout] | [INFO] [stdout] 47 ~ [INFO] [stdout] 48 | [INFO] [stdout] ... [INFO] [stdout] 61 | [INFO] [stdout] 62 ~ let executer: Box = match self.data.ttype() { [INFO] [stdout] 63 | TType::Bitbake => { [INFO] [stdout] 64 ~ Box::new(BBBuildExecuter::new( [INFO] [stdout] 65 | cli, [INFO] [stdout] ... [INFO] [stdout] 68 | bb_variables, [INFO] [stdout] 69 ~ )) [INFO] [stdout] 70 | } [INFO] [stdout] 71 | TType::NonBitbake => { [INFO] [stdout] 72 ~ Box::new(NonBBBuildExecuter::new(cli, &self.data)) [INFO] [stdout] 73 | } [INFO] [stdout] 74 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the following explicit lifetimes could be elided: 'a [INFO] [stdout] --> src/workspace/tasks.rs:85:18 [INFO] [stdout] | [INFO] [stdout] 85 | pub fn clean<'a>( [INFO] [stdout] | ^^ [INFO] [stdout] 86 | &self, [INFO] [stdout] 87 | cli: &'a Cli, [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stdout] help: elide the lifetimes [INFO] [stdout] | [INFO] [stdout] 85 ~ pub fn clean( [INFO] [stdout] 86 | &self, [INFO] [stdout] 87 ~ cli: &Cli, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/workspace/tasks.rs:92:9 [INFO] [stdout] | [INFO] [stdout] 92 | let executer: Box; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] help: move the declaration `executer` here and remove the assignments from the `match` arms [INFO] [stdout] | [INFO] [stdout] 92 ~ [INFO] [stdout] 93 | [INFO] [stdout] ... [INFO] [stdout] 109 | [INFO] [stdout] 110 ~ let executer: Box = match self.data.ttype() { [INFO] [stdout] 111 | TType::Bitbake => { [INFO] [stdout] 112 ~ Box::new(BBCleanExecuter::new(cli, &self.data, build_data.bitbake())) [INFO] [stdout] 113 | } [INFO] [stdout] 114 | TType::NonBitbake => { [INFO] [stdout] 115 ~ Box::new(NonBBCleanExecuter::new(cli, &self.data)) [INFO] [stdout] 116 | } [INFO] [stdout] 117 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `to_string` applied to a type that implements `Display` in `format!` args [INFO] [stdout] --> src/workspace/tasks.rs:147:39 [INFO] [stdout] | [INFO] [stdout] 147 | .to_string_lossy() [INFO] [stdout] | _______________________________________^ [INFO] [stdout] 148 | | .to_string() [INFO] [stdout] | |________________________________^ help: remove this [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#to_string_in_format_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module has the same name as its containing module [INFO] [stdout] --> src/workspace/mod.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | pub mod workspace; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `list_of_files.get(0)` [INFO] [stdout] --> src/workspace/workspace.rs:125:40 [INFO] [stdout] | [INFO] [stdout] 125 | if list_of_files.len() == 1 && list_of_files.get(0).unwrap() == &"default.json".to_string() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: try: `list_of_files.first()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::path::PathBuf` [INFO] [stdout] --> src/workspace/workspace.rs:131:17 [INFO] [stdout] | [INFO] [stdout] 131 | PathBuf::from(settings.configs_dir().join("default.json")), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `PathBuf::from()`: `settings.configs_dir().join("default.json")` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/workspace/workspace.rs:161:9 [INFO] [stdout] | [INFO] [stdout] 161 | &self.config.build_data().settings() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `self.config.build_data().settings()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `res` is never read [INFO] [stdout] --> src/commands/shell.rs:53:43 [INFO] [stdout] | [INFO] [stdout] 53 | let mut res: Result<(), BError> = Ok(()); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/data/artifact.rs:156:13 [INFO] [stdout] | [INFO] [stdout] 156 | _ => { [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/data/artifact.rs:156:13 [INFO] [stdout] | [INFO] [stdout] 134 | AType::File => { [INFO] [stdout] | ----------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 139 | AType::Directory => { [INFO] [stdout] | ---------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 142 | AType::Archive => { [INFO] [stdout] | -------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 145 | AType::Manifest => { [INFO] [stdout] | --------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 156 | _ => { [INFO] [stdout] | ^ ...and 2 other patterns collectively make this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `json_task_str` [INFO] [stdout] --> src/data/data.rs:618:13 [INFO] [stdout] | [INFO] [stdout] 618 | let json_task_str: &str = r#" [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_json_task_str` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `i` is never read [INFO] [stdout] --> src/workspace/config.rs:438:13 [INFO] [stdout] | [INFO] [stdout] 438 | i += 1; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `warn` is never used [INFO] [stdout] --> src/cli/logger.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 4 | pub trait Logger { [INFO] [stdout] | ------ method in this trait [INFO] [stdout] ... [INFO] [stdout] 7 | fn warn(&self, message: String); [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `merge` is never used [INFO] [stdout] --> src/configs/context.rs:154:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl Context { [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 154 | pub fn merge(&mut self, context: &Context) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `version` is never read [INFO] [stdout] --> src/configs/settings.rs:16:9 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct WsSettings { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] 16 | pub version: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `WsSettings` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_str` is never used [INFO] [stdout] --> src/data/artifact.rs:31:12 [INFO] [stdout] | [INFO] [stdout] 30 | impl WsArtifactData { [INFO] [stdout] | ------------------- associated function in this implementation [INFO] [stdout] 31 | pub fn from_str(json_string: &str) -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `data` is never read [INFO] [stdout] --> src/data/data.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct WsBuildData { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] 16 | data: Value, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_str` is never used [INFO] [stdout] --> src/data/include.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 14 | impl WsIncludeData { [INFO] [stdout] | ------------------ associated function in this implementation [INFO] [stdout] 15 | pub fn from_str(json_string: &str, settings: &WsSettingsHandler) -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `setup_test_ws_dirs` and `setup_ws_build_config_handler` are never used [INFO] [stdout] --> src/helper/mod.rs:51:12 [INFO] [stdout] | [INFO] [stdout] 21 | impl Helper { [INFO] [stdout] | ----------- associated functions in this implementation [INFO] [stdout] ... [INFO] [stdout] 51 | pub fn setup_test_ws_dirs(ws_settings: &WsSettingsHandler) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 234 | pub fn setup_ws_build_config_handler( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `config` is never used [INFO] [stdout] --> src/workspace/settings.rs:91:12 [INFO] [stdout] | [INFO] [stdout] 23 | impl WsSettingsHandler { [INFO] [stdout] | ---------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 91 | pub fn config(&self) -> &WsSettings { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/cli/bakery.rs:62:12 [INFO] [stdout] | [INFO] [stdout] 62 | if force || inside_docker || (!inside_docker && !cmd_require_docker) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] = note: `#[warn(clippy::nonminimal_bool)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 62 - if force || inside_docker || (!inside_docker && !cmd_require_docker) { [INFO] [stdout] 62 + if !(!force && !inside_docker && cmd_require_docker) { [INFO] [stdout] | [INFO] [stdout] 62 - if force || inside_docker || (!inside_docker && !cmd_require_docker) { [INFO] [stdout] 62 + if force || inside_docker || !cmd_require_docker { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `to_string` applied to a type that implements `Display` in `format!` args [INFO] [stdout] --> src/cli/bakery.rs:54:48 [INFO] [stdout] | [INFO] [stdout] 54 | self.cli.debug(format!("Error: {}", err.to_string())); [INFO] [stdout] | ^^^^^^^^^^^^ help: remove this [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#to_string_in_format_args [INFO] [stdout] = note: `#[warn(clippy::to_string_in_format_args)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary use of `to_string` [INFO] [stdout] --> src/cli/bakery.rs:127:13 [INFO] [stdout] | [INFO] [stdout] 127 | &cmd_name.to_string(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: use: `cmd_name` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_to_owned [INFO] [stdout] = note: `#[warn(clippy::unnecessary_to_owned)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary use of `to_string` [INFO] [stdout] --> src/cli/bakery.rs:197:21 [INFO] [stdout] | [INFO] [stdout] 197 | &cmd_name.to_string(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: use: `cmd_name` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_to_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary use of `to_string` [INFO] [stdout] --> src/cli/bakery.rs:204:21 [INFO] [stdout] | [INFO] [stdout] 204 | &cmd_name.to_string(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: use: `cmd_name` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_to_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module has the same name as its containing module [INFO] [stdout] --> src/cli/mod.rs:2:1 [INFO] [stdout] | [INFO] [stdout] 2 | pub mod cli; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception [INFO] [stdout] = note: `#[warn(clippy::module_inception)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary map of the identity function [INFO] [stdout] --> src/cli/cli.rs:37:49 [INFO] [stdout] | [INFO] [stdout] 37 | c = std::env::args().into_iter().map(|s| s).collect(); [INFO] [stdout] | ^^^^^^^^^^^ help: remove the call to `map` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_identity [INFO] [stdout] = note: `#[warn(clippy::map_identity)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::env::Args` [INFO] [stdout] --> src/cli/cli.rs:37:21 [INFO] [stdout] | [INFO] [stdout] 37 | c = std::env::args().into_iter().map(|s| s).collect(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into_iter()`: `std::env::args()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] = note: `#[warn(clippy::useless_conversion)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/cli/cli.rs:75:20 [INFO] [stdout] | [INFO] [stdout] 75 | self.debug(format!("{}", cmd.as_str().trim_end())); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `cmd.as_str().trim_end().to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] = note: `#[warn(clippy::useless_format)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `&Box`. Consider using just `&T` [INFO] [stdout] --> src/cli/cli.rs:111:53 [INFO] [stdout] | [INFO] [stdout] 111 | pub fn get_command(&self, name: &str) -> Result<&Box, BError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: try: `&dyn BCommand` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#borrowed_box [INFO] [stdout] = note: `#[warn(clippy::borrowed_box)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/cli/cli.rs:112:34 [INFO] [stdout] | [INFO] [stdout] 112 | self.cmd_handler.get_cmd(&name) [INFO] [stdout] | ^^^^^ help: change this to: `name` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] = note: `#[warn(clippy::needless_borrow)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/cli/cli.rs:126:17 [INFO] [stdout] | [INFO] [stdout] 126 | / return PathBuf::from( [INFO] [stdout] 127 | | var.into_string() [INFO] [stdout] 128 | | .or::(Ok(String::from(""))) [INFO] [stdout] 129 | | .unwrap(), [INFO] [stdout] 130 | | ); [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 126 ~ PathBuf::from( [INFO] [stdout] 127 + var.into_string() [INFO] [stdout] 128 + .or::(Ok(String::from(""))) [INFO] [stdout] 129 + .unwrap(), [INFO] [stdout] 130 ~ ) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/cli/cli.rs:133:17 [INFO] [stdout] | [INFO] [stdout] 133 | return PathBuf::from(""); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 133 - return PathBuf::from(""); [INFO] [stdout] 133 + PathBuf::from("") [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: found `.or(Ok(…)).unwrap()` [INFO] [stdout] --> src/cli/cli.rs:128:26 [INFO] [stdout] | [INFO] [stdout] 128 | .or::(Ok(String::from(""))) [INFO] [stdout] | __________________________^ [INFO] [stdout] 129 | | .unwrap(), [INFO] [stdout] | |_________________________________^ help: try: `unwrap_or(String::from(""))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_then_unwrap [INFO] [stdout] = note: `#[warn(clippy::or_then_unwrap)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/cli/cli.rs:141:17 [INFO] [stdout] | [INFO] [stdout] 141 | return path; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 141 - return path; [INFO] [stdout] 141 + path [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/cli/cli.rs:144:17 [INFO] [stdout] | [INFO] [stdout] 144 | return PathBuf::from(""); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 144 - return PathBuf::from(""); [INFO] [stdout] 144 + PathBuf::from("") [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `&Box`. Consider using just `&T` [INFO] [stdout] --> src/cli/cli.rs:153:34 [INFO] [stdout] | [INFO] [stdout] 153 | pub fn _get_logger(&self) -> &Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: try: `&dyn Logger` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#borrowed_box [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/cli/system.rs:46:20 [INFO] [stdout] | [INFO] [stdout] 46 | init_file: &PathBuf, [INFO] [stdout] | ^^^^^^^^ help: change this to: `&Path` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/cli/system.rs:47:20 [INFO] [stdout] | [INFO] [stdout] 47 | build_dir: &PathBuf, [INFO] [stdout] | ^^^^^^^^ help: change this to: `&Path` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/cli/system.rs:49:40 [INFO] [stdout] | [INFO] [stdout] 49 | fn is_directory_empty(&self, path: &PathBuf) -> Result; [INFO] [stdout] | ^^^^^^^^ help: change this to: `&Path` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/cli/system.rs:50:31 [INFO] [stdout] | [INFO] [stdout] 50 | fn rmdir_all(&self, path: &PathBuf) -> Result<(), BError>; [INFO] [stdout] | ^^^^^^^^ help: change this to: `&Path` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `to_string` applied to a type that implements `Display` in `format!` args [INFO] [stdout] --> src/cli/system.rs:122:44 [INFO] [stdout] | [INFO] [stdout] 122 | init_file.to_string_lossy().to_string() [INFO] [stdout] | ^^^^^^^^^^^^ help: remove this [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#to_string_in_format_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `to_string` applied to a type that implements `Display` in `format!` args [INFO] [stdout] --> src/cli/system.rs:128:40 [INFO] [stdout] | [INFO] [stdout] 128 | init_file.to_string_lossy().to_string(), [INFO] [stdout] | ^^^^^^^^^^^^ help: remove this [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#to_string_in_format_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `to_string` applied to a type that implements `Display` in `format!` args [INFO] [stdout] --> src/cli/system.rs:129:40 [INFO] [stdout] | [INFO] [stdout] 129 | build_dir.to_string_lossy().to_string() [INFO] [stdout] | ^^^^^^^^^^^^ help: remove this [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#to_string_in_format_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `to_string` applied to a type that implements `Display` in `assert_eq!` args [INFO] [stdout] --> src/cli/system.rs:287:57 [INFO] [stdout] | [INFO] [stdout] 287 | test_file_path.to_string_lossy().to_string() [INFO] [stdout] | ^^^^^^^^^^^^ help: remove this [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#to_string_in_format_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/collector/factory.rs:17:9 [INFO] [stdout] | [INFO] [stdout] 17 | let collector: Box; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] = note: `#[warn(clippy::needless_late_init)]` on by default [INFO] [stdout] help: move the declaration `collector` here and remove the assignments from the `match` arms [INFO] [stdout] | [INFO] [stdout] 17 ~ [INFO] [stdout] 18 ~ let collector: Box = match artifact.data().atype() { [INFO] [stdout] 19 | AType::Archive => { [INFO] [stdout] 20 ~ Box::new(ArchiveCollector::new(artifact, cli)) [INFO] [stdout] 21 | } [INFO] [stdout] 22 | AType::Directory => { [INFO] [stdout] 23 ~ Box::new(DirectoryCollector::new(artifact, cli)) [INFO] [stdout] 24 | } [INFO] [stdout] 25 | AType::File => { [INFO] [stdout] 26 ~ Box::new(FileCollector::new(artifact, cli)) [INFO] [stdout] 27 | } [INFO] [stdout] 28 | AType::Manifest => { [INFO] [stdout] 29 ~ Box::new(ManifestCollector::new(artifact, cli)) [INFO] [stdout] 30 | } [INFO] [stdout] 31 | AType::Link => { [INFO] [stdout] 32 ~ Box::new(LinkCollector::new(artifact, cli)) [INFO] [stdout] 33 | } [INFO] [stdout] 34 | AType::Conditional => { [INFO] [stdout] 35 ~ Box::new(ConditionalCollector::new(artifact, cli)) [INFO] [stdout] 36 | } [INFO] [stdout] 37 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/collector/file.rs:86:9 [INFO] [stdout] | [INFO] [stdout] 86 | return true; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 86 - return true; [INFO] [stdout] 86 + true [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/collector/file.rs:71:33 [INFO] [stdout] | [INFO] [stdout] 71 | fn is_dir(&self, dest_path: &PathBuf, dest_str: &str) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 71 - fn is_dir(&self, dest_path: &PathBuf, dest_str: &str) -> bool { [INFO] [stdout] 71 + fn is_dir(&self, dest_path: &Path, dest_str: &str) -> bool { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: binary comparison to literal `Option::None` [INFO] [stdout] --> src/collector/file.rs:78:12 [INFO] [stdout] | [INFO] [stdout] 78 | if file_name == None { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use `Option::is_none()` instead: `file_name.is_none()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#partialeq_to_none [INFO] [stdout] = note: `#[warn(clippy::partialeq_to_none)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: binary comparison to literal `Option::None` [INFO] [stdout] --> src/collector/file.rs:82:12 [INFO] [stdout] | [INFO] [stdout] 82 | if dest_path.extension() != None { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `Option::is_some()` instead: `dest_path.extension().is_some()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#partialeq_to_none [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/collector/file.rs:89:45 [INFO] [stdout] | [INFO] [stdout] 89 | fn list_files(&self, glob_pattern_path: &PathBuf) -> Result, BError> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 89 ~ fn list_files(&self, glob_pattern_path: &Path) -> Result, BError> { [INFO] [stdout] 90 | let mut files: Vec = vec![]; [INFO] [stdout] ... [INFO] [stdout] 112 | None => { [INFO] [stdout] 113 ~ files.push(glob_pattern_path.to_path_buf()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/commands/build.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 34 | return String::from("default"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 34 - return String::from("default"); [INFO] [stdout] 34 + String::from("default") [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/commands/build.rs:175:21 [INFO] [stdout] | [INFO] [stdout] 175 | &workspace.config().build_data(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `workspace.config().build_data()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `tasks.get(0)` [INFO] [stdout] --> src/commands/build.rs:185:33 [INFO] [stdout] | [INFO] [stdout] 185 | let task: &String = tasks.get(0).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^ help: try: `tasks.first()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] = note: `#[warn(clippy::get_first)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/commands/build.rs:191:25 [INFO] [stdout] | [INFO] [stdout] 191 | &workspace.config().build_data(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `workspace.config().build_data()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `tasks.get(0)` [INFO] [stdout] --> src/commands/build.rs:201:68 [INFO] [stdout] | [INFO] [stdout] 201 | let task: &WsTaskHandler = workspace.config().task(tasks.get(0).unwrap())?; [INFO] [stdout] | ^^^^^^^^^^^^ help: try: `tasks.first()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/commands/build.rs:204:21 [INFO] [stdout] | [INFO] [stdout] 204 | &workspace.config().build_data(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `workspace.config().build_data()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `to_string` applied to a type that implements `Display` in `format!` args [INFO] [stdout] --> src/commands/build.rs:583:39 [INFO] [stdout] | [INFO] [stdout] 583 | work_dir.to_string_lossy().to_string() [INFO] [stdout] | ^^^^^^^^^^^^ help: remove this [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#to_string_in_format_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `to_string` applied to a type that implements `Display` in `format!` args [INFO] [stdout] --> src/commands/build.rs:587:39 [INFO] [stdout] | [INFO] [stdout] 587 | work_dir.to_string_lossy().to_string() [INFO] [stdout] | ^^^^^^^^^^^^ help: remove this [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#to_string_in_format_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary use of `to_string` [INFO] [stdout] --> src/commands/build.rs:648:21 [INFO] [stdout] | [INFO] [stdout] 648 | &build_dir.to_string_lossy().to_string(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `build_dir.to_string_lossy().as_ref()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_to_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary use of `to_string` [INFO] [stdout] --> src/commands/build.rs:723:21 [INFO] [stdout] | [INFO] [stdout] 723 | &build_dir.to_string_lossy().to_string(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `build_dir.to_string_lossy().as_ref()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_to_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/commands/build.rs:738:46 [INFO] [stdout] | [INFO] [stdout] 738 | mocked_system.expect_env().returning(|| HashMap::new()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `HashMap::new` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] = note: `#[warn(clippy::redundant_closure)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/commands/build.rs:822:46 [INFO] [stdout] | [INFO] [stdout] 822 | mocked_system.expect_env().returning(|| HashMap::new()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `HashMap::new` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/commands/build.rs:908:46 [INFO] [stdout] | [INFO] [stdout] 908 | mocked_system.expect_env().returning(|| HashMap::new()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `HashMap::new` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/commands/build.rs:1000:46 [INFO] [stdout] | [INFO] [stdout] 1000 | mocked_system.expect_env().returning(|| HashMap::new()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `HashMap::new` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/commands/build.rs:1095:46 [INFO] [stdout] | [INFO] [stdout] 1095 | mocked_system.expect_env().returning(|| HashMap::new()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `HashMap::new` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary use of `to_string` [INFO] [stdout] --> src/commands/build.rs:1149:21 [INFO] [stdout] | [INFO] [stdout] 1149 | &build_dir.to_string_lossy().to_string(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `build_dir.to_string_lossy().as_ref()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_to_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary use of `to_string` [INFO] [stdout] --> src/commands/build.rs:1244:21 [INFO] [stdout] | [INFO] [stdout] 1244 | &build_dir.to_string_lossy().to_string(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `build_dir.to_string_lossy().as_ref()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_to_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary use of `to_string` [INFO] [stdout] --> src/commands/build.rs:1268:21 [INFO] [stdout] | [INFO] [stdout] 1268 | &build_dir.to_string_lossy().to_string(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `build_dir.to_string_lossy().as_ref()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_to_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary use of `to_string` [INFO] [stdout] --> src/commands/build.rs:1419:21 [INFO] [stdout] | [INFO] [stdout] 1419 | &build_dir.to_string_lossy().to_string(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `build_dir.to_string_lossy().as_ref()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_to_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/commands/clean.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 28 | return String::from("default"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 28 - return String::from("default"); [INFO] [stdout] 28 + String::from("default") [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/commands/clean.rs:91:33 [INFO] [stdout] | [INFO] [stdout] 91 | task.clean(cli, &workspace.config().build_data(), &env_variables, true)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `workspace.config().build_data()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `tasks.get(0)` [INFO] [stdout] --> src/commands/clean.rs:95:33 [INFO] [stdout] | [INFO] [stdout] 95 | let task: &String = tasks.get(0).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^ help: try: `tasks.first()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/commands/clean.rs:99:37 [INFO] [stdout] | [INFO] [stdout] 99 | task.clean(cli, &workspace.config().build_data(), &env_variables, false)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `workspace.config().build_data()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `tasks.get(0)` [INFO] [stdout] --> src/commands/clean.rs:103:68 [INFO] [stdout] | [INFO] [stdout] 103 | let task: &WsTaskHandler = workspace.config().task(tasks.get(0).unwrap())?; [INFO] [stdout] | ^^^^^^^^^^^^ help: try: `tasks.first()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/commands/clean.rs:104:33 [INFO] [stdout] | [INFO] [stdout] 104 | task.clean(cli, &workspace.config().build_data(), &env_variables, true)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `workspace.config().build_data()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary use of `to_string` [INFO] [stdout] --> src/commands/clean.rs:237:21 [INFO] [stdout] | [INFO] [stdout] 237 | &build_dir.to_string_lossy().to_string(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `build_dir.to_string_lossy().as_ref()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_to_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/commands/clean.rs:333:46 [INFO] [stdout] | [INFO] [stdout] 333 | mocked_system.expect_env().returning(|| HashMap::new()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `HashMap::new` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/commands/deploy.rs:25:9 [INFO] [stdout] | [INFO] [stdout] 25 | return String::from("default"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 25 - return String::from("default"); [INFO] [stdout] 25 + String::from("default") [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/commands/deploy.rs:52:22 [INFO] [stdout] | [INFO] [stdout] 52 | if device != String::from("NA") { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: try: `"NA"` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] = note: `#[warn(clippy::cmp_owned)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/commands/deploy.rs:58:21 [INFO] [stdout] | [INFO] [stdout] 58 | if image != String::from("NA") { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: try: `"NA"` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/commands/deploy.rs:199:46 [INFO] [stdout] | [INFO] [stdout] 199 | mocked_system.expect_env().returning(|| HashMap::new()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `HashMap::new` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/commands/deploy.rs:268:46 [INFO] [stdout] | [INFO] [stdout] 268 | mocked_system.expect_env().returning(|| HashMap::new()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `HashMap::new` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/commands/deploy.rs:343:46 [INFO] [stdout] | [INFO] [stdout] 343 | mocked_system.expect_env().returning(|| HashMap::new()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `HashMap::new` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/commands/deploy.rs:415:46 [INFO] [stdout] | [INFO] [stdout] 415 | mocked_system.expect_env().returning(|| HashMap::new()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `HashMap::new` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/commands/deploy.rs:480:46 [INFO] [stdout] | [INFO] [stdout] 480 | mocked_system.expect_env().returning(|| HashMap::new()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `HashMap::new` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/commands/deploy.rs:552:46 [INFO] [stdout] | [INFO] [stdout] 552 | mocked_system.expect_env().returning(|| HashMap::new()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `HashMap::new` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/commands/deploy.rs:617:46 [INFO] [stdout] | [INFO] [stdout] 617 | mocked_system.expect_env().returning(|| HashMap::new()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `HashMap::new` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `&Box`. Consider using just `&T` [INFO] [stdout] --> src/commands/handler.rs:18:52 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn get_cmd(&self, cmd_str: &str) -> Result<&Box, BError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: try: `&dyn BCommand` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#borrowed_box [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this assertion is always `false` [INFO] [stdout] --> src/commands/handler.rs:53:17 [INFO] [stdout] | [INFO] [stdout] 53 | assert!(false, "Expected OK result, but got an error '{}'", err_msg); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: replace this with `panic!()` or `unreachable!()` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assertions_on_constants [INFO] [stdout] = note: `#[warn(clippy::assertions_on_constants)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this assertion is always `false` [INFO] [stdout] --> src/commands/handler.rs:68:17 [INFO] [stdout] | [INFO] [stdout] 68 | assert!(false, "Expected OK result, but got an error '{}'", err); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: replace this with `panic!()` or `unreachable!()` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assertions_on_constants [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this assertion is always `false` [INFO] [stdout] --> src/commands/handler.rs:83:17 [INFO] [stdout] | [INFO] [stdout] 83 | assert!(false, "Expected OK result, but got an error '{}'", err); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: replace this with `panic!()` or `unreachable!()` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assertions_on_constants [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this assertion is always `false` [INFO] [stdout] --> src/commands/handler.rs:98:17 [INFO] [stdout] | [INFO] [stdout] 98 | assert!(false, "Expected OK result, but got an error '{}'", err); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: replace this with `panic!()` or `unreachable!()` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assertions_on_constants [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this assertion is always `false` [INFO] [stdout] --> src/commands/handler.rs:113:17 [INFO] [stdout] | [INFO] [stdout] 113 | assert!(false, "Expected OK result, but got an error '{}'", err); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: replace this with `panic!()` or `unreachable!()` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assertions_on_constants [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this assertion is always `false` [INFO] [stdout] --> src/commands/handler.rs:128:17 [INFO] [stdout] | [INFO] [stdout] 128 | assert!(false, "Expected OK result, but got an error '{}'", err); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: replace this with `panic!()` or `unreachable!()` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assertions_on_constants [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this assertion is always `false` [INFO] [stdout] --> src/commands/handler.rs:143:17 [INFO] [stdout] | [INFO] [stdout] 143 | assert!(false, "Expected OK result, but got an error '{}'", err); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: replace this with `panic!()` or `unreachable!()` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assertions_on_constants [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this assertion is always `false` [INFO] [stdout] --> src/commands/handler.rs:158:17 [INFO] [stdout] | [INFO] [stdout] 158 | assert!(false, "Expected OK result, but got an error '{}'", err); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: replace this with `panic!()` or `unreachable!()` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assertions_on_constants [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this assertion is always `false` [INFO] [stdout] --> src/commands/handler.rs:170:17 [INFO] [stdout] | [INFO] [stdout] 170 | / assert!( [INFO] [stdout] 171 | | false, [INFO] [stdout] 172 | | "Expected an error, but got an command '{}'", [INFO] [stdout] 173 | | command.cmd_str() [INFO] [stdout] 174 | | ); [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: replace this with `panic!()` or `unreachable!()` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assertions_on_constants [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/commands/list.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 27 | return String::from("default"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 27 - return String::from("default"); [INFO] [stdout] 27 + String::from("default") [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/commands/list.rs:160:17 [INFO] [stdout] | [INFO] [stdout] 160 | / return var [INFO] [stdout] 161 | | .into_string() [INFO] [stdout] 162 | | .or::(Ok(String::from(""))) [INFO] [stdout] 163 | | .unwrap(); [INFO] [stdout] | |_____________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 160 ~ var [INFO] [stdout] 161 + .into_string() [INFO] [stdout] 162 + .or::(Ok(String::from(""))) [INFO] [stdout] 163 ~ .unwrap() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/commands/list.rs:166:17 [INFO] [stdout] | [INFO] [stdout] 166 | return String::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 166 - return String::new(); [INFO] [stdout] 166 + String::new() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: found `.or(Ok(…)).unwrap()` [INFO] [stdout] --> src/commands/list.rs:162:22 [INFO] [stdout] | [INFO] [stdout] 162 | .or::(Ok(String::from(""))) [INFO] [stdout] | ______________________^ [INFO] [stdout] 163 | | .unwrap(); [INFO] [stdout] | |_____________________________^ help: try: `unwrap_or(String::from(""))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_then_unwrap [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/commands/setup.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 26 | return String::from("default"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 26 - return String::from("default"); [INFO] [stdout] 26 + String::from("default") [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `to_string` applied to a type that implements `Display` in `format!` args [INFO] [stdout] --> src/commands/setup.rs:68:26 [INFO] [stdout] | [INFO] [stdout] 68 | e.to_string() [INFO] [stdout] | ^^^^^^^^^^^^ help: remove this [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#to_string_in_format_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/commands/setup.rs:87:22 [INFO] [stdout] | [INFO] [stdout] 87 | if branch != String::from("NA") { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: try: `"NA"` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/commands/setup.rs:254:46 [INFO] [stdout] | [INFO] [stdout] 254 | mocked_system.expect_env().returning(|| HashMap::new()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `HashMap::new` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/commands/setup.rs:330:46 [INFO] [stdout] | [INFO] [stdout] 330 | mocked_system.expect_env().returning(|| HashMap::new()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `HashMap::new` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/commands/setup.rs:408:46 [INFO] [stdout] | [INFO] [stdout] 408 | mocked_system.expect_env().returning(|| HashMap::new()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `HashMap::new` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/commands/setup.rs:506:46 [INFO] [stdout] | [INFO] [stdout] 506 | mocked_system.expect_env().returning(|| HashMap::new()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `HashMap::new` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/commands/shell.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | return String::from("default"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 29 - return String::from("default"); [INFO] [stdout] 29 + String::from("default") [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `to_string` applied to a type that implements `Display` in `format!` args [INFO] [stdout] --> src/commands/shell.rs:110:65 [INFO] [stdout] | [INFO] [stdout] 110 | cli.debug(format!("bootstrap error: {}", err.to_string())); [INFO] [stdout] | ^^^^^^^^^^^^ help: remove this [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#to_string_in_format_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `to_string` applied to a type that implements `Display` in `format!` args [INFO] [stdout] --> src/commands/shell.rs:123:61 [INFO] [stdout] | [INFO] [stdout] 123 | cli.debug(format!("bootstrap error: {}", err.to_string())); [INFO] [stdout] | ^^^^^^^^^^^^ help: remove this [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#to_string_in_format_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `to_string` applied to a type that implements `Display` in `format!` args [INFO] [stdout] --> src/commands/shell.rs:157:57 [INFO] [stdout] | [INFO] [stdout] 157 | cli.debug(format!("shell error: {}", err.to_string())); [INFO] [stdout] | ^^^^^^^^^^^^ help: remove this [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#to_string_in_format_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/commands/shell.rs:359:55 [INFO] [stdout] | [INFO] [stdout] 359 | let image: DockerImage = DockerImage::new(&docker)?; [INFO] [stdout] | ^^^^^^^ help: change this to: `docker` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/commands/shell.rs:389:55 [INFO] [stdout] | [INFO] [stdout] 389 | let image: DockerImage = DockerImage::new(&docker)?; [INFO] [stdout] | ^^^^^^^ help: change this to: `docker` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/commands/shell.rs:408:55 [INFO] [stdout] | [INFO] [stdout] 408 | let image: DockerImage = DockerImage::new(&docker)?; [INFO] [stdout] | ^^^^^^^ help: change this to: `docker` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/commands/sync.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 26 | return String::from("default"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 26 - return String::from("default"); [INFO] [stdout] 26 + String::from("default") [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/commands/sync.rs:63:22 [INFO] [stdout] | [INFO] [stdout] 63 | if branch != String::from("NA") { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: try: `"NA"` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/commands/sync.rs:234:46 [INFO] [stdout] | [INFO] [stdout] 234 | mocked_system.expect_env().returning(|| HashMap::new()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `HashMap::new` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/commands/sync.rs:306:46 [INFO] [stdout] | [INFO] [stdout] 306 | mocked_system.expect_env().returning(|| HashMap::new()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `HashMap::new` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/commands/sync.rs:378:46 [INFO] [stdout] | [INFO] [stdout] 378 | mocked_system.expect_env().returning(|| HashMap::new()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `HashMap::new` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/commands/sync.rs:476:46 [INFO] [stdout] | [INFO] [stdout] 476 | mocked_system.expect_env().returning(|| HashMap::new()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `HashMap::new` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/commands/upload.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 27 | return String::from("default"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 27 - return String::from("default"); [INFO] [stdout] 27 + String::from("default") [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/commands/upload.rs:221:46 [INFO] [stdout] | [INFO] [stdout] 221 | mocked_system.expect_env().returning(|| HashMap::new()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `HashMap::new` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/commands/upload.rs:225:13 [INFO] [stdout] | [INFO] [stdout] 225 | &work_dir, [INFO] [stdout] | ^^^^^^^^^ help: change this to: `work_dir` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/commands/upload.rs:284:46 [INFO] [stdout] | [INFO] [stdout] 284 | mocked_system.expect_env().returning(|| HashMap::new()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `HashMap::new` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/commands/upload.rs:288:13 [INFO] [stdout] | [INFO] [stdout] 288 | &work_dir, [INFO] [stdout] | ^^^^^^^^^ help: change this to: `work_dir` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/commands/upload.rs:372:46 [INFO] [stdout] | [INFO] [stdout] 372 | mocked_system.expect_env().returning(|| HashMap::new()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `HashMap::new` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/commands/mod.rs:44:9 [INFO] [stdout] | [INFO] [stdout] 44 | return docker.pull(cli); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 44 - return docker.pull(cli); [INFO] [stdout] 44 + docker.pull(cli) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/commands/mod.rs:67:9 [INFO] [stdout] | [INFO] [stdout] 67 | / return docker.bootstrap_bakery( [INFO] [stdout] 68 | | cmd_line, [INFO] [stdout] 69 | | cli, [INFO] [stdout] 70 | | &workspace.settings().docker_top_dir(), [INFO] [stdout] ... | [INFO] [stdout] 74 | | &env, [INFO] [stdout] 75 | | ); [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 67 ~ docker.bootstrap_bakery( [INFO] [stdout] 68 + cmd_line, [INFO] [stdout] 69 + cli, [INFO] [stdout] 70 + &workspace.settings().docker_top_dir(), [INFO] [stdout] 71 + &workspace.settings().work_dir(), [INFO] [stdout] 72 + workspace.settings().docker_args(), [INFO] [stdout] 73 + volumes, [INFO] [stdout] 74 + &env, [INFO] [stdout] 75 ~ ) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/commands/mod.rs:90:9 [INFO] [stdout] | [INFO] [stdout] 90 | return Err(BError::CliError(format!("Failed to read arg {}", id))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 90 - return Err(BError::CliError(format!("Failed to read arg {}", id))); [INFO] [stdout] 90 + Err(BError::CliError(format!("Failed to read arg {}", id))) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/commands/mod.rs:101:9 [INFO] [stdout] | [INFO] [stdout] 101 | return Err(BError::CliError(format!("Failed to read arg {}", id))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 101 - return Err(BError::CliError(format!("Failed to read arg {}", id))); [INFO] [stdout] 101 + Err(BError::CliError(format!("Failed to read arg {}", id))) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/commands/mod.rs:111:9 [INFO] [stdout] | [INFO] [stdout] 111 | return Err(BError::CliError(format!("Failed to read arg {}", id))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 111 - return Err(BError::CliError(format!("Failed to read arg {}", id))); [INFO] [stdout] 111 + Err(BError::CliError(format!("Failed to read arg {}", id))) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/commands/mod.rs:133:9 [INFO] [stdout] | [INFO] [stdout] 133 | return Err(BError::CliError(format!("Failed to read arg {}", id))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 133 - return Err(BError::CliError(format!("Failed to read arg {}", id))); [INFO] [stdout] 133 + Err(BError::CliError(format!("Failed to read arg {}", id))) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `to_string` applied to a type that implements `Display` in `format!` args [INFO] [stdout] --> src/configs/context.rs:73:54 [INFO] [stdout] | [INFO] [stdout] 73 | return format!("$#[_EMPTY_{}_]", replaced.to_string()); [INFO] [stdout] | ^^^^^^^^^^^^ help: remove this [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#to_string_in_format_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/configs/context.rs:127:34 [INFO] [stdout] | [INFO] [stdout] 127 | pub fn expand_path(&self, p: &PathBuf) -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 127 - pub fn expand_path(&self, p: &PathBuf) -> Result { [INFO] [stdout] 127 + pub fn expand_path(&self, p: &Path) -> Result { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this assertion is always `false` [INFO] [stdout] --> src/configs/context.rs:319:17 [INFO] [stdout] | [INFO] [stdout] 319 | / assert!( [INFO] [stdout] 320 | | false, [INFO] [stdout] 321 | | "Expected an error, but got an path '{}'", [INFO] [stdout] 322 | | path.display() [INFO] [stdout] 323 | | ); [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: replace this with `panic!()` or `unreachable!()` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assertions_on_constants [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/configs/handler.rs:29:26 [INFO] [stdout] | [INFO] [stdout] 29 | pub fn new(work_dir: &PathBuf, home_dir: &PathBuf) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 29 ~ pub fn new(work_dir: &Path, home_dir: &PathBuf) -> Self { [INFO] [stdout] 30 | let bkry_home_cfg_dir: PathBuf = home_dir.clone().join(".bakery"); [INFO] [stdout] 31 | let bkry_cfg_dir: PathBuf = PathBuf::from(BkryConstants::CFG_DIR); [INFO] [stdout] 32 | WsConfigFileHandler { [INFO] [stdout] 33 ~ work_dir: work_dir.to_path_buf(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/configs/handler.rs:29:46 [INFO] [stdout] | [INFO] [stdout] 29 | pub fn new(work_dir: &PathBuf, home_dir: &PathBuf) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 29 ~ pub fn new(work_dir: &PathBuf, home_dir: &Path) -> Self { [INFO] [stdout] 30 ~ let bkry_home_cfg_dir: PathBuf = home_dir.to_path_buf().join(".bakery"); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/configs/handler.rs:64:9 [INFO] [stdout] | [INFO] [stdout] 64 | return WsSettingsHandler::from_str(&self.work_dir, default_settings, None); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 64 - return WsSettingsHandler::from_str(&self.work_dir, default_settings, None); [INFO] [stdout] 64 + WsSettingsHandler::from_str(&self.work_dir, default_settings, None) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/configs/handler.rs:142:9 [INFO] [stdout] | [INFO] [stdout] 142 | return Ok(main_config); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 142 - return Ok(main_config); [INFO] [stdout] 142 + Ok(main_config) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/configs/handler.rs:111:63 [INFO] [stdout] | [INFO] [stdout] 111 | let build_config_json: String = ConfigFileReader::new(&path).read_json()?; [INFO] [stdout] | ^^^^^ help: change this to: `path` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/configs/handler.rs:180:9 [INFO] [stdout] | [INFO] [stdout] 180 | / return Err(BError::ValueError(format!( [INFO] [stdout] 181 | | "No such build config: '{}' does not exist!", [INFO] [stdout] 182 | | build_config.clone().display() [INFO] [stdout] 183 | | ))); [INFO] [stdout] | |___________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 180 ~ Err(BError::ValueError(format!( [INFO] [stdout] 181 + "No such build config: '{}' does not exist!", [INFO] [stdout] 182 + build_config.clone().display() [INFO] [stdout] 183 ~ ))) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/configs/handler.rs:169:50 [INFO] [stdout] | [INFO] [stdout] 169 | if build_config.display().to_string() == "NA.json".to_string() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `"NA.json"` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/configs/handler.rs:177:51 [INFO] [stdout] | [INFO] [stdout] 177 | return WsBuildConfigHandler::from_str(&dummy_config_json, settings); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: change this to: `dummy_config_json` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::path::PathBuf` [INFO] [stdout] --> src/configs/handler.rs:218:13 [INFO] [stdout] | [INFO] [stdout] 218 | PathBuf::from(work_dir.clone()).display(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `PathBuf::from()`: `work_dir.clone()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/configs/settings.rs:51:9 [INFO] [stdout] | [INFO] [stdout] 51 | let supported: Vec; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] help: move the declaration `supported` here and remove the assignments from the `match` arms [INFO] [stdout] | [INFO] [stdout] 51 ~ [INFO] [stdout] 52 | let mut docker_image: String = String::from(BkryConstants::DOCKER_IMAGE); [INFO] [stdout] ... [INFO] [stdout] 83 | [INFO] [stdout] 84 ~ let supported: Vec = match Self::get_value("builds", &data) { [INFO] [stdout] 85 | Ok(build_data) => { [INFO] [stdout] 86 ~ Self::get_array_value("supported", build_data, Some(vec![]))? [INFO] [stdout] 87 | } [INFO] [stdout] 88 | Err(_err) => { [INFO] [stdout] 89 ~ vec![] [INFO] [stdout] 90 | } [INFO] [stdout] 91 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the variable `i` is used as a loop counter [INFO] [stdout] --> src/configs/settings.rs:549:9 [INFO] [stdout] | [INFO] [stdout] 549 | for supported in &settings.supported { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `for (i, supported) in (1_i32..).zip(settings.supported.iter())` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_counter_loop [INFO] [stdout] = note: `#[warn(clippy::explicit_counter_loop)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/configs/settings.rs:564:9 [INFO] [stdout] | [INFO] [stdout] 564 | assert_eq!(settings.supported.is_empty(), true); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] = note: `#[warn(clippy::bool_assert_comparison)]` on by default [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 564 - assert_eq!(settings.supported.is_empty(), true); [INFO] [stdout] 564 + assert!(settings.supported.is_empty()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/configs/settings.rs:574:9 [INFO] [stdout] | [INFO] [stdout] 574 | assert_eq!(settings.supported.is_empty(), true); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 574 - assert_eq!(settings.supported.is_empty(), true); [INFO] [stdout] 574 + assert!(settings.supported.is_empty()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/configs/mod.rs:23:17 [INFO] [stdout] | [INFO] [stdout] 23 | / return Err(BError::ParseError(format!( [INFO] [stdout] 24 | | "Failed to parse manifest. Error when reading object '{}'", [INFO] [stdout] 25 | | name [INFO] [stdout] 26 | | ))); [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 23 ~ Err(BError::ParseError(format!( [INFO] [stdout] 24 + "Failed to parse manifest. Error when reading object '{}'", [INFO] [stdout] 25 + name [INFO] [stdout] 26 ~ ))) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/configs/mod.rs:42:17 [INFO] [stdout] | [INFO] [stdout] 42 | return Ok(value.to_string()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 42 - return Ok(value.to_string()); [INFO] [stdout] 42 + Ok(value.to_string()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/configs/mod.rs:82:21 [INFO] [stdout] | [INFO] [stdout] 82 | / return Ok(array_value [INFO] [stdout] 83 | | .as_array() [INFO] [stdout] 84 | | .unwrap() [INFO] [stdout] 85 | | .iter() [INFO] [stdout] 86 | | .filter_map(|v| v.as_str()) [INFO] [stdout] 87 | | .map(|s| s.to_owned()) [INFO] [stdout] 88 | | .collect()); [INFO] [stdout] | |___________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 82 ~ Ok(array_value [INFO] [stdout] 83 + .as_array() [INFO] [stdout] 84 + .unwrap() [INFO] [stdout] 85 + .iter() [INFO] [stdout] 86 + .filter_map(|v| v.as_str()) [INFO] [stdout] 87 + .map(|s| s.to_owned()) [INFO] [stdout] 88 ~ .collect()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/configs/mod.rs:90:21 [INFO] [stdout] | [INFO] [stdout] 90 | / return Err(BError::ParseError(format!( [INFO] [stdout] 91 | | "Failed to read array '{}'", [INFO] [stdout] 92 | | name [INFO] [stdout] 93 | | ))); [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 90 ~ Err(BError::ParseError(format!( [INFO] [stdout] 91 + "Failed to read array '{}'", [INFO] [stdout] 92 + name [INFO] [stdout] 93 ~ ))) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/configs/mod.rs:126:21 [INFO] [stdout] | [INFO] [stdout] 126 | / return Err(BError::ParseError(format!( [INFO] [stdout] 127 | | "Failed to parse hashmap. Error when reading object '{}'", [INFO] [stdout] 128 | | name [INFO] [stdout] 129 | | ))); [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 126 ~ Err(BError::ParseError(format!( [INFO] [stdout] 127 + "Failed to parse hashmap. Error when reading object '{}'", [INFO] [stdout] 128 + name [INFO] [stdout] 129 ~ ))) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/configs/mod.rs:133:17 [INFO] [stdout] | [INFO] [stdout] 133 | return Ok(IndexMap::new()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 133 - return Ok(IndexMap::new()); [INFO] [stdout] 133 + Ok(IndexMap::new()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/artifact.rs:41:57 [INFO] [stdout] | [INFO] [stdout] 41 | let ttype: String = Self::get_str_value("type", &data, Some(String::from("file")))?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/artifact.rs:42:56 [INFO] [stdout] | [INFO] [stdout] 42 | let name: String = Self::get_str_value("name", &data, Some(String::from("")))?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/artifact.rs:43:60 [INFO] [stdout] | [INFO] [stdout] 43 | let source: String = Self::get_str_value("source", &data, Some(String::from("")))?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/artifact.rs:44:56 [INFO] [stdout] | [INFO] [stdout] 44 | let dest: String = Self::get_str_value("dest", &data, Some(String::from("")))?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/artifact.rs:45:66 [INFO] [stdout] | [INFO] [stdout] 45 | let manifest: String = Self::get_str_manifest("content", &data, Some(String::from("{}")))?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/artifact.rs:46:66 [INFO] [stdout] | [INFO] [stdout] 46 | let condition: String = Self::get_str_value("condition", &data, Some(String::from("")))?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/data/artifact.rs:61:52 [INFO] [stdout] | [INFO] [stdout] 61 | return Err(BError::ParseArtifactsError(format!( [INFO] [stdout] | ____________________________________________________^ [INFO] [stdout] 62 | | "The 'file' type requires a 'source'" [INFO] [stdout] 63 | | ))); [INFO] [stdout] | |_____________^ help: consider using `.to_string()`: `"The 'file' type requires a 'source'".to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/data/artifact.rs:66:52 [INFO] [stdout] | [INFO] [stdout] 66 | return Err(BError::ParseArtifactsError(format!( [INFO] [stdout] | ____________________________________________________^ [INFO] [stdout] 67 | | "The 'directory' type requires a 'name'" [INFO] [stdout] 68 | | ))); [INFO] [stdout] | |_____________^ help: consider using `.to_string()`: `"The 'directory' type requires a 'name'".to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/data/artifact.rs:71:52 [INFO] [stdout] | [INFO] [stdout] 71 | return Err(BError::ParseArtifactsError(format!( [INFO] [stdout] | ____________________________________________________^ [INFO] [stdout] 72 | | "The 'archive' type requires a 'name'" [INFO] [stdout] 73 | | ))); [INFO] [stdout] | |_____________^ help: consider using `.to_string()`: `"The 'archive' type requires a 'name'".to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/data/artifact.rs:76:52 [INFO] [stdout] | [INFO] [stdout] 76 | return Err(BError::ParseArtifactsError(format!( [INFO] [stdout] | ____________________________________________________^ [INFO] [stdout] 77 | | "The 'manifest' type requires a 'name'" [INFO] [stdout] 78 | | ))); [INFO] [stdout] | |_____________^ help: consider using `.to_string()`: `"The 'manifest' type requires a 'name'".to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/data/artifact.rs:81:52 [INFO] [stdout] | [INFO] [stdout] 81 | return Err(BError::ParseArtifactsError(format!( [INFO] [stdout] | ____________________________________________________^ [INFO] [stdout] 82 | | "The 'link' type requires a 'name' and 'source'" [INFO] [stdout] 83 | | ))); [INFO] [stdout] | |_____________^ help: consider using `.to_string()`: `"The 'link' type requires a 'name' and 'source'".to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/data/artifact.rs:86:52 [INFO] [stdout] | [INFO] [stdout] 86 | return Err(BError::ParseArtifactsError(format!( [INFO] [stdout] | ____________________________________________________^ [INFO] [stdout] 87 | | "The 'conditional' type requires a 'condition'" [INFO] [stdout] 88 | | ))); [INFO] [stdout] | |_____________^ help: consider using `.to_string()`: `"The 'conditional' type requires a 'condition'".to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/data/artifact.rs:91:9 [INFO] [stdout] | [INFO] [stdout] 91 | let enum_ttype: AType; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] help: move the declaration `enum_ttype` here and remove the assignments from the `match` arms [INFO] [stdout] | [INFO] [stdout] 91 ~ [INFO] [stdout] 92 ~ let enum_ttype: AType = match ttype.as_str() { [INFO] [stdout] 93 | "file" => { [INFO] [stdout] 94 ~ AType::File [INFO] [stdout] 95 | } [INFO] [stdout] 96 | "directory" => { [INFO] [stdout] 97 ~ AType::Directory [INFO] [stdout] 98 | } [INFO] [stdout] 99 | "archive" => { [INFO] [stdout] 100 ~ AType::Archive [INFO] [stdout] 101 | } [INFO] [stdout] 102 | "manifest" => { [INFO] [stdout] 103 ~ AType::Manifest [INFO] [stdout] 104 | } [INFO] [stdout] 105 | "link" => { [INFO] [stdout] 106 ~ AType::Link [INFO] [stdout] 107 | } [INFO] [stdout] 108 | "conditional" => { [INFO] [stdout] 109 ~ AType::Conditional [INFO] [stdout] 110 | } [INFO] [stdout] ... [INFO] [stdout] 116 | } [INFO] [stdout] 117 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data/artifact.rs:188:83 [INFO] [stdout] | [INFO] [stdout] 188 | "1" | "yes" | "y" | "Y" | "true" | "YES" | "TRUE" | "True" | "Yes" => return true, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 188 - "1" | "yes" | "y" | "Y" | "true" | "YES" | "TRUE" | "True" | "Yes" => return true, [INFO] [stdout] 188 + "1" | "yes" | "y" | "Y" | "true" | "YES" | "TRUE" | "True" | "Yes" => true, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> src/data/bitbake.rs:33:9 [INFO] [stdout] | [INFO] [stdout] 33 | / match data.get("bb") { [INFO] [stdout] 34 | | Some(value) => { [INFO] [stdout] 35 | | bb_data = value; [INFO] [stdout] ... | [INFO] [stdout] 38 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] = note: `#[warn(clippy::single_match)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 33 ~ if let Some(value) = data.get("bb") { [INFO] [stdout] 34 + bb_data = value; [INFO] [stdout] 35 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/data/bitbake.rs:77:52 [INFO] [stdout] | [INFO] [stdout] 77 | pub fn expand_conf(&self, ctx: &Context, conf: &Vec) -> Result, BError> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 77 ~ pub fn expand_conf(&self, ctx: &Context, conf: &[String]) -> Result, BError> { [INFO] [stdout] 78 | let mut config: Vec = Vec::new(); [INFO] [stdout] 79 ~ for line in conf.to_owned() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implementation of inherent method `to_string(&self) -> String` for type `data::bitbake::WsBitbakeData` [INFO] [stdout] --> src/data/bitbake.rs:126:5 [INFO] [stdout] | [INFO] [stdout] 126 | / pub fn to_string(&self) -> String { [INFO] [stdout] 127 | | let bb_str: String = format!("\"bb\": {}", self.data.to_string()); [INFO] [stdout] 128 | | bb_str.clone() [INFO] [stdout] 129 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: implement trait `Display` for type `data::bitbake::WsBitbakeData` instead [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#inherent_to_string [INFO] [stdout] = note: `#[warn(clippy::inherent_to_string)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `to_string` applied to a type that implements `Display` in `format!` args [INFO] [stdout] --> src/data/bitbake.rs:127:61 [INFO] [stdout] | [INFO] [stdout] 127 | let bb_str: String = format!("\"bb\": {}", self.data.to_string()); [INFO] [stdout] | ^^^^^^^^^^^^ help: remove this [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#to_string_in_format_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary use of `to_string` [INFO] [stdout] --> src/data/bitbake.rs:151:31 [INFO] [stdout] | [INFO] [stdout] 151 | self.build_dir().join("conf".to_string()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: use: `"conf"` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_to_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary use of `to_string` [INFO] [stdout] --> src/data/bitbake.rs:155:38 [INFO] [stdout] | [INFO] [stdout] 155 | self.build_config_dir().join("local.conf".to_string()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `"local.conf"` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_to_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary use of `to_string` [INFO] [stdout] --> src/data/bitbake.rs:172:19 [INFO] [stdout] | [INFO] [stdout] 172 | .join("sstate-cache".to_string()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `"sstate-cache"` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_to_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary use of `to_string` [INFO] [stdout] --> src/data/bitbake.rs:179:19 [INFO] [stdout] | [INFO] [stdout] 179 | .join("download".to_string()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: use: `"download"` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_to_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/config.rs:21:62 [INFO] [stdout] | [INFO] [stdout] 21 | let version: String = Self::get_str_value("version", &data, None)?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/config.rs:24:56 [INFO] [stdout] | [INFO] [stdout] 24 | let name: String = Self::get_str_value("name", &data, Some(String::from("NA")))?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data/context.rs:73:17 [INFO] [stdout] | [INFO] [stdout] 73 | / return var [INFO] [stdout] 74 | | .into_string() [INFO] [stdout] 75 | | .or::(Ok(String::from(""))) [INFO] [stdout] 76 | | .unwrap(); [INFO] [stdout] | |_____________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 73 ~ var [INFO] [stdout] 74 + .into_string() [INFO] [stdout] 75 + .or::(Ok(String::from(""))) [INFO] [stdout] 76 ~ .unwrap() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data/context.rs:79:17 [INFO] [stdout] | [INFO] [stdout] 79 | return String::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 79 - return String::new(); [INFO] [stdout] 79 + String::new() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: found `.or(Ok(…)).unwrap()` [INFO] [stdout] --> src/data/context.rs:75:22 [INFO] [stdout] | [INFO] [stdout] 75 | .or::(Ok(String::from(""))) [INFO] [stdout] | ______________________^ [INFO] [stdout] 76 | | .unwrap(); [INFO] [stdout] | |_____________________________^ help: try: `unwrap_or(String::from(""))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_then_unwrap [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/context.rs:132:86 [INFO] [stdout] | [INFO] [stdout] 132 | let variables: IndexMap = Self::get_hashmap_value("context", &data)?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/context.rs:189:20 [INFO] [stdout] | [INFO] [stdout] 189 | ctx.update(&variables); [INFO] [stdout] | ^^^^^^^^^^ help: change this to: `variables` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/data/context.rs:211:13 [INFO] [stdout] | [INFO] [stdout] 211 | / if !value.is_empty() { [INFO] [stdout] 212 | | if value.to_lowercase() != "na" || self.context.value(key).is_empty() { [INFO] [stdout] 213 | | //println!("Update: {}={}", key, value); [INFO] [stdout] 214 | | v.insert(key.to_owned(), value.to_owned()); [INFO] [stdout] 215 | | } [INFO] [stdout] 216 | | } [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] = note: `#[warn(clippy::collapsible_if)]` on by default [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 211 ~ if !value.is_empty() [INFO] [stdout] 212 ~ && (value.to_lowercase() != "na" || self.context.value(key).is_empty()) { [INFO] [stdout] 213 | //println!("Update: {}={}", key, value); [INFO] [stdout] 214 | v.insert(key.to_owned(), value.to_owned()); [INFO] [stdout] 215 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> src/data/customsubcmd.rs:23:9 [INFO] [stdout] | [INFO] [stdout] 23 | / match task_data.get(name) { [INFO] [stdout] 24 | | Some(value) => { [INFO] [stdout] 25 | | task_data = value; [INFO] [stdout] ... | [INFO] [stdout] 28 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 23 ~ if let Some(value) = task_data.get(name) { [INFO] [stdout] 24 + task_data = value; [INFO] [stdout] 25 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module has the same name as its containing module [INFO] [stdout] --> src/data/mod.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | pub mod data; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/data.rs:27:34 [INFO] [stdout] | [INFO] [stdout] 27 | WsTaskHandler::new(data, &self) [INFO] [stdout] | ^^^^^ help: change this to: `self` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/data.rs:35:55 [INFO] [stdout] | [INFO] [stdout] 35 | WsArtifactsHandler::new(data, task_build_dir, &self) [INFO] [stdout] | ^^^^^ help: change this to: `self` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::path::PathBuf` [INFO] [stdout] --> src/data/data.rs:94:19 [INFO] [stdout] | [INFO] [stdout] 94 | .join(PathBuf::from(bitbake.deploy_dir().clone())); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `PathBuf::from()`: `bitbake.deploy_dir().clone()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data/data.rs:129:21 [INFO] [stdout] | [INFO] [stdout] 129 | / return Err(BError::ParseArtifactsError( [INFO] [stdout] 130 | | "Invalid 'artifacts' node in build config".to_string(), [INFO] [stdout] 131 | | )); [INFO] [stdout] | |______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 129 ~ Err(BError::ParseArtifactsError( [INFO] [stdout] 130 + "Invalid 'artifacts' node in build config".to_string(), [INFO] [stdout] 131 ~ )) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data/data.rs:133:21 [INFO] [stdout] | [INFO] [stdout] 133 | / return Err(BError::ParseArtifactsError( [INFO] [stdout] 134 | | "No 'artifacts' array node found in build config".to_string(), [INFO] [stdout] 135 | | )); [INFO] [stdout] | |______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 133 ~ Err(BError::ParseArtifactsError( [INFO] [stdout] 134 + "No 'artifacts' array node found in build config".to_string(), [INFO] [stdout] 135 ~ )) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data/data.rs:139:17 [INFO] [stdout] | [INFO] [stdout] 139 | return Ok(Vec::new()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 139 - return Ok(Vec::new()); [INFO] [stdout] 139 + Ok(Vec::new()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data/data.rs:177:21 [INFO] [stdout] | [INFO] [stdout] 177 | / return Err(BError::ParseTasksError( [INFO] [stdout] 178 | | "Invalid 'task' format in build config".to_string(), [INFO] [stdout] 179 | | )); [INFO] [stdout] | |______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 177 ~ Err(BError::ParseTasksError( [INFO] [stdout] 178 + "Invalid 'task' format in build config".to_string(), [INFO] [stdout] 179 ~ )) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data/data.rs:181:21 [INFO] [stdout] | [INFO] [stdout] 181 | / return Err(BError::ParseTasksError( [INFO] [stdout] 182 | | "No 'tasks' node found in build config".to_string(), [INFO] [stdout] 183 | | )); [INFO] [stdout] | |______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 181 ~ Err(BError::ParseTasksError( [INFO] [stdout] 182 + "No 'tasks' node found in build config".to_string(), [INFO] [stdout] 183 ~ )) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data/data.rs:187:17 [INFO] [stdout] | [INFO] [stdout] 187 | return Ok(IndexMap::new()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 187 - return Ok(IndexMap::new()); [INFO] [stdout] 187 + Ok(IndexMap::new()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data/data.rs:220:9 [INFO] [stdout] | [INFO] [stdout] 220 | / return self.config.version() != "NA" [INFO] [stdout] 221 | | && self.product().name() != "NA" [INFO] [stdout] 222 | | && self.product().description() != "NA"; [INFO] [stdout] | |___________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 220 ~ self.config.version() != "NA" [INFO] [stdout] 221 + && self.product().name() != "NA" [INFO] [stdout] 222 ~ && self.product().description() != "NA" [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `to_string` applied to a type that implements `Display` in `assert_eq!` args [INFO] [stdout] --> src/data/data.rs:578:64 [INFO] [stdout] | [INFO] [stdout] 578 | chrono::offset::Local::now().format("%Y-%m-%d").to_string(), [INFO] [stdout] | ^^^^^^^^^^^^ help: remove this [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#to_string_in_format_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `to_string` applied to a type that implements `Display` in `assert_eq!` args [INFO] [stdout] --> src/data/data.rs:579:61 [INFO] [stdout] | [INFO] [stdout] 579 | chrono::offset::Local::now().format("%H:%M").to_string() [INFO] [stdout] | ^^^^^^^^^^^^ help: remove this [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#to_string_in_format_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/product.rs:25:56 [INFO] [stdout] | [INFO] [stdout] 25 | let name: String = Self::get_str_value("name", &data, Some(String::from("NA")))?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/product.rs:26:62 [INFO] [stdout] | [INFO] [stdout] 26 | let project: String = Self::get_str_value("project", &data, Some(name.clone()))?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/product.rs:27:62 [INFO] [stdout] | [INFO] [stdout] 27 | let product: String = Self::get_str_value("product", &data, Some(name.clone()))?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/product.rs:29:48 [INFO] [stdout] | [INFO] [stdout] 29 | Self::get_str_value("description", &data, Some(String::from("NA")))?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/product.rs:30:56 [INFO] [stdout] | [INFO] [stdout] 30 | let arch: String = Self::get_str_value("arch", &data, Some(String::from("NA")))?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implementation of inherent method `to_string(&self) -> String` for type `data::product::WsProductData` [INFO] [stdout] --> src/data/product.rs:61:5 [INFO] [stdout] | [INFO] [stdout] 61 | / pub fn to_string(&self) -> String { [INFO] [stdout] 62 | | let product_str: String = format!( [INFO] [stdout] 63 | | "\"name\": \"{}\",\"arch\": \"{}\", \"description\": \"{}\"", [INFO] [stdout] 64 | | self.name, self.arch, self.description [INFO] [stdout] 65 | | ); [INFO] [stdout] 66 | | product_str.clone() [INFO] [stdout] 67 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: implement trait `Display` for type `data::product::WsProductData` instead [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#inherent_to_string [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/data/task.rs:37:23 [INFO] [stdout] | [INFO] [stdout] 37 | bb_build_dir: &PathBuf, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 37 ~ bb_build_dir: &Path, [INFO] [stdout] 38 | work_dir: &PathBuf, [INFO] [stdout] ... [INFO] [stdout] 41 | if task_build_dir.is_empty() { [INFO] [stdout] 42 ~ return bb_build_dir.to_path_buf(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/data/task.rs:38:19 [INFO] [stdout] | [INFO] [stdout] 38 | work_dir: &PathBuf, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 38 - work_dir: &PathBuf, [INFO] [stdout] 38 + work_dir: &Path, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/data/task.rs:40:9 [INFO] [stdout] | [INFO] [stdout] 40 | / if ttype == TType::Bitbake { [INFO] [stdout] 41 | | if task_build_dir.is_empty() { [INFO] [stdout] 42 | | return bb_build_dir.clone(); [INFO] [stdout] 43 | | } [INFO] [stdout] 44 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 40 ~ if ttype == TType::Bitbake [INFO] [stdout] 41 ~ && task_build_dir.is_empty() { [INFO] [stdout] 42 | return bb_build_dir.clone(); [INFO] [stdout] 43 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/task.rs:63:55 [INFO] [stdout] | [INFO] [stdout] 63 | let index: u32 = Self::get_u32_value("index", &data, None)?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/task.rs:64:56 [INFO] [stdout] | [INFO] [stdout] 64 | let name: String = Self::get_str_value("name", &data, None)?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/task.rs:65:57 [INFO] [stdout] | [INFO] [stdout] 65 | let ttype: String = Self::get_str_value("type", &data, Some(String::from("bitbake")))?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/task.rs:66:64 [INFO] [stdout] | [INFO] [stdout] 66 | let disabled: String = Self::get_str_value("disabled", &data, Some(String::from("false")))?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/task.rs:67:65 [INFO] [stdout] | [INFO] [stdout] 67 | let build_dir: String = Self::get_str_value("builddir", &data, Some(String::from("")))?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/task.rs:70:58 [INFO] [stdout] | [INFO] [stdout] 70 | let build: String = Self::get_str_value("build", &data, Some(String::from("")))?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/task.rs:71:58 [INFO] [stdout] | [INFO] [stdout] 71 | let clean: String = Self::get_str_value("clean", &data, Some(String::from("")))?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/task.rs:73:48 [INFO] [stdout] | [INFO] [stdout] 73 | Self::get_str_value("description", &data, Some(String::from("NA")))?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/task.rs:74:76 [INFO] [stdout] | [INFO] [stdout] 74 | let env: IndexMap = Self::get_hashmap_value("env", &data)?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/data/task.rs:75:69 [INFO] [stdout] | [INFO] [stdout] 75 | let recipes: Vec = Self::get_array_value("recipes", &data, Some(vec![]))?; [INFO] [stdout] | ^^^^^ help: change this to: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/data/task.rs:77:9 [INFO] [stdout] | [INFO] [stdout] 77 | let enum_ttype: TType; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] help: move the declaration `enum_ttype` here and remove the assignments from the `match` arms [INFO] [stdout] | [INFO] [stdout] 77 ~ [INFO] [stdout] 78 ~ let enum_ttype: TType = match ttype.as_str() { [INFO] [stdout] 79 | "bitbake" => { [INFO] [stdout] 80 ~ TType::Bitbake [INFO] [stdout] 81 | } [INFO] [stdout] 82 | "non-bitbake" => { [INFO] [stdout] 83 ~ TType::NonBitbake [INFO] [stdout] 84 | } [INFO] [stdout] ... [INFO] [stdout] 87 | } [INFO] [stdout] 88 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/data/task.rs:95:48 [INFO] [stdout] | [INFO] [stdout] 95 | return Err(BError::ParseTasksError(format!( [INFO] [stdout] | ________________________________________________^ [INFO] [stdout] 96 | | "The 'bitbake' type requires at least one entry in 'recipes'" [INFO] [stdout] 97 | | ))); [INFO] [stdout] | |_____________^ help: consider using `.to_string()`: `"The 'bitbake' type requires at least one entry in 'recipes'".to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data/task.rs:153:9 [INFO] [stdout] | [INFO] [stdout] 153 | return false; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 153 - return false; [INFO] [stdout] 153 + false [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data/task.rs:168:83 [INFO] [stdout] | [INFO] [stdout] 168 | "1" | "yes" | "y" | "Y" | "true" | "YES" | "TRUE" | "True" | "Yes" => return true, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 168 - "1" | "yes" | "y" | "Y" | "true" | "YES" | "TRUE" | "True" | "Yes" => return true, [INFO] [stdout] 168 + "1" | "yes" | "y" | "Y" | "true" | "YES" | "TRUE" | "True" | "Yes" => true, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data/task.rs:169:18 [INFO] [stdout] | [INFO] [stdout] 169 | _ => return false, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 169 - _ => return false, [INFO] [stdout] 169 + _ => false, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/data/task.rs:226:9 [INFO] [stdout] | [INFO] [stdout] 226 | assert_eq!(task.disabled(), false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 226 - assert_eq!(task.disabled(), false); [INFO] [stdout] 226 + assert!(!task.disabled()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/data/task.rs:227:9 [INFO] [stdout] | [INFO] [stdout] 227 | assert_eq!(task.condition(), true); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 227 - assert_eq!(task.condition(), true); [INFO] [stdout] 227 + assert!(task.condition()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/data/task.rs:254:9 [INFO] [stdout] | [INFO] [stdout] 254 | assert_eq!(task.disabled(), false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 254 - assert_eq!(task.disabled(), false); [INFO] [stdout] 254 + assert!(!task.disabled()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/data/task.rs:255:9 [INFO] [stdout] | [INFO] [stdout] 255 | assert_eq!(task.condition(), true); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 255 - assert_eq!(task.condition(), true); [INFO] [stdout] 255 + assert!(task.condition()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/data/task.rs:297:9 [INFO] [stdout] | [INFO] [stdout] 297 | assert_eq!(task.disabled(), false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 297 - assert_eq!(task.disabled(), false); [INFO] [stdout] 297 + assert!(!task.disabled()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/data/task.rs:298:9 [INFO] [stdout] | [INFO] [stdout] 298 | assert_eq!(task.condition(), true); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 298 - assert_eq!(task.condition(), true); [INFO] [stdout] 298 + assert!(task.condition()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the method `run_cmd` doesn't need a mutable reference [INFO] [stdout] --> src/executers/bitbake.rs:113:32 [INFO] [stdout] | [INFO] [stdout] 113 | docker.run_cmd(&mut cmd_line, &env, &exec_dir, &self.cli)?; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] = note: `#[warn(clippy::unnecessary_mut_passed)]` on by default [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 113 - docker.run_cmd(&mut cmd_line, &env, &exec_dir, &self.cli)?; [INFO] [stdout] 113 + docker.run_cmd(&cmd_line, &env, &exec_dir, &self.cli)?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/executers/bitbake.rs:113:64 [INFO] [stdout] | [INFO] [stdout] 113 | docker.run_cmd(&mut cmd_line, &env, &exec_dir, &self.cli)?; [INFO] [stdout] | ^^^^^^^^^ help: change this to: `self.cli` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the method `run_cmd` doesn't need a mutable reference [INFO] [stdout] --> src/executers/bitbake.rs:156:32 [INFO] [stdout] | [INFO] [stdout] 156 | docker.run_cmd(&mut cmd_line, &env, &exec_dir, &self.cli)?; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 156 - docker.run_cmd(&mut cmd_line, &env, &exec_dir, &self.cli)?; [INFO] [stdout] 156 + docker.run_cmd(&cmd_line, &env, &exec_dir, &self.cli)?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/executers/bitbake.rs:156:64 [INFO] [stdout] | [INFO] [stdout] 156 | docker.run_cmd(&mut cmd_line, &env, &exec_dir, &self.cli)?; [INFO] [stdout] | ^^^^^^^^^ help: change this to: `self.cli` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary use of `to_string` [INFO] [stdout] --> src/executers/bitbake.rs:325:21 [INFO] [stdout] | [INFO] [stdout] 325 | &build_dir.to_string_lossy().to_string(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `build_dir.to_string_lossy().as_ref()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_to_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `push_str()` using a single-character string literal [INFO] [stdout] --> src/executers/docker.rs:55:13 [INFO] [stdout] | [INFO] [stdout] 55 | image.push_str("/"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: consider using `push` with a character literal: `image.push('/')` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_add_str [INFO] [stdout] = note: `#[warn(clippy::single_char_add_str)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/executers/docker.rs:74:17 [INFO] [stdout] | [INFO] [stdout] 74 | / return var [INFO] [stdout] 75 | | .into_string() [INFO] [stdout] 76 | | .or::(Ok(String::from(""))) [INFO] [stdout] 77 | | .unwrap(); [INFO] [stdout] | |_____________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 74 ~ var [INFO] [stdout] 75 + .into_string() [INFO] [stdout] 76 + .or::(Ok(String::from(""))) [INFO] [stdout] 77 ~ .unwrap() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/executers/docker.rs:80:17 [INFO] [stdout] | [INFO] [stdout] 80 | return String::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 80 - return String::new(); [INFO] [stdout] 80 + String::new() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: found `.or(Ok(…)).unwrap()` [INFO] [stdout] --> src/executers/docker.rs:76:22 [INFO] [stdout] | [INFO] [stdout] 76 | .or::(Ok(String::from(""))) [INFO] [stdout] | ______________________^ [INFO] [stdout] 77 | | .unwrap(); [INFO] [stdout] | |_____________________________^ help: try: `unwrap_or(String::from(""))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_then_unwrap [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::string::String` [INFO] [stdout] --> src/executers/docker.rs:104:13 [INFO] [stdout] | [INFO] [stdout] 104 | String::from(format!("{}:{}:ro", BkryConstants::BIN, BkryConstants::BIN)), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `String::from()`: `format!("{}:{}:ro", BkryConstants::BIN, BkryConstants::BIN)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::string::String` [INFO] [stdout] --> src/executers/docker.rs:106:13 [INFO] [stdout] | [INFO] [stdout] 106 | / String::from(format!( [INFO] [stdout] 107 | | "{}:{}:ro", [INFO] [stdout] 108 | | BkryConstants::CFG_DIR, [INFO] [stdout] 109 | | BkryConstants::CFG_DIR [INFO] [stdout] 110 | | )), [INFO] [stdout] | |______________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] help: consider removing `String::from()` [INFO] [stdout] | [INFO] [stdout] 106 ~ format!( [INFO] [stdout] 107 + "{}:{}:ro", [INFO] [stdout] 108 + BkryConstants::CFG_DIR, [INFO] [stdout] 109 + BkryConstants::CFG_DIR [INFO] [stdout] 110 ~ ), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::string::String` [INFO] [stdout] --> src/executers/docker.rs:112:13 [INFO] [stdout] | [INFO] [stdout] 112 | / String::from(format!( [INFO] [stdout] 113 | | "{}:{}:ro", [INFO] [stdout] 114 | | BkryConstants::OPT_DIR, [INFO] [stdout] 115 | | BkryConstants::OPT_DIR [INFO] [stdout] 116 | | )), [INFO] [stdout] | |______________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] help: consider removing `String::from()` [INFO] [stdout] | [INFO] [stdout] 112 ~ format!( [INFO] [stdout] 113 + "{}:{}:ro", [INFO] [stdout] 114 + BkryConstants::OPT_DIR, [INFO] [stdout] 115 + BkryConstants::OPT_DIR [INFO] [stdout] 116 ~ ), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/executers/docker.rs:144:29 [INFO] [stdout] | [INFO] [stdout] 144 | fn work_dir(&self, dir: &PathBuf) -> Vec { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 144 - fn work_dir(&self, dir: &PathBuf) -> Vec { [INFO] [stdout] 144 + fn work_dir(&self, dir: &Path) -> Vec { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/executers/docker.rs:163:34 [INFO] [stdout] | [INFO] [stdout] 163 | fn env_file(&self, env_file: &PathBuf) -> Vec { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 163 - fn env_file(&self, env_file: &PathBuf) -> Vec { [INFO] [stdout] 163 + fn env_file(&self, env_file: &Path) -> Vec { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/executers/docker.rs:170:32 [INFO] [stdout] | [INFO] [stdout] 170 | fn volumes(&self, volumes: &Vec) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 170 - fn volumes(&self, volumes: &Vec) -> Vec { [INFO] [stdout] 170 + fn volumes(&self, volumes: &[String]) -> Vec { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/executers/docker.rs:188:28 [INFO] [stdout] | [INFO] [stdout] 188 | fn top_dir(&self, dir: &PathBuf) -> Vec { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 188 - fn top_dir(&self, dir: &PathBuf) -> Vec { [INFO] [stdout] 188 + fn top_dir(&self, dir: &Path) -> Vec { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/executers/docker.rs:215:19 [INFO] [stdout] | [INFO] [stdout] 215 | cmd_line: &Vec, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 215 ~ cmd_line: &[String], [INFO] [stdout] 216 | docker_top_dir: &PathBuf, [INFO] [stdout] ... [INFO] [stdout] 235 | docker_cmd.push(format!("{}", self.image)); [INFO] [stdout] 236 ~ docker_cmd.append(&mut cmd_line.to_owned()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/executers/docker.rs:218:22 [INFO] [stdout] | [INFO] [stdout] 218 | docker_args: &Vec, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 218 ~ docker_args: &[String], [INFO] [stdout] 219 | volumes: &Vec, [INFO] [stdout] ... [INFO] [stdout] 232 | if !docker_args.is_empty() { [INFO] [stdout] 233 ~ docker_cmd.append(&mut docker_args.to_owned()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/executers/docker.rs:242:19 [INFO] [stdout] | [INFO] [stdout] 242 | cmd_line: &Vec, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 242 ~ cmd_line: &[String], [INFO] [stdout] 243 | env_file: &PathBuf, [INFO] [stdout] ... [INFO] [stdout] 257 | docker_cmd.push(format!("{}", self.image)); [INFO] [stdout] 258 ~ docker_cmd.append(&mut cmd_line.to_owned()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this function has too many arguments (8/7) [INFO] [stdout] --> src/executers/docker.rs:287:5 [INFO] [stdout] | [INFO] [stdout] 287 | / pub fn bootstrap_bakery( [INFO] [stdout] 288 | | &self, [INFO] [stdout] 289 | | cmd_line: &Vec, [INFO] [stdout] 290 | | cli: &Cli, [INFO] [stdout] ... | [INFO] [stdout] 295 | | env: &HashMap, [INFO] [stdout] 296 | | ) -> Result<(), BError> { [INFO] [stdout] | |___________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stdout] = note: `#[warn(clippy::too_many_arguments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/executers/docker.rs:303:13 [INFO] [stdout] | [INFO] [stdout] 303 | &env, [INFO] [stdout] | ^^^^ help: change this to: `env` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the method `run_cmd` doesn't need a mutable reference [INFO] [stdout] --> src/executers/nonbitbake.rs:43:17 [INFO] [stdout] | [INFO] [stdout] 43 | &mut cmd_line, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 43 - &mut cmd_line, [INFO] [stdout] 43 + &cmd_line, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/executers/nonbitbake.rs:46:17 [INFO] [stdout] | [INFO] [stdout] 46 | &self.cli, [INFO] [stdout] | ^^^^^^^^^ help: change this to: `self.cli` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the method `run_cmd` doesn't need a mutable reference [INFO] [stdout] --> src/executers/nonbitbake.rs:96:28 [INFO] [stdout] | [INFO] [stdout] 96 | docker.run_cmd(&mut cmd_line, env_variables, exec_dir, &self.cli)?; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 96 - docker.run_cmd(&mut cmd_line, env_variables, exec_dir, &self.cli)?; [INFO] [stdout] 96 + docker.run_cmd(&cmd_line, env_variables, exec_dir, &self.cli)?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/executers/nonbitbake.rs:96:68 [INFO] [stdout] | [INFO] [stdout] 96 | docker.run_cmd(&mut cmd_line, env_variables, exec_dir, &self.cli)?; [INFO] [stdout] | ^^^^^^^^^ help: change this to: `self.cli` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary use of `to_string` [INFO] [stdout] --> src/executers/nonbitbake.rs:153:21 [INFO] [stdout] | [INFO] [stdout] 153 | &build_dir.to_string_lossy().to_string(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `build_dir.to_string_lossy().as_ref()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_to_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary use of `to_string` [INFO] [stdout] --> src/executers/nonbitbake.rs:304:21 [INFO] [stdout] | [INFO] [stdout] 304 | &build_dir.to_string_lossy().to_string(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `build_dir.to_string_lossy().as_ref()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_to_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `r.get(0)` [INFO] [stdout] --> src/executers/recipe.rs:13:22 [INFO] [stdout] | [INFO] [stdout] 13 | recipe = r.get(0).unwrap().to_string(); [INFO] [stdout] | ^^^^^^^^ help: try: `r.first()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `r.get(0)` [INFO] [stdout] --> src/executers/recipe.rs:15:22 [INFO] [stdout] | [INFO] [stdout] 15 | recipe = r.get(0).unwrap().to_string(); [INFO] [stdout] | ^^^^^^^^ help: try: `r.first()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/fs/archiver.rs:22:22 [INFO] [stdout] | [INFO] [stdout] 22 | pub fn new(path: &PathBuf) -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 22 ~ pub fn new(path: &Path) -> Result { [INFO] [stdout] 23 | let archive_name = path.file_name().unwrap_or_default().to_string_lossy(); [INFO] [stdout] ... [INFO] [stdout] 85 | Ok(Archiver { [INFO] [stdout] 86 ~ path: path.to_path_buf(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` branch is empty [INFO] [stdout] --> src/fs/archiver.rs:128:13 [INFO] [stdout] | [INFO] [stdout] 128 | if mode == Mode::Append {} [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: you can remove it [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_ifs [INFO] [stdout] = note: `#[warn(clippy::needless_ifs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` branch is empty [INFO] [stdout] --> src/fs/archiver.rs:158:13 [INFO] [stdout] | [INFO] [stdout] 158 | if mode == Mode::Append {} [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: you can remove it [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_ifs [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `to_owned` call clones the `Cow<'_, str>` itself and does not cause its contents to become owned [INFO] [stdout] --> src/fs/archiver.rs:173:32 [INFO] [stdout] | [INFO] [stdout] 173 | zip.start_file(striped_path.to_string_lossy().to_owned(), options)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_to_owned [INFO] [stdout] = note: `#[warn(clippy::suspicious_to_owned)]` on by default [INFO] [stdout] help: depending on intent, either make the `Cow` an `Owned` variant [INFO] [stdout] | [INFO] [stdout] 173 | zip.start_file(striped_path.to_string_lossy().into_owned(), options)?; [INFO] [stdout] | ++ [INFO] [stdout] help: or clone the `Cow` itself [INFO] [stdout] | [INFO] [stdout] 173 - zip.start_file(striped_path.to_string_lossy().to_owned(), options)?; [INFO] [stdout] 173 + zip.start_file(striped_path.to_string_lossy().clone(), options)?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::path::PathBuf` [INFO] [stdout] --> src/fs/archiver.rs:316:13 [INFO] [stdout] | [INFO] [stdout] 316 | PathBuf::from(work_dir.join("dir1/file1.txt")), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `PathBuf::from()`: `work_dir.join("dir1/file1.txt")` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::path::PathBuf` [INFO] [stdout] --> src/fs/archiver.rs:317:13 [INFO] [stdout] | [INFO] [stdout] 317 | PathBuf::from(work_dir.join("file2.txt")), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `PathBuf::from()`: `work_dir.join("file2.txt")` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::path::PathBuf` [INFO] [stdout] --> src/fs/archiver.rs:318:13 [INFO] [stdout] | [INFO] [stdout] 318 | PathBuf::from(work_dir.join("dir2/file3.txt")), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `PathBuf::from()`: `work_dir.join("dir2/file3.txt")` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::path::PathBuf` [INFO] [stdout] --> src/fs/archiver.rs:319:13 [INFO] [stdout] | [INFO] [stdout] 319 | PathBuf::from(work_dir.join("dir3/file4.txt")), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `PathBuf::from()`: `work_dir.join("dir3/file4.txt")` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::path::PathBuf` [INFO] [stdout] --> src/fs/archiver.rs:348:13 [INFO] [stdout] | [INFO] [stdout] 348 | PathBuf::from(work_dir.join("dir2/file1.txt")), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `PathBuf::from()`: `work_dir.join("dir2/file1.txt")` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::path::PathBuf` [INFO] [stdout] --> src/fs/archiver.rs:349:13 [INFO] [stdout] | [INFO] [stdout] 349 | PathBuf::from(work_dir.join("file2.txt")), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `PathBuf::from()`: `work_dir.join("file2.txt")` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::path::PathBuf` [INFO] [stdout] --> src/fs/archiver.rs:350:13 [INFO] [stdout] | [INFO] [stdout] 350 | PathBuf::from(work_dir.join("dir3/file3.txt")), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `PathBuf::from()`: `work_dir.join("dir3/file3.txt")` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::path::PathBuf` [INFO] [stdout] --> src/fs/archiver.rs:351:13 [INFO] [stdout] | [INFO] [stdout] 351 | PathBuf::from(work_dir.join("dir1/file4.txt")), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `PathBuf::from()`: `work_dir.join("dir1/file4.txt")` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::path::PathBuf` [INFO] [stdout] --> src/fs/archiver.rs:380:13 [INFO] [stdout] | [INFO] [stdout] 380 | PathBuf::from(work_dir.join("dir2/file1.txt")), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `PathBuf::from()`: `work_dir.join("dir2/file1.txt")` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::path::PathBuf` [INFO] [stdout] --> src/fs/archiver.rs:381:13 [INFO] [stdout] | [INFO] [stdout] 381 | PathBuf::from(work_dir.join("file2.txt")), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `PathBuf::from()`: `work_dir.join("file2.txt")` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::path::PathBuf` [INFO] [stdout] --> src/fs/archiver.rs:382:13 [INFO] [stdout] | [INFO] [stdout] 382 | PathBuf::from(work_dir.join("dir3/file3.txt")), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `PathBuf::from()`: `work_dir.join("dir3/file3.txt")` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::path::PathBuf` [INFO] [stdout] --> src/fs/archiver.rs:383:13 [INFO] [stdout] | [INFO] [stdout] 383 | PathBuf::from(work_dir.join("dir1/file4.txt")), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `PathBuf::from()`: `work_dir.join("dir1/file4.txt")` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> src/fs/bitbake.rs:39:13 [INFO] [stdout] | [INFO] [stdout] 39 | / match self.build_conf_dir.parent() { [INFO] [stdout] 40 | | Some(parent) => { [INFO] [stdout] 41 | | return format!("{}{}/workspace \\\n\"\n", trimmed, parent.display()); [INFO] [stdout] ... | [INFO] [stdout] 44 | | } [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 39 ~ if let Some(parent) = self.build_conf_dir.parent() { [INFO] [stdout] 40 + return format!("{}{}/workspace \\\n\"\n", trimmed, parent.display()); [INFO] [stdout] 41 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `push_str()` using a single-character string literal [INFO] [stdout] --> src/fs/bitbake.rs:85:9 [INFO] [stdout] | [INFO] [stdout] 85 | cleaned.push_str("\n"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: consider using `push` with a character literal: `cleaned.push('\n')` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_add_str [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> src/fs/bitbake.rs:121:9 [INFO] [stdout] | [INFO] [stdout] 121 | / match bb_variables { [INFO] [stdout] 122 | | Some(variables) => { [INFO] [stdout] 123 | | for line in variables { [INFO] [stdout] 124 | | conf_str.push_str(format!("{}\n", line).as_str()); [INFO] [stdout] ... | [INFO] [stdout] 127 | | None => {} [INFO] [stdout] 128 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 121 ~ if let Some(variables) = bb_variables { [INFO] [stdout] 122 + for line in variables { [INFO] [stdout] 123 + conf_str.push_str(format!("{}\n", line).as_str()); [INFO] [stdout] 124 + } [INFO] [stdout] 125 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/fs/bitbake.rs:132:38 [INFO] [stdout] | [INFO] [stdout] 132 | self.write_bb_build_conf(&conf_path, &conf_str)?; [INFO] [stdout] | ^^^^^^^^^^ help: change this to: `conf_path` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/fs/bitbake.rs:178:55 [INFO] [stdout] | [INFO] [stdout] 178 | pub fn new(bitbake: &WsBitbakeData, bb_variables: &Vec, force: bool) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 178 ~ pub fn new(bitbake: &WsBitbakeData, bb_variables: &[String], force: bool) -> Self { [INFO] [stdout] 179 | Self::construct( [INFO] [stdout] ... [INFO] [stdout] 185 | force, [INFO] [stdout] 186 ~ bb_variables.to_owned(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/fs/bitbake.rs:191:25 [INFO] [stdout] | [INFO] [stdout] 191 | build_conf_dir: &PathBuf, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 191 ~ build_conf_dir: &Path, [INFO] [stdout] 192 | local_conf_path: &PathBuf, [INFO] [stdout] ... [INFO] [stdout] 199 | BitbakeConf { [INFO] [stdout] 200 ~ build_conf_dir: build_conf_dir.to_path_buf(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/fs/bitbake.rs:192:26 [INFO] [stdout] | [INFO] [stdout] 192 | local_conf_path: &PathBuf, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 192 ~ local_conf_path: &Path, [INFO] [stdout] 193 | bblayers_conf_path: &PathBuf, [INFO] [stdout] ... [INFO] [stdout] 200 | build_conf_dir: build_conf_dir.clone(), [INFO] [stdout] 201 ~ local_conf_path: local_conf_path.to_path_buf(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/fs/bitbake.rs:193:29 [INFO] [stdout] | [INFO] [stdout] 193 | bblayers_conf_path: &PathBuf, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 193 ~ bblayers_conf_path: &Path, [INFO] [stdout] 194 | local_conf_content: String, [INFO] [stdout] ... [INFO] [stdout] 201 | local_conf_path: local_conf_path.clone(), [INFO] [stdout] 202 ~ bblayers_conf_path: bblayers_conf_path.to_path_buf(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/fs/config.rs:18:27 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn new(file_path: &PathBuf) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 18 ~ pub fn new(file_path: &Path) -> Self { [INFO] [stdout] 19 | ConfigFileReader { [INFO] [stdout] 20 ~ file_path: file_path.to_path_buf(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/fs/manifest.rs:14:22 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn new(path: &PathBuf) -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 14 ~ pub fn new(path: &Path) -> Result { [INFO] [stdout] 15 | let name: String = path [INFO] [stdout] ... [INFO] [stdout] 38 | Ok(Manifest { [INFO] [stdout] 39 ~ path: path.to_path_buf(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/helper/mod.rs:27:43 [INFO] [stdout] | [INFO] [stdout] 27 | let mut file: File = File::create(&path).expect("Failed to create file"); [INFO] [stdout] | ^^^^^ help: change this to: `path` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] = note: `#[warn(clippy::needless_borrows_for_generic_args)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/helper/mod.rs:71:37 [INFO] [stdout] | [INFO] [stdout] 71 | pub fn create_test_files(files: &Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 71 - pub fn create_test_files(files: &Vec) { [INFO] [stdout] 71 + pub fn create_test_files(files: &[PathBuf]) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/helper/mod.rs:167:25 [INFO] [stdout] | [INFO] [stdout] 167 | expected_files: &Vec, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 167 - expected_files: &Vec, [INFO] [stdout] 167 + expected_files: &[PathBuf], [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/helper/mod.rs:168:25 [INFO] [stdout] | [INFO] [stdout] 168 | archived_files: &Vec, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 168 - archived_files: &Vec, [INFO] [stdout] 168 + archived_files: &[PathBuf], [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/helper/mod.rs:206:9 [INFO] [stdout] | [INFO] [stdout] 206 | let settings: WsSettings; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] help: move the declaration `settings` here and remove the assignments from the `match` arms [INFO] [stdout] | [INFO] [stdout] 206 ~ [INFO] [stdout] 207 ~ let settings: WsSettings = match result { [INFO] [stdout] 208 | Ok(rsettings) => { [INFO] [stdout] 209 ~ rsettings [INFO] [stdout] 210 | } [INFO] [stdout] ... [INFO] [stdout] 214 | } [INFO] [stdout] 215 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the function `WsBuildConfigHandler::from_str` doesn't need a mutable reference [INFO] [stdout] --> src/helper/mod.rs:243:63 [INFO] [stdout] | [INFO] [stdout] 243 | WsBuildConfigHandler::from_str(json_build_config, &mut settings); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 243 - WsBuildConfigHandler::from_str(json_build_config, &mut settings); [INFO] [stdout] 243 + WsBuildConfigHandler::from_str(json_build_config, &settings); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the function `WsBuildConfigHandler::from_str` doesn't need a mutable reference [INFO] [stdout] --> src/helper/mod.rs:265:63 [INFO] [stdout] | [INFO] [stdout] 265 | WsBuildConfigHandler::from_str(json_build_config, &mut settings) [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 265 - WsBuildConfigHandler::from_str(json_build_config, &mut settings) [INFO] [stdout] 265 + WsBuildConfigHandler::from_str(json_build_config, &settings) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/helper/mod.rs:285:13 [INFO] [stdout] | [INFO] [stdout] 285 | &work_dir, [INFO] [stdout] | ^^^^^^^^^ help: change this to: `work_dir` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/helper/mod.rs:316:65 [INFO] [stdout] | [INFO] [stdout] 316 | WsArtifactsHandler::from_str(json_artifacts_config, &task_build_dir, build_data) [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: change this to: `task_build_dir` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/helper/mod.rs:333:17 [INFO] [stdout] | [INFO] [stdout] 333 | / return var [INFO] [stdout] 334 | | .into_string() [INFO] [stdout] 335 | | .or::(Ok(String::from(""))) [INFO] [stdout] 336 | | .unwrap(); [INFO] [stdout] | |_____________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 333 ~ var [INFO] [stdout] 334 + .into_string() [INFO] [stdout] 335 + .or::(Ok(String::from(""))) [INFO] [stdout] 336 ~ .unwrap() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/helper/mod.rs:339:17 [INFO] [stdout] | [INFO] [stdout] 339 | return String::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 339 - return String::new(); [INFO] [stdout] 339 + String::new() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: found `.or(Ok(…)).unwrap()` [INFO] [stdout] --> src/helper/mod.rs:335:22 [INFO] [stdout] | [INFO] [stdout] 335 | .or::(Ok(String::from(""))) [INFO] [stdout] | ______________________^ [INFO] [stdout] 336 | | .unwrap(); [INFO] [stdout] | |_____________________________^ help: try: `unwrap_or(String::from(""))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_then_unwrap [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/helper/mod.rs:352:15 [INFO] [stdout] | [INFO] [stdout] 352 | args: &Vec, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 352 ~ args: &[String], [INFO] [stdout] 353 | volumes: &Vec, [INFO] [stdout] ... [INFO] [stdout] 410 | if !args.is_empty() { [INFO] [stdout] 411 ~ cmd_line.append(&mut args.to_owned()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/helper/mod.rs:353:18 [INFO] [stdout] | [INFO] [stdout] 353 | volumes: &Vec, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 353 - volumes: &Vec, [INFO] [stdout] 353 + volumes: &[String], [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/helper/mod.rs:354:18 [INFO] [stdout] | [INFO] [stdout] 354 | top_dir: &PathBuf, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 354 - top_dir: &PathBuf, [INFO] [stdout] 354 + top_dir: &Path, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/helper/mod.rs:355:19 [INFO] [stdout] | [INFO] [stdout] 355 | work_dir: &PathBuf, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 355 - work_dir: &PathBuf, [INFO] [stdout] 355 + work_dir: &Path, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/helper/mod.rs:357:14 [INFO] [stdout] | [INFO] [stdout] 357 | cmd: &Vec, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 357 ~ cmd: &[String], [INFO] [stdout] 358 | ) -> Vec { [INFO] [stdout] ... [INFO] [stdout] 413 | cmd_line.push(format!("{}", image)); [INFO] [stdout] 414 ~ cmd_line.append(&mut cmd.to_owned()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::string::String` [INFO] [stdout] --> src/helper/mod.rs:382:13 [INFO] [stdout] | [INFO] [stdout] 382 | String::from(format!("{}:{}:ro", BkryConstants::BIN, BkryConstants::BIN)), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `String::from()`: `format!("{}:{}:ro", BkryConstants::BIN, BkryConstants::BIN)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::string::String` [INFO] [stdout] --> src/helper/mod.rs:384:13 [INFO] [stdout] | [INFO] [stdout] 384 | / String::from(format!( [INFO] [stdout] 385 | | "{}:{}:ro", [INFO] [stdout] 386 | | BkryConstants::CFG_DIR, [INFO] [stdout] 387 | | BkryConstants::CFG_DIR [INFO] [stdout] 388 | | )), [INFO] [stdout] | |______________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] help: consider removing `String::from()` [INFO] [stdout] | [INFO] [stdout] 384 ~ format!( [INFO] [stdout] 385 + "{}:{}:ro", [INFO] [stdout] 386 + BkryConstants::CFG_DIR, [INFO] [stdout] 387 + BkryConstants::CFG_DIR [INFO] [stdout] 388 ~ ), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::string::String` [INFO] [stdout] --> src/helper/mod.rs:390:13 [INFO] [stdout] | [INFO] [stdout] 390 | / String::from(format!( [INFO] [stdout] 391 | | "{}:{}:ro", [INFO] [stdout] 392 | | BkryConstants::OPT_DIR, [INFO] [stdout] 393 | | BkryConstants::OPT_DIR [INFO] [stdout] 394 | | )), [INFO] [stdout] | |______________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] help: consider removing `String::from()` [INFO] [stdout] | [INFO] [stdout] 390 ~ format!( [INFO] [stdout] 391 + "{}:{}:ro", [INFO] [stdout] 392 + BkryConstants::OPT_DIR, [INFO] [stdout] 393 + BkryConstants::OPT_DIR [INFO] [stdout] 394 ~ ), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/helper/mod.rs:421:19 [INFO] [stdout] | [INFO] [stdout] 421 | work_dir: &PathBuf, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 421 - work_dir: &PathBuf, [INFO] [stdout] 421 + work_dir: &Path, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/helper/mod.rs:423:14 [INFO] [stdout] | [INFO] [stdout] 423 | cmd: &Vec, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 423 ~ cmd: &[String], [INFO] [stdout] 424 | env_file: &PathBuf, [INFO] [stdout] ... [INFO] [stdout] 454 | cmd_line.push(format!("{}", image)); [INFO] [stdout] 455 ~ cmd_line.append(&mut cmd.to_owned()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/helper/mod.rs:424:19 [INFO] [stdout] | [INFO] [stdout] 424 | env_file: &PathBuf, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 424 - env_file: &PathBuf, [INFO] [stdout] 424 + env_file: &Path, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `dir_artifacts.get(0)` [INFO] [stdout] --> src/workspace/artifact.rs:121:20 [INFO] [stdout] | [INFO] [stdout] 121 | assert_eq!(dir_artifacts.get(0).unwrap().data().atype(), &AType::File); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: try: `dir_artifacts.first()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `dir_artifacts.get(0)` [INFO] [stdout] --> src/workspace/artifact.rs:122:20 [INFO] [stdout] | [INFO] [stdout] 122 | assert_eq!(dir_artifacts.get(0).unwrap().data().dest(), ""); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: try: `dir_artifacts.first()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `dir_artifacts.get(0)` [INFO] [stdout] --> src/workspace/artifact.rs:123:20 [INFO] [stdout] | [INFO] [stdout] 123 | assert_eq!(dir_artifacts.get(0).unwrap().data().source(), "file1.txt"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: try: `dir_artifacts.first()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `dir_artifacts.get(0)` [INFO] [stdout] --> src/workspace/artifact.rs:150:20 [INFO] [stdout] | [INFO] [stdout] 150 | assert_eq!(dir_artifacts.get(0).unwrap().data().atype(), &AType::File); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: try: `dir_artifacts.first()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `dir_artifacts.get(0)` [INFO] [stdout] --> src/workspace/artifact.rs:151:20 [INFO] [stdout] | [INFO] [stdout] 151 | assert_eq!(dir_artifacts.get(0).unwrap().data().source(), "file3.txt"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: try: `dir_artifacts.first()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `dir_artifacts.get(0)` [INFO] [stdout] --> src/workspace/artifact.rs:152:20 [INFO] [stdout] | [INFO] [stdout] 152 | assert_eq!(dir_artifacts.get(0).unwrap().data().dest(), "file4.txt"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: try: `dir_artifacts.first()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `archive_artifacts.get(0)` [INFO] [stdout] --> src/workspace/artifact.rs:222:13 [INFO] [stdout] | [INFO] [stdout] 222 | archive_artifacts.get(0).unwrap().data().atype(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `archive_artifacts.first()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `archive_artifacts.get(0)` [INFO] [stdout] --> src/workspace/artifact.rs:226:13 [INFO] [stdout] | [INFO] [stdout] 226 | archive_artifacts.get(0).unwrap().data().source(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `archive_artifacts.first()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `archive_artifacts.get(0)` [INFO] [stdout] --> src/workspace/artifact.rs:229:20 [INFO] [stdout] | [INFO] [stdout] 229 | assert_eq!(archive_artifacts.get(0).unwrap().data().dest(), "file4.txt"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `archive_artifacts.first()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `archive_artifacts.get(0)` [INFO] [stdout] --> src/workspace/artifact.rs:320:13 [INFO] [stdout] | [INFO] [stdout] 320 | archive_artifacts.get(0).unwrap().data().atype(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `archive_artifacts.first()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `archive_artifacts.get(0)` [INFO] [stdout] --> src/workspace/artifact.rs:324:13 [INFO] [stdout] | [INFO] [stdout] 324 | archive_artifacts.get(0).unwrap().data().source(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `archive_artifacts.first()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `archive_artifacts.get(0)` [INFO] [stdout] --> src/workspace/artifact.rs:327:20 [INFO] [stdout] | [INFO] [stdout] 327 | assert_eq!(archive_artifacts.get(0).unwrap().data().dest(), "file4.txt"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `archive_artifacts.first()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/workspace/config.rs:67:17 [INFO] [stdout] | [INFO] [stdout] 67 | return Ok(config); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 67 - return Ok(config); [INFO] [stdout] 67 + Ok(config) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/workspace/config.rs:70:17 [INFO] [stdout] | [INFO] [stdout] 70 | / return Err(BError::ValueError(format!( [INFO] [stdout] 71 | | "Task '{}' does not exists in build config", [INFO] [stdout] 72 | | task [INFO] [stdout] 73 | | ))); [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 70 ~ Err(BError::ValueError(format!( [INFO] [stdout] 71 + "Task '{}' does not exists in build config", [INFO] [stdout] 72 + task [INFO] [stdout] 73 ~ ))) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/workspace/config.rs:81:17 [INFO] [stdout] | [INFO] [stdout] 81 | return Ok(config); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 81 - return Ok(config); [INFO] [stdout] 81 + Ok(config) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/workspace/config.rs:84:17 [INFO] [stdout] | [INFO] [stdout] 84 | / return Err(BError::ValueError(format!( [INFO] [stdout] 85 | | "Sub-command '{}' does not exists in build config", [INFO] [stdout] 86 | | cmd [INFO] [stdout] 87 | | ))); [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 84 ~ Err(BError::ValueError(format!( [INFO] [stdout] 85 + "Sub-command '{}' does not exists in build config", [INFO] [stdout] 86 + cmd [INFO] [stdout] 87 ~ ))) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` can be collapsed into the outer `match` [INFO] [stdout] --> src/workspace/config.rs:110:25 [INFO] [stdout] | [INFO] [stdout] 110 | / if cmd.data().cmd() [INFO] [stdout] 111 | | == &format!( [INFO] [stdout] 112 | | "echo \"INFO: currently no '{}' sub-command defined\"", [INFO] [stdout] 113 | | cmd.data().name() [INFO] [stdout] ... | [INFO] [stdout] 116 | | subcmds.insert(key.clone(), value); [INFO] [stdout] 117 | | } [INFO] [stdout] | |_________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match [INFO] [stdout] = note: `#[warn(clippy::collapsible_match)]` on by default [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 106 ~ Some(cmd) [INFO] [stdout] 107 | /* [INFO] [stdout] ... [INFO] [stdout] 114 | ) [INFO] [stdout] 115 ~ => { [INFO] [stdout] 116 | subcmds.insert(key.clone(), value); [INFO] [stdout] 117 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> src/workspace/config.rs:105:17 [INFO] [stdout] | [INFO] [stdout] 105 | / match subcmds.get(&key) { [INFO] [stdout] 106 | | Some(cmd) => { [INFO] [stdout] 107 | | /* [INFO] [stdout] 108 | | * If the command is the default then we can overwrite it [INFO] [stdout] ... | [INFO] [stdout] 119 | | None => {} [INFO] [stdout] 120 | | } [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 105 ~ if let Some(cmd) = subcmds.get(&key) { [INFO] [stdout] 106 + /* [INFO] [stdout] 107 + * If the command is the default then we can overwrite it [INFO] [stdout] 108 + */ [INFO] [stdout] 109 + if cmd.data().cmd() [INFO] [stdout] 110 + == &format!( [INFO] [stdout] 111 + "echo \"INFO: currently no '{}' sub-command defined\"", [INFO] [stdout] 112 + cmd.data().name() [INFO] [stdout] 113 + ) [INFO] [stdout] 114 + { [INFO] [stdout] 115 + subcmds.insert(key.clone(), value); [INFO] [stdout] 116 + } [INFO] [stdout] 117 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/workspace/config.rs:139:9 [INFO] [stdout] | [INFO] [stdout] 139 | / &self [INFO] [stdout] 140 | | .subcmd("deploy") [INFO] [stdout] 141 | | .expect("Failed to get deploy built-in sub-command") [INFO] [stdout] | |________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 139 ~ self [INFO] [stdout] 140 + .subcmd("deploy") [INFO] [stdout] 141 + .expect("Failed to get deploy built-in sub-command") [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/workspace/config.rs:145:9 [INFO] [stdout] | [INFO] [stdout] 145 | / &self [INFO] [stdout] 146 | | .subcmd("upload") [INFO] [stdout] 147 | | .expect("Failed to get upload built-in sub-command") [INFO] [stdout] | |________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 145 ~ self [INFO] [stdout] 146 + .subcmd("upload") [INFO] [stdout] 147 + .expect("Failed to get upload built-in sub-command") [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/workspace/config.rs:151:9 [INFO] [stdout] | [INFO] [stdout] 151 | / &self [INFO] [stdout] 152 | | .subcmd("setup") [INFO] [stdout] 153 | | .expect("Failed to get setup built-in sub-command") [INFO] [stdout] | |_______________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 151 ~ self [INFO] [stdout] 152 + .subcmd("setup") [INFO] [stdout] 153 + .expect("Failed to get setup built-in sub-command") [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/workspace/config.rs:157:9 [INFO] [stdout] | [INFO] [stdout] 157 | / &self [INFO] [stdout] 158 | | .subcmd("sync") [INFO] [stdout] 159 | | .expect("Failed to get sync built-in sub-command") [INFO] [stdout] | |______________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 157 ~ self [INFO] [stdout] 158 + .subcmd("sync") [INFO] [stdout] 159 + .expect("Failed to get sync built-in sub-command") [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/workspace/config.rs:163:9 [INFO] [stdout] | [INFO] [stdout] 163 | &self.data.product().description() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `self.data.product().description()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the function `WsBuildConfigHandler::from_str` doesn't need a mutable reference [INFO] [stdout] --> src/workspace/config.rs:198:63 [INFO] [stdout] | [INFO] [stdout] 198 | WsBuildConfigHandler::from_str(json_build_config, &mut ws_settings) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 198 - WsBuildConfigHandler::from_str(json_build_config, &mut ws_settings) [INFO] [stdout] 198 + WsBuildConfigHandler::from_str(json_build_config, &ws_settings) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the function `WsBuildConfigHandler::from_str` doesn't need a mutable reference [INFO] [stdout] --> src/workspace/config.rs:307:63 [INFO] [stdout] | [INFO] [stdout] 307 | WsBuildConfigHandler::from_str(json_build_config, &mut ws_settings) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 307 - WsBuildConfigHandler::from_str(json_build_config, &mut ws_settings) [INFO] [stdout] 307 + WsBuildConfigHandler::from_str(json_build_config, &ws_settings) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the function `WsBuildConfigHandler::from_str` doesn't need a mutable reference [INFO] [stdout] --> src/workspace/config.rs:333:63 [INFO] [stdout] | [INFO] [stdout] 333 | WsBuildConfigHandler::from_str(json_build_config, &mut ws_settings) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 333 - WsBuildConfigHandler::from_str(json_build_config, &mut ws_settings) [INFO] [stdout] 333 + WsBuildConfigHandler::from_str(json_build_config, &ws_settings) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the function `WsBuildConfigHandler::from_str` doesn't need a mutable reference [INFO] [stdout] --> src/workspace/config.rs:422:63 [INFO] [stdout] | [INFO] [stdout] 422 | WsBuildConfigHandler::from_str(json_build_config, &mut ws_settings) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 422 - WsBuildConfigHandler::from_str(json_build_config, &mut ws_settings) [INFO] [stdout] 422 + WsBuildConfigHandler::from_str(json_build_config, &ws_settings) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the function `WsBuildConfigHandler::from_str` doesn't need a mutable reference [INFO] [stdout] --> src/workspace/config.rs:478:63 [INFO] [stdout] | [INFO] [stdout] 478 | WsBuildConfigHandler::from_str(json_build_config, &mut ws_settings) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 478 - WsBuildConfigHandler::from_str(json_build_config, &mut ws_settings) [INFO] [stdout] 478 + WsBuildConfigHandler::from_str(json_build_config, &ws_settings) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the function `WsBuildConfigHandler::from_str` doesn't need a mutable reference [INFO] [stdout] --> src/workspace/config.rs:531:63 [INFO] [stdout] | [INFO] [stdout] 531 | WsBuildConfigHandler::from_str(json_build_config, &mut ws_settings) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 531 - WsBuildConfigHandler::from_str(json_build_config, &mut ws_settings) [INFO] [stdout] 531 + WsBuildConfigHandler::from_str(json_build_config, &ws_settings) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the function `WsBuildConfigHandler::from_str` doesn't need a mutable reference [INFO] [stdout] --> src/workspace/config.rs:616:63 [INFO] [stdout] | [INFO] [stdout] 616 | WsBuildConfigHandler::from_str(json_build_config, &mut ws_settings) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 616 - WsBuildConfigHandler::from_str(json_build_config, &mut ws_settings) [INFO] [stdout] 616 + WsBuildConfigHandler::from_str(json_build_config, &ws_settings) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the function `WsBuildConfigHandler::from_str` doesn't need a mutable reference [INFO] [stdout] --> src/workspace/config.rs:652:63 [INFO] [stdout] | [INFO] [stdout] 652 | WsBuildConfigHandler::from_str(json_build_config, &mut ws_settings); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 652 - WsBuildConfigHandler::from_str(json_build_config, &mut ws_settings); [INFO] [stdout] 652 + WsBuildConfigHandler::from_str(json_build_config, &ws_settings); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this assertion is always `false` [INFO] [stdout] --> src/workspace/config.rs:655:17 [INFO] [stdout] | [INFO] [stdout] 655 | assert!(false, "Expected an error"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: replace this with `panic!()` or `unreachable!()` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assertions_on_constants [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the function `WsBuildConfigHandler::from_str` doesn't need a mutable reference [INFO] [stdout] --> src/workspace/config.rs:762:68 [INFO] [stdout] | [INFO] [stdout] 762 | WsBuildConfigHandler::from_str(json_main_build_config, &mut ws_settings) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 762 - WsBuildConfigHandler::from_str(json_main_build_config, &mut ws_settings) [INFO] [stdout] 762 + WsBuildConfigHandler::from_str(json_main_build_config, &ws_settings) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the function `WsBuildConfigHandler::from_str` doesn't need a mutable reference [INFO] [stdout] --> src/workspace/config.rs:765:66 [INFO] [stdout] | [INFO] [stdout] 765 | WsBuildConfigHandler::from_str(json_include_config1, &mut ws_settings) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 765 - WsBuildConfigHandler::from_str(json_include_config1, &mut ws_settings) [INFO] [stdout] 765 + WsBuildConfigHandler::from_str(json_include_config1, &ws_settings) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the function `WsBuildConfigHandler::from_str` doesn't need a mutable reference [INFO] [stdout] --> src/workspace/config.rs:768:66 [INFO] [stdout] | [INFO] [stdout] 768 | WsBuildConfigHandler::from_str(json_include_config2, &mut ws_settings) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 768 - WsBuildConfigHandler::from_str(json_include_config2, &mut ws_settings) [INFO] [stdout] 768 + WsBuildConfigHandler::from_str(json_include_config2, &ws_settings) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the following explicit lifetimes could be elided: 'a [INFO] [stdout] --> src/workspace/customsubcmd.rs:32:16 [INFO] [stdout] | [INFO] [stdout] 32 | pub fn run<'a>( [INFO] [stdout] | ^^ [INFO] [stdout] 33 | &self, [INFO] [stdout] 34 | cli: &'a Cli, [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stdout] = note: `#[warn(clippy::needless_lifetimes)]` on by default [INFO] [stdout] help: elide the lifetimes [INFO] [stdout] | [INFO] [stdout] 32 ~ pub fn run( [INFO] [stdout] 33 | &self, [INFO] [stdout] 34 ~ cli: &Cli, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: name `DEFAULT` contains a capitalized acronym [INFO] [stdout] --> src/workspace/settings.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | DEFAULT, [INFO] [stdout] | ^^^^^^^ help: consider making the acronym lowercase, except the initial letter: `Default` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#upper_case_acronyms [INFO] [stdout] = note: `#[warn(clippy::upper_case_acronyms)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: name `SETUP` contains a capitalized acronym [INFO] [stdout] --> src/workspace/settings.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | SETUP, [INFO] [stdout] | ^^^^^ help: consider making the acronym lowercase, except the initial letter: `Setup` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#upper_case_acronyms [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: name `TEST` contains a capitalized acronym [INFO] [stdout] --> src/workspace/settings.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | TEST, [INFO] [stdout] | ^^^^ help: consider making the acronym lowercase, except the initial letter: `Test` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#upper_case_acronyms [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do [INFO] [stdout] --> src/workspace/settings.rs:25:19 [INFO] [stdout] | [INFO] [stdout] 25 | work_dir: &PathBuf, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 25 ~ work_dir: &Path, [INFO] [stdout] 26 | json_settings: &str, [INFO] [stdout] 27 | path: Option, [INFO] [stdout] 28 | ) -> Result { [INFO] [stdout] 29 ~ let work_dir: PathBuf = work_dir.to_path_buf(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/workspace/settings.rs:64:9 [INFO] [stdout] | [INFO] [stdout] 64 | return Ok(()); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 64 - return Ok(()); [INFO] [stdout] 64 + Ok(()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/workspace/settings.rs:104:23 [INFO] [stdout] | [INFO] [stdout] 104 | path_buf.push(&dir); [INFO] [stdout] | ^^^^ help: change this to: `dir` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/workspace/settings.rs:146:9 [INFO] [stdout] | [INFO] [stdout] 146 | return self.work_dir(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 146 - return self.work_dir(); [INFO] [stdout] 146 + self.work_dir() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/workspace/settings.rs:160:17 [INFO] [stdout] | [INFO] [stdout] 160 | return true; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 160 - return true; [INFO] [stdout] 160 + true [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/workspace/settings.rs:163:17 [INFO] [stdout] | [INFO] [stdout] 163 | return false; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 163 - return false; [INFO] [stdout] 163 + false [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/workspace/settings.rs:166:17 [INFO] [stdout] | [INFO] [stdout] 166 | return false; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 166 - return false; [INFO] [stdout] 166 + false [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/workspace/settings.rs:174:17 [INFO] [stdout] | [INFO] [stdout] 174 | return Mode::DEFAULT; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 174 - return Mode::DEFAULT; [INFO] [stdout] 174 + Mode::DEFAULT [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/workspace/settings.rs:177:17 [INFO] [stdout] | [INFO] [stdout] 177 | return Mode::SETUP; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 177 - return Mode::SETUP; [INFO] [stdout] 177 + Mode::SETUP [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/workspace/settings.rs:180:17 [INFO] [stdout] | [INFO] [stdout] 180 | return Mode::TEST; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 180 - return Mode::TEST; [INFO] [stdout] 180 + Mode::TEST [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/workspace/settings.rs:183:17 [INFO] [stdout] | [INFO] [stdout] 183 | return Mode::DEFAULT; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 183 - return Mode::DEFAULT; [INFO] [stdout] 183 + Mode::DEFAULT [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the following explicit lifetimes could be elided: 'a [INFO] [stdout] --> src/workspace/tasks.rs:37:18 [INFO] [stdout] | [INFO] [stdout] 37 | pub fn build<'a>( [INFO] [stdout] | ^^ [INFO] [stdout] 38 | &self, [INFO] [stdout] 39 | cli: &'a Cli, [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stdout] help: elide the lifetimes [INFO] [stdout] | [INFO] [stdout] 37 ~ pub fn build( [INFO] [stdout] 38 | &self, [INFO] [stdout] 39 ~ cli: &Cli, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this function has too many arguments (8/7) [INFO] [stdout] --> src/workspace/tasks.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | / pub fn build<'a>( [INFO] [stdout] 38 | | &self, [INFO] [stdout] 39 | | cli: &'a Cli, [INFO] [stdout] 40 | | build_data: &WsBuildData, [INFO] [stdout] ... | [INFO] [stdout] 45 | | force: bool, [INFO] [stdout] 46 | | ) -> Result<(), BError> { [INFO] [stdout] | |___________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/workspace/tasks.rs:47:9 [INFO] [stdout] | [INFO] [stdout] 47 | let executer: Box; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] help: move the declaration `executer` here and remove the assignments from the `match` arms [INFO] [stdout] | [INFO] [stdout] 47 ~ [INFO] [stdout] 48 | [INFO] [stdout] ... [INFO] [stdout] 61 | [INFO] [stdout] 62 ~ let executer: Box = match self.data.ttype() { [INFO] [stdout] 63 | TType::Bitbake => { [INFO] [stdout] 64 ~ Box::new(BBBuildExecuter::new( [INFO] [stdout] 65 | cli, [INFO] [stdout] ... [INFO] [stdout] 68 | bb_variables, [INFO] [stdout] 69 ~ )) [INFO] [stdout] 70 | } [INFO] [stdout] 71 | TType::NonBitbake => { [INFO] [stdout] 72 ~ Box::new(NonBBBuildExecuter::new(cli, &self.data)) [INFO] [stdout] 73 | } [INFO] [stdout] 74 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the following explicit lifetimes could be elided: 'a [INFO] [stdout] --> src/workspace/tasks.rs:85:18 [INFO] [stdout] | [INFO] [stdout] 85 | pub fn clean<'a>( [INFO] [stdout] | ^^ [INFO] [stdout] 86 | &self, [INFO] [stdout] 87 | cli: &'a Cli, [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stdout] help: elide the lifetimes [INFO] [stdout] | [INFO] [stdout] 85 ~ pub fn clean( [INFO] [stdout] 86 | &self, [INFO] [stdout] 87 ~ cli: &Cli, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/workspace/tasks.rs:92:9 [INFO] [stdout] | [INFO] [stdout] 92 | let executer: Box; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] help: move the declaration `executer` here and remove the assignments from the `match` arms [INFO] [stdout] | [INFO] [stdout] 92 ~ [INFO] [stdout] 93 | [INFO] [stdout] ... [INFO] [stdout] 109 | [INFO] [stdout] 110 ~ let executer: Box = match self.data.ttype() { [INFO] [stdout] 111 | TType::Bitbake => { [INFO] [stdout] 112 ~ Box::new(BBCleanExecuter::new(cli, &self.data, build_data.bitbake())) [INFO] [stdout] 113 | } [INFO] [stdout] 114 | TType::NonBitbake => { [INFO] [stdout] 115 ~ Box::new(NonBBCleanExecuter::new(cli, &self.data)) [INFO] [stdout] 116 | } [INFO] [stdout] 117 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `to_string` applied to a type that implements `Display` in `format!` args [INFO] [stdout] --> src/workspace/tasks.rs:147:39 [INFO] [stdout] | [INFO] [stdout] 147 | .to_string_lossy() [INFO] [stdout] | _______________________________________^ [INFO] [stdout] 148 | | .to_string() [INFO] [stdout] | |________________________________^ help: remove this [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#to_string_in_format_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `archive_artifacts.get(0)` [INFO] [stdout] --> src/workspace/tasks.rs:356:13 [INFO] [stdout] | [INFO] [stdout] 356 | archive_artifacts.get(0).unwrap().data().atype(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `archive_artifacts.first()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `archive_artifacts.get(0)` [INFO] [stdout] --> src/workspace/tasks.rs:360:13 [INFO] [stdout] | [INFO] [stdout] 360 | archive_artifacts.get(0).unwrap().data().source(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `archive_artifacts.first()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `archive_artifacts.get(0)` [INFO] [stdout] --> src/workspace/tasks.rs:363:20 [INFO] [stdout] | [INFO] [stdout] 363 | assert_eq!(archive_artifacts.get(0).unwrap().data().dest(), "file4.txt"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `archive_artifacts.first()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `archive_artifacts.get(0)` [INFO] [stdout] --> src/workspace/tasks.rs:473:13 [INFO] [stdout] | [INFO] [stdout] 473 | archive_artifacts.get(0).unwrap().data().atype(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `archive_artifacts.first()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `archive_artifacts.get(0)` [INFO] [stdout] --> src/workspace/tasks.rs:477:13 [INFO] [stdout] | [INFO] [stdout] 477 | archive_artifacts.get(0).unwrap().data().source(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `archive_artifacts.first()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `archive_artifacts.get(0)` [INFO] [stdout] --> src/workspace/tasks.rs:480:20 [INFO] [stdout] | [INFO] [stdout] 480 | assert_eq!(archive_artifacts.get(0).unwrap().data().dest(), "file4.txt"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `archive_artifacts.first()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `to_string` applied to a type that implements `Display` in `format!` args [INFO] [stdout] --> src/workspace/tasks.rs:531:72 [INFO] [stdout] | [INFO] [stdout] 531 | &format!("{}/builds/NA", work_dir.to_string_lossy().to_string()), [INFO] [stdout] | ^^^^^^^^^^^^ help: remove this [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#to_string_in_format_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `to_string` applied to a type that implements `Display` in `format!` args [INFO] [stdout] --> src/workspace/tasks.rs:641:72 [INFO] [stdout] | [INFO] [stdout] 641 | &format!("{}/builds/NA", work_dir.to_string_lossy().to_string()), [INFO] [stdout] | ^^^^^^^^^^^^ help: remove this [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#to_string_in_format_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `to_string` applied to a type that implements `Display` in `format!` args [INFO] [stdout] --> src/workspace/tasks.rs:665:72 [INFO] [stdout] | [INFO] [stdout] 665 | &format!("{}/builds/NA", work_dir.to_string_lossy().to_string()), [INFO] [stdout] | ^^^^^^^^^^^^ help: remove this [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#to_string_in_format_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `to_string` applied to a type that implements `Display` in `format!` args [INFO] [stdout] --> src/workspace/tasks.rs:880:39 [INFO] [stdout] | [INFO] [stdout] 880 | work_dir.to_string_lossy().to_string() [INFO] [stdout] | ^^^^^^^^^^^^ help: remove this [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#to_string_in_format_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `to_string` applied to a type that implements `Display` in `format!` args [INFO] [stdout] --> src/workspace/tasks.rs:884:39 [INFO] [stdout] | [INFO] [stdout] 884 | work_dir.to_string_lossy().to_string() [INFO] [stdout] | ^^^^^^^^^^^^ help: remove this [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#to_string_in_format_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module has the same name as its containing module [INFO] [stdout] --> src/workspace/mod.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | pub mod workspace; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `list_of_files.get(0)` [INFO] [stdout] --> src/workspace/workspace.rs:125:40 [INFO] [stdout] | [INFO] [stdout] 125 | if list_of_files.len() == 1 && list_of_files.get(0).unwrap() == &"default.json".to_string() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: try: `list_of_files.first()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::path::PathBuf` [INFO] [stdout] --> src/workspace/workspace.rs:131:17 [INFO] [stdout] | [INFO] [stdout] 131 | PathBuf::from(settings.configs_dir().join("default.json")), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `PathBuf::from()`: `settings.configs_dir().join("default.json")` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/workspace/workspace.rs:161:9 [INFO] [stdout] | [INFO] [stdout] 161 | &self.config.build_data().settings() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `self.config.build_data().settings()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/commands/build.rs:505:27 [INFO] [stdout] | [INFO] [stdout] 505 | cmd_line: vec!["devtool", "create-workspace"] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: you can use an array directly: `["devtool", "create-workspace"]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] = note: `#[warn(clippy::useless_vec)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/commands/build.rs:646:27 [INFO] [stdout] | [INFO] [stdout] 646 | cmd_line: vec![ [INFO] [stdout] | ___________________________^ [INFO] [stdout] 647 | | "cd", [INFO] [stdout] 648 | | &build_dir.to_string_lossy().to_string(), [INFO] [stdout] 649 | | "&&", [INFO] [stdout] ... | [INFO] [stdout] 654 | | "test-image", [INFO] [stdout] 655 | | ] [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] help: you can use an array directly [INFO] [stdout] | [INFO] [stdout] 646 ~ cmd_line: ["cd", [INFO] [stdout] 647 + &build_dir.to_string_lossy().to_string(), [INFO] [stdout] 648 + "&&", [INFO] [stdout] 649 + "devtool", [INFO] [stdout] 650 + "create-workspace", [INFO] [stdout] 651 + "&&", [INFO] [stdout] 652 + "bitbake", [INFO] [stdout] 653 + "test-image"] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/commands/build.rs:721:27 [INFO] [stdout] | [INFO] [stdout] 721 | cmd_line: vec![ [INFO] [stdout] | ___________________________^ [INFO] [stdout] 722 | | "cd", [INFO] [stdout] 723 | | &build_dir.to_string_lossy().to_string(), [INFO] [stdout] 724 | | "&&", [INFO] [stdout] 725 | | "test.sh", [INFO] [stdout] 726 | | ] [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] help: you can use an array directly [INFO] [stdout] | [INFO] [stdout] 721 ~ cmd_line: ["cd", [INFO] [stdout] 722 + &build_dir.to_string_lossy().to_string(), [INFO] [stdout] 723 + "&&", [INFO] [stdout] 724 + "test.sh"] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/commands/build.rs:1147:27 [INFO] [stdout] | [INFO] [stdout] 1147 | cmd_line: vec![ [INFO] [stdout] | ___________________________^ [INFO] [stdout] 1148 | | "cd", [INFO] [stdout] 1149 | | &build_dir.to_string_lossy().to_string(), [INFO] [stdout] 1150 | | "&&", [INFO] [stdout] ... | [INFO] [stdout] 1155 | | "test-image", [INFO] [stdout] 1156 | | ] [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] help: you can use an array directly [INFO] [stdout] | [INFO] [stdout] 1147 ~ cmd_line: ["cd", [INFO] [stdout] 1148 + &build_dir.to_string_lossy().to_string(), [INFO] [stdout] 1149 + "&&", [INFO] [stdout] 1150 + "devtool", [INFO] [stdout] 1151 + "create-workspace", [INFO] [stdout] 1152 + "&&", [INFO] [stdout] 1153 + "bitbake", [INFO] [stdout] 1154 + "test-image"] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/commands/build.rs:1242:27 [INFO] [stdout] | [INFO] [stdout] 1242 | cmd_line: vec![ [INFO] [stdout] | ___________________________^ [INFO] [stdout] 1243 | | "cd", [INFO] [stdout] 1244 | | &build_dir.to_string_lossy().to_string(), [INFO] [stdout] 1245 | | "&&", [INFO] [stdout] ... | [INFO] [stdout] 1250 | | "image", [INFO] [stdout] 1251 | | ] [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] help: you can use an array directly [INFO] [stdout] | [INFO] [stdout] 1242 ~ cmd_line: ["cd", [INFO] [stdout] 1243 + &build_dir.to_string_lossy().to_string(), [INFO] [stdout] 1244 + "&&", [INFO] [stdout] 1245 + "devtool", [INFO] [stdout] 1246 + "create-workspace", [INFO] [stdout] 1247 + "&&", [INFO] [stdout] 1248 + "bitbake", [INFO] [stdout] 1249 + "image"] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/commands/build.rs:1266:27 [INFO] [stdout] | [INFO] [stdout] 1266 | cmd_line: vec![ [INFO] [stdout] | ___________________________^ [INFO] [stdout] 1267 | | "cd", [INFO] [stdout] 1268 | | &build_dir.to_string_lossy().to_string(), [INFO] [stdout] 1269 | | "&&", [INFO] [stdout] ... | [INFO] [stdout] 1276 | | "do_populate_sdk", [INFO] [stdout] 1277 | | ] [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] help: you can use an array directly [INFO] [stdout] | [INFO] [stdout] 1266 ~ cmd_line: ["cd", [INFO] [stdout] 1267 + &build_dir.to_string_lossy().to_string(), [INFO] [stdout] 1268 + "&&", [INFO] [stdout] 1269 + "devtool", [INFO] [stdout] 1270 + "create-workspace", [INFO] [stdout] 1271 + "&&", [INFO] [stdout] 1272 + "bitbake", [INFO] [stdout] 1273 + "image", [INFO] [stdout] 1274 + "-c", [INFO] [stdout] 1275 + "do_populate_sdk"] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/commands/build.rs:1417:27 [INFO] [stdout] | [INFO] [stdout] 1417 | cmd_line: vec![ [INFO] [stdout] | ___________________________^ [INFO] [stdout] 1418 | | "cd", [INFO] [stdout] 1419 | | &build_dir.to_string_lossy().to_string(), [INFO] [stdout] 1420 | | "&&", [INFO] [stdout] ... | [INFO] [stdout] 1423 | | "test", [INFO] [stdout] 1424 | | ] [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] help: you can use an array directly [INFO] [stdout] | [INFO] [stdout] 1417 ~ cmd_line: ["cd", [INFO] [stdout] 1418 + &build_dir.to_string_lossy().to_string(), [INFO] [stdout] 1419 + "&&", [INFO] [stdout] 1420 + "test.sh", [INFO] [stdout] 1421 + "build", [INFO] [stdout] 1422 + "test"] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/commands/clean.rs:235:27 [INFO] [stdout] | [INFO] [stdout] 235 | cmd_line: vec![ [INFO] [stdout] | ___________________________^ [INFO] [stdout] 236 | | "cd", [INFO] [stdout] 237 | | &build_dir.to_string_lossy().to_string(), [INFO] [stdout] 238 | | "&&", [INFO] [stdout] ... | [INFO] [stdout] 241 | | "dir-to-delete", [INFO] [stdout] 242 | | ] [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] help: you can use an array directly [INFO] [stdout] | [INFO] [stdout] 235 ~ cmd_line: ["cd", [INFO] [stdout] 236 + &build_dir.to_string_lossy().to_string(), [INFO] [stdout] 237 + "&&", [INFO] [stdout] 238 + "rm", [INFO] [stdout] 239 + "-rf", [INFO] [stdout] 240 + "dir-to-delete"] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/commands/deploy.rs:185:27 [INFO] [stdout] | [INFO] [stdout] 185 | cmd_line: vec![ [INFO] [stdout] | ___________________________^ [INFO] [stdout] 186 | | &format!("{}/scripts/script.sh", work_dir.display()), [INFO] [stdout] 187 | | "arg1", [INFO] [stdout] 188 | | "arg2", [INFO] [stdout] 189 | | "arg3", [INFO] [stdout] 190 | | ] [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] help: you can use an array directly [INFO] [stdout] | [INFO] [stdout] 185 ~ cmd_line: [&format!("{}/scripts/script.sh", work_dir.display()), [INFO] [stdout] 186 + "arg1", [INFO] [stdout] 187 + "arg2", [INFO] [stdout] 188 + "arg3"] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/commands/deploy.rs:254:27 [INFO] [stdout] | [INFO] [stdout] 254 | cmd_line: vec![ [INFO] [stdout] | ___________________________^ [INFO] [stdout] 255 | | &format!("{}/scripts/script.sh", work_dir.display()), [INFO] [stdout] 256 | | "arg1", [INFO] [stdout] 257 | | "arg2", [INFO] [stdout] 258 | | "arg4", [INFO] [stdout] 259 | | ] [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] help: you can use an array directly [INFO] [stdout] | [INFO] [stdout] 254 ~ cmd_line: [&format!("{}/scripts/script.sh", work_dir.display()), [INFO] [stdout] 255 + "arg1", [INFO] [stdout] 256 + "arg2", [INFO] [stdout] 257 + "arg4"] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/commands/deploy.rs:329:27 [INFO] [stdout] | [INFO] [stdout] 329 | cmd_line: vec![ [INFO] [stdout] | ___________________________^ [INFO] [stdout] 330 | | &format!("{}/scripts/script.sh", work_dir.display()), [INFO] [stdout] 331 | | "192.168.1.90", [INFO] [stdout] 332 | | "arg2", [INFO] [stdout] 333 | | "arg3", [INFO] [stdout] 334 | | ] [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] help: you can use an array directly [INFO] [stdout] | [INFO] [stdout] 329 ~ cmd_line: [&format!("{}/scripts/script.sh", work_dir.display()), [INFO] [stdout] 330 + "192.168.1.90", [INFO] [stdout] 331 + "arg2", [INFO] [stdout] 332 + "arg3"] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/commands/deploy.rs:403:27 [INFO] [stdout] | [INFO] [stdout] 403 | cmd_line: vec![ [INFO] [stdout] | ___________________________^ [INFO] [stdout] 404 | | &format!("{}/scripts/script.sh", work_dir.display()), [INFO] [stdout] 405 | | "192.168.253.90", [INFO] [stdout] 406 | | ] [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] help: you can use an array directly [INFO] [stdout] | [INFO] [stdout] 403 ~ cmd_line: [&format!("{}/scripts/script.sh", work_dir.display()), [INFO] [stdout] 404 + "192.168.253.90"] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/commands/deploy.rs:468:27 [INFO] [stdout] | [INFO] [stdout] 468 | cmd_line: vec![ [INFO] [stdout] | ___________________________^ [INFO] [stdout] 469 | | &format!("{}/scripts/script.sh", work_dir.display()), [INFO] [stdout] 470 | | "192.168.253.91", [INFO] [stdout] 471 | | ] [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] help: you can use an array directly [INFO] [stdout] | [INFO] [stdout] 468 ~ cmd_line: [&format!("{}/scripts/script.sh", work_dir.display()), [INFO] [stdout] 469 + "192.168.253.91"] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/commands/deploy.rs:540:27 [INFO] [stdout] | [INFO] [stdout] 540 | cmd_line: vec![ [INFO] [stdout] | ___________________________^ [INFO] [stdout] 541 | | &format!("{}/scripts/script.sh", work_dir.display()), [INFO] [stdout] 542 | | "ctx-test-image", [INFO] [stdout] 543 | | ] [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] help: you can use an array directly [INFO] [stdout] | [INFO] [stdout] 540 ~ cmd_line: [&format!("{}/scripts/script.sh", work_dir.display()), [INFO] [stdout] 541 + "ctx-test-image"] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/commands/deploy.rs:605:27 [INFO] [stdout] | [INFO] [stdout] 605 | cmd_line: vec![ [INFO] [stdout] | ___________________________^ [INFO] [stdout] 606 | | &format!("{}/scripts/script.sh", work_dir.display()), [INFO] [stdout] 607 | | "arg-test-image", [INFO] [stdout] 608 | | ] [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] help: you can use an array directly [INFO] [stdout] | [INFO] [stdout] 605 ~ cmd_line: [&format!("{}/scripts/script.sh", work_dir.display()), [INFO] [stdout] 606 + "arg-test-image"] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/commands/setup.rs:240:27 [INFO] [stdout] | [INFO] [stdout] 240 | cmd_line: vec![ [INFO] [stdout] | ___________________________^ [INFO] [stdout] 241 | | &format!("{}/scripts/script.sh", work_dir.display()), [INFO] [stdout] 242 | | "arg1", [INFO] [stdout] 243 | | "arg2", [INFO] [stdout] 244 | | "arg3", [INFO] [stdout] 245 | | ] [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] help: you can use an array directly [INFO] [stdout] | [INFO] [stdout] 240 ~ cmd_line: [&format!("{}/scripts/script.sh", work_dir.display()), [INFO] [stdout] 241 + "arg1", [INFO] [stdout] 242 + "arg2", [INFO] [stdout] 243 + "arg3"] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/commands/setup.rs:316:27 [INFO] [stdout] | [INFO] [stdout] 316 | cmd_line: vec![ [INFO] [stdout] | ___________________________^ [INFO] [stdout] 317 | | &format!("{}/scripts/script.sh", work_dir.display()), [INFO] [stdout] 318 | | "arg1", [INFO] [stdout] 319 | | "arg2", [INFO] [stdout] 320 | | "arg4", [INFO] [stdout] 321 | | ] [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] help: you can use an array directly [INFO] [stdout] | [INFO] [stdout] 316 ~ cmd_line: [&format!("{}/scripts/script.sh", work_dir.display()), [INFO] [stdout] 317 + "arg1", [INFO] [stdout] 318 + "arg2", [INFO] [stdout] 319 + "arg4"] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/commands/setup.rs:396:27 [INFO] [stdout] | [INFO] [stdout] 396 | cmd_line: vec![ [INFO] [stdout] | ___________________________^ [INFO] [stdout] 397 | | &format!("{}/scripts/script.sh", work_dir.display()), [INFO] [stdout] 398 | | "test-branch", [INFO] [stdout] 399 | | ] [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] help: you can use an array directly [INFO] [stdout] | [INFO] [stdout] 396 ~ cmd_line: [&format!("{}/scripts/script.sh", work_dir.display()), [INFO] [stdout] 397 + "test-branch"] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/commands/sync.rs:220:27 [INFO] [stdout] | [INFO] [stdout] 220 | cmd_line: vec![ [INFO] [stdout] | ___________________________^ [INFO] [stdout] 221 | | &format!("{}/scripts/script.sh", work_dir.display()), [INFO] [stdout] 222 | | "arg1", [INFO] [stdout] 223 | | "arg2", [INFO] [stdout] 224 | | "arg3", [INFO] [stdout] 225 | | ] [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] help: you can use an array directly [INFO] [stdout] | [INFO] [stdout] 220 ~ cmd_line: [&format!("{}/scripts/script.sh", work_dir.display()), [INFO] [stdout] 221 + "arg1", [INFO] [stdout] 222 + "arg2", [INFO] [stdout] 223 + "arg3"] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/commands/sync.rs:292:27 [INFO] [stdout] | [INFO] [stdout] 292 | cmd_line: vec![ [INFO] [stdout] | ___________________________^ [INFO] [stdout] 293 | | &format!("{}/scripts/script.sh", work_dir.display()), [INFO] [stdout] 294 | | "arg1", [INFO] [stdout] 295 | | "arg2", [INFO] [stdout] 296 | | "arg4", [INFO] [stdout] 297 | | ] [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] help: you can use an array directly [INFO] [stdout] | [INFO] [stdout] 292 ~ cmd_line: [&format!("{}/scripts/script.sh", work_dir.display()), [INFO] [stdout] 293 + "arg1", [INFO] [stdout] 294 + "arg2", [INFO] [stdout] 295 + "arg4"] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/commands/sync.rs:365:27 [INFO] [stdout] | [INFO] [stdout] 365 | cmd_line: vec![ [INFO] [stdout] | ___________________________^ [INFO] [stdout] 366 | | &format!("{}/scripts/script.sh", work_dir.display()), [INFO] [stdout] 367 | | "test-branch", [INFO] [stdout] 368 | | "true", [INFO] [stdout] 369 | | ] [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] help: you can use an array directly [INFO] [stdout] | [INFO] [stdout] 365 ~ cmd_line: [&format!("{}/scripts/script.sh", work_dir.display()), [INFO] [stdout] 366 + "test-branch", [INFO] [stdout] 367 + "true"] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/commands/upload.rs:207:27 [INFO] [stdout] | [INFO] [stdout] 207 | cmd_line: vec![ [INFO] [stdout] | ___________________________^ [INFO] [stdout] 208 | | &format!("{}/scripts/script.sh", work_dir.display()), [INFO] [stdout] 209 | | "arg1", [INFO] [stdout] 210 | | "arg2", [INFO] [stdout] 211 | | "arg3", [INFO] [stdout] 212 | | ] [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] help: you can use an array directly [INFO] [stdout] | [INFO] [stdout] 207 ~ cmd_line: [&format!("{}/scripts/script.sh", work_dir.display()), [INFO] [stdout] 208 + "arg1", [INFO] [stdout] 209 + "arg2", [INFO] [stdout] 210 + "arg3"] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/commands/upload.rs:270:27 [INFO] [stdout] | [INFO] [stdout] 270 | cmd_line: vec![ [INFO] [stdout] | ___________________________^ [INFO] [stdout] 271 | | &format!("{}/scripts/script.sh", work_dir.display()), [INFO] [stdout] 272 | | "arg1", [INFO] [stdout] 273 | | "arg2", [INFO] [stdout] 274 | | "arg4", [INFO] [stdout] 275 | | ] [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] help: you can use an array directly [INFO] [stdout] | [INFO] [stdout] 270 ~ cmd_line: [&format!("{}/scripts/script.sh", work_dir.display()), [INFO] [stdout] 271 + "arg1", [INFO] [stdout] 272 + "arg2", [INFO] [stdout] 273 + "arg4"] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/executers/bitbake.rs:323:27 [INFO] [stdout] | [INFO] [stdout] 323 | cmd_line: vec![ [INFO] [stdout] | ___________________________^ [INFO] [stdout] 324 | | "cd", [INFO] [stdout] 325 | | &build_dir.to_string_lossy().to_string(), [INFO] [stdout] 326 | | "&&", [INFO] [stdout] ... | [INFO] [stdout] 331 | | "test-image", [INFO] [stdout] 332 | | ] [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] help: you can use an array directly [INFO] [stdout] | [INFO] [stdout] 323 ~ cmd_line: ["cd", [INFO] [stdout] 324 + &build_dir.to_string_lossy().to_string(), [INFO] [stdout] 325 + "&&", [INFO] [stdout] 326 + "devtool", [INFO] [stdout] 327 + "create-workspace", [INFO] [stdout] 328 + "&&", [INFO] [stdout] 329 + "bitbake", [INFO] [stdout] 330 + "test-image"] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/executers/bitbake.rs:405:27 [INFO] [stdout] | [INFO] [stdout] 405 | cmd_line: vec!["devtool", "create-workspace"] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: you can use an array directly: `["devtool", "create-workspace"]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/executers/customsubcmd.rs:57:27 [INFO] [stdout] | [INFO] [stdout] 57 | cmd_line: vec![ [INFO] [stdout] | ___________________________^ [INFO] [stdout] 58 | | "$#[BKRY_SCRIPTS_DIR]/script.sh", [INFO] [stdout] 59 | | "$#[ARG1]", [INFO] [stdout] 60 | | "$#[ARG2]", [INFO] [stdout] 61 | | "$#[ARG3]", [INFO] [stdout] 62 | | ] [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] help: you can use an array directly [INFO] [stdout] | [INFO] [stdout] 57 ~ cmd_line: ["$#[BKRY_SCRIPTS_DIR]/script.sh", [INFO] [stdout] 58 + "$#[ARG1]", [INFO] [stdout] 59 + "$#[ARG2]", [INFO] [stdout] 60 + "$#[ARG3]"] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/executers/nonbitbake.rs:151:27 [INFO] [stdout] | [INFO] [stdout] 151 | cmd_line: vec![ [INFO] [stdout] | ___________________________^ [INFO] [stdout] 152 | | "cd", [INFO] [stdout] 153 | | &build_dir.to_string_lossy().to_string(), [INFO] [stdout] 154 | | "&&", [INFO] [stdout] 155 | | "test.sh", [INFO] [stdout] 156 | | ] [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] help: you can use an array directly [INFO] [stdout] | [INFO] [stdout] 151 ~ cmd_line: ["cd", [INFO] [stdout] 152 + &build_dir.to_string_lossy().to_string(), [INFO] [stdout] 153 + "&&", [INFO] [stdout] 154 + "test.sh"] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/executers/nonbitbake.rs:302:27 [INFO] [stdout] | [INFO] [stdout] 302 | cmd_line: vec![ [INFO] [stdout] | ___________________________^ [INFO] [stdout] 303 | | "cd", [INFO] [stdout] 304 | | &build_dir.to_string_lossy().to_string(), [INFO] [stdout] 305 | | "&&", [INFO] [stdout] ... | [INFO] [stdout] 308 | | "dir-to-delete", [INFO] [stdout] 309 | | ] [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] help: you can use an array directly [INFO] [stdout] | [INFO] [stdout] 302 ~ cmd_line: ["cd", [INFO] [stdout] 303 + &build_dir.to_string_lossy().to_string(), [INFO] [stdout] 304 + "&&", [INFO] [stdout] 305 + "rm", [INFO] [stdout] 306 + "-rf", [INFO] [stdout] 307 + "dir-to-delete"] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/workspace/customsubcmd.rs:68:27 [INFO] [stdout] | [INFO] [stdout] 68 | cmd_line: vec![ [INFO] [stdout] | ___________________________^ [INFO] [stdout] 69 | | "$#[BKRY_SCRIPTS_DIR]/script.sh", [INFO] [stdout] 70 | | "$#[ARG1]", [INFO] [stdout] 71 | | "$#[ARG2]", [INFO] [stdout] 72 | | "$#[ARG3]", [INFO] [stdout] 73 | | ] [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] help: you can use an array directly [INFO] [stdout] | [INFO] [stdout] 68 ~ cmd_line: ["$#[BKRY_SCRIPTS_DIR]/script.sh", [INFO] [stdout] 69 + "$#[ARG1]", [INFO] [stdout] 70 + "$#[ARG2]", [INFO] [stdout] 71 + "$#[ARG3]"] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/workspace/tasks.rs:529:27 [INFO] [stdout] | [INFO] [stdout] 529 | cmd_line: vec![ [INFO] [stdout] | ___________________________^ [INFO] [stdout] 530 | | "cd", [INFO] [stdout] 531 | | &format!("{}/builds/NA", work_dir.to_string_lossy().to_string()), [INFO] [stdout] 532 | | "&&", [INFO] [stdout] ... | [INFO] [stdout] 537 | | "test-image", [INFO] [stdout] 538 | | ] [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] help: you can use an array directly [INFO] [stdout] | [INFO] [stdout] 529 ~ cmd_line: ["cd", [INFO] [stdout] 530 + &format!("{}/builds/NA", work_dir.to_string_lossy().to_string()), [INFO] [stdout] 531 + "&&", [INFO] [stdout] 532 + "devtool", [INFO] [stdout] 533 + "create-workspace", [INFO] [stdout] 534 + "&&", [INFO] [stdout] 535 + "bitbake", [INFO] [stdout] 536 + "test-image"] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/workspace/tasks.rs:639:27 [INFO] [stdout] | [INFO] [stdout] 639 | cmd_line: vec![ [INFO] [stdout] | ___________________________^ [INFO] [stdout] 640 | | "cd", [INFO] [stdout] 641 | | &format!("{}/builds/NA", work_dir.to_string_lossy().to_string()), [INFO] [stdout] 642 | | "&&", [INFO] [stdout] ... | [INFO] [stdout] 647 | | "image", [INFO] [stdout] 648 | | ] [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] help: you can use an array directly [INFO] [stdout] | [INFO] [stdout] 639 ~ cmd_line: ["cd", [INFO] [stdout] 640 + &format!("{}/builds/NA", work_dir.to_string_lossy().to_string()), [INFO] [stdout] 641 + "&&", [INFO] [stdout] 642 + "devtool", [INFO] [stdout] 643 + "create-workspace", [INFO] [stdout] 644 + "&&", [INFO] [stdout] 645 + "bitbake", [INFO] [stdout] 646 + "image"] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/workspace/tasks.rs:663:27 [INFO] [stdout] | [INFO] [stdout] 663 | cmd_line: vec![ [INFO] [stdout] | ___________________________^ [INFO] [stdout] 664 | | "cd", [INFO] [stdout] 665 | | &format!("{}/builds/NA", work_dir.to_string_lossy().to_string()), [INFO] [stdout] 666 | | "&&", [INFO] [stdout] ... | [INFO] [stdout] 673 | | "do_populate_sdk", [INFO] [stdout] 674 | | ] [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] help: you can use an array directly [INFO] [stdout] | [INFO] [stdout] 663 ~ cmd_line: ["cd", [INFO] [stdout] 664 + &format!("{}/builds/NA", work_dir.to_string_lossy().to_string()), [INFO] [stdout] 665 + "&&", [INFO] [stdout] 666 + "devtool", [INFO] [stdout] 667 + "create-workspace", [INFO] [stdout] 668 + "&&", [INFO] [stdout] 669 + "bitbake", [INFO] [stdout] 670 + "image", [INFO] [stdout] 671 + "-c", [INFO] [stdout] 672 + "do_populate_sdk"] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/workspace/tasks.rs:787:27 [INFO] [stdout] | [INFO] [stdout] 787 | cmd_line: vec!["devtool", "create-workspace"] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: you can use an array directly: `["devtool", "create-workspace"]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 26.48s [INFO] running `Command { std: "docker" "inspect" "a11c3afb53b2b22bd00919d35e15fbc5b37fcfc7b5d0ff79a3081b9bbb15f9d8", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a11c3afb53b2b22bd00919d35e15fbc5b37fcfc7b5d0ff79a3081b9bbb15f9d8", kill_on_drop: false }` [INFO] [stdout] a11c3afb53b2b22bd00919d35e15fbc5b37fcfc7b5d0ff79a3081b9bbb15f9d8