[INFO] cloning repository https://github.com/Fontelo/marshall
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Fontelo/marshall" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FFontelo%2Fmarshall", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FFontelo%2Fmarshall'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 9c7530ad57fc008218fe299870edea33c15cba2c
[INFO] checking Fontelo/marshall against try#6284d7b4bd27983dba388146648ab844ca7d032f for pr-152971
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FFontelo%2Fmarshall" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Fontelo/marshall
[INFO] finished tweaking git repo https://github.com/Fontelo/marshall
[INFO] tweaked toml for git repo https://github.com/Fontelo/marshall written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Fontelo/marshall on toolchain 6284d7b4bd27983dba388146648ab844ca7d032f
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+6284d7b4bd27983dba388146648ab844ca7d032f" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Fontelo/marshall 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" "+6284d7b4bd27983dba388146648ab844ca7d032f" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:61361fe0aef631f17e9d025a70c5a647956f8c671dd02950a60ad3f5cc5526d7" "/opt/rustwide/cargo-home/bin/cargo" "+6284d7b4bd27983dba388146648ab844ca7d032f" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 4e11d46f9fab21b381aa94847e98e043aba66501d0f68d0bd9b627c0d8e53165
[INFO] running `Command { std: "docker" "start" "-a" "4e11d46f9fab21b381aa94847e98e043aba66501d0f68d0bd9b627c0d8e53165", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "4e11d46f9fab21b381aa94847e98e043aba66501d0f68d0bd9b627c0d8e53165", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4e11d46f9fab21b381aa94847e98e043aba66501d0f68d0bd9b627c0d8e53165", kill_on_drop: false }`
[INFO] [stdout] 4e11d46f9fab21b381aa94847e98e043aba66501d0f68d0bd9b627c0d8e53165
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:61361fe0aef631f17e9d025a70c5a647956f8c671dd02950a60ad3f5cc5526d7" "/opt/rustwide/cargo-home/bin/cargo" "+6284d7b4bd27983dba388146648ab844ca7d032f" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 38138341136b437da2f21fb118e9e7b522fcdfcced5bca02798e6b4edb3f94f1
[INFO] running `Command { std: "docker" "start" "-a" "38138341136b437da2f21fb118e9e7b522fcdfcced5bca02798e6b4edb3f94f1", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.180
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling hashbrown v0.16.1
[INFO] [stderr]    Compiling target-lexicon v0.12.16
[INFO] [stderr]    Compiling winnow v0.7.14
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling version-compare v0.2.1
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling zerocopy v0.8.38
[INFO] [stderr]     Checking memchr v2.7.6
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling cfg-if v1.0.4
[INFO] [stderr]     Checking stable_deref_trait v1.2.1
[INFO] [stderr]     Checking futures-io v0.3.31
[INFO] [stderr]     Checking slab v0.4.12
[INFO] [stderr]     Checking log v0.4.29
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]    Compiling anyhow v1.0.100
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]     Checking itoa v1.0.17
[INFO] [stderr]    Compiling siphasher v1.0.2
[INFO] [stderr]    Compiling winnow v0.5.40
[INFO] [stderr]    Compiling cc v1.2.55
[INFO] [stderr]    Compiling siphasher v0.3.11
[INFO] [stderr]    Compiling indexmap v2.13.0
[INFO] [stderr]     Checking writeable v0.6.2
[INFO] [stderr]     Checking litemap v0.8.1
[INFO] [stderr]    Compiling phf_shared v0.11.3
[INFO] [stderr]    Compiling phf_shared v0.10.0
[INFO] [stderr]     Checking bytes v1.11.1
[INFO] [stderr]    Compiling icu_properties_data v2.1.2
[INFO] [stderr]    Compiling quote v1.0.44
[INFO] [stderr]    Compiling cfg-expr v0.15.8
[INFO] [stderr]    Compiling icu_normalizer_data v2.1.1
[INFO] [stderr]     Checking tinyvec_macros v0.1.1
[INFO] [stderr]     Checking new_debug_unreachable v1.0.6
[INFO] [stderr]    Compiling syn v2.0.114
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking tinyvec v1.10.0
[INFO] [stderr]     Checking tracing-core v0.1.36
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]     Checking percent-encoding v2.3.2
[INFO] [stderr]     Checking precomputed-hash v0.1.1
[INFO] [stderr]     Checking mac v0.1.1
[INFO] [stderr]    Compiling gio v0.16.7
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]     Checking futf v0.1.5
[INFO] [stderr]     Checking utf-8 v0.7.6
[INFO] [stderr]     Checking untrusted v0.9.0
[INFO] [stderr]     Checking form_urlencoded v1.2.2
[INFO] [stderr]     Checking tendril v0.4.3
[INFO] [stderr]     Checking phf v0.10.1
[INFO] [stderr]     Checking unicode-normalization v0.1.25
[INFO] [stderr]     Checking unicode-bidi v0.3.18
[INFO] [stderr]    Compiling semver v1.0.27
[INFO] [stderr]     Checking bitflags v2.10.0
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling zmij v1.0.19
[INFO] [stderr]     Checking http v0.2.12
[INFO] [stderr]    Compiling alsa-sys v0.3.1
[INFO] [stderr]     Checking encoding_rs v0.8.35
[INFO] [stderr]    Compiling rustc_version v0.4.1
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking errno v0.3.14
[INFO] [stderr]     Checking signal-hook-registry v1.4.8
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking socket2 v0.6.2
[INFO] [stderr]     Checking mio v1.1.1
[INFO] [stderr]     Checking crypto-common v0.1.7
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling rustls v0.21.12
[INFO] [stderr]     Checking arrayvec v0.7.6
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling num-conv v0.2.0
[INFO] [stderr]    Compiling time-core v0.1.8
[INFO] [stderr]     Checking bytemuck v1.25.0
[INFO] [stderr]     Checking deranged v0.5.5
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]    Compiling field-offset v0.3.6
[INFO] [stderr]    Compiling time-macros v0.2.27
[INFO] [stderr]     Checking aho-corasick v1.1.4
[INFO] [stderr]    Compiling cookie v0.17.0
[INFO] [stderr]     Checking regex-syntax v0.8.9
[INFO] [stderr]     Checking option-ext v0.2.0
[INFO] [stderr]     Checking dtoa v1.0.11
[INFO] [stderr]     Checking symphonia-core v0.5.5
[INFO] [stderr]    Compiling libsqlite3-sys v0.27.0
[INFO] [stderr]     Checking http-body v0.4.6
[INFO] [stderr]     Checking dtoa-short v0.3.5
[INFO] [stderr]     Checking cipher v0.4.4
[INFO] [stderr]     Checking universal-hash v0.5.1
[INFO] [stderr]     Checking socket2 v0.5.10
[INFO] [stderr]    Compiling gtk v0.16.2
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]     Checking httpdate v1.0.3
[INFO] [stderr]    Compiling cpal v0.15.3
[INFO] [stderr]     Checking psl-types v2.0.11
[INFO] [stderr]     Checking polyval v0.6.2
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling serde_spanned v0.6.9
[INFO] [stderr]     Checking alsa v0.9.1
[INFO] [stderr]     Checking idna v0.3.0
[INFO] [stderr]     Checking idna v0.4.0
[INFO] [stderr]     Checking ogg v0.8.0
[INFO] [stderr]    Compiling toml_edit v0.22.27
[INFO] [stderr]    Compiling toml_edit v0.19.15
[INFO] [stderr]     Checking symphonia-metadata v0.5.5
[INFO] [stderr]     Checking fxhash v0.2.1
[INFO] [stderr]     Checking servo_arc v0.3.0
[INFO] [stderr]     Checking time v0.3.47
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]     Checking linked-hash-map v0.5.6
[INFO] [stderr]     Checking bit-vec v0.6.3
[INFO] [stderr]     Checking ryu v1.0.22
[INFO] [stderr]     Checking symphonia-bundle-mp3 v0.5.5
[INFO] [stderr]     Checking data-encoding v2.10.0
[INFO] [stderr]     Checking iana-time-zone v0.1.65
[INFO] [stderr]     Checking unicode-width v0.2.2
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]     Checking toml_write v0.1.2
[INFO] [stderr]     Checking dasp_sample v0.11.0
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]    Compiling proc-macro-crate v1.3.1
[INFO] [stderr]     Checking getopts v0.2.24
[INFO] [stderr]     Checking rustls-pemfile v1.0.4
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]     Checking regex-automata v0.4.14
[INFO] [stderr]     Checking symphonia v0.5.5
[INFO] [stderr]     Checking hashlink v0.8.4
[INFO] [stderr]     Checking bit-set v0.5.3
[INFO] [stderr]     Checking lru-cache v0.1.2
[INFO] [stderr]     Checking lewton v0.10.2
[INFO] [stderr]     Checking ghash v0.5.1
[INFO] [stderr]     Checking aes v0.8.4
[INFO] [stderr]     Checking ctr v0.9.2
[INFO] [stderr]     Checking dirs-sys v0.5.0
[INFO] [stderr]     Checking dirs-sys v0.4.1
[INFO] [stderr]     Checking aead v0.5.2
[INFO] [stderr]     Checking sharded-slab v0.1.7
[INFO] [stderr]     Checking tracing-log v0.2.0
[INFO] [stderr]     Checking thread_local v1.1.9
[INFO] [stderr]     Checking fallible-iterator v0.3.0
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]     Checking claxon v0.4.3
[INFO] [stderr]    Compiling phf_generator v0.11.3
[INFO] [stderr]    Compiling phf_generator v0.10.0
[INFO] [stderr]    Compiling string_cache_codegen v0.5.4
[INFO] [stderr]    Compiling phf_codegen v0.10.0
[INFO] [stderr]     Checking resolv-conf v0.7.6
[INFO] [stderr]     Checking sync_wrapper v0.1.2
[INFO] [stderr]     Checking hound v3.5.1
[INFO] [stderr]     Checking webpki-roots v0.25.4
[INFO] [stderr]     Checking ego-tree v0.6.3
[INFO] [stderr]     Checking nu-ansi-term v0.50.3
[INFO] [stderr]    Compiling selectors v0.25.0
[INFO] [stderr]     Checking fallible-streaming-iterator v0.1.9
[INFO] [stderr]     Checking aes-gcm v0.10.3
[INFO] [stderr]     Checking crossbeam-channel v0.5.15
[INFO] [stderr]     Checking directories v5.0.1
[INFO] [stderr]     Checking dirs v6.0.0
[INFO] [stderr]    Compiling toml v0.8.23
[INFO] [stderr]     Checking dashmap v5.5.3
[INFO] [stderr]    Compiling markup5ever v0.11.0
[INFO] [stderr]     Checking sha2 v0.10.9
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]     Checking hmac v0.12.1
[INFO] [stderr]     Checking md-5 v0.10.6
[INFO] [stderr]     Checking uuid v1.20.0
[INFO] [stderr]     Checking num_cpus v1.17.0
[INFO] [stderr]     Checking rustls-webpki v0.101.7
[INFO] [stderr]     Checking sct v0.7.1
[INFO] [stderr]     Checking rodio v0.17.3
[INFO] [stderr]     Checking quick-xml v0.31.0
[INFO] [stderr]     Checking urlencoding v2.1.3
[INFO] [stderr]    Compiling system-deps v6.2.2
[INFO] [stderr]    Compiling glib-macros v0.16.8
[INFO] [stderr]    Compiling html5ever v0.26.0
[INFO] [stderr]    Compiling gtk3-macros v0.16.3
[INFO] [stderr]    Compiling glib-sys v0.16.3
[INFO] [stderr]    Compiling gobject-sys v0.16.3
[INFO] [stderr]    Compiling gio-sys v0.16.3
[INFO] [stderr]    Compiling atk-sys v0.16.0
[INFO] [stderr]    Compiling gdk-sys v0.16.0
[INFO] [stderr]    Compiling gdk-pixbuf-sys v0.16.3
[INFO] [stderr]    Compiling cairo-sys-rs v0.16.3
[INFO] [stderr]    Compiling pango-sys v0.16.3
[INFO] [stderr]    Compiling gtk-sys v0.16.0
[INFO] [stderr]    Compiling javascriptcore-rs-sys v0.5.1
[INFO] [stderr]    Compiling soup3-sys v0.3.1
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling yoke-derive v0.8.1
[INFO] [stderr]    Compiling zerovec-derive v0.11.2
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling tokio-macros v2.6.0
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling phf_macros v0.11.3
[INFO] [stderr]     Checking tokio v1.49.0
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]    Compiling cssparser-macros v0.6.1
[INFO] [stderr]     Checking phf v0.11.3
[INFO] [stderr]    Compiling webkit2gtk-sys v0.19.1
[INFO] [stderr]    Compiling derive_more v0.99.20
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling enum-as-inner v0.6.1
[INFO] [stderr]     Checking cssparser v0.31.2
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]     Checking yoke v0.8.1
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking matchers v0.2.0
[INFO] [stderr]     Checking regex v1.12.3
[INFO] [stderr]     Checking zerovec v0.11.5
[INFO] [stderr]     Checking zerotrie v0.2.3
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]     Checking tracing-subscriber v0.3.22
[INFO] [stderr]     Checking tinystr v0.8.2
[INFO] [stderr]     Checking potential_utf v0.1.4
[INFO] [stderr]     Checking icu_collections v2.1.1
[INFO] [stderr]     Checking icu_locale_core v2.1.1
[INFO] [stderr]     Checking string_cache v0.8.9
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking chrono v0.4.43
[INFO] [stderr]     Checking ipnetwork v0.20.0
[INFO] [stderr]     Checking icu_provider v2.1.1
[INFO] [stderr]     Checking icu_normalizer v2.1.1
[INFO] [stderr]     Checking icu_properties v2.1.2
[INFO] [stderr]     Checking xml5ever v0.17.0
[INFO] [stderr]     Checking futures-executor v0.3.31
[INFO] [stderr]     Checking glib v0.16.9
[INFO] [stderr]     Checking futures v0.3.31
[INFO] [stderr]     Checking markup5ever_rcdom v0.2.0
[INFO] [stderr]     Checking scraper v0.18.1
[INFO] [stderr]     Checking tokio-util v0.7.18
[INFO] [stderr]     Checking tokio-rustls v0.24.1
[INFO] [stderr]     Checking tokio-stream v0.1.18
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking select v0.6.1
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking h2 v0.3.27
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]     Checking publicsuffix v2.3.0
[INFO] [stderr]     Checking rusqlite v0.30.0
[INFO] [stderr]     Checking trust-dns-proto v0.23.2
[INFO] [stderr]     Checking cookie_store v0.20.0
[INFO] [stderr]     Checking hyper v0.14.32
[INFO] [stderr]     Checking trust-dns-resolver v0.23.2
[INFO] [stderr]     Checking hyper-rustls v0.24.2
[INFO] [stderr]     Checking reqwest v0.11.27
[INFO] [stderr]     Checking cairo-rs v0.16.7
[INFO] [stderr]     Checking atk v0.16.0
[INFO] [stderr]     Checking javascriptcore-rs v0.17.0
[INFO] [stderr]     Checking gdk-pixbuf v0.16.7
[INFO] [stderr]     Checking pango v0.16.5
[INFO] [stderr]     Checking soup3 v0.3.2
[INFO] [stderr]     Checking gdk v0.16.2
[INFO] [stderr]     Checking webkit2gtk v0.19.2
[INFO] [stderr]     Checking marshall v3.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::cell::RefCell`
[INFO] [stdout]  --> src/ui/toolbar.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::cell::RefCell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]   --> src/ui/toolbar.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::rc::Rc;
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Box as GtkBox`, `Dialog`, `Label`, `Orientation`, and `ResponseType`
[INFO] [stdout]  --> src/ui/dialogs.rs:8:11
[INFO] [stdout]   |
[INFO] [stdout] 8 | use gtk::{Dialog, Label, Box as GtkBox, Orientation, Window, ResponseType, ButtonsType, MessageType};
[INFO] [stdout]   |           ^^^^^^  ^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/ui/dashboard.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `parking_lot::RwLock`
[INFO] [stdout]  --> src/ui/dashboard.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use parking_lot::RwLock;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::assistant::Assistant`
[INFO] [stdout]  --> src/ui/dashboard.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::assistant::Assistant;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::voip::VoIP`
[INFO] [stdout]   --> src/ui/dashboard.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::voip::VoIP;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::workforce::WorkforceCenter`
[INFO] [stdout]   --> src/ui/dashboard.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::workforce::WorkforceCenter;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::search::SearchEngine`
[INFO] [stdout]   --> src/ui/dashboard.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::search::SearchEngine;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `homepage::*`
[INFO] [stdout]    --> src/ui/mod.rs:109:9
[INFO] [stdout]     |
[INFO] [stdout] 109 | pub use homepage::*;
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `webview::*`
[INFO] [stdout]   --> src/engine/mod.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub use webview::*;
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `navigation::*`
[INFO] [stdout]   --> src/engine/mod.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub use navigation::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/privacy/cookie_manager.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `manager::TabManager`
[INFO] [stdout]  --> src/tabs/mod.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub use manager::TabManager;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tracing::info`
[INFO] [stdout]   --> src/adblock/mod.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use tracing::info;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `defaults::*`
[INFO] [stdout]   --> src/config/mod.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub use defaults::*;
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/assistant/ai_engine.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DateTime` and `Utc`
[INFO] [stdout]   --> src/assistant/ai_engine.rs:12:14
[INFO] [stdout]    |
[INFO] [stdout] 12 | use chrono::{DateTime, Utc};
[INFO] [stdout]    |              ^^^^^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sip::*`
[INFO] [stdout]   --> src/voip/mod.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub use sip::*;
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `call_manager::*`
[INFO] [stdout]   --> src/voip/mod.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub use call_manager::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Weekday`
[INFO] [stdout]  --> src/workforce/timecard.rs:9:49
[INFO] [stdout]   |
[INFO] [stdout] 9 | use chrono::{DateTime, Utc, Duration, Datelike, Weekday};
[INFO] [stdout]   |                                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DateTime`
[INFO] [stdout]   --> src/workforce/mod.rs:16:14
[INFO] [stdout]    |
[INFO] [stdout] 16 | use chrono::{DateTime, Utc};
[INFO] [stdout]    |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/search/portscan.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ExploitInfo`, `PortInfo`, and `VulnInfo`
[INFO] [stdout]  --> src/search/osint.rs:5:26
[INFO] [stdout]   |
[INFO] [stdout] 5 | use super::{DomainOSINT, VulnInfo, ExploitInfo, PortInfo};
[INFO] [stdout]   |                          ^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::payloads`
[INFO] [stdout]  --> src/exploit/builders/mod.rs:2:9
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub use super::payloads;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::shells`
[INFO] [stdout]  --> src/exploit/builders/mod.rs:3:9
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub use super::shells;
[INFO] [stdout]   |         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::rootkits`
[INFO] [stdout]  --> src/exploit/builders/mod.rs:4:9
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub use super::rootkits;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `iOS` should have an upper camel case name
[INFO] [stdout]   --> src/exploit/rootkits/mod.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 |     iOS,
[INFO] [stdout]    |     ^^^ help: convert the identifier to upper camel case (notice the capitalization): `IOs`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]   --> src/exploit/mod.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::collections::HashMap;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::process::Command`
[INFO] [stdout]  --> src/security/isolation.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::process::Command;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::RefCell`
[INFO] [stdout]  --> src/ui/toolbar.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::cell::RefCell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]   --> src/ui/toolbar.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::rc::Rc;
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Box as GtkBox`, `Dialog`, `Label`, `Orientation`, and `ResponseType`
[INFO] [stdout]  --> src/ui/dialogs.rs:8:11
[INFO] [stdout]   |
[INFO] [stdout] 8 | use gtk::{Dialog, Label, Box as GtkBox, Orientation, Window, ResponseType, ButtonsType, MessageType};
[INFO] [stdout]   |           ^^^^^^  ^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/ui/dashboard.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `parking_lot::RwLock`
[INFO] [stdout]  --> src/ui/dashboard.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use parking_lot::RwLock;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::assistant::Assistant`
[INFO] [stdout]  --> src/ui/dashboard.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::assistant::Assistant;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::voip::VoIP`
[INFO] [stdout]   --> src/ui/dashboard.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::voip::VoIP;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::workforce::WorkforceCenter`
[INFO] [stdout]   --> src/ui/dashboard.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::workforce::WorkforceCenter;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::search::SearchEngine`
[INFO] [stdout]   --> src/ui/dashboard.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::search::SearchEngine;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `homepage::*`
[INFO] [stdout]    --> src/ui/mod.rs:109:9
[INFO] [stdout]     |
[INFO] [stdout] 109 | pub use homepage::*;
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `webview::*`
[INFO] [stdout]   --> src/engine/mod.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub use webview::*;
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `navigation::*`
[INFO] [stdout]   --> src/engine/mod.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub use navigation::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/privacy/cookie_manager.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `manager::TabManager`
[INFO] [stdout]  --> src/tabs/mod.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub use manager::TabManager;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tracing::info`
[INFO] [stdout]   --> src/adblock/mod.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use tracing::info;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `defaults::*`
[INFO] [stdout]   --> src/config/mod.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub use defaults::*;
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/assistant/ai_engine.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DateTime` and `Utc`
[INFO] [stdout]   --> src/assistant/ai_engine.rs:12:14
[INFO] [stdout]    |
[INFO] [stdout] 12 | use chrono::{DateTime, Utc};
[INFO] [stdout]    |              ^^^^^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sip::*`
[INFO] [stdout]   --> src/voip/mod.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub use sip::*;
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `call_manager::*`
[INFO] [stdout]   --> src/voip/mod.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub use call_manager::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Weekday`
[INFO] [stdout]  --> src/workforce/timecard.rs:9:49
[INFO] [stdout]   |
[INFO] [stdout] 9 | use chrono::{DateTime, Utc, Duration, Datelike, Weekday};
[INFO] [stdout]   |                                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DateTime`
[INFO] [stdout]   --> src/workforce/mod.rs:16:14
[INFO] [stdout]    |
[INFO] [stdout] 16 | use chrono::{DateTime, Utc};
[INFO] [stdout]    |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/search/portscan.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ExploitInfo`, `PortInfo`, and `VulnInfo`
[INFO] [stdout]  --> src/search/osint.rs:5:26
[INFO] [stdout]   |
[INFO] [stdout] 5 | use super::{DomainOSINT, VulnInfo, ExploitInfo, PortInfo};
[INFO] [stdout]   |                          ^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::payloads`
[INFO] [stdout]  --> src/exploit/builders/mod.rs:2:9
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub use super::payloads;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::shells`
[INFO] [stdout]  --> src/exploit/builders/mod.rs:3:9
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub use super::shells;
[INFO] [stdout]   |         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::rootkits`
[INFO] [stdout]  --> src/exploit/builders/mod.rs:4:9
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub use super::rootkits;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `iOS` should have an upper camel case name
[INFO] [stdout]   --> src/exploit/rootkits/mod.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 |     iOS,
[INFO] [stdout]    |     ^^^ help: convert the identifier to upper camel case (notice the capitalization): `IOs`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]   --> src/exploit/mod.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::collections::HashMap;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::process::Command`
[INFO] [stdout]  --> src/security/isolation.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::process::Command;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `risk_color`
[INFO] [stdout]   --> src/ui/search_results.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 61 |         let risk_color = if dropdown.risk_score >= 70 {
[INFO] [stdout]    |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_risk_color`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `risk_color`
[INFO] [stdout]   --> src/ui/search_results.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 61 |         let risk_color = if dropdown.risk_score >= 70 {
[INFO] [stdout]    |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_risk_color`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/exploit/payloads/mod.rs:168:13
[INFO] [stdout]     |
[INFO] [stdout] 168 |         let key: [u8; 32] = rng.gen();
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `iv`
[INFO] [stdout]    --> src/exploit/payloads/mod.rs:169:13
[INFO] [stdout]     |
[INFO] [stdout] 169 |         let iv: [u8; 16] = rng.gen();
[INFO] [stdout]     |             ^^ help: if this is intentional, prefix it with an underscore: `_iv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]    --> src/exploit/payloads/mod.rs:186:50
[INFO] [stdout]     |
[INFO] [stdout] 186 |     fn configure_callback(&self, payload: &[u8], config: &CallbackConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |                                                  ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `feature`
[INFO] [stdout]    --> src/exploit/payloads/mod.rs:191:43
[INFO] [stdout]     |
[INFO] [stdout] 191 |     fn add_feature(&self, payload: &[u8], feature: &PayloadFeature) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |                                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_feature`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `transport`
[INFO] [stdout]    --> src/exploit/shells/mod.rs:177:13
[INFO] [stdout]     |
[INFO] [stdout] 177 |         let transport = self.build_transport(&config.transport)?;
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transport`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `crypto`
[INFO] [stdout]    --> src/exploit/shells/mod.rs:180:13
[INFO] [stdout]     |
[INFO] [stdout] 180 |         let crypto = self.build_crypto(&config.encryption)?;
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_crypto`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `core`
[INFO] [stdout]    --> src/exploit/shells/mod.rs:183:13
[INFO] [stdout]     |
[INFO] [stdout] 183 |         let core = self.build_core(&config.shell_type)?;
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_core`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]    --> src/exploit/shells/mod.rs:206:31
[INFO] [stdout]     |
[INFO] [stdout] 206 |     fn build_transport(&self, config: &TransportConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |                               ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]    --> src/exploit/shells/mod.rs:210:28
[INFO] [stdout]     |
[INFO] [stdout] 210 |     fn build_crypto(&self, config: &EncryptionConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |                            ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `shell_type`
[INFO] [stdout]    --> src/exploit/shells/mod.rs:214:26
[INFO] [stdout]     |
[INFO] [stdout] 214 |     fn build_core(&self, shell_type: &ShellType) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |                          ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_shell_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cap`
[INFO] [stdout]    --> src/exploit/shells/mod.rs:218:32
[INFO] [stdout]     |
[INFO] [stdout] 218 |     fn build_capability(&self, cap: &ShellCapability) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |                                ^^^ help: if this is intentional, prefix it with an underscore: `_cap`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `evasion`
[INFO] [stdout]    --> src/exploit/shells/mod.rs:222:42
[INFO] [stdout]     |
[INFO] [stdout] 222 |     fn apply_evasion(&self, code: &[u8], evasion: &ShellEvasion) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |                                          ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_evasion`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `method`
[INFO] [stdout]    --> src/exploit/shells/mod.rs:226:33
[INFO] [stdout]     |
[INFO] [stdout] 226 |     fn build_persistence(&self, method: &PersistenceMethod) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |                                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_method`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]    --> src/exploit/rootkits/mod.rs:152:38
[INFO] [stdout]     |
[INFO] [stdout] 152 |     fn build_userland_rootkit(&self, config: &RootkitConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |                                      ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]    --> src/exploit/rootkits/mod.rs:157:36
[INFO] [stdout]     |
[INFO] [stdout] 157 |     fn build_kernel_rootkit(&self, config: &RootkitConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |                                    ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]    --> src/exploit/rootkits/mod.rs:162:40
[INFO] [stdout]     |
[INFO] [stdout] 162 |     fn build_hypervisor_rootkit(&self, config: &RootkitConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |                                        ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]    --> src/exploit/rootkits/mod.rs:167:38
[INFO] [stdout]     |
[INFO] [stdout] 167 |     fn build_firmware_rootkit(&self, config: &RootkitConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |                                      ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]    --> src/exploit/rootkits/mod.rs:172:29
[INFO] [stdout]     |
[INFO] [stdout] 172 |     fn build_bootkit(&self, config: &RootkitConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |                             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]    --> src/exploit/rootkits/mod.rs:177:38
[INFO] [stdout]     |
[INFO] [stdout] 177 |     fn build_hardware_rootkit(&self, config: &RootkitConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |                                      ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]    --> src/main.rs:180:9
[INFO] [stdout]     |
[INFO] [stdout] 180 |     let state = Arc::new(AppState::new(config.clone()));
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `shield_btn` is never read
[INFO] [stdout]   --> src/ui/toolbar.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct Toolbar {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 25 |     shield_btn: Button,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Toolbar` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_url`, `set_shield_active`, and `connect_shield` are never used
[INFO] [stdout]    --> src/ui/toolbar.rs:99:12
[INFO] [stdout]     |
[INFO] [stdout]  28 | impl Toolbar {
[INFO] [stdout]     | ------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  99 |     pub fn get_url(&self) -> String {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 111 |     pub fn set_shield_active(&self, active: bool) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 149 |     pub fn connect_shield<F: Fn() + 'static>(&self, f: F) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `notebook` and `new_tab_btn` are never read
[INFO] [stdout]   --> src/ui/tabbar.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct TabBar {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 13 |     container: GtkBox,
[INFO] [stdout] 14 |     notebook: Notebook,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 15 |     new_tab_btn: Button,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TabBar` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `notebook` is never used
[INFO] [stdout]   --> src/ui/tabbar.rs:47:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl TabBar {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 47 |     pub fn notebook(&self) -> &Notebook {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Tab` is never constructed
[INFO] [stdout]   --> src/ui/tabbar.rs:59:12
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub struct Tab {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `container`, and `set_title` are never used
[INFO] [stdout]   --> src/ui/tabbar.rs:67:12
[INFO] [stdout]    |
[INFO] [stdout] 66 | impl Tab {
[INFO] [stdout]    | -------- associated items in this implementation
[INFO] [stdout] 67 |     pub fn new(title: &str) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 94 |     pub fn container(&self) -> &GtkBox {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 98 |     pub fn set_title(&self, title: &str) {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_url`, `focus`, and `select_all` are never used
[INFO] [stdout]    --> src/ui/urlbar.rs:124:12
[INFO] [stdout]     |
[INFO] [stdout]  24 | impl UrlBar {
[INFO] [stdout]     | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 124 |     pub fn get_url(&self) -> String {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 146 |     pub fn focus(&self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 150 |     pub fn select_all(&self) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `privacy_label` and `blocked_label` are never read
[INFO] [stdout]   --> src/ui/statusbar.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct StatusBar {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 18 |     privacy_label: Label,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 19 |     blocked_label: Label,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `StatusBar` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `set_blocked_count` and `set_privacy_mode` are never used
[INFO] [stdout]   --> src/ui/statusbar.rs:82:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl StatusBar {
[INFO] [stdout]    | -------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 82 |     pub fn set_blocked_count(&self, count: u64) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 86 |     pub fn set_privacy_mode(&self, strict: bool) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `show_about_dialog` is never used
[INFO] [stdout]   --> src/ui/dialogs.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub fn show_about_dialog<W: IsA<Window>>(parent: &W) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `show_settings_dialog` is never used
[INFO] [stdout]   --> src/ui/dialogs.rs:30:8
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub fn show_settings_dialog<W: IsA<Window>>(parent: &W) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `theme` is never read
[INFO] [stdout]   --> src/ui/dashboard.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct DashboardConfig {
[INFO] [stdout]    |            --------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub theme: String,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DashboardConfig` 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 `config` and `notebook` are never read
[INFO] [stdout]   --> src/ui/dashboard.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub struct Dashboard {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] 38 |     pub container: GtkBox,
[INFO] [stdout] 39 |     pub config: DashboardConfig,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 40 |     pub notebook: Notebook,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SearchResultCard` is never constructed
[INFO] [stdout]  --> src/ui/search_results.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct SearchResultCard {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `create_osint_dropdown`, and `get_widget` are never used
[INFO] [stdout]    --> src/ui/search_results.rs:16:12
[INFO] [stdout]     |
[INFO] [stdout]  15 | impl SearchResultCard {
[INFO] [stdout]     | --------------------- associated items in this implementation
[INFO] [stdout]  16 |     pub fn new(result: &WebResult) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  57 |     fn create_osint_dropdown(domain: &str, osint: &DomainOSINT) -> Expander {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 171 |     pub fn get_widget(&self) -> &GtkBox {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SearchResultsPanel` is never constructed
[INFO] [stdout]    --> src/ui/search_results.rs:177:12
[INFO] [stdout]     |
[INFO] [stdout] 177 | pub struct SearchResultsPanel {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `display_results`, `create_full_osint_panel`, `clear`, and `get_widget` are never used
[INFO] [stdout]    --> src/ui/search_results.rs:183:12
[INFO] [stdout]     |
[INFO] [stdout] 182 | impl SearchResultsPanel {
[INFO] [stdout]     | ----------------------- associated items in this implementation
[INFO] [stdout] 183 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn display_results(&mut self, search_result: &SearchResult) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 249 |     fn create_full_osint_panel(osint: &DomainOSINT) -> GtkBox {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 369 |     pub fn clear(&mut self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 377 |     pub fn get_widget(&self) -> &GtkBox {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PrivacyEngine` is never constructed
[INFO] [stdout]   --> src/privacy/mod.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub struct PrivacyEngine {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `is_strict_mode`, and `should_block` are never used
[INFO] [stdout]   --> src/privacy/mod.rs:26:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | impl PrivacyEngine {
[INFO] [stdout]    | ------------------ associated items in this implementation
[INFO] [stdout] 26 |     pub fn new(config: PrivacyConfig) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub fn is_strict_mode(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub fn should_block(&self, url: &str) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `TRACKING_DOMAINS` is never used
[INFO] [stdout]   --> src/privacy/tracker_blocker.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | static TRACKING_DOMAINS: Lazy<HashSet<&'static str>> = Lazy::new(|| {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TrackerBlocker` is never constructed
[INFO] [stdout]   --> src/privacy/tracker_blocker.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub struct TrackerBlocker {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `should_block`, `add_to_blocklist`, `increment_blocked`, and `blocked_count` are never used
[INFO] [stdout]   --> src/privacy/tracker_blocker.rs:44:12
[INFO] [stdout]    |
[INFO] [stdout] 43 | impl TrackerBlocker {
[INFO] [stdout]    | ------------------- associated items in this implementation
[INFO] [stdout] 44 |     pub fn new(enabled: bool) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 |     pub fn should_block(&self, url: &str) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 74 |     pub fn add_to_blocklist(&mut self, pattern: String) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 78 |     pub fn increment_blocked(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 82 |     pub fn blocked_count(&self) -> u64 {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FingerprintProtection` is never constructed
[INFO] [stdout]   --> src/privacy/fingerprint_protection.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct FingerprintProtection {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `canvas_noise`, `timezone_offset`, `screen_dimensions`, `hardware_concurrency`, and `device_memory` are never used
[INFO] [stdout]   --> src/privacy/fingerprint_protection.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl FingerprintProtection {
[INFO] [stdout]    | -------------------------- associated items in this implementation
[INFO] [stdout] 15 |     pub fn new(enabled: bool) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |     pub fn canvas_noise(&self) -> f64 {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     pub fn timezone_offset(&self) -> i32 {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub fn screen_dimensions(&self) -> (u32, u32) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 51 |     pub fn hardware_concurrency(&self) -> u32 {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 60 |     pub fn device_memory(&self) -> u32 {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CookieManager` is never constructed
[INFO] [stdout]   --> src/privacy/cookie_manager.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct CookieManager {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `should_allow_cookie`, `add_to_whitelist`, and `clear_whitelist` are never used
[INFO] [stdout]   --> src/privacy/cookie_manager.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | impl CookieManager {
[INFO] [stdout]    | ------------------ associated items in this implementation
[INFO] [stdout] 16 |     pub fn new(block_third_party: bool) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub fn should_allow_cookie(&self, cookie_domain: &str, page_domain: &str) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub fn add_to_whitelist(&mut self, domain: String) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     pub fn clear_whitelist(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TabData` is never constructed
[INFO] [stdout]   --> src/tabs/manager.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct TabData {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/tabs/manager.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | impl TabData {
[INFO] [stdout]    | ------------ associated function in this implementation
[INFO] [stdout] 24 |     pub fn new(url: &str, is_private: bool) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TabManager` is never constructed
[INFO] [stdout]   --> src/tabs/manager.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub struct TabManager {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/tabs/manager.rs:44:12
[INFO] [stdout]     |
[INFO] [stdout]  43 | impl TabManager {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout]  44 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  52 |     pub fn create_tab(&self, url: &str, is_private: bool) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  63 |     pub fn close_tab(&self, id: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  82 |     pub fn get_tab(&self, id: &str) -> Option<TabData> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  86 |     pub fn get_active_tab(&self) -> Option<TabData> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  91 |     pub fn set_active_tab(&self, id: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  97 |     pub fn update_tab_title(&self, id: &str, title: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 103 |     pub fn update_tab_url(&self, id: &str, url: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 109 |     pub fn tab_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 113 |     pub fn get_all_tabs(&self) -> Vec<TabData> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Bookmark` is never constructed
[INFO] [stdout]   --> src/bookmarks/mod.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct Bookmark {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BookmarkFolder` is never constructed
[INFO] [stdout]   --> src/bookmarks/mod.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub struct BookmarkFolder {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BookmarkStore` is never constructed
[INFO] [stdout]   --> src/bookmarks/mod.rs:36:12
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub struct BookmarkStore {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BookmarkManager` is never constructed
[INFO] [stdout]   --> src/bookmarks/mod.rs:70:12
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub struct BookmarkManager {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/bookmarks/mod.rs:76:12
[INFO] [stdout]     |
[INFO] [stdout]  75 | impl BookmarkManager {
[INFO] [stdout]     | -------------------- associated items in this implementation
[INFO] [stdout]  76 |     pub fn new() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  89 |     pub fn add_bookmark(&mut self, title: &str, url: &str, folder_id: Option<&str>) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 106 |     pub fn remove_bookmark(&mut self, id: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 114 |     pub fn get_bookmark(&self, id: &str) -> Option<&Bookmark> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 118 |     pub fn get_all_bookmarks(&self) -> Vec<&Bookmark> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 122 |     pub fn get_bookmarks_in_folder(&self, folder_id: &str) -> Vec<&Bookmark> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 128 |     pub fn search_bookmarks(&self, query: &str) -> Vec<&Bookmark> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 139 |     pub fn save(&self) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_HISTORY_ENTRIES` is never used
[INFO] [stdout]   --> src/history/mod.rs:15:7
[INFO] [stdout]    |
[INFO] [stdout] 15 | const MAX_HISTORY_ENTRIES: usize = 10000;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `HistoryEntry` is never constructed
[INFO] [stdout]   --> src/history/mod.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub struct HistoryEntry {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `HistoryStore` is never constructed
[INFO] [stdout]   --> src/history/mod.rs:26:12
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub struct HistoryStore {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `HistoryManager` is never constructed
[INFO] [stdout]   --> src/history/mod.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub struct HistoryManager {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/history/mod.rs:37:12
[INFO] [stdout]     |
[INFO] [stdout]  36 | impl HistoryManager {
[INFO] [stdout]     | ------------------- associated items in this implementation
[INFO] [stdout]  37 |     pub fn new(enabled: bool) -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  50 |     pub fn add_entry(&mut self, url: &str, title: &str) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  80 |     pub fn get_recent(&self, limit: usize) -> Vec<&HistoryEntry> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  84 |     pub fn search(&self, query: &str) -> Vec<&HistoryEntry> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  94 |     pub fn clear(&mut self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  99 |     pub fn remove_entry(&mut self, url: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 104 |     pub fn save(&self) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 |     pub fn set_enabled(&mut self, enabled: bool) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AdBlocker` is never constructed
[INFO] [stdout]   --> src/adblock/mod.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct AdBlocker {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `should_block`, `blocked_count`, `set_enabled`, `is_enabled`, and `add_rule` are never used
[INFO] [stdout]   --> src/adblock/mod.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl AdBlocker {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 20 |     pub fn new(enabled: bool) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 43 |     pub fn should_block(&self, url: &str, _source_url: &str, _request_type: &str) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 59 |     pub fn blocked_count(&self) -> u64 {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 64 |     pub fn set_enabled(&mut self, enabled: bool) {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 68 |     pub fn is_enabled(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn add_rule(&mut self, domain: String) {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dirs_download_dir` is never used
[INFO] [stdout]    --> src/config/mod.rs:236:4
[INFO] [stdout]     |
[INFO] [stdout] 236 | fn dirs_download_dir() -> Option<PathBuf> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `DEFAULT_HOMEPAGE` is never used
[INFO] [stdout]  --> src/config/defaults.rs:7:11
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub const DEFAULT_HOMEPAGE: &str = "about:blank";
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `DEFAULT_SEARCH_ENGINE` is never used
[INFO] [stdout]  --> src/config/defaults.rs:8:11
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub const DEFAULT_SEARCH_ENGINE: &str = "https://duckduckgo.com/?q=";
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `NULLSEC_USER_AGENTS` is never used
[INFO] [stdout]   --> src/config/defaults.rs:10:11
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub const NULLSEC_USER_AGENTS: &[&str] = &[
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `EASYLIST_URL` is never used
[INFO] [stdout]   --> src/config/defaults.rs:18:11
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub const EASYLIST_URL: &str = "https://easylist.to/easylist/easylist.txt";
[INFO] [stdout]    |           ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `EASYPRIVACY_URL` is never used
[INFO] [stdout]   --> src/config/defaults.rs:19:11
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub const EASYPRIVACY_URL: &str = "https://easylist.to/easylist/easyprivacy.txt";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FANBOY_ANNOYANCE_URL` is never used
[INFO] [stdout]   --> src/config/defaults.rs:20:11
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub const FANBOY_ANNOYANCE_URL: &str = "https://easylist.to/easylist/fanboy-annoyance.txt";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `confidence`, `alternatives`, and `is_final` are never read
[INFO] [stdout]   --> src/assistant/speech.rs:46:9
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub struct SpeechResult {
[INFO] [stdout]    |            ------------ fields in this struct
[INFO] [stdout] 45 |     pub text: String,
[INFO] [stdout] 46 |     pub confidence: f32,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 47 |     pub alternatives: Vec<String>,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 48 |     pub is_final: bool,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SpeechResult` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/assistant/speech.rs:62:11
[INFO] [stdout]    |
[INFO] [stdout] 62 |     Speak(String),
[INFO] [stdout]    |     ----- ^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 62 -     Speak(String),
[INFO] [stdout] 62 +     Speak(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Phoneme` is never used
[INFO] [stdout]    --> src/assistant/speech.rs:147:10
[INFO] [stdout]     |
[INFO] [stdout] 147 | pub enum Phoneme {
[INFO] [stdout]     |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_char` is never used
[INFO] [stdout]    --> src/assistant/speech.rs:173:12
[INFO] [stdout]     |
[INFO] [stdout] 171 | impl Phoneme {
[INFO] [stdout]     | ------------ associated function in this implementation
[INFO] [stdout] 172 |     /// Convert text to phonemes for lip-sync (simplified)
[INFO] [stdout] 173 |     pub fn from_char(c: char) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AISettingsDialog` is never constructed
[INFO] [stdout]    --> src/assistant/ai_chat.rs:233:12
[INFO] [stdout]     |
[INFO] [stdout] 233 | pub struct AISettingsDialog {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `get_config` are never used
[INFO] [stdout]    --> src/assistant/ai_chat.rs:239:12
[INFO] [stdout]     |
[INFO] [stdout] 238 | impl AISettingsDialog {
[INFO] [stdout]     | --------------------- associated items in this implementation
[INFO] [stdout] 239 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 256 |     pub fn get_config(&self) -> AIModelConfig {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `SipMethod` is never used
[INFO] [stdout]   --> src/voip/sip.rs:11:10
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub enum SipMethod {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SipResponse` is never constructed
[INFO] [stdout]   --> src/voip/sip.rs:26:12
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub struct SipResponse {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated constants are never used
[INFO] [stdout]   --> src/voip/sip.rs:32:15
[INFO] [stdout]    |
[INFO] [stdout] 31 | impl SipResponse {
[INFO] [stdout]    | ---------------- associated constants in this implementation
[INFO] [stdout] 32 |     pub const TRYING: Self = Self { code: 100, reason: "Trying" };
[INFO] [stdout]    |               ^^^^^^
[INFO] [stdout] 33 |     pub const RINGING: Self = Self { code: 180, reason: "Ringing" };
[INFO] [stdout]    |               ^^^^^^^
[INFO] [stdout] 34 |     pub const OK: Self = Self { code: 200, reason: "OK" };
[INFO] [stdout]    |               ^^
[INFO] [stdout] 35 |     pub const BAD_REQUEST: Self = Self { code: 400, reason: "Bad Request" };
[INFO] [stdout]    |               ^^^^^^^^^^^
[INFO] [stdout] 36 |     pub const UNAUTHORIZED: Self = Self { code: 401, reason: "Unauthorized" };
[INFO] [stdout]    |               ^^^^^^^^^^^^
[INFO] [stdout] 37 |     pub const NOT_FOUND: Self = Self { code: 404, reason: "Not Found" };
[INFO] [stdout]    |               ^^^^^^^^^
[INFO] [stdout] 38 |     pub const BUSY: Self = Self { code: 486, reason: "Busy Here" };
[INFO] [stdout]    |               ^^^^
[INFO] [stdout] 39 |     pub const DECLINED: Self = Self { code: 603, reason: "Declined" };
[INFO] [stdout]    |               ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SipUri` is never constructed
[INFO] [stdout]   --> src/voip/sip.rs:44:12
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub struct SipUri {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `to_string` are never used
[INFO] [stdout]   --> src/voip/sip.rs:53:12
[INFO] [stdout]    |
[INFO] [stdout] 52 | impl SipUri {
[INFO] [stdout]    | ----------- associated items in this implementation
[INFO] [stdout] 53 |     pub fn new(user: &str, host: &str) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 63 |     pub fn to_string(&self) -> String {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SdpSession` is never constructed
[INFO] [stdout]   --> src/voip/sip.rs:79:12
[INFO] [stdout]    |
[INFO] [stdout] 79 | pub struct SdpSession {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SdpMedia` is never constructed
[INFO] [stdout]   --> src/voip/sip.rs:87:12
[INFO] [stdout]    |
[INFO] [stdout] 87 | pub struct SdpMedia {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `MediaType` is never used
[INFO] [stdout]   --> src/voip/sip.rs:96:10
[INFO] [stdout]    |
[INFO] [stdout] 96 | pub enum MediaType {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QueuedCall` is never constructed
[INFO] [stdout]   --> src/voip/call_manager.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct QueuedCall {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `CallPriority` is never used
[INFO] [stdout]   --> src/voip/call_manager.rs:28:10
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub enum CallPriority {
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `wait_time_seconds` are never used
[INFO] [stdout]   --> src/voip/call_manager.rs:36:12
[INFO] [stdout]    |
[INFO] [stdout] 35 | impl QueuedCall {
[INFO] [stdout]    | --------------- associated items in this implementation
[INFO] [stdout] 36 |     pub fn new(caller_number: &str, queue_name: &str) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 49 |     pub fn wait_time_seconds(&self) -> i64 {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CallQueue` is never constructed
[INFO] [stdout]   --> src/voip/call_manager.rs:55:12
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub struct CallQueue {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/voip/call_manager.rs:63:12
[INFO] [stdout]     |
[INFO] [stdout]  62 | impl CallQueue {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout]  63 |     pub fn new(name: &str, max_size: usize) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  72 |     pub fn enqueue(&self, call: QueuedCall) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  87 |     pub fn dequeue(&self) -> Option<QueuedCall> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  91 |     pub fn peek(&self) -> Option<QueuedCall> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout]  95 |     pub fn remove(&self, call_id: &str) -> Option<QueuedCall> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 104 |     pub fn assign_to_worker(&self, call_id: &str, worker_id: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 114 |     pub fn size(&self) -> usize {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 118 |     pub fn is_empty(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 122 |     pub fn average_wait_time(&self) -> i64 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 131 |     pub fn get_all(&self) -> Vec<QueuedCall> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AudioDevice` is never constructed
[INFO] [stdout]   --> src/voip/audio.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct AudioDevice {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AudioSettings` is never constructed
[INFO] [stdout]   --> src/voip/audio.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct AudioSettings {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AudioEngine` is never constructed
[INFO] [stdout]   --> src/voip/audio.rs:46:12
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub struct AudioEngine {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]   --> src/voip/audio.rs:52:12
[INFO] [stdout]    |
[INFO] [stdout] 51 | impl AudioEngine {
[INFO] [stdout]    | ---------------- associated items in this implementation
[INFO] [stdout] 52 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 59 |     pub fn list_devices(&self) -> Vec<AudioDevice> {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 77 |     pub fn start(&self) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 82 |     pub fn stop(&self) {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 87 |     pub fn set_input_volume(&self, volume: f32) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 91 |     pub fn set_output_volume(&self, volume: f32) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 95 |     pub fn is_active(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `status` is never read
[INFO] [stdout]    --> src/search/qwant.rs:139:9
[INFO] [stdout]     |
[INFO] [stdout] 138 | pub struct QwantResponse {
[INFO] [stdout]     |            ------------- field in this struct
[INFO] [stdout] 139 |     pub status: String,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `QwantResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `total` is never read
[INFO] [stdout]    --> src/search/qwant.rs:151:9
[INFO] [stdout]     |
[INFO] [stdout] 149 | pub struct QwantResult {
[INFO] [stdout]     |            ----------- field in this struct
[INFO] [stdout] 150 |     pub items: Option<Vec<QwantItem>>,
[INFO] [stdout] 151 |     pub total: Option<u64>,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `QwantResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `source` is never read
[INFO] [stdout]    --> src/search/qwant.rs:160:9
[INFO] [stdout]     |
[INFO] [stdout] 155 | pub struct QwantItem {
[INFO] [stdout]     |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 160 |     pub source: Option<String>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `QwantItem` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `timeout` and `max_concurrent` are never read
[INFO] [stdout]    --> src/search/portscan.rs:136:5
[INFO] [stdout]     |
[INFO] [stdout] 135 | pub struct PortScanner {
[INFO] [stdout]     |            ----------- fields in this struct
[INFO] [stdout] 136 |     timeout: Duration,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 137 |     max_concurrent: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `format_scan_results` is never used
[INFO] [stdout]    --> src/search/portscan.rs:319:8
[INFO] [stdout]     |
[INFO] [stdout] 319 | pub fn format_scan_results(ports: &[PortInfo]) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `format_vuln_info` is never used
[INFO] [stdout]    --> src/search/vulnerability.rs:445:8
[INFO] [stdout]     |
[INFO] [stdout] 445 | pub fn format_vuln_info(vuln: &VulnInfo) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `format_exploit_info` is never used
[INFO] [stdout]    --> src/search/vulnerability.rs:465:8
[INFO] [stdout]     |
[INFO] [stdout] 465 | pub fn format_exploit_info(exploit: &ExploitInfo) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OSINTReport` is never constructed
[INFO] [stdout]   --> src/search/osint.rs:85:12
[INFO] [stdout]    |
[INFO] [stdout] 85 | pub struct OSINTReport {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `to_markdown`, and `to_json` are never used
[INFO] [stdout]    --> src/search/osint.rs:91:12
[INFO] [stdout]     |
[INFO] [stdout]  90 | impl OSINTReport {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout]  91 |     pub fn new(target: &str, data: OSINTData) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  99 |     pub fn to_markdown(&self) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 206 |     pub fn to_json(&self) -> Result<String, String> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OSINTDropdown` is never constructed
[INFO] [stdout]    --> src/search/osint.rs:214:12
[INFO] [stdout]     |
[INFO] [stdout] 214 | pub struct OSINTDropdown {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OSINTSummary` is never constructed
[INFO] [stdout]    --> src/search/osint.rs:223:12
[INFO] [stdout]     |
[INFO] [stdout] 223 | pub struct OSINTSummary {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `from_domain_osint` and `to_html` are never used
[INFO] [stdout]    --> src/search/osint.rs:235:12
[INFO] [stdout]     |
[INFO] [stdout] 234 | impl OSINTDropdown {
[INFO] [stdout]     | ------------------ associated items in this implementation
[INFO] [stdout] 235 |     pub fn from_domain_osint(domain: &str, osint: &DomainOSINT) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 271 |     pub fn to_html(&self) -> String {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OSINT_DROPDOWN_CSS` is never used
[INFO] [stdout]    --> src/search/osint.rs:351:11
[INFO] [stdout]     |
[INFO] [stdout] 351 | pub const OSINT_DROPDOWN_CSS: &str = r#"
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Severity` is never used
[INFO] [stdout]   --> src/exploit/mod.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub enum Severity {
[INFO] [stdout]    |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ExploitCategory` is never used
[INFO] [stdout]   --> src/exploit/mod.rs:28:10
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub enum ExploitCategory {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Exploit` is never constructed
[INFO] [stdout]   --> src/exploit/mod.rs:71:12
[INFO] [stdout]    |
[INFO] [stdout] 71 | pub struct Exploit {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ExploitEngine` is never constructed
[INFO] [stdout]   --> src/exploit/mod.rs:92:12
[INFO] [stdout]    |
[INFO] [stdout] 92 | pub struct ExploitEngine {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `search`, `get_obscure_exploits`, `generate_payload`, `build_shell`, and `build_rootkit` are never used
[INFO] [stdout]    --> src/exploit/mod.rs:100:12
[INFO] [stdout]     |
[INFO] [stdout]  99 | impl ExploitEngine {
[INFO] [stdout]     | ------------------ associated items in this implementation
[INFO] [stdout] 100 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn search(&self, query: &str) -> Vec<&Exploit> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 115 |     pub fn get_obscure_exploits(&self, min_obscurity: u8) -> Vec<&Exploit> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 122 |     pub fn generate_payload(&self, config: payloads::PayloadConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 127 |     pub fn build_shell(&self, config: shells::ShellConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     pub fn build_rootkit(&self, config: rootkits::RootkitConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ExploitDatabase` is never constructed
[INFO] [stdout]  --> src/exploit/database/mod.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct ExploitDatabase {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/exploit/database/mod.rs:14:12
[INFO] [stdout]     |
[INFO] [stdout]  13 | impl ExploitDatabase {
[INFO] [stdout]     | -------------------- associated items in this implementation
[INFO] [stdout]  14 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  29 |     fn load_obscure_exploits(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 162 |     fn load_kernel_exploits(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 208 |     fn load_browser_exploits(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 231 |     fn load_network_exploits(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 254 |     fn load_hardware_exploits(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 277 |     fn add_exploit(&mut self, exploit: Exploit) {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 281 |     pub fn search(&self, query: &str) -> Vec<&Exploit> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 294 |     pub fn get_by_category(&self, category: &ExploitCategory) -> Vec<&Exploit> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PayloadConfig` is never constructed
[INFO] [stdout]  --> src/exploit/payloads/mod.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct PayloadConfig {
[INFO] [stdout]   |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Architecture` is never used
[INFO] [stdout]   --> src/exploit/payloads/mod.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub enum Architecture {
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `PayloadFormat` is never used
[INFO] [stdout]   --> src/exploit/payloads/mod.rs:28:10
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub enum PayloadFormat {
[INFO] [stdout]    |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EvasionConfig` is never constructed
[INFO] [stdout]   --> src/exploit/payloads/mod.rs:41:12
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub struct EvasionConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CallbackConfig` is never constructed
[INFO] [stdout]   --> src/exploit/payloads/mod.rs:55:12
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub struct CallbackConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `CallbackMethod` is never used
[INFO] [stdout]   --> src/exploit/payloads/mod.rs:65:10
[INFO] [stdout]    |
[INFO] [stdout] 65 | pub enum CallbackMethod {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Protocol` is never used
[INFO] [stdout]   --> src/exploit/payloads/mod.rs:77:10
[INFO] [stdout]    |
[INFO] [stdout] 77 | pub enum Protocol {
[INFO] [stdout]    |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `PayloadFeature` is never used
[INFO] [stdout]   --> src/exploit/payloads/mod.rs:88:10
[INFO] [stdout]    |
[INFO] [stdout] 88 | pub enum PayloadFeature {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PayloadGenerator` is never constructed
[INFO] [stdout]    --> src/exploit/payloads/mod.rs:101:12
[INFO] [stdout]     |
[INFO] [stdout] 101 | pub struct PayloadGenerator {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PayloadTemplate` is never constructed
[INFO] [stdout]    --> src/exploit/payloads/mod.rs:105:8
[INFO] [stdout]     |
[INFO] [stdout] 105 | struct PayloadTemplate {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/exploit/payloads/mod.rs:112:12
[INFO] [stdout]     |
[INFO] [stdout] 111 | impl PayloadGenerator {
[INFO] [stdout]     | --------------------- associated items in this implementation
[INFO] [stdout] 112 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 118 |     fn load_templates() -> Vec<PayloadTemplate> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 123 |     pub fn generate(&self, config: PayloadConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 154 |     fn find_template(&self, config: &PayloadConfig) -> Result<&PayloadTemplate, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 163 |     fn encrypt_payload(&self, payload: &[u8]) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 175 |     fn apply_polymorphism(&self, payload: &[u8]) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 181 |     fn obfuscate(&self, payload: &[u8]) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 186 |     fn configure_callback(&self, payload: &[u8], config: &CallbackConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 |     fn add_feature(&self, payload: &[u8], feature: &PayloadFeature) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ShellConfig` is never constructed
[INFO] [stdout]  --> src/exploit/shells/mod.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct ShellConfig {
[INFO] [stdout]   |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ShellType` is never used
[INFO] [stdout]   --> src/exploit/shells/mod.rs:20:10
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub enum ShellType {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TransportConfig` is never constructed
[INFO] [stdout]   --> src/exploit/shells/mod.rs:34:12
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub struct TransportConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `TransportProtocol` is never used
[INFO] [stdout]   --> src/exploit/shells/mod.rs:42:10
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub enum TransportProtocol {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EncryptionConfig` is never constructed
[INFO] [stdout]   --> src/exploit/shells/mod.rs:64:12
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub struct EncryptionConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `EncryptionAlgorithm` is never used
[INFO] [stdout]   --> src/exploit/shells/mod.rs:71:10
[INFO] [stdout]    |
[INFO] [stdout] 71 | pub enum EncryptionAlgorithm {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `KeyExchange` is never used
[INFO] [stdout]   --> src/exploit/shells/mod.rs:79:10
[INFO] [stdout]    |
[INFO] [stdout] 79 | pub enum KeyExchange {
[INFO] [stdout]    |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `AuthMethod` is never used
[INFO] [stdout]   --> src/exploit/shells/mod.rs:87:10
[INFO] [stdout]    |
[INFO] [stdout] 87 | pub enum AuthMethod {
[INFO] [stdout]    |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ShellEvasion` is never constructed
[INFO] [stdout]   --> src/exploit/shells/mod.rs:95:12
[INFO] [stdout]    |
[INFO] [stdout] 95 | pub struct ShellEvasion {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ShellCapability` is never used
[INFO] [stdout]    --> src/exploit/shells/mod.rs:113:10
[INFO] [stdout]     |
[INFO] [stdout] 113 | pub enum ShellCapability {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `PersistenceMethod` is never used
[INFO] [stdout]    --> src/exploit/shells/mod.rs:143:10
[INFO] [stdout]     |
[INFO] [stdout] 143 | pub enum PersistenceMethod {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ShellBuilder` is never constructed
[INFO] [stdout]    --> src/exploit/shells/mod.rs:162:12
[INFO] [stdout]     |
[INFO] [stdout] 162 | pub struct ShellBuilder {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/exploit/shells/mod.rs:167:12
[INFO] [stdout]     |
[INFO] [stdout] 166 | impl ShellBuilder {
[INFO] [stdout]     | ----------------- associated items in this implementation
[INFO] [stdout] 167 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 171 |     pub fn build(&self, config: ShellConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 206 |     fn build_transport(&self, config: &TransportConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 210 |     fn build_crypto(&self, config: &EncryptionConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 214 |     fn build_core(&self, shell_type: &ShellType) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 218 |     fn build_capability(&self, cap: &ShellCapability) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 222 |     fn apply_evasion(&self, code: &[u8], evasion: &ShellEvasion) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 226 |     fn build_persistence(&self, method: &PersistenceMethod) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |     fn finalize(&self, code: &[u8]) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RootkitConfig` is never constructed
[INFO] [stdout]  --> src/exploit/rootkits/mod.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct RootkitConfig {
[INFO] [stdout]   |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `TargetOS` is never used
[INFO] [stdout]   --> src/exploit/rootkits/mod.rs:20:10
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub enum TargetOS {
[INFO] [stdout]    |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `RootkitType` is never used
[INFO] [stdout]   --> src/exploit/rootkits/mod.rs:30:10
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub enum RootkitType {
[INFO] [stdout]    |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `RootkitCapability` is never used
[INFO] [stdout]   --> src/exploit/rootkits/mod.rs:46:10
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub enum RootkitCapability {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `StealthConfig` is never constructed
[INFO] [stdout]   --> src/exploit/rootkits/mod.rs:74:12
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub struct StealthConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `RootkitPersistence` is never used
[INFO] [stdout]   --> src/exploit/rootkits/mod.rs:92:10
[INFO] [stdout]    |
[INFO] [stdout] 92 | pub enum RootkitPersistence {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CommsConfig` is never constructed
[INFO] [stdout]    --> src/exploit/rootkits/mod.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout] 110 | pub struct CommsConfig {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `CommsProtocol` is never used
[INFO] [stdout]    --> src/exploit/rootkits/mod.rs:117:10
[INFO] [stdout]     |
[INFO] [stdout] 117 | pub enum CommsProtocol {
[INFO] [stdout]     |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RootkitBuilder` is never constructed
[INFO] [stdout]    --> src/exploit/rootkits/mod.rs:132:12
[INFO] [stdout]     |
[INFO] [stdout] 132 | pub struct RootkitBuilder {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/exploit/rootkits/mod.rs:137:12
[INFO] [stdout]     |
[INFO] [stdout] 136 | impl RootkitBuilder {
[INFO] [stdout]     | ------------------- associated items in this implementation
[INFO] [stdout] 137 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 141 |     pub fn build(&self, config: RootkitConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 152 |     fn build_userland_rootkit(&self, config: &RootkitConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 157 |     fn build_kernel_rootkit(&self, config: &RootkitConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 162 |     fn build_hypervisor_rootkit(&self, config: &RootkitConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 167 |     fn build_firmware_rootkit(&self, config: &RootkitConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 172 |     fn build_bootkit(&self, config: &RootkitConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 177 |     fn build_hardware_rootkit(&self, config: &RootkitConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SecurityConfig` is never constructed
[INFO] [stdout]   --> src/security/mod.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct SecurityConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SecurityManager` is never constructed
[INFO] [stdout]   --> src/security/mod.rs:48:12
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub struct SecurityManager {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `apply_page_hardening` are never used
[INFO] [stdout]   --> src/security/mod.rs:53:12
[INFO] [stdout]    |
[INFO] [stdout] 52 | impl SecurityManager {
[INFO] [stdout]    | -------------------- associated items in this implementation
[INFO] [stdout] 53 |     pub fn new(config: SecurityConfig) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 59 |     pub fn apply_page_hardening(&self) -> String {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ProcessIsolation` is never constructed
[INFO] [stdout]  --> src/security/isolation.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct ProcessIsolation {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `setup_sandbox`, and `setup_seccomp` are never used
[INFO] [stdout]   --> src/security/isolation.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout]  9 | impl ProcessIsolation {
[INFO] [stdout]    | --------------------- associated items in this implementation
[INFO] [stdout] 10 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 15 |     pub fn setup_sandbox(&self) -> Result<(), String> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     fn setup_seccomp(&self) -> Result<(), String> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AntiFingerprintEngine` is never constructed
[INFO] [stdout]  --> src/security/anti_fingerprint.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct AntiFingerprintEngine {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `generate_user_agent`, and `get_spoofed_headers` are never used
[INFO] [stdout]   --> src/security/anti_fingerprint.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl AntiFingerprintEngine {
[INFO] [stdout]    | -------------------------- associated items in this implementation
[INFO] [stdout] 12 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |     fn generate_user_agent() -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub fn get_spoofed_headers(&self) -> Vec<(String, String)> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TrafficProtection` is never constructed
[INFO] [stdout]  --> src/security/traffic.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct TrafficProtection {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `pad_request`, and `apply_timing_jitter` are never used
[INFO] [stdout]   --> src/security/traffic.rs:9:12
[INFO] [stdout]    |
[INFO] [stdout]  8 | impl TrafficProtection {
[INFO] [stdout]    | ---------------------- associated items in this implementation
[INFO] [stdout]  9 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |     pub fn pad_request(&self, data: &[u8]) -> Vec<u8> {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub async fn apply_timing_jitter(&self) {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MemoryProtection` is never constructed
[INFO] [stdout]  --> src/security/memory.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct MemoryProtection {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `new`, `secure_zero`, and `guarded_alloc` are never used
[INFO] [stdout]   --> src/security/memory.rs:8:12
[INFO] [stdout]    |
[INFO] [stdout]  7 | impl MemoryProtection {
[INFO] [stdout]    | --------------------- associated functions in this implementation
[INFO] [stdout]  8 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 13 |     pub fn secure_zero(data: &mut [u8]) {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub fn guarded_alloc(size: usize) -> Result<*mut u8, String> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DatabaseConfig` is never constructed
[INFO] [stdout]   --> src/database/mod.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct DatabaseConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Database` is never constructed
[INFO] [stdout]   --> src/database/mod.rs:34:12
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub struct Database {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `init_tables`, and `conn` are never used
[INFO] [stdout]    --> src/database/mod.rs:41:12
[INFO] [stdout]     |
[INFO] [stdout]  40 | impl Database {
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout]  41 |     pub fn new(config: DatabaseConfig) -> SqlResult<Self> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  61 |     fn init_tables(&self) -> SqlResult<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 173 |     pub fn conn(&self) -> &Arc<Mutex<Connection>> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/exploit/payloads/mod.rs:168:13
[INFO] [stdout]     |
[INFO] [stdout] 168 |         let key: [u8; 32] = rng.gen();
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `iv`
[INFO] [stdout]    --> src/exploit/payloads/mod.rs:169:13
[INFO] [stdout]     |
[INFO] [stdout] 169 |         let iv: [u8; 16] = rng.gen();
[INFO] [stdout]     |             ^^ help: if this is intentional, prefix it with an underscore: `_iv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]    --> src/exploit/payloads/mod.rs:186:50
[INFO] [stdout]     |
[INFO] [stdout] 186 |     fn configure_callback(&self, payload: &[u8], config: &CallbackConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |                                                  ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `feature`
[INFO] [stdout]    --> src/exploit/payloads/mod.rs:191:43
[INFO] [stdout]     |
[INFO] [stdout] 191 |     fn add_feature(&self, payload: &[u8], feature: &PayloadFeature) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |                                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_feature`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `transport`
[INFO] [stdout]    --> src/exploit/shells/mod.rs:177:13
[INFO] [stdout]     |
[INFO] [stdout] 177 |         let transport = self.build_transport(&config.transport)?;
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transport`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `crypto`
[INFO] [stdout]    --> src/exploit/shells/mod.rs:180:13
[INFO] [stdout]     |
[INFO] [stdout] 180 |         let crypto = self.build_crypto(&config.encryption)?;
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_crypto`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `core`
[INFO] [stdout]    --> src/exploit/shells/mod.rs:183:13
[INFO] [stdout]     |
[INFO] [stdout] 183 |         let core = self.build_core(&config.shell_type)?;
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_core`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]    --> src/exploit/shells/mod.rs:206:31
[INFO] [stdout]     |
[INFO] [stdout] 206 |     fn build_transport(&self, config: &TransportConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |                               ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]    --> src/exploit/shells/mod.rs:210:28
[INFO] [stdout]     |
[INFO] [stdout] 210 |     fn build_crypto(&self, config: &EncryptionConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |                            ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `shell_type`
[INFO] [stdout]    --> src/exploit/shells/mod.rs:214:26
[INFO] [stdout]     |
[INFO] [stdout] 214 |     fn build_core(&self, shell_type: &ShellType) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |                          ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_shell_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cap`
[INFO] [stdout]    --> src/exploit/shells/mod.rs:218:32
[INFO] [stdout]     |
[INFO] [stdout] 218 |     fn build_capability(&self, cap: &ShellCapability) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |                                ^^^ help: if this is intentional, prefix it with an underscore: `_cap`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `evasion`
[INFO] [stdout]    --> src/exploit/shells/mod.rs:222:42
[INFO] [stdout]     |
[INFO] [stdout] 222 |     fn apply_evasion(&self, code: &[u8], evasion: &ShellEvasion) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |                                          ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_evasion`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `method`
[INFO] [stdout]    --> src/exploit/shells/mod.rs:226:33
[INFO] [stdout]     |
[INFO] [stdout] 226 |     fn build_persistence(&self, method: &PersistenceMethod) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |                                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_method`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]    --> src/exploit/rootkits/mod.rs:152:38
[INFO] [stdout]     |
[INFO] [stdout] 152 |     fn build_userland_rootkit(&self, config: &RootkitConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |                                      ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]    --> src/exploit/rootkits/mod.rs:157:36
[INFO] [stdout]     |
[INFO] [stdout] 157 |     fn build_kernel_rootkit(&self, config: &RootkitConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |                                    ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]    --> src/exploit/rootkits/mod.rs:162:40
[INFO] [stdout]     |
[INFO] [stdout] 162 |     fn build_hypervisor_rootkit(&self, config: &RootkitConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |                                        ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]    --> src/exploit/rootkits/mod.rs:167:38
[INFO] [stdout]     |
[INFO] [stdout] 167 |     fn build_firmware_rootkit(&self, config: &RootkitConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |                                      ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]    --> src/exploit/rootkits/mod.rs:172:29
[INFO] [stdout]     |
[INFO] [stdout] 172 |     fn build_bootkit(&self, config: &RootkitConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |                             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]    --> src/exploit/rootkits/mod.rs:177:38
[INFO] [stdout]     |
[INFO] [stdout] 177 |     fn build_hardware_rootkit(&self, config: &RootkitConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |                                      ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]    --> src/main.rs:180:9
[INFO] [stdout]     |
[INFO] [stdout] 180 |     let state = Arc::new(AppState::new(config.clone()));
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `shield_btn` is never read
[INFO] [stdout]   --> src/ui/toolbar.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct Toolbar {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 25 |     shield_btn: Button,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Toolbar` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_url`, `set_shield_active`, and `connect_shield` are never used
[INFO] [stdout]    --> src/ui/toolbar.rs:99:12
[INFO] [stdout]     |
[INFO] [stdout]  28 | impl Toolbar {
[INFO] [stdout]     | ------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  99 |     pub fn get_url(&self) -> String {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 111 |     pub fn set_shield_active(&self, active: bool) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 149 |     pub fn connect_shield<F: Fn() + 'static>(&self, f: F) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `notebook` and `new_tab_btn` are never read
[INFO] [stdout]   --> src/ui/tabbar.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct TabBar {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 13 |     container: GtkBox,
[INFO] [stdout] 14 |     notebook: Notebook,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 15 |     new_tab_btn: Button,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TabBar` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `notebook` is never used
[INFO] [stdout]   --> src/ui/tabbar.rs:47:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl TabBar {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 47 |     pub fn notebook(&self) -> &Notebook {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Tab` is never constructed
[INFO] [stdout]   --> src/ui/tabbar.rs:59:12
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub struct Tab {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `container`, and `set_title` are never used
[INFO] [stdout]   --> src/ui/tabbar.rs:67:12
[INFO] [stdout]    |
[INFO] [stdout] 66 | impl Tab {
[INFO] [stdout]    | -------- associated items in this implementation
[INFO] [stdout] 67 |     pub fn new(title: &str) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 94 |     pub fn container(&self) -> &GtkBox {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 98 |     pub fn set_title(&self, title: &str) {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_url`, `focus`, and `select_all` are never used
[INFO] [stdout]    --> src/ui/urlbar.rs:124:12
[INFO] [stdout]     |
[INFO] [stdout]  24 | impl UrlBar {
[INFO] [stdout]     | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 124 |     pub fn get_url(&self) -> String {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 146 |     pub fn focus(&self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 150 |     pub fn select_all(&self) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `privacy_label` and `blocked_label` are never read
[INFO] [stdout]   --> src/ui/statusbar.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct StatusBar {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 18 |     privacy_label: Label,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 19 |     blocked_label: Label,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `StatusBar` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `set_blocked_count` and `set_privacy_mode` are never used
[INFO] [stdout]   --> src/ui/statusbar.rs:82:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl StatusBar {
[INFO] [stdout]    | -------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 82 |     pub fn set_blocked_count(&self, count: u64) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 86 |     pub fn set_privacy_mode(&self, strict: bool) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `show_about_dialog` is never used
[INFO] [stdout]   --> src/ui/dialogs.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub fn show_about_dialog<W: IsA<Window>>(parent: &W) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `show_settings_dialog` is never used
[INFO] [stdout]   --> src/ui/dialogs.rs:30:8
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub fn show_settings_dialog<W: IsA<Window>>(parent: &W) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `theme` is never read
[INFO] [stdout]   --> src/ui/dashboard.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct DashboardConfig {
[INFO] [stdout]    |            --------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub theme: String,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DashboardConfig` 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 `config` and `notebook` are never read
[INFO] [stdout]   --> src/ui/dashboard.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub struct Dashboard {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] 38 |     pub container: GtkBox,
[INFO] [stdout] 39 |     pub config: DashboardConfig,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 40 |     pub notebook: Notebook,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SearchResultCard` is never constructed
[INFO] [stdout]  --> src/ui/search_results.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct SearchResultCard {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `create_osint_dropdown`, and `get_widget` are never used
[INFO] [stdout]    --> src/ui/search_results.rs:16:12
[INFO] [stdout]     |
[INFO] [stdout]  15 | impl SearchResultCard {
[INFO] [stdout]     | --------------------- associated items in this implementation
[INFO] [stdout]  16 |     pub fn new(result: &WebResult) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  57 |     fn create_osint_dropdown(domain: &str, osint: &DomainOSINT) -> Expander {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 171 |     pub fn get_widget(&self) -> &GtkBox {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SearchResultsPanel` is never constructed
[INFO] [stdout]    --> src/ui/search_results.rs:177:12
[INFO] [stdout]     |
[INFO] [stdout] 177 | pub struct SearchResultsPanel {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `display_results`, `create_full_osint_panel`, `clear`, and `get_widget` are never used
[INFO] [stdout]    --> src/ui/search_results.rs:183:12
[INFO] [stdout]     |
[INFO] [stdout] 182 | impl SearchResultsPanel {
[INFO] [stdout]     | ----------------------- associated items in this implementation
[INFO] [stdout] 183 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn display_results(&mut self, search_result: &SearchResult) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 249 |     fn create_full_osint_panel(osint: &DomainOSINT) -> GtkBox {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 369 |     pub fn clear(&mut self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 377 |     pub fn get_widget(&self) -> &GtkBox {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PrivacyEngine` is never constructed
[INFO] [stdout]   --> src/privacy/mod.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub struct PrivacyEngine {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `is_strict_mode`, and `should_block` are never used
[INFO] [stdout]   --> src/privacy/mod.rs:26:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | impl PrivacyEngine {
[INFO] [stdout]    | ------------------ associated items in this implementation
[INFO] [stdout] 26 |     pub fn new(config: PrivacyConfig) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub fn is_strict_mode(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub fn should_block(&self, url: &str) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `TRACKING_DOMAINS` is never used
[INFO] [stdout]   --> src/privacy/tracker_blocker.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | static TRACKING_DOMAINS: Lazy<HashSet<&'static str>> = Lazy::new(|| {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TrackerBlocker` is never constructed
[INFO] [stdout]   --> src/privacy/tracker_blocker.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub struct TrackerBlocker {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `should_block`, `add_to_blocklist`, `increment_blocked`, and `blocked_count` are never used
[INFO] [stdout]   --> src/privacy/tracker_blocker.rs:44:12
[INFO] [stdout]    |
[INFO] [stdout] 43 | impl TrackerBlocker {
[INFO] [stdout]    | ------------------- associated items in this implementation
[INFO] [stdout] 44 |     pub fn new(enabled: bool) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 |     pub fn should_block(&self, url: &str) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 74 |     pub fn add_to_blocklist(&mut self, pattern: String) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 78 |     pub fn increment_blocked(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 82 |     pub fn blocked_count(&self) -> u64 {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FingerprintProtection` is never constructed
[INFO] [stdout]   --> src/privacy/fingerprint_protection.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct FingerprintProtection {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `canvas_noise`, `timezone_offset`, `screen_dimensions`, `hardware_concurrency`, and `device_memory` are never used
[INFO] [stdout]   --> src/privacy/fingerprint_protection.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl FingerprintProtection {
[INFO] [stdout]    | -------------------------- associated items in this implementation
[INFO] [stdout] 15 |     pub fn new(enabled: bool) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |     pub fn canvas_noise(&self) -> f64 {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     pub fn timezone_offset(&self) -> i32 {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub fn screen_dimensions(&self) -> (u32, u32) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 51 |     pub fn hardware_concurrency(&self) -> u32 {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 60 |     pub fn device_memory(&self) -> u32 {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CookieManager` is never constructed
[INFO] [stdout]   --> src/privacy/cookie_manager.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct CookieManager {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `should_allow_cookie`, `add_to_whitelist`, and `clear_whitelist` are never used
[INFO] [stdout]   --> src/privacy/cookie_manager.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | impl CookieManager {
[INFO] [stdout]    | ------------------ associated items in this implementation
[INFO] [stdout] 16 |     pub fn new(block_third_party: bool) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub fn should_allow_cookie(&self, cookie_domain: &str, page_domain: &str) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub fn add_to_whitelist(&mut self, domain: String) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     pub fn clear_whitelist(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TabData` is never constructed
[INFO] [stdout]   --> src/tabs/manager.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct TabData {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/tabs/manager.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | impl TabData {
[INFO] [stdout]    | ------------ associated function in this implementation
[INFO] [stdout] 24 |     pub fn new(url: &str, is_private: bool) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TabManager` is never constructed
[INFO] [stdout]   --> src/tabs/manager.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub struct TabManager {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/tabs/manager.rs:44:12
[INFO] [stdout]     |
[INFO] [stdout]  43 | impl TabManager {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout]  44 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  52 |     pub fn create_tab(&self, url: &str, is_private: bool) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  63 |     pub fn close_tab(&self, id: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  82 |     pub fn get_tab(&self, id: &str) -> Option<TabData> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  86 |     pub fn get_active_tab(&self) -> Option<TabData> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  91 |     pub fn set_active_tab(&self, id: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  97 |     pub fn update_tab_title(&self, id: &str, title: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 103 |     pub fn update_tab_url(&self, id: &str, url: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 109 |     pub fn tab_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 113 |     pub fn get_all_tabs(&self) -> Vec<TabData> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Bookmark` is never constructed
[INFO] [stdout]   --> src/bookmarks/mod.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct Bookmark {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BookmarkFolder` is never constructed
[INFO] [stdout]   --> src/bookmarks/mod.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub struct BookmarkFolder {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BookmarkStore` is never constructed
[INFO] [stdout]   --> src/bookmarks/mod.rs:36:12
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub struct BookmarkStore {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BookmarkManager` is never constructed
[INFO] [stdout]   --> src/bookmarks/mod.rs:70:12
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub struct BookmarkManager {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/bookmarks/mod.rs:76:12
[INFO] [stdout]     |
[INFO] [stdout]  75 | impl BookmarkManager {
[INFO] [stdout]     | -------------------- associated items in this implementation
[INFO] [stdout]  76 |     pub fn new() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  89 |     pub fn add_bookmark(&mut self, title: &str, url: &str, folder_id: Option<&str>) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 106 |     pub fn remove_bookmark(&mut self, id: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 114 |     pub fn get_bookmark(&self, id: &str) -> Option<&Bookmark> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 118 |     pub fn get_all_bookmarks(&self) -> Vec<&Bookmark> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 122 |     pub fn get_bookmarks_in_folder(&self, folder_id: &str) -> Vec<&Bookmark> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 128 |     pub fn search_bookmarks(&self, query: &str) -> Vec<&Bookmark> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 139 |     pub fn save(&self) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_HISTORY_ENTRIES` is never used
[INFO] [stdout]   --> src/history/mod.rs:15:7
[INFO] [stdout]    |
[INFO] [stdout] 15 | const MAX_HISTORY_ENTRIES: usize = 10000;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `HistoryEntry` is never constructed
[INFO] [stdout]   --> src/history/mod.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub struct HistoryEntry {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `HistoryStore` is never constructed
[INFO] [stdout]   --> src/history/mod.rs:26:12
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub struct HistoryStore {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `HistoryManager` is never constructed
[INFO] [stdout]   --> src/history/mod.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub struct HistoryManager {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/history/mod.rs:37:12
[INFO] [stdout]     |
[INFO] [stdout]  36 | impl HistoryManager {
[INFO] [stdout]     | ------------------- associated items in this implementation
[INFO] [stdout]  37 |     pub fn new(enabled: bool) -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  50 |     pub fn add_entry(&mut self, url: &str, title: &str) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  80 |     pub fn get_recent(&self, limit: usize) -> Vec<&HistoryEntry> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  84 |     pub fn search(&self, query: &str) -> Vec<&HistoryEntry> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  94 |     pub fn clear(&mut self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  99 |     pub fn remove_entry(&mut self, url: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 104 |     pub fn save(&self) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 |     pub fn set_enabled(&mut self, enabled: bool) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AdBlocker` is never constructed
[INFO] [stdout]   --> src/adblock/mod.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct AdBlocker {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `should_block`, `blocked_count`, `set_enabled`, `is_enabled`, and `add_rule` are never used
[INFO] [stdout]   --> src/adblock/mod.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl AdBlocker {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 20 |     pub fn new(enabled: bool) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 43 |     pub fn should_block(&self, url: &str, _source_url: &str, _request_type: &str) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 59 |     pub fn blocked_count(&self) -> u64 {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 64 |     pub fn set_enabled(&mut self, enabled: bool) {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 68 |     pub fn is_enabled(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn add_rule(&mut self, domain: String) {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dirs_download_dir` is never used
[INFO] [stdout]    --> src/config/mod.rs:236:4
[INFO] [stdout]     |
[INFO] [stdout] 236 | fn dirs_download_dir() -> Option<PathBuf> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `DEFAULT_HOMEPAGE` is never used
[INFO] [stdout]  --> src/config/defaults.rs:7:11
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub const DEFAULT_HOMEPAGE: &str = "about:blank";
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `DEFAULT_SEARCH_ENGINE` is never used
[INFO] [stdout]  --> src/config/defaults.rs:8:11
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub const DEFAULT_SEARCH_ENGINE: &str = "https://duckduckgo.com/?q=";
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `NULLSEC_USER_AGENTS` is never used
[INFO] [stdout]   --> src/config/defaults.rs:10:11
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub const NULLSEC_USER_AGENTS: &[&str] = &[
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `EASYLIST_URL` is never used
[INFO] [stdout]   --> src/config/defaults.rs:18:11
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub const EASYLIST_URL: &str = "https://easylist.to/easylist/easylist.txt";
[INFO] [stdout]    |           ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `EASYPRIVACY_URL` is never used
[INFO] [stdout]   --> src/config/defaults.rs:19:11
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub const EASYPRIVACY_URL: &str = "https://easylist.to/easylist/easyprivacy.txt";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FANBOY_ANNOYANCE_URL` is never used
[INFO] [stdout]   --> src/config/defaults.rs:20:11
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub const FANBOY_ANNOYANCE_URL: &str = "https://easylist.to/easylist/fanboy-annoyance.txt";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `confidence`, `alternatives`, and `is_final` are never read
[INFO] [stdout]   --> src/assistant/speech.rs:46:9
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub struct SpeechResult {
[INFO] [stdout]    |            ------------ fields in this struct
[INFO] [stdout] 45 |     pub text: String,
[INFO] [stdout] 46 |     pub confidence: f32,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 47 |     pub alternatives: Vec<String>,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 48 |     pub is_final: bool,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SpeechResult` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/assistant/speech.rs:62:11
[INFO] [stdout]    |
[INFO] [stdout] 62 |     Speak(String),
[INFO] [stdout]    |     ----- ^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 62 -     Speak(String),
[INFO] [stdout] 62 +     Speak(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Phoneme` is never used
[INFO] [stdout]    --> src/assistant/speech.rs:147:10
[INFO] [stdout]     |
[INFO] [stdout] 147 | pub enum Phoneme {
[INFO] [stdout]     |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_char` is never used
[INFO] [stdout]    --> src/assistant/speech.rs:173:12
[INFO] [stdout]     |
[INFO] [stdout] 171 | impl Phoneme {
[INFO] [stdout]     | ------------ associated function in this implementation
[INFO] [stdout] 172 |     /// Convert text to phonemes for lip-sync (simplified)
[INFO] [stdout] 173 |     pub fn from_char(c: char) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AISettingsDialog` is never constructed
[INFO] [stdout]    --> src/assistant/ai_chat.rs:233:12
[INFO] [stdout]     |
[INFO] [stdout] 233 | pub struct AISettingsDialog {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `get_config` are never used
[INFO] [stdout]    --> src/assistant/ai_chat.rs:239:12
[INFO] [stdout]     |
[INFO] [stdout] 238 | impl AISettingsDialog {
[INFO] [stdout]     | --------------------- associated items in this implementation
[INFO] [stdout] 239 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 256 |     pub fn get_config(&self) -> AIModelConfig {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `SipMethod` is never used
[INFO] [stdout]   --> src/voip/sip.rs:11:10
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub enum SipMethod {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SipResponse` is never constructed
[INFO] [stdout]   --> src/voip/sip.rs:26:12
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub struct SipResponse {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated constants are never used
[INFO] [stdout]   --> src/voip/sip.rs:32:15
[INFO] [stdout]    |
[INFO] [stdout] 31 | impl SipResponse {
[INFO] [stdout]    | ---------------- associated constants in this implementation
[INFO] [stdout] 32 |     pub const TRYING: Self = Self { code: 100, reason: "Trying" };
[INFO] [stdout]    |               ^^^^^^
[INFO] [stdout] 33 |     pub const RINGING: Self = Self { code: 180, reason: "Ringing" };
[INFO] [stdout]    |               ^^^^^^^
[INFO] [stdout] 34 |     pub const OK: Self = Self { code: 200, reason: "OK" };
[INFO] [stdout]    |               ^^
[INFO] [stdout] 35 |     pub const BAD_REQUEST: Self = Self { code: 400, reason: "Bad Request" };
[INFO] [stdout]    |               ^^^^^^^^^^^
[INFO] [stdout] 36 |     pub const UNAUTHORIZED: Self = Self { code: 401, reason: "Unauthorized" };
[INFO] [stdout]    |               ^^^^^^^^^^^^
[INFO] [stdout] 37 |     pub const NOT_FOUND: Self = Self { code: 404, reason: "Not Found" };
[INFO] [stdout]    |               ^^^^^^^^^
[INFO] [stdout] 38 |     pub const BUSY: Self = Self { code: 486, reason: "Busy Here" };
[INFO] [stdout]    |               ^^^^
[INFO] [stdout] 39 |     pub const DECLINED: Self = Self { code: 603, reason: "Declined" };
[INFO] [stdout]    |               ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SipUri` is never constructed
[INFO] [stdout]   --> src/voip/sip.rs:44:12
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub struct SipUri {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `to_string` are never used
[INFO] [stdout]   --> src/voip/sip.rs:53:12
[INFO] [stdout]    |
[INFO] [stdout] 52 | impl SipUri {
[INFO] [stdout]    | ----------- associated items in this implementation
[INFO] [stdout] 53 |     pub fn new(user: &str, host: &str) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 63 |     pub fn to_string(&self) -> String {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SdpSession` is never constructed
[INFO] [stdout]   --> src/voip/sip.rs:79:12
[INFO] [stdout]    |
[INFO] [stdout] 79 | pub struct SdpSession {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SdpMedia` is never constructed
[INFO] [stdout]   --> src/voip/sip.rs:87:12
[INFO] [stdout]    |
[INFO] [stdout] 87 | pub struct SdpMedia {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `MediaType` is never used
[INFO] [stdout]   --> src/voip/sip.rs:96:10
[INFO] [stdout]    |
[INFO] [stdout] 96 | pub enum MediaType {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QueuedCall` is never constructed
[INFO] [stdout]   --> src/voip/call_manager.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct QueuedCall {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `CallPriority` is never used
[INFO] [stdout]   --> src/voip/call_manager.rs:28:10
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub enum CallPriority {
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `wait_time_seconds` are never used
[INFO] [stdout]   --> src/voip/call_manager.rs:36:12
[INFO] [stdout]    |
[INFO] [stdout] 35 | impl QueuedCall {
[INFO] [stdout]    | --------------- associated items in this implementation
[INFO] [stdout] 36 |     pub fn new(caller_number: &str, queue_name: &str) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 49 |     pub fn wait_time_seconds(&self) -> i64 {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CallQueue` is never constructed
[INFO] [stdout]   --> src/voip/call_manager.rs:55:12
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub struct CallQueue {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/voip/call_manager.rs:63:12
[INFO] [stdout]     |
[INFO] [stdout]  62 | impl CallQueue {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout]  63 |     pub fn new(name: &str, max_size: usize) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  72 |     pub fn enqueue(&self, call: QueuedCall) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  87 |     pub fn dequeue(&self) -> Option<QueuedCall> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  91 |     pub fn peek(&self) -> Option<QueuedCall> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout]  95 |     pub fn remove(&self, call_id: &str) -> Option<QueuedCall> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 104 |     pub fn assign_to_worker(&self, call_id: &str, worker_id: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 114 |     pub fn size(&self) -> usize {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 118 |     pub fn is_empty(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 122 |     pub fn average_wait_time(&self) -> i64 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 131 |     pub fn get_all(&self) -> Vec<QueuedCall> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AudioDevice` is never constructed
[INFO] [stdout]   --> src/voip/audio.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct AudioDevice {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AudioSettings` is never constructed
[INFO] [stdout]   --> src/voip/audio.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct AudioSettings {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AudioEngine` is never constructed
[INFO] [stdout]   --> src/voip/audio.rs:46:12
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub struct AudioEngine {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]   --> src/voip/audio.rs:52:12
[INFO] [stdout]    |
[INFO] [stdout] 51 | impl AudioEngine {
[INFO] [stdout]    | ---------------- associated items in this implementation
[INFO] [stdout] 52 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 59 |     pub fn list_devices(&self) -> Vec<AudioDevice> {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 77 |     pub fn start(&self) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 82 |     pub fn stop(&self) {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 87 |     pub fn set_input_volume(&self, volume: f32) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 91 |     pub fn set_output_volume(&self, volume: f32) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 95 |     pub fn is_active(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `status` is never read
[INFO] [stdout]    --> src/search/qwant.rs:139:9
[INFO] [stdout]     |
[INFO] [stdout] 138 | pub struct QwantResponse {
[INFO] [stdout]     |            ------------- field in this struct
[INFO] [stdout] 139 |     pub status: String,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `QwantResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `total` is never read
[INFO] [stdout]    --> src/search/qwant.rs:151:9
[INFO] [stdout]     |
[INFO] [stdout] 149 | pub struct QwantResult {
[INFO] [stdout]     |            ----------- field in this struct
[INFO] [stdout] 150 |     pub items: Option<Vec<QwantItem>>,
[INFO] [stdout] 151 |     pub total: Option<u64>,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `QwantResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `source` is never read
[INFO] [stdout]    --> src/search/qwant.rs:160:9
[INFO] [stdout]     |
[INFO] [stdout] 155 | pub struct QwantItem {
[INFO] [stdout]     |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 160 |     pub source: Option<String>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `QwantItem` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `timeout` and `max_concurrent` are never read
[INFO] [stdout]    --> src/search/portscan.rs:136:5
[INFO] [stdout]     |
[INFO] [stdout] 135 | pub struct PortScanner {
[INFO] [stdout]     |            ----------- fields in this struct
[INFO] [stdout] 136 |     timeout: Duration,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 137 |     max_concurrent: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `format_scan_results` is never used
[INFO] [stdout]    --> src/search/portscan.rs:319:8
[INFO] [stdout]     |
[INFO] [stdout] 319 | pub fn format_scan_results(ports: &[PortInfo]) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `format_vuln_info` is never used
[INFO] [stdout]    --> src/search/vulnerability.rs:445:8
[INFO] [stdout]     |
[INFO] [stdout] 445 | pub fn format_vuln_info(vuln: &VulnInfo) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `format_exploit_info` is never used
[INFO] [stdout]    --> src/search/vulnerability.rs:465:8
[INFO] [stdout]     |
[INFO] [stdout] 465 | pub fn format_exploit_info(exploit: &ExploitInfo) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OSINTReport` is never constructed
[INFO] [stdout]   --> src/search/osint.rs:85:12
[INFO] [stdout]    |
[INFO] [stdout] 85 | pub struct OSINTReport {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `to_markdown`, and `to_json` are never used
[INFO] [stdout]    --> src/search/osint.rs:91:12
[INFO] [stdout]     |
[INFO] [stdout]  90 | impl OSINTReport {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout]  91 |     pub fn new(target: &str, data: OSINTData) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  99 |     pub fn to_markdown(&self) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 206 |     pub fn to_json(&self) -> Result<String, String> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OSINTDropdown` is never constructed
[INFO] [stdout]    --> src/search/osint.rs:214:12
[INFO] [stdout]     |
[INFO] [stdout] 214 | pub struct OSINTDropdown {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OSINTSummary` is never constructed
[INFO] [stdout]    --> src/search/osint.rs:223:12
[INFO] [stdout]     |
[INFO] [stdout] 223 | pub struct OSINTSummary {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `from_domain_osint` and `to_html` are never used
[INFO] [stdout]    --> src/search/osint.rs:235:12
[INFO] [stdout]     |
[INFO] [stdout] 234 | impl OSINTDropdown {
[INFO] [stdout]     | ------------------ associated items in this implementation
[INFO] [stdout] 235 |     pub fn from_domain_osint(domain: &str, osint: &DomainOSINT) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 271 |     pub fn to_html(&self) -> String {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OSINT_DROPDOWN_CSS` is never used
[INFO] [stdout]    --> src/search/osint.rs:351:11
[INFO] [stdout]     |
[INFO] [stdout] 351 | pub const OSINT_DROPDOWN_CSS: &str = r#"
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Severity` is never used
[INFO] [stdout]   --> src/exploit/mod.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub enum Severity {
[INFO] [stdout]    |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ExploitCategory` is never used
[INFO] [stdout]   --> src/exploit/mod.rs:28:10
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub enum ExploitCategory {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Exploit` is never constructed
[INFO] [stdout]   --> src/exploit/mod.rs:71:12
[INFO] [stdout]    |
[INFO] [stdout] 71 | pub struct Exploit {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ExploitEngine` is never constructed
[INFO] [stdout]   --> src/exploit/mod.rs:92:12
[INFO] [stdout]    |
[INFO] [stdout] 92 | pub struct ExploitEngine {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `search`, `get_obscure_exploits`, `generate_payload`, `build_shell`, and `build_rootkit` are never used
[INFO] [stdout]    --> src/exploit/mod.rs:100:12
[INFO] [stdout]     |
[INFO] [stdout]  99 | impl ExploitEngine {
[INFO] [stdout]     | ------------------ associated items in this implementation
[INFO] [stdout] 100 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn search(&self, query: &str) -> Vec<&Exploit> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 115 |     pub fn get_obscure_exploits(&self, min_obscurity: u8) -> Vec<&Exploit> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 122 |     pub fn generate_payload(&self, config: payloads::PayloadConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 127 |     pub fn build_shell(&self, config: shells::ShellConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     pub fn build_rootkit(&self, config: rootkits::RootkitConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ExploitDatabase` is never constructed
[INFO] [stdout]  --> src/exploit/database/mod.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct ExploitDatabase {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/exploit/database/mod.rs:14:12
[INFO] [stdout]     |
[INFO] [stdout]  13 | impl ExploitDatabase {
[INFO] [stdout]     | -------------------- associated items in this implementation
[INFO] [stdout]  14 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  29 |     fn load_obscure_exploits(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 162 |     fn load_kernel_exploits(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 208 |     fn load_browser_exploits(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 231 |     fn load_network_exploits(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 254 |     fn load_hardware_exploits(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 277 |     fn add_exploit(&mut self, exploit: Exploit) {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 281 |     pub fn search(&self, query: &str) -> Vec<&Exploit> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 294 |     pub fn get_by_category(&self, category: &ExploitCategory) -> Vec<&Exploit> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PayloadConfig` is never constructed
[INFO] [stdout]  --> src/exploit/payloads/mod.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct PayloadConfig {
[INFO] [stdout]   |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Architecture` is never used
[INFO] [stdout]   --> src/exploit/payloads/mod.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub enum Architecture {
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `PayloadFormat` is never used
[INFO] [stdout]   --> src/exploit/payloads/mod.rs:28:10
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub enum PayloadFormat {
[INFO] [stdout]    |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EvasionConfig` is never constructed
[INFO] [stdout]   --> src/exploit/payloads/mod.rs:41:12
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub struct EvasionConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CallbackConfig` is never constructed
[INFO] [stdout]   --> src/exploit/payloads/mod.rs:55:12
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub struct CallbackConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `CallbackMethod` is never used
[INFO] [stdout]   --> src/exploit/payloads/mod.rs:65:10
[INFO] [stdout]    |
[INFO] [stdout] 65 | pub enum CallbackMethod {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Protocol` is never used
[INFO] [stdout]   --> src/exploit/payloads/mod.rs:77:10
[INFO] [stdout]    |
[INFO] [stdout] 77 | pub enum Protocol {
[INFO] [stdout]    |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `PayloadFeature` is never used
[INFO] [stdout]   --> src/exploit/payloads/mod.rs:88:10
[INFO] [stdout]    |
[INFO] [stdout] 88 | pub enum PayloadFeature {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PayloadGenerator` is never constructed
[INFO] [stdout]    --> src/exploit/payloads/mod.rs:101:12
[INFO] [stdout]     |
[INFO] [stdout] 101 | pub struct PayloadGenerator {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PayloadTemplate` is never constructed
[INFO] [stdout]    --> src/exploit/payloads/mod.rs:105:8
[INFO] [stdout]     |
[INFO] [stdout] 105 | struct PayloadTemplate {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/exploit/payloads/mod.rs:112:12
[INFO] [stdout]     |
[INFO] [stdout] 111 | impl PayloadGenerator {
[INFO] [stdout]     | --------------------- associated items in this implementation
[INFO] [stdout] 112 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 118 |     fn load_templates() -> Vec<PayloadTemplate> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 123 |     pub fn generate(&self, config: PayloadConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 154 |     fn find_template(&self, config: &PayloadConfig) -> Result<&PayloadTemplate, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 163 |     fn encrypt_payload(&self, payload: &[u8]) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 175 |     fn apply_polymorphism(&self, payload: &[u8]) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 181 |     fn obfuscate(&self, payload: &[u8]) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 186 |     fn configure_callback(&self, payload: &[u8], config: &CallbackConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 |     fn add_feature(&self, payload: &[u8], feature: &PayloadFeature) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ShellConfig` is never constructed
[INFO] [stdout]  --> src/exploit/shells/mod.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct ShellConfig {
[INFO] [stdout]   |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ShellType` is never used
[INFO] [stdout]   --> src/exploit/shells/mod.rs:20:10
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub enum ShellType {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TransportConfig` is never constructed
[INFO] [stdout]   --> src/exploit/shells/mod.rs:34:12
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub struct TransportConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `TransportProtocol` is never used
[INFO] [stdout]   --> src/exploit/shells/mod.rs:42:10
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub enum TransportProtocol {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EncryptionConfig` is never constructed
[INFO] [stdout]   --> src/exploit/shells/mod.rs:64:12
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub struct EncryptionConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `EncryptionAlgorithm` is never used
[INFO] [stdout]   --> src/exploit/shells/mod.rs:71:10
[INFO] [stdout]    |
[INFO] [stdout] 71 | pub enum EncryptionAlgorithm {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `KeyExchange` is never used
[INFO] [stdout]   --> src/exploit/shells/mod.rs:79:10
[INFO] [stdout]    |
[INFO] [stdout] 79 | pub enum KeyExchange {
[INFO] [stdout]    |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `AuthMethod` is never used
[INFO] [stdout]   --> src/exploit/shells/mod.rs:87:10
[INFO] [stdout]    |
[INFO] [stdout] 87 | pub enum AuthMethod {
[INFO] [stdout]    |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ShellEvasion` is never constructed
[INFO] [stdout]   --> src/exploit/shells/mod.rs:95:12
[INFO] [stdout]    |
[INFO] [stdout] 95 | pub struct ShellEvasion {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ShellCapability` is never used
[INFO] [stdout]    --> src/exploit/shells/mod.rs:113:10
[INFO] [stdout]     |
[INFO] [stdout] 113 | pub enum ShellCapability {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `PersistenceMethod` is never used
[INFO] [stdout]    --> src/exploit/shells/mod.rs:143:10
[INFO] [stdout]     |
[INFO] [stdout] 143 | pub enum PersistenceMethod {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ShellBuilder` is never constructed
[INFO] [stdout]    --> src/exploit/shells/mod.rs:162:12
[INFO] [stdout]     |
[INFO] [stdout] 162 | pub struct ShellBuilder {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/exploit/shells/mod.rs:167:12
[INFO] [stdout]     |
[INFO] [stdout] 166 | impl ShellBuilder {
[INFO] [stdout]     | ----------------- associated items in this implementation
[INFO] [stdout] 167 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 171 |     pub fn build(&self, config: ShellConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 206 |     fn build_transport(&self, config: &TransportConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 210 |     fn build_crypto(&self, config: &EncryptionConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 214 |     fn build_core(&self, shell_type: &ShellType) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 218 |     fn build_capability(&self, cap: &ShellCapability) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 222 |     fn apply_evasion(&self, code: &[u8], evasion: &ShellEvasion) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 226 |     fn build_persistence(&self, method: &PersistenceMethod) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |     fn finalize(&self, code: &[u8]) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RootkitConfig` is never constructed
[INFO] [stdout]  --> src/exploit/rootkits/mod.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct RootkitConfig {
[INFO] [stdout]   |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `TargetOS` is never used
[INFO] [stdout]   --> src/exploit/rootkits/mod.rs:20:10
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub enum TargetOS {
[INFO] [stdout]    |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `RootkitType` is never used
[INFO] [stdout]   --> src/exploit/rootkits/mod.rs:30:10
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub enum RootkitType {
[INFO] [stdout]    |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `RootkitCapability` is never used
[INFO] [stdout]   --> src/exploit/rootkits/mod.rs:46:10
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub enum RootkitCapability {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `StealthConfig` is never constructed
[INFO] [stdout]   --> src/exploit/rootkits/mod.rs:74:12
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub struct StealthConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `RootkitPersistence` is never used
[INFO] [stdout]   --> src/exploit/rootkits/mod.rs:92:10
[INFO] [stdout]    |
[INFO] [stdout] 92 | pub enum RootkitPersistence {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CommsConfig` is never constructed
[INFO] [stdout]    --> src/exploit/rootkits/mod.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout] 110 | pub struct CommsConfig {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `CommsProtocol` is never used
[INFO] [stdout]    --> src/exploit/rootkits/mod.rs:117:10
[INFO] [stdout]     |
[INFO] [stdout] 117 | pub enum CommsProtocol {
[INFO] [stdout]     |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RootkitBuilder` is never constructed
[INFO] [stdout]    --> src/exploit/rootkits/mod.rs:132:12
[INFO] [stdout]     |
[INFO] [stdout] 132 | pub struct RootkitBuilder {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/exploit/rootkits/mod.rs:137:12
[INFO] [stdout]     |
[INFO] [stdout] 136 | impl RootkitBuilder {
[INFO] [stdout]     | ------------------- associated items in this implementation
[INFO] [stdout] 137 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 141 |     pub fn build(&self, config: RootkitConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 152 |     fn build_userland_rootkit(&self, config: &RootkitConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 157 |     fn build_kernel_rootkit(&self, config: &RootkitConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 162 |     fn build_hypervisor_rootkit(&self, config: &RootkitConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 167 |     fn build_firmware_rootkit(&self, config: &RootkitConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 172 |     fn build_bootkit(&self, config: &RootkitConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 177 |     fn build_hardware_rootkit(&self, config: &RootkitConfig) -> Result<Vec<u8>, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SecurityConfig` is never constructed
[INFO] [stdout]   --> src/security/mod.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct SecurityConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SecurityManager` is never constructed
[INFO] [stdout]   --> src/security/mod.rs:48:12
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub struct SecurityManager {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `apply_page_hardening` are never used
[INFO] [stdout]   --> src/security/mod.rs:53:12
[INFO] [stdout]    |
[INFO] [stdout] 52 | impl SecurityManager {
[INFO] [stdout]    | -------------------- associated items in this implementation
[INFO] [stdout] 53 |     pub fn new(config: SecurityConfig) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 59 |     pub fn apply_page_hardening(&self) -> String {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ProcessIsolation` is never constructed
[INFO] [stdout]  --> src/security/isolation.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct ProcessIsolation {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `setup_sandbox`, and `setup_seccomp` are never used
[INFO] [stdout]   --> src/security/isolation.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout]  9 | impl ProcessIsolation {
[INFO] [stdout]    | --------------------- associated items in this implementation
[INFO] [stdout] 10 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 15 |     pub fn setup_sandbox(&self) -> Result<(), String> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     fn setup_seccomp(&self) -> Result<(), String> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AntiFingerprintEngine` is never constructed
[INFO] [stdout]  --> src/security/anti_fingerprint.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct AntiFingerprintEngine {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `generate_user_agent`, and `get_spoofed_headers` are never used
[INFO] [stdout]   --> src/security/anti_fingerprint.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl AntiFingerprintEngine {
[INFO] [stdout]    | -------------------------- associated items in this implementation
[INFO] [stdout] 12 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |     fn generate_user_agent() -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub fn get_spoofed_headers(&self) -> Vec<(String, String)> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TrafficProtection` is never constructed
[INFO] [stdout]  --> src/security/traffic.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct TrafficProtection {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `pad_request`, and `apply_timing_jitter` are never used
[INFO] [stdout]   --> src/security/traffic.rs:9:12
[INFO] [stdout]    |
[INFO] [stdout]  8 | impl TrafficProtection {
[INFO] [stdout]    | ---------------------- associated items in this implementation
[INFO] [stdout]  9 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |     pub fn pad_request(&self, data: &[u8]) -> Vec<u8> {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub async fn apply_timing_jitter(&self) {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MemoryProtection` is never constructed
[INFO] [stdout]  --> src/security/memory.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct MemoryProtection {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `new`, `secure_zero`, and `guarded_alloc` are never used
[INFO] [stdout]   --> src/security/memory.rs:8:12
[INFO] [stdout]    |
[INFO] [stdout]  7 | impl MemoryProtection {
[INFO] [stdout]    | --------------------- associated functions in this implementation
[INFO] [stdout]  8 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 13 |     pub fn secure_zero(data: &mut [u8]) {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub fn guarded_alloc(size: usize) -> Result<*mut u8, String> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DatabaseConfig` is never constructed
[INFO] [stdout]   --> src/database/mod.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct DatabaseConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Database` is never constructed
[INFO] [stdout]   --> src/database/mod.rs:34:12
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub struct Database {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `init_tables`, and `conn` are never used
[INFO] [stdout]    --> src/database/mod.rs:41:12
[INFO] [stdout]     |
[INFO] [stdout]  40 | impl Database {
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout]  41 |     pub fn new(config: DatabaseConfig) -> SqlResult<Self> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  61 |     fn init_tables(&self) -> SqlResult<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 173 |     pub fn conn(&self) -> &Arc<Mutex<Connection>> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 04s
[INFO] running `Command { std: "docker" "inspect" "38138341136b437da2f21fb118e9e7b522fcdfcced5bca02798e6b4edb3f94f1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "38138341136b437da2f21fb118e9e7b522fcdfcced5bca02798e6b4edb3f94f1", kill_on_drop: false }`
[INFO] [stdout] 38138341136b437da2f21fb118e9e7b522fcdfcced5bca02798e6b4edb3f94f1
