[INFO] cloning repository https://github.com/word-sys/puls [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/word-sys/puls" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fword-sys%2Fpuls", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fword-sys%2Fpuls'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 0e6931dd1628bf08a18591fac0067ca8fd395c2d [INFO] checking word-sys/puls against master#61cc47e367d7be91e13bcd01e4e96e0e233d4f6d for pr-133502-20 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fword-sys%2Fpuls" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/word-sys/puls [INFO] finished tweaking git repo https://github.com/word-sys/puls [INFO] tweaked toml for git repo https://github.com/word-sys/puls written to /workspace/builds/worker-6-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/word-sys/puls on toolchain 61cc47e367d7be91e13bcd01e4e96e0e233d4f6d [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+61cc47e367d7be91e13bcd01e4e96e0e233d4f6d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/word-sys/puls 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" "+61cc47e367d7be91e13bcd01e4e96e0e233d4f6d" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded windows-interface v0.57.0 [INFO] [stderr] Downloaded windows-implement v0.57.0 [INFO] [stderr] Downloaded stability v0.2.1 [INFO] [stderr] Downloaded hyper-named-pipe v0.1.0 [INFO] [stderr] Downloaded hyperlocal v0.9.1 [INFO] [stderr] Downloaded users v0.11.0 [INFO] [stderr] Downloaded windows-core v0.57.0 [INFO] [stderr] Downloaded schemars v0.9.0 [INFO] [stderr] Downloaded jiff-static v0.2.15 [INFO] [stderr] Downloaded cc v1.2.31 [INFO] [stderr] Downloaded sysinfo v0.31.4 [INFO] [stderr] Downloaded bollard v0.17.1 [INFO] [stderr] Downloaded io-uring v0.7.9 [INFO] [stderr] Downloaded serde_json v1.0.142 [INFO] [stderr] Downloaded serde_with v3.14.0 [INFO] [stderr] Downloaded clap_builder v4.5.43 [INFO] [stderr] Downloaded bollard-stubs v1.45.0-rc.26.0.1 [INFO] [stderr] Downloaded clap v4.5.43 [INFO] [stderr] Downloaded compact_str v0.7.1 [INFO] [stderr] Downloaded jiff v0.2.15 [INFO] [stderr] Downloaded ratatui v0.26.3 [INFO] [stderr] Downloaded windows v0.57.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+61cc47e367d7be91e13bcd01e4e96e0e233d4f6d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] cdb858178f6b9ca0070acc2bf9db12ea2815044bea02a56027f3aabc4fd16067 [INFO] running `Command { std: "docker" "start" "-a" "cdb858178f6b9ca0070acc2bf9db12ea2815044bea02a56027f3aabc4fd16067", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "cdb858178f6b9ca0070acc2bf9db12ea2815044bea02a56027f3aabc4fd16067", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "cdb858178f6b9ca0070acc2bf9db12ea2815044bea02a56027f3aabc4fd16067", kill_on_drop: false }` [INFO] [stdout] cdb858178f6b9ca0070acc2bf9db12ea2815044bea02a56027f3aabc4fd16067 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+61cc47e367d7be91e13bcd01e4e96e0e233d4f6d" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 2386cce49495bc7d3ca88638383fd56434ed327ee31e9b350c2cf096389e14b7 [INFO] running `Command { std: "docker" "start" "-a" "2386cce49495bc7d3ca88638383fd56434ed327ee31e9b350c2cf096389e14b7", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.95 [INFO] [stderr] Compiling libc v0.2.174 [INFO] [stderr] Checking smallvec v1.15.1 [INFO] [stderr] Checking cfg-if v1.0.1 [INFO] [stderr] Compiling parking_lot_core v0.9.11 [INFO] [stderr] Checking litemap v0.8.0 [INFO] [stderr] Checking memchr v2.7.5 [INFO] [stderr] Compiling serde v1.0.219 [INFO] [stderr] Compiling lock_api v0.4.13 [INFO] [stderr] Compiling crossbeam-utils v0.8.21 [INFO] [stderr] Checking writeable v0.6.1 [INFO] [stderr] Compiling icu_normalizer_data v2.0.0 [INFO] [stderr] Compiling rustversion v1.0.21 [INFO] [stderr] Compiling icu_properties_data v2.0.1 [INFO] [stderr] Compiling signal-hook v0.3.18 [INFO] [stderr] Checking either v1.15.0 [INFO] [stderr] Checking bitflags v2.9.1 [INFO] [stderr] Checking anstyle-parse v0.2.7 [INFO] [stderr] Checking tracing-core v0.1.34 [INFO] [stderr] Checking futures-channel v0.3.31 [INFO] [stderr] Checking atomic-waker v1.1.2 [INFO] [stderr] Checking colorchoice v1.0.4 [INFO] [stderr] Compiling rayon-core v1.12.1 [INFO] [stderr] Checking slab v0.4.10 [INFO] [stderr] Checking anstyle-query v1.1.4 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Checking percent-encoding v2.3.1 [INFO] [stderr] Checking regex-syntax v0.8.5 [INFO] [stderr] Checking anstyle v1.0.11 [INFO] [stderr] Checking foldhash v0.1.5 [INFO] [stderr] Compiling serde_json v1.0.142 [INFO] [stderr] Compiling paste v1.0.15 [INFO] [stderr] Compiling rustix v0.38.44 [INFO] [stderr] Checking itertools v0.13.0 [INFO] [stderr] Checking hashbrown v0.15.4 [INFO] [stderr] Checking libloading v0.8.8 [INFO] [stderr] Checking anstream v0.6.20 [INFO] [stderr] Checking unicode-width v0.1.14 [INFO] [stderr] Checking aho-corasick v1.1.3 [INFO] [stderr] Checking form_urlencoded v1.2.1 [INFO] [stderr] Checking tracing v0.1.41 [INFO] [stderr] Checking unicode-segmentation v1.12.0 [INFO] [stderr] Compiling anyhow v1.0.99 [INFO] [stderr] Checking clap_lex v0.7.5 [INFO] [stderr] Checking linux-raw-sys v0.4.15 [INFO] [stderr] Checking nvml-wrapper-sys v0.8.0 [INFO] [stderr] Checking itertools v0.12.1 [INFO] [stderr] Compiling quote v1.0.40 [INFO] [stderr] Checking lru v0.12.5 [INFO] [stderr] Checking jiff v0.2.15 [INFO] [stderr] Checking crossbeam-epoch v0.9.18 [INFO] [stderr] Checking cassowary v0.3.0 [INFO] [stderr] Compiling syn v2.0.104 [INFO] [stderr] Checking clap_builder v4.5.43 [INFO] [stderr] Checking crossbeam-deque v0.8.6 [INFO] [stderr] Checking iana-time-zone v0.1.63 [INFO] [stderr] Checking hashbrown v0.14.5 [INFO] [stderr] Checking signal-hook-registry v1.4.6 [INFO] [stderr] Checking mio v1.0.4 [INFO] [stderr] Checking socket2 v0.6.0 [INFO] [stderr] Checking mio v0.8.11 [INFO] [stderr] Checking castaway v0.2.4 [INFO] [stderr] Checking compact_str v0.7.1 [INFO] [stderr] Checking parking_lot v0.12.4 [INFO] [stderr] Checking users v0.11.0 [INFO] [stderr] Checking atty v0.2.14 [INFO] [stderr] Checking regex-automata v0.4.9 [INFO] [stderr] Checking signal-hook-mio v0.2.4 [INFO] [stderr] Checking rayon v1.10.0 [INFO] [stderr] Checking crossterm v0.27.0 [INFO] [stderr] Checking crossterm v0.28.1 [INFO] [stderr] Checking dashmap v6.1.0 [INFO] [stderr] Checking unicode-truncate v1.1.0 [INFO] [stderr] Checking regex v1.11.1 [INFO] [stderr] Checking env_filter v0.1.3 [INFO] [stderr] Checking env_logger v0.11.8 [INFO] [stderr] Checking sysinfo v0.31.4 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Compiling darling_core v0.20.11 [INFO] [stderr] Compiling zerofrom-derive v0.1.6 [INFO] [stderr] Compiling yoke-derive v0.8.0 [INFO] [stderr] Compiling zerovec-derive v0.11.1 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Compiling serde_derive v1.0.219 [INFO] [stderr] Compiling tokio-macros v2.5.0 [INFO] [stderr] Compiling futures-macro v0.3.31 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling serde_repr v0.1.20 [INFO] [stderr] Compiling strum_macros v0.26.4 [INFO] [stderr] Compiling clap_derive v4.5.41 [INFO] [stderr] Compiling stability v0.2.1 [INFO] [stderr] Checking futures-util v0.3.31 [INFO] [stderr] Checking tokio v1.47.1 [INFO] [stderr] Checking zerofrom v0.1.6 [INFO] [stderr] Checking yoke v0.8.0 [INFO] [stderr] Checking zerovec v0.11.4 [INFO] [stderr] Checking zerotrie v0.2.2 [INFO] [stderr] Compiling darling_macro v0.20.11 [INFO] [stderr] Compiling darling v0.20.11 [INFO] [stderr] Compiling wrapcenum-derive v0.4.1 [INFO] [stderr] Checking strum v0.26.3 [INFO] [stderr] Checking ratatui v0.26.3 [INFO] [stderr] Checking tinystr v0.8.1 [INFO] [stderr] Checking potential_utf v0.1.2 [INFO] [stderr] Checking clap v4.5.43 [INFO] [stderr] Checking nvml-wrapper v0.10.0 [INFO] [stderr] Checking icu_collections v2.0.0 [INFO] [stderr] Checking icu_locale_core v2.0.0 [INFO] [stderr] Checking icu_provider v2.0.0 [INFO] [stderr] Checking icu_normalizer v2.0.0 [INFO] [stderr] Checking icu_properties v2.0.1 [INFO] [stderr] Checking hyper v1.7.0 [INFO] [stderr] Checking tokio-util v0.7.16 [INFO] [stderr] Checking hyper-util v0.1.16 [INFO] [stderr] Checking idna_adapter v1.2.1 [INFO] [stderr] Checking idna v1.0.3 [INFO] [stderr] Checking url v2.5.4 [INFO] [stderr] Checking hyperlocal v0.9.1 [INFO] [stderr] Checking serde_with v3.14.0 [INFO] [stderr] Checking serde_urlencoded v0.7.1 [INFO] [stderr] Checking chrono v0.4.41 [INFO] [stderr] Checking bollard-stubs v1.45.0-rc.26.0.1 [INFO] [stderr] Checking bollard v0.17.1 [INFO] [stderr] Checking puls v0.4.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused imports: `Block` and `Gauge` [INFO] [stdout] --> src/ui/widgets.rs:3:15 [INFO] [stdout] | [INFO] [stdout] 3 | widgets::{Block, Gauge, Paragraph}, [INFO] [stdout] | ^^^^^ ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `get_top_memory_consumers` [INFO] [stdout] --> src/ui/mod.rs:11:136 [INFO] [stdout] | [INFO] [stdout] 11 | ...et_usage_color, truncate_string, get_system_health, get_top_memory_consumers, get_cpu_efficiency, estimate_memory_availability}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `chrono::Local` [INFO] [stdout] --> src/system_service.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use chrono::Local; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ConfigItem`, `LogEntry`, and `ServiceInfo` [INFO] [stdout] --> src/main.rs:9:45 [INFO] [stdout] | [INFO] [stdout] 9 | use crate::types::{AppState, ProcessSortBy, ServiceInfo, LogEntry, ConfigItem}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Block` and `Gauge` [INFO] [stdout] --> src/ui/widgets.rs:3:15 [INFO] [stdout] | [INFO] [stdout] 3 | widgets::{Block, Gauge, Paragraph}, [INFO] [stdout] | ^^^^^ ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `get_top_memory_consumers` [INFO] [stdout] --> src/ui/mod.rs:11:136 [INFO] [stdout] | [INFO] [stdout] 11 | ...et_usage_color, truncate_string, get_system_health, get_top_memory_consumers, get_cpu_efficiency, estimate_memory_availability}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `chrono::Local` [INFO] [stdout] --> src/system_service.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use chrono::Local; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ConfigItem`, `LogEntry`, and `ServiceInfo` [INFO] [stdout] --> src/main.rs:9:45 [INFO] [stdout] | [INFO] [stdout] 9 | use crate::types::{AppState, ProcessSortBy, ServiceInfo, LogEntry, ConfigItem}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `monitor` [INFO] [stdout] --> src/monitors/gpu_monitor.rs:295:13 [INFO] [stdout] | [INFO] [stdout] 295 | let monitor = GpuMonitor::new(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_monitor` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `monitor` [INFO] [stdout] --> src/monitors/container_monitor.rs:360:13 [INFO] [stdout] | [INFO] [stdout] 360 | let monitor = ContainerMonitor::new(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_monitor` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/ui/mod.rs:1049:9 [INFO] [stdout] | [INFO] [stdout] 1049 | let mut service_state = state.services_table_state.clone(); [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/ui/mod.rs:1113:9 [INFO] [stdout] | [INFO] [stdout] 1113 | let mut logs_state = state.logs_table_state.clone(); [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/ui/mod.rs:1185:9 [INFO] [stdout] | [INFO] [stdout] 1185 | let mut config_state = state.config_table_state.clone(); [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `status` [INFO] [stdout] --> src/system_service.rs:53:21 [INFO] [stdout] | [INFO] [stdout] 53 | let status = parts[3]; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_status` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/main.rs:309:9 [INFO] [stdout] | [INFO] [stdout] 139 | KeyCode::Char('q') | KeyCode::Char('Q') | KeyCode::Esc => { [INFO] [stdout] | ------------------------------------------------------ matches all the relevant values [INFO] [stdout] ... [INFO] [stdout] 309 | KeyCode::Esc if state.editing_service.is_some() || state.editing_config.is_some() => { [INFO] [stdout] | ^^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `setup_signal_handlers` is never used [INFO] [stdout] --> src/main.rs:460:4 [INFO] [stdout] | [INFO] [stdout] 460 | fn setup_signal_handlers() -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check_system_requirements` is never used [INFO] [stdout] --> src/main.rs:483:4 [INFO] [stdout] | [INFO] [stdout] 483 | fn check_system_requirements() -> Result<(), AppError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `init_logging` is never used [INFO] [stdout] --> src/main.rs:499:4 [INFO] [stdout] | [INFO] [stdout] 499 | fn init_logging(verbose: bool) -> Result<(), AppError> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `image` and `ports` are never read [INFO] [stdout] --> src/types.rs:44:9 [INFO] [stdout] | [INFO] [stdout] 34 | pub struct ContainerInfo { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 44 | pub image: String, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 45 | pub ports: String, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ContainerInfo` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `driver_version` is never read [INFO] [stdout] --> src/types.rs:60:9 [INFO] [stdout] | [INFO] [stdout] 49 | pub struct GpuInfo { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 60 | pub driver_version: String, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GpuInfo` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `file_descriptors` is never read [INFO] [stdout] --> src/types.rs:77:9 [INFO] [stdout] | [INFO] [stdout] 64 | pub struct DetailedProcessInfo { [INFO] [stdout] | ------------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 77 | pub file_descriptors: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DetailedProcessInfo` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `temp` is never read [INFO] [stdout] --> src/types.rs:85:9 [INFO] [stdout] | [INFO] [stdout] 82 | pub struct CoreInfo { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 85 | pub temp: Option, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CoreInfo` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `read_rate`, `write_rate`, `read_ops`, `write_ops`, and `is_ssd` are never read [INFO] [stdout] --> src/types.rs:96:9 [INFO] [stdout] | [INFO] [stdout] 89 | pub struct DetailedDiskInfo { [INFO] [stdout] | ---------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 96 | pub read_rate: u64, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 97 | pub write_rate: u64, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 98 | pub read_ops: u64, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 99 | pub write_ops: u64, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 100 | pub is_ssd: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DetailedDiskInfo` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `errors_rx`, `errors_tx`, and `interface_type` are never read [INFO] [stdout] --> src/types.rs:112:9 [INFO] [stdout] | [INFO] [stdout] 104 | pub struct DetailedNetInfo { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 112 | pub errors_rx: u64, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 113 | pub errors_tx: u64, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 114 | pub interface_type: String, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DetailedNetInfo` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `cpu_temp`, `gpu_temps`, and `motherboard_temp` are never read [INFO] [stdout] --> src/types.rs:120:9 [INFO] [stdout] | [INFO] [stdout] 119 | pub struct SystemTemperatures { [INFO] [stdout] | ------------------ fields in this struct [INFO] [stdout] 120 | pub cpu_temp: Option, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 121 | pub gpu_temps: Vec, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 122 | pub motherboard_temp: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SystemTemperatures` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `boot_time` is never read [INFO] [stdout] --> src/types.rs:144:9 [INFO] [stdout] | [INFO] [stdout] 126 | pub struct GlobalUsage { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 144 | pub boot_time: u64, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GlobalUsage` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `temperatures` and `last_update` are never read [INFO] [stdout] --> src/types.rs:182:9 [INFO] [stdout] | [INFO] [stdout] 173 | pub struct DynamicData { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 182 | pub temperatures: SystemTemperatures, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 183 | pub last_update: std::time::Instant, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DynamicData` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `container_table_state` is never read [INFO] [stdout] --> src/types.rs:211:9 [INFO] [stdout] | [INFO] [stdout] 208 | pub struct AppState { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 211 | pub container_table_state: TableState, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AppState` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `description` is never read [INFO] [stdout] --> src/types.rs:235:9 [INFO] [stdout] | [INFO] [stdout] 233 | pub struct ServiceInfo { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] 234 | pub name: String, [INFO] [stdout] 235 | pub description: String, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ServiceInfo` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `service` is never read [INFO] [stdout] --> src/types.rs:259:9 [INFO] [stdout] | [INFO] [stdout] 256 | pub struct LogEntry { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 259 | pub service: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `LogEntry` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `category` is never read [INFO] [stdout] --> src/types.rs:279:9 [INFO] [stdout] | [INFO] [stdout] 275 | pub struct ConfigItem { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 279 | pub category: String, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ConfigItem` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Pid`, `DiskRead`, and `DiskWrite` are never constructed [INFO] [stdout] --> src/types.rs:298:5 [INFO] [stdout] | [INFO] [stdout] 294 | pub enum ProcessSortBy { [INFO] [stdout] | ------------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 298 | Pid, [INFO] [stdout] | ^^^ [INFO] [stdout] 299 | DiskRead, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 300 | DiskWrite, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ProcessSortBy` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `AppMessage` is never used [INFO] [stdout] --> src/types.rs:310:10 [INFO] [stdout] | [INFO] [stdout] 310 | pub enum AppMessage { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AppPerformance` is never constructed [INFO] [stdout] --> src/types.rs:317:12 [INFO] [stdout] | [INFO] [stdout] 317 | pub struct AppPerformance { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `show_system_processes` and `auto_scroll` are never read [INFO] [stdout] --> src/types.rs:332:9 [INFO] [stdout] | [INFO] [stdout] 325 | pub struct AppConfig { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 332 | pub show_system_processes: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 333 | pub auto_scroll: bool, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AppConfig` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `format_frequency_hz` is never used [INFO] [stdout] --> src/utils.rs:64:8 [INFO] [stdout] | [INFO] [stdout] 64 | pub fn format_frequency_hz(hz: u64) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `format_temperature` is never used [INFO] [stdout] --> src/utils.rs:97:8 [INFO] [stdout] | [INFO] [stdout] 97 | pub fn format_temperature(celsius: f32) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `format_temperature_with_status` is never used [INFO] [stdout] --> src/utils.rs:101:8 [INFO] [stdout] | [INFO] [stdout] 101 | pub fn format_temperature_with_status(celsius: f32) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `clamp` is never used [INFO] [stdout] --> src/utils.rs:126:8 [INFO] [stdout] | [INFO] [stdout] 126 | pub fn clamp(value: T, min: T, max: T) -> T { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `bytes_to_mb` is never used [INFO] [stdout] --> src/utils.rs:136:8 [INFO] [stdout] | [INFO] [stdout] 136 | pub fn bytes_to_mb(bytes: u64) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `bytes_to_gb` is never used [INFO] [stdout] --> src/utils.rs:140:8 [INFO] [stdout] | [INFO] [stdout] 140 | pub fn bytes_to_gb(bytes: u64) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_top_processes` is never used [INFO] [stdout] --> src/utils.rs:203:8 [INFO] [stdout] | [INFO] [stdout] 203 | pub fn get_top_processes(processes: &[crate::types::ProcessInfo], top_n: usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_top_memory_consumers` is never used [INFO] [stdout] --> src/utils.rs:213:8 [INFO] [stdout] | [INFO] [stdout] 213 | pub fn get_top_memory_consumers(processes: &[crate::types::ProcessInfo], top_n: usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `estimate_memory_per_core` is never used [INFO] [stdout] --> src/utils.rs:241:8 [INFO] [stdout] | [INFO] [stdout] 241 | pub fn estimate_memory_per_core(mem_used: u64, cpu_cores: usize) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `format_load_average` is never used [INFO] [stdout] --> src/utils.rs:299:8 [INFO] [stdout] | [INFO] [stdout] 299 | pub fn format_load_average(load1: f64, load5: f64, load15: f64) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_memory_breakdown` is never used [INFO] [stdout] --> src/utils.rs:335:8 [INFO] [stdout] | [INFO] [stdout] 335 | pub fn get_memory_breakdown(mem_available: u64, mem_total: u64) -> (u64, u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_feature_enabled` is never used [INFO] [stdout] --> src/config.rs:75:12 [INFO] [stdout] | [INFO] [stdout] 66 | impl AppConfig { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 75 | pub fn is_feature_enabled(&self, feature: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Features` is never constructed [INFO] [stdout] --> src/config.rs:109:12 [INFO] [stdout] | [INFO] [stdout] 109 | pub struct Features; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `DOCKER`, `NVIDIA_GPU`, `AMD_GPU`, `has_gpu_support`, and `has_container_support` are never used [INFO] [stdout] --> src/config.rs:113:15 [INFO] [stdout] | [INFO] [stdout] 111 | impl Features { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] 112 | #[cfg(feature = "docker")] [INFO] [stdout] 113 | pub const DOCKER: bool = true; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 118 | pub const NVIDIA_GPU: bool = true; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 125 | pub const AMD_GPU: bool = false; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 126 | [INFO] [stdout] 127 | pub fn has_gpu_support() -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 131 | pub fn has_container_support() -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PerformanceProfile` is never constructed [INFO] [stdout] --> src/config.rs:136:12 [INFO] [stdout] | [INFO] [stdout] 136 | pub struct PerformanceProfile { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `detect` and `safe_mode` are never used [INFO] [stdout] --> src/config.rs:143:12 [INFO] [stdout] | [INFO] [stdout] 142 | impl PerformanceProfile { [INFO] [stdout] | ----------------------- associated functions in this implementation [INFO] [stdout] 143 | pub fn detect() -> Self { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 168 | pub fn safe_mode() -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `last_update` is never read [INFO] [stdout] --> src/monitors/mod.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct DataCollector { [INFO] [stdout] | ------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 21 | last_update: Instant, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `health_check` is never used [INFO] [stdout] --> src/monitors/mod.rs:182:18 [INFO] [stdout] | [INFO] [stdout] 24 | impl DataCollector { [INFO] [stdout] | ------------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 182 | pub async fn health_check(&self) -> Vec<(String, bool)> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `SharedDataCollector` is never used [INFO] [stdout] --> src/monitors/mod.rs:204:10 [INFO] [stdout] | [INFO] [stdout] 204 | pub type SharedDataCollector = Arc>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `refresh` is never used [INFO] [stdout] --> src/monitors/system_monitor.rs:282:12 [INFO] [stdout] | [INFO] [stdout] 19 | impl SystemMonitor { [INFO] [stdout] | ------------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 282 | pub fn refresh(&mut self) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `last_update` is never read [INFO] [stdout] --> src/monitors/gpu_monitor.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct GpuMonitor { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 12 | last_update: std::time::Instant, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `init_amd` and `get_amd_gpus` are never used [INFO] [stdout] --> src/monitors/gpu_monitor.rs:45:8 [INFO] [stdout] | [INFO] [stdout] 15 | impl GpuMonitor { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 45 | fn init_amd() -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 240 | fn get_amd_gpus(&self) -> Result, String> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_runtime_info` is never used [INFO] [stdout] --> src/monitors/container_monitor.rs:332:18 [INFO] [stdout] | [INFO] [stdout] 20 | impl ContainerMonitor { [INFO] [stdout] | --------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 332 | pub async fn get_runtime_info(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `label`, `style`, `background_style`, `show_percentage`, and `custom_text` are never used [INFO] [stdout] --> src/ui/widgets.rs:27:12 [INFO] [stdout] | [INFO] [stdout] 15 | impl<'a> ProgressBar<'a> { [INFO] [stdout] | ------------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 27 | pub fn label(mut self, label: &'a str) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 32 | pub fn style(mut self, style: Style) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | pub fn background_style(mut self, style: Style) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | pub fn show_percentage(mut self, show: bool) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 47 | pub fn custom_text(mut self, text: &'a str) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `StatusIndicator` is never constructed [INFO] [stdout] --> src/ui/widgets.rs:116:12 [INFO] [stdout] | [INFO] [stdout] 116 | pub struct StatusIndicator<'a> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Status` is never used [INFO] [stdout] --> src/ui/widgets.rs:123:10 [INFO] [stdout] | [INFO] [stdout] 123 | pub enum Status { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `color`, `symbol`, and `text` are never used [INFO] [stdout] --> src/ui/widgets.rs:131:12 [INFO] [stdout] | [INFO] [stdout] 130 | impl Status { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] 131 | pub fn color(self) -> Color { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 140 | pub fn symbol(self) -> &'static str { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 149 | pub fn text(self) -> &'static str { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `show_symbol` are never used [INFO] [stdout] --> src/ui/widgets.rs:160:12 [INFO] [stdout] | [INFO] [stdout] 159 | impl<'a> StatusIndicator<'a> { [INFO] [stdout] | ---------------------------- associated items in this implementation [INFO] [stdout] 160 | pub fn new(status: Status, label: &'a str) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 168 | pub fn show_symbol(mut self, show: bool) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/ui/colors.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct ColorScheme { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] 5 | pub primary: Color, [INFO] [stdout] 6 | pub secondary: Color, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 7 | pub accent: Color, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 8 | pub background: Color, [INFO] [stdout] 9 | pub text: Color, [INFO] [stdout] | ^^^^ [INFO] [stdout] 10 | pub text_secondary: Color, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 11 | pub success: Color, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 12 | pub warning: Color, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 13 | pub error: Color, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 14 | pub info: Color, [INFO] [stdout] | ^^^^ [INFO] [stdout] 15 | pub border: Color, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 16 | pub highlight: Color, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ColorScheme` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `matrix`, `high_contrast`, and `solarized_dark` are never used [INFO] [stdout] --> src/ui/colors.rs:54:12 [INFO] [stdout] | [INFO] [stdout] 19 | impl ColorScheme { [INFO] [stdout] | ---------------- associated functions in this implementation [INFO] [stdout] ... [INFO] [stdout] 54 | pub fn matrix() -> Self { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 71 | pub fn high_contrast() -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 88 | pub fn solarized_dark() -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `memory_usage_color` is never used [INFO] [stdout] --> src/ui/colors.rs:116:8 [INFO] [stdout] | [INFO] [stdout] 116 | pub fn memory_usage_color(usage: f32) -> Color { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `disk_usage_color` is never used [INFO] [stdout] --> src/ui/colors.rs:126:8 [INFO] [stdout] | [INFO] [stdout] 126 | pub fn disk_usage_color(usage: f32) -> Color { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `temperature_color` is never used [INFO] [stdout] --> src/ui/colors.rs:136:8 [INFO] [stdout] | [INFO] [stdout] 136 | pub fn temperature_color(temp: f32) -> Color { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `network_activity_color` is never used [INFO] [stdout] --> src/ui/colors.rs:146:8 [INFO] [stdout] | [INFO] [stdout] 146 | pub fn network_activity_color(rate_mbps: f64) -> Color { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `container_status_color` is never used [INFO] [stdout] --> src/ui/colors.rs:169:8 [INFO] [stdout] | [INFO] [stdout] 169 | pub fn container_status_color(status: &str) -> Color { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `rainbow`, `blue_to_red`, and `green_to_red` are never used [INFO] [stdout] --> src/ui/colors.rs:197:12 [INFO] [stdout] | [INFO] [stdout] 185 | impl ColorGradient { [INFO] [stdout] | ------------------ associated functions in this implementation [INFO] [stdout] ... [INFO] [stdout] 197 | pub fn rainbow(value: f32) -> Color { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 209 | pub fn blue_to_red(value: f32) -> Color { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | pub fn green_to_red(value: f32) -> Color { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ThemeManager` is never constructed [INFO] [stdout] --> src/ui/colors.rs:228:12 [INFO] [stdout] | [INFO] [stdout] 228 | pub struct ThemeManager { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `set_theme`, `get_theme`, `next_theme`, and `usage_color` are never used [INFO] [stdout] --> src/ui/colors.rs:233:12 [INFO] [stdout] | [INFO] [stdout] 232 | impl ThemeManager { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 233 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 239 | pub fn set_theme(&mut self, theme: ColorScheme) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 243 | pub fn get_theme(&self) -> &ColorScheme { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 247 | pub fn next_theme(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 251 | pub fn usage_color(&self, usage: f32, metric_type: &str) -> Color { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `darken_color` is never used [INFO] [stdout] --> src/ui/colors.rs:278:12 [INFO] [stdout] | [INFO] [stdout] 278 | pub fn darken_color(color: Color, factor: f32) -> Color { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `lighten_color` is never used [INFO] [stdout] --> src/ui/colors.rs:299:12 [INFO] [stdout] | [INFO] [stdout] 299 | pub fn lighten_color(color: Color, factor: f32) -> Color { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `contrasting_text_color` is never used [INFO] [stdout] --> src/ui/colors.rs:312:12 [INFO] [stdout] | [INFO] [stdout] 312 | pub fn contrasting_text_color(background: Color) -> Color { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_two_row_layout` is never used [INFO] [stdout] --> src/ui/layouts.rs:44:8 [INFO] [stdout] | [INFO] [stdout] 44 | pub fn create_two_row_layout(area: Rect, top_percentage: u16) -> (Rect, Rect) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_grid_layout` is never used [INFO] [stdout] --> src/ui/layouts.rs:56:8 [INFO] [stdout] | [INFO] [stdout] 56 | pub fn create_grid_layout(area: Rect, rows: u16, cols: u16) -> Vec> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_adaptive_grid` is never used [INFO] [stdout] --> src/ui/layouts.rs:82:8 [INFO] [stdout] | [INFO] [stdout] 82 | pub fn create_adaptive_grid(area: Rect, item_count: usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_summary_layout` is never used [INFO] [stdout] --> src/ui/layouts.rs:159:8 [INFO] [stdout] | [INFO] [stdout] 159 | pub fn create_summary_layout(area: Rect, sections: usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `enable_service` and `disable_service` are never used [INFO] [stdout] --> src/system_service.rs:138:12 [INFO] [stdout] | [INFO] [stdout] 11 | impl SystemManager { [INFO] [stdout] | ------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 138 | pub fn enable_service(&self, service_name: &str) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 155 | pub fn disable_service(&self, service_name: &str) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/ui/mod.rs:1049:9 [INFO] [stdout] | [INFO] [stdout] 1049 | let mut service_state = state.services_table_state.clone(); [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/ui/mod.rs:1113:9 [INFO] [stdout] | [INFO] [stdout] 1113 | let mut logs_state = state.logs_table_state.clone(); [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/ui/mod.rs:1185:9 [INFO] [stdout] | [INFO] [stdout] 1185 | let mut config_state = state.config_table_state.clone(); [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `status` [INFO] [stdout] --> src/system_service.rs:53:21 [INFO] [stdout] | [INFO] [stdout] 53 | let status = parts[3]; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_status` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/main.rs:309:9 [INFO] [stdout] | [INFO] [stdout] 139 | KeyCode::Char('q') | KeyCode::Char('Q') | KeyCode::Esc => { [INFO] [stdout] | ------------------------------------------------------ matches all the relevant values [INFO] [stdout] ... [INFO] [stdout] 309 | KeyCode::Esc if state.editing_service.is_some() || state.editing_config.is_some() => { [INFO] [stdout] | ^^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `setup_signal_handlers` is never used [INFO] [stdout] --> src/main.rs:460:4 [INFO] [stdout] | [INFO] [stdout] 460 | fn setup_signal_handlers() -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check_system_requirements` is never used [INFO] [stdout] --> src/main.rs:483:4 [INFO] [stdout] | [INFO] [stdout] 483 | fn check_system_requirements() -> Result<(), AppError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `init_logging` is never used [INFO] [stdout] --> src/main.rs:499:4 [INFO] [stdout] | [INFO] [stdout] 499 | fn init_logging(verbose: bool) -> Result<(), AppError> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `image` and `ports` are never read [INFO] [stdout] --> src/types.rs:44:9 [INFO] [stdout] | [INFO] [stdout] 34 | pub struct ContainerInfo { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 44 | pub image: String, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 45 | pub ports: String, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ContainerInfo` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `driver_version` is never read [INFO] [stdout] --> src/types.rs:60:9 [INFO] [stdout] | [INFO] [stdout] 49 | pub struct GpuInfo { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 60 | pub driver_version: String, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GpuInfo` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `file_descriptors` is never read [INFO] [stdout] --> src/types.rs:77:9 [INFO] [stdout] | [INFO] [stdout] 64 | pub struct DetailedProcessInfo { [INFO] [stdout] | ------------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 77 | pub file_descriptors: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DetailedProcessInfo` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `temp` is never read [INFO] [stdout] --> src/types.rs:85:9 [INFO] [stdout] | [INFO] [stdout] 82 | pub struct CoreInfo { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 85 | pub temp: Option, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CoreInfo` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `read_rate`, `write_rate`, `read_ops`, `write_ops`, and `is_ssd` are never read [INFO] [stdout] --> src/types.rs:96:9 [INFO] [stdout] | [INFO] [stdout] 89 | pub struct DetailedDiskInfo { [INFO] [stdout] | ---------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 96 | pub read_rate: u64, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 97 | pub write_rate: u64, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 98 | pub read_ops: u64, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 99 | pub write_ops: u64, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 100 | pub is_ssd: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DetailedDiskInfo` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `errors_rx`, `errors_tx`, and `interface_type` are never read [INFO] [stdout] --> src/types.rs:112:9 [INFO] [stdout] | [INFO] [stdout] 104 | pub struct DetailedNetInfo { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 112 | pub errors_rx: u64, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 113 | pub errors_tx: u64, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 114 | pub interface_type: String, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DetailedNetInfo` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `cpu_temp`, `gpu_temps`, and `motherboard_temp` are never read [INFO] [stdout] --> src/types.rs:120:9 [INFO] [stdout] | [INFO] [stdout] 119 | pub struct SystemTemperatures { [INFO] [stdout] | ------------------ fields in this struct [INFO] [stdout] 120 | pub cpu_temp: Option, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 121 | pub gpu_temps: Vec, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 122 | pub motherboard_temp: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SystemTemperatures` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `boot_time` is never read [INFO] [stdout] --> src/types.rs:144:9 [INFO] [stdout] | [INFO] [stdout] 126 | pub struct GlobalUsage { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 144 | pub boot_time: u64, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GlobalUsage` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `temperatures` and `last_update` are never read [INFO] [stdout] --> src/types.rs:182:9 [INFO] [stdout] | [INFO] [stdout] 173 | pub struct DynamicData { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 182 | pub temperatures: SystemTemperatures, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 183 | pub last_update: std::time::Instant, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DynamicData` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `container_table_state` is never read [INFO] [stdout] --> src/types.rs:211:9 [INFO] [stdout] | [INFO] [stdout] 208 | pub struct AppState { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 211 | pub container_table_state: TableState, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AppState` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `description` is never read [INFO] [stdout] --> src/types.rs:235:9 [INFO] [stdout] | [INFO] [stdout] 233 | pub struct ServiceInfo { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] 234 | pub name: String, [INFO] [stdout] 235 | pub description: String, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ServiceInfo` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `service` is never read [INFO] [stdout] --> src/types.rs:259:9 [INFO] [stdout] | [INFO] [stdout] 256 | pub struct LogEntry { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 259 | pub service: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `LogEntry` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `category` is never read [INFO] [stdout] --> src/types.rs:279:9 [INFO] [stdout] | [INFO] [stdout] 275 | pub struct ConfigItem { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 279 | pub category: String, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ConfigItem` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Pid`, `DiskRead`, and `DiskWrite` are never constructed [INFO] [stdout] --> src/types.rs:298:5 [INFO] [stdout] | [INFO] [stdout] 294 | pub enum ProcessSortBy { [INFO] [stdout] | ------------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 298 | Pid, [INFO] [stdout] | ^^^ [INFO] [stdout] 299 | DiskRead, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 300 | DiskWrite, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ProcessSortBy` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `AppMessage` is never used [INFO] [stdout] --> src/types.rs:310:10 [INFO] [stdout] | [INFO] [stdout] 310 | pub enum AppMessage { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AppPerformance` is never constructed [INFO] [stdout] --> src/types.rs:317:12 [INFO] [stdout] | [INFO] [stdout] 317 | pub struct AppPerformance { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `show_system_processes` and `auto_scroll` are never read [INFO] [stdout] --> src/types.rs:332:9 [INFO] [stdout] | [INFO] [stdout] 325 | pub struct AppConfig { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 332 | pub show_system_processes: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 333 | pub auto_scroll: bool, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AppConfig` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `format_frequency_hz` is never used [INFO] [stdout] --> src/utils.rs:64:8 [INFO] [stdout] | [INFO] [stdout] 64 | pub fn format_frequency_hz(hz: u64) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `format_temperature` is never used [INFO] [stdout] --> src/utils.rs:97:8 [INFO] [stdout] | [INFO] [stdout] 97 | pub fn format_temperature(celsius: f32) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `format_temperature_with_status` is never used [INFO] [stdout] --> src/utils.rs:101:8 [INFO] [stdout] | [INFO] [stdout] 101 | pub fn format_temperature_with_status(celsius: f32) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `safe_percentage` is never used [INFO] [stdout] --> src/utils.rs:118:8 [INFO] [stdout] | [INFO] [stdout] 118 | pub fn safe_percentage(used: u64, total: u64) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `clamp` is never used [INFO] [stdout] --> src/utils.rs:126:8 [INFO] [stdout] | [INFO] [stdout] 126 | pub fn clamp(value: T, min: T, max: T) -> T { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `bytes_to_mb` is never used [INFO] [stdout] --> src/utils.rs:136:8 [INFO] [stdout] | [INFO] [stdout] 136 | pub fn bytes_to_mb(bytes: u64) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `bytes_to_gb` is never used [INFO] [stdout] --> src/utils.rs:140:8 [INFO] [stdout] | [INFO] [stdout] 140 | pub fn bytes_to_gb(bytes: u64) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_top_processes` is never used [INFO] [stdout] --> src/utils.rs:203:8 [INFO] [stdout] | [INFO] [stdout] 203 | pub fn get_top_processes(processes: &[crate::types::ProcessInfo], top_n: usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_top_memory_consumers` is never used [INFO] [stdout] --> src/utils.rs:213:8 [INFO] [stdout] | [INFO] [stdout] 213 | pub fn get_top_memory_consumers(processes: &[crate::types::ProcessInfo], top_n: usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `estimate_memory_per_core` is never used [INFO] [stdout] --> src/utils.rs:241:8 [INFO] [stdout] | [INFO] [stdout] 241 | pub fn estimate_memory_per_core(mem_used: u64, cpu_cores: usize) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `format_load_average` is never used [INFO] [stdout] --> src/utils.rs:299:8 [INFO] [stdout] | [INFO] [stdout] 299 | pub fn format_load_average(load1: f64, load5: f64, load15: f64) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_memory_breakdown` is never used [INFO] [stdout] --> src/utils.rs:335:8 [INFO] [stdout] | [INFO] [stdout] 335 | pub fn get_memory_breakdown(mem_available: u64, mem_total: u64) -> (u64, u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_feature_enabled` is never used [INFO] [stdout] --> src/config.rs:75:12 [INFO] [stdout] | [INFO] [stdout] 66 | impl AppConfig { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 75 | pub fn is_feature_enabled(&self, feature: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Features` is never constructed [INFO] [stdout] --> src/config.rs:109:12 [INFO] [stdout] | [INFO] [stdout] 109 | pub struct Features; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `DOCKER`, `NVIDIA_GPU`, `AMD_GPU`, `has_gpu_support`, and `has_container_support` are never used [INFO] [stdout] --> src/config.rs:113:15 [INFO] [stdout] | [INFO] [stdout] 111 | impl Features { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] 112 | #[cfg(feature = "docker")] [INFO] [stdout] 113 | pub const DOCKER: bool = true; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 118 | pub const NVIDIA_GPU: bool = true; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 125 | pub const AMD_GPU: bool = false; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 126 | [INFO] [stdout] 127 | pub fn has_gpu_support() -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 131 | pub fn has_container_support() -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PerformanceProfile` is never constructed [INFO] [stdout] --> src/config.rs:136:12 [INFO] [stdout] | [INFO] [stdout] 136 | pub struct PerformanceProfile { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `detect` and `safe_mode` are never used [INFO] [stdout] --> src/config.rs:143:12 [INFO] [stdout] | [INFO] [stdout] 142 | impl PerformanceProfile { [INFO] [stdout] | ----------------------- associated functions in this implementation [INFO] [stdout] 143 | pub fn detect() -> Self { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 168 | pub fn safe_mode() -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `last_update` is never read [INFO] [stdout] --> src/monitors/mod.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct DataCollector { [INFO] [stdout] | ------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 21 | last_update: Instant, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `health_check` is never used [INFO] [stdout] --> src/monitors/mod.rs:182:18 [INFO] [stdout] | [INFO] [stdout] 24 | impl DataCollector { [INFO] [stdout] | ------------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 182 | pub async fn health_check(&self) -> Vec<(String, bool)> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `SharedDataCollector` is never used [INFO] [stdout] --> src/monitors/mod.rs:204:10 [INFO] [stdout] | [INFO] [stdout] 204 | pub type SharedDataCollector = Arc>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `refresh` is never used [INFO] [stdout] --> src/monitors/system_monitor.rs:282:12 [INFO] [stdout] | [INFO] [stdout] 19 | impl SystemMonitor { [INFO] [stdout] | ------------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 282 | pub fn refresh(&mut self) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `last_update` is never read [INFO] [stdout] --> src/monitors/gpu_monitor.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct GpuMonitor { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 12 | last_update: std::time::Instant, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `init_amd`, `get_amd_gpus`, and `get_gpu_history_flat` are never used [INFO] [stdout] --> src/monitors/gpu_monitor.rs:45:8 [INFO] [stdout] | [INFO] [stdout] 15 | impl GpuMonitor { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 45 | fn init_amd() -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 240 | fn get_amd_gpus(&self) -> Result, String> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 261 | pub fn get_gpu_history_flat(&self) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `health_check` and `get_runtime_info` are never used [INFO] [stdout] --> src/monitors/container_monitor.rs:320:18 [INFO] [stdout] | [INFO] [stdout] 20 | impl ContainerMonitor { [INFO] [stdout] | --------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 320 | pub async fn health_check(&self, timeout_ms: u64) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 332 | pub async fn get_runtime_info(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ProgressBar` is never constructed [INFO] [stdout] --> src/ui/widgets.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct ProgressBar<'a> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `label`, `style`, `background_style`, `show_percentage`, and `custom_text` are never used [INFO] [stdout] --> src/ui/widgets.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 15 | impl<'a> ProgressBar<'a> { [INFO] [stdout] | ------------------------ associated items in this implementation [INFO] [stdout] 16 | pub fn new(progress: f64) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | pub fn label(mut self, label: &'a str) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 32 | pub fn style(mut self, style: Style) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | pub fn background_style(mut self, style: Style) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | pub fn show_percentage(mut self, show: bool) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 47 | pub fn custom_text(mut self, text: &'a str) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `render_text_overlay` is never used [INFO] [stdout] --> src/ui/widgets.rs:91:8 [INFO] [stdout] | [INFO] [stdout] 90 | impl<'a> ProgressBar<'a> { [INFO] [stdout] | ------------------------ method in this implementation [INFO] [stdout] 91 | fn render_text_overlay(self, area: Rect, buf: &mut Buffer, text: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `StatusIndicator` is never constructed [INFO] [stdout] --> src/ui/widgets.rs:116:12 [INFO] [stdout] | [INFO] [stdout] 116 | pub struct StatusIndicator<'a> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Status` is never used [INFO] [stdout] --> src/ui/widgets.rs:123:10 [INFO] [stdout] | [INFO] [stdout] 123 | pub enum Status { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `color`, `symbol`, and `text` are never used [INFO] [stdout] --> src/ui/widgets.rs:131:12 [INFO] [stdout] | [INFO] [stdout] 130 | impl Status { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] 131 | pub fn color(self) -> Color { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 140 | pub fn symbol(self) -> &'static str { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 149 | pub fn text(self) -> &'static str { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `show_symbol` are never used [INFO] [stdout] --> src/ui/widgets.rs:160:12 [INFO] [stdout] | [INFO] [stdout] 159 | impl<'a> StatusIndicator<'a> { [INFO] [stdout] | ---------------------------- associated items in this implementation [INFO] [stdout] 160 | pub fn new(status: Status, label: &'a str) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 168 | pub fn show_symbol(mut self, show: bool) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ColorScheme` is never constructed [INFO] [stdout] --> src/ui/colors.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct ColorScheme { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `dark`, `light`, `matrix`, `high_contrast`, and `solarized_dark` are never used [INFO] [stdout] --> src/ui/colors.rs:20:12 [INFO] [stdout] | [INFO] [stdout] 19 | impl ColorScheme { [INFO] [stdout] | ---------------- associated functions in this implementation [INFO] [stdout] 20 | pub fn dark() -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | pub fn light() -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 54 | pub fn matrix() -> Self { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 71 | pub fn high_contrast() -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 88 | pub fn solarized_dark() -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `cpu_usage_color` is never used [INFO] [stdout] --> src/ui/colors.rs:106:8 [INFO] [stdout] | [INFO] [stdout] 106 | pub fn cpu_usage_color(usage: f32) -> Color { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `memory_usage_color` is never used [INFO] [stdout] --> src/ui/colors.rs:116:8 [INFO] [stdout] | [INFO] [stdout] 116 | pub fn memory_usage_color(usage: f32) -> Color { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `disk_usage_color` is never used [INFO] [stdout] --> src/ui/colors.rs:126:8 [INFO] [stdout] | [INFO] [stdout] 126 | pub fn disk_usage_color(usage: f32) -> Color { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `temperature_color` is never used [INFO] [stdout] --> src/ui/colors.rs:136:8 [INFO] [stdout] | [INFO] [stdout] 136 | pub fn temperature_color(temp: f32) -> Color { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `network_activity_color` is never used [INFO] [stdout] --> src/ui/colors.rs:146:8 [INFO] [stdout] | [INFO] [stdout] 146 | pub fn network_activity_color(rate_mbps: f64) -> Color { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `process_status_color` is never used [INFO] [stdout] --> src/ui/colors.rs:156:8 [INFO] [stdout] | [INFO] [stdout] 156 | pub fn process_status_color(status: &str) -> Color { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `container_status_color` is never used [INFO] [stdout] --> src/ui/colors.rs:169:8 [INFO] [stdout] | [INFO] [stdout] 169 | pub fn container_status_color(status: &str) -> Color { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ColorGradient` is never constructed [INFO] [stdout] --> src/ui/colors.rs:183:12 [INFO] [stdout] | [INFO] [stdout] 183 | pub struct ColorGradient; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `heat_map`, `rainbow`, `blue_to_red`, and `green_to_red` are never used [INFO] [stdout] --> src/ui/colors.rs:186:12 [INFO] [stdout] | [INFO] [stdout] 185 | impl ColorGradient { [INFO] [stdout] | ------------------ associated functions in this implementation [INFO] [stdout] 186 | pub fn heat_map(value: f32) -> Color { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 197 | pub fn rainbow(value: f32) -> Color { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 209 | pub fn blue_to_red(value: f32) -> Color { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | pub fn green_to_red(value: f32) -> Color { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ThemeManager` is never constructed [INFO] [stdout] --> src/ui/colors.rs:228:12 [INFO] [stdout] | [INFO] [stdout] 228 | pub struct ThemeManager { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `set_theme`, `get_theme`, `next_theme`, and `usage_color` are never used [INFO] [stdout] --> src/ui/colors.rs:233:12 [INFO] [stdout] | [INFO] [stdout] 232 | impl ThemeManager { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 233 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 239 | pub fn set_theme(&mut self, theme: ColorScheme) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 243 | pub fn get_theme(&self) -> &ColorScheme { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 247 | pub fn next_theme(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 251 | pub fn usage_color(&self, usage: f32, metric_type: &str) -> Color { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `darken_color` is never used [INFO] [stdout] --> src/ui/colors.rs:278:12 [INFO] [stdout] | [INFO] [stdout] 278 | pub fn darken_color(color: Color, factor: f32) -> Color { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `lighten_color` is never used [INFO] [stdout] --> src/ui/colors.rs:299:12 [INFO] [stdout] | [INFO] [stdout] 299 | pub fn lighten_color(color: Color, factor: f32) -> Color { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `contrasting_text_color` is never used [INFO] [stdout] --> src/ui/colors.rs:312:12 [INFO] [stdout] | [INFO] [stdout] 312 | pub fn contrasting_text_color(background: Color) -> Color { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_two_column_layout` is never used [INFO] [stdout] --> src/ui/layouts.rs:32:8 [INFO] [stdout] | [INFO] [stdout] 32 | pub fn create_two_column_layout(area: Rect, left_percentage: u16) -> (Rect, Rect) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_two_row_layout` is never used [INFO] [stdout] --> src/ui/layouts.rs:44:8 [INFO] [stdout] | [INFO] [stdout] 44 | pub fn create_two_row_layout(area: Rect, top_percentage: u16) -> (Rect, Rect) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_grid_layout` is never used [INFO] [stdout] --> src/ui/layouts.rs:56:8 [INFO] [stdout] | [INFO] [stdout] 56 | pub fn create_grid_layout(area: Rect, rows: u16, cols: u16) -> Vec> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_adaptive_grid` is never used [INFO] [stdout] --> src/ui/layouts.rs:82:8 [INFO] [stdout] | [INFO] [stdout] 82 | pub fn create_adaptive_grid(area: Rect, item_count: usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `calculate_grid_dimensions` is never used [INFO] [stdout] --> src/ui/layouts.rs:128:4 [INFO] [stdout] | [INFO] [stdout] 128 | fn calculate_grid_dimensions(item_count: usize, width: u16, height: u16) -> (usize, usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_summary_layout` is never used [INFO] [stdout] --> src/ui/layouts.rs:159:8 [INFO] [stdout] | [INFO] [stdout] 159 | pub fn create_summary_layout(area: Rect, sections: usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `enable_service` and `disable_service` are never used [INFO] [stdout] --> src/system_service.rs:138:12 [INFO] [stdout] | [INFO] [stdout] 11 | impl SystemManager { [INFO] [stdout] | ------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 138 | pub fn enable_service(&self, service_name: &str) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 155 | pub fn disable_service(&self, service_name: &str) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 49.42s [INFO] running `Command { std: "docker" "inspect" "2386cce49495bc7d3ca88638383fd56434ed327ee31e9b350c2cf096389e14b7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2386cce49495bc7d3ca88638383fd56434ed327ee31e9b350c2cf096389e14b7", kill_on_drop: false }` [INFO] [stdout] 2386cce49495bc7d3ca88638383fd56434ed327ee31e9b350c2cf096389e14b7