[INFO] cloning repository https://github.com/TheWincher/password_manager
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/TheWincher/password_manager" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTheWincher%2Fpassword_manager", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTheWincher%2Fpassword_manager'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 1a909bc8ccb157150805205895fa35c5d67ff2a8
[INFO] checking TheWincher/password_manager against try#d0ab665d12770dbaae620b539ee4319b83445f45 for pr-133502-24
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTheWincher%2Fpassword_manager" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/TheWincher/password_manager
[INFO] finished tweaking git repo https://github.com/TheWincher/password_manager
[INFO] tweaked toml for git repo https://github.com/TheWincher/password_manager written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/TheWincher/password_manager on toolchain d0ab665d12770dbaae620b539ee4319b83445f45
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d0ab665d12770dbaae620b539ee4319b83445f45" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/TheWincher/password_manager 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" "+d0ab665d12770dbaae620b539ee4319b83445f45" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[ERROR] error running command: no output for 300 seconds
[INFO] checking TheWincher/password_manager against try#d0ab665d12770dbaae620b539ee4319b83445f45 for pr-133502-24
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTheWincher%2Fpassword_manager" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/TheWincher/password_manager
[INFO] finished tweaking git repo https://github.com/TheWincher/password_manager
[INFO] tweaked toml for git repo https://github.com/TheWincher/password_manager written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/TheWincher/password_manager on toolchain d0ab665d12770dbaae620b539ee4319b83445f45
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d0ab665d12770dbaae620b539ee4319b83445f45" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/TheWincher/password_manager 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" "+d0ab665d12770dbaae620b539ee4319b83445f45" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded line-clipping v0.3.5
[INFO] [stderr]   Downloaded kasuari v0.4.11
[INFO] [stderr]   Downloaded unicode-truncate v2.0.0
[INFO] [stderr]   Downloaded tracing-error v0.2.1
[INFO] [stderr]   Downloaded color-spantrace v0.3.0
[INFO] [stderr]   Downloaded instability v0.3.10
[INFO] [stderr]   Downloaded indenter v0.3.4
[INFO] [stderr]   Downloaded base64ct v1.8.2
[INFO] [stderr]   Downloaded pest_generator v2.8.5
[INFO] [stderr]   Downloaded owo-colors v4.2.3
[INFO] [stderr]   Downloaded pest_derive v2.8.5
[INFO] [stderr]   Downloaded pest_meta v2.8.5
[INFO] [stderr]   Downloaded eyre v0.6.12
[INFO] [stderr]   Downloaded portable-atomic v1.13.0
[INFO] [stderr]   Downloaded pest v2.8.5
[INFO] [stderr]   Downloaded color-eyre v0.6.5
[INFO] [stderr]   Downloaded libc v0.2.179
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3d5ced03c013a94a2f102a4510f48a6e9184255caf5fd8244f58017bde7f5210" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] a228a1858e6e60aac1a98ba0d05529c92ee615e31cd58e4d47d1b9cf21f4dbc6
[INFO] running `Command { std: "docker" "start" "a228a1858e6e60aac1a98ba0d05529c92ee615e31cd58e4d47d1b9cf21f4dbc6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a228a1858e6e60aac1a98ba0d05529c92ee615e31cd58e4d47d1b9cf21f4dbc6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "a228a1858e6e60aac1a98ba0d05529c92ee615e31cd58e4d47d1b9cf21f4dbc6" "/opt/rustwide/cargo-home/bin/cargo" "+d0ab665d12770dbaae620b539ee4319b83445f45" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a228a1858e6e60aac1a98ba0d05529c92ee615e31cd58e4d47d1b9cf21f4dbc6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "a228a1858e6e60aac1a98ba0d05529c92ee615e31cd58e4d47d1b9cf21f4dbc6" "/opt/rustwide/cargo-home/bin/cargo" "+d0ab665d12770dbaae620b539ee4319b83445f45" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.179
[INFO] [stderr]    Compiling proc-macro2 v1.0.105
[INFO] [stderr]    Compiling unicode-ident v1.0.22
[INFO] [stderr]    Compiling quote v1.0.43
[INFO] [stderr]     Checking subtle v2.6.1
[INFO] [stderr]    Compiling fnv v1.0.7
[INFO] [stderr]     Checking either v1.15.0
[INFO] [stderr]    Compiling thiserror v2.0.17
[INFO] [stderr]     Checking bitflags v2.10.0
[INFO] [stderr]     Checking once_cell v1.21.3
[INFO] [stderr]     Checking itoa v1.0.17
[INFO] [stderr]     Checking itertools v0.13.0
[INFO] [stderr]    Compiling instability v0.3.10
[INFO] [stderr]    Compiling unicode-segmentation v1.12.0
[INFO] [stderr]     Checking ryu v1.0.22
[INFO] [stderr]     Checking tracing-core v0.1.36
[INFO] [stderr]     Checking itertools v0.14.0
[INFO] [stderr]     Checking compact_str v0.9.0
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]    Compiling convert_case v0.10.0
[INFO] [stderr]    Compiling zerocopy v0.8.33
[INFO] [stderr]     Checking smallvec v1.15.1
[INFO] [stderr]     Checking log v0.4.29
[INFO] [stderr]    Compiling rustix v1.1.3
[INFO] [stderr]     Checking deranged v0.5.5
[INFO] [stderr]    Compiling owo-colors v4.2.3
[INFO] [stderr]    Compiling syn v2.0.114
[INFO] [stderr]     Checking linux-raw-sys v0.11.0
[INFO] [stderr]     Checking memchr v2.7.6
[INFO] [stderr]     Checking getrandom v0.2.16
[INFO] [stderr]     Checking errno v0.3.14
[INFO] [stderr]     Checking unicode-truncate v2.0.0
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking mio v1.1.1
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking signal-hook-registry v1.4.8
[INFO] [stderr]     Checking crypto-common v0.1.7
[INFO] [stderr]     Checking signal-hook v0.3.18
[INFO] [stderr]    Compiling object v0.37.3
[INFO] [stderr]     Checking pin-project-lite v0.2.16
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking num-conv v0.1.0
[INFO] [stderr]     Checking time-core v0.1.6
[INFO] [stderr]     Checking signal-hook-mio v0.2.5
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]     Checking cipher v0.4.4
[INFO] [stderr]     Checking universal-hash v0.5.1
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking tracing-subscriber v0.3.22
[INFO] [stderr]     Checking line-clipping v0.3.5
[INFO] [stderr]     Checking adler2 v2.0.1
[INFO] [stderr]    Compiling zmij v1.0.14
[INFO] [stderr]     Checking gimli v0.32.3
[INFO] [stderr]    Compiling color-spantrace v0.3.0
[INFO] [stderr]    Compiling eyre v0.6.12
[INFO] [stderr]     Checking time v0.3.44
[INFO] [stderr]     Checking polyval v0.6.2
[INFO] [stderr]     Checking miniz_oxide v0.8.9
[INFO] [stderr]     Checking rustc-demangle v0.1.26
[INFO] [stderr]     Checking tracing-error v0.2.1
[INFO] [stderr]     Checking indenter v0.3.4
[INFO] [stderr]     Checking base64ct v1.8.2
[INFO] [stderr]     Checking ghash v0.5.1
[INFO] [stderr]     Checking password-hash v0.5.0
[INFO] [stderr]     Checking aes v0.8.4
[INFO] [stderr]     Checking ctr v0.9.2
[INFO] [stderr]     Checking blake2 v0.10.6
[INFO] [stderr]     Checking aead v0.5.2
[INFO] [stderr]     Checking serde_json v1.0.149
[INFO] [stderr]     Checking sha2 v0.10.9
[INFO] [stderr]     Checking aes-gcm v0.10.3
[INFO] [stderr]     Checking argon2 v0.5.3
[INFO] [stderr]     Checking hmac v0.12.1
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking addr2line v0.25.1
[INFO] [stderr]    Compiling darling_core v0.20.11
[INFO] [stderr]    Compiling thiserror-impl v2.0.17
[INFO] [stderr]    Compiling strum_macros v0.27.2
[INFO] [stderr]    Compiling derive_more-impl v2.1.1
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]     Checking derive_more v2.1.1
[INFO] [stderr]     Checking crossterm v0.29.0
[INFO] [stderr]     Checking backtrace v0.3.76
[INFO] [stderr]     Checking kasuari v0.4.11
[INFO] [stderr]     Checking color-eyre v0.6.5
[INFO] [stderr]    Compiling darling_macro v0.20.11
[INFO] [stderr]     Checking strum v0.27.2
[INFO] [stderr]     Checking ratatui-core v0.1.0
[INFO] [stderr]    Compiling darling v0.20.11
[INFO] [stderr]     Checking ratatui-widgets v0.3.0
[INFO] [stderr]     Checking ratatui-crossterm v0.1.0
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking ratatui-macros v0.7.0
[INFO] [stderr]     Checking ratatui v0.30.0
[INFO] [stderr]     Checking password-manager v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Tabs`
[INFO] [stdout]  --> src/ui/center_left.rs:4:81
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ratatui::{ style::Style, widgets::{ Block, List, ListState, StatefulWidget, Tabs, Widget } };
[INFO] [stdout]   |                                                                                 ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Tabs`
[INFO] [stdout]  --> src/ui/center_left.rs:4:81
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ratatui::{ style::Style, widgets::{ Block, List, ListState, StatefulWidget, Tabs, Widget } };
[INFO] [stdout]   |                                                                                 ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Widget`
[INFO] [stdout]  --> src/ui/center_left.rs:4:87
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ratatui::{ style::Style, widgets::{ Block, List, ListState, StatefulWidget, Tabs, Widget } };
[INFO] [stdout]   |                                                                                       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Widget`
[INFO] [stdout]  --> src/ui/center_left.rs:4:87
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ratatui::{ style::Style, widgets::{ Block, List, ListState, StatefulWidget, Tabs, Widget } };
[INFO] [stdout]   |                                                                                       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]   --> src/ui/file_selector.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 |         state: &mut Self::State
[INFO] [stdout]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]   --> src/ui/file_selector.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 |         state: &mut Self::State
[INFO] [stdout]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `derive_key` is never used
[INFO] [stdout]  --> src/key_derivation.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn derive_key(master_password: &str) -> ([u8; 32], [u8; 22]) {
[INFO] [stdout]   |        ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `derive_key_with_salt` is never used
[INFO] [stdout]   --> src/key_derivation.rs:12:4
[INFO] [stdout]    |
[INFO] [stdout] 12 | fn derive_key_with_salt(master_password: &str, salt: &[u8; 22]) -> ([u8; 32], [u8; 22]) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_verifier` is never used
[INFO] [stdout]   --> src/key_derivation.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub fn create_verifier(derive_key: &[u8; 32]) -> [u8; 32] {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_password` is never used
[INFO] [stdout]   --> src/key_derivation.rs:36:8
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub fn verify_password(master_password: &str, salt: &[u8; 22], verifier: &[u8; 32]) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `DEFAULT_VAULT_PATH` is never used
[INFO] [stdout]   --> src/vault.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | static DEFAULT_VAULT_PATH: OnceLock<PathBuf> = OnceLock::new();
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `vault_path` is never used
[INFO] [stdout]   --> src/vault.rs:22:4
[INFO] [stdout]    |
[INFO] [stdout] 22 | fn vault_path() -> &'static PathBuf {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ensure_parents_exist` is never used
[INFO] [stdout]   --> src/vault.rs:51:4
[INFO] [stdout]    |
[INFO] [stdout] 51 | fn ensure_parents_exist() -> std::io::Result<()> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `header` and `entries` are never read
[INFO] [stdout]   --> src/vault.rs:63:5
[INFO] [stdout]    |
[INFO] [stdout] 62 | pub struct Vault {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] 63 |     header: VaultHeader,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 64 |     entries: Vec<VaultEntry>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Vault` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/vault.rs:68:12
[INFO] [stdout]     |
[INFO] [stdout]  67 | impl Vault {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout]  68 |     pub fn new(master_password: &str) -> Result<Self, std::io::Error> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  84 |     pub fn open_existing(path: &PathBuf, master_password: &str) -> Result<Self, std::io::Error> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn file_exists() -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn save(&self) -> Result<(), std::io::Error> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 130 |     fn serialize(&self) -> Vec<u8> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 145 |     fn deserialize(_data: &[u8]) -> Result<Vec<VaultEntry>, std::io::Error> {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 167 |     fn encrypt(&self, _data: &[u8]) -> Result<Vec<u8>, std::io::Error> {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 175 |     fn decrypt(nonce_bytes: &[u8; 12], _data: &[u8]) -> Result<Vec<u8>, std::io::Error> {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 183 |     pub fn add_entry(&mut self, entry: VaultEntry) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 188 |     pub fn get_entries(&self) -> &Vec<VaultEntry> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 192 |     pub fn get_entry(&self, index: usize) -> Option<&VaultEntry> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `derive_key` is never used
[INFO] [stdout]  --> src/key_derivation.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn derive_key(master_password: &str) -> ([u8; 32], [u8; 22]) {
[INFO] [stdout]   |        ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `derive_key_with_salt` is never used
[INFO] [stdout]   --> src/key_derivation.rs:12:4
[INFO] [stdout]    |
[INFO] [stdout] 12 | fn derive_key_with_salt(master_password: &str, salt: &[u8; 22]) -> ([u8; 32], [u8; 22]) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `service`, `username`, and `password` are never read
[INFO] [stdout]  --> src/vault_entry.rs:3:9
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub struct VaultEntry {
[INFO] [stdout]   |            ---------- fields in this struct
[INFO] [stdout] 3 |     pub service: String,
[INFO] [stdout]   |         ^^^^^^^
[INFO] [stdout] 4 |     pub username: Option<String>,
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout] 5 |     pub password: Vec<u8>,
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `VaultEntry` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `serialize` and `deserialize` are never used
[INFO] [stdout]   --> src/vault_entry.rs:9:12
[INFO] [stdout]    |
[INFO] [stdout]  8 | impl VaultEntry {
[INFO] [stdout]    | --------------- associated items in this implementation
[INFO] [stdout]  9 |     pub fn serialize(&self) -> Vec<u8> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     pub fn deserialize(data: &[u8]) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_verifier` is never used
[INFO] [stdout]   --> src/key_derivation.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub fn create_verifier(derive_key: &[u8; 32]) -> [u8; 32] {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_password` is never used
[INFO] [stdout]   --> src/key_derivation.rs:36:8
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub fn verify_password(master_password: &str, salt: &[u8; 22], verifier: &[u8; 32]) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `magic`, `version`, `salt`, `verifier`, and `none` are never read
[INFO] [stdout]   --> src/vault_header.rs:7:5
[INFO] [stdout]    |
[INFO] [stdout]  6 | pub struct VaultHeader {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout]  7 |     magic: [u8; 4],
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]  8 |     version: u16,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]  9 |     pub salt: [u8; 22],
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 10 |     pub verifier: [u8; 32],
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 11 |     pub none: [u8; 12],
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `VaultHeader` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `DEFAULT_VAULT_PATH` is never used
[INFO] [stdout]   --> src/vault.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | static DEFAULT_VAULT_PATH: OnceLock<PathBuf> = OnceLock::new();
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `write`, and `read` are never used
[INFO] [stdout]   --> src/vault_header.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl VaultHeader {
[INFO] [stdout]    | ---------------- associated items in this implementation
[INFO] [stdout] 20 |     pub fn new(salt: [u8; 22], verifier: [u8; 32], none: [u8; 12]) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     pub fn write<W: Write>(&self, mut writer: W) -> std::io::Result<()> {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub fn read<R: Read>(mut reader: R) -> std::io::Result<Self> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `vault_path` is never used
[INFO] [stdout]   --> src/vault.rs:22:4
[INFO] [stdout]    |
[INFO] [stdout] 22 | fn vault_path() -> &'static PathBuf {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ensure_parents_exist` is never used
[INFO] [stdout]   --> src/vault.rs:51:4
[INFO] [stdout]    |
[INFO] [stdout] 51 | fn ensure_parents_exist() -> std::io::Result<()> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `OpenExistingVault` is never constructed
[INFO] [stdout]   --> src/app.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub enum AppState {
[INFO] [stdout]    |          -------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 21 |     OpenExistingVault,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AppState` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `SelectedTab` is never used
[INFO] [stdout]   --> src/app.rs:26:6
[INFO] [stdout]    |
[INFO] [stdout] 26 | enum SelectedTab {
[INFO] [stdout]    |      ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `header` and `entries` are never read
[INFO] [stdout]   --> src/vault.rs:63:5
[INFO] [stdout]    |
[INFO] [stdout] 62 | pub struct Vault {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] 63 |     header: VaultHeader,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 64 |     entries: Vec<VaultEntry>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Vault` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Vault` is never constructed
[INFO] [stdout]   --> src/app.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 34 | enum FileType {
[INFO] [stdout]    |      -------- variant in this enum
[INFO] [stdout] 35 |     Config,
[INFO] [stdout] 36 |     Vault,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `EnterDir` is never constructed
[INFO] [stdout]   --> src/app.rs:81:5
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub enum Message {
[INFO] [stdout]    |          ------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 81 |     EnterDir(PathBuf),
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `vault` and `config` are never read
[INFO] [stdout]    --> src/app.rs:112:9
[INFO] [stdout]     |
[INFO] [stdout] 107 | pub struct App {
[INFO] [stdout]     |            --- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 112 |     pub vault: Option<Vault>,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 113 |     config: Option<Config>,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `App` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `selected_file` is never read
[INFO] [stdout]   --> src/ui/center_left.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct CenterLeftWidgetState {
[INFO] [stdout]    |            --------------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 12 |     pub selected_file: Option<PathBuf>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CenterLeftWidgetState` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/vault.rs:68:12
[INFO] [stdout]     |
[INFO] [stdout]  67 | impl Vault {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout]  68 |     pub fn new(master_password: &str) -> Result<Self, std::io::Error> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  84 |     pub fn open_existing(path: &PathBuf, master_password: &str) -> Result<Self, std::io::Error> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn file_exists() -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn save(&self) -> Result<(), std::io::Error> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 130 |     fn serialize(&self) -> Vec<u8> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 145 |     fn deserialize(_data: &[u8]) -> Result<Vec<VaultEntry>, std::io::Error> {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 167 |     fn encrypt(&self, _data: &[u8]) -> Result<Vec<u8>, std::io::Error> {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 175 |     fn decrypt(nonce_bytes: &[u8; 12], _data: &[u8]) -> Result<Vec<u8>, std::io::Error> {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 183 |     pub fn add_entry(&mut self, entry: VaultEntry) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 188 |     pub fn get_entries(&self) -> &Vec<VaultEntry> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 192 |     pub fn get_entry(&self, index: usize) -> Option<&VaultEntry> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `service`, `username`, and `password` are never read
[INFO] [stdout]  --> src/vault_entry.rs:3:9
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub struct VaultEntry {
[INFO] [stdout]   |            ---------- fields in this struct
[INFO] [stdout] 3 |     pub service: String,
[INFO] [stdout]   |         ^^^^^^^
[INFO] [stdout] 4 |     pub username: Option<String>,
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout] 5 |     pub password: Vec<u8>,
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `VaultEntry` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `serialize` and `deserialize` are never used
[INFO] [stdout]   --> src/vault_entry.rs:9:12
[INFO] [stdout]    |
[INFO] [stdout]  8 | impl VaultEntry {
[INFO] [stdout]    | --------------- associated items in this implementation
[INFO] [stdout]  9 |     pub fn serialize(&self) -> Vec<u8> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     pub fn deserialize(data: &[u8]) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `magic`, `version`, `salt`, `verifier`, and `none` are never read
[INFO] [stdout]   --> src/vault_header.rs:7:5
[INFO] [stdout]    |
[INFO] [stdout]  6 | pub struct VaultHeader {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout]  7 |     magic: [u8; 4],
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]  8 |     version: u16,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]  9 |     pub salt: [u8; 22],
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 10 |     pub verifier: [u8; 32],
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 11 |     pub none: [u8; 12],
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `VaultHeader` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `write`, and `read` are never used
[INFO] [stdout]   --> src/vault_header.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl VaultHeader {
[INFO] [stdout]    | ---------------- associated items in this implementation
[INFO] [stdout] 20 |     pub fn new(salt: [u8; 22], verifier: [u8; 32], none: [u8; 12]) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     pub fn write<W: Write>(&self, mut writer: W) -> std::io::Result<()> {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub fn read<R: Read>(mut reader: R) -> std::io::Result<Self> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `OpenExistingVault` is never constructed
[INFO] [stdout]   --> src/app.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub enum AppState {
[INFO] [stdout]    |          -------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 21 |     OpenExistingVault,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AppState` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `SelectedTab` is never used
[INFO] [stdout]   --> src/app.rs:26:6
[INFO] [stdout]    |
[INFO] [stdout] 26 | enum SelectedTab {
[INFO] [stdout]    |      ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Vault` is never constructed
[INFO] [stdout]   --> src/app.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 34 | enum FileType {
[INFO] [stdout]    |      -------- variant in this enum
[INFO] [stdout] 35 |     Config,
[INFO] [stdout] 36 |     Vault,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `EnterDir` is never constructed
[INFO] [stdout]   --> src/app.rs:81:5
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub enum Message {
[INFO] [stdout]    |          ------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 81 |     EnterDir(PathBuf),
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `vault` and `config` are never read
[INFO] [stdout]    --> src/app.rs:112:9
[INFO] [stdout]     |
[INFO] [stdout] 107 | pub struct App {
[INFO] [stdout]     |            --- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 112 |     pub vault: Option<Vault>,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 113 |     config: Option<Config>,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `App` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `selected_file` is never read
[INFO] [stdout]   --> src/ui/center_left.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct CenterLeftWidgetState {
[INFO] [stdout]    |            --------------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 12 |     pub selected_file: Option<PathBuf>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CenterLeftWidgetState` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 8.24s
[INFO] running `Command { std: "docker" "inspect" "a228a1858e6e60aac1a98ba0d05529c92ee615e31cd58e4d47d1b9cf21f4dbc6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a228a1858e6e60aac1a98ba0d05529c92ee615e31cd58e4d47d1b9cf21f4dbc6", kill_on_drop: false }`
[INFO] [stdout] a228a1858e6e60aac1a98ba0d05529c92ee615e31cd58e4d47d1b9cf21f4dbc6
