[INFO] cloning repository https://github.com/instantOS/instantCLI
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/instantOS/instantCLI" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FinstantOS%2FinstantCLI", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FinstantOS%2FinstantCLI'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] ff050958c259d1163ad7a7a352bc335fe7c1ff57
[INFO] checking instantOS/instantCLI against master#779e19d8baa3e3625bd4fc5c85cbb2ad47b43155 for pr-147589-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FinstantOS%2FinstantCLI" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-6-tc1/source/.cargo/config.toml
[INFO] started tweaking git repo https://github.com/instantOS/instantCLI
[INFO] finished tweaking git repo https://github.com/instantOS/instantCLI
[INFO] tweaked toml for git repo https://github.com/instantOS/instantCLI written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/instantOS/instantCLI on toolchain 779e19d8baa3e3625bd4fc5c85cbb2ad47b43155
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/instantOS/instantCLI 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" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded toml_datetime v0.7.3
[INFO] [stderr]   Downloaded shellexpand v3.1.1
[INFO] [stderr]   Downloaded toml v0.9.8
[INFO] [stderr]   Downloaded shared_thread v0.2.0
[INFO] [stderr]   Downloaded serde_yaml v0.9.34+deprecated
[INFO] [stderr]   Downloaded duct v1.1.0
[INFO] [stderr]   Downloaded dialoguer v0.12.0
[INFO] [stderr]   Downloaded is_executable v1.0.5
[INFO] [stderr]   Downloaded git2 v0.20.2
[INFO] [stderr]   Downloaded ctrlc v3.5.0
[INFO] [stderr]   Downloaded freedesktop-icons v0.4.0
[INFO] [stderr]   Downloaded convert_case v0.7.1
[INFO] [stderr]   Downloaded libssh2-sys v0.3.1
[INFO] [stderr]   Downloaded unsafe-libyaml v0.2.11
[INFO] [stderr]   Downloaded getopts v0.2.24
[INFO] [stderr]   Downloaded castaway v0.2.4
[INFO] [stderr]   Downloaded unicode-truncate v1.1.0
[INFO] [stderr]   Downloaded directories v1.0.2
[INFO] [stderr]   Downloaded ini_core v0.2.0
[INFO] [stderr]   Downloaded compact_str v0.8.1
[INFO] [stderr]   Downloaded pulldown-cmark v0.12.2
[INFO] [stderr]   Downloaded indoc v2.0.6
[INFO] [stderr]   Downloaded instability v0.3.9
[INFO] [stderr]   Downloaded clap_complete v4.5.58
[INFO] [stderr]   Downloaded os_pipe v1.2.3
[INFO] [stderr]   Downloaded owo-colors v4.2.3
[INFO] [stderr]   Downloaded fre v0.4.1
[INFO] [stderr]   Downloaded freedesktop-file-parser v0.3.1
[INFO] [stderr]   Downloaded cassowary v0.3.0
[INFO] [stderr]   Downloaded toml_parser v1.0.4
[INFO] [stderr]   Downloaded xdg v3.0.0
[INFO] [stderr]   Downloaded sudo v0.6.0
[INFO] [stderr]   Downloaded serde_spanned v1.0.3
[INFO] [stderr]   Downloaded toml_writer v1.0.4
[INFO] [stderr]   Downloaded crossterm v0.28.1
[INFO] [stderr]   Downloaded libgit2-sys v0.18.2+1.9.1
[INFO] [stderr]   Downloaded ratatui v0.29.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] d26e29213b70dd100b5d9140961fe9beaf172036051648c1358f14e069ccbdc6
[INFO] running `Command { std: "docker" "start" "-a" "d26e29213b70dd100b5d9140961fe9beaf172036051648c1358f14e069ccbdc6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d26e29213b70dd100b5d9140961fe9beaf172036051648c1358f14e069ccbdc6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d26e29213b70dd100b5d9140961fe9beaf172036051648c1358f14e069ccbdc6", kill_on_drop: false }`
[INFO] [stdout] d26e29213b70dd100b5d9140961fe9beaf172036051648c1358f14e069ccbdc6
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b29bd84bc6e31c062a7200437978c07dbb734841342e86cb3d4489bed2bc4138
[INFO] running `Command { std: "docker" "start" "-a" "b29bd84bc6e31c062a7200437978c07dbb734841342e86cb3d4489bed2bc4138", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.101
[INFO] [stderr]    Compiling quote v1.0.41
[INFO] [stderr]    Compiling unicode-ident v1.0.19
[INFO] [stderr]    Compiling libc v0.2.177
[INFO] [stderr]     Checking cfg-if v1.0.3
[INFO] [stderr]     Checking smallvec v1.15.1
[INFO] [stderr]    Compiling find-msvc-tools v0.1.4
[INFO] [stderr]     Checking bitflags v2.9.4
[INFO] [stderr]     Checking log v0.4.28
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]     Checking lock_api v0.4.14
[INFO] [stderr]     Checking stable_deref_trait v1.2.1
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling signal-hook v0.3.18
[INFO] [stderr]     Checking litemap v0.8.0
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]     Checking writeable v0.6.1
[INFO] [stderr]     Checking http v1.3.1
[INFO] [stderr]     Checking tracing-core v0.1.34
[INFO] [stderr]    Compiling icu_properties_data v2.0.1
[INFO] [stderr]    Compiling rustix v1.1.2
[INFO] [stderr]    Compiling icu_normalizer_data v2.0.0
[INFO] [stderr]     Checking ryu v1.0.20
[INFO] [stderr]     Checking hashbrown v0.16.0
[INFO] [stderr]     Checking linux-raw-sys v0.11.0
[INFO] [stderr]     Checking percent-encoding v2.3.2
[INFO] [stderr]    Compiling rustversion v1.0.22
[INFO] [stderr]    Compiling typenum v1.19.0
[INFO] [stderr]     Checking futures-task v0.3.31
[INFO] [stderr]    Compiling httparse v1.10.1
[INFO] [stderr]    Compiling openssl v0.10.73
[INFO] [stderr]     Checking anstyle-parse v0.2.7
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]    Compiling unicode-segmentation v1.12.0
[INFO] [stderr]     Checking colorchoice v1.0.4
[INFO] [stderr]    Compiling getrandom v0.3.3
[INFO] [stderr]     Checking anstyle v1.0.13
[INFO] [stderr]    Compiling native-tls v0.2.14
[INFO] [stderr]     Checking slab v0.4.11
[INFO] [stderr]    Compiling zerocopy v0.8.27
[INFO] [stderr]     Checking anstyle-query v1.1.4
[INFO] [stderr]     Checking hashbrown v0.15.5
[INFO] [stderr]     Checking anstream v0.6.21
[INFO] [stderr]    Compiling convert_case v0.7.1
[INFO] [stderr]     Checking form_urlencoded v1.2.2
[INFO] [stderr]     Checking memchr v2.7.6
[INFO] [stderr]     Checking indexmap v2.11.4
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]    Compiling autocfg v1.5.0
[INFO] [stderr]     Checking clap_lex v0.7.5
[INFO] [stderr]    Compiling serde_json v1.0.145
[INFO] [stderr]    Compiling nix v0.30.1
[INFO] [stderr]     Checking clap_builder v4.5.48
[INFO] [stderr]    Compiling libsqlite3-sys v0.35.0
[INFO] [stderr]     Checking http-body v1.0.1
[INFO] [stderr]    Compiling litrs v0.4.2
[INFO] [stderr]    Compiling thiserror v2.0.17
[INFO] [stderr]     Checking zeroize v1.8.2
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling anyhow v1.0.100
[INFO] [stderr]    Compiling instability v0.3.9
[INFO] [stderr]    Compiling portable-atomic v1.11.1
[INFO] [stderr]    Compiling syn v2.0.106
[INFO] [stderr]     Checking crypto-common v0.1.6
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]    Compiling document-features v0.2.11
[INFO] [stderr]     Checking itertools v0.13.0
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]     Checking http-body-util v0.1.3
[INFO] [stderr]     Checking castaway v0.2.4
[INFO] [stderr]     Checking ini_core v0.2.0
[INFO] [stderr]     Checking xdg v2.5.2
[INFO] [stderr]    Compiling owo-colors v4.2.3
[INFO] [stderr]    Compiling pulldown-cmark v0.12.2
[INFO] [stderr]     Checking winnow v0.7.13
[INFO] [stderr]    Compiling cc v1.2.41
[INFO] [stderr]     Checking iri-string v0.7.8
[INFO] [stderr]    Compiling indoc v2.0.6
[INFO] [stderr]     Checking compact_str v0.8.1
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking rustls-pki-types v1.12.0
[INFO] [stderr]     Checking hashlink v0.10.0
[INFO] [stderr]     Checking lru v0.12.5
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking getopts v0.2.24
[INFO] [stderr]     Checking encoding_rs v0.8.35
[INFO] [stderr]     Checking toml_writer v1.0.4
[INFO] [stderr]     Checking signal-hook-registry v1.4.6
[INFO] [stderr]     Checking mio v1.0.4
[INFO] [stderr]     Checking socket2 v0.6.0
[INFO] [stderr]     Checking getrandom v0.2.16
[INFO] [stderr]     Checking os_pipe v1.2.3
[INFO] [stderr]     Checking dirs-sys v0.4.1
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking dirs v5.0.1
[INFO] [stderr]     Checking dirs-sys v0.5.0
[INFO] [stderr]     Checking console v0.16.1
[INFO] [stderr]     Checking toml_datetime v0.7.3
[INFO] [stderr]     Checking serde_spanned v1.0.3
[INFO] [stderr]     Checking directories v1.0.2
[INFO] [stderr]     Checking dirs v6.0.0
[INFO] [stderr]     Checking shlex v1.3.0
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking is_executable v1.0.5
[INFO] [stderr]     Checking shared_thread v0.2.0
[INFO] [stderr]     Checking unicode-truncate v1.1.0
[INFO] [stderr]     Checking cassowary v0.3.0
[INFO] [stderr]     Checking iana-time-zone v0.1.64
[INFO] [stderr]     Checking signal-hook-mio v0.2.4
[INFO] [stderr]     Checking sigchld v0.2.4
[INFO] [stderr]     Checking fallible-streaming-iterator v0.1.9
[INFO] [stderr]     Checking unsafe-libyaml v0.2.11
[INFO] [stderr]     Checking tempfile v3.23.0
[INFO] [stderr]     Checking pulldown-cmark-escape v0.11.0
[INFO] [stderr]     Checking env_home v0.1.0
[INFO] [stderr]     Checking crossterm v0.28.1
[INFO] [stderr]     Checking shared_child v1.1.1
[INFO] [stderr]     Checking unit-prefix v0.5.1
[INFO] [stderr]     Checking fallible-iterator v0.3.0
[INFO] [stderr]     Checking unicase v2.8.1
[INFO] [stderr]     Checking duct v1.1.0
[INFO] [stderr]     Checking which v8.0.0
[INFO] [stderr]     Checking sha2 v0.10.9
[INFO] [stderr]     Checking indicatif v0.18.0
[INFO] [stderr]     Checking dialoguer v0.12.0
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking rusqlite v0.37.0
[INFO] [stderr]     Checking shellexpand v3.1.1
[INFO] [stderr]     Checking sudo v0.6.0
[INFO] [stderr]     Checking ctrlc v3.5.0
[INFO] [stderr]     Checking colored v3.0.0
[INFO] [stderr]    Compiling openssl-sys v0.9.109
[INFO] [stderr]    Compiling libz-sys v1.1.22
[INFO] [stderr]    Compiling libssh2-sys v0.3.1
[INFO] [stderr]    Compiling libgit2-sys v0.18.2+1.9.1
[INFO] [stderr]     Checking xdg v3.0.0
[INFO] [stderr]     Checking toml_parser v1.0.4
[INFO] [stderr]     Checking toml v0.9.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 tokio-macros v2.5.0
[INFO] [stderr]    Compiling tracing-attributes v0.1.30
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling clap_derive v4.5.47
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling derive_more-impl v2.0.1
[INFO] [stderr]    Compiling thiserror-impl v2.0.17
[INFO] [stderr]    Compiling strum_macros v0.26.4
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]     Checking tokio v1.47.1
[INFO] [stderr]     Checking derive_more v2.0.1
[INFO] [stderr]     Checking crossterm v0.29.0
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking yoke v0.8.0
[INFO] [stderr]     Checking tracing v0.1.41
[INFO] [stderr]     Checking zerovec v0.11.4
[INFO] [stderr]     Checking zerotrie v0.2.2
[INFO] [stderr]     Checking freedesktop-icons v0.4.0
[INFO] [stderr]     Checking strum v0.26.3
[INFO] [stderr]    Compiling darling_macro v0.20.11
[INFO] [stderr]     Checking freedesktop-file-parser v0.3.1
[INFO] [stderr]    Compiling darling v0.20.11
[INFO] [stderr]     Checking comfy-table v7.2.1
[INFO] [stderr]     Checking clap v4.5.48
[INFO] [stderr]     Checking ratatui v0.29.0
[INFO] [stderr]     Checking clap_complete v4.5.58
[INFO] [stderr]     Checking tinystr v0.8.1
[INFO] [stderr]     Checking potential_utf v0.1.3
[INFO] [stderr]     Checking icu_collections v2.0.0
[INFO] [stderr]     Checking icu_locale_core v2.0.0
[INFO] [stderr]     Checking icu_provider v2.0.0
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking chrono v0.4.42
[INFO] [stderr]     Checking serde_yaml v0.9.34+deprecated
[INFO] [stderr]     Checking fre v0.4.1
[INFO] [stderr]     Checking icu_properties v2.0.1
[INFO] [stderr]     Checking icu_normalizer v2.0.0
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking url v2.5.7
[INFO] [stderr]     Checking tokio-util v0.7.16
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking tower v0.5.2
[INFO] [stderr]     Checking git2 v0.20.2
[INFO] [stderr]     Checking h2 v0.4.12
[INFO] [stderr]     Checking tower-http v0.6.6
[INFO] [stderr]     Checking hyper v1.7.0
[INFO] [stderr]     Checking hyper-util v0.1.17
[INFO] [stderr]     Checking hyper-tls v0.6.0
[INFO] [stderr]     Checking reqwest v0.12.23
[INFO] [stderr]     Checking ins v0.2.6 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/settings/context.rs:242:17
[INFO] [stdout]     |
[INFO] [stdout] 242 |                 key,
[INFO] [stdout]     |                 ^^^ help: try ignoring the field: `key: _`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/settings/context.rs:261:17
[INFO] [stdout]     |
[INFO] [stdout] 261 |                 key,
[INFO] [stdout]     |                 ^^^ help: try ignoring the field: `key: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `options`
[INFO] [stdout]    --> src/settings/context.rs:262:17
[INFO] [stdout]     |
[INFO] [stdout] 262 |                 options,
[INFO] [stdout]     |                 ^^^^^^^ help: try ignoring the field: `options: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]   --> src/settings/ui/handlers.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     ctx: &mut SettingsContext,
[INFO] [stdout]    |     ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> src/settings/ui/handlers.rs:135:46
[INFO] [stdout]     |
[INFO] [stdout] 135 |             ctx.with_definition(definition, |ctx| {
[INFO] [stdout]     |                                              ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> src/settings/ui/menu.rs:173:18
[INFO] [stdout]     |
[INFO] [stdout] 173 | fn run_main_menu(ctx: &mut SettingsContext, initial_cursor: Option<usize>) -> Result<MenuAction> {
[INFO] [stdout]     |                  ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/settings/context.rs:242:17
[INFO] [stdout]     |
[INFO] [stdout] 242 |                 key,
[INFO] [stdout]     |                 ^^^ help: try ignoring the field: `key: _`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/settings/context.rs:261:17
[INFO] [stdout]     |
[INFO] [stdout] 261 |                 key,
[INFO] [stdout]     |                 ^^^ help: try ignoring the field: `key: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `options`
[INFO] [stdout]    --> src/settings/context.rs:262:17
[INFO] [stdout]     |
[INFO] [stdout] 262 |                 options,
[INFO] [stdout]     |                 ^^^^^^^ help: try ignoring the field: `options: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]   --> src/settings/ui/handlers.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     ctx: &mut SettingsContext,
[INFO] [stdout]    |     ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> src/settings/ui/handlers.rs:135:46
[INFO] [stdout]     |
[INFO] [stdout] 135 |             ctx.with_definition(definition, |ctx| {
[INFO] [stdout]     |                                              ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> src/settings/ui/menu.rs:173:18
[INFO] [stdout]     |
[INFO] [stdout] 173 | fn run_main_menu(ctx: &mut SettingsContext, initial_cursor: Option<usize>) -> Result<MenuAction> {
[INFO] [stdout]     |                  ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `InitialCursor` is more private than the item `FzfWrapper::initial_cursor`
[INFO] [stdout]    --> src/menu_utils/fzf.rs:52:5
[INFO] [stdout]     |
[INFO] [stdout]  52 |     pub(crate) initial_cursor: Option<InitialCursor>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field `FzfWrapper::initial_cursor` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `InitialCursor` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/menu_utils/fzf.rs:390:1
[INFO] [stdout]     |
[INFO] [stdout] 390 | enum InitialCursor {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `PreviewStrategy` is more private than the item `PreviewUtils::analyze_preview_strategy`
[INFO] [stdout]    --> src/menu_utils/fzf.rs:864:5
[INFO] [stdout]     |
[INFO] [stdout] 864 |     pub fn analyze_preview_strategy<T: FzfSelectable>(items: &[T]) -> Result<PreviewStrategy> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ associated function `PreviewUtils::analyze_preview_strategy` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `PreviewStrategy` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/menu_utils/fzf.rs:832:1
[INFO] [stdout]     |
[INFO] [stdout] 832 | enum PreviewStrategy {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_wayland` and `is_x11` are never used
[INFO] [stdout]    --> src/common/compositor/mod.rs:99:12
[INFO] [stdout]     |
[INFO] [stdout]  28 | impl CompositorType {
[INFO] [stdout]     | ------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  99 |     pub fn is_wayland(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 107 |     pub fn is_x11(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `HyprlandWorkspaceInfo` is never constructed
[INFO] [stdout]    --> src/common/compositor/hyprland.rs:125:8
[INFO] [stdout]     |
[INFO] [stdout] 125 | struct HyprlandWorkspaceInfo {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dispatch_command` is never used
[INFO] [stdout]    --> src/common/compositor/hyprland.rs:168:8
[INFO] [stdout]     |
[INFO] [stdout] 168 | pub fn dispatch_command(command: &str) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `CommandSucceeds` is never constructed
[INFO] [stdout]   --> src/common/requirements.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub enum InstallTest {
[INFO] [stdout]    |          ----------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 15 |     CommandSucceeds {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `InstallTest` 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: enum `ServiceState` is never used
[INFO] [stdout]   --> src/common/systemd.rs:23:10
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub enum ServiceState {
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ServiceEnablement` is never used
[INFO] [stdout]   --> src/common/systemd.rs:32:10
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub enum ServiceEnablement {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `with_restart`, `with_restart_sec`, and `with_wanted_by` are never used
[INFO] [stdout]   --> src/common/systemd.rs:68:12
[INFO] [stdout]    |
[INFO] [stdout] 50 | impl UserServiceConfig {
[INFO] [stdout]    | ---------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 68 |     pub fn with_restart(mut self, restart: impl Into<String>) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 74 |     pub fn with_restart_sec(mut self, sec: u32) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 80 |     pub fn with_wanted_by(mut self, target: impl Into<String>) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/common/systemd.rs:162:12
[INFO] [stdout]     |
[INFO] [stdout] 115 | impl SystemdManager {
[INFO] [stdout]     | ------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 162 |     pub fn get_state(&self, service_name: &str) -> ServiceState {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 180 |     pub fn get_enablement(&self, service_name: &str) -> ServiceEnablement {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 210 |     pub fn stop(&self, service_name: &str) -> Result<()> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 222 |     pub fn enable(&self, service_name: &str) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 234 |     pub fn disable(&self, service_name: &str) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 308 |     pub fn create_user_service_file(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 336 |     pub fn remove_user_service_file(&self, service_name: &str) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `system_service_is_active` is never used
[INFO] [stdout]    --> src/common/systemd.rs:389:12
[INFO] [stdout]     |
[INFO] [stdout] 389 |     pub fn system_service_is_active(service_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `system_service_is_enabled` is never used
[INFO] [stdout]    --> src/common/systemd.rs:394:12
[INFO] [stdout]     |
[INFO] [stdout] 394 |     pub fn system_service_is_enabled(service_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `user_service_is_active` is never used
[INFO] [stdout]    --> src/common/systemd.rs:399:12
[INFO] [stdout]     |
[INFO] [stdout] 399 |     pub fn user_service_is_active(service_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `user_service_is_enabled` is never used
[INFO] [stdout]    --> src/common/systemd.rs:404:12
[INFO] [stdout]     |
[INFO] [stdout] 404 |     pub fn user_service_is_enabled(service_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_udiskie_service_config` is never used
[INFO] [stdout]    --> src/common/systemd.rs:409:12
[INFO] [stdout]     |
[INFO] [stdout] 409 |     pub fn create_udiskie_service_config() -> UserServiceConfig {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_udiskie_service_content` is never used
[INFO] [stdout]    --> src/common/systemd.rs:418:12
[INFO] [stdout]     |
[INFO] [stdout] 418 |     pub fn create_udiskie_service_content() -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `file_name` and `install_instructions` are never used
[INFO] [stdout]   --> src/completions/mod.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl SupportedShell {
[INFO] [stdout]    | ------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 25 |     fn file_name(self) -> &'static str {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     fn install_instructions(self, install_path: &Path) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `instructions` is never used
[INFO] [stdout]    --> src/completions/mod.rs:116:8
[INFO] [stdout]     |
[INFO] [stdout] 116 | pub fn instructions(shell: SupportedShell, install_path: &Path) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `into_inner` is never used
[INFO] [stdout]   --> src/dot/mod.rs:67:12
[INFO] [stdout]    |
[INFO] [stdout] 58 | impl RepoName {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 67 |     pub fn into_inner(self) -> String {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `hash_exists` and `target_hash_exists` are never used
[INFO] [stdout]    --> src/dot/db.rs:182:12
[INFO] [stdout]     |
[INFO] [stdout]  77 | impl Database {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 182 |     pub fn hash_exists(&self, hash: &str, path: &Path) -> Result<bool> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 204 |     pub fn target_hash_exists(&self, hash: &str, path: &Path) -> Result<bool> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `target_to_source` is never used
[INFO] [stdout]    --> src/dot/localrepo.rs:122:12
[INFO] [stdout]     |
[INFO] [stdout]  41 | impl LocalRepo {
[INFO] [stdout]     | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 122 |     pub fn target_to_source(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `db` is never read
[INFO] [stdout]   --> src/dot/repo/manager.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct RepositoryManager<'a> {
[INFO] [stdout]    |            ----------------- field in this struct
[INFO] [stdout] 10 |     config: &'a Config,
[INFO] [stdout] 11 |     db: &'a Database,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `with_description` and `with_launch_command` are never used
[INFO] [stdout]    --> src/game/config.rs:115:12
[INFO] [stdout]     |
[INFO] [stdout] 105 | impl Game {
[INFO] [stdout]     | --------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 115 |     pub fn with_description(mut self, description: impl Into<String>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 120 |     pub fn with_launch_command(mut self, command: impl Into<String>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `with_checkpoint`, `clear_checkpoint`, and `with_launch_command` are never used
[INFO] [stdout]    --> src/game/config.rs:156:12
[INFO] [stdout]     |
[INFO] [stdout] 145 | impl GameInstallation {
[INFO] [stdout]     | --------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 156 |     pub fn with_checkpoint(mut self, checkpoint_id: impl Into<String>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 165 |     pub fn clear_checkpoint(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 169 |     pub fn with_launch_command(mut self, command: impl Into<String>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `format_path_for_display` is never used
[INFO] [stdout]   --> src/game/deps/display.rs:77:4
[INFO] [stdout]    |
[INFO] [stdout] 77 | fn format_path_for_display(path: &str) -> String {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_game_name_unique` is never used
[INFO] [stdout]  --> src/game/games/validation.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn validate_game_name_unique(name: &str) -> Result<bool> {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_game_exists` is never used
[INFO] [stdout]   --> src/game/games/validation.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub fn validate_game_exists(name: &str) -> Result<bool> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `list_game_backups` is never used
[INFO] [stdout]   --> src/game/restic/backup.rs:63:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl GameBackup {
[INFO] [stdout]    | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 63 |     pub fn list_game_backups(&self, game_name: &str) -> Result<String> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_cache_stats` is never used
[INFO] [stdout]    --> src/game/restic/cache.rs:133:8
[INFO] [stdout]     |
[INFO] [stdout] 133 | pub fn get_cache_stats() -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `refresh_snapshots_for_game` is never used
[INFO] [stdout]    --> src/game/restic/cache.rs:160:8
[INFO] [stdout]     |
[INFO] [stdout] 160 | pub fn refresh_snapshots_for_game(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ResticCommand` is never constructed
[INFO] [stdout]  --> src/game/restic/commands.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct ResticCommand {
[INFO] [stdout]   |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `base_command`, `init`, `check_repo`, `stats`, and `list_snapshots` are never used
[INFO] [stdout]   --> src/game/restic/commands.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl ResticCommand {
[INFO] [stdout]    | ------------------ associated items in this implementation
[INFO] [stdout] 12 |     pub fn new(config: InstantGameConfig) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |     fn base_command(&self) -> Result<Command> {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     pub fn init(&self) -> Result<()> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     pub fn check_repo(&self) -> Result<bool> {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     pub fn stats(&self) -> Result<String> {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn list_snapshots(&self, tags: Option<Vec<&str>>) -> Result<String> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `progress` is never read
[INFO] [stdout]   --> src/game/restic/dependencies.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct DependencyBackupResult {
[INFO] [stdout]    |            ---------------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 13 |     pub progress: BackupProgress,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `save_path_exists` is never read
[INFO] [stdout]   --> src/game/restic/security.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct SecurityValidationResult {
[INFO] [stdout]    |            ------------------------ field in this struct
[INFO] [stdout] 23 |     pub save_path_exists: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SecurityValidationResult` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `select_snapshot_interactive` is never used
[INFO] [stdout]    --> src/game/restic/snapshot_selection.rs:384:8
[INFO] [stdout]     |
[INFO] [stdout] 384 | pub fn select_snapshot_interactive(game_name: &str) -> Result<Option<String>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `decode_dependency_id_from_tag` is never used
[INFO] [stdout]   --> src/game/restic/tags.rs:92:8
[INFO] [stdout]    |
[INFO] [stdout] 92 | pub fn decode_dependency_id_from_tag(encoded_tag: &str) -> Result<String> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_dependency_info_from_tags` is never used
[INFO] [stdout]    --> src/game/restic/tags.rs:110:8
[INFO] [stdout]     |
[INFO] [stdout] 110 | pub fn extract_dependency_info_from_tags(tags: &[String]) -> Option<(String, String)> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Error` is never constructed
[INFO] [stdout]   --> src/game/utils/save_files.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub enum TimeComparison {
[INFO] [stdout]    |          -------------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 21 |     Error(String),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TimeComparison` 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: function `get_most_recent_file_time` is never used
[INFO] [stdout]   --> src/game/utils/save_files.rs:69:8
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub fn get_most_recent_file_time(save_path: &Path) -> Result<Option<SystemTime>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `execute_application` is never used
[INFO] [stdout]    --> src/launch/mod.rs:143:4
[INFO] [stdout]     |
[INFO] [stdout] 143 | fn execute_application(app_name: &str) -> Result<()> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `cache_path` is never read
[INFO] [stdout]   --> src/launch/cache.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct LaunchCache {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 15 |     cache_path: PathBuf,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/launch/cache.rs:87:18
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl LaunchCache {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  87 |     pub async fn get_applications(&mut self) -> Result<Vec<String>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 121 |     fn is_cache_fresh(&self) -> Result<bool> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 150 |     fn read_cache(&self) -> Result<Vec<String>> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 167 |     async fn refresh_cache_background(cache_path: PathBuf) -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 174 |     fn scan_path_directories(&self) -> Result<Vec<String>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 220 |     async fn scan_path_directories_static() -> Result<Vec<String>> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 266 |     fn write_cache(cache_path: &Path, apps: &[String]) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 281 |     fn sort_by_frecency(&mut self, apps: &mut Vec<String>) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 319 |     pub fn record_launch(&mut self, app_name: &str) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 337 |     pub fn get_frecency_stats(&mut self) -> Result<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `icon`, `categories`, and `file_path` are never read
[INFO] [stdout]   --> src/launch/types.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct DesktopAppDetails {
[INFO] [stdout]    |            ----------------- fields in this struct
[INFO] [stdout] 13 |     pub exec: String,            // Exec command with field codes
[INFO] [stdout] 14 |     pub icon: Option<String>,    // Icon name
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 15 |     pub categories: Vec<String>, // Application categories
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub file_path: PathBuf,      // Path to .desktop file
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DesktopAppDetails` 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: struct `PathExecutableDetails` is never constructed
[INFO] [stdout]   --> src/launch/types.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub struct PathExecutableDetails {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `hide` is never used
[INFO] [stdout]   --> src/menu/scratchpad_manager.rs:62:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl ScratchpadManager {
[INFO] [stdout]    | ---------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 62 |     pub fn hide(&self) -> Result<()> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `stop` and `compositor` are never used
[INFO] [stdout]    --> src/menu/server.rs:372:18
[INFO] [stdout]     |
[INFO] [stdout]  74 | impl MenuServer {
[INFO] [stdout]     | --------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 372 |     pub async fn stop(&mut self) {
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 378 |     pub fn compositor(&self) -> &CompositorType {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `show_help` and `toggle_help` are never used
[INFO] [stdout]   --> src/menu/tui.rs:52:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | impl MenuServerTui {
[INFO] [stdout]    | ------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 52 |     pub fn show_help(&self) -> Arc<AtomicBool> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 57 |     pub fn toggle_help(&self) {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `pick_file` and `pick_files` are never used
[INFO] [stdout]    --> src/menu_utils/file_picker.rs:304:12
[INFO] [stdout]     |
[INFO] [stdout] 299 | impl MenuWrapper {
[INFO] [stdout]     | ---------------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 304 |     pub fn pick_file() -> Result<Option<PathBuf>> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 308 |     pub fn pick_files() -> Result<Vec<PathBuf>> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `select_many`, `input_dialog`, `password_dialog`, and `confirm_dialog` are never used
[INFO] [stdout]    --> src/menu_utils/fzf.rs:308:12
[INFO] [stdout]     |
[INFO] [stdout]  55 | impl FzfWrapper {
[INFO] [stdout]     | --------------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 308 |     pub fn select_many<T: FzfSelectable + Clone>(items: Vec<T>) -> Result<Vec<T>> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 328 |     pub fn input_dialog(prompt: &str) -> Result<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 336 |     pub fn password_dialog(prompt: &str) -> Result<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 344 |     pub fn confirm_dialog(message: &str) -> Result<ConfirmResult> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `ok_text` and `show_selection` are never used
[INFO] [stdout]    --> src/menu_utils/fzf.rs:482:12
[INFO] [stdout]     |
[INFO] [stdout] 394 | impl FzfBuilder {
[INFO] [stdout]     | --------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 482 |     pub fn ok_text<S: Into<String>>(mut self, text: S) -> Self {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 546 |     pub fn show_selection<T: FzfSelectable + Clone>(self, items: Vec<T>) -> Result<FzfResult<T>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PreviewData` is never constructed
[INFO] [stdout]    --> src/menu_utils/fzf.rs:824:8
[INFO] [stdout]     |
[INFO] [stdout] 824 | struct PreviewData {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `build_preview_mapping` is never used
[INFO] [stdout]    --> src/menu_utils/fzf.rs:844:12
[INFO] [stdout]     |
[INFO] [stdout] 843 | impl PreviewUtils {
[INFO] [stdout]     | ----------------- associated function in this implementation
[INFO] [stdout] 844 |     pub fn build_preview_mapping<T: FzfSelectable>(items: &[T]) -> Result<HashMap<String, String>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `start_dir` is never used
[INFO] [stdout]   --> src/menu_utils/path_input.rs:82:12
[INFO] [stdout]    |
[INFO] [stdout] 49 | impl PathInputBuilder {
[INFO] [stdout]    | --------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 82 |     pub fn start_dir<P: Into<PathBuf>>(mut self, dir: P) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `to_tilde_path`, `to_path_buf`, and `to_tilde_string` are never used
[INFO] [stdout]    --> src/menu_utils/path_input.rs:164:12
[INFO] [stdout]     |
[INFO] [stdout] 163 | impl PathInputSelection {
[INFO] [stdout]     | ----------------------- methods in this implementation
[INFO] [stdout] 164 |     pub fn to_tilde_path(&self) -> Result<Option<TildePath>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 177 |     pub fn to_path_buf(&self) -> Result<Option<PathBuf>> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 181 |     pub fn to_tilde_string(&self) -> Result<Option<String>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `with_enabled` is never used
[INFO] [stdout]   --> src/restic/logging.rs:49:12
[INFO] [stdout]    |
[INFO] [stdout] 37 | impl ResticCommandLogger {
[INFO] [stdout]    | ------------------------ associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 49 |     pub fn with_enabled(enabled: bool) -> Result<Self> {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `errors` is never read
[INFO] [stdout]    --> src/restic/wrapper.rs:308:9
[INFO] [stdout]     |
[INFO] [stdout] 306 | pub struct BackupProgress {
[INFO] [stdout]     |            -------------- field in this struct
[INFO] [stdout] 307 |     pub summary: Option<BackupSummary>,
[INFO] [stdout] 308 |     pub errors: Vec<BackupError>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `BackupProgress` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]    --> src/restic/wrapper.rs:382:9
[INFO] [stdout]     |
[INFO] [stdout] 380 | pub struct BackupSummary {
[INFO] [stdout]     |            ------------- fields in this struct
[INFO] [stdout] 381 |     #[serde(default)]
[INFO] [stdout] 382 |     pub dry_run: bool,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 385 |     pub files_unmodified: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 386 |     pub dirs_new: u64,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 387 |     pub dirs_changed: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 388 |     pub dirs_unmodified: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 389 |     pub data_blobs: i64,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 390 |     pub tree_blobs: i64,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 391 |     pub data_added: u64,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 392 |     pub data_added_packed: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 393 |     pub total_files_processed: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 394 |     pub total_bytes_processed: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 395 |     pub backup_start: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 396 |     pub backup_end: String,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 397 |     pub total_duration: f64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `BackupSummary` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `message`, `during`, and `item` are never read
[INFO] [stdout]    --> src/restic/wrapper.rs:403:9
[INFO] [stdout]     |
[INFO] [stdout] 402 | pub struct BackupError {
[INFO] [stdout]     |            ----------- fields in this struct
[INFO] [stdout] 403 |     pub message: String,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 404 |     pub during: String,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 405 |     pub item: Option<String>,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `BackupError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]    --> src/restic/wrapper.rs:411:9
[INFO] [stdout]     |
[INFO] [stdout] 409 | pub struct Snapshot {
[INFO] [stdout]     |            -------- fields in this struct
[INFO] [stdout] 410 |     pub time: String,
[INFO] [stdout] 411 |     pub parent: Option<String>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 412 |     pub tree: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 415 |     pub username: String,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 416 |     pub uid: Option<u32>,
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 417 |     pub gid: Option<u32>,
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 418 |     pub excludes: Option<Vec<String>>,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 419 |     pub tags: Vec<String>,
[INFO] [stdout] 420 |     pub program_version: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Snapshot` 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: multiple fields are never read
[INFO] [stdout]    --> src/restic/wrapper.rs:433:9
[INFO] [stdout]     |
[INFO] [stdout] 427 | pub struct SnapshotSummary {
[INFO] [stdout]     |            --------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 433 |     pub dirs_new: u64,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 434 |     pub dirs_changed: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 435 |     pub dirs_unmodified: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 436 |     pub data_blobs: i64,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 437 |     pub tree_blobs: i64,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 438 |     pub data_added: u64,
[INFO] [stdout] 439 |     pub data_added_packed: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 440 |     pub total_files_processed: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 441 |     pub total_bytes_processed: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `SnapshotSummary` 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: field `errors` is never read
[INFO] [stdout]    --> src/restic/wrapper.rs:447:9
[INFO] [stdout]     |
[INFO] [stdout] 445 | pub struct RestoreProgress {
[INFO] [stdout]     |            --------------- field in this struct
[INFO] [stdout] 446 |     pub summary: Option<RestoreSummary>,
[INFO] [stdout] 447 |     pub errors: Vec<RestoreError>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `RestoreProgress` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]    --> src/restic/wrapper.rs:522:9
[INFO] [stdout]     |
[INFO] [stdout] 520 | pub struct RestoreSummary {
[INFO] [stdout]     |            -------------- fields in this struct
[INFO] [stdout] 521 |     #[serde(default)]
[INFO] [stdout] 522 |     pub seconds_elapsed: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 523 |     #[serde(default)]
[INFO] [stdout] 524 |     pub total_files: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 528 |     pub files_skipped: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] 529 |     #[serde(default)]
[INFO] [stdout] 530 |     pub files_deleted: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] 531 |     #[serde(default)]
[INFO] [stdout] 532 |     pub total_bytes: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 533 |     #[serde(default)]
[INFO] [stdout] 534 |     pub bytes_restored: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout] 535 |     #[serde(default)]
[INFO] [stdout] 536 |     pub bytes_skipped: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `RestoreSummary` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `message`, `during`, and `item` are never read
[INFO] [stdout]    --> src/restic/wrapper.rs:541:9
[INFO] [stdout]     |
[INFO] [stdout] 540 | pub struct RestoreError {
[INFO] [stdout]     |            ------------ fields in this struct
[INFO] [stdout] 541 |     pub message: String,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 542 |     pub during: String,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 543 |     pub item: Option<String>,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `RestoreError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_app_name` is never used
[INFO] [stdout]    --> src/settings/defaultapps.rs:559:4
[INFO] [stdout]     |
[INFO] [stdout] 559 | fn get_app_name(desktop_file: &str) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_satisfied` is never used
[INFO] [stdout]   --> src/settings/registry.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl SettingRequirement {
[INFO] [stdout]    | ----------------------- method in this implementation
[INFO] [stdout] 21 |     /// Check if this requirement is currently satisfied
[INFO] [stdout] 22 |     pub fn is_satisfied(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `setting_by_id` is never used
[INFO] [stdout]    --> src/settings/registry.rs:536:8
[INFO] [stdout]     |
[INFO] [stdout] 536 | pub fn setting_by_id(id: &str) -> Option<&'static SettingDefinition> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `path` and `is_empty` are never used
[INFO] [stdout]    --> src/settings/store.rs:119:12
[INFO] [stdout]     |
[INFO] [stdout]  55 | impl SettingsStore {
[INFO] [stdout]     | ------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn path(&self) -> &Path {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 123 |     pub fn is_empty(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `toggles`, `choices`, `actions`, and `commands` are never read
[INFO] [stdout]   --> src/settings/ui/items.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub struct CategoryItem {
[INFO] [stdout]    |            ------------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 13 |     pub toggles: usize,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 14 |     pub choices: usize,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 15 |     pub actions: usize,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 16 |     pub commands: usize,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CategoryItem` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `save` is never used
[INFO] [stdout]    --> src/video/config.rs:106:12
[INFO] [stdout]     |
[INFO] [stdout]  81 | impl VideoConfig {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 106 |     pub fn save(&self) -> Result<()> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `markdown_path` is never used
[INFO] [stdout]    --> src/video/config.rs:167:12
[INFO] [stdout]     |
[INFO] [stdout] 139 | impl VideoProjectPaths {
[INFO] [stdout]     | ---------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 167 |     pub fn markdown_path(&self) -> &Path {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `generated_at` is never read
[INFO] [stdout]   --> src/video/document.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct VideoMetadata {
[INFO] [stdout]    |            ------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub generated_at: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `VideoMetadata` 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: field `0` is never read
[INFO] [stdout]   --> src/video/document.rs:37:15
[INFO] [stdout]    |
[INFO] [stdout] 37 |     Separator(SeparatorBlock),
[INFO] [stdout]    |     --------- ^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DocumentBlock` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 37 -     Separator(SeparatorBlock),
[INFO] [stdout] 37 +     Separator(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `line` is never read
[INFO] [stdout]   --> src/video/document.rs:71:9
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub struct SeparatorBlock {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] 71 |     pub line: usize,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SeparatorBlock` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `transform` is never read
[INFO] [stdout]   --> src/video/nle_timeline.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 26 |     VideoSubset {
[INFO] [stdout]    |     ----------- field in this variant
[INFO] [stdout] ...
[INFO] [stdout] 32 |         transform: Option<Transform>,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SegmentData` 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: fields `rotate` and `translate` are never read
[INFO] [stdout]   --> src/video/nle_timeline.rs:54:9
[INFO] [stdout]    |
[INFO] [stdout] 50 | pub struct Transform {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 54 |     pub rotate: Option<f32>,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 55 |     /// Translation (x, y) in pixels
[INFO] [stdout] 56 |     pub translate: Option<(f32, f32)>,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Transform` 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 `segments_in_range` is never used
[INFO] [stdout]   --> src/video/nle_timeline.rs:81:12
[INFO] [stdout]    |
[INFO] [stdout] 59 | impl Timeline {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 81 |     pub fn segments_in_range(&self, start: f64, end: f64) -> Vec<&Segment> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `with_rotation`, `with_translation`, and `is_identity` are never used
[INFO] [stdout]    --> src/video/nle_timeline.rs:171:12
[INFO] [stdout]     |
[INFO] [stdout] 151 | impl Transform {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 171 |     pub fn with_rotation(degrees: f32) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 180 |     pub fn with_translation(x: f32, y: f32) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 189 |     pub fn is_identity(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `transform` is never used
[INFO] [stdout]    --> src/video/nle_timeline.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 200 | impl SegmentData {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 211 |     pub fn transform(&self) -> Option<&Transform> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OldTimelineItem` is never constructed
[INFO] [stdout]    --> src/video/nle_timeline.rs:226:16
[INFO] [stdout]     |
[INFO] [stdout] 226 |     pub struct OldTimelineItem {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `OldTimelineItemKind` is never used
[INFO] [stdout]    --> src/video/nle_timeline.rs:230:14
[INFO] [stdout]     |
[INFO] [stdout] 230 |     pub enum OldTimelineItemKind {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `convert_to_nle_timeline` is never used
[INFO] [stdout]    --> src/video/nle_timeline.rs:244:12
[INFO] [stdout]     |
[INFO] [stdout] 244 |     pub fn convert_to_nle_timeline(items: Vec<OldTimelineItem>) -> Result<Timeline> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `target_height` is never read
[INFO] [stdout]    --> src/video/render.rs:404:5
[INFO] [stdout]     |
[INFO] [stdout] 400 | struct RenderPipeline {
[INFO] [stdout]     |        -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 404 |     target_height: u32,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `line` is never read
[INFO] [stdout]   --> src/video/timeline.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub struct OverlayPlan {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 37 |     pub markdown: String,
[INFO] [stdout] 38 |     pub line: usize,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `OverlayPlan` 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: field `line` is never read
[INFO] [stdout]   --> src/video/timeline.rs:46:9
[INFO] [stdout]    |
[INFO] [stdout] 43 |     Heading {
[INFO] [stdout]    |     ------- field in this variant
[INFO] [stdout] ...
[INFO] [stdout] 46 |         line: usize,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `StandalonePlan` 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: fields `display_text` and `line` are never read
[INFO] [stdout]   --> src/video/timeline.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 48 |     Pause {
[INFO] [stdout]    |     ----- fields in this variant
[INFO] [stdout] 49 |         markdown: String,
[INFO] [stdout] 50 |         display_text: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 51 |         line: usize,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `StandalonePlan` 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: field `line` is never read
[INFO] [stdout]   --> src/video/timeline.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub struct MusicPlan {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] 57 |     pub directive: MusicDirective,
[INFO] [stdout] 58 |     pub line: usize,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MusicPlan` 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 `generate_image` is never used
[INFO] [stdout]   --> src/video/title_card.rs:96:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | impl TitleCardGenerator {
[INFO] [stdout]    | ----------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 96 |     pub fn generate_image(&self, level: u32, text: &str, output_path: &Path) -> Result<()> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/video/nle_timeline.rs:300:13
[INFO] [stdout]     |
[INFO] [stdout] 300 |         let mut timeline = Timeline::new();
[INFO] [stdout]     |             ----^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `InitialCursor` is more private than the item `FzfWrapper::initial_cursor`
[INFO] [stdout]    --> src/menu_utils/fzf.rs:52:5
[INFO] [stdout]     |
[INFO] [stdout]  52 |     pub(crate) initial_cursor: Option<InitialCursor>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field `FzfWrapper::initial_cursor` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `InitialCursor` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/menu_utils/fzf.rs:390:1
[INFO] [stdout]     |
[INFO] [stdout] 390 | enum InitialCursor {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `PreviewStrategy` is more private than the item `PreviewUtils::analyze_preview_strategy`
[INFO] [stdout]    --> src/menu_utils/fzf.rs:864:5
[INFO] [stdout]     |
[INFO] [stdout] 864 |     pub fn analyze_preview_strategy<T: FzfSelectable>(items: &[T]) -> Result<PreviewStrategy> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ associated function `PreviewUtils::analyze_preview_strategy` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `PreviewStrategy` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/menu_utils/fzf.rs:832:1
[INFO] [stdout]     |
[INFO] [stdout] 832 | enum PreviewStrategy {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `HyprlandWorkspaceInfo` is never constructed
[INFO] [stdout]    --> src/common/compositor/hyprland.rs:125:8
[INFO] [stdout]     |
[INFO] [stdout] 125 | struct HyprlandWorkspaceInfo {
[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 `dispatch_command` is never used
[INFO] [stdout]    --> src/common/compositor/hyprland.rs:168:8
[INFO] [stdout]     |
[INFO] [stdout] 168 | pub fn dispatch_command(command: &str) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `CommandSucceeds` is never constructed
[INFO] [stdout]   --> src/common/requirements.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub enum InstallTest {
[INFO] [stdout]    |          ----------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 15 |     CommandSucceeds {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `InstallTest` 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: enum `ServiceState` is never used
[INFO] [stdout]   --> src/common/systemd.rs:23:10
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub enum ServiceState {
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ServiceEnablement` is never used
[INFO] [stdout]   --> src/common/systemd.rs:32:10
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub enum ServiceEnablement {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/common/systemd.rs:162:12
[INFO] [stdout]     |
[INFO] [stdout] 115 | impl SystemdManager {
[INFO] [stdout]     | ------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 162 |     pub fn get_state(&self, service_name: &str) -> ServiceState {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 180 |     pub fn get_enablement(&self, service_name: &str) -> ServiceEnablement {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 210 |     pub fn stop(&self, service_name: &str) -> Result<()> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 222 |     pub fn enable(&self, service_name: &str) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 234 |     pub fn disable(&self, service_name: &str) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 308 |     pub fn create_user_service_file(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 336 |     pub fn remove_user_service_file(&self, service_name: &str) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `system_service_is_active` is never used
[INFO] [stdout]    --> src/common/systemd.rs:389:12
[INFO] [stdout]     |
[INFO] [stdout] 389 |     pub fn system_service_is_active(service_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `system_service_is_enabled` is never used
[INFO] [stdout]    --> src/common/systemd.rs:394:12
[INFO] [stdout]     |
[INFO] [stdout] 394 |     pub fn system_service_is_enabled(service_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `user_service_is_active` is never used
[INFO] [stdout]    --> src/common/systemd.rs:399:12
[INFO] [stdout]     |
[INFO] [stdout] 399 |     pub fn user_service_is_active(service_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `user_service_is_enabled` is never used
[INFO] [stdout]    --> src/common/systemd.rs:404:12
[INFO] [stdout]     |
[INFO] [stdout] 404 |     pub fn user_service_is_enabled(service_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `file_name` and `install_instructions` are never used
[INFO] [stdout]   --> src/completions/mod.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl SupportedShell {
[INFO] [stdout]    | ------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 25 |     fn file_name(self) -> &'static str {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     fn install_instructions(self, install_path: &Path) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `instructions` is never used
[INFO] [stdout]    --> src/completions/mod.rs:116:8
[INFO] [stdout]     |
[INFO] [stdout] 116 | pub fn instructions(shell: SupportedShell, install_path: &Path) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `into_inner` is never used
[INFO] [stdout]   --> src/dot/mod.rs:67:12
[INFO] [stdout]    |
[INFO] [stdout] 58 | impl RepoName {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 67 |     pub fn into_inner(self) -> String {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `target_to_source` is never used
[INFO] [stdout]    --> src/dot/localrepo.rs:122:12
[INFO] [stdout]     |
[INFO] [stdout]  41 | impl LocalRepo {
[INFO] [stdout]     | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 122 |     pub fn target_to_source(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `db` is never read
[INFO] [stdout]   --> src/dot/repo/manager.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct RepositoryManager<'a> {
[INFO] [stdout]    |            ----------------- field in this struct
[INFO] [stdout] 10 |     config: &'a Config,
[INFO] [stdout] 11 |     db: &'a Database,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `with_description` and `with_launch_command` are never used
[INFO] [stdout]    --> src/game/config.rs:115:12
[INFO] [stdout]     |
[INFO] [stdout] 105 | impl Game {
[INFO] [stdout]     | --------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 115 |     pub fn with_description(mut self, description: impl Into<String>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 120 |     pub fn with_launch_command(mut self, command: impl Into<String>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `with_launch_command` is never used
[INFO] [stdout]    --> src/game/config.rs:169:12
[INFO] [stdout]     |
[INFO] [stdout] 145 | impl GameInstallation {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 169 |     pub fn with_launch_command(mut self, command: impl Into<String>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `format_path_for_display` is never used
[INFO] [stdout]   --> src/game/deps/display.rs:77:4
[INFO] [stdout]    |
[INFO] [stdout] 77 | fn format_path_for_display(path: &str) -> String {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_game_name_unique` is never used
[INFO] [stdout]  --> src/game/games/validation.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn validate_game_name_unique(name: &str) -> Result<bool> {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_game_exists` is never used
[INFO] [stdout]   --> src/game/games/validation.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub fn validate_game_exists(name: &str) -> Result<bool> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `list_game_backups` is never used
[INFO] [stdout]   --> src/game/restic/backup.rs:63:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl GameBackup {
[INFO] [stdout]    | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 63 |     pub fn list_game_backups(&self, game_name: &str) -> Result<String> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_cache_stats` is never used
[INFO] [stdout]    --> src/game/restic/cache.rs:133:8
[INFO] [stdout]     |
[INFO] [stdout] 133 | pub fn get_cache_stats() -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `refresh_snapshots_for_game` is never used
[INFO] [stdout]    --> src/game/restic/cache.rs:160:8
[INFO] [stdout]     |
[INFO] [stdout] 160 | pub fn refresh_snapshots_for_game(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ResticCommand` is never constructed
[INFO] [stdout]  --> src/game/restic/commands.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct ResticCommand {
[INFO] [stdout]   |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `base_command`, `init`, `check_repo`, `stats`, and `list_snapshots` are never used
[INFO] [stdout]   --> src/game/restic/commands.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl ResticCommand {
[INFO] [stdout]    | ------------------ associated items in this implementation
[INFO] [stdout] 12 |     pub fn new(config: InstantGameConfig) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |     fn base_command(&self) -> Result<Command> {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     pub fn init(&self) -> Result<()> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     pub fn check_repo(&self) -> Result<bool> {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     pub fn stats(&self) -> Result<String> {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn list_snapshots(&self, tags: Option<Vec<&str>>) -> Result<String> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `progress` is never read
[INFO] [stdout]   --> src/game/restic/dependencies.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct DependencyBackupResult {
[INFO] [stdout]    |            ---------------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 13 |     pub progress: BackupProgress,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `save_path_exists` is never read
[INFO] [stdout]   --> src/game/restic/security.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct SecurityValidationResult {
[INFO] [stdout]    |            ------------------------ field in this struct
[INFO] [stdout] 23 |     pub save_path_exists: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SecurityValidationResult` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `select_snapshot_interactive` is never used
[INFO] [stdout]    --> src/game/restic/snapshot_selection.rs:384:8
[INFO] [stdout]     |
[INFO] [stdout] 384 | pub fn select_snapshot_interactive(game_name: &str) -> Result<Option<String>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Error` is never constructed
[INFO] [stdout]   --> src/game/utils/save_files.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub enum TimeComparison {
[INFO] [stdout]    |          -------------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 21 |     Error(String),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TimeComparison` 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: function `get_most_recent_file_time` is never used
[INFO] [stdout]   --> src/game/utils/save_files.rs:69:8
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub fn get_most_recent_file_time(save_path: &Path) -> Result<Option<SystemTime>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `execute_application` is never used
[INFO] [stdout]    --> src/launch/mod.rs:143:4
[INFO] [stdout]     |
[INFO] [stdout] 143 | fn execute_application(app_name: &str) -> Result<()> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `cache_path` is never read
[INFO] [stdout]   --> src/launch/cache.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct LaunchCache {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 15 |     cache_path: PathBuf,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/launch/cache.rs:87:18
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl LaunchCache {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  87 |     pub async fn get_applications(&mut self) -> Result<Vec<String>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 121 |     fn is_cache_fresh(&self) -> Result<bool> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 150 |     fn read_cache(&self) -> Result<Vec<String>> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 167 |     async fn refresh_cache_background(cache_path: PathBuf) -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 174 |     fn scan_path_directories(&self) -> Result<Vec<String>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 220 |     async fn scan_path_directories_static() -> Result<Vec<String>> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 266 |     fn write_cache(cache_path: &Path, apps: &[String]) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 281 |     fn sort_by_frecency(&mut self, apps: &mut Vec<String>) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 319 |     pub fn record_launch(&mut self, app_name: &str) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 337 |     pub fn get_frecency_stats(&mut self) -> Result<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `icon`, `categories`, and `file_path` are never read
[INFO] [stdout]   --> src/launch/types.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct DesktopAppDetails {
[INFO] [stdout]    |            ----------------- fields in this struct
[INFO] [stdout] 13 |     pub exec: String,            // Exec command with field codes
[INFO] [stdout] 14 |     pub icon: Option<String>,    // Icon name
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 15 |     pub categories: Vec<String>, // Application categories
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub file_path: PathBuf,      // Path to .desktop file
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DesktopAppDetails` 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: struct `PathExecutableDetails` is never constructed
[INFO] [stdout]   --> src/launch/types.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub struct PathExecutableDetails {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `hide` is never used
[INFO] [stdout]   --> src/menu/scratchpad_manager.rs:62:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl ScratchpadManager {
[INFO] [stdout]    | ---------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 62 |     pub fn hide(&self) -> Result<()> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `stop` and `compositor` are never used
[INFO] [stdout]    --> src/menu/server.rs:372:18
[INFO] [stdout]     |
[INFO] [stdout]  74 | impl MenuServer {
[INFO] [stdout]     | --------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 372 |     pub async fn stop(&mut self) {
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 378 |     pub fn compositor(&self) -> &CompositorType {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `show_help` and `toggle_help` are never used
[INFO] [stdout]   --> src/menu/tui.rs:52:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | impl MenuServerTui {
[INFO] [stdout]    | ------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 52 |     pub fn show_help(&self) -> Arc<AtomicBool> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 57 |     pub fn toggle_help(&self) {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `pick_file` and `pick_files` are never used
[INFO] [stdout]    --> src/menu_utils/file_picker.rs:304:12
[INFO] [stdout]     |
[INFO] [stdout] 299 | impl MenuWrapper {
[INFO] [stdout]     | ---------------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 304 |     pub fn pick_file() -> Result<Option<PathBuf>> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 308 |     pub fn pick_files() -> Result<Vec<PathBuf>> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `select_many`, `input_dialog`, `password_dialog`, and `confirm_dialog` are never used
[INFO] [stdout]    --> src/menu_utils/fzf.rs:308:12
[INFO] [stdout]     |
[INFO] [stdout]  55 | impl FzfWrapper {
[INFO] [stdout]     | --------------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 308 |     pub fn select_many<T: FzfSelectable + Clone>(items: Vec<T>) -> Result<Vec<T>> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 328 |     pub fn input_dialog(prompt: &str) -> Result<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 336 |     pub fn password_dialog(prompt: &str) -> Result<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 344 |     pub fn confirm_dialog(message: &str) -> Result<ConfirmResult> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `ok_text` and `show_selection` are never used
[INFO] [stdout]    --> src/menu_utils/fzf.rs:482:12
[INFO] [stdout]     |
[INFO] [stdout] 394 | impl FzfBuilder {
[INFO] [stdout]     | --------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 482 |     pub fn ok_text<S: Into<String>>(mut self, text: S) -> Self {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 546 |     pub fn show_selection<T: FzfSelectable + Clone>(self, items: Vec<T>) -> Result<FzfResult<T>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PreviewData` is never constructed
[INFO] [stdout]    --> src/menu_utils/fzf.rs:824:8
[INFO] [stdout]     |
[INFO] [stdout] 824 | struct PreviewData {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `build_preview_mapping` is never used
[INFO] [stdout]    --> src/menu_utils/fzf.rs:844:12
[INFO] [stdout]     |
[INFO] [stdout] 843 | impl PreviewUtils {
[INFO] [stdout]     | ----------------- associated function in this implementation
[INFO] [stdout] 844 |     pub fn build_preview_mapping<T: FzfSelectable>(items: &[T]) -> Result<HashMap<String, String>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `start_dir` is never used
[INFO] [stdout]   --> src/menu_utils/path_input.rs:82:12
[INFO] [stdout]    |
[INFO] [stdout] 49 | impl PathInputBuilder {
[INFO] [stdout]    | --------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 82 |     pub fn start_dir<P: Into<PathBuf>>(mut self, dir: P) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `to_tilde_path`, `to_path_buf`, and `to_tilde_string` are never used
[INFO] [stdout]    --> src/menu_utils/path_input.rs:164:12
[INFO] [stdout]     |
[INFO] [stdout] 163 | impl PathInputSelection {
[INFO] [stdout]     | ----------------------- methods in this implementation
[INFO] [stdout] 164 |     pub fn to_tilde_path(&self) -> Result<Option<TildePath>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 177 |     pub fn to_path_buf(&self) -> Result<Option<PathBuf>> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 181 |     pub fn to_tilde_string(&self) -> Result<Option<String>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `with_enabled` is never used
[INFO] [stdout]   --> src/restic/logging.rs:49:12
[INFO] [stdout]    |
[INFO] [stdout] 37 | impl ResticCommandLogger {
[INFO] [stdout]    | ------------------------ associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 49 |     pub fn with_enabled(enabled: bool) -> Result<Self> {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `errors` is never read
[INFO] [stdout]    --> src/restic/wrapper.rs:308:9
[INFO] [stdout]     |
[INFO] [stdout] 306 | pub struct BackupProgress {
[INFO] [stdout]     |            -------------- field in this struct
[INFO] [stdout] 307 |     pub summary: Option<BackupSummary>,
[INFO] [stdout] 308 |     pub errors: Vec<BackupError>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `BackupProgress` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]    --> src/restic/wrapper.rs:382:9
[INFO] [stdout]     |
[INFO] [stdout] 380 | pub struct BackupSummary {
[INFO] [stdout]     |            ------------- fields in this struct
[INFO] [stdout] 381 |     #[serde(default)]
[INFO] [stdout] 382 |     pub dry_run: bool,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 385 |     pub files_unmodified: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 386 |     pub dirs_new: u64,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 387 |     pub dirs_changed: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 388 |     pub dirs_unmodified: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 389 |     pub data_blobs: i64,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 390 |     pub tree_blobs: i64,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 391 |     pub data_added: u64,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 392 |     pub data_added_packed: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 393 |     pub total_files_processed: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 394 |     pub total_bytes_processed: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 395 |     pub backup_start: String,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 396 |     pub backup_end: String,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 397 |     pub total_duration: f64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `BackupSummary` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `message`, `during`, and `item` are never read
[INFO] [stdout]    --> src/restic/wrapper.rs:403:9
[INFO] [stdout]     |
[INFO] [stdout] 402 | pub struct BackupError {
[INFO] [stdout]     |            ----------- fields in this struct
[INFO] [stdout] 403 |     pub message: String,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 404 |     pub during: String,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 405 |     pub item: Option<String>,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `BackupError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]    --> src/restic/wrapper.rs:411:9
[INFO] [stdout]     |
[INFO] [stdout] 409 | pub struct Snapshot {
[INFO] [stdout]     |            -------- fields in this struct
[INFO] [stdout] 410 |     pub time: String,
[INFO] [stdout] 411 |     pub parent: Option<String>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 412 |     pub tree: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 415 |     pub username: String,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 416 |     pub uid: Option<u32>,
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 417 |     pub gid: Option<u32>,
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 418 |     pub excludes: Option<Vec<String>>,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 419 |     pub tags: Vec<String>,
[INFO] [stdout] 420 |     pub program_version: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Snapshot` 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: multiple fields are never read
[INFO] [stdout]    --> src/restic/wrapper.rs:433:9
[INFO] [stdout]     |
[INFO] [stdout] 427 | pub struct SnapshotSummary {
[INFO] [stdout]     |            --------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 433 |     pub dirs_new: u64,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 434 |     pub dirs_changed: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 435 |     pub dirs_unmodified: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 436 |     pub data_blobs: i64,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 437 |     pub tree_blobs: i64,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 438 |     pub data_added: u64,
[INFO] [stdout] 439 |     pub data_added_packed: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 440 |     pub total_files_processed: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 441 |     pub total_bytes_processed: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `SnapshotSummary` 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: field `errors` is never read
[INFO] [stdout]    --> src/restic/wrapper.rs:447:9
[INFO] [stdout]     |
[INFO] [stdout] 445 | pub struct RestoreProgress {
[INFO] [stdout]     |            --------------- field in this struct
[INFO] [stdout] 446 |     pub summary: Option<RestoreSummary>,
[INFO] [stdout] 447 |     pub errors: Vec<RestoreError>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `RestoreProgress` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]    --> src/restic/wrapper.rs:522:9
[INFO] [stdout]     |
[INFO] [stdout] 520 | pub struct RestoreSummary {
[INFO] [stdout]     |            -------------- fields in this struct
[INFO] [stdout] 521 |     #[serde(default)]
[INFO] [stdout] 522 |     pub seconds_elapsed: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 523 |     #[serde(default)]
[INFO] [stdout] 524 |     pub total_files: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 528 |     pub files_skipped: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] 529 |     #[serde(default)]
[INFO] [stdout] 530 |     pub files_deleted: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] 531 |     #[serde(default)]
[INFO] [stdout] 532 |     pub total_bytes: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 533 |     #[serde(default)]
[INFO] [stdout] 534 |     pub bytes_restored: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout] 535 |     #[serde(default)]
[INFO] [stdout] 536 |     pub bytes_skipped: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `RestoreSummary` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `message`, `during`, and `item` are never read
[INFO] [stdout]    --> src/restic/wrapper.rs:541:9
[INFO] [stdout]     |
[INFO] [stdout] 540 | pub struct RestoreError {
[INFO] [stdout]     |            ------------ fields in this struct
[INFO] [stdout] 541 |     pub message: String,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 542 |     pub during: String,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 543 |     pub item: Option<String>,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `RestoreError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_app_name` is never used
[INFO] [stdout]    --> src/settings/defaultapps.rs:559:4
[INFO] [stdout]     |
[INFO] [stdout] 559 | fn get_app_name(desktop_file: &str) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_satisfied` is never used
[INFO] [stdout]   --> src/settings/registry.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl SettingRequirement {
[INFO] [stdout]    | ----------------------- method in this implementation
[INFO] [stdout] 21 |     /// Check if this requirement is currently satisfied
[INFO] [stdout] 22 |     pub fn is_satisfied(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `setting_by_id` is never used
[INFO] [stdout]    --> src/settings/registry.rs:536:8
[INFO] [stdout]     |
[INFO] [stdout] 536 | pub fn setting_by_id(id: &str) -> Option<&'static SettingDefinition> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `path` and `is_empty` are never used
[INFO] [stdout]    --> src/settings/store.rs:119:12
[INFO] [stdout]     |
[INFO] [stdout]  55 | impl SettingsStore {
[INFO] [stdout]     | ------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn path(&self) -> &Path {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 123 |     pub fn is_empty(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `toggles`, `choices`, `actions`, and `commands` are never read
[INFO] [stdout]   --> src/settings/ui/items.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub struct CategoryItem {
[INFO] [stdout]    |            ------------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 13 |     pub toggles: usize,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 14 |     pub choices: usize,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 15 |     pub actions: usize,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 16 |     pub commands: usize,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CategoryItem` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `save` is never used
[INFO] [stdout]    --> src/video/config.rs:106:12
[INFO] [stdout]     |
[INFO] [stdout]  81 | impl VideoConfig {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 106 |     pub fn save(&self) -> Result<()> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `markdown_path` is never used
[INFO] [stdout]    --> src/video/config.rs:167:12
[INFO] [stdout]     |
[INFO] [stdout] 139 | impl VideoProjectPaths {
[INFO] [stdout]     | ---------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 167 |     pub fn markdown_path(&self) -> &Path {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `generated_at` is never read
[INFO] [stdout]   --> src/video/document.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct VideoMetadata {
[INFO] [stdout]    |            ------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub generated_at: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `VideoMetadata` 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: field `0` is never read
[INFO] [stdout]   --> src/video/document.rs:37:15
[INFO] [stdout]    |
[INFO] [stdout] 37 |     Separator(SeparatorBlock),
[INFO] [stdout]    |     --------- ^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DocumentBlock` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 37 -     Separator(SeparatorBlock),
[INFO] [stdout] 37 +     Separator(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `line` is never read
[INFO] [stdout]   --> src/video/document.rs:71:9
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub struct SeparatorBlock {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] 71 |     pub line: usize,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SeparatorBlock` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `transform` is never read
[INFO] [stdout]   --> src/video/nle_timeline.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 26 |     VideoSubset {
[INFO] [stdout]    |     ----------- field in this variant
[INFO] [stdout] ...
[INFO] [stdout] 32 |         transform: Option<Transform>,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SegmentData` 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 `with_rotation` and `with_translation` are never used
[INFO] [stdout]    --> src/video/nle_timeline.rs:171:12
[INFO] [stdout]     |
[INFO] [stdout] 151 | impl Transform {
[INFO] [stdout]     | -------------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 171 |     pub fn with_rotation(degrees: f32) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 180 |     pub fn with_translation(x: f32, y: f32) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `transform` is never used
[INFO] [stdout]    --> src/video/nle_timeline.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 200 | impl SegmentData {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 211 |     pub fn transform(&self) -> Option<&Transform> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `target_height` is never read
[INFO] [stdout]    --> src/video/render.rs:404:5
[INFO] [stdout]     |
[INFO] [stdout] 400 | struct RenderPipeline {
[INFO] [stdout]     |        -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 404 |     target_height: u32,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `line` is never read
[INFO] [stdout]   --> src/video/timeline.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub struct OverlayPlan {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 37 |     pub markdown: String,
[INFO] [stdout] 38 |     pub line: usize,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `OverlayPlan` 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: field `line` is never read
[INFO] [stdout]   --> src/video/timeline.rs:46:9
[INFO] [stdout]    |
[INFO] [stdout] 43 |     Heading {
[INFO] [stdout]    |     ------- field in this variant
[INFO] [stdout] ...
[INFO] [stdout] 46 |         line: usize,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `StandalonePlan` 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: fields `display_text` and `line` are never read
[INFO] [stdout]   --> src/video/timeline.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 48 |     Pause {
[INFO] [stdout]    |     ----- fields in this variant
[INFO] [stdout] 49 |         markdown: String,
[INFO] [stdout] 50 |         display_text: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 51 |         line: usize,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `StandalonePlan` 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: field `line` is never read
[INFO] [stdout]   --> src/video/timeline.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub struct MusicPlan {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] 57 |     pub directive: MusicDirective,
[INFO] [stdout] 58 |     pub line: usize,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MusicPlan` 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 `generate_image` is never used
[INFO] [stdout]   --> src/video/title_card.rs:96:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | impl TitleCardGenerator {
[INFO] [stdout]    | ----------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 96 |     pub fn generate_image(&self, level: u32, text: &str, output_path: &Path) -> Result<()> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 38s
[INFO] running `Command { std: "docker" "inspect" "b29bd84bc6e31c062a7200437978c07dbb734841342e86cb3d4489bed2bc4138", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b29bd84bc6e31c062a7200437978c07dbb734841342e86cb3d4489bed2bc4138", kill_on_drop: false }`
[INFO] [stdout] b29bd84bc6e31c062a7200437978c07dbb734841342e86cb3d4489bed2bc4138
