[INFO] cloning repository https://github.com/cassel/data-x
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/cassel/data-x" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcassel%2Fdata-x", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcassel%2Fdata-x'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 76c8822b0d9a7cfc1796b2aee982ed8f5ba25f71
[INFO] checking cassel/data-x against master#80b898258da78fdd1262438126aa0cf90e395f0c for pr-149195-4
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcassel%2Fdata-x" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/cassel/data-x
[INFO] finished tweaking git repo https://github.com/cassel/data-x
[INFO] tweaked toml for git repo https://github.com/cassel/data-x written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/cassel/data-x on toolchain 80b898258da78fdd1262438126aa0cf90e395f0c
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+80b898258da78fdd1262438126aa0cf90e395f0c" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/cassel/data-x 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" "+80b898258da78fdd1262438126aa0cf90e395f0c" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded indextree-macros v0.1.3
[INFO] [stderr]   Downloaded open v5.3.3
[INFO] [stderr]   Downloaded indextree v4.7.4
[INFO] [stderr]   Downloaded egui_extras v0.29.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:29356a839a4d14451438f794ce8414e707d72405f44418718d724d22562fe786" "/opt/rustwide/cargo-home/bin/cargo" "+80b898258da78fdd1262438126aa0cf90e395f0c" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 42a62093f106975ec7df1bbf0eb4d6c815f9a29ab5817728547d7481821278be
[INFO] running `Command { std: "docker" "start" "-a" "42a62093f106975ec7df1bbf0eb4d6c815f9a29ab5817728547d7481821278be", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "42a62093f106975ec7df1bbf0eb4d6c815f9a29ab5817728547d7481821278be", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "42a62093f106975ec7df1bbf0eb4d6c815f9a29ab5817728547d7481821278be", kill_on_drop: false }`
[INFO] [stdout] 42a62093f106975ec7df1bbf0eb4d6c815f9a29ab5817728547d7481821278be
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:29356a839a4d14451438f794ce8414e707d72405f44418718d724d22562fe786" "/opt/rustwide/cargo-home/bin/cargo" "+80b898258da78fdd1262438126aa0cf90e395f0c" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 2e4d4f04045f401cee4ec43b4856a16c5daee1d57a7b0c4cca898b0472e24ed1
[INFO] running `Command { std: "docker" "start" "-a" "2e4d4f04045f401cee4ec43b4856a16c5daee1d57a7b0c4cca898b0472e24ed1", kill_on_drop: false }`
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling libc v0.2.179
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling zerocopy v0.8.31
[INFO] [stderr]    Compiling find-msvc-tools v0.1.6
[INFO] [stderr]    Compiling syn v2.0.113
[INFO] [stderr]     Checking concurrent-queue v2.5.0
[INFO] [stderr]     Checking tracing-core v0.1.36
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]     Checking flate2 v1.1.5
[INFO] [stderr]     Checking moxcms v0.7.11
[INFO] [stderr]    Compiling glutin_egl_sys v0.7.1
[INFO] [stderr]    Compiling glutin_glx_sys v0.6.1
[INFO] [stderr]    Compiling winit v0.30.12
[INFO] [stderr]    Compiling zmij v1.0.12
[INFO] [stderr]    Compiling glutin v0.32.3
[INFO] [stderr]    Compiling cc v1.2.51
[INFO] [stderr]     Checking event-listener v5.4.1
[INFO] [stderr]    Compiling serde_json v1.0.148
[INFO] [stderr]     Checking dpi v0.1.2
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]     Checking async-executor v1.13.3
[INFO] [stderr]    Compiling instability v0.3.11
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]     Checking clap_builder v4.5.54
[INFO] [stderr]    Compiling mime_guess2 v2.3.1
[INFO] [stderr]     Checking rayon-core v1.13.0
[INFO] [stderr]     Checking castaway v0.2.4
[INFO] [stderr]     Checking event-listener-strategy v0.5.4
[INFO] [stderr]     Checking itertools v0.13.0
[INFO] [stderr]     Checking is-docker v0.2.0
[INFO] [stderr]     Checking plotters-backend v0.3.7
[INFO] [stderr]    Compiling itertools v0.14.0
[INFO] [stderr]     Checking ryu v1.0.22
[INFO] [stderr]    Compiling indoc v2.0.7
[INFO] [stderr]     Checking async-channel v2.5.0
[INFO] [stderr]     Checking async-lock v3.4.2
[INFO] [stderr]     Checking async-broadcast v0.7.2
[INFO] [stderr]    Compiling rfd v0.14.1
[INFO] [stderr]     Checking blocking v1.6.2
[INFO] [stderr]     Checking unicase v2.9.0
[INFO] [stderr]     Checking ciborium-io v0.2.2
[INFO] [stderr]     Checking plotters-svg v0.3.7
[INFO] [stderr]     Checking compact_str v0.8.1
[INFO] [stderr]     Checking rayon v1.11.0
[INFO] [stderr]     Checking async-fs v2.2.0
[INFO] [stderr]     Checking is-wsl v0.4.0
[INFO] [stderr]     Checking regex-automata v0.4.13
[INFO] [stderr]     Checking itertools v0.10.5
[INFO] [stderr]     Checking urlencoding v2.1.3
[INFO] [stderr]     Checking pathdiff v0.2.3
[INFO] [stderr]     Checking pollster v0.3.0
[INFO] [stderr]     Checking home v0.5.12
[INFO] [stderr]     Checking chrono v0.4.42
[INFO] [stderr]     Checking plotters v0.3.7
[INFO] [stderr]     Checking oorandom v11.1.5
[INFO] [stderr]     Checking unicode-width v0.2.2
[INFO] [stderr]    Compiling wayland-backend v0.3.12
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking getrandom v0.3.4
[INFO] [stderr]     Checking memmap2 v0.9.9
[INFO] [stderr]     Checking getrandom v0.2.16
[INFO] [stderr]     Checking x11-dl v2.21.0
[INFO] [stderr]     Checking errno v0.3.14
[INFO] [stderr]     Checking xdg-home v1.3.0
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking mio v1.1.1
[INFO] [stderr]     Checking is-terminal v0.4.17
[INFO] [stderr]     Checking open v5.3.3
[INFO] [stderr]     Checking bitflags v2.10.0
[INFO] [stderr]     Checking signal-hook-registry v1.4.8
[INFO] [stderr]     Checking fs2 v0.4.3
[INFO] [stderr]     Checking criterion-plot v0.5.0
[INFO] [stderr]     Checking signal-hook v0.3.18
[INFO] [stderr]     Checking rustix v1.1.3
[INFO] [stderr]     Checking png v0.18.0
[INFO] [stderr]     Checking xkbcommon-dl v0.4.2
[INFO] [stderr]     Checking nix v0.29.0
[INFO] [stderr]     Checking unicode-truncate v1.1.0
[INFO] [stderr]     Checking signal-hook-mio v0.2.5
[INFO] [stderr]     Checking regex v1.12.2
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling zvariant_utils v2.1.0
[INFO] [stderr]    Compiling darling_core v0.23.0
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling zerocopy-derive v0.8.31
[INFO] [stderr]    Compiling zerovec-derive v0.11.2
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling bytemuck_derive v1.10.2
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling thiserror-impl v2.0.17
[INFO] [stderr]    Compiling enumflags2_derive v0.7.12
[INFO] [stderr]    Compiling zvariant_derive v4.2.0
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.1
[INFO] [stderr]    Compiling zbus_macros v4.4.0
[INFO] [stderr]    Compiling serde_repr v0.1.20
[INFO] [stderr]     Checking bytemuck v1.24.0
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling strum_macros v0.27.2
[INFO] [stderr]     Checking image v0.25.9
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]    Compiling strum_macros v0.26.4
[INFO] [stderr]    Compiling enum-map-derive v0.17.0
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]    Compiling clap_derive v4.5.49
[INFO] [stderr]     Checking crossterm v0.28.1
[INFO] [stderr]     Checking thiserror v2.0.17
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]     Checking polling v3.11.0
[INFO] [stderr]     Checking gethostname v1.1.0
[INFO] [stderr]     Checking calloop v0.13.0
[INFO] [stderr]     Checking x11rb v0.13.2
[INFO] [stderr]     Checking calloop v0.14.3
[INFO] [stderr]     Checking yoke v0.8.1
[INFO] [stderr]     Checking async-io v2.6.0
[INFO] [stderr]     Checking zerovec v0.11.5
[INFO] [stderr]     Checking zerotrie v0.2.3
[INFO] [stderr]     Checking tempfile v3.24.0
[INFO] [stderr]    Compiling darling_macro v0.23.0
[INFO] [stderr]     Checking wayland-client v0.31.12
[INFO] [stderr]     Checking wayland-csd-frame v0.3.0
[INFO] [stderr]     Checking async-net v2.0.0
[INFO] [stderr]    Compiling darling v0.23.0
[INFO] [stderr]     Checking tinystr v0.8.2
[INFO] [stderr]     Checking potential_utf v0.1.4
[INFO] [stderr]     Checking icu_collections v2.1.1
[INFO] [stderr]     Checking strum v0.26.3
[INFO] [stderr]     Checking icu_locale_core v2.1.1
[INFO] [stderr]    Compiling strum v0.27.2
[INFO] [stderr]    Compiling indextree-macros v0.1.3
[INFO] [stderr]     Checking arboard v3.6.1
[INFO] [stderr]     Checking clap v4.5.54
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking half v2.7.1
[INFO] [stderr]     Checking ciborium-ll v0.2.2
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking indextree v4.7.4
[INFO] [stderr]     Checking ratatui v0.28.1
[INFO] [stderr]     Checking ahash v0.8.12
[INFO] [stderr]     Checking emath v0.29.1
[INFO] [stderr]     Checking enumflags2 v0.7.12
[INFO] [stderr]     Checking ron v0.8.1
[INFO] [stderr]     Checking enum-map v2.7.3
[INFO] [stderr]     Checking tinytemplate v1.2.1
[INFO] [stderr]     Checking ciborium v0.2.2
[INFO] [stderr]     Checking wayland-protocols v0.32.10
[INFO] [stderr]     Checking wayland-cursor v0.31.12
[INFO] [stderr]     Checking calloop-wayland-source v0.3.0
[INFO] [stderr]     Checking calloop-wayland-source v0.4.1
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking criterion v0.5.1
[INFO] [stderr]     Checking icu_provider v2.1.1
[INFO] [stderr]     Checking ecolor v0.29.1
[INFO] [stderr]     Checking icu_normalizer v2.1.1
[INFO] [stderr]     Checking icu_properties v2.1.2
[INFO] [stderr]     Checking epaint v0.29.1
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]     Checking zvariant v4.2.0
[INFO] [stderr]     Checking webbrowser v1.0.6
[INFO] [stderr]     Checking egui v0.29.1
[INFO] [stderr]     Checking wayland-protocols-wlr v0.3.10
[INFO] [stderr]     Checking wayland-protocols-plasma v0.3.10
[INFO] [stderr]     Checking wayland-protocols-experimental v20250721.0.1
[INFO] [stderr]     Checking wayland-protocols-misc v0.3.10
[INFO] [stderr]     Checking zbus_names v3.0.0
[INFO] [stderr]     Checking smithay-client-toolkit v0.19.2
[INFO] [stderr]     Checking smithay-client-toolkit v0.20.0
[INFO] [stderr]     Checking zbus v4.4.0
[INFO] [stderr]     Checking smithay-clipboard v0.7.3
[INFO] [stderr]     Checking egui_glow v0.29.1
[INFO] [stderr]     Checking egui_extras v0.29.1
[INFO] [stderr]     Checking ashpd v0.8.1
[INFO] [stderr]     Checking egui-winit v0.29.1
[INFO] [stderr]     Checking glutin-winit v0.5.0
[INFO] [stderr]     Checking eframe v0.29.1
[INFO] [stderr]     Checking data-x v0.4.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `TreePanelColors`, `TreePanelState`, `render_tree_panel_with_colors`, and `render_tree_panel`
[INFO] [stdout]   --> src/gui/mod.rs:16:22
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub use tree_panel::{render_tree_panel, render_tree_panel_with_colors, TreePanelColors, TreePanelState};
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `FileTypeCategory`, `TreemapPanel`, `TreemapRect`, `TreemapResponse`, and `TreemapState`
[INFO] [stdout]   --> src/gui/mod.rs:18:25
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub use treemap_panel::{FileTypeCategory, TreemapPanel, TreemapRect, TreemapResponse, TreemapState};
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `TreePanelColors`, `TreePanelState`, `render_tree_panel_with_colors`, and `render_tree_panel`
[INFO] [stdout]   --> src/gui/mod.rs:16:22
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub use tree_panel::{render_tree_panel, render_tree_panel_with_colors, TreePanelColors, TreePanelState};
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `FileTypeCategory`, `TreemapPanel`, `TreemapRect`, `TreemapResponse`, and `TreemapState`
[INFO] [stdout]   --> src/gui/mod.rs:18:25
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub use treemap_panel::{FileTypeCategory, TreemapPanel, TreemapRect, TreemapResponse, TreemapState};
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `row_response`
[INFO] [stdout]    --> src/gui/app.rs:620:13
[INFO] [stdout]     |
[INFO] [stdout] 620 |         let row_response = ui.horizontal(|ui| {
[INFO] [stdout]     |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_row_response`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `s2` is assigned to, but never used
[INFO] [stdout]    --> src/gui/app.rs:828:17
[INFO] [stdout]     |
[INFO] [stdout] 828 |             let mut s2: u64 = 0;
[INFO] [stdout]     |                 ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_s2` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `s2` is never read
[INFO] [stdout]    --> src/gui/app.rs:830:17
[INFO] [stdout]     |
[INFO] [stdout] 830 |                 s2 += items[j].1;
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Error` is never constructed
[INFO] [stdout]    --> src/gui/app.rs:163:5
[INFO] [stdout]     |
[INFO] [stdout] 159 | pub enum ScanState {
[INFO] [stdout]     |          --------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 163 |     Error(String),
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ScanState` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `start_time` is never read
[INFO] [stdout]    --> src/gui/app.rs:172:9
[INFO] [stdout]     |
[INFO] [stdout] 167 | pub struct ScanProgressInfo {
[INFO] [stdout]     |            ---------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 172 |     pub start_time: Option<Instant>,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ScanProgressInfo` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SIZE_SMALL` is never used
[INFO] [stdout]   --> src/gui/tree_panel.rs:15:7
[INFO] [stdout]    |
[INFO] [stdout] 15 | const SIZE_SMALL: u64 = 1_048_576; // 1 MB
[INFO] [stdout]    |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SIZE_MEDIUM` is never used
[INFO] [stdout]   --> src/gui/tree_panel.rs:16:7
[INFO] [stdout]    |
[INFO] [stdout] 16 | const SIZE_MEDIUM: u64 = 104_857_600; // 100 MB
[INFO] [stdout]    |       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SIZE_LARGE` is never used
[INFO] [stdout]   --> src/gui/tree_panel.rs:17:7
[INFO] [stdout]    |
[INFO] [stdout] 17 | const SIZE_LARGE: u64 = 1_073_741_824; // 1 GB
[INFO] [stdout]    |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TreePanelState` is never constructed
[INFO] [stdout]   --> src/gui/tree_panel.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct TreePanelState {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/gui/tree_panel.rs:42:12
[INFO] [stdout]     |
[INFO] [stdout]  40 | impl TreePanelState {
[INFO] [stdout]     | ------------------- associated items in this implementation
[INFO] [stdout]  41 |     /// Create a new TreePanelState.
[INFO] [stdout]  42 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  53 |     pub fn with_root_expanded(root_id: NodeId) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  60 |     pub fn toggle_expand(&mut self, node_id: NodeId) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  69 |     pub fn expand(&mut self, node_id: NodeId) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  74 |     pub fn collapse(&mut self, node_id: NodeId) {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  79 |     pub fn is_expanded(&self, node_id: NodeId) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  84 |     pub fn select(&mut self, node_id: NodeId) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  90 |     pub fn clear_selection(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  95 |     pub fn selected(&self) -> Option<NodeId> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 |     pub fn select_previous(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn select_next(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 138 |     pub fn get_selected_parent(&self, tree: &FileTree) -> Option<NodeId> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TreePanelColors` is never constructed
[INFO] [stdout]    --> src/gui/tree_panel.rs:145:12
[INFO] [stdout]     |
[INFO] [stdout] 145 | pub struct TreePanelColors {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `dark`, `extension_to_color`, and `size_to_color` are never used
[INFO] [stdout]    --> src/gui/tree_panel.rs:184:12
[INFO] [stdout]     |
[INFO] [stdout] 182 | impl TreePanelColors {
[INFO] [stdout]     | -------------------- associated items in this implementation
[INFO] [stdout] 183 |     /// Create dark theme colors.
[INFO] [stdout] 184 |     pub fn dark() -> Self {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 204 |     pub fn extension_to_color(&self, ext: &str) -> Color32 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 236 |     pub fn size_to_color(&self, size: u64) -> Color32 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `format_size` is never used
[INFO] [stdout]    --> src/gui/tree_panel.rs:250:8
[INFO] [stdout]     |
[INFO] [stdout] 250 | pub fn format_size(bytes: u64) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_icon` is never used
[INFO] [stdout]    --> src/gui/tree_panel.rs:270:4
[INFO] [stdout]     |
[INFO] [stdout] 270 | fn get_icon(node: &FileNode, is_expanded: bool) -> &'static str {
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_node_depth` is never used
[INFO] [stdout]    --> src/gui/tree_panel.rs:314:4
[INFO] [stdout]     |
[INFO] [stdout] 314 | fn compute_node_depth(tree: &FileTree, node_id: NodeId) -> usize {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_tree_panel` is never used
[INFO] [stdout]    --> src/gui/tree_panel.rs:330:8
[INFO] [stdout]     |
[INFO] [stdout] 330 | pub fn render_tree_panel(ui: &mut Ui, tree: &FileTree, state: &mut TreePanelState) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_tree_panel_with_colors` is never used
[INFO] [stdout]    --> src/gui/tree_panel.rs:341:8
[INFO] [stdout]     |
[INFO] [stdout] 341 | pub fn render_tree_panel_with_colors(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `handle_keyboard_input` is never used
[INFO] [stdout]    --> src/gui/tree_panel.rs:369:4
[INFO] [stdout]     |
[INFO] [stdout] 369 | fn handle_keyboard_input(ui: &mut Ui, tree: &FileTree, state: &mut TreePanelState) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_node_recursive` is never used
[INFO] [stdout]    --> src/gui/tree_panel.rs:449:4
[INFO] [stdout]     |
[INFO] [stdout] 449 | fn render_node_recursive(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_node_row` is never used
[INFO] [stdout]    --> src/gui/tree_panel.rs:538:4
[INFO] [stdout]     |
[INFO] [stdout] 538 | fn render_node_row(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_node_color` is never used
[INFO] [stdout]    --> src/gui/tree_panel.rs:676:4
[INFO] [stdout]     |
[INFO] [stdout] 676 | fn get_node_color(node: &FileNode, _is_expanded: bool, colors: &TreePanelColors) -> Color32 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `truncate_name` is never used
[INFO] [stdout]    --> src/gui/tree_panel.rs:691:4
[INFO] [stdout]     |
[INFO] [stdout] 691 | fn truncate_name(name: &str, max_width: f32, ui: &Ui) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `FileTypeCategory` is never used
[INFO] [stdout]   --> src/gui/treemap_panel.rs:14:10
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub enum FileTypeCategory {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `from_extension`, `base_color`, and `hover_color` are never used
[INFO] [stdout]   --> src/gui/treemap_panel.rs:27:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | impl FileTypeCategory {
[INFO] [stdout]    | --------------------- associated items in this implementation
[INFO] [stdout] 26 |     /// Determine file type from extension.
[INFO] [stdout] 27 |     pub fn from_extension(ext: Option<&str>) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 76 |     pub fn base_color(&self) -> Color32 {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 90 |     pub fn hover_color(&self) -> Color32 {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]    --> src/gui/treemap_panel.rs:107:9
[INFO] [stdout]     |
[INFO] [stdout] 106 | pub struct TreemapRect {
[INFO] [stdout]     |            ----------- fields in this struct
[INFO] [stdout] 107 |     pub node_id: NodeId,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 108 |     pub rect: Rect,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 109 |     pub size: u64,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 110 |     pub name: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 111 |     pub is_dir: bool,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 112 |     pub extension: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 113 |     pub path: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 114 |     pub percentage: f32,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TreemapRect` 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: methods `contains` and `file_type` are never used
[INFO] [stdout]    --> src/gui/treemap_panel.rs:119:12
[INFO] [stdout]     |
[INFO] [stdout] 117 | impl TreemapRect {
[INFO] [stdout]     | ---------------- methods in this implementation
[INFO] [stdout] 118 |     /// Check if a point is inside this rectangle.
[INFO] [stdout] 119 |     pub fn contains(&self, pos: Pos2) -> bool {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 124 |     pub fn file_type(&self) -> FileTypeCategory {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `selected_node`, `hovered_node`, `treemap_root`, `cached_rects`, and `last_mouse_pos` are never read
[INFO] [stdout]    --> src/gui/treemap_panel.rs:137:9
[INFO] [stdout]     |
[INFO] [stdout] 135 | pub struct TreemapState {
[INFO] [stdout]     |            ------------ fields in this struct
[INFO] [stdout] 136 |     /// Currently selected node.
[INFO] [stdout] 137 |     pub selected_node: Option<NodeId>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] 138 |     /// Node under the mouse cursor (for hover effects).
[INFO] [stdout] 139 |     pub hovered_node: Option<NodeId>,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 140 |     /// The root node for the current treemap view (for drill-down).
[INFO] [stdout] 141 |     pub treemap_root: Option<NodeId>,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 142 |     /// Cached rectangles from the last render.
[INFO] [stdout] 143 |     pub cached_rects: Vec<TreemapRect>,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 144 |     /// Last mouse position for tooltip.
[INFO] [stdout] 145 |     pub last_mouse_pos: Option<Pos2>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TreemapState` 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 items `new`, `set_root`, and `rect_at_pos` are never used
[INFO] [stdout]    --> src/gui/treemap_panel.rs:149:12
[INFO] [stdout]     |
[INFO] [stdout] 148 | impl TreemapState {
[INFO] [stdout]     | ----------------- associated items in this implementation
[INFO] [stdout] 149 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 154 |     pub fn set_root(&mut self, node_id: Option<NodeId>) {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 160 |     pub fn rect_at_pos(&self, pos: Pos2) -> Option<&TreemapRect> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `tree` and `state` are never read
[INFO] [stdout]    --> src/gui/treemap_panel.rs:168:5
[INFO] [stdout]     |
[INFO] [stdout] 167 | pub struct TreemapPanel<'a> {
[INFO] [stdout]     |            ------------ fields in this struct
[INFO] [stdout] 168 |     tree: &'a FileTree,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 169 |     state: &'a mut TreemapState,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `show` are never used
[INFO] [stdout]    --> src/gui/treemap_panel.rs:174:12
[INFO] [stdout]     |
[INFO] [stdout] 173 | impl<'a> TreemapPanel<'a> {
[INFO] [stdout]     | ------------------------- associated items in this implementation
[INFO] [stdout] 174 |     pub fn new(tree: &'a FileTree, state: &'a mut TreemapState) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 |     pub fn show(self, ui: &mut Ui) -> TreemapResponse {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TreemapResponse` is never constructed
[INFO] [stdout]    --> src/gui/treemap_panel.rs:449:12
[INFO] [stdout]     |
[INFO] [stdout] 449 | pub struct TreemapResponse {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `draw_rect_label` is never used
[INFO] [stdout]    --> src/gui/treemap_panel.rs:461:4
[INFO] [stdout]     |
[INFO] [stdout] 461 | fn draw_rect_label(painter: &egui::Painter, rect: Rect, name: &str, size: u64, percentage: f32) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `truncate_name` is never used
[INFO] [stdout]    --> src/gui/treemap_panel.rs:505:4
[INFO] [stdout]     |
[INFO] [stdout] 505 | fn truncate_name(s: &str, max_chars: usize) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `format_size` is never used
[INFO] [stdout]    --> src/gui/treemap_panel.rs:522:4
[INFO] [stdout]     |
[INFO] [stdout] 522 | fn format_size(bytes: u64) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `squarify` is never used
[INFO] [stdout]    --> src/gui/treemap_panel.rs:543:4
[INFO] [stdout]     |
[INFO] [stdout] 543 | fn squarify(
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_best_row` is never used
[INFO] [stdout]    --> src/gui/treemap_panel.rs:629:4
[INFO] [stdout]     |
[INFO] [stdout] 629 | fn find_best_row(
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `row_response`
[INFO] [stdout]    --> src/gui/app.rs:620:13
[INFO] [stdout]     |
[INFO] [stdout] 620 |         let row_response = ui.horizontal(|ui| {
[INFO] [stdout]     |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_row_response`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `s2` is assigned to, but never used
[INFO] [stdout]    --> src/gui/app.rs:828:17
[INFO] [stdout]     |
[INFO] [stdout] 828 |             let mut s2: u64 = 0;
[INFO] [stdout]     |                 ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_s2` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `s2` is never read
[INFO] [stdout]    --> src/gui/app.rs:830:17
[INFO] [stdout]     |
[INFO] [stdout] 830 |                 s2 += items[j].1;
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Error` is never constructed
[INFO] [stdout]    --> src/gui/app.rs:163:5
[INFO] [stdout]     |
[INFO] [stdout] 159 | pub enum ScanState {
[INFO] [stdout]     |          --------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 163 |     Error(String),
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ScanState` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `start_time` is never read
[INFO] [stdout]    --> src/gui/app.rs:172:9
[INFO] [stdout]     |
[INFO] [stdout] 167 | pub struct ScanProgressInfo {
[INFO] [stdout]     |            ---------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 172 |     pub start_time: Option<Instant>,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ScanProgressInfo` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SIZE_SMALL` is never used
[INFO] [stdout]   --> src/gui/tree_panel.rs:15:7
[INFO] [stdout]    |
[INFO] [stdout] 15 | const SIZE_SMALL: u64 = 1_048_576; // 1 MB
[INFO] [stdout]    |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SIZE_MEDIUM` is never used
[INFO] [stdout]   --> src/gui/tree_panel.rs:16:7
[INFO] [stdout]    |
[INFO] [stdout] 16 | const SIZE_MEDIUM: u64 = 104_857_600; // 100 MB
[INFO] [stdout]    |       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SIZE_LARGE` is never used
[INFO] [stdout]   --> src/gui/tree_panel.rs:17:7
[INFO] [stdout]    |
[INFO] [stdout] 17 | const SIZE_LARGE: u64 = 1_073_741_824; // 1 GB
[INFO] [stdout]    |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `search_query` and `visible_nodes` are never read
[INFO] [stdout]   --> src/gui/tree_panel.rs:29:9
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct TreePanelState {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub search_query: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 30 |     /// Cached list of visible nodes for keyboard navigation.
[INFO] [stdout] 31 |     visible_nodes: Vec<NodeId>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TreePanelState` 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: methods `expand`, `collapse`, `select_previous`, `select_next`, and `get_selected_parent` are never used
[INFO] [stdout]    --> src/gui/tree_panel.rs:69:12
[INFO] [stdout]     |
[INFO] [stdout]  40 | impl TreePanelState {
[INFO] [stdout]     | ------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  69 |     pub fn expand(&mut self, node_id: NodeId) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  74 |     pub fn collapse(&mut self, node_id: NodeId) {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 |     pub fn select_previous(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn select_next(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 138 |     pub fn get_selected_parent(&self, tree: &FileTree) -> Option<NodeId> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]    --> src/gui/tree_panel.rs:149:9
[INFO] [stdout]     |
[INFO] [stdout] 145 | pub struct TreePanelColors {
[INFO] [stdout]     |            --------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 149 |     pub small_files: Color32,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 150 |     /// Color for medium files (1MB - 100MB)
[INFO] [stdout] 151 |     pub medium_files: Color32,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 152 |     /// Color for large files (100MB - 1GB)
[INFO] [stdout] 153 |     pub large_files: Color32,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 154 |     /// Color for huge files (>= 1GB)
[INFO] [stdout] 155 |     pub huge_files: Color32,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 161 |     pub hidden: Color32,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 162 |     /// Color for symlinks
[INFO] [stdout] 163 |     pub symlink: Color32,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 164 |     /// Color for selected items
[INFO] [stdout] 165 |     pub selected: Color32,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 166 |     /// Color for selected item background
[INFO] [stdout] 167 |     pub selected_bg: Color32,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 168 |     /// Normal text color
[INFO] [stdout] 169 |     pub text: Color32,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 173 |     pub bar_bg: Color32,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TreePanelColors` 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: method `size_to_color` is never used
[INFO] [stdout]    --> src/gui/tree_panel.rs:236:12
[INFO] [stdout]     |
[INFO] [stdout] 182 | impl TreePanelColors {
[INFO] [stdout]     | -------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 236 |     pub fn size_to_color(&self, size: u64) -> Color32 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_icon` is never used
[INFO] [stdout]    --> src/gui/tree_panel.rs:270:4
[INFO] [stdout]     |
[INFO] [stdout] 270 | fn get_icon(node: &FileNode, is_expanded: bool) -> &'static str {
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_node_depth` is never used
[INFO] [stdout]    --> src/gui/tree_panel.rs:314:4
[INFO] [stdout]     |
[INFO] [stdout] 314 | fn compute_node_depth(tree: &FileTree, node_id: NodeId) -> usize {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_tree_panel` is never used
[INFO] [stdout]    --> src/gui/tree_panel.rs:330:8
[INFO] [stdout]     |
[INFO] [stdout] 330 | pub fn render_tree_panel(ui: &mut Ui, tree: &FileTree, state: &mut TreePanelState) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_tree_panel_with_colors` is never used
[INFO] [stdout]    --> src/gui/tree_panel.rs:341:8
[INFO] [stdout]     |
[INFO] [stdout] 341 | pub fn render_tree_panel_with_colors(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `handle_keyboard_input` is never used
[INFO] [stdout]    --> src/gui/tree_panel.rs:369:4
[INFO] [stdout]     |
[INFO] [stdout] 369 | fn handle_keyboard_input(ui: &mut Ui, tree: &FileTree, state: &mut TreePanelState) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_node_recursive` is never used
[INFO] [stdout]    --> src/gui/tree_panel.rs:449:4
[INFO] [stdout]     |
[INFO] [stdout] 449 | fn render_node_recursive(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_node_row` is never used
[INFO] [stdout]    --> src/gui/tree_panel.rs:538:4
[INFO] [stdout]     |
[INFO] [stdout] 538 | fn render_node_row(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_node_color` is never used
[INFO] [stdout]    --> src/gui/tree_panel.rs:676:4
[INFO] [stdout]     |
[INFO] [stdout] 676 | fn get_node_color(node: &FileNode, _is_expanded: bool, colors: &TreePanelColors) -> Color32 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `truncate_name` is never used
[INFO] [stdout]    --> src/gui/tree_panel.rs:691:4
[INFO] [stdout]     |
[INFO] [stdout] 691 | fn truncate_name(name: &str, max_width: f32, ui: &Ui) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `hover_color` is never used
[INFO] [stdout]   --> src/gui/treemap_panel.rs:90:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | impl FileTypeCategory {
[INFO] [stdout]    | --------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 90 |     pub fn hover_color(&self) -> Color32 {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]    --> src/gui/treemap_panel.rs:107:9
[INFO] [stdout]     |
[INFO] [stdout] 106 | pub struct TreemapRect {
[INFO] [stdout]     |            ----------- fields in this struct
[INFO] [stdout] 107 |     pub node_id: NodeId,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 108 |     pub rect: Rect,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 109 |     pub size: u64,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 110 |     pub name: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 111 |     pub is_dir: bool,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 112 |     pub extension: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 113 |     pub path: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 114 |     pub percentage: f32,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TreemapRect` 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: methods `contains` and `file_type` are never used
[INFO] [stdout]    --> src/gui/treemap_panel.rs:119:12
[INFO] [stdout]     |
[INFO] [stdout] 117 | impl TreemapRect {
[INFO] [stdout]     | ---------------- methods in this implementation
[INFO] [stdout] 118 |     /// Check if a point is inside this rectangle.
[INFO] [stdout] 119 |     pub fn contains(&self, pos: Pos2) -> bool {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 124 |     pub fn file_type(&self) -> FileTypeCategory {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `selected_node`, `hovered_node`, `treemap_root`, `cached_rects`, and `last_mouse_pos` are never read
[INFO] [stdout]    --> src/gui/treemap_panel.rs:137:9
[INFO] [stdout]     |
[INFO] [stdout] 135 | pub struct TreemapState {
[INFO] [stdout]     |            ------------ fields in this struct
[INFO] [stdout] 136 |     /// Currently selected node.
[INFO] [stdout] 137 |     pub selected_node: Option<NodeId>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] 138 |     /// Node under the mouse cursor (for hover effects).
[INFO] [stdout] 139 |     pub hovered_node: Option<NodeId>,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 140 |     /// The root node for the current treemap view (for drill-down).
[INFO] [stdout] 141 |     pub treemap_root: Option<NodeId>,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 142 |     /// Cached rectangles from the last render.
[INFO] [stdout] 143 |     pub cached_rects: Vec<TreemapRect>,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 144 |     /// Last mouse position for tooltip.
[INFO] [stdout] 145 |     pub last_mouse_pos: Option<Pos2>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TreemapState` 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 items `new`, `set_root`, and `rect_at_pos` are never used
[INFO] [stdout]    --> src/gui/treemap_panel.rs:149:12
[INFO] [stdout]     |
[INFO] [stdout] 148 | impl TreemapState {
[INFO] [stdout]     | ----------------- associated items in this implementation
[INFO] [stdout] 149 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 154 |     pub fn set_root(&mut self, node_id: Option<NodeId>) {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 160 |     pub fn rect_at_pos(&self, pos: Pos2) -> Option<&TreemapRect> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `tree` and `state` are never read
[INFO] [stdout]    --> src/gui/treemap_panel.rs:168:5
[INFO] [stdout]     |
[INFO] [stdout] 167 | pub struct TreemapPanel<'a> {
[INFO] [stdout]     |            ------------ fields in this struct
[INFO] [stdout] 168 |     tree: &'a FileTree,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 169 |     state: &'a mut TreemapState,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `show` are never used
[INFO] [stdout]    --> src/gui/treemap_panel.rs:174:12
[INFO] [stdout]     |
[INFO] [stdout] 173 | impl<'a> TreemapPanel<'a> {
[INFO] [stdout]     | ------------------------- associated items in this implementation
[INFO] [stdout] 174 |     pub fn new(tree: &'a FileTree, state: &'a mut TreemapState) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 |     pub fn show(self, ui: &mut Ui) -> TreemapResponse {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TreemapResponse` is never constructed
[INFO] [stdout]    --> src/gui/treemap_panel.rs:449:12
[INFO] [stdout]     |
[INFO] [stdout] 449 | pub struct TreemapResponse {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `draw_rect_label` is never used
[INFO] [stdout]    --> src/gui/treemap_panel.rs:461:4
[INFO] [stdout]     |
[INFO] [stdout] 461 | fn draw_rect_label(painter: &egui::Painter, rect: Rect, name: &str, size: u64, percentage: f32) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `squarify` is never used
[INFO] [stdout]    --> src/gui/treemap_panel.rs:543:4
[INFO] [stdout]     |
[INFO] [stdout] 543 | fn squarify(
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_best_row` is never used
[INFO] [stdout]    --> src/gui/treemap_panel.rs:629:4
[INFO] [stdout]     |
[INFO] [stdout] 629 | fn find_best_row(
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 07s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: ashpd v0.8.1
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 3`
[INFO] running `Command { std: "docker" "inspect" "2e4d4f04045f401cee4ec43b4856a16c5daee1d57a7b0c4cca898b0472e24ed1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2e4d4f04045f401cee4ec43b4856a16c5daee1d57a7b0c4cca898b0472e24ed1", kill_on_drop: false }`
[INFO] [stdout] 2e4d4f04045f401cee4ec43b4856a16c5daee1d57a7b0c4cca898b0472e24ed1
