[INFO] cloning repository https://github.com/tajchert/harq [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/tajchert/harq" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftajchert%2Fharq", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftajchert%2Fharq'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 3536ed6af411383a3ba56df139b61f49cf895278 [INFO] linting tajchert/harq against nightly for clippy-nonminimal_bool-denied [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftajchert%2Fharq" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/tajchert/harq [INFO] finished tweaking git repo https://github.com/tajchert/harq [INFO] tweaked toml for git repo https://github.com/tajchert/harq written to /workspace/builds/worker-1-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/tajchert/harq 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/tajchert/harq 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] Downloading crates ... [INFO] [stderr] Downloaded tabled_derive v0.7.0 [INFO] [stderr] Downloaded papergrid v0.11.0 [INFO] [stderr] Downloaded tabled v0.15.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 60afe45e67fd724adfe91776633331768db03eed800c7eabb65826c8c079e798 [INFO] running `Command { std: "docker" "start" "-a" "60afe45e67fd724adfe91776633331768db03eed800c7eabb65826c8c079e798", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "60afe45e67fd724adfe91776633331768db03eed800c7eabb65826c8c079e798", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "60afe45e67fd724adfe91776633331768db03eed800c7eabb65826c8c079e798", kill_on_drop: false }` [INFO] [stdout] 60afe45e67fd724adfe91776633331768db03eed800c7eabb65826c8c079e798 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "clippy" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 4f9f4e2d882ddb37e801ec79fa4563178449e12ba51303cc3342fd617299d670 [INFO] running `Command { std: "docker" "start" "-a" "4f9f4e2d882ddb37e801ec79fa4563178449e12ba51303cc3342fd617299d670", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.180 [INFO] [stderr] Compiling zmij v1.0.14 [INFO] [stderr] Checking bytecount v0.6.9 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling proc-macro-error-attr v1.0.4 [INFO] [stderr] Checking clap_builder v4.5.54 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Checking chrono v0.4.43 [INFO] [stderr] Checking papergrid v0.11.0 [INFO] [stderr] Checking serde_json v1.0.149 [INFO] [stderr] Checking thiserror v1.0.69 [INFO] [stderr] Checking atty v0.2.14 [INFO] [stderr] Compiling proc-macro-error v1.0.4 [INFO] [stderr] Checking clap v4.5.54 [INFO] [stderr] Compiling tabled_derive v0.7.0 [INFO] [stderr] Checking tabled v0.15.0 [INFO] [stderr] Checking harq v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: function `parse_str` is never used [INFO] [stdout] --> src/har/mod.rs:25:8 [INFO] [stdout] | [INFO] [stdout] 25 | pub fn parse_str(s: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `extract_path` is never used [INFO] [stdout] --> src/output/mod.rs:80:8 [INFO] [stdout] | [INFO] [stdout] 80 | pub fn extract_path(url: &str) -> &str { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_entries_json` is never used [INFO] [stdout] --> src/output/json.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | pub fn print_entries_json(entries: &[(usize, &Entry)], pretty: bool) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_har_json` is never used [INFO] [stdout] --> src/output/json.rs:32:8 [INFO] [stdout] | [INFO] [stdout] 32 | pub fn print_har_json(har: &Har, pretty: bool) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_str` is never used [INFO] [stdout] --> src/har/mod.rs:25:8 [INFO] [stdout] | [INFO] [stdout] 25 | pub fn parse_str(s: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `extract_path` is never used [INFO] [stdout] --> src/output/mod.rs:80:8 [INFO] [stdout] | [INFO] [stdout] 80 | pub fn extract_path(url: &str) -> &str { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_entries_json` is never used [INFO] [stdout] --> src/output/json.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | pub fn print_entries_json(entries: &[(usize, &Entry)], pretty: bool) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_har_json` is never used [INFO] [stdout] --> src/output/json.rs:32:8 [INFO] [stdout] | [INFO] [stdout] 32 | pub fn print_har_json(har: &Har, pretty: bool) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: consider using `sort_by_key` [INFO] [stdout] --> src/commands/info.rs:80:13 [INFO] [stdout] | [INFO] [stdout] 80 | methods.sort_by(|a, b| b.1.cmp(&a.1)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_sort_by [INFO] [stdout] = note: `#[warn(clippy::unnecessary_sort_by)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 80 - methods.sort_by(|a, b| b.1.cmp(&a.1)); [INFO] [stdout] 80 + methods.sort_by_key(|b| std::cmp::Reverse(b.1)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: consider using `sort_by_key` [INFO] [stdout] --> src/commands/info.rs:95:13 [INFO] [stdout] | [INFO] [stdout] 95 | statuses.sort_by(|a, b| a.0.cmp(&b.0)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_sort_by [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 95 - statuses.sort_by(|a, b| a.0.cmp(&b.0)); [INFO] [stdout] 95 + statuses.sort_by_key(|a| a.0); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: consider using `sort_by_key` [INFO] [stdout] --> src/commands/info.rs:80:13 [INFO] [stdout] | [INFO] [stdout] 80 | methods.sort_by(|a, b| b.1.cmp(&a.1)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_sort_by [INFO] [stdout] = note: `#[warn(clippy::unnecessary_sort_by)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 80 - methods.sort_by(|a, b| b.1.cmp(&a.1)); [INFO] [stdout] 80 + methods.sort_by_key(|b| std::cmp::Reverse(b.1)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: consider using `sort_by_key` [INFO] [stdout] --> src/commands/info.rs:95:13 [INFO] [stdout] | [INFO] [stdout] 95 | statuses.sort_by(|a, b| a.0.cmp(&b.0)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_sort_by [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 95 - statuses.sort_by(|a, b| a.0.cmp(&b.0)); [INFO] [stdout] 95 + statuses.sort_by_key(|a| a.0); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/commands/headers.rs:56:28 [INFO] [stdout] | [INFO] [stdout] 56 | let show_request = self.request || (!self.request && !self.response); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] = note: `#[warn(clippy::nonminimal_bool)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 56 - let show_request = self.request || (!self.request && !self.response); [INFO] [stdout] 56 + let show_request = !(!self.request && self.response); [INFO] [stdout] | [INFO] [stdout] 56 - let show_request = self.request || (!self.request && !self.response); [INFO] [stdout] 56 + let show_request = self.request || !self.response; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/commands/headers.rs:57:29 [INFO] [stdout] | [INFO] [stdout] 57 | let show_response = self.response || (!self.request && !self.response); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 57 - let show_response = self.response || (!self.request && !self.response); [INFO] [stdout] 57 + let show_response = !(!self.response && self.request); [INFO] [stdout] | [INFO] [stdout] 57 - let show_response = self.response || (!self.request && !self.response); [INFO] [stdout] 57 + let show_response = self.response || !self.request; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `map_or` can be simplified [INFO] [stdout] --> src/commands/headers.rs:76:21 [INFO] [stdout] | [INFO] [stdout] 76 | / self.filter.as_ref().map_or(true, |f| { [INFO] [stdout] 77 | | h.name.to_lowercase().contains(&f.to_lowercase()) [INFO] [stdout] 78 | | }) [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_none_or` instead [INFO] [stdout] | [INFO] [stdout] 76 - self.filter.as_ref().map_or(true, |f| { [INFO] [stdout] 76 + self.filter.as_ref().is_none_or(|f| { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/commands/headers.rs:56:28 [INFO] [stdout] | [INFO] [stdout] 56 | let show_request = self.request || (!self.request && !self.response); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] = note: `#[warn(clippy::nonminimal_bool)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 56 - let show_request = self.request || (!self.request && !self.response); [INFO] [stdout] 56 + let show_request = !(!self.request && self.response); [INFO] [stdout] | [INFO] [stdout] 56 - let show_request = self.request || (!self.request && !self.response); [INFO] [stdout] 56 + let show_request = self.request || !self.response; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/commands/headers.rs:57:29 [INFO] [stdout] | [INFO] [stdout] 57 | let show_response = self.response || (!self.request && !self.response); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 57 - let show_response = self.response || (!self.request && !self.response); [INFO] [stdout] 57 + let show_response = !(!self.response && self.request); [INFO] [stdout] | [INFO] [stdout] 57 - let show_response = self.response || (!self.request && !self.response); [INFO] [stdout] 57 + let show_response = self.response || !self.request; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `map_or` can be simplified [INFO] [stdout] --> src/commands/headers.rs:160:9 [INFO] [stdout] | [INFO] [stdout] 160 | / self.filter.as_ref().map_or(true, |f| { [INFO] [stdout] 161 | | name.to_lowercase().contains(&f.to_lowercase()) [INFO] [stdout] 162 | | }) [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] help: use `is_none_or` instead [INFO] [stdout] | [INFO] [stdout] 160 - self.filter.as_ref().map_or(true, |f| { [INFO] [stdout] 160 + self.filter.as_ref().is_none_or(|f| { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `map_or` can be simplified [INFO] [stdout] --> src/commands/headers.rs:76:21 [INFO] [stdout] | [INFO] [stdout] 76 | / self.filter.as_ref().map_or(true, |f| { [INFO] [stdout] 77 | | h.name.to_lowercase().contains(&f.to_lowercase()) [INFO] [stdout] 78 | | }) [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_none_or` instead [INFO] [stdout] | [INFO] [stdout] 76 - self.filter.as_ref().map_or(true, |f| { [INFO] [stdout] 76 + self.filter.as_ref().is_none_or(|f| { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `map_or` can be simplified [INFO] [stdout] --> src/commands/headers.rs:160:9 [INFO] [stdout] | [INFO] [stdout] 160 | / self.filter.as_ref().map_or(true, |f| { [INFO] [stdout] 161 | | name.to_lowercase().contains(&f.to_lowercase()) [INFO] [stdout] 162 | | }) [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] help: use `is_none_or` instead [INFO] [stdout] | [INFO] [stdout] 160 - self.filter.as_ref().map_or(true, |f| { [INFO] [stdout] 160 + self.filter.as_ref().is_none_or(|f| { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: stripping a prefix manually [INFO] [stdout] --> src/filter/eval.rs:119:17 [INFO] [stdout] | [INFO] [stdout] 119 | &expr[1..] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: the prefix was tested here [INFO] [stdout] --> src/filter/eval.rs:118:25 [INFO] [stdout] | [INFO] [stdout] 118 | let inner = if expr.starts_with('!') { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_strip [INFO] [stdout] = note: `#[warn(clippy::manual_strip)]` on by default [INFO] [stdout] help: try using the `strip_prefix` method [INFO] [stdout] | [INFO] [stdout] 118 ~ let inner = if let Some() = expr.strip_prefix('!') { [INFO] [stdout] 119 ~ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `map_or` can be simplified [INFO] [stdout] --> src/filter/eval.rs:193:17 [INFO] [stdout] | [INFO] [stdout] 193 | field.get_value(entry).map_or(false, |v| v.eq_value(value)) [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] help: use `is_some_and` instead [INFO] [stdout] | [INFO] [stdout] 193 - field.get_value(entry).map_or(false, |v| v.eq_value(value)) [INFO] [stdout] 193 + field.get_value(entry).is_some_and(|v| v.eq_value(value)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `map_or` can be simplified [INFO] [stdout] --> src/filter/eval.rs:196:17 [INFO] [stdout] | [INFO] [stdout] 196 | field.get_value(entry).map_or(true, |v| !v.eq_value(value)) [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] help: use `is_none_or` instead [INFO] [stdout] | [INFO] [stdout] 196 - field.get_value(entry).map_or(true, |v| !v.eq_value(value)) [INFO] [stdout] 196 + field.get_value(entry).is_none_or(|v| !v.eq_value(value)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `map_or` can be simplified [INFO] [stdout] --> src/filter/eval.rs:199:17 [INFO] [stdout] | [INFO] [stdout] 199 | field.get_value(entry).map_or(false, |v| v.gt_value(value)) [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] help: use `is_some_and` instead [INFO] [stdout] | [INFO] [stdout] 199 - field.get_value(entry).map_or(false, |v| v.gt_value(value)) [INFO] [stdout] 199 + field.get_value(entry).is_some_and(|v| v.gt_value(value)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: stripping a prefix manually [INFO] [stdout] --> src/filter/eval.rs:119:17 [INFO] [stdout] | [INFO] [stdout] 119 | &expr[1..] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: the prefix was tested here [INFO] [stdout] --> src/filter/eval.rs:118:25 [INFO] [stdout] | [INFO] [stdout] 118 | let inner = if expr.starts_with('!') { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_strip [INFO] [stdout] = note: `#[warn(clippy::manual_strip)]` on by default [INFO] [stdout] help: try using the `strip_prefix` method [INFO] [stdout] | [INFO] [stdout] 118 ~ let inner = if let Some() = expr.strip_prefix('!') { [INFO] [stdout] 119 ~ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `map_or` can be simplified [INFO] [stdout] --> src/filter/eval.rs:202:17 [INFO] [stdout] | [INFO] [stdout] 202 | field.get_value(entry).map_or(false, |v| v.ge_value(value)) [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] help: use `is_some_and` instead [INFO] [stdout] | [INFO] [stdout] 202 - field.get_value(entry).map_or(false, |v| v.ge_value(value)) [INFO] [stdout] 202 + field.get_value(entry).is_some_and(|v| v.ge_value(value)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `map_or` can be simplified [INFO] [stdout] --> src/filter/eval.rs:205:17 [INFO] [stdout] | [INFO] [stdout] 205 | field.get_value(entry).map_or(false, |v| v.lt_value(value)) [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] help: use `is_some_and` instead [INFO] [stdout] | [INFO] [stdout] 205 - field.get_value(entry).map_or(false, |v| v.lt_value(value)) [INFO] [stdout] 205 + field.get_value(entry).is_some_and(|v| v.lt_value(value)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `map_or` can be simplified [INFO] [stdout] --> src/filter/eval.rs:208:17 [INFO] [stdout] | [INFO] [stdout] 208 | field.get_value(entry).map_or(false, |v| v.le_value(value)) [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] help: use `is_some_and` instead [INFO] [stdout] | [INFO] [stdout] 208 - field.get_value(entry).map_or(false, |v| v.le_value(value)) [INFO] [stdout] 208 + field.get_value(entry).is_some_and(|v| v.le_value(value)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `map_or` can be simplified [INFO] [stdout] --> src/filter/eval.rs:211:17 [INFO] [stdout] | [INFO] [stdout] 211 | field.get_string(entry).map_or(false, |v| v.contains(s)) [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] help: use `is_some_and` instead [INFO] [stdout] | [INFO] [stdout] 211 - field.get_string(entry).map_or(false, |v| v.contains(s)) [INFO] [stdout] 211 + field.get_string(entry).is_some_and(|v| v.contains(s)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `map_or` can be simplified [INFO] [stdout] --> src/filter/eval.rs:214:17 [INFO] [stdout] | [INFO] [stdout] 214 | field.get_string(entry).map_or(false, |v| v.starts_with(s)) [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] help: use `is_some_and` instead [INFO] [stdout] | [INFO] [stdout] 214 - field.get_string(entry).map_or(false, |v| v.starts_with(s)) [INFO] [stdout] 214 + field.get_string(entry).is_some_and(|v| v.starts_with(s)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `map_or` can be simplified [INFO] [stdout] --> src/filter/eval.rs:217:17 [INFO] [stdout] | [INFO] [stdout] 217 | field.get_string(entry).map_or(false, |v| v.ends_with(s)) [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] help: use `is_some_and` instead [INFO] [stdout] | [INFO] [stdout] 217 - field.get_string(entry).map_or(false, |v| v.ends_with(s)) [INFO] [stdout] 217 + field.get_string(entry).is_some_and(|v| v.ends_with(s)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `map_or` can be simplified [INFO] [stdout] --> src/filter/eval.rs:220:17 [INFO] [stdout] | [INFO] [stdout] 220 | field.get_string(entry).map_or(false, |v| re.is_match(&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] help: use `is_some_and` instead [INFO] [stdout] | [INFO] [stdout] 220 - field.get_string(entry).map_or(false, |v| re.is_match(&v)) [INFO] [stdout] 220 + field.get_string(entry).is_some_and(|v| re.is_match(&v)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `map_or` can be simplified [INFO] [stdout] --> src/filter/eval.rs:230:17 [INFO] [stdout] | [INFO] [stdout] 230 | field.get_value(entry).map_or(false, |v| v.is_truthy()) [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] help: use `is_some_and` instead [INFO] [stdout] | [INFO] [stdout] 230 - field.get_value(entry).map_or(false, |v| v.is_truthy()) [INFO] [stdout] 230 + field.get_value(entry).is_some_and(|v| v.is_truthy()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `map_or` can be simplified [INFO] [stdout] --> src/filter/eval.rs:193:17 [INFO] [stdout] | [INFO] [stdout] 193 | field.get_value(entry).map_or(false, |v| v.eq_value(value)) [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] help: use `is_some_and` instead [INFO] [stdout] | [INFO] [stdout] 193 - field.get_value(entry).map_or(false, |v| v.eq_value(value)) [INFO] [stdout] 193 + field.get_value(entry).is_some_and(|v| v.eq_value(value)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `map_or` can be simplified [INFO] [stdout] --> src/filter/eval.rs:196:17 [INFO] [stdout] | [INFO] [stdout] 196 | field.get_value(entry).map_or(true, |v| !v.eq_value(value)) [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] help: use `is_none_or` instead [INFO] [stdout] | [INFO] [stdout] 196 - field.get_value(entry).map_or(true, |v| !v.eq_value(value)) [INFO] [stdout] 196 + field.get_value(entry).is_none_or(|v| !v.eq_value(value)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `map_or` can be simplified [INFO] [stdout] --> src/filter/eval.rs:199:17 [INFO] [stdout] | [INFO] [stdout] 199 | field.get_value(entry).map_or(false, |v| v.gt_value(value)) [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] help: use `is_some_and` instead [INFO] [stdout] | [INFO] [stdout] 199 - field.get_value(entry).map_or(false, |v| v.gt_value(value)) [INFO] [stdout] 199 + field.get_value(entry).is_some_and(|v| v.gt_value(value)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `map_or` can be simplified [INFO] [stdout] --> src/filter/eval.rs:202:17 [INFO] [stdout] | [INFO] [stdout] 202 | field.get_value(entry).map_or(false, |v| v.ge_value(value)) [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] help: use `is_some_and` instead [INFO] [stdout] | [INFO] [stdout] 202 - field.get_value(entry).map_or(false, |v| v.ge_value(value)) [INFO] [stdout] 202 + field.get_value(entry).is_some_and(|v| v.ge_value(value)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `map_or` can be simplified [INFO] [stdout] --> src/filter/eval.rs:205:17 [INFO] [stdout] | [INFO] [stdout] 205 | field.get_value(entry).map_or(false, |v| v.lt_value(value)) [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] help: use `is_some_and` instead [INFO] [stdout] | [INFO] [stdout] 205 - field.get_value(entry).map_or(false, |v| v.lt_value(value)) [INFO] [stdout] 205 + field.get_value(entry).is_some_and(|v| v.lt_value(value)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `map_or` can be simplified [INFO] [stdout] --> src/filter/eval.rs:208:17 [INFO] [stdout] | [INFO] [stdout] 208 | field.get_value(entry).map_or(false, |v| v.le_value(value)) [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] help: use `is_some_and` instead [INFO] [stdout] | [INFO] [stdout] 208 - field.get_value(entry).map_or(false, |v| v.le_value(value)) [INFO] [stdout] 208 + field.get_value(entry).is_some_and(|v| v.le_value(value)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `map_or` can be simplified [INFO] [stdout] --> src/filter/eval.rs:372:53 [INFO] [stdout] | [INFO] [stdout] 372 | (Value::String(a), Value::Number(b)) => a.parse::().map_or(false, |n| (n - b).abs() < f64::EPSILON), [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] help: use `is_ok_and` instead [INFO] [stdout] | [INFO] [stdout] 372 - (Value::String(a), Value::Number(b)) => a.parse::().map_or(false, |n| (n - b).abs() < f64::EPSILON), [INFO] [stdout] 372 + (Value::String(a), Value::Number(b)) => a.parse::().is_ok_and(|n| (n - b).abs() < f64::EPSILON), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `map_or` can be simplified [INFO] [stdout] --> src/filter/eval.rs:211:17 [INFO] [stdout] | [INFO] [stdout] 211 | field.get_string(entry).map_or(false, |v| v.contains(s)) [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] help: use `is_some_and` instead [INFO] [stdout] | [INFO] [stdout] 211 - field.get_string(entry).map_or(false, |v| v.contains(s)) [INFO] [stdout] 211 + field.get_string(entry).is_some_and(|v| v.contains(s)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `map_or` can be simplified [INFO] [stdout] --> src/filter/eval.rs:373:53 [INFO] [stdout] | [INFO] [stdout] 373 | (Value::Number(a), Value::String(b)) => b.parse::().map_or(false, |n| (n - a).abs() < f64::EPSILON), [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] help: use `is_ok_and` instead [INFO] [stdout] | [INFO] [stdout] 373 - (Value::Number(a), Value::String(b)) => b.parse::().map_or(false, |n| (n - a).abs() < f64::EPSILON), [INFO] [stdout] 373 + (Value::Number(a), Value::String(b)) => b.parse::().is_ok_and(|n| (n - a).abs() < f64::EPSILON), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `map_or` can be simplified [INFO] [stdout] --> src/filter/eval.rs:214:17 [INFO] [stdout] | [INFO] [stdout] 214 | field.get_string(entry).map_or(false, |v| v.starts_with(s)) [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] help: use `is_some_and` instead [INFO] [stdout] | [INFO] [stdout] 214 - field.get_string(entry).map_or(false, |v| v.starts_with(s)) [INFO] [stdout] 214 + field.get_string(entry).is_some_and(|v| v.starts_with(s)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `map_or` can be simplified [INFO] [stdout] --> src/filter/eval.rs:217:17 [INFO] [stdout] | [INFO] [stdout] 217 | field.get_string(entry).map_or(false, |v| v.ends_with(s)) [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] help: use `is_some_and` instead [INFO] [stdout] | [INFO] [stdout] 217 - field.get_string(entry).map_or(false, |v| v.ends_with(s)) [INFO] [stdout] 217 + field.get_string(entry).is_some_and(|v| v.ends_with(s)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `map_or` can be simplified [INFO] [stdout] --> src/filter/eval.rs:381:53 [INFO] [stdout] | [INFO] [stdout] 381 | (Value::String(a), Value::Number(b)) => a.parse::().map_or(false, |n| n > *b), [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] help: use `is_ok_and` instead [INFO] [stdout] | [INFO] [stdout] 381 - (Value::String(a), Value::Number(b)) => a.parse::().map_or(false, |n| n > *b), [INFO] [stdout] 381 + (Value::String(a), Value::Number(b)) => a.parse::().is_ok_and(|n| n > *b), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `map_or` can be simplified [INFO] [stdout] --> src/filter/eval.rs:220:17 [INFO] [stdout] | [INFO] [stdout] 220 | field.get_string(entry).map_or(false, |v| re.is_match(&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] help: use `is_some_and` instead [INFO] [stdout] | [INFO] [stdout] 220 - field.get_string(entry).map_or(false, |v| re.is_match(&v)) [INFO] [stdout] 220 + field.get_string(entry).is_some_and(|v| re.is_match(&v)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `map_or` can be simplified [INFO] [stdout] --> src/filter/eval.rs:382:53 [INFO] [stdout] | [INFO] [stdout] 382 | (Value::Number(a), Value::String(b)) => b.parse::().map_or(false, |n| *a > n), [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] help: use `is_ok_and` instead [INFO] [stdout] | [INFO] [stdout] 382 - (Value::Number(a), Value::String(b)) => b.parse::().map_or(false, |n| *a > n), [INFO] [stdout] 382 + (Value::Number(a), Value::String(b)) => b.parse::().is_ok_and(|n| *a > n), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `map_or` can be simplified [INFO] [stdout] --> src/filter/eval.rs:230:17 [INFO] [stdout] | [INFO] [stdout] 230 | field.get_value(entry).map_or(false, |v| v.is_truthy()) [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] help: use `is_some_and` instead [INFO] [stdout] | [INFO] [stdout] 230 - field.get_value(entry).map_or(false, |v| v.is_truthy()) [INFO] [stdout] 230 + field.get_value(entry).is_some_and(|v| v.is_truthy()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `map_or` can be simplified [INFO] [stdout] --> src/filter/eval.rs:395:53 [INFO] [stdout] | [INFO] [stdout] 395 | (Value::String(a), Value::Number(b)) => a.parse::().map_or(false, |n| n < *b), [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] help: use `is_ok_and` instead [INFO] [stdout] | [INFO] [stdout] 395 - (Value::String(a), Value::Number(b)) => a.parse::().map_or(false, |n| n < *b), [INFO] [stdout] 395 + (Value::String(a), Value::Number(b)) => a.parse::().is_ok_and(|n| n < *b), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `map_or` can be simplified [INFO] [stdout] --> src/filter/eval.rs:396:53 [INFO] [stdout] | [INFO] [stdout] 396 | (Value::Number(a), Value::String(b)) => b.parse::().map_or(false, |n| *a < n), [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] help: use `is_ok_and` instead [INFO] [stdout] | [INFO] [stdout] 396 - (Value::Number(a), Value::String(b)) => b.parse::().map_or(false, |n| *a < n), [INFO] [stdout] 396 + (Value::Number(a), Value::String(b)) => b.parse::().is_ok_and(|n| *a < n), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implementation of inherent method `to_string(&self) -> String` for type `filter::eval::Value` [INFO] [stdout] --> src/filter/eval.rs:414:5 [INFO] [stdout] | [INFO] [stdout] 414 | / fn to_string(&self) -> String { [INFO] [stdout] 415 | | match self { [INFO] [stdout] 416 | | Value::String(s) => s.clone(), [INFO] [stdout] 417 | | Value::Number(n) => n.to_string(), [INFO] [stdout] ... | [INFO] [stdout] 420 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: implement trait `Display` for type `filter::eval::Value` instead [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#inherent_to_string [INFO] [stdout] = note: `#[warn(clippy::inherent_to_string)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `map_or` can be simplified [INFO] [stdout] --> src/filter/eval.rs:372:53 [INFO] [stdout] | [INFO] [stdout] 372 | (Value::String(a), Value::Number(b)) => a.parse::().map_or(false, |n| (n - b).abs() < f64::EPSILON), [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] help: use `is_ok_and` instead [INFO] [stdout] | [INFO] [stdout] 372 - (Value::String(a), Value::Number(b)) => a.parse::().map_or(false, |n| (n - b).abs() < f64::EPSILON), [INFO] [stdout] 372 + (Value::String(a), Value::Number(b)) => a.parse::().is_ok_and(|n| (n - b).abs() < f64::EPSILON), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `map_or` can be simplified [INFO] [stdout] --> src/filter/eval.rs:373:53 [INFO] [stdout] | [INFO] [stdout] 373 | (Value::Number(a), Value::String(b)) => b.parse::().map_or(false, |n| (n - a).abs() < f64::EPSILON), [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] help: use `is_ok_and` instead [INFO] [stdout] | [INFO] [stdout] 373 - (Value::Number(a), Value::String(b)) => b.parse::().map_or(false, |n| (n - a).abs() < f64::EPSILON), [INFO] [stdout] 373 + (Value::Number(a), Value::String(b)) => b.parse::().is_ok_and(|n| (n - a).abs() < f64::EPSILON), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `map_or` can be simplified [INFO] [stdout] --> src/filter/eval.rs:381:53 [INFO] [stdout] | [INFO] [stdout] 381 | (Value::String(a), Value::Number(b)) => a.parse::().map_or(false, |n| n > *b), [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] help: use `is_ok_and` instead [INFO] [stdout] | [INFO] [stdout] 381 - (Value::String(a), Value::Number(b)) => a.parse::().map_or(false, |n| n > *b), [INFO] [stdout] 381 + (Value::String(a), Value::Number(b)) => a.parse::().is_ok_and(|n| n > *b), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `map_or` can be simplified [INFO] [stdout] --> src/filter/eval.rs:382:53 [INFO] [stdout] | [INFO] [stdout] 382 | (Value::Number(a), Value::String(b)) => b.parse::().map_or(false, |n| *a > n), [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] help: use `is_ok_and` instead [INFO] [stdout] | [INFO] [stdout] 382 - (Value::Number(a), Value::String(b)) => b.parse::().map_or(false, |n| *a > n), [INFO] [stdout] 382 + (Value::Number(a), Value::String(b)) => b.parse::().is_ok_and(|n| *a > n), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: stripping a prefix manually [INFO] [stdout] --> src/filter/eval.rs:611:24 [INFO] [stdout] | [INFO] [stdout] 611 | let rest = &trimmed[keyword.len()..]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: the prefix was tested here [INFO] [stdout] --> src/filter/eval.rs:609:9 [INFO] [stdout] | [INFO] [stdout] 609 | if trimmed.starts_with(keyword) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_strip [INFO] [stdout] help: try using the `strip_prefix` method [INFO] [stdout] | [INFO] [stdout] 609 ~ if let Some(rest) = trimmed.strip_prefix(keyword) { [INFO] [stdout] 610 | // Make sure it's followed by whitespace, '(', or '{' [INFO] [stdout] 611 ~ if rest.is_empty() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `map_or` can be simplified [INFO] [stdout] --> src/filter/eval.rs:395:53 [INFO] [stdout] | [INFO] [stdout] 395 | (Value::String(a), Value::Number(b)) => a.parse::().map_or(false, |n| n < *b), [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] help: use `is_ok_and` instead [INFO] [stdout] | [INFO] [stdout] 395 - (Value::String(a), Value::Number(b)) => a.parse::().map_or(false, |n| n < *b), [INFO] [stdout] 395 + (Value::String(a), Value::Number(b)) => a.parse::().is_ok_and(|n| n < *b), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `map_or` can be simplified [INFO] [stdout] --> src/filter/eval.rs:396:53 [INFO] [stdout] | [INFO] [stdout] 396 | (Value::Number(a), Value::String(b)) => b.parse::().map_or(false, |n| *a < n), [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] help: use `is_ok_and` instead [INFO] [stdout] | [INFO] [stdout] 396 - (Value::Number(a), Value::String(b)) => b.parse::().map_or(false, |n| *a < n), [INFO] [stdout] 396 + (Value::Number(a), Value::String(b)) => b.parse::().is_ok_and(|n| *a < n), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implementation of inherent method `to_string(&self) -> String` for type `filter::eval::Value` [INFO] [stdout] --> src/filter/eval.rs:414:5 [INFO] [stdout] | [INFO] [stdout] 414 | / fn to_string(&self) -> String { [INFO] [stdout] 415 | | match self { [INFO] [stdout] 416 | | Value::String(s) => s.clone(), [INFO] [stdout] 417 | | Value::Number(n) => n.to_string(), [INFO] [stdout] ... | [INFO] [stdout] 420 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: implement trait `Display` for type `filter::eval::Value` instead [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#inherent_to_string [INFO] [stdout] = note: `#[warn(clippy::inherent_to_string)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: stripping a prefix manually [INFO] [stdout] --> src/filter/eval.rs:611:24 [INFO] [stdout] | [INFO] [stdout] 611 | let rest = &trimmed[keyword.len()..]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: the prefix was tested here [INFO] [stdout] --> src/filter/eval.rs:609:9 [INFO] [stdout] | [INFO] [stdout] 609 | if trimmed.starts_with(keyword) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_strip [INFO] [stdout] help: try using the `strip_prefix` method [INFO] [stdout] | [INFO] [stdout] 609 ~ if let Some(rest) = trimmed.strip_prefix(keyword) { [INFO] [stdout] 610 | // Make sure it's followed by whitespace, '(', or '{' [INFO] [stdout] 611 ~ if rest.is_empty() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/output/table.rs:191:15 [INFO] [stdout] | [INFO] [stdout] 191 | v.map(|t| format_time(t)).unwrap_or_else(|| "-".to_string()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace the closure with the function itself: `format_time` [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/output/table.rs:191:15 [INFO] [stdout] | [INFO] [stdout] 191 | v.map(|t| format_time(t)).unwrap_or_else(|| "-".to_string()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace the closure with the function itself: `format_time` [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] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 8.69s [INFO] running `Command { std: "docker" "inspect" "4f9f4e2d882ddb37e801ec79fa4563178449e12ba51303cc3342fd617299d670", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4f9f4e2d882ddb37e801ec79fa4563178449e12ba51303cc3342fd617299d670", kill_on_drop: false }` [INFO] [stdout] 4f9f4e2d882ddb37e801ec79fa4563178449e12ba51303cc3342fd617299d670