[INFO] cloning repository https://github.com/adichannnnnhere64/provisioner
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/adichannnnnhere64/provisioner" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fadichannnnnhere64%2Fprovisioner", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fadichannnnnhere64%2Fprovisioner'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 808e94131e3ca041f032be90b9a2e596c6a8f357
[INFO] checking adichannnnnhere64/provisioner against master#03c609abb6638f9d7f49f34326d4137d07f5cd61 for pr-155945
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fadichannnnnhere64%2Fprovisioner" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/adichannnnnhere64/provisioner
[INFO] finished tweaking git repo https://github.com/adichannnnnhere64/provisioner
[INFO] tweaked toml for git repo https://github.com/adichannnnnhere64/provisioner written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/adichannnnnhere64/provisioner on toolchain 03c609abb6638f9d7f49f34326d4137d07f5cd61
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+03c609abb6638f9d7f49f34326d4137d07f5cd61" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/adichannnnnhere64/provisioner 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" "+03c609abb6638f9d7f49f34326d4137d07f5cd61" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded gix-validate v0.10.1
[INFO] [stderr]   Downloaded vergen-gix v9.1.0
[INFO] [stderr]   Downloaded gix-worktree v0.46.0
[INFO] [stderr]   Downloaded gix-path v0.10.22
[INFO] [stderr]   Downloaded faster-hex v0.10.0
[INFO] [stderr]   Downloaded gix-hashtable v0.11.0
[INFO] [stderr]   Downloaded gix-hash v0.21.2
[INFO] [stderr]   Downloaded gix-actor v0.37.1
[INFO] [stderr]   Downloaded gix-lock v20.0.1
[INFO] [stderr]   Downloaded gix-features v0.45.2
[INFO] [stderr]   Downloaded gix-chunk v0.4.12
[INFO] [stderr]   Downloaded gix-date v0.12.1
[INFO] [stderr]   Downloaded gix-revwalk v0.25.0
[INFO] [stderr]   Downloaded gix-commitgraph v0.31.0
[INFO] [stderr]   Downloaded gix-object v0.54.1
[INFO] [stderr]   Downloaded gix-bitmap v0.2.16
[INFO] [stderr]   Downloaded gix-quote v0.6.2
[INFO] [stderr]   Downloaded gix-config-value v0.16.0
[INFO] [stderr]   Downloaded gix-glob v0.23.0
[INFO] [stderr]   Downloaded gix-sec v0.12.2
[INFO] [stderr]   Downloaded gix-traverse v0.51.1
[INFO] [stderr]   Downloaded gix-tempfile v20.0.1
[INFO] [stderr]   Downloaded unicode-bom v2.0.3
[INFO] [stderr]   Downloaded gix-ignore v0.18.0
[INFO] [stderr]   Downloaded gix-shallow v0.7.0
[INFO] [stderr]   Downloaded gix-fs v0.18.2
[INFO] [stderr]   Downloaded kstring v2.0.2
[INFO] [stderr]   Downloaded jiff-tzdb v0.1.6
[INFO] [stderr]   Downloaded gix-index v0.45.1
[INFO] [stderr]   Downloaded gix-refspec v0.35.0
[INFO] [stderr]   Downloaded gix-revision v0.39.0
[INFO] [stderr]   Downloaded gix-command v0.6.5
[INFO] [stderr]   Downloaded gix-url v0.34.0
[INFO] [stderr]   Downloaded gix-attributes v0.29.0
[INFO] [stderr]   Downloaded gix-submodule v0.24.0
[INFO] [stderr]   Downloaded gix-packetline v0.20.0
[INFO] [stderr]   Downloaded gix-discover v0.45.0
[INFO] [stderr]   Downloaded gix-pathspec v0.14.0
[INFO] [stderr]   Downloaded clru v0.6.3
[INFO] [stderr]   Downloaded prodash v30.0.1
[INFO] [stderr]   Downloaded gix-status v0.24.0
[INFO] [stderr]   Downloaded gix-filter v0.24.1
[INFO] [stderr]   Downloaded gix-ref v0.57.0
[INFO] [stderr]   Downloaded gix-diff v0.57.1
[INFO] [stderr]   Downloaded gix-odb v0.74.0
[INFO] [stderr]   Downloaded numtoa v0.2.4
[INFO] [stderr]   Downloaded gix-protocol v0.55.0
[INFO] [stderr]   Downloaded gix-dir v0.19.0
[INFO] [stderr]   Downloaded arc-swap v1.9.0
[INFO] [stderr]   Downloaded gix-config v0.50.0
[INFO] [stderr]   Downloaded line-clipping v0.3.7
[INFO] [stderr]   Downloaded gix-transport v0.52.1
[INFO] [stderr]   Downloaded kasuari v0.4.12
[INFO] [stderr]   Downloaded gix-pack v0.64.1
[INFO] [stderr]   Downloaded termion v4.0.6
[INFO] [stderr]   Downloaded gix v0.77.0
[INFO] [stderr]   Downloaded ratatui-termion v0.1.0
[INFO] [stderr]   Downloaded imara-diff v0.1.8
[INFO] [stderr]   Downloaded sysinfo v0.31.4
[INFO] [stderr]   Downloaded human-panic v2.0.8
[INFO] [stderr]   Downloaded yaml-rust2 v0.8.1
[INFO] [stderr]   Downloaded color-spantrace v0.3.0
[INFO] [stderr]   Downloaded rust-ini v0.20.0
[INFO] [stderr]   Downloaded terminal_size v0.4.4
[INFO] [stderr]   Downloaded color-eyre v0.6.5
[INFO] [stderr]   Downloaded better-panic v0.3.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+03c609abb6638f9d7f49f34326d4137d07f5cd61" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 63e5a0ccfb8c016f3385140a5ec4068b7535f5d51ace147b5528ff3814860c1d
[INFO] running `Command { std: "docker" "start" "-a" "63e5a0ccfb8c016f3385140a5ec4068b7535f5d51ace147b5528ff3814860c1d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "63e5a0ccfb8c016f3385140a5ec4068b7535f5d51ace147b5528ff3814860c1d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "63e5a0ccfb8c016f3385140a5ec4068b7535f5d51ace147b5528ff3814860c1d", kill_on_drop: false }`
[INFO] [stdout] 63e5a0ccfb8c016f3385140a5ec4068b7535f5d51ace147b5528ff3814860c1d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+03c609abb6638f9d7f49f34326d4137d07f5cd61" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 5110ab85bef5764b6bbd7a73dc98c5b43abdb6e3d0bee0a39c44461b73dd5956
[INFO] running `Command { std: "docker" "start" "-a" "5110ab85bef5764b6bbd7a73dc98c5b43abdb6e3d0bee0a39c44461b73dd5956", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.184
[INFO] [stderr]    Compiling regex-syntax v0.8.10
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling gix-trace v0.1.18
[INFO] [stderr]    Compiling unicode-normalization v0.1.25
[INFO] [stderr]    Compiling crc32fast v1.5.0
[INFO] [stderr]    Compiling zlib-rs v0.5.5
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling heapless v0.8.0
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling foldhash v0.2.0
[INFO] [stderr]    Compiling jiff v0.2.23
[INFO] [stderr]    Compiling winnow v0.7.15
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling signal-hook v0.4.3
[INFO] [stderr]    Compiling hashbrown v0.16.1
[INFO] [stderr]     Checking bitflags v2.11.0
[INFO] [stderr]    Compiling hash32 v0.3.1
[INFO] [stderr]    Compiling gix-chunk v0.4.12
[INFO] [stderr]     Checking zerofrom v0.1.7
[INFO] [stderr]    Compiling unicode-bom v2.0.3
[INFO] [stderr]     Checking yoke v0.8.2
[INFO] [stderr]    Compiling kstring v2.0.2
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling faster-hex v0.10.0
[INFO] [stderr]     Checking zerovec v0.11.6
[INFO] [stderr]    Compiling shell-words v1.1.1
[INFO] [stderr]    Compiling gix-bitmap v0.2.16
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling zeroize_derive v1.4.3
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]     Checking unicode-segmentation v1.13.2
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling hashbrown v0.15.5
[INFO] [stderr]    Compiling sha1 v0.10.6
[INFO] [stderr]     Checking tinystr v0.8.3
[INFO] [stderr]     Checking potential_utf v0.1.5
[INFO] [stderr]     Checking zeroize v1.8.2
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]    Compiling sha1-checked v0.10.0
[INFO] [stderr]     Checking errno v0.3.14
[INFO] [stderr]     Checking mio v1.2.0
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking socket2 v0.6.3
[INFO] [stderr]     Checking signal-hook-registry v1.4.8
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking icu_locale_core v2.2.0
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking zerotrie v0.2.4
[INFO] [stderr]    Compiling encoding_rs v0.8.35
[INFO] [stderr]    Compiling camino v1.2.2
[INFO] [stderr]    Compiling signal-hook v0.3.18
[INFO] [stderr]     Checking icu_collections v2.2.0
[INFO] [stderr]     Checking ahash v0.8.12
[INFO] [stderr]    Compiling imara-diff v0.1.8
[INFO] [stderr]     Checking rustls-pki-types v1.14.0
[INFO] [stderr]    Compiling clru v0.6.3
[INFO] [stderr]     Checking tokio v1.51.0
[INFO] [stderr]    Compiling memmap2 v0.9.10
[INFO] [stderr]    Compiling gix-sec v0.12.2
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling dashmap v6.1.0
[INFO] [stderr]    Compiling filetime v0.2.27
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling prodash v30.0.1
[INFO] [stderr]     Checking itertools v0.14.0
[INFO] [stderr]     Checking castaway v0.2.4
[INFO] [stderr]    Compiling vergen-lib v9.1.0
[INFO] [stderr]     Checking icu_provider v2.2.0
[INFO] [stderr]    Compiling instability v0.3.12
[INFO] [stderr]     Checking compact_str v0.9.0
[INFO] [stderr]     Checking strum v0.27.2
[INFO] [stderr]    Compiling const-random-macro v0.1.16
[INFO] [stderr]    Compiling convert_case v0.10.0
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]    Compiling derive_builder v0.20.2
[INFO] [stderr]     Checking kasuari v0.4.12
[INFO] [stderr]     Checking lru v0.16.3
[INFO] [stderr]    Compiling arc-swap v1.9.0
[INFO] [stderr]    Compiling vergen v9.1.0
[INFO] [stderr]    Compiling maybe-async v0.2.10
[INFO] [stderr]    Compiling num_threads v0.1.7
[INFO] [stderr]     Checking icu_properties v2.2.0
[INFO] [stderr]     Checking signal-hook-mio v0.2.5
[INFO] [stderr]    Compiling derive_more-impl v2.1.1
[INFO] [stderr]     Checking const-random v0.1.18
[INFO] [stderr]    Compiling time v0.3.47
[INFO] [stderr]     Checking icu_normalizer v2.2.0
[INFO] [stderr]    Compiling rustls v0.23.37
[INFO] [stderr]     Checking object v0.37.3
[INFO] [stderr]     Checking inout v0.1.4
[INFO] [stderr]    Compiling vergen-gix v9.1.0
[INFO] [stderr]     Checking rustc-demangle v0.1.27
[INFO] [stderr]     Checking unicode-truncate v2.0.1
[INFO] [stderr]    Compiling owo-colors v4.3.0
[INFO] [stderr]     Checking tracing-subscriber v0.3.23
[INFO] [stderr]     Checking derive_more v2.1.1
[INFO] [stderr]     Checking ratatui-core v0.1.0
[INFO] [stderr]     Checking cipher v0.4.4
[INFO] [stderr]    Compiling pest_generator v2.8.6
[INFO] [stderr]     Checking dlv-list v0.5.2
[INFO] [stderr]     Checking universal-hash v0.5.1
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking indexmap v2.13.1
[INFO] [stderr]     Checking toml_datetime v0.6.11
[INFO] [stderr]     Checking serde_spanned v0.6.9
[INFO] [stderr]     Checking line-clipping v0.3.7
[INFO] [stderr]    Compiling color-spantrace v0.3.0
[INFO] [stderr]    Compiling cargo-platform v0.3.2
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling semver v1.0.27
[INFO] [stderr]     Checking pxfm v0.1.28
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]     Checking siphasher v1.0.2
[INFO] [stderr]    Compiling eyre v0.6.12
[INFO] [stderr]     Checking phf_shared v0.12.1
[INFO] [stderr]    Compiling pest_derive v2.8.6
[INFO] [stderr]     Checking polyval v0.6.2
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking ordered-multimap v0.7.3
[INFO] [stderr]     Checking rustls-webpki v0.103.10
[INFO] [stderr]     Checking toml_edit v0.22.27
[INFO] [stderr]     Checking crossterm v0.29.0
[INFO] [stderr]     Checking getrandom v0.4.2
[INFO] [stderr]     Checking hashlink v0.8.4
[INFO] [stderr]     Checking terminal_size v0.4.4
[INFO] [stderr]     Checking tracing-error v0.2.1
[INFO] [stderr]     Checking webpki-roots v1.0.6
[INFO] [stderr]    Compiling cargo_metadata v0.23.1
[INFO] [stderr]     Checking serde_spanned v1.1.1
[INFO] [stderr]     Checking toml_datetime v1.1.1+spec-1.1.0
[INFO] [stderr]     Checking bytemuck v1.25.0
[INFO] [stderr]     Checking ratatui-widgets v0.3.0
[INFO] [stderr]    Compiling bstr v1.12.1
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]     Checking indenter v0.3.4
[INFO] [stderr]     Checking base64ct v1.8.3
[INFO] [stderr]    Compiling chrono-tz v0.10.4
[INFO] [stderr]    Compiling pulldown-cmark v0.12.2
[INFO] [stderr]     Checking toml_writer v1.1.1+spec-1.1.0
[INFO] [stderr]     Checking chrono v0.4.44
[INFO] [stderr]     Checking clap_builder v4.6.0
[INFO] [stderr]     Checking ron v0.8.1
[INFO] [stderr]     Checking password-hash v0.5.0
[INFO] [stderr]     Checking toml v1.1.2+spec-1.1.0
[INFO] [stderr]    Compiling gix-validate v0.10.1
[INFO] [stderr]    Compiling gix-utils v0.3.1
[INFO] [stderr]    Compiling gix-date v0.12.1
[INFO] [stderr]    Compiling gix-packetline v0.20.0
[INFO] [stderr]    Compiling gix-path v0.10.22
[INFO] [stderr]    Compiling gix-quote v0.6.2
[INFO] [stderr]    Compiling gix-actor v0.37.1
[INFO] [stderr]     Checking hyper v1.9.0
[INFO] [stderr]     Checking tower v0.5.3
[INFO] [stderr]    Compiling gix-features v0.45.2
[INFO] [stderr]    Compiling gix-config-value v0.16.0
[INFO] [stderr]    Compiling gix-command v0.6.5
[INFO] [stderr]     Checking moxcms v0.8.1
[INFO] [stderr]     Checking ratatui-crossterm v0.1.0
[INFO] [stderr]     Checking yaml-rust2 v0.8.1
[INFO] [stderr]     Checking hyper-util v0.1.20
[INFO] [stderr]     Checking dirs-sys v0.4.1
[INFO] [stderr]     Checking toml v0.8.23
[INFO] [stderr]     Checking tower-http v0.6.8
[INFO] [stderr]    Compiling gix-hash v0.21.2
[INFO] [stderr]    Compiling gix-fs v0.18.2
[INFO] [stderr]    Compiling gix-glob v0.23.0
[INFO] [stderr]    Compiling gix-url v0.34.0
[INFO] [stderr]     Checking backtrace v0.3.76
[INFO] [stderr]     Checking uuid v1.23.0
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]     Checking ratatui-macros v0.7.0
[INFO] [stderr]    Compiling gix-hashtable v0.11.0
[INFO] [stderr]    Compiling gix-tempfile v20.0.1
[INFO] [stderr]    Compiling gix-commitgraph v0.31.0
[INFO] [stderr]     Checking blake2 v0.10.6
[INFO] [stderr]    Compiling gix-object v0.54.1
[INFO] [stderr]     Checking rust-ini v0.20.0
[INFO] [stderr]    Compiling gix-attributes v0.29.0
[INFO] [stderr]    Compiling gix-ignore v0.18.0
[INFO] [stderr]    Compiling gix-lock v20.0.1
[INFO] [stderr]    Compiling gix-transport v0.52.1
[INFO] [stderr]     Checking rayon v1.11.0
[INFO] [stderr]     Checking json5 v0.4.1
[INFO] [stderr]     Checking phf v0.12.1
[INFO] [stderr]     Checking ghash v0.5.1
[INFO] [stderr]     Checking ctr v0.9.2
[INFO] [stderr]     Checking aes v0.8.4
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling gix-shallow v0.7.0
[INFO] [stderr]     Checking aead v0.5.2
[INFO] [stderr]     Checking console v0.15.11
[INFO] [stderr]     Checking sysinfo v0.38.4
[INFO] [stderr]    Compiling gix-pathspec v0.14.0
[INFO] [stderr]     Checking convert_case v0.6.0
[INFO] [stderr]     Checking getopts v0.2.24
[INFO] [stderr]    Compiling strum_macros v0.26.4
[INFO] [stderr]     Checking vte v0.14.1
[INFO] [stderr]     Checking pulldown-cmark-escape v0.11.0
[INFO] [stderr]     Checking strip-ansi-escapes v0.2.1
[INFO] [stderr]     Checking clap v4.6.0
[INFO] [stderr]     Checking argon2 v0.5.3
[INFO] [stderr]     Checking config v0.14.1
[INFO] [stderr]     Checking crossterm v0.28.1
[INFO] [stderr]     Checking color-eyre v0.6.5
[INFO] [stderr]     Checking aes-gcm v0.10.3
[INFO] [stderr]     Checking better-panic v0.3.0
[INFO] [stderr]     Checking ratatui v0.30.0
[INFO] [stderr]     Checking human-panic v2.0.8
[INFO] [stderr]     Checking directories v5.0.1
[INFO] [stderr]     Checking tokio-util v0.7.18
[INFO] [stderr]    Compiling gix-revwalk v0.25.0
[INFO] [stderr]    Compiling gix-ref v0.57.0
[INFO] [stderr]    Compiling gix-filter v0.24.1
[INFO] [stderr]    Compiling gix-pack v0.64.1
[INFO] [stderr]    Compiling gix-traverse v0.51.1
[INFO] [stderr]    Compiling gix-revision v0.39.0
[INFO] [stderr]     Checking tokio-rustls v0.26.4
[INFO] [stderr]     Checking hyper-rustls v0.27.7
[INFO] [stderr]     Checking reqwest v0.12.28
[INFO] [stderr]    Compiling gix-refspec v0.35.0
[INFO] [stderr]    Compiling gix-index v0.45.1
[INFO] [stderr]    Compiling gix-odb v0.74.0
[INFO] [stderr]     Checking strum v0.26.3
[INFO] [stderr]    Compiling gix-discover v0.45.0
[INFO] [stderr]    Compiling gix-config v0.50.0
[INFO] [stderr]    Compiling gix-protocol v0.55.0
[INFO] [stderr]     Checking sysinfo v0.31.4
[INFO] [stderr]     Checking image v0.25.10
[INFO] [stderr]    Compiling gix-worktree v0.46.0
[INFO] [stderr]    Compiling gix-submodule v0.24.0
[INFO] [stderr]    Compiling gix-dir v0.19.0
[INFO] [stderr]    Compiling gix-diff v0.57.1
[INFO] [stderr]    Compiling gix-status v0.24.0
[INFO] [stderr]     Checking qrcode v0.14.1
[INFO] [stderr]    Compiling gix v0.77.0
[INFO] [stderr]    Compiling provi v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `AppStack` and `AppStatus`
[INFO] [stdout]  --> src/components/provision/apps_list.rs:9:45
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::modules::provision::types::{App, AppStack, AppStatus};
[INFO] [stdout]   |                                             ^^^^^^^^  ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Provider` and `ServerStatus`
[INFO] [stdout]  --> src/components/provision/servers_list.rs:9:48
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::modules::provision::types::{Server, ServerStatus, Provider};
[INFO] [stdout]   |                                                ^^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]  --> src/modules/cloudways/client.rs:3:22
[INFO] [stdout]   |
[INFO] [stdout] 3 | use tracing::{debug, warn};
[INFO] [stdout]   |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]  --> src/modules/provision/providers/digitalocean.rs:3:22
[INFO] [stdout]   |
[INFO] [stdout] 3 | use tracing::{debug, warn};
[INFO] [stdout]   |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `types::*`
[INFO] [stdout]   --> src/modules/provision/mod.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub use types::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ssh::SshSession`
[INFO] [stdout]   --> src/modules/provision/mod.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub use ssh::SshSession;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AppStack` and `AppStatus`
[INFO] [stdout]  --> src/components/provision/apps_list.rs:9:45
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::modules::provision::types::{App, AppStack, AppStatus};
[INFO] [stdout]   |                                             ^^^^^^^^  ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Provider` and `ServerStatus`
[INFO] [stdout]  --> src/components/provision/servers_list.rs:9:48
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::modules::provision::types::{Server, ServerStatus, Provider};
[INFO] [stdout]   |                                                ^^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]  --> src/modules/cloudways/client.rs:3:22
[INFO] [stdout]   |
[INFO] [stdout] 3 | use tracing::{debug, warn};
[INFO] [stdout]   |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]  --> src/modules/provision/providers/digitalocean.rs:3:22
[INFO] [stdout]   |
[INFO] [stdout] 3 | use tracing::{debug, warn};
[INFO] [stdout]   |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `types::*`
[INFO] [stdout]   --> src/modules/provision/mod.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub use types::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ssh::SshSession`
[INFO] [stdout]   --> src/modules/provision/mod.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub use ssh::SshSession;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `ratatui::widgets::Table::<'a>::highlight_style`: use `row_highlight_style()` instead
[INFO] [stdout]    --> src/components/cloudways_page.rs:425:14
[INFO] [stdout]     |
[INFO] [stdout] 425 | ...   .highlight_style(Style::new().bg(if focused { theme.selection_bg } else { ratatui::style::Color::Reset }).add_modifier(Modifi...
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `ratatui::widgets::Table::<'a>::highlight_style`: use `row_highlight_style()` instead
[INFO] [stdout]    --> src/components/cloudways_page.rs:500:14
[INFO] [stdout]     |
[INFO] [stdout] 500 | ...   .highlight_style(Style::new().bg(if focused { theme.selection_bg } else { ratatui::style::Color::Reset }).add_modifier(Modifi...
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `ratatui::widgets::Table::<'a>::highlight_style`: use `row_highlight_style()` instead
[INFO] [stdout]    --> src/components/cloudways_page.rs:425:14
[INFO] [stdout]     |
[INFO] [stdout] 425 | ...   .highlight_style(Style::new().bg(if focused { theme.selection_bg } else { ratatui::style::Color::Reset }).add_modifier(Modifi...
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `ratatui::widgets::Table::<'a>::highlight_style`: use `row_highlight_style()` instead
[INFO] [stdout]    --> src/components/cloudways_page.rs:500:14
[INFO] [stdout]     |
[INFO] [stdout] 500 | ...   .highlight_style(Style::new().bg(if focused { theme.selection_bg } else { ratatui::style::Color::Reset }).add_modifier(Modifi...
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `tz` and `format_time` are never used
[INFO] [stdout]    --> src/app_settings.rs:152:12
[INFO] [stdout]     |
[INFO] [stdout] 119 | impl AppSettings {
[INFO] [stdout]     | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 152 |     pub fn tz(&self) -> Tz {
[INFO] [stdout]     |            ^^
[INFO] [stdout] ...
[INFO] [stdout] 157 |     pub fn format_time(&self, dt: DateTime<Utc>) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `accounts_idx` is never used
[INFO] [stdout]    --> src/components/cloudflare_page.rs:144:12
[INFO] [stdout]     |
[INFO] [stdout]  89 | impl CloudflarePage {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 144 |     pub fn accounts_idx(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `AppDetail` is never constructed
[INFO] [stdout]   --> src/components/cloudways_page.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | enum CwView {
[INFO] [stdout]    |      ------ variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 24 |     AppDetail,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CwView` 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 `on_tick` and `selected_app_from_server` are never used
[INFO] [stdout]    --> src/components/cloudways_page.rs:136:12
[INFO] [stdout]     |
[INFO] [stdout]  68 | impl CloudwaysPage {
[INFO] [stdout]     | ------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 136 |     pub fn on_tick(&mut self) {}
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 146 |     fn selected_app_from_server(&self) -> Option<&CwApp> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FpsCounter` is never constructed
[INFO] [stdout]   --> src/components/fps.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct FpsCounter {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `app_tick`, and `render_tick` are never used
[INFO] [stdout]   --> src/components/fps.rs:33:12
[INFO] [stdout]    |
[INFO] [stdout] 32 | impl FpsCounter {
[INFO] [stdout]    | --------------- associated items in this implementation
[INFO] [stdout] 33 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     fn app_tick(&mut self) -> color_eyre::Result<()> {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     fn render_tick(&mut self) -> color_eyre::Result<()> {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `delete_selected_account` is never used
[INFO] [stdout]     --> src/components/github_page.rs:1097:12
[INFO] [stdout]      |
[INFO] [stdout]  198 | impl GitHubPage {
[INFO] [stdout]      | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1097 |     pub fn delete_selected_account(&mut self) -> Option<String> {
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `build_http_request_content` is never used
[INFO] [stdout]     --> src/components/http_client_page.rs:2536:4
[INFO] [stdout]      |
[INFO] [stdout] 2536 | fn build_http_request_content(name: &str, method: &str, url: &str, body: &str) -> String {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `pending_delete` is never read
[INFO] [stdout]    --> src/components/notifications_page.rs:120:9
[INFO] [stdout]     |
[INFO] [stdout] 113 | pub struct NotificationsPage {
[INFO] [stdout]     |            ----------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 120 |     pub pending_delete: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `toggle_ssl` and `build_app` are never used
[INFO] [stdout]    --> src/components/provision/add_app_wizard.rs:173:12
[INFO] [stdout]     |
[INFO] [stdout]  39 | impl AddAppWizard {
[INFO] [stdout]     | ----------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 173 |     pub fn toggle_ssl(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 177 |     pub fn build_app(&self) -> Option<App> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `NUM_SECTIONS` is never used
[INFO] [stdout]   --> src/components/provision/app_detail.rs:14:7
[INFO] [stdout]    |
[INFO] [stdout] 14 | const NUM_SECTIONS: usize = 2;
[INFO] [stdout]    |       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `next_section`, `prev_section`, `next_item`, and `prev_item` are never used
[INFO] [stdout]   --> src/components/provision/app_detail.rs:50:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | impl AppDetail {
[INFO] [stdout]    | -------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 50 |     pub fn next_section(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 54 |     pub fn prev_section(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 62 |     pub fn next_item(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 84 |     pub fn prev_item(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `set_apps` and `on_tick` are never used
[INFO] [stdout]   --> src/components/provision/apps_list.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | impl AppsList {
[INFO] [stdout]    | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 37 |     pub fn set_apps(&mut self, server_name: String, apps: Vec<App>) {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 83 |     pub fn on_tick(&mut self) {}
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `on_tick` is never used
[INFO] [stdout]   --> src/components/provision/servers_list.rs:81:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl ServersList {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 81 |     pub fn on_tick(&mut self) {}
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `on_tick` is never used
[INFO] [stdout]    --> src/components/provision_page.rs:113:12
[INFO] [stdout]     |
[INFO] [stdout]  75 | impl ProvisionPage {
[INFO] [stdout]     | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 113 |     pub fn on_tick(&mut self) {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `centered_rect` is never used
[INFO] [stdout]     --> src/components/storage_page.rs:1094:4
[INFO] [stdout]      |
[INFO] [stdout] 1094 | fn centered_rect(area: Rect, width_percent: u16, height: u16) -> Rect {
[INFO] [stdout]      |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `loading` is never read
[INFO] [stdout]    --> src/components/tools_page.rs:113:9
[INFO] [stdout]     |
[INFO] [stdout]  85 | pub struct ToolsPage {
[INFO] [stdout]     |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 113 |     pub loading: bool,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `pending_delete` is never read
[INFO] [stdout]   --> src/components/uptime_page.rs:92:9
[INFO] [stdout]    |
[INFO] [stdout] 83 | pub struct UptimePage {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 92 |     pub pending_delete: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `set_available_channels` is never used
[INFO] [stdout]    --> src/components/uptime_page.rs:118:12
[INFO] [stdout]     |
[INFO] [stdout] 102 | impl UptimePage {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 118 |     pub fn set_available_channels(&mut self, channels: Vec<(String, String)>) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `encrypt` is never used
[INFO] [stdout]   --> src/crypto.rs:56:8
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub fn encrypt(key: &MasterKey, plaintext: &[u8]) -> Result<Vec<u8>> {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `decrypt` is never used
[INFO] [stdout]   --> src/crypto.rs:70:8
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub fn decrypt(key: &MasterKey, ciphertext: &[u8]) -> Result<Vec<u8>> {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `url` and `alert_channel_ids` are never read
[INFO] [stdout]   --> src/event_bus.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 14 |     UptimeStatusChanged {
[INFO] [stdout]    |     ------------------- fields in this variant
[INFO] [stdout] ...
[INFO] [stdout] 17 |         url: String,
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 18 |         uptime_pct: f64,
[INFO] [stdout] 19 |         alert_channel_ids: Vec<String>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AppEvent` 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: variants `NotificationSent` and `VaultSynced` are never constructed
[INFO] [stdout]   --> src/event_bus.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub enum AppEvent {
[INFO] [stdout]    |          -------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 21 |     NotificationSent {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |     VaultSynced,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AppEvent` 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 `code` is never read
[INFO] [stdout]    --> src/modules/cloudflare/types.rs:120:9
[INFO] [stdout]     |
[INFO] [stdout] 119 | pub struct CfApiError {
[INFO] [stdout]     |            ---------- field in this struct
[INFO] [stdout] 120 |     pub code: u32,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `CfApiError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/modules/cloudways/client.rs:45:12
[INFO] [stdout]     |
[INFO] [stdout]  14 | impl CloudwaysClient {
[INFO] [stdout]     | -------------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  45 |     pub fn from_token(token: &str) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 102 |     pub async fn change_service_state(&self, server_id: &str, service: &str, state: &str) -> Result<()> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 126 |     pub async fn restart_server(&self, server_id: &str) -> Result<String> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 147 |     pub async fn stop_server(&self, server_id: &str) -> Result<String> {
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 166 |     pub async fn start_server(&self, server_id: &str) -> Result<String> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 187 |     pub async fn server_monitor_summary(&self, server_id: &str, summary_type: &str) -> Result<serde_json::Value> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 205 |     pub async fn server_analytics(&self, server_id: &str, r#type: &str, duration: &str) -> Result<serde_json::Value> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 225 |     pub async fn app_monitor_summary(&self, server_id: &str, app_id: &str, r#type: &str, duration: &str) -> Result<serde_json::Valu...
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 244 |     pub async fn git_pull(&self, server_id: &str, app_id: &str, branch_name: &str, deploy_path: &str) -> Result<String> {
[INFO] [stdout]     |                  ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 269 |     pub async fn git_history(&self, server_id: &str, app_id: &str) -> Result<Vec<serde_json::Value>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 289 |     pub async fn cron_list(&self, server_id: &str, app_id: &str) -> Result<Vec<serde_json::Value>> {
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 309 |     pub async fn app_backup(&self, server_id: &str, app_id: &str) -> Result<String> {
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 330 |     pub async fn get_operation(&self, operation_id: &str) -> Result<CwOperation> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 349 |     pub async fn disk_usage(&self, server_id: &str) -> Result<serde_json::Value> {
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 367 |     pub async fn purge_cache(&self, server_id: &str, app_id: &str) -> Result<()> {
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 386 |     pub async fn delete_app(&self, server_id: &str, app_id: &str) -> Result<String> {
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 406 |     pub async fn delete_server(&self, server_id: &str) -> Result<()> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CwMonitorSummaryResponse` is never constructed
[INFO] [stdout]    --> src/modules/cloudways/types.rs:109:12
[INFO] [stdout]     |
[INFO] [stdout] 109 | pub struct CwMonitorSummaryResponse {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CwServerUsageResponse` is never constructed
[INFO] [stdout]    --> src/modules/cloudways/types.rs:115:12
[INFO] [stdout]     |
[INFO] [stdout] 115 | pub struct CwServerUsageResponse {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CwAppMonitorResponse` is never constructed
[INFO] [stdout]    --> src/modules/cloudways/types.rs:123:12
[INFO] [stdout]     |
[INFO] [stdout] 123 | pub struct CwAppMonitorResponse {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CwGitHistoryResponse` is never constructed
[INFO] [stdout]    --> src/modules/cloudways/types.rs:131:12
[INFO] [stdout]     |
[INFO] [stdout] 131 | pub struct CwGitHistoryResponse {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CwGitDeployment` is never constructed
[INFO] [stdout]    --> src/modules/cloudways/types.rs:137:12
[INFO] [stdout]     |
[INFO] [stdout] 137 | pub struct CwGitDeployment {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CwOperationResponse` is never constructed
[INFO] [stdout]    --> src/modules/cloudways/types.rs:151:12
[INFO] [stdout]     |
[INFO] [stdout] 151 | pub struct CwOperationResponse {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CwOperation` is never constructed
[INFO] [stdout]    --> src/modules/cloudways/types.rs:156:12
[INFO] [stdout]     |
[INFO] [stdout] 156 | pub struct CwOperation {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CwCronListResponse` is never constructed
[INFO] [stdout]    --> src/modules/cloudways/types.rs:173:12
[INFO] [stdout]     |
[INFO] [stdout] 173 | pub struct CwCronListResponse {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CwCronJob` is never constructed
[INFO] [stdout]    --> src/modules/cloudways/types.rs:179:12
[INFO] [stdout]     |
[INFO] [stdout] 179 | pub struct CwCronJob {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CwSslStatus` is never constructed
[INFO] [stdout]    --> src/modules/cloudways/types.rs:193:12
[INFO] [stdout]     |
[INFO] [stdout] 193 | pub struct CwSslStatus {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CwProvidersResponse` is never constructed
[INFO] [stdout]    --> src/modules/cloudways/types.rs:205:12
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub struct CwProvidersResponse {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CwRegionsResponse` is never constructed
[INFO] [stdout]    --> src/modules/cloudways/types.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 211 | pub struct CwRegionsResponse {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CwAccount` is never constructed
[INFO] [stdout]    --> src/modules/cloudways/types.rs:219:12
[INFO] [stdout]     |
[INFO] [stdout] 219 | pub struct CwAccount {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `CwView` is never used
[INFO] [stdout]    --> src/modules/cloudways/types.rs:231:10
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub enum CwView {
[INFO] [stdout]     |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `WorkflowDispatchRef` is never constructed
[INFO] [stdout]    --> src/modules/github/types.rs:138:12
[INFO] [stdout]     |
[INFO] [stdout] 138 | pub struct WorkflowDispatchRef {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load` is never used
[INFO] [stdout]  --> src/modules/http_client/mod.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub fn load() -> Vec<Project> {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `save` is never used
[INFO] [stdout]   --> src/modules/http_client/mod.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn save(projects: &[Project]) {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `projects_path` is never used
[INFO] [stdout]  --> src/modules/http_client/storage.rs:7:4
[INFO] [stdout]   |
[INFO] [stdout] 7 | fn projects_path() -> PathBuf {
[INFO] [stdout]   |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_projects` is never used
[INFO] [stdout]   --> src/modules/http_client/storage.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub fn load_projects() -> color_eyre::Result<Vec<Project>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `save_projects` is never used
[INFO] [stdout]   --> src/modules/http_client/storage.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub fn save_projects(projects: &[Project]) -> color_eyre::Result<()> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `exit_code` and `duration_ms` are never read
[INFO] [stdout]    --> src/modules/http_client/types.rs:110:9
[INFO] [stdout]     |
[INFO] [stdout] 108 | pub struct RunResult {
[INFO] [stdout]     |            --------- fields in this struct
[INFO] [stdout] 109 |     pub output: String,
[INFO] [stdout] 110 |     pub exit_code: i32,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 111 |     pub duration_ms: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `RunResult` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NotificationModule` is never constructed
[INFO] [stdout]   --> src/modules/notifications/mod.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct NotificationModule {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `init`, `send`, and `update_config` are never used
[INFO] [stdout]   --> src/modules/notifications/mod.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl NotificationModule {
[INFO] [stdout]    | ----------------------- associated items in this implementation
[INFO] [stdout] 21 |     pub fn new(bus: EventBus, config: NotificationConfig) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub fn init(&mut self) {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 76 |     pub async fn send(
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 94 |     pub async fn update_config(&self, config: NotificationConfig) {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `send_notification` is never used
[INFO] [stdout]  --> src/modules/notifications/sender.rs:7:14
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub async fn send_notification(channel: &NotificationChannel, subject: &str, body: &str) -> Result<()> {
[INFO] [stdout]   |              ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `NotificationChannel` is never used
[INFO] [stdout]  --> src/modules/notifications/types.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub enum NotificationChannel {
[INFO] [stdout]   |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_record` is never used
[INFO] [stdout]   --> src/modules/notifications/types.rs:70:12
[INFO] [stdout]    |
[INFO] [stdout] 67 | impl NotificationChannel {
[INFO] [stdout]    | ------------------------ associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 70 |     pub fn from_record(channel_type: &str, settings: &serde_json::Value) -> Option<Self> {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `DesktopPriority` is never used
[INFO] [stdout]    --> src/modules/notifications/types.rs:146:10
[INFO] [stdout]     |
[INFO] [stdout] 146 | pub enum DesktopPriority {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NotificationTemplate` is never constructed
[INFO] [stdout]    --> src/modules/notifications/types.rs:153:12
[INFO] [stdout]     |
[INFO] [stdout] 153 | pub struct NotificationTemplate {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NotificationConfig` is never constructed
[INFO] [stdout]    --> src/modules/notifications/types.rs:160:12
[INFO] [stdout]     |
[INFO] [stdout] 160 | pub struct NotificationConfig {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NotesModule` is never constructed
[INFO] [stdout]   --> src/modules/notes/mod.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct NotesModule {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/modules/notes/mod.rs:21:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | impl NotesModule {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout]  21 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  30 |     pub async fn set_notes(&self, notes: Vec<Note>) {
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  40 |     pub async fn visible_notes(&self) -> Vec<Note> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  56 |     pub async fn pagination_info(&self) -> Pagination {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  60 |     pub async fn next_page(&self) {
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  64 |     pub async fn prev_page(&self) {
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  68 |     pub async fn set_query(&self, query: SearchQuery) {
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  82 |     pub async fn upsert_local(&self, note: Note) {
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  95 |     pub async fn delete_local(&self, note_id: &str) {
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 103 |     pub async fn note_count(&self) -> usize {
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `record_to_note` is never used
[INFO] [stdout]    --> src/modules/notes/mod.rs:115:8
[INFO] [stdout]     |
[INFO] [stdout] 115 | pub fn record_to_note(r: NoteRecord) -> Note {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `note_to_record` is never used
[INFO] [stdout]    --> src/modules/notes/mod.rs:137:8
[INFO] [stdout]     |
[INFO] [stdout] 137 | pub fn note_to_record(n: &Note) -> NoteRecord {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Note` is never constructed
[INFO] [stdout]  --> src/modules/notes/types.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Note {
[INFO] [stdout]   |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Attachment` is never constructed
[INFO] [stdout]   --> src/modules/notes/types.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct Attachment {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Pagination` is never constructed
[INFO] [stdout]   --> src/modules/notes/types.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct Pagination {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `total_pages`, `offset`, `next`, `prev`, and `reset` are never used
[INFO] [stdout]   --> src/modules/notes/types.rs:32:12
[INFO] [stdout]    |
[INFO] [stdout] 31 | impl Pagination {
[INFO] [stdout]    | --------------- associated items in this implementation
[INFO] [stdout] 32 |     pub fn new(page_size: usize) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     pub fn total_pages(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub fn offset(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     pub fn next(&mut self) {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 51 |     pub fn prev(&mut self) {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     pub fn reset(&mut self) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SearchQuery` is never constructed
[INFO] [stdout]   --> src/modules/notes/types.rs:61:12
[INFO] [stdout]    |
[INFO] [stdout] 61 | pub struct SearchQuery {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_empty` and `matches` are never used
[INFO] [stdout]   --> src/modules/notes/types.rs:67:12
[INFO] [stdout]    |
[INFO] [stdout] 66 | impl SearchQuery {
[INFO] [stdout]    | ---------------- methods in this implementation
[INFO] [stdout] 67 |     pub fn is_empty(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn matches(&self, note: &Note) -> bool {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `as_str` is never used
[INFO] [stdout]    --> src/modules/provision/types.rs:195:12
[INFO] [stdout]     |
[INFO] [stdout] 184 | impl AppStack {
[INFO] [stdout]     | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 195 |     pub fn as_str(&self) -> &'static str {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `to_script_config`, `default_deploy_script`, and `required_config_keys` are never used
[INFO] [stdout]    --> src/modules/provision/types.rs:304:12
[INFO] [stdout]     |
[INFO] [stdout] 301 | impl App {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 304 |     pub fn to_script_config(&self) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 332 |     pub fn default_deploy_script(&self) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 337 |     pub fn required_config_keys(&self) -> Vec<&'static str> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `exec_script`, `exec_json`, and `upload_file` are never used
[INFO] [stdout]    --> src/modules/provision/ssh.rs:77:18
[INFO] [stdout]     |
[INFO] [stdout]  18 | impl SshSession {
[INFO] [stdout]     | --------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub async fn exec_script(&self, script: &str) -> Result<String> {
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 118 |     pub async fn exec_json<T: DeserializeOwned>(&self, cmd: &str) -> Result<T> {
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 125 |     pub async fn upload_file(&self, local: &Path, remote: &str) -> Result<()> {
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AwsLightsailProvider` is never constructed
[INFO] [stdout]   --> src/modules/provision/providers/aws.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct AwsLightsailProvider {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/modules/provision/providers/aws.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | impl AwsLightsailProvider {
[INFO] [stdout]    | ------------------------- associated function in this implementation
[INFO] [stdout] 24 |     pub fn new(
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_vhost` is never used
[INFO] [stdout]  --> src/modules/provision/nginx.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn generate_vhost(app: &App) -> String {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `default_webroot` is never used
[INFO] [stdout]   --> src/modules/provision/nginx.rs:65:4
[INFO] [stdout]    |
[INFO] [stdout] 65 | fn default_webroot(app: &App) -> String {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `default_port` is never used
[INFO] [stdout]   --> src/modules/provision/nginx.rs:73:4
[INFO] [stdout]    |
[INFO] [stdout] 73 | fn default_port(stack: &AppStack) -> String {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_php_fpm_location` is never used
[INFO] [stdout]   --> src/modules/provision/nginx.rs:82:4
[INFO] [stdout]    |
[INFO] [stdout] 82 | fn generate_php_fpm_location(php_version: &str) -> String {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_proxy_location` is never used
[INFO] [stdout]   --> src/modules/provision/nginx.rs:97:4
[INFO] [stdout]    |
[INFO] [stdout] 97 | fn generate_proxy_location(port: &str) -> String {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_static_location` is never used
[INFO] [stdout]    --> src/modules/provision/nginx.rs:114:4
[INFO] [stdout]     |
[INFO] [stdout] 114 | fn generate_static_location() -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_service` is never used
[INFO] [stdout]   --> src/modules/provision/systemd.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub fn generate_service(app: &App) -> Option<String> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `default_port` is never used
[INFO] [stdout]   --> src/modules/provision/systemd.rs:74:4
[INFO] [stdout]    |
[INFO] [stdout] 74 | fn default_port(stack: &AppStack) -> String {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `default_deploy_script` is never used
[INFO] [stdout]   --> src/modules/provision/deploy.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub fn default_deploy_script(app: &App) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_app` is never used
[INFO] [stdout]   --> src/modules/provision/app_manager.rs:12:14
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub async fn create_app(ssh: &SshSession, app: &App) -> Result<()> {
[INFO] [stdout]    |              ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `delete_app` is never used
[INFO] [stdout]   --> src/modules/provision/app_manager.rs:80:14
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub async fn delete_app(ssh: &SshSession, app: &App) -> Result<()> {
[INFO] [stdout]    |              ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `deploy_app` is never used
[INFO] [stdout]    --> src/modules/provision/app_manager.rs:113:14
[INFO] [stdout]     |
[INFO] [stdout] 113 | pub async fn deploy_app(ssh: &SshSession, app: &App) -> Result<String> {
[INFO] [stdout]     |              ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `setup_ssl` is never used
[INFO] [stdout]    --> src/modules/provision/app_manager.rs:132:14
[INFO] [stdout]     |
[INFO] [stdout] 132 | pub async fn setup_ssl(ssh: &SshSession, domain: &str) -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `write_remote_file` is never used
[INFO] [stdout]    --> src/modules/provision/app_manager.rs:150:10
[INFO] [stdout]     |
[INFO] [stdout] 150 | async fn write_remote_file(ssh: &SshSession, path: &str, content: &str) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `install_stack_packages` is never used
[INFO] [stdout]    --> src/modules/provision/app_manager.rs:159:10
[INFO] [stdout]     |
[INFO] [stdout] 159 | async fn install_stack_packages(ssh: &SshSession, app: &App) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `header_raw` and `payload_raw` are never read
[INFO] [stdout]  --> src/modules/tools/jwt.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct JwtParts {
[INFO] [stdout]   |            -------- fields in this struct
[INFO] [stdout] 6 |     pub header_raw: String,
[INFO] [stdout]   |         ^^^^^^^^^^
[INFO] [stdout] 7 |     pub payload_raw: String,
[INFO] [stdout]   |         ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `JwtParts` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `start_scheduler` and `get_status` are never used
[INFO] [stdout]    --> src/modules/uptime/mod.rs:87:18
[INFO] [stdout]     |
[INFO] [stdout]  23 | impl UptimeModule {
[INFO] [stdout]     | ----------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  87 |     pub async fn start_scheduler(&self) {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 |     pub async fn get_status(&self, site_id: &str) -> Option<SiteStatus> {
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `interval_secs` is never read
[INFO] [stdout]   --> src/modules/uptime/types.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct Site {
[INFO] [stdout]    |            ---- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub interval_secs: u64,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Site` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `HealthCheckItem` is never constructed
[INFO] [stdout]  --> src/storage/health.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct HealthCheckItem {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `StorageHealthReport` is never constructed
[INFO] [stdout]   --> src/storage/health.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct StorageHealthReport {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `collect` and `all_ok` are never used
[INFO] [stdout]   --> src/storage/health.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl StorageHealthReport {
[INFO] [stdout]    | ------------------------ associated items in this implementation
[INFO] [stdout] 18 |     pub fn collect(settings: &AppSettings) -> Self {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 43 |     pub fn all_ok(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `command_check` is never used
[INFO] [stdout]   --> src/storage/health.rs:48:4
[INFO] [stdout]    |
[INFO] [stdout] 48 | fn command_check(label: &'static str, program: &str, args: &[&str]) -> HealthCheckItem {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `env_label` is never used
[INFO] [stdout]   --> src/storage/types.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl StorageProvider {
[INFO] [stdout]    | -------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub fn env_label(&self) -> &'static str {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VaultRow` is never constructed
[INFO] [stdout]   --> src/supabase/client.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | struct VaultRow {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AppRecord` is never constructed
[INFO] [stdout]    --> src/supabase/client.rs:228:12
[INFO] [stdout]     |
[INFO] [stdout] 228 | pub struct AppRecord {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]     --> src/supabase/client.rs:259:12
[INFO] [stdout]      |
[INFO] [stdout]  249 | impl SupabaseClient {
[INFO] [stdout]      | ------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  259 |     pub fn set_auth_token(&mut self, token: String) {
[INFO] [stdout]      |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  328 |     pub async fn get_vault(&self, user_id: &str) -> color_eyre::Result<Option<Vec<u8>>> {
[INFO] [stdout]      |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  357 |     pub async fn upsert_vault(
[INFO] [stdout]      |                  ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  608 |     pub async fn search_notes(
[INFO] [stdout]      |                  ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1171 |     pub async fn get_server(
[INFO] [stdout]      |                  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1286 |     pub async fn get_apps(
[INFO] [stdout]      |                  ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1314 |     pub async fn get_all_apps(
[INFO] [stdout]      |                  ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1337 |     pub async fn upsert_app(&self, app: &AppRecord) -> color_eyre::Result<()> {
[INFO] [stdout]      |                  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1358 |     pub async fn update_app_status(
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1390 |     pub async fn delete_app(
[INFO] [stdout]      |                  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hex_encode` is never used
[INFO] [stdout]     --> src/supabase/client.rs:1418:4
[INFO] [stdout]      |
[INFO] [stdout] 1418 | fn hex_encode(bytes: &[u8]) -> String {
[INFO] [stdout]      |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hex_decode` is never used
[INFO] [stdout]     --> src/supabase/client.rs:1422:4
[INFO] [stdout]      |
[INFO] [stdout] 1422 | fn hex_decode(s: &str) -> color_eyre::Result<Vec<u8>> {
[INFO] [stdout]      |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `input_fg`, `input_cursor`, `gauge_fill`, `table_header_bg`, `table_row_alt`, and `selection_fg` are never read
[INFO] [stdout]   --> src/theme.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub struct Theme {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub input_fg: Color,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 41 |     pub input_cursor: Color,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     pub gauge_fill: Color,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 47 |     pub table_header_bg: Color,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 48 |     pub table_header_fg: Color,
[INFO] [stdout] 49 |     pub table_row_alt: Color,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 53 |     pub selection_fg: Color,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Theme` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TextInput` is never constructed
[INFO] [stdout]    --> src/theme.rs:179:12
[INFO] [stdout]     |
[INFO] [stdout] 179 | pub struct TextInput {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/theme.rs:191:12
[INFO] [stdout]     |
[INFO] [stdout] 190 | impl TextInput {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 191 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 |     pub fn with_value(value: impl Into<String>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 206 |     pub fn set_value(&mut self, value: impl Into<String>) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 212 |     pub fn clear(&mut self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 218 |     pub fn value(&self) -> &str {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 223 |     pub fn insert_char(&mut self, c: char) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |     pub fn backspace(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 246 |     pub fn delete(&mut self) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 261 |     pub fn move_left(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 266 |     pub fn move_right(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 274 |     pub fn home(&mut self) {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 279 |     pub fn end(&mut self) {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 284 |     pub fn draw(
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 316 |     fn byte_offset(&self) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `tz` and `format_time` are never used
[INFO] [stdout]    --> src/app_settings.rs:152:12
[INFO] [stdout]     |
[INFO] [stdout] 119 | impl AppSettings {
[INFO] [stdout]     | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 152 |     pub fn tz(&self) -> Tz {
[INFO] [stdout]     |            ^^
[INFO] [stdout] ...
[INFO] [stdout] 157 |     pub fn format_time(&self, dt: DateTime<Utc>) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `accounts_idx` is never used
[INFO] [stdout]    --> src/components/cloudflare_page.rs:144:12
[INFO] [stdout]     |
[INFO] [stdout]  89 | impl CloudflarePage {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 144 |     pub fn accounts_idx(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `AppDetail` is never constructed
[INFO] [stdout]   --> src/components/cloudways_page.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | enum CwView {
[INFO] [stdout]    |      ------ variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 24 |     AppDetail,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CwView` 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 `on_tick` and `selected_app_from_server` are never used
[INFO] [stdout]    --> src/components/cloudways_page.rs:136:12
[INFO] [stdout]     |
[INFO] [stdout]  68 | impl CloudwaysPage {
[INFO] [stdout]     | ------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 136 |     pub fn on_tick(&mut self) {}
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 146 |     fn selected_app_from_server(&self) -> Option<&CwApp> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FpsCounter` is never constructed
[INFO] [stdout]   --> src/components/fps.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct FpsCounter {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `app_tick`, and `render_tick` are never used
[INFO] [stdout]   --> src/components/fps.rs:33:12
[INFO] [stdout]    |
[INFO] [stdout] 32 | impl FpsCounter {
[INFO] [stdout]    | --------------- associated items in this implementation
[INFO] [stdout] 33 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     fn app_tick(&mut self) -> color_eyre::Result<()> {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     fn render_tick(&mut self) -> color_eyre::Result<()> {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `delete_selected_account` is never used
[INFO] [stdout]     --> src/components/github_page.rs:1097:12
[INFO] [stdout]      |
[INFO] [stdout]  198 | impl GitHubPage {
[INFO] [stdout]      | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1097 |     pub fn delete_selected_account(&mut self) -> Option<String> {
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `build_http_request_content` is never used
[INFO] [stdout]     --> src/components/http_client_page.rs:2536:4
[INFO] [stdout]      |
[INFO] [stdout] 2536 | fn build_http_request_content(name: &str, method: &str, url: &str, body: &str) -> String {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `pending_delete` is never read
[INFO] [stdout]    --> src/components/notifications_page.rs:120:9
[INFO] [stdout]     |
[INFO] [stdout] 113 | pub struct NotificationsPage {
[INFO] [stdout]     |            ----------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 120 |     pub pending_delete: Option<String>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `toggle_ssl` and `build_app` are never used
[INFO] [stdout]    --> src/components/provision/add_app_wizard.rs:173:12
[INFO] [stdout]     |
[INFO] [stdout]  39 | impl AddAppWizard {
[INFO] [stdout]     | ----------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 173 |     pub fn toggle_ssl(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 177 |     pub fn build_app(&self) -> Option<App> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `NUM_SECTIONS` is never used
[INFO] [stdout]   --> src/components/provision/app_detail.rs:14:7
[INFO] [stdout]    |
[INFO] [stdout] 14 | const NUM_SECTIONS: usize = 2;
[INFO] [stdout]    |       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `next_section`, `prev_section`, `next_item`, and `prev_item` are never used
[INFO] [stdout]   --> src/components/provision/app_detail.rs:50:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | impl AppDetail {
[INFO] [stdout]    | -------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 50 |     pub fn next_section(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 54 |     pub fn prev_section(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 62 |     pub fn next_item(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 84 |     pub fn prev_item(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `set_apps` and `on_tick` are never used
[INFO] [stdout]   --> src/components/provision/apps_list.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | impl AppsList {
[INFO] [stdout]    | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 37 |     pub fn set_apps(&mut self, server_name: String, apps: Vec<App>) {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 83 |     pub fn on_tick(&mut self) {}
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `on_tick` is never used
[INFO] [stdout]   --> src/components/provision/servers_list.rs:81:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl ServersList {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 81 |     pub fn on_tick(&mut self) {}
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `on_tick` is never used
[INFO] [stdout]    --> src/components/provision_page.rs:113:12
[INFO] [stdout]     |
[INFO] [stdout]  75 | impl ProvisionPage {
[INFO] [stdout]     | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 113 |     pub fn on_tick(&mut self) {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `centered_rect` is never used
[INFO] [stdout]     --> src/components/storage_page.rs:1094:4
[INFO] [stdout]      |
[INFO] [stdout] 1094 | fn centered_rect(area: Rect, width_percent: u16, height: u16) -> Rect {
[INFO] [stdout]      |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `loading` is never read
[INFO] [stdout]    --> src/components/tools_page.rs:113:9
[INFO] [stdout]     |
[INFO] [stdout]  85 | pub struct ToolsPage {
[INFO] [stdout]     |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 113 |     pub loading: bool,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `pending_delete` is never read
[INFO] [stdout]   --> src/components/uptime_page.rs:92:9
[INFO] [stdout]    |
[INFO] [stdout] 83 | pub struct UptimePage {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 92 |     pub pending_delete: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `set_available_channels` is never used
[INFO] [stdout]    --> src/components/uptime_page.rs:118:12
[INFO] [stdout]     |
[INFO] [stdout] 102 | impl UptimePage {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 118 |     pub fn set_available_channels(&mut self, channels: Vec<(String, String)>) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `url` and `alert_channel_ids` are never read
[INFO] [stdout]   --> src/event_bus.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 14 |     UptimeStatusChanged {
[INFO] [stdout]    |     ------------------- fields in this variant
[INFO] [stdout] ...
[INFO] [stdout] 17 |         url: String,
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 18 |         uptime_pct: f64,
[INFO] [stdout] 19 |         alert_channel_ids: Vec<String>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AppEvent` 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: variants `NotificationSent` and `VaultSynced` are never constructed
[INFO] [stdout]   --> src/event_bus.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub enum AppEvent {
[INFO] [stdout]    |          -------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 21 |     NotificationSent {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |     VaultSynced,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AppEvent` 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 `code` is never read
[INFO] [stdout]    --> src/modules/cloudflare/types.rs:120:9
[INFO] [stdout]     |
[INFO] [stdout] 119 | pub struct CfApiError {
[INFO] [stdout]     |            ---------- field in this struct
[INFO] [stdout] 120 |     pub code: u32,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `CfApiError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/modules/cloudways/client.rs:45:12
[INFO] [stdout]     |
[INFO] [stdout]  14 | impl CloudwaysClient {
[INFO] [stdout]     | -------------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  45 |     pub fn from_token(token: &str) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 102 |     pub async fn change_service_state(&self, server_id: &str, service: &str, state: &str) -> Result<()> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 126 |     pub async fn restart_server(&self, server_id: &str) -> Result<String> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 147 |     pub async fn stop_server(&self, server_id: &str) -> Result<String> {
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 166 |     pub async fn start_server(&self, server_id: &str) -> Result<String> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 187 |     pub async fn server_monitor_summary(&self, server_id: &str, summary_type: &str) -> Result<serde_json::Value> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 205 |     pub async fn server_analytics(&self, server_id: &str, r#type: &str, duration: &str) -> Result<serde_json::Value> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 225 |     pub async fn app_monitor_summary(&self, server_id: &str, app_id: &str, r#type: &str, duration: &str) -> Result<serde_json::Valu...
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 244 |     pub async fn git_pull(&self, server_id: &str, app_id: &str, branch_name: &str, deploy_path: &str) -> Result<String> {
[INFO] [stdout]     |                  ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 269 |     pub async fn git_history(&self, server_id: &str, app_id: &str) -> Result<Vec<serde_json::Value>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 289 |     pub async fn cron_list(&self, server_id: &str, app_id: &str) -> Result<Vec<serde_json::Value>> {
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 309 |     pub async fn app_backup(&self, server_id: &str, app_id: &str) -> Result<String> {
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 330 |     pub async fn get_operation(&self, operation_id: &str) -> Result<CwOperation> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 349 |     pub async fn disk_usage(&self, server_id: &str) -> Result<serde_json::Value> {
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 367 |     pub async fn purge_cache(&self, server_id: &str, app_id: &str) -> Result<()> {
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 386 |     pub async fn delete_app(&self, server_id: &str, app_id: &str) -> Result<String> {
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 406 |     pub async fn delete_server(&self, server_id: &str) -> Result<()> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CwMonitorSummaryResponse` is never constructed
[INFO] [stdout]    --> src/modules/cloudways/types.rs:109:12
[INFO] [stdout]     |
[INFO] [stdout] 109 | pub struct CwMonitorSummaryResponse {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CwServerUsageResponse` is never constructed
[INFO] [stdout]    --> src/modules/cloudways/types.rs:115:12
[INFO] [stdout]     |
[INFO] [stdout] 115 | pub struct CwServerUsageResponse {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CwAppMonitorResponse` is never constructed
[INFO] [stdout]    --> src/modules/cloudways/types.rs:123:12
[INFO] [stdout]     |
[INFO] [stdout] 123 | pub struct CwAppMonitorResponse {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CwGitHistoryResponse` is never constructed
[INFO] [stdout]    --> src/modules/cloudways/types.rs:131:12
[INFO] [stdout]     |
[INFO] [stdout] 131 | pub struct CwGitHistoryResponse {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CwGitDeployment` is never constructed
[INFO] [stdout]    --> src/modules/cloudways/types.rs:137:12
[INFO] [stdout]     |
[INFO] [stdout] 137 | pub struct CwGitDeployment {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CwOperationResponse` is never constructed
[INFO] [stdout]    --> src/modules/cloudways/types.rs:151:12
[INFO] [stdout]     |
[INFO] [stdout] 151 | pub struct CwOperationResponse {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CwOperation` is never constructed
[INFO] [stdout]    --> src/modules/cloudways/types.rs:156:12
[INFO] [stdout]     |
[INFO] [stdout] 156 | pub struct CwOperation {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CwCronListResponse` is never constructed
[INFO] [stdout]    --> src/modules/cloudways/types.rs:173:12
[INFO] [stdout]     |
[INFO] [stdout] 173 | pub struct CwCronListResponse {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CwCronJob` is never constructed
[INFO] [stdout]    --> src/modules/cloudways/types.rs:179:12
[INFO] [stdout]     |
[INFO] [stdout] 179 | pub struct CwCronJob {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CwSslStatus` is never constructed
[INFO] [stdout]    --> src/modules/cloudways/types.rs:193:12
[INFO] [stdout]     |
[INFO] [stdout] 193 | pub struct CwSslStatus {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CwProvidersResponse` is never constructed
[INFO] [stdout]    --> src/modules/cloudways/types.rs:205:12
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub struct CwProvidersResponse {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CwRegionsResponse` is never constructed
[INFO] [stdout]    --> src/modules/cloudways/types.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 211 | pub struct CwRegionsResponse {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CwAccount` is never constructed
[INFO] [stdout]    --> src/modules/cloudways/types.rs:219:12
[INFO] [stdout]     |
[INFO] [stdout] 219 | pub struct CwAccount {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `CwView` is never used
[INFO] [stdout]    --> src/modules/cloudways/types.rs:231:10
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub enum CwView {
[INFO] [stdout]     |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `WorkflowDispatchRef` is never constructed
[INFO] [stdout]    --> src/modules/github/types.rs:138:12
[INFO] [stdout]     |
[INFO] [stdout] 138 | pub struct WorkflowDispatchRef {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load` is never used
[INFO] [stdout]  --> src/modules/http_client/mod.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub fn load() -> Vec<Project> {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `save` is never used
[INFO] [stdout]   --> src/modules/http_client/mod.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn save(projects: &[Project]) {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `projects_path` is never used
[INFO] [stdout]  --> src/modules/http_client/storage.rs:7:4
[INFO] [stdout]   |
[INFO] [stdout] 7 | fn projects_path() -> PathBuf {
[INFO] [stdout]   |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_projects` is never used
[INFO] [stdout]   --> src/modules/http_client/storage.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub fn load_projects() -> color_eyre::Result<Vec<Project>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `save_projects` is never used
[INFO] [stdout]   --> src/modules/http_client/storage.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub fn save_projects(projects: &[Project]) -> color_eyre::Result<()> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `exit_code` and `duration_ms` are never read
[INFO] [stdout]    --> src/modules/http_client/types.rs:110:9
[INFO] [stdout]     |
[INFO] [stdout] 108 | pub struct RunResult {
[INFO] [stdout]     |            --------- fields in this struct
[INFO] [stdout] 109 |     pub output: String,
[INFO] [stdout] 110 |     pub exit_code: i32,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 111 |     pub duration_ms: u64,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `RunResult` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NotificationModule` is never constructed
[INFO] [stdout]   --> src/modules/notifications/mod.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct NotificationModule {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `init`, `send`, and `update_config` are never used
[INFO] [stdout]   --> src/modules/notifications/mod.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl NotificationModule {
[INFO] [stdout]    | ----------------------- associated items in this implementation
[INFO] [stdout] 21 |     pub fn new(bus: EventBus, config: NotificationConfig) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub fn init(&mut self) {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 76 |     pub async fn send(
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 94 |     pub async fn update_config(&self, config: NotificationConfig) {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `send_notification` is never used
[INFO] [stdout]  --> src/modules/notifications/sender.rs:7:14
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub async fn send_notification(channel: &NotificationChannel, subject: &str, body: &str) -> Result<()> {
[INFO] [stdout]   |              ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `NotificationChannel` is never used
[INFO] [stdout]  --> src/modules/notifications/types.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub enum NotificationChannel {
[INFO] [stdout]   |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_record` is never used
[INFO] [stdout]   --> src/modules/notifications/types.rs:70:12
[INFO] [stdout]    |
[INFO] [stdout] 67 | impl NotificationChannel {
[INFO] [stdout]    | ------------------------ associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 70 |     pub fn from_record(channel_type: &str, settings: &serde_json::Value) -> Option<Self> {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `DesktopPriority` is never used
[INFO] [stdout]    --> src/modules/notifications/types.rs:146:10
[INFO] [stdout]     |
[INFO] [stdout] 146 | pub enum DesktopPriority {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NotificationTemplate` is never constructed
[INFO] [stdout]    --> src/modules/notifications/types.rs:153:12
[INFO] [stdout]     |
[INFO] [stdout] 153 | pub struct NotificationTemplate {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NotificationConfig` is never constructed
[INFO] [stdout]    --> src/modules/notifications/types.rs:160:12
[INFO] [stdout]     |
[INFO] [stdout] 160 | pub struct NotificationConfig {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NotesModule` is never constructed
[INFO] [stdout]   --> src/modules/notes/mod.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct NotesModule {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/modules/notes/mod.rs:21:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | impl NotesModule {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout]  21 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  30 |     pub async fn set_notes(&self, notes: Vec<Note>) {
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  40 |     pub async fn visible_notes(&self) -> Vec<Note> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  56 |     pub async fn pagination_info(&self) -> Pagination {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  60 |     pub async fn next_page(&self) {
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  64 |     pub async fn prev_page(&self) {
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  68 |     pub async fn set_query(&self, query: SearchQuery) {
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  82 |     pub async fn upsert_local(&self, note: Note) {
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  95 |     pub async fn delete_local(&self, note_id: &str) {
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 103 |     pub async fn note_count(&self) -> usize {
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `record_to_note` is never used
[INFO] [stdout]    --> src/modules/notes/mod.rs:115:8
[INFO] [stdout]     |
[INFO] [stdout] 115 | pub fn record_to_note(r: NoteRecord) -> Note {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `note_to_record` is never used
[INFO] [stdout]    --> src/modules/notes/mod.rs:137:8
[INFO] [stdout]     |
[INFO] [stdout] 137 | pub fn note_to_record(n: &Note) -> NoteRecord {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Note` is never constructed
[INFO] [stdout]  --> src/modules/notes/types.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Note {
[INFO] [stdout]   |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Attachment` is never constructed
[INFO] [stdout]   --> src/modules/notes/types.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct Attachment {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Pagination` is never constructed
[INFO] [stdout]   --> src/modules/notes/types.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct Pagination {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `total_pages`, `offset`, `next`, `prev`, and `reset` are never used
[INFO] [stdout]   --> src/modules/notes/types.rs:32:12
[INFO] [stdout]    |
[INFO] [stdout] 31 | impl Pagination {
[INFO] [stdout]    | --------------- associated items in this implementation
[INFO] [stdout] 32 |     pub fn new(page_size: usize) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     pub fn total_pages(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub fn offset(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     pub fn next(&mut self) {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 51 |     pub fn prev(&mut self) {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     pub fn reset(&mut self) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SearchQuery` is never constructed
[INFO] [stdout]   --> src/modules/notes/types.rs:61:12
[INFO] [stdout]    |
[INFO] [stdout] 61 | pub struct SearchQuery {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_empty` and `matches` are never used
[INFO] [stdout]   --> src/modules/notes/types.rs:67:12
[INFO] [stdout]    |
[INFO] [stdout] 66 | impl SearchQuery {
[INFO] [stdout]    | ---------------- methods in this implementation
[INFO] [stdout] 67 |     pub fn is_empty(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn matches(&self, note: &Note) -> bool {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `default_deploy_script` is never used
[INFO] [stdout]    --> src/modules/provision/types.rs:332:12
[INFO] [stdout]     |
[INFO] [stdout] 301 | impl App {
[INFO] [stdout]     | -------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 332 |     pub fn default_deploy_script(&self) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `exec_script`, `exec_json`, and `upload_file` are never used
[INFO] [stdout]    --> src/modules/provision/ssh.rs:77:18
[INFO] [stdout]     |
[INFO] [stdout]  18 | impl SshSession {
[INFO] [stdout]     | --------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub async fn exec_script(&self, script: &str) -> Result<String> {
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 118 |     pub async fn exec_json<T: DeserializeOwned>(&self, cmd: &str) -> Result<T> {
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 125 |     pub async fn upload_file(&self, local: &Path, remote: &str) -> Result<()> {
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AwsLightsailProvider` is never constructed
[INFO] [stdout]   --> src/modules/provision/providers/aws.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct AwsLightsailProvider {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/modules/provision/providers/aws.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | impl AwsLightsailProvider {
[INFO] [stdout]    | ------------------------- associated function in this implementation
[INFO] [stdout] 24 |     pub fn new(
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_app` is never used
[INFO] [stdout]   --> src/modules/provision/app_manager.rs:12:14
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub async fn create_app(ssh: &SshSession, app: &App) -> Result<()> {
[INFO] [stdout]    |              ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `delete_app` is never used
[INFO] [stdout]   --> src/modules/provision/app_manager.rs:80:14
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub async fn delete_app(ssh: &SshSession, app: &App) -> Result<()> {
[INFO] [stdout]    |              ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `deploy_app` is never used
[INFO] [stdout]    --> src/modules/provision/app_manager.rs:113:14
[INFO] [stdout]     |
[INFO] [stdout] 113 | pub async fn deploy_app(ssh: &SshSession, app: &App) -> Result<String> {
[INFO] [stdout]     |              ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `setup_ssl` is never used
[INFO] [stdout]    --> src/modules/provision/app_manager.rs:132:14
[INFO] [stdout]     |
[INFO] [stdout] 132 | pub async fn setup_ssl(ssh: &SshSession, domain: &str) -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `write_remote_file` is never used
[INFO] [stdout]    --> src/modules/provision/app_manager.rs:150:10
[INFO] [stdout]     |
[INFO] [stdout] 150 | async fn write_remote_file(ssh: &SshSession, path: &str, content: &str) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `install_stack_packages` is never used
[INFO] [stdout]    --> src/modules/provision/app_manager.rs:159:10
[INFO] [stdout]     |
[INFO] [stdout] 159 | async fn install_stack_packages(ssh: &SshSession, app: &App) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `header_raw` and `payload_raw` are never read
[INFO] [stdout]  --> src/modules/tools/jwt.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct JwtParts {
[INFO] [stdout]   |            -------- fields in this struct
[INFO] [stdout] 6 |     pub header_raw: String,
[INFO] [stdout]   |         ^^^^^^^^^^
[INFO] [stdout] 7 |     pub payload_raw: String,
[INFO] [stdout]   |         ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `JwtParts` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `start_scheduler` and `get_status` are never used
[INFO] [stdout]    --> src/modules/uptime/mod.rs:87:18
[INFO] [stdout]     |
[INFO] [stdout]  23 | impl UptimeModule {
[INFO] [stdout]     | ----------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  87 |     pub async fn start_scheduler(&self) {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 |     pub async fn get_status(&self, site_id: &str) -> Option<SiteStatus> {
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `interval_secs` is never read
[INFO] [stdout]   --> src/modules/uptime/types.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct Site {
[INFO] [stdout]    |            ---- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub interval_secs: u64,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Site` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `HealthCheckItem` is never constructed
[INFO] [stdout]  --> src/storage/health.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct HealthCheckItem {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `StorageHealthReport` is never constructed
[INFO] [stdout]   --> src/storage/health.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct StorageHealthReport {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `collect` and `all_ok` are never used
[INFO] [stdout]   --> src/storage/health.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl StorageHealthReport {
[INFO] [stdout]    | ------------------------ associated items in this implementation
[INFO] [stdout] 18 |     pub fn collect(settings: &AppSettings) -> Self {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 43 |     pub fn all_ok(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `command_check` is never used
[INFO] [stdout]   --> src/storage/health.rs:48:4
[INFO] [stdout]    |
[INFO] [stdout] 48 | fn command_check(label: &'static str, program: &str, args: &[&str]) -> HealthCheckItem {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `env_label` is never used
[INFO] [stdout]   --> src/storage/types.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl StorageProvider {
[INFO] [stdout]    | -------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub fn env_label(&self) -> &'static str {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VaultRow` is never constructed
[INFO] [stdout]   --> src/supabase/client.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | struct VaultRow {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AppRecord` is never constructed
[INFO] [stdout]    --> src/supabase/client.rs:228:12
[INFO] [stdout]     |
[INFO] [stdout] 228 | pub struct AppRecord {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]     --> src/supabase/client.rs:259:12
[INFO] [stdout]      |
[INFO] [stdout]  249 | impl SupabaseClient {
[INFO] [stdout]      | ------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  259 |     pub fn set_auth_token(&mut self, token: String) {
[INFO] [stdout]      |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  328 |     pub async fn get_vault(&self, user_id: &str) -> color_eyre::Result<Option<Vec<u8>>> {
[INFO] [stdout]      |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  357 |     pub async fn upsert_vault(
[INFO] [stdout]      |                  ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  608 |     pub async fn search_notes(
[INFO] [stdout]      |                  ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1171 |     pub async fn get_server(
[INFO] [stdout]      |                  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1286 |     pub async fn get_apps(
[INFO] [stdout]      |                  ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1314 |     pub async fn get_all_apps(
[INFO] [stdout]      |                  ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1337 |     pub async fn upsert_app(&self, app: &AppRecord) -> color_eyre::Result<()> {
[INFO] [stdout]      |                  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1358 |     pub async fn update_app_status(
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1390 |     pub async fn delete_app(
[INFO] [stdout]      |                  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hex_encode` is never used
[INFO] [stdout]     --> src/supabase/client.rs:1418:4
[INFO] [stdout]      |
[INFO] [stdout] 1418 | fn hex_encode(bytes: &[u8]) -> String {
[INFO] [stdout]      |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hex_decode` is never used
[INFO] [stdout]     --> src/supabase/client.rs:1422:4
[INFO] [stdout]      |
[INFO] [stdout] 1422 | fn hex_decode(s: &str) -> color_eyre::Result<Vec<u8>> {
[INFO] [stdout]      |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `input_fg`, `input_cursor`, `gauge_fill`, `table_header_bg`, `table_row_alt`, and `selection_fg` are never read
[INFO] [stdout]   --> src/theme.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub struct Theme {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub input_fg: Color,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 41 |     pub input_cursor: Color,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     pub gauge_fill: Color,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 47 |     pub table_header_bg: Color,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 48 |     pub table_header_fg: Color,
[INFO] [stdout] 49 |     pub table_row_alt: Color,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 53 |     pub selection_fg: Color,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Theme` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TextInput` is never constructed
[INFO] [stdout]    --> src/theme.rs:179:12
[INFO] [stdout]     |
[INFO] [stdout] 179 | pub struct TextInput {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/theme.rs:191:12
[INFO] [stdout]     |
[INFO] [stdout] 190 | impl TextInput {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 191 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 |     pub fn with_value(value: impl Into<String>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 206 |     pub fn set_value(&mut self, value: impl Into<String>) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 212 |     pub fn clear(&mut self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 218 |     pub fn value(&self) -> &str {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 223 |     pub fn insert_char(&mut self, c: char) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |     pub fn backspace(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 246 |     pub fn delete(&mut self) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 261 |     pub fn move_left(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 266 |     pub fn move_right(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 274 |     pub fn home(&mut self) {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 279 |     pub fn end(&mut self) {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 284 |     pub fn draw(
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 316 |     fn byte_offset(&self) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 34s
[INFO] running `Command { std: "docker" "inspect" "5110ab85bef5764b6bbd7a73dc98c5b43abdb6e3d0bee0a39c44461b73dd5956", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5110ab85bef5764b6bbd7a73dc98c5b43abdb6e3d0bee0a39c44461b73dd5956", kill_on_drop: false }`
[INFO] [stdout] 5110ab85bef5764b6bbd7a73dc98c5b43abdb6e3d0bee0a39c44461b73dd5956
