[INFO] fetching crate tnj-tui 0.1.19... [INFO] linting tnj-tui-0.1.19 against nightly for clippy-nonminimal_bool-denied [INFO] extracting crate tnj-tui 0.1.19 into /workspace/builds/worker-4-tc1/source [INFO] started tweaking crates.io crate tnj-tui 0.1.19 [INFO] finished tweaking crates.io crate tnj-tui 0.1.19 [INFO] tweaked toml for crates.io crate tnj-tui 0.1.19 written to /workspace/builds/worker-4-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate tnj-tui 0.1.19 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 tnj-tui 0.1.19 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 minimad v0.14.0 [INFO] [stderr] Downloaded ratskin v0.3.0 [INFO] [stderr] Downloaded lru v0.16.2 [INFO] [stderr] Downloaded termimad v0.34.1 [INFO] [stderr] Downloaded zmij v1.0.1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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] 8e7fdf1b14e85fe5c7392c7d05b2fbc2e49d7e2e5868e87ef487387f87fa7c58 [INFO] running `Command { std: "docker" "start" "-a" "8e7fdf1b14e85fe5c7392c7d05b2fbc2e49d7e2e5868e87ef487387f87fa7c58", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "8e7fdf1b14e85fe5c7392c7d05b2fbc2e49d7e2e5868e87ef487387f87fa7c58", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "8e7fdf1b14e85fe5c7392c7d05b2fbc2e49d7e2e5868e87ef487387f87fa7c58", kill_on_drop: false }` [INFO] [stdout] 8e7fdf1b14e85fe5c7392c7d05b2fbc2e49d7e2e5868e87ef487387f87fa7c58 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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] 1d6b05d0f67e550c55e0fa18c33e6ed2388d4af1b4f6ccc017758bfb82480a28 [INFO] running `Command { std: "docker" "start" "-a" "1d6b05d0f67e550c55e0fa18c33e6ed2388d4af1b4f6ccc017758bfb82480a28", kill_on_drop: false }` [INFO] [stderr] Compiling syn v2.0.111 [INFO] [stderr] Compiling rustix v1.1.3 [INFO] [stderr] Compiling libc v0.2.178 [INFO] [stderr] Checking linux-raw-sys v0.11.0 [INFO] [stderr] Compiling litrs v1.0.0 [INFO] [stderr] Checking signal-hook-registry v1.4.7 [INFO] [stderr] Checking parking_lot v0.12.5 [INFO] [stderr] Checking mio v1.1.1 [INFO] [stderr] Checking itoa v1.0.16 [INFO] [stderr] Checking itertools v0.13.0 [INFO] [stderr] Compiling indoc v2.0.7 [INFO] [stderr] Compiling instability v0.3.10 [INFO] [stderr] Checking ryu v1.0.21 [INFO] [stderr] Checking itertools v0.14.0 [INFO] [stderr] Checking lru v0.16.2 [INFO] [stderr] Compiling regex-automata v0.4.13 [INFO] [stderr] Checking num_threads v0.1.7 [INFO] [stderr] Checking time-core v0.1.6 [INFO] [stderr] Checking compact_str v0.9.0 [INFO] [stderr] Checking signal-hook v0.3.18 [INFO] [stderr] Compiling cc v1.2.50 [INFO] [stderr] Checking time v0.3.44 [INFO] [stderr] Checking crossbeam-epoch v0.9.18 [INFO] [stderr] Checking line-clipping v0.3.5 [INFO] [stderr] Compiling owo-colors v4.2.3 [INFO] [stderr] Checking signal-hook-mio v0.2.5 [INFO] [stderr] Compiling strict v0.2.0 [INFO] [stderr] Checking tracing v0.1.44 [INFO] [stderr] Checking crossbeam-deque v0.8.6 [INFO] [stderr] Checking tracing-subscriber v0.3.22 [INFO] [stderr] Compiling document-features v0.2.12 [INFO] [stderr] Checking flate2 v1.1.5 [INFO] [stderr] Checking pxfm v0.1.27 [INFO] [stderr] Checking crossbeam-queue v0.3.12 [INFO] [stderr] Checking crossbeam-channel v0.5.15 [INFO] [stderr] Compiling zmij v1.0.1 [INFO] [stderr] Compiling eyre v0.6.12 [INFO] [stderr] Compiling color-spantrace v0.3.0 [INFO] [stderr] Checking png v0.18.0 [INFO] [stderr] Checking object v0.37.3 [INFO] [stderr] Checking minimad v0.14.0 [INFO] [stderr] Compiling serde_json v1.0.148 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Checking unicode-truncate v2.0.0 [INFO] [stderr] Checking crossbeam v0.8.4 [INFO] [stderr] Checking indenter v0.3.4 [INFO] [stderr] Checking x11rb-protocol v0.13.2 [INFO] [stderr] Checking winnow v0.7.14 [INFO] [stderr] Checking rustc-demangle v0.1.26 [INFO] [stderr] Checking tracing-error v0.2.1 [INFO] [stderr] Checking dirs-sys v0.5.0 [INFO] [stderr] Checking toml_datetime v0.7.5+spec-1.1.0 [INFO] [stderr] Checking serde_spanned v1.0.4 [INFO] [stderr] Checking hashlink v0.11.0 [INFO] [stderr] Compiling libsqlite3-sys v0.36.0 [INFO] [stderr] Checking toml_writer v1.0.6+spec-1.1.0 [INFO] [stderr] Checking chrono v0.4.42 [INFO] [stderr] Checking directories v6.0.0 [INFO] [stderr] Checking regex v1.12.2 [INFO] [stderr] Checking moxcms v0.7.11 [INFO] [stderr] Checking toml_parser v1.0.6+spec-1.1.0 [INFO] [stderr] Checking gethostname v1.1.0 [INFO] [stderr] Checking toml v0.9.10+spec-1.1.0 [INFO] [stderr] Compiling darling_core v0.20.11 [INFO] [stderr] Compiling derive_more-impl v2.1.1 [INFO] [stderr] Compiling thiserror-impl v2.0.17 [INFO] [stderr] Compiling strum_macros v0.27.2 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling lazy-regex-proc_macros v3.4.2 [INFO] [stderr] Compiling clap_derive v4.5.49 [INFO] [stderr] Checking lazy-regex v3.4.2 [INFO] [stderr] Checking derive_more v2.1.1 [INFO] [stderr] Compiling crossterm v0.29.0 [INFO] [stderr] Checking thiserror v2.0.17 [INFO] [stderr] Checking backtrace v0.3.76 [INFO] [stderr] Checking kasuari v0.4.11 [INFO] [stderr] Checking x11rb v0.13.2 [INFO] [stderr] Checking clap v4.5.53 [INFO] [stderr] Compiling darling_macro v0.20.11 [INFO] [stderr] Checking coolor v1.1.0 [INFO] [stderr] Compiling darling v0.20.11 [INFO] [stderr] Compiling crokey-proc_macros v1.3.0 [INFO] [stderr] Checking color-eyre v0.6.5 [INFO] [stderr] Checking strum v0.27.2 [INFO] [stderr] Checking ratatui-core v0.1.0 [INFO] [stderr] Checking ratatui-widgets v0.3.0 [INFO] [stderr] Checking ratatui-crossterm v0.1.0 [INFO] [stderr] Checking serde v1.0.228 [INFO] [stderr] Checking crokey v1.3.0 [INFO] [stderr] Checking termimad v0.34.1 [INFO] [stderr] Checking ratatui-macros v0.7.0 [INFO] [stderr] Checking ratatui v0.30.0 [INFO] [stderr] Checking image v0.25.9 [INFO] [stderr] Checking ratskin v0.3.0 [INFO] [stderr] Checking arboard v3.6.1 [INFO] [stderr] Checking rusqlite v0.38.0 [INFO] [stderr] Checking tnj-tui v0.1.19 (/opt/rustwide/workdir) [INFO] [stdout] warning: unnecessary `>= y + 1` or `x - 1 >=` [INFO] [stdout] --> src/tui/layout.rs:66:51 [INFO] [stdout] | [INFO] [stdout] 66 | let (filters_height, content_height) = if available_after_fixed >= ideal_filters_height + 1 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change it to: `available_after_fixed > ideal_filters_height` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#int_plus_one [INFO] [stdout] = note: `#[warn(clippy::int_plus_one)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `>= y + 1` or `x - 1 >=` [INFO] [stdout] --> src/tui/layout.rs:69:19 [INFO] [stdout] | [INFO] [stdout] 69 | } else if available_after_fixed >= min_filters_height + 1 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change it to: `available_after_fixed > min_filters_height` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#int_plus_one [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `>= y + 1` or `x - 1 >=` [INFO] [stdout] --> src/tui/layout.rs:66:51 [INFO] [stdout] | [INFO] [stdout] 66 | let (filters_height, content_height) = if available_after_fixed >= ideal_filters_height + 1 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change it to: `available_after_fixed > ideal_filters_height` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#int_plus_one [INFO] [stdout] = note: `#[warn(clippy::int_plus_one)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `>= y + 1` or `x - 1 >=` [INFO] [stdout] --> src/tui/layout.rs:69:19 [INFO] [stdout] | [INFO] [stdout] 69 | } else if available_after_fixed >= min_filters_height + 1 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change it to: `available_after_fixed > min_filters_height` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#int_plus_one [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/tui/events.rs:975:9 [INFO] [stdout] | [INFO] [stdout] 975 | let mut is_save = matches_key_event(key_event, &save_binding); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/tui/events.rs:1286:21 [INFO] [stdout] | [INFO] [stdout] 1286 | let mut is_word_nav = matches_key_event(key_event, &word_left_binding); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/tui/events.rs:1303:21 [INFO] [stdout] | [INFO] [stdout] 1303 | let mut is_word_nav = matches_key_event(key_event, &word_right_binding); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/tui/events.rs:1365:17 [INFO] [stdout] | [INFO] [stdout] 1365 | let mut is_notebook_modal = matches_key_event(key_event, ¬ebook_modal_binding); [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/tui/events.rs:1867:33 [INFO] [stdout] | [INFO] [stdout] 1867 | ... let mut is_word_nav = matches_key_event(key_event, &word_left_binding); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/tui/events.rs:1880:33 [INFO] [stdout] | [INFO] [stdout] 1880 | ... let mut is_word_nav = matches_key_event(key_event, &word_right_binding); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/tui/events.rs:1928:9 [INFO] [stdout] | [INFO] [stdout] 1928 | let mut is_notebook_modal = matches_key_event(key_event, ¬ebook_modal_binding); [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/tui/events.rs:975:9 [INFO] [stdout] | [INFO] [stdout] 975 | let mut is_save = matches_key_event(key_event, &save_binding); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/tui/events.rs:1286:21 [INFO] [stdout] | [INFO] [stdout] 1286 | let mut is_word_nav = matches_key_event(key_event, &word_left_binding); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/tui/events.rs:1303:21 [INFO] [stdout] | [INFO] [stdout] 1303 | let mut is_word_nav = matches_key_event(key_event, &word_right_binding); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/tui/events.rs:1365:17 [INFO] [stdout] | [INFO] [stdout] 1365 | let mut is_notebook_modal = matches_key_event(key_event, ¬ebook_modal_binding); [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/tui/events.rs:1867:33 [INFO] [stdout] | [INFO] [stdout] 1867 | ... let mut is_word_nav = matches_key_event(key_event, &word_left_binding); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/tui/events.rs:1880:33 [INFO] [stdout] | [INFO] [stdout] 1880 | ... let mut is_word_nav = matches_key_event(key_event, &word_right_binding); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/tui/events.rs:1928:9 [INFO] [stdout] | [INFO] [stdout] 1928 | let mut is_notebook_modal = matches_key_event(key_event, ¬ebook_modal_binding); [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field assignment outside of initializer for an instance created with Default::default() [INFO] [stdout] --> src/config.rs:413:13 [INFO] [stdout] | [INFO] [stdout] 413 | config.database_path = Self::default_database_path_for_profile(profile); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: consider initializing the variable with `config::Config { database_path: Self::default_database_path_for_profile(profile), ..Default::default() }` and removing relevant reassignments [INFO] [stdout] --> src/config.rs:412:13 [INFO] [stdout] | [INFO] [stdout] 412 | let mut config = Config::default(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#field_reassign_with_default [INFO] [stdout] = note: `#[warn(clippy::field_reassign_with_default)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field assignment outside of initializer for an instance created with Default::default() [INFO] [stdout] --> src/config.rs:413:13 [INFO] [stdout] | [INFO] [stdout] 413 | config.database_path = Self::default_database_path_for_profile(profile); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: consider initializing the variable with `config::Config { database_path: Self::default_database_path_for_profile(profile), ..Default::default() }` and removing relevant reassignments [INFO] [stdout] --> src/config.rs:412:13 [INFO] [stdout] | [INFO] [stdout] 412 | let mut config = Config::default(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#field_reassign_with_default [INFO] [stdout] = note: `#[warn(clippy::field_reassign_with_default)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/config.rs:514:33 [INFO] [stdout] | [INFO] [stdout] 514 | .unwrap_or_else(|| Theme::default()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `Theme::default` [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/config.rs:514:33 [INFO] [stdout] | [INFO] [stdout] 514 | .unwrap_or_else(|| Theme::default()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `Theme::default` [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: this `if` statement can be collapsed [INFO] [stdout] --> src/database.rs:25:9 [INFO] [stdout] | [INFO] [stdout] 25 | / if let Some(parent) = db_path.parent() { [INFO] [stdout] 26 | | if !parent.exists() { [INFO] [stdout] 27 | | std::fs::create_dir_all(parent) [INFO] [stdout] 28 | | .map_err(|e| DatabaseError::DirectoryError(e.to_string()))?; [INFO] [stdout] 29 | | } [INFO] [stdout] 30 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] = note: `#[warn(clippy::collapsible_if)]` on by default [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 25 ~ if let Some(parent) = db_path.parent() [INFO] [stdout] 26 ~ && !parent.exists() { [INFO] [stdout] 27 | std::fs::create_dir_all(parent) [INFO] [stdout] 28 | .map_err(|e| DatabaseError::DirectoryError(e.to_string()))?; [INFO] [stdout] 29 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/database.rs:25:9 [INFO] [stdout] | [INFO] [stdout] 25 | / if let Some(parent) = db_path.parent() { [INFO] [stdout] 26 | | if !parent.exists() { [INFO] [stdout] 27 | | std::fs::create_dir_all(parent) [INFO] [stdout] 28 | | .map_err(|e| DatabaseError::DirectoryError(e.to_string()))?; [INFO] [stdout] 29 | | } [INFO] [stdout] 30 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] = note: `#[warn(clippy::collapsible_if)]` on by default [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 25 ~ if let Some(parent) = db_path.parent() [INFO] [stdout] 26 ~ && !parent.exists() { [INFO] [stdout] 27 | std::fs::create_dir_all(parent) [INFO] [stdout] 28 | .map_err(|e| DatabaseError::DirectoryError(e.to_string()))?; [INFO] [stdout] 29 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: stripping a prefix manually [INFO] [stdout] --> src/utils.rs:47:30 [INFO] [stdout] | [INFO] [stdout] 47 | return home.join(&path[2..]); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: the prefix was tested here [INFO] [stdout] --> src/utils.rs:45:5 [INFO] [stdout] | [INFO] [stdout] 45 | if path.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] 45 ~ if let Some() = path.strip_prefix("~/") { [INFO] [stdout] 46 | if let Some(home) = BaseDirs::new().map(|d| d.home_dir().to_path_buf()) { [INFO] [stdout] 47 ~ return home.join(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/utils.rs:45:5 [INFO] [stdout] | [INFO] [stdout] 45 | / if path.starts_with("~/") { [INFO] [stdout] 46 | | if let Some(home) = BaseDirs::new().map(|d| d.home_dir().to_path_buf()) { [INFO] [stdout] 47 | | return home.join(&path[2..]); [INFO] [stdout] 48 | | } [INFO] [stdout] 49 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 45 ~ if path.starts_with("~/") [INFO] [stdout] 46 ~ && let Some(home) = BaseDirs::new().map(|d| d.home_dir().to_path_buf()) { [INFO] [stdout] 47 | return home.join(&path[2..]); [INFO] [stdout] 48 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: stripping a prefix manually [INFO] [stdout] --> src/utils.rs:47:30 [INFO] [stdout] | [INFO] [stdout] 47 | return home.join(&path[2..]); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: the prefix was tested here [INFO] [stdout] --> src/utils.rs:45:5 [INFO] [stdout] | [INFO] [stdout] 45 | if path.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] 45 ~ if let Some() = path.strip_prefix("~/") { [INFO] [stdout] 46 | if let Some(home) = BaseDirs::new().map(|d| d.home_dir().to_path_buf()) { [INFO] [stdout] 47 ~ return home.join(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/utils.rs:45:5 [INFO] [stdout] | [INFO] [stdout] 45 | / if path.starts_with("~/") { [INFO] [stdout] 46 | | if let Some(home) = BaseDirs::new().map(|d| d.home_dir().to_path_buf()) { [INFO] [stdout] 47 | | return home.join(&path[2..]); [INFO] [stdout] 48 | | } [INFO] [stdout] 49 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 45 ~ if path.starts_with("~/") [INFO] [stdout] 46 ~ && let Some(home) = BaseDirs::new().map(|d| d.home_dir().to_path_buf()) { [INFO] [stdout] 47 | return home.join(&path[2..]); [INFO] [stdout] 48 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/utils.rs:161:33 [INFO] [stdout] | [INFO] [stdout] 161 | None => Err(format!("Empty key string after length check (this should not happen)")), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `"Empty key string after length check (this should not happen)".to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] = note: `#[warn(clippy::useless_format)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/utils.rs:161:33 [INFO] [stdout] | [INFO] [stdout] 161 | None => Err(format!("Empty key string after length check (this should not happen)")), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `"Empty key string after length check (this should not happen)".to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] = note: `#[warn(clippy::useless_format)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `impl` can be derived [INFO] [stdout] --> src/tui/app.rs:305:1 [INFO] [stdout] | [INFO] [stdout] 305 | / impl Default for ModalState { [INFO] [stdout] 306 | | fn default() -> Self { [INFO] [stdout] 307 | | Self { [INFO] [stdout] 308 | | delete_confirmation: None, [INFO] [stdout] ... | [INFO] [stdout] 314 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#derivable_impls [INFO] [stdout] = note: `#[warn(clippy::derivable_impls)]` on by default [INFO] [stdout] help: replace the manual implementation with a derive attribute [INFO] [stdout] | [INFO] [stdout] 298 + #[derive(Default)] [INFO] [stdout] 299 | pub struct ModalState { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `impl` can be derived [INFO] [stdout] --> src/tui/app.rs:323:1 [INFO] [stdout] | [INFO] [stdout] 323 | / impl Default for NotebookState { [INFO] [stdout] 324 | | fn default() -> Self { [INFO] [stdout] 325 | | Self { [INFO] [stdout] 326 | | current_notebook_id: None, [INFO] [stdout] ... | [INFO] [stdout] 331 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#derivable_impls [INFO] [stdout] help: replace the manual implementation with a derive attribute [INFO] [stdout] | [INFO] [stdout] 317 + #[derive(Default)] [INFO] [stdout] 318 | pub struct NotebookState { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `impl` can be derived [INFO] [stdout] --> src/tui/app.rs:339:1 [INFO] [stdout] | [INFO] [stdout] 339 | / impl Default for StatusState { [INFO] [stdout] 340 | | fn default() -> Self { [INFO] [stdout] 341 | | Self { [INFO] [stdout] 342 | | message: None, [INFO] [stdout] ... | [INFO] [stdout] 346 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#derivable_impls [INFO] [stdout] help: replace the manual implementation with a derive attribute [INFO] [stdout] | [INFO] [stdout] 334 + #[derive(Default)] [INFO] [stdout] 335 | pub struct StatusState { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `impl` can be derived [INFO] [stdout] --> src/tui/app.rs:353:1 [INFO] [stdout] | [INFO] [stdout] 353 | / impl Default for SearchState { [INFO] [stdout] 354 | | fn default() -> Self { [INFO] [stdout] 355 | | Self { [INFO] [stdout] 356 | | query: String::new(), [INFO] [stdout] ... | [INFO] [stdout] 359 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#derivable_impls [INFO] [stdout] help: replace the manual implementation with a derive attribute [INFO] [stdout] | [INFO] [stdout] 349 + #[derive(Default)] [INFO] [stdout] 350 | pub struct SearchState { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `impl` can be derived [INFO] [stdout] --> src/tui/app.rs:367:1 [INFO] [stdout] | [INFO] [stdout] 367 | / impl Default for FormState { [INFO] [stdout] 368 | | fn default() -> Self { [INFO] [stdout] 369 | | Self { [INFO] [stdout] 370 | | create_form: None, [INFO] [stdout] ... | [INFO] [stdout] 374 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#derivable_impls [INFO] [stdout] help: replace the manual implementation with a derive attribute [INFO] [stdout] | [INFO] [stdout] 362 + #[derive(Default)] [INFO] [stdout] 363 | pub struct FormState { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert_with` to construct default value [INFO] [stdout] --> src/tui/app.rs:670:40 [INFO] [stdout] | [INFO] [stdout] 670 | tag_map.entry(tag).or_insert_with(Vec::new).push(idx); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] = note: `#[warn(clippy::unwrap_or_default)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `impl` can be derived [INFO] [stdout] --> src/tui/app.rs:305:1 [INFO] [stdout] | [INFO] [stdout] 305 | / impl Default for ModalState { [INFO] [stdout] 306 | | fn default() -> Self { [INFO] [stdout] 307 | | Self { [INFO] [stdout] 308 | | delete_confirmation: None, [INFO] [stdout] ... | [INFO] [stdout] 314 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#derivable_impls [INFO] [stdout] = note: `#[warn(clippy::derivable_impls)]` on by default [INFO] [stdout] help: replace the manual implementation with a derive attribute [INFO] [stdout] | [INFO] [stdout] 298 + #[derive(Default)] [INFO] [stdout] 299 | pub struct ModalState { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `impl` can be derived [INFO] [stdout] --> src/tui/app.rs:323:1 [INFO] [stdout] | [INFO] [stdout] 323 | / impl Default for NotebookState { [INFO] [stdout] 324 | | fn default() -> Self { [INFO] [stdout] 325 | | Self { [INFO] [stdout] 326 | | current_notebook_id: None, [INFO] [stdout] ... | [INFO] [stdout] 331 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#derivable_impls [INFO] [stdout] help: replace the manual implementation with a derive attribute [INFO] [stdout] | [INFO] [stdout] 317 + #[derive(Default)] [INFO] [stdout] 318 | pub struct NotebookState { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/app.rs:717:13 [INFO] [stdout] | [INFO] [stdout] 717 | / if let Some(&is_heading_val) = is_heading.get(self.ui.selected_index) { [INFO] [stdout] 718 | | if is_heading_val { [INFO] [stdout] 719 | | self.ui.selected_item = None; [INFO] [stdout] 720 | | return; [INFO] [stdout] 721 | | } [INFO] [stdout] 722 | | } [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 717 ~ if let Some(&is_heading_val) = is_heading.get(self.ui.selected_index) [INFO] [stdout] 718 ~ && is_heading_val { [INFO] [stdout] 719 | self.ui.selected_item = None; [INFO] [stdout] 720 | return; [INFO] [stdout] 721 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `impl` can be derived [INFO] [stdout] --> src/tui/app.rs:339:1 [INFO] [stdout] | [INFO] [stdout] 339 | / impl Default for StatusState { [INFO] [stdout] 340 | | fn default() -> Self { [INFO] [stdout] 341 | | Self { [INFO] [stdout] 342 | | message: None, [INFO] [stdout] ... | [INFO] [stdout] 346 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#derivable_impls [INFO] [stdout] help: replace the manual implementation with a derive attribute [INFO] [stdout] | [INFO] [stdout] 334 + #[derive(Default)] [INFO] [stdout] 335 | pub struct StatusState { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `impl` can be derived [INFO] [stdout] --> src/tui/app.rs:353:1 [INFO] [stdout] | [INFO] [stdout] 353 | / impl Default for SearchState { [INFO] [stdout] 354 | | fn default() -> Self { [INFO] [stdout] 355 | | Self { [INFO] [stdout] 356 | | query: String::new(), [INFO] [stdout] ... | [INFO] [stdout] 359 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#derivable_impls [INFO] [stdout] help: replace the manual implementation with a derive attribute [INFO] [stdout] | [INFO] [stdout] 349 + #[derive(Default)] [INFO] [stdout] 350 | pub struct SearchState { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `impl` can be derived [INFO] [stdout] --> src/tui/app.rs:367:1 [INFO] [stdout] | [INFO] [stdout] 367 | / impl Default for FormState { [INFO] [stdout] 368 | | fn default() -> Self { [INFO] [stdout] 369 | | Self { [INFO] [stdout] 370 | | create_form: None, [INFO] [stdout] ... | [INFO] [stdout] 374 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#derivable_impls [INFO] [stdout] help: replace the manual implementation with a derive attribute [INFO] [stdout] | [INFO] [stdout] 362 + #[derive(Default)] [INFO] [stdout] 363 | pub struct FormState { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `i` is used to index `is_heading` [INFO] [stdout] --> src/tui/app.rs:821:30 [INFO] [stdout] | [INFO] [stdout] 821 | for i in 0..display_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] 821 - for i in 0..display_len { [INFO] [stdout] 821 + for (i, ) in is_heading.iter().enumerate().take(display_len) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/app.rs:1018:9 [INFO] [stdout] | [INFO] [stdout] 1018 | / if let Some(time) = self.status.message_time { [INFO] [stdout] 1019 | | if time.elapsed().as_secs() >= STATUS_MESSAGE_TIMEOUT_SECS { [INFO] [stdout] 1020 | | self.clear_status_message(); [INFO] [stdout] 1021 | | } [INFO] [stdout] 1022 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 1018 ~ if let Some(time) = self.status.message_time [INFO] [stdout] 1019 ~ && time.elapsed().as_secs() >= STATUS_MESSAGE_TIMEOUT_SECS { [INFO] [stdout] 1020 | self.clear_status_message(); [INFO] [stdout] 1021 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/app.rs:1174:13 [INFO] [stdout] | [INFO] [stdout] 1174 | / if let Some(FilterArchivedStatus::Archived) | Some(FilterArchivedStatus::All) = self.filter.archived { [INFO] [stdout] 1175 | | if let Err(e) = self.load_data() { [INFO] [stdout] 1176 | | self.set_status_message(format!("Failed to reload data: {}", e)); [INFO] [stdout] 1177 | | } [INFO] [stdout] 1178 | | } [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 1174 ~ if let Some(FilterArchivedStatus::Archived) | Some(FilterArchivedStatus::All) = self.filter.archived [INFO] [stdout] 1175 ~ && let Err(e) = self.load_data() { [INFO] [stdout] 1176 | self.set_status_message(format!("Failed to reload data: {}", e)); [INFO] [stdout] 1177 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert_with` to construct default value [INFO] [stdout] --> src/tui/app.rs:670:40 [INFO] [stdout] | [INFO] [stdout] 670 | tag_map.entry(tag).or_insert_with(Vec::new).push(idx); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] = note: `#[warn(clippy::unwrap_or_default)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/app.rs:717:13 [INFO] [stdout] | [INFO] [stdout] 717 | / if let Some(&is_heading_val) = is_heading.get(self.ui.selected_index) { [INFO] [stdout] 718 | | if is_heading_val { [INFO] [stdout] 719 | | self.ui.selected_item = None; [INFO] [stdout] 720 | | return; [INFO] [stdout] 721 | | } [INFO] [stdout] 722 | | } [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 717 ~ if let Some(&is_heading_val) = is_heading.get(self.ui.selected_index) [INFO] [stdout] 718 ~ && is_heading_val { [INFO] [stdout] 719 | self.ui.selected_item = None; [INFO] [stdout] 720 | return; [INFO] [stdout] 721 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/app.rs:1207:9 [INFO] [stdout] | [INFO] [stdout] 1207 | / if let Some(ref tags) = self.filter.tags { [INFO] [stdout] 1208 | | if !tags.trim().is_empty() { [INFO] [stdout] 1209 | | parts.push(format!("Tags: {}", tags)); [INFO] [stdout] 1210 | | } [INFO] [stdout] 1211 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 1207 ~ if let Some(ref tags) = self.filter.tags [INFO] [stdout] 1208 ~ && !tags.trim().is_empty() { [INFO] [stdout] 1209 | parts.push(format!("Tags: {}", tags)); [INFO] [stdout] 1210 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/app.rs:1301:9 [INFO] [stdout] | [INFO] [stdout] 1301 | / if let Some(ref mut state) = self.filter.form_state { [INFO] [stdout] 1302 | | if state.archived_index > 0 { [INFO] [stdout] 1303 | | state.archived_index -= 1; [INFO] [stdout] 1304 | | } [INFO] [stdout] 1305 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 1301 ~ if let Some(ref mut state) = self.filter.form_state [INFO] [stdout] 1302 ~ && state.archived_index > 0 { [INFO] [stdout] 1303 | state.archived_index -= 1; [INFO] [stdout] 1304 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/app.rs:1309:9 [INFO] [stdout] | [INFO] [stdout] 1309 | / if let Some(ref mut state) = self.filter.form_state { [INFO] [stdout] 1310 | | if state.archived_index < 2 { [INFO] [stdout] 1311 | | state.archived_index += 1; [INFO] [stdout] 1312 | | } [INFO] [stdout] 1313 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 1309 ~ if let Some(ref mut state) = self.filter.form_state [INFO] [stdout] 1310 ~ && state.archived_index < 2 { [INFO] [stdout] 1311 | state.archived_index += 1; [INFO] [stdout] 1312 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/app.rs:1317:9 [INFO] [stdout] | [INFO] [stdout] 1317 | / if let Some(ref mut state) = self.filter.form_state { [INFO] [stdout] 1318 | | if state.tag_logic_index > 0 { [INFO] [stdout] 1319 | | state.tag_logic_index -= 1; [INFO] [stdout] 1320 | | } [INFO] [stdout] 1321 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 1317 ~ if let Some(ref mut state) = self.filter.form_state [INFO] [stdout] 1318 ~ && state.tag_logic_index > 0 { [INFO] [stdout] 1319 | state.tag_logic_index -= 1; [INFO] [stdout] 1320 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/app.rs:1325:9 [INFO] [stdout] | [INFO] [stdout] 1325 | / if let Some(ref mut state) = self.filter.form_state { [INFO] [stdout] 1326 | | if state.tag_logic_index < 1 { [INFO] [stdout] 1327 | | state.tag_logic_index += 1; [INFO] [stdout] 1328 | | } [INFO] [stdout] 1329 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 1325 ~ if let Some(ref mut state) = self.filter.form_state [INFO] [stdout] 1326 ~ && state.tag_logic_index < 1 { [INFO] [stdout] 1327 | state.tag_logic_index += 1; [INFO] [stdout] 1328 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the loop variable `i` is used to index `is_heading` [INFO] [stdout] --> src/tui/app.rs:821:30 [INFO] [stdout] | [INFO] [stdout] 821 | for i in 0..display_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] 821 - for i in 0..display_len { [INFO] [stdout] 821 + for (i, ) in is_heading.iter().enumerate().take(display_len) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/app.rs:1333:9 [INFO] [stdout] | [INFO] [stdout] 1333 | / if let Some(ref mut state) = self.filter.form_state { [INFO] [stdout] 1334 | | if state.status_index > 0 { [INFO] [stdout] 1335 | | state.status_index -= 1; [INFO] [stdout] 1336 | | } [INFO] [stdout] 1337 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 1333 ~ if let Some(ref mut state) = self.filter.form_state [INFO] [stdout] 1334 ~ && state.status_index > 0 { [INFO] [stdout] 1335 | state.status_index -= 1; [INFO] [stdout] 1336 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/app.rs:1341:9 [INFO] [stdout] | [INFO] [stdout] 1341 | / if let Some(ref mut state) = self.filter.form_state { [INFO] [stdout] 1342 | | if state.status_index < 2 { [INFO] [stdout] 1343 | | state.status_index += 1; [INFO] [stdout] 1344 | | } [INFO] [stdout] 1345 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 1341 ~ if let Some(ref mut state) = self.filter.form_state [INFO] [stdout] 1342 ~ && state.status_index < 2 { [INFO] [stdout] 1343 | state.status_index += 1; [INFO] [stdout] 1344 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/app.rs:1018:9 [INFO] [stdout] | [INFO] [stdout] 1018 | / if let Some(time) = self.status.message_time { [INFO] [stdout] 1019 | | if time.elapsed().as_secs() >= STATUS_MESSAGE_TIMEOUT_SECS { [INFO] [stdout] 1020 | | self.clear_status_message(); [INFO] [stdout] 1021 | | } [INFO] [stdout] 1022 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 1018 ~ if let Some(time) = self.status.message_time [INFO] [stdout] 1019 ~ && time.elapsed().as_secs() >= STATUS_MESSAGE_TIMEOUT_SECS { [INFO] [stdout] 1020 | self.clear_status_message(); [INFO] [stdout] 1021 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/app.rs:1174:13 [INFO] [stdout] | [INFO] [stdout] 1174 | / if let Some(FilterArchivedStatus::Archived) | Some(FilterArchivedStatus::All) = self.filter.archived { [INFO] [stdout] 1175 | | if let Err(e) = self.load_data() { [INFO] [stdout] 1176 | | self.set_status_message(format!("Failed to reload data: {}", e)); [INFO] [stdout] 1177 | | } [INFO] [stdout] 1178 | | } [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 1174 ~ if let Some(FilterArchivedStatus::Archived) | Some(FilterArchivedStatus::All) = self.filter.archived [INFO] [stdout] 1175 ~ && let Err(e) = self.load_data() { [INFO] [stdout] 1176 | self.set_status_message(format!("Failed to reload data: {}", e)); [INFO] [stdout] 1177 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/tui/app.rs:1840:16 [INFO] [stdout] | [INFO] [stdout] 1840 | if !chrono::NaiveDate::parse_from_str(&due_date, "%Y-%m-%d").is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `chrono::NaiveDate::parse_from_str(&due_date, "%Y-%m-%d").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 `if` statement can be collapsed [INFO] [stdout] --> src/tui/app.rs:1207:9 [INFO] [stdout] | [INFO] [stdout] 1207 | / if let Some(ref tags) = self.filter.tags { [INFO] [stdout] 1208 | | if !tags.trim().is_empty() { [INFO] [stdout] 1209 | | parts.push(format!("Tags: {}", tags)); [INFO] [stdout] 1210 | | } [INFO] [stdout] 1211 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 1207 ~ if let Some(ref tags) = self.filter.tags [INFO] [stdout] 1208 ~ && !tags.trim().is_empty() { [INFO] [stdout] 1209 | parts.push(format!("Tags: {}", tags)); [INFO] [stdout] 1210 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/app.rs:1839:9 [INFO] [stdout] | [INFO] [stdout] 1839 | / if !due_date.is_empty() { [INFO] [stdout] 1840 | | if !chrono::NaiveDate::parse_from_str(&due_date, "%Y-%m-%d").is_ok() { [INFO] [stdout] 1841 | | return Err("Due date must be in YYYY-MM-DD format".to_string()); [INFO] [stdout] 1842 | | } [INFO] [stdout] 1843 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 1839 ~ if !due_date.is_empty() [INFO] [stdout] 1840 ~ && !chrono::NaiveDate::parse_from_str(&due_date, "%Y-%m-%d").is_ok() { [INFO] [stdout] 1841 | return Err("Due date must be in YYYY-MM-DD format".to_string()); [INFO] [stdout] 1842 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/tui/app.rs:1861:12 [INFO] [stdout] | [INFO] [stdout] 1861 | if !chrono::NaiveDate::parse_from_str(&date, "%Y-%m-%d").is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `chrono::NaiveDate::parse_from_str(&date, "%Y-%m-%d").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 `if` statement can be collapsed [INFO] [stdout] --> src/tui/app.rs:1301:9 [INFO] [stdout] | [INFO] [stdout] 1301 | / if let Some(ref mut state) = self.filter.form_state { [INFO] [stdout] 1302 | | if state.archived_index > 0 { [INFO] [stdout] 1303 | | state.archived_index -= 1; [INFO] [stdout] 1304 | | } [INFO] [stdout] 1305 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 1301 ~ if let Some(ref mut state) = self.filter.form_state [INFO] [stdout] 1302 ~ && state.archived_index > 0 { [INFO] [stdout] 1303 | state.archived_index -= 1; [INFO] [stdout] 1304 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/app.rs:1309:9 [INFO] [stdout] | [INFO] [stdout] 1309 | / if let Some(ref mut state) = self.filter.form_state { [INFO] [stdout] 1310 | | if state.archived_index < 2 { [INFO] [stdout] 1311 | | state.archived_index += 1; [INFO] [stdout] 1312 | | } [INFO] [stdout] 1313 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 1309 ~ if let Some(ref mut state) = self.filter.form_state [INFO] [stdout] 1310 ~ && state.archived_index < 2 { [INFO] [stdout] 1311 | state.archived_index += 1; [INFO] [stdout] 1312 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/app.rs:1317:9 [INFO] [stdout] | [INFO] [stdout] 1317 | / if let Some(ref mut state) = self.filter.form_state { [INFO] [stdout] 1318 | | if state.tag_logic_index > 0 { [INFO] [stdout] 1319 | | state.tag_logic_index -= 1; [INFO] [stdout] 1320 | | } [INFO] [stdout] 1321 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 1317 ~ if let Some(ref mut state) = self.filter.form_state [INFO] [stdout] 1318 ~ && state.tag_logic_index > 0 { [INFO] [stdout] 1319 | state.tag_logic_index -= 1; [INFO] [stdout] 1320 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/app.rs:1325:9 [INFO] [stdout] | [INFO] [stdout] 1325 | / if let Some(ref mut state) = self.filter.form_state { [INFO] [stdout] 1326 | | if state.tag_logic_index < 1 { [INFO] [stdout] 1327 | | state.tag_logic_index += 1; [INFO] [stdout] 1328 | | } [INFO] [stdout] 1329 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 1325 ~ if let Some(ref mut state) = self.filter.form_state [INFO] [stdout] 1326 ~ && state.tag_logic_index < 1 { [INFO] [stdout] 1327 | state.tag_logic_index += 1; [INFO] [stdout] 1328 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/app.rs:1333:9 [INFO] [stdout] | [INFO] [stdout] 1333 | / if let Some(ref mut state) = self.filter.form_state { [INFO] [stdout] 1334 | | if state.status_index > 0 { [INFO] [stdout] 1335 | | state.status_index -= 1; [INFO] [stdout] 1336 | | } [INFO] [stdout] 1337 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 1333 ~ if let Some(ref mut state) = self.filter.form_state [INFO] [stdout] 1334 ~ && state.status_index > 0 { [INFO] [stdout] 1335 | state.status_index -= 1; [INFO] [stdout] 1336 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/app.rs:1341:9 [INFO] [stdout] | [INFO] [stdout] 1341 | / if let Some(ref mut state) = self.filter.form_state { [INFO] [stdout] 1342 | | if state.status_index < 2 { [INFO] [stdout] 1343 | | state.status_index += 1; [INFO] [stdout] 1344 | | } [INFO] [stdout] 1345 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 1341 ~ if let Some(ref mut state) = self.filter.form_state [INFO] [stdout] 1342 ~ && state.status_index < 2 { [INFO] [stdout] 1343 | state.status_index += 1; [INFO] [stdout] 1344 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/app.rs:2333:9 [INFO] [stdout] | [INFO] [stdout] 2333 | / if let Some(SelectedItem::Task(task)) = &self.ui.selected_item { [INFO] [stdout] 2334 | | if let Some(task_id) = task.id { [INFO] [stdout] 2335 | | // Find the task in the list [INFO] [stdout] 2336 | | if let Some(ref mut task) = self.tasks.iter_mut().find(|t| t.id == Some(task_id)) { [INFO] [stdout] ... | [INFO] [stdout] 2367 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 2333 ~ if let Some(SelectedItem::Task(task)) = &self.ui.selected_item [INFO] [stdout] 2334 ~ && let Some(task_id) = task.id { [INFO] [stdout] 2335 | // Find the task in the list [INFO] [stdout] ... [INFO] [stdout] 2365 | } [INFO] [stdout] 2366 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/tui/app.rs:1840:16 [INFO] [stdout] | [INFO] [stdout] 1840 | if !chrono::NaiveDate::parse_from_str(&due_date, "%Y-%m-%d").is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `chrono::NaiveDate::parse_from_str(&due_date, "%Y-%m-%d").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 `if` statement can be collapsed [INFO] [stdout] --> src/tui/app.rs:1839:9 [INFO] [stdout] | [INFO] [stdout] 1839 | / if !due_date.is_empty() { [INFO] [stdout] 1840 | | if !chrono::NaiveDate::parse_from_str(&due_date, "%Y-%m-%d").is_ok() { [INFO] [stdout] 1841 | | return Err("Due date must be in YYYY-MM-DD format".to_string()); [INFO] [stdout] 1842 | | } [INFO] [stdout] 1843 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 1839 ~ if !due_date.is_empty() [INFO] [stdout] 1840 ~ && !chrono::NaiveDate::parse_from_str(&due_date, "%Y-%m-%d").is_ok() { [INFO] [stdout] 1841 | return Err("Due date must be in YYYY-MM-DD format".to_string()); [INFO] [stdout] 1842 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/app.rs:2392:9 [INFO] [stdout] | [INFO] [stdout] 2392 | / if let Some(SelectedItem::Task(selected_task)) = &self.ui.selected_item { [INFO] [stdout] 2393 | | if let Some(selected_task_id) = selected_task.id { [INFO] [stdout] 2394 | | // Find the task above [INFO] [stdout] 2395 | | let above_index = self.ui.selected_index - 1; [INFO] [stdout] ... | [INFO] [stdout] 2430 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 2392 ~ if let Some(SelectedItem::Task(selected_task)) = &self.ui.selected_item [INFO] [stdout] 2393 ~ && let Some(selected_task_id) = selected_task.id { [INFO] [stdout] 2394 | // Find the task above [INFO] [stdout] ... [INFO] [stdout] 2428 | } [INFO] [stdout] 2429 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/tui/app.rs:1861:12 [INFO] [stdout] | [INFO] [stdout] 1861 | if !chrono::NaiveDate::parse_from_str(&date, "%Y-%m-%d").is_ok() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `chrono::NaiveDate::parse_from_str(&date, "%Y-%m-%d").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 `if` statement can be collapsed [INFO] [stdout] --> src/tui/app.rs:2396:17 [INFO] [stdout] | [INFO] [stdout] 2396 | / if let Some(Item::Task(above_task)) = items.get(above_index) { [INFO] [stdout] 2397 | | if let Some(above_task_id) = above_task.id { [INFO] [stdout] 2398 | | // Get the actual tasks from the list [INFO] [stdout] 2399 | | if let (Some(selected_task), Some(above_task)) = ( [INFO] [stdout] ... | [INFO] [stdout] 2428 | | } [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 2396 ~ if let Some(Item::Task(above_task)) = items.get(above_index) [INFO] [stdout] 2397 ~ && let Some(above_task_id) = above_task.id { [INFO] [stdout] 2398 | // Get the actual tasks from the list [INFO] [stdout] ... [INFO] [stdout] 2426 | } [INFO] [stdout] 2427 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/app.rs:2455:9 [INFO] [stdout] | [INFO] [stdout] 2455 | / if let Some(SelectedItem::Task(selected_task)) = &self.ui.selected_item { [INFO] [stdout] 2456 | | if let Some(selected_task_id) = selected_task.id { [INFO] [stdout] 2457 | | // Find the task below [INFO] [stdout] 2458 | | let below_index = self.ui.selected_index + 1; [INFO] [stdout] ... | [INFO] [stdout] 2493 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 2455 ~ if let Some(SelectedItem::Task(selected_task)) = &self.ui.selected_item [INFO] [stdout] 2456 ~ && let Some(selected_task_id) = selected_task.id { [INFO] [stdout] 2457 | // Find the task below [INFO] [stdout] ... [INFO] [stdout] 2491 | } [INFO] [stdout] 2492 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/app.rs:2459:17 [INFO] [stdout] | [INFO] [stdout] 2459 | / if let Some(Item::Task(below_task)) = items.get(below_index) { [INFO] [stdout] 2460 | | if let Some(below_task_id) = below_task.id { [INFO] [stdout] 2461 | | // Get the actual tasks from the list [INFO] [stdout] 2462 | | if let (Some(selected_task), Some(below_task)) = ( [INFO] [stdout] ... | [INFO] [stdout] 2491 | | } [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 2459 ~ if let Some(Item::Task(below_task)) = items.get(below_index) [INFO] [stdout] 2460 ~ && let Some(below_task_id) = below_task.id { [INFO] [stdout] 2461 | // Get the actual tasks from the list [INFO] [stdout] ... [INFO] [stdout] 2489 | } [INFO] [stdout] 2490 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/app.rs:2742:9 [INFO] [stdout] | [INFO] [stdout] 2742 | / if let Some(ref mut state) = self.notebooks.modal_state { [INFO] [stdout] 2743 | | if state.selected_index > 0 { [INFO] [stdout] 2744 | | state.selected_index -= 1; [INFO] [stdout] 2745 | | state.list_state.select(Some(state.selected_index)); [INFO] [stdout] 2746 | | } [INFO] [stdout] 2747 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 2742 ~ if let Some(ref mut state) = self.notebooks.modal_state [INFO] [stdout] 2743 ~ && state.selected_index > 0 { [INFO] [stdout] 2744 | state.selected_index -= 1; [INFO] [stdout] 2745 | state.list_state.select(Some(state.selected_index)); [INFO] [stdout] 2746 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/app.rs:2765:9 [INFO] [stdout] | [INFO] [stdout] 2765 | / if let Some(ref mut state) = self.notebooks.modal_state { [INFO] [stdout] 2766 | | if state.actions_selected_index > 0 { [INFO] [stdout] 2767 | | state.actions_selected_index -= 1; [INFO] [stdout] 2768 | | } [INFO] [stdout] 2769 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 2765 ~ if let Some(ref mut state) = self.notebooks.modal_state [INFO] [stdout] 2766 ~ && state.actions_selected_index > 0 { [INFO] [stdout] 2767 | state.actions_selected_index -= 1; [INFO] [stdout] 2768 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/app.rs:2333:9 [INFO] [stdout] | [INFO] [stdout] 2333 | / if let Some(SelectedItem::Task(task)) = &self.ui.selected_item { [INFO] [stdout] 2334 | | if let Some(task_id) = task.id { [INFO] [stdout] 2335 | | // Find the task in the list [INFO] [stdout] 2336 | | if let Some(ref mut task) = self.tasks.iter_mut().find(|t| t.id == Some(task_id)) { [INFO] [stdout] ... | [INFO] [stdout] 2367 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 2333 ~ if let Some(SelectedItem::Task(task)) = &self.ui.selected_item [INFO] [stdout] 2334 ~ && let Some(task_id) = task.id { [INFO] [stdout] 2335 | // Find the task in the list [INFO] [stdout] ... [INFO] [stdout] 2365 | } [INFO] [stdout] 2366 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/app.rs:2392:9 [INFO] [stdout] | [INFO] [stdout] 2392 | / if let Some(SelectedItem::Task(selected_task)) = &self.ui.selected_item { [INFO] [stdout] 2393 | | if let Some(selected_task_id) = selected_task.id { [INFO] [stdout] 2394 | | // Find the task above [INFO] [stdout] 2395 | | let above_index = self.ui.selected_index - 1; [INFO] [stdout] ... | [INFO] [stdout] 2430 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 2392 ~ if let Some(SelectedItem::Task(selected_task)) = &self.ui.selected_item [INFO] [stdout] 2393 ~ && let Some(selected_task_id) = selected_task.id { [INFO] [stdout] 2394 | // Find the task above [INFO] [stdout] ... [INFO] [stdout] 2428 | } [INFO] [stdout] 2429 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/app.rs:2396:17 [INFO] [stdout] | [INFO] [stdout] 2396 | / if let Some(Item::Task(above_task)) = items.get(above_index) { [INFO] [stdout] 2397 | | if let Some(above_task_id) = above_task.id { [INFO] [stdout] 2398 | | // Get the actual tasks from the list [INFO] [stdout] 2399 | | if let (Some(selected_task), Some(above_task)) = ( [INFO] [stdout] ... | [INFO] [stdout] 2428 | | } [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 2396 ~ if let Some(Item::Task(above_task)) = items.get(above_index) [INFO] [stdout] 2397 ~ && let Some(above_task_id) = above_task.id { [INFO] [stdout] 2398 | // Get the actual tasks from the list [INFO] [stdout] ... [INFO] [stdout] 2426 | } [INFO] [stdout] 2427 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/app.rs:3176:25 [INFO] [stdout] | [INFO] [stdout] 3176 | return is_untagged; [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] 3176 - return is_untagged; [INFO] [stdout] 3176 + is_untagged [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/app.rs:3179:25 [INFO] [stdout] | [INFO] [stdout] 3179 | return false; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 3179 - return false; [INFO] [stdout] 3179 + false [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/app.rs:2455:9 [INFO] [stdout] | [INFO] [stdout] 2455 | / if let Some(SelectedItem::Task(selected_task)) = &self.ui.selected_item { [INFO] [stdout] 2456 | | if let Some(selected_task_id) = selected_task.id { [INFO] [stdout] 2457 | | // Find the task below [INFO] [stdout] 2458 | | let below_index = self.ui.selected_index + 1; [INFO] [stdout] ... | [INFO] [stdout] 2493 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 2455 ~ if let Some(SelectedItem::Task(selected_task)) = &self.ui.selected_item [INFO] [stdout] 2456 ~ && let Some(selected_task_id) = selected_task.id { [INFO] [stdout] 2457 | // Find the task below [INFO] [stdout] ... [INFO] [stdout] 2491 | } [INFO] [stdout] 2492 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/app.rs:2459:17 [INFO] [stdout] | [INFO] [stdout] 2459 | / if let Some(Item::Task(below_task)) = items.get(below_index) { [INFO] [stdout] 2460 | | if let Some(below_task_id) = below_task.id { [INFO] [stdout] 2461 | | // Get the actual tasks from the list [INFO] [stdout] 2462 | | if let (Some(selected_task), Some(below_task)) = ( [INFO] [stdout] ... | [INFO] [stdout] 2491 | | } [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 2459 ~ if let Some(Item::Task(below_task)) = items.get(below_index) [INFO] [stdout] 2460 ~ && let Some(below_task_id) = below_task.id { [INFO] [stdout] 2461 | // Get the actual tasks from the list [INFO] [stdout] ... [INFO] [stdout] 2489 | } [INFO] [stdout] 2490 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/tui/events.rs:70:18 [INFO] [stdout] | [INFO] [stdout] 70 | .map_err(|e| TuiError::IoError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::IoError` [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 `if` can be collapsed into the outer `match` [INFO] [stdout] --> src/tui/events.rs:173:21 [INFO] [stdout] | [INFO] [stdout] 173 | / if key_event.kind == KeyEventKind::Press { [INFO] [stdout] 174 | | if handle_key_event(&mut app, key_event)? { [INFO] [stdout] 175 | | break; // Quit requested [INFO] [stdout] 176 | | } [INFO] [stdout] 177 | | } [INFO] [stdout] | |_____________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match [INFO] [stdout] = note: `#[warn(clippy::collapsible_match)]` on by default [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 171 ~ Event::Key(key_event) [INFO] [stdout] 172 | // Only process Press events (ignore Release events to prevent double-processing on Windows) [INFO] [stdout] 173 ~ if key_event.kind == KeyEventKind::Press => { [INFO] [stdout] 174 | if handle_key_event(&mut app, key_event)? { [INFO] [stdout] 175 | break; // Quit requested [INFO] [stdout] 176 | } [INFO] [stdout] 177 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/events.rs:173:21 [INFO] [stdout] | [INFO] [stdout] 173 | / if key_event.kind == KeyEventKind::Press { [INFO] [stdout] 174 | | if handle_key_event(&mut app, key_event)? { [INFO] [stdout] 175 | | break; // Quit requested [INFO] [stdout] 176 | | } [INFO] [stdout] 177 | | } [INFO] [stdout] | |_____________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 173 ~ if key_event.kind == KeyEventKind::Press [INFO] [stdout] 174 ~ && handle_key_event(&mut app, key_event)? { [INFO] [stdout] 175 | break; // Quit requested [INFO] [stdout] 176 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:206:13 [INFO] [stdout] | [INFO] [stdout] 206 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 206 - return Ok(false); [INFO] [stdout] 206 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:215:13 [INFO] [stdout] | [INFO] [stdout] 215 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 215 - return Ok(false); [INFO] [stdout] 215 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:329:13 [INFO] [stdout] | [INFO] [stdout] 329 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 329 - return Ok(false); [INFO] [stdout] 329 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:334:13 [INFO] [stdout] | [INFO] [stdout] 334 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 334 - return Ok(false); [INFO] [stdout] 334 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:338:13 [INFO] [stdout] | [INFO] [stdout] 338 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 338 - return Ok(false); [INFO] [stdout] 338 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/app.rs:2742:9 [INFO] [stdout] | [INFO] [stdout] 2742 | / if let Some(ref mut state) = self.notebooks.modal_state { [INFO] [stdout] 2743 | | if state.selected_index > 0 { [INFO] [stdout] 2744 | | state.selected_index -= 1; [INFO] [stdout] 2745 | | state.list_state.select(Some(state.selected_index)); [INFO] [stdout] 2746 | | } [INFO] [stdout] 2747 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 2742 ~ if let Some(ref mut state) = self.notebooks.modal_state [INFO] [stdout] 2743 ~ && state.selected_index > 0 { [INFO] [stdout] 2744 | state.selected_index -= 1; [INFO] [stdout] 2745 | state.list_state.select(Some(state.selected_index)); [INFO] [stdout] 2746 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/app.rs:2765:9 [INFO] [stdout] | [INFO] [stdout] 2765 | / if let Some(ref mut state) = self.notebooks.modal_state { [INFO] [stdout] 2766 | | if state.actions_selected_index > 0 { [INFO] [stdout] 2767 | | state.actions_selected_index -= 1; [INFO] [stdout] 2768 | | } [INFO] [stdout] 2769 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 2765 ~ if let Some(ref mut state) = self.notebooks.modal_state [INFO] [stdout] 2766 ~ && state.actions_selected_index > 0 { [INFO] [stdout] 2767 | state.actions_selected_index -= 1; [INFO] [stdout] 2768 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:347:13 [INFO] [stdout] | [INFO] [stdout] 347 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 347 - return Ok(false); [INFO] [stdout] 347 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:352:13 [INFO] [stdout] | [INFO] [stdout] 352 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 352 - return Ok(false); [INFO] [stdout] 352 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:357:13 [INFO] [stdout] | [INFO] [stdout] 357 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 357 - return Ok(false); [INFO] [stdout] 357 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:376:13 [INFO] [stdout] | [INFO] [stdout] 376 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 376 - return Ok(false); [INFO] [stdout] 376 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:395:13 [INFO] [stdout] | [INFO] [stdout] 395 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 395 - return Ok(false); [INFO] [stdout] 395 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:400:13 [INFO] [stdout] | [INFO] [stdout] 400 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 400 - return Ok(false); [INFO] [stdout] 400 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:417:13 [INFO] [stdout] | [INFO] [stdout] 417 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 417 - return Ok(false); [INFO] [stdout] 417 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:428:13 [INFO] [stdout] | [INFO] [stdout] 428 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 428 - return Ok(false); [INFO] [stdout] 428 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/tui/events.rs:422:26 [INFO] [stdout] | [INFO] [stdout] 422 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:442:13 [INFO] [stdout] | [INFO] [stdout] 442 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 442 - return Ok(false); [INFO] [stdout] 442 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:451:13 [INFO] [stdout] | [INFO] [stdout] 451 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 451 - return Ok(false); [INFO] [stdout] 451 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:472:13 [INFO] [stdout] | [INFO] [stdout] 472 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 472 - return Ok(false); [INFO] [stdout] 472 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:477:13 [INFO] [stdout] | [INFO] [stdout] 477 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 477 - return Ok(false); [INFO] [stdout] 477 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:481:13 [INFO] [stdout] | [INFO] [stdout] 481 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 481 - return Ok(false); [INFO] [stdout] 481 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/tui/events.rs:526:20 [INFO] [stdout] | [INFO] [stdout] 526 | if !(is_theme_settings && app.settings.color_input_mode) && [INFO] [stdout] | ____________________^ [INFO] [stdout] 527 | | !(is_theme_settings && app.settings.color_save_theme_name_editor.is_some()) { [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] 526 - if !(is_theme_settings && app.settings.color_input_mode) && [INFO] [stdout] 527 - !(is_theme_settings && app.settings.color_save_theme_name_editor.is_some()) { [INFO] [stdout] 526 + if !(is_theme_settings && app.settings.color_input_mode || is_theme_settings && app.settings.color_save_theme_name_editor.is_some()) { [INFO] [stdout] | [INFO] [stdout] 526 - if !(is_theme_settings && app.settings.color_input_mode) && [INFO] [stdout] 527 - !(is_theme_settings && app.settings.color_save_theme_name_editor.is_some()) { [INFO] [stdout] 526 + if !is_theme_settings || !app.settings.color_input_mode && app.settings.color_save_theme_name_editor.is_none() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:968:5 [INFO] [stdout] | [INFO] [stdout] 968 | return handle_global_key_bindings(app, key_event); [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] 968 - return handle_global_key_bindings(app, key_event); [INFO] [stdout] 968 + handle_global_key_bindings(app, key_event) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` can be collapsed into the outer `match` [INFO] [stdout] --> src/tui/events.rs:526:17 [INFO] [stdout] | [INFO] [stdout] 526 | / if !(is_theme_settings && app.settings.color_input_mode) && [INFO] [stdout] 527 | | !(is_theme_settings && app.settings.color_save_theme_name_editor.is_some()) { [INFO] [stdout] 528 | | let forward = key_event.code == KeyCode::Tab && [INFO] [stdout] 529 | | !key_event.modifiers.contains(KeyModifiers::SHIFT); [INFO] [stdout] ... | [INFO] [stdout] 587 | | } [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 524 ~ KeyCode::Tab | KeyCode::BackTab [INFO] [stdout] 525 | // Don't handle Tab if in color input mode or save theme name mode [INFO] [stdout] 526 | if !(is_theme_settings && app.settings.color_input_mode) && [INFO] [stdout] 527 ~ !(is_theme_settings && app.settings.color_save_theme_name_editor.is_some()) => { [INFO] [stdout] 528 | let forward = key_event.code == KeyCode::Tab && [INFO] [stdout] ... [INFO] [stdout] 586 | } [INFO] [stdout] 587 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/app.rs:3176:25 [INFO] [stdout] | [INFO] [stdout] 3176 | return is_untagged; [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] 3176 - return is_untagged; [INFO] [stdout] 3176 + is_untagged [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/tui/events.rs:620:26 [INFO] [stdout] | [INFO] [stdout] 620 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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: unneeded `return` statement [INFO] [stdout] --> src/tui/app.rs:3179:25 [INFO] [stdout] | [INFO] [stdout] 3179 | return false; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 3179 - return false; [INFO] [stdout] 3179 + false [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/events.rs:756:25 [INFO] [stdout] | [INFO] [stdout] 756 | / if !app.settings.in_theme_list_area { [INFO] [stdout] 757 | | if let Err(e) = app.reset_color_overrides() { [INFO] [stdout] 758 | | app.set_status_message(format!("Failed to reset colors: {}", e)); [INFO] [stdout] 759 | | } [INFO] [stdout] 760 | | } [INFO] [stdout] | |_________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 756 ~ if !app.settings.in_theme_list_area [INFO] [stdout] 757 ~ && let Err(e) = app.reset_color_overrides() { [INFO] [stdout] 758 | app.set_status_message(format!("Failed to reset colors: {}", e)); [INFO] [stdout] 759 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/tui/events.rs:822:26 [INFO] [stdout] | [INFO] [stdout] 822 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:70:18 [INFO] [stdout] | [INFO] [stdout] 70 | .map_err(|e| TuiError::IoError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::IoError` [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/tui/events.rs:910:30 [INFO] [stdout] | [INFO] [stdout] 910 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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 `if` can be collapsed into the outer `match` [INFO] [stdout] --> src/tui/events.rs:173:21 [INFO] [stdout] | [INFO] [stdout] 173 | / if key_event.kind == KeyEventKind::Press { [INFO] [stdout] 174 | | if handle_key_event(&mut app, key_event)? { [INFO] [stdout] 175 | | break; // Quit requested [INFO] [stdout] 176 | | } [INFO] [stdout] 177 | | } [INFO] [stdout] | |_____________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match [INFO] [stdout] = note: `#[warn(clippy::collapsible_match)]` on by default [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 171 ~ Event::Key(key_event) [INFO] [stdout] 172 | // Only process Press events (ignore Release events to prevent double-processing on Windows) [INFO] [stdout] 173 ~ if key_event.kind == KeyEventKind::Press => { [INFO] [stdout] 174 | if handle_key_event(&mut app, key_event)? { [INFO] [stdout] 175 | break; // Quit requested [INFO] [stdout] 176 | } [INFO] [stdout] 177 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/events.rs:173:21 [INFO] [stdout] | [INFO] [stdout] 173 | / if key_event.kind == KeyEventKind::Press { [INFO] [stdout] 174 | | if handle_key_event(&mut app, key_event)? { [INFO] [stdout] 175 | | break; // Quit requested [INFO] [stdout] 176 | | } [INFO] [stdout] 177 | | } [INFO] [stdout] | |_____________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 173 ~ if key_event.kind == KeyEventKind::Press [INFO] [stdout] 174 ~ && handle_key_event(&mut app, key_event)? { [INFO] [stdout] 175 | break; // Quit requested [INFO] [stdout] 176 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/tui/events.rs:974:18 [INFO] [stdout] | [INFO] [stdout] 974 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:206:13 [INFO] [stdout] | [INFO] [stdout] 206 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 206 - return Ok(false); [INFO] [stdout] 206 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:215:13 [INFO] [stdout] | [INFO] [stdout] 215 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 215 - return Ok(false); [INFO] [stdout] 215 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:329:13 [INFO] [stdout] | [INFO] [stdout] 329 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 329 - return Ok(false); [INFO] [stdout] 329 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:334:13 [INFO] [stdout] | [INFO] [stdout] 334 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 334 - return Ok(false); [INFO] [stdout] 334 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:338:13 [INFO] [stdout] | [INFO] [stdout] 338 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 338 - return Ok(false); [INFO] [stdout] 338 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/tui/events.rs:1161:26 [INFO] [stdout] | [INFO] [stdout] 1161 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:1172:18 [INFO] [stdout] | [INFO] [stdout] 1172 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:347:13 [INFO] [stdout] | [INFO] [stdout] 347 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 347 - return Ok(false); [INFO] [stdout] 347 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:352:13 [INFO] [stdout] | [INFO] [stdout] 352 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 352 - return Ok(false); [INFO] [stdout] 352 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/tui/events.rs:1174:18 [INFO] [stdout] | [INFO] [stdout] 1174 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:1176:18 [INFO] [stdout] | [INFO] [stdout] 1176 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:357:13 [INFO] [stdout] | [INFO] [stdout] 357 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 357 - return Ok(false); [INFO] [stdout] 357 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:376:13 [INFO] [stdout] | [INFO] [stdout] 376 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 376 - return Ok(false); [INFO] [stdout] 376 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:395:13 [INFO] [stdout] | [INFO] [stdout] 395 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 395 - return Ok(false); [INFO] [stdout] 395 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:400:13 [INFO] [stdout] | [INFO] [stdout] 400 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 400 - return Ok(false); [INFO] [stdout] 400 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:417:13 [INFO] [stdout] | [INFO] [stdout] 417 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 417 - return Ok(false); [INFO] [stdout] 417 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:428:13 [INFO] [stdout] | [INFO] [stdout] 428 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 428 - return Ok(false); [INFO] [stdout] 428 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/tui/events.rs:422:26 [INFO] [stdout] | [INFO] [stdout] 422 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:1339:13 [INFO] [stdout] | [INFO] [stdout] 1339 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 1339 - return Ok(false); [INFO] [stdout] 1339 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:1350:13 [INFO] [stdout] | [INFO] [stdout] 1350 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 1350 - return Ok(false); [INFO] [stdout] 1350 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:442:13 [INFO] [stdout] | [INFO] [stdout] 442 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 442 - return Ok(false); [INFO] [stdout] 442 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:451:13 [INFO] [stdout] | [INFO] [stdout] 451 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 451 - return Ok(false); [INFO] [stdout] 451 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/tui/events.rs:1344:26 [INFO] [stdout] | [INFO] [stdout] 1344 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:472:13 [INFO] [stdout] | [INFO] [stdout] 472 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 472 - return Ok(false); [INFO] [stdout] 472 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:477:13 [INFO] [stdout] | [INFO] [stdout] 477 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 477 - return Ok(false); [INFO] [stdout] 477 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:481:13 [INFO] [stdout] | [INFO] [stdout] 481 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 481 - return Ok(false); [INFO] [stdout] 481 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/tui/events.rs:1364:26 [INFO] [stdout] | [INFO] [stdout] 1364 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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 boolean expression can be simplified [INFO] [stdout] --> src/tui/events.rs:526:20 [INFO] [stdout] | [INFO] [stdout] 526 | if !(is_theme_settings && app.settings.color_input_mode) && [INFO] [stdout] | ____________________^ [INFO] [stdout] 527 | | !(is_theme_settings && app.settings.color_save_theme_name_editor.is_some()) { [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] 526 - if !(is_theme_settings && app.settings.color_input_mode) && [INFO] [stdout] 527 - !(is_theme_settings && app.settings.color_save_theme_name_editor.is_some()) { [INFO] [stdout] 526 + if !(is_theme_settings && app.settings.color_input_mode || is_theme_settings && app.settings.color_save_theme_name_editor.is_some()) { [INFO] [stdout] | [INFO] [stdout] 526 - if !(is_theme_settings && app.settings.color_input_mode) && [INFO] [stdout] 527 - !(is_theme_settings && app.settings.color_save_theme_name_editor.is_some()) { [INFO] [stdout] 526 + if !is_theme_settings || !app.settings.color_input_mode && app.settings.color_save_theme_name_editor.is_none() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:968:5 [INFO] [stdout] | [INFO] [stdout] 968 | return handle_global_key_bindings(app, key_event); [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] 968 - return handle_global_key_bindings(app, key_event); [INFO] [stdout] 968 + handle_global_key_bindings(app, key_event) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` can be collapsed into the outer `match` [INFO] [stdout] --> src/tui/events.rs:526:17 [INFO] [stdout] | [INFO] [stdout] 526 | / if !(is_theme_settings && app.settings.color_input_mode) && [INFO] [stdout] 527 | | !(is_theme_settings && app.settings.color_save_theme_name_editor.is_some()) { [INFO] [stdout] 528 | | let forward = key_event.code == KeyCode::Tab && [INFO] [stdout] 529 | | !key_event.modifiers.contains(KeyModifiers::SHIFT); [INFO] [stdout] ... | [INFO] [stdout] 587 | | } [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 524 ~ KeyCode::Tab | KeyCode::BackTab [INFO] [stdout] 525 | // Don't handle Tab if in color input mode or save theme name mode [INFO] [stdout] 526 | if !(is_theme_settings && app.settings.color_input_mode) && [INFO] [stdout] 527 ~ !(is_theme_settings && app.settings.color_save_theme_name_editor.is_some()) => { [INFO] [stdout] 528 | let forward = key_event.code == KeyCode::Tab && [INFO] [stdout] ... [INFO] [stdout] 586 | } [INFO] [stdout] 587 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/tui/events.rs:620:26 [INFO] [stdout] | [INFO] [stdout] 620 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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: using `clone` on type `NotebookModalMode` which implements the `Copy` trait [INFO] [stdout] --> src/tui/events.rs:1429:32 [INFO] [stdout] | [INFO] [stdout] 1429 | let mode = state.mode.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `state.mode` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] = note: `#[warn(clippy::clone_on_copy)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/events.rs:756:25 [INFO] [stdout] | [INFO] [stdout] 756 | / if !app.settings.in_theme_list_area { [INFO] [stdout] 757 | | if let Err(e) = app.reset_color_overrides() { [INFO] [stdout] 758 | | app.set_status_message(format!("Failed to reset colors: {}", e)); [INFO] [stdout] 759 | | } [INFO] [stdout] 760 | | } [INFO] [stdout] | |_________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 756 ~ if !app.settings.in_theme_list_area [INFO] [stdout] 757 ~ && let Err(e) = app.reset_color_overrides() { [INFO] [stdout] 758 | app.set_status_message(format!("Failed to reset colors: {}", e)); [INFO] [stdout] 759 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` can be collapsed into the outer `match` [INFO] [stdout] --> src/tui/events.rs:1484:33 [INFO] [stdout] | [INFO] [stdout] 1484 | / ... if state.selected_index > 0 { [INFO] [stdout] 1485 | | ... // Can't rename "[None]" [INFO] [stdout] 1486 | | ... let notebook_id = app.notebooks.notebooks.get(state.selected_index - 1) [INFO] [stdout] 1487 | | ... .and_then(|n| n.id); [INFO] [stdout] ... | [INFO] [stdout] 1497 | | ... } [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 1482 ~ 1 [INFO] [stdout] 1483 | // Rename [INFO] [stdout] 1484 ~ if state.selected_index > 0 => { [INFO] [stdout] 1485 | // Can't rename "[None]" [INFO] [stdout] ... [INFO] [stdout] 1496 | } [INFO] [stdout] 1497 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` can be collapsed into the outer `match` [INFO] [stdout] --> src/tui/events.rs:1501:33 [INFO] [stdout] | [INFO] [stdout] 1501 | / ... if state.selected_index > 0 { [INFO] [stdout] 1502 | | ... // Can't delete "[None]" [INFO] [stdout] 1503 | | ... let notebook_id = app.notebooks.notebooks.get(state.selected_index - 1) [INFO] [stdout] 1504 | | ... .and_then(|n| n.id); [INFO] [stdout] ... | [INFO] [stdout] 1523 | | ... } [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 1499 ~ 2 [INFO] [stdout] 1500 | // Delete [INFO] [stdout] 1501 ~ if state.selected_index > 0 => { [INFO] [stdout] 1502 | // Can't delete "[None]" [INFO] [stdout] ... [INFO] [stdout] 1522 | } [INFO] [stdout] 1523 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/tui/events.rs:822:26 [INFO] [stdout] | [INFO] [stdout] 822 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:910:30 [INFO] [stdout] | [INFO] [stdout] 910 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:1565:34 [INFO] [stdout] | [INFO] [stdout] 1565 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:1621:13 [INFO] [stdout] | [INFO] [stdout] 1621 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 1621 - return Ok(false); [INFO] [stdout] 1621 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:1625:13 [INFO] [stdout] | [INFO] [stdout] 1625 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 1625 - return Ok(false); [INFO] [stdout] 1625 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/tui/events.rs:974:18 [INFO] [stdout] | [INFO] [stdout] 974 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:1629:13 [INFO] [stdout] | [INFO] [stdout] 1629 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 1629 - return Ok(false); [INFO] [stdout] 1629 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:1633:13 [INFO] [stdout] | [INFO] [stdout] 1633 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 1633 - return Ok(false); [INFO] [stdout] 1633 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:1638:13 [INFO] [stdout] | [INFO] [stdout] 1638 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 1638 - return Ok(false); [INFO] [stdout] 1638 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:1643:13 [INFO] [stdout] | [INFO] [stdout] 1643 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 1643 - return Ok(false); [INFO] [stdout] 1643 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/tui/events.rs:1764:30 [INFO] [stdout] | [INFO] [stdout] 1764 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:1766:30 [INFO] [stdout] | [INFO] [stdout] 1766 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:1768:30 [INFO] [stdout] | [INFO] [stdout] 1768 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:1161:26 [INFO] [stdout] | [INFO] [stdout] 1161 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:1172:18 [INFO] [stdout] | [INFO] [stdout] 1172 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:1174:18 [INFO] [stdout] | [INFO] [stdout] 1174 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:1176:18 [INFO] [stdout] | [INFO] [stdout] 1176 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:1912:18 [INFO] [stdout] | [INFO] [stdout] 1912 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:1919:18 [INFO] [stdout] | [INFO] [stdout] 1919 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:1927:18 [INFO] [stdout] | [INFO] [stdout] 1927 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:1339:13 [INFO] [stdout] | [INFO] [stdout] 1339 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 1339 - return Ok(false); [INFO] [stdout] 1339 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:1350:13 [INFO] [stdout] | [INFO] [stdout] 1350 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 1350 - return Ok(false); [INFO] [stdout] 1350 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/tui/events.rs:1957:18 [INFO] [stdout] | [INFO] [stdout] 1957 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:1344:26 [INFO] [stdout] | [INFO] [stdout] 1344 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:1974:18 [INFO] [stdout] | [INFO] [stdout] 1974 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:1364:26 [INFO] [stdout] | [INFO] [stdout] 1364 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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 `if` statement can be collapsed [INFO] [stdout] --> src/tui/events.rs:2036:17 [INFO] [stdout] | [INFO] [stdout] 2036 | / if app.ui.mode == crate::tui::app::Mode::View && app.ui.selected_item.is_some() { [INFO] [stdout] 2037 | | if let Ok((_, height)) = terminal_size() { [INFO] [stdout] 2038 | | use crate::tui::layout::Layout; [INFO] [stdout] 2039 | | use ratatui::layout::Rect; [INFO] [stdout] ... | [INFO] [stdout] 2049 | | } [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 2036 ~ if app.ui.mode == crate::tui::app::Mode::View && app.ui.selected_item.is_some() [INFO] [stdout] 2037 ~ && let Ok((_, height)) = terminal_size() { [INFO] [stdout] 2038 | use crate::tui::layout::Layout; [INFO] [stdout] ... [INFO] [stdout] 2047 | app.scroll_item_view_page_up(viewport_height); [INFO] [stdout] 2048 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/events.rs:2054:17 [INFO] [stdout] | [INFO] [stdout] 2054 | / if app.ui.mode == crate::tui::app::Mode::View && app.ui.selected_item.is_some() { [INFO] [stdout] 2055 | | if let Ok((_, height)) = terminal_size() { [INFO] [stdout] 2056 | | use crate::tui::layout::Layout; [INFO] [stdout] 2057 | | use ratatui::layout::Rect; [INFO] [stdout] ... | [INFO] [stdout] 2067 | | } [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 2054 ~ if app.ui.mode == crate::tui::app::Mode::View && app.ui.selected_item.is_some() [INFO] [stdout] 2055 ~ && let Ok((_, height)) = terminal_size() { [INFO] [stdout] 2056 | use crate::tui::layout::Layout; [INFO] [stdout] ... [INFO] [stdout] 2065 | app.scroll_item_view_page_down(viewport_height); [INFO] [stdout] 2066 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/events.rs:2079:17 [INFO] [stdout] | [INFO] [stdout] 2079 | / if app.ui.mode == crate::tui::app::Mode::View && app.ui.selected_item.is_some() { [INFO] [stdout] 2080 | | if let Ok((_, height)) = terminal_size() { [INFO] [stdout] 2081 | | use crate::tui::layout::Layout; [INFO] [stdout] 2082 | | use ratatui::layout::Rect; [INFO] [stdout] ... | [INFO] [stdout] 2092 | | } [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 2079 ~ if app.ui.mode == crate::tui::app::Mode::View && app.ui.selected_item.is_some() [INFO] [stdout] 2080 ~ && let Ok((_, height)) = terminal_size() { [INFO] [stdout] 2081 | use crate::tui::layout::Layout; [INFO] [stdout] ... [INFO] [stdout] 2090 | app.scroll_item_view_to_bottom(viewport_height); [INFO] [stdout] 2091 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/tui/events.rs:2102:18 [INFO] [stdout] | [INFO] [stdout] 2102 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:2125:18 [INFO] [stdout] | [INFO] [stdout] 2125 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:2149:18 [INFO] [stdout] | [INFO] [stdout] 2149 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:2156:18 [INFO] [stdout] | [INFO] [stdout] 2156 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:2163:18 [INFO] [stdout] | [INFO] [stdout] 2163 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:2171:18 [INFO] [stdout] | [INFO] [stdout] 2171 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:2183:18 [INFO] [stdout] | [INFO] [stdout] 2183 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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: using `clone` on type `NotebookModalMode` which implements the `Copy` trait [INFO] [stdout] --> src/tui/events.rs:1429:32 [INFO] [stdout] | [INFO] [stdout] 1429 | let mode = state.mode.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `state.mode` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] = note: `#[warn(clippy::clone_on_copy)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/events.rs:2200:29 [INFO] [stdout] | [INFO] [stdout] 2200 | / ... if let Some(theme_name) = themes.get(app.settings.theme_index) { [INFO] [stdout] 2201 | | ... if let Err(e) = app.select_theme(theme_name) { [INFO] [stdout] 2202 | | ... app.set_status_message(format!("Failed to change theme: {}", e)); [INFO] [stdout] 2203 | | ... } [INFO] [stdout] 2204 | | ... } [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 2200 ~ if let Some(theme_name) = themes.get(app.settings.theme_index) [INFO] [stdout] 2201 ~ && let Err(e) = app.select_theme(theme_name) { [INFO] [stdout] 2202 | app.set_status_message(format!("Failed to change theme: {}", e)); [INFO] [stdout] 2203 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` can be collapsed into the outer `match` [INFO] [stdout] --> src/tui/events.rs:1484:33 [INFO] [stdout] | [INFO] [stdout] 1484 | / ... if state.selected_index > 0 { [INFO] [stdout] 1485 | | ... // Can't rename "[None]" [INFO] [stdout] 1486 | | ... let notebook_id = app.notebooks.notebooks.get(state.selected_index - 1) [INFO] [stdout] 1487 | | ... .and_then(|n| n.id); [INFO] [stdout] ... | [INFO] [stdout] 1497 | | ... } [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 1482 ~ 1 [INFO] [stdout] 1483 | // Rename [INFO] [stdout] 1484 ~ if state.selected_index > 0 => { [INFO] [stdout] 1485 | // Can't rename "[None]" [INFO] [stdout] ... [INFO] [stdout] 1496 | } [INFO] [stdout] 1497 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/events.rs:2215:28 [INFO] [stdout] | [INFO] [stdout] 2215 | } else if category == "Content Settings" { [INFO] [stdout] | ____________________________^ [INFO] [stdout] 2216 | | if let Err(e) = app.apply_content_display() { [INFO] [stdout] 2217 | | app.set_status_message(format!("Failed to change content display: {}", e)); [INFO] [stdout] 2218 | | } [INFO] [stdout] 2219 | | } [INFO] [stdout] | |_____________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 2215 ~ } else if category == "Content Settings" [INFO] [stdout] 2216 ~ && let Err(e) = app.apply_content_display() { [INFO] [stdout] 2217 | app.set_status_message(format!("Failed to change content display: {}", e)); [INFO] [stdout] 2218 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` can be collapsed into the outer `match` [INFO] [stdout] --> src/tui/events.rs:1501:33 [INFO] [stdout] | [INFO] [stdout] 1501 | / ... if state.selected_index > 0 { [INFO] [stdout] 1502 | | ... // Can't delete "[None]" [INFO] [stdout] 1503 | | ... let notebook_id = app.notebooks.notebooks.get(state.selected_index - 1) [INFO] [stdout] 1504 | | ... .and_then(|n| n.id); [INFO] [stdout] ... | [INFO] [stdout] 1523 | | ... } [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 1499 ~ 2 [INFO] [stdout] 1500 | // Delete [INFO] [stdout] 1501 ~ if state.selected_index > 0 => { [INFO] [stdout] 1502 | // Can't delete "[None]" [INFO] [stdout] ... [INFO] [stdout] 1522 | } [INFO] [stdout] 1523 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/tui/events.rs:2230:18 [INFO] [stdout] | [INFO] [stdout] 2230 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:2239:18 [INFO] [stdout] | [INFO] [stdout] 2239 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:2248:18 [INFO] [stdout] | [INFO] [stdout] 2248 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:2262:18 [INFO] [stdout] | [INFO] [stdout] 2262 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:2278:18 [INFO] [stdout] | [INFO] [stdout] 2278 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:2291:18 [INFO] [stdout] | [INFO] [stdout] 2291 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:1565:34 [INFO] [stdout] | [INFO] [stdout] 1565 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:2299:18 [INFO] [stdout] | [INFO] [stdout] 2299 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:2307:18 [INFO] [stdout] | [INFO] [stdout] 2307 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:1621:13 [INFO] [stdout] | [INFO] [stdout] 1621 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 1621 - return Ok(false); [INFO] [stdout] 1621 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:1625:13 [INFO] [stdout] | [INFO] [stdout] 1625 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 1625 - return Ok(false); [INFO] [stdout] 1625 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:1629:13 [INFO] [stdout] | [INFO] [stdout] 1629 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 1629 - return Ok(false); [INFO] [stdout] 1629 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:1633:13 [INFO] [stdout] | [INFO] [stdout] 1633 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 1633 - return Ok(false); [INFO] [stdout] 1633 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:1638:13 [INFO] [stdout] | [INFO] [stdout] 1638 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 1638 - return Ok(false); [INFO] [stdout] 1638 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/tui/events.rs:1643:13 [INFO] [stdout] | [INFO] [stdout] 1643 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 1643 - return Ok(false); [INFO] [stdout] 1643 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/tui/events.rs:1764:30 [INFO] [stdout] | [INFO] [stdout] 1764 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:1766:30 [INFO] [stdout] | [INFO] [stdout] 1766 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:1768:30 [INFO] [stdout] | [INFO] [stdout] 1768 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:1912:18 [INFO] [stdout] | [INFO] [stdout] 1912 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:1919:18 [INFO] [stdout] | [INFO] [stdout] 1919 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:1927:18 [INFO] [stdout] | [INFO] [stdout] 1927 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:1957:18 [INFO] [stdout] | [INFO] [stdout] 1957 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:1974:18 [INFO] [stdout] | [INFO] [stdout] 1974 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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 `if` statement can be collapsed [INFO] [stdout] --> src/tui/events.rs:2036:17 [INFO] [stdout] | [INFO] [stdout] 2036 | / if app.ui.mode == crate::tui::app::Mode::View && app.ui.selected_item.is_some() { [INFO] [stdout] 2037 | | if let Ok((_, height)) = terminal_size() { [INFO] [stdout] 2038 | | use crate::tui::layout::Layout; [INFO] [stdout] 2039 | | use ratatui::layout::Rect; [INFO] [stdout] ... | [INFO] [stdout] 2049 | | } [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 2036 ~ if app.ui.mode == crate::tui::app::Mode::View && app.ui.selected_item.is_some() [INFO] [stdout] 2037 ~ && let Ok((_, height)) = terminal_size() { [INFO] [stdout] 2038 | use crate::tui::layout::Layout; [INFO] [stdout] ... [INFO] [stdout] 2047 | app.scroll_item_view_page_up(viewport_height); [INFO] [stdout] 2048 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/events.rs:2054:17 [INFO] [stdout] | [INFO] [stdout] 2054 | / if app.ui.mode == crate::tui::app::Mode::View && app.ui.selected_item.is_some() { [INFO] [stdout] 2055 | | if let Ok((_, height)) = terminal_size() { [INFO] [stdout] 2056 | | use crate::tui::layout::Layout; [INFO] [stdout] 2057 | | use ratatui::layout::Rect; [INFO] [stdout] ... | [INFO] [stdout] 2067 | | } [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 2054 ~ if app.ui.mode == crate::tui::app::Mode::View && app.ui.selected_item.is_some() [INFO] [stdout] 2055 ~ && let Ok((_, height)) = terminal_size() { [INFO] [stdout] 2056 | use crate::tui::layout::Layout; [INFO] [stdout] ... [INFO] [stdout] 2065 | app.scroll_item_view_page_down(viewport_height); [INFO] [stdout] 2066 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/events.rs:2079:17 [INFO] [stdout] | [INFO] [stdout] 2079 | / if app.ui.mode == crate::tui::app::Mode::View && app.ui.selected_item.is_some() { [INFO] [stdout] 2080 | | if let Ok((_, height)) = terminal_size() { [INFO] [stdout] 2081 | | use crate::tui::layout::Layout; [INFO] [stdout] 2082 | | use ratatui::layout::Rect; [INFO] [stdout] ... | [INFO] [stdout] 2092 | | } [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 2079 ~ if app.ui.mode == crate::tui::app::Mode::View && app.ui.selected_item.is_some() [INFO] [stdout] 2080 ~ && let Ok((_, height)) = terminal_size() { [INFO] [stdout] 2081 | use crate::tui::layout::Layout; [INFO] [stdout] ... [INFO] [stdout] 2090 | app.scroll_item_view_to_bottom(viewport_height); [INFO] [stdout] 2091 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/tui/events.rs:2102:18 [INFO] [stdout] | [INFO] [stdout] 2102 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:2125:18 [INFO] [stdout] | [INFO] [stdout] 2125 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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: doc list item without indentation [INFO] [stdout] --> src/tui/widgets/color.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 20 | /// Returns Color::White as default for unrecognized colors [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: if this is supposed to be its own paragraph, add a blank line [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation [INFO] [stdout] = note: `#[warn(clippy::doc_lazy_continuation)]` on by default [INFO] [stdout] help: indent this line [INFO] [stdout] | [INFO] [stdout] 20 | /// Returns Color::White as default for unrecognized colors [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/tui/events.rs:2149:18 [INFO] [stdout] | [INFO] [stdout] 2149 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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 `if` statement can be collapsed [INFO] [stdout] --> src/tui/widgets/color.rs:51:18 [INFO] [stdout] | [INFO] [stdout] 51 | else if s.starts_with("rgb(") { [INFO] [stdout] | __________________^ [INFO] [stdout] 52 | | if let Some(color) = parse_rgb_color(&s) { [INFO] [stdout] 53 | | return color; [INFO] [stdout] 54 | | } [INFO] [stdout] 55 | | } [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 51 ~ else if s.starts_with("rgb(") [INFO] [stdout] 52 ~ && let Some(color) = parse_rgb_color(&s) { [INFO] [stdout] 53 | return color; [INFO] [stdout] 54 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert_with` to construct default value [INFO] [stdout] --> src/tui/widgets/task_list.rs:108:44 [INFO] [stdout] | [INFO] [stdout] 108 | tag_map.entry(tag).or_insert_with(Vec::new).push(task); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert_with` to construct default value [INFO] [stdout] --> src/tui/widgets/note_list.rs:80:44 [INFO] [stdout] | [INFO] [stdout] 80 | tag_map.entry(tag).or_insert_with(Vec::new).push(note); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert_with` to construct default value [INFO] [stdout] --> src/tui/widgets/journal_list.rs:84:44 [INFO] [stdout] | [INFO] [stdout] 84 | tag_map.entry(tag).or_insert_with(Vec::new).push(journal); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you should consider adding a `Default` implementation for `Editor` [INFO] [stdout] --> src/tui/widgets/editor.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | / pub fn new() -> Self { [INFO] [stdout] 27 | | Self { [INFO] [stdout] 28 | | lines: vec![String::new()], [INFO] [stdout] 29 | | cursor_line: 0, [INFO] [stdout] ... | [INFO] [stdout] 38 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stdout] = note: `#[warn(clippy::new_without_default)]` on by default [INFO] [stdout] help: try adding this [INFO] [stdout] | [INFO] [stdout] 25 + impl Default for Editor { [INFO] [stdout] 26 + fn default() -> Self { [INFO] [stdout] 27 + Self::new() [INFO] [stdout] 28 + } [INFO] [stdout] 29 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implementation of inherent method `to_string(&self) -> String` for type `tui::widgets::editor::Editor` [INFO] [stdout] --> src/tui/widgets/editor.rs:715:5 [INFO] [stdout] | [INFO] [stdout] 715 | / pub fn to_string(&self) -> String { [INFO] [stdout] 716 | | self.lines.join("\n") [INFO] [stdout] 717 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: implement trait `Display` for type `tui::widgets::editor::Editor` 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 `match` expression can be replaced with `?` [INFO] [stdout] --> src/tui/widgets/editor.rs:730:20 [INFO] [stdout] | [INFO] [stdout] 730 | let line = match self.lines.get(self.cursor_line) { [INFO] [stdout] | ____________________^ [INFO] [stdout] 731 | | Some(l) => l, [INFO] [stdout] 732 | | None => return None, [INFO] [stdout] 733 | | }; [INFO] [stdout] | |_________^ help: try instead: `self.lines.get(self.cursor_line)?` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#question_mark [INFO] [stdout] = note: `#[warn(clippy::question_mark)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `push_str()` using a single-character string literal [INFO] [stdout] --> src/tui/widgets/help.rs:62:5 [INFO] [stdout] | [INFO] [stdout] 62 | text.push_str("\n"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: consider using `push` with a character literal: `text.push('\n')` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_add_str [INFO] [stdout] = note: `#[warn(clippy::single_char_add_str)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `push_str()` using a single-character string literal [INFO] [stdout] --> src/tui/widgets/help.rs:84:5 [INFO] [stdout] | [INFO] [stdout] 84 | text.push_str("\n"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: consider using `push` with a character literal: `text.push('\n')` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_add_str [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `push_str()` using a single-character string literal [INFO] [stdout] --> src/tui/widgets/help.rs:101:5 [INFO] [stdout] | [INFO] [stdout] 101 | text.push_str("\n"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: consider using `push` with a character literal: `text.push('\n')` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_add_str [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/widgets/markdown_help.rs:94:5 [INFO] [stdout] | [INFO] [stdout] 94 | / if let Some(scrollbar_area) = example_scrollbar_area { [INFO] [stdout] 95 | | if scrollbar_area.width > 0 && example_content_area.height > 2 { [INFO] [stdout] 96 | | let scrollbar_inner_area = Rect::new( [INFO] [stdout] 97 | | scrollbar_area.x, [INFO] [stdout] ... | [INFO] [stdout] 114 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 94 ~ if let Some(scrollbar_area) = example_scrollbar_area [INFO] [stdout] 95 ~ && scrollbar_area.width > 0 && example_content_area.height > 2 { [INFO] [stdout] 96 | let scrollbar_inner_area = Rect::new( [INFO] [stdout] ... [INFO] [stdout] 112 | } [INFO] [stdout] 113 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/tui/events.rs:2156:18 [INFO] [stdout] | [INFO] [stdout] 2156 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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 `if` statement can be collapsed [INFO] [stdout] --> src/tui/widgets/markdown_help.rs:180:5 [INFO] [stdout] | [INFO] [stdout] 180 | / if let Some(scrollbar_area) = rendered_scrollbar_area { [INFO] [stdout] 181 | | if scrollbar_area.width > 0 && rendered_content_area.height > 2 { [INFO] [stdout] 182 | | let scrollbar_inner_area = Rect::new( [INFO] [stdout] 183 | | scrollbar_area.x, [INFO] [stdout] ... | [INFO] [stdout] 200 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 180 ~ if let Some(scrollbar_area) = rendered_scrollbar_area [INFO] [stdout] 181 ~ && scrollbar_area.width > 0 && rendered_content_area.height > 2 { [INFO] [stdout] 182 | let scrollbar_inner_area = Rect::new( [INFO] [stdout] ... [INFO] [stdout] 198 | } [INFO] [stdout] 199 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/tui/events.rs:2163:18 [INFO] [stdout] | [INFO] [stdout] 2163 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:2171:18 [INFO] [stdout] | [INFO] [stdout] 2171 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:2183:18 [INFO] [stdout] | [INFO] [stdout] 2183 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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 `if` statement can be collapsed [INFO] [stdout] --> src/tui/events.rs:2200:29 [INFO] [stdout] | [INFO] [stdout] 2200 | / ... if let Some(theme_name) = themes.get(app.settings.theme_index) { [INFO] [stdout] 2201 | | ... if let Err(e) = app.select_theme(theme_name) { [INFO] [stdout] 2202 | | ... app.set_status_message(format!("Failed to change theme: {}", e)); [INFO] [stdout] 2203 | | ... } [INFO] [stdout] 2204 | | ... } [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 2200 ~ if let Some(theme_name) = themes.get(app.settings.theme_index) [INFO] [stdout] 2201 ~ && let Err(e) = app.select_theme(theme_name) { [INFO] [stdout] 2202 | app.set_status_message(format!("Failed to change theme: {}", e)); [INFO] [stdout] 2203 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/events.rs:2215:28 [INFO] [stdout] | [INFO] [stdout] 2215 | } else if category == "Content Settings" { [INFO] [stdout] | ____________________________^ [INFO] [stdout] 2216 | | if let Err(e) = app.apply_content_display() { [INFO] [stdout] 2217 | | app.set_status_message(format!("Failed to change content display: {}", e)); [INFO] [stdout] 2218 | | } [INFO] [stdout] 2219 | | } [INFO] [stdout] | |_____________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 2215 ~ } else if category == "Content Settings" [INFO] [stdout] 2216 ~ && let Err(e) = app.apply_content_display() { [INFO] [stdout] 2217 | app.set_status_message(format!("Failed to change content display: {}", e)); [INFO] [stdout] 2218 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/tui/events.rs:2230:18 [INFO] [stdout] | [INFO] [stdout] 2230 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:2239:18 [INFO] [stdout] | [INFO] [stdout] 2239 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:2248:18 [INFO] [stdout] | [INFO] [stdout] 2248 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:2262:18 [INFO] [stdout] | [INFO] [stdout] 2262 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:2278:18 [INFO] [stdout] | [INFO] [stdout] 2278 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:2291:18 [INFO] [stdout] | [INFO] [stdout] 2291 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:2299:18 [INFO] [stdout] | [INFO] [stdout] 2299 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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/tui/events.rs:2307:18 [INFO] [stdout] | [INFO] [stdout] 2307 | .map_err(|e| TuiError::KeyBindingError(e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `TuiError::KeyBindingError` [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: doc list item without indentation [INFO] [stdout] --> src/tui/widgets/color.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 20 | /// Returns Color::White as default for unrecognized colors [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: if this is supposed to be its own paragraph, add a blank line [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation [INFO] [stdout] = note: `#[warn(clippy::doc_lazy_continuation)]` on by default [INFO] [stdout] help: indent this line [INFO] [stdout] | [INFO] [stdout] 20 | /// Returns Color::White as default for unrecognized colors [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/widgets/color.rs:51:18 [INFO] [stdout] | [INFO] [stdout] 51 | else if s.starts_with("rgb(") { [INFO] [stdout] | __________________^ [INFO] [stdout] 52 | | if let Some(color) = parse_rgb_color(&s) { [INFO] [stdout] 53 | | return color; [INFO] [stdout] 54 | | } [INFO] [stdout] 55 | | } [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 51 ~ else if s.starts_with("rgb(") [INFO] [stdout] 52 ~ && let Some(color) = parse_rgb_color(&s) { [INFO] [stdout] 53 | return color; [INFO] [stdout] 54 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert_with` to construct default value [INFO] [stdout] --> src/tui/widgets/task_list.rs:108:44 [INFO] [stdout] | [INFO] [stdout] 108 | tag_map.entry(tag).or_insert_with(Vec::new).push(task); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert_with` to construct default value [INFO] [stdout] --> src/tui/widgets/note_list.rs:80:44 [INFO] [stdout] | [INFO] [stdout] 80 | tag_map.entry(tag).or_insert_with(Vec::new).push(note); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert_with` to construct default value [INFO] [stdout] --> src/tui/widgets/journal_list.rs:84:44 [INFO] [stdout] | [INFO] [stdout] 84 | tag_map.entry(tag).or_insert_with(Vec::new).push(journal); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you should consider adding a `Default` implementation for `Editor` [INFO] [stdout] --> src/tui/widgets/editor.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | / pub fn new() -> Self { [INFO] [stdout] 27 | | Self { [INFO] [stdout] 28 | | lines: vec![String::new()], [INFO] [stdout] 29 | | cursor_line: 0, [INFO] [stdout] ... | [INFO] [stdout] 38 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stdout] = note: `#[warn(clippy::new_without_default)]` on by default [INFO] [stdout] help: try adding this [INFO] [stdout] | [INFO] [stdout] 25 + impl Default for Editor { [INFO] [stdout] 26 + fn default() -> Self { [INFO] [stdout] 27 + Self::new() [INFO] [stdout] 28 + } [INFO] [stdout] 29 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implementation of inherent method `to_string(&self) -> String` for type `tui::widgets::editor::Editor` [INFO] [stdout] --> src/tui/widgets/editor.rs:715:5 [INFO] [stdout] | [INFO] [stdout] 715 | / pub fn to_string(&self) -> String { [INFO] [stdout] 716 | | self.lines.join("\n") [INFO] [stdout] 717 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: implement trait `Display` for type `tui::widgets::editor::Editor` 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 `if` statement can be collapsed [INFO] [stdout] --> src/tui/widgets/form.rs:100:13 [INFO] [stdout] | [INFO] [stdout] 100 | / if idx + 1 >= wrapped_lines.len() || wrapped_lines[idx + 1].logical_line != cursor_logical_line { [INFO] [stdout] 101 | | if cursor_col >= wrapped.char_offset { [INFO] [stdout] 102 | | return idx; [INFO] [stdout] 103 | | } [INFO] [stdout] 104 | | } [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 100 ~ if (idx + 1 >= wrapped_lines.len() || wrapped_lines[idx + 1].logical_line != cursor_logical_line) { [INFO] [stdout] 101 ~ && cursor_col >= wrapped.char_offset { [INFO] [stdout] 102 | return idx; [INFO] [stdout] 103 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `match` expression can be replaced with `?` [INFO] [stdout] --> src/tui/widgets/editor.rs:730:20 [INFO] [stdout] | [INFO] [stdout] 730 | let line = match self.lines.get(self.cursor_line) { [INFO] [stdout] | ____________________^ [INFO] [stdout] 731 | | Some(l) => l, [INFO] [stdout] 732 | | None => return None, [INFO] [stdout] 733 | | }; [INFO] [stdout] | |_________^ help: try instead: `self.lines.get(self.cursor_line)?` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#question_mark [INFO] [stdout] = note: `#[warn(clippy::question_mark)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/widgets/form.rs:456:5 [INFO] [stdout] | [INFO] [stdout] 456 | / if let Some(v_scrollbar_area) = vertical_scrollbar_area { [INFO] [stdout] 457 | | if v_scrollbar_area.width > 0 && desc_area.height > 2 { [INFO] [stdout] 458 | | let scrollbar_inner_area = Rect::new( [INFO] [stdout] 459 | | v_scrollbar_area.x, [INFO] [stdout] ... | [INFO] [stdout] 476 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 456 ~ if let Some(v_scrollbar_area) = vertical_scrollbar_area [INFO] [stdout] 457 ~ && v_scrollbar_area.width > 0 && desc_area.height > 2 { [INFO] [stdout] 458 | let scrollbar_inner_area = Rect::new( [INFO] [stdout] ... [INFO] [stdout] 474 | } [INFO] [stdout] 475 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `push_str()` using a single-character string literal [INFO] [stdout] --> src/tui/widgets/help.rs:62:5 [INFO] [stdout] | [INFO] [stdout] 62 | text.push_str("\n"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: consider using `push` with a character literal: `text.push('\n')` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_add_str [INFO] [stdout] = note: `#[warn(clippy::single_char_add_str)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `push_str()` using a single-character string literal [INFO] [stdout] --> src/tui/widgets/help.rs:84:5 [INFO] [stdout] | [INFO] [stdout] 84 | text.push_str("\n"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: consider using `push` with a character literal: `text.push('\n')` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_add_str [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/widgets/form.rs:619:5 [INFO] [stdout] | [INFO] [stdout] 619 | / if let Some(v_scrollbar_area) = vertical_scrollbar_area { [INFO] [stdout] 620 | | if v_scrollbar_area.width > 0 && content_area.height > 2 { [INFO] [stdout] 621 | | let scrollbar_inner_area = Rect::new( [INFO] [stdout] 622 | | v_scrollbar_area.x, [INFO] [stdout] ... | [INFO] [stdout] 639 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 619 ~ if let Some(v_scrollbar_area) = vertical_scrollbar_area [INFO] [stdout] 620 ~ && v_scrollbar_area.width > 0 && content_area.height > 2 { [INFO] [stdout] 621 | let scrollbar_inner_area = Rect::new( [INFO] [stdout] ... [INFO] [stdout] 637 | } [INFO] [stdout] 638 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `push_str()` using a single-character string literal [INFO] [stdout] --> src/tui/widgets/help.rs:101:5 [INFO] [stdout] | [INFO] [stdout] 101 | text.push_str("\n"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: consider using `push` with a character literal: `text.push('\n')` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_add_str [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/widgets/markdown_help.rs:94:5 [INFO] [stdout] | [INFO] [stdout] 94 | / if let Some(scrollbar_area) = example_scrollbar_area { [INFO] [stdout] 95 | | if scrollbar_area.width > 0 && example_content_area.height > 2 { [INFO] [stdout] 96 | | let scrollbar_inner_area = Rect::new( [INFO] [stdout] 97 | | scrollbar_area.x, [INFO] [stdout] ... | [INFO] [stdout] 114 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 94 ~ if let Some(scrollbar_area) = example_scrollbar_area [INFO] [stdout] 95 ~ && scrollbar_area.width > 0 && example_content_area.height > 2 { [INFO] [stdout] 96 | let scrollbar_inner_area = Rect::new( [INFO] [stdout] ... [INFO] [stdout] 112 | } [INFO] [stdout] 113 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/widgets/form.rs:761:5 [INFO] [stdout] | [INFO] [stdout] 761 | / if let Some(v_scrollbar_area) = vertical_scrollbar_area { [INFO] [stdout] 762 | | if v_scrollbar_area.width > 0 && content_area.height > 2 { [INFO] [stdout] 763 | | let scrollbar_inner_area = Rect::new( [INFO] [stdout] 764 | | v_scrollbar_area.x, [INFO] [stdout] ... | [INFO] [stdout] 781 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 761 ~ if let Some(v_scrollbar_area) = vertical_scrollbar_area [INFO] [stdout] 762 ~ && v_scrollbar_area.width > 0 && content_area.height > 2 { [INFO] [stdout] 763 | let scrollbar_inner_area = Rect::new( [INFO] [stdout] ... [INFO] [stdout] 779 | } [INFO] [stdout] 780 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/widgets/markdown_help.rs:180:5 [INFO] [stdout] | [INFO] [stdout] 180 | / if let Some(scrollbar_area) = rendered_scrollbar_area { [INFO] [stdout] 181 | | if scrollbar_area.width > 0 && rendered_content_area.height > 2 { [INFO] [stdout] 182 | | let scrollbar_inner_area = Rect::new( [INFO] [stdout] 183 | | scrollbar_area.x, [INFO] [stdout] ... | [INFO] [stdout] 200 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 180 ~ if let Some(scrollbar_area) = rendered_scrollbar_area [INFO] [stdout] 181 ~ && scrollbar_area.width > 0 && rendered_content_area.height > 2 { [INFO] [stdout] 182 | let scrollbar_inner_area = Rect::new( [INFO] [stdout] ... [INFO] [stdout] 198 | } [INFO] [stdout] 199 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/widgets/form.rs:100:13 [INFO] [stdout] | [INFO] [stdout] 100 | / if idx + 1 >= wrapped_lines.len() || wrapped_lines[idx + 1].logical_line != cursor_logical_line { [INFO] [stdout] 101 | | if cursor_col >= wrapped.char_offset { [INFO] [stdout] 102 | | return idx; [INFO] [stdout] 103 | | } [INFO] [stdout] 104 | | } [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 100 ~ if (idx + 1 >= wrapped_lines.len() || wrapped_lines[idx + 1].logical_line != cursor_logical_line) { [INFO] [stdout] 101 ~ && cursor_col >= wrapped.char_offset { [INFO] [stdout] 102 | return idx; [INFO] [stdout] 103 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `ListState` which implements the `Copy` trait [INFO] [stdout] --> src/tui/widgets/settings_view.rs:136:37 [INFO] [stdout] | [INFO] [stdout] 136 | let mut categories_list_state = app.settings.list_state.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `app.settings.list_state` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `(5 + 4 + 2 + 2).min(available_height as usize)` is never smaller than `0` and has therefore no effect [INFO] [stdout] --> src/tui/widgets/settings_view.rs:186:31 [INFO] [stdout] | [INFO] [stdout] 186 | let color_editor_height = (5 + 4 + 2 + 2).min(available_height as usize).max(0) as u16; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `(5 + 4 + 2 + 2).min(available_height as usize)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_min_or_max [INFO] [stdout] = note: `#[warn(clippy::unnecessary_min_or_max)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `ListState` which implements the `Copy` trait [INFO] [stdout] --> src/tui/widgets/settings_view.rs:219:26 [INFO] [stdout] | [INFO] [stdout] 219 | let mut list_state = app.settings.theme_list_state.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `app.settings.theme_list_state` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/widgets/form.rs:456:5 [INFO] [stdout] | [INFO] [stdout] 456 | / if let Some(v_scrollbar_area) = vertical_scrollbar_area { [INFO] [stdout] 457 | | if v_scrollbar_area.width > 0 && desc_area.height > 2 { [INFO] [stdout] 458 | | let scrollbar_inner_area = Rect::new( [INFO] [stdout] 459 | | v_scrollbar_area.x, [INFO] [stdout] ... | [INFO] [stdout] 476 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 456 ~ if let Some(v_scrollbar_area) = vertical_scrollbar_area [INFO] [stdout] 457 ~ && v_scrollbar_area.width > 0 && desc_area.height > 2 { [INFO] [stdout] 458 | let scrollbar_inner_area = Rect::new( [INFO] [stdout] ... [INFO] [stdout] 474 | } [INFO] [stdout] 475 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/widgets/form.rs:619:5 [INFO] [stdout] | [INFO] [stdout] 619 | / if let Some(v_scrollbar_area) = vertical_scrollbar_area { [INFO] [stdout] 620 | | if v_scrollbar_area.width > 0 && content_area.height > 2 { [INFO] [stdout] 621 | | let scrollbar_inner_area = Rect::new( [INFO] [stdout] 622 | | v_scrollbar_area.x, [INFO] [stdout] ... | [INFO] [stdout] 639 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 619 ~ if let Some(v_scrollbar_area) = vertical_scrollbar_area [INFO] [stdout] 620 ~ && v_scrollbar_area.width > 0 && content_area.height > 2 { [INFO] [stdout] 621 | let scrollbar_inner_area = Rect::new( [INFO] [stdout] ... [INFO] [stdout] 637 | } [INFO] [stdout] 638 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/widgets/settings_view.rs:467:5 [INFO] [stdout] | [INFO] [stdout] 467 | / if let Some(ref error) = app.settings.color_input_error { [INFO] [stdout] 468 | | if fields_layout.len() > 5 { [INFO] [stdout] 469 | | let error_area = fields_layout[5]; [INFO] [stdout] 470 | | let error_para = Paragraph::new(error.as_str()) [INFO] [stdout] ... | [INFO] [stdout] 474 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 467 ~ if let Some(ref error) = app.settings.color_input_error [INFO] [stdout] 468 ~ && fields_layout.len() > 5 { [INFO] [stdout] 469 | let error_area = fields_layout[5]; [INFO] [stdout] ... [INFO] [stdout] 472 | f.render_widget(error_para, error_area); [INFO] [stdout] 473 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this function has too many arguments (8/7) [INFO] [stdout] --> src/tui/widgets/settings_view.rs:530:1 [INFO] [stdout] | [INFO] [stdout] 530 | / fn render_color_field( [INFO] [stdout] 531 | | f: &mut Frame, [INFO] [stdout] 532 | | area: Rect, [INFO] [stdout] 533 | | app: &App, [INFO] [stdout] ... | [INFO] [stdout] 538 | | highlight_bg: ratatui::style::Color, [INFO] [stdout] 539 | | ) { [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stdout] = note: `#[warn(clippy::too_many_arguments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this function has too many arguments (10/7) [INFO] [stdout] --> src/tui/widgets/settings_view.rs:572:1 [INFO] [stdout] | [INFO] [stdout] 572 | / fn render_color_field_value( [INFO] [stdout] 573 | | f: &mut Frame, [INFO] [stdout] 574 | | area: Rect, [INFO] [stdout] 575 | | field_name: &str, [INFO] [stdout] ... | [INFO] [stdout] 582 | | highlight_bg: ratatui::style::Color, [INFO] [stdout] 583 | | ) { [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/widgets/form.rs:761:5 [INFO] [stdout] | [INFO] [stdout] 761 | / if let Some(v_scrollbar_area) = vertical_scrollbar_area { [INFO] [stdout] 762 | | if v_scrollbar_area.width > 0 && content_area.height > 2 { [INFO] [stdout] 763 | | let scrollbar_inner_area = Rect::new( [INFO] [stdout] 764 | | v_scrollbar_area.x, [INFO] [stdout] ... | [INFO] [stdout] 781 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 761 ~ if let Some(v_scrollbar_area) = vertical_scrollbar_area [INFO] [stdout] 762 ~ && v_scrollbar_area.width > 0 && content_area.height > 2 { [INFO] [stdout] 763 | let scrollbar_inner_area = Rect::new( [INFO] [stdout] ... [INFO] [stdout] 779 | } [INFO] [stdout] 780 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this function has too many arguments (8/7) [INFO] [stdout] --> src/tui/widgets/filter_modal.rs:65:1 [INFO] [stdout] | [INFO] [stdout] 65 | / fn render_filter_fields( [INFO] [stdout] 66 | | f: &mut Frame, [INFO] [stdout] 67 | | area: Rect, [INFO] [stdout] 68 | | app: &App, [INFO] [stdout] ... | [INFO] [stdout] 73 | | highlight_bg: ratatui::style::Color, [INFO] [stdout] 74 | | ) { [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this function has too many arguments (8/7) [INFO] [stdout] --> src/tui/widgets/filter_modal.rs:241:1 [INFO] [stdout] | [INFO] [stdout] 241 | / fn render_filter_buttons( [INFO] [stdout] 242 | | f: &mut Frame, [INFO] [stdout] 243 | | area: Rect, [INFO] [stdout] 244 | | _app: &App, [INFO] [stdout] ... | [INFO] [stdout] 249 | | highlight_bg: ratatui::style::Color, [INFO] [stdout] 250 | | ) { [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `ListState` which implements the `Copy` trait [INFO] [stdout] --> src/tui/widgets/settings_view.rs:136:37 [INFO] [stdout] | [INFO] [stdout] 136 | let mut categories_list_state = app.settings.list_state.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `app.settings.list_state` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `(5 + 4 + 2 + 2).min(available_height as usize)` is never smaller than `0` and has therefore no effect [INFO] [stdout] --> src/tui/widgets/settings_view.rs:186:31 [INFO] [stdout] | [INFO] [stdout] 186 | let color_editor_height = (5 + 4 + 2 + 2).min(available_height as usize).max(0) as u16; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `(5 + 4 + 2 + 2).min(available_height as usize)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_min_or_max [INFO] [stdout] = note: `#[warn(clippy::unnecessary_min_or_max)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `ListState` which implements the `Copy` trait [INFO] [stdout] --> src/tui/widgets/settings_view.rs:219:26 [INFO] [stdout] | [INFO] [stdout] 219 | let mut list_state = app.settings.theme_list_state.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `app.settings.theme_list_state` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `ListState` which implements the `Copy` trait [INFO] [stdout] --> src/tui/widgets/notebook_modal.rs:81:30 [INFO] [stdout] | [INFO] [stdout] 81 | let mut list_state = state.list_state.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `state.list_state` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/widgets/notebook_modal.rs:155:9 [INFO] [stdout] | [INFO] [stdout] 155 | / if matches!(state.mode, NotebookModalMode::Add | NotebookModalMode::Rename) { [INFO] [stdout] 156 | | if let Some(line_idx) = name_editor_line_index { [INFO] [stdout] ... | [INFO] [stdout] 193 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 155 ~ if matches!(state.mode, NotebookModalMode::Add | NotebookModalMode::Rename) [INFO] [stdout] 156 ~ && let Some(line_idx) = name_editor_line_index { [INFO] [stdout] 157 | // Calculate cursor position [INFO] [stdout] ... [INFO] [stdout] 191 | } [INFO] [stdout] 192 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/widgets/settings_view.rs:467:5 [INFO] [stdout] | [INFO] [stdout] 467 | / if let Some(ref error) = app.settings.color_input_error { [INFO] [stdout] 468 | | if fields_layout.len() > 5 { [INFO] [stdout] 469 | | let error_area = fields_layout[5]; [INFO] [stdout] 470 | | let error_para = Paragraph::new(error.as_str()) [INFO] [stdout] ... | [INFO] [stdout] 474 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 467 ~ if let Some(ref error) = app.settings.color_input_error [INFO] [stdout] 468 ~ && fields_layout.len() > 5 { [INFO] [stdout] 469 | let error_area = fields_layout[5]; [INFO] [stdout] ... [INFO] [stdout] 472 | f.render_widget(error_para, error_area); [INFO] [stdout] 473 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/tui/widgets/confirm_delete.rs:53:19 [INFO] [stdout] | [INFO] [stdout] 53 | let options = vec!["Archive", "Delete", "Cancel"]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: you can use an array directly: `["Archive", "Delete", "Cancel"]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] = note: `#[warn(clippy::useless_vec)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/tui/widgets/settings_view.rs:290:24 [INFO] [stdout] | [INFO] [stdout] 290 | let mode_options = vec!["Simple", "TwoLine", "GroupedByTags"]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: you can use an array directly: `["Simple", "TwoLine", "GroupedByTags"]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/tui/widgets/filter_modal.rs:144:28 [INFO] [stdout] | [INFO] [stdout] 144 | let archived_options = vec!["Active", "Archived", "All"]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: you can use an array directly: `["Active", "Archived", "All"]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/tui/widgets/filter_modal.rs:177:30 [INFO] [stdout] | [INFO] [stdout] 177 | let status_options = vec!["Todo", "Done", "All"]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: you can use an array directly: `["Todo", "Done", "All"]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/tui/widgets/filter_modal.rs:211:25 [INFO] [stdout] | [INFO] [stdout] 211 | let logic_options = vec!["AND", "OR"]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: you can use an array directly: `["AND", "OR"]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/tui/widgets/filter_modal.rs:251:19 [INFO] [stdout] | [INFO] [stdout] 251 | let buttons = vec!["Apply", "Clear", "Cancel"]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: you can use an array directly: `["Apply", "Clear", "Cancel"]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/tui/widgets/unsaved_changes_modal.rs:37:19 [INFO] [stdout] | [INFO] [stdout] 37 | let options = vec!["Discard Changes", "Save Changes"]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: you can use an array directly: `["Discard Changes", "Save Changes"]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this function has too many arguments (8/7) [INFO] [stdout] --> src/tui/widgets/settings_view.rs:530:1 [INFO] [stdout] | [INFO] [stdout] 530 | / fn render_color_field( [INFO] [stdout] 531 | | f: &mut Frame, [INFO] [stdout] 532 | | area: Rect, [INFO] [stdout] 533 | | app: &App, [INFO] [stdout] ... | [INFO] [stdout] 538 | | highlight_bg: ratatui::style::Color, [INFO] [stdout] 539 | | ) { [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stdout] = note: `#[warn(clippy::too_many_arguments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this function has too many arguments (10/7) [INFO] [stdout] --> src/tui/widgets/settings_view.rs:572:1 [INFO] [stdout] | [INFO] [stdout] 572 | / fn render_color_field_value( [INFO] [stdout] 573 | | f: &mut Frame, [INFO] [stdout] 574 | | area: Rect, [INFO] [stdout] 575 | | field_name: &str, [INFO] [stdout] ... | [INFO] [stdout] 582 | | highlight_bg: ratatui::style::Color, [INFO] [stdout] 583 | | ) { [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this function has too many arguments (8/7) [INFO] [stdout] --> src/tui/widgets/filter_modal.rs:65:1 [INFO] [stdout] | [INFO] [stdout] 65 | / fn render_filter_fields( [INFO] [stdout] 66 | | f: &mut Frame, [INFO] [stdout] 67 | | area: Rect, [INFO] [stdout] 68 | | app: &App, [INFO] [stdout] ... | [INFO] [stdout] 73 | | highlight_bg: ratatui::style::Color, [INFO] [stdout] 74 | | ) { [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this function has too many arguments (8/7) [INFO] [stdout] --> src/tui/widgets/filter_modal.rs:241:1 [INFO] [stdout] | [INFO] [stdout] 241 | / fn render_filter_buttons( [INFO] [stdout] 242 | | f: &mut Frame, [INFO] [stdout] 243 | | area: Rect, [INFO] [stdout] 244 | | _app: &App, [INFO] [stdout] ... | [INFO] [stdout] 249 | | highlight_bg: ratatui::style::Color, [INFO] [stdout] 250 | | ) { [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `ListState` which implements the `Copy` trait [INFO] [stdout] --> src/tui/widgets/notebook_modal.rs:81:30 [INFO] [stdout] | [INFO] [stdout] 81 | let mut list_state = state.list_state.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `state.list_state` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/tui/widgets/notebook_modal.rs:155:9 [INFO] [stdout] | [INFO] [stdout] 155 | / if matches!(state.mode, NotebookModalMode::Add | NotebookModalMode::Rename) { [INFO] [stdout] 156 | | if let Some(line_idx) = name_editor_line_index { [INFO] [stdout] ... | [INFO] [stdout] 193 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 155 ~ if matches!(state.mode, NotebookModalMode::Add | NotebookModalMode::Rename) [INFO] [stdout] 156 ~ && let Some(line_idx) = name_editor_line_index { [INFO] [stdout] 157 | // Calculate cursor position [INFO] [stdout] ... [INFO] [stdout] 191 | } [INFO] [stdout] 192 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/tui/widgets/confirm_delete.rs:53:19 [INFO] [stdout] | [INFO] [stdout] 53 | let options = vec!["Archive", "Delete", "Cancel"]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: you can use an array directly: `["Archive", "Delete", "Cancel"]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] = note: `#[warn(clippy::useless_vec)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/tui/widgets/settings_view.rs:290:24 [INFO] [stdout] | [INFO] [stdout] 290 | let mode_options = vec!["Simple", "TwoLine", "GroupedByTags"]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: you can use an array directly: `["Simple", "TwoLine", "GroupedByTags"]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/tui/widgets/filter_modal.rs:144:28 [INFO] [stdout] | [INFO] [stdout] 144 | let archived_options = vec!["Active", "Archived", "All"]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: you can use an array directly: `["Active", "Archived", "All"]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/tui/widgets/filter_modal.rs:177:30 [INFO] [stdout] | [INFO] [stdout] 177 | let status_options = vec!["Todo", "Done", "All"]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: you can use an array directly: `["Todo", "Done", "All"]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/tui/widgets/filter_modal.rs:211:25 [INFO] [stdout] | [INFO] [stdout] 211 | let logic_options = vec!["AND", "OR"]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: you can use an array directly: `["AND", "OR"]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/tui/widgets/filter_modal.rs:251:19 [INFO] [stdout] | [INFO] [stdout] 251 | let buttons = vec!["Apply", "Clear", "Cancel"]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: you can use an array directly: `["Apply", "Clear", "Cancel"]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `vec!` [INFO] [stdout] --> src/tui/widgets/unsaved_changes_modal.rs:37:19 [INFO] [stdout] | [INFO] [stdout] 37 | let options = vec!["Discard Changes", "Save Changes"]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: you can use an array directly: `["Discard Changes", "Save Changes"]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 57.69s [INFO] running `Command { std: "docker" "inspect" "1d6b05d0f67e550c55e0fa18c33e6ed2388d4af1b4f6ccc017758bfb82480a28", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1d6b05d0f67e550c55e0fa18c33e6ed2388d4af1b4f6ccc017758bfb82480a28", kill_on_drop: false }` [INFO] [stdout] 1d6b05d0f67e550c55e0fa18c33e6ed2388d4af1b4f6ccc017758bfb82480a28