[INFO] fetching crate vnv 0.1.3... [INFO] linting vnv-0.1.3 against nightly for clippy-nonminimal_bool-denied [INFO] extracting crate vnv 0.1.3 into /workspace/builds/worker-6-tc1/source [INFO] started tweaking crates.io crate vnv 0.1.3 [INFO] finished tweaking crates.io crate vnv 0.1.3 [INFO] tweaked toml for crates.io crate vnv 0.1.3 written to /workspace/builds/worker-6-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate vnv 0.1.3 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 vnv 0.1.3 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] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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] 91aac7eed096a979314da137b7de31a407bcf86cbb42d9265b13800119e577c5 [INFO] running `Command { std: "docker" "start" "-a" "91aac7eed096a979314da137b7de31a407bcf86cbb42d9265b13800119e577c5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "91aac7eed096a979314da137b7de31a407bcf86cbb42d9265b13800119e577c5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "91aac7eed096a979314da137b7de31a407bcf86cbb42d9265b13800119e577c5", kill_on_drop: false }` [INFO] [stdout] 91aac7eed096a979314da137b7de31a407bcf86cbb42d9265b13800119e577c5 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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] 811511d329e6615ff127f466f1046ba45b5503f77e3ec408696a6726bdb1a0a0 [INFO] running `Command { std: "docker" "start" "-a" "811511d329e6615ff127f466f1046ba45b5503f77e3ec408696a6726bdb1a0a0", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.83 [INFO] [stderr] Checking utf8parse v0.2.1 [INFO] [stderr] Checking is_terminal_polyfill v1.70.0 [INFO] [stderr] Checking colorchoice v1.0.1 [INFO] [stderr] Checking anstyle v1.0.7 [INFO] [stderr] Checking memchr v2.7.2 [INFO] [stderr] Compiling serde v1.0.202 [INFO] [stderr] Checking anstyle-query v1.0.3 [INFO] [stderr] Compiling serde_json v1.0.117 [INFO] [stderr] Checking regex-syntax v0.8.3 [INFO] [stderr] Checking clap_lex v0.7.0 [INFO] [stderr] Checking itoa v1.0.11 [INFO] [stderr] Checking colored v2.1.0 [INFO] [stderr] Checking anstyle-parse v0.2.4 [INFO] [stderr] Checking anstream v0.6.14 [INFO] [stderr] Checking clap_builder v4.5.2 [INFO] [stderr] Compiling quote v1.0.36 [INFO] [stderr] Checking aho-corasick v1.1.3 [INFO] [stderr] Compiling syn v2.0.66 [INFO] [stderr] Checking regex-automata v0.4.6 [INFO] [stderr] Checking regex v1.10.4 [INFO] [stderr] Compiling serde_derive v1.0.202 [INFO] [stderr] Compiling clap_derive v4.5.4 [INFO] [stderr] Checking clap v4.5.4 [INFO] [stderr] Checking vnv v0.1.3 (/opt/rustwide/workdir) [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> src/decorators/mod.rs:61:13 [INFO] [stdout] | [INFO] [stdout] 61 | validator: validator, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `validator` [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: redundant field names in struct initialization [INFO] [stdout] --> src/decorators/mod.rs:61:13 [INFO] [stdout] | [INFO] [stdout] 61 | validator: validator, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `validator` [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: method `from_str` can be confused for the standard trait method `std::str::FromStr::from_str` [INFO] [stdout] --> src/decorators/mod.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | / pub fn from_str(val: &str) -> Self { [INFO] [stdout] 15 | | if val.parse::().is_ok() { [INFO] [stdout] 16 | | return DecoratorValue::Integer(val.parse::().unwrap()); [INFO] [stdout] ... | [INFO] [stdout] 19 | | return DecoratorValue::String(trim_quotes(val)); [INFO] [stdout] 20 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: consider implementing the trait `std::str::FromStr` or choosing a less ambiguous method name [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#should_implement_trait [INFO] [stdout] = note: `#[warn(clippy::should_implement_trait)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 19 | return DecoratorValue::String(trim_quotes(val)); [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] 19 - return DecoratorValue::String(trim_quotes(val)); [INFO] [stdout] 19 + DecoratorValue::String(trim_quotes(val)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:104:25 [INFO] [stdout] | [INFO] [stdout] 104 | / return DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 105 | | &error_message, [INFO] [stdout] 106 | | None, [INFO] [stdout] 107 | | )]); [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] 104 ~ DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 105 + &error_message, [INFO] [stdout] 106 + None, [INFO] [stdout] 107 ~ )]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:115:33 [INFO] [stdout] | [INFO] [stdout] 115 | / ... return DecoratorValidationResult::Error(vec![ [INFO] [stdout] 116 | | ... ValidationError::new( [INFO] [stdout] 117 | | ... &error_message, [INFO] [stdout] 118 | | ... Some(ValueType::Number(v)), [INFO] [stdout] 119 | | ... ), [INFO] [stdout] 120 | | ... ]); [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] 115 ~ DecoratorValidationResult::Error(vec![ [INFO] [stdout] 116 + ValidationError::new( [INFO] [stdout] 117 + &error_message, [INFO] [stdout] 118 + Some(ValueType::Number(v)), [INFO] [stdout] 119 + ), [INFO] [stdout] 120 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:122:34 [INFO] [stdout] | [INFO] [stdout] 122 | ... _ => return DecoratorValidationResult::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] 122 - _ => return DecoratorValidationResult::Ok, [INFO] [stdout] 122 + _ => DecoratorValidationResult::Ok, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:137:29 [INFO] [stdout] | [INFO] [stdout] 137 | ... return DecoratorValidationResult::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] 137 - return DecoratorValidationResult::Ok; [INFO] [stdout] 137 + DecoratorValidationResult::Ok [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:155:33 [INFO] [stdout] | [INFO] [stdout] 155 | ... return DecoratorValidationResult::Error(errors); [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] 155 - return DecoratorValidationResult::Error(errors); [INFO] [stdout] 155 + DecoratorValidationResult::Error(errors) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:157:33 [INFO] [stdout] | [INFO] [stdout] 157 | ... return DecoratorValidationResult::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] 157 - return DecoratorValidationResult::Ok; [INFO] [stdout] 157 + DecoratorValidationResult::Ok [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:179:33 [INFO] [stdout] | [INFO] [stdout] 179 | ... return DecoratorValidationResult::Error(errors); [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] 179 - return DecoratorValidationResult::Error(errors); [INFO] [stdout] 179 + DecoratorValidationResult::Error(errors) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:181:33 [INFO] [stdout] | [INFO] [stdout] 181 | ... return DecoratorValidationResult::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] 181 - return DecoratorValidationResult::Ok; [INFO] [stdout] 181 + DecoratorValidationResult::Ok [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:188:25 [INFO] [stdout] | [INFO] [stdout] 188 | / return DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 189 | | &error_message, [INFO] [stdout] 190 | | None, [INFO] [stdout] 191 | | )]); [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 ~ DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 189 + &error_message, [INFO] [stdout] 190 + None, [INFO] [stdout] 191 ~ )]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> src/decorators/mod.rs:154:32 [INFO] [stdout] | [INFO] [stdout] 154 | ... if errors.len() != 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: using `!is_empty` is clearer and more explicit: `!errors.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] = note: `#[warn(clippy::len_zero)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> src/decorators/mod.rs:178:32 [INFO] [stdout] | [INFO] [stdout] 178 | ... if errors.len() != 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: using `!is_empty` is clearer and more explicit: `!errors.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/decorators/mod.rs:186:45 [INFO] [stdout] | [INFO] [stdout] 186 | let error_message = format!("The min decorator requires a value to be provided with it. Ex: `@min(5)`"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `"The min decorator requires a value to be provided with it. Ex: `@min(5)`".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: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:206:25 [INFO] [stdout] | [INFO] [stdout] 206 | / return DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 207 | | &error_message, [INFO] [stdout] 208 | | None, [INFO] [stdout] 209 | | )]); [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] 206 ~ DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 207 + &error_message, [INFO] [stdout] 208 + None, [INFO] [stdout] 209 ~ )]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:217:33 [INFO] [stdout] | [INFO] [stdout] 217 | / ... return DecoratorValidationResult::Error(vec![ [INFO] [stdout] 218 | | ... ValidationError::new( [INFO] [stdout] 219 | | ... &error_message, [INFO] [stdout] 220 | | ... Some(ValueType::Number(v)), [INFO] [stdout] 221 | | ... ), [INFO] [stdout] 222 | | ... ]); [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] 217 ~ DecoratorValidationResult::Error(vec![ [INFO] [stdout] 218 + ValidationError::new( [INFO] [stdout] 219 + &error_message, [INFO] [stdout] 220 + Some(ValueType::Number(v)), [INFO] [stdout] 221 + ), [INFO] [stdout] 222 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:224:34 [INFO] [stdout] | [INFO] [stdout] 224 | ... _ => return DecoratorValidationResult::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] 224 - _ => return DecoratorValidationResult::Ok, [INFO] [stdout] 224 + _ => DecoratorValidationResult::Ok, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:239:29 [INFO] [stdout] | [INFO] [stdout] 239 | ... return DecoratorValidationResult::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] 239 - return DecoratorValidationResult::Ok; [INFO] [stdout] 239 + DecoratorValidationResult::Ok [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:257:33 [INFO] [stdout] | [INFO] [stdout] 257 | ... return DecoratorValidationResult::Error(errors); [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] 257 - return DecoratorValidationResult::Error(errors); [INFO] [stdout] 257 + DecoratorValidationResult::Error(errors) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:259:33 [INFO] [stdout] | [INFO] [stdout] 259 | ... return DecoratorValidationResult::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] 259 - return DecoratorValidationResult::Ok; [INFO] [stdout] 259 + DecoratorValidationResult::Ok [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:283:33 [INFO] [stdout] | [INFO] [stdout] 283 | ... return DecoratorValidationResult::Error(errors); [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] 283 - return DecoratorValidationResult::Error(errors); [INFO] [stdout] 283 + DecoratorValidationResult::Error(errors) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:285:33 [INFO] [stdout] | [INFO] [stdout] 285 | ... return DecoratorValidationResult::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] 285 - return DecoratorValidationResult::Ok; [INFO] [stdout] 285 + DecoratorValidationResult::Ok [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:292:25 [INFO] [stdout] | [INFO] [stdout] 292 | / return DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 293 | | &error_message, [INFO] [stdout] 294 | | None, [INFO] [stdout] 295 | | )]); [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] 292 ~ DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 293 + &error_message, [INFO] [stdout] 294 + None, [INFO] [stdout] 295 ~ )]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> src/decorators/mod.rs:256:32 [INFO] [stdout] | [INFO] [stdout] 256 | ... if errors.len() != 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: using `!is_empty` is clearer and more explicit: `!errors.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> src/decorators/mod.rs:282:32 [INFO] [stdout] | [INFO] [stdout] 282 | ... if errors.len() != 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: using `!is_empty` is clearer and more explicit: `!errors.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/decorators/mod.rs:290:45 [INFO] [stdout] | [INFO] [stdout] 290 | let error_message = format!("The max decorator requires a value to be provided with it. Ex: `@max(5)`"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `"The max decorator requires a value to be provided with it. Ex: `@max(5)`".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/decorators/mod.rs:308:21 [INFO] [stdout] | [INFO] [stdout] 308 | / return DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 309 | | &error_message, [INFO] [stdout] 310 | | None, [INFO] [stdout] 311 | | )]); [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] 308 ~ DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 309 + &error_message, [INFO] [stdout] 310 + None, [INFO] [stdout] 311 ~ )]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:321:25 [INFO] [stdout] | [INFO] [stdout] 321 | / return DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 322 | | &error_message, [INFO] [stdout] 323 | | Some(ValueType::String(v)), [INFO] [stdout] 324 | | )]); [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] 321 ~ DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 322 + &error_message, [INFO] [stdout] 323 + Some(ValueType::String(v)), [INFO] [stdout] 324 ~ )]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:341:29 [INFO] [stdout] | [INFO] [stdout] 341 | ... return DecoratorValidationResult::Error(errors); [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] 341 - return DecoratorValidationResult::Error(errors); [INFO] [stdout] 341 + DecoratorValidationResult::Error(errors) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:343:29 [INFO] [stdout] | [INFO] [stdout] 343 | ... return DecoratorValidationResult::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] 343 - return DecoratorValidationResult::Ok; [INFO] [stdout] 343 + DecoratorValidationResult::Ok [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:350:25 [INFO] [stdout] | [INFO] [stdout] 350 | / return DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 351 | | &error_message, [INFO] [stdout] 352 | | None, [INFO] [stdout] 353 | | )]); [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] 350 ~ DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 351 + &error_message, [INFO] [stdout] 352 + None, [INFO] [stdout] 353 ~ )]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:360:21 [INFO] [stdout] | [INFO] [stdout] 360 | / return DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 361 | | &error_message, [INFO] [stdout] 362 | | None, [INFO] [stdout] 363 | | )]); [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] 360 ~ DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 361 + &error_message, [INFO] [stdout] 362 + None, [INFO] [stdout] 363 ~ )]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> src/decorators/mod.rs:340:28 [INFO] [stdout] | [INFO] [stdout] 340 | if errors.len() != 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: using `!is_empty` is clearer and more explicit: `!errors.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/decorators/mod.rs:348:25 [INFO] [stdout] | [INFO] [stdout] 348 | ... format!("startsWith does not support this variable type. startsWith only supports the string and string array types."); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `"startsWith does not support this variable type. startsWith only supports the string and string array types.".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/decorators/mod.rs:375:21 [INFO] [stdout] | [INFO] [stdout] 375 | / return DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 376 | | &error_message, [INFO] [stdout] 377 | | None, [INFO] [stdout] 378 | | )]); [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] 375 ~ DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 376 + &error_message, [INFO] [stdout] 377 + None, [INFO] [stdout] 378 ~ )]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:388:25 [INFO] [stdout] | [INFO] [stdout] 388 | / return DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 389 | | &error_message, [INFO] [stdout] 390 | | Some(ValueType::String(v)), [INFO] [stdout] 391 | | )]); [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] 388 ~ DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 389 + &error_message, [INFO] [stdout] 390 + Some(ValueType::String(v)), [INFO] [stdout] 391 ~ )]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:408:29 [INFO] [stdout] | [INFO] [stdout] 408 | ... return DecoratorValidationResult::Error(errors); [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] 408 - return DecoratorValidationResult::Error(errors); [INFO] [stdout] 408 + DecoratorValidationResult::Error(errors) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:410:29 [INFO] [stdout] | [INFO] [stdout] 410 | ... return DecoratorValidationResult::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] 410 - return DecoratorValidationResult::Ok; [INFO] [stdout] 410 + DecoratorValidationResult::Ok [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:417:25 [INFO] [stdout] | [INFO] [stdout] 417 | / return DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 418 | | &error_message, [INFO] [stdout] 419 | | None, [INFO] [stdout] 420 | | )]); [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] 417 ~ DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 418 + &error_message, [INFO] [stdout] 419 + None, [INFO] [stdout] 420 ~ )]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:427:21 [INFO] [stdout] | [INFO] [stdout] 427 | / return DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 428 | | &error_message, [INFO] [stdout] 429 | | None, [INFO] [stdout] 430 | | )]); [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] 427 ~ DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 428 + &error_message, [INFO] [stdout] 429 + None, [INFO] [stdout] 430 ~ )]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> src/decorators/mod.rs:407:28 [INFO] [stdout] | [INFO] [stdout] 407 | if errors.len() != 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: using `!is_empty` is clearer and more explicit: `!errors.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/decorators/mod.rs:415:25 [INFO] [stdout] | [INFO] [stdout] 415 | ... format!("endsWith does not support this variable type. endsWith only supports the string and string array types."); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `"endsWith does not support this variable type. endsWith only supports the string and string array types.".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/decorators/mod.rs:446:37 [INFO] [stdout] | [INFO] [stdout] 446 | ... return DecoratorValidationResult::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] 446 - return DecoratorValidationResult::Ok; [INFO] [stdout] 446 + DecoratorValidationResult::Ok [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:451:37 [INFO] [stdout] | [INFO] [stdout] 451 | / ... return DecoratorValidationResult::Error(vec![ [INFO] [stdout] 452 | | ... ValidationError::new( [INFO] [stdout] 453 | | ... &error_message, [INFO] [stdout] 454 | | ... Some(ValueType::String(v)), [INFO] [stdout] 455 | | ... ), [INFO] [stdout] 456 | | ... ]); [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] 451 ~ DecoratorValidationResult::Error(vec![ [INFO] [stdout] 452 + ValidationError::new( [INFO] [stdout] 453 + &error_message, [INFO] [stdout] 454 + Some(ValueType::String(v)), [INFO] [stdout] 455 + ), [INFO] [stdout] 456 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:462:33 [INFO] [stdout] | [INFO] [stdout] 462 | / ... return DecoratorValidationResult::Error(vec![ [INFO] [stdout] 463 | | ... ValidationError::new(&error_message, None), [INFO] [stdout] 464 | | ... ]); [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] 462 ~ DecoratorValidationResult::Error(vec![ [INFO] [stdout] 463 + ValidationError::new(&error_message, None), [INFO] [stdout] 464 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:488:37 [INFO] [stdout] | [INFO] [stdout] 488 | ... return DecoratorValidationResult::Error(errors); [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] 488 - return DecoratorValidationResult::Error(errors); [INFO] [stdout] 488 + DecoratorValidationResult::Error(errors) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:490:37 [INFO] [stdout] | [INFO] [stdout] 490 | ... return DecoratorValidationResult::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] 490 - return DecoratorValidationResult::Ok; [INFO] [stdout] 490 + DecoratorValidationResult::Ok [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:496:33 [INFO] [stdout] | [INFO] [stdout] 496 | / ... return DecoratorValidationResult::Error(vec![ [INFO] [stdout] 497 | | ... ValidationError::new(&error_message, None), [INFO] [stdout] 498 | | ... ]); [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] 496 ~ DecoratorValidationResult::Error(vec![ [INFO] [stdout] 497 + ValidationError::new(&error_message, None), [INFO] [stdout] 498 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:506:25 [INFO] [stdout] | [INFO] [stdout] 506 | / return DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 507 | | &error_message, [INFO] [stdout] 508 | | None, [INFO] [stdout] 509 | | )]); [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] 506 ~ DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 507 + &error_message, [INFO] [stdout] 508 + None, [INFO] [stdout] 509 ~ )]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:515:21 [INFO] [stdout] | [INFO] [stdout] 515 | / return DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 516 | | &error_message, [INFO] [stdout] 517 | | None, [INFO] [stdout] 518 | | )]); [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] 515 ~ DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 516 + &error_message, [INFO] [stdout] 517 + None, [INFO] [stdout] 518 ~ )]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:524:21 [INFO] [stdout] | [INFO] [stdout] 524 | / return DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 525 | | &error_message, [INFO] [stdout] 526 | | None, [INFO] [stdout] 527 | | )]); [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] 524 ~ DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 525 + &error_message, [INFO] [stdout] 526 + None, [INFO] [stdout] 527 ~ )]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/decorators/mod.rs:440:39 [INFO] [stdout] | [INFO] [stdout] 440 | let pattern = format!(r"{dec_value}"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `dec_value.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/decorators/mod.rs:469:39 [INFO] [stdout] | [INFO] [stdout] 469 | let pattern = format!(r"{dec_value}"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `dec_value.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: length comparison to zero [INFO] [stdout] --> src/decorators/mod.rs:487:36 [INFO] [stdout] | [INFO] [stdout] 487 | ... if errors.len() > 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: using `!is_empty` is clearer and more explicit: `!errors.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/decorators/mod.rs:504:25 [INFO] [stdout] | [INFO] [stdout] 504 | ... format!("matches does not support this variable type. matches only supports the string and string array types."); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `"matches does not support this variable type. matches only supports the string and string array types.".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/decorators/mod.rs:513:41 [INFO] [stdout] | [INFO] [stdout] 513 | let error_message = format!("You must provide a string value to matches."); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `"You must provide a string value to matches.".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/decorators/mod.rs:543:37 [INFO] [stdout] | [INFO] [stdout] 543 | ... return DecoratorValidationResult::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] 543 - return DecoratorValidationResult::Ok; [INFO] [stdout] 543 + DecoratorValidationResult::Ok [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:547:37 [INFO] [stdout] | [INFO] [stdout] 547 | / ... return DecoratorValidationResult::Error(vec![ [INFO] [stdout] 548 | | ... ValidationError::new( [INFO] [stdout] 549 | | ... &error_message, [INFO] [stdout] 550 | | ... Some(ValueType::String(v)), [INFO] [stdout] 551 | | ... ), [INFO] [stdout] 552 | | ... ]); [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] 547 ~ DecoratorValidationResult::Error(vec![ [INFO] [stdout] 548 + ValidationError::new( [INFO] [stdout] 549 + &error_message, [INFO] [stdout] 550 + Some(ValueType::String(v)), [INFO] [stdout] 551 + ), [INFO] [stdout] 552 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:558:33 [INFO] [stdout] | [INFO] [stdout] 558 | / ... return DecoratorValidationResult::Error(vec![ [INFO] [stdout] 559 | | ... ValidationError::new(&error_message, None), [INFO] [stdout] 560 | | ... ]); [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] 558 ~ DecoratorValidationResult::Error(vec![ [INFO] [stdout] 559 + ValidationError::new(&error_message, None), [INFO] [stdout] 560 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:583:37 [INFO] [stdout] | [INFO] [stdout] 583 | ... return DecoratorValidationResult::Error(errors); [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] 583 - return DecoratorValidationResult::Error(errors); [INFO] [stdout] 583 + DecoratorValidationResult::Error(errors) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:585:37 [INFO] [stdout] | [INFO] [stdout] 585 | ... return DecoratorValidationResult::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] 585 - return DecoratorValidationResult::Ok; [INFO] [stdout] 585 + DecoratorValidationResult::Ok [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:591:33 [INFO] [stdout] | [INFO] [stdout] 591 | / ... return DecoratorValidationResult::Error(vec![ [INFO] [stdout] 592 | | ... ValidationError::new(&error_message, None), [INFO] [stdout] 593 | | ... ]); [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] 591 ~ DecoratorValidationResult::Error(vec![ [INFO] [stdout] 592 + ValidationError::new(&error_message, None), [INFO] [stdout] 593 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:601:25 [INFO] [stdout] | [INFO] [stdout] 601 | / return DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 602 | | &error_message, [INFO] [stdout] 603 | | None, [INFO] [stdout] 604 | | )]); [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] 601 ~ DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 602 + &error_message, [INFO] [stdout] 603 + None, [INFO] [stdout] 604 ~ )]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:610:21 [INFO] [stdout] | [INFO] [stdout] 610 | / return DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 611 | | &error_message, [INFO] [stdout] 612 | | None, [INFO] [stdout] 613 | | )]); [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] 610 ~ DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 611 + &error_message, [INFO] [stdout] 612 + None, [INFO] [stdout] 613 ~ )]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:619:21 [INFO] [stdout] | [INFO] [stdout] 619 | / return DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 620 | | &error_message, [INFO] [stdout] 621 | | None, [INFO] [stdout] 622 | | )]); [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] 619 ~ DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 620 + &error_message, [INFO] [stdout] 621 + None, [INFO] [stdout] 622 ~ )]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/decorators/mod.rs:537:39 [INFO] [stdout] | [INFO] [stdout] 537 | let pattern = format!(r"{dec_value}"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `dec_value.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/decorators/mod.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | let pattern = format!(r"{dec_value}"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `dec_value.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: length comparison to zero [INFO] [stdout] --> src/decorators/mod.rs:582:36 [INFO] [stdout] | [INFO] [stdout] 582 | ... if errors.len() > 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: using `!is_empty` is clearer and more explicit: `!errors.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/decorators/mod.rs:599:25 [INFO] [stdout] | [INFO] [stdout] 599 | ... format!("doesNotMatch does not support this variable type. doesNotMatch only supports the string and string array types."); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `"doesNotMatch does not support this variable type. doesNotMatch only supports the string and string array types.".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/decorators/mod.rs:608:41 [INFO] [stdout] | [INFO] [stdout] 608 | let error_message = format!("You must provide a string value to doesNotMatch."); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `"You must provide a string value to doesNotMatch.".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/decorators/mod.rs:660:13 [INFO] [stdout] | [INFO] [stdout] 660 | / return DecoratorParseResult { [INFO] [stdout] 661 | | key: key.to_owned(), [INFO] [stdout] 662 | | value: DecoratorValue::from_str(value), [INFO] [stdout] 663 | | }; [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] 660 ~ DecoratorParseResult { [INFO] [stdout] 661 + key: key.to_owned(), [INFO] [stdout] 662 + value: DecoratorValue::from_str(value), [INFO] [stdout] 663 ~ } [INFO] [stdout] 664 | } [INFO] [stdout] ... [INFO] [stdout] 670 | } [INFO] [stdout] 671 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:666:13 [INFO] [stdout] | [INFO] [stdout] 666 | / return DecoratorParseResult { [INFO] [stdout] 667 | | key: dec.to_owned(), [INFO] [stdout] 668 | | value: DecoratorValue::None, [INFO] [stdout] 669 | | } [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] 666 ~ DecoratorParseResult { [INFO] [stdout] 667 + key: dec.to_owned(), [INFO] [stdout] 668 + value: DecoratorValue::None, [INFO] [stdout] 669 + } [INFO] [stdout] 670 | } [INFO] [stdout] 671 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `push_str()` using a single-character string literal [INFO] [stdout] --> src/util/mod.rs:78:9 [INFO] [stdout] | [INFO] [stdout] 78 | result.push_str(" "); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: consider using `push` with a character literal: `result.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: implementation of inherent method `to_string(&self) -> String` for type `util::Answer` [INFO] [stdout] --> src/util/mod.rs:120:5 [INFO] [stdout] | [INFO] [stdout] 120 | / pub fn to_string(&self) -> String { [INFO] [stdout] 121 | | match self { [INFO] [stdout] 122 | | Answer::Yes => String::from("y"), [INFO] [stdout] 123 | | Answer::No => String::from("N"), [INFO] [stdout] 124 | | } [INFO] [stdout] 125 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: implement trait `Display` for type `util::Answer` 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: you should consider adding a `Default` implementation for `Options` [INFO] [stdout] --> src/parsing/config.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | / pub fn new() -> Self { [INFO] [stdout] 22 | | Options { [INFO] [stdout] 23 | | src: String::from(".vnv"), [INFO] [stdout] 24 | | cloak: false, [INFO] [stdout] ... | [INFO] [stdout] 30 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stdout] = note: `#[warn(clippy::new_without_default)]` on by default [INFO] [stdout] help: try adding this [INFO] [stdout] | [INFO] [stdout] 19 + impl Default for Options { [INFO] [stdout] 20 + fn default() -> Self { [INFO] [stdout] 21 + Self::new() [INFO] [stdout] 22 + } [INFO] [stdout] 23 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/parsing/config.rs:45:13 [INFO] [stdout] | [INFO] [stdout] 45 | / return Options { [INFO] [stdout] 46 | | src: object["src"].as_str().unwrap_or(&defaults.src).to_string(), [INFO] [stdout] 47 | | cloak: object["cloak"].to_string().parse().unwrap_or(false), [INFO] [stdout] 48 | | build: Build { [INFO] [stdout] ... | [INFO] [stdout] 52 | | }; [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] 45 ~ Options { [INFO] [stdout] 46 + src: object["src"].as_str().unwrap_or(&defaults.src).to_string(), [INFO] [stdout] 47 + cloak: object["cloak"].to_string().parse().unwrap_or(false), [INFO] [stdout] 48 + build: Build { [INFO] [stdout] 49 + output: object["build"]["output"].as_str().unwrap_or(&defaults.build.output).to_string(), [INFO] [stdout] 50 + minify: object["build"]["minify"].to_string().parse().unwrap_or(false) [INFO] [stdout] 51 + } [INFO] [stdout] 52 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/parsing/config.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 54 | return defaults; [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] 54 - return defaults; [INFO] [stdout] 54 + defaults [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/parsing/config.rs:59:9 [INFO] [stdout] | [INFO] [stdout] 59 | return defaults; [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] 59 - return defaults; [INFO] [stdout] 59 + defaults [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you should consider adding a `Default` implementation for `FilePosition` [INFO] [stdout] --> src/parsing/mod.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | / pub fn new() -> Self { [INFO] [stdout] 15 | | FilePosition { line: 1, column: 1 } [INFO] [stdout] 16 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stdout] help: try adding this [INFO] [stdout] | [INFO] [stdout] 13 + impl Default for FilePosition { [INFO] [stdout] 14 + fn default() -> Self { [INFO] [stdout] 15 + Self::new() [INFO] [stdout] 16 + } [INFO] [stdout] 17 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implementation of inherent method `to_string(&self) -> String` for type `parsing::Environment` [INFO] [stdout] --> src/parsing/mod.rs:33:5 [INFO] [stdout] | [INFO] [stdout] 33 | / pub fn to_string(&self) -> String { [INFO] [stdout] 34 | | match self { [INFO] [stdout] 35 | | Environment::All => String::from("all"), [INFO] [stdout] 36 | | Environment::Dev => String::from("dev"), [INFO] [stdout] ... | [INFO] [stdout] 39 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: implement trait `Display` for type `parsing::Environment` 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: implementation of inherent method `to_string(&self) -> String` for type `parsing::ValueType` [INFO] [stdout] --> src/parsing/mod.rs:51:5 [INFO] [stdout] | [INFO] [stdout] 51 | / pub fn to_string(&self) -> String { [INFO] [stdout] 52 | | match self { [INFO] [stdout] 53 | | ValueType::Number(v) => v.to_string(), [INFO] [stdout] 54 | | ValueType::String(v) => format!("\"{v}\""), [INFO] [stdout] ... | [INFO] [stdout] 58 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: implement trait `Display` for type `parsing::ValueType` 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: unnecessary use of `to_owned` [INFO] [stdout] --> src/parsing/mod.rs:129:19 [INFO] [stdout] | [INFO] [stdout] 129 | for (i, c) in chars.to_owned().into_iter().enumerate() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `chars.iter().copied()` [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: calling `push_str()` using a single-character converted to string [INFO] [stdout] --> src/parsing/mod.rs:143:13 [INFO] [stdout] | [INFO] [stdout] 143 | current.push_str(&c.to_string()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `push` without `to_string()`: `current.push(c)` [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: calling `push_str()` using a single-character converted to string [INFO] [stdout] --> src/parsing/mod.rs:151:13 [INFO] [stdout] | [INFO] [stdout] 151 | current.push_str(&c.to_string()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `push` without `to_string()`: `current.push(c)` [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: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/parsing/mod.rs:164:52 [INFO] [stdout] | [INFO] [stdout] 164 | let value_type = coerce_value_type(¤t.trim()); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: change this to: `current.trim()` [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: length comparison to zero [INFO] [stdout] --> src/parsing/mod.rs:210:28 [INFO] [stdout] | [INFO] [stdout] 210 | valid: errors.len() == 0, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `errors.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> src/parsing/mod.rs:255:8 [INFO] [stdout] | [INFO] [stdout] 255 | if result.errors.len() > 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ help: using `!is_empty` is clearer and more explicit: `!result.errors.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: consider using `sort_by_key` [INFO] [stdout] --> src/parsing/mod.rs:261:5 [INFO] [stdout] | [INFO] [stdout] 261 | / result [INFO] [stdout] 262 | | .keys [INFO] [stdout] 263 | | .sort_by(|a, b| a.position.line.cmp(&b.position.line)); [INFO] [stdout] | |______________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_sort_by [INFO] [stdout] = note: `#[warn(clippy::unnecessary_sort_by)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 263 - .sort_by(|a, b| a.position.line.cmp(&b.position.line)); [INFO] [stdout] 263 + .sort_by_key(|a| a.position.line); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/parsing/mod.rs:287:28 [INFO] [stdout] | [INFO] [stdout] 287 | if c == '"' && !(i == len - 1) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `(i != len - 1)` [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] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/parsing/mod.rs:296:23 [INFO] [stdout] | [INFO] [stdout] 296 | } else if (c == ' ' && is_string) || c != ' ' { [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] help: try [INFO] [stdout] | [INFO] [stdout] 296 - } else if (c == ' ' && is_string) || c != ' ' { [INFO] [stdout] 296 + } else if !(c == ' ' && !is_string) { [INFO] [stdout] | [INFO] [stdout] 296 - } else if (c == ' ' && is_string) || c != ' ' { [INFO] [stdout] 296 + } else if c != ' ' || is_string { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/parsing/mod.rs:274:9 [INFO] [stdout] | [INFO] [stdout] 274 | return ValueType::Number(val.parse::().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] 274 ~ ValueType::Number(val.parse::().unwrap()) [INFO] [stdout] 275 | } else { [INFO] [stdout] ... [INFO] [stdout] 327 | return ValueType::String(trim_quotes(val)); [INFO] [stdout] 328 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/parsing/mod.rs:327:9 [INFO] [stdout] | [INFO] [stdout] 327 | return ValueType::String(trim_quotes(val)); [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] 327 ~ ValueType::String(trim_quotes(val)) [INFO] [stdout] 328 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `push_str()` using a single-character converted to string [INFO] [stdout] --> src/parsing/mod.rs:292:21 [INFO] [stdout] | [INFO] [stdout] 292 | current.push_str(&c.to_string()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `push` without `to_string()`: `current.push(c)` [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: calling `push_str()` using a single-character converted to string [INFO] [stdout] --> src/parsing/mod.rs:297:17 [INFO] [stdout] | [INFO] [stdout] 297 | current.push_str(&c.to_string()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `push` without `to_string()`: `current.push(c)` [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: method `from_str` can be confused for the standard trait method `std::str::FromStr::from_str` [INFO] [stdout] --> src/decorators/mod.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | / pub fn from_str(val: &str) -> Self { [INFO] [stdout] 15 | | if val.parse::().is_ok() { [INFO] [stdout] 16 | | return DecoratorValue::Integer(val.parse::().unwrap()); [INFO] [stdout] ... | [INFO] [stdout] 19 | | return DecoratorValue::String(trim_quotes(val)); [INFO] [stdout] 20 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: consider implementing the trait `std::str::FromStr` or choosing a less ambiguous method name [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#should_implement_trait [INFO] [stdout] = note: `#[warn(clippy::should_implement_trait)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 19 | return DecoratorValue::String(trim_quotes(val)); [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] 19 - return DecoratorValue::String(trim_quotes(val)); [INFO] [stdout] 19 + DecoratorValue::String(trim_quotes(val)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:104:25 [INFO] [stdout] | [INFO] [stdout] 104 | / return DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 105 | | &error_message, [INFO] [stdout] 106 | | None, [INFO] [stdout] 107 | | )]); [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] 104 ~ DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 105 + &error_message, [INFO] [stdout] 106 + None, [INFO] [stdout] 107 ~ )]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:115:33 [INFO] [stdout] | [INFO] [stdout] 115 | / ... return DecoratorValidationResult::Error(vec![ [INFO] [stdout] 116 | | ... ValidationError::new( [INFO] [stdout] 117 | | ... &error_message, [INFO] [stdout] 118 | | ... Some(ValueType::Number(v)), [INFO] [stdout] 119 | | ... ), [INFO] [stdout] 120 | | ... ]); [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] 115 ~ DecoratorValidationResult::Error(vec![ [INFO] [stdout] 116 + ValidationError::new( [INFO] [stdout] 117 + &error_message, [INFO] [stdout] 118 + Some(ValueType::Number(v)), [INFO] [stdout] 119 + ), [INFO] [stdout] 120 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:122:34 [INFO] [stdout] | [INFO] [stdout] 122 | ... _ => return DecoratorValidationResult::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] 122 - _ => return DecoratorValidationResult::Ok, [INFO] [stdout] 122 + _ => DecoratorValidationResult::Ok, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:137:29 [INFO] [stdout] | [INFO] [stdout] 137 | ... return DecoratorValidationResult::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] 137 - return DecoratorValidationResult::Ok; [INFO] [stdout] 137 + DecoratorValidationResult::Ok [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:155:33 [INFO] [stdout] | [INFO] [stdout] 155 | ... return DecoratorValidationResult::Error(errors); [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] 155 - return DecoratorValidationResult::Error(errors); [INFO] [stdout] 155 + DecoratorValidationResult::Error(errors) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:157:33 [INFO] [stdout] | [INFO] [stdout] 157 | ... return DecoratorValidationResult::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] 157 - return DecoratorValidationResult::Ok; [INFO] [stdout] 157 + DecoratorValidationResult::Ok [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:179:33 [INFO] [stdout] | [INFO] [stdout] 179 | ... return DecoratorValidationResult::Error(errors); [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] 179 - return DecoratorValidationResult::Error(errors); [INFO] [stdout] 179 + DecoratorValidationResult::Error(errors) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:181:33 [INFO] [stdout] | [INFO] [stdout] 181 | ... return DecoratorValidationResult::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] 181 - return DecoratorValidationResult::Ok; [INFO] [stdout] 181 + DecoratorValidationResult::Ok [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:188:25 [INFO] [stdout] | [INFO] [stdout] 188 | / return DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 189 | | &error_message, [INFO] [stdout] 190 | | None, [INFO] [stdout] 191 | | )]); [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 ~ DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 189 + &error_message, [INFO] [stdout] 190 + None, [INFO] [stdout] 191 ~ )]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> src/decorators/mod.rs:154:32 [INFO] [stdout] | [INFO] [stdout] 154 | ... if errors.len() != 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: using `!is_empty` is clearer and more explicit: `!errors.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] = note: `#[warn(clippy::len_zero)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> src/decorators/mod.rs:178:32 [INFO] [stdout] | [INFO] [stdout] 178 | ... if errors.len() != 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: using `!is_empty` is clearer and more explicit: `!errors.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/decorators/mod.rs:186:45 [INFO] [stdout] | [INFO] [stdout] 186 | let error_message = format!("The min decorator requires a value to be provided with it. Ex: `@min(5)`"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `"The min decorator requires a value to be provided with it. Ex: `@min(5)`".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: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:206:25 [INFO] [stdout] | [INFO] [stdout] 206 | / return DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 207 | | &error_message, [INFO] [stdout] 208 | | None, [INFO] [stdout] 209 | | )]); [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] 206 ~ DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 207 + &error_message, [INFO] [stdout] 208 + None, [INFO] [stdout] 209 ~ )]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:217:33 [INFO] [stdout] | [INFO] [stdout] 217 | / ... return DecoratorValidationResult::Error(vec![ [INFO] [stdout] 218 | | ... ValidationError::new( [INFO] [stdout] 219 | | ... &error_message, [INFO] [stdout] 220 | | ... Some(ValueType::Number(v)), [INFO] [stdout] 221 | | ... ), [INFO] [stdout] 222 | | ... ]); [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] 217 ~ DecoratorValidationResult::Error(vec![ [INFO] [stdout] 218 + ValidationError::new( [INFO] [stdout] 219 + &error_message, [INFO] [stdout] 220 + Some(ValueType::Number(v)), [INFO] [stdout] 221 + ), [INFO] [stdout] 222 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:224:34 [INFO] [stdout] | [INFO] [stdout] 224 | ... _ => return DecoratorValidationResult::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] 224 - _ => return DecoratorValidationResult::Ok, [INFO] [stdout] 224 + _ => DecoratorValidationResult::Ok, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:239:29 [INFO] [stdout] | [INFO] [stdout] 239 | ... return DecoratorValidationResult::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] 239 - return DecoratorValidationResult::Ok; [INFO] [stdout] 239 + DecoratorValidationResult::Ok [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:257:33 [INFO] [stdout] | [INFO] [stdout] 257 | ... return DecoratorValidationResult::Error(errors); [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] 257 - return DecoratorValidationResult::Error(errors); [INFO] [stdout] 257 + DecoratorValidationResult::Error(errors) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:259:33 [INFO] [stdout] | [INFO] [stdout] 259 | ... return DecoratorValidationResult::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] 259 - return DecoratorValidationResult::Ok; [INFO] [stdout] 259 + DecoratorValidationResult::Ok [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:283:33 [INFO] [stdout] | [INFO] [stdout] 283 | ... return DecoratorValidationResult::Error(errors); [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] 283 - return DecoratorValidationResult::Error(errors); [INFO] [stdout] 283 + DecoratorValidationResult::Error(errors) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:285:33 [INFO] [stdout] | [INFO] [stdout] 285 | ... return DecoratorValidationResult::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] 285 - return DecoratorValidationResult::Ok; [INFO] [stdout] 285 + DecoratorValidationResult::Ok [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:292:25 [INFO] [stdout] | [INFO] [stdout] 292 | / return DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 293 | | &error_message, [INFO] [stdout] 294 | | None, [INFO] [stdout] 295 | | )]); [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] 292 ~ DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 293 + &error_message, [INFO] [stdout] 294 + None, [INFO] [stdout] 295 ~ )]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> src/decorators/mod.rs:256:32 [INFO] [stdout] | [INFO] [stdout] 256 | ... if errors.len() != 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: using `!is_empty` is clearer and more explicit: `!errors.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> src/decorators/mod.rs:282:32 [INFO] [stdout] | [INFO] [stdout] 282 | ... if errors.len() != 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: using `!is_empty` is clearer and more explicit: `!errors.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/decorators/mod.rs:290:45 [INFO] [stdout] | [INFO] [stdout] 290 | let error_message = format!("The max decorator requires a value to be provided with it. Ex: `@max(5)`"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `"The max decorator requires a value to be provided with it. Ex: `@max(5)`".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/decorators/mod.rs:308:21 [INFO] [stdout] | [INFO] [stdout] 308 | / return DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 309 | | &error_message, [INFO] [stdout] 310 | | None, [INFO] [stdout] 311 | | )]); [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] 308 ~ DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 309 + &error_message, [INFO] [stdout] 310 + None, [INFO] [stdout] 311 ~ )]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:321:25 [INFO] [stdout] | [INFO] [stdout] 321 | / return DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 322 | | &error_message, [INFO] [stdout] 323 | | Some(ValueType::String(v)), [INFO] [stdout] 324 | | )]); [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] 321 ~ DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 322 + &error_message, [INFO] [stdout] 323 + Some(ValueType::String(v)), [INFO] [stdout] 324 ~ )]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:341:29 [INFO] [stdout] | [INFO] [stdout] 341 | ... return DecoratorValidationResult::Error(errors); [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] 341 - return DecoratorValidationResult::Error(errors); [INFO] [stdout] 341 + DecoratorValidationResult::Error(errors) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:343:29 [INFO] [stdout] | [INFO] [stdout] 343 | ... return DecoratorValidationResult::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] 343 - return DecoratorValidationResult::Ok; [INFO] [stdout] 343 + DecoratorValidationResult::Ok [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:350:25 [INFO] [stdout] | [INFO] [stdout] 350 | / return DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 351 | | &error_message, [INFO] [stdout] 352 | | None, [INFO] [stdout] 353 | | )]); [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] 350 ~ DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 351 + &error_message, [INFO] [stdout] 352 + None, [INFO] [stdout] 353 ~ )]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:360:21 [INFO] [stdout] | [INFO] [stdout] 360 | / return DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 361 | | &error_message, [INFO] [stdout] 362 | | None, [INFO] [stdout] 363 | | )]); [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] 360 ~ DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 361 + &error_message, [INFO] [stdout] 362 + None, [INFO] [stdout] 363 ~ )]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> src/decorators/mod.rs:340:28 [INFO] [stdout] | [INFO] [stdout] 340 | if errors.len() != 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: using `!is_empty` is clearer and more explicit: `!errors.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/decorators/mod.rs:348:25 [INFO] [stdout] | [INFO] [stdout] 348 | ... format!("startsWith does not support this variable type. startsWith only supports the string and string array types."); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `"startsWith does not support this variable type. startsWith only supports the string and string array types.".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/decorators/mod.rs:375:21 [INFO] [stdout] | [INFO] [stdout] 375 | / return DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 376 | | &error_message, [INFO] [stdout] 377 | | None, [INFO] [stdout] 378 | | )]); [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] 375 ~ DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 376 + &error_message, [INFO] [stdout] 377 + None, [INFO] [stdout] 378 ~ )]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:388:25 [INFO] [stdout] | [INFO] [stdout] 388 | / return DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 389 | | &error_message, [INFO] [stdout] 390 | | Some(ValueType::String(v)), [INFO] [stdout] 391 | | )]); [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] 388 ~ DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 389 + &error_message, [INFO] [stdout] 390 + Some(ValueType::String(v)), [INFO] [stdout] 391 ~ )]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:408:29 [INFO] [stdout] | [INFO] [stdout] 408 | ... return DecoratorValidationResult::Error(errors); [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] 408 - return DecoratorValidationResult::Error(errors); [INFO] [stdout] 408 + DecoratorValidationResult::Error(errors) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:410:29 [INFO] [stdout] | [INFO] [stdout] 410 | ... return DecoratorValidationResult::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] 410 - return DecoratorValidationResult::Ok; [INFO] [stdout] 410 + DecoratorValidationResult::Ok [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:417:25 [INFO] [stdout] | [INFO] [stdout] 417 | / return DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 418 | | &error_message, [INFO] [stdout] 419 | | None, [INFO] [stdout] 420 | | )]); [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] 417 ~ DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 418 + &error_message, [INFO] [stdout] 419 + None, [INFO] [stdout] 420 ~ )]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:427:21 [INFO] [stdout] | [INFO] [stdout] 427 | / return DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 428 | | &error_message, [INFO] [stdout] 429 | | None, [INFO] [stdout] 430 | | )]); [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] 427 ~ DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 428 + &error_message, [INFO] [stdout] 429 + None, [INFO] [stdout] 430 ~ )]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> src/decorators/mod.rs:407:28 [INFO] [stdout] | [INFO] [stdout] 407 | if errors.len() != 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: using `!is_empty` is clearer and more explicit: `!errors.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/decorators/mod.rs:415:25 [INFO] [stdout] | [INFO] [stdout] 415 | ... format!("endsWith does not support this variable type. endsWith only supports the string and string array types."); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `"endsWith does not support this variable type. endsWith only supports the string and string array types.".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/decorators/mod.rs:446:37 [INFO] [stdout] | [INFO] [stdout] 446 | ... return DecoratorValidationResult::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] 446 - return DecoratorValidationResult::Ok; [INFO] [stdout] 446 + DecoratorValidationResult::Ok [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:451:37 [INFO] [stdout] | [INFO] [stdout] 451 | / ... return DecoratorValidationResult::Error(vec![ [INFO] [stdout] 452 | | ... ValidationError::new( [INFO] [stdout] 453 | | ... &error_message, [INFO] [stdout] 454 | | ... Some(ValueType::String(v)), [INFO] [stdout] 455 | | ... ), [INFO] [stdout] 456 | | ... ]); [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] 451 ~ DecoratorValidationResult::Error(vec![ [INFO] [stdout] 452 + ValidationError::new( [INFO] [stdout] 453 + &error_message, [INFO] [stdout] 454 + Some(ValueType::String(v)), [INFO] [stdout] 455 + ), [INFO] [stdout] 456 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:462:33 [INFO] [stdout] | [INFO] [stdout] 462 | / ... return DecoratorValidationResult::Error(vec![ [INFO] [stdout] 463 | | ... ValidationError::new(&error_message, None), [INFO] [stdout] 464 | | ... ]); [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] 462 ~ DecoratorValidationResult::Error(vec![ [INFO] [stdout] 463 + ValidationError::new(&error_message, None), [INFO] [stdout] 464 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:488:37 [INFO] [stdout] | [INFO] [stdout] 488 | ... return DecoratorValidationResult::Error(errors); [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] 488 - return DecoratorValidationResult::Error(errors); [INFO] [stdout] 488 + DecoratorValidationResult::Error(errors) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:490:37 [INFO] [stdout] | [INFO] [stdout] 490 | ... return DecoratorValidationResult::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] 490 - return DecoratorValidationResult::Ok; [INFO] [stdout] 490 + DecoratorValidationResult::Ok [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:496:33 [INFO] [stdout] | [INFO] [stdout] 496 | / ... return DecoratorValidationResult::Error(vec![ [INFO] [stdout] 497 | | ... ValidationError::new(&error_message, None), [INFO] [stdout] 498 | | ... ]); [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] 496 ~ DecoratorValidationResult::Error(vec![ [INFO] [stdout] 497 + ValidationError::new(&error_message, None), [INFO] [stdout] 498 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:506:25 [INFO] [stdout] | [INFO] [stdout] 506 | / return DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 507 | | &error_message, [INFO] [stdout] 508 | | None, [INFO] [stdout] 509 | | )]); [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] 506 ~ DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 507 + &error_message, [INFO] [stdout] 508 + None, [INFO] [stdout] 509 ~ )]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:515:21 [INFO] [stdout] | [INFO] [stdout] 515 | / return DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 516 | | &error_message, [INFO] [stdout] 517 | | None, [INFO] [stdout] 518 | | )]); [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] 515 ~ DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 516 + &error_message, [INFO] [stdout] 517 + None, [INFO] [stdout] 518 ~ )]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:524:21 [INFO] [stdout] | [INFO] [stdout] 524 | / return DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 525 | | &error_message, [INFO] [stdout] 526 | | None, [INFO] [stdout] 527 | | )]); [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] 524 ~ DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 525 + &error_message, [INFO] [stdout] 526 + None, [INFO] [stdout] 527 ~ )]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/decorators/mod.rs:440:39 [INFO] [stdout] | [INFO] [stdout] 440 | let pattern = format!(r"{dec_value}"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `dec_value.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/decorators/mod.rs:469:39 [INFO] [stdout] | [INFO] [stdout] 469 | let pattern = format!(r"{dec_value}"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `dec_value.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: length comparison to zero [INFO] [stdout] --> src/decorators/mod.rs:487:36 [INFO] [stdout] | [INFO] [stdout] 487 | ... if errors.len() > 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: using `!is_empty` is clearer and more explicit: `!errors.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `push_str()` using a single-character string literal [INFO] [stdout] --> src/commands/check.rs:46:13 [INFO] [stdout] | [INFO] [stdout] 46 | status.push_str("❌"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: consider using `push` with a character literal: `status.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: useless use of `format!` [INFO] [stdout] --> src/decorators/mod.rs:504:25 [INFO] [stdout] | [INFO] [stdout] 504 | ... format!("matches does not support this variable type. matches only supports the string and string array types."); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `"matches does not support this variable type. matches only supports the string and string array types.".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/decorators/mod.rs:513:41 [INFO] [stdout] | [INFO] [stdout] 513 | let error_message = format!("You must provide a string value to matches."); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `"You must provide a string value to matches.".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/decorators/mod.rs:543:37 [INFO] [stdout] | [INFO] [stdout] 543 | ... return DecoratorValidationResult::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] 543 - return DecoratorValidationResult::Ok; [INFO] [stdout] 543 + DecoratorValidationResult::Ok [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:547:37 [INFO] [stdout] | [INFO] [stdout] 547 | / ... return DecoratorValidationResult::Error(vec![ [INFO] [stdout] 548 | | ... ValidationError::new( [INFO] [stdout] 549 | | ... &error_message, [INFO] [stdout] 550 | | ... Some(ValueType::String(v)), [INFO] [stdout] 551 | | ... ), [INFO] [stdout] 552 | | ... ]); [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] 547 ~ DecoratorValidationResult::Error(vec![ [INFO] [stdout] 548 + ValidationError::new( [INFO] [stdout] 549 + &error_message, [INFO] [stdout] 550 + Some(ValueType::String(v)), [INFO] [stdout] 551 + ), [INFO] [stdout] 552 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:558:33 [INFO] [stdout] | [INFO] [stdout] 558 | / ... return DecoratorValidationResult::Error(vec![ [INFO] [stdout] 559 | | ... ValidationError::new(&error_message, None), [INFO] [stdout] 560 | | ... ]); [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] 558 ~ DecoratorValidationResult::Error(vec![ [INFO] [stdout] 559 + ValidationError::new(&error_message, None), [INFO] [stdout] 560 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:583:37 [INFO] [stdout] | [INFO] [stdout] 583 | ... return DecoratorValidationResult::Error(errors); [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] 583 - return DecoratorValidationResult::Error(errors); [INFO] [stdout] 583 + DecoratorValidationResult::Error(errors) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:585:37 [INFO] [stdout] | [INFO] [stdout] 585 | ... return DecoratorValidationResult::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] 585 - return DecoratorValidationResult::Ok; [INFO] [stdout] 585 + DecoratorValidationResult::Ok [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:591:33 [INFO] [stdout] | [INFO] [stdout] 591 | / ... return DecoratorValidationResult::Error(vec![ [INFO] [stdout] 592 | | ... ValidationError::new(&error_message, None), [INFO] [stdout] 593 | | ... ]); [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] 591 ~ DecoratorValidationResult::Error(vec![ [INFO] [stdout] 592 + ValidationError::new(&error_message, None), [INFO] [stdout] 593 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:601:25 [INFO] [stdout] | [INFO] [stdout] 601 | / return DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 602 | | &error_message, [INFO] [stdout] 603 | | None, [INFO] [stdout] 604 | | )]); [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] 601 ~ DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 602 + &error_message, [INFO] [stdout] 603 + None, [INFO] [stdout] 604 ~ )]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:610:21 [INFO] [stdout] | [INFO] [stdout] 610 | / return DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 611 | | &error_message, [INFO] [stdout] 612 | | None, [INFO] [stdout] 613 | | )]); [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] 610 ~ DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 611 + &error_message, [INFO] [stdout] 612 + None, [INFO] [stdout] 613 ~ )]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:619:21 [INFO] [stdout] | [INFO] [stdout] 619 | / return DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 620 | | &error_message, [INFO] [stdout] 621 | | None, [INFO] [stdout] 622 | | )]); [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] 619 ~ DecoratorValidationResult::Error(vec![ValidationError::new( [INFO] [stdout] 620 + &error_message, [INFO] [stdout] 621 + None, [INFO] [stdout] 622 ~ )]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `push_str()` using a single-character string literal [INFO] [stdout] --> src/commands/check.rs:81:33 [INFO] [stdout] | [INFO] [stdout] 81 | ... error_squiggles.push_str(" "); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `push` with a character literal: `error_squiggles.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] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/decorators/mod.rs:537:39 [INFO] [stdout] | [INFO] [stdout] 537 | let pattern = format!(r"{dec_value}"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `dec_value.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: calling `push_str()` using a single-character string literal [INFO] [stdout] --> src/commands/check.rs:85:33 [INFO] [stdout] | [INFO] [stdout] 85 | ... error_squiggles.push_str("^"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `push` with a character literal: `error_squiggles.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] [INFO] [stdout] [INFO] [stdout] warning: calling `push_str()` using a single-character string literal [INFO] [stdout] --> src/commands/check.rs:93:33 [INFO] [stdout] | [INFO] [stdout] 93 | ... cloaked.push_str("*"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: consider using `push` with a character literal: `cloaked.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] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/decorators/mod.rs:565:39 [INFO] [stdout] | [INFO] [stdout] 565 | let pattern = format!(r"{dec_value}"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `dec_value.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: length comparison to zero [INFO] [stdout] --> src/decorators/mod.rs:582:36 [INFO] [stdout] | [INFO] [stdout] 582 | ... if errors.len() > 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: using `!is_empty` is clearer and more explicit: `!errors.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `push_str()` using a single-character string literal [INFO] [stdout] --> src/commands/check.rs:110:37 [INFO] [stdout] | [INFO] [stdout] 110 | ... cloaked.push_str("*"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: consider using `push` with a character literal: `cloaked.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] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/decorators/mod.rs:599:25 [INFO] [stdout] | [INFO] [stdout] 599 | ... format!("doesNotMatch does not support this variable type. doesNotMatch only supports the string and string array types."); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `"doesNotMatch does not support this variable type. doesNotMatch only supports the string and string array types.".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/decorators/mod.rs:608:41 [INFO] [stdout] | [INFO] [stdout] 608 | let error_message = format!("You must provide a string value to doesNotMatch."); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `"You must provide a string value to doesNotMatch.".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: calling `push_str()` using a single-character string literal [INFO] [stdout] --> src/commands/check.rs:136:25 [INFO] [stdout] | [INFO] [stdout] 136 | cloaked.push_str("*"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: consider using `push` with a character literal: `cloaked.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] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/commands/check.rs:145:29 [INFO] [stdout] | [INFO] [stdout] 145 | error_str = format!("{}", err.message); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `err.message.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: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:660:13 [INFO] [stdout] | [INFO] [stdout] 660 | / return DecoratorParseResult { [INFO] [stdout] 661 | | key: key.to_owned(), [INFO] [stdout] 662 | | value: DecoratorValue::from_str(value), [INFO] [stdout] 663 | | }; [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] 660 ~ DecoratorParseResult { [INFO] [stdout] 661 + key: key.to_owned(), [INFO] [stdout] 662 + value: DecoratorValue::from_str(value), [INFO] [stdout] 663 ~ } [INFO] [stdout] 664 | } [INFO] [stdout] ... [INFO] [stdout] 670 | } [INFO] [stdout] 671 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/decorators/mod.rs:666:13 [INFO] [stdout] | [INFO] [stdout] 666 | / return DecoratorParseResult { [INFO] [stdout] 667 | | key: dec.to_owned(), [INFO] [stdout] 668 | | value: DecoratorValue::None, [INFO] [stdout] 669 | | } [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] 666 ~ DecoratorParseResult { [INFO] [stdout] 667 + key: dec.to_owned(), [INFO] [stdout] 668 + value: DecoratorValue::None, [INFO] [stdout] 669 + } [INFO] [stdout] 670 | } [INFO] [stdout] 671 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `push_str()` using a single-character string literal [INFO] [stdout] --> src/util/mod.rs:78:9 [INFO] [stdout] | [INFO] [stdout] 78 | result.push_str(" "); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: consider using `push` with a character literal: `result.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: calling `push_str()` using a single-character string literal [INFO] [stdout] --> src/commands/check.rs:46:13 [INFO] [stdout] | [INFO] [stdout] 46 | status.push_str("❌"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: consider using `push` with a character literal: `status.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: implementation of inherent method `to_string(&self) -> String` for type `util::Answer` [INFO] [stdout] --> src/util/mod.rs:120:5 [INFO] [stdout] | [INFO] [stdout] 120 | / pub fn to_string(&self) -> String { [INFO] [stdout] 121 | | match self { [INFO] [stdout] 122 | | Answer::Yes => String::from("y"), [INFO] [stdout] 123 | | Answer::No => String::from("N"), [INFO] [stdout] 124 | | } [INFO] [stdout] 125 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: implement trait `Display` for type `util::Answer` 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: calling `push_str()` using a single-character string literal [INFO] [stdout] --> src/commands/check.rs:81:33 [INFO] [stdout] | [INFO] [stdout] 81 | ... error_squiggles.push_str(" "); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `push` with a character literal: `error_squiggles.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] [INFO] [stdout] [INFO] [stdout] warning: calling `push_str()` using a single-character string literal [INFO] [stdout] --> src/commands/check.rs:85:33 [INFO] [stdout] | [INFO] [stdout] 85 | ... error_squiggles.push_str("^"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `push` with a character literal: `error_squiggles.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] [INFO] [stdout] [INFO] [stdout] warning: calling `push_str()` using a single-character string literal [INFO] [stdout] --> src/commands/check.rs:93:33 [INFO] [stdout] | [INFO] [stdout] 93 | ... cloaked.push_str("*"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: consider using `push` with a character literal: `cloaked.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] [INFO] [stdout] [INFO] [stdout] warning: calling `push_str()` using a single-character string literal [INFO] [stdout] --> src/commands/check.rs:110:37 [INFO] [stdout] | [INFO] [stdout] 110 | ... cloaked.push_str("*"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: consider using `push` with a character literal: `cloaked.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] [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/commands/init.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | / match fs::read(CONFIG_PATH) { [INFO] [stdout] 28 | | Ok(_) => { [INFO] [stdout] 29 | | println!("{} vnv already initialized.", "Error:".bold().red()); [INFO] [stdout] 30 | | return; [INFO] [stdout] 31 | | } [INFO] [stdout] 32 | | _ => {} [INFO] [stdout] 33 | | }; [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] 27 ~ if let Ok(_) = fs::read(CONFIG_PATH) { [INFO] [stdout] 28 + println!("{} vnv already initialized.", "Error:".bold().red()); [INFO] [stdout] 29 + return; [INFO] [stdout] 30 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `push_str()` using a single-character string literal [INFO] [stdout] --> src/commands/check.rs:136:25 [INFO] [stdout] | [INFO] [stdout] 136 | cloaked.push_str("*"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: consider using `push` with a character literal: `cloaked.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] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/commands/check.rs:145:29 [INFO] [stdout] | [INFO] [stdout] 145 | error_str = format!("{}", err.message); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `err.message.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: the borrowed expression implements the required traits [INFO] [stdout] --> src/commands/init.rs:110:15 [INFO] [stdout] | [INFO] [stdout] 110 | fs::write(&CONFIG_PATH, config_content).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^ help: change this to: `CONFIG_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: you should consider adding a `Default` implementation for `Options` [INFO] [stdout] --> src/parsing/config.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | / pub fn new() -> Self { [INFO] [stdout] 22 | | Options { [INFO] [stdout] 23 | | src: String::from(".vnv"), [INFO] [stdout] 24 | | cloak: false, [INFO] [stdout] ... | [INFO] [stdout] 30 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stdout] = note: `#[warn(clippy::new_without_default)]` on by default [INFO] [stdout] help: try adding this [INFO] [stdout] | [INFO] [stdout] 19 + impl Default for Options { [INFO] [stdout] 20 + fn default() -> Self { [INFO] [stdout] 21 + Self::new() [INFO] [stdout] 22 + } [INFO] [stdout] 23 + } [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/commands/init.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | / match fs::read(CONFIG_PATH) { [INFO] [stdout] 28 | | Ok(_) => { [INFO] [stdout] 29 | | println!("{} vnv already initialized.", "Error:".bold().red()); [INFO] [stdout] 30 | | return; [INFO] [stdout] 31 | | } [INFO] [stdout] 32 | | _ => {} [INFO] [stdout] 33 | | }; [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] 27 ~ if let Ok(_) = fs::read(CONFIG_PATH) { [INFO] [stdout] 28 + println!("{} vnv already initialized.", "Error:".bold().red()); [INFO] [stdout] 29 + return; [INFO] [stdout] 30 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/parsing/config.rs:45:13 [INFO] [stdout] | [INFO] [stdout] 45 | / return Options { [INFO] [stdout] 46 | | src: object["src"].as_str().unwrap_or(&defaults.src).to_string(), [INFO] [stdout] 47 | | cloak: object["cloak"].to_string().parse().unwrap_or(false), [INFO] [stdout] 48 | | build: Build { [INFO] [stdout] ... | [INFO] [stdout] 52 | | }; [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] 45 ~ Options { [INFO] [stdout] 46 + src: object["src"].as_str().unwrap_or(&defaults.src).to_string(), [INFO] [stdout] 47 + cloak: object["cloak"].to_string().parse().unwrap_or(false), [INFO] [stdout] 48 + build: Build { [INFO] [stdout] 49 + output: object["build"]["output"].as_str().unwrap_or(&defaults.build.output).to_string(), [INFO] [stdout] 50 + minify: object["build"]["minify"].to_string().parse().unwrap_or(false) [INFO] [stdout] 51 + } [INFO] [stdout] 52 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/parsing/config.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 54 | return defaults; [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] 54 - return defaults; [INFO] [stdout] 54 + defaults [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/parsing/config.rs:59:9 [INFO] [stdout] | [INFO] [stdout] 59 | return defaults; [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] 59 - return defaults; [INFO] [stdout] 59 + defaults [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you should consider adding a `Default` implementation for `FilePosition` [INFO] [stdout] --> src/parsing/mod.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | / pub fn new() -> Self { [INFO] [stdout] 15 | | FilePosition { line: 1, column: 1 } [INFO] [stdout] 16 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stdout] help: try adding this [INFO] [stdout] | [INFO] [stdout] 13 + impl Default for FilePosition { [INFO] [stdout] 14 + fn default() -> Self { [INFO] [stdout] 15 + Self::new() [INFO] [stdout] 16 + } [INFO] [stdout] 17 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implementation of inherent method `to_string(&self) -> String` for type `parsing::Environment` [INFO] [stdout] --> src/parsing/mod.rs:33:5 [INFO] [stdout] | [INFO] [stdout] 33 | / pub fn to_string(&self) -> String { [INFO] [stdout] 34 | | match self { [INFO] [stdout] 35 | | Environment::All => String::from("all"), [INFO] [stdout] 36 | | Environment::Dev => String::from("dev"), [INFO] [stdout] ... | [INFO] [stdout] 39 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: implement trait `Display` for type `parsing::Environment` 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: implementation of inherent method `to_string(&self) -> String` for type `parsing::ValueType` [INFO] [stdout] --> src/parsing/mod.rs:51:5 [INFO] [stdout] | [INFO] [stdout] 51 | / pub fn to_string(&self) -> String { [INFO] [stdout] 52 | | match self { [INFO] [stdout] 53 | | ValueType::Number(v) => v.to_string(), [INFO] [stdout] 54 | | ValueType::String(v) => format!("\"{v}\""), [INFO] [stdout] ... | [INFO] [stdout] 58 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: implement trait `Display` for type `parsing::ValueType` 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: the borrowed expression implements the required traits [INFO] [stdout] --> src/commands/init.rs:110:15 [INFO] [stdout] | [INFO] [stdout] 110 | fs::write(&CONFIG_PATH, config_content).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^ help: change this to: `CONFIG_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: unnecessary use of `to_owned` [INFO] [stdout] --> src/parsing/mod.rs:129:19 [INFO] [stdout] | [INFO] [stdout] 129 | for (i, c) in chars.to_owned().into_iter().enumerate() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `chars.iter().copied()` [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: calling `push_str()` using a single-character converted to string [INFO] [stdout] --> src/parsing/mod.rs:143:13 [INFO] [stdout] | [INFO] [stdout] 143 | current.push_str(&c.to_string()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `push` without `to_string()`: `current.push(c)` [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: calling `push_str()` using a single-character converted to string [INFO] [stdout] --> src/parsing/mod.rs:151:13 [INFO] [stdout] | [INFO] [stdout] 151 | current.push_str(&c.to_string()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `push` without `to_string()`: `current.push(c)` [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: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/parsing/mod.rs:164:52 [INFO] [stdout] | [INFO] [stdout] 164 | let value_type = coerce_value_type(¤t.trim()); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: change this to: `current.trim()` [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: length comparison to zero [INFO] [stdout] --> src/parsing/mod.rs:210:28 [INFO] [stdout] | [INFO] [stdout] 210 | valid: errors.len() == 0, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `errors.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> src/parsing/mod.rs:255:8 [INFO] [stdout] | [INFO] [stdout] 255 | if result.errors.len() > 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ help: using `!is_empty` is clearer and more explicit: `!result.errors.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: consider using `sort_by_key` [INFO] [stdout] --> src/parsing/mod.rs:261:5 [INFO] [stdout] | [INFO] [stdout] 261 | / result [INFO] [stdout] 262 | | .keys [INFO] [stdout] 263 | | .sort_by(|a, b| a.position.line.cmp(&b.position.line)); [INFO] [stdout] | |______________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_sort_by [INFO] [stdout] = note: `#[warn(clippy::unnecessary_sort_by)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 263 - .sort_by(|a, b| a.position.line.cmp(&b.position.line)); [INFO] [stdout] 263 + .sort_by_key(|a| a.position.line); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/parsing/mod.rs:287:28 [INFO] [stdout] | [INFO] [stdout] 287 | if c == '"' && !(i == len - 1) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `(i != len - 1)` [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] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/parsing/mod.rs:296:23 [INFO] [stdout] | [INFO] [stdout] 296 | } else if (c == ' ' && is_string) || c != ' ' { [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] help: try [INFO] [stdout] | [INFO] [stdout] 296 - } else if (c == ' ' && is_string) || c != ' ' { [INFO] [stdout] 296 + } else if !(c == ' ' && !is_string) { [INFO] [stdout] | [INFO] [stdout] 296 - } else if (c == ' ' && is_string) || c != ' ' { [INFO] [stdout] 296 + } else if c != ' ' || is_string { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/parsing/mod.rs:274:9 [INFO] [stdout] | [INFO] [stdout] 274 | return ValueType::Number(val.parse::().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] 274 ~ ValueType::Number(val.parse::().unwrap()) [INFO] [stdout] 275 | } else { [INFO] [stdout] ... [INFO] [stdout] 327 | return ValueType::String(trim_quotes(val)); [INFO] [stdout] 328 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/parsing/mod.rs:327:9 [INFO] [stdout] | [INFO] [stdout] 327 | return ValueType::String(trim_quotes(val)); [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] 327 ~ ValueType::String(trim_quotes(val)) [INFO] [stdout] 328 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `push_str()` using a single-character converted to string [INFO] [stdout] --> src/parsing/mod.rs:292:21 [INFO] [stdout] | [INFO] [stdout] 292 | current.push_str(&c.to_string()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `push` without `to_string()`: `current.push(c)` [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: calling `push_str()` using a single-character converted to string [INFO] [stdout] --> src/parsing/mod.rs:297:17 [INFO] [stdout] | [INFO] [stdout] 297 | current.push_str(&c.to_string()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `push` without `to_string()`: `current.push(c)` [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] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 16.00s [INFO] running `Command { std: "docker" "inspect" "811511d329e6615ff127f466f1046ba45b5503f77e3ec408696a6726bdb1a0a0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "811511d329e6615ff127f466f1046ba45b5503f77e3ec408696a6726bdb1a0a0", kill_on_drop: false }` [INFO] [stdout] 811511d329e6615ff127f466f1046ba45b5503f77e3ec408696a6726bdb1a0a0