[INFO] fetching crate javalocate 0.7.1... [INFO] linting javalocate-0.7.1 against nightly for clippy-nonminimal_bool-denied [INFO] extracting crate javalocate 0.7.1 into /workspace/builds/worker-1-tc1/source [INFO] started tweaking crates.io crate javalocate 0.7.1 [INFO] finished tweaking crates.io crate javalocate 0.7.1 [INFO] tweaked toml for crates.io crate javalocate 0.7.1 written to /workspace/builds/worker-1-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate javalocate 0.7.1 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 javalocate 0.7.1 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] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded num_threads v0.1.3 [INFO] [stderr] Downloaded line-wrap v0.1.1 [INFO] [stderr] Downloaded plist v1.3.1 [INFO] [stderr] Downloaded clap v4.4.10 [INFO] [stderr] Downloaded confy v0.4.0 [INFO] [stderr] Downloaded java-properties v2.0.0 [INFO] [stderr] Downloaded clap_builder v4.4.9 [INFO] [stderr] Downloaded time v0.3.7 [INFO] [stderr] Downloaded libc v0.2.123 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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] 9690ad24ff4f450583eb21825ba5fc609bf312d982f3793fa7174127cb3054b5 [INFO] running `Command { std: "docker" "start" "-a" "9690ad24ff4f450583eb21825ba5fc609bf312d982f3793fa7174127cb3054b5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "9690ad24ff4f450583eb21825ba5fc609bf312d982f3793fa7174127cb3054b5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9690ad24ff4f450583eb21825ba5fc609bf312d982f3793fa7174127cb3054b5", kill_on_drop: false }` [INFO] [stdout] 9690ad24ff4f450583eb21825ba5fc609bf312d982f3793fa7174127cb3054b5 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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] 195bfaaff3042043211068c2783e7cfe460ca5343c12192a223ad00a1439c3f2 [INFO] running `Command { std: "docker" "start" "-a" "195bfaaff3042043211068c2783e7cfe460ca5343c12192a223ad00a1439c3f2", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.70 [INFO] [stderr] Compiling libc v0.2.123 [INFO] [stderr] Compiling syn v1.0.86 [INFO] [stderr] Compiling unicode-xid v0.2.2 [INFO] [stderr] Compiling serde_derive v1.0.136 [INFO] [stderr] Compiling serde v1.0.136 [INFO] [stderr] Checking memchr v2.6.4 [INFO] [stderr] Checking anstyle-query v1.0.0 [INFO] [stderr] Checking regex-syntax v0.8.2 [INFO] [stderr] Checking anstyle v1.0.4 [INFO] [stderr] Checking num_threads v0.1.3 [INFO] [stderr] Checking itoa v1.0.1 [INFO] [stderr] Compiling indexmap v1.8.0 [INFO] [stderr] Checking anstyle-parse v0.2.2 [INFO] [stderr] Checking hashbrown v0.11.2 [INFO] [stderr] Checking clap_lex v0.6.0 [INFO] [stderr] Compiling heck v0.4.0 [INFO] [stderr] Checking line-wrap v0.1.1 [INFO] [stderr] Checking encoding_rs v0.8.33 [INFO] [stderr] Checking xml-rs v0.8.4 [INFO] [stderr] Checking anstream v0.6.4 [INFO] [stderr] Checking exitcode v1.1.2 [INFO] [stderr] Checking aho-corasick v1.1.2 [INFO] [stderr] Checking clap_builder v4.4.9 [INFO] [stderr] Compiling quote v1.0.33 [INFO] [stderr] Checking dirs-sys v0.3.7 [INFO] [stderr] Checking time v0.3.7 [INFO] [stderr] Checking directories v2.0.2 [INFO] [stderr] Compiling syn v2.0.39 [INFO] [stderr] Checking regex-automata v0.4.3 [INFO] [stderr] Compiling clap_derive v4.4.7 [INFO] [stderr] Checking regex v1.10.2 [INFO] [stderr] Checking java-properties v2.0.0 [INFO] [stderr] Checking clap v4.4.10 [INFO] [stderr] Checking toml v0.5.9 [INFO] [stderr] Checking plist v1.3.1 [INFO] [stderr] Checking confy v0.4.0 [INFO] [stderr] Checking javalocate v0.7.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: this `impl` can be derived [INFO] [stdout] --> src/main.rs:83:1 [INFO] [stdout] | [INFO] [stdout] 83 | / impl Default for Config { [INFO] [stdout] 84 | | fn default() -> Self { [INFO] [stdout] 85 | | Config { [INFO] [stdout] 86 | | paths: vec![] [INFO] [stdout] ... | [INFO] [stdout] 89 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#derivable_impls [INFO] [stdout] = note: `#[warn(clippy::derivable_impls)]` on by default [INFO] [stdout] help: replace the manual implementation with a derive attribute [INFO] [stdout] | [INFO] [stdout] 79 + #[derive(Default)] [INFO] [stdout] 80 | struct Config { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/main.rs:95:8 [INFO] [stdout] | [INFO] [stdout] 95 | if !args.register_location.is_none() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `args.register_location.is_some()` [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/main.rs:104:8 [INFO] [stdout] | [INFO] [stdout] 104 | if !args.remove_location.is_none() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `args.remove_location.is_some()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `unwrap` on `args.register_location` after checking its variant with `is_none` [INFO] [stdout] --> src/main.rs:96:24 [INFO] [stdout] | [INFO] [stdout] 95 | if !args.register_location.is_none() { [INFO] [stdout] | -------------------------------- the check is happening here [INFO] [stdout] 96 | let location = args.register_location.as_ref().unwrap().as_str().to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: try using `match` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_unwrap [INFO] [stdout] = note: `#[warn(clippy::unnecessary_unwrap)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `unwrap` on `args.remove_location` after checking its variant with `is_none` [INFO] [stdout] --> src/main.rs:105:24 [INFO] [stdout] | [INFO] [stdout] 104 | if !args.remove_location.is_none() { [INFO] [stdout] | ------------------------------ the check is happening here [INFO] [stdout] 105 | let location = args.remove_location.as_ref().unwrap().as_str().to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: try using `match` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_unwrap [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/main.rs:220:5 [INFO] [stdout] | [INFO] [stdout] 220 | / return OperatingSystem { [INFO] [stdout] 221 | | name, [INFO] [stdout] 222 | | architecture: default_architecture [INFO] [stdout] 223 | | } [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] 220 ~ OperatingSystem { [INFO] [stdout] 221 + name, [INFO] [stdout] 222 + architecture: default_architecture [INFO] [stdout] 223 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `parts.get(0)` [INFO] [stdout] --> src/main.rs:174:26 [INFO] [stdout] | [INFO] [stdout] 174 | let os = trim_string(parts.get(0).unwrap().as_str()); [INFO] [stdout] | ^^^^^^^^^^^^ help: try: `parts.first()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] = note: `#[warn(clippy::get_first)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` has identical blocks [INFO] [stdout] --> src/main.rs:187:57 [INFO] [stdout] | [INFO] [stdout] 187 | } else if arch.eq_ignore_ascii_case("i386") { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 188 | | "x86".to_string() [INFO] [stdout] 189 | | } else if arch.eq_ignore_ascii_case("i586") { [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] note: same as this [INFO] [stdout] --> src/main.rs:189:57 [INFO] [stdout] | [INFO] [stdout] 189 | } else if arch.eq_ignore_ascii_case("i586") { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 190 | | "x86".to_string() [INFO] [stdout] 191 | | } else if arch.eq_ignore_ascii_case("i686") { [INFO] [stdout] | |_____________^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#if_same_then_else [INFO] [stdout] = note: `#[warn(clippy::if_same_then_else)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` has identical blocks [INFO] [stdout] --> src/main.rs:189:57 [INFO] [stdout] | [INFO] [stdout] 189 | } else if arch.eq_ignore_ascii_case("i586") { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 190 | | "x86".to_string() [INFO] [stdout] 191 | | } else if arch.eq_ignore_ascii_case("i686") { [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] note: same as this [INFO] [stdout] --> src/main.rs:191:57 [INFO] [stdout] | [INFO] [stdout] 191 | } else if arch.eq_ignore_ascii_case("i686") { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 192 | | "x86".to_string() [INFO] [stdout] 193 | | } else if arch.eq_ignore_ascii_case("aarch64") { [INFO] [stdout] | |_____________^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#if_same_then_else [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `unwrap` on `release_file` after checking its variant with `is_ok` [INFO] [stdout] --> src/main.rs:287:58 [INFO] [stdout] | [INFO] [stdout] 285 | if release_file.is_ok() { [INFO] [stdout] | ----------------------- help: try: `if let Ok() = release_file` [INFO] [stdout] 286 | // Collate required information [INFO] [stdout] 287 | let properties = read(BufReader::new(release_file.unwrap())).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_unwrap [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/main.rs:328:5 [INFO] [stdout] | [INFO] [stdout] 328 | return return_vec; [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] 328 - return return_vec; [INFO] [stdout] 328 + return_vec [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/main.rs:479:5 [INFO] [stdout] | [INFO] [stdout] 479 | return version_test; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 479 - return version_test; [INFO] [stdout] 479 + version_test [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&String` instead of `&str` involves a new object where a slice will do [INFO] [stdout] --> src/main.rs:469:66 [INFO] [stdout] | [INFO] [stdout] 469 | fn compare_boosting_architecture(a: &Jvm, b: &Jvm, default_arch: &String) -> Ordering { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 469 ~ fn compare_boosting_architecture(a: &Jvm, b: &Jvm, default_arch: &str) -> Ordering { [INFO] [stdout] 470 | let version_test = compare_version_values(&b.version, &a.version); [INFO] [stdout] 471 | if version_test == Ordering::Equal { [INFO] [stdout] 472 ~ if b.architecture != default_arch && a.architecture == default_arch { [INFO] [stdout] 473 | return Ordering::Less; [INFO] [stdout] 474 | } [INFO] [stdout] 475 ~ if b.architecture == default_arch && a.architecture != default_arch { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/main.rs:500:5 [INFO] [stdout] | [INFO] [stdout] 500 | return true; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 500 - return true; [INFO] [stdout] 500 + true [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/main.rs:494:50 [INFO] [stdout] | [INFO] [stdout] 494 | let compare = compare_version_values(&version, &compare_jvm_version); [INFO] [stdout] | ^^^^^^^^ help: change this to: `version` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] = note: `#[warn(clippy::needless_borrow)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/main.rs:538:5 [INFO] [stdout] | [INFO] [stdout] 538 | return compare; [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] 538 - return compare; [INFO] [stdout] 538 + compare [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&String` instead of `&str` involves a new object where a slice will do [INFO] [stdout] --> src/main.rs:503:37 [INFO] [stdout] | [INFO] [stdout] 503 | fn compare_version_values(version1: &String, version2: &String) -> Ordering { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 503 ~ fn compare_version_values(version1: &str, version2: &String) -> Ordering { [INFO] [stdout] 504 | // Normalise old style versions - e.g. 1.8 -> 8, 1.9 -> 9 [INFO] [stdout] 505 | let mut normalised1= version1.strip_prefix("1.") [INFO] [stdout] 506 ~ .unwrap_or(version1).to_string(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&String` instead of `&str` involves a new object where a slice will do [INFO] [stdout] --> src/main.rs:503:56 [INFO] [stdout] | [INFO] [stdout] 503 | fn compare_version_values(version1: &String, version2: &String) -> Ordering { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 503 ~ fn compare_version_values(version1: &String, version2: &str) -> Ordering { [INFO] [stdout] 504 | // Normalise old style versions - e.g. 1.8 -> 8, 1.9 -> 9 [INFO] [stdout] ... [INFO] [stdout] 507 | let mut normalised2= version2.strip_prefix("1.") [INFO] [stdout] 508 ~ .unwrap_or(version2).to_string(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&String` instead of `&str` involves a new object where a slice will do [INFO] [stdout] --> src/main.rs:541:44 [INFO] [stdout] | [INFO] [stdout] 541 | fn get_compare_version(jvm: &Jvm, version: &String) -> String { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 541 - fn get_compare_version(jvm: &Jvm, version: &String) -> String { [INFO] [stdout] 541 + fn get_compare_version(jvm: &Jvm, version: &str) -> String { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/main.rs:546:5 [INFO] [stdout] | [INFO] [stdout] 546 | / if jvm.version.starts_with("1.") && version.matches('.').count() == 0 { [INFO] [stdout] 547 | | if !version.starts_with("1.") { [INFO] [stdout] 548 | | jvm_version = jvm_version.strip_prefix("1.") [INFO] [stdout] 549 | | .unwrap_or(jvm_version.as_str()).to_string(); [INFO] [stdout] 550 | | } [INFO] [stdout] 551 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] = note: `#[warn(clippy::collapsible_if)]` on by default [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 546 ~ if jvm.version.starts_with("1.") && version.matches('.').count() == 0 [INFO] [stdout] 547 ~ && !version.starts_with("1.") { [INFO] [stdout] 548 | jvm_version = jvm_version.strip_prefix("1.") [INFO] [stdout] 549 | .unwrap_or(jvm_version.as_str()).to_string(); [INFO] [stdout] 550 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `impl` can be derived [INFO] [stdout] --> src/main.rs:83:1 [INFO] [stdout] | [INFO] [stdout] 83 | / impl Default for Config { [INFO] [stdout] 84 | | fn default() -> Self { [INFO] [stdout] 85 | | Config { [INFO] [stdout] 86 | | paths: vec![] [INFO] [stdout] ... | [INFO] [stdout] 89 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#derivable_impls [INFO] [stdout] = note: `#[warn(clippy::derivable_impls)]` on by default [INFO] [stdout] help: replace the manual implementation with a derive attribute [INFO] [stdout] | [INFO] [stdout] 79 + #[derive(Default)] [INFO] [stdout] 80 | struct Config { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/main.rs:95:8 [INFO] [stdout] | [INFO] [stdout] 95 | if !args.register_location.is_none() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `args.register_location.is_some()` [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: unneeded `return` statement [INFO] [stdout] --> src/main.rs:570:5 [INFO] [stdout] | [INFO] [stdout] 570 | return true; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 570 - return true; [INFO] [stdout] 570 + true [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/main.rs:104:8 [INFO] [stdout] | [INFO] [stdout] 104 | if !args.remove_location.is_none() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `args.remove_location.is_some()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `unwrap` on `args.register_location` after checking its variant with `is_none` [INFO] [stdout] --> src/main.rs:96:24 [INFO] [stdout] | [INFO] [stdout] 95 | if !args.register_location.is_none() { [INFO] [stdout] | -------------------------------- the check is happening here [INFO] [stdout] 96 | let location = args.register_location.as_ref().unwrap().as_str().to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: try using `match` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_unwrap [INFO] [stdout] = note: `#[warn(clippy::unnecessary_unwrap)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/main.rs:565:5 [INFO] [stdout] | [INFO] [stdout] 565 | / if !arch.is_none() { [INFO] [stdout] 566 | | if jvm.architecture != arch.as_ref().unwrap().to_string() { [INFO] [stdout] 567 | | return false; [INFO] [stdout] 568 | | } [INFO] [stdout] 569 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 565 ~ if !arch.is_none() [INFO] [stdout] 566 ~ && jvm.architecture != arch.as_ref().unwrap().to_string() { [INFO] [stdout] 567 | return false; [INFO] [stdout] 568 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `unwrap` on `args.remove_location` after checking its variant with `is_none` [INFO] [stdout] --> src/main.rs:105:24 [INFO] [stdout] | [INFO] [stdout] 104 | if !args.remove_location.is_none() { [INFO] [stdout] | ------------------------------ the check is happening here [INFO] [stdout] 105 | let location = args.remove_location.as_ref().unwrap().as_str().to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: try using `match` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_unwrap [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/main.rs:566:32 [INFO] [stdout] | [INFO] [stdout] 566 | if jvm.architecture != arch.as_ref().unwrap().to_string() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `*arch.as_ref().unwrap()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] = note: `#[warn(clippy::cmp_owned)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/main.rs:579:5 [INFO] [stdout] | [INFO] [stdout] 579 | return true; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 579 - return true; [INFO] [stdout] 579 + true [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/main.rs:574:5 [INFO] [stdout] | [INFO] [stdout] 574 | / if !name.is_none() { [INFO] [stdout] 575 | | if jvm.name != name.as_ref().unwrap().to_string() { [INFO] [stdout] 576 | | return false; [INFO] [stdout] 577 | | } [INFO] [stdout] 578 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 574 ~ if !name.is_none() [INFO] [stdout] 575 ~ && jvm.name != name.as_ref().unwrap().to_string() { [INFO] [stdout] 576 | return false; [INFO] [stdout] 577 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/main.rs:575:24 [INFO] [stdout] | [INFO] [stdout] 575 | if jvm.name != name.as_ref().unwrap().to_string() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `*name.as_ref().unwrap()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/main.rs:220:5 [INFO] [stdout] | [INFO] [stdout] 220 | / return OperatingSystem { [INFO] [stdout] 221 | | name, [INFO] [stdout] 222 | | architecture: default_architecture [INFO] [stdout] 223 | | } [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] 220 ~ OperatingSystem { [INFO] [stdout] 221 + name, [INFO] [stdout] 222 + architecture: default_architecture [INFO] [stdout] 223 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `parts.get(0)` [INFO] [stdout] --> src/main.rs:174:26 [INFO] [stdout] | [INFO] [stdout] 174 | let os = trim_string(parts.get(0).unwrap().as_str()); [INFO] [stdout] | ^^^^^^^^^^^^ help: try: `parts.first()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] = note: `#[warn(clippy::get_first)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` has identical blocks [INFO] [stdout] --> src/main.rs:187:57 [INFO] [stdout] | [INFO] [stdout] 187 | } else if arch.eq_ignore_ascii_case("i386") { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 188 | | "x86".to_string() [INFO] [stdout] 189 | | } else if arch.eq_ignore_ascii_case("i586") { [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] note: same as this [INFO] [stdout] --> src/main.rs:189:57 [INFO] [stdout] | [INFO] [stdout] 189 | } else if arch.eq_ignore_ascii_case("i586") { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 190 | | "x86".to_string() [INFO] [stdout] 191 | | } else if arch.eq_ignore_ascii_case("i686") { [INFO] [stdout] | |_____________^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#if_same_then_else [INFO] [stdout] = note: `#[warn(clippy::if_same_then_else)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` has identical blocks [INFO] [stdout] --> src/main.rs:189:57 [INFO] [stdout] | [INFO] [stdout] 189 | } else if arch.eq_ignore_ascii_case("i586") { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 190 | | "x86".to_string() [INFO] [stdout] 191 | | } else if arch.eq_ignore_ascii_case("i686") { [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] note: same as this [INFO] [stdout] --> src/main.rs:191:57 [INFO] [stdout] | [INFO] [stdout] 191 | } else if arch.eq_ignore_ascii_case("i686") { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 192 | | "x86".to_string() [INFO] [stdout] 193 | | } else if arch.eq_ignore_ascii_case("aarch64") { [INFO] [stdout] | |_____________^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#if_same_then_else [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `unwrap` on `release_file` after checking its variant with `is_ok` [INFO] [stdout] --> src/main.rs:287:58 [INFO] [stdout] | [INFO] [stdout] 285 | if release_file.is_ok() { [INFO] [stdout] | ----------------------- help: try: `if let Ok() = release_file` [INFO] [stdout] 286 | // Collate required information [INFO] [stdout] 287 | let properties = read(BufReader::new(release_file.unwrap())).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_unwrap [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/main.rs:328:5 [INFO] [stdout] | [INFO] [stdout] 328 | return return_vec; [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] 328 - return return_vec; [INFO] [stdout] 328 + return_vec [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/main.rs:479:5 [INFO] [stdout] | [INFO] [stdout] 479 | return version_test; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 479 - return version_test; [INFO] [stdout] 479 + version_test [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&String` instead of `&str` involves a new object where a slice will do [INFO] [stdout] --> src/main.rs:469:66 [INFO] [stdout] | [INFO] [stdout] 469 | fn compare_boosting_architecture(a: &Jvm, b: &Jvm, default_arch: &String) -> Ordering { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 469 ~ fn compare_boosting_architecture(a: &Jvm, b: &Jvm, default_arch: &str) -> Ordering { [INFO] [stdout] 470 | let version_test = compare_version_values(&b.version, &a.version); [INFO] [stdout] 471 | if version_test == Ordering::Equal { [INFO] [stdout] 472 ~ if b.architecture != default_arch && a.architecture == default_arch { [INFO] [stdout] 473 | return Ordering::Less; [INFO] [stdout] 474 | } [INFO] [stdout] 475 ~ if b.architecture == default_arch && a.architecture != default_arch { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/main.rs:500:5 [INFO] [stdout] | [INFO] [stdout] 500 | return true; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 500 - return true; [INFO] [stdout] 500 + true [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/main.rs:494:50 [INFO] [stdout] | [INFO] [stdout] 494 | let compare = compare_version_values(&version, &compare_jvm_version); [INFO] [stdout] | ^^^^^^^^ help: change this to: `version` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] = note: `#[warn(clippy::needless_borrow)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/main.rs:538:5 [INFO] [stdout] | [INFO] [stdout] 538 | return compare; [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] 538 - return compare; [INFO] [stdout] 538 + compare [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&String` instead of `&str` involves a new object where a slice will do [INFO] [stdout] --> src/main.rs:503:37 [INFO] [stdout] | [INFO] [stdout] 503 | fn compare_version_values(version1: &String, version2: &String) -> Ordering { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 503 ~ fn compare_version_values(version1: &str, version2: &String) -> Ordering { [INFO] [stdout] 504 | // Normalise old style versions - e.g. 1.8 -> 8, 1.9 -> 9 [INFO] [stdout] 505 | let mut normalised1= version1.strip_prefix("1.") [INFO] [stdout] 506 ~ .unwrap_or(version1).to_string(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&String` instead of `&str` involves a new object where a slice will do [INFO] [stdout] --> src/main.rs:503:56 [INFO] [stdout] | [INFO] [stdout] 503 | fn compare_version_values(version1: &String, version2: &String) -> Ordering { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 503 ~ fn compare_version_values(version1: &String, version2: &str) -> Ordering { [INFO] [stdout] 504 | // Normalise old style versions - e.g. 1.8 -> 8, 1.9 -> 9 [INFO] [stdout] ... [INFO] [stdout] 507 | let mut normalised2= version2.strip_prefix("1.") [INFO] [stdout] 508 ~ .unwrap_or(version2).to_string(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&String` instead of `&str` involves a new object where a slice will do [INFO] [stdout] --> src/main.rs:541:44 [INFO] [stdout] | [INFO] [stdout] 541 | fn get_compare_version(jvm: &Jvm, version: &String) -> String { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 541 - fn get_compare_version(jvm: &Jvm, version: &String) -> String { [INFO] [stdout] 541 + fn get_compare_version(jvm: &Jvm, version: &str) -> String { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/main.rs:546:5 [INFO] [stdout] | [INFO] [stdout] 546 | / if jvm.version.starts_with("1.") && version.matches('.').count() == 0 { [INFO] [stdout] 547 | | if !version.starts_with("1.") { [INFO] [stdout] 548 | | jvm_version = jvm_version.strip_prefix("1.") [INFO] [stdout] 549 | | .unwrap_or(jvm_version.as_str()).to_string(); [INFO] [stdout] 550 | | } [INFO] [stdout] 551 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] = note: `#[warn(clippy::collapsible_if)]` on by default [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 546 ~ if jvm.version.starts_with("1.") && version.matches('.').count() == 0 [INFO] [stdout] 547 ~ && !version.starts_with("1.") { [INFO] [stdout] 548 | jvm_version = jvm_version.strip_prefix("1.") [INFO] [stdout] 549 | .unwrap_or(jvm_version.as_str()).to_string(); [INFO] [stdout] 550 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/main.rs:570:5 [INFO] [stdout] | [INFO] [stdout] 570 | return true; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 570 - return true; [INFO] [stdout] 570 + true [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/main.rs:565:5 [INFO] [stdout] | [INFO] [stdout] 565 | / if !arch.is_none() { [INFO] [stdout] 566 | | if jvm.architecture != arch.as_ref().unwrap().to_string() { [INFO] [stdout] 567 | | return false; [INFO] [stdout] 568 | | } [INFO] [stdout] 569 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 565 ~ if !arch.is_none() [INFO] [stdout] 566 ~ && jvm.architecture != arch.as_ref().unwrap().to_string() { [INFO] [stdout] 567 | return false; [INFO] [stdout] 568 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/main.rs:566:32 [INFO] [stdout] | [INFO] [stdout] 566 | if jvm.architecture != arch.as_ref().unwrap().to_string() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `*arch.as_ref().unwrap()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] = note: `#[warn(clippy::cmp_owned)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/main.rs:579:5 [INFO] [stdout] | [INFO] [stdout] 579 | return true; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 579 - return true; [INFO] [stdout] 579 + true [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/main.rs:574:5 [INFO] [stdout] | [INFO] [stdout] 574 | / if !name.is_none() { [INFO] [stdout] 575 | | if jvm.name != name.as_ref().unwrap().to_string() { [INFO] [stdout] 576 | | return false; [INFO] [stdout] 577 | | } [INFO] [stdout] 578 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 574 ~ if !name.is_none() [INFO] [stdout] 575 ~ && jvm.name != name.as_ref().unwrap().to_string() { [INFO] [stdout] 576 | return false; [INFO] [stdout] 577 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/main.rs:575:24 [INFO] [stdout] | [INFO] [stdout] 575 | if jvm.name != name.as_ref().unwrap().to_string() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `*name.as_ref().unwrap()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/main.rs:594:9 [INFO] [stdout] | [INFO] [stdout] 594 | assert_eq!(filter_name(&same_name, &jvm), true); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] = note: `#[warn(clippy::bool_assert_comparison)]` on by default [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 594 - assert_eq!(filter_name(&same_name, &jvm), true); [INFO] [stdout] 594 + assert!(filter_name(&same_name, &jvm)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/main.rs:595:9 [INFO] [stdout] | [INFO] [stdout] 595 | assert_eq!(filter_name(&different_name, &jvm), false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 595 - assert_eq!(filter_name(&different_name, &jvm), false); [INFO] [stdout] 595 + assert!(!filter_name(&different_name, &jvm)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/main.rs:606:9 [INFO] [stdout] | [INFO] [stdout] 606 | assert_eq!(filter_arch(&same_arch, &jvm), true); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 606 - assert_eq!(filter_arch(&same_arch, &jvm), true); [INFO] [stdout] 606 + assert!(filter_arch(&same_arch, &jvm)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/main.rs:607:9 [INFO] [stdout] | [INFO] [stdout] 607 | assert_eq!(filter_arch(&different_arch, &jvm), false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 607 - assert_eq!(filter_arch(&different_arch, &jvm), false); [INFO] [stdout] 607 + assert!(!filter_arch(&different_arch, &jvm)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/main.rs:620:9 [INFO] [stdout] | [INFO] [stdout] 620 | assert_eq!(filter_ver(&same_ver, &jvm), true); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 620 - assert_eq!(filter_ver(&same_ver, &jvm), true); [INFO] [stdout] 620 + assert!(filter_ver(&same_ver, &jvm)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/main.rs:621:9 [INFO] [stdout] | [INFO] [stdout] 621 | assert_eq!(filter_ver(&different_ver_same_format, &jvm), false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 621 - assert_eq!(filter_ver(&different_ver_same_format, &jvm), false); [INFO] [stdout] 621 + assert!(!filter_ver(&different_ver_same_format, &jvm)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/main.rs:622:9 [INFO] [stdout] | [INFO] [stdout] 622 | assert_eq!(filter_ver(&different_ver_diff_format, &jvm), false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 622 - assert_eq!(filter_ver(&different_ver_diff_format, &jvm), false); [INFO] [stdout] 622 + assert!(!filter_ver(&different_ver_diff_format, &jvm)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/main.rs:623:9 [INFO] [stdout] | [INFO] [stdout] 623 | assert_eq!(filter_ver(&different_ver_diff_format2, &jvm), false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 623 - assert_eq!(filter_ver(&different_ver_diff_format2, &jvm), false); [INFO] [stdout] 623 + assert!(!filter_ver(&different_ver_diff_format2, &jvm)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/main.rs:717:9 [INFO] [stdout] | [INFO] [stdout] 717 | assert_eq!(jvm_vec_compare(gold_ordered_aarch64, &jvms), true); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 717 - assert_eq!(jvm_vec_compare(gold_ordered_aarch64, &jvms), true); [INFO] [stdout] 717 + assert!(jvm_vec_compare(gold_ordered_aarch64, &jvms)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/main.rs:719:9 [INFO] [stdout] | [INFO] [stdout] 719 | assert_eq!(jvm_vec_compare(gold_ordered_x86_64, &jvms), true); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 719 - assert_eq!(jvm_vec_compare(gold_ordered_x86_64, &jvms), true); [INFO] [stdout] 719 + assert!(jvm_vec_compare(gold_ordered_x86_64, &jvms)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/main.rs:723:9 [INFO] [stdout] | [INFO] [stdout] 723 | / return Jvm { [INFO] [stdout] 724 | | version: version.to_string(), [INFO] [stdout] 725 | | name: name.to_string(), [INFO] [stdout] 726 | | architecture: architecture.to_string(), [INFO] [stdout] 727 | | path: path.to_string() [INFO] [stdout] 728 | | }; [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] 723 ~ Jvm { [INFO] [stdout] 724 + version: version.to_string(), [INFO] [stdout] 725 + name: name.to_string(), [INFO] [stdout] 726 + architecture: architecture.to_string(), [INFO] [stdout] 727 + path: path.to_string() [INFO] [stdout] 728 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 16.87s [INFO] running `Command { std: "docker" "inspect" "195bfaaff3042043211068c2783e7cfe460ca5343c12192a223ad00a1439c3f2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "195bfaaff3042043211068c2783e7cfe460ca5343c12192a223ad00a1439c3f2", kill_on_drop: false }` [INFO] [stdout] 195bfaaff3042043211068c2783e7cfe460ca5343c12192a223ad00a1439c3f2