[INFO] cloning repository https://github.com/omarbaldeh/sylph [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/omarbaldeh/sylph" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fomarbaldeh%2Fsylph", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fomarbaldeh%2Fsylph'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 9e0e48c389fe0998b0c1c3fa0321eb93b8b36394 [INFO] linting omarbaldeh/sylph against nightly for clippy-nonminimal_bool-denied [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fomarbaldeh%2Fsylph" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'... [INFO] [stderr] done. [INFO] removed /workspace/builds/worker-7-tc1/source/.cargo/config.toml [INFO] started tweaking git repo https://github.com/omarbaldeh/sylph [INFO] finished tweaking git repo https://github.com/omarbaldeh/sylph [INFO] tweaked toml for git repo https://github.com/omarbaldeh/sylph written to /workspace/builds/worker-7-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/omarbaldeh/sylph 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 git repo https://github.com/omarbaldeh/sylph 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] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded tikv-jemallocator v0.6.0 [INFO] [stderr] Downloaded bytemuck v1.19.0 [INFO] [stderr] Downloaded sdd v3.0.4 [INFO] [stderr] Downloaded simple_logger v3.0.0 [INFO] [stderr] Downloaded memory-stats v1.2.0 [INFO] [stderr] Downloaded scalable_cuckoo_filter v0.2.4 [INFO] [stderr] Downloaded assert_cmd v1.0.8 [INFO] [stderr] Downloaded buffer-redux v1.0.2 [INFO] [stderr] Downloaded needletail v0.5.1 [INFO] [stderr] Downloaded scc v2.2.4 [INFO] [stderr] Downloaded cc v1.1.36 [INFO] [stderr] Downloaded cmake v0.1.51 [INFO] [stderr] Downloaded serial_test_derive v3.1.1 [INFO] [stderr] Downloaded serial_test v3.1.1 [INFO] [stderr] Downloaded libz-ng-sys v1.1.20 [INFO] [stderr] Downloaded tikv-jemalloc-sys v0.6.0+5.3.0-1-ge13ca993e8ccb9ba9847cc330696e02839f328f7 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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] c20b051d57ba98bdc65dc448c4ab6275a81d8c10a0a074a04809134b26638658 [INFO] running `Command { std: "docker" "start" "-a" "c20b051d57ba98bdc65dc448c4ab6275a81d8c10a0a074a04809134b26638658", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "c20b051d57ba98bdc65dc448c4ab6275a81d8c10a0a074a04809134b26638658", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c20b051d57ba98bdc65dc448c4ab6275a81d8c10a0a074a04809134b26638658", kill_on_drop: false }` [INFO] [stdout] c20b051d57ba98bdc65dc448c4ab6275a81d8c10a0a074a04809134b26638658 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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] 9cec5c00e7f045dc898f73da85f893b9bd3659efa795676d5891e796ce1c7bad [INFO] running `Command { std: "docker" "start" "-a" "9cec5c00e7f045dc898f73da85f893b9bd3659efa795676d5891e796ce1c7bad", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.89 [INFO] [stderr] Compiling libc v0.2.161 [INFO] [stderr] Checking cfg-if v1.0.0 [INFO] [stderr] Compiling libm v0.2.11 [INFO] [stderr] Checking memchr v2.7.4 [INFO] [stderr] Checking byteorder v1.5.0 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling serde v1.0.214 [INFO] [stderr] Compiling crossbeam-utils v0.8.20 [INFO] [stderr] Checking bytemuck v1.19.0 [INFO] [stderr] Compiling cc v1.1.36 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Checking lazy_static v1.5.0 [INFO] [stderr] Compiling matrixmultiply v0.3.9 [INFO] [stderr] Checking either v1.13.0 [INFO] [stderr] Compiling typenum v1.17.0 [INFO] [stderr] Compiling slab v0.4.9 [INFO] [stderr] Compiling indexmap v1.9.3 [INFO] [stderr] Checking regex-syntax v0.8.5 [INFO] [stderr] Checking itoa v1.0.11 [INFO] [stderr] Checking futures-core v0.3.31 [INFO] [stderr] Checking powerfmt v0.2.0 [INFO] [stderr] Checking safe_arch v0.7.2 [INFO] [stderr] Checking rawpointer v0.2.1 [INFO] [stderr] Checking futures-sink v0.3.31 [INFO] [stderr] Checking adler2 v2.0.0 [INFO] [stderr] Checking miniz_oxide v0.8.0 [INFO] [stderr] Checking deranged v0.3.11 [INFO] [stderr] Checking futures-channel v0.3.31 [INFO] [stderr] Compiling time-macros v0.2.18 [INFO] [stderr] Compiling rayon-core v1.12.1 [INFO] [stderr] Checking crc32fast v1.4.2 [INFO] [stderr] Checking once_cell v1.20.2 [INFO] [stderr] Checking num_threads v0.1.7 [INFO] [stderr] Checking num-conv v0.1.0 [INFO] [stderr] Checking hashbrown v0.12.3 [INFO] [stderr] Checking wide v0.7.28 [INFO] [stderr] Checking hashbrown v0.15.1 [INFO] [stderr] Checking time-core v0.1.2 [INFO] [stderr] Checking os_str_bytes v6.6.1 [INFO] [stderr] Checking aho-corasick v1.1.3 [INFO] [stderr] Checking equivalent v1.0.1 [INFO] [stderr] Checking futures-task v0.3.31 [INFO] [stderr] Compiling quote v1.0.37 [INFO] [stderr] Checking crossbeam-epoch v0.9.18 [INFO] [stderr] Checking pin-utils v0.1.0 [INFO] [stderr] Checking futures-io v0.3.31 [INFO] [stderr] Checking pin-project-lite v0.2.15 [INFO] [stderr] Checking predicates-core v1.0.8 [INFO] [stderr] Checking getrandom v0.2.15 [INFO] [stderr] Checking log v0.4.22 [INFO] [stderr] Checking atty v0.2.14 [INFO] [stderr] Checking futures-util v0.3.31 [INFO] [stderr] Compiling syn v2.0.87 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Compiling cmake v0.1.51 [INFO] [stderr] Compiling proc-macro-error-attr v1.0.4 [INFO] [stderr] Compiling parking_lot_core v0.9.10 [INFO] [stderr] Checking crossbeam-deque v0.8.5 [INFO] [stderr] Checking clap_lex v0.2.4 [INFO] [stderr] Checking approx v0.5.1 [INFO] [stderr] Checking num-integer v0.1.46 [INFO] [stderr] Checking num-complex v0.4.6 [INFO] [stderr] Checking buffer-redux v1.0.2 [INFO] [stderr] Compiling lock_api v0.4.12 [INFO] [stderr] Checking indexmap v2.6.0 [INFO] [stderr] Checking colored v2.1.0 [INFO] [stderr] Checking unsafe-libyaml v0.2.11 [INFO] [stderr] Checking ryu v1.0.18 [INFO] [stderr] Checking num-rational v0.4.2 [INFO] [stderr] Compiling doc-comment v0.3.3 [INFO] [stderr] Checking bytecount v0.6.8 [INFO] [stderr] Checking strsim v0.10.0 [INFO] [stderr] Checking textwrap v0.16.1 [INFO] [stderr] Checking bitflags v1.3.2 [INFO] [stderr] Checking termcolor v1.4.1 [INFO] [stderr] Checking siphasher v1.0.1 [INFO] [stderr] Checking scopeguard v1.2.0 [INFO] [stderr] Compiling bzip2-sys v0.1.11+1.0.8 [INFO] [stderr] Compiling lzma-sys v0.1.20 [INFO] [stderr] Compiling libz-ng-sys v1.1.20 [INFO] [stderr] Checking time v0.3.36 [INFO] [stderr] Checking rayon v1.10.0 [INFO] [stderr] Checking memory-stats v1.2.0 [INFO] [stderr] Checking fxhash v0.2.1 [INFO] [stderr] Checking itertools v0.10.5 [INFO] [stderr] Checking difflib v0.4.0 [INFO] [stderr] Checking regex-automata v0.1.10 [INFO] [stderr] Checking fastrand v2.1.1 [INFO] [stderr] Checking sdd v3.0.4 [INFO] [stderr] Checking xz2 v0.1.7 [INFO] [stderr] Checking termtree v0.4.1 [INFO] [stderr] Checking bstr v0.2.17 [INFO] [stderr] Checking predicates-tree v1.0.11 [INFO] [stderr] Checking float-cmp v0.8.0 [INFO] [stderr] Checking wait-timeout v0.2.0 [INFO] [stderr] Checking normalize-line-endings v0.3.0 [INFO] [stderr] Checking difference v2.0.0 [INFO] [stderr] Checking scc v2.2.4 [INFO] [stderr] Checking regex-automata v0.4.8 [INFO] [stderr] Checking simba v0.6.0 [INFO] [stderr] Checking predicates v2.1.5 [INFO] [stderr] Checking simple_logger v3.0.0 [INFO] [stderr] Checking assert_cmd v1.0.8 [INFO] [stderr] Checking futures-executor v0.3.31 [INFO] [stderr] Checking futures v0.3.31 [INFO] [stderr] Compiling zerocopy-derive v0.7.35 [INFO] [stderr] Compiling serde_derive v1.0.214 [INFO] [stderr] Compiling serial_test_derive v3.1.1 [INFO] [stderr] Checking zerocopy v0.7.35 [INFO] [stderr] Compiling proc-macro-error v1.0.4 [INFO] [stderr] Checking ppv-lite86 v0.2.20 [INFO] [stderr] Compiling nalgebra-macros v0.1.0 [INFO] [stderr] Compiling clap_derive v3.2.25 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking regex v1.11.1 [INFO] [stderr] Checking rand_distr v0.4.3 [INFO] [stderr] Checking scalable_cuckoo_filter v0.2.4 [INFO] [stderr] Checking predicates v1.0.8 [INFO] [stderr] Checking nalgebra v0.29.0 [INFO] [stderr] Checking clap v3.2.25 [INFO] [stderr] Checking bzip2 v0.4.4 [INFO] [stderr] Checking smallvec v1.13.2 [INFO] [stderr] Checking bincode v1.3.3 [INFO] [stderr] Checking serde_yaml v0.9.34+deprecated [INFO] [stderr] Checking parking_lot v0.12.3 [INFO] [stderr] Checking serial_test v3.1.1 [INFO] [stderr] Checking flate2 v1.0.34 [INFO] [stderr] Checking needletail v0.5.1 [INFO] [stderr] Checking statrs v0.16.1 [INFO] [stderr] Checking sylph v0.9.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unneeded sub `cfg` when there is only one condition [INFO] [stdout] --> src/sketch.rs:54:11 [INFO] [stdout] | [INFO] [stdout] 54 | #[cfg(any(target_arch = "x86_64"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `target_arch = "x86_64"` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#non_minimal_cfg [INFO] [stdout] = note: `#[warn(clippy::non_minimal_cfg)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded sub `cfg` when there is only one condition [INFO] [stdout] --> src/sketch.rs:78:11 [INFO] [stdout] | [INFO] [stdout] 78 | #[cfg(any(target_arch = "x86_64"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `target_arch = "x86_64"` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#non_minimal_cfg [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded sub `cfg` when there is only one condition [INFO] [stdout] --> src/sketch.rs:54:11 [INFO] [stdout] | [INFO] [stdout] 54 | #[cfg(any(target_arch = "x86_64"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `target_arch = "x86_64"` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#non_minimal_cfg [INFO] [stdout] = note: `#[warn(clippy::non_minimal_cfg)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded sub `cfg` when there is only one condition [INFO] [stdout] --> src/sketch.rs:78:11 [INFO] [stdout] | [INFO] [stdout] 78 | #[cfg(any(target_arch = "x86_64"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `target_arch = "x86_64"` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#non_minimal_cfg [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: digits grouped inconsistently by underscores [INFO] [stdout] --> src/sketch.rs:803:27 [INFO] [stdout] | [INFO] [stdout] 803 | .initial_capacity(1_000_000_0) [INFO] [stdout] | ^^^^^^^^^^^ help: consider: `10_000_000` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#inconsistent_digit_grouping [INFO] [stdout] = note: `#[warn(clippy::inconsistent_digit_grouping)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> src/sketch.rs:958:9 [INFO] [stdout] | [INFO] [stdout] 958 | sample_name: sample_name, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `sample_name` [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: operator precedence might not be obvious [INFO] [stdout] --> src/seeding.rs:71:19 [INFO] [stdout] | [INFO] [stdout] 71 | let val = kmer >> 2 * i; [INFO] [stdout] | ^^^^^^^^^^^^^ help: consider parenthesizing your expression: `kmer >> (2 * i)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#precedence [INFO] [stdout] = note: `#[warn(clippy::precedence)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> src/contain.rs:808:9 [INFO] [stdout] | [INFO] [stdout] 808 | seq_name: seq_name, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `seq_name` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> src/contain.rs:817:9 [INFO] [stdout] | [INFO] [stdout] 817 | genome_sketch: genome_sketch, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `genome_sketch` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> src/contain.rs:820:9 [INFO] [stdout] | [INFO] [stdout] 820 | kmers_lost: kmers_lost, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `kmers_lost` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: operator precedence might not be obvious [INFO] [stdout] --> src/avx2_seeding.rs:81:39 [INFO] [stdout] | [INFO] [stdout] 81 | let rev_marker_mask: i64 = !(0 | (3 << 2 * k - 2)); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: consider parenthesizing your expression: `3 << (2 * k - 2)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#precedence [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: operator precedence might not be obvious [INFO] [stdout] --> src/avx2_seeding.rs:199:39 [INFO] [stdout] | [INFO] [stdout] 199 | let rev_marker_mask: i64 = !(0 | (3 << 2 * k - 2)); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: consider parenthesizing your expression: `3 << (2 * k - 2)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#precedence [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: digits grouped inconsistently by underscores [INFO] [stdout] --> src/sketch.rs:803:27 [INFO] [stdout] | [INFO] [stdout] 803 | .initial_capacity(1_000_000_0) [INFO] [stdout] | ^^^^^^^^^^^ help: consider: `10_000_000` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#inconsistent_digit_grouping [INFO] [stdout] = note: `#[warn(clippy::inconsistent_digit_grouping)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> src/sketch.rs:958:9 [INFO] [stdout] | [INFO] [stdout] 958 | sample_name: sample_name, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `sample_name` [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: operator precedence might not be obvious [INFO] [stdout] --> src/seeding.rs:71:19 [INFO] [stdout] | [INFO] [stdout] 71 | let val = kmer >> 2 * i; [INFO] [stdout] | ^^^^^^^^^^^^^ help: consider parenthesizing your expression: `kmer >> (2 * i)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#precedence [INFO] [stdout] = note: `#[warn(clippy::precedence)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> src/contain.rs:808:9 [INFO] [stdout] | [INFO] [stdout] 808 | seq_name: seq_name, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `seq_name` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> src/contain.rs:817:9 [INFO] [stdout] | [INFO] [stdout] 817 | genome_sketch: genome_sketch, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `genome_sketch` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> src/contain.rs:820:9 [INFO] [stdout] | [INFO] [stdout] 820 | kmers_lost: kmers_lost, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `kmers_lost` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: operator precedence might not be obvious [INFO] [stdout] --> src/avx2_seeding.rs:81:39 [INFO] [stdout] | [INFO] [stdout] 81 | let rev_marker_mask: i64 = !(0 | (3 << 2 * k - 2)); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: consider parenthesizing your expression: `3 << (2 * k - 2)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#precedence [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: operator precedence might not be obvious [INFO] [stdout] --> src/avx2_seeding.rs:199:39 [INFO] [stdout] | [INFO] [stdout] 199 | let rev_marker_mask: i64 = !(0 | (3 << 2 * k - 2)); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: consider parenthesizing your expression: `3 << (2 * k - 2)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#precedence [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting integer literal to `f64` is unnecessary [INFO] [stdout] --> src/sketch.rs:29:60 [INFO] [stdout] | [INFO] [stdout] 29 | let mut gb_usage_curr = usage.virtual_mem as f64 / 1_000_000_000 as f64; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: try: `1_000_000_000_f64` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stdout] = note: `#[warn(clippy::unnecessary_cast)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting integer literal to `f64` is unnecessary [INFO] [stdout] --> src/sketch.rs:42:60 [INFO] [stdout] | [INFO] [stdout] 42 | gb_usage_curr = usage.virtual_mem as f64 / 1_000_000_000 as f64; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: try: `1_000_000_000_f64` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/sketch.rs:103:9 [INFO] [stdout] | [INFO] [stdout] 103 | 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] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 103 - return true; [INFO] [stdout] 103 + true [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/sketch.rs:105:9 [INFO] [stdout] | [INFO] [stdout] 105 | return false; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 105 - return false; [INFO] [stdout] 105 + false [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this if-then-else expression returns a bool literal [INFO] [stdout] --> src/sketch.rs:96:5 [INFO] [stdout] | [INFO] [stdout] 96 | / if file.ends_with(".fq") [INFO] [stdout] 97 | | || file.ends_with(".fnq") [INFO] [stdout] 98 | | || file.ends_with(".fastq") [INFO] [stdout] 99 | | || file.ends_with(".fq.gz") [INFO] [stdout] ... | [INFO] [stdout] 105 | | return false; [INFO] [stdout] 106 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_bool [INFO] [stdout] = note: `#[warn(clippy::needless_bool)]` on by default [INFO] [stdout] help: you can reduce it to [INFO] [stdout] | [INFO] [stdout] 96 ~ return file.ends_with(".fq") [INFO] [stdout] 97 + || file.ends_with(".fnq") [INFO] [stdout] 98 + || file.ends_with(".fastq") [INFO] [stdout] 99 + || file.ends_with(".fq.gz") [INFO] [stdout] 100 + || file.ends_with(".fnq.gz") || file.ends_with(".fastq.gz") [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/sketch.rs:117:9 [INFO] [stdout] | [INFO] [stdout] 117 | 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] 117 - return true; [INFO] [stdout] 117 + true [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/sketch.rs:119:9 [INFO] [stdout] | [INFO] [stdout] 119 | return false; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 119 - return false; [INFO] [stdout] 119 + false [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this if-then-else expression returns a bool literal [INFO] [stdout] --> src/sketch.rs:110:5 [INFO] [stdout] | [INFO] [stdout] 110 | / if file.ends_with(".fa") [INFO] [stdout] 111 | | || file.ends_with(".fna") [INFO] [stdout] 112 | | || file.ends_with(".fasta") [INFO] [stdout] 113 | | || file.ends_with(".fa.gz") [INFO] [stdout] ... | [INFO] [stdout] 119 | | return false; [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_bool [INFO] [stdout] help: you can reduce it to [INFO] [stdout] | [INFO] [stdout] 110 ~ return file.ends_with(".fa") [INFO] [stdout] 111 + || file.ends_with(".fna") [INFO] [stdout] 112 + || file.ends_with(".fasta") [INFO] [stdout] 113 + || file.ends_with(".fa.gz") [INFO] [stdout] 114 + || file.ends_with(".fna.gz") || file.ends_with(".fasta.gz") [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `unwrap` on `args.list_sequence` after checking its variant with `is_some` [INFO] [stdout] --> src/sketch.rs:171:25 [INFO] [stdout] | [INFO] [stdout] 170 | if args.list_sequence.is_some() { [INFO] [stdout] | ------------------------------- help: try: `if let Some() = &args.list_sequence` [INFO] [stdout] 171 | let file_list = args.list_sequence.as_ref().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] = note: `#[warn(clippy::unnecessary_unwrap)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `unwrap` on `args.list_reads` after checking its variant with `is_some` [INFO] [stdout] --> src/sketch.rs:208:26 [INFO] [stdout] | [INFO] [stdout] 207 | if args.list_reads.is_some() { [INFO] [stdout] | ---------------------------- help: try: `if let Some() = &args.list_reads` [INFO] [stdout] 208 | let file_reads = args.list_reads.as_ref().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: called `unwrap` on `args.list_genomes` after checking its variant with `is_some` [INFO] [stdout] --> src/sketch.rs:213:28 [INFO] [stdout] | [INFO] [stdout] 212 | if args.list_genomes.is_some() { [INFO] [stdout] | ------------------------------ help: try: `if let Some() = &args.list_genomes` [INFO] [stdout] 213 | let file_genomes = args.list_genomes.as_ref().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: called `unwrap` on `args.list_first_pair` after checking its variant with `is_some` [INFO] [stdout] --> src/sketch.rs:237:31 [INFO] [stdout] | [INFO] [stdout] 236 | if args.list_first_pair.is_some() { [INFO] [stdout] | --------------------------------- help: try: `if let Some() = &args.list_first_pair` [INFO] [stdout] 237 | let file_first_pair = args.list_first_pair.as_ref().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: called `unwrap` on `args.list_second_pair` after checking its variant with `is_some` [INFO] [stdout] --> src/sketch.rs:242:32 [INFO] [stdout] | [INFO] [stdout] 241 | if args.list_second_pair.is_some() { [INFO] [stdout] | ---------------------------------- help: try: `if let Some() = &args.list_second_pair` [INFO] [stdout] 242 | let file_second_pair = args.list_second_pair.as_ref().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/sketch.rs:262:9 [INFO] [stdout] | [INFO] [stdout] 262 | return None; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 262 - return None; [INFO] [stdout] 262 + None [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/sketch.rs:272:9 [INFO] [stdout] | [INFO] [stdout] 272 | return Some(sample_names); [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] 272 - return Some(sample_names); [INFO] [stdout] 272 + Some(sample_names) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `unwrap` on `args.max_ram` after checking its variant with `is_some` [INFO] [stdout] --> src/sketch.rs:297:19 [INFO] [stdout] | [INFO] [stdout] 296 | if args.max_ram.is_some() { [INFO] [stdout] | ------------------------- help: try: `if let Some() = args.max_ram` [INFO] [stdout] 297 | max_ram = args.max_ram.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: useless conversion to the same type: `std::ops::Range` [INFO] [stdout] --> src/sketch.rs:312:36 [INFO] [stdout] | [INFO] [stdout] 312 | let iter_vec: Vec = (0..first_pairs.len()).into_iter().collect(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into_iter()`: `(0..first_pairs.len())` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] = note: `#[warn(clippy::useless_conversion)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `unwrap` on `read_sketch_opt` after checking its variant with `is_some` [INFO] [stdout] --> src/sketch.rs:337:35 [INFO] [stdout] | [INFO] [stdout] 330 | if read_sketch_opt.is_some() { [INFO] [stdout] | ---------------------------- help: try: `if let Some() = read_sketch_opt` [INFO] [stdout] ... [INFO] [stdout] 337 | let read_sketch = read_sketch_opt.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 late initialization [INFO] [stdout] --> src/sketch.rs:339:17 [INFO] [stdout] | [INFO] [stdout] 339 | let sketch_name; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] = note: `#[warn(clippy::needless_late_init)]` on by default [INFO] [stdout] help: move the declaration `sketch_name` here and remove the assignments from the branches [INFO] [stdout] | [INFO] [stdout] 339 ~ [INFO] [stdout] 340 ~ let sketch_name = if sample_name.is_some() { [INFO] [stdout] 341 ~ read_sketch.sample_name.as_ref().unwrap() [INFO] [stdout] 342 | } else { [INFO] [stdout] 343 ~ &read_sketch.file_name [INFO] [stdout] 344 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/sketch.rs:347:43 [INFO] [stdout] | [INFO] [stdout] 347 | let file_path = pref.join(&read_file_path); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: change this to: `read_file_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: function call inside of `expect` [INFO] [stdout] --> src/sketch.rs:357:26 [INFO] [stdout] | [INFO] [stdout] 357 | .expect(&format!("{} path not valid; exiting ", file_path_str)), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `unwrap_or_else(|_| panic!("{} path not valid; exiting ", file_path_str))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#expect_fun_call [INFO] [stdout] = note: `#[warn(clippy::expect_fun_call)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::ops::Range` [INFO] [stdout] --> src/sketch.rs:370:32 [INFO] [stdout] | [INFO] [stdout] 370 | let iter_vec: Vec = (0..read_inputs.len()).into_iter().collect(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into_iter()`: `(0..read_inputs.len())` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `unwrap` on `read_sketch_opt` after checking its variant with `is_some` [INFO] [stdout] --> src/sketch.rs:394:31 [INFO] [stdout] | [INFO] [stdout] 393 | if read_sketch_opt.is_some() { [INFO] [stdout] | ---------------------------- help: try: `if let Some() = read_sketch_opt` [INFO] [stdout] 394 | let read_sketch = read_sketch_opt.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 late initialization [INFO] [stdout] --> src/sketch.rs:384:9 [INFO] [stdout] | [INFO] [stdout] 384 | let read_sketch_opt; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ created here [INFO] [stdout] 385 | / read_sketch_opt = sketch_sequences_needle( [INFO] [stdout] 386 | | read_file, [INFO] [stdout] 387 | | args.c, [INFO] [stdout] 388 | | args.k, [INFO] [stdout] 389 | | sample_name.clone(), [INFO] [stdout] 390 | | args.no_dedup, [INFO] [stdout] 391 | | ); [INFO] [stdout] | |_________^ initialised here [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] help: move the declaration `read_sketch_opt` here [INFO] [stdout] | [INFO] [stdout] 384 ~ [INFO] [stdout] 385 ~ let read_sketch_opt = sketch_sequences_needle( [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/sketch.rs:395:13 [INFO] [stdout] | [INFO] [stdout] 395 | let sketch_name; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] help: move the declaration `sketch_name` here and remove the assignments from the branches [INFO] [stdout] | [INFO] [stdout] 395 ~ [INFO] [stdout] 396 ~ let sketch_name = if sample_name.is_some() { [INFO] [stdout] 397 ~ read_sketch.sample_name.as_ref().unwrap() [INFO] [stdout] 398 | } else { [INFO] [stdout] 399 ~ &read_sketch.file_name [INFO] [stdout] 400 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/sketch.rs:402:39 [INFO] [stdout] | [INFO] [stdout] 402 | let file_path = pref.join(&read_file_path); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: change this to: `read_file_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] [INFO] [stdout] [INFO] [stdout] warning: function call inside of `expect` [INFO] [stdout] --> src/sketch.rs:408:22 [INFO] [stdout] | [INFO] [stdout] 408 | .expect(&format!("{} path not valid; exiting.", file_path_str)), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `unwrap_or_else(|_| panic!("{} path not valid; exiting.", file_path_str))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#expect_fun_call [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::ops::Range` [INFO] [stdout] --> src/sketch.rs:418:36 [INFO] [stdout] | [INFO] [stdout] 418 | let iter_vec: Vec = (0..genome_inputs.len()).into_iter().collect(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into_iter()`: `(0..genome_inputs.len())` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `unwrap` on `genome_sketch` after checking its variant with `is_some` [INFO] [stdout] --> src/sketch.rs:454:31 [INFO] [stdout] | [INFO] [stdout] 450 | if genome_sketch.is_some() { [INFO] [stdout] | -------------------------- help: try: `if let Some() = genome_sketch` [INFO] [stdout] ... [INFO] [stdout] 454 | .push(genome_sketch.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: manual implementation of `.is_multiple_of()` [INFO] [stdout] --> src/sketch.rs:459:16 [INFO] [stdout] | [INFO] [stdout] 459 | if *c % 100 == 0 && *c != 0 { [INFO] [stdout] | ^^^^^^^^^^^^^ help: replace with: `(*c).is_multiple_of(100)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_is_multiple_of [INFO] [stdout] = note: `#[warn(clippy::manual_is_multiple_of)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function call inside of `expect` [INFO] [stdout] --> src/sketch.rs:471:46 [INFO] [stdout] | [INFO] [stdout] 471 | File::create(&file_path_str).expect(&format!("{} not valid ", file_path_str)), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `unwrap_or_else(|_| panic!("{} not valid ", file_path_str))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#expect_fun_call [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/sketch.rs:489:8 [INFO] [stdout] | [INFO] [stdout] 489 | if !reader.is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `reader.is_err()` [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: called `unwrap` on `reader` after checking its variant with `is_ok` [INFO] [stdout] --> src/sketch.rs:493:26 [INFO] [stdout] | [INFO] [stdout] 489 | if !reader.is_ok() { [INFO] [stdout] | -------------- the check is happening here [INFO] [stdout] ... [INFO] [stdout] 493 | let mut reader = reader.unwrap(); [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: called `expect` on `record` after checking its variant with `is_ok` [INFO] [stdout] --> src/sketch.rs:503:30 [INFO] [stdout] | [INFO] [stdout] 500 | if record.is_ok() { [INFO] [stdout] | ----------------- help: try: `if let Ok() = record` [INFO] [stdout] ... [INFO] [stdout] 503 | let record = record.expect(&format!("Invalid record for file {} ", ref_file)); [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/sketch.rs:491:9 [INFO] [stdout] | [INFO] [stdout] 491 | 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] 491 - return vec![]; [INFO] [stdout] 491 + vec![] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/sketch.rs:547:9 [INFO] [stdout] | [INFO] [stdout] 547 | 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] 547 - return return_vec; [INFO] [stdout] 547 + return_vec [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/sketch.rs:488:35 [INFO] [stdout] | [INFO] [stdout] 488 | let reader = parse_fastx_file(&ref_file); [INFO] [stdout] | ^^^^^^^^^ help: change this to: `ref_file` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field assignment outside of initializer for an instance created with Default::default() [INFO] [stdout] --> src/sketch.rs:497:13 [INFO] [stdout] | [INFO] [stdout] 497 | return_genome_sketch.c = c; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: consider initializing the variable with `types::GenomeSketch { c: c, k: k, file_name: ref_file.to_string(), ..Default::default() }` and removing relevant reassignments [INFO] [stdout] --> src/sketch.rs:496:13 [INFO] [stdout] | [INFO] [stdout] 496 | let mut return_genome_sketch = GenomeSketch::default(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#field_reassign_with_default [INFO] [stdout] = note: `#[warn(clippy::field_reassign_with_default)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function call inside of `expect` [INFO] [stdout] --> src/sketch.rs:503:37 [INFO] [stdout] | [INFO] [stdout] 503 | let record = record.expect(&format!("Invalid record for file {} ", ref_file)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `unwrap_or_else(|_| panic!("Invalid record for file {} ", ref_file))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#expect_fun_call [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/sketch.rs:561:8 [INFO] [stdout] | [INFO] [stdout] 561 | if !reader.is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `reader.is_err()` [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 `reader` after checking its variant with `is_ok` [INFO] [stdout] --> src/sketch.rs:565:26 [INFO] [stdout] | [INFO] [stdout] 561 | if !reader.is_ok() { [INFO] [stdout] | -------------- the check is happening here [INFO] [stdout] ... [INFO] [stdout] 565 | let mut reader = reader.unwrap(); [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: called `expect` on `record` after checking its variant with `is_ok` [INFO] [stdout] --> src/sketch.rs:574:30 [INFO] [stdout] | [INFO] [stdout] 573 | if record.is_ok() { [INFO] [stdout] | ----------------- help: try: `if let Ok() = record` [INFO] [stdout] 574 | let record = record.expect(&format!("Invalid record for file {} ", ref_file)); [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/sketch.rs:563:9 [INFO] [stdout] | [INFO] [stdout] 563 | return None; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 563 - return None; [INFO] [stdout] 563 + None [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/sketch.rs:622:9 [INFO] [stdout] | [INFO] [stdout] 622 | return Some(return_genome_sketch); [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] 622 - return Some(return_genome_sketch); [INFO] [stdout] 622 + Some(return_genome_sketch) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/sketch.rs:558:35 [INFO] [stdout] | [INFO] [stdout] 558 | let reader = parse_fastx_file(&ref_file); [INFO] [stdout] | ^^^^^^^^^ help: change this to: `ref_file` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field assignment outside of initializer for an instance created with Default::default() [INFO] [stdout] --> src/sketch.rs:568:9 [INFO] [stdout] | [INFO] [stdout] 568 | return_genome_sketch.c = c; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: consider initializing the variable with `types::GenomeSketch { c: c, k: k, file_name: ref_file.to_string(), ..Default::default() }` and removing relevant reassignments [INFO] [stdout] --> src/sketch.rs:567:9 [INFO] [stdout] | [INFO] [stdout] 567 | let mut return_genome_sketch = GenomeSketch::default(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#field_reassign_with_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function call inside of `expect` [INFO] [stdout] --> src/sketch.rs:574:37 [INFO] [stdout] | [INFO] [stdout] 574 | let record = record.expect(&format!("Invalid record for file {} ", ref_file)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `unwrap_or_else(|_| panic!("Invalid record for file {} ", ref_file))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#expect_fun_call [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/sketch.rs:630:9 [INFO] [stdout] | [INFO] [stdout] 630 | return None; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 630 - return None; [INFO] [stdout] 630 + None [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/sketch.rs:656:9 [INFO] [stdout] | [INFO] [stdout] 656 | return Some(([kmer_f, kmer_r], [kmer_g, kmer_t])); [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] 656 - return Some(([kmer_f, kmer_r], [kmer_g, kmer_t])); [INFO] [stdout] 656 + Some(([kmer_f, kmer_r], [kmer_g, kmer_t])) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/sketch.rs:664:9 [INFO] [stdout] | [INFO] [stdout] 664 | return None; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 664 - return None; [INFO] [stdout] 664 + None [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/sketch.rs:688:9 [INFO] [stdout] | [INFO] [stdout] 688 | return Some(([kmer_f, kmer_r], [kmer_g, kmer_t])); [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] 688 - return Some(([kmer_f, kmer_r], [kmer_g, kmer_t])); [INFO] [stdout] 688 + Some(([kmer_f, kmer_r], [kmer_g, kmer_t])) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/sketch.rs:896:5 [INFO] [stdout] | [INFO] [stdout] 896 | return Some(read_sketch); [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] 896 - return Some(read_sketch); [INFO] [stdout] 896 + Some(read_sketch) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/sketch.rs:782:32 [INFO] [stdout] | [INFO] [stdout] 782 | let r1o = parse_fastx_file(&read_file1); [INFO] [stdout] | ^^^^^^^^^^^ help: change this to: `read_file1` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/sketch.rs:783:32 [INFO] [stdout] | [INFO] [stdout] 783 | let r2o = parse_fastx_file(&read_file2); [INFO] [stdout] | ^^^^^^^^^^^ help: change this to: `read_file2` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/sketch.rs:914:8 [INFO] [stdout] | [INFO] [stdout] 914 | if !reader.is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `reader.is_err()` [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 `reader` after checking its variant with `is_ok` [INFO] [stdout] --> src/sketch.rs:918:26 [INFO] [stdout] | [INFO] [stdout] 914 | if !reader.is_ok() { [INFO] [stdout] | -------------- the check is happening here [INFO] [stdout] ... [INFO] [stdout] 918 | let mut reader = reader.unwrap(); [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: called `expect` on `record` after checking its variant with `is_ok` [INFO] [stdout] --> src/sketch.rs:922:30 [INFO] [stdout] | [INFO] [stdout] 920 | if record.is_ok() { [INFO] [stdout] | ----------------- help: try: `if let Ok() = record` [INFO] [stdout] 921 | let mut vec = vec![]; [INFO] [stdout] 922 | let record = record.expect(&format!("Invalid record for file {} ", ref_file)); [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/sketch.rs:952:5 [INFO] [stdout] | [INFO] [stdout] 952 | / return Some(SequencesSketch { [INFO] [stdout] 953 | | kmer_counts: kmer_map, [INFO] [stdout] 954 | | file_name: read_file.to_string(), [INFO] [stdout] 955 | | c, [INFO] [stdout] ... | [INFO] [stdout] 959 | | mean_read_length, [INFO] [stdout] 960 | | }); [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] 952 ~ Some(SequencesSketch { [INFO] [stdout] 953 + kmer_counts: kmer_map, [INFO] [stdout] 954 + file_name: read_file.to_string(), [INFO] [stdout] 955 + c, [INFO] [stdout] 956 + k, [INFO] [stdout] 957 + paired: false, [INFO] [stdout] 958 + sample_name: sample_name, [INFO] [stdout] 959 + mean_read_length, [INFO] [stdout] 960 ~ }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/sketch.rs:908:35 [INFO] [stdout] | [INFO] [stdout] 908 | let reader = parse_fastx_file(&ref_file); [INFO] [stdout] | ^^^^^^^^^ help: change this to: `ref_file` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function call inside of `expect` [INFO] [stdout] --> src/sketch.rs:922:37 [INFO] [stdout] | [INFO] [stdout] 922 | let record = record.expect(&format!("Invalid record for file {} ", ref_file)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `unwrap_or_else(|_| panic!("Invalid record for file {} ", ref_file))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#expect_fun_call [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/sketch.rs:924:17 [INFO] [stdout] | [INFO] [stdout] 924 | let kmer_pair; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] help: move the declaration `kmer_pair` here and remove the assignments from the branches [INFO] [stdout] | [INFO] [stdout] 924 ~ [INFO] [stdout] 925 ~ let kmer_pair = if seq.len() > 400 { [INFO] [stdout] 926 ~ None [INFO] [stdout] 927 | } else { [INFO] [stdout] 928 ~ pair_kmer_single(&seq) [INFO] [stdout] 929 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `impl` can be derived [INFO] [stdout] --> src/types.rs:45:1 [INFO] [stdout] | [INFO] [stdout] 45 | / impl Default for AdjustStatus { [INFO] [stdout] 46 | | fn default() -> Self {AdjustStatus::Low } [INFO] [stdout] 47 | | } [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 and mark the default variant [INFO] [stdout] | [INFO] [stdout] 39 + #[derive(Default)] [INFO] [stdout] 40 | pub enum AdjustStatus { [INFO] [stdout] 41 | Lambda(f64), [INFO] [stdout] 42 ~ #[default] [INFO] [stdout] 43 ~ Low, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/types.rs:71:5 [INFO] [stdout] | [INFO] [stdout] 71 | return key; [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] 71 - return key; [INFO] [stdout] 71 + key [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting to the same type is unnecessary (`usize` -> `usize`) [INFO] [stdout] --> src/types.rs:63:19 [INFO] [stdout] | [INFO] [stdout] 63 | let mut key = usize::from_ne_bytes(bytes.try_into().unwrap()) as usize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `usize::from_ne_bytes(bytes.try_into().unwrap())` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.into_iter()` call is equivalent to `.iter()` and will not consume the `HashMap` [INFO] [stdout] --> src/types.rs:137:44 [INFO] [stdout] | [INFO] [stdout] 137 | serializer.collect_seq(kmer_counts.into_iter()) [INFO] [stdout] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stdout] = note: `#[warn(clippy::into_iter_on_ref)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator` [INFO] [stdout] --> src/types.rs:137:32 [INFO] [stdout] | [INFO] [stdout] 137 | serializer.collect_seq(kmer_counts.into_iter()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.214/src/ser/mod.rs:1283:12 [INFO] [stdout] | [INFO] [stdout] 1283 | I: IntoIterator, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] help: consider removing the `.into_iter()` [INFO] [stdout] | [INFO] [stdout] 137 - serializer.collect_seq(kmer_counts.into_iter()) [INFO] [stdout] 137 + serializer.collect_seq(&*kmer_counts) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/types.rs:159:9 [INFO] [stdout] | [INFO] [stdout] 159 | return SequencesSketch{kmer_counts : HashMap::default(), file_name, c, k, paired, sample_name, mean_read_length} [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] 159 - return SequencesSketch{kmer_counts : HashMap::default(), file_name, c, k, paired, sample_name, mean_read_length} [INFO] [stdout] 159 + SequencesSketch{kmer_counts : HashMap::default(), file_name, c, k, paired, sample_name, mean_read_length} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting integer literal to `f64` is unnecessary [INFO] [stdout] --> src/sketch.rs:29:60 [INFO] [stdout] | [INFO] [stdout] 29 | let mut gb_usage_curr = usage.virtual_mem as f64 / 1_000_000_000 as f64; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: try: `1_000_000_000_f64` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stdout] = note: `#[warn(clippy::unnecessary_cast)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting integer literal to `f64` is unnecessary [INFO] [stdout] --> src/sketch.rs:42:60 [INFO] [stdout] | [INFO] [stdout] 42 | gb_usage_curr = usage.virtual_mem as f64 / 1_000_000_000 as f64; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: try: `1_000_000_000_f64` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/sketch.rs:103:9 [INFO] [stdout] | [INFO] [stdout] 103 | 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] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 103 - return true; [INFO] [stdout] 103 + true [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/sketch.rs:105:9 [INFO] [stdout] | [INFO] [stdout] 105 | return false; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 105 - return false; [INFO] [stdout] 105 + false [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this if-then-else expression returns a bool literal [INFO] [stdout] --> src/sketch.rs:96:5 [INFO] [stdout] | [INFO] [stdout] 96 | / if file.ends_with(".fq") [INFO] [stdout] 97 | | || file.ends_with(".fnq") [INFO] [stdout] 98 | | || file.ends_with(".fastq") [INFO] [stdout] 99 | | || file.ends_with(".fq.gz") [INFO] [stdout] ... | [INFO] [stdout] 105 | | return false; [INFO] [stdout] 106 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_bool [INFO] [stdout] = note: `#[warn(clippy::needless_bool)]` on by default [INFO] [stdout] help: you can reduce it to [INFO] [stdout] | [INFO] [stdout] 96 ~ return file.ends_with(".fq") [INFO] [stdout] 97 + || file.ends_with(".fnq") [INFO] [stdout] 98 + || file.ends_with(".fastq") [INFO] [stdout] 99 + || file.ends_with(".fq.gz") [INFO] [stdout] 100 + || file.ends_with(".fnq.gz") || file.ends_with(".fastq.gz") [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/sketch.rs:117:9 [INFO] [stdout] | [INFO] [stdout] 117 | 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] 117 - return true; [INFO] [stdout] 117 + true [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/sketch.rs:119:9 [INFO] [stdout] | [INFO] [stdout] 119 | return false; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 119 - return false; [INFO] [stdout] 119 + false [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this if-then-else expression returns a bool literal [INFO] [stdout] --> src/sketch.rs:110:5 [INFO] [stdout] | [INFO] [stdout] 110 | / if file.ends_with(".fa") [INFO] [stdout] 111 | | || file.ends_with(".fna") [INFO] [stdout] 112 | | || file.ends_with(".fasta") [INFO] [stdout] 113 | | || file.ends_with(".fa.gz") [INFO] [stdout] ... | [INFO] [stdout] 119 | | return false; [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_bool [INFO] [stdout] help: you can reduce it to [INFO] [stdout] | [INFO] [stdout] 110 ~ return file.ends_with(".fa") [INFO] [stdout] 111 + || file.ends_with(".fna") [INFO] [stdout] 112 + || file.ends_with(".fasta") [INFO] [stdout] 113 + || file.ends_with(".fa.gz") [INFO] [stdout] 114 + || file.ends_with(".fna.gz") || file.ends_with(".fasta.gz") [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of an assign operation [INFO] [stdout] --> src/seeding.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | key = key ^ tmp >> 28; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `key ^= tmp >> 28` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stdout] = note: `#[warn(clippy::assign_op_pattern)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of an assign operation [INFO] [stdout] --> src/seeding.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | key = key ^ tmp >> 14; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `key ^= tmp >> 14` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of an assign operation [INFO] [stdout] --> src/seeding.rs:43:5 [INFO] [stdout] | [INFO] [stdout] 43 | key = key ^ tmp >> 24; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `key ^= tmp >> 24` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/seeding.rs:56:9 [INFO] [stdout] | [INFO] [stdout] 56 | return b'A'; [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] 56 - return b'A'; [INFO] [stdout] 56 + b'A' [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/seeding.rs:58:9 [INFO] [stdout] | [INFO] [stdout] 58 | return b'C'; [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] 58 - return b'C'; [INFO] [stdout] 58 + b'C' [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/seeding.rs:60:9 [INFO] [stdout] | [INFO] [stdout] 60 | return b'G'; [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] 60 - return b'G'; [INFO] [stdout] 60 + b'G' [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/seeding.rs:62:9 [INFO] [stdout] | [INFO] [stdout] 62 | return b'T'; [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] 62 - return b'T'; [INFO] [stdout] 62 + b'T' [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `i` is only used to index `string` [INFO] [stdout] --> src/seeding.rs:119:14 [INFO] [stdout] | [INFO] [stdout] 119 | for i in marker_k-1..len { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] = note: `#[warn(clippy::needless_range_loop)]` on by default [INFO] [stdout] help: consider using an iterator [INFO] [stdout] | [INFO] [stdout] 119 - for i in marker_k-1..len { [INFO] [stdout] 119 + for in string.iter().take(len).skip(marker_k-1) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `i` is used to index `string` [INFO] [stdout] --> src/seeding.rs:182:14 [INFO] [stdout] | [INFO] [stdout] 182 | for i in marker_k-1..len { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator and enumerate() [INFO] [stdout] | [INFO] [stdout] 182 - for i in marker_k-1..len { [INFO] [stdout] 182 + for (i, ) in string.iter().enumerate().take(len).skip(marker_k-1) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `unwrap` on `args.list_sequence` after checking its variant with `is_some` [INFO] [stdout] --> src/sketch.rs:171:25 [INFO] [stdout] | [INFO] [stdout] 170 | if args.list_sequence.is_some() { [INFO] [stdout] | ------------------------------- help: try: `if let Some() = &args.list_sequence` [INFO] [stdout] 171 | let file_list = args.list_sequence.as_ref().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] = note: `#[warn(clippy::unnecessary_unwrap)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `unwrap` on `args.list_reads` after checking its variant with `is_some` [INFO] [stdout] --> src/sketch.rs:208:26 [INFO] [stdout] | [INFO] [stdout] 207 | if args.list_reads.is_some() { [INFO] [stdout] | ---------------------------- help: try: `if let Some() = &args.list_reads` [INFO] [stdout] 208 | let file_reads = args.list_reads.as_ref().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: called `unwrap` on `args.list_genomes` after checking its variant with `is_some` [INFO] [stdout] --> src/sketch.rs:213:28 [INFO] [stdout] | [INFO] [stdout] 212 | if args.list_genomes.is_some() { [INFO] [stdout] | ------------------------------ help: try: `if let Some() = &args.list_genomes` [INFO] [stdout] 213 | let file_genomes = args.list_genomes.as_ref().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: called `unwrap` on `args.list_first_pair` after checking its variant with `is_some` [INFO] [stdout] --> src/sketch.rs:237:31 [INFO] [stdout] | [INFO] [stdout] 236 | if args.list_first_pair.is_some() { [INFO] [stdout] | --------------------------------- help: try: `if let Some() = &args.list_first_pair` [INFO] [stdout] 237 | let file_first_pair = args.list_first_pair.as_ref().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: called `unwrap` on `args.list_second_pair` after checking its variant with `is_some` [INFO] [stdout] --> src/sketch.rs:242:32 [INFO] [stdout] | [INFO] [stdout] 241 | if args.list_second_pair.is_some() { [INFO] [stdout] | ---------------------------------- help: try: `if let Some() = &args.list_second_pair` [INFO] [stdout] 242 | let file_second_pair = args.list_second_pair.as_ref().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/sketch.rs:262:9 [INFO] [stdout] | [INFO] [stdout] 262 | return None; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 262 - return None; [INFO] [stdout] 262 + None [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/sketch.rs:272:9 [INFO] [stdout] | [INFO] [stdout] 272 | return Some(sample_names); [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] 272 - return Some(sample_names); [INFO] [stdout] 272 + Some(sample_names) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `unwrap` on `args.max_ram` after checking its variant with `is_some` [INFO] [stdout] --> src/sketch.rs:297:19 [INFO] [stdout] | [INFO] [stdout] 296 | if args.max_ram.is_some() { [INFO] [stdout] | ------------------------- help: try: `if let Some() = args.max_ram` [INFO] [stdout] 297 | max_ram = args.max_ram.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: useless conversion to the same type: `std::ops::Range` [INFO] [stdout] --> src/sketch.rs:312:36 [INFO] [stdout] | [INFO] [stdout] 312 | let iter_vec: Vec = (0..first_pairs.len()).into_iter().collect(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into_iter()`: `(0..first_pairs.len())` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] = note: `#[warn(clippy::useless_conversion)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `unwrap` on `read_sketch_opt` after checking its variant with `is_some` [INFO] [stdout] --> src/sketch.rs:337:35 [INFO] [stdout] | [INFO] [stdout] 330 | if read_sketch_opt.is_some() { [INFO] [stdout] | ---------------------------- help: try: `if let Some() = read_sketch_opt` [INFO] [stdout] ... [INFO] [stdout] 337 | let read_sketch = read_sketch_opt.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 late initialization [INFO] [stdout] --> src/sketch.rs:339:17 [INFO] [stdout] | [INFO] [stdout] 339 | let sketch_name; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] = note: `#[warn(clippy::needless_late_init)]` on by default [INFO] [stdout] help: move the declaration `sketch_name` here and remove the assignments from the branches [INFO] [stdout] | [INFO] [stdout] 339 ~ [INFO] [stdout] 340 ~ let sketch_name = if sample_name.is_some() { [INFO] [stdout] 341 ~ read_sketch.sample_name.as_ref().unwrap() [INFO] [stdout] 342 | } else { [INFO] [stdout] 343 ~ &read_sketch.file_name [INFO] [stdout] 344 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/sketch.rs:347:43 [INFO] [stdout] | [INFO] [stdout] 347 | let file_path = pref.join(&read_file_path); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: change this to: `read_file_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: function call inside of `expect` [INFO] [stdout] --> src/sketch.rs:357:26 [INFO] [stdout] | [INFO] [stdout] 357 | .expect(&format!("{} path not valid; exiting ", file_path_str)), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `unwrap_or_else(|_| panic!("{} path not valid; exiting ", file_path_str))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#expect_fun_call [INFO] [stdout] = note: `#[warn(clippy::expect_fun_call)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::ops::Range` [INFO] [stdout] --> src/sketch.rs:370:32 [INFO] [stdout] | [INFO] [stdout] 370 | let iter_vec: Vec = (0..read_inputs.len()).into_iter().collect(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into_iter()`: `(0..read_inputs.len())` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `unwrap` on `read_sketch_opt` after checking its variant with `is_some` [INFO] [stdout] --> src/sketch.rs:394:31 [INFO] [stdout] | [INFO] [stdout] 393 | if read_sketch_opt.is_some() { [INFO] [stdout] | ---------------------------- help: try: `if let Some() = read_sketch_opt` [INFO] [stdout] 394 | let read_sketch = read_sketch_opt.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 late initialization [INFO] [stdout] --> src/sketch.rs:384:9 [INFO] [stdout] | [INFO] [stdout] 384 | let read_sketch_opt; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ created here [INFO] [stdout] 385 | / read_sketch_opt = sketch_sequences_needle( [INFO] [stdout] 386 | | read_file, [INFO] [stdout] 387 | | args.c, [INFO] [stdout] 388 | | args.k, [INFO] [stdout] 389 | | sample_name.clone(), [INFO] [stdout] 390 | | args.no_dedup, [INFO] [stdout] 391 | | ); [INFO] [stdout] | |_________^ initialised here [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] help: move the declaration `read_sketch_opt` here [INFO] [stdout] | [INFO] [stdout] 384 ~ [INFO] [stdout] 385 ~ let read_sketch_opt = sketch_sequences_needle( [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/sketch.rs:395:13 [INFO] [stdout] | [INFO] [stdout] 395 | let sketch_name; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] help: move the declaration `sketch_name` here and remove the assignments from the branches [INFO] [stdout] | [INFO] [stdout] 395 ~ [INFO] [stdout] 396 ~ let sketch_name = if sample_name.is_some() { [INFO] [stdout] 397 ~ read_sketch.sample_name.as_ref().unwrap() [INFO] [stdout] 398 | } else { [INFO] [stdout] 399 ~ &read_sketch.file_name [INFO] [stdout] 400 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/sketch.rs:402:39 [INFO] [stdout] | [INFO] [stdout] 402 | let file_path = pref.join(&read_file_path); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: change this to: `read_file_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] [INFO] [stdout] [INFO] [stdout] warning: function call inside of `expect` [INFO] [stdout] --> src/sketch.rs:408:22 [INFO] [stdout] | [INFO] [stdout] 408 | .expect(&format!("{} path not valid; exiting.", file_path_str)), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `unwrap_or_else(|_| panic!("{} path not valid; exiting.", file_path_str))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#expect_fun_call [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::ops::Range` [INFO] [stdout] --> src/sketch.rs:418:36 [INFO] [stdout] | [INFO] [stdout] 418 | let iter_vec: Vec = (0..genome_inputs.len()).into_iter().collect(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into_iter()`: `(0..genome_inputs.len())` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `unwrap` on `genome_sketch` after checking its variant with `is_some` [INFO] [stdout] --> src/sketch.rs:454:31 [INFO] [stdout] | [INFO] [stdout] 450 | if genome_sketch.is_some() { [INFO] [stdout] | -------------------------- help: try: `if let Some() = genome_sketch` [INFO] [stdout] ... [INFO] [stdout] 454 | .push(genome_sketch.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: manual implementation of `.is_multiple_of()` [INFO] [stdout] --> src/sketch.rs:459:16 [INFO] [stdout] | [INFO] [stdout] 459 | if *c % 100 == 0 && *c != 0 { [INFO] [stdout] | ^^^^^^^^^^^^^ help: replace with: `(*c).is_multiple_of(100)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_is_multiple_of [INFO] [stdout] = note: `#[warn(clippy::manual_is_multiple_of)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function call inside of `expect` [INFO] [stdout] --> src/sketch.rs:471:46 [INFO] [stdout] | [INFO] [stdout] 471 | File::create(&file_path_str).expect(&format!("{} not valid ", file_path_str)), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `unwrap_or_else(|_| panic!("{} not valid ", file_path_str))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#expect_fun_call [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/sketch.rs:489:8 [INFO] [stdout] | [INFO] [stdout] 489 | if !reader.is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `reader.is_err()` [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: called `unwrap` on `reader` after checking its variant with `is_ok` [INFO] [stdout] --> src/sketch.rs:493:26 [INFO] [stdout] | [INFO] [stdout] 489 | if !reader.is_ok() { [INFO] [stdout] | -------------- the check is happening here [INFO] [stdout] ... [INFO] [stdout] 493 | let mut reader = reader.unwrap(); [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: called `expect` on `record` after checking its variant with `is_ok` [INFO] [stdout] --> src/sketch.rs:503:30 [INFO] [stdout] | [INFO] [stdout] 500 | if record.is_ok() { [INFO] [stdout] | ----------------- help: try: `if let Ok() = record` [INFO] [stdout] ... [INFO] [stdout] 503 | let record = record.expect(&format!("Invalid record for file {} ", ref_file)); [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/sketch.rs:491:9 [INFO] [stdout] | [INFO] [stdout] 491 | 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] 491 - return vec![]; [INFO] [stdout] 491 + vec![] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/sketch.rs:547:9 [INFO] [stdout] | [INFO] [stdout] 547 | 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] 547 - return return_vec; [INFO] [stdout] 547 + return_vec [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/sketch.rs:488:35 [INFO] [stdout] | [INFO] [stdout] 488 | let reader = parse_fastx_file(&ref_file); [INFO] [stdout] | ^^^^^^^^^ help: change this to: `ref_file` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field assignment outside of initializer for an instance created with Default::default() [INFO] [stdout] --> src/sketch.rs:497:13 [INFO] [stdout] | [INFO] [stdout] 497 | return_genome_sketch.c = c; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: consider initializing the variable with `types::GenomeSketch { c: c, k: k, file_name: ref_file.to_string(), ..Default::default() }` and removing relevant reassignments [INFO] [stdout] --> src/sketch.rs:496:13 [INFO] [stdout] | [INFO] [stdout] 496 | let mut return_genome_sketch = GenomeSketch::default(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#field_reassign_with_default [INFO] [stdout] = note: `#[warn(clippy::field_reassign_with_default)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function call inside of `expect` [INFO] [stdout] --> src/sketch.rs:503:37 [INFO] [stdout] | [INFO] [stdout] 503 | let record = record.expect(&format!("Invalid record for file {} ", ref_file)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `unwrap_or_else(|_| panic!("Invalid record for file {} ", ref_file))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#expect_fun_call [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/sketch.rs:561:8 [INFO] [stdout] | [INFO] [stdout] 561 | if !reader.is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `reader.is_err()` [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 `reader` after checking its variant with `is_ok` [INFO] [stdout] --> src/sketch.rs:565:26 [INFO] [stdout] | [INFO] [stdout] 561 | if !reader.is_ok() { [INFO] [stdout] | -------------- the check is happening here [INFO] [stdout] ... [INFO] [stdout] 565 | let mut reader = reader.unwrap(); [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: called `expect` on `record` after checking its variant with `is_ok` [INFO] [stdout] --> src/sketch.rs:574:30 [INFO] [stdout] | [INFO] [stdout] 573 | if record.is_ok() { [INFO] [stdout] | ----------------- help: try: `if let Ok() = record` [INFO] [stdout] 574 | let record = record.expect(&format!("Invalid record for file {} ", ref_file)); [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/sketch.rs:563:9 [INFO] [stdout] | [INFO] [stdout] 563 | return None; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 563 - return None; [INFO] [stdout] 563 + None [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/sketch.rs:622:9 [INFO] [stdout] | [INFO] [stdout] 622 | return Some(return_genome_sketch); [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] 622 - return Some(return_genome_sketch); [INFO] [stdout] 622 + Some(return_genome_sketch) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/sketch.rs:558:35 [INFO] [stdout] | [INFO] [stdout] 558 | let reader = parse_fastx_file(&ref_file); [INFO] [stdout] | ^^^^^^^^^ help: change this to: `ref_file` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field assignment outside of initializer for an instance created with Default::default() [INFO] [stdout] --> src/sketch.rs:568:9 [INFO] [stdout] | [INFO] [stdout] 568 | return_genome_sketch.c = c; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: consider initializing the variable with `types::GenomeSketch { c: c, k: k, file_name: ref_file.to_string(), ..Default::default() }` and removing relevant reassignments [INFO] [stdout] --> src/sketch.rs:567:9 [INFO] [stdout] | [INFO] [stdout] 567 | let mut return_genome_sketch = GenomeSketch::default(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#field_reassign_with_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function call inside of `expect` [INFO] [stdout] --> src/sketch.rs:574:37 [INFO] [stdout] | [INFO] [stdout] 574 | let record = record.expect(&format!("Invalid record for file {} ", ref_file)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `unwrap_or_else(|_| panic!("Invalid record for file {} ", ref_file))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#expect_fun_call [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/sketch.rs:630:9 [INFO] [stdout] | [INFO] [stdout] 630 | return None; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 630 - return None; [INFO] [stdout] 630 + None [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/sketch.rs:656:9 [INFO] [stdout] | [INFO] [stdout] 656 | return Some(([kmer_f, kmer_r], [kmer_g, kmer_t])); [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] 656 - return Some(([kmer_f, kmer_r], [kmer_g, kmer_t])); [INFO] [stdout] 656 + Some(([kmer_f, kmer_r], [kmer_g, kmer_t])) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/sketch.rs:664:9 [INFO] [stdout] | [INFO] [stdout] 664 | return None; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 664 - return None; [INFO] [stdout] 664 + None [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/sketch.rs:688:9 [INFO] [stdout] | [INFO] [stdout] 688 | return Some(([kmer_f, kmer_r], [kmer_g, kmer_t])); [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] 688 - return Some(([kmer_f, kmer_r], [kmer_g, kmer_t])); [INFO] [stdout] 688 + Some(([kmer_f, kmer_r], [kmer_g, kmer_t])) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/sketch.rs:896:5 [INFO] [stdout] | [INFO] [stdout] 896 | return Some(read_sketch); [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] 896 - return Some(read_sketch); [INFO] [stdout] 896 + Some(read_sketch) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/sketch.rs:782:32 [INFO] [stdout] | [INFO] [stdout] 782 | let r1o = parse_fastx_file(&read_file1); [INFO] [stdout] | ^^^^^^^^^^^ help: change this to: `read_file1` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/sketch.rs:783:32 [INFO] [stdout] | [INFO] [stdout] 783 | let r2o = parse_fastx_file(&read_file2); [INFO] [stdout] | ^^^^^^^^^^^ help: change this to: `read_file2` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/sketch.rs:914:8 [INFO] [stdout] | [INFO] [stdout] 914 | if !reader.is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `reader.is_err()` [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 `reader` after checking its variant with `is_ok` [INFO] [stdout] --> src/sketch.rs:918:26 [INFO] [stdout] | [INFO] [stdout] 914 | if !reader.is_ok() { [INFO] [stdout] | -------------- the check is happening here [INFO] [stdout] ... [INFO] [stdout] 918 | let mut reader = reader.unwrap(); [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: called `expect` on `record` after checking its variant with `is_ok` [INFO] [stdout] --> src/sketch.rs:922:30 [INFO] [stdout] | [INFO] [stdout] 920 | if record.is_ok() { [INFO] [stdout] | ----------------- help: try: `if let Ok() = record` [INFO] [stdout] 921 | let mut vec = vec![]; [INFO] [stdout] 922 | let record = record.expect(&format!("Invalid record for file {} ", ref_file)); [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/sketch.rs:952:5 [INFO] [stdout] | [INFO] [stdout] 952 | / return Some(SequencesSketch { [INFO] [stdout] 953 | | kmer_counts: kmer_map, [INFO] [stdout] 954 | | file_name: read_file.to_string(), [INFO] [stdout] 955 | | c, [INFO] [stdout] ... | [INFO] [stdout] 959 | | mean_read_length, [INFO] [stdout] 960 | | }); [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] 952 ~ Some(SequencesSketch { [INFO] [stdout] 953 + kmer_counts: kmer_map, [INFO] [stdout] 954 + file_name: read_file.to_string(), [INFO] [stdout] 955 + c, [INFO] [stdout] 956 + k, [INFO] [stdout] 957 + paired: false, [INFO] [stdout] 958 + sample_name: sample_name, [INFO] [stdout] 959 + mean_read_length, [INFO] [stdout] 960 ~ }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/sketch.rs:908:35 [INFO] [stdout] | [INFO] [stdout] 908 | let reader = parse_fastx_file(&ref_file); [INFO] [stdout] | ^^^^^^^^^ help: change this to: `ref_file` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function call inside of `expect` [INFO] [stdout] --> src/sketch.rs:922:37 [INFO] [stdout] | [INFO] [stdout] 922 | let record = record.expect(&format!("Invalid record for file {} ", ref_file)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `unwrap_or_else(|_| panic!("Invalid record for file {} ", ref_file))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#expect_fun_call [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/sketch.rs:924:17 [INFO] [stdout] | [INFO] [stdout] 924 | let kmer_pair; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] help: move the declaration `kmer_pair` here and remove the assignments from the branches [INFO] [stdout] | [INFO] [stdout] 924 ~ [INFO] [stdout] 925 ~ let kmer_pair = if seq.len() > 400 { [INFO] [stdout] 926 ~ None [INFO] [stdout] 927 | } else { [INFO] [stdout] 928 ~ pair_kmer_single(&seq) [INFO] [stdout] 929 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `impl` can be derived [INFO] [stdout] --> src/types.rs:45:1 [INFO] [stdout] | [INFO] [stdout] 45 | / impl Default for AdjustStatus { [INFO] [stdout] 46 | | fn default() -> Self {AdjustStatus::Low } [INFO] [stdout] 47 | | } [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 and mark the default variant [INFO] [stdout] | [INFO] [stdout] 39 + #[derive(Default)] [INFO] [stdout] 40 | pub enum AdjustStatus { [INFO] [stdout] 41 | Lambda(f64), [INFO] [stdout] 42 ~ #[default] [INFO] [stdout] 43 ~ Low, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/types.rs:71:5 [INFO] [stdout] | [INFO] [stdout] 71 | return key; [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] 71 - return key; [INFO] [stdout] 71 + key [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting to the same type is unnecessary (`usize` -> `usize`) [INFO] [stdout] --> src/types.rs:63:19 [INFO] [stdout] | [INFO] [stdout] 63 | let mut key = usize::from_ne_bytes(bytes.try_into().unwrap()) as usize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `usize::from_ne_bytes(bytes.try_into().unwrap())` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.into_iter()` call is equivalent to `.iter()` and will not consume the `HashMap` [INFO] [stdout] --> src/types.rs:137:44 [INFO] [stdout] | [INFO] [stdout] 137 | serializer.collect_seq(kmer_counts.into_iter()) [INFO] [stdout] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stdout] = note: `#[warn(clippy::into_iter_on_ref)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator` [INFO] [stdout] --> src/types.rs:137:32 [INFO] [stdout] | [INFO] [stdout] 137 | serializer.collect_seq(kmer_counts.into_iter()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.214/src/ser/mod.rs:1283:12 [INFO] [stdout] | [INFO] [stdout] 1283 | I: IntoIterator, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] help: consider removing the `.into_iter()` [INFO] [stdout] | [INFO] [stdout] 137 - serializer.collect_seq(kmer_counts.into_iter()) [INFO] [stdout] 137 + serializer.collect_seq(&*kmer_counts) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/types.rs:159:9 [INFO] [stdout] | [INFO] [stdout] 159 | return SequencesSketch{kmer_counts : HashMap::default(), file_name, c, k, paired, sample_name, mean_read_length} [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] 159 - return SequencesSketch{kmer_counts : HashMap::default(), file_name, c, k, paired, sample_name, mean_read_length} [INFO] [stdout] 159 + SequencesSketch{kmer_counts : HashMap::default(), file_name, c, k, paired, sample_name, mean_read_length} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of an assign operation [INFO] [stdout] --> src/seeding.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | key = key ^ tmp >> 28; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `key ^= tmp >> 28` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stdout] = note: `#[warn(clippy::assign_op_pattern)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of an assign operation [INFO] [stdout] --> src/seeding.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | key = key ^ tmp >> 14; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `key ^= tmp >> 14` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of an assign operation [INFO] [stdout] --> src/seeding.rs:43:5 [INFO] [stdout] | [INFO] [stdout] 43 | key = key ^ tmp >> 24; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `key ^= tmp >> 24` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/seeding.rs:56:9 [INFO] [stdout] | [INFO] [stdout] 56 | return b'A'; [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] 56 - return b'A'; [INFO] [stdout] 56 + b'A' [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/seeding.rs:58:9 [INFO] [stdout] | [INFO] [stdout] 58 | return b'C'; [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] 58 - return b'C'; [INFO] [stdout] 58 + b'C' [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/seeding.rs:60:9 [INFO] [stdout] | [INFO] [stdout] 60 | return b'G'; [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] 60 - return b'G'; [INFO] [stdout] 60 + b'G' [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/seeding.rs:62:9 [INFO] [stdout] | [INFO] [stdout] 62 | return b'T'; [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] 62 - return b'T'; [INFO] [stdout] 62 + b'T' [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `i` is only used to index `string` [INFO] [stdout] --> src/seeding.rs:119:14 [INFO] [stdout] | [INFO] [stdout] 119 | for i in marker_k-1..len { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] = note: `#[warn(clippy::needless_range_loop)]` on by default [INFO] [stdout] help: consider using an iterator [INFO] [stdout] | [INFO] [stdout] 119 - for i in marker_k-1..len { [INFO] [stdout] 119 + for in string.iter().take(len).skip(marker_k-1) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `i` is used to index `string` [INFO] [stdout] --> src/seeding.rs:182:14 [INFO] [stdout] | [INFO] [stdout] 182 | for i in marker_k-1..len { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator and enumerate() [INFO] [stdout] | [INFO] [stdout] 182 - for i in marker_k-1..len { [INFO] [stdout] 182 + for (i, ) in string.iter().enumerate().take(len).skip(marker_k-1) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `unwrap` on `low_ani` after checking its variant with `is_none` [INFO] [stdout] --> src/contain.rs:39:13 [INFO] [stdout] | [INFO] [stdout] 34 | if low_ani.is_none() || high_ani.is_none() { [INFO] [stdout] | ----------------- the check is happening here [INFO] [stdout] ... [INFO] [stdout] 39 | low_ani.unwrap() * 100., [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: called `unwrap` on `high_ani` after checking its variant with `is_none` [INFO] [stdout] --> src/contain.rs:40:13 [INFO] [stdout] | [INFO] [stdout] 34 | if low_ani.is_none() || high_ani.is_none() { [INFO] [stdout] | ------------------ the check is happening here [INFO] [stdout] ... [INFO] [stdout] 40 | high_ani.unwrap() * 100. [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: called `unwrap` on `low_lambda` after checking its variant with `is_none` [INFO] [stdout] --> src/contain.rs:48:44 [INFO] [stdout] | [INFO] [stdout] 45 | if low_lambda.is_none() || high_lambda.is_none() { [INFO] [stdout] | -------------------- the check is happening here [INFO] [stdout] ... [INFO] [stdout] 48 | ci_lambda = format!("{:.2}-{:.2}", low_lambda.unwrap(), high_lambda.unwrap()); [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: called `unwrap` on `high_lambda` after checking its variant with `is_none` [INFO] [stdout] --> src/contain.rs:48:65 [INFO] [stdout] | [INFO] [stdout] 45 | if low_lambda.is_none() || high_lambda.is_none() { [INFO] [stdout] | --------------------- the check is happening here [INFO] [stdout] ... [INFO] [stdout] 48 | ci_lambda = format!("{:.2}-{:.2}", low_lambda.unwrap(), high_lambda.unwrap()); [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: useless use of `format!` [INFO] [stdout] --> src/contain.rs:24:24 [INFO] [stdout] | [INFO] [stdout] 24 | lambda_print = format!("HIGH"); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `"HIGH".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: useless use of `format!` [INFO] [stdout] --> src/contain.rs:26:24 [INFO] [stdout] | [INFO] [stdout] 26 | lambda_print = format!("LOW"); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: consider using `.to_string()`: `"LOW".to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/contain.rs:33:5 [INFO] [stdout] | [INFO] [stdout] 33 | let ci_ani; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] help: move the declaration `ci_ani` here and remove the assignments from the branches [INFO] [stdout] | [INFO] [stdout] 33 ~ [INFO] [stdout] 34 ~ let ci_ani = if low_ani.is_none() || high_ani.is_none() { [INFO] [stdout] 35 ~ "NA-NA".to_string() [INFO] [stdout] 36 | } else { [INFO] [stdout] 37 ~ format!( [INFO] [stdout] 38 | "{:.2}-{:.2}", [INFO] [stdout] 39 | low_ani.unwrap() * 100., [INFO] [stdout] 40 | high_ani.unwrap() * 100. [INFO] [stdout] 41 ~ ) [INFO] [stdout] 42 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/contain.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | let ci_lambda; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] help: move the declaration `ci_lambda` here and remove the assignments from the branches [INFO] [stdout] | [INFO] [stdout] 44 ~ [INFO] [stdout] 45 ~ let ci_lambda = if low_lambda.is_none() || high_lambda.is_none() { [INFO] [stdout] 46 ~ "NA-NA".to_string() [INFO] [stdout] 47 | } else { [INFO] [stdout] 48 ~ format!("{:.2}-{:.2}", low_lambda.unwrap(), high_lambda.unwrap()) [INFO] [stdout] 49 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/contain.rs:96:24 [INFO] [stdout] | [INFO] [stdout] 96 | fn get_chunks(indices: &Vec, steps: usize) -> Vec>{ [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 96 - fn get_chunks(indices: &Vec, steps: usize) -> Vec>{ [INFO] [stdout] 96 + fn get_chunks(indices: &[usize], steps: usize) -> Vec>{ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/contain.rs:144:50 [INFO] [stdout] | [INFO] [stdout] 144 | Box::new(BufWriter::new(File::create(&path).unwrap())) as Box [INFO] [stdout] | ^^^^^ help: change this to: `path` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/contain.rs:194:28 [INFO] [stdout] | [INFO] [stdout] 194 | } else if is_fasta(&file) { [INFO] [stdout] | ^^^^^ help: change this to: `file` [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: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/contain.rs:196:28 [INFO] [stdout] | [INFO] [stdout] 196 | } else if is_fastq(&file) { [INFO] [stdout] | ^^^^^ help: change this to: `file` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: deref which would be done by auto-deref [INFO] [stdout] --> src/contain.rs:270:33 [INFO] [stdout] | [INFO] [stdout] 270 | print_header(args.pseudotax,&mut *out_writer.lock().unwrap(), args.estimate_unknown); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&mut out_writer.lock().unwrap()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_auto_deref [INFO] [stdout] = note: `#[warn(clippy::explicit_auto_deref)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `unwrap` on `sequence_sketch` after checking its variant with `is_some` [INFO] [stdout] --> src/contain.rs:277:39 [INFO] [stdout] | [INFO] [stdout] 275 | if sequence_sketch.is_some(){ [INFO] [stdout] | ---------------------------- help: try: `if let Some() = sequence_sketch` [INFO] [stdout] 276 | let first_read_file = read_files[j][0]; [INFO] [stdout] 277 | let sequence_sketch = sequence_sketch.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: called `unwrap` on `args.seq_id` after checking its variant with `is_some` [INFO] [stdout] --> src/contain.rs:281:41 [INFO] [stdout] | [INFO] [stdout] 280 | if args.seq_id.is_some(){ [INFO] [stdout] | ------------------------ help: try: `if let Some() = args.seq_id` [INFO] [stdout] 281 | kmer_id_opt = Some((args.seq_id.unwrap()/100.).powf(sequence_sketch.k as f64)); [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: called `unwrap` on `res` after checking its variant with `is_some` [INFO] [stdout] --> src/contain.rs:294:60 [INFO] [stdout] | [INFO] [stdout] 292 | if res.is_some() { [INFO] [stdout] | ---------------- help: try: `if let Some() = res` [INFO] [stdout] 293 | //res.as_mut().unwrap().genome_sketch_index = *i; [INFO] [stdout] 294 | stats_vec_seq.lock().unwrap().push(res.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: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/contain.rs:291:48 [INFO] [stdout] | [INFO] [stdout] 291 | let res = get_stats(&args, &genome_sketch, &sequence_sketch, None, args.log_reassignments); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: change this to: `genome_sketch` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `unwrap` on `res` after checking its variant with `is_some` [INFO] [stdout] --> src/contain.rs:310:66 [INFO] [stdout] | [INFO] [stdout] 309 | if res.is_some() { [INFO] [stdout] | ---------------- help: try: `if let Some() = res` [INFO] [stdout] 310 | stats_vec_seq_2.lock().unwrap().push(res.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: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/contain.rs:308:52 [INFO] [stdout] | [INFO] [stdout] 308 | let res = get_stats(&args, &genome_sketch, &sequence_sketch, Some(&winner_map), args.log_reassignments); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: change this to: `genome_sketch` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: deref which would be done by auto-deref [INFO] [stdout] --> src/contain.rs:350:60 [INFO] [stdout] | [INFO] [stdout] 350 | print_ani_result(&res, args.pseudotax, &mut *out_writer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: try: `&mut out_writer` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_auto_deref [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/contain.rs:386:5 [INFO] [stdout] | [INFO] [stdout] 386 | 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] 386 - return return_vec; [INFO] [stdout] 386 + return_vec [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `unwrap` on `kmer_id_opt` after checking its variant with `is_some` [INFO] [stdout] --> src/contain.rs:396:18 [INFO] [stdout] | [INFO] [stdout] 395 | if estimate_unknown && kmer_id_opt.is_some(){ [INFO] [stdout] | --------------------- the check is happening here [INFO] [stdout] 396 | let id = kmer_id_opt.unwrap(); [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/contain.rs:419:5 [INFO] [stdout] | [INFO] [stdout] 419 | return f64::min(num_covered_bases as f64 / num_tentative_bases, 1.); [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] 419 - return f64::min(num_covered_bases as f64 / num_tentative_bases, 1.); [INFO] [stdout] 419 + f64::min(num_covered_bases as f64 / num_tentative_bases, 1.) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting to the same type is unnecessary (`f64` -> `f64`) [INFO] [stdout] --> src/contain.rs:419:21 [INFO] [stdout] | [INFO] [stdout] 419 | return f64::min(num_covered_bases as f64 / num_tentative_bases, 1.); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `num_covered_bases` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `unwrap` on `gn_sketch.pseudotax_tracked_nonused_kmers` after checking its variant with `is_some` [INFO] [stdout] --> src/contain.rs:435:25 [INFO] [stdout] | [INFO] [stdout] 434 | if gn_sketch.pseudotax_tracked_nonused_kmers.is_some(){ [INFO] [stdout] | ------------------------------------------------------ help: try: `if let Some() = &gn_sketch.pseudotax_tracked_nonused_kmers` [INFO] [stdout] 435 | for kmer in gn_sketch.pseudotax_tracked_nonused_kmers.as_ref().unwrap().iter(){ [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/contain.rs:470:5 [INFO] [stdout] | [INFO] [stdout] 470 | return kmer_to_genome_map; [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] 470 - return kmer_to_genome_map; [INFO] [stdout] 470 + kmer_to_genome_map [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/contain.rs:481:9 [INFO] [stdout] | [INFO] [stdout] 481 | let cov_head; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] help: move the declaration `cov_head` here and remove the assignments from the branches [INFO] [stdout] | [INFO] [stdout] 481 ~ [INFO] [stdout] 482 ~ let cov_head = if estimate_unknown{ [INFO] [stdout] 483 ~ "True_cov" [INFO] [stdout] 484 | } [INFO] [stdout] 485 | else{ [INFO] [stdout] 486 ~ "Eff_cov" [INFO] [stdout] 487 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `unwrap` on `current_k` after checking its variant with `is_none` [INFO] [stdout] --> src/contain.rs:524:19 [INFO] [stdout] | [INFO] [stdout] 522 | if current_k.is_none() { [INFO] [stdout] | ---------------------- help: try: `if let Some() = current_k` [INFO] [stdout] 523 | current_k = Some(genome_sketches_vec.first().unwrap().k); [INFO] [stdout] 524 | } else if current_k.unwrap() != k { [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/contain.rs:553:5 [INFO] [stdout] | [INFO] [stdout] 553 | return genome_sketches.into_inner().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] 553 - return genome_sketches.into_inner().unwrap(); [INFO] [stdout] 553 + genome_sketches.into_inner().unwrap() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function call inside of `expect` [INFO] [stdout] --> src/contain.rs:505:51 [INFO] [stdout] | [INFO] [stdout] 505 | ...ome_sketch_file).expect(&format!("The sketch `{}` could not be opened. Exiting", genome_sketch_file)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `unwrap_or_else(|_| panic!("The sketch `{}` could not be opened. Exiting", genome_sketch_file))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#expect_fun_call [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function call inside of `expect` [INFO] [stdout] --> src/contain.rs:508:14 [INFO] [stdout] | [INFO] [stdout] 508 | .expect(&format!( [INFO] [stdout] | ______________^ [INFO] [stdout] 509 | | "The sketch `{}` is not a valid sketch. Perhaps it is an older, incompatible version ", [INFO] [stdout] 510 | | &genome_sketch_file [INFO] [stdout] 511 | | )); [INFO] [stdout] | |______________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#expect_fun_call [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 508 ~ .unwrap_or_else(|_| panic!("The sketch `{}` is not a valid sketch. Perhaps it is an older, incompatible version ", [INFO] [stdout] 509 ~ &genome_sketch_file)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` has identical blocks [INFO] [stdout] --> src/contain.rs:517:38 [INFO] [stdout] | [INFO] [stdout] 517 | if lowest_genome_c.is_none() { [INFO] [stdout] | ______________________________________^ [INFO] [stdout] 518 | | lowest_genome_c = Some(c); [INFO] [stdout] 519 | | } else if lowest_genome_c.unwrap() < c { [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] note: same as this [INFO] [stdout] --> src/contain.rs:519:48 [INFO] [stdout] | [INFO] [stdout] 519 | } else if lowest_genome_c.unwrap() < c { [INFO] [stdout] | ________________________________________________^ [INFO] [stdout] 520 | | lowest_genome_c = Some(c); [INFO] [stdout] 521 | | } [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: called `unwrap` on `lowest_genome_c` after checking its variant with `is_some` [INFO] [stdout] --> src/contain.rs:533:156 [INFO] [stdout] | [INFO] [stdout] 532 | ...if lowest_genome_c.is_some() && lowest_genome_c.unwrap() < args.c{ [INFO] [stdout] | ------------------------- the check is happening here [INFO] [stdout] 533 | ... error!("Value of -c for contain is {} -- greater than the smallest value of -c for a genome sketch {}. Continuing without sketching.", args.c, lowest_genome_c.unwrap()); [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: called `unwrap` on `genome_sketch_opt` after checking its variant with `is_some` [INFO] [stdout] --> src/contain.rs:547:58 [INFO] [stdout] | [INFO] [stdout] 546 | if genome_sketch_opt.is_some() { [INFO] [stdout] | ------------------------------ help: try: `if let Some() = genome_sketch_opt` [INFO] [stdout] 547 | genome_sketches.lock().unwrap().push(genome_sketch_opt.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: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/contain.rs:545:71 [INFO] [stdout] | [INFO] [stdout] 545 | let genome_sketch_opt = sketch_genome(args.c, args.k, &genome_file, args.min_spacing_kmer, args.pseudotax); [INFO] [stdout] | ^^^^^^^^^^^^ help: change this to: `genome_file` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/contain.rs:582:9 [INFO] [stdout] | [INFO] [stdout] 582 | return Some(read_sketch); [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] 582 - return Some(read_sketch); [INFO] [stdout] 582 + Some(read_sketch) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/contain.rs:589:13 [INFO] [stdout] | [INFO] [stdout] 589 | return None; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 589 - return None; [INFO] [stdout] 589 + None [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/contain.rs:596:13 [INFO] [stdout] | [INFO] [stdout] 596 | return None; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 596 - return None; [INFO] [stdout] 596 + None [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/contain.rs:600:17 [INFO] [stdout] | [INFO] [stdout] 600 | return read_sketch_opt; [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] 600 - return read_sketch_opt; [INFO] [stdout] 600 + read_sketch_opt [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/contain.rs:604:17 [INFO] [stdout] | [INFO] [stdout] 604 | return read_sketch_opt; [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] 604 - return read_sketch_opt; [INFO] [stdout] 604 + read_sketch_opt [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/contain.rs:558:16 [INFO] [stdout] | [INFO] [stdout] 558 | read_file: &Vec<&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] 558 - read_file: &Vec<&String>, [INFO] [stdout] 558 + read_file: &[&String], [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function call inside of `expect` [INFO] [stdout] --> src/contain.rs:566:49 [INFO] [stdout] | [INFO] [stdout] 566 | let file = File::open(read_sketch_file).expect(&format!( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 567 | | "The sketch `{}` could not be opened", [INFO] [stdout] 568 | | &read_sketch_file [INFO] [stdout] 569 | | )); [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#expect_fun_call [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 566 ~ let file = File::open(read_sketch_file).unwrap_or_else(|_| panic!("The sketch `{}` could not be opened", [INFO] [stdout] 567 ~ &read_sketch_file)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function call inside of `expect` [INFO] [stdout] --> src/contain.rs:571:83 [INFO] [stdout] | [INFO] [stdout] 571 | let read_sketch: SequencesSketch = bincode::deserialize_from(read_reader).expect( [INFO] [stdout] | ___________________________________________________________________________________^ [INFO] [stdout] 572 | | &format!("The sketch `{}` is not a valid sketch. Perhaps it is an older incompatible version ", read_sketch_file), [INFO] [stdout] 573 | | ); [INFO] [stdout] | |_________^ help: try: `unwrap_or_else(|_| panic!("The sketch `{}` is not a valid sketch. Perhaps it is an older incompatible version ", read_sketch_file))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#expect_fun_call [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/contain.rs:599:63 [INFO] [stdout] | [INFO] [stdout] 599 | let read_sketch_opt = sketch_sequences_needle(&read_file[0], args.c, args.k, None, false); [INFO] [stdout] | ^^^^^^^^^^^^^ help: change this to: `read_file[0]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/contain.rs:603:61 [INFO] [stdout] | [INFO] [stdout] 603 | let read_sketch_opt = sketch_pair_sequences(&read_file[0], &read_file[1], args.c, args.k, None, false, DEFAULT_FPR); [INFO] [stdout] | ^^^^^^^^^^^^^ help: change this to: `read_file[0]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/contain.rs:603:76 [INFO] [stdout] | [INFO] [stdout] 603 | let read_sketch_opt = sketch_pair_sequences(&read_file[0], &read_file[1], args.c, args.k, None, false, DEFAULT_FPR); [INFO] [stdout] | ^^^^^^^^^^^^^ help: change this to: `read_file[1]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `unwrap` on `winner_map` after checking its variant with `is_some` [INFO] [stdout] --> src/contain.rs:650:28 [INFO] [stdout] | [INFO] [stdout] 649 | if winner_map.is_some(){ [INFO] [stdout] | ----------------------- help: try: `if let Some() = winner_map` [INFO] [stdout] 650 | let map = &winner_map.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: called `unwrap` on `var` after checking its variant with `is_some` [INFO] [stdout] --> src/contain.rs:699:34 [INFO] [stdout] | [INFO] [stdout] 698 | if var.is_some(){ [INFO] [stdout] | ---------------- help: try: `if let Some() = var` [INFO] [stdout] 699 | log::trace!("VAR {} {}", var.unwrap(), genome_sketch.file_name); [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: called `unwrap` on `test_lambda` after checking its variant with `is_none` [INFO] [stdout] --> src/contain.rs:723:47 [INFO] [stdout] | [INFO] [stdout] 720 | if test_lambda.is_none() { [INFO] [stdout] | ------------------------ help: try: `if let Some() = test_lambda` [INFO] [stdout] ... [INFO] [stdout] 723 | use_lambda = AdjustStatus::Lambda(test_lambda.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: called `unwrap` on `opt_est_ani` after checking its variant with `is_none` [INFO] [stdout] --> src/contain.rs:755:25 [INFO] [stdout] | [INFO] [stdout] 752 | if opt_lambda.is_none() || opt_est_ani.is_none() || args.no_adj { [INFO] [stdout] | --------------------- the check is happening here [INFO] [stdout] ... [INFO] [stdout] 755 | final_est_ani = opt_est_ani.unwrap(); [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: called `unwrap` on `args.minimum_ani` after checking its variant with `is_some` [INFO] [stdout] --> src/contain.rs:758:50 [INFO] [stdout] | [INFO] [stdout] 758 | let min_ani = if args.minimum_ani.is_some() {args.minimum_ani.unwrap()/100. } [INFO] [stdout] | ----------------------------- ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: try: `if let Some() = args.minimum_ani` [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/contain.rs:825:5 [INFO] [stdout] | [INFO] [stdout] 825 | return Some(ani_result); [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] 825 - return Some(ani_result); [INFO] [stdout] 825 + Some(ani_result) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `i` is only used to index `covs` [INFO] [stdout] --> src/contain.rs:679:18 [INFO] [stdout] | [INFO] [stdout] 679 | for i in covs.len() / 2..covs.len(){ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator [INFO] [stdout] | [INFO] [stdout] 679 - for i in covs.len() / 2..covs.len(){ [INFO] [stdout] 679 + for in covs.iter().skip(covs.len() / 2){ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/contain.rs:742:5 [INFO] [stdout] | [INFO] [stdout] 742 | let opt_lambda; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] help: move the declaration `opt_lambda` here and remove the assignments from the branches [INFO] [stdout] | [INFO] [stdout] 742 ~ [INFO] [stdout] 743 ~ let opt_lambda = if use_lambda == AdjustStatus::Low || use_lambda == AdjustStatus::High { [INFO] [stdout] 744 ~ None [INFO] [stdout] 745 | } else { [INFO] [stdout] 746 ~ Some(final_est_cov) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/contain.rs:751:5 [INFO] [stdout] | [INFO] [stdout] 751 | let final_est_ani; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] help: move the declaration `final_est_ani` here and remove the assignments from the branches [INFO] [stdout] | [INFO] [stdout] 751 ~ [INFO] [stdout] 752 ~ let final_est_ani = if opt_lambda.is_none() || opt_est_ani.is_none() || args.no_adj { [INFO] [stdout] 753 ~ naive_ani [INFO] [stdout] 754 | } else { [INFO] [stdout] 755 ~ opt_est_ani.unwrap() [INFO] [stdout] 756 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/contain.rs:780:82 [INFO] [stdout] | [INFO] [stdout] 780 | let bootstrap = bootstrap_interval(&full_covs, sequence_sketch.k as f64, &args); [INFO] [stdout] | ^^^^^ help: change this to: `args` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/contain.rs:796:5 [INFO] [stdout] | [INFO] [stdout] 796 | let kmers_lost; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] help: move the declaration `kmers_lost` here and remove the assignments from the branches [INFO] [stdout] | [INFO] [stdout] 796 ~ [INFO] [stdout] 797 ~ let kmers_lost = if winner_map.is_some(){ [INFO] [stdout] 798 ~ Some(kmers_lost_count) [INFO] [stdout] 799 | } [INFO] [stdout] 800 | else{ [INFO] [stdout] 801 ~ None [INFO] [stdout] 802 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/contain.rs:858:5 [INFO] [stdout] | [INFO] [stdout] 858 | return ret_ani; [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] 858 - return ret_ani; [INFO] [stdout] 858 + ret_ani [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this block may be rewritten with the `?` operator [INFO] [stdout] --> src/contain.rs:830:5 [INFO] [stdout] | [INFO] [stdout] 830 | / if lambda.is_none() { [INFO] [stdout] 831 | | return None; [INFO] [stdout] 832 | | } [INFO] [stdout] | |_____^ help: replace it with: `lambda?;` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#question_mark [INFO] [stdout] = note: `#[warn(clippy::question_mark)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `unwrap` on `ani` after checking its variant with `is_some` [INFO] [stdout] --> src/contain.rs:892:17 [INFO] [stdout] | [INFO] [stdout] 891 | if ani.is_some() && lambda.is_some() { [INFO] [stdout] | ------------- the check is happening here [INFO] [stdout] 892 | if !ani.unwrap().is_nan() && !lambda.unwrap().is_nan() { [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: called `unwrap` on `lambda` after checking its variant with `is_some` [INFO] [stdout] --> src/contain.rs:892:43 [INFO] [stdout] | [INFO] [stdout] 891 | if ani.is_some() && lambda.is_some() { [INFO] [stdout] | ---------------- the check is happening here [INFO] [stdout] 892 | if !ani.unwrap().is_nan() && !lambda.unwrap().is_nan() { [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/contain.rs:909:5 [INFO] [stdout] | [INFO] [stdout] 909 | return (low_ani, high_ani, low_lambda, high_lambda); [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] 909 - return (low_ani, high_ani, low_lambda, high_lambda); [INFO] [stdout] 909 + (low_ani, high_ani, low_lambda, high_lambda) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/contain.rs:862:16 [INFO] [stdout] | [INFO] [stdout] 862 | covs_full: &Vec, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 862 - covs_full: &Vec, [INFO] [stdout] 862 + covs_full: &[u32], [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `reserve` immediately after creation [INFO] [stdout] --> src/contain.rs:873:9 [INFO] [stdout] | [INFO] [stdout] 873 | / let mut rand_vec = vec![]; [INFO] [stdout] 874 | | rand_vec.reserve(num_samp); [INFO] [stdout] | |___________________________________^ help: consider using `Vec::with_capacity(/* Space hint */)`: `let mut rand_vec = Vec::with_capacity(num_samp);` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#reserve_after_initialization [INFO] [stdout] = note: `#[warn(clippy::reserve_after_initialization)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `f64` [INFO] [stdout] --> src/contain.rs:890:43 [INFO] [stdout] | [INFO] [stdout] 890 | let ani = ani_from_lambda(lambda, mean(&rand_vec).unwrap().into(), k, &rand_vec); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into()`: `mean(&rand_vec).unwrap()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/contain.rs:891:9 [INFO] [stdout] | [INFO] [stdout] 891 | / if ani.is_some() && lambda.is_some() { [INFO] [stdout] 892 | | if !ani.unwrap().is_nan() && !lambda.unwrap().is_nan() { [INFO] [stdout] 893 | | res_ani.push(ani); [INFO] [stdout] 894 | | res_lambda.push(lambda); [INFO] [stdout] 895 | | } [INFO] [stdout] 896 | | } [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] 891 ~ if ani.is_some() && lambda.is_some() [INFO] [stdout] 892 ~ && !ani.unwrap().is_nan() && !lambda.unwrap().is_nan() { [INFO] [stdout] 893 | res_ani.push(ani); [INFO] [stdout] 894 | res_lambda.push(lambda); [INFO] [stdout] 895 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/contain.rs:958:9 [INFO] [stdout] | [INFO] [stdout] 958 | return Some(eps) [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] 958 - return Some(eps) [INFO] [stdout] 958 + Some(eps) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/contain.rs:961:9 [INFO] [stdout] | [INFO] [stdout] 961 | return Some(1.) [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] 961 - return Some(1.) [INFO] [stdout] 961 + Some(1.) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/inference.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | return lambda / (v - 1. + lambda + m) [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] 9 - return lambda / (v - 1. + lambda + m) [INFO] [stdout] 9 + lambda / (v - 1. + lambda + m) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/inference.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 14 | return gamma(r + val + 1.) / (val + 1.) / gamma(r + val) * lambda / (r + lambda) [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] 14 - return gamma(r + val + 1.) / (val + 1.) / gamma(r + val) * lambda / (r + lambda) [INFO] [stdout] 14 + gamma(r + val + 1.) / (val + 1.) / gamma(r + val) * lambda / (r + lambda) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/inference.rs:17:8 [INFO] [stdout] | [INFO] [stdout] 17 | return (r + val + 1.) / (val + 1.) * lambda / (r + lambda) [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] 17 - return (r + val + 1.) / (val + 1.) * lambda / (r + lambda) [INFO] [stdout] 17 + (r + val + 1.) / (val + 1.) * lambda / (r + lambda) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/inference.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | return Some(ratio_formula(val, r, lambda)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 26 - return Some(ratio_formula(val, r, lambda)); [INFO] [stdout] 26 + Some(ratio_formula(val, r, lambda)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `unwrap` on `proposed` after checking its variant with `is_some` [INFO] [stdout] --> src/inference.rs:64:21 [INFO] [stdout] | [INFO] [stdout] 63 | if proposed.is_some(){ [INFO] [stdout] | --------------------- help: try: `if let Some() = proposed` [INFO] [stdout] 64 | let p = proposed.unwrap() - ratio_est; [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/inference.rs:101:5 [INFO] [stdout] | [INFO] [stdout] 101 | return Some(best); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 101 - return Some(best); [INFO] [stdout] 101 + Some(best) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> src/inference.rs:30:8 [INFO] [stdout] | [INFO] [stdout] 30 | if full_covs.len() == 0{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `full_covs.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: this block may be rewritten with the `?` operator [INFO] [stdout] --> src/inference.rs:71:5 [INFO] [stdout] | [INFO] [stdout] 71 | / if best.is_none(){ [INFO] [stdout] 72 | | return None [INFO] [stdout] 73 | | } [INFO] [stdout] | |_____^ help: replace it with: `best?;` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#question_mark [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/inference.rs:113:5 [INFO] [stdout] | [INFO] [stdout] 113 | return Some(var / data.len() as f64); [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] 113 - return Some(var / data.len() as f64); [INFO] [stdout] 113 + Some(var / data.len() as f64) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/inference.rs:151:9 [INFO] [stdout] | [INFO] [stdout] 151 | return None; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 151 - return None; [INFO] [stdout] 151 + None [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/inference.rs:153:9 [INFO] [stdout] | [INFO] [stdout] 153 | return Some(lambda as f64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 153 - return Some(lambda as f64); [INFO] [stdout] 153 + Some(lambda as f64) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/inference.rs:147:21 [INFO] [stdout] | [INFO] [stdout] 147 | let mean = mean(&full_covs).unwrap(); [INFO] [stdout] | ^^^^^^^^^^ help: change this to: `full_covs` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/inference.rs:148:19 [INFO] [stdout] | [INFO] [stdout] 148 | let var = var(&full_covs).unwrap(); [INFO] [stdout] | ^^^^^^^^^^ help: change this to: `full_covs` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting to the same type is unnecessary (`f64` -> `f64`) [INFO] [stdout] --> src/inference.rs:153:21 [INFO] [stdout] | [INFO] [stdout] 153 | return Some(lambda as f64); [INFO] [stdout] | ^^^^^^^^^^^^^ help: try: `lambda` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/inference.rs:191:5 [INFO] [stdout] | [INFO] [stdout] 191 | return ret_lambda; [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] 191 - return ret_lambda; [INFO] [stdout] 191 + ret_lambda [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/inference.rs:178:21 [INFO] [stdout] | [INFO] [stdout] 178 | let mean = mean(&full_covs).unwrap(); [INFO] [stdout] | ^^^^^^^^^^ help: change this to: `full_covs` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `f64` [INFO] [stdout] --> src/inference.rs:181:9 [INFO] [stdout] | [INFO] [stdout] 181 | mean.into(), [INFO] [stdout] | ^^^^^^^^^^^ help: consider removing `.into()`: `mean` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/inference.rs:184:5 [INFO] [stdout] | [INFO] [stdout] 184 | let ret_lambda; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] help: move the declaration `ret_lambda` here and remove the assignments from the branches [INFO] [stdout] | [INFO] [stdout] 184 ~ [INFO] [stdout] 185 ~ let ret_lambda = if lambda < 0. || lambda.is_nan() { [INFO] [stdout] 186 ~ None [INFO] [stdout] 187 | } else { [INFO] [stdout] 188 ~ Some(lambda) [INFO] [stdout] 189 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/inference.rs:204:5 [INFO] [stdout] | [INFO] [stdout] 204 | return curr; [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] 204 - return curr; [INFO] [stdout] 204 + curr [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of an assign operation [INFO] [stdout] --> src/inference.rs:202:9 [INFO] [stdout] | [INFO] [stdout] 202 | curr = curr - (t1 - t2) / (t3 - t4); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `curr -= (t1 - t2) / (t3 - t4)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/inference.rs:226:9 [INFO] [stdout] | [INFO] [stdout] 226 | return None; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 226 - return None; [INFO] [stdout] 226 + None [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/inference.rs:240:9 [INFO] [stdout] | [INFO] [stdout] 240 | return lambda; [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] 240 - return lambda; [INFO] [stdout] 240 + lambda [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/inference.rs:229:39 [INFO] [stdout] | [INFO] [stdout] 229 | sort_vec.sort_by(|x, y| y.cmp(&x)); [INFO] [stdout] | ^^ help: change this to: `x` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/inference.rs:235:31 [INFO] [stdout] | [INFO] [stdout] 235 | let count = count_map[&most_ind] as f64; [INFO] [stdout] | ^^^^^^^^^ help: change this to: `most_ind` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `unwrap` on `low_ani` after checking its variant with `is_none` [INFO] [stdout] --> src/contain.rs:39:13 [INFO] [stdout] | [INFO] [stdout] 34 | if low_ani.is_none() || high_ani.is_none() { [INFO] [stdout] | ----------------- the check is happening here [INFO] [stdout] ... [INFO] [stdout] 39 | low_ani.unwrap() * 100., [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: called `unwrap` on `high_ani` after checking its variant with `is_none` [INFO] [stdout] --> src/contain.rs:40:13 [INFO] [stdout] | [INFO] [stdout] 34 | if low_ani.is_none() || high_ani.is_none() { [INFO] [stdout] | ------------------ the check is happening here [INFO] [stdout] ... [INFO] [stdout] 40 | high_ani.unwrap() * 100. [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: called `unwrap` on `low_lambda` after checking its variant with `is_none` [INFO] [stdout] --> src/contain.rs:48:44 [INFO] [stdout] | [INFO] [stdout] 45 | if low_lambda.is_none() || high_lambda.is_none() { [INFO] [stdout] | -------------------- the check is happening here [INFO] [stdout] ... [INFO] [stdout] 48 | ci_lambda = format!("{:.2}-{:.2}", low_lambda.unwrap(), high_lambda.unwrap()); [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: called `unwrap` on `high_lambda` after checking its variant with `is_none` [INFO] [stdout] --> src/contain.rs:48:65 [INFO] [stdout] | [INFO] [stdout] 45 | if low_lambda.is_none() || high_lambda.is_none() { [INFO] [stdout] | --------------------- the check is happening here [INFO] [stdout] ... [INFO] [stdout] 48 | ci_lambda = format!("{:.2}-{:.2}", low_lambda.unwrap(), high_lambda.unwrap()); [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: useless use of `format!` [INFO] [stdout] --> src/contain.rs:24:24 [INFO] [stdout] | [INFO] [stdout] 24 | lambda_print = format!("HIGH"); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `"HIGH".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: useless use of `format!` [INFO] [stdout] --> src/contain.rs:26:24 [INFO] [stdout] | [INFO] [stdout] 26 | lambda_print = format!("LOW"); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: consider using `.to_string()`: `"LOW".to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/contain.rs:33:5 [INFO] [stdout] | [INFO] [stdout] 33 | let ci_ani; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] help: move the declaration `ci_ani` here and remove the assignments from the branches [INFO] [stdout] | [INFO] [stdout] 33 ~ [INFO] [stdout] 34 ~ let ci_ani = if low_ani.is_none() || high_ani.is_none() { [INFO] [stdout] 35 ~ "NA-NA".to_string() [INFO] [stdout] 36 | } else { [INFO] [stdout] 37 ~ format!( [INFO] [stdout] 38 | "{:.2}-{:.2}", [INFO] [stdout] 39 | low_ani.unwrap() * 100., [INFO] [stdout] 40 | high_ani.unwrap() * 100. [INFO] [stdout] 41 ~ ) [INFO] [stdout] 42 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/contain.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | let ci_lambda; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] help: move the declaration `ci_lambda` here and remove the assignments from the branches [INFO] [stdout] | [INFO] [stdout] 44 ~ [INFO] [stdout] 45 ~ let ci_lambda = if low_lambda.is_none() || high_lambda.is_none() { [INFO] [stdout] 46 ~ "NA-NA".to_string() [INFO] [stdout] 47 | } else { [INFO] [stdout] 48 ~ format!("{:.2}-{:.2}", low_lambda.unwrap(), high_lambda.unwrap()) [INFO] [stdout] 49 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/inspect.rs:157:50 [INFO] [stdout] | [INFO] [stdout] 157 | Box::new(BufWriter::new(File::create(&x).unwrap())) as Box [INFO] [stdout] | ^^ help: change this to: `x` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/contain.rs:96:24 [INFO] [stdout] | [INFO] [stdout] 96 | fn get_chunks(indices: &Vec, steps: usize) -> Vec>{ [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 96 - fn get_chunks(indices: &Vec, steps: usize) -> Vec>{ [INFO] [stdout] 96 + fn get_chunks(indices: &[usize], steps: usize) -> Vec>{ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function call inside of `expect` [INFO] [stdout] --> src/inspect.rs:188:47 [INFO] [stdout] | [INFO] [stdout] 188 | let file = File::open(genome_sketch_file).expect(&format!("The sketch `{}` could not be opened. Exiting", genome_sketch_file)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `unwrap_or_else(|_| panic!("The sketch `{}` could not be opened. Exiting", genome_sketch_file))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#expect_fun_call [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function call inside of `expect` [INFO] [stdout] --> src/inspect.rs:192:10 [INFO] [stdout] | [INFO] [stdout] 192 | .expect(&format!( [INFO] [stdout] | __________^ [INFO] [stdout] 193 | | "The database sketch `{}` is not a valid sketch. Perhaps it is an older, incompatible version ", [INFO] [stdout] 194 | | &genome_sketch_file [INFO] [stdout] 195 | | )); [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#expect_fun_call [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 192 ~ .unwrap_or_else(|_| panic!("The database sketch `{}` is not a valid sketch. Perhaps it is an older, incompatible version ", [INFO] [stdout] 193 ~ &genome_sketch_file)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/contain.rs:144:50 [INFO] [stdout] | [INFO] [stdout] 144 | Box::new(BufWriter::new(File::create(&path).unwrap())) as Box [INFO] [stdout] | ^^^^^ help: change this to: `path` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function call inside of `expect` [INFO] [stdout] --> src/inspect.rs:221:38 [INFO] [stdout] | [INFO] [stdout] 221 | let file = File::open(read_file).expect(&format!("The sketch `{}` could not be opened. Exiting", read_file)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `unwrap_or_else(|_| panic!("The sketch `{}` could not be opened. Exiting", read_file))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#expect_fun_call [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function call inside of `expect` [INFO] [stdout] --> src/inspect.rs:224:10 [INFO] [stdout] | [INFO] [stdout] 224 | .expect(&format!( [INFO] [stdout] | __________^ [INFO] [stdout] 225 | | "The sequence sketch `{}` is not a valid sketch. Perhaps it is an older, incompatible version ", [INFO] [stdout] 226 | | &read_file [INFO] [stdout] 227 | | )); [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#expect_fun_call [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 224 ~ .unwrap_or_else(|_| panic!("The sequence sketch `{}` is not a valid sketch. Perhaps it is an older, incompatible version ", [INFO] [stdout] 225 ~ &read_file)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unsafe function's docs are missing a `# Safety` section [INFO] [stdout] --> src/avx2_seeding.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | pub unsafe fn mm_hash256(kmer: __m256i) -> __m256i { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_safety_doc [INFO] [stdout] = note: `#[warn(clippy::missing_safety_doc)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/avx2_seeding.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 29 | return key; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 29 - return key; [INFO] [stdout] 29 + key [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/contain.rs:194:28 [INFO] [stdout] | [INFO] [stdout] 194 | } else if is_fasta(&file) { [INFO] [stdout] | ^^^^^ help: change this to: `file` [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: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/contain.rs:196:28 [INFO] [stdout] | [INFO] [stdout] 196 | } else if is_fastq(&file) { [INFO] [stdout] | ^^^^^ help: change this to: `file` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unsafe function's docs are missing a `# Safety` section [INFO] [stdout] --> src/avx2_seeding.rs:33:1 [INFO] [stdout] | [INFO] [stdout] 33 | pub unsafe fn extract_markers_avx2(string: &[u8], kmer_vec: &mut Vec, c: usize, k: usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_safety_doc [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/avx2_seeding.rs:71:9 [INFO] [stdout] | [INFO] [stdout] 71 | let shift_nuc_r; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] help: move the declaration `shift_nuc_r` here and remove the assignments from the branches [INFO] [stdout] | [INFO] [stdout] 71 ~ [INFO] [stdout] 72 ~ let shift_nuc_r = if use_40 { [INFO] [stdout] 73 ~ _mm256_slli_epi64(r_nucs, TWO_K_MINUS_2_40) [INFO] [stdout] 74 | } else { [INFO] [stdout] 75 ~ _mm256_slli_epi64(r_nucs, TWO_K_MINUS_2_60) [INFO] [stdout] 76 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> src/avx2_seeding.rs:81:33 [INFO] [stdout] | [INFO] [stdout] 81 | let rev_marker_mask: i64 = !(0 | (3 << 2 * k - 2)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: consider reducing it to: `((3 << 2 * k - 2))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] = note: `#[warn(clippy::identity_op)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: deref which would be done by auto-deref [INFO] [stdout] --> src/contain.rs:270:33 [INFO] [stdout] | [INFO] [stdout] 270 | print_header(args.pseudotax,&mut *out_writer.lock().unwrap(), args.estimate_unknown); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&mut out_writer.lock().unwrap()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_auto_deref [INFO] [stdout] = note: `#[warn(clippy::explicit_auto_deref)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/avx2_seeding.rs:108:9 [INFO] [stdout] | [INFO] [stdout] 108 | let shift_nuc_r; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] help: move the declaration `shift_nuc_r` here and remove the assignments from the branches [INFO] [stdout] | [INFO] [stdout] 108 ~ [INFO] [stdout] 109 ~ let shift_nuc_r = if use_40 { [INFO] [stdout] 110 ~ _mm256_slli_epi64(r_nucs, TWO_K_MINUS_2_40) [INFO] [stdout] 111 | } else { [INFO] [stdout] 112 ~ _mm256_slli_epi64(r_nucs, TWO_K_MINUS_2_60) [INFO] [stdout] 113 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `unwrap` on `sequence_sketch` after checking its variant with `is_some` [INFO] [stdout] --> src/contain.rs:277:39 [INFO] [stdout] | [INFO] [stdout] 275 | if sequence_sketch.is_some(){ [INFO] [stdout] | ---------------------------- help: try: `if let Some() = sequence_sketch` [INFO] [stdout] 276 | let first_read_file = read_files[j][0]; [INFO] [stdout] 277 | let sequence_sketch = sequence_sketch.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: unsafe function's docs are missing a `# Safety` section [INFO] [stdout] --> src/avx2_seeding.rs:151:1 [INFO] [stdout] | [INFO] [stdout] 151 | pub unsafe fn extract_markers_avx2_positions(string: &[u8], kmer_vec: &mut Vec<(usize, usize,u64)>, c: usize, k: usize, contig_number: usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_safety_doc [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `unwrap` on `args.seq_id` after checking its variant with `is_some` [INFO] [stdout] --> src/contain.rs:281:41 [INFO] [stdout] | [INFO] [stdout] 280 | if args.seq_id.is_some(){ [INFO] [stdout] | ------------------------ help: try: `if let Some() = args.seq_id` [INFO] [stdout] 281 | kmer_id_opt = Some((args.seq_id.unwrap()/100.).powf(sequence_sketch.k as f64)); [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: called `unwrap` on `res` after checking its variant with `is_some` [INFO] [stdout] --> src/contain.rs:294:60 [INFO] [stdout] | [INFO] [stdout] 292 | if res.is_some() { [INFO] [stdout] | ---------------- help: try: `if let Some() = res` [INFO] [stdout] 293 | //res.as_mut().unwrap().genome_sketch_index = *i; [INFO] [stdout] 294 | stats_vec_seq.lock().unwrap().push(res.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: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/contain.rs:291:48 [INFO] [stdout] | [INFO] [stdout] 291 | let res = get_stats(&args, &genome_sketch, &sequence_sketch, None, args.log_reassignments); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: change this to: `genome_sketch` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/avx2_seeding.rs:189:9 [INFO] [stdout] | [INFO] [stdout] 189 | let shift_nuc_r; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] help: move the declaration `shift_nuc_r` here and remove the assignments from the branches [INFO] [stdout] | [INFO] [stdout] 189 ~ [INFO] [stdout] 190 ~ let shift_nuc_r = if use_40 { [INFO] [stdout] 191 ~ _mm256_slli_epi64(r_nucs, TWO_K_MINUS_2_40) [INFO] [stdout] 192 | } else { [INFO] [stdout] 193 ~ _mm256_slli_epi64(r_nucs, TWO_K_MINUS_2_60) [INFO] [stdout] 194 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `unwrap` on `res` after checking its variant with `is_some` [INFO] [stdout] --> src/contain.rs:310:66 [INFO] [stdout] | [INFO] [stdout] 309 | if res.is_some() { [INFO] [stdout] | ---------------- help: try: `if let Some() = res` [INFO] [stdout] 310 | stats_vec_seq_2.lock().unwrap().push(res.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: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/contain.rs:308:52 [INFO] [stdout] | [INFO] [stdout] 308 | let res = get_stats(&args, &genome_sketch, &sequence_sketch, Some(&winner_map), args.log_reassignments); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: change this to: `genome_sketch` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> src/avx2_seeding.rs:199:33 [INFO] [stdout] | [INFO] [stdout] 199 | let rev_marker_mask: i64 = !(0 | (3 << 2 * k - 2)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: consider reducing it to: `((3 << 2 * k - 2))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/avx2_seeding.rs:226:9 [INFO] [stdout] | [INFO] [stdout] 226 | let shift_nuc_r; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] help: move the declaration `shift_nuc_r` here and remove the assignments from the branches [INFO] [stdout] | [INFO] [stdout] 226 ~ [INFO] [stdout] 227 ~ let shift_nuc_r = if use_40 { [INFO] [stdout] 228 ~ _mm256_slli_epi64(r_nucs, TWO_K_MINUS_2_40) [INFO] [stdout] 229 | } else { [INFO] [stdout] 230 ~ _mm256_slli_epi64(r_nucs, TWO_K_MINUS_2_60) [INFO] [stdout] 231 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: deref which would be done by auto-deref [INFO] [stdout] --> src/contain.rs:350:60 [INFO] [stdout] | [INFO] [stdout] 350 | print_ani_result(&res, args.pseudotax, &mut *out_writer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: try: `&mut out_writer` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_auto_deref [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/contain.rs:386:5 [INFO] [stdout] | [INFO] [stdout] 386 | 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] 386 - return return_vec; [INFO] [stdout] 386 + return_vec [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `unwrap` on `kmer_id_opt` after checking its variant with `is_some` [INFO] [stdout] --> src/contain.rs:396:18 [INFO] [stdout] | [INFO] [stdout] 395 | if estimate_unknown && kmer_id_opt.is_some(){ [INFO] [stdout] | --------------------- the check is happening here [INFO] [stdout] 396 | let id = kmer_id_opt.unwrap(); [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/contain.rs:419:5 [INFO] [stdout] | [INFO] [stdout] 419 | return f64::min(num_covered_bases as f64 / num_tentative_bases, 1.); [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] 419 - return f64::min(num_covered_bases as f64 / num_tentative_bases, 1.); [INFO] [stdout] 419 + f64::min(num_covered_bases as f64 / num_tentative_bases, 1.) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting to the same type is unnecessary (`f64` -> `f64`) [INFO] [stdout] --> src/contain.rs:419:21 [INFO] [stdout] | [INFO] [stdout] 419 | return f64::min(num_covered_bases as f64 / num_tentative_bases, 1.); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `num_covered_bases` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `unwrap` on `gn_sketch.pseudotax_tracked_nonused_kmers` after checking its variant with `is_some` [INFO] [stdout] --> src/contain.rs:435:25 [INFO] [stdout] | [INFO] [stdout] 434 | if gn_sketch.pseudotax_tracked_nonused_kmers.is_some(){ [INFO] [stdout] | ------------------------------------------------------ help: try: `if let Some() = &gn_sketch.pseudotax_tracked_nonused_kmers` [INFO] [stdout] 435 | for kmer in gn_sketch.pseudotax_tracked_nonused_kmers.as_ref().unwrap().iter(){ [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/contain.rs:470:5 [INFO] [stdout] | [INFO] [stdout] 470 | return kmer_to_genome_map; [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] 470 - return kmer_to_genome_map; [INFO] [stdout] 470 + kmer_to_genome_map [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/contain.rs:481:9 [INFO] [stdout] | [INFO] [stdout] 481 | let cov_head; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] help: move the declaration `cov_head` here and remove the assignments from the branches [INFO] [stdout] | [INFO] [stdout] 481 ~ [INFO] [stdout] 482 ~ let cov_head = if estimate_unknown{ [INFO] [stdout] 483 ~ "True_cov" [INFO] [stdout] 484 | } [INFO] [stdout] 485 | else{ [INFO] [stdout] 486 ~ "Eff_cov" [INFO] [stdout] 487 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `unwrap` on `current_k` after checking its variant with `is_none` [INFO] [stdout] --> src/contain.rs:524:19 [INFO] [stdout] | [INFO] [stdout] 522 | if current_k.is_none() { [INFO] [stdout] | ---------------------- help: try: `if let Some() = current_k` [INFO] [stdout] 523 | current_k = Some(genome_sketches_vec.first().unwrap().k); [INFO] [stdout] 524 | } else if current_k.unwrap() != k { [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/contain.rs:553:5 [INFO] [stdout] | [INFO] [stdout] 553 | return genome_sketches.into_inner().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] 553 - return genome_sketches.into_inner().unwrap(); [INFO] [stdout] 553 + genome_sketches.into_inner().unwrap() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function call inside of `expect` [INFO] [stdout] --> src/contain.rs:505:51 [INFO] [stdout] | [INFO] [stdout] 505 | ...ome_sketch_file).expect(&format!("The sketch `{}` could not be opened. Exiting", genome_sketch_file)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `unwrap_or_else(|_| panic!("The sketch `{}` could not be opened. Exiting", genome_sketch_file))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#expect_fun_call [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function call inside of `expect` [INFO] [stdout] --> src/contain.rs:508:14 [INFO] [stdout] | [INFO] [stdout] 508 | .expect(&format!( [INFO] [stdout] | ______________^ [INFO] [stdout] 509 | | "The sketch `{}` is not a valid sketch. Perhaps it is an older, incompatible version ", [INFO] [stdout] 510 | | &genome_sketch_file [INFO] [stdout] 511 | | )); [INFO] [stdout] | |______________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#expect_fun_call [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 508 ~ .unwrap_or_else(|_| panic!("The sketch `{}` is not a valid sketch. Perhaps it is an older, incompatible version ", [INFO] [stdout] 509 ~ &genome_sketch_file)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` has identical blocks [INFO] [stdout] --> src/contain.rs:517:38 [INFO] [stdout] | [INFO] [stdout] 517 | if lowest_genome_c.is_none() { [INFO] [stdout] | ______________________________________^ [INFO] [stdout] 518 | | lowest_genome_c = Some(c); [INFO] [stdout] 519 | | } else if lowest_genome_c.unwrap() < c { [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] note: same as this [INFO] [stdout] --> src/contain.rs:519:48 [INFO] [stdout] | [INFO] [stdout] 519 | } else if lowest_genome_c.unwrap() < c { [INFO] [stdout] | ________________________________________________^ [INFO] [stdout] 520 | | lowest_genome_c = Some(c); [INFO] [stdout] 521 | | } [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: called `unwrap` on `lowest_genome_c` after checking its variant with `is_some` [INFO] [stdout] --> src/contain.rs:533:156 [INFO] [stdout] | [INFO] [stdout] 532 | ...if lowest_genome_c.is_some() && lowest_genome_c.unwrap() < args.c{ [INFO] [stdout] | ------------------------- the check is happening here [INFO] [stdout] 533 | ... error!("Value of -c for contain is {} -- greater than the smallest value of -c for a genome sketch {}. Continuing without sketching.", args.c, lowest_genome_c.unwrap()); [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: called `unwrap` on `genome_sketch_opt` after checking its variant with `is_some` [INFO] [stdout] --> src/contain.rs:547:58 [INFO] [stdout] | [INFO] [stdout] 546 | if genome_sketch_opt.is_some() { [INFO] [stdout] | ------------------------------ help: try: `if let Some() = genome_sketch_opt` [INFO] [stdout] 547 | genome_sketches.lock().unwrap().push(genome_sketch_opt.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: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/contain.rs:545:71 [INFO] [stdout] | [INFO] [stdout] 545 | let genome_sketch_opt = sketch_genome(args.c, args.k, &genome_file, args.min_spacing_kmer, args.pseudotax); [INFO] [stdout] | ^^^^^^^^^^^^ help: change this to: `genome_file` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/contain.rs:582:9 [INFO] [stdout] | [INFO] [stdout] 582 | return Some(read_sketch); [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] 582 - return Some(read_sketch); [INFO] [stdout] 582 + Some(read_sketch) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/contain.rs:589:13 [INFO] [stdout] | [INFO] [stdout] 589 | return None; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 589 - return None; [INFO] [stdout] 589 + None [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/contain.rs:596:13 [INFO] [stdout] | [INFO] [stdout] 596 | return None; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 596 - return None; [INFO] [stdout] 596 + None [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/contain.rs:600:17 [INFO] [stdout] | [INFO] [stdout] 600 | return read_sketch_opt; [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] 600 - return read_sketch_opt; [INFO] [stdout] 600 + read_sketch_opt [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/contain.rs:604:17 [INFO] [stdout] | [INFO] [stdout] 604 | return read_sketch_opt; [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] 604 - return read_sketch_opt; [INFO] [stdout] 604 + read_sketch_opt [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/contain.rs:558:16 [INFO] [stdout] | [INFO] [stdout] 558 | read_file: &Vec<&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] 558 - read_file: &Vec<&String>, [INFO] [stdout] 558 + read_file: &[&String], [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function call inside of `expect` [INFO] [stdout] --> src/contain.rs:566:49 [INFO] [stdout] | [INFO] [stdout] 566 | let file = File::open(read_sketch_file).expect(&format!( [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 567 | | "The sketch `{}` could not be opened", [INFO] [stdout] 568 | | &read_sketch_file [INFO] [stdout] 569 | | )); [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#expect_fun_call [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 566 ~ let file = File::open(read_sketch_file).unwrap_or_else(|_| panic!("The sketch `{}` could not be opened", [INFO] [stdout] 567 ~ &read_sketch_file)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function call inside of `expect` [INFO] [stdout] --> src/contain.rs:571:83 [INFO] [stdout] | [INFO] [stdout] 571 | let read_sketch: SequencesSketch = bincode::deserialize_from(read_reader).expect( [INFO] [stdout] | ___________________________________________________________________________________^ [INFO] [stdout] 572 | | &format!("The sketch `{}` is not a valid sketch. Perhaps it is an older incompatible version ", read_sketch_file), [INFO] [stdout] 573 | | ); [INFO] [stdout] | |_________^ help: try: `unwrap_or_else(|_| panic!("The sketch `{}` is not a valid sketch. Perhaps it is an older incompatible version ", read_sketch_file))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#expect_fun_call [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/contain.rs:599:63 [INFO] [stdout] | [INFO] [stdout] 599 | let read_sketch_opt = sketch_sequences_needle(&read_file[0], args.c, args.k, None, false); [INFO] [stdout] | ^^^^^^^^^^^^^ help: change this to: `read_file[0]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/contain.rs:603:61 [INFO] [stdout] | [INFO] [stdout] 603 | let read_sketch_opt = sketch_pair_sequences(&read_file[0], &read_file[1], args.c, args.k, None, false, DEFAULT_FPR); [INFO] [stdout] | ^^^^^^^^^^^^^ help: change this to: `read_file[0]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/contain.rs:603:76 [INFO] [stdout] | [INFO] [stdout] 603 | let read_sketch_opt = sketch_pair_sequences(&read_file[0], &read_file[1], args.c, args.k, None, false, DEFAULT_FPR); [INFO] [stdout] | ^^^^^^^^^^^^^ help: change this to: `read_file[1]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `unwrap` on `winner_map` after checking its variant with `is_some` [INFO] [stdout] --> src/contain.rs:650:28 [INFO] [stdout] | [INFO] [stdout] 649 | if winner_map.is_some(){ [INFO] [stdout] | ----------------------- help: try: `if let Some() = winner_map` [INFO] [stdout] 650 | let map = &winner_map.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: called `unwrap` on `var` after checking its variant with `is_some` [INFO] [stdout] --> src/contain.rs:699:34 [INFO] [stdout] | [INFO] [stdout] 698 | if var.is_some(){ [INFO] [stdout] | ---------------- help: try: `if let Some() = var` [INFO] [stdout] 699 | log::trace!("VAR {} {}", var.unwrap(), genome_sketch.file_name); [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: called `unwrap` on `test_lambda` after checking its variant with `is_none` [INFO] [stdout] --> src/contain.rs:723:47 [INFO] [stdout] | [INFO] [stdout] 720 | if test_lambda.is_none() { [INFO] [stdout] | ------------------------ help: try: `if let Some() = test_lambda` [INFO] [stdout] ... [INFO] [stdout] 723 | use_lambda = AdjustStatus::Lambda(test_lambda.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: called `unwrap` on `opt_est_ani` after checking its variant with `is_none` [INFO] [stdout] --> src/contain.rs:755:25 [INFO] [stdout] | [INFO] [stdout] 752 | if opt_lambda.is_none() || opt_est_ani.is_none() || args.no_adj { [INFO] [stdout] | --------------------- the check is happening here [INFO] [stdout] ... [INFO] [stdout] 755 | final_est_ani = opt_est_ani.unwrap(); [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: called `unwrap` on `args.minimum_ani` after checking its variant with `is_some` [INFO] [stdout] --> src/contain.rs:758:50 [INFO] [stdout] | [INFO] [stdout] 758 | let min_ani = if args.minimum_ani.is_some() {args.minimum_ani.unwrap()/100. } [INFO] [stdout] | ----------------------------- ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: try: `if let Some() = args.minimum_ani` [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/contain.rs:825:5 [INFO] [stdout] | [INFO] [stdout] 825 | return Some(ani_result); [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] 825 - return Some(ani_result); [INFO] [stdout] 825 + Some(ani_result) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `i` is only used to index `covs` [INFO] [stdout] --> src/contain.rs:679:18 [INFO] [stdout] | [INFO] [stdout] 679 | for i in covs.len() / 2..covs.len(){ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stdout] help: consider using an iterator [INFO] [stdout] | [INFO] [stdout] 679 - for i in covs.len() / 2..covs.len(){ [INFO] [stdout] 679 + for in covs.iter().skip(covs.len() / 2){ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/contain.rs:742:5 [INFO] [stdout] | [INFO] [stdout] 742 | let opt_lambda; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] help: move the declaration `opt_lambda` here and remove the assignments from the branches [INFO] [stdout] | [INFO] [stdout] 742 ~ [INFO] [stdout] 743 ~ let opt_lambda = if use_lambda == AdjustStatus::Low || use_lambda == AdjustStatus::High { [INFO] [stdout] 744 ~ None [INFO] [stdout] 745 | } else { [INFO] [stdout] 746 ~ Some(final_est_cov) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/contain.rs:751:5 [INFO] [stdout] | [INFO] [stdout] 751 | let final_est_ani; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] help: move the declaration `final_est_ani` here and remove the assignments from the branches [INFO] [stdout] | [INFO] [stdout] 751 ~ [INFO] [stdout] 752 ~ let final_est_ani = if opt_lambda.is_none() || opt_est_ani.is_none() || args.no_adj { [INFO] [stdout] 753 ~ naive_ani [INFO] [stdout] 754 | } else { [INFO] [stdout] 755 ~ opt_est_ani.unwrap() [INFO] [stdout] 756 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/contain.rs:780:82 [INFO] [stdout] | [INFO] [stdout] 780 | let bootstrap = bootstrap_interval(&full_covs, sequence_sketch.k as f64, &args); [INFO] [stdout] | ^^^^^ help: change this to: `args` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/contain.rs:796:5 [INFO] [stdout] | [INFO] [stdout] 796 | let kmers_lost; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] help: move the declaration `kmers_lost` here and remove the assignments from the branches [INFO] [stdout] | [INFO] [stdout] 796 ~ [INFO] [stdout] 797 ~ let kmers_lost = if winner_map.is_some(){ [INFO] [stdout] 798 ~ Some(kmers_lost_count) [INFO] [stdout] 799 | } [INFO] [stdout] 800 | else{ [INFO] [stdout] 801 ~ None [INFO] [stdout] 802 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/contain.rs:858:5 [INFO] [stdout] | [INFO] [stdout] 858 | return ret_ani; [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] 858 - return ret_ani; [INFO] [stdout] 858 + ret_ani [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this block may be rewritten with the `?` operator [INFO] [stdout] --> src/contain.rs:830:5 [INFO] [stdout] | [INFO] [stdout] 830 | / if lambda.is_none() { [INFO] [stdout] 831 | | return None; [INFO] [stdout] 832 | | } [INFO] [stdout] | |_____^ help: replace it with: `lambda?;` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#question_mark [INFO] [stdout] = note: `#[warn(clippy::question_mark)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `unwrap` on `ani` after checking its variant with `is_some` [INFO] [stdout] --> src/contain.rs:892:17 [INFO] [stdout] | [INFO] [stdout] 891 | if ani.is_some() && lambda.is_some() { [INFO] [stdout] | ------------- the check is happening here [INFO] [stdout] 892 | if !ani.unwrap().is_nan() && !lambda.unwrap().is_nan() { [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: called `unwrap` on `lambda` after checking its variant with `is_some` [INFO] [stdout] --> src/contain.rs:892:43 [INFO] [stdout] | [INFO] [stdout] 891 | if ani.is_some() && lambda.is_some() { [INFO] [stdout] | ---------------- the check is happening here [INFO] [stdout] 892 | if !ani.unwrap().is_nan() && !lambda.unwrap().is_nan() { [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/contain.rs:909:5 [INFO] [stdout] | [INFO] [stdout] 909 | return (low_ani, high_ani, low_lambda, high_lambda); [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] 909 - return (low_ani, high_ani, low_lambda, high_lambda); [INFO] [stdout] 909 + (low_ani, high_ani, low_lambda, high_lambda) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/contain.rs:862:16 [INFO] [stdout] | [INFO] [stdout] 862 | covs_full: &Vec, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 862 - covs_full: &Vec, [INFO] [stdout] 862 + covs_full: &[u32], [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `reserve` immediately after creation [INFO] [stdout] --> src/contain.rs:873:9 [INFO] [stdout] | [INFO] [stdout] 873 | / let mut rand_vec = vec![]; [INFO] [stdout] 874 | | rand_vec.reserve(num_samp); [INFO] [stdout] | |___________________________________^ help: consider using `Vec::with_capacity(/* Space hint */)`: `let mut rand_vec = Vec::with_capacity(num_samp);` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#reserve_after_initialization [INFO] [stdout] = note: `#[warn(clippy::reserve_after_initialization)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `f64` [INFO] [stdout] --> src/contain.rs:890:43 [INFO] [stdout] | [INFO] [stdout] 890 | let ani = ani_from_lambda(lambda, mean(&rand_vec).unwrap().into(), k, &rand_vec); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into()`: `mean(&rand_vec).unwrap()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/contain.rs:891:9 [INFO] [stdout] | [INFO] [stdout] 891 | / if ani.is_some() && lambda.is_some() { [INFO] [stdout] 892 | | if !ani.unwrap().is_nan() && !lambda.unwrap().is_nan() { [INFO] [stdout] 893 | | res_ani.push(ani); [INFO] [stdout] 894 | | res_lambda.push(lambda); [INFO] [stdout] 895 | | } [INFO] [stdout] 896 | | } [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] 891 ~ if ani.is_some() && lambda.is_some() [INFO] [stdout] 892 ~ && !ani.unwrap().is_nan() && !lambda.unwrap().is_nan() { [INFO] [stdout] 893 | res_ani.push(ani); [INFO] [stdout] 894 | res_lambda.push(lambda); [INFO] [stdout] 895 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/contain.rs:958:9 [INFO] [stdout] | [INFO] [stdout] 958 | return Some(eps) [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] 958 - return Some(eps) [INFO] [stdout] 958 + Some(eps) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/contain.rs:961:9 [INFO] [stdout] | [INFO] [stdout] 961 | return Some(1.) [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] 961 - return Some(1.) [INFO] [stdout] 961 + Some(1.) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/inference.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | return lambda / (v - 1. + lambda + m) [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] 9 - return lambda / (v - 1. + lambda + m) [INFO] [stdout] 9 + lambda / (v - 1. + lambda + m) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/inference.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 14 | return gamma(r + val + 1.) / (val + 1.) / gamma(r + val) * lambda / (r + lambda) [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] 14 - return gamma(r + val + 1.) / (val + 1.) / gamma(r + val) * lambda / (r + lambda) [INFO] [stdout] 14 + gamma(r + val + 1.) / (val + 1.) / gamma(r + val) * lambda / (r + lambda) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/inference.rs:17:8 [INFO] [stdout] | [INFO] [stdout] 17 | return (r + val + 1.) / (val + 1.) * lambda / (r + lambda) [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] 17 - return (r + val + 1.) / (val + 1.) * lambda / (r + lambda) [INFO] [stdout] 17 + (r + val + 1.) / (val + 1.) * lambda / (r + lambda) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/inference.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | return Some(ratio_formula(val, r, lambda)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 26 - return Some(ratio_formula(val, r, lambda)); [INFO] [stdout] 26 + Some(ratio_formula(val, r, lambda)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `unwrap` on `proposed` after checking its variant with `is_some` [INFO] [stdout] --> src/inference.rs:64:21 [INFO] [stdout] | [INFO] [stdout] 63 | if proposed.is_some(){ [INFO] [stdout] | --------------------- help: try: `if let Some() = proposed` [INFO] [stdout] 64 | let p = proposed.unwrap() - ratio_est; [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/inference.rs:101:5 [INFO] [stdout] | [INFO] [stdout] 101 | return Some(best); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 101 - return Some(best); [INFO] [stdout] 101 + Some(best) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> src/inference.rs:30:8 [INFO] [stdout] | [INFO] [stdout] 30 | if full_covs.len() == 0{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `full_covs.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: this block may be rewritten with the `?` operator [INFO] [stdout] --> src/inference.rs:71:5 [INFO] [stdout] | [INFO] [stdout] 71 | / if best.is_none(){ [INFO] [stdout] 72 | | return None [INFO] [stdout] 73 | | } [INFO] [stdout] | |_____^ help: replace it with: `best?;` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#question_mark [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/inference.rs:113:5 [INFO] [stdout] | [INFO] [stdout] 113 | return Some(var / data.len() as f64); [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] 113 - return Some(var / data.len() as f64); [INFO] [stdout] 113 + Some(var / data.len() as f64) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/inference.rs:151:9 [INFO] [stdout] | [INFO] [stdout] 151 | return None; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 151 - return None; [INFO] [stdout] 151 + None [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/inference.rs:153:9 [INFO] [stdout] | [INFO] [stdout] 153 | return Some(lambda as f64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 153 - return Some(lambda as f64); [INFO] [stdout] 153 + Some(lambda as f64) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/inference.rs:147:21 [INFO] [stdout] | [INFO] [stdout] 147 | let mean = mean(&full_covs).unwrap(); [INFO] [stdout] | ^^^^^^^^^^ help: change this to: `full_covs` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/inference.rs:148:19 [INFO] [stdout] | [INFO] [stdout] 148 | let var = var(&full_covs).unwrap(); [INFO] [stdout] | ^^^^^^^^^^ help: change this to: `full_covs` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting to the same type is unnecessary (`f64` -> `f64`) [INFO] [stdout] --> src/inference.rs:153:21 [INFO] [stdout] | [INFO] [stdout] 153 | return Some(lambda as f64); [INFO] [stdout] | ^^^^^^^^^^^^^ help: try: `lambda` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/inference.rs:191:5 [INFO] [stdout] | [INFO] [stdout] 191 | return ret_lambda; [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] 191 - return ret_lambda; [INFO] [stdout] 191 + ret_lambda [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/inference.rs:178:21 [INFO] [stdout] | [INFO] [stdout] 178 | let mean = mean(&full_covs).unwrap(); [INFO] [stdout] | ^^^^^^^^^^ help: change this to: `full_covs` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `f64` [INFO] [stdout] --> src/inference.rs:181:9 [INFO] [stdout] | [INFO] [stdout] 181 | mean.into(), [INFO] [stdout] | ^^^^^^^^^^^ help: consider removing `.into()`: `mean` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/inference.rs:184:5 [INFO] [stdout] | [INFO] [stdout] 184 | let ret_lambda; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] help: move the declaration `ret_lambda` here and remove the assignments from the branches [INFO] [stdout] | [INFO] [stdout] 184 ~ [INFO] [stdout] 185 ~ let ret_lambda = if lambda < 0. || lambda.is_nan() { [INFO] [stdout] 186 ~ None [INFO] [stdout] 187 | } else { [INFO] [stdout] 188 ~ Some(lambda) [INFO] [stdout] 189 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/inference.rs:204:5 [INFO] [stdout] | [INFO] [stdout] 204 | return curr; [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] 204 - return curr; [INFO] [stdout] 204 + curr [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of an assign operation [INFO] [stdout] --> src/inference.rs:202:9 [INFO] [stdout] | [INFO] [stdout] 202 | curr = curr - (t1 - t2) / (t3 - t4); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `curr -= (t1 - t2) / (t3 - t4)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/inference.rs:226:9 [INFO] [stdout] | [INFO] [stdout] 226 | return None; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 226 - return None; [INFO] [stdout] 226 + None [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/inference.rs:240:9 [INFO] [stdout] | [INFO] [stdout] 240 | return lambda; [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] 240 - return lambda; [INFO] [stdout] 240 + lambda [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/inference.rs:229:39 [INFO] [stdout] | [INFO] [stdout] 229 | sort_vec.sort_by(|x, y| y.cmp(&x)); [INFO] [stdout] | ^^ help: change this to: `x` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/inference.rs:235:31 [INFO] [stdout] | [INFO] [stdout] 235 | let count = count_map[&most_ind] as f64; [INFO] [stdout] | ^^^^^^^^^ help: change this to: `most_ind` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/inspect.rs:157:50 [INFO] [stdout] | [INFO] [stdout] 157 | Box::new(BufWriter::new(File::create(&x).unwrap())) as Box [INFO] [stdout] | ^^ help: change this to: `x` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function call inside of `expect` [INFO] [stdout] --> src/inspect.rs:188:47 [INFO] [stdout] | [INFO] [stdout] 188 | let file = File::open(genome_sketch_file).expect(&format!("The sketch `{}` could not be opened. Exiting", genome_sketch_file)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `unwrap_or_else(|_| panic!("The sketch `{}` could not be opened. Exiting", genome_sketch_file))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#expect_fun_call [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function call inside of `expect` [INFO] [stdout] --> src/inspect.rs:192:10 [INFO] [stdout] | [INFO] [stdout] 192 | .expect(&format!( [INFO] [stdout] | __________^ [INFO] [stdout] 193 | | "The database sketch `{}` is not a valid sketch. Perhaps it is an older, incompatible version ", [INFO] [stdout] 194 | | &genome_sketch_file [INFO] [stdout] 195 | | )); [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#expect_fun_call [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 192 ~ .unwrap_or_else(|_| panic!("The database sketch `{}` is not a valid sketch. Perhaps it is an older, incompatible version ", [INFO] [stdout] 193 ~ &genome_sketch_file)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function call inside of `expect` [INFO] [stdout] --> src/inspect.rs:221:38 [INFO] [stdout] | [INFO] [stdout] 221 | let file = File::open(read_file).expect(&format!("The sketch `{}` could not be opened. Exiting", read_file)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `unwrap_or_else(|_| panic!("The sketch `{}` could not be opened. Exiting", read_file))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#expect_fun_call [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function call inside of `expect` [INFO] [stdout] --> src/inspect.rs:224:10 [INFO] [stdout] | [INFO] [stdout] 224 | .expect(&format!( [INFO] [stdout] | __________^ [INFO] [stdout] 225 | | "The sequence sketch `{}` is not a valid sketch. Perhaps it is an older, incompatible version ", [INFO] [stdout] 226 | | &read_file [INFO] [stdout] 227 | | )); [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#expect_fun_call [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 224 ~ .unwrap_or_else(|_| panic!("The sequence sketch `{}` is not a valid sketch. Perhaps it is an older, incompatible version ", [INFO] [stdout] 225 ~ &read_file)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unsafe function's docs are missing a `# Safety` section [INFO] [stdout] --> src/avx2_seeding.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | pub unsafe fn mm_hash256(kmer: __m256i) -> __m256i { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_safety_doc [INFO] [stdout] = note: `#[warn(clippy::missing_safety_doc)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/avx2_seeding.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 29 | return key; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 29 - return key; [INFO] [stdout] 29 + key [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unsafe function's docs are missing a `# Safety` section [INFO] [stdout] --> src/avx2_seeding.rs:33:1 [INFO] [stdout] | [INFO] [stdout] 33 | pub unsafe fn extract_markers_avx2(string: &[u8], kmer_vec: &mut Vec, c: usize, k: usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_safety_doc [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/avx2_seeding.rs:71:9 [INFO] [stdout] | [INFO] [stdout] 71 | let shift_nuc_r; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] help: move the declaration `shift_nuc_r` here and remove the assignments from the branches [INFO] [stdout] | [INFO] [stdout] 71 ~ [INFO] [stdout] 72 ~ let shift_nuc_r = if use_40 { [INFO] [stdout] 73 ~ _mm256_slli_epi64(r_nucs, TWO_K_MINUS_2_40) [INFO] [stdout] 74 | } else { [INFO] [stdout] 75 ~ _mm256_slli_epi64(r_nucs, TWO_K_MINUS_2_60) [INFO] [stdout] 76 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> src/avx2_seeding.rs:81:33 [INFO] [stdout] | [INFO] [stdout] 81 | let rev_marker_mask: i64 = !(0 | (3 << 2 * k - 2)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: consider reducing it to: `((3 << 2 * k - 2))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] = note: `#[warn(clippy::identity_op)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/avx2_seeding.rs:108:9 [INFO] [stdout] | [INFO] [stdout] 108 | let shift_nuc_r; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] help: move the declaration `shift_nuc_r` here and remove the assignments from the branches [INFO] [stdout] | [INFO] [stdout] 108 ~ [INFO] [stdout] 109 ~ let shift_nuc_r = if use_40 { [INFO] [stdout] 110 ~ _mm256_slli_epi64(r_nucs, TWO_K_MINUS_2_40) [INFO] [stdout] 111 | } else { [INFO] [stdout] 112 ~ _mm256_slli_epi64(r_nucs, TWO_K_MINUS_2_60) [INFO] [stdout] 113 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unsafe function's docs are missing a `# Safety` section [INFO] [stdout] --> src/avx2_seeding.rs:151:1 [INFO] [stdout] | [INFO] [stdout] 151 | pub unsafe fn extract_markers_avx2_positions(string: &[u8], kmer_vec: &mut Vec<(usize, usize,u64)>, c: usize, k: usize, contig_number: usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_safety_doc [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/avx2_seeding.rs:189:9 [INFO] [stdout] | [INFO] [stdout] 189 | let shift_nuc_r; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] help: move the declaration `shift_nuc_r` here and remove the assignments from the branches [INFO] [stdout] | [INFO] [stdout] 189 ~ [INFO] [stdout] 190 ~ let shift_nuc_r = if use_40 { [INFO] [stdout] 191 ~ _mm256_slli_epi64(r_nucs, TWO_K_MINUS_2_40) [INFO] [stdout] 192 | } else { [INFO] [stdout] 193 ~ _mm256_slli_epi64(r_nucs, TWO_K_MINUS_2_60) [INFO] [stdout] 194 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this operation has no effect [INFO] [stdout] --> src/avx2_seeding.rs:199:33 [INFO] [stdout] | [INFO] [stdout] 199 | let rev_marker_mask: i64 = !(0 | (3 << 2 * k - 2)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: consider reducing it to: `((3 << 2 * k - 2))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/avx2_seeding.rs:226:9 [INFO] [stdout] | [INFO] [stdout] 226 | let shift_nuc_r; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] help: move the declaration `shift_nuc_r` here and remove the assignments from the branches [INFO] [stdout] | [INFO] [stdout] 226 ~ [INFO] [stdout] 227 ~ let shift_nuc_r = if use_40 { [INFO] [stdout] 228 ~ _mm256_slli_epi64(r_nucs, TWO_K_MINUS_2_40) [INFO] [stdout] 229 | } else { [INFO] [stdout] 230 ~ _mm256_slli_epi64(r_nucs, TWO_K_MINUS_2_60) [INFO] [stdout] 231 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `assert_cmd::prelude::*` [INFO] [stdout] --> tests/unit_test.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use assert_cmd::prelude::*; // Add methods on commands [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> tests/unit_test.rs:20:17 [INFO] [stdout] | [INFO] [stdout] 20 | let mut rolling_kmer_f_marker = _mm256_set_epi64x(0, 0, 0, key); [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_hash` is never used [INFO] [stdout] --> tests/unit_test.rs:4:4 [INFO] [stdout] | [INFO] [stdout] 4 | fn test_hash(){ [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `format!` in `println!` args [INFO] [stdout] --> tests/unit_test.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | println!("{}", format!("{key:b}")); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: combine the `format!(..)` arguments with the outer `println!(..)` call [INFO] [stdout] = help: or consider changing `format!` to `format_args!` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#format_in_format_args [INFO] [stdout] = note: `#[warn(clippy::format_in_format_args)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `format!` in `println!` args [INFO] [stdout] --> tests/unit_test.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | println!("{}", format!("{h:b}")); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: combine the `format!(..)` arguments with the outer `println!(..)` call [INFO] [stdout] = help: or consider changing `format!` to `format_args!` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#format_in_format_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `format!` in `println!` args [INFO] [stdout] --> tests/unit_test.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | println!("{}", format!("{rev:b}")); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: combine the `format!(..)` arguments with the outer `println!(..)` call [INFO] [stdout] = help: or consider changing `format!` to `format_args!` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#format_in_format_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `format!` in `println!` args [INFO] [stdout] --> tests/unit_test.rs:17:13 [INFO] [stdout] | [INFO] [stdout] 17 | println!("{}", format!("{key:b}")); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: combine the `format!(..)` arguments with the outer `println!(..)` call [INFO] [stdout] = help: or consider changing `format!` to `format_args!` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#format_in_format_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `format!` in `println!` args [INFO] [stdout] --> tests/unit_test.rs:23:17 [INFO] [stdout] | [INFO] [stdout] 23 | println!("{}", format!("{v1:b}")); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: combine the `format!(..)` arguments with the outer `println!(..)` call [INFO] [stdout] = help: or consider changing `format!` to `format_args!` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#format_in_format_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs` [INFO] [stdout] --> tests/integration_test.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::fs; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: single argument that looks like it should be multiple arguments [INFO] [stdout] --> tests/integration_test.rs:386:14 [INFO] [stdout] | [INFO] [stdout] 386 | .arg("-d ") [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#suspicious_command_arg_space [INFO] [stdout] = note: `#[warn(clippy::suspicious_command_arg_space)]` on by default [INFO] [stdout] help: consider splitting the argument [INFO] [stdout] | [INFO] [stdout] 386 - .arg("-d ") [INFO] [stdout] 386 + .args(["-d", ""]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> tests/integration_test.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | / Command::new("rm") [INFO] [stdout] 10 | | .arg("-r") [INFO] [stdout] 11 | | .args(["./tests/results/test_sketch_dir"]) [INFO] [stdout] 12 | | .spawn(); [INFO] [stdout] | |________________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 9 | let _ = Command::new("rm") [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [optimized + debuginfo] target(s) in 1m 02s [INFO] running `Command { std: "docker" "inspect" "9cec5c00e7f045dc898f73da85f893b9bd3659efa795676d5891e796ce1c7bad", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9cec5c00e7f045dc898f73da85f893b9bd3659efa795676d5891e796ce1c7bad", kill_on_drop: false }` [INFO] [stdout] 9cec5c00e7f045dc898f73da85f893b9bd3659efa795676d5891e796ce1c7bad