[INFO] cloning repository https://github.com/pkmgr/pkmgr [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/pkmgr/pkmgr" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpkmgr%2Fpkmgr", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpkmgr%2Fpkmgr'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 26d8e2bb2fec4c1f9646d954a4972e73e975816c [INFO] checking pkmgr/pkmgr against master#eeb94be79adc9df7a09ad0b2421f16e60e6d932c for pr-152971 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpkmgr%2Fpkmgr" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/pkmgr/pkmgr [INFO] finished tweaking git repo https://github.com/pkmgr/pkmgr [INFO] tweaked toml for git repo https://github.com/pkmgr/pkmgr written to /workspace/builds/worker-0-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/pkmgr/pkmgr on toolchain eeb94be79adc9df7a09ad0b2421f16e60e6d932c [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+eeb94be79adc9df7a09ad0b2421f16e60e6d932c" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/pkmgr/pkmgr 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" "+eeb94be79adc9df7a09ad0b2421f16e60e6d932c" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded clap v4.5.48 [INFO] [stderr] Downloaded clap_complete v4.5.58 [INFO] [stderr] Downloaded clap_builder v4.5.48 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:61361fe0aef631f17e9d025a70c5a647956f8c671dd02950a60ad3f5cc5526d7" "/opt/rustwide/cargo-home/bin/cargo" "+eeb94be79adc9df7a09ad0b2421f16e60e6d932c" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] e355a3f7eed7377c5b21920baaed5008b5c2e086567fab863db9e6b90a34e4ad [INFO] running `Command { std: "docker" "start" "-a" "e355a3f7eed7377c5b21920baaed5008b5c2e086567fab863db9e6b90a34e4ad", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "e355a3f7eed7377c5b21920baaed5008b5c2e086567fab863db9e6b90a34e4ad", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e355a3f7eed7377c5b21920baaed5008b5c2e086567fab863db9e6b90a34e4ad", kill_on_drop: false }` [INFO] [stdout] e355a3f7eed7377c5b21920baaed5008b5c2e086567fab863db9e6b90a34e4ad [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:61361fe0aef631f17e9d025a70c5a647956f8c671dd02950a60ad3f5cc5526d7" "/opt/rustwide/cargo-home/bin/cargo" "+eeb94be79adc9df7a09ad0b2421f16e60e6d932c" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 59a475446e5956439e3989b98d4852106884fe3e19743f3dde6b4b1ea1c10971 [INFO] running `Command { std: "docker" "start" "-a" "59a475446e5956439e3989b98d4852106884fe3e19743f3dde6b4b1ea1c10971", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.176 [INFO] [stderr] Compiling find-msvc-tools v0.1.2 [INFO] [stderr] Checking bitflags v2.9.4 [INFO] [stderr] Checking generic-array v0.14.7 [INFO] [stderr] Checking indexmap v2.11.4 [INFO] [stderr] Checking serde v1.0.228 [INFO] [stderr] Checking yoke v0.8.0 [INFO] [stderr] Checking futures-util v0.3.31 [INFO] [stderr] Checking tracing v0.1.41 [INFO] [stderr] Compiling signal-hook v0.3.18 [INFO] [stderr] Checking anstream v0.6.20 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Checking base64ct v1.8.0 [INFO] [stderr] Compiling portable-atomic v1.11.1 [INFO] [stderr] Checking clap_lex v0.7.5 [INFO] [stderr] Compiling rustix v0.38.44 [INFO] [stderr] Compiling clap_derive v4.5.47 [INFO] [stderr] Checking rustix v1.1.2 [INFO] [stderr] Checking zerovec v0.11.4 [INFO] [stderr] Checking zerotrie v0.2.2 [INFO] [stderr] Checking deranged v0.5.4 [INFO] [stderr] Checking crypto-common v0.1.6 [INFO] [stderr] Checking block-buffer v0.10.4 [INFO] [stderr] Checking inout v0.1.4 [INFO] [stderr] Checking password-hash v0.4.2 [INFO] [stderr] Checking clap_builder v4.5.48 [INFO] [stderr] Checking miniz_oxide v0.8.9 [INFO] [stderr] Checking crc32fast v1.5.0 [INFO] [stderr] Checking cipher v0.4.4 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Checking aho-corasick v1.1.3 [INFO] [stderr] Checking winnow v0.7.13 [INFO] [stderr] Checking toml_datetime v0.6.11 [INFO] [stderr] Checking digest v0.10.7 [INFO] [stderr] Checking serde_spanned v0.6.9 [INFO] [stderr] Checking regex-syntax v0.8.6 [INFO] [stderr] Checking linux-raw-sys v0.4.15 [INFO] [stderr] Checking sha2 v0.10.9 [INFO] [stderr] Checking hmac v0.12.1 [INFO] [stderr] Checking tinystr v0.8.1 [INFO] [stderr] Checking potential_utf v0.1.3 [INFO] [stderr] Checking icu_locale_core v2.0.0 [INFO] [stderr] Checking pbkdf2 v0.11.0 [INFO] [stderr] Checking flate2 v1.1.2 [INFO] [stderr] Checking time v0.3.44 [INFO] [stderr] Checking icu_collections v2.0.0 [INFO] [stderr] Compiling jobserver v0.1.34 [INFO] [stderr] Checking sha1 v0.10.6 [INFO] [stderr] Checking xattr v1.6.1 [INFO] [stderr] Checking aes v0.8.4 [INFO] [stderr] Checking serde_urlencoded v0.7.1 [INFO] [stderr] Checking icu_provider v2.0.0 [INFO] [stderr] Compiling cc v1.2.39 [INFO] [stderr] Checking thiserror v1.0.69 [INFO] [stderr] Checking serde_json v1.0.145 [INFO] [stderr] Checking either v1.15.0 [INFO] [stderr] Checking zeroize v1.8.2 [INFO] [stderr] Checking shell-words v1.1.0 [INFO] [stderr] Checking home v0.5.11 [INFO] [stderr] Checking match_cfg v0.1.0 [INFO] [stderr] Checking constant_time_eq v0.1.5 [INFO] [stderr] Checking semver v1.0.27 [INFO] [stderr] Checking icu_properties v2.0.1 [INFO] [stderr] Checking icu_normalizer v2.0.0 [INFO] [stderr] Checking signal-hook-registry v1.4.6 [INFO] [stderr] Checking parking_lot_core v0.9.11 [INFO] [stderr] Checking mio v1.0.4 [INFO] [stderr] Checking getrandom v0.2.16 [INFO] [stderr] Checking socket2 v0.6.0 [INFO] [stderr] Checking socket2 v0.5.10 [INFO] [stderr] Checking getrandom v0.3.3 [INFO] [stderr] Checking mio v0.8.11 [INFO] [stderr] Checking console v0.15.11 [INFO] [stderr] Checking parking_lot v0.12.4 [INFO] [stderr] Checking dirs-sys v0.5.0 [INFO] [stderr] Checking regex-automata v0.4.11 [INFO] [stderr] Checking dirs-sys v0.4.1 [INFO] [stderr] Checking tempfile v3.23.0 [INFO] [stderr] Checking dirs v6.0.0 [INFO] [stderr] Checking filetime v0.2.26 [INFO] [stderr] Checking shellexpand v3.1.1 [INFO] [stderr] Checking clap v4.5.48 [INFO] [stderr] Checking dirs v5.0.1 [INFO] [stderr] Checking uuid v1.18.1 [INFO] [stderr] Checking clap_complete v4.5.58 [INFO] [stderr] Checking which v4.4.2 [INFO] [stderr] Checking toml_edit v0.22.27 [INFO] [stderr] Checking chrono v0.4.42 [INFO] [stderr] Checking indicatif v0.17.11 [INFO] [stderr] Checking atty v0.2.14 [INFO] [stderr] Checking tar v0.4.44 [INFO] [stderr] Checking hostname v0.3.1 [INFO] [stderr] Checking num_cpus v1.17.0 [INFO] [stderr] Checking fs2 v0.4.3 [INFO] [stderr] Checking dialoguer v0.11.0 [INFO] [stderr] Checking nix v0.27.1 [INFO] [stderr] Checking tokio v1.47.1 [INFO] [stderr] Checking signal-hook-mio v0.2.4 [INFO] [stderr] Checking crossterm v0.27.0 [INFO] [stderr] Compiling ring v0.17.14 [INFO] [stderr] Compiling zstd-sys v2.0.16+zstd.1.5.7 [INFO] [stderr] Compiling bzip2-sys v0.1.13+1.0.8 [INFO] [stderr] Compiling sys-info v0.9.1 [INFO] [stderr] Checking idna_adapter v1.2.1 [INFO] [stderr] Checking regex v1.11.3 [INFO] [stderr] Checking idna v1.1.0 [INFO] [stderr] Checking toml v0.8.23 [INFO] [stderr] Checking url v2.5.7 [INFO] [stderr] Checking bzip2 v0.4.4 [INFO] [stderr] Compiling rustls v0.21.12 [INFO] [stderr] Checking rustls-webpki v0.101.7 [INFO] [stderr] Checking sct v0.7.1 [INFO] [stderr] Compiling zstd-safe v5.0.2+zstd.1.5.2 [INFO] [stderr] Checking zstd v0.11.2+zstd.1.5.2 [INFO] [stderr] Checking zip v0.6.6 [INFO] [stderr] Checking tokio-util v0.7.16 [INFO] [stderr] Checking h2 v0.3.27 [INFO] [stderr] Checking tokio-rustls v0.24.1 [INFO] [stderr] Checking hyper v0.14.32 [INFO] [stderr] Checking hyper-rustls v0.24.2 [INFO] [stderr] Checking reqwest v0.11.27 [INFO] [stderr] Checking pkmgr v1.0.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `Context` [INFO] [stdout] --> src/commands/binary.rs:1:14 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::{Context, Result}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::PathBuf` [INFO] [stdout] --> src/commands/binary.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::path::PathBuf; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::cache::stats::CacheStatistics` [INFO] [stdout] --> src/commands/cache.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::cache::stats::CacheStatistics; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ValueEnum` [INFO] [stdout] --> src/commands/profile.rs:2:24 [INFO] [stdout] | [INFO] [stdout] 2 | use clap::{Subcommand, ValueEnum}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `usb` [INFO] [stdout] --> src/commands/usb.rs:119:7 [INFO] [stdout] | [INFO] [stdout] 119 | #[cfg(feature = "usb")] [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default`, `static`, and `winapi` [INFO] [stdout] = help: consider adding `usb` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `usb` [INFO] [stdout] --> src/commands/usb.rs:150:7 [INFO] [stdout] | [INFO] [stdout] 150 | #[cfg(feature = "usb")] [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default`, `static`, and `winapi` [INFO] [stdout] = help: consider adding `usb` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `usb` [INFO] [stdout] --> src/commands/usb.rs:180:7 [INFO] [stdout] | [INFO] [stdout] 180 | #[cfg(feature = "usb")] [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default`, `static`, and `winapi` [INFO] [stdout] = help: consider adding `usb` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `usb` [INFO] [stdout] --> src/commands/usb.rs:218:7 [INFO] [stdout] | [INFO] [stdout] 218 | #[cfg(feature = "usb")] [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default`, `static`, and `winapi` [INFO] [stdout] = help: consider adding `usb` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::PathBuf` [INFO] [stdout] --> src/commands/usb.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::path::PathBuf; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `usb` [INFO] [stdout] --> src/commands/usb.rs:66:11 [INFO] [stdout] | [INFO] [stdout] 66 | #[cfg(feature = "usb")] [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default`, `static`, and `winapi` [INFO] [stdout] = help: consider adding `usb` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `usb` [INFO] [stdout] --> src/commands/usb.rs:90:15 [INFO] [stdout] | [INFO] [stdout] 90 | #[cfg(not(feature = "usb"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default`, `static`, and `winapi` [INFO] [stdout] = help: consider adding `usb` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `anyhow::Result` [INFO] [stdout] --> src/core/normalize.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core::platform::PackageManager` [INFO] [stdout] --> src/core/normalize.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::core::platform::PackageManager; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `PlatformInfo` [INFO] [stdout] --> src/core/normalizer.rs:3:45 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::core::platform::{PackageManager, PlatformInfo}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/languages/resolver.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/languages/installer.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Context` [INFO] [stdout] --> src/languages/executor.rs:1:14 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::{Context, Result, bail}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::env` [INFO] [stdout] --> src/languages/executor.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::env; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Path` [INFO] [stdout] --> src/languages/executor.rs:4:17 [INFO] [stdout] | [INFO] [stdout] 4 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `regex::Regex` [INFO] [stdout] --> src/managers/apt.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use regex::Regex; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Context` [INFO] [stdout] --> src/commands/binary.rs:1:14 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::{Context, Result}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::PathBuf` [INFO] [stdout] --> src/commands/binary.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::path::PathBuf; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Color` [INFO] [stdout] --> src/ui/output.rs:1:22 [INFO] [stdout] | [INFO] [stdout] 1 | use console::{style, Color, Term}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::cache::stats::CacheStatistics` [INFO] [stdout] --> src/commands/cache.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::cache::stats::CacheStatistics; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Context` and `Result` [INFO] [stdout] --> src/iso/mod.rs:1:14 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::{Context, Result}; [INFO] [stdout] | ^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Context` [INFO] [stdout] --> src/iso/manager.rs:1:14 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::{Context, Result}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Path` [INFO] [stdout] --> src/iso/manager.rs:2:17 [INFO] [stdout] | [INFO] [stdout] 2 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `IsoVersion` [INFO] [stdout] --> src/iso/manager.rs:6:59 [INFO] [stdout] | [INFO] [stdout] 6 | use super::{distributions, verification, IsoDistribution, IsoVersion, DistributionCategory}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ValueEnum` [INFO] [stdout] --> src/commands/profile.rs:2:24 [INFO] [stdout] | [INFO] [stdout] 2 | use clap::{Subcommand, ValueEnum}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Context` [INFO] [stdout] --> src/usb/mod.rs:1:14 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::{Context, Result}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `usb` [INFO] [stdout] --> src/commands/usb.rs:119:7 [INFO] [stdout] | [INFO] [stdout] 119 | #[cfg(feature = "usb")] [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default`, `static`, and `winapi` [INFO] [stdout] = help: consider adding `usb` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `bail` [INFO] [stdout] --> src/usb/device.rs:1:31 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::{Context, Result, bail}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `usb` [INFO] [stdout] --> src/commands/usb.rs:150:7 [INFO] [stdout] | [INFO] [stdout] 150 | #[cfg(feature = "usb")] [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default`, `static`, and `winapi` [INFO] [stdout] = help: consider adding `usb` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `usb` [INFO] [stdout] --> src/commands/usb.rs:180:7 [INFO] [stdout] | [INFO] [stdout] 180 | #[cfg(feature = "usb")] [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default`, `static`, and `winapi` [INFO] [stdout] = help: consider adding `usb` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `usb` [INFO] [stdout] --> src/commands/usb.rs:218:7 [INFO] [stdout] | [INFO] [stdout] 218 | #[cfg(feature = "usb")] [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default`, `static`, and `winapi` [INFO] [stdout] = help: consider adding `usb` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Context` and `bail` [INFO] [stdout] --> src/usb/wizard.rs:1:14 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::{Context, Result, bail}; [INFO] [stdout] | ^^^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::PathBuf` [INFO] [stdout] --> src/commands/usb.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::path::PathBuf; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `PathBuf` [INFO] [stdout] --> src/usb/bootloader.rs:2:23 [INFO] [stdout] | [INFO] [stdout] 2 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `MultiBootConfig` [INFO] [stdout] --> src/usb/bootloader.rs:5:13 [INFO] [stdout] | [INFO] [stdout] 5 | use super::{MultiBootConfig, BootEntry, BootloaderType}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::iso::IsoDistribution` [INFO] [stdout] --> src/usb/bootloader.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::iso::IsoDistribution; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `usb` [INFO] [stdout] --> src/commands/usb.rs:66:11 [INFO] [stdout] | [INFO] [stdout] 66 | #[cfg(feature = "usb")] [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default`, `static`, and `winapi` [INFO] [stdout] = help: consider adding `usb` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `usb` [INFO] [stdout] --> src/commands/usb.rs:90:15 [INFO] [stdout] | [INFO] [stdout] 90 | #[cfg(not(feature = "usb"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default`, `static`, and `winapi` [INFO] [stdout] = help: consider adding `usb` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Digest` and `Sha256` [INFO] [stdout] --> src/usb/writer.rs:159:20 [INFO] [stdout] | [INFO] [stdout] 159 | use sha2::{Sha256, Digest}; [INFO] [stdout] | ^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Context`, `Result`, and `bail` [INFO] [stdout] --> src/repos/mod.rs:1:14 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::{Context, Result, bail}; [INFO] [stdout] | ^^^^^^^ ^^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/repos/mod.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `PathBuf` and `Path` [INFO] [stdout] --> src/repos/mod.rs:4:17 [INFO] [stdout] | [INFO] [stdout] 4 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `TrustLevel` [INFO] [stdout] --> src/repos/manager.rs:7:41 [INFO] [stdout] | [INFO] [stdout] 7 | use super::{Repository, RepositoryType, TrustLevel, detector::RepositoryDetector, gpg::GpgManager}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `PathBuf` [INFO] [stdout] --> src/repos/gpg.rs:3:23 [INFO] [stdout] | [INFO] [stdout] 3 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Context`, `Result`, and `bail` [INFO] [stdout] --> src/repos/detector.rs:1:14 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::{Context, Result, bail}; [INFO] [stdout] | ^^^^^^^ ^^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `PathBuf` and `Path` [INFO] [stdout] --> src/repos/detector.rs:2:17 [INFO] [stdout] | [INFO] [stdout] 2 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `anyhow::Result` [INFO] [stdout] --> src/core/normalize.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::core::platform::PackageManager` [INFO] [stdout] --> src/core/normalize.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::core::platform::PackageManager; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Path` [INFO] [stdout] --> src/repos/config.rs:4:17 [INFO] [stdout] | [INFO] [stdout] 4 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `PlatformInfo` [INFO] [stdout] --> src/core/normalizer.rs:3:45 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::core::platform::{PackageManager, PlatformInfo}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/languages/resolver.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/languages/installer.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Context` [INFO] [stdout] --> src/languages/executor.rs:1:14 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::{Context, Result, bail}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::env` [INFO] [stdout] --> src/languages/executor.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::env; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Path` [INFO] [stdout] --> src/languages/executor.rs:4:17 [INFO] [stdout] | [INFO] [stdout] 4 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Path` [INFO] [stdout] --> src/profile/mod.rs:4:17 [INFO] [stdout] | [INFO] [stdout] 4 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `regex::Regex` [INFO] [stdout] --> src/managers/apt.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use regex::Regex; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `PathBuf` and `Path` [INFO] [stdout] --> src/profile/manager.rs:2:17 [INFO] [stdout] | [INFO] [stdout] 2 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `PathBuf` [INFO] [stdout] --> src/profile/exporter.rs:2:23 [INFO] [stdout] | [INFO] [stdout] 2 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Context`, `Result`, and `bail` [INFO] [stdout] --> src/recovery/mod.rs:1:14 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::{Context, Result, bail}; [INFO] [stdout] | ^^^^^^^ ^^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Color` [INFO] [stdout] --> src/ui/output.rs:1:22 [INFO] [stdout] | [INFO] [stdout] 1 | use console::{style, Color, Term}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/recovery/patterns/arch.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/recovery/patterns/common.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Context` and `Result` [INFO] [stdout] --> src/iso/mod.rs:1:14 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::{Context, Result}; [INFO] [stdout] | ^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Context` [INFO] [stdout] --> src/iso/manager.rs:1:14 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::{Context, Result}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Context` and `Result` [INFO] [stdout] --> src/recovery/analyzer.rs:1:14 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::{Context, Result}; [INFO] [stdout] | ^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Path` [INFO] [stdout] --> src/iso/manager.rs:2:17 [INFO] [stdout] | [INFO] [stdout] 2 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `bail` [INFO] [stdout] --> src/recovery/fixer.rs:1:31 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::{Context, Result, bail}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `IsoVersion` [INFO] [stdout] --> src/iso/manager.rs:6:59 [INFO] [stdout] | [INFO] [stdout] 6 | use super::{distributions, verification, IsoDistribution, IsoVersion, DistributionCategory}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `anyhow::Result` [INFO] [stdout] --> src/recovery/strategies.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `clap::Command` [INFO] [stdout] --> src/shell/completion.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use clap::Command; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io` [INFO] [stdout] --> src/shell/completion.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::io; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `anyhow::Result` [INFO] [stdout] --> src/shell/integration.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Context` [INFO] [stdout] --> src/usb/mod.rs:1:14 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::{Context, Result}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `bail` [INFO] [stdout] --> src/usb/device.rs:1:31 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::{Context, Result, bail}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Context` and `bail` [INFO] [stdout] --> src/usb/wizard.rs:1:14 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::{Context, Result, bail}; [INFO] [stdout] | ^^^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `PathBuf` [INFO] [stdout] --> src/usb/bootloader.rs:2:23 [INFO] [stdout] | [INFO] [stdout] 2 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `MultiBootConfig` [INFO] [stdout] --> src/usb/bootloader.rs:5:13 [INFO] [stdout] | [INFO] [stdout] 5 | use super::{MultiBootConfig, BootEntry, BootloaderType}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::iso::IsoDistribution` [INFO] [stdout] --> src/usb/bootloader.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::iso::IsoDistribution; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Digest` and `Sha256` [INFO] [stdout] --> src/usb/writer.rs:159:20 [INFO] [stdout] | [INFO] [stdout] 159 | use sha2::{Sha256, Digest}; [INFO] [stdout] | ^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Context`, `Result`, and `bail` [INFO] [stdout] --> src/repos/mod.rs:1:14 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::{Context, Result, bail}; [INFO] [stdout] | ^^^^^^^ ^^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/repos/mod.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `PathBuf` and `Path` [INFO] [stdout] --> src/repos/mod.rs:4:17 [INFO] [stdout] | [INFO] [stdout] 4 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Context` [INFO] [stdout] --> src/shell/mod.rs:6:14 [INFO] [stdout] | [INFO] [stdout] 6 | use anyhow::{Context, Result}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `TrustLevel` [INFO] [stdout] --> src/repos/manager.rs:7:41 [INFO] [stdout] | [INFO] [stdout] 7 | use super::{Repository, RepositoryType, TrustLevel, detector::RepositoryDetector, gpg::GpgManager}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `PathBuf` [INFO] [stdout] --> src/repos/gpg.rs:3:23 [INFO] [stdout] | [INFO] [stdout] 3 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Context` [INFO] [stdout] --> src/cache/manager.rs:1:14 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::{Context, Result}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Context` [INFO] [stdout] --> src/cache/cleaner.rs:1:14 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::{Context, Result}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Context`, `Result`, and `bail` [INFO] [stdout] --> src/repos/detector.rs:1:14 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::{Context, Result, bail}; [INFO] [stdout] | ^^^^^^^ ^^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `PathBuf` and `Path` [INFO] [stdout] --> src/repos/detector.rs:2:17 [INFO] [stdout] | [INFO] [stdout] 2 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `CacheStats` [INFO] [stdout] --> src/cache/cleaner.rs:5:56 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::cache::{CacheConfig, CacheEntry, CacheType, CacheStats, format_size}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `anyhow::Result` [INFO] [stdout] --> src/cache/stats.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Path` [INFO] [stdout] --> src/repos/config.rs:4:17 [INFO] [stdout] | [INFO] [stdout] 4 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `DateTime` [INFO] [stdout] --> src/cache/stats.rs:2:14 [INFO] [stdout] | [INFO] [stdout] 2 | use chrono::{DateTime, Utc, Duration}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `CacheConfig` [INFO] [stdout] --> src/cache/stats.rs:5:20 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::cache::{CacheConfig, CacheEntry, CacheType, CacheStats, format_size}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Path` [INFO] [stdout] --> src/cache/mod.rs:8:17 [INFO] [stdout] | [INFO] [stdout] 8 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Context` [INFO] [stdout] --> src/doctor/checker.rs:1:14 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::{Context, Result}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `CheckCategory` [INFO] [stdout] --> src/doctor/checker.rs:6:21 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::doctor::{CheckCategory, Finding, HealthReport, Severity, SystemInfo}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Context` [INFO] [stdout] --> src/doctor/diagnostics.rs:1:14 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::{Context, Result}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Finding` [INFO] [stdout] --> src/doctor/diagnostics.rs:4:21 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::doctor::{Finding, HealthReport, Severity}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::cache::format_size` [INFO] [stdout] --> src/doctor/report.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::cache::format_size; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Context` [INFO] [stdout] --> src/doctor/mod.rs:5:14 [INFO] [stdout] | [INFO] [stdout] 5 | use anyhow::{Context, Result}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/doctor/mod.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Path` [INFO] [stdout] --> src/profile/mod.rs:4:17 [INFO] [stdout] | [INFO] [stdout] 4 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `PathBuf` and `Path` [INFO] [stdout] --> src/profile/manager.rs:2:17 [INFO] [stdout] | [INFO] [stdout] 2 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `downloader::BinaryDownloader` [INFO] [stdout] --> src/binary/mod.rs:3:9 [INFO] [stdout] | [INFO] [stdout] 3 | pub use downloader::BinaryDownloader; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `PathBuf` [INFO] [stdout] --> src/profile/exporter.rs:2:23 [INFO] [stdout] | [INFO] [stdout] 2 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Context`, `Result`, and `bail` [INFO] [stdout] --> src/recovery/mod.rs:1:14 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::{Context, Result, bail}; [INFO] [stdout] | ^^^^^^^ ^^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/recovery/patterns/arch.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/recovery/patterns/common.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Context` and `Result` [INFO] [stdout] --> src/recovery/analyzer.rs:1:14 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::{Context, Result}; [INFO] [stdout] | ^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `bail` [INFO] [stdout] --> src/recovery/fixer.rs:1:31 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::{Context, Result, bail}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `anyhow::Result` [INFO] [stdout] --> src/recovery/strategies.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `clap::Command` [INFO] [stdout] --> src/shell/completion.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use clap::Command; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io` [INFO] [stdout] --> src/shell/completion.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::io; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `anyhow::Result` [INFO] [stdout] --> src/shell/integration.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Context` [INFO] [stdout] --> src/shell/mod.rs:6:14 [INFO] [stdout] | [INFO] [stdout] 6 | use anyhow::{Context, Result}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Context` [INFO] [stdout] --> src/cache/manager.rs:1:14 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::{Context, Result}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Context` [INFO] [stdout] --> src/cache/cleaner.rs:1:14 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::{Context, Result}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `CacheStats` [INFO] [stdout] --> src/cache/cleaner.rs:5:56 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::cache::{CacheConfig, CacheEntry, CacheType, CacheStats, format_size}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `anyhow::Result` [INFO] [stdout] --> src/cache/stats.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `DateTime` [INFO] [stdout] --> src/cache/stats.rs:2:14 [INFO] [stdout] | [INFO] [stdout] 2 | use chrono::{DateTime, Utc, Duration}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `CacheConfig` [INFO] [stdout] --> src/cache/stats.rs:5:20 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::cache::{CacheConfig, CacheEntry, CacheType, CacheStats, format_size}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Path` [INFO] [stdout] --> src/cache/mod.rs:8:17 [INFO] [stdout] | [INFO] [stdout] 8 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Context` [INFO] [stdout] --> src/doctor/checker.rs:1:14 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::{Context, Result}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `CheckCategory` [INFO] [stdout] --> src/doctor/checker.rs:6:21 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::doctor::{CheckCategory, Finding, HealthReport, Severity, SystemInfo}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Context` [INFO] [stdout] --> src/doctor/diagnostics.rs:1:14 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::{Context, Result}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Finding` [INFO] [stdout] --> src/doctor/diagnostics.rs:4:21 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::doctor::{Finding, HealthReport, Severity}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::cache::format_size` [INFO] [stdout] --> src/doctor/report.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::cache::format_size; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Context` [INFO] [stdout] --> src/doctor/mod.rs:5:14 [INFO] [stdout] | [INFO] [stdout] 5 | use anyhow::{Context, Result}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/doctor/mod.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `downloader::BinaryDownloader` [INFO] [stdout] --> src/binary/mod.rs:3:9 [INFO] [stdout] | [INFO] [stdout] 3 | pub use downloader::BinaryDownloader; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/iso/manager.rs:359:13 [INFO] [stdout] | [INFO] [stdout] 359 | let mut duplicates: Vec = Vec::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: variable does not need to be mutable [INFO] [stdout] --> src/iso/manager.rs:359:13 [INFO] [stdout] | [INFO] [stdout] 359 | let mut duplicates: Vec = Vec::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: variable does not need to be mutable [INFO] [stdout] --> src/repos/manager.rs:232:21 [INFO] [stdout] | [INFO] [stdout] 232 | if let Some(mut repo) = self.detector.detect_required_repository(repo_spec) { [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/repos/manager.rs:232:21 [INFO] [stdout] | [INFO] [stdout] 232 | if let Some(mut repo) = self.detector.detect_required_repository(repo_spec) { [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/doctor/diagnostics.rs:253:17 [INFO] [stdout] | [INFO] [stdout] 253 | let mut manager = RepositoryManager::new(self.output.clone(), platform); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/doctor/diagnostics.rs:253:17 [INFO] [stdout] | [INFO] [stdout] 253 | let mut manager = RepositoryManager::new(self.output.clone(), platform); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::os::unix::process::CommandExt` [INFO] [stdout] --> src/languages/executor.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::os::unix::process::CommandExt; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::os::unix::process::CommandExt` [INFO] [stdout] --> src/languages/executor.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::os::unix::process::CommandExt; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cli` [INFO] [stdout] --> src/commands/binary.rs:27:43 [INFO] [stdout] | [INFO] [stdout] 27 | pub async fn execute(cmd: BinaryCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cli` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/binary.rs:50:41 [INFO] [stdout] | [INFO] [stdout] 50 | async fn search_binaries(query: String, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cli` [INFO] [stdout] --> src/commands/binary.rs:27:43 [INFO] [stdout] | [INFO] [stdout] 27 | pub async fn execute(cmd: BinaryCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cli` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/binary.rs:50:41 [INFO] [stdout] | [INFO] [stdout] 50 | async fn search_binaries(query: String, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/binary.rs:211:48 [INFO] [stdout] | [INFO] [stdout] 211 | async fn update_binaries(name: Option, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/binary.rs:211:48 [INFO] [stdout] | [INFO] [stdout] 211 | async fn update_binaries(name: Option, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/binary.rs:244:41 [INFO] [stdout] | [INFO] [stdout] 244 | async fn show_binary_info(repo: String, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/binary.rs:244:41 [INFO] [stdout] | [INFO] [stdout] 244 | async fn show_binary_info(repo: String, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cmd` [INFO] [stdout] --> src/commands/config.rs:16:22 [INFO] [stdout] | [INFO] [stdout] 16 | pub async fn execute(cmd: ConfigCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cli` [INFO] [stdout] --> src/commands/config.rs:16:43 [INFO] [stdout] | [INFO] [stdout] 16 | pub async fn execute(cmd: ConfigCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cli` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/config.rs:16:54 [INFO] [stdout] | [INFO] [stdout] 16 | pub async fn execute(cmd: ConfigCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cmd` [INFO] [stdout] --> src/commands/config.rs:16:22 [INFO] [stdout] | [INFO] [stdout] 16 | pub async fn execute(cmd: ConfigCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cli` [INFO] [stdout] --> src/commands/config.rs:16:43 [INFO] [stdout] | [INFO] [stdout] 16 | pub async fn execute(cmd: ConfigCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cli` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/config.rs:16:54 [INFO] [stdout] | [INFO] [stdout] 16 | pub async fn execute(cmd: ConfigCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pm` [INFO] [stdout] --> src/doctor/checker.rs:671:70 [INFO] [stdout] | [INFO] [stdout] 671 | async fn check_package_updates(&self, report: &mut HealthReport, pm: &str) -> Result<()> { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_pm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pm` [INFO] [stdout] --> src/doctor/checker.rs:671:70 [INFO] [stdout] | [INFO] [stdout] 671 | async fn check_package_updates(&self, report: &mut HealthReport, pm: &str) -> Result<()> { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_pm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `report` [INFO] [stdout] --> src/doctor/diagnostics.rs:25:41 [INFO] [stdout] | [INFO] [stdout] 25 | pub async fn run_diagnostics(&self, report: &HealthReport) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_report` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `platform` [INFO] [stdout] --> src/doctor/diagnostics.rs:56:13 [INFO] [stdout] | [INFO] [stdout] 56 | let platform = Platform::detect()?; [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_platform` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `fixer` [INFO] [stdout] --> src/doctor/diagnostics.rs:57:13 [INFO] [stdout] | [INFO] [stdout] 57 | let fixer = ErrorFixer::new(self.output.clone(), self.dry_run, self.auto_fix); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_fixer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `report` [INFO] [stdout] --> src/doctor/diagnostics.rs:25:41 [INFO] [stdout] | [INFO] [stdout] 25 | pub async fn run_diagnostics(&self, report: &HealthReport) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_report` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cli` [INFO] [stdout] --> src/commands/info.rs:8:39 [INFO] [stdout] | [INFO] [stdout] 8 | pub async fn execute(package: String, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cli` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/info.rs:8:50 [INFO] [stdout] | [INFO] [stdout] 8 | pub async fn execute(package: String, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `platform` [INFO] [stdout] --> src/doctor/diagnostics.rs:56:13 [INFO] [stdout] | [INFO] [stdout] 56 | let platform = Platform::detect()?; [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_platform` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `fixer` [INFO] [stdout] --> src/doctor/diagnostics.rs:57:13 [INFO] [stdout] | [INFO] [stdout] 57 | let fixer = ErrorFixer::new(self.output.clone(), self.dry_run, self.auto_fix); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_fixer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cli` [INFO] [stdout] --> src/commands/install.rs:9:45 [INFO] [stdout] | [INFO] [stdout] 9 | pub async fn execute(packages: Vec, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cli` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/install.rs:9:56 [INFO] [stdout] | [INFO] [stdout] 9 | pub async fn execute(packages: Vec, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cli` [INFO] [stdout] --> src/commands/info.rs:8:39 [INFO] [stdout] | [INFO] [stdout] 8 | pub async fn execute(package: String, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cli` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/info.rs:8:50 [INFO] [stdout] | [INFO] [stdout] 8 | pub async fn execute(package: String, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cli` [INFO] [stdout] --> src/commands/install.rs:9:45 [INFO] [stdout] | [INFO] [stdout] 9 | pub async fn execute(packages: Vec, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cli` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/install.rs:9:56 [INFO] [stdout] | [INFO] [stdout] 9 | pub async fn execute(packages: Vec, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cli` [INFO] [stdout] --> src/commands/iso.rs:43:40 [INFO] [stdout] | [INFO] [stdout] 43 | pub async fn execute(cmd: IsoCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cli` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cli` [INFO] [stdout] --> src/commands/iso.rs:43:40 [INFO] [stdout] | [INFO] [stdout] 43 | pub async fn execute(cmd: IsoCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cli` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/language.rs:132:57 [INFO] [stdout] | [INFO] [stdout] 132 | pub async fn execute_node(cmd: NodeCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/language.rs:161:61 [INFO] [stdout] | [INFO] [stdout] 161 | pub async fn execute_python(cmd: PythonCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cli` [INFO] [stdout] --> src/commands/language.rs:190:42 [INFO] [stdout] | [INFO] [stdout] 190 | pub async fn execute_go(cmd: GoCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cli` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/language.rs:190:53 [INFO] [stdout] | [INFO] [stdout] 190 | pub async fn execute_go(cmd: GoCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cli` [INFO] [stdout] --> src/commands/language.rs:211:46 [INFO] [stdout] | [INFO] [stdout] 211 | pub async fn execute_rust(cmd: RustCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cli` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/language.rs:211:57 [INFO] [stdout] | [INFO] [stdout] 211 | pub async fn execute_rust(cmd: RustCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cli` [INFO] [stdout] --> src/commands/language.rs:232:46 [INFO] [stdout] | [INFO] [stdout] 232 | pub async fn execute_ruby(cmd: RubyCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cli` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/language.rs:232:57 [INFO] [stdout] | [INFO] [stdout] 232 | pub async fn execute_ruby(cmd: RubyCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cli` [INFO] [stdout] --> src/commands/language.rs:259:44 [INFO] [stdout] | [INFO] [stdout] 259 | pub async fn execute_php(cmd: PhpCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cli` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/language.rs:259:55 [INFO] [stdout] | [INFO] [stdout] 259 | pub async fn execute_php(cmd: PhpCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/language.rs:132:57 [INFO] [stdout] | [INFO] [stdout] 132 | pub async fn execute_node(cmd: NodeCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cli` [INFO] [stdout] --> src/commands/language.rs:280:46 [INFO] [stdout] | [INFO] [stdout] 280 | pub async fn execute_java(cmd: JavaCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cli` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/language.rs:280:57 [INFO] [stdout] | [INFO] [stdout] 280 | pub async fn execute_java(cmd: JavaCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cli` [INFO] [stdout] --> src/commands/language.rs:301:50 [INFO] [stdout] | [INFO] [stdout] 301 | pub async fn execute_dotnet(cmd: DotnetCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cli` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/language.rs:301:61 [INFO] [stdout] | [INFO] [stdout] 301 | pub async fn execute_dotnet(cmd: DotnetCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/list.rs:15:62 [INFO] [stdout] | [INFO] [stdout] 15 | pub async fn execute(list_type: Option, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/language.rs:161:61 [INFO] [stdout] | [INFO] [stdout] 161 | pub async fn execute_python(cmd: PythonCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cli` [INFO] [stdout] --> src/commands/language.rs:190:42 [INFO] [stdout] | [INFO] [stdout] 190 | pub async fn execute_go(cmd: GoCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cli` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/language.rs:190:53 [INFO] [stdout] | [INFO] [stdout] 190 | pub async fn execute_go(cmd: GoCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cli` [INFO] [stdout] --> src/commands/language.rs:211:46 [INFO] [stdout] | [INFO] [stdout] 211 | pub async fn execute_rust(cmd: RustCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cli` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/language.rs:211:57 [INFO] [stdout] | [INFO] [stdout] 211 | pub async fn execute_rust(cmd: RustCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cli` [INFO] [stdout] --> src/commands/language.rs:232:46 [INFO] [stdout] | [INFO] [stdout] 232 | pub async fn execute_ruby(cmd: RubyCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cli` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/language.rs:232:57 [INFO] [stdout] | [INFO] [stdout] 232 | pub async fn execute_ruby(cmd: RubyCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cli` [INFO] [stdout] --> src/commands/language.rs:259:44 [INFO] [stdout] | [INFO] [stdout] 259 | pub async fn execute_php(cmd: PhpCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cli` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/language.rs:259:55 [INFO] [stdout] | [INFO] [stdout] 259 | pub async fn execute_php(cmd: PhpCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cli` [INFO] [stdout] --> src/commands/language.rs:280:46 [INFO] [stdout] | [INFO] [stdout] 280 | pub async fn execute_java(cmd: JavaCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cli` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/language.rs:280:57 [INFO] [stdout] | [INFO] [stdout] 280 | pub async fn execute_java(cmd: JavaCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cli` [INFO] [stdout] --> src/commands/language.rs:301:50 [INFO] [stdout] | [INFO] [stdout] 301 | pub async fn execute_dotnet(cmd: DotnetCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cli` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/language.rs:301:61 [INFO] [stdout] | [INFO] [stdout] 301 | pub async fn execute_dotnet(cmd: DotnetCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/list.rs:15:62 [INFO] [stdout] | [INFO] [stdout] 15 | pub async fn execute(list_type: Option, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cli` [INFO] [stdout] --> src/commands/profile.rs:99:44 [INFO] [stdout] | [INFO] [stdout] 99 | pub async fn execute(cmd: ProfileCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cli` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/profile.rs:99:55 [INFO] [stdout] | [INFO] [stdout] 99 | pub async fn execute(cmd: ProfileCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cli` [INFO] [stdout] --> src/commands/profile.rs:99:44 [INFO] [stdout] | [INFO] [stdout] 99 | pub async fn execute(cmd: ProfileCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cli` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/profile.rs:99:55 [INFO] [stdout] | [INFO] [stdout] 99 | pub async fn execute(cmd: ProfileCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cli` [INFO] [stdout] --> src/commands/remove.rs:9:45 [INFO] [stdout] | [INFO] [stdout] 9 | pub async fn execute(packages: Vec, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cli` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/remove.rs:9:56 [INFO] [stdout] | [INFO] [stdout] 9 | pub async fn execute(packages: Vec, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cli` [INFO] [stdout] --> src/commands/remove.rs:9:45 [INFO] [stdout] | [INFO] [stdout] 9 | pub async fn execute(packages: Vec, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cli` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/remove.rs:9:56 [INFO] [stdout] | [INFO] [stdout] 9 | pub async fn execute(packages: Vec, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cli` [INFO] [stdout] --> src/commands/repos.rs:36:42 [INFO] [stdout] | [INFO] [stdout] 36 | pub async fn execute(cmd: ReposCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cli` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/repos.rs:36:53 [INFO] [stdout] | [INFO] [stdout] 36 | pub async fn execute(cmd: ReposCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cli` [INFO] [stdout] --> src/commands/repos.rs:36:42 [INFO] [stdout] | [INFO] [stdout] 36 | pub async fn execute(cmd: ReposCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cli` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/repos.rs:36:53 [INFO] [stdout] | [INFO] [stdout] 36 | pub async fn execute(cmd: ReposCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cmd` [INFO] [stdout] --> src/commands/sync.rs:20:32 [INFO] [stdout] | [INFO] [stdout] 20 | pub async fn execute_bootstrap(cmd: BootstrapCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cli` [INFO] [stdout] --> src/commands/sync.rs:20:56 [INFO] [stdout] | [INFO] [stdout] 20 | pub async fn execute_bootstrap(cmd: BootstrapCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cli` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/sync.rs:20:67 [INFO] [stdout] | [INFO] [stdout] 20 | pub async fn execute_bootstrap(cmd: BootstrapCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cmd` [INFO] [stdout] --> src/commands/sync.rs:25:27 [INFO] [stdout] | [INFO] [stdout] 25 | pub async fn execute_sync(cmd: SyncCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cli` [INFO] [stdout] --> src/commands/sync.rs:25:46 [INFO] [stdout] | [INFO] [stdout] 25 | pub async fn execute_sync(cmd: SyncCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cli` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/sync.rs:25:57 [INFO] [stdout] | [INFO] [stdout] 25 | pub async fn execute_sync(cmd: SyncCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cli` [INFO] [stdout] --> src/commands/whatis.rs:9:39 [INFO] [stdout] | [INFO] [stdout] 9 | pub async fn execute(package: String, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cli` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/whatis.rs:9:50 [INFO] [stdout] | [INFO] [stdout] 9 | pub async fn execute(package: String, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cli` [INFO] [stdout] --> src/commands/where_pkg.rs:10:39 [INFO] [stdout] | [INFO] [stdout] 10 | pub async fn execute(package: String, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cli` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/where_pkg.rs:10:50 [INFO] [stdout] | [INFO] [stdout] 10 | pub async fn execute(package: String, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cmd` [INFO] [stdout] --> src/commands/sync.rs:20:32 [INFO] [stdout] | [INFO] [stdout] 20 | pub async fn execute_bootstrap(cmd: BootstrapCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cli` [INFO] [stdout] --> src/commands/sync.rs:20:56 [INFO] [stdout] | [INFO] [stdout] 20 | pub async fn execute_bootstrap(cmd: BootstrapCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cli` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/sync.rs:20:67 [INFO] [stdout] | [INFO] [stdout] 20 | pub async fn execute_bootstrap(cmd: BootstrapCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cmd` [INFO] [stdout] --> src/commands/sync.rs:25:27 [INFO] [stdout] | [INFO] [stdout] 25 | pub async fn execute_sync(cmd: SyncCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cmd` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cli` [INFO] [stdout] --> src/commands/sync.rs:25:46 [INFO] [stdout] | [INFO] [stdout] 25 | pub async fn execute_sync(cmd: SyncCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cli` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/sync.rs:25:57 [INFO] [stdout] | [INFO] [stdout] 25 | pub async fn execute_sync(cmd: SyncCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cli` [INFO] [stdout] --> src/commands/whatis.rs:9:39 [INFO] [stdout] | [INFO] [stdout] 9 | pub async fn execute(package: String, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cli` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/whatis.rs:9:50 [INFO] [stdout] | [INFO] [stdout] 9 | pub async fn execute(package: String, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cli` [INFO] [stdout] --> src/commands/update.rs:8:53 [INFO] [stdout] | [INFO] [stdout] 8 | pub async fn execute(packages: Option>, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cli` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/update.rs:8:64 [INFO] [stdout] | [INFO] [stdout] 8 | pub async fn execute(packages: Option>, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cli` [INFO] [stdout] --> src/commands/where_pkg.rs:10:39 [INFO] [stdout] | [INFO] [stdout] 10 | pub async fn execute(package: String, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cli` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/where_pkg.rs:10:50 [INFO] [stdout] | [INFO] [stdout] 10 | pub async fn execute(package: String, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cli` [INFO] [stdout] --> src/commands/update.rs:8:53 [INFO] [stdout] | [INFO] [stdout] 8 | pub async fn execute(packages: Option>, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cli` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/update.rs:8:64 [INFO] [stdout] | [INFO] [stdout] 8 | pub async fn execute(packages: Option>, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cli` [INFO] [stdout] --> src/commands/usb.rs:64:40 [INFO] [stdout] | [INFO] [stdout] 64 | pub async fn execute(cmd: UsbCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cli` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/usb.rs:64:51 [INFO] [stdout] | [INFO] [stdout] 64 | pub async fn execute(cmd: UsbCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `no_verify` [INFO] [stdout] --> src/commands/usb.rs:105:52 [INFO] [stdout] | [INFO] [stdout] 105 | UsbCommands::Write { iso_file, device, no_verify } => { [INFO] [stdout] | ^^^^^^^^^ help: try ignoring the field: `no_verify: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `boot_cmd` [INFO] [stdout] --> src/commands/usb.rs:109:31 [INFO] [stdout] | [INFO] [stdout] 109 | UsbCommands::Boot(boot_cmd) => { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_boot_cmd` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cli` [INFO] [stdout] --> src/commands/recovery.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | cli: &Cli, [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cli` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/recovery.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | config: &Config, [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cli` [INFO] [stdout] --> src/commands/usb.rs:64:40 [INFO] [stdout] | [INFO] [stdout] 64 | pub async fn execute(cmd: UsbCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cli` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/usb.rs:64:51 [INFO] [stdout] | [INFO] [stdout] 64 | pub async fn execute(cmd: UsbCommands, cli: &Cli, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `patterns` [INFO] [stdout] --> src/recovery/fixer.rs:350:37 [INFO] [stdout] | [INFO] [stdout] 350 | async fn force_overwrite(&self, patterns: &[String], data: &HashMap) -> Result { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_patterns` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `no_verify` [INFO] [stdout] --> src/commands/usb.rs:105:52 [INFO] [stdout] | [INFO] [stdout] 105 | UsbCommands::Write { iso_file, device, no_verify } => { [INFO] [stdout] | ^^^^^^^^^ help: try ignoring the field: `no_verify: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `data` [INFO] [stdout] --> src/recovery/fixer.rs:350:58 [INFO] [stdout] | [INFO] [stdout] 350 | async fn force_overwrite(&self, patterns: &[String], data: &HashMap) -> Result { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `strategies` [INFO] [stdout] --> src/commands/recovery.rs:115:9 [INFO] [stdout] | [INFO] [stdout] 115 | let strategies = RecoveryStrategies::new(output.clone()); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_strategies` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `boot_cmd` [INFO] [stdout] --> src/commands/usb.rs:109:31 [INFO] [stdout] | [INFO] [stdout] 109 | UsbCommands::Boot(boot_cmd) => { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_boot_cmd` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cli` [INFO] [stdout] --> src/commands/recovery.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | cli: &Cli, [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cli` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/commands/recovery.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | config: &Config, [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `platform` [INFO] [stdout] --> src/commands/recovery.rs:249:5 [INFO] [stdout] | [INFO] [stdout] 249 | platform: &PlatformInfo, [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_platform` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `platform` [INFO] [stdout] --> src/commands/recovery.rs:283:44 [INFO] [stdout] | [INFO] [stdout] 283 | async fn check_disk_space(output: &Output, platform: &PlatformInfo) -> Result<()> { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_platform` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `patterns` [INFO] [stdout] --> src/recovery/fixer.rs:350:37 [INFO] [stdout] | [INFO] [stdout] 350 | async fn force_overwrite(&self, patterns: &[String], data: &HashMap) -> Result { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_patterns` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `data` [INFO] [stdout] --> src/recovery/fixer.rs:350:58 [INFO] [stdout] | [INFO] [stdout] 350 | async fn force_overwrite(&self, patterns: &[String], data: &HashMap) -> Result { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `strategies` [INFO] [stdout] --> src/commands/recovery.rs:115:9 [INFO] [stdout] | [INFO] [stdout] 115 | let strategies = RecoveryStrategies::new(output.clone()); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_strategies` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `platform` [INFO] [stdout] --> src/commands/recovery.rs:249:5 [INFO] [stdout] | [INFO] [stdout] 249 | platform: &PlatformInfo, [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_platform` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `platform` [INFO] [stdout] --> src/commands/recovery.rs:283:44 [INFO] [stdout] | [INFO] [stdout] 283 | async fn check_disk_space(output: &Output, platform: &PlatformInfo) -> Result<()> { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_platform` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `arch` [INFO] [stdout] --> src/languages/installer.rs:51:13 [INFO] [stdout] | [INFO] [stdout] 51 | let arch = self.detect_architecture(); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_arch` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/languages/mod.rs:12:54 [INFO] [stdout] | [INFO] [stdout] 12 | pub async fn handle_language_command(language: &str, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `arch` [INFO] [stdout] --> src/languages/installer.rs:51:13 [INFO] [stdout] | [INFO] [stdout] 51 | let arch = self.detect_architecture(); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_arch` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output` [INFO] [stdout] --> src/managers/apt.rs:169:13 [INFO] [stdout] | [INFO] [stdout] 169 | let output = self.run_command("apt", &args, true)?; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_output` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output` [INFO] [stdout] --> src/managers/apt.rs:184:13 [INFO] [stdout] | [INFO] [stdout] 184 | let output = self.run_command("apt", &args, true)?; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_output` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output` [INFO] [stdout] --> src/managers/apt.rs:207:13 [INFO] [stdout] | [INFO] [stdout] 207 | let output = self.run_command("apt", &args, true)?; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_output` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output` [INFO] [stdout] --> src/managers/dnf.rs:169:13 [INFO] [stdout] | [INFO] [stdout] 169 | let output = self.run_command(&args, true)?; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_output` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `config` [INFO] [stdout] --> src/languages/mod.rs:12:54 [INFO] [stdout] | [INFO] [stdout] 12 | pub async fn handle_language_command(language: &str, config: &Config, output: &Output) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output` [INFO] [stdout] --> src/managers/dnf.rs:184:13 [INFO] [stdout] | [INFO] [stdout] 184 | let output = self.run_command(&args, true)?; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_output` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output` [INFO] [stdout] --> src/managers/dnf.rs:207:13 [INFO] [stdout] | [INFO] [stdout] 207 | let output = self.run_command(&args, true)?; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_output` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output` [INFO] [stdout] --> src/managers/apt.rs:169:13 [INFO] [stdout] | [INFO] [stdout] 169 | let output = self.run_command("apt", &args, true)?; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_output` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output` [INFO] [stdout] --> src/managers/apt.rs:184:13 [INFO] [stdout] | [INFO] [stdout] 184 | let output = self.run_command("apt", &args, true)?; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_output` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output` [INFO] [stdout] --> src/managers/apt.rs:207:13 [INFO] [stdout] | [INFO] [stdout] 207 | let output = self.run_command("apt", &args, true)?; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_output` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output` [INFO] [stdout] --> src/managers/pacman.rs:167:13 [INFO] [stdout] | [INFO] [stdout] 167 | let output = self.run_command(&args, true)?; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_output` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output` [INFO] [stdout] --> src/managers/pacman.rs:182:13 [INFO] [stdout] | [INFO] [stdout] 182 | let output = self.run_command(&args, true)?; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_output` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output` [INFO] [stdout] --> src/managers/pacman.rs:207:13 [INFO] [stdout] | [INFO] [stdout] 207 | let output = self.run_command(&args, true)?; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_output` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output` [INFO] [stdout] --> src/managers/dnf.rs:169:13 [INFO] [stdout] | [INFO] [stdout] 169 | let output = self.run_command(&args, true)?; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_output` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output` [INFO] [stdout] --> src/managers/dnf.rs:184:13 [INFO] [stdout] | [INFO] [stdout] 184 | let output = self.run_command(&args, true)?; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_output` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output` [INFO] [stdout] --> src/managers/dnf.rs:207:13 [INFO] [stdout] | [INFO] [stdout] 207 | let output = self.run_command(&args, true)?; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_output` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output` [INFO] [stdout] --> src/managers/homebrew.rs:153:13 [INFO] [stdout] | [INFO] [stdout] 153 | let output = self.run_command(&args)?; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_output` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output` [INFO] [stdout] --> src/managers/homebrew.rs:168:13 [INFO] [stdout] | [INFO] [stdout] 168 | let output = self.run_command(&args)?; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_output` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output` [INFO] [stdout] --> src/managers/homebrew.rs:193:13 [INFO] [stdout] | [INFO] [stdout] 193 | let output = self.run_command(&args)?; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_output` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output` [INFO] [stdout] --> src/managers/pacman.rs:167:13 [INFO] [stdout] | [INFO] [stdout] 167 | let output = self.run_command(&args, true)?; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_output` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output` [INFO] [stdout] --> src/managers/pacman.rs:182:13 [INFO] [stdout] | [INFO] [stdout] 182 | let output = self.run_command(&args, true)?; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_output` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `github_url` [INFO] [stdout] --> src/managers/winget.rs:68:13 [INFO] [stdout] | [INFO] [stdout] 68 | let github_url = "https://api.github.com/repos/microsoft/winget-cli/releases/latest"; [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_github_url` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output` [INFO] [stdout] --> src/managers/pacman.rs:207:13 [INFO] [stdout] | [INFO] [stdout] 207 | let output = self.run_command(&args, true)?; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_output` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> src/managers/winget.rs:105:21 [INFO] [stdout] | [INFO] [stdout] 105 | let name = parts[0].to_string(); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> src/managers/winget.rs:136:21 [INFO] [stdout] | [INFO] [stdout] 136 | let name = parts[0].to_string(); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output` [INFO] [stdout] --> src/managers/homebrew.rs:153:13 [INFO] [stdout] | [INFO] [stdout] 153 | let output = self.run_command(&args)?; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_output` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output` [INFO] [stdout] --> src/managers/homebrew.rs:168:13 [INFO] [stdout] | [INFO] [stdout] 168 | let output = self.run_command(&args)?; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_output` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output` [INFO] [stdout] --> src/managers/homebrew.rs:193:13 [INFO] [stdout] | [INFO] [stdout] 193 | let output = self.run_command(&args)?; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_output` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `github_url` [INFO] [stdout] --> src/managers/winget.rs:68:13 [INFO] [stdout] | [INFO] [stdout] 68 | let github_url = "https://api.github.com/repos/microsoft/winget-cli/releases/latest"; [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_github_url` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> src/managers/winget.rs:105:21 [INFO] [stdout] | [INFO] [stdout] 105 | let name = parts[0].to_string(); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> src/managers/winget.rs:136:21 [INFO] [stdout] | [INFO] [stdout] 136 | let name = parts[0].to_string(); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/managers/winget.rs:337:13 [INFO] [stdout] | [INFO] [stdout] 337 | let mut name = package.to_string(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/managers/winget.rs:337:13 [INFO] [stdout] | [INFO] [stdout] 337 | let mut name = package.to_string(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/managers/scoop.rs:311:13 [INFO] [stdout] | [INFO] [stdout] 311 | let mut name = package.to_string(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `icon` [INFO] [stdout] --> src/ui/output.rs:218:13 [INFO] [stdout] | [INFO] [stdout] 218 | let icon = if self.emoji_enabled { "📥" } else { "[DL]" }; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_icon` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/managers/scoop.rs:311:13 [INFO] [stdout] | [INFO] [stdout] 311 | let mut name = package.to_string(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `icon` [INFO] [stdout] --> src/ui/output.rs:227:13 [INFO] [stdout] | [INFO] [stdout] 227 | let icon = if self.emoji_enabled { "📦" } else { "[INSTALL]" }; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_icon` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `icon` [INFO] [stdout] --> src/ui/output.rs:232:13 [INFO] [stdout] | [INFO] [stdout] 232 | let icon = if self.emoji_enabled { "🗑️" } else { "[REMOVE]" }; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_icon` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `icon` [INFO] [stdout] --> src/ui/output.rs:237:13 [INFO] [stdout] | [INFO] [stdout] 237 | let icon = if self.emoji_enabled { "🔄" } else { "[UPDATE]" }; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_icon` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `icon` [INFO] [stdout] --> src/ui/output.rs:242:13 [INFO] [stdout] | [INFO] [stdout] 242 | let icon = if self.emoji_enabled { "🏗️" } else { "[BUILD]" }; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_icon` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `icon` [INFO] [stdout] --> src/ui/output.rs:247:13 [INFO] [stdout] | [INFO] [stdout] 247 | let icon = if self.emoji_enabled { "🔍" } else { "[VERIFY]" }; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_icon` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `icon` [INFO] [stdout] --> src/ui/output.rs:252:13 [INFO] [stdout] | [INFO] [stdout] 252 | let icon = if self.emoji_enabled { "🧹" } else { "[CLEANUP]" }; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_icon` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `icon` [INFO] [stdout] --> src/ui/output.rs:218:13 [INFO] [stdout] | [INFO] [stdout] 218 | let icon = if self.emoji_enabled { "📥" } else { "[DL]" }; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_icon` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `icon` [INFO] [stdout] --> src/ui/output.rs:227:13 [INFO] [stdout] | [INFO] [stdout] 227 | let icon = if self.emoji_enabled { "📦" } else { "[INSTALL]" }; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_icon` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `icon` [INFO] [stdout] --> src/ui/output.rs:232:13 [INFO] [stdout] | [INFO] [stdout] 232 | let icon = if self.emoji_enabled { "🗑️" } else { "[REMOVE]" }; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_icon` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `icon` [INFO] [stdout] --> src/ui/output.rs:237:13 [INFO] [stdout] | [INFO] [stdout] 237 | let icon = if self.emoji_enabled { "🔄" } else { "[UPDATE]" }; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_icon` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `icon` [INFO] [stdout] --> src/ui/output.rs:242:13 [INFO] [stdout] | [INFO] [stdout] 242 | let icon = if self.emoji_enabled { "🏗️" } else { "[BUILD]" }; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_icon` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `icon` [INFO] [stdout] --> src/ui/output.rs:247:13 [INFO] [stdout] | [INFO] [stdout] 247 | let icon = if self.emoji_enabled { "🔍" } else { "[VERIFY]" }; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_icon` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `icon` [INFO] [stdout] --> src/ui/output.rs:252:13 [INFO] [stdout] | [INFO] [stdout] 252 | let icon = if self.emoji_enabled { "🧹" } else { "[CLEANUP]" }; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_icon` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `status` [INFO] [stdout] --> src/usb/wizard.rs:83:17 [INFO] [stdout] | [INFO] [stdout] 83 | let status = if device.is_mounted { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_status` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `device_path` [INFO] [stdout] --> src/usb/wizard.rs:407:43 [INFO] [stdout] | [INFO] [stdout] 407 | UsbOperation::Erase { device: device_path } => { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_device_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `device` [INFO] [stdout] --> src/usb/wizard.rs:423:42 [INFO] [stdout] | [INFO] [stdout] 423 | async fn create_multiboot_usb(&self, device: &UsbDevice, initial_isos: Vec) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_device` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `status` [INFO] [stdout] --> src/usb/wizard.rs:83:17 [INFO] [stdout] | [INFO] [stdout] 83 | let status = if device.is_mounted { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_status` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `device_path` [INFO] [stdout] --> src/usb/wizard.rs:407:43 [INFO] [stdout] | [INFO] [stdout] 407 | UsbOperation::Erase { device: device_path } => { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_device_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `device` [INFO] [stdout] --> src/usb/wizard.rs:423:42 [INFO] [stdout] | [INFO] [stdout] 423 | async fn create_multiboot_usb(&self, device: &UsbDevice, initial_isos: Vec) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_device` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `current_repo` is assigned to, but never used [INFO] [stdout] --> src/repos/manager.rs:205:17 [INFO] [stdout] | [INFO] [stdout] 205 | let mut current_repo: Option = None; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_current_repo` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `current_repo` is never read [INFO] [stdout] --> src/repos/manager.rs:212:21 [INFO] [stdout] | [INFO] [stdout] 212 | current_repo = Some(name.clone()); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `known_repos` [INFO] [stdout] --> src/repos/detector.rs:18:13 [INFO] [stdout] | [INFO] [stdout] 18 | let known_repos = get_known_repositories(); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_known_repos` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `current_repo` is assigned to, but never used [INFO] [stdout] --> src/repos/manager.rs:205:17 [INFO] [stdout] | [INFO] [stdout] 205 | let mut current_repo: Option = None; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_current_repo` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `version` [INFO] [stdout] --> src/repos/detector.rs:155:13 [INFO] [stdout] | [INFO] [stdout] 155 | let version = "7.0"; // Default to latest stable [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_version` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `current_repo` is never read [INFO] [stdout] --> src/repos/manager.rs:212:21 [INFO] [stdout] | [INFO] [stdout] 212 | current_repo = Some(name.clone()); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `known_repos` [INFO] [stdout] --> src/repos/detector.rs:18:13 [INFO] [stdout] | [INFO] [stdout] 18 | let known_repos = get_known_repositories(); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_known_repos` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `version` [INFO] [stdout] --> src/repos/detector.rs:155:13 [INFO] [stdout] | [INFO] [stdout] 155 | let version = "7.0"; // Default to latest stable [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_version` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `content` [INFO] [stdout] --> src/profile/importer.rs:109:26 [INFO] [stdout] | [INFO] [stdout] 109 | fn parse_yaml(&self, content: &str) -> Result { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_content` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `content` [INFO] [stdout] --> src/profile/importer.rs:109:26 [INFO] [stdout] | [INFO] [stdout] 109 | fn parse_yaml(&self, content: &str) -> Result { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_content` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `data` [INFO] [stdout] --> src/recovery/mod.rs:175:40 [INFO] [stdout] | [INFO] [stdout] 175 | pub fn generate_suggestions(&self, data: &HashMap) -> Vec { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `data` [INFO] [stdout] --> src/recovery/mod.rs:175:40 [INFO] [stdout] | [INFO] [stdout] 175 | pub fn generate_suggestions(&self, data: &HashMap) -> Vec { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `info` [INFO] [stdout] --> src/doctor/mod.rs:271:17 [INFO] [stdout] | [INFO] [stdout] 271 | let info = sys_info::loadavg()?; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_info` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `recover_from_error` is never used [INFO] [stdout] --> src/commands/recovery.rs:313:14 [INFO] [stdout] | [INFO] [stdout] 313 | pub async fn recover_from_error( [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 `save_last_error` is never used [INFO] [stdout] --> src/commands/recovery.rs:360:4 [INFO] [stdout] | [INFO] [stdout] 360 | fn save_last_error(stdout: &str, stderr: &str, exit_code: i32, command: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `resolve_alias` is never used [INFO] [stdout] --> src/core/config.rs:239:12 [INFO] [stdout] | [INFO] [stdout] 180 | impl Config { [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 239 | pub fn resolve_alias(&self, command: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_language_command` is never used [INFO] [stdout] --> src/core/detector.rs:63:12 [INFO] [stdout] | [INFO] [stdout] 8 | impl SymlinkDetector { [INFO] [stdout] | -------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 63 | pub fn is_language_command(&self, program_name: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_arch_linux`, `is_debian_based`, and `is_rhel_based` are never used [INFO] [stdout] --> src/core/platform.rs:248:12 [INFO] [stdout] | [INFO] [stdout] 60 | impl PlatformInfo { [INFO] [stdout] | ----------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 248 | pub fn is_arch_linux(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 252 | pub fn is_debian_based(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 258 | pub fn is_rhel_based(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Transaction` is never constructed [INFO] [stdout] --> src/core/transaction.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct Transaction { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `TransactionStatus` is never used [INFO] [stdout] --> src/core/transaction.rs:21:10 [INFO] [stdout] | [INFO] [stdout] 21 | pub enum TransactionStatus { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TransactionPackages` is never constructed [INFO] [stdout] --> src/core/transaction.rs:30:12 [INFO] [stdout] | [INFO] [stdout] 30 | pub struct TransactionPackages { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TransactionFiles` is never constructed [INFO] [stdout] --> src/core/transaction.rs:37:12 [INFO] [stdout] | [INFO] [stdout] 37 | pub struct TransactionFiles { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TransactionRepositories` is never constructed [INFO] [stdout] --> src/core/transaction.rs:44:12 [INFO] [stdout] | [INFO] [stdout] 44 | pub struct TransactionRepositories { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/core/transaction.rs:50:12 [INFO] [stdout] | [INFO] [stdout] 49 | impl Transaction { [INFO] [stdout] | ---------------- associated items in this implementation [INFO] [stdout] 50 | pub fn new(operation: String) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 74 | pub async fn save(&self, data_dir: &PathBuf) -> Result<()> { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 92 | pub async fn load(data_dir: &PathBuf, id: &str) -> Result> { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 104 | pub async fn load_current(data_dir: &PathBuf) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 116 | pub fn complete(&mut self) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 120 | pub fn fail(&mut self) { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 124 | pub fn start_rollback(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 128 | pub fn complete_rollback(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 132 | pub fn add_installed_package(&mut self, package: String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 136 | pub fn add_removed_package(&mut self, package: String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 140 | pub fn add_upgraded_package(&mut self, package: String, old_version: String, new_version: String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 144 | pub fn add_created_file(&mut self, file: String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 148 | pub fn add_modified_file(&mut self, file: String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 152 | pub fn add_removed_file(&mut self, file: String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 156 | pub fn add_repository(&mut self, repo: String) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 160 | pub fn remove_repository(&mut self, repo: String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 164 | pub fn backup_config(&mut self, original_path: String, backup_path: String) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TransactionManager` is never constructed [INFO] [stdout] --> src/core/transaction.rs:169:12 [INFO] [stdout] | [INFO] [stdout] 169 | pub struct TransactionManager { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/core/transaction.rs:175:12 [INFO] [stdout] | [INFO] [stdout] 174 | impl TransactionManager { [INFO] [stdout] | ----------------------- associated items in this implementation [INFO] [stdout] 175 | pub fn new(data_dir: PathBuf) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 182 | pub async fn start_transaction(&mut self, operation: String) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 197 | pub async fn complete_transaction(&mut self) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 212 | pub async fn fail_transaction(&mut self) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 223 | pub async fn rollback_transaction(&mut self, transaction_id: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 247 | pub fn current_transaction(&self) -> Option<&Transaction> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 251 | pub fn current_transaction_mut(&mut self) -> Option<&mut Transaction> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PackageNormalizer` is never constructed [INFO] [stdout] --> src/core/normalize.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct PackageNormalizer { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `normalize`, `get_variations`, `requires_repository`, and `get_install_notes` are never used [INFO] [stdout] --> src/core/normalize.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 14 | impl PackageNormalizer { [INFO] [stdout] | ---------------------- associated items in this implementation [INFO] [stdout] 15 | pub fn new(platform: Platform, package_manager: impl Into) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 23 | pub fn normalize(&self, name: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 45 | fn get_variations(&self, name: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 87 | pub fn requires_repository(&self, name: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 95 | pub fn get_install_notes(&self, name: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PackageMapping` is never constructed [INFO] [stdout] --> src/core/normalize.rs:104:12 [INFO] [stdout] | [INFO] [stdout] 104 | pub struct PackageMapping { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_platform_name` is never used [INFO] [stdout] --> src/core/normalize.rs:118:12 [INFO] [stdout] | [INFO] [stdout] 116 | impl PackageMapping { [INFO] [stdout] | ------------------- method in this implementation [INFO] [stdout] 117 | /// Get platform-specific package name [INFO] [stdout] 118 | pub fn get_platform_name(&self, package_manager: &str) -> Option<&'static str> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RepositoryRequirement` is never constructed [INFO] [stdout] --> src/core/normalize.rs:135:12 [INFO] [stdout] | [INFO] [stdout] 135 | pub struct RepositoryRequirement { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `PACKAGE_MAPPINGS` is never used [INFO] [stdout] --> src/core/normalize.rs:142:8 [INFO] [stdout] | [INFO] [stdout] 142 | static PACKAGE_MAPPINGS: Lazy> = Lazy::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `REPOSITORY_REQUIREMENTS` is never used [INFO] [stdout] --> src/core/normalize.rs:568:8 [INFO] [stdout] | [INFO] [stdout] 568 | static REPOSITORY_REQUIREMENTS: Lazy> = Lazy::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `INSTALL_NOTES` is never used [INFO] [stdout] --> src/core/normalize.rs:605:8 [INFO] [stdout] | [INFO] [stdout] 605 | static INSTALL_NOTES: Lazy> = Lazy::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PrivilegeManager` is never constructed [INFO] [stdout] --> src/core/privilege.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 12 | pub struct PrivilegeManager { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/core/privilege.rs:19:12 [INFO] [stdout] | [INFO] [stdout] 18 | impl PrivilegeManager { [INFO] [stdout] | --------------------- associated items in this implementation [INFO] [stdout] 19 | pub fn new(output: Output) -> Result { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 31 | pub fn is_root(&self) -> bool { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 50 | pub fn has_privileges(&self) -> PrivilegeStatus { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 63 | fn check_sudo_access(&self) -> PrivilegeStatus { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 89 | fn is_in_sudo_group(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 130 | fn check_windows_elevation(&self) -> PrivilegeStatus { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 135 | pub fn escalate_command(&self, command: &[String], operation: &str) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 161 | fn handle_password_required(&self, command: &[String], operation: &str) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 184 | fn handle_no_privileges(&self, operation: &str) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 195 | fn is_ci_environment(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 207 | pub fn configure_sudo(&self) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 234 | fn generate_sudoers_content(&self, pkmgr_path: &Path) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 269 | fn validate_sudoers_content(&self, content: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 293 | fn write_sudoers_file(&self, content: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 338 | pub fn check_configuration(&self) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 390 | pub fn determine_install_location(&self, prefer_user: bool) -> InstallLocation { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `PrivilegeStatus` is never used [INFO] [stdout] --> src/core/privilege.rs:420:10 [INFO] [stdout] | [INFO] [stdout] 420 | pub enum PrivilegeStatus { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `can_escalate` and `is_passwordless` are never used [INFO] [stdout] --> src/core/privilege.rs:428:12 [INFO] [stdout] | [INFO] [stdout] 427 | impl PrivilegeStatus { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] 428 | pub fn can_escalate(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 432 | pub fn is_passwordless(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `InstallLocation` is never used [INFO] [stdout] --> src/core/privilege.rs:439:10 [INFO] [stdout] | [INFO] [stdout] 439 | pub enum InstallLocation { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `base_dir`, `bin_dir`, `share_dir`, and `config_dir` are never used [INFO] [stdout] --> src/core/privilege.rs:445:12 [INFO] [stdout] | [INFO] [stdout] 444 | impl InstallLocation { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] 445 | pub fn base_dir(&self) -> PathBuf { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 456 | pub fn bin_dir(&self) -> PathBuf { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 460 | pub fn share_dir(&self) -> PathBuf { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 464 | pub fn config_dir(&self) -> PathBuf { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `packages_installed` is never read [INFO] [stdout] --> src/core/traits.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 25 | pub struct InstallResult { [INFO] [stdout] | ------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 28 | pub packages_installed: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `InstallResult` 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: trait `LanguageManager` is never used [INFO] [stdout] --> src/core/traits.rs:67:11 [INFO] [stdout] | [INFO] [stdout] 67 | pub trait LanguageManager: Send + Sync { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `BinaryManager` is never used [INFO] [stdout] --> src/core/traits.rs:101:11 [INFO] [stdout] | [INFO] [stdout] 101 | pub trait BinaryManager: Send + Sync { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_alternatives` and `requires_repository` are never used [INFO] [stdout] --> src/core/normalizer.rs:305:12 [INFO] [stdout] | [INFO] [stdout] 26 | impl PackageNormalizer { [INFO] [stdout] | ---------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 305 | pub fn get_alternatives(&self, package_name: &str) -> Vec<(PackageManager, Vec)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 376 | pub fn requires_repository(&self, package_name: &str) -> Option<&'static str> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `source` is never read [INFO] [stdout] --> src/languages/resolver.rs:25:9 [INFO] [stdout] | [INFO] [stdout] 23 | pub struct ResolvedVersion { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] 24 | pub version: String, [INFO] [stdout] 25 | pub source: VersionSource, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ResolvedVersion` 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 `output` is never read [INFO] [stdout] --> src/languages/resolver.rs:33:5 [INFO] [stdout] | [INFO] [stdout] 31 | pub struct VersionResolver { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] 32 | language: String, [INFO] [stdout] 33 | output: Output, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LanguageInstaller` is never constructed [INFO] [stdout] --> src/languages/installer.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct LanguageInstaller { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/languages/installer.rs:17:12 [INFO] [stdout] | [INFO] [stdout] 16 | impl LanguageInstaller { [INFO] [stdout] | ---------------------- associated items in this implementation [INFO] [stdout] 17 | pub fn new(language: String, output: Output, config: &Config) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 24 | pub async fn install_version(&self, version: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 48 | async fn install_python(&self, version: &str, install_path: &PathBuf) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 96 | async fn install_node(&self, version: &str, install_path: &PathBuf) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 121 | async fn install_go(&self, version: &str, install_path: &PathBuf) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 146 | async fn install_rust(&self, version: &str, install_path: &PathBuf) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 167 | async fn install_ruby(&self, version: &str, install_path: &PathBuf) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 215 | async fn download_file(&self, url: &str, filename: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 244 | fn detect_architecture(&self) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 256 | pub async fn get_available_versions(&self) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `sudo_available` is never read [INFO] [stdout] --> src/managers/homebrew.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct HomebrewManager { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] 9 | sudo_available: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `term` is never read [INFO] [stdout] --> src/ui/output.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Output { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] 6 | pub term: Term, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Output` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/ui/output.rs:29:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl Output { [INFO] [stdout] | ----------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 29 | pub fn with_verbose(color_output: String, emoji_enabled: bool, verbose: bool) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 90 | pub fn step(&self, message: &str) { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 99 | pub fn print(&self, message: &str) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 192 | pub fn print_list(&self, items: &[String]) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 199 | pub fn clear_line(&self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 204 | pub fn is_tty(&self) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 208 | pub fn width(&self) -> u16 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 212 | pub fn height(&self) -> u16 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 241 | pub fn build_start(&self, package: &str) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 251 | pub fn cleanup_start(&self) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `create_install_bar`, `create_usb_bar`, `create_spinner`, `create_multi_spinner`, `finish_with_message`, and `finish_with_error` are never used [INFO] [stdout] --> src/ui/progress.rs:33:12 [INFO] [stdout] | [INFO] [stdout] 8 | impl ProgressManager { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 33 | pub fn create_install_bar(&self, total: u64, title: &str) -> ProgressBar { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 53 | pub fn create_usb_bar(&self, size: u64, iso_name: &str, device: &str) -> ProgressBar { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | pub fn create_spinner(&self, message: &str) -> ProgressBar { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 94 | pub fn create_multi_spinner(&self, message: &str) -> ProgressBar { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 115 | pub fn finish_with_message(&self, pb: &ProgressBar, message: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 120 | pub fn finish_with_error(&self, pb: &ProgressBar, message: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/ui/prompt.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 8 | impl Prompt { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 26 | pub fn confirm_default_yes(&self, message: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 51 | pub fn input_with_default(&self, message: &str, default: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 64 | pub fn select(&self, message: &str, items: &[T]) -> Result [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 81 | pub fn multiselect(&self, message: &str, items: &[T]) -> Result> [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 97 | pub fn destructive_confirm(&self, message: &str, confirmation_text: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 115 | pub fn version_select(&self, versions: &[String], current: Option<&str>) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 162 | pub fn usb_device_select(&self, devices: &[(String, String, u64)]) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `download_with_checksum` and `calculate_sha256` are never used [INFO] [stdout] --> src/utils/download.rs:64:18 [INFO] [stdout] | [INFO] [stdout] 14 | impl Downloader { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 64 | pub async fn download_with_checksum(&self, url: &str, dest: &Path, expected_checksum: Option<&str>) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 77 | async fn calculate_sha256(&self, path: &Path) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `placeholder` is never used [INFO] [stdout] --> src/utils/crypto.rs:2:8 [INFO] [stdout] | [INFO] [stdout] 2 | pub fn placeholder() {} [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `placeholder` is never used [INFO] [stdout] --> src/utils/fs.rs:2:8 [INFO] [stdout] | [INFO] [stdout] 2 | pub fn placeholder() {} [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `calculate_sha512` is never used [INFO] [stdout] --> src/iso/verification.rs:139:8 [INFO] [stdout] | [INFO] [stdout] 12 | impl IsoVerifier { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 139 | fn calculate_sha512(&self, path: &Path) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `UsbOperation` is never used [INFO] [stdout] --> src/usb/mod.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | pub enum UsbOperation { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MultiBootConfig` is never constructed [INFO] [stdout] --> src/usb/mod.rs:60:12 [INFO] [stdout] | [INFO] [stdout] 60 | pub struct MultiBootConfig { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `BootloaderType` is never used [INFO] [stdout] --> src/usb/mod.rs:69:10 [INFO] [stdout] | [INFO] [stdout] 69 | pub enum BootloaderType { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `BootEntry` is never constructed [INFO] [stdout] --> src/usb/mod.rs:76:12 [INFO] [stdout] | [INFO] [stdout] 76 | pub struct BootEntry { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `size_gb`, `is_suitable_for_single_iso`, `is_suitable_for_multi_boot`, and `format_size` are never used [INFO] [stdout] --> src/usb/mod.rs:88:12 [INFO] [stdout] | [INFO] [stdout] 87 | impl UsbDevice { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] 88 | pub fn size_gb(&self) -> f64 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 92 | pub fn is_suitable_for_single_iso(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 96 | pub fn is_suitable_for_multi_boot(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 100 | pub fn format_size(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_device_safe` is never used [INFO] [stdout] --> src/usb/mod.rs:111:8 [INFO] [stdout] | [INFO] [stdout] 111 | pub fn is_device_safe(device_path: &Path) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `unmount_device`, and `eject_device` are never used [INFO] [stdout] --> src/usb/device.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 9 | impl DeviceDetector { [INFO] [stdout] | ------------------- associated items in this implementation [INFO] [stdout] 10 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 332 | pub fn unmount_device(&self, device: &UsbDevice) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 360 | pub fn eject_device(&self, device: &UsbDevice) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `UsbWizard` is never constructed [INFO] [stdout] --> src/usb/wizard.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct UsbWizard { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/usb/wizard.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 15 | impl UsbWizard { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 16 | pub fn new(output: Output) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 26 | pub async fn run(&self) -> Result<()> { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 68 | async fn select_device(&self) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 132 | async fn select_operation(&self, device: &UsbDevice) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 225 | async fn select_iso(&self) -> Result> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 322 | async fn select_multiple_isos(&self) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 354 | async fn execute_operation(&self, operation: UsbOperation, device: &UsbDevice) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 423 | async fn create_multiboot_usb(&self, device: &UsbDevice, initial_isos: Vec) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 445 | async fn list_multiboot_isos(&self, device_path: &Path) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `format_size` is never used [INFO] [stdout] --> src/usb/wizard.rs:453:4 [INFO] [stdout] | [INFO] [stdout] 453 | fn format_size(bytes: u64) -> String { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `BootloaderManager` is never constructed [INFO] [stdout] --> src/usb/bootloader.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct BootloaderManager { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/usb/bootloader.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl BootloaderManager { [INFO] [stdout] | ---------------------- associated items in this implementation [INFO] [stdout] 13 | pub fn new(bootloader_type: BootloaderType) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 18 | pub fn install_bootloader(&self, device: &Path) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | pub fn generate_config(&self, usb_root: &Path, entries: &[BootEntry]) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 35 | fn install_grub2(&self, device: &Path) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 65 | fn install_syslinux(&self, device: &Path) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 84 | fn install_ventoy(&self, _device: &Path) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 90 | fn generate_grub_config(&self, usb_root: &Path, entries: &[BootEntry]) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 162 | fn generate_grub_entry(&self, entry: &BootEntry) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 211 | fn get_boot_params(&self, distro: &str, _version: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 222 | fn generate_syslinux_config(&self, usb_root: &Path, entries: &[BootEntry]) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 250 | pub fn create_directory_structure(&self, usb_root: &Path) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `categorize_iso` is never used [INFO] [stdout] --> src/usb/bootloader.rs:286:8 [INFO] [stdout] | [INFO] [stdout] 286 | pub fn categorize_iso(name: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `UsbWriter` is never constructed [INFO] [stdout] --> src/usb/writer.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 12 | pub struct UsbWriter { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `write_iso`, `verify_write`, and `erase_device` are never used [INFO] [stdout] --> src/usb/writer.rs:17:12 [INFO] [stdout] | [INFO] [stdout] 16 | impl UsbWriter { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 17 | pub fn new(output: Output) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 22 | pub async fn write_iso(&self, iso_path: &Path, device: &UsbDevice, verify: bool) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 158 | async fn verify_write(&self, iso_path: &Path, device_path: &Path, size: u64) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 184 | pub async fn erase_device(&self, device: &UsbDevice, filesystem: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ProgressUpdate` is never used [INFO] [stdout] --> src/usb/writer.rs:244:6 [INFO] [stdout] | [INFO] [stdout] 244 | enum ProgressUpdate { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `write_iso_blocking` is never used [INFO] [stdout] --> src/usb/writer.rs:250:4 [INFO] [stdout] | [INFO] [stdout] 250 | fn write_iso_blocking( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `wipe_device_headers` is never used [INFO] [stdout] --> src/usb/writer.rs:312:4 [INFO] [stdout] | [INFO] [stdout] 312 | fn wipe_device_headers(device_path: &Path, device_size: u64) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `calculate_checksum` is never used [INFO] [stdout] --> src/usb/writer.rs:338:4 [INFO] [stdout] | [INFO] [stdout] 338 | fn calculate_checksum(path: &Path, size: u64) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `format_size` is never used [INFO] [stdout] --> src/usb/writer.rs:364:4 [INFO] [stdout] | [INFO] [stdout] 364 | fn format_size(bytes: u64) -> String { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `format_speed` is never used [INFO] [stdout] --> src/usb/writer.rs:381:4 [INFO] [stdout] | [INFO] [stdout] 381 | fn format_speed(bytes_per_second: f64) -> String { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `format_eta` is never used [INFO] [stdout] --> src/usb/writer.rs:393:4 [INFO] [stdout] | [INFO] [stdout] 393 | fn format_eta(seconds: u64) -> String { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `with_gpg_key` and `with_trust_level` are never used [INFO] [stdout] --> src/repos/mod.rs:93:12 [INFO] [stdout] | [INFO] [stdout] 77 | impl Repository { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 93 | pub fn with_gpg_key(mut self, key: GpgKeyInfo) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 98 | pub fn with_trust_level(mut self, level: TrustLevel) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `trust_level` and `description` are never read [INFO] [stdout] --> src/repos/mod.rs:183:9 [INFO] [stdout] | [INFO] [stdout] 178 | pub struct KnownRepository { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 183 | pub trust_level: TrustLevel, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 184 | pub vendor: &'static str, [INFO] [stdout] 185 | pub description: &'static str, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `KnownRepository` 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 `repos_dir` is never read [INFO] [stdout] --> src/repos/manager.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct RepositoryManager { [INFO] [stdout] | ----------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 14 | repos_dir: PathBuf, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `keyservers` is never read [INFO] [stdout] --> src/repos/gpg.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct GpgManager { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] 8 | output: Output, [INFO] [stdout] 9 | keyservers: Vec, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/repos/gpg.rs:169:18 [INFO] [stdout] | [INFO] [stdout] 12 | impl GpgManager { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 169 | pub async fn fetch_key(&self, fingerprint: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 189 | async fn fetch_from_keyserver(&self, fingerprint: &str, keyserver: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 227 | pub async fn refresh_expiring_keys(&self) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 269 | pub fn list_keys(&self) -> Result> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 319 | fn parse_gpg_output(&self, output: &[u8]) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 364 | pub fn verify_signature(&self, repo_file: &Path, signature_file: &Path) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 376 | pub fn trust_key(&self, fingerprint: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `output` is never read [INFO] [stdout] --> src/repos/detector.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct RepositoryDetector { [INFO] [stdout] | ------------------ field in this struct [INFO] [stdout] 8 | output: Output, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Other` is never constructed [INFO] [stdout] --> src/repos/detector.rs:424:5 [INFO] [stdout] | [INFO] [stdout] 416 | enum OsType { [INFO] [stdout] | ------ variant in this enum [INFO] [stdout] ... [INFO] [stdout] 424 | Other, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `OsType` 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 `RepositoryConfig` is never constructed [INFO] [stdout] --> src/repos/config.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct RepositoryConfig { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RepositoryEntry` is never constructed [INFO] [stdout] --> src/repos/config.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct RepositoryEntry { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RepositoryPreferences` is never constructed [INFO] [stdout] --> src/repos/config.rs:28:12 [INFO] [stdout] | [INFO] [stdout] 28 | pub struct RepositoryPreferences { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MirrorConfig` is never constructed [INFO] [stdout] --> src/repos/config.rs:38:12 [INFO] [stdout] | [INFO] [stdout] 38 | pub struct MirrorConfig { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/repos/config.rs:71:12 [INFO] [stdout] | [INFO] [stdout] 69 | impl RepositoryConfig { [INFO] [stdout] | --------------------- associated items in this implementation [INFO] [stdout] 70 | /// Load configuration from file [INFO] [stdout] 71 | pub fn load() -> Result { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 85 | pub fn save(&self) -> Result<()> { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 103 | fn config_path() -> Result { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 111 | pub fn add_repository(&mut self, name: String, url: String, auto_added: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 127 | pub fn remove_repository(&mut self, name: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 132 | pub fn get_repository(&self, name: &str) -> Option<&RepositoryEntry> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 137 | pub fn update_repository(&mut self, name: &str, package_count: usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 145 | pub fn add_mirror(&mut self, name: String, original: String, mirror: String, location: String) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 158 | pub fn get_best_mirror(&self, url: &str) -> Option<&str> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 174 | pub fn is_auto_added(&self, name: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `with_parent` and `copy` are never used [INFO] [stdout] --> src/profile/mod.rs:110:12 [INFO] [stdout] | [INFO] [stdout] 89 | impl Profile { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 110 | pub fn with_parent(mut self, parent: String) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 244 | pub fn copy(&self, new_name: &str) -> Result { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_best_fix` and `should_auto_fix` are never used [INFO] [stdout] --> src/recovery/analyzer.rs:101:12 [INFO] [stdout] | [INFO] [stdout] 11 | impl ErrorAnalyzer { [INFO] [stdout] | ------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 101 | pub fn get_best_fix<'a>(&self, analyses: &'a [ErrorAnalysis]) -> Option<&'a super::FixSuggestion> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 107 | pub fn should_auto_fix(&self, analysis: &ErrorAnalysis) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `output` is never read [INFO] [stdout] --> src/recovery/strategies.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct RecoveryStrategies { [INFO] [stdout] | ------------------ field in this struct [INFO] [stdout] 7 | output: Output, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `recommend_strategy` is never used [INFO] [stdout] --> src/recovery/strategies.rs:56:8 [INFO] [stdout] | [INFO] [stdout] 56 | pub fn recommend_strategy(category: &ErrorCategory, severity: &ErrorSeverity) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `detect` is never used [INFO] [stdout] --> src/shell/mod.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 19 | impl ShellType { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] 20 | /// Detect the current shell from environment [INFO] [stdout] 21 | pub fn detect() -> Self { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `output` is never read [INFO] [stdout] --> src/shell/completion.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct CompletionGenerator { [INFO] [stdout] | ------------------- field in this struct [INFO] [stdout] 10 | shell: ShellType, [INFO] [stdout] 11 | output: Output, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SymlinkManager` is never constructed [INFO] [stdout] --> src/shell/symlinks.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct SymlinkManager { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/shell/symlinks.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl SymlinkManager { [INFO] [stdout] | ------------------- associated items in this implementation [INFO] [stdout] 13 | pub fn new(output: Output) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 18 | pub fn setup_symlinks(&self, install_dir: Option) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 117 | pub fn remove_symlinks(&self, install_dir: Option) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 156 | fn find_pkmgr_binary(&self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 190 | fn get_symlink_directory(&self, install_dir: Option) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 204 | fn check_path_configuration(&self, symlink_dir: &Path) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 222 | pub fn list_symlinks(&self, install_dir: Option) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `touch` is never used [INFO] [stdout] --> src/cache/mod.rs:41:12 [INFO] [stdout] | [INFO] [stdout] 23 | impl CacheEntry { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 41 | pub fn touch(&mut self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `save` is never used [INFO] [stdout] --> src/cache/mod.rs:149:12 [INFO] [stdout] | [INFO] [stdout] 132 | impl CacheConfig { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 149 | pub fn save(&self) -> Result<()> { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `needs_cleanup` is never used [INFO] [stdout] --> src/cache/mod.rs:194:12 [INFO] [stdout] | [INFO] [stdout] 192 | impl CacheStats { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] 193 | /// Check if cleanup is needed [INFO] [stdout] 194 | pub fn needs_cleanup(&self, config: &CacheConfig) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `add_entry` and `get_entry` are never used [INFO] [stdout] --> src/cache/manager.rs:313:12 [INFO] [stdout] | [INFO] [stdout] 17 | impl CacheManager { [INFO] [stdout] | ----------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 313 | pub fn add_entry(&mut self, key: String, path: PathBuf, cache_type: CacheType) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 344 | pub fn get_entry(&mut self, key: &str) -> Option<&mut CacheEntry> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `clean_to_free` is never used [INFO] [stdout] --> src/cache/cleaner.rs:251:18 [INFO] [stdout] | [INFO] [stdout] 18 | impl CacheCleaner { [INFO] [stdout] | ----------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 251 | pub async fn clean_to_free(&mut self, required_bytes: u64) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CacheStatistics` is never constructed [INFO] [stdout] --> src/cache/stats.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct CacheStatistics { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/cache/stats.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl CacheStatistics { [INFO] [stdout] | -------------------- associated items in this implementation [INFO] [stdout] 13 | pub fn new(output: Output) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 18 | pub fn display_stats(&self, stats: &CacheStats, entries: &HashMap) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 38 | fn display_overall_stats(&self, stats: &CacheStats) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 75 | fn display_type_breakdown(&self, stats: &CacheStats) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 110 | fn display_age_distribution(&self, entries: &HashMap) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 155 | fn display_access_patterns(&self, entries: &HashMap) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 196 | fn display_recommendations(&self, stats: &CacheStats) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 239 | fn get_type_emoji(&self, cache_type: &CacheType) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 253 | pub fn generate_report(&self, stats: &CacheStats, entries: &HashMap) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `color` is never used [INFO] [stdout] --> src/doctor/mod.rs:30:12 [INFO] [stdout] | [INFO] [stdout] 19 | impl Severity { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 30 | pub fn color(&self) -> &'static str { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `display_name` is never used [INFO] [stdout] --> src/doctor/mod.rs:96:12 [INFO] [stdout] | [INFO] [stdout] 95 | impl CheckCategory { [INFO] [stdout] | ------------------ method in this implementation [INFO] [stdout] 96 | pub fn display_name(&self) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `auto_fix` is never read [INFO] [stdout] --> src/doctor/checker.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 12 | pub struct HealthChecker { [INFO] [stdout] | ------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 15 | auto_fix: bool, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Text`, `Json`, and `Html` are never constructed [INFO] [stdout] --> src/doctor/report.rs:455:5 [INFO] [stdout] | [INFO] [stdout] 454 | pub enum ExportFormat { [INFO] [stdout] | ------------ variants in this enum [INFO] [stdout] 455 | Text, [INFO] [stdout] | ^^^^ [INFO] [stdout] 456 | Markdown, [INFO] [stdout] 457 | Json, [INFO] [stdout] | ^^^^ [INFO] [stdout] 458 | Html, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `BinaryDownloader` is never constructed [INFO] [stdout] --> src/binary/downloader.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct BinaryDownloader { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/binary/downloader.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 13 | impl BinaryDownloader { [INFO] [stdout] | --------------------- associated items in this implementation [INFO] [stdout] 14 | pub fn new(output: Output, install_dir: PathBuf) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 18 | pub async fn download_from_github(&self, repo: &str, version: Option<&str>) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 62 | fn select_best_asset<'a>(&self, assets: &'a [Value]) -> Result<&'a Value> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 131 | async fn download_asset(&self, url: &str, filename: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 160 | async fn install_binary(&self, asset_path: &PathBuf, repo: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 191 | async fn extract_targz(&self, archive_path: &PathBuf, install_path: &PathBuf, binary_name: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 217 | async fn extract_zip(&self, archive_path: &PathBuf, install_path: &PathBuf, binary_name: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 243 | async fn find_binary_in_dir(&self, dir: &PathBuf, binary_name: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 297 | async fn make_executable(&self, path: &PathBuf) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 309 | fn detect_platform(&self) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 321 | fn detect_architecture(&self) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 333 | pub async fn search_github_releases(&self, query: &str) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `info` [INFO] [stdout] --> src/doctor/mod.rs:271:17 [INFO] [stdout] | [INFO] [stdout] 271 | let info = sys_info::loadavg()?; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_info` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `antiX` should have a snake case name [INFO] [stdout] --> src/iso/distributions.rs:1989:8 [INFO] [stdout] | [INFO] [stdout] 1989 | pub fn antiX() -> IsoDistribution { [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `anti_x` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing [INFO] [stdout] --> src/cache/manager.rs:348:13 [INFO] [stdout] | [INFO] [stdout] 348 | drop(entry); [INFO] [stdout] | ^^^^^-----^ [INFO] [stdout] | | [INFO] [stdout] | argument has type `&mut CacheEntry` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dropping_references)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the expression or result [INFO] [stdout] | [INFO] [stdout] 348 - drop(entry); [INFO] [stdout] 348 + let _ = entry; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `recover_from_error` is never used [INFO] [stdout] --> src/commands/recovery.rs:313:14 [INFO] [stdout] | [INFO] [stdout] 313 | pub async fn recover_from_error( [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 `save_last_error` is never used [INFO] [stdout] --> src/commands/recovery.rs:360:4 [INFO] [stdout] | [INFO] [stdout] 360 | fn save_last_error(stdout: &str, stderr: &str, exit_code: i32, command: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `resolve_alias` is never used [INFO] [stdout] --> src/core/config.rs:239:12 [INFO] [stdout] | [INFO] [stdout] 180 | impl Config { [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 239 | pub fn resolve_alias(&self, command: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_language_command` is never used [INFO] [stdout] --> src/core/detector.rs:63:12 [INFO] [stdout] | [INFO] [stdout] 8 | impl SymlinkDetector { [INFO] [stdout] | -------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 63 | pub fn is_language_command(&self, program_name: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_arch_linux`, `is_debian_based`, and `is_rhel_based` are never used [INFO] [stdout] --> src/core/platform.rs:248:12 [INFO] [stdout] | [INFO] [stdout] 60 | impl PlatformInfo { [INFO] [stdout] | ----------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 248 | pub fn is_arch_linux(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 252 | pub fn is_debian_based(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 258 | pub fn is_rhel_based(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Transaction` is never constructed [INFO] [stdout] --> src/core/transaction.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct Transaction { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `TransactionStatus` is never used [INFO] [stdout] --> src/core/transaction.rs:21:10 [INFO] [stdout] | [INFO] [stdout] 21 | pub enum TransactionStatus { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TransactionPackages` is never constructed [INFO] [stdout] --> src/core/transaction.rs:30:12 [INFO] [stdout] | [INFO] [stdout] 30 | pub struct TransactionPackages { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TransactionFiles` is never constructed [INFO] [stdout] --> src/core/transaction.rs:37:12 [INFO] [stdout] | [INFO] [stdout] 37 | pub struct TransactionFiles { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TransactionRepositories` is never constructed [INFO] [stdout] --> src/core/transaction.rs:44:12 [INFO] [stdout] | [INFO] [stdout] 44 | pub struct TransactionRepositories { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/core/transaction.rs:50:12 [INFO] [stdout] | [INFO] [stdout] 49 | impl Transaction { [INFO] [stdout] | ---------------- associated items in this implementation [INFO] [stdout] 50 | pub fn new(operation: String) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 74 | pub async fn save(&self, data_dir: &PathBuf) -> Result<()> { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 92 | pub async fn load(data_dir: &PathBuf, id: &str) -> Result> { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 104 | pub async fn load_current(data_dir: &PathBuf) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 116 | pub fn complete(&mut self) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 120 | pub fn fail(&mut self) { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 124 | pub fn start_rollback(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 128 | pub fn complete_rollback(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 132 | pub fn add_installed_package(&mut self, package: String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 136 | pub fn add_removed_package(&mut self, package: String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 140 | pub fn add_upgraded_package(&mut self, package: String, old_version: String, new_version: String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 144 | pub fn add_created_file(&mut self, file: String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 148 | pub fn add_modified_file(&mut self, file: String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 152 | pub fn add_removed_file(&mut self, file: String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 156 | pub fn add_repository(&mut self, repo: String) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 160 | pub fn remove_repository(&mut self, repo: String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 164 | pub fn backup_config(&mut self, original_path: String, backup_path: String) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TransactionManager` is never constructed [INFO] [stdout] --> src/core/transaction.rs:169:12 [INFO] [stdout] | [INFO] [stdout] 169 | pub struct TransactionManager { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/core/transaction.rs:175:12 [INFO] [stdout] | [INFO] [stdout] 174 | impl TransactionManager { [INFO] [stdout] | ----------------------- associated items in this implementation [INFO] [stdout] 175 | pub fn new(data_dir: PathBuf) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 182 | pub async fn start_transaction(&mut self, operation: String) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 197 | pub async fn complete_transaction(&mut self) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 212 | pub async fn fail_transaction(&mut self) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 223 | pub async fn rollback_transaction(&mut self, transaction_id: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 247 | pub fn current_transaction(&self) -> Option<&Transaction> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 251 | pub fn current_transaction_mut(&mut self) -> Option<&mut Transaction> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PackageNormalizer` is never constructed [INFO] [stdout] --> src/core/normalize.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct PackageNormalizer { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `normalize`, `get_variations`, `requires_repository`, and `get_install_notes` are never used [INFO] [stdout] --> src/core/normalize.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 14 | impl PackageNormalizer { [INFO] [stdout] | ---------------------- associated items in this implementation [INFO] [stdout] 15 | pub fn new(platform: Platform, package_manager: impl Into) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 23 | pub fn normalize(&self, name: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 45 | fn get_variations(&self, name: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 87 | pub fn requires_repository(&self, name: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 95 | pub fn get_install_notes(&self, name: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PackageMapping` is never constructed [INFO] [stdout] --> src/core/normalize.rs:104:12 [INFO] [stdout] | [INFO] [stdout] 104 | pub struct PackageMapping { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_platform_name` is never used [INFO] [stdout] --> src/core/normalize.rs:118:12 [INFO] [stdout] | [INFO] [stdout] 116 | impl PackageMapping { [INFO] [stdout] | ------------------- method in this implementation [INFO] [stdout] 117 | /// Get platform-specific package name [INFO] [stdout] 118 | pub fn get_platform_name(&self, package_manager: &str) -> Option<&'static str> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RepositoryRequirement` is never constructed [INFO] [stdout] --> src/core/normalize.rs:135:12 [INFO] [stdout] | [INFO] [stdout] 135 | pub struct RepositoryRequirement { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `PACKAGE_MAPPINGS` is never used [INFO] [stdout] --> src/core/normalize.rs:142:8 [INFO] [stdout] | [INFO] [stdout] 142 | static PACKAGE_MAPPINGS: Lazy> = Lazy::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `REPOSITORY_REQUIREMENTS` is never used [INFO] [stdout] --> src/core/normalize.rs:568:8 [INFO] [stdout] | [INFO] [stdout] 568 | static REPOSITORY_REQUIREMENTS: Lazy> = Lazy::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `INSTALL_NOTES` is never used [INFO] [stdout] --> src/core/normalize.rs:605:8 [INFO] [stdout] | [INFO] [stdout] 605 | static INSTALL_NOTES: Lazy> = Lazy::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PrivilegeManager` is never constructed [INFO] [stdout] --> src/core/privilege.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 12 | pub struct PrivilegeManager { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/core/privilege.rs:19:12 [INFO] [stdout] | [INFO] [stdout] 18 | impl PrivilegeManager { [INFO] [stdout] | --------------------- associated items in this implementation [INFO] [stdout] 19 | pub fn new(output: Output) -> Result { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 31 | pub fn is_root(&self) -> bool { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 50 | pub fn has_privileges(&self) -> PrivilegeStatus { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 63 | fn check_sudo_access(&self) -> PrivilegeStatus { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 89 | fn is_in_sudo_group(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 130 | fn check_windows_elevation(&self) -> PrivilegeStatus { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 135 | pub fn escalate_command(&self, command: &[String], operation: &str) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 161 | fn handle_password_required(&self, command: &[String], operation: &str) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 184 | fn handle_no_privileges(&self, operation: &str) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 195 | fn is_ci_environment(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 207 | pub fn configure_sudo(&self) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 234 | fn generate_sudoers_content(&self, pkmgr_path: &Path) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 269 | fn validate_sudoers_content(&self, content: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 293 | fn write_sudoers_file(&self, content: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 338 | pub fn check_configuration(&self) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 390 | pub fn determine_install_location(&self, prefer_user: bool) -> InstallLocation { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `PrivilegeStatus` is never used [INFO] [stdout] --> src/core/privilege.rs:420:10 [INFO] [stdout] | [INFO] [stdout] 420 | pub enum PrivilegeStatus { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `can_escalate` and `is_passwordless` are never used [INFO] [stdout] --> src/core/privilege.rs:428:12 [INFO] [stdout] | [INFO] [stdout] 427 | impl PrivilegeStatus { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] 428 | pub fn can_escalate(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 432 | pub fn is_passwordless(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `InstallLocation` is never used [INFO] [stdout] --> src/core/privilege.rs:439:10 [INFO] [stdout] | [INFO] [stdout] 439 | pub enum InstallLocation { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `base_dir`, `bin_dir`, `share_dir`, and `config_dir` are never used [INFO] [stdout] --> src/core/privilege.rs:445:12 [INFO] [stdout] | [INFO] [stdout] 444 | impl InstallLocation { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] 445 | pub fn base_dir(&self) -> PathBuf { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 456 | pub fn bin_dir(&self) -> PathBuf { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 460 | pub fn share_dir(&self) -> PathBuf { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 464 | pub fn config_dir(&self) -> PathBuf { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `packages_installed` is never read [INFO] [stdout] --> src/core/traits.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 25 | pub struct InstallResult { [INFO] [stdout] | ------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 28 | pub packages_installed: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `InstallResult` 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: trait `LanguageManager` is never used [INFO] [stdout] --> src/core/traits.rs:67:11 [INFO] [stdout] | [INFO] [stdout] 67 | pub trait LanguageManager: Send + Sync { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `BinaryManager` is never used [INFO] [stdout] --> src/core/traits.rs:101:11 [INFO] [stdout] | [INFO] [stdout] 101 | pub trait BinaryManager: Send + Sync { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_alternatives`, `validate_package_name`, `suggest_package`, and `requires_repository` are never used [INFO] [stdout] --> src/core/normalizer.rs:305:12 [INFO] [stdout] | [INFO] [stdout] 26 | impl PackageNormalizer { [INFO] [stdout] | ---------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 305 | pub fn get_alternatives(&self, package_name: &str) -> Vec<(PackageManager, Vec)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 333 | pub fn validate_package_name(&self, package_name: &str, package_manager: &PackageManager) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 344 | pub fn suggest_package(&self, query: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 376 | pub fn requires_repository(&self, package_name: &str) -> Option<&'static str> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `levenshtein_distance` is never used [INFO] [stdout] --> src/core/normalizer.rs:394:4 [INFO] [stdout] | [INFO] [stdout] 394 | fn levenshtein_distance(a: &str, b: &str) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `source` is never read [INFO] [stdout] --> src/languages/resolver.rs:25:9 [INFO] [stdout] | [INFO] [stdout] 23 | pub struct ResolvedVersion { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] 24 | pub version: String, [INFO] [stdout] 25 | pub source: VersionSource, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ResolvedVersion` 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 `output` is never read [INFO] [stdout] --> src/languages/resolver.rs:33:5 [INFO] [stdout] | [INFO] [stdout] 31 | pub struct VersionResolver { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] 32 | language: String, [INFO] [stdout] 33 | output: Output, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LanguageInstaller` is never constructed [INFO] [stdout] --> src/languages/installer.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct LanguageInstaller { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/languages/installer.rs:17:12 [INFO] [stdout] | [INFO] [stdout] 16 | impl LanguageInstaller { [INFO] [stdout] | ---------------------- associated items in this implementation [INFO] [stdout] 17 | pub fn new(language: String, output: Output, config: &Config) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 24 | pub async fn install_version(&self, version: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 48 | async fn install_python(&self, version: &str, install_path: &PathBuf) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 96 | async fn install_node(&self, version: &str, install_path: &PathBuf) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 121 | async fn install_go(&self, version: &str, install_path: &PathBuf) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 146 | async fn install_rust(&self, version: &str, install_path: &PathBuf) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 167 | async fn install_ruby(&self, version: &str, install_path: &PathBuf) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 215 | async fn download_file(&self, url: &str, filename: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 244 | fn detect_architecture(&self) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 256 | pub async fn get_available_versions(&self) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `sudo_available` is never read [INFO] [stdout] --> src/managers/homebrew.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct HomebrewManager { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] 9 | sudo_available: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `term` is never read [INFO] [stdout] --> src/ui/output.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Output { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] 6 | pub term: Term, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Output` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/ui/output.rs:29:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl Output { [INFO] [stdout] | ----------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 29 | pub fn with_verbose(color_output: String, emoji_enabled: bool, verbose: bool) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 90 | pub fn step(&self, message: &str) { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 99 | pub fn print(&self, message: &str) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 192 | pub fn print_list(&self, items: &[String]) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 199 | pub fn clear_line(&self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 204 | pub fn is_tty(&self) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 208 | pub fn width(&self) -> u16 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 212 | pub fn height(&self) -> u16 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 241 | pub fn build_start(&self, package: &str) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 251 | pub fn cleanup_start(&self) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `create_install_bar`, `create_usb_bar`, `create_spinner`, `create_multi_spinner`, `finish_with_message`, and `finish_with_error` are never used [INFO] [stdout] --> src/ui/progress.rs:33:12 [INFO] [stdout] | [INFO] [stdout] 8 | impl ProgressManager { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 33 | pub fn create_install_bar(&self, total: u64, title: &str) -> ProgressBar { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 53 | pub fn create_usb_bar(&self, size: u64, iso_name: &str, device: &str) -> ProgressBar { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | pub fn create_spinner(&self, message: &str) -> ProgressBar { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 94 | pub fn create_multi_spinner(&self, message: &str) -> ProgressBar { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 115 | pub fn finish_with_message(&self, pb: &ProgressBar, message: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 120 | pub fn finish_with_error(&self, pb: &ProgressBar, message: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/ui/prompt.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 8 | impl Prompt { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 26 | pub fn confirm_default_yes(&self, message: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 51 | pub fn input_with_default(&self, message: &str, default: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 64 | pub fn select(&self, message: &str, items: &[T]) -> Result [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 81 | pub fn multiselect(&self, message: &str, items: &[T]) -> Result> [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 97 | pub fn destructive_confirm(&self, message: &str, confirmation_text: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 115 | pub fn version_select(&self, versions: &[String], current: Option<&str>) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 162 | pub fn usb_device_select(&self, devices: &[(String, String, u64)]) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `download_with_checksum` and `calculate_sha256` are never used [INFO] [stdout] --> src/utils/download.rs:64:18 [INFO] [stdout] | [INFO] [stdout] 14 | impl Downloader { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 64 | pub async fn download_with_checksum(&self, url: &str, dest: &Path, expected_checksum: Option<&str>) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 77 | async fn calculate_sha256(&self, path: &Path) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `placeholder` is never used [INFO] [stdout] --> src/utils/crypto.rs:2:8 [INFO] [stdout] | [INFO] [stdout] 2 | pub fn placeholder() {} [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `placeholder` is never used [INFO] [stdout] --> src/utils/fs.rs:2:8 [INFO] [stdout] | [INFO] [stdout] 2 | pub fn placeholder() {} [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `calculate_sha512` is never used [INFO] [stdout] --> src/iso/verification.rs:139:8 [INFO] [stdout] | [INFO] [stdout] 12 | impl IsoVerifier { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 139 | fn calculate_sha512(&self, path: &Path) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `UsbOperation` is never used [INFO] [stdout] --> src/usb/mod.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | pub enum UsbOperation { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MultiBootConfig` is never constructed [INFO] [stdout] --> src/usb/mod.rs:60:12 [INFO] [stdout] | [INFO] [stdout] 60 | pub struct MultiBootConfig { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `BootloaderType` is never used [INFO] [stdout] --> src/usb/mod.rs:69:10 [INFO] [stdout] | [INFO] [stdout] 69 | pub enum BootloaderType { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `BootEntry` is never constructed [INFO] [stdout] --> src/usb/mod.rs:76:12 [INFO] [stdout] | [INFO] [stdout] 76 | pub struct BootEntry { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `size_gb`, `is_suitable_for_single_iso`, `is_suitable_for_multi_boot`, and `format_size` are never used [INFO] [stdout] --> src/usb/mod.rs:88:12 [INFO] [stdout] | [INFO] [stdout] 87 | impl UsbDevice { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] 88 | pub fn size_gb(&self) -> f64 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 92 | pub fn is_suitable_for_single_iso(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 96 | pub fn is_suitable_for_multi_boot(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 100 | pub fn format_size(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_device_safe` is never used [INFO] [stdout] --> src/usb/mod.rs:111:8 [INFO] [stdout] | [INFO] [stdout] 111 | pub fn is_device_safe(device_path: &Path) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `unmount_device`, and `eject_device` are never used [INFO] [stdout] --> src/usb/device.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 9 | impl DeviceDetector { [INFO] [stdout] | ------------------- associated items in this implementation [INFO] [stdout] 10 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 332 | pub fn unmount_device(&self, device: &UsbDevice) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 360 | pub fn eject_device(&self, device: &UsbDevice) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `UsbWizard` is never constructed [INFO] [stdout] --> src/usb/wizard.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct UsbWizard { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/usb/wizard.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 15 | impl UsbWizard { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 16 | pub fn new(output: Output) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 26 | pub async fn run(&self) -> Result<()> { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 68 | async fn select_device(&self) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 132 | async fn select_operation(&self, device: &UsbDevice) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 225 | async fn select_iso(&self) -> Result> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 322 | async fn select_multiple_isos(&self) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 354 | async fn execute_operation(&self, operation: UsbOperation, device: &UsbDevice) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 423 | async fn create_multiboot_usb(&self, device: &UsbDevice, initial_isos: Vec) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 445 | async fn list_multiboot_isos(&self, device_path: &Path) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `format_size` is never used [INFO] [stdout] --> src/usb/wizard.rs:453:4 [INFO] [stdout] | [INFO] [stdout] 453 | fn format_size(bytes: u64) -> String { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `BootloaderManager` is never constructed [INFO] [stdout] --> src/usb/bootloader.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct BootloaderManager { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/usb/bootloader.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl BootloaderManager { [INFO] [stdout] | ---------------------- associated items in this implementation [INFO] [stdout] 13 | pub fn new(bootloader_type: BootloaderType) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 18 | pub fn install_bootloader(&self, device: &Path) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | pub fn generate_config(&self, usb_root: &Path, entries: &[BootEntry]) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 35 | fn install_grub2(&self, device: &Path) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 65 | fn install_syslinux(&self, device: &Path) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 84 | fn install_ventoy(&self, _device: &Path) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 90 | fn generate_grub_config(&self, usb_root: &Path, entries: &[BootEntry]) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 162 | fn generate_grub_entry(&self, entry: &BootEntry) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 211 | fn get_boot_params(&self, distro: &str, _version: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 222 | fn generate_syslinux_config(&self, usb_root: &Path, entries: &[BootEntry]) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 250 | pub fn create_directory_structure(&self, usb_root: &Path) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `categorize_iso` is never used [INFO] [stdout] --> src/usb/bootloader.rs:286:8 [INFO] [stdout] | [INFO] [stdout] 286 | pub fn categorize_iso(name: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `UsbWriter` is never constructed [INFO] [stdout] --> src/usb/writer.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 12 | pub struct UsbWriter { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `write_iso`, `verify_write`, and `erase_device` are never used [INFO] [stdout] --> src/usb/writer.rs:17:12 [INFO] [stdout] | [INFO] [stdout] 16 | impl UsbWriter { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 17 | pub fn new(output: Output) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 22 | pub async fn write_iso(&self, iso_path: &Path, device: &UsbDevice, verify: bool) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 158 | async fn verify_write(&self, iso_path: &Path, device_path: &Path, size: u64) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 184 | pub async fn erase_device(&self, device: &UsbDevice, filesystem: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ProgressUpdate` is never used [INFO] [stdout] --> src/usb/writer.rs:244:6 [INFO] [stdout] | [INFO] [stdout] 244 | enum ProgressUpdate { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `write_iso_blocking` is never used [INFO] [stdout] --> src/usb/writer.rs:250:4 [INFO] [stdout] | [INFO] [stdout] 250 | fn write_iso_blocking( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `wipe_device_headers` is never used [INFO] [stdout] --> src/usb/writer.rs:312:4 [INFO] [stdout] | [INFO] [stdout] 312 | fn wipe_device_headers(device_path: &Path, device_size: u64) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `calculate_checksum` is never used [INFO] [stdout] --> src/usb/writer.rs:338:4 [INFO] [stdout] | [INFO] [stdout] 338 | fn calculate_checksum(path: &Path, size: u64) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `format_size` is never used [INFO] [stdout] --> src/usb/writer.rs:364:4 [INFO] [stdout] | [INFO] [stdout] 364 | fn format_size(bytes: u64) -> String { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `format_speed` is never used [INFO] [stdout] --> src/usb/writer.rs:381:4 [INFO] [stdout] | [INFO] [stdout] 381 | fn format_speed(bytes_per_second: f64) -> String { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `format_eta` is never used [INFO] [stdout] --> src/usb/writer.rs:393:4 [INFO] [stdout] | [INFO] [stdout] 393 | fn format_eta(seconds: u64) -> String { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `with_gpg_key` and `with_trust_level` are never used [INFO] [stdout] --> src/repos/mod.rs:93:12 [INFO] [stdout] | [INFO] [stdout] 77 | impl Repository { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 93 | pub fn with_gpg_key(mut self, key: GpgKeyInfo) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 98 | pub fn with_trust_level(mut self, level: TrustLevel) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `trust_level` and `description` are never read [INFO] [stdout] --> src/repos/mod.rs:183:9 [INFO] [stdout] | [INFO] [stdout] 178 | pub struct KnownRepository { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 183 | pub trust_level: TrustLevel, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 184 | pub vendor: &'static str, [INFO] [stdout] 185 | pub description: &'static str, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `KnownRepository` 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 `repos_dir` is never read [INFO] [stdout] --> src/repos/manager.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct RepositoryManager { [INFO] [stdout] | ----------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 14 | repos_dir: PathBuf, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `keyservers` is never read [INFO] [stdout] --> src/repos/gpg.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct GpgManager { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] 8 | output: Output, [INFO] [stdout] 9 | keyservers: Vec, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/repos/gpg.rs:169:18 [INFO] [stdout] | [INFO] [stdout] 12 | impl GpgManager { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 169 | pub async fn fetch_key(&self, fingerprint: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 189 | async fn fetch_from_keyserver(&self, fingerprint: &str, keyserver: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 227 | pub async fn refresh_expiring_keys(&self) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 269 | pub fn list_keys(&self) -> Result> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 319 | fn parse_gpg_output(&self, output: &[u8]) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 364 | pub fn verify_signature(&self, repo_file: &Path, signature_file: &Path) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 376 | pub fn trust_key(&self, fingerprint: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `output` is never read [INFO] [stdout] --> src/repos/detector.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct RepositoryDetector { [INFO] [stdout] | ------------------ field in this struct [INFO] [stdout] 8 | output: Output, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Other` is never constructed [INFO] [stdout] --> src/repos/detector.rs:424:5 [INFO] [stdout] | [INFO] [stdout] 416 | enum OsType { [INFO] [stdout] | ------ variant in this enum [INFO] [stdout] ... [INFO] [stdout] 424 | Other, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `OsType` 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 `RepositoryConfig` is never constructed [INFO] [stdout] --> src/repos/config.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct RepositoryConfig { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RepositoryEntry` is never constructed [INFO] [stdout] --> src/repos/config.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct RepositoryEntry { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RepositoryPreferences` is never constructed [INFO] [stdout] --> src/repos/config.rs:28:12 [INFO] [stdout] | [INFO] [stdout] 28 | pub struct RepositoryPreferences { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MirrorConfig` is never constructed [INFO] [stdout] --> src/repos/config.rs:38:12 [INFO] [stdout] | [INFO] [stdout] 38 | pub struct MirrorConfig { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/repos/config.rs:71:12 [INFO] [stdout] | [INFO] [stdout] 69 | impl RepositoryConfig { [INFO] [stdout] | --------------------- associated items in this implementation [INFO] [stdout] 70 | /// Load configuration from file [INFO] [stdout] 71 | pub fn load() -> Result { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 85 | pub fn save(&self) -> Result<()> { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 103 | fn config_path() -> Result { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 111 | pub fn add_repository(&mut self, name: String, url: String, auto_added: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 127 | pub fn remove_repository(&mut self, name: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 132 | pub fn get_repository(&self, name: &str) -> Option<&RepositoryEntry> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 137 | pub fn update_repository(&mut self, name: &str, package_count: usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 145 | pub fn add_mirror(&mut self, name: String, original: String, mirror: String, location: String) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 158 | pub fn get_best_mirror(&self, url: &str) -> Option<&str> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 174 | pub fn is_auto_added(&self, name: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `with_parent` and `copy` are never used [INFO] [stdout] --> src/profile/mod.rs:110:12 [INFO] [stdout] | [INFO] [stdout] 89 | impl Profile { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 110 | pub fn with_parent(mut self, parent: String) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 244 | pub fn copy(&self, new_name: &str) -> Result { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_best_fix` and `should_auto_fix` are never used [INFO] [stdout] --> src/recovery/analyzer.rs:101:12 [INFO] [stdout] | [INFO] [stdout] 11 | impl ErrorAnalyzer { [INFO] [stdout] | ------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 101 | pub fn get_best_fix<'a>(&self, analyses: &'a [ErrorAnalysis]) -> Option<&'a super::FixSuggestion> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 107 | pub fn should_auto_fix(&self, analysis: &ErrorAnalysis) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `output` is never read [INFO] [stdout] --> src/recovery/strategies.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct RecoveryStrategies { [INFO] [stdout] | ------------------ field in this struct [INFO] [stdout] 7 | output: Output, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `recommend_strategy` is never used [INFO] [stdout] --> src/recovery/strategies.rs:56:8 [INFO] [stdout] | [INFO] [stdout] 56 | pub fn recommend_strategy(category: &ErrorCategory, severity: &ErrorSeverity) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `detect` is never used [INFO] [stdout] --> src/shell/mod.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 19 | impl ShellType { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] 20 | /// Detect the current shell from environment [INFO] [stdout] 21 | pub fn detect() -> Self { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `output` is never read [INFO] [stdout] --> src/shell/completion.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct CompletionGenerator { [INFO] [stdout] | ------------------- field in this struct [INFO] [stdout] 10 | shell: ShellType, [INFO] [stdout] 11 | output: Output, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SymlinkManager` is never constructed [INFO] [stdout] --> src/shell/symlinks.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct SymlinkManager { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/shell/symlinks.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl SymlinkManager { [INFO] [stdout] | ------------------- associated items in this implementation [INFO] [stdout] 13 | pub fn new(output: Output) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 18 | pub fn setup_symlinks(&self, install_dir: Option) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 117 | pub fn remove_symlinks(&self, install_dir: Option) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 156 | fn find_pkmgr_binary(&self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 190 | fn get_symlink_directory(&self, install_dir: Option) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 204 | fn check_path_configuration(&self, symlink_dir: &Path) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 222 | pub fn list_symlinks(&self, install_dir: Option) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `touch` is never used [INFO] [stdout] --> src/cache/mod.rs:41:12 [INFO] [stdout] | [INFO] [stdout] 23 | impl CacheEntry { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 41 | pub fn touch(&mut self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `save` is never used [INFO] [stdout] --> src/cache/mod.rs:149:12 [INFO] [stdout] | [INFO] [stdout] 132 | impl CacheConfig { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 149 | pub fn save(&self) -> Result<()> { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `needs_cleanup` is never used [INFO] [stdout] --> src/cache/mod.rs:194:12 [INFO] [stdout] | [INFO] [stdout] 192 | impl CacheStats { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] 193 | /// Check if cleanup is needed [INFO] [stdout] 194 | pub fn needs_cleanup(&self, config: &CacheConfig) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `add_entry` and `get_entry` are never used [INFO] [stdout] --> src/cache/manager.rs:313:12 [INFO] [stdout] | [INFO] [stdout] 17 | impl CacheManager { [INFO] [stdout] | ----------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 313 | pub fn add_entry(&mut self, key: String, path: PathBuf, cache_type: CacheType) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 344 | pub fn get_entry(&mut self, key: &str) -> Option<&mut CacheEntry> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `clean_to_free` is never used [INFO] [stdout] --> src/cache/cleaner.rs:251:18 [INFO] [stdout] | [INFO] [stdout] 18 | impl CacheCleaner { [INFO] [stdout] | ----------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 251 | pub async fn clean_to_free(&mut self, required_bytes: u64) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CacheStatistics` is never constructed [INFO] [stdout] --> src/cache/stats.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct CacheStatistics { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/cache/stats.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl CacheStatistics { [INFO] [stdout] | -------------------- associated items in this implementation [INFO] [stdout] 13 | pub fn new(output: Output) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 18 | pub fn display_stats(&self, stats: &CacheStats, entries: &HashMap) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 38 | fn display_overall_stats(&self, stats: &CacheStats) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 75 | fn display_type_breakdown(&self, stats: &CacheStats) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 110 | fn display_age_distribution(&self, entries: &HashMap) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 155 | fn display_access_patterns(&self, entries: &HashMap) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 196 | fn display_recommendations(&self, stats: &CacheStats) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 239 | fn get_type_emoji(&self, cache_type: &CacheType) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 253 | pub fn generate_report(&self, stats: &CacheStats, entries: &HashMap) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `color` is never used [INFO] [stdout] --> src/doctor/mod.rs:30:12 [INFO] [stdout] | [INFO] [stdout] 19 | impl Severity { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 30 | pub fn color(&self) -> &'static str { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `display_name` is never used [INFO] [stdout] --> src/doctor/mod.rs:96:12 [INFO] [stdout] | [INFO] [stdout] 95 | impl CheckCategory { [INFO] [stdout] | ------------------ method in this implementation [INFO] [stdout] 96 | pub fn display_name(&self) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `auto_fix` is never read [INFO] [stdout] --> src/doctor/checker.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 12 | pub struct HealthChecker { [INFO] [stdout] | ------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 15 | auto_fix: bool, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Text`, `Json`, and `Html` are never constructed [INFO] [stdout] --> src/doctor/report.rs:455:5 [INFO] [stdout] | [INFO] [stdout] 454 | pub enum ExportFormat { [INFO] [stdout] | ------------ variants in this enum [INFO] [stdout] 455 | Text, [INFO] [stdout] | ^^^^ [INFO] [stdout] 456 | Markdown, [INFO] [stdout] 457 | Json, [INFO] [stdout] | ^^^^ [INFO] [stdout] 458 | Html, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `BinaryDownloader` is never constructed [INFO] [stdout] --> src/binary/downloader.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct BinaryDownloader { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/binary/downloader.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 13 | impl BinaryDownloader { [INFO] [stdout] | --------------------- associated items in this implementation [INFO] [stdout] 14 | pub fn new(output: Output, install_dir: PathBuf) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 18 | pub async fn download_from_github(&self, repo: &str, version: Option<&str>) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 62 | fn select_best_asset<'a>(&self, assets: &'a [Value]) -> Result<&'a Value> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 131 | async fn download_asset(&self, url: &str, filename: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 160 | async fn install_binary(&self, asset_path: &PathBuf, repo: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 191 | async fn extract_targz(&self, archive_path: &PathBuf, install_path: &PathBuf, binary_name: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 217 | async fn extract_zip(&self, archive_path: &PathBuf, install_path: &PathBuf, binary_name: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 243 | async fn find_binary_in_dir(&self, dir: &PathBuf, binary_name: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 297 | async fn make_executable(&self, path: &PathBuf) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 309 | fn detect_platform(&self) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 321 | fn detect_architecture(&self) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 333 | pub async fn search_github_releases(&self, query: &str) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `antiX` should have a snake case name [INFO] [stdout] --> src/iso/distributions.rs:1989:8 [INFO] [stdout] | [INFO] [stdout] 1989 | pub fn antiX() -> IsoDistribution { [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `anti_x` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing [INFO] [stdout] --> src/cache/manager.rs:348:13 [INFO] [stdout] | [INFO] [stdout] 348 | drop(entry); [INFO] [stdout] | ^^^^^-----^ [INFO] [stdout] | | [INFO] [stdout] | argument has type `&mut CacheEntry` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dropping_references)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the expression or result [INFO] [stdout] | [INFO] [stdout] 348 - drop(entry); [INFO] [stdout] 348 + let _ = entry; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 37.14s [INFO] running `Command { std: "docker" "inspect" "59a475446e5956439e3989b98d4852106884fe3e19743f3dde6b4b1ea1c10971", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "59a475446e5956439e3989b98d4852106884fe3e19743f3dde6b4b1ea1c10971", kill_on_drop: false }` [INFO] [stdout] 59a475446e5956439e3989b98d4852106884fe3e19743f3dde6b4b1ea1c10971