[INFO] fetching crate zero_vault_core 1.0.1...
[INFO] checking zero_vault_core-1.0.1 against master#035b01b794602d5861daa43ac792f372f8981ed7 for 152214-denied
[INFO] extracting crate zero_vault_core 1.0.1 into /workspace/builds/worker-6-tc1/source
[INFO] started tweaking crates.io crate zero_vault_core 1.0.1
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate zero_vault_core 1.0.1
[INFO] tweaked toml for crates.io crate zero_vault_core 1.0.1 written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate zero_vault_core 1.0.1 on toolchain 035b01b794602d5861daa43ac792f372f8981ed7
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+035b01b794602d5861daa43ac792f372f8981ed7" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate zero_vault_core 1.0.1 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" "+035b01b794602d5861daa43ac792f372f8981ed7" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded errno v0.3.11
[INFO] [stderr]   Downloaded test-case-macros v3.3.1
[INFO] [stderr]   Downloaded test-case v3.3.1
[INFO] [stderr]   Downloaded tempfile v3.19.1
[INFO] [stderr]   Downloaded test-case-core v3.3.1
[INFO] [stderr]   Downloaded block-padding v0.3.3
[INFO] [stderr]   Downloaded rand_xorshift v0.3.0
[INFO] [stderr]   Downloaded quickcheck_macros v1.0.0
[INFO] [stderr]   Downloaded constant_time_eq v0.2.6
[INFO] [stderr]   Downloaded rusty-fork v0.3.0
[INFO] [stderr]   Downloaded argon2 v0.5.3
[INFO] [stderr]   Downloaded semver v1.0.26
[INFO] [stderr]   Downloaded clap v4.5.37
[INFO] [stderr]   Downloaded ed25519-dalek v2.1.1
[INFO] [stderr]   Downloaded base64 v0.21.7
[INFO] [stderr]   Downloaded cc v1.2.19
[INFO] [stderr]   Downloaded zerocopy-derive v0.8.24
[INFO] [stderr]   Downloaded rstest_macros v0.18.2
[INFO] [stderr]   Downloaded env_logger v0.8.4
[INFO] [stderr]   Downloaded proptest v1.6.0
[INFO] [stderr]   Downloaded r-efi v5.2.0
[INFO] [stderr]   Downloaded zerocopy v0.8.24
[INFO] [stderr]   Downloaded getrandom v0.3.2
[INFO] [stderr]   Downloaded cbc v0.1.2
[INFO] [stderr]   Downloaded base64ct v1.7.3
[INFO] [stderr]   Downloaded quickcheck v1.0.3
[INFO] [stderr]   Downloaded rstest v0.18.2
[INFO] [stderr]   Downloaded rustix v1.0.5
[INFO] [stderr]   Downloaded glob v0.3.2
[INFO] [stderr]   Downloaded ctor v0.2.9
[INFO] [stderr]   Downloaded clap_builder v4.5.37
[INFO] [stderr]   Downloaded libc v0.2.172
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:61361fe0aef631f17e9d025a70c5a647956f8c671dd02950a60ad3f5cc5526d7" "/opt/rustwide/cargo-home/bin/cargo" "+035b01b794602d5861daa43ac792f372f8981ed7" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 557054accfbed28043e15b0c5eb44d276b6a40ac79ee2d0149dea16f561acc2a
[INFO] running `Command { std: "docker" "start" "-a" "557054accfbed28043e15b0c5eb44d276b6a40ac79ee2d0149dea16f561acc2a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "557054accfbed28043e15b0c5eb44d276b6a40ac79ee2d0149dea16f561acc2a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "557054accfbed28043e15b0c5eb44d276b6a40ac79ee2d0149dea16f561acc2a", kill_on_drop: false }`
[INFO] [stdout] 557054accfbed28043e15b0c5eb44d276b6a40ac79ee2d0149dea16f561acc2a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:61361fe0aef631f17e9d025a70c5a647956f8c671dd02950a60ad3f5cc5526d7" "/opt/rustwide/cargo-home/bin/cargo" "+035b01b794602d5861daa43ac792f372f8981ed7" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 74457b84b47e4fbd7fc8b067a3f384ba612a230e53ebb94bc6348d1f4770a23c
[INFO] running `Command { std: "docker" "start" "-a" "74457b84b47e4fbd7fc8b067a3f384ba612a230e53ebb94bc6348d1f4770a23c", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.172
[INFO] [stderr]     Checking cfg-if v1.0.0
[INFO] [stderr]    Compiling proc-macro2 v1.0.95
[INFO] [stderr]    Compiling unicode-ident v1.0.18
[INFO] [stderr]    Compiling typenum v1.18.0
[INFO] [stderr]     Checking subtle v2.6.1
[INFO] [stderr]     Checking memchr v2.7.4
[INFO] [stderr]    Compiling autocfg v1.4.0
[INFO] [stderr]    Compiling semver v1.0.26
[INFO] [stderr]    Compiling zerocopy v0.8.24
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]     Checking regex-syntax v0.8.5
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling rustix v1.0.5
[INFO] [stderr]    Compiling serde_json v1.0.140
[INFO] [stderr]    Compiling getrandom v0.3.2
[INFO] [stderr]    Compiling cc v1.2.19
[INFO] [stderr]     Checking itoa v1.0.15
[INFO] [stderr]     Checking bitflags v2.9.0
[INFO] [stderr]    Compiling rayon-core v1.12.1
[INFO] [stderr]     Checking linux-raw-sys v0.9.4
[INFO] [stderr]     Checking base64ct v1.7.3
[INFO] [stderr]     Checking ryu v1.0.20
[INFO] [stderr]     Checking aho-corasick v1.1.3
[INFO] [stderr]     Checking half v2.6.0
[INFO] [stderr]     Checking clap_lex v0.7.4
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]    Compiling rustc_version v0.4.1
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking getrandom v0.2.15
[INFO] [stderr]     Checking fastrand v2.3.0
[INFO] [stderr]     Checking ciborium-io v0.2.2
[INFO] [stderr]    Compiling quote v1.0.40
[INFO] [stderr]    Compiling curve25519-dalek v4.1.3
[INFO] [stderr]    Compiling rstest_macros v0.18.2
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking signature v2.2.0
[INFO] [stderr]     Checking crossbeam-epoch v0.9.18
[INFO] [stderr]     Checking anstyle v1.0.10
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling syn v2.0.100
[INFO] [stderr]     Checking ed25519 v2.2.3
[INFO] [stderr]     Checking password-hash v0.5.0
[INFO] [stderr]     Checking clap_builder v4.5.37
[INFO] [stderr]     Checking ciborium-ll v0.2.2
[INFO] [stderr]     Checking crossbeam-deque v0.8.6
[INFO] [stderr]     Checking wait-timeout v0.2.1
[INFO] [stderr]     Checking itertools v0.10.5
[INFO] [stderr]    Compiling relative-path v1.9.3
[INFO] [stderr]     Checking arrayvec v0.7.6
[INFO] [stderr]     Checking fnv v1.0.7
[INFO] [stderr]     Checking cast v0.3.0
[INFO] [stderr]     Checking bit-vec v0.8.0
[INFO] [stderr]     Checking quick-error v1.2.3
[INFO] [stderr]     Checking crypto-common v0.1.6
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking block-padding v0.3.3
[INFO] [stderr]     Checking universal-hash v0.5.1
[INFO] [stderr]     Checking aead v0.5.2
[INFO] [stderr]     Checking inout v0.1.4
[INFO] [stderr]     Checking log v0.4.27
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]    Compiling glob v0.3.2
[INFO] [stderr]     Checking regex-automata v0.4.9
[INFO] [stderr]     Checking polyval v0.6.2
[INFO] [stderr]     Checking poly1305 v0.8.0
[INFO] [stderr]     Checking bit-set v0.8.0
[INFO] [stderr]     Checking plotters v0.3.7
[INFO] [stderr]     Checking rayon v1.10.0
[INFO] [stderr]    Compiling blake3 v1.8.2
[INFO] [stderr]     Checking ghash v0.5.1
[INFO] [stderr]     Checking rand_xorshift v0.3.0
[INFO] [stderr]     Checking tempfile v3.19.1
[INFO] [stderr]     Checking num_cpus v1.16.0
[INFO] [stderr]     Checking is-terminal v0.4.16
[INFO] [stderr]     Checking futures-timer v3.0.3
[INFO] [stderr]     Checking constant_time_eq v0.2.6
[INFO] [stderr]     Checking rusty-fork v0.3.0
[INFO] [stderr]     Checking base64 v0.21.7
[INFO] [stderr]     Checking unarray v0.1.4
[INFO] [stderr]     Checking oorandom v11.1.5
[INFO] [stderr]     Checking anes v0.1.6
[INFO] [stderr]     Checking hex v0.4.3
[INFO] [stderr]     Checking sha2 v0.10.8
[INFO] [stderr]     Checking hmac v0.12.1
[INFO] [stderr]     Checking blake2 v0.10.6
[INFO] [stderr]     Checking hkdf v0.12.4
[INFO] [stderr]     Checking sha3 v0.10.8
[INFO] [stderr]     Checking pbkdf2 v0.12.2
[INFO] [stderr]     Checking clap v4.5.37
[INFO] [stderr]     Checking argon2 v0.5.3
[INFO] [stderr]     Checking criterion-plot v0.5.0
[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 regex v1.11.1
[INFO] [stderr]     Checking env_logger v0.8.4
[INFO] [stderr]     Checking proptest v1.6.0
[INFO] [stderr]     Checking quickcheck v1.0.3
[INFO] [stderr]    Compiling quickcheck_macros v1.0.0
[INFO] [stderr]    Compiling test-case-core v3.3.1
[INFO] [stderr]    Compiling zeroize_derive v1.4.2
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling curve25519-dalek-derive v0.1.1
[INFO] [stderr]    Compiling ctor v0.2.9
[INFO] [stderr]    Compiling test-case-macros v3.3.1
[INFO] [stderr]     Checking test-case v3.3.1
[INFO] [stderr]     Checking zeroize v1.8.1
[INFO] [stderr]     Checking cipher v0.4.4
[INFO] [stderr]     Checking secrecy v0.8.0
[INFO] [stderr]     Checking ctr v0.9.2
[INFO] [stderr]     Checking aes v0.8.4
[INFO] [stderr]     Checking chacha20 v0.9.1
[INFO] [stderr]     Checking cbc v0.1.2
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]     Checking chacha20poly1305 v0.10.1
[INFO] [stderr]     Checking aes-gcm v0.10.3
[INFO] [stderr]     Checking ed25519-dalek v2.1.1
[INFO] [stderr]     Checking futures-executor v0.3.31
[INFO] [stderr]     Checking futures v0.3.31
[INFO] [stderr]     Checking rstest v0.18.2
[INFO] [stderr]     Checking bincode v1.3.3
[INFO] [stderr]     Checking ciborium v0.2.2
[INFO] [stderr]     Checking tinytemplate v1.2.1
[INFO] [stderr]     Checking zero_vault_core v1.0.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Sha256`
[INFO] [stdout]   --> src/crypto.rs:12:20
[INFO] [stdout]    |
[INFO] [stdout] 12 | use sha2::{Digest, Sha256, Sha512};
[INFO] [stdout]    |                    ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]   --> src/crypto.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::collections::HashMap;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::mem`
[INFO] [stdout]  --> src/memory.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::mem;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking criterion v0.5.1
[INFO] [stdout] warning: constant `PBKDF2_PRIMARY_ITERATIONS` is never used
[INFO] [stdout]   --> src/crypto.rs:39:7
[INFO] [stdout]    |
[INFO] [stdout] 39 | const PBKDF2_PRIMARY_ITERATIONS: u32 = 1_000_000; // 1 million iterations
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PBKDF2_SECONDARY_ITERATIONS` is never used
[INFO] [stdout]   --> src/crypto.rs:40:7
[INFO] [stdout]    |
[INFO] [stdout] 40 | const PBKDF2_SECONDARY_ITERATIONS: u32 = 600_000; // 600,000 iterations
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PBKDF2_TERTIARY_ITERATIONS` is never used
[INFO] [stdout]   --> src/crypto.rs:41:7
[INFO] [stdout]    |
[INFO] [stdout] 41 | const PBKDF2_TERTIARY_ITERATIONS: u32 = 300_000; // 300,000 iterations
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `CONTEXT_MASTER_KEY` is never used
[INFO] [stdout]   --> src/crypto.rs:44:7
[INFO] [stdout]    |
[INFO] [stdout] 44 | const CONTEXT_MASTER_KEY: &[u8] = b"ZEROVAULT_MASTER_KEY_CONTEXT_v2";
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `CONTEXT_KEK` is never used
[INFO] [stdout]   --> src/crypto.rs:45:7
[INFO] [stdout]    |
[INFO] [stdout] 45 | const CONTEXT_KEK: &[u8] = b"ZEROVAULT_KEY_ENCRYPTION_KEY_CONTEXT_v2";
[INFO] [stdout]    |       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `reconstruct_key` is never used
[INFO] [stdout]    --> src/crypto.rs:407:4
[INFO] [stdout]     |
[INFO] [stdout] 407 | fn reconstruct_key(parts: &[Vec<u8>], threshold: u8) -> Result<SecureKey, VaultError> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/types.rs:67:5
[INFO] [stdout]    |
[INFO] [stdout] 67 |     pub primary_algorithm: PrimaryAlgorithm,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:51:9
[INFO] [stdout]    |
[INFO] [stdout] 51 | #![warn(missing_docs)]
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/types.rs:68:5
[INFO] [stdout]    |
[INFO] [stdout] 68 |     pub secondary_algorithm: SecondaryAlgorithm,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/types.rs:69:5
[INFO] [stdout]    |
[INFO] [stdout] 69 |     pub tertiary_algorithm: TertiaryAlgorithm,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/types.rs:70:5
[INFO] [stdout]    |
[INFO] [stdout] 70 |     pub kdf_algorithm: KdfAlgorithm,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/types.rs:71:5
[INFO] [stdout]    |
[INFO] [stdout] 71 |     pub signature_algorithm: SignatureAlgorithm,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/types.rs:72:5
[INFO] [stdout]    |
[INFO] [stdout] 72 |     pub hash_algorithm: HashAlgorithm,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/types.rs:83:5
[INFO] [stdout]    |
[INFO] [stdout] 83 |     pub pbkdf2_iterations: u32,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/types.rs:86:5
[INFO] [stdout]    |
[INFO] [stdout] 86 |     pub format_version: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `VaultError`
[INFO] [stdout]  --> tests/integration_tests.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     VaultError,
[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: `VaultEncryptionParams`
[INFO] [stdout]  --> benches/crypto_benchmarks.rs:4:51
[INFO] [stdout]   |
[INFO] [stdout] 4 | use zero_vault_core::{decrypt_data, encrypt_data, VaultEncryptionParams};
[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: `Sha256`
[INFO] [stdout]   --> src/crypto.rs:12:20
[INFO] [stdout]    |
[INFO] [stdout] 12 | use sha2::{Digest, Sha256, Sha512};
[INFO] [stdout]    |                    ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]   --> src/crypto.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::collections::HashMap;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::mem`
[INFO] [stdout]  --> src/memory.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::mem;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ENTROPY_MIN_BITS` is never used
[INFO] [stdout]   --> src/crypto.rs:33:7
[INFO] [stdout]    |
[INFO] [stdout] 33 | const ENTROPY_MIN_BITS: usize = 256;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ENTROPY_MIN_BYTES` is never used
[INFO] [stdout]   --> src/crypto.rs:34:7
[INFO] [stdout]    |
[INFO] [stdout] 34 | const ENTROPY_MIN_BYTES:    usize = ENTROPY_MIN_BITS / 8;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ENTROPY_TEST_SAMPLE` is never used
[INFO] [stdout]   --> src/crypto.rs:35:7
[INFO] [stdout]    |
[INFO] [stdout] 35 | const ENTROPY_TEST_SAMPLE: usize = 256;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ENTROPY_RETRIES` is never used
[INFO] [stdout]   --> src/crypto.rs:36:7
[INFO] [stdout]    |
[INFO] [stdout] 36 | const ENTROPY_RETRIES: usize = 8;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PBKDF2_PRIMARY_ITERATIONS` is never used
[INFO] [stdout]   --> src/crypto.rs:39:7
[INFO] [stdout]    |
[INFO] [stdout] 39 | const PBKDF2_PRIMARY_ITERATIONS: u32 = 1_000_000; // 1 million iterations
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PBKDF2_SECONDARY_ITERATIONS` is never used
[INFO] [stdout]   --> src/crypto.rs:40:7
[INFO] [stdout]    |
[INFO] [stdout] 40 | const PBKDF2_SECONDARY_ITERATIONS: u32 = 600_000; // 600,000 iterations
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PBKDF2_TERTIARY_ITERATIONS` is never used
[INFO] [stdout]   --> src/crypto.rs:41:7
[INFO] [stdout]    |
[INFO] [stdout] 41 | const PBKDF2_TERTIARY_ITERATIONS: u32 = 300_000; // 300,000 iterations
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `CONTEXT_MASTER_KEY` is never used
[INFO] [stdout]   --> src/crypto.rs:44:7
[INFO] [stdout]    |
[INFO] [stdout] 44 | const CONTEXT_MASTER_KEY: &[u8] = b"ZEROVAULT_MASTER_KEY_CONTEXT_v2";
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `CONTEXT_KEK` is never used
[INFO] [stdout]   --> src/crypto.rs:45:7
[INFO] [stdout]    |
[INFO] [stdout] 45 | const CONTEXT_KEK: &[u8] = b"ZEROVAULT_KEY_ENCRYPTION_KEY_CONTEXT_v2";
[INFO] [stdout]    |       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `ENTROPY_OK` is never used
[INFO] [stdout]   --> src/crypto.rs:52:8
[INFO] [stdout]    |
[INFO] [stdout] 52 | static ENTROPY_OK: OnceLock<bool> = OnceLock::new();
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_entropy` is never used
[INFO] [stdout]    --> src/crypto.rs:119:4
[INFO] [stdout]     |
[INFO] [stdout] 119 | fn verify_entropy(buffer: &[u8], min_bytes: usize) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calculate_shannon_entropy` is never used
[INFO] [stdout]    --> src/crypto.rs:164:4
[INFO] [stdout]     |
[INFO] [stdout] 164 | fn calculate_shannon_entropy(data: &[u8]) -> f64 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `count_bits` is never used
[INFO] [stdout]    --> src/crypto.rs:189:4
[INFO] [stdout]     |
[INFO] [stdout] 189 | fn count_bits(buffer: &[u8]) -> u64 {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_byte_frequencies` is never used
[INFO] [stdout]    --> src/crypto.rs:199:4
[INFO] [stdout]     |
[INFO] [stdout] 199 | fn get_byte_frequencies(buffer: &[u8]) -> [u32; 256] {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calculate_chi_squared` is never used
[INFO] [stdout]    --> src/crypto.rs:209:4
[INFO] [stdout]     |
[INFO] [stdout] 209 | fn calculate_chi_squared(frequencies: &[u32; 256], total_bytes: usize) -> f64 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_runs_test` is never used
[INFO] [stdout]    --> src/crypto.rs:226:4
[INFO] [stdout]     |
[INFO] [stdout] 226 | fn verify_runs_test(buffer: &[u8]) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `reconstruct_key` is never used
[INFO] [stdout]    --> src/crypto.rs:407:4
[INFO] [stdout]     |
[INFO] [stdout] 407 | fn reconstruct_key(parts: &[Vec<u8>], threshold: u8) -> Result<SecureKey, VaultError> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/types.rs:67:5
[INFO] [stdout]    |
[INFO] [stdout] 67 |     pub primary_algorithm: PrimaryAlgorithm,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:51:9
[INFO] [stdout]    |
[INFO] [stdout] 51 | #![warn(missing_docs)]
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/types.rs:68:5
[INFO] [stdout]    |
[INFO] [stdout] 68 |     pub secondary_algorithm: SecondaryAlgorithm,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/types.rs:69:5
[INFO] [stdout]    |
[INFO] [stdout] 69 |     pub tertiary_algorithm: TertiaryAlgorithm,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/types.rs:70:5
[INFO] [stdout]    |
[INFO] [stdout] 70 |     pub kdf_algorithm: KdfAlgorithm,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/types.rs:71:5
[INFO] [stdout]    |
[INFO] [stdout] 71 |     pub signature_algorithm: SignatureAlgorithm,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/types.rs:72:5
[INFO] [stdout]    |
[INFO] [stdout] 72 |     pub hash_algorithm: HashAlgorithm,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/types.rs:83:5
[INFO] [stdout]    |
[INFO] [stdout] 83 |     pub pbkdf2_iterations: u32,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]   --> src/types.rs:86:5
[INFO] [stdout]    |
[INFO] [stdout] 86 |     pub format_version: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 35.97s
[INFO] running `Command { std: "docker" "inspect" "74457b84b47e4fbd7fc8b067a3f384ba612a230e53ebb94bc6348d1f4770a23c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "74457b84b47e4fbd7fc8b067a3f384ba612a230e53ebb94bc6348d1f4770a23c", kill_on_drop: false }`
[INFO] [stdout] 74457b84b47e4fbd7fc8b067a3f384ba612a230e53ebb94bc6348d1f4770a23c
