[INFO] cloning repository https://github.com/null-channel/RAID [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/null-channel/RAID" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnull-channel%2FRAID", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnull-channel%2FRAID'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] db0d5792b88272027dd652dd9317d8cb058e7f32 [INFO] building null-channel/RAID against master#c7f6aa2869acdbf014d094c6e427e554e160b6db for pr-146237-2 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnull-channel%2FRAID" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/null-channel/RAID [INFO] finished tweaking git repo https://github.com/null-channel/RAID [INFO] tweaked toml for git repo https://github.com/null-channel/RAID written to /workspace/builds/worker-1-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/null-channel/RAID on toolchain c7f6aa2869acdbf014d094c6e427e554e160b6db [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c7f6aa2869acdbf014d094c6e427e554e160b6db" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/null-channel/RAID 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" "+c7f6aa2869acdbf014d094c6e427e554e160b6db" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded libredox v0.1.6 [INFO] [stderr] Downloaded rusqlite v0.36.0 [INFO] [stderr] Downloaded libsqlite3-sys v0.34.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+c7f6aa2869acdbf014d094c6e427e554e160b6db" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] c0499efe226fdd13cb6b68db2d3bf94d448a757d53d1445702d407137dd6d1d0 [INFO] running `Command { std: "docker" "start" "-a" "c0499efe226fdd13cb6b68db2d3bf94d448a757d53d1445702d407137dd6d1d0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "c0499efe226fdd13cb6b68db2d3bf94d448a757d53d1445702d407137dd6d1d0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c0499efe226fdd13cb6b68db2d3bf94d448a757d53d1445702d407137dd6d1d0", kill_on_drop: false }` [INFO] [stdout] c0499efe226fdd13cb6b68db2d3bf94d448a757d53d1445702d407137dd6d1d0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+c7f6aa2869acdbf014d094c6e427e554e160b6db" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 3b2da58cf735961e4742f26985b61b2d512d5d2fbc8f29b4b493bbdbcf9fa35d [INFO] running `Command { std: "docker" "start" "-a" "3b2da58cf735961e4742f26985b61b2d512d5d2fbc8f29b4b493bbdbcf9fa35d", kill_on_drop: false }` [INFO] [stderr] Compiling smallvec v1.15.1 [INFO] [stderr] Compiling cc v1.2.27 [INFO] [stderr] Compiling hashbrown v0.15.4 [INFO] [stderr] Compiling getrandom v0.2.16 [INFO] [stderr] Compiling bitflags v2.9.1 [INFO] [stderr] Compiling rustls v0.23.28 [INFO] [stderr] Compiling libsqlite3-sys v0.34.0 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling webpki-roots v1.0.1 [INFO] [stderr] Compiling iri-string v0.7.8 [INFO] [stderr] Compiling console v0.15.11 [INFO] [stderr] Compiling clap_builder v4.5.40 [INFO] [stderr] Compiling clap_derive v4.5.40 [INFO] [stderr] Compiling fallible-streaming-iterator v0.1.9 [INFO] [stderr] Compiling fallible-iterator v0.3.0 [INFO] [stderr] Compiling parking_lot_core v0.9.11 [INFO] [stderr] Compiling icu_normalizer v2.0.0 [INFO] [stderr] Compiling ron v0.8.1 [INFO] [stderr] Compiling const-random-macro v0.1.16 [INFO] [stderr] Compiling indexmap v2.10.0 [INFO] [stderr] Compiling hashlink v0.10.0 [INFO] [stderr] Compiling parking_lot v0.12.4 [INFO] [stderr] Compiling const-random v0.1.18 [INFO] [stderr] Compiling dlv-list v0.5.2 [INFO] [stderr] Compiling indicatif v0.17.11 [INFO] [stderr] Compiling tokio v1.45.1 [INFO] [stderr] Compiling ordered-multimap v0.7.3 [INFO] [stderr] Compiling rusqlite v0.36.0 [INFO] [stderr] Compiling idna_adapter v1.2.1 [INFO] [stderr] Compiling idna v1.0.3 [INFO] [stderr] Compiling rust-ini v0.20.0 [INFO] [stderr] Compiling url v2.5.4 [INFO] [stderr] Compiling toml_edit v0.22.27 [INFO] [stderr] Compiling serde_yaml v0.9.34+deprecated [INFO] [stderr] Compiling chrono v0.4.41 [INFO] [stderr] Compiling ring v0.17.14 [INFO] [stderr] Compiling clap v4.5.40 [INFO] [stderr] Compiling toml v0.8.23 [INFO] [stderr] Compiling config v0.14.1 [INFO] [stderr] Compiling rustls-webpki v0.103.3 [INFO] [stderr] Compiling hyper v1.6.0 [INFO] [stderr] Compiling tower v0.5.2 [INFO] [stderr] Compiling tower-http v0.6.6 [INFO] [stderr] Compiling hyper-util v0.1.14 [INFO] [stderr] Compiling tokio-rustls v0.26.2 [INFO] [stderr] Compiling hyper-rustls v0.27.7 [INFO] [stderr] Compiling reqwest v0.12.20 [INFO] [stderr] Compiling raid v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused variable: `duplicate_result` [INFO] [stdout] --> src/ai.rs:996:33 [INFO] [stdout] | [INFO] [stdout] 996 | ... if let Some(duplicate_result) = self.check_and_handle_duplicate_tool_call(&tool, &namespace, &pod, &service, &lines).await { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_duplicate_result` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `duplicate_result` [INFO] [stdout] --> src/ai.rs:1147:33 [INFO] [stdout] | [INFO] [stdout] 1147 | ... if let Some(duplicate_result) = self.check_and_handle_duplicate_tool_call(&tool, &namespace, &pod, &service, &lines).await { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_duplicate_result` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `indicates_completion` [INFO] [stdout] --> src/ai.rs:1176:25 [INFO] [stdout] | [INFO] [stdout] 1176 | let indicates_completion = analysis_lower.contains("no additional") || [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_indicates_completion` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/ai.rs:1434:29 [INFO] [stdout] | [INFO] [stdout] 1434 | let mut namespace = self.extract_arg(&parts, "--namespace"); [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: unused variable: `verbose` [INFO] [stdout] --> src/output/mod.rs:74:5 [INFO] [stdout] | [INFO] [stdout] 74 | verbose: bool, [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_verbose` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `conversation_history` is never read [INFO] [stdout] --> src/ai.rs:59:5 [INFO] [stdout] | [INFO] [stdout] 56 | pub struct AIClient { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 59 | conversation_history: Arc>>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `duplicate_result` [INFO] [stdout] --> src/ai.rs:996:33 [INFO] [stdout] | [INFO] [stdout] 996 | ... if let Some(duplicate_result) = self.check_and_handle_duplicate_tool_call(&tool, &namespace, &pod, &service, &lines).await { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_duplicate_result` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `duplicate_result` [INFO] [stdout] --> src/ai.rs:1147:33 [INFO] [stdout] | [INFO] [stdout] 1147 | ... if let Some(duplicate_result) = self.check_and_handle_duplicate_tool_call(&tool, &namespace, &pod, &service, &lines).await { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_duplicate_result` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `indicates_completion` [INFO] [stdout] --> src/ai.rs:1176:25 [INFO] [stdout] | [INFO] [stdout] 1176 | let indicates_completion = analysis_lower.contains("no additional") || [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_indicates_completion` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/ai.rs:1434:29 [INFO] [stdout] | [INFO] [stdout] 1434 | let mut namespace = self.extract_arg(&parts, "--namespace"); [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: unused variable: `verbose` [INFO] [stdout] --> src/output/mod.rs:74:5 [INFO] [stdout] | [INFO] [stdout] 74 | verbose: bool, [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_verbose` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `analyze_with_known_issues` and `answer_question` are never used [INFO] [stdout] --> src/ai.rs:13:14 [INFO] [stdout] | [INFO] [stdout] 11 | pub trait AIProvider: Send + Sync { [INFO] [stdout] | ---------- methods in this trait [INFO] [stdout] 12 | async fn analyze(&self, input: &str) -> Result; [INFO] [stdout] 13 | async fn analyze_with_known_issues( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 19 | async fn answer_question( [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `conversation_history` and `known_issues` are never read [INFO] [stdout] --> src/ai.rs:59:5 [INFO] [stdout] | [INFO] [stdout] 56 | pub struct AIClient { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 59 | conversation_history: Arc>>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 60 | known_issues: Arc, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_env` is never used [INFO] [stdout] --> src/ai.rs:80:18 [INFO] [stdout] | [INFO] [stdout] 69 | impl AIClient { [INFO] [stdout] | ------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 80 | pub async fn from_env() -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `answer_question_openai`, `answer_question_anthropic`, `answer_question_local`, and `try_ollama_question` are never used [INFO] [stdout] --> src/ai.rs:497:14 [INFO] [stdout] | [INFO] [stdout] 241 | impl AIClient { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 497 | async fn answer_question_openai( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 567 | async fn answer_question_anthropic( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 633 | async fn answer_question_local( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 659 | async fn try_ollama_question( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_ai_provider` is never used [INFO] [stdout] --> src/ai.rs:742:14 [INFO] [stdout] | [INFO] [stdout] 742 | pub async fn create_ai_provider() -> Result, AIError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `tool_calls` and `timestamp` are never read [INFO] [stdout] --> src/ai.rs:792:9 [INFO] [stdout] | [INFO] [stdout] 789 | pub struct AIAgentMessage { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 792 | pub tool_calls: Vec, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 793 | pub timestamp: std::time::SystemTime, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AIAgentMessage` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `tool_name`, `arguments`, and `result` are never read [INFO] [stdout] --> src/ai.rs:806:9 [INFO] [stdout] | [INFO] [stdout] 805 | pub struct AIToolCall { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 806 | pub tool_name: String, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 807 | pub arguments: std::collections::HashMap, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 808 | pub result: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AIToolCall` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `pause_on_limit`, `allow_user_continuation`, and `verbose_logging` are never read [INFO] [stdout] --> src/ai.rs:814:9 [INFO] [stdout] | [INFO] [stdout] 812 | pub struct AIAgentConfig { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] 813 | pub max_tool_calls: usize, [INFO] [stdout] 814 | pub pause_on_limit: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 815 | pub allow_user_continuation: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 816 | pub verbose_logging: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AIAgentConfig` 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: variant `Error` is never constructed [INFO] [stdout] --> src/ai.rs:835:5 [INFO] [stdout] | [INFO] [stdout] 831 | pub enum AIAgentResult { [INFO] [stdout] | ------------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 835 | Error { error: AIError, tool_calls_used: usize }, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AIAgentResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_conversation_history` is never used [INFO] [stdout] --> src/ai.rs:1827:12 [INFO] [stdout] | [INFO] [stdout] 838 | impl AIAgent { [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 1827 | pub fn get_conversation_history(&self) -> &[AIAgentMessage] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `as_str` is never used [INFO] [stdout] --> src/cli.rs:147:12 [INFO] [stdout] | [INFO] [stdout] 146 | impl AIProvider { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] 147 | pub fn as_str(&self) -> &'static str { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_default_model`, `get_model`, `is_full_check`, and `get_check_component` are never used [INFO] [stdout] --> src/cli.rs:418:12 [INFO] [stdout] | [INFO] [stdout] 416 | impl Cli { [INFO] [stdout] | -------- methods in this implementation [INFO] [stdout] 417 | /// Get the default model for the selected AI provider [INFO] [stdout] 418 | pub fn get_default_model(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 427 | pub fn get_model(&self) -> String { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 434 | pub fn is_full_check(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 445 | pub fn get_check_component(&self) -> CheckComponent { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `AnalysisType` is never used [INFO] [stdout] --> src/commands/ai.rs:9:10 [INFO] [stdout] | [INFO] [stdout] 9 | pub enum AnalysisType { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `run_question_answering_with_config` is never used [INFO] [stdout] --> src/commands/ai.rs:16:14 [INFO] [stdout] | [INFO] [stdout] 16 | pub async fn run_question_answering_with_config( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `run_ai_agent_mode` is never used [INFO] [stdout] --> src/commands/ai.rs:72:14 [INFO] [stdout] | [INFO] [stdout] 72 | pub async fn run_ai_agent_mode( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `run_unified_ai_analysis` is never used [INFO] [stdout] --> src/commands/ai.rs:209:14 [INFO] [stdout] | [INFO] [stdout] 209 | pub async fn run_unified_ai_analysis( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_debug_result` is never used [INFO] [stdout] --> src/commands/debug.rs:15:8 [INFO] [stdout] | [INFO] [stdout] 15 | pub fn print_debug_result(result: &DebugToolResult) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_output_format` is never used [INFO] [stdout] --> src/config.rs:220:12 [INFO] [stdout] | [INFO] [stdout] 91 | impl RaidConfig { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 220 | pub fn get_output_format(&self) -> OutputFormat { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Database` is never constructed [INFO] [stdout] --> src/database.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Database { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `init_tables`, `store_check`, and `get_recent_checks` are never used [INFO] [stdout] --> src/database.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 9 | impl Database { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] 10 | pub fn new>(path: P) -> Result { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 17 | fn init_tables(&self) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 34 | pub fn store_check(&self, system_info: &SystemInfo, analysis: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 45 | pub fn get_recent_checks(&self, limit: i64) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `IssueMatch` is never constructed [INFO] [stdout] --> src/known_issues.rs:49:12 [INFO] [stdout] | [INFO] [stdout] 49 | pub struct IssueMatch { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `add_issue`, `match_issues`, `format_issue_for_ai`, and `get_relevant_issues_for_context` are never used [INFO] [stdout] --> src/known_issues.rs:69:18 [INFO] [stdout] | [INFO] [stdout] 60 | impl KnownIssuesDatabase { [INFO] [stdout] | ------------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 69 | pub async fn add_issue(&self, issue: KnownIssue) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 106 | pub async fn match_issues( [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 602 | pub async fn format_issue_for_ai(&self, issue: &KnownIssue) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 621 | pub async fn get_relevant_issues_for_context( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SystemHealthReport` is never constructed [INFO] [stdout] --> src/output/mod.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct SystemHealthReport { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SystemStatus` is never constructed [INFO] [stdout] --> src/output/mod.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct SystemStatus { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ServiceStatus` is never constructed [INFO] [stdout] --> src/output/mod.rs:24:12 [INFO] [stdout] | [INFO] [stdout] 24 | pub struct ServiceStatus { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LogStatus` is never constructed [INFO] [stdout] --> src/output/mod.rs:32:12 [INFO] [stdout] | [INFO] [stdout] 32 | pub struct LogStatus { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LogEntry` is never constructed [INFO] [stdout] --> src/output/mod.rs:40:12 [INFO] [stdout] | [INFO] [stdout] 40 | pub struct LogEntry { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ContainerStatus` is never constructed [INFO] [stdout] --> src/output/mod.rs:48:12 [INFO] [stdout] | [INFO] [stdout] 48 | pub struct ContainerStatus { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ContainerInfo` is never constructed [INFO] [stdout] --> src/output/mod.rs:57:12 [INFO] [stdout] | [INFO] [stdout] 57 | pub struct ContainerInfo { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Issue` is never constructed [INFO] [stdout] --> src/output/mod.rs:64:12 [INFO] [stdout] | [INFO] [stdout] 64 | pub struct Issue { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_system_health_report` is never used [INFO] [stdout] --> src/output/mod.rs:71:8 [INFO] [stdout] | [INFO] [stdout] 71 | pub fn create_system_health_report( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_json` is never used [INFO] [stdout] --> src/output/mod.rs:232:8 [INFO] [stdout] | [INFO] [stdout] 232 | pub fn print_json(report: &SystemHealthReport) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_yaml` is never used [INFO] [stdout] --> src/output/mod.rs:239:8 [INFO] [stdout] | [INFO] [stdout] 239 | pub fn print_yaml(report: &SystemHealthReport) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_output` is never used [INFO] [stdout] --> src/output/printers.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn print_output( [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_output_with_config` is never used [INFO] [stdout] --> src/output/printers.rs:28:8 [INFO] [stdout] | [INFO] [stdout] 28 | pub fn print_output_with_config( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_system_info` is never used [INFO] [stdout] --> src/output/printers.rs:49:8 [INFO] [stdout] | [INFO] [stdout] 49 | pub fn print_system_info(info: &SystemInfo, analysis: &str, verbose: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_container_info` is never used [INFO] [stdout] --> src/output/printers.rs:103:8 [INFO] [stdout] | [INFO] [stdout] 103 | pub fn print_container_info(info: &SystemInfo, analysis: &str, verbose: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_kubernetes_info` is never used [INFO] [stdout] --> src/output/printers.rs:154:8 [INFO] [stdout] | [INFO] [stdout] 154 | pub fn print_kubernetes_info(info: &SystemInfo, analysis: &str, verbose: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_cgroup_info` is never used [INFO] [stdout] --> src/output/printers.rs:188:8 [INFO] [stdout] | [INFO] [stdout] 188 | pub fn print_cgroup_info(info: &SystemInfo, analysis: &str, verbose: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_systemd_info` is never used [INFO] [stdout] --> src/output/printers.rs:213:8 [INFO] [stdout] | [INFO] [stdout] 213 | pub fn print_systemd_info(info: &SystemInfo, analysis: &str, verbose: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_journal_info` is never used [INFO] [stdout] --> src/output/printers.rs:261:8 [INFO] [stdout] | [INFO] [stdout] 261 | pub fn print_journal_info(info: &SystemInfo, analysis: &str, verbose: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_results_dry_run` is never used [INFO] [stdout] --> src/output/printers.rs:351:8 [INFO] [stdout] | [INFO] [stdout] 351 | pub fn print_results_dry_run(info: &SystemInfo) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_common_non_critical_error` is never used [INFO] [stdout] --> src/output/printers.rs:469:8 [INFO] [stdout] | [INFO] [stdout] 469 | pub fn is_common_non_critical_error(message: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_system_info_dry_run` is never used [INFO] [stdout] --> src/output/printers.rs:501:8 [INFO] [stdout] | [INFO] [stdout] 501 | pub fn print_system_info_dry_run(info: &SystemInfo) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_container_info_dry_run` is never used [INFO] [stdout] --> src/output/printers.rs:509:8 [INFO] [stdout] | [INFO] [stdout] 509 | pub fn print_container_info_dry_run(info: &SystemInfo) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_kubernetes_info_dry_run` is never used [INFO] [stdout] --> src/output/printers.rs:533:8 [INFO] [stdout] | [INFO] [stdout] 533 | pub fn print_kubernetes_info_dry_run(info: &SystemInfo) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_cgroup_info_dry_run` is never used [INFO] [stdout] --> src/output/printers.rs:556:8 [INFO] [stdout] | [INFO] [stdout] 556 | pub fn print_cgroup_info_dry_run(info: &SystemInfo) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_systemd_info_dry_run` is never used [INFO] [stdout] --> src/output/printers.rs:571:8 [INFO] [stdout] | [INFO] [stdout] 571 | pub fn print_systemd_info_dry_run(info: &SystemInfo) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_journal_info_dry_run` is never used [INFO] [stdout] --> src/output/printers.rs:602:8 [INFO] [stdout] | [INFO] [stdout] 602 | pub fn print_journal_info_dry_run(info: &SystemInfo) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SystemInfo` is never constructed [INFO] [stdout] --> src/sysinfo.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct SystemInfo { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `KubernetesInfo` is never constructed [INFO] [stdout] --> src/sysinfo.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 21 | pub struct KubernetesInfo { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CgroupInfo` is never constructed [INFO] [stdout] --> src/sysinfo.rs:30:12 [INFO] [stdout] | [INFO] [stdout] 30 | pub struct CgroupInfo { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SystemdInfo` is never constructed [INFO] [stdout] --> src/sysinfo.rs:39:12 [INFO] [stdout] | [INFO] [stdout] 39 | pub struct SystemdInfo { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SystemdUnit` is never constructed [INFO] [stdout] --> src/sysinfo.rs:46:12 [INFO] [stdout] | [INFO] [stdout] 46 | pub struct SystemdUnit { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `JournalInfo` is never constructed [INFO] [stdout] --> src/sysinfo.rs:53:12 [INFO] [stdout] | [INFO] [stdout] 53 | pub struct JournalInfo { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `JournalEntry` is never constructed [INFO] [stdout] --> src/sysinfo.rs:60:12 [INFO] [stdout] | [INFO] [stdout] 60 | pub struct JournalEntry { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ContainerInfo` is never constructed [INFO] [stdout] --> src/sysinfo.rs:68:12 [INFO] [stdout] | [INFO] [stdout] 68 | pub struct ContainerInfo { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `collect_system_info` is never used [INFO] [stdout] --> src/sysinfo.rs:124:8 [INFO] [stdout] | [INFO] [stdout] 124 | pub fn collect_system_info() -> SystemInfo { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `collect_kubernetes_info` is never used [INFO] [stdout] --> src/sysinfo.rs:237:4 [INFO] [stdout] | [INFO] [stdout] 237 | fn collect_kubernetes_info() -> KubernetesInfo { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `collect_cgroup_info` is never used [INFO] [stdout] --> src/sysinfo.rs:276:4 [INFO] [stdout] | [INFO] [stdout] 276 | fn collect_cgroup_info() -> CgroupInfo { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `collect_systemd_info` is never used [INFO] [stdout] --> src/sysinfo.rs:319:4 [INFO] [stdout] | [INFO] [stdout] 319 | fn collect_systemd_info() -> SystemdInfo { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `collect_journal_info` is never used [INFO] [stdout] --> src/sysinfo.rs:376:4 [INFO] [stdout] | [INFO] [stdout] 376 | fn collect_journal_info() -> JournalInfo { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_journal_output` is never used [INFO] [stdout] --> src/sysinfo.rs:410:4 [INFO] [stdout] | [INFO] [stdout] 410 | fn parse_journal_output(output: &[u8]) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `collect_container_info` is never used [INFO] [stdout] --> src/sysinfo.rs:485:4 [INFO] [stdout] | [INFO] [stdout] 485 | fn collect_container_info() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_available_tools` is never used [INFO] [stdout] --> src/tools/mod.rs:35:8 [INFO] [stdout] | [INFO] [stdout] 21 | pub trait ToolAvailability { [INFO] [stdout] | ---------------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 35 | fn get_available_tools(&self) -> Vec; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `category` and `missing_dependencies` are never read [INFO] [stdout] --> src/tools/mod.rs:58:9 [INFO] [stdout] | [INFO] [stdout] 57 | pub struct AvailableToolInfo { [INFO] [stdout] | ----------------- fields in this struct [INFO] [stdout] 58 | pub category: ToolCategory, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 61 | pub missing_dependencies: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AvailableToolInfo` 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 `KubernetesDebugInfo` is never constructed [INFO] [stdout] --> src/tools/mod.rs:76:12 [INFO] [stdout] | [INFO] [stdout] 76 | pub struct KubernetesDebugInfo { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PodInfo` is never constructed [INFO] [stdout] --> src/tools/mod.rs:85:12 [INFO] [stdout] | [INFO] [stdout] 85 | pub struct PodInfo { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ServiceInfo` is never constructed [INFO] [stdout] --> src/tools/mod.rs:97:12 [INFO] [stdout] | [INFO] [stdout] 97 | pub struct ServiceInfo { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `NodeInfo` is never constructed [INFO] [stdout] --> src/tools/mod.rs:108:12 [INFO] [stdout] | [INFO] [stdout] 108 | pub struct NodeInfo { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `EventInfo` is never constructed [INFO] [stdout] --> src/tools/mod.rs:119:12 [INFO] [stdout] | [INFO] [stdout] 119 | pub struct EventInfo { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `NamespaceInfo` is never constructed [INFO] [stdout] --> src/tools/mod.rs:128:12 [INFO] [stdout] | [INFO] [stdout] 128 | pub struct NamespaceInfo { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `JournalDebugInfo` is never constructed [INFO] [stdout] --> src/tools/mod.rs:136:12 [INFO] [stdout] | [INFO] [stdout] 136 | pub struct JournalDebugInfo { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `JournalLogEntry` is never constructed [INFO] [stdout] --> src/tools/mod.rs:144:12 [INFO] [stdout] | [INFO] [stdout] 144 | pub struct JournalLogEntry { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `kubernetes_enabled` and `kubectl_path` are never read [INFO] [stdout] --> src/tools/mod.rs:153:9 [INFO] [stdout] | [INFO] [stdout] 152 | pub struct DebugTools { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 153 | pub kubernetes_enabled: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 154 | pub kubectl_path: Option, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/tools/arch_debug.rs:6:18 [INFO] [stdout] | [INFO] [stdout] 4 | impl DebugTools { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] 5 | /// List all installed packages [INFO] [stdout] 6 | pub async fn run_pacman_list_packages(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 45 | pub async fn run_pacman_orphans(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 84 | pub async fn run_pacman_check_files(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 123 | pub async fn run_checkupdates(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 161 | pub async fn run_paccache_info(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 200 | pub async fn run_systemd_analyze_time(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 239 | pub async fn run_systemd_analyze_critical_chain(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 278 | pub async fn run_systemd_analyze_blame(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 317 | pub async fn run_journalctl_list_boots(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 356 | pub async fn run_lsmod(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 433 | pub async fn run_needs_reboot(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 482 | pub async fn run_pacman_mirrorlist(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 523 | pub async fn run_aur_helper_info(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/tools/container_info.rs:5:18 [INFO] [stdout] | [INFO] [stdout] 4 | impl DebugTools { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] 5 | pub async fn run_cat_proc_cgroups(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | pub async fn run_ls_cgroup(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 81 | pub async fn run_cat_proc_self_cgroup(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 119 | pub async fn run_cat_proc_self_mountinfo(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 157 | pub async fn run_lsns(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 195 | pub async fn run_cat_proc_self_status(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 233 | pub async fn run_cat_proc_self_ns(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 314 | pub async fn run_docker_ps_running(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 356 | pub async fn run_docker_inspect(&self, container_name: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 405 | pub async fn run_docker_logs( [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/tools/ebpf_debug.rs:6:18 [INFO] [stdout] | [INFO] [stdout] 4 | impl DebugTools { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] 5 | /// List all loaded BPF programs [INFO] [stdout] 6 | pub async fn run_bpftool_prog_list(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 45 | pub async fn run_bpftool_prog_show(&self, prog_id: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 84 | pub async fn run_bpftool_prog_dump_xlated(&self, prog_id: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 123 | pub async fn run_bpftool_prog_dump_jited(&self, prog_id: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 162 | pub async fn run_bpftool_map_list(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 201 | pub async fn run_bpftool_map_show(&self, map_id: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 240 | pub async fn run_bpftool_map_dump(&self, map_id: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 279 | pub async fn run_bpftool_link_list(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 318 | pub async fn run_bpftool_feature_probe(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 357 | pub async fn run_bpftool_net_list(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 396 | pub async fn run_bpftool_cgroup_list(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 435 | pub async fn run_bpftool_btf_list(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 474 | pub async fn run_bpf_mount_check(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 513 | pub async fn run_bpf_ls_pinned(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 552 | pub async fn run_bpf_kernel_config(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 610 | pub async fn run_bpftrace_syscalls(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 649 | pub async fn run_bpftrace_list_tracepoints(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 688 | pub async fn run_bpf_jit_status(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/tools/kubernetes_debug.rs:8:18 [INFO] [stdout] | [INFO] [stdout] 4 | impl DebugTools { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 8 | pub async fn run_kubectl_get_deployments(&self, namespace: Option<&str>) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 59 | pub async fn run_kubectl_get_configmaps(&self, namespace: Option<&str>) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 110 | pub async fn run_kubectl_logs(&self, pod_name: &str, namespace: Option<&str>, lines: Option) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 165 | pub async fn run_kubectl_top_pods(&self, namespace: Option<&str>) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | pub async fn run_kubectl_top_nodes(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 294 | pub async fn run_kubectl_get_pv(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 333 | pub async fn run_kubectl_get_pvc(&self, namespace: Option<&str>) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 386 | pub async fn run_kubelet_status(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 425 | pub async fn run_kubelet_logs(&self, lines: Option) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 472 | pub async fn run_kubelet_config(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 520 | pub async fn run_etcd_cluster_health(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 559 | pub async fn run_etcd_member_list(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 598 | pub async fn run_etcd_endpoint_health(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 637 | pub async fn run_etcd_endpoint_status(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `run_ethtool`, `run_iperf3_server_check`, `run_network_namespaces`, `run_tcpdump_sample`, `run_bridge_info`, and `run_netstat_legacy` are never used [INFO] [stdout] --> src/tools/network_debug.rs:271:18 [INFO] [stdout] | [INFO] [stdout] 4 | impl DebugTools { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 271 | pub async fn run_ethtool(&self, interface: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 386 | pub async fn run_iperf3_server_check(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 429 | pub async fn run_network_namespaces(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 467 | pub async fn run_tcpdump_sample(&self, interface: Option<&str>) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 507 | pub async fn run_bridge_info(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 664 | pub async fn run_netstat_legacy(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/tools/performance_debug.rs:43:18 [INFO] [stdout] | [INFO] [stdout] 4 | impl DebugTools { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 43 | pub async fn run_vmstat(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 81 | pub async fn run_sar(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 119 | pub async fn run_mpstat(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 157 | pub async fn run_iotop(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 195 | pub async fn run_htop(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 233 | pub async fn run_nethogs(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 271 | pub async fn run_perf(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 309 | pub async fn run_sysbench(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/tools/process_debug.rs:5:18 [INFO] [stdout] | [INFO] [stdout] 4 | impl DebugTools { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] 5 | pub async fn run_lsof(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | pub async fn run_lsof_pid(&self, pid: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 81 | pub async fn run_strace(&self, pid: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 121 | pub async fn run_pmap(&self, pid: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 159 | pub async fn run_pidstat(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 197 | pub async fn run_pgrep(&self, pattern: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 235 | pub async fn run_pkill(&self, pattern: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 273 | pub async fn run_nice(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/tools/security_debug.rs:5:18 [INFO] [stdout] | [INFO] [stdout] 4 | impl DebugTools { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] 5 | pub async fn run_auditctl(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | pub async fn run_ausearch(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 81 | pub async fn run_sestatus(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 118 | pub async fn run_getenforce(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 155 | pub async fn run_semodule(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 193 | pub async fn run_ps_ef(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 231 | pub async fn run_w(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 268 | pub async fn run_last(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 305 | pub async fn run_fail2ban(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 343 | pub async fn run_clamscan(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/tools/storage_debug.rs:5:18 [INFO] [stdout] | [INFO] [stdout] 4 | impl DebugTools { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] 5 | pub async fn run_iostat(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | pub async fn run_smartctl(&self, device: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 81 | pub async fn run_fdisk(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 119 | pub async fn run_lsblk(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 157 | pub async fn run_mount(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 194 | pub async fn run_du(&self, path: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 232 | pub async fn run_find_large_files(&self, path: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 272 | pub async fn run_hdparm(&self, device: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 310 | pub async fn run_blkid(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/ui.rs:42:8 [INFO] [stdout] | [INFO] [stdout] 10 | impl UIFormatter { [INFO] [stdout] | ---------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 42 | fn format_header(&self, text: &str, level: HeaderLevel) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 58 | fn format_status(&self, status: &str, is_healthy: bool) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 72 | fn format_info_line(&self, label: &str, value: &str, icon: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 85 | fn format_warning(&self, text: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 93 | fn format_error(&self, text: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 101 | fn format_success(&self, text: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 109 | fn format_metric(&self, current: &str, total: &str, label: &str, icon: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `HeaderLevel` is never used [INFO] [stdout] --> src/ui.rs:124:6 [INFO] [stdout] | [INFO] [stdout] 124 | enum HeaderLevel { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_results` is never used [INFO] [stdout] --> src/ui.rs:136:8 [INFO] [stdout] | [INFO] [stdout] 136 | pub fn print_results(info: &SystemInfo, analysis: &str, verbose: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_results_with_formatter` is never used [INFO] [stdout] --> src/ui.rs:141:8 [INFO] [stdout] | [INFO] [stdout] 141 | pub fn print_results_with_formatter( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_common_non_critical_error` is never used [INFO] [stdout] --> src/ui.rs:364:4 [INFO] [stdout] | [INFO] [stdout] 364 | fn is_common_non_critical_error(message: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_history` is never used [INFO] [stdout] --> src/ui.rs:396:8 [INFO] [stdout] | [INFO] [stdout] 396 | pub fn print_history(checks: &[(i64, String, SystemInfo, String)]) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 54.56s [INFO] running `Command { std: "docker" "inspect" "3b2da58cf735961e4742f26985b61b2d512d5d2fbc8f29b4b493bbdbcf9fa35d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3b2da58cf735961e4742f26985b61b2d512d5d2fbc8f29b4b493bbdbcf9fa35d", kill_on_drop: false }` [INFO] [stdout] 3b2da58cf735961e4742f26985b61b2d512d5d2fbc8f29b4b493bbdbcf9fa35d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+c7f6aa2869acdbf014d094c6e427e554e160b6db" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 27b631fd8472dbb2e57a0961f6fd6c2b44b142748986cccd7ea00ee882e23a92 [INFO] running `Command { std: "docker" "start" "-a" "27b631fd8472dbb2e57a0961f6fd6c2b44b142748986cccd7ea00ee882e23a92", kill_on_drop: false }` [INFO] [stderr] Compiling tower-http v0.6.6 [INFO] [stderr] Compiling rusqlite v0.36.0 [INFO] [stderr] Compiling config v0.14.1 [INFO] [stderr] Compiling reqwest v0.12.20 [INFO] [stderr] Compiling raid v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused variable: `duplicate_result` [INFO] [stdout] --> src/ai.rs:996:33 [INFO] [stdout] | [INFO] [stdout] 996 | ... if let Some(duplicate_result) = self.check_and_handle_duplicate_tool_call(&tool, &namespace, &pod, &service, &lines).await { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_duplicate_result` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `duplicate_result` [INFO] [stdout] --> src/ai.rs:1147:33 [INFO] [stdout] | [INFO] [stdout] 1147 | ... if let Some(duplicate_result) = self.check_and_handle_duplicate_tool_call(&tool, &namespace, &pod, &service, &lines).await { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_duplicate_result` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `indicates_completion` [INFO] [stdout] --> src/ai.rs:1176:25 [INFO] [stdout] | [INFO] [stdout] 1176 | let indicates_completion = analysis_lower.contains("no additional") || [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_indicates_completion` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/ai.rs:1434:29 [INFO] [stdout] | [INFO] [stdout] 1434 | let mut namespace = self.extract_arg(&parts, "--namespace"); [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: unused variable: `duplicate_result` [INFO] [stdout] --> src/ai.rs:996:33 [INFO] [stdout] | [INFO] [stdout] 996 | ... if let Some(duplicate_result) = self.check_and_handle_duplicate_tool_call(&tool, &namespace, &pod, &service, &lines).await { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_duplicate_result` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `duplicate_result` [INFO] [stdout] --> src/ai.rs:1147:33 [INFO] [stdout] | [INFO] [stdout] 1147 | ... if let Some(duplicate_result) = self.check_and_handle_duplicate_tool_call(&tool, &namespace, &pod, &service, &lines).await { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_duplicate_result` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `indicates_completion` [INFO] [stdout] --> src/ai.rs:1176:25 [INFO] [stdout] | [INFO] [stdout] 1176 | let indicates_completion = analysis_lower.contains("no additional") || [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_indicates_completion` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/ai.rs:1434:29 [INFO] [stdout] | [INFO] [stdout] 1434 | let mut namespace = self.extract_arg(&parts, "--namespace"); [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: unused variable: `verbose` [INFO] [stdout] --> src/output/mod.rs:74:5 [INFO] [stdout] | [INFO] [stdout] 74 | verbose: bool, [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_verbose` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `conversation_history` is never read [INFO] [stdout] --> src/ai.rs:59:5 [INFO] [stdout] | [INFO] [stdout] 56 | pub struct AIClient { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 59 | conversation_history: Arc>>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `verbose` [INFO] [stdout] --> src/output/mod.rs:74:5 [INFO] [stdout] | [INFO] [stdout] 74 | verbose: bool, [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_verbose` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/tools/mod.rs:622:13 [INFO] [stdout] | [INFO] [stdout] 622 | let mut debug_tools_with_check = DebugTools::initialize_with_availability_check(); [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/tools/mod.rs:774:13 [INFO] [stdout] | [INFO] [stdout] 774 | let mut debug_tools = DebugTools::initialize_with_availability_check(); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `conversation_history` is never read [INFO] [stdout] --> src/ai.rs:59:5 [INFO] [stdout] | [INFO] [stdout] 56 | pub struct AIClient { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 59 | conversation_history: Arc>>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/tools/ebpf_debug.rs:739:17 [INFO] [stdout] | [INFO] [stdout] 739 | assert!(result.execution_time_ms >= 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_comparisons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/tools/ebpf_debug.rs:757:17 [INFO] [stdout] | [INFO] [stdout] 757 | assert!(result.execution_time_ms >= 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/tools/ebpf_debug.rs:767:17 [INFO] [stdout] | [INFO] [stdout] 767 | assert!(result.execution_time_ms >= 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/tools/ebpf_debug.rs:777:17 [INFO] [stdout] | [INFO] [stdout] 777 | assert!(result.execution_time_ms >= 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/tools/ebpf_debug.rs:787:17 [INFO] [stdout] | [INFO] [stdout] 787 | assert!(result.execution_time_ms >= 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/tools/ebpf_debug.rs:797:17 [INFO] [stdout] | [INFO] [stdout] 797 | assert!(result.execution_time_ms >= 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/tools/ebpf_debug.rs:807:17 [INFO] [stdout] | [INFO] [stdout] 807 | assert!(result.execution_time_ms >= 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/tools/network_debug.rs:1221:17 [INFO] [stdout] | [INFO] [stdout] 1221 | assert!(result.execution_time_ms >= 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/tools/network_debug.rs:1224:17 [INFO] [stdout] | [INFO] [stdout] 1224 | assert!(result.execution_time_ms >= 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/tools/network_debug.rs:1355:21 [INFO] [stdout] | [INFO] [stdout] 1355 | assert!(result.execution_time_ms >= 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/tools/network_debug.rs:1386:17 [INFO] [stdout] | [INFO] [stdout] 1386 | assert!(result.execution_time_ms >= 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `duplicate_result` [INFO] [stdout] --> src/ai.rs:996:33 [INFO] [stdout] | [INFO] [stdout] 996 | ... if let Some(duplicate_result) = self.check_and_handle_duplicate_tool_call(&tool, &namespace, &pod, &service, &lines).await { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_duplicate_result` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `duplicate_result` [INFO] [stdout] --> src/ai.rs:1147:33 [INFO] [stdout] | [INFO] [stdout] 1147 | ... if let Some(duplicate_result) = self.check_and_handle_duplicate_tool_call(&tool, &namespace, &pod, &service, &lines).await { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_duplicate_result` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `indicates_completion` [INFO] [stdout] --> src/ai.rs:1176:25 [INFO] [stdout] | [INFO] [stdout] 1176 | let indicates_completion = analysis_lower.contains("no additional") || [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_indicates_completion` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/ai.rs:1434:29 [INFO] [stdout] | [INFO] [stdout] 1434 | let mut namespace = self.extract_arg(&parts, "--namespace"); [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: unused variable: `duplicate_result` [INFO] [stdout] --> src/ai.rs:996:33 [INFO] [stdout] | [INFO] [stdout] 996 | ... if let Some(duplicate_result) = self.check_and_handle_duplicate_tool_call(&tool, &namespace, &pod, &service, &lines).await { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_duplicate_result` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `duplicate_result` [INFO] [stdout] --> src/ai.rs:1147:33 [INFO] [stdout] | [INFO] [stdout] 1147 | ... if let Some(duplicate_result) = self.check_and_handle_duplicate_tool_call(&tool, &namespace, &pod, &service, &lines).await { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_duplicate_result` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `indicates_completion` [INFO] [stdout] --> src/ai.rs:1176:25 [INFO] [stdout] | [INFO] [stdout] 1176 | let indicates_completion = analysis_lower.contains("no additional") || [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_indicates_completion` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/ai.rs:1434:29 [INFO] [stdout] | [INFO] [stdout] 1434 | let mut namespace = self.extract_arg(&parts, "--namespace"); [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: unused variable: `verbose` [INFO] [stdout] --> src/output/mod.rs:74:5 [INFO] [stdout] | [INFO] [stdout] 74 | verbose: bool, [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_verbose` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `analyze_with_known_issues` and `answer_question` are never used [INFO] [stdout] --> src/ai.rs:13:14 [INFO] [stdout] | [INFO] [stdout] 11 | pub trait AIProvider: Send + Sync { [INFO] [stdout] | ---------- methods in this trait [INFO] [stdout] 12 | async fn analyze(&self, input: &str) -> Result; [INFO] [stdout] 13 | async fn analyze_with_known_issues( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 19 | async fn answer_question( [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `conversation_history` and `known_issues` are never read [INFO] [stdout] --> src/ai.rs:59:5 [INFO] [stdout] | [INFO] [stdout] 56 | pub struct AIClient { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 59 | conversation_history: Arc>>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 60 | known_issues: Arc, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_env` is never used [INFO] [stdout] --> src/ai.rs:80:18 [INFO] [stdout] | [INFO] [stdout] 69 | impl AIClient { [INFO] [stdout] | ------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 80 | pub async fn from_env() -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `answer_question_openai`, `answer_question_anthropic`, `answer_question_local`, and `try_ollama_question` are never used [INFO] [stdout] --> src/ai.rs:497:14 [INFO] [stdout] | [INFO] [stdout] 241 | impl AIClient { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 497 | async fn answer_question_openai( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 567 | async fn answer_question_anthropic( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 633 | async fn answer_question_local( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 659 | async fn try_ollama_question( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_ai_provider` is never used [INFO] [stdout] --> src/ai.rs:742:14 [INFO] [stdout] | [INFO] [stdout] 742 | pub async fn create_ai_provider() -> Result, AIError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `tool_calls` and `timestamp` are never read [INFO] [stdout] --> src/ai.rs:792:9 [INFO] [stdout] | [INFO] [stdout] 789 | pub struct AIAgentMessage { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 792 | pub tool_calls: Vec, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 793 | pub timestamp: std::time::SystemTime, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AIAgentMessage` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `tool_name`, `arguments`, and `result` are never read [INFO] [stdout] --> src/ai.rs:806:9 [INFO] [stdout] | [INFO] [stdout] 805 | pub struct AIToolCall { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 806 | pub tool_name: String, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 807 | pub arguments: std::collections::HashMap, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 808 | pub result: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AIToolCall` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `pause_on_limit`, `allow_user_continuation`, and `verbose_logging` are never read [INFO] [stdout] --> src/ai.rs:814:9 [INFO] [stdout] | [INFO] [stdout] 812 | pub struct AIAgentConfig { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] 813 | pub max_tool_calls: usize, [INFO] [stdout] 814 | pub pause_on_limit: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 815 | pub allow_user_continuation: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 816 | pub verbose_logging: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AIAgentConfig` 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: variant `Error` is never constructed [INFO] [stdout] --> src/ai.rs:835:5 [INFO] [stdout] | [INFO] [stdout] 831 | pub enum AIAgentResult { [INFO] [stdout] | ------------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 835 | Error { error: AIError, tool_calls_used: usize }, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AIAgentResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_conversation_history` is never used [INFO] [stdout] --> src/ai.rs:1827:12 [INFO] [stdout] | [INFO] [stdout] 838 | impl AIAgent { [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 1827 | pub fn get_conversation_history(&self) -> &[AIAgentMessage] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `as_str` is never used [INFO] [stdout] --> src/cli.rs:147:12 [INFO] [stdout] | [INFO] [stdout] 146 | impl AIProvider { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] 147 | pub fn as_str(&self) -> &'static str { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_default_model`, `get_model`, `is_full_check`, and `get_check_component` are never used [INFO] [stdout] --> src/cli.rs:418:12 [INFO] [stdout] | [INFO] [stdout] 416 | impl Cli { [INFO] [stdout] | -------- methods in this implementation [INFO] [stdout] 417 | /// Get the default model for the selected AI provider [INFO] [stdout] 418 | pub fn get_default_model(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 427 | pub fn get_model(&self) -> String { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 434 | pub fn is_full_check(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 445 | pub fn get_check_component(&self) -> CheckComponent { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `AnalysisType` is never used [INFO] [stdout] --> src/commands/ai.rs:9:10 [INFO] [stdout] | [INFO] [stdout] 9 | pub enum AnalysisType { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `run_question_answering_with_config` is never used [INFO] [stdout] --> src/commands/ai.rs:16:14 [INFO] [stdout] | [INFO] [stdout] 16 | pub async fn run_question_answering_with_config( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `run_ai_agent_mode` is never used [INFO] [stdout] --> src/commands/ai.rs:72:14 [INFO] [stdout] | [INFO] [stdout] 72 | pub async fn run_ai_agent_mode( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `run_unified_ai_analysis` is never used [INFO] [stdout] --> src/commands/ai.rs:209:14 [INFO] [stdout] | [INFO] [stdout] 209 | pub async fn run_unified_ai_analysis( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_debug_result` is never used [INFO] [stdout] --> src/commands/debug.rs:15:8 [INFO] [stdout] | [INFO] [stdout] 15 | pub fn print_debug_result(result: &DebugToolResult) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_output_format` is never used [INFO] [stdout] --> src/config.rs:220:12 [INFO] [stdout] | [INFO] [stdout] 91 | impl RaidConfig { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 220 | pub fn get_output_format(&self) -> OutputFormat { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Database` is never constructed [INFO] [stdout] --> src/database.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Database { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `init_tables`, `store_check`, and `get_recent_checks` are never used [INFO] [stdout] --> src/database.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 9 | impl Database { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] 10 | pub fn new>(path: P) -> Result { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 17 | fn init_tables(&self) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 34 | pub fn store_check(&self, system_info: &SystemInfo, analysis: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 45 | pub fn get_recent_checks(&self, limit: i64) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `IssueMatch` is never constructed [INFO] [stdout] --> src/known_issues.rs:49:12 [INFO] [stdout] | [INFO] [stdout] 49 | pub struct IssueMatch { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `add_issue`, `match_issues`, `format_issue_for_ai`, and `get_relevant_issues_for_context` are never used [INFO] [stdout] --> src/known_issues.rs:69:18 [INFO] [stdout] | [INFO] [stdout] 60 | impl KnownIssuesDatabase { [INFO] [stdout] | ------------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 69 | pub async fn add_issue(&self, issue: KnownIssue) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 106 | pub async fn match_issues( [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 602 | pub async fn format_issue_for_ai(&self, issue: &KnownIssue) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 621 | pub async fn get_relevant_issues_for_context( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SystemHealthReport` is never constructed [INFO] [stdout] --> src/output/mod.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct SystemHealthReport { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SystemStatus` is never constructed [INFO] [stdout] --> src/output/mod.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct SystemStatus { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ServiceStatus` is never constructed [INFO] [stdout] --> src/output/mod.rs:24:12 [INFO] [stdout] | [INFO] [stdout] 24 | pub struct ServiceStatus { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LogStatus` is never constructed [INFO] [stdout] --> src/output/mod.rs:32:12 [INFO] [stdout] | [INFO] [stdout] 32 | pub struct LogStatus { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LogEntry` is never constructed [INFO] [stdout] --> src/output/mod.rs:40:12 [INFO] [stdout] | [INFO] [stdout] 40 | pub struct LogEntry { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ContainerStatus` is never constructed [INFO] [stdout] --> src/output/mod.rs:48:12 [INFO] [stdout] | [INFO] [stdout] 48 | pub struct ContainerStatus { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ContainerInfo` is never constructed [INFO] [stdout] --> src/output/mod.rs:57:12 [INFO] [stdout] | [INFO] [stdout] 57 | pub struct ContainerInfo { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Issue` is never constructed [INFO] [stdout] --> src/output/mod.rs:64:12 [INFO] [stdout] | [INFO] [stdout] 64 | pub struct Issue { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_system_health_report` is never used [INFO] [stdout] --> src/output/mod.rs:71:8 [INFO] [stdout] | [INFO] [stdout] 71 | pub fn create_system_health_report( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_json` is never used [INFO] [stdout] --> src/output/mod.rs:232:8 [INFO] [stdout] | [INFO] [stdout] 232 | pub fn print_json(report: &SystemHealthReport) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_yaml` is never used [INFO] [stdout] --> src/output/mod.rs:239:8 [INFO] [stdout] | [INFO] [stdout] 239 | pub fn print_yaml(report: &SystemHealthReport) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_output` is never used [INFO] [stdout] --> src/output/printers.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn print_output( [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_output_with_config` is never used [INFO] [stdout] --> src/output/printers.rs:28:8 [INFO] [stdout] | [INFO] [stdout] 28 | pub fn print_output_with_config( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_system_info` is never used [INFO] [stdout] --> src/output/printers.rs:49:8 [INFO] [stdout] | [INFO] [stdout] 49 | pub fn print_system_info(info: &SystemInfo, analysis: &str, verbose: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_container_info` is never used [INFO] [stdout] --> src/output/printers.rs:103:8 [INFO] [stdout] | [INFO] [stdout] 103 | pub fn print_container_info(info: &SystemInfo, analysis: &str, verbose: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_kubernetes_info` is never used [INFO] [stdout] --> src/output/printers.rs:154:8 [INFO] [stdout] | [INFO] [stdout] 154 | pub fn print_kubernetes_info(info: &SystemInfo, analysis: &str, verbose: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_cgroup_info` is never used [INFO] [stdout] --> src/output/printers.rs:188:8 [INFO] [stdout] | [INFO] [stdout] 188 | pub fn print_cgroup_info(info: &SystemInfo, analysis: &str, verbose: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_systemd_info` is never used [INFO] [stdout] --> src/output/printers.rs:213:8 [INFO] [stdout] | [INFO] [stdout] 213 | pub fn print_systemd_info(info: &SystemInfo, analysis: &str, verbose: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_journal_info` is never used [INFO] [stdout] --> src/output/printers.rs:261:8 [INFO] [stdout] | [INFO] [stdout] 261 | pub fn print_journal_info(info: &SystemInfo, analysis: &str, verbose: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_results_dry_run` is never used [INFO] [stdout] --> src/output/printers.rs:351:8 [INFO] [stdout] | [INFO] [stdout] 351 | pub fn print_results_dry_run(info: &SystemInfo) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_common_non_critical_error` is never used [INFO] [stdout] --> src/output/printers.rs:469:8 [INFO] [stdout] | [INFO] [stdout] 469 | pub fn is_common_non_critical_error(message: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_system_info_dry_run` is never used [INFO] [stdout] --> src/output/printers.rs:501:8 [INFO] [stdout] | [INFO] [stdout] 501 | pub fn print_system_info_dry_run(info: &SystemInfo) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_container_info_dry_run` is never used [INFO] [stdout] --> src/output/printers.rs:509:8 [INFO] [stdout] | [INFO] [stdout] 509 | pub fn print_container_info_dry_run(info: &SystemInfo) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_kubernetes_info_dry_run` is never used [INFO] [stdout] --> src/output/printers.rs:533:8 [INFO] [stdout] | [INFO] [stdout] 533 | pub fn print_kubernetes_info_dry_run(info: &SystemInfo) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_cgroup_info_dry_run` is never used [INFO] [stdout] --> src/output/printers.rs:556:8 [INFO] [stdout] | [INFO] [stdout] 556 | pub fn print_cgroup_info_dry_run(info: &SystemInfo) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_systemd_info_dry_run` is never used [INFO] [stdout] --> src/output/printers.rs:571:8 [INFO] [stdout] | [INFO] [stdout] 571 | pub fn print_systemd_info_dry_run(info: &SystemInfo) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_journal_info_dry_run` is never used [INFO] [stdout] --> src/output/printers.rs:602:8 [INFO] [stdout] | [INFO] [stdout] 602 | pub fn print_journal_info_dry_run(info: &SystemInfo) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SystemInfo` is never constructed [INFO] [stdout] --> src/sysinfo.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct SystemInfo { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `KubernetesInfo` is never constructed [INFO] [stdout] --> src/sysinfo.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 21 | pub struct KubernetesInfo { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CgroupInfo` is never constructed [INFO] [stdout] --> src/sysinfo.rs:30:12 [INFO] [stdout] | [INFO] [stdout] 30 | pub struct CgroupInfo { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SystemdInfo` is never constructed [INFO] [stdout] --> src/sysinfo.rs:39:12 [INFO] [stdout] | [INFO] [stdout] 39 | pub struct SystemdInfo { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SystemdUnit` is never constructed [INFO] [stdout] --> src/sysinfo.rs:46:12 [INFO] [stdout] | [INFO] [stdout] 46 | pub struct SystemdUnit { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `JournalInfo` is never constructed [INFO] [stdout] --> src/sysinfo.rs:53:12 [INFO] [stdout] | [INFO] [stdout] 53 | pub struct JournalInfo { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `JournalEntry` is never constructed [INFO] [stdout] --> src/sysinfo.rs:60:12 [INFO] [stdout] | [INFO] [stdout] 60 | pub struct JournalEntry { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ContainerInfo` is never constructed [INFO] [stdout] --> src/sysinfo.rs:68:12 [INFO] [stdout] | [INFO] [stdout] 68 | pub struct ContainerInfo { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `collect_system_info` is never used [INFO] [stdout] --> src/sysinfo.rs:124:8 [INFO] [stdout] | [INFO] [stdout] 124 | pub fn collect_system_info() -> SystemInfo { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `collect_kubernetes_info` is never used [INFO] [stdout] --> src/sysinfo.rs:237:4 [INFO] [stdout] | [INFO] [stdout] 237 | fn collect_kubernetes_info() -> KubernetesInfo { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `collect_cgroup_info` is never used [INFO] [stdout] --> src/sysinfo.rs:276:4 [INFO] [stdout] | [INFO] [stdout] 276 | fn collect_cgroup_info() -> CgroupInfo { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `collect_systemd_info` is never used [INFO] [stdout] --> src/sysinfo.rs:319:4 [INFO] [stdout] | [INFO] [stdout] 319 | fn collect_systemd_info() -> SystemdInfo { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `collect_journal_info` is never used [INFO] [stdout] --> src/sysinfo.rs:376:4 [INFO] [stdout] | [INFO] [stdout] 376 | fn collect_journal_info() -> JournalInfo { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_journal_output` is never used [INFO] [stdout] --> src/sysinfo.rs:410:4 [INFO] [stdout] | [INFO] [stdout] 410 | fn parse_journal_output(output: &[u8]) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `collect_container_info` is never used [INFO] [stdout] --> src/sysinfo.rs:485:4 [INFO] [stdout] | [INFO] [stdout] 485 | fn collect_container_info() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_available_tools` is never used [INFO] [stdout] --> src/tools/mod.rs:35:8 [INFO] [stdout] | [INFO] [stdout] 21 | pub trait ToolAvailability { [INFO] [stdout] | ---------------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 35 | fn get_available_tools(&self) -> Vec; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `category` and `missing_dependencies` are never read [INFO] [stdout] --> src/tools/mod.rs:58:9 [INFO] [stdout] | [INFO] [stdout] 57 | pub struct AvailableToolInfo { [INFO] [stdout] | ----------------- fields in this struct [INFO] [stdout] 58 | pub category: ToolCategory, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 61 | pub missing_dependencies: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AvailableToolInfo` 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 `KubernetesDebugInfo` is never constructed [INFO] [stdout] --> src/tools/mod.rs:76:12 [INFO] [stdout] | [INFO] [stdout] 76 | pub struct KubernetesDebugInfo { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PodInfo` is never constructed [INFO] [stdout] --> src/tools/mod.rs:85:12 [INFO] [stdout] | [INFO] [stdout] 85 | pub struct PodInfo { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ServiceInfo` is never constructed [INFO] [stdout] --> src/tools/mod.rs:97:12 [INFO] [stdout] | [INFO] [stdout] 97 | pub struct ServiceInfo { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `NodeInfo` is never constructed [INFO] [stdout] --> src/tools/mod.rs:108:12 [INFO] [stdout] | [INFO] [stdout] 108 | pub struct NodeInfo { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `EventInfo` is never constructed [INFO] [stdout] --> src/tools/mod.rs:119:12 [INFO] [stdout] | [INFO] [stdout] 119 | pub struct EventInfo { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `NamespaceInfo` is never constructed [INFO] [stdout] --> src/tools/mod.rs:128:12 [INFO] [stdout] | [INFO] [stdout] 128 | pub struct NamespaceInfo { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `JournalDebugInfo` is never constructed [INFO] [stdout] --> src/tools/mod.rs:136:12 [INFO] [stdout] | [INFO] [stdout] 136 | pub struct JournalDebugInfo { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `JournalLogEntry` is never constructed [INFO] [stdout] --> src/tools/mod.rs:144:12 [INFO] [stdout] | [INFO] [stdout] 144 | pub struct JournalLogEntry { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `kubernetes_enabled` and `kubectl_path` are never read [INFO] [stdout] --> src/tools/mod.rs:153:9 [INFO] [stdout] | [INFO] [stdout] 152 | pub struct DebugTools { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 153 | pub kubernetes_enabled: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 154 | pub kubectl_path: Option, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/tools/arch_debug.rs:6:18 [INFO] [stdout] | [INFO] [stdout] 4 | impl DebugTools { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] 5 | /// List all installed packages [INFO] [stdout] 6 | pub async fn run_pacman_list_packages(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 45 | pub async fn run_pacman_orphans(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 84 | pub async fn run_pacman_check_files(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 123 | pub async fn run_checkupdates(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 161 | pub async fn run_paccache_info(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 200 | pub async fn run_systemd_analyze_time(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 239 | pub async fn run_systemd_analyze_critical_chain(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 278 | pub async fn run_systemd_analyze_blame(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 317 | pub async fn run_journalctl_list_boots(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 356 | pub async fn run_lsmod(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 433 | pub async fn run_needs_reboot(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 482 | pub async fn run_pacman_mirrorlist(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 523 | pub async fn run_aur_helper_info(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/tools/container_info.rs:5:18 [INFO] [stdout] | [INFO] [stdout] 4 | impl DebugTools { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] 5 | pub async fn run_cat_proc_cgroups(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | pub async fn run_ls_cgroup(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 81 | pub async fn run_cat_proc_self_cgroup(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 119 | pub async fn run_cat_proc_self_mountinfo(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 157 | pub async fn run_lsns(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 195 | pub async fn run_cat_proc_self_status(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 233 | pub async fn run_cat_proc_self_ns(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 314 | pub async fn run_docker_ps_running(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 356 | pub async fn run_docker_inspect(&self, container_name: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 405 | pub async fn run_docker_logs( [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/tools/ebpf_debug.rs:6:18 [INFO] [stdout] | [INFO] [stdout] 4 | impl DebugTools { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] 5 | /// List all loaded BPF programs [INFO] [stdout] 6 | pub async fn run_bpftool_prog_list(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 45 | pub async fn run_bpftool_prog_show(&self, prog_id: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 84 | pub async fn run_bpftool_prog_dump_xlated(&self, prog_id: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 123 | pub async fn run_bpftool_prog_dump_jited(&self, prog_id: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 162 | pub async fn run_bpftool_map_list(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 201 | pub async fn run_bpftool_map_show(&self, map_id: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 240 | pub async fn run_bpftool_map_dump(&self, map_id: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 279 | pub async fn run_bpftool_link_list(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 318 | pub async fn run_bpftool_feature_probe(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 357 | pub async fn run_bpftool_net_list(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 396 | pub async fn run_bpftool_cgroup_list(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 435 | pub async fn run_bpftool_btf_list(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 474 | pub async fn run_bpf_mount_check(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 513 | pub async fn run_bpf_ls_pinned(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 552 | pub async fn run_bpf_kernel_config(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 610 | pub async fn run_bpftrace_syscalls(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 649 | pub async fn run_bpftrace_list_tracepoints(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 688 | pub async fn run_bpf_jit_status(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/tools/kubernetes_debug.rs:8:18 [INFO] [stdout] | [INFO] [stdout] 4 | impl DebugTools { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 8 | pub async fn run_kubectl_get_deployments(&self, namespace: Option<&str>) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 59 | pub async fn run_kubectl_get_configmaps(&self, namespace: Option<&str>) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 110 | pub async fn run_kubectl_logs(&self, pod_name: &str, namespace: Option<&str>, lines: Option) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 165 | pub async fn run_kubectl_top_pods(&self, namespace: Option<&str>) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | pub async fn run_kubectl_top_nodes(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 294 | pub async fn run_kubectl_get_pv(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 333 | pub async fn run_kubectl_get_pvc(&self, namespace: Option<&str>) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 386 | pub async fn run_kubelet_status(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 425 | pub async fn run_kubelet_logs(&self, lines: Option) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 472 | pub async fn run_kubelet_config(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 520 | pub async fn run_etcd_cluster_health(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 559 | pub async fn run_etcd_member_list(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 598 | pub async fn run_etcd_endpoint_health(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 637 | pub async fn run_etcd_endpoint_status(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `run_ethtool`, `run_iperf3_server_check`, `run_network_namespaces`, `run_tcpdump_sample`, `run_bridge_info`, and `run_netstat_legacy` are never used [INFO] [stdout] --> src/tools/network_debug.rs:271:18 [INFO] [stdout] | [INFO] [stdout] 4 | impl DebugTools { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 271 | pub async fn run_ethtool(&self, interface: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 386 | pub async fn run_iperf3_server_check(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 429 | pub async fn run_network_namespaces(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 467 | pub async fn run_tcpdump_sample(&self, interface: Option<&str>) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 507 | pub async fn run_bridge_info(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 664 | pub async fn run_netstat_legacy(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/tools/performance_debug.rs:43:18 [INFO] [stdout] | [INFO] [stdout] 4 | impl DebugTools { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 43 | pub async fn run_vmstat(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 81 | pub async fn run_sar(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 119 | pub async fn run_mpstat(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 157 | pub async fn run_iotop(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 195 | pub async fn run_htop(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 233 | pub async fn run_nethogs(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 271 | pub async fn run_perf(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 309 | pub async fn run_sysbench(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/tools/process_debug.rs:5:18 [INFO] [stdout] | [INFO] [stdout] 4 | impl DebugTools { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] 5 | pub async fn run_lsof(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | pub async fn run_lsof_pid(&self, pid: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 81 | pub async fn run_strace(&self, pid: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 121 | pub async fn run_pmap(&self, pid: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 159 | pub async fn run_pidstat(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 197 | pub async fn run_pgrep(&self, pattern: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 235 | pub async fn run_pkill(&self, pattern: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 273 | pub async fn run_nice(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/tools/security_debug.rs:5:18 [INFO] [stdout] | [INFO] [stdout] 4 | impl DebugTools { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] 5 | pub async fn run_auditctl(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | pub async fn run_ausearch(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 81 | pub async fn run_sestatus(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 118 | pub async fn run_getenforce(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 155 | pub async fn run_semodule(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 193 | pub async fn run_ps_ef(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 231 | pub async fn run_w(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 268 | pub async fn run_last(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 305 | pub async fn run_fail2ban(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 343 | pub async fn run_clamscan(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/tools/storage_debug.rs:5:18 [INFO] [stdout] | [INFO] [stdout] 4 | impl DebugTools { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] 5 | pub async fn run_iostat(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | pub async fn run_smartctl(&self, device: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 81 | pub async fn run_fdisk(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 119 | pub async fn run_lsblk(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 157 | pub async fn run_mount(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 194 | pub async fn run_du(&self, path: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 232 | pub async fn run_find_large_files(&self, path: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 272 | pub async fn run_hdparm(&self, device: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 310 | pub async fn run_blkid(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/ui.rs:42:8 [INFO] [stdout] | [INFO] [stdout] 10 | impl UIFormatter { [INFO] [stdout] | ---------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 42 | fn format_header(&self, text: &str, level: HeaderLevel) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 58 | fn format_status(&self, status: &str, is_healthy: bool) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 72 | fn format_info_line(&self, label: &str, value: &str, icon: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 85 | fn format_warning(&self, text: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 93 | fn format_error(&self, text: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 101 | fn format_success(&self, text: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 109 | fn format_metric(&self, current: &str, total: &str, label: &str, icon: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `HeaderLevel` is never used [INFO] [stdout] --> src/ui.rs:124:6 [INFO] [stdout] | [INFO] [stdout] 124 | enum HeaderLevel { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_results` is never used [INFO] [stdout] --> src/ui.rs:136:8 [INFO] [stdout] | [INFO] [stdout] 136 | pub fn print_results(info: &SystemInfo, analysis: &str, verbose: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_results_with_formatter` is never used [INFO] [stdout] --> src/ui.rs:141:8 [INFO] [stdout] | [INFO] [stdout] 141 | pub fn print_results_with_formatter( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_common_non_critical_error` is never used [INFO] [stdout] --> src/ui.rs:364:4 [INFO] [stdout] | [INFO] [stdout] 364 | fn is_common_non_critical_error(message: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_history` is never used [INFO] [stdout] --> src/ui.rs:396:8 [INFO] [stdout] | [INFO] [stdout] 396 | pub fn print_history(checks: &[(i64, String, SystemInfo, String)]) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `verbose` [INFO] [stdout] --> src/output/mod.rs:74:5 [INFO] [stdout] | [INFO] [stdout] 74 | verbose: bool, [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_verbose` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/tools/mod.rs:622:13 [INFO] [stdout] | [INFO] [stdout] 622 | let mut debug_tools_with_check = DebugTools::initialize_with_availability_check(); [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/tools/mod.rs:774:13 [INFO] [stdout] | [INFO] [stdout] 774 | let mut debug_tools = DebugTools::initialize_with_availability_check(); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `analyze_with_known_issues` and `answer_question` are never used [INFO] [stdout] --> src/ai.rs:13:14 [INFO] [stdout] | [INFO] [stdout] 11 | pub trait AIProvider: Send + Sync { [INFO] [stdout] | ---------- methods in this trait [INFO] [stdout] 12 | async fn analyze(&self, input: &str) -> Result; [INFO] [stdout] 13 | async fn analyze_with_known_issues( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 19 | async fn answer_question( [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `conversation_history` and `known_issues` are never read [INFO] [stdout] --> src/ai.rs:59:5 [INFO] [stdout] | [INFO] [stdout] 56 | pub struct AIClient { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 59 | conversation_history: Arc>>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 60 | known_issues: Arc, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_env` is never used [INFO] [stdout] --> src/ai.rs:80:18 [INFO] [stdout] | [INFO] [stdout] 69 | impl AIClient { [INFO] [stdout] | ------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 80 | pub async fn from_env() -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `answer_question_openai`, `answer_question_anthropic`, `answer_question_local`, and `try_ollama_question` are never used [INFO] [stdout] --> src/ai.rs:497:14 [INFO] [stdout] | [INFO] [stdout] 241 | impl AIClient { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 497 | async fn answer_question_openai( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 567 | async fn answer_question_anthropic( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 633 | async fn answer_question_local( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 659 | async fn try_ollama_question( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_ai_provider` is never used [INFO] [stdout] --> src/ai.rs:742:14 [INFO] [stdout] | [INFO] [stdout] 742 | pub async fn create_ai_provider() -> Result, AIError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `tool_calls` and `timestamp` are never read [INFO] [stdout] --> src/ai.rs:792:9 [INFO] [stdout] | [INFO] [stdout] 789 | pub struct AIAgentMessage { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 792 | pub tool_calls: Vec, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 793 | pub timestamp: std::time::SystemTime, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AIAgentMessage` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `tool_name`, `arguments`, and `result` are never read [INFO] [stdout] --> src/ai.rs:806:9 [INFO] [stdout] | [INFO] [stdout] 805 | pub struct AIToolCall { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 806 | pub tool_name: String, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 807 | pub arguments: std::collections::HashMap, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 808 | pub result: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AIToolCall` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `pause_on_limit`, `allow_user_continuation`, and `verbose_logging` are never read [INFO] [stdout] --> src/ai.rs:814:9 [INFO] [stdout] | [INFO] [stdout] 812 | pub struct AIAgentConfig { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] 813 | pub max_tool_calls: usize, [INFO] [stdout] 814 | pub pause_on_limit: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 815 | pub allow_user_continuation: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 816 | pub verbose_logging: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AIAgentConfig` 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: variant `Error` is never constructed [INFO] [stdout] --> src/ai.rs:835:5 [INFO] [stdout] | [INFO] [stdout] 831 | pub enum AIAgentResult { [INFO] [stdout] | ------------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 835 | Error { error: AIError, tool_calls_used: usize }, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AIAgentResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_conversation_history` is never used [INFO] [stdout] --> src/ai.rs:1827:12 [INFO] [stdout] | [INFO] [stdout] 838 | impl AIAgent { [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 1827 | pub fn get_conversation_history(&self) -> &[AIAgentMessage] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `as_str` is never used [INFO] [stdout] --> src/cli.rs:147:12 [INFO] [stdout] | [INFO] [stdout] 146 | impl AIProvider { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] 147 | pub fn as_str(&self) -> &'static str { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_default_model`, `get_model`, `is_full_check`, and `get_check_component` are never used [INFO] [stdout] --> src/cli.rs:418:12 [INFO] [stdout] | [INFO] [stdout] 416 | impl Cli { [INFO] [stdout] | -------- methods in this implementation [INFO] [stdout] 417 | /// Get the default model for the selected AI provider [INFO] [stdout] 418 | pub fn get_default_model(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 427 | pub fn get_model(&self) -> String { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 434 | pub fn is_full_check(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 445 | pub fn get_check_component(&self) -> CheckComponent { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `AnalysisType` is never used [INFO] [stdout] --> src/commands/ai.rs:9:10 [INFO] [stdout] | [INFO] [stdout] 9 | pub enum AnalysisType { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `run_question_answering_with_config` is never used [INFO] [stdout] --> src/commands/ai.rs:16:14 [INFO] [stdout] | [INFO] [stdout] 16 | pub async fn run_question_answering_with_config( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `run_ai_agent_mode` is never used [INFO] [stdout] --> src/commands/ai.rs:72:14 [INFO] [stdout] | [INFO] [stdout] 72 | pub async fn run_ai_agent_mode( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `run_unified_ai_analysis` is never used [INFO] [stdout] --> src/commands/ai.rs:209:14 [INFO] [stdout] | [INFO] [stdout] 209 | pub async fn run_unified_ai_analysis( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_debug_result` is never used [INFO] [stdout] --> src/commands/debug.rs:15:8 [INFO] [stdout] | [INFO] [stdout] 15 | pub fn print_debug_result(result: &DebugToolResult) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Database` is never constructed [INFO] [stdout] --> src/database.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Database { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `init_tables`, `store_check`, and `get_recent_checks` are never used [INFO] [stdout] --> src/database.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 9 | impl Database { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] 10 | pub fn new>(path: P) -> Result { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 17 | fn init_tables(&self) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 34 | pub fn store_check(&self, system_info: &SystemInfo, analysis: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 45 | pub fn get_recent_checks(&self, limit: i64) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `IssueMatch` is never constructed [INFO] [stdout] --> src/known_issues.rs:49:12 [INFO] [stdout] | [INFO] [stdout] 49 | pub struct IssueMatch { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `add_issue`, `match_issues`, `format_issue_for_ai`, and `get_relevant_issues_for_context` are never used [INFO] [stdout] --> src/known_issues.rs:69:18 [INFO] [stdout] | [INFO] [stdout] 60 | impl KnownIssuesDatabase { [INFO] [stdout] | ------------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 69 | pub async fn add_issue(&self, issue: KnownIssue) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 106 | pub async fn match_issues( [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 602 | pub async fn format_issue_for_ai(&self, issue: &KnownIssue) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 621 | pub async fn get_relevant_issues_for_context( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SystemHealthReport` is never constructed [INFO] [stdout] --> src/output/mod.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct SystemHealthReport { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SystemStatus` is never constructed [INFO] [stdout] --> src/output/mod.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct SystemStatus { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ServiceStatus` is never constructed [INFO] [stdout] --> src/output/mod.rs:24:12 [INFO] [stdout] | [INFO] [stdout] 24 | pub struct ServiceStatus { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LogStatus` is never constructed [INFO] [stdout] --> src/output/mod.rs:32:12 [INFO] [stdout] | [INFO] [stdout] 32 | pub struct LogStatus { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LogEntry` is never constructed [INFO] [stdout] --> src/output/mod.rs:40:12 [INFO] [stdout] | [INFO] [stdout] 40 | pub struct LogEntry { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ContainerStatus` is never constructed [INFO] [stdout] --> src/output/mod.rs:48:12 [INFO] [stdout] | [INFO] [stdout] 48 | pub struct ContainerStatus { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ContainerInfo` is never constructed [INFO] [stdout] --> src/output/mod.rs:57:12 [INFO] [stdout] | [INFO] [stdout] 57 | pub struct ContainerInfo { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Issue` is never constructed [INFO] [stdout] --> src/output/mod.rs:64:12 [INFO] [stdout] | [INFO] [stdout] 64 | pub struct Issue { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_system_health_report` is never used [INFO] [stdout] --> src/output/mod.rs:71:8 [INFO] [stdout] | [INFO] [stdout] 71 | pub fn create_system_health_report( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_json` is never used [INFO] [stdout] --> src/output/mod.rs:232:8 [INFO] [stdout] | [INFO] [stdout] 232 | pub fn print_json(report: &SystemHealthReport) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_yaml` is never used [INFO] [stdout] --> src/output/mod.rs:239:8 [INFO] [stdout] | [INFO] [stdout] 239 | pub fn print_yaml(report: &SystemHealthReport) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_output` is never used [INFO] [stdout] --> src/output/printers.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn print_output( [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_output_with_config` is never used [INFO] [stdout] --> src/output/printers.rs:28:8 [INFO] [stdout] | [INFO] [stdout] 28 | pub fn print_output_with_config( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_system_info` is never used [INFO] [stdout] --> src/output/printers.rs:49:8 [INFO] [stdout] | [INFO] [stdout] 49 | pub fn print_system_info(info: &SystemInfo, analysis: &str, verbose: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_container_info` is never used [INFO] [stdout] --> src/output/printers.rs:103:8 [INFO] [stdout] | [INFO] [stdout] 103 | pub fn print_container_info(info: &SystemInfo, analysis: &str, verbose: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_kubernetes_info` is never used [INFO] [stdout] --> src/output/printers.rs:154:8 [INFO] [stdout] | [INFO] [stdout] 154 | pub fn print_kubernetes_info(info: &SystemInfo, analysis: &str, verbose: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_cgroup_info` is never used [INFO] [stdout] --> src/output/printers.rs:188:8 [INFO] [stdout] | [INFO] [stdout] 188 | pub fn print_cgroup_info(info: &SystemInfo, analysis: &str, verbose: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_systemd_info` is never used [INFO] [stdout] --> src/output/printers.rs:213:8 [INFO] [stdout] | [INFO] [stdout] 213 | pub fn print_systemd_info(info: &SystemInfo, analysis: &str, verbose: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_journal_info` is never used [INFO] [stdout] --> src/output/printers.rs:261:8 [INFO] [stdout] | [INFO] [stdout] 261 | pub fn print_journal_info(info: &SystemInfo, analysis: &str, verbose: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_results_dry_run` is never used [INFO] [stdout] --> src/output/printers.rs:351:8 [INFO] [stdout] | [INFO] [stdout] 351 | pub fn print_results_dry_run(info: &SystemInfo) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_common_non_critical_error` is never used [INFO] [stdout] --> src/output/printers.rs:469:8 [INFO] [stdout] | [INFO] [stdout] 469 | pub fn is_common_non_critical_error(message: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_system_info_dry_run` is never used [INFO] [stdout] --> src/output/printers.rs:501:8 [INFO] [stdout] | [INFO] [stdout] 501 | pub fn print_system_info_dry_run(info: &SystemInfo) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_container_info_dry_run` is never used [INFO] [stdout] --> src/output/printers.rs:509:8 [INFO] [stdout] | [INFO] [stdout] 509 | pub fn print_container_info_dry_run(info: &SystemInfo) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_kubernetes_info_dry_run` is never used [INFO] [stdout] --> src/output/printers.rs:533:8 [INFO] [stdout] | [INFO] [stdout] 533 | pub fn print_kubernetes_info_dry_run(info: &SystemInfo) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_cgroup_info_dry_run` is never used [INFO] [stdout] --> src/output/printers.rs:556:8 [INFO] [stdout] | [INFO] [stdout] 556 | pub fn print_cgroup_info_dry_run(info: &SystemInfo) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_systemd_info_dry_run` is never used [INFO] [stdout] --> src/output/printers.rs:571:8 [INFO] [stdout] | [INFO] [stdout] 571 | pub fn print_systemd_info_dry_run(info: &SystemInfo) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_journal_info_dry_run` is never used [INFO] [stdout] --> src/output/printers.rs:602:8 [INFO] [stdout] | [INFO] [stdout] 602 | pub fn print_journal_info_dry_run(info: &SystemInfo) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `collect_system_info` is never used [INFO] [stdout] --> src/sysinfo.rs:124:8 [INFO] [stdout] | [INFO] [stdout] 124 | pub fn collect_system_info() -> SystemInfo { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `collect_kubernetes_info` is never used [INFO] [stdout] --> src/sysinfo.rs:237:4 [INFO] [stdout] | [INFO] [stdout] 237 | fn collect_kubernetes_info() -> KubernetesInfo { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `collect_cgroup_info` is never used [INFO] [stdout] --> src/sysinfo.rs:276:4 [INFO] [stdout] | [INFO] [stdout] 276 | fn collect_cgroup_info() -> CgroupInfo { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `collect_systemd_info` is never used [INFO] [stdout] --> src/sysinfo.rs:319:4 [INFO] [stdout] | [INFO] [stdout] 319 | fn collect_systemd_info() -> SystemdInfo { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `collect_journal_info` is never used [INFO] [stdout] --> src/sysinfo.rs:376:4 [INFO] [stdout] | [INFO] [stdout] 376 | fn collect_journal_info() -> JournalInfo { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `collect_container_info` is never used [INFO] [stdout] --> src/sysinfo.rs:485:4 [INFO] [stdout] | [INFO] [stdout] 485 | fn collect_container_info() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `KubernetesDebugInfo` is never constructed [INFO] [stdout] --> src/tools/mod.rs:76:12 [INFO] [stdout] | [INFO] [stdout] 76 | pub struct KubernetesDebugInfo { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PodInfo` is never constructed [INFO] [stdout] --> src/tools/mod.rs:85:12 [INFO] [stdout] | [INFO] [stdout] 85 | pub struct PodInfo { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ServiceInfo` is never constructed [INFO] [stdout] --> src/tools/mod.rs:97:12 [INFO] [stdout] | [INFO] [stdout] 97 | pub struct ServiceInfo { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `NodeInfo` is never constructed [INFO] [stdout] --> src/tools/mod.rs:108:12 [INFO] [stdout] | [INFO] [stdout] 108 | pub struct NodeInfo { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `EventInfo` is never constructed [INFO] [stdout] --> src/tools/mod.rs:119:12 [INFO] [stdout] | [INFO] [stdout] 119 | pub struct EventInfo { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `NamespaceInfo` is never constructed [INFO] [stdout] --> src/tools/mod.rs:128:12 [INFO] [stdout] | [INFO] [stdout] 128 | pub struct NamespaceInfo { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `JournalDebugInfo` is never constructed [INFO] [stdout] --> src/tools/mod.rs:136:12 [INFO] [stdout] | [INFO] [stdout] 136 | pub struct JournalDebugInfo { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `JournalLogEntry` is never constructed [INFO] [stdout] --> src/tools/mod.rs:144:12 [INFO] [stdout] | [INFO] [stdout] 144 | pub struct JournalLogEntry { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `kubernetes_enabled` and `kubectl_path` are never read [INFO] [stdout] --> src/tools/mod.rs:153:9 [INFO] [stdout] | [INFO] [stdout] 152 | pub struct DebugTools { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 153 | pub kubernetes_enabled: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 154 | pub kubectl_path: Option, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `run_pacman_check_files`, `run_checkupdates`, `run_paccache_info`, `run_systemd_analyze_critical_chain`, and `run_systemd_analyze_blame` are never used [INFO] [stdout] --> src/tools/arch_debug.rs:84:18 [INFO] [stdout] | [INFO] [stdout] 4 | impl DebugTools { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 84 | pub async fn run_pacman_check_files(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 123 | pub async fn run_checkupdates(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 161 | pub async fn run_paccache_info(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 239 | pub async fn run_systemd_analyze_critical_chain(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 278 | pub async fn run_systemd_analyze_blame(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/tools/container_info.rs:5:18 [INFO] [stdout] | [INFO] [stdout] 4 | impl DebugTools { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] 5 | pub async fn run_cat_proc_cgroups(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | pub async fn run_ls_cgroup(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 81 | pub async fn run_cat_proc_self_cgroup(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 119 | pub async fn run_cat_proc_self_mountinfo(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 157 | pub async fn run_lsns(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 195 | pub async fn run_cat_proc_self_status(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 233 | pub async fn run_cat_proc_self_ns(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 314 | pub async fn run_docker_ps_running(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 356 | pub async fn run_docker_inspect(&self, container_name: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 405 | pub async fn run_docker_logs( [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/tools/ebpf_debug.rs:84:18 [INFO] [stdout] | [INFO] [stdout] 4 | impl DebugTools { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 84 | pub async fn run_bpftool_prog_dump_xlated(&self, prog_id: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 123 | pub async fn run_bpftool_prog_dump_jited(&self, prog_id: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 201 | pub async fn run_bpftool_map_show(&self, map_id: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 240 | pub async fn run_bpftool_map_dump(&self, map_id: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 357 | pub async fn run_bpftool_net_list(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 396 | pub async fn run_bpftool_cgroup_list(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 435 | pub async fn run_bpftool_btf_list(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 513 | pub async fn run_bpf_ls_pinned(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 552 | pub async fn run_bpf_kernel_config(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 610 | pub async fn run_bpftrace_syscalls(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 649 | pub async fn run_bpftrace_list_tracepoints(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/tools/kubernetes_debug.rs:59:18 [INFO] [stdout] | [INFO] [stdout] 4 | impl DebugTools { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 59 | pub async fn run_kubectl_get_configmaps(&self, namespace: Option<&str>) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | pub async fn run_kubectl_top_nodes(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 294 | pub async fn run_kubectl_get_pv(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 333 | pub async fn run_kubectl_get_pvc(&self, namespace: Option<&str>) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 472 | pub async fn run_kubelet_config(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 559 | pub async fn run_etcd_member_list(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 637 | pub async fn run_etcd_endpoint_status(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/tools/performance_debug.rs:43:18 [INFO] [stdout] | [INFO] [stdout] 4 | impl DebugTools { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 43 | pub async fn run_vmstat(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 81 | pub async fn run_sar(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 119 | pub async fn run_mpstat(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 157 | pub async fn run_iotop(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 195 | pub async fn run_htop(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 233 | pub async fn run_nethogs(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 271 | pub async fn run_perf(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 309 | pub async fn run_sysbench(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/tools/process_debug.rs:5:18 [INFO] [stdout] | [INFO] [stdout] 4 | impl DebugTools { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] 5 | pub async fn run_lsof(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | pub async fn run_lsof_pid(&self, pid: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 81 | pub async fn run_strace(&self, pid: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 121 | pub async fn run_pmap(&self, pid: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 159 | pub async fn run_pidstat(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 197 | pub async fn run_pgrep(&self, pattern: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 235 | pub async fn run_pkill(&self, pattern: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 273 | pub async fn run_nice(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/tools/security_debug.rs:5:18 [INFO] [stdout] | [INFO] [stdout] 4 | impl DebugTools { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] 5 | pub async fn run_auditctl(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | pub async fn run_ausearch(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 81 | pub async fn run_sestatus(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 118 | pub async fn run_getenforce(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 155 | pub async fn run_semodule(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 193 | pub async fn run_ps_ef(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 231 | pub async fn run_w(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 268 | pub async fn run_last(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 305 | pub async fn run_fail2ban(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 343 | pub async fn run_clamscan(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/tools/storage_debug.rs:5:18 [INFO] [stdout] | [INFO] [stdout] 4 | impl DebugTools { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] 5 | pub async fn run_iostat(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | pub async fn run_smartctl(&self, device: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 81 | pub async fn run_fdisk(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 119 | pub async fn run_lsblk(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 157 | pub async fn run_mount(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 194 | pub async fn run_du(&self, path: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 232 | pub async fn run_find_large_files(&self, path: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 272 | pub async fn run_hdparm(&self, device: &str) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 310 | pub async fn run_blkid(&self) -> DebugToolResult { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_results` is never used [INFO] [stdout] --> src/ui.rs:136:8 [INFO] [stdout] | [INFO] [stdout] 136 | pub fn print_results(info: &SystemInfo, analysis: &str, verbose: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/tools/ebpf_debug.rs:739:17 [INFO] [stdout] | [INFO] [stdout] 739 | assert!(result.execution_time_ms >= 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_comparisons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/tools/ebpf_debug.rs:757:17 [INFO] [stdout] | [INFO] [stdout] 757 | assert!(result.execution_time_ms >= 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/tools/ebpf_debug.rs:767:17 [INFO] [stdout] | [INFO] [stdout] 767 | assert!(result.execution_time_ms >= 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/tools/ebpf_debug.rs:777:17 [INFO] [stdout] | [INFO] [stdout] 777 | assert!(result.execution_time_ms >= 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/tools/ebpf_debug.rs:787:17 [INFO] [stdout] | [INFO] [stdout] 787 | assert!(result.execution_time_ms >= 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/tools/ebpf_debug.rs:797:17 [INFO] [stdout] | [INFO] [stdout] 797 | assert!(result.execution_time_ms >= 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/tools/ebpf_debug.rs:807:17 [INFO] [stdout] | [INFO] [stdout] 807 | assert!(result.execution_time_ms >= 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/tools/network_debug.rs:1221:17 [INFO] [stdout] | [INFO] [stdout] 1221 | assert!(result.execution_time_ms >= 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/tools/network_debug.rs:1224:17 [INFO] [stdout] | [INFO] [stdout] 1224 | assert!(result.execution_time_ms >= 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/tools/network_debug.rs:1355:21 [INFO] [stdout] | [INFO] [stdout] 1355 | assert!(result.execution_time_ms >= 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/tools/network_debug.rs:1386:17 [INFO] [stdout] | [INFO] [stdout] 1386 | assert!(result.execution_time_ms >= 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 26.56s [INFO] running `Command { std: "docker" "inspect" "27b631fd8472dbb2e57a0961f6fd6c2b44b142748986cccd7ea00ee882e23a92", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "27b631fd8472dbb2e57a0961f6fd6c2b44b142748986cccd7ea00ee882e23a92", kill_on_drop: false }` [INFO] [stdout] 27b631fd8472dbb2e57a0961f6fd6c2b44b142748986cccd7ea00ee882e23a92