[INFO] fetching crate probminhash 0.1.12... [INFO] linting probminhash-0.1.12 against nightly for clippy-nonminimal_bool-denied [INFO] extracting crate probminhash 0.1.12 into /workspace/builds/worker-5-tc1/source [INFO] started tweaking crates.io crate probminhash 0.1.12 [INFO] finished tweaking crates.io crate probminhash 0.1.12 [INFO] tweaked toml for crates.io crate probminhash 0.1.12 written to /workspace/builds/worker-5-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate probminhash 0.1.12 on toolchain nightly [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate probminhash 0.1.12 already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded murmur3 v0.5.2 [INFO] [stderr] Downloaded twox-hash v2.1.0 [INFO] [stderr] Downloaded wyhash v0.6.0 [INFO] [stderr] Downloaded slog-term v2.9.1 [INFO] [stderr] Downloaded argmin-observer-slog v0.1.0 [INFO] [stderr] Downloaded deranged v0.4.1 [INFO] [stderr] Downloaded argmin-math v0.4.0 [INFO] [stderr] Downloaded env_logger v0.11.7 [INFO] [stderr] Downloaded argmin v0.10.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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] 3b9541432cac9ad9b71461a031f1663c1a4c4c8c2f92a252488b117160323453 [INFO] running `Command { std: "docker" "start" "-a" "3b9541432cac9ad9b71461a031f1663c1a4c4c8c2f92a252488b117160323453", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "3b9541432cac9ad9b71461a031f1663c1a4c4c8c2f92a252488b117160323453", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3b9541432cac9ad9b71461a031f1663c1a4c4c8c2f92a252488b117160323453", kill_on_drop: false }` [INFO] [stdout] 3b9541432cac9ad9b71461a031f1663c1a4c4c8c2f92a252488b117160323453 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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] 59646f4604e6c51e05f770355b883c61a2bf613cb2b5e6b11b94722da6dbf12e [INFO] running `Command { std: "docker" "start" "-a" "59646f4604e6c51e05f770355b883c61a2bf613cb2b5e6b11b94722da6dbf12e", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.171 [INFO] [stderr] Compiling proc-macro2 v1.0.94 [INFO] [stderr] Compiling libm v0.2.11 [INFO] [stderr] Compiling zerocopy v0.8.24 [INFO] [stderr] Compiling getrandom v0.3.2 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling anyhow v1.0.97 [INFO] [stderr] Checking regex-syntax v0.8.5 [INFO] [stderr] Checking once_cell v1.21.1 [INFO] [stderr] Compiling time-macros v0.2.22 [INFO] [stderr] Checking thread_local v1.1.8 [INFO] [stderr] Checking deranged v0.4.1 [INFO] [stderr] Compiling rayon-core v1.12.1 [INFO] [stderr] Compiling slog-async v2.8.0 [INFO] [stderr] Checking crossbeam-channel v0.5.14 [INFO] [stderr] Compiling quote v1.0.40 [INFO] [stderr] Checking getrandom v0.2.15 [INFO] [stderr] Compiling syn v2.0.100 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Checking rand_core v0.9.3 [INFO] [stderr] Checking dirs-sys-next v0.1.2 [INFO] [stderr] Checking regex-automata v0.4.9 [INFO] [stderr] Checking rand_xoshiro v0.6.0 [INFO] [stderr] Checking dirs-next v2.0.0 [INFO] [stderr] Checking time v0.3.41 [INFO] [stderr] Checking term v0.7.0 [INFO] [stderr] Checking num-integer v0.1.46 [INFO] [stderr] Checking num-complex v0.4.6 [INFO] [stderr] Checking is-terminal v0.4.16 [INFO] [stderr] Checking num-bigint v0.4.6 [INFO] [stderr] Checking instant v0.1.13 [INFO] [stderr] Checking log v0.4.27 [INFO] [stderr] Checking take_mut v0.2.2 [INFO] [stderr] Checking anstream v0.6.18 [INFO] [stderr] Checking num-iter v0.1.45 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Checking digest v0.10.7 [INFO] [stderr] Checking jiff v0.2.5 [INFO] [stderr] Checking ppv-lite86 v0.2.21 [INFO] [stderr] Checking sha2 v0.10.8 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking rand_chacha v0.9.0 [INFO] [stderr] Checking slog-term v2.9.1 [INFO] [stderr] Checking num-rational v0.4.2 [INFO] [stderr] Checking rand v0.9.0 [INFO] [stderr] Checking fxhash v0.2.1 [INFO] [stderr] Checking indexmap v2.9.0 [INFO] [stderr] Checking num v0.4.3 [INFO] [stderr] Checking rayon v1.10.0 [INFO] [stderr] Checking rand_distr v0.5.1 [INFO] [stderr] Checking twox-hash v2.1.0 [INFO] [stderr] Checking regex v1.11.1 [INFO] [stderr] Checking rand_xoshiro v0.7.0 [INFO] [stderr] Checking rand_xorshift v0.4.0 [INFO] [stderr] Checking wyhash v0.6.0 [INFO] [stderr] Checking murmur3 v0.5.2 [INFO] [stderr] Checking env_filter v0.1.3 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling serde_derive v1.0.219 [INFO] [stderr] Checking thiserror v1.0.69 [INFO] [stderr] Checking argmin-math v0.4.0 [INFO] [stderr] Checking argmin v0.10.0 [INFO] [stderr] Checking env_logger v0.11.7 [INFO] [stderr] Compiling katexit v0.1.4 [INFO] [stderr] Checking argmin-observer-slog v0.1.0 [INFO] [stderr] Checking serde v1.0.219 [INFO] [stderr] Checking serde_json v1.0.140 [INFO] [stderr] Checking probminhash v0.1.12 (/opt/rustwide/workdir) [INFO] [stdout] warning: casting integer literal to `u64` is unnecessary [INFO] [stdout] --> src/maxvaluetrack.rs:171:57 [INFO] [stdout] | [INFO] [stdout] 171 | let mut rng = Xoshiro256PlusPlus::seed_from_u64(45678 as u64); [INFO] [stdout] | ^^^^^^^^^^^^ help: try: `45678_u64` [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: the loop variable `i` is used to index `wa` [INFO] [stdout] --> src/probminhasher/probminhash2.rs:204:18 [INFO] [stdout] | [INFO] [stdout] 204 | for i in 0..set_size { [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 and enumerate() [INFO] [stdout] | [INFO] [stdout] 204 - for i in 0..set_size { [INFO] [stdout] 204 + for (i, ) in wa.iter().enumerate().take(set_size) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `i` is used to index `wb` [INFO] [stdout] --> src/probminhasher/probminhash2.rs:213:18 [INFO] [stdout] | [INFO] [stdout] 213 | for i in 0..set_size { [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] 213 - for i in 0..set_size { [INFO] [stdout] 213 + for (i, ) in wb.iter().enumerate().take(set_size) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `i` is used to index `wa` [INFO] [stdout] --> src/probminhasher/probminhash2.rs:282:18 [INFO] [stdout] | [INFO] [stdout] 282 | for i in 0..set_size { [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] 282 - for i in 0..set_size { [INFO] [stdout] 282 + for (i, ) in wa.iter().enumerate().take(set_size) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `i` is used to index `wb` [INFO] [stdout] --> src/probminhasher/probminhash2.rs:291:18 [INFO] [stdout] | [INFO] [stdout] 291 | for i in 0..set_size { [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] 291 - for i in 0..set_size { [INFO] [stdout] 291 + for (i, ) in wb.iter().enumerate().take(set_size) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `i` is used to index `wa` [INFO] [stdout] --> src/probminhasher/probminhash3.rs:443:18 [INFO] [stdout] | [INFO] [stdout] 443 | for i in 0..set_size { [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] 443 - for i in 0..set_size { [INFO] [stdout] 443 + for (i, ) in wa.iter().enumerate().take(set_size) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `i` is used to index `wb` [INFO] [stdout] --> src/probminhasher/probminhash3.rs:452:18 [INFO] [stdout] | [INFO] [stdout] 452 | for i in 0..set_size { [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] 452 - for i in 0..set_size { [INFO] [stdout] 452 + for (i, ) in wb.iter().enumerate().take(set_size) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `i` is used to index `wa` [INFO] [stdout] --> src/probminhasher/probminhash3.rs:578:18 [INFO] [stdout] | [INFO] [stdout] 578 | for i in 0..set_size { [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] 578 - for i in 0..set_size { [INFO] [stdout] 578 + for (i, ) in wa.iter().enumerate().take(set_size) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `i` is used to index `wb` [INFO] [stdout] --> src/probminhasher/probminhash3.rs:586:18 [INFO] [stdout] | [INFO] [stdout] 586 | for i in 0..set_size { [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] 586 - for i in 0..set_size { [INFO] [stdout] 586 + for (i, ) in wb.iter().enumerate().take(set_size) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/probminhasher/probminhash3sha.rs:294:9 [INFO] [stdout] | [INFO] [stdout] 294 | return slices; [INFO] [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] 294 - return slices; [INFO] [stdout] 294 + slices [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `i` is used to index `objects` [INFO] [stdout] --> src/probminhasher/probminhash3sha.rs:316:18 [INFO] [stdout] | [INFO] [stdout] 316 | for i in 0..set_size { [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] 316 - for i in 0..set_size { [INFO] [stdout] 316 + for (i, ) in objects.iter().enumerate().take(set_size) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `i` is used to index `objects` [INFO] [stdout] --> src/probminhasher/probminhash3sha.rs:324:18 [INFO] [stdout] | [INFO] [stdout] 324 | for i in 0..set_size { [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] 324 - for i in 0..set_size { [INFO] [stdout] 324 + for (i, ) in objects.iter().enumerate().take(set_size) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `j` is only used to index `objects` [INFO] [stdout] --> src/probminhasher/probminhash3sha.rs:350:26 [INFO] [stdout] | [INFO] [stdout] 350 | for j in 0..set_size { [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] 350 - for j in 0..set_size { [INFO] [stdout] 350 + for in objects.iter().take(set_size) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/probminhasher/probordminhash2.rs:354:46 [INFO] [stdout] | [INFO] [stdout] 354 | let hash1 = pordminhash.hash_set(&v1); [INFO] [stdout] | ^^^ help: change this to: `v1` [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/probminhasher/probordminhash2.rs:355:46 [INFO] [stdout] | [INFO] [stdout] 355 | let hash2 = pordminhash.hash_set(&v2); [INFO] [stdout] | ^^^ help: change this to: `v2` [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: manual implementation of an assign operation [INFO] [stdout] --> src/probminhasher/probordminhash2.rs:359:21 [INFO] [stdout] | [INFO] [stdout] 359 | nb_equal = nb_equal + 1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `nb_equal += 1` [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: unneeded `return` statement [INFO] [stdout] --> src/probminhasher/probordminhash2.rs:373:9 [INFO] [stdout] | [INFO] [stdout] 373 | return (v1, v2); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 373 - return (v1, v2); [INFO] [stdout] 373 + (v1, v2) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/probminhasher/probordminhash2.rs:380:9 [INFO] [stdout] | [INFO] [stdout] 380 | return (v1, v2); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 380 - return (v1, v2); [INFO] [stdout] 380 + (v1, v2) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/probminhasher/probordminhash2.rs:389:9 [INFO] [stdout] | [INFO] [stdout] 389 | return (v1, v2); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 389 - return (v1, v2); [INFO] [stdout] 389 + (v1, v2) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/densminhash.rs:533:12 [INFO] [stdout] | [INFO] [stdout] 533 | if !resa.is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^ help: try: `resa.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: this boolean expression can be simplified [INFO] [stdout] --> src/densminhash.rs:542:12 [INFO] [stdout] | [INFO] [stdout] 542 | if !resb.is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^ help: try: `resb.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: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/densminhash.rs:532:42 [INFO] [stdout] | [INFO] [stdout] 532 | let resa = sminhash.sketch_slice(&va); [INFO] [stdout] | ^^^ help: change this to: `va` [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/densminhash.rs:541:42 [INFO] [stdout] | [INFO] [stdout] 541 | let resb = sminhash.sketch_slice(&vb); [INFO] [stdout] | ^^^ help: change this to: `vb` [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/densminhash.rs:550:52 [INFO] [stdout] | [INFO] [stdout] 550 | let jac = get_jaccard_index_estimate(&ska, &skb).unwrap(); [INFO] [stdout] | ^^^^ help: change this to: `skb` [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 boolean expression can be simplified [INFO] [stdout] --> src/densminhash.rs:603:12 [INFO] [stdout] | [INFO] [stdout] 603 | if !resa.is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^ help: try: `resa.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: this boolean expression can be simplified [INFO] [stdout] --> src/densminhash.rs:612:12 [INFO] [stdout] | [INFO] [stdout] 612 | if !resb.is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^ help: try: `resb.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: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/densminhash.rs:602:42 [INFO] [stdout] | [INFO] [stdout] 602 | let resa = sminhash.sketch_slice(&va); [INFO] [stdout] | ^^^ help: change this to: `va` [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/densminhash.rs:611:42 [INFO] [stdout] | [INFO] [stdout] 611 | let resb = sminhash.sketch_slice(&vb); [INFO] [stdout] | ^^^ help: change this to: `vb` [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/densminhash.rs:620:52 [INFO] [stdout] | [INFO] [stdout] 620 | let jac = get_jaccard_index_estimate(&ska, &skb).unwrap(); [INFO] [stdout] | ^^^^ help: change this to: `skb` [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: manual implementation of `.is_multiple_of()` [INFO] [stdout] --> src/setsketcher.rs:346:20 [INFO] [stdout] | [INFO] [stdout] 346 | if self.nbmin % self.m == 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace with: `self.nbmin.is_multiple_of(self.m)` [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: this boolean expression can be simplified [INFO] [stdout] --> src/setsketcher.rs:776:12 [INFO] [stdout] | [INFO] [stdout] 776 | if !resa.is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^ help: try: `resa.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: this boolean expression can be simplified [INFO] [stdout] --> src/setsketcher.rs:785:12 [INFO] [stdout] | [INFO] [stdout] 785 | if !resb.is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^ help: try: `resb.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: casting integer literal to `f32` is unnecessary [INFO] [stdout] --> src/setsketcher.rs:767:37 [INFO] [stdout] | [INFO] [stdout] 767 | let jexact = inter as f32 / 2000 as f32; [INFO] [stdout] | ^^^^^^^^^^^ help: try: `2000_f32` [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 expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/setsketcher.rs:794:52 [INFO] [stdout] | [INFO] [stdout] 794 | let jac = get_jaccard_index_estimate(&ska, &skb).unwrap(); [INFO] [stdout] | ^^^^ help: change this to: `skb` [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 boolean expression can be simplified [INFO] [stdout] --> src/setsketcher.rs:831:12 [INFO] [stdout] | [INFO] [stdout] 831 | if !resa.is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^ help: try: `resa.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: this boolean expression can be simplified [INFO] [stdout] --> src/setsketcher.rs:850:12 [INFO] [stdout] | [INFO] [stdout] 850 | if !resb.is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^ help: try: `resb.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: manual implementation of `.is_multiple_of()` [INFO] [stdout] --> src/setsketcher.rs:346:20 [INFO] [stdout] | [INFO] [stdout] 346 | if self.nbmin % self.m == 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace with: `self.nbmin.is_multiple_of(self.m)` [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: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/setsketcher.rs:865:52 [INFO] [stdout] | [INFO] [stdout] 865 | let jac = get_jaccard_index_estimate(&ska, &skb).unwrap(); [INFO] [stdout] | ^^^^ help: change this to: `skb` [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 integer literal to `u64` is unnecessary [INFO] [stdout] --> src/setsketcher.rs:890:57 [INFO] [stdout] | [INFO] [stdout] 890 | let mut rng = Xoshiro256PlusPlus::seed_from_u64(45679 as u64); [INFO] [stdout] | ^^^^^^^^^^^^ help: try: `45679_u64` [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 boolean expression can be simplified [INFO] [stdout] --> src/setsketcher.rs:922:12 [INFO] [stdout] | [INFO] [stdout] 922 | if !resa.is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^ help: try: `resa.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: this boolean expression can be simplified [INFO] [stdout] --> src/setsketcher.rs:930:12 [INFO] [stdout] | [INFO] [stdout] 930 | if !resb.is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^ help: try: `resb.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: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/setsketcher.rs:943:40 [INFO] [stdout] | [INFO] [stdout] 943 | get_jaccard_index_estimate(&sethasher_a.get_signature(), &sethasher_b.get_signature()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `sethasher_a.get_signature()` [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/setsketcher.rs:943:70 [INFO] [stdout] | [INFO] [stdout] 943 | get_jaccard_index_estimate(&sethasher_a.get_signature(), &sethasher_b.get_signature()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `sethasher_b.get_signature()` [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 boolean expression can be simplified [INFO] [stdout] --> src/setsketcher.rs:986:12 [INFO] [stdout] | [INFO] [stdout] 986 | if !resa.is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^ help: try: `resa.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: this boolean expression can be simplified [INFO] [stdout] --> src/setsketcher.rs:994:12 [INFO] [stdout] | [INFO] [stdout] 994 | if !resb.is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^ help: try: `resb.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: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/setsketcher.rs:1001:40 [INFO] [stdout] | [INFO] [stdout] 1001 | get_jaccard_index_estimate(&sethasher_a.get_signature(), &sethasher_b.get_signature()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `sethasher_a.get_signature()` [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/setsketcher.rs:1001:70 [INFO] [stdout] | [INFO] [stdout] 1001 | get_jaccard_index_estimate(&sethasher_a.get_signature(), &sethasher_b.get_signature()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `sethasher_b.get_signature()` [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/setsketcher.rs:1017:37 [INFO] [stdout] | [INFO] [stdout] 1017 | let j = mle_jaccard.get_mle(&sethasher_a.get_signature(), sethasher_b.get_signature()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `sethasher_a.get_signature()` [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 boolean expression can be simplified [INFO] [stdout] --> src/superminhasher.rs:342:12 [INFO] [stdout] | [INFO] [stdout] 342 | if !resa.is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^ help: try: `resa.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: this boolean expression can be simplified [INFO] [stdout] --> src/superminhasher.rs:349:12 [INFO] [stdout] | [INFO] [stdout] 349 | if !resb.is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^ help: try: `resb.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: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/superminhasher.rs:355:54 [INFO] [stdout] | [INFO] [stdout] 355 | let jac = compute_superminhash_jaccard(&ska, &skb).unwrap(); [INFO] [stdout] | ^^^^ help: change this to: `skb` [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 boolean expression can be simplified [INFO] [stdout] --> src/superminhasher.rs:385:12 [INFO] [stdout] | [INFO] [stdout] 385 | if !resa.is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^ help: try: `resa.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: this boolean expression can be simplified [INFO] [stdout] --> src/superminhasher.rs:392:12 [INFO] [stdout] | [INFO] [stdout] 392 | if !resb.is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^ help: try: `resb.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: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/superminhasher.rs:398:54 [INFO] [stdout] | [INFO] [stdout] 398 | let jac = compute_superminhash_jaccard(&ska, &skb).unwrap(); [INFO] [stdout] | ^^^^ help: change this to: `skb` [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 boolean expression can be simplified [INFO] [stdout] --> src/superminhasher.rs:429:12 [INFO] [stdout] | [INFO] [stdout] 429 | if !resa.is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^ help: try: `resa.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: this boolean expression can be simplified [INFO] [stdout] --> src/superminhasher.rs:437:12 [INFO] [stdout] | [INFO] [stdout] 437 | if !resb.is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^ help: try: `resb.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: redundant closure [INFO] [stdout] --> src/superminhasher.rs:418:42 [INFO] [stdout] | [INFO] [stdout] 418 | let va: Vec = (0..1000).map(|x| invhash::int64_hash(x)).collect(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the function itself: `invhash::int64_hash` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] = note: `#[warn(clippy::redundant_closure)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/superminhasher.rs:419:44 [INFO] [stdout] | [INFO] [stdout] 419 | let vb: Vec = (900..2000).map(|x| invhash::int64_hash(x)).collect(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the function itself: `invhash::int64_hash` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/superminhasher.rs:443:54 [INFO] [stdout] | [INFO] [stdout] 443 | let jac = compute_superminhash_jaccard(&ska, &skb).unwrap() as f32; [INFO] [stdout] | ^^^^ help: change this to: `skb` [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 boolean expression can be simplified [INFO] [stdout] --> src/superminhasher.rs:472:12 [INFO] [stdout] | [INFO] [stdout] 472 | if !resa.is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^ help: try: `resa.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: this boolean expression can be simplified [INFO] [stdout] --> src/superminhasher.rs:480:12 [INFO] [stdout] | [INFO] [stdout] 480 | if !resb.is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^ help: try: `resb.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: redundant closure [INFO] [stdout] --> src/superminhasher.rs:461:42 [INFO] [stdout] | [INFO] [stdout] 461 | let va: Vec = (0..1000).map(|x| invhash::int64_hash(x)).collect(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the function itself: `invhash::int64_hash` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/superminhasher.rs:462:44 [INFO] [stdout] | [INFO] [stdout] 462 | let vb: Vec = (900..2000).map(|x| invhash::int64_hash(x)).collect(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the function itself: `invhash::int64_hash` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/superminhasher.rs:486:54 [INFO] [stdout] | [INFO] [stdout] 486 | let jac = compute_superminhash_jaccard(&ska, &skb).unwrap(); [INFO] [stdout] | ^^^^ help: change this to: `skb` [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 integer literal to `u64` is unnecessary [INFO] [stdout] --> src/exp01.rs:99:57 [INFO] [stdout] | [INFO] [stdout] 99 | let mut rng = Xoshiro256PlusPlus::seed_from_u64(234567 as u64); [INFO] [stdout] | ^^^^^^^^^^^^^ help: try: `234567_u64` [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: manual implementation of an assign operation [INFO] [stdout] --> src/exp01.rs:119:9 [INFO] [stdout] | [INFO] [stdout] 119 | s2 = s2 / (nb_sampled - 1) as f64; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `s2 /= (nb_sampled - 1) as f64` [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: casting integer literal to `u64` is unnecessary [INFO] [stdout] --> src/fyshuffle.rs:87:57 [INFO] [stdout] | [INFO] [stdout] 87 | let mut rng = Xoshiro256PlusPlus::seed_from_u64(45679 as u64); [INFO] [stdout] | ^^^^^^^^^^^^ help: try: `45679_u64` [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: the loop variable `i` is used to index `freq` [INFO] [stdout] --> src/fyshuffle.rs:107:18 [INFO] [stdout] | [INFO] [stdout] 107 | for i in 0..freq.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] 107 - for i in 0..freq.len() { [INFO] [stdout] 107 + for (i, ) in freq.iter().enumerate() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting integer literal to `u64` is unnecessary [INFO] [stdout] --> src/fyshuffle.rs:123:57 [INFO] [stdout] | [INFO] [stdout] 123 | let mut rng = Xoshiro256PlusPlus::seed_from_u64(45679 as u64); [INFO] [stdout] | ^^^^^^^^^^^^ help: try: `45679_u64` [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: it looks like you're manually copying between slices [INFO] [stdout] --> src/fyshuffle.rs:136:13 [INFO] [stdout] | [INFO] [stdout] 136 | / for i in 0..m { [INFO] [stdout] 137 | | h[i] = values[i]; [INFO] [stdout] 138 | | } [INFO] [stdout] | |_____________^ help: try replacing the loop by: `h[..m].copy_from_slice(&values[..m]);` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_memcpy [INFO] [stdout] = note: `#[warn(clippy::manual_memcpy)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of an assign operation [INFO] [stdout] --> src/fyshuffle.rs:141:21 [INFO] [stdout] | [INFO] [stdout] 141 | *count = *count + 1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: replace it with: `*count += 1` [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: casting integer literal to `f64` is unnecessary [INFO] [stdout] --> src/fyshuffle.rs:153:44 [INFO] [stdout] | [INFO] [stdout] 153 | let mu_th = nb_iterations as f64 / 24 as f64; [INFO] [stdout] | ^^^^^^^^^ help: try: `24_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: the loop variable `i` is only used to index `nb_s` [INFO] [stdout] --> src/fyshuffle.rs:160:18 [INFO] [stdout] | [INFO] [stdout] 160 | for i in 0..count.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] 160 - for i in 0..count.len() { [INFO] [stdout] 160 + for in nb_s.iter().take(count.len()) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this returns a `Result<_, ()>` [INFO] [stdout] --> src/superminhasher2.rs:187:5 [INFO] [stdout] | [INFO] [stdout] 187 | pub fn get_jaccard_index_estimate(&self, other_sketch: &[I]) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: use a custom `Error` type instead [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_unit_err [INFO] [stdout] = note: `#[warn(clippy::result_unit_err)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `i` is used to index `other_sketch` [INFO] [stdout] --> src/superminhasher2.rs:192:18 [INFO] [stdout] | [INFO] [stdout] 192 | for i in 0..self.hsketch.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] 192 - for i in 0..self.hsketch.len() { [INFO] [stdout] 192 + for (i, ) in other_sketch.iter().enumerate().take(self.hsketch.len()) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this returns a `Result<_, ()>` [INFO] [stdout] --> src/superminhasher2.rs:203:5 [INFO] [stdout] | [INFO] [stdout] 203 | pub fn sketch(&mut self, to_sketch: &T) -> Result<(), ()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: use a custom `Error` type instead [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_unit_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of `BuildHasher::hash_one` [INFO] [stdout] --> src/superminhasher2.rs:208:28 [INFO] [stdout] | [INFO] [stdout] 208 | let hval_64: u64 = hasher.finish(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_hash_one [INFO] [stdout] = note: `#[warn(clippy::manual_hash_one)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 206 ~ [INFO] [stdout] 207 ~ [INFO] [stdout] 208 ~ let hval_64: u64 = self.b_hasher.hash_one(&to_sketch); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this returns a `Result<_, ()>` [INFO] [stdout] --> src/superminhasher2.rs:267:5 [INFO] [stdout] | [INFO] [stdout] 267 | pub fn sketch_slice(&mut self, to_sketch: &[T]) -> Result<(), ()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: use a custom `Error` type instead [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_unit_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this returns a `Result<_, ()>` [INFO] [stdout] --> src/superminhasher2.rs:290:1 [INFO] [stdout] | [INFO] [stdout] 290 | / pub fn compute_superminhash_jaccard( [INFO] [stdout] 291 | | hsketch: &[F], [INFO] [stdout] 292 | | other_sketch: &[F], [INFO] [stdout] 293 | | ) -> Result { [INFO] [stdout] | |____________________^ [INFO] [stdout] | [INFO] [stdout] = help: use a custom `Error` type instead [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_unit_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this returns a `Result<_, ()>` [INFO] [stdout] --> src/superminhasher2.rs:309:1 [INFO] [stdout] | [INFO] [stdout] 309 | / pub fn get_jaccard_index_estimate( [INFO] [stdout] 310 | | hsketch: &[F], [INFO] [stdout] 311 | | other_sketch: &[F], [INFO] [stdout] 312 | | ) -> Result { [INFO] [stdout] | |____________________^ [INFO] [stdout] | [INFO] [stdout] = help: use a custom `Error` type instead [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_unit_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/superminhasher2.rs:352:12 [INFO] [stdout] | [INFO] [stdout] 352 | if !resa.is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^ help: try: `resa.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: this boolean expression can be simplified [INFO] [stdout] --> src/superminhasher2.rs:359:12 [INFO] [stdout] | [INFO] [stdout] 359 | if !resb.is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^ help: try: `resb.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: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/superminhasher2.rs:365:54 [INFO] [stdout] | [INFO] [stdout] 365 | let jac = compute_superminhash_jaccard(&ska, &skb).unwrap(); [INFO] [stdout] | ^^^^ help: change this to: `skb` [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 boolean expression can be simplified [INFO] [stdout] --> src/superminhasher2.rs:393:12 [INFO] [stdout] | [INFO] [stdout] 393 | if !resa.is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^ help: try: `resa.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: this boolean expression can be simplified [INFO] [stdout] --> src/superminhasher2.rs:400:12 [INFO] [stdout] | [INFO] [stdout] 400 | if !resb.is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^ help: try: `resb.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: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/superminhasher2.rs:409:54 [INFO] [stdout] | [INFO] [stdout] 409 | let jac = compute_superminhash_jaccard(&ska, &skb).unwrap(); [INFO] [stdout] | ^^^^ help: change this to: `skb` [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 boolean expression can be simplified [INFO] [stdout] --> src/superminhasher2.rs:438:12 [INFO] [stdout] | [INFO] [stdout] 438 | if !resa.is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^ help: try: `resa.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: this boolean expression can be simplified [INFO] [stdout] --> src/superminhasher2.rs:446:12 [INFO] [stdout] | [INFO] [stdout] 446 | if !resb.is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^ help: try: `resb.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: redundant closure [INFO] [stdout] --> src/superminhasher2.rs:427:42 [INFO] [stdout] | [INFO] [stdout] 427 | let va: Vec = (0..1000).map(|x| invhash::int64_hash(x)).collect(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the function itself: `invhash::int64_hash` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/superminhasher2.rs:428:44 [INFO] [stdout] | [INFO] [stdout] 428 | let vb: Vec = (900..2000).map(|x| invhash::int64_hash(x)).collect(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the function itself: `invhash::int64_hash` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/superminhasher2.rs:452:54 [INFO] [stdout] | [INFO] [stdout] 452 | let jac = compute_superminhash_jaccard(&ska, &skb).unwrap(); [INFO] [stdout] | ^^^^ help: change this to: `skb` [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 returns a `Result<_, ()>` [INFO] [stdout] --> src/superminhasher2.rs:187:5 [INFO] [stdout] | [INFO] [stdout] 187 | pub fn get_jaccard_index_estimate(&self, other_sketch: &[I]) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: use a custom `Error` type instead [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_unit_err [INFO] [stdout] = note: `#[warn(clippy::result_unit_err)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `i` is used to index `other_sketch` [INFO] [stdout] --> src/superminhasher2.rs:192:18 [INFO] [stdout] | [INFO] [stdout] 192 | for i in 0..self.hsketch.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 and enumerate() [INFO] [stdout] | [INFO] [stdout] 192 - for i in 0..self.hsketch.len() { [INFO] [stdout] 192 + for (i, ) in other_sketch.iter().enumerate().take(self.hsketch.len()) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this returns a `Result<_, ()>` [INFO] [stdout] --> src/superminhasher2.rs:203:5 [INFO] [stdout] | [INFO] [stdout] 203 | pub fn sketch(&mut self, to_sketch: &T) -> Result<(), ()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: use a custom `Error` type instead [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_unit_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of `BuildHasher::hash_one` [INFO] [stdout] --> src/superminhasher2.rs:208:28 [INFO] [stdout] | [INFO] [stdout] 208 | let hval_64: u64 = hasher.finish(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_hash_one [INFO] [stdout] = note: `#[warn(clippy::manual_hash_one)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 206 ~ [INFO] [stdout] 207 ~ [INFO] [stdout] 208 ~ let hval_64: u64 = self.b_hasher.hash_one(&to_sketch); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this returns a `Result<_, ()>` [INFO] [stdout] --> src/superminhasher2.rs:267:5 [INFO] [stdout] | [INFO] [stdout] 267 | pub fn sketch_slice(&mut self, to_sketch: &[T]) -> Result<(), ()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: use a custom `Error` type instead [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_unit_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this returns a `Result<_, ()>` [INFO] [stdout] --> src/superminhasher2.rs:290:1 [INFO] [stdout] | [INFO] [stdout] 290 | / pub fn compute_superminhash_jaccard( [INFO] [stdout] 291 | | hsketch: &[F], [INFO] [stdout] 292 | | other_sketch: &[F], [INFO] [stdout] 293 | | ) -> Result { [INFO] [stdout] | |____________________^ [INFO] [stdout] | [INFO] [stdout] = help: use a custom `Error` type instead [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_unit_err [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this returns a `Result<_, ()>` [INFO] [stdout] --> src/superminhasher2.rs:309:1 [INFO] [stdout] | [INFO] [stdout] 309 | / pub fn get_jaccard_index_estimate( [INFO] [stdout] 310 | | hsketch: &[F], [INFO] [stdout] 311 | | other_sketch: &[F], [INFO] [stdout] 312 | | ) -> Result { [INFO] [stdout] | |____________________^ [INFO] [stdout] | [INFO] [stdout] = help: use a custom `Error` type instead [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_unit_err [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 46.92s [INFO] running `Command { std: "docker" "inspect" "59646f4604e6c51e05f770355b883c61a2bf613cb2b5e6b11b94722da6dbf12e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "59646f4604e6c51e05f770355b883c61a2bf613cb2b5e6b11b94722da6dbf12e", kill_on_drop: false }` [INFO] [stdout] 59646f4604e6c51e05f770355b883c61a2bf613cb2b5e6b11b94722da6dbf12e