[INFO] fetching crate cow_hashmap 0.1.13... [INFO] linting cow_hashmap-0.1.13 against nightly for clippy-nonminimal_bool-denied [INFO] extracting crate cow_hashmap 0.1.13 into /workspace/builds/worker-6-tc1/source [INFO] started tweaking crates.io crate cow_hashmap 0.1.13 [INFO] finished tweaking crates.io crate cow_hashmap 0.1.13 [INFO] tweaked toml for crates.io crate cow_hashmap 0.1.13 written to /workspace/builds/worker-6-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate cow_hashmap 0.1.13 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] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 24 packages to latest compatible versions [INFO] [stderr] Adding rand v0.8.5 (available: v0.10.0) [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] Downloading crates ... [INFO] [stderr] Downloaded arc-swap-for-cow v1.7.1 [INFO] [stderr] Downloaded cow_hashbrown v0.14.21 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] ea264787d8cd17db5ea3f4b7d17c4bdf9c49152f535556eb5d141bdb4ab640ee [INFO] running `Command { std: "docker" "start" "-a" "ea264787d8cd17db5ea3f4b7d17c4bdf9c49152f535556eb5d141bdb4ab640ee", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "ea264787d8cd17db5ea3f4b7d17c4bdf9c49152f535556eb5d141bdb4ab640ee", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ea264787d8cd17db5ea3f4b7d17c4bdf9c49152f535556eb5d141bdb4ab640ee", kill_on_drop: false }` [INFO] [stdout] ea264787d8cd17db5ea3f4b7d17c4bdf9c49152f535556eb5d141bdb4ab640ee [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "clippy" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] c6850c3601a1b1c187423234538d3b9613ea31dd5091084324ae920012b3af8f [INFO] running `Command { std: "docker" "start" "-a" "c6850c3601a1b1c187423234538d3b9613ea31dd5091084324ae920012b3af8f", kill_on_drop: false }` [INFO] [stderr] Checking self_cell v1.2.2 [INFO] [stderr] Checking arc-swap-for-cow v1.7.1 [INFO] [stderr] Checking getrandom v0.2.17 [INFO] [stderr] Checking ahash v0.8.12 [INFO] [stderr] Checking arc-swap v1.8.2 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Checking cow_hashbrown v0.14.21 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking cow_hashmap v0.1.13 (/opt/rustwide/workdir) [INFO] [stderr] Checking rand v0.8.5 [INFO] [stdout] warning: empty line after doc comment [INFO] [stdout] --> src/lib.rs:245:1 [INFO] [stdout] | [INFO] [stdout] 245 | / /// ``` [INFO] [stdout] 246 | | [INFO] [stdout] | |_^ [INFO] [stdout] 247 | pub struct CowHashMap { [INFO] [stdout] | --------------------- the comment documents this struct [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#empty_line_after_doc_comments [INFO] [stdout] = note: `#[warn(clippy::empty_line_after_doc_comments)]` on by default [INFO] [stdout] = help: if the empty line is unintentional, remove it [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: bound is defined in more than one place [INFO] [stdout] --> src/lib.rs:716:14 [INFO] [stdout] | [INFO] [stdout] 716 | fn shard(&self, key: &Q) -> Option>> [INFO] [stdout] | ^ [INFO] [stdout] 717 | where [INFO] [stdout] 718 | Q: Hash + Eq, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#multiple_bound_locations [INFO] [stdout] = note: `#[warn(clippy::multiple_bound_locations)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: bound is defined in more than one place [INFO] [stdout] --> src/lib.rs:728:25 [INFO] [stdout] | [INFO] [stdout] 728 | fn shard_and_parent( [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 736 | Q: Hash + Eq, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#multiple_bound_locations [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: bound is defined in more than one place [INFO] [stdout] --> src/lib.rs:751:18 [INFO] [stdout] | [INFO] [stdout] 751 | fn shard_mut(&self, key: &Q) -> CowValueGuard> [INFO] [stdout] | ^ [INFO] [stdout] 752 | where [INFO] [stdout] 753 | Q: Hash + Eq, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#multiple_bound_locations [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: bound is defined in more than one place [INFO] [stdout] --> src/lib.rs:856:16 [INFO] [stdout] | [INFO] [stdout] 856 | pub fn get(&self, k: &Q) -> Option> [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 859 | Q: Hash + Eq, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#multiple_bound_locations [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: bound is defined in more than one place [INFO] [stdout] --> src/lib.rs:882:26 [INFO] [stdout] | [INFO] [stdout] 882 | pub fn get_key_value(&self, k: &Q) -> Option<(K, Arc)> [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 885 | Q: Hash + Eq, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#multiple_bound_locations [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: bound is defined in more than one place [INFO] [stdout] --> src/lib.rs:907:25 [INFO] [stdout] | [INFO] [stdout] 907 | pub fn contains_key(&self, k: &Q) -> bool [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 910 | Q: Hash + Eq, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#multiple_bound_locations [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: bound is defined in more than one place [INFO] [stdout] --> src/lib.rs:939:20 [INFO] [stdout] | [INFO] [stdout] 939 | pub fn get_mut(&self, k: &Q) -> Option> [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 943 | Q: Hash + Eq, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#multiple_bound_locations [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: bound is defined in more than one place [INFO] [stdout] --> src/lib.rs:1108:19 [INFO] [stdout] | [INFO] [stdout] 1108 | pub fn remove(&self, k: &Q) -> Option> [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 1111 | Q: Hash + Eq, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#multiple_bound_locations [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: bound is defined in more than one place [INFO] [stdout] --> src/lib.rs:1145:25 [INFO] [stdout] | [INFO] [stdout] 1145 | pub fn remove_entry(&self, k: &Q) -> Option<(K, Arc)> [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 1148 | Q: Hash + Eq, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#multiple_bound_locations [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: returning the result of a `let` binding from a block [INFO] [stdout] --> src/lib.rs:601:9 [INFO] [stdout] | [INFO] [stdout] 596 | / let ret = Drain { [INFO] [stdout] 597 | | base: self.base.drain(), [INFO] [stdout] 598 | | shard1: None, [INFO] [stdout] 599 | | shard2: None, [INFO] [stdout] 600 | | }; [INFO] [stdout] | |__________- unnecessary `let` binding [INFO] [stdout] 601 | ret [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stdout] = note: `#[warn(clippy::let_and_return)]` on by default [INFO] [stdout] help: return the expression directly [INFO] [stdout] | [INFO] [stdout] 596 ~ [INFO] [stdout] 597 ~ Drain { [INFO] [stdout] 598 + base: self.base.drain(), [INFO] [stdout] 599 + shard1: None, [INFO] [stdout] 600 + shard2: None, [INFO] [stdout] 601 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stdout] --> src/lib.rs:731:10 [INFO] [stdout] | [INFO] [stdout] 731 | ) -> Option<( [INFO] [stdout] | __________^ [INFO] [stdout] 732 | | Arc>, [INFO] [stdout] 733 | | Arc, S>>, [INFO] [stdout] 734 | | )> [INFO] [stdout] | |______^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stdout] = note: `#[warn(clippy::type_complexity)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `map_or` can be simplified [INFO] [stdout] --> src/lib.rs:1195:33 [INFO] [stdout] | [INFO] [stdout] 1195 | .all(|(key, value)| other.get(&key).map_or(false, |v| *value == *v)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_map_or [INFO] [stdout] = note: `#[warn(clippy::unnecessary_map_or)]` on by default [INFO] [stdout] help: use `is_some_and` instead [INFO] [stdout] | [INFO] [stdout] 1195 - .all(|(key, value)| other.get(&key).map_or(false, |v| *value == *v)) [INFO] [stdout] 1195 + .all(|(key, value)| other.get(&key).is_some_and(|v| *value == *v)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this lifetime isn't used in the impl [INFO] [stdout] --> src/lib.rs:1461:6 [INFO] [stdout] | [INFO] [stdout] 1461 | impl<'a, K: Clone, V, S> Drain { [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#extra_unused_lifetimes [INFO] [stdout] = note: `#[warn(clippy::extra_unused_lifetimes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this lifetime isn't used in the impl [INFO] [stdout] --> src/lib.rs:2076:6 [INFO] [stdout] | [INFO] [stdout] 2076 | impl<'a, K: Clone, V, S> Iterator for Drain { [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#extra_unused_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: empty line after doc comment [INFO] [stdout] --> src/lib.rs:245:1 [INFO] [stdout] | [INFO] [stdout] 245 | / /// ``` [INFO] [stdout] 246 | | [INFO] [stdout] | |_^ [INFO] [stdout] 247 | pub struct CowHashMap { [INFO] [stdout] | --------------------- the comment documents this struct [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#empty_line_after_doc_comments [INFO] [stdout] = note: `#[warn(clippy::empty_line_after_doc_comments)]` on by default [INFO] [stdout] = help: if the empty line is unintentional, remove it [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: bound is defined in more than one place [INFO] [stdout] --> src/lib.rs:716:14 [INFO] [stdout] | [INFO] [stdout] 716 | fn shard(&self, key: &Q) -> Option>> [INFO] [stdout] | ^ [INFO] [stdout] 717 | where [INFO] [stdout] 718 | Q: Hash + Eq, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#multiple_bound_locations [INFO] [stdout] = note: `#[warn(clippy::multiple_bound_locations)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: bound is defined in more than one place [INFO] [stdout] --> src/lib.rs:728:25 [INFO] [stdout] | [INFO] [stdout] 728 | fn shard_and_parent( [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 736 | Q: Hash + Eq, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#multiple_bound_locations [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: bound is defined in more than one place [INFO] [stdout] --> src/lib.rs:751:18 [INFO] [stdout] | [INFO] [stdout] 751 | fn shard_mut(&self, key: &Q) -> CowValueGuard> [INFO] [stdout] | ^ [INFO] [stdout] 752 | where [INFO] [stdout] 753 | Q: Hash + Eq, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#multiple_bound_locations [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: bound is defined in more than one place [INFO] [stdout] --> src/lib.rs:856:16 [INFO] [stdout] | [INFO] [stdout] 856 | pub fn get(&self, k: &Q) -> Option> [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 859 | Q: Hash + Eq, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#multiple_bound_locations [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: bound is defined in more than one place [INFO] [stdout] --> src/lib.rs:882:26 [INFO] [stdout] | [INFO] [stdout] 882 | pub fn get_key_value(&self, k: &Q) -> Option<(K, Arc)> [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 885 | Q: Hash + Eq, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#multiple_bound_locations [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: bound is defined in more than one place [INFO] [stdout] --> src/lib.rs:907:25 [INFO] [stdout] | [INFO] [stdout] 907 | pub fn contains_key(&self, k: &Q) -> bool [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 910 | Q: Hash + Eq, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#multiple_bound_locations [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: bound is defined in more than one place [INFO] [stdout] --> src/lib.rs:939:20 [INFO] [stdout] | [INFO] [stdout] 939 | pub fn get_mut(&self, k: &Q) -> Option> [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 943 | Q: Hash + Eq, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#multiple_bound_locations [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: bound is defined in more than one place [INFO] [stdout] --> src/lib.rs:1108:19 [INFO] [stdout] | [INFO] [stdout] 1108 | pub fn remove(&self, k: &Q) -> Option> [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 1111 | Q: Hash + Eq, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#multiple_bound_locations [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: bound is defined in more than one place [INFO] [stdout] --> src/lib.rs:1145:25 [INFO] [stdout] | [INFO] [stdout] 1145 | pub fn remove_entry(&self, k: &Q) -> Option<(K, Arc)> [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 1148 | Q: Hash + Eq, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#multiple_bound_locations [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: initializer for `thread_local` value can be made `const` [INFO] [stdout] --> src/tests.rs:33:57 [INFO] [stdout] | [INFO] [stdout] 33 | thread_local! { static DROP_VECTOR: RefCell> = RefCell::new(Vec::new()) } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace with: `const { RefCell::new(Vec::new()) }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_const_for_thread_local [INFO] [stdout] = note: `#[warn(clippy::missing_const_for_thread_local)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/tests.rs:304:13 [INFO] [stdout] | [INFO] [stdout] 304 | assert!(!m.insert(1, 3).is_none()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `m.insert(1, 3).is_some()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] = note: `#[warn(clippy::nonminimal_bool)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of an assign operation [INFO] [stdout] --> src/tests.rs:405:9 [INFO] [stdout] | [INFO] [stdout] 405 | *value = (*value) * 2 [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `*value *= 2` [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: returning the result of a `let` binding from a block [INFO] [stdout] --> src/lib.rs:601:9 [INFO] [stdout] | [INFO] [stdout] 596 | / let ret = Drain { [INFO] [stdout] 597 | | base: self.base.drain(), [INFO] [stdout] 598 | | shard1: None, [INFO] [stdout] 599 | | shard2: None, [INFO] [stdout] 600 | | }; [INFO] [stdout] | |__________- unnecessary `let` binding [INFO] [stdout] 601 | ret [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stdout] = note: `#[warn(clippy::let_and_return)]` on by default [INFO] [stdout] help: return the expression directly [INFO] [stdout] | [INFO] [stdout] 596 ~ [INFO] [stdout] 597 ~ Drain { [INFO] [stdout] 598 + base: self.base.drain(), [INFO] [stdout] 599 + shard1: None, [INFO] [stdout] 600 + shard2: None, [INFO] [stdout] 601 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stdout] --> src/lib.rs:731:10 [INFO] [stdout] | [INFO] [stdout] 731 | ) -> Option<( [INFO] [stdout] | __________^ [INFO] [stdout] 732 | | Arc>, [INFO] [stdout] 733 | | Arc, S>>, [INFO] [stdout] 734 | | )> [INFO] [stdout] | |______^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stdout] = note: `#[warn(clippy::type_complexity)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `map_or` can be simplified [INFO] [stdout] --> src/lib.rs:1195:33 [INFO] [stdout] | [INFO] [stdout] 1195 | .all(|(key, value)| other.get(&key).map_or(false, |v| *value == *v)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_map_or [INFO] [stdout] = note: `#[warn(clippy::unnecessary_map_or)]` on by default [INFO] [stdout] help: use `is_some_and` instead [INFO] [stdout] | [INFO] [stdout] 1195 - .all(|(key, value)| other.get(&key).map_or(false, |v| *value == *v)) [INFO] [stdout] 1195 + .all(|(key, value)| other.get(&key).is_some_and(|v| *value == *v)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this lifetime isn't used in the impl [INFO] [stdout] --> src/lib.rs:1461:6 [INFO] [stdout] | [INFO] [stdout] 1461 | impl<'a, K: Clone, V, S> Drain { [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#extra_unused_lifetimes [INFO] [stdout] = note: `#[warn(clippy::extra_unused_lifetimes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this lifetime isn't used in the impl [INFO] [stdout] --> src/lib.rs:2076:6 [INFO] [stdout] | [INFO] [stdout] 2076 | impl<'a, K: Clone, V, S> Iterator for Drain { [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#extra_unused_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 2.77s [INFO] running `Command { std: "docker" "inspect" "c6850c3601a1b1c187423234538d3b9613ea31dd5091084324ae920012b3af8f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c6850c3601a1b1c187423234538d3b9613ea31dd5091084324ae920012b3af8f", kill_on_drop: false }` [INFO] [stdout] c6850c3601a1b1c187423234538d3b9613ea31dd5091084324ae920012b3af8f