[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] 2ed2aaba9488ff3820fd318bc3acf3efd7f04ca5 [INFO] testing word-sys/puls against master#cdb45c87e2cd43495379f7e867e3cc15dcee9f93 for pr-145838-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fword-sys%2Fpuls" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/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-1-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/word-sys/puls on toolchain cdb45c87e2cd43495379f7e867e3cc15dcee9f93 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "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" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] b29edeba362b859545c1ff8366215796ce51df57461d1243844699b87e7dc212 [INFO] running `Command { std: "docker" "start" "-a" "b29edeba362b859545c1ff8366215796ce51df57461d1243844699b87e7dc212", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "b29edeba362b859545c1ff8366215796ce51df57461d1243844699b87e7dc212", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b29edeba362b859545c1ff8366215796ce51df57461d1243844699b87e7dc212", kill_on_drop: false }` [INFO] [stdout] b29edeba362b859545c1ff8366215796ce51df57461d1243844699b87e7dc212 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 0ee0d3487de8ec9885e843205be2b09fa560a997e9fe7deb3d267b76683c0cf1 [INFO] running `Command { std: "docker" "start" "-a" "0ee0d3487de8ec9885e843205be2b09fa560a997e9fe7deb3d267b76683c0cf1", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.174 [INFO] [stderr] Compiling cfg-if v1.0.1 [INFO] [stderr] Compiling rustversion v1.0.21 [INFO] [stderr] Compiling either v1.15.0 [INFO] [stderr] Compiling signal-hook v0.3.18 [INFO] [stderr] Compiling syn v2.0.104 [INFO] [stderr] Compiling tracing-core v0.1.34 [INFO] [stderr] Compiling crossbeam-epoch v0.9.18 [INFO] [stderr] Compiling regex-syntax v0.8.5 [INFO] [stderr] Compiling slab v0.4.10 [INFO] [stderr] Compiling rayon-core v1.12.1 [INFO] [stderr] Compiling percent-encoding v2.3.1 [INFO] [stderr] Compiling serde_json v1.0.142 [INFO] [stderr] Compiling foldhash v0.1.5 [INFO] [stderr] Compiling rustix v0.38.44 [INFO] [stderr] Compiling unicode-width v0.1.14 [INFO] [stderr] Compiling libloading v0.8.8 [INFO] [stderr] Compiling itertools v0.13.0 [INFO] [stderr] Compiling itertools v0.12.1 [INFO] [stderr] Compiling clap_builder v4.5.43 [INFO] [stderr] Compiling hashbrown v0.15.4 [INFO] [stderr] Compiling form_urlencoded v1.2.1 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Compiling tracing v0.1.41 [INFO] [stderr] Compiling nvml-wrapper-sys v0.8.0 [INFO] [stderr] Compiling jiff v0.2.15 [INFO] [stderr] Compiling crossbeam-deque v0.8.6 [INFO] [stderr] Compiling cassowary v0.3.0 [INFO] [stderr] Compiling lru v0.12.5 [INFO] [stderr] Compiling castaway v0.2.4 [INFO] [stderr] Compiling compact_str v0.7.1 [INFO] [stderr] Compiling rayon v1.10.0 [INFO] [stderr] Compiling unicode-truncate v1.1.0 [INFO] [stderr] Compiling parking_lot_core v0.9.11 [INFO] [stderr] Compiling signal-hook-registry v1.4.6 [INFO] [stderr] Compiling mio v1.0.4 [INFO] [stderr] Compiling socket2 v0.6.0 [INFO] [stderr] Compiling mio v0.8.11 [INFO] [stderr] Compiling users v0.11.0 [INFO] [stderr] Compiling atty v0.2.14 [INFO] [stderr] Compiling regex-automata v0.4.9 [INFO] [stderr] Compiling parking_lot v0.12.4 [INFO] [stderr] Compiling dashmap v6.1.0 [INFO] [stderr] Compiling signal-hook-mio v0.2.4 [INFO] [stderr] Compiling crossterm v0.27.0 [INFO] [stderr] Compiling crossterm v0.28.1 [INFO] [stderr] Compiling sysinfo v0.31.4 [INFO] [stderr] Compiling regex v1.11.1 [INFO] [stderr] Compiling env_filter v0.1.3 [INFO] [stderr] Compiling env_logger v0.11.8 [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 strum_macros v0.26.4 [INFO] [stderr] Compiling serde_repr v0.1.20 [INFO] [stderr] Compiling stability v0.2.1 [INFO] [stderr] Compiling clap_derive v4.5.41 [INFO] [stderr] Compiling tokio v1.47.1 [INFO] [stderr] Compiling futures-util v0.3.31 [INFO] [stderr] Compiling zerofrom v0.1.6 [INFO] [stderr] Compiling darling_macro v0.20.11 [INFO] [stderr] Compiling yoke v0.8.0 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Compiling zerotrie v0.2.2 [INFO] [stderr] Compiling zerovec v0.11.4 [INFO] [stderr] Compiling darling v0.20.11 [INFO] [stderr] Compiling wrapcenum-derive v0.4.1 [INFO] [stderr] Compiling strum v0.26.3 [INFO] [stderr] Compiling clap v4.5.43 [INFO] [stderr] Compiling ratatui v0.26.3 [INFO] [stderr] Compiling nvml-wrapper v0.10.0 [INFO] [stderr] Compiling tinystr v0.8.1 [INFO] [stderr] Compiling potential_utf v0.1.2 [INFO] [stderr] Compiling icu_collections v2.0.0 [INFO] [stderr] Compiling icu_locale_core v2.0.0 [INFO] [stderr] Compiling serde v1.0.219 [INFO] [stderr] Compiling icu_provider v2.0.0 [INFO] [stderr] Compiling icu_normalizer v2.0.0 [INFO] [stderr] Compiling icu_properties v2.0.1 [INFO] [stderr] Compiling idna_adapter v1.2.1 [INFO] [stderr] Compiling idna v1.0.3 [INFO] [stderr] Compiling url v2.5.4 [INFO] [stderr] Compiling hyper v1.7.0 [INFO] [stderr] Compiling tokio-util v0.7.16 [INFO] [stderr] Compiling serde_with v3.14.0 [INFO] [stderr] Compiling serde_urlencoded v0.7.1 [INFO] [stderr] Compiling chrono v0.4.41 [INFO] [stderr] Compiling hyper-util v0.1.16 [INFO] [stderr] Compiling bollard-stubs v1.45.0-rc.26.0.1 [INFO] [stderr] Compiling hyperlocal v0.9.1 [INFO] [stderr] Compiling bollard v0.17.1 [INFO] [stderr] Compiling puls v0.3.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: function `setup_signal_handlers` is never used [INFO] [stdout] --> src/main.rs:293:4 [INFO] [stdout] | [INFO] [stdout] 293 | 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:316:4 [INFO] [stdout] | [INFO] [stdout] 316 | 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:332:4 [INFO] [stdout] | [INFO] [stdout] 332 | fn init_logging(verbose: bool) -> Result<(), AppError> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `status` is never read [INFO] [stdout] --> src/types.rs:30:9 [INFO] [stdout] | [INFO] [stdout] 20 | pub struct ProcessInfo { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 30 | pub status: String, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ProcessInfo` 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 `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: fields `load_average`, `uptime`, and `boot_time` are never read [INFO] [stdout] --> src/types.rs:142:9 [INFO] [stdout] | [INFO] [stdout] 126 | pub struct GlobalUsage { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 142 | pub load_average: (f64, f64, f64), [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 143 | pub uptime: u64, [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: variants `Pid`, `DiskRead`, and `DiskWrite` are never constructed [INFO] [stdout] --> src/types.rs:227:5 [INFO] [stdout] | [INFO] [stdout] 223 | pub enum ProcessSortBy { [INFO] [stdout] | ------------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 227 | Pid, [INFO] [stdout] | ^^^ [INFO] [stdout] 228 | DiskRead, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 229 | 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:239:10 [INFO] [stdout] | [INFO] [stdout] 239 | pub enum AppMessage { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AppPerformance` is never constructed [INFO] [stdout] --> src/types.rs:246:12 [INFO] [stdout] | [INFO] [stdout] 246 | 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:261:9 [INFO] [stdout] | [INFO] [stdout] 254 | pub struct AppConfig { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 261 | pub show_system_processes: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 262 | 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` is never used [INFO] [stdout] --> src/utils.rs:50:8 [INFO] [stdout] | [INFO] [stdout] 50 | pub fn format_frequency(hz: u64) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `safe_percentage` is never used [INFO] [stdout] --> src/utils.rs:90:8 [INFO] [stdout] | [INFO] [stdout] 90 | 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:98:8 [INFO] [stdout] | [INFO] [stdout] 98 | 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:108:8 [INFO] [stdout] | [INFO] [stdout] 108 | 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:112:8 [INFO] [stdout] | [INFO] [stdout] 112 | pub fn bytes_to_gb(bytes: u64) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `format_temperature` is never used [INFO] [stdout] --> src/utils.rs:164:8 [INFO] [stdout] | [INFO] [stdout] 164 | pub fn format_temperature(celsius: f32) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_feature_enabled` is never used [INFO] [stdout] --> src/config.rs:61:12 [INFO] [stdout] | [INFO] [stdout] 52 | impl AppConfig { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 61 | 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:94:12 [INFO] [stdout] | [INFO] [stdout] 94 | 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:98:15 [INFO] [stdout] | [INFO] [stdout] 96 | impl Features { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] 97 | #[cfg(feature = "docker")] [INFO] [stdout] 98 | pub const DOCKER: bool = true; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 103 | pub const NVIDIA_GPU: bool = true; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 110 | pub const AMD_GPU: bool = false; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 111 | [INFO] [stdout] 112 | pub fn has_gpu_support() -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 116 | 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:121:12 [INFO] [stdout] | [INFO] [stdout] 121 | 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:128:12 [INFO] [stdout] | [INFO] [stdout] 127 | impl PerformanceProfile { [INFO] [stdout] | ----------------------- associated functions in this implementation [INFO] [stdout] 128 | pub fn detect() -> Self { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 153 | 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:278:12 [INFO] [stdout] | [INFO] [stdout] 19 | impl SystemMonitor { [INFO] [stdout] | ------------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 278 | 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:13:5 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct GpuMonitor { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 13 | 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:48:8 [INFO] [stdout] | [INFO] [stdout] 16 | impl GpuMonitor { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 48 | fn init_amd() -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 257 | fn get_amd_gpus(&self) -> Result, String> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 278 | 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 `EnhancedSparkline` is never constructed [INFO] [stdout] --> src/ui/widgets.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct EnhancedSparkline<'a> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `style`, `max_value`, `show_baseline`, and `render` are never used [INFO] [stdout] --> src/ui/widgets.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 13 | impl<'a> EnhancedSparkline<'a> { [INFO] [stdout] | ------------------------------ associated items in this implementation [INFO] [stdout] 14 | pub fn new(data: &'a [u64]) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 23 | pub fn style(mut self, style: Style) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | pub fn max_value(mut self, max: u64) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 33 | pub fn show_baseline(mut self, show: bool) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 38 | pub fn render(self, area: Rect, buf: &mut Buffer) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MultiGauge` is never constructed [INFO] [stdout] --> src/ui/widgets.rs:58:12 [INFO] [stdout] | [INFO] [stdout] 58 | pub struct MultiGauge<'a> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `GaugeData` is never constructed [INFO] [stdout] --> src/ui/widgets.rs:64:12 [INFO] [stdout] | [INFO] [stdout] 64 | pub struct GaugeData<'a> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `block`, and `direction` are never used [INFO] [stdout] --> src/ui/widgets.rs:73:12 [INFO] [stdout] | [INFO] [stdout] 72 | impl<'a> MultiGauge<'a> { [INFO] [stdout] | ----------------------- associated items in this implementation [INFO] [stdout] 73 | pub fn new(gauges: Vec>) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 81 | pub fn block(mut self, block: Block<'a>) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 86 | pub fn direction(mut self, direction: Direction) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ProgressBar` is never constructed [INFO] [stdout] --> src/ui/widgets.rs:139:12 [INFO] [stdout] | [INFO] [stdout] 139 | 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:149:12 [INFO] [stdout] | [INFO] [stdout] 148 | impl<'a> ProgressBar<'a> { [INFO] [stdout] | ------------------------ associated items in this implementation [INFO] [stdout] 149 | pub fn new(progress: f64) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 160 | pub fn label(mut self, label: &'a str) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 165 | pub fn style(mut self, style: Style) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 170 | pub fn background_style(mut self, style: Style) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 175 | pub fn show_percentage(mut self, show: bool) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 180 | 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:224:8 [INFO] [stdout] | [INFO] [stdout] 223 | impl<'a> ProgressBar<'a> { [INFO] [stdout] | ------------------------ method in this implementation [INFO] [stdout] 224 | 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:249:12 [INFO] [stdout] | [INFO] [stdout] 249 | pub struct StatusIndicator<'a> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Status` is never used [INFO] [stdout] --> src/ui/widgets.rs:256:10 [INFO] [stdout] | [INFO] [stdout] 256 | 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:264:12 [INFO] [stdout] | [INFO] [stdout] 263 | impl Status { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] 264 | pub fn color(self) -> Color { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 273 | pub fn symbol(self) -> &'static str { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 282 | 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:293:12 [INFO] [stdout] | [INFO] [stdout] 292 | impl<'a> StatusIndicator<'a> { [INFO] [stdout] | ---------------------------- associated items in this implementation [INFO] [stdout] 293 | pub fn new(status: Status, label: &'a str) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 301 | pub fn show_symbol(mut self, show: bool) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MiniChart` is never constructed [INFO] [stdout] --> src/ui/widgets.rs:326:12 [INFO] [stdout] | [INFO] [stdout] 326 | pub struct MiniChart<'a> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `style`, `fill_char`, `empty_char`, and `max_value` are never used [INFO] [stdout] --> src/ui/widgets.rs:335:12 [INFO] [stdout] | [INFO] [stdout] 334 | impl<'a> MiniChart<'a> { [INFO] [stdout] | ---------------------- associated items in this implementation [INFO] [stdout] 335 | pub fn new(data: &'a [f64]) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 345 | pub fn style(mut self, style: Style) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 350 | pub fn fill_char(mut self, ch: char) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 355 | pub fn empty_char(mut self, ch: char) -> Self { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 360 | pub fn max_value(mut self, max: f64) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ScrollableText` is never constructed [INFO] [stdout] --> src/ui/widgets.rs:410:12 [INFO] [stdout] | [INFO] [stdout] 410 | pub struct ScrollableText<'a> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `scroll_offset`, `block`, `style`, and `highlight_line` are never used [INFO] [stdout] --> src/ui/widgets.rs:420:12 [INFO] [stdout] | [INFO] [stdout] 419 | impl<'a> ScrollableText<'a> { [INFO] [stdout] | --------------------------- associated items in this implementation [INFO] [stdout] 420 | pub fn new(lines: Vec<&'a str>) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 431 | pub fn scroll_offset(mut self, offset: usize) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 436 | pub fn block(mut self, block: Block<'a>) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 441 | pub fn style(mut self, style: Style) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 446 | pub fn highlight_line(mut self, line: usize, style: Style) -> 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: struct `SidebarLayout` is never constructed [INFO] [stdout] --> src/ui/layouts.rs:175:12 [INFO] [stdout] | [INFO] [stdout] 175 | pub struct SidebarLayout { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_sidebar_layout` is never used [INFO] [stdout] --> src/ui/layouts.rs:180:8 [INFO] [stdout] | [INFO] [stdout] 180 | pub fn create_sidebar_layout(area: Rect, sidebar_width: u16, left_sidebar: bool) -> SidebarLayout { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ResponsiveLayout` is never constructed [INFO] [stdout] --> src/ui/layouts.rs:212:12 [INFO] [stdout] | [INFO] [stdout] 212 | pub struct ResponsiveLayout { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_responsive_layout` is never used [INFO] [stdout] --> src/ui/layouts.rs:217:8 [INFO] [stdout] | [INFO] [stdout] 217 | pub fn create_responsive_layout(area: Rect, min_width: u16, min_height: u16) -> ResponsiveLayout { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_tabbed_layout` is never used [INFO] [stdout] --> src/ui/layouts.rs:253:8 [INFO] [stdout] | [INFO] [stdout] 253 | pub fn create_tabbed_layout(area: Rect) -> (Rect, Rect) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_status_layout` is never used [INFO] [stdout] --> src/ui/layouts.rs:265:8 [INFO] [stdout] | [INFO] [stdout] 265 | pub fn create_status_layout(area: Rect, status_items: usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `centered_rect` is never used [INFO] [stdout] --> src/ui/layouts.rs:284:12 [INFO] [stdout] | [INFO] [stdout] 284 | pub fn centered_rect(percent_x: u16, percent_y: u16, area: Rect) -> Rect { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `min_area_for_text` is never used [INFO] [stdout] --> src/ui/layouts.rs:304:12 [INFO] [stdout] | [INFO] [stdout] 304 | pub fn min_area_for_text(text: &str, margin: u16) -> (u16, u16) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_area_too_small` is never used [INFO] [stdout] --> src/ui/layouts.rs:312:12 [INFO] [stdout] | [INFO] [stdout] 312 | pub fn is_area_too_small(area: Rect, min_width: u16, min_height: u16) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `split_evenly` is never used [INFO] [stdout] --> src/ui/layouts.rs:316:12 [INFO] [stdout] | [INFO] [stdout] 316 | pub fn split_evenly(area: Rect, parts: usize, direction: Direction, spacing: u16) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `add_margin` is never used [INFO] [stdout] --> src/ui/layouts.rs:349:12 [INFO] [stdout] | [INFO] [stdout] 349 | pub fn add_margin(area: Rect, margin: u16) -> Rect { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 00s [INFO] running `Command { std: "docker" "inspect" "0ee0d3487de8ec9885e843205be2b09fa560a997e9fe7deb3d267b76683c0cf1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0ee0d3487de8ec9885e843205be2b09fa560a997e9fe7deb3d267b76683c0cf1", kill_on_drop: false }` [INFO] [stdout] 0ee0d3487de8ec9885e843205be2b09fa560a997e9fe7deb3d267b76683c0cf1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] afd5ff3c2f10c26f8bcbde470caa8e191394bb0b9daf2b443cb5e4458f899ed4 [INFO] running `Command { std: "docker" "start" "-a" "afd5ff3c2f10c26f8bcbde470caa8e191394bb0b9daf2b443cb5e4458f899ed4", kill_on_drop: false }` [INFO] [stderr] Compiling puls v0.3.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused variable: `monitor` [INFO] [stdout] --> src/monitors/gpu_monitor.rs:312:13 [INFO] [stdout] | [INFO] [stdout] 312 | 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: function `setup_signal_handlers` is never used [INFO] [stdout] --> src/main.rs:293:4 [INFO] [stdout] | [INFO] [stdout] 293 | 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:316:4 [INFO] [stdout] | [INFO] [stdout] 316 | 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:332:4 [INFO] [stdout] | [INFO] [stdout] 332 | fn init_logging(verbose: bool) -> Result<(), AppError> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `status` is never read [INFO] [stdout] --> src/types.rs:30:9 [INFO] [stdout] | [INFO] [stdout] 20 | pub struct ProcessInfo { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 30 | pub status: String, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ProcessInfo` 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 `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: fields `load_average`, `uptime`, and `boot_time` are never read [INFO] [stdout] --> src/types.rs:142:9 [INFO] [stdout] | [INFO] [stdout] 126 | pub struct GlobalUsage { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 142 | pub load_average: (f64, f64, f64), [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 143 | pub uptime: u64, [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: variants `Pid`, `DiskRead`, and `DiskWrite` are never constructed [INFO] [stdout] --> src/types.rs:227:5 [INFO] [stdout] | [INFO] [stdout] 223 | pub enum ProcessSortBy { [INFO] [stdout] | ------------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 227 | Pid, [INFO] [stdout] | ^^^ [INFO] [stdout] 228 | DiskRead, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 229 | 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:239:10 [INFO] [stdout] | [INFO] [stdout] 239 | pub enum AppMessage { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AppPerformance` is never constructed [INFO] [stdout] --> src/types.rs:246:12 [INFO] [stdout] | [INFO] [stdout] 246 | 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:261:9 [INFO] [stdout] | [INFO] [stdout] 254 | pub struct AppConfig { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 261 | pub show_system_processes: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 262 | 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` is never used [INFO] [stdout] --> src/utils.rs:50:8 [INFO] [stdout] | [INFO] [stdout] 50 | pub fn format_frequency(hz: u64) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `clamp` is never used [INFO] [stdout] --> src/utils.rs:98:8 [INFO] [stdout] | [INFO] [stdout] 98 | 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:108:8 [INFO] [stdout] | [INFO] [stdout] 108 | 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:112:8 [INFO] [stdout] | [INFO] [stdout] 112 | pub fn bytes_to_gb(bytes: u64) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `format_temperature` is never used [INFO] [stdout] --> src/utils.rs:164:8 [INFO] [stdout] | [INFO] [stdout] 164 | pub fn format_temperature(celsius: f32) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_feature_enabled` is never used [INFO] [stdout] --> src/config.rs:61:12 [INFO] [stdout] | [INFO] [stdout] 52 | impl AppConfig { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 61 | 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:94:12 [INFO] [stdout] | [INFO] [stdout] 94 | 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:98:15 [INFO] [stdout] | [INFO] [stdout] 96 | impl Features { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] 97 | #[cfg(feature = "docker")] [INFO] [stdout] 98 | pub const DOCKER: bool = true; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 103 | pub const NVIDIA_GPU: bool = true; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 110 | pub const AMD_GPU: bool = false; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 111 | [INFO] [stdout] 112 | pub fn has_gpu_support() -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 116 | 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:121:12 [INFO] [stdout] | [INFO] [stdout] 121 | 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:128:12 [INFO] [stdout] | [INFO] [stdout] 127 | impl PerformanceProfile { [INFO] [stdout] | ----------------------- associated functions in this implementation [INFO] [stdout] 128 | pub fn detect() -> Self { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 153 | 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:278:12 [INFO] [stdout] | [INFO] [stdout] 19 | impl SystemMonitor { [INFO] [stdout] | ------------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 278 | 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:13:5 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct GpuMonitor { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 13 | 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:48:8 [INFO] [stdout] | [INFO] [stdout] 16 | impl GpuMonitor { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 48 | fn init_amd() -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 257 | 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: struct `EnhancedSparkline` is never constructed [INFO] [stdout] --> src/ui/widgets.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct EnhancedSparkline<'a> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `style`, `max_value`, `show_baseline`, and `render` are never used [INFO] [stdout] --> src/ui/widgets.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 13 | impl<'a> EnhancedSparkline<'a> { [INFO] [stdout] | ------------------------------ associated items in this implementation [INFO] [stdout] 14 | pub fn new(data: &'a [u64]) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 23 | pub fn style(mut self, style: Style) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | pub fn max_value(mut self, max: u64) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 33 | pub fn show_baseline(mut self, show: bool) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 38 | pub fn render(self, area: Rect, buf: &mut Buffer) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MultiGauge` is never constructed [INFO] [stdout] --> src/ui/widgets.rs:58:12 [INFO] [stdout] | [INFO] [stdout] 58 | pub struct MultiGauge<'a> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `GaugeData` is never constructed [INFO] [stdout] --> src/ui/widgets.rs:64:12 [INFO] [stdout] | [INFO] [stdout] 64 | pub struct GaugeData<'a> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `block`, and `direction` are never used [INFO] [stdout] --> src/ui/widgets.rs:73:12 [INFO] [stdout] | [INFO] [stdout] 72 | impl<'a> MultiGauge<'a> { [INFO] [stdout] | ----------------------- associated items in this implementation [INFO] [stdout] 73 | pub fn new(gauges: Vec>) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 81 | pub fn block(mut self, block: Block<'a>) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 86 | pub fn direction(mut self, direction: Direction) -> Self { [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:160:12 [INFO] [stdout] | [INFO] [stdout] 148 | impl<'a> ProgressBar<'a> { [INFO] [stdout] | ------------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 160 | pub fn label(mut self, label: &'a str) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 165 | pub fn style(mut self, style: Style) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 170 | pub fn background_style(mut self, style: Style) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 175 | pub fn show_percentage(mut self, show: bool) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 180 | 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:249:12 [INFO] [stdout] | [INFO] [stdout] 249 | pub struct StatusIndicator<'a> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `symbol` and `text` are never used [INFO] [stdout] --> src/ui/widgets.rs:273:12 [INFO] [stdout] | [INFO] [stdout] 263 | impl Status { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 273 | pub fn symbol(self) -> &'static str { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 282 | 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:293:12 [INFO] [stdout] | [INFO] [stdout] 292 | impl<'a> StatusIndicator<'a> { [INFO] [stdout] | ---------------------------- associated items in this implementation [INFO] [stdout] 293 | pub fn new(status: Status, label: &'a str) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 301 | pub fn show_symbol(mut self, show: bool) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MiniChart` is never constructed [INFO] [stdout] --> src/ui/widgets.rs:326:12 [INFO] [stdout] | [INFO] [stdout] 326 | pub struct MiniChart<'a> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `style`, `fill_char`, `empty_char`, and `max_value` are never used [INFO] [stdout] --> src/ui/widgets.rs:335:12 [INFO] [stdout] | [INFO] [stdout] 334 | impl<'a> MiniChart<'a> { [INFO] [stdout] | ---------------------- associated items in this implementation [INFO] [stdout] 335 | pub fn new(data: &'a [f64]) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 345 | pub fn style(mut self, style: Style) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 350 | pub fn fill_char(mut self, ch: char) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 355 | pub fn empty_char(mut self, ch: char) -> Self { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 360 | pub fn max_value(mut self, max: f64) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ScrollableText` is never constructed [INFO] [stdout] --> src/ui/widgets.rs:410:12 [INFO] [stdout] | [INFO] [stdout] 410 | pub struct ScrollableText<'a> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `scroll_offset`, `block`, `style`, and `highlight_line` are never used [INFO] [stdout] --> src/ui/widgets.rs:420:12 [INFO] [stdout] | [INFO] [stdout] 419 | impl<'a> ScrollableText<'a> { [INFO] [stdout] | --------------------------- associated items in this implementation [INFO] [stdout] 420 | pub fn new(lines: Vec<&'a str>) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 431 | pub fn scroll_offset(mut self, offset: usize) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 436 | pub fn block(mut self, block: Block<'a>) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 441 | pub fn style(mut self, style: Style) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 446 | pub fn highlight_line(mut self, line: usize, style: Style) -> 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: struct `SidebarLayout` is never constructed [INFO] [stdout] --> src/ui/layouts.rs:175:12 [INFO] [stdout] | [INFO] [stdout] 175 | pub struct SidebarLayout { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_sidebar_layout` is never used [INFO] [stdout] --> src/ui/layouts.rs:180:8 [INFO] [stdout] | [INFO] [stdout] 180 | pub fn create_sidebar_layout(area: Rect, sidebar_width: u16, left_sidebar: bool) -> SidebarLayout { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ResponsiveLayout` is never constructed [INFO] [stdout] --> src/ui/layouts.rs:212:12 [INFO] [stdout] | [INFO] [stdout] 212 | pub struct ResponsiveLayout { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_responsive_layout` is never used [INFO] [stdout] --> src/ui/layouts.rs:217:8 [INFO] [stdout] | [INFO] [stdout] 217 | pub fn create_responsive_layout(area: Rect, min_width: u16, min_height: u16) -> ResponsiveLayout { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_tabbed_layout` is never used [INFO] [stdout] --> src/ui/layouts.rs:253:8 [INFO] [stdout] | [INFO] [stdout] 253 | pub fn create_tabbed_layout(area: Rect) -> (Rect, Rect) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_status_layout` is never used [INFO] [stdout] --> src/ui/layouts.rs:265:8 [INFO] [stdout] | [INFO] [stdout] 265 | pub fn create_status_layout(area: Rect, status_items: usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_area_too_small` is never used [INFO] [stdout] --> src/ui/layouts.rs:312:12 [INFO] [stdout] | [INFO] [stdout] 312 | pub fn is_area_too_small(area: Rect, min_width: u16, min_height: u16) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `split_evenly` is never used [INFO] [stdout] --> src/ui/layouts.rs:316:12 [INFO] [stdout] | [INFO] [stdout] 316 | pub fn split_evenly(area: Rect, parts: usize, direction: Direction, spacing: u16) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `add_margin` is never used [INFO] [stdout] --> src/ui/layouts.rs:349:12 [INFO] [stdout] | [INFO] [stdout] 349 | pub fn add_margin(area: Rect, margin: u16) -> Rect { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 2.64s [INFO] running `Command { std: "docker" "inspect" "afd5ff3c2f10c26f8bcbde470caa8e191394bb0b9daf2b443cb5e4458f899ed4", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "afd5ff3c2f10c26f8bcbde470caa8e191394bb0b9daf2b443cb5e4458f899ed4", kill_on_drop: false }` [INFO] [stdout] afd5ff3c2f10c26f8bcbde470caa8e191394bb0b9daf2b443cb5e4458f899ed4 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 166e937f25db2383eccda47a2a8142d8af1faa77d1c10188835afe79b75b07bd [INFO] running `Command { std: "docker" "start" "-a" "166e937f25db2383eccda47a2a8142d8af1faa77d1c10188835afe79b75b07bd", kill_on_drop: false }` [INFO] [stderr] warning: unused variable: `monitor` [INFO] [stderr] --> src/monitors/gpu_monitor.rs:312:13 [INFO] [stderr] | [INFO] [stderr] 312 | let monitor = GpuMonitor::new(); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_monitor` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `monitor` [INFO] [stderr] --> src/monitors/container_monitor.rs:360:13 [INFO] [stderr] | [INFO] [stderr] 360 | let monitor = ContainerMonitor::new(); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_monitor` [INFO] [stderr] [INFO] [stderr] warning: function `setup_signal_handlers` is never used [INFO] [stderr] --> src/main.rs:293:4 [INFO] [stderr] | [INFO] [stderr] 293 | fn setup_signal_handlers() -> Result<(), Box> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: function `check_system_requirements` is never used [INFO] [stderr] --> src/main.rs:316:4 [INFO] [stderr] | [INFO] [stderr] 316 | fn check_system_requirements() -> Result<(), AppError> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `init_logging` is never used [INFO] [stderr] --> src/main.rs:332:4 [INFO] [stderr] | [INFO] [stderr] 332 | fn init_logging(verbose: bool) -> Result<(), AppError> { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `status` is never read [INFO] [stderr] --> src/types.rs:30:9 [INFO] [stderr] | [INFO] [stderr] 20 | pub struct ProcessInfo { [INFO] [stderr] | ----------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 30 | pub status: String, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `ProcessInfo` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `image` and `ports` are never read [INFO] [stderr] --> src/types.rs:44:9 [INFO] [stderr] | [INFO] [stderr] 34 | pub struct ContainerInfo { [INFO] [stderr] | ------------- fields in this struct [INFO] [stderr] ... [INFO] [stderr] 44 | pub image: String, [INFO] [stderr] | ^^^^^ [INFO] [stderr] 45 | pub ports: String, [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `ContainerInfo` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `driver_version` is never read [INFO] [stderr] --> src/types.rs:60:9 [INFO] [stderr] | [INFO] [stderr] 49 | pub struct GpuInfo { [INFO] [stderr] | ------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 60 | pub driver_version: String, [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `GpuInfo` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `file_descriptors` is never read [INFO] [stderr] --> src/types.rs:77:9 [INFO] [stderr] | [INFO] [stderr] 64 | pub struct DetailedProcessInfo { [INFO] [stderr] | ------------------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 77 | pub file_descriptors: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `DetailedProcessInfo` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `temp` is never read [INFO] [stderr] --> src/types.rs:85:9 [INFO] [stderr] | [INFO] [stderr] 82 | pub struct CoreInfo { [INFO] [stderr] | -------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 85 | pub temp: Option, [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `CoreInfo` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `read_rate`, `write_rate`, `read_ops`, `write_ops`, and `is_ssd` are never read [INFO] [stderr] --> src/types.rs:96:9 [INFO] [stderr] | [INFO] [stderr] 89 | pub struct DetailedDiskInfo { [INFO] [stderr] | ---------------- fields in this struct [INFO] [stderr] ... [INFO] [stderr] 96 | pub read_rate: u64, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] 97 | pub write_rate: u64, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] 98 | pub read_ops: u64, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] 99 | pub write_ops: u64, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] 100 | pub is_ssd: Option, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `DetailedDiskInfo` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `errors_rx`, `errors_tx`, and `interface_type` are never read [INFO] [stderr] --> src/types.rs:112:9 [INFO] [stderr] | [INFO] [stderr] 104 | pub struct DetailedNetInfo { [INFO] [stderr] | --------------- fields in this struct [INFO] [stderr] ... [INFO] [stderr] 112 | pub errors_rx: u64, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] 113 | pub errors_tx: u64, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] 114 | pub interface_type: String, [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `DetailedNetInfo` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `cpu_temp`, `gpu_temps`, and `motherboard_temp` are never read [INFO] [stderr] --> src/types.rs:120:9 [INFO] [stderr] | [INFO] [stderr] 119 | pub struct SystemTemperatures { [INFO] [stderr] | ------------------ fields in this struct [INFO] [stderr] 120 | pub cpu_temp: Option, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] 121 | pub gpu_temps: Vec, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] 122 | pub motherboard_temp: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `SystemTemperatures` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `load_average`, `uptime`, and `boot_time` are never read [INFO] [stderr] --> src/types.rs:142:9 [INFO] [stderr] | [INFO] [stderr] 126 | pub struct GlobalUsage { [INFO] [stderr] | ----------- fields in this struct [INFO] [stderr] ... [INFO] [stderr] 142 | pub load_average: (f64, f64, f64), [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] 143 | pub uptime: u64, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 144 | pub boot_time: u64, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `GlobalUsage` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `temperatures` and `last_update` are never read [INFO] [stderr] --> src/types.rs:182:9 [INFO] [stderr] | [INFO] [stderr] 173 | pub struct DynamicData { [INFO] [stderr] | ----------- fields in this struct [INFO] [stderr] ... [INFO] [stderr] 182 | pub temperatures: SystemTemperatures, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] 183 | pub last_update: std::time::Instant, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `DynamicData` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `container_table_state` is never read [INFO] [stderr] --> src/types.rs:211:9 [INFO] [stderr] | [INFO] [stderr] 208 | pub struct AppState { [INFO] [stderr] | -------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 211 | pub container_table_state: TableState, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `AppState` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: variants `Pid`, `DiskRead`, and `DiskWrite` are never constructed [INFO] [stderr] --> src/types.rs:227:5 [INFO] [stderr] | [INFO] [stderr] 223 | pub enum ProcessSortBy { [INFO] [stderr] | ------------- variants in this enum [INFO] [stderr] ... [INFO] [stderr] 227 | Pid, [INFO] [stderr] | ^^^ [INFO] [stderr] 228 | DiskRead, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] 229 | DiskWrite, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `ProcessSortBy` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: enum `AppMessage` is never used [INFO] [stderr] --> src/types.rs:239:10 [INFO] [stderr] | [INFO] [stderr] 239 | pub enum AppMessage { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `AppPerformance` is never constructed [INFO] [stderr] --> src/types.rs:246:12 [INFO] [stderr] | [INFO] [stderr] 246 | pub struct AppPerformance { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `show_system_processes` and `auto_scroll` are never read [INFO] [stderr] --> src/types.rs:261:9 [INFO] [stderr] | [INFO] [stderr] 254 | pub struct AppConfig { [INFO] [stderr] | --------- fields in this struct [INFO] [stderr] ... [INFO] [stderr] 261 | pub show_system_processes: bool, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 262 | pub auto_scroll: bool, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `AppConfig` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: function `format_frequency` is never used [INFO] [stderr] --> src/utils.rs:50:8 [INFO] [stderr] | [INFO] [stderr] 50 | pub fn format_frequency(hz: u64) -> String { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `clamp` is never used [INFO] [stderr] --> src/utils.rs:98:8 [INFO] [stderr] | [INFO] [stderr] 98 | pub fn clamp(value: T, min: T, max: T) -> T { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `bytes_to_mb` is never used [INFO] [stderr] --> src/utils.rs:108:8 [INFO] [stderr] | [INFO] [stderr] 108 | pub fn bytes_to_mb(bytes: u64) -> f64 { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `bytes_to_gb` is never used [INFO] [stderr] --> src/utils.rs:112:8 [INFO] [stderr] | [INFO] [stderr] 112 | pub fn bytes_to_gb(bytes: u64) -> f64 { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `format_temperature` is never used [INFO] [stderr] --> src/utils.rs:164:8 [INFO] [stderr] | [INFO] [stderr] 164 | pub fn format_temperature(celsius: f32) -> String { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `is_feature_enabled` is never used [INFO] [stderr] --> src/config.rs:61:12 [INFO] [stderr] | [INFO] [stderr] 52 | impl AppConfig { [INFO] [stderr] | -------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 61 | pub fn is_feature_enabled(&self, feature: &str) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `Features` is never constructed [INFO] [stderr] --> src/config.rs:94:12 [INFO] [stderr] | [INFO] [stderr] 94 | pub struct Features; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated items `DOCKER`, `NVIDIA_GPU`, `AMD_GPU`, `has_gpu_support`, and `has_container_support` are never used [INFO] [stderr] --> src/config.rs:98:15 [INFO] [stderr] | [INFO] [stderr] 96 | impl Features { [INFO] [stderr] | ------------- associated items in this implementation [INFO] [stderr] 97 | #[cfg(feature = "docker")] [INFO] [stderr] 98 | pub const DOCKER: bool = true; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 103 | pub const NVIDIA_GPU: bool = true; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 110 | pub const AMD_GPU: bool = false; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] 111 | [INFO] [stderr] 112 | pub fn has_gpu_support() -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 116 | pub fn has_container_support() -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `PerformanceProfile` is never constructed [INFO] [stderr] --> src/config.rs:121:12 [INFO] [stderr] | [INFO] [stderr] 121 | pub struct PerformanceProfile { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated functions `detect` and `safe_mode` are never used [INFO] [stderr] --> src/config.rs:128:12 [INFO] [stderr] | [INFO] [stderr] 127 | impl PerformanceProfile { [INFO] [stderr] | ----------------------- associated functions in this implementation [INFO] [stderr] 128 | pub fn detect() -> Self { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 153 | pub fn safe_mode() -> Self { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `last_update` is never read [INFO] [stderr] --> src/monitors/mod.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 16 | pub struct DataCollector { [INFO] [stderr] | ------------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 21 | last_update: Instant, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `health_check` is never used [INFO] [stderr] --> src/monitors/mod.rs:182:18 [INFO] [stderr] | [INFO] [stderr] 24 | impl DataCollector { [INFO] [stderr] | ------------------ method in this implementation [INFO] [stderr] ... [INFO] [stderr] 182 | pub async fn health_check(&self) -> Vec<(String, bool)> { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: type alias `SharedDataCollector` is never used [INFO] [stderr] --> src/monitors/mod.rs:204:10 [INFO] [stderr] | [INFO] [stderr] 204 | pub type SharedDataCollector = Arc>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `refresh` is never used [INFO] [stderr] --> src/monitors/system_monitor.rs:278:12 [INFO] [stderr] | [INFO] [stderr] 19 | impl SystemMonitor { [INFO] [stderr] | ------------------ method in this implementation [INFO] [stderr] ... [INFO] [stderr] 278 | pub fn refresh(&mut self) { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `last_update` is never read [INFO] [stderr] --> src/monitors/gpu_monitor.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 4 | pub struct GpuMonitor { [INFO] [stderr] | ---------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 13 | last_update: std::time::Instant, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated items `init_amd` and `get_amd_gpus` are never used [INFO] [stderr] --> src/monitors/gpu_monitor.rs:48:8 [INFO] [stderr] | [INFO] [stderr] 16 | impl GpuMonitor { [INFO] [stderr] | --------------- associated items in this implementation [INFO] [stderr] ... [INFO] [stderr] 48 | fn init_amd() -> bool { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 257 | fn get_amd_gpus(&self) -> Result, String> { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `get_runtime_info` is never used [INFO] [stderr] --> src/monitors/container_monitor.rs:332:18 [INFO] [stderr] | [INFO] [stderr] 20 | impl ContainerMonitor { [INFO] [stderr] | --------------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 332 | pub async fn get_runtime_info(&self) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `EnhancedSparkline` is never constructed [INFO] [stderr] --> src/ui/widgets.rs:6:12 [INFO] [stderr] | [INFO] [stderr] 6 | pub struct EnhancedSparkline<'a> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated items `new`, `style`, `max_value`, `show_baseline`, and `render` are never used [INFO] [stderr] --> src/ui/widgets.rs:14:12 [INFO] [stderr] | [INFO] [stderr] 13 | impl<'a> EnhancedSparkline<'a> { [INFO] [stderr] | ------------------------------ associated items in this implementation [INFO] [stderr] 14 | pub fn new(data: &'a [u64]) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 23 | pub fn style(mut self, style: Style) -> Self { [INFO] [stderr] | ^^^^^ [INFO] [stderr] ... [INFO] [stderr] 28 | pub fn max_value(mut self, max: u64) -> Self { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 33 | pub fn show_baseline(mut self, show: bool) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 38 | pub fn render(self, area: Rect, buf: &mut Buffer) { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `MultiGauge` is never constructed [INFO] [stderr] --> src/ui/widgets.rs:58:12 [INFO] [stderr] | [INFO] [stderr] 58 | pub struct MultiGauge<'a> { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `GaugeData` is never constructed [INFO] [stderr] --> src/ui/widgets.rs:64:12 [INFO] [stderr] | [INFO] [stderr] 64 | pub struct GaugeData<'a> { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated items `new`, `block`, and `direction` are never used [INFO] [stderr] --> src/ui/widgets.rs:73:12 [INFO] [stderr] | [INFO] [stderr] 72 | impl<'a> MultiGauge<'a> { [INFO] [stderr] | ----------------------- associated items in this implementation [INFO] [stderr] 73 | pub fn new(gauges: Vec>) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 81 | pub fn block(mut self, block: Block<'a>) -> Self { [INFO] [stderr] | ^^^^^ [INFO] [stderr] ... [INFO] [stderr] 86 | pub fn direction(mut self, direction: Direction) -> Self { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `label`, `style`, `background_style`, `show_percentage`, and `custom_text` are never used [INFO] [stderr] --> src/ui/widgets.rs:160:12 [INFO] [stderr] | [INFO] [stderr] 148 | impl<'a> ProgressBar<'a> { [INFO] [stderr] | ------------------------ methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 160 | pub fn label(mut self, label: &'a str) -> Self { [INFO] [stderr] | ^^^^^ [INFO] [stderr] ... [INFO] [stderr] 165 | pub fn style(mut self, style: Style) -> Self { [INFO] [stderr] | ^^^^^ [INFO] [stderr] ... [INFO] [stderr] 170 | pub fn background_style(mut self, style: Style) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 175 | pub fn show_percentage(mut self, show: bool) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 180 | pub fn custom_text(mut self, text: &'a str) -> Self { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `StatusIndicator` is never constructed [INFO] [stderr] --> src/ui/widgets.rs:249:12 [INFO] [stderr] | [INFO] [stderr] 249 | pub struct StatusIndicator<'a> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `symbol` and `text` are never used [INFO] [stderr] --> src/ui/widgets.rs:273:12 [INFO] [stderr] | [INFO] [stderr] 263 | impl Status { [INFO] [stderr] | ----------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 273 | pub fn symbol(self) -> &'static str { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 282 | pub fn text(self) -> &'static str { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated items `new` and `show_symbol` are never used [INFO] [stderr] --> src/ui/widgets.rs:293:12 [INFO] [stderr] | [INFO] [stderr] 292 | impl<'a> StatusIndicator<'a> { [INFO] [stderr] | ---------------------------- associated items in this implementation [INFO] [stderr] 293 | pub fn new(status: Status, label: &'a str) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 301 | pub fn show_symbol(mut self, show: bool) -> Self { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `MiniChart` is never constructed [INFO] [stderr] --> src/ui/widgets.rs:326:12 [INFO] [stderr] | [INFO] [stderr] 326 | pub struct MiniChart<'a> { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated items `new`, `style`, `fill_char`, `empty_char`, and `max_value` are never used [INFO] [stderr] --> src/ui/widgets.rs:335:12 [INFO] [stderr] | [INFO] [stderr] 334 | impl<'a> MiniChart<'a> { [INFO] [stderr] | ---------------------- associated items in this implementation [INFO] [stderr] 335 | pub fn new(data: &'a [f64]) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 345 | pub fn style(mut self, style: Style) -> Self { [INFO] [stderr] | ^^^^^ [INFO] [stderr] ... [INFO] [stderr] 350 | pub fn fill_char(mut self, ch: char) -> Self { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 355 | pub fn empty_char(mut self, ch: char) -> Self { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 360 | pub fn max_value(mut self, max: f64) -> Self { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `ScrollableText` is never constructed [INFO] [stderr] --> src/ui/widgets.rs:410:12 [INFO] [stderr] | [INFO] [stderr] 410 | pub struct ScrollableText<'a> { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated items `new`, `scroll_offset`, `block`, `style`, and `highlight_line` are never used [INFO] [stderr] --> src/ui/widgets.rs:420:12 [INFO] [stderr] | [INFO] [stderr] 419 | impl<'a> ScrollableText<'a> { [INFO] [stderr] | --------------------------- associated items in this implementation [INFO] [stderr] 420 | pub fn new(lines: Vec<&'a str>) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 431 | pub fn scroll_offset(mut self, offset: usize) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 436 | pub fn block(mut self, block: Block<'a>) -> Self { [INFO] [stderr] | ^^^^^ [INFO] [stderr] ... [INFO] [stderr] 441 | pub fn style(mut self, style: Style) -> Self { [INFO] [stderr] | ^^^^^ [INFO] [stderr] ... [INFO] [stderr] 446 | pub fn highlight_line(mut self, line: usize, style: Style) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: multiple fields are never read [INFO] [stderr] --> src/ui/colors.rs:6:9 [INFO] [stderr] | [INFO] [stderr] 4 | pub struct ColorScheme { [INFO] [stderr] | ----------- fields in this struct [INFO] [stderr] 5 | pub primary: Color, [INFO] [stderr] 6 | pub secondary: Color, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] 7 | pub accent: Color, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 8 | pub background: Color, [INFO] [stderr] 9 | pub text: Color, [INFO] [stderr] | ^^^^ [INFO] [stderr] 10 | pub text_secondary: Color, [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] 11 | pub success: Color, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] 12 | pub warning: Color, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] 13 | pub error: Color, [INFO] [stderr] | ^^^^^ [INFO] [stderr] 14 | pub info: Color, [INFO] [stderr] | ^^^^ [INFO] [stderr] 15 | pub border: Color, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 16 | pub highlight: Color, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `ColorScheme` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: associated functions `matrix`, `high_contrast`, and `solarized_dark` are never used [INFO] [stderr] --> src/ui/colors.rs:54:12 [INFO] [stderr] | [INFO] [stderr] 19 | impl ColorScheme { [INFO] [stderr] | ---------------- associated functions in this implementation [INFO] [stderr] ... [INFO] [stderr] 54 | pub fn matrix() -> Self { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 71 | pub fn high_contrast() -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 88 | pub fn solarized_dark() -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `memory_usage_color` is never used [INFO] [stderr] --> src/ui/colors.rs:116:8 [INFO] [stderr] | [INFO] [stderr] 116 | pub fn memory_usage_color(usage: f32) -> Color { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `disk_usage_color` is never used [INFO] [stderr] --> src/ui/colors.rs:126:8 [INFO] [stderr] | [INFO] [stderr] 126 | pub fn disk_usage_color(usage: f32) -> Color { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `temperature_color` is never used [INFO] [stderr] --> src/ui/colors.rs:136:8 [INFO] [stderr] | [INFO] [stderr] 136 | pub fn temperature_color(temp: f32) -> Color { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `network_activity_color` is never used [INFO] [stderr] --> src/ui/colors.rs:146:8 [INFO] [stderr] | [INFO] [stderr] 146 | pub fn network_activity_color(rate_mbps: f64) -> Color { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `container_status_color` is never used [INFO] [stderr] --> src/ui/colors.rs:169:8 [INFO] [stderr] | [INFO] [stderr] 169 | pub fn container_status_color(status: &str) -> Color { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated functions `rainbow`, `blue_to_red`, and `green_to_red` are never used [INFO] [stderr] --> src/ui/colors.rs:197:12 [INFO] [stderr] | [INFO] [stderr] 185 | impl ColorGradient { [INFO] [stderr] | ------------------ associated functions in this implementation [INFO] [stderr] ... [INFO] [stderr] 197 | pub fn rainbow(value: f32) -> Color { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 209 | pub fn blue_to_red(value: f32) -> Color { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 216 | pub fn green_to_red(value: f32) -> Color { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `ThemeManager` is never constructed [INFO] [stderr] --> src/ui/colors.rs:228:12 [INFO] [stderr] | [INFO] [stderr] 228 | pub struct ThemeManager { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated items `new`, `set_theme`, `get_theme`, `next_theme`, and `usage_color` are never used [INFO] [stderr] --> src/ui/colors.rs:233:12 [INFO] [stderr] | [INFO] [stderr] 232 | impl ThemeManager { [INFO] [stderr] | ----------------- associated items in this implementation [INFO] [stderr] 233 | pub fn new() -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 239 | pub fn set_theme(&mut self, theme: ColorScheme) { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 243 | pub fn get_theme(&self) -> &ColorScheme { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 247 | pub fn next_theme(&mut self) { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 251 | pub fn usage_color(&self, usage: f32, metric_type: &str) -> Color { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `darken_color` is never used [INFO] [stderr] --> src/ui/colors.rs:278:12 [INFO] [stderr] | [INFO] [stderr] 278 | pub fn darken_color(color: Color, factor: f32) -> Color { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `lighten_color` is never used [INFO] [stderr] --> src/ui/colors.rs:299:12 [INFO] [stderr] | [INFO] [stderr] 299 | pub fn lighten_color(color: Color, factor: f32) -> Color { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `contrasting_text_color` is never used [INFO] [stderr] --> src/ui/colors.rs:312:12 [INFO] [stderr] | [INFO] [stderr] 312 | pub fn contrasting_text_color(background: Color) -> Color { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `create_two_row_layout` is never used [INFO] [stderr] --> src/ui/layouts.rs:44:8 [INFO] [stderr] | [INFO] [stderr] 44 | pub fn create_two_row_layout(area: Rect, top_percentage: u16) -> (Rect, Rect) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `create_grid_layout` is never used [INFO] [stderr] --> src/ui/layouts.rs:56:8 [INFO] [stderr] | [INFO] [stderr] 56 | pub fn create_grid_layout(area: Rect, rows: u16, cols: u16) -> Vec> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `create_adaptive_grid` is never used [INFO] [stderr] --> src/ui/layouts.rs:82:8 [INFO] [stderr] | [INFO] [stderr] 82 | pub fn create_adaptive_grid(area: Rect, item_count: usize) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `create_summary_layout` is never used [INFO] [stderr] --> src/ui/layouts.rs:159:8 [INFO] [stderr] | [INFO] [stderr] 159 | pub fn create_summary_layout(area: Rect, sections: usize) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `SidebarLayout` is never constructed [INFO] [stderr] --> src/ui/layouts.rs:175:12 [INFO] [stderr] | [INFO] [stderr] 175 | pub struct SidebarLayout { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `create_sidebar_layout` is never used [INFO] [stderr] --> src/ui/layouts.rs:180:8 [INFO] [stderr] | [INFO] [stderr] 180 | pub fn create_sidebar_layout(area: Rect, sidebar_width: u16, left_sidebar: bool) -> SidebarLayout { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `ResponsiveLayout` is never constructed [INFO] [stderr] --> src/ui/layouts.rs:212:12 [INFO] [stderr] | [INFO] [stderr] 212 | pub struct ResponsiveLayout { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `create_responsive_layout` is never used [INFO] [stderr] --> src/ui/layouts.rs:217:8 [INFO] [stderr] | [INFO] [stderr] 217 | pub fn create_responsive_layout(area: Rect, min_width: u16, min_height: u16) -> ResponsiveLayout { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `create_tabbed_layout` is never used [INFO] [stderr] --> src/ui/layouts.rs:253:8 [INFO] [stderr] | [INFO] [stderr] 253 | pub fn create_tabbed_layout(area: Rect) -> (Rect, Rect) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `create_status_layout` is never used [INFO] [stderr] --> src/ui/layouts.rs:265:8 [INFO] [stderr] | [INFO] [stderr] 265 | pub fn create_status_layout(area: Rect, status_items: usize) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `is_area_too_small` is never used [INFO] [stderr] --> src/ui/layouts.rs:312:12 [INFO] [stderr] | [INFO] [stderr] 312 | pub fn is_area_too_small(area: Rect, min_width: u16, min_height: u16) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `split_evenly` is never used [INFO] [stderr] --> src/ui/layouts.rs:316:12 [INFO] [stderr] | [INFO] [stderr] 316 | pub fn split_evenly(area: Rect, parts: usize, direction: Direction, spacing: u16) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `add_margin` is never used [INFO] [stderr] --> src/ui/layouts.rs:349:12 [INFO] [stderr] | [INFO] [stderr] 349 | pub fn add_margin(area: Rect, margin: u16) -> Rect { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `puls` (bin "puls" test) generated 76 warnings [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.21s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/puls-24c5ddaff13e1c6b) [INFO] [stdout] [INFO] [stdout] running 23 tests [INFO] [stdout] test monitors::container_monitor::tests::test_container_monitor_creation ... ok [INFO] [stdout] test monitors::system_monitor::tests::test_process_sorting ... ok [INFO] [stdout] test monitors::gpu_monitor::tests::test_gpu_monitor_creation ... ok [INFO] [stdout] test monitors::container_monitor::tests::test_container_health_check ... ok [INFO] [stdout] test ui::colors::tests::test_process_status_colors ... ok [INFO] [stdout] test monitors::gpu_monitor::tests::test_gpu_history ... ok [INFO] [stdout] test ui::colors::tests::test_usage_colors ... ok [INFO] [stdout] test ui::colors::tests::test_color_gradient ... ok [INFO] [stdout] test ui::widgets::tests::test_status_colors ... ok [INFO] [stdout] test utils::tests::test_format_rate ... ok [INFO] [stdout] test ui::layouts::tests::test_min_area_for_text ... ok [INFO] [stdout] test utils::tests::test_format_size ... ok [INFO] [stdout] test utils::tests::test_safe_percentage ... ok [INFO] [stdout] test utils::tests::test_is_system_process ... ok [INFO] [stdout] test ui::layouts::tests::test_two_column_layout ... ok [INFO] [stdout] test ui::widgets::tests::test_progress_bar_creation ... ok [INFO] [stdout] test ui::widgets::tests::test_progress_bar_clamping ... ok [INFO] [stdout] test tests::test_app_error_display ... ok [INFO] [stdout] test ui::colors::tests::test_color_schemes ... ok [INFO] [stdout] test ui::layouts::tests::test_main_layout ... ok [INFO] [stdout] test monitors::system_monitor::tests::test_system_monitor_creation ... ok [INFO] [stdout] test ui::layouts::tests::test_centered_rect ... FAILED [INFO] [stdout] test ui::layouts::tests::test_grid_dimensions ... FAILED [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- ui::layouts::tests::test_centered_rect stdout ---- [INFO] [stdout] [INFO] [stdout] thread 'ui::layouts::tests::test_centered_rect' (36) panicked at src/ui/layouts.rs:398:9: [INFO] [stdout] assertion `left == right` failed [INFO] [stdout] left: 13 [INFO] [stdout] right: 12 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x58defe7107d2 - std::backtrace_rs::backtrace::libunwind::trace::h7cddb8376417e7cc [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x58defe7107d2 - std::backtrace_rs::backtrace::trace_unsynchronized::hb4e41acf4b349ff1 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x58defe7107d2 - std::sys::backtrace::_print_fmt::h1222b80910ba6eb5 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/sys/backtrace.rs:66:9 [INFO] [stdout] 3: 0x58defe7107d2 - ::fmt::h5bb8a979ba5db788 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/sys/backtrace.rs:39:26 [INFO] [stdout] 4: 0x58defe72380f - core::fmt::rt::Argument::fmt::h2ee2c138a50a7796 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/core/src/fmt/rt.rs:173:76 [INFO] [stdout] 5: 0x58defe72380f - core::fmt::write::h1e0dbf07fe3990bd [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/core/src/fmt/mod.rs:1468:25 [INFO] [stdout] 6: 0x58defe6dc213 - std::io::default_write_fmt::h7d7ad5ed6a883d81 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x58defe6dc213 - std::io::Write::write_fmt::hc477d9325b345ece [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/io/mod.rs:1954:13 [INFO] [stdout] 8: 0x58defe6e9032 - std::sys::backtrace::BacktraceLock::print::h788d486777205086 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/sys/backtrace.rs:42:9 [INFO] [stdout] 9: 0x58defe6edf4f - std::panicking::default_hook::{{closure}}::ha7bdfeb5949fc0fa [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/panicking.rs:301:27 [INFO] [stdout] 10: 0x58defe6edde1 - std::panicking::default_hook::h6dad75ec721846f4 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/panicking.rs:325:9 [INFO] [stdout] 11: 0x58defe3649fe - as core::ops::function::Fn>::call::h33799d04b0b96146 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/alloc/src/boxed.rs:1999:9 [INFO] [stdout] 12: 0x58defe3649fe - test::test_main_with_exit_callback::{{closure}}::h880e31c829a2eb5d [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x58defe6ee69e - as core::ops::function::Fn>::call::h5e1b8c652ea49180 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/alloc/src/boxed.rs:1999:9 [INFO] [stdout] 14: 0x58defe6ee69e - std::panicking::panic_with_hook::hba00e869ada17676 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/panicking.rs:842:13 [INFO] [stdout] 15: 0x58defe6ee3ba - std::panicking::panic_handler::{{closure}}::h3d21149c258e5ceb [INFO] [stderr] error: test failed, to rerun pass `--bin puls` [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/panicking.rs:707:13 [INFO] [stdout] 16: 0x58defe6e9169 - std::sys::backtrace::__rust_end_short_backtrace::h4f5d9b9dfb3e6ec1 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/sys/backtrace.rs:174:18 [INFO] [stdout] 17: 0x58defe6d003d - __rustc[9a7a9f9af7564de1]::rust_begin_unwind [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/panicking.rs:698:5 [INFO] [stdout] 18: 0x58defe72db90 - core::panicking::panic_fmt::h78e817a90331d98b [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/core/src/panicking.rs:75:14 [INFO] [stdout] 19: 0x58defe72d943 - core::panicking::assert_failed_inner::he0a3934689115f42 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/core/src/panicking.rs:439:17 [INFO] [stdout] 20: 0x58defe5e0457 - core::panicking::assert_failed::he6553f59a30622b1 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/core/src/panicking.rs:394:5 [INFO] [stdout] 21: 0x58defe29def7 - puls::ui::layouts::tests::test_centered_rect::h52d288ab61f7b8b7 [INFO] [stdout] at /opt/rustwide/workdir/src/ui/layouts.rs:398:9 [INFO] [stdout] 22: 0x58defe29df17 - puls::ui::layouts::tests::test_centered_rect::{{closure}}::h4ff1f78d467e53e3 [INFO] [stdout] at /opt/rustwide/workdir/src/ui/layouts.rs:391:28 [INFO] [stdout] 23: 0x58defe2a97b6 - core::ops::function::FnOnce::call_once::hb05ac1c381a67493 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/core/src/ops/function.rs:253:5 [INFO] [stdout] 24: 0x58defe3647fb - core::ops::function::FnOnce::call_once::h7f4b4fba903e39d5 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/core/src/ops/function.rs:253:5 [INFO] [stdout] 25: 0x58defe3647fb - test::__rust_begin_short_backtrace::h9277cb6a2ccfc000 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/test/src/lib.rs:663:18 [INFO] [stdout] 26: 0x58defe37a2a5 - test::run_test_in_process::{{closure}}::h9aea5ca90d1f4423 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/test/src/lib.rs:686:74 [INFO] [stdout] 27: 0x58defe37a2a5 - as core::ops::function::FnOnce<()>>::call_once::h364f5fe6cc8afa85 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/core/src/panic/unwind_safe.rs:272:9 [INFO] [stdout] 28: 0x58defe37a2a5 - std::panicking::catch_unwind::do_call::h2b2bec3317fe53ec [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/panicking.rs:590:40 [INFO] [stdout] 29: 0x58defe37a2a5 - std::panicking::catch_unwind::hc3763734156da4af [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/panicking.rs:553:19 [INFO] [stdout] 30: 0x58defe37a2a5 - std::panic::catch_unwind::h28038391e867eabc [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/panic.rs:359:14 [INFO] [stdout] 31: 0x58defe37a2a5 - test::run_test_in_process::had0273166695a036 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/test/src/lib.rs:686:27 [INFO] [stdout] 32: 0x58defe37a2a5 - test::run_test::{{closure}}::h743d09d4bb476605 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/test/src/lib.rs:607:43 [INFO] [stdout] 33: 0x58defe350cc4 - test::run_test::{{closure}}::he950b8f9118d37e2 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/test/src/lib.rs:637:41 [INFO] [stdout] 34: 0x58defe350cc4 - std::sys::backtrace::__rust_begin_short_backtrace::hbfaffa6539f6abb7 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/sys/backtrace.rs:158:18 [INFO] [stdout] 35: 0x58defe3545aa - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hcce3c2c65b9c3b20 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/thread/mod.rs:559:17 [INFO] [stdout] 36: 0x58defe3545aa - as core::ops::function::FnOnce<()>>::call_once::hb66b30b6d37985a5 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/core/src/panic/unwind_safe.rs:272:9 [INFO] [stdout] 37: 0x58defe3545aa - std::panicking::catch_unwind::do_call::h992bbe2c32dc1d79 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/panicking.rs:590:40 [INFO] [stdout] 38: 0x58defe3545aa - std::panicking::catch_unwind::h412991d5237de610 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/panicking.rs:553:19 [INFO] [stdout] 39: 0x58defe3545aa - std::panic::catch_unwind::ha82b139b3eb5840a [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/panic.rs:359:14 [INFO] [stdout] 40: 0x58defe3545aa - std::thread::Builder::spawn_unchecked_::{{closure}}::ha823b36f5114938e [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/thread/mod.rs:557:30 [INFO] [stdout] 41: 0x58defe3545aa - core::ops::function::FnOnce::call_once{{vtable.shim}}::hf120e7b1db22ac07 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/core/src/ops/function.rs:253:5 [INFO] [stdout] 42: 0x58defe6e31bf - as core::ops::function::FnOnce>::call_once::h3e049222c99298ac [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/alloc/src/boxed.rs:1985:9 [INFO] [stdout] 43: 0x58defe6e31bf - std::sys::pal::unix::thread::Thread::new::thread_start::h942e336943ad5963 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/sys/pal/unix/thread.rs:118:17 [INFO] [stdout] 44: 0x78689dd28aa4 - [INFO] [stdout] 45: 0x78689ddb5a34 - clone [INFO] [stdout] 46: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- ui::layouts::tests::test_grid_dimensions stdout ---- [INFO] [stdout] [INFO] [stdout] thread 'ui::layouts::tests::test_grid_dimensions' (37) panicked at src/ui/layouts.rs:385:9: [INFO] [stdout] assertion `left == right` failed [INFO] [stdout] left: (1, 4) [INFO] [stdout] right: (2, 2) [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x58defe7107d2 - std::backtrace_rs::backtrace::libunwind::trace::h7cddb8376417e7cc [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x58defe7107d2 - std::backtrace_rs::backtrace::trace_unsynchronized::hb4e41acf4b349ff1 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x58defe7107d2 - std::sys::backtrace::_print_fmt::h1222b80910ba6eb5 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/sys/backtrace.rs:66:9 [INFO] [stdout] 3: 0x58defe7107d2 - ::fmt::h5bb8a979ba5db788 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/sys/backtrace.rs:39:26 [INFO] [stdout] 4: 0x58defe72380f - core::fmt::rt::Argument::fmt::h2ee2c138a50a7796 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/core/src/fmt/rt.rs:173:76 [INFO] [stdout] 5: 0x58defe72380f - core::fmt::write::h1e0dbf07fe3990bd [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/core/src/fmt/mod.rs:1468:25 [INFO] [stdout] 6: 0x58defe6dc213 - std::io::default_write_fmt::h7d7ad5ed6a883d81 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x58defe6dc213 - std::io::Write::write_fmt::hc477d9325b345ece [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/io/mod.rs:1954:13 [INFO] [stdout] 8: 0x58defe6e9032 - std::sys::backtrace::BacktraceLock::print::h788d486777205086 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/sys/backtrace.rs:42:9 [INFO] [stdout] 9: 0x58defe6edf4f - std::panicking::default_hook::{{closure}}::ha7bdfeb5949fc0fa [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/panicking.rs:301:27 [INFO] [stdout] 10: 0x58defe6edde1 - std::panicking::default_hook::h6dad75ec721846f4 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/panicking.rs:325:9 [INFO] [stdout] 11: 0x58defe3649fe - as core::ops::function::Fn>::call::h33799d04b0b96146 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/alloc/src/boxed.rs:1999:9 [INFO] [stdout] 12: 0x58defe3649fe - test::test_main_with_exit_callback::{{closure}}::h880e31c829a2eb5d [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x58defe6ee69e - as core::ops::function::Fn>::call::h5e1b8c652ea49180 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/alloc/src/boxed.rs:1999:9 [INFO] [stdout] 14: 0x58defe6ee69e - std::panicking::panic_with_hook::hba00e869ada17676 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/panicking.rs:842:13 [INFO] [stdout] 15: 0x58defe6ee3ba - std::panicking::panic_handler::{{closure}}::h3d21149c258e5ceb [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/panicking.rs:707:13 [INFO] [stdout] 16: 0x58defe6e9169 - std::sys::backtrace::__rust_end_short_backtrace::h4f5d9b9dfb3e6ec1 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/sys/backtrace.rs:174:18 [INFO] [stdout] 17: 0x58defe6d003d - __rustc[9a7a9f9af7564de1]::rust_begin_unwind [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/panicking.rs:698:5 [INFO] [stdout] 18: 0x58defe72db90 - core::panicking::panic_fmt::h78e817a90331d98b [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/core/src/panicking.rs:75:14 [INFO] [stdout] 19: 0x58defe72d943 - core::panicking::assert_failed_inner::he0a3934689115f42 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/core/src/panicking.rs:439:17 [INFO] [stdout] 20: 0x58defe29ccf3 - core::panicking::assert_failed::h2027f3a99fe48a80 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/core/src/panicking.rs:394:5 [INFO] [stdout] 21: 0x58defe29dfaf - puls::ui::layouts::tests::test_grid_dimensions::h1643c2789bb6c053 [INFO] [stdout] at /opt/rustwide/workdir/src/ui/layouts.rs:385:9 [INFO] [stdout] 22: 0x58defe29e0e7 - puls::ui::layouts::tests::test_grid_dimensions::{{closure}}::haf8b7997c1363a18 [INFO] [stdout] at /opt/rustwide/workdir/src/ui/layouts.rs:384:30 [INFO] [stdout] 23: 0x58defe2a9526 - core::ops::function::FnOnce::call_once::h362eb17747bc3375 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/core/src/ops/function.rs:253:5 [INFO] [stdout] 24: 0x58defe3647fb - core::ops::function::FnOnce::call_once::h7f4b4fba903e39d5 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/core/src/ops/function.rs:253:5 [INFO] [stdout] 25: 0x58defe3647fb - test::__rust_begin_short_backtrace::h9277cb6a2ccfc000 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/test/src/lib.rs:663:18 [INFO] [stdout] 26: 0x58defe37a2a5 - test::run_test_in_process::{{closure}}::h9aea5ca90d1f4423 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/test/src/lib.rs:686:74 [INFO] [stdout] 27: 0x58defe37a2a5 - as core::ops::function::FnOnce<()>>::call_once::h364f5fe6cc8afa85 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/core/src/panic/unwind_safe.rs:272:9 [INFO] [stdout] 28: 0x58defe37a2a5 - std::panicking::catch_unwind::do_call::h2b2bec3317fe53ec [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/panicking.rs:590:40 [INFO] [stdout] 29: 0x58defe37a2a5 - std::panicking::catch_unwind::hc3763734156da4af [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/panicking.rs:553:19 [INFO] [stdout] 30: 0x58defe37a2a5 - std::panic::catch_unwind::h28038391e867eabc [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/panic.rs:359:14 [INFO] [stdout] 31: 0x58defe37a2a5 - test::run_test_in_process::had0273166695a036 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/test/src/lib.rs:686:27 [INFO] [stdout] 32: 0x58defe37a2a5 - test::run_test::{{closure}}::h743d09d4bb476605 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/test/src/lib.rs:607:43 [INFO] [stdout] 33: 0x58defe350cc4 - test::run_test::{{closure}}::he950b8f9118d37e2 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/test/src/lib.rs:637:41 [INFO] [stdout] 34: 0x58defe350cc4 - std::sys::backtrace::__rust_begin_short_backtrace::hbfaffa6539f6abb7 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/sys/backtrace.rs:158:18 [INFO] [stdout] 35: 0x58defe3545aa - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hcce3c2c65b9c3b20 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/thread/mod.rs:559:17 [INFO] [stdout] 36: 0x58defe3545aa - as core::ops::function::FnOnce<()>>::call_once::hb66b30b6d37985a5 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/core/src/panic/unwind_safe.rs:272:9 [INFO] [stdout] 37: 0x58defe3545aa - std::panicking::catch_unwind::do_call::h992bbe2c32dc1d79 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/panicking.rs:590:40 [INFO] [stdout] 38: 0x58defe3545aa - std::panicking::catch_unwind::h412991d5237de610 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/panicking.rs:553:19 [INFO] [stdout] 39: 0x58defe3545aa - std::panic::catch_unwind::ha82b139b3eb5840a [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/panic.rs:359:14 [INFO] [stdout] 40: 0x58defe3545aa - std::thread::Builder::spawn_unchecked_::{{closure}}::ha823b36f5114938e [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/thread/mod.rs:557:30 [INFO] [stdout] 41: 0x58defe3545aa - core::ops::function::FnOnce::call_once{{vtable.shim}}::hf120e7b1db22ac07 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/core/src/ops/function.rs:253:5 [INFO] [stdout] 42: 0x58defe6e31bf - as core::ops::function::FnOnce>::call_once::h3e049222c99298ac [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/alloc/src/boxed.rs:1985:9 [INFO] [stdout] 43: 0x58defe6e31bf - std::sys::pal::unix::thread::Thread::new::thread_start::h942e336943ad5963 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/sys/pal/unix/thread.rs:118:17 [INFO] [stdout] 44: 0x78689dd28aa4 - [INFO] [stdout] 45: 0x78689ddb5a34 - clone [INFO] [stdout] 46: 0x0 - [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] ui::layouts::tests::test_centered_rect [INFO] [stdout] ui::layouts::tests::test_grid_dimensions [INFO] [stdout] [INFO] [stdout] test result: FAILED. 21 passed; 2 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.20s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "166e937f25db2383eccda47a2a8142d8af1faa77d1c10188835afe79b75b07bd", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "166e937f25db2383eccda47a2a8142d8af1faa77d1c10188835afe79b75b07bd", kill_on_drop: false }` [INFO] [stdout] 166e937f25db2383eccda47a2a8142d8af1faa77d1c10188835afe79b75b07bd