[INFO] fetching crate phalanx-crypto 0.1.0...
[INFO] testing phalanx-crypto-0.1.0 against 1.90.0 for beta-1.91-3
[INFO] extracting crate phalanx-crypto 0.1.0 into /workspace/builds/worker-0-tc1/source
[INFO] started tweaking crates.io crate phalanx-crypto 0.1.0
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate phalanx-crypto 0.1.0
[INFO] tweaked toml for crates.io crate phalanx-crypto 0.1.0 written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate phalanx-crypto 0.1.0 on toolchain 1.90.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.90.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate phalanx-crypto 0.1.0 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" "+1.90.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded clap v4.5.43
[INFO] [stderr]   Downloaded tokio-test v0.4.4
[INFO] [stderr]   Downloaded proptest v1.7.0
[INFO] [stderr]   Downloaded cc v1.2.31
[INFO] [stderr]   Downloaded clap_builder v4.5.43
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 53f8da352c19d218f566dd9478d159c296a53856d1fe59af438d4c04b7d614c4
[INFO] running `Command { std: "docker" "start" "-a" "53f8da352c19d218f566dd9478d159c296a53856d1fe59af438d4c04b7d614c4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "53f8da352c19d218f566dd9478d159c296a53856d1fe59af438d4c04b7d614c4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "53f8da352c19d218f566dd9478d159c296a53856d1fe59af438d4c04b7d614c4", kill_on_drop: false }`
[INFO] [stdout] 53f8da352c19d218f566dd9478d159c296a53856d1fe59af438d4c04b7d614c4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 2a095ee96526a90d1addd75818a0744ed3958a0128a3747c2ec730dbb8bda39e
[INFO] running `Command { std: "docker" "start" "-a" "2a095ee96526a90d1addd75818a0744ed3958a0128a3747c2ec730dbb8bda39e", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.174
[INFO] [stderr]    Compiling subtle v2.6.1
[INFO] [stderr]    Compiling opaque-debug v0.3.1
[INFO] [stderr]    Compiling cc v1.2.31
[INFO] [stderr]    Compiling signature v2.2.0
[INFO] [stderr]    Compiling tracing-core v0.1.34
[INFO] [stderr]    Compiling arrayvec v0.7.6
[INFO] [stderr]    Compiling constant_time_eq v0.3.1
[INFO] [stderr]    Compiling arrayref v0.3.9
[INFO] [stderr]    Compiling syn v2.0.104
[INFO] [stderr]    Compiling tokio v1.47.1
[INFO] [stderr]    Compiling curve25519-dalek v4.1.3
[INFO] [stderr]    Compiling inout v0.1.4
[INFO] [stderr]    Compiling getrandom v0.2.16
[INFO] [stderr]    Compiling blake3 v1.8.2
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling universal-hash v0.5.1
[INFO] [stderr]    Compiling aead v0.5.2
[INFO] [stderr]    Compiling poly1305 v0.8.0
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling hmac v0.12.1
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling hkdf v0.12.4
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling zeroize_derive v1.4.2
[INFO] [stderr]    Compiling curve25519-dalek-derive v0.1.1
[INFO] [stderr]    Compiling thiserror-impl v2.0.12
[INFO] [stderr]    Compiling tracing-attributes v0.1.30
[INFO] [stderr]    Compiling async-trait v0.1.88
[INFO] [stderr]    Compiling zeroize v1.8.1
[INFO] [stderr]    Compiling cipher v0.4.4
[INFO] [stderr]    Compiling thiserror v2.0.12
[INFO] [stderr]    Compiling chacha20 v0.9.1
[INFO] [stderr]    Compiling tracing v0.1.41
[INFO] [stderr]    Compiling chacha20poly1305 v0.10.1
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]    Compiling ed25519 v2.2.3
[INFO] [stderr]    Compiling serde_json v1.0.142
[INFO] [stderr]    Compiling bytes v1.10.1
[INFO] [stderr]    Compiling bincode v1.3.3
[INFO] [stderr]    Compiling x25519-dalek v2.0.1
[INFO] [stderr]    Compiling ed25519-dalek v2.2.0
[INFO] [stderr]    Compiling phalanx-crypto v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `AdvancedKeyManager` and `KeySet`
[INFO] [stdout]  --> src/group.rs:9:19
[INFO] [stdout]   |
[INFO] [stdout] 9 |     key_manager::{AdvancedKeyManager, KeySet, RotationPolicy},
[INFO] [stdout]   |                   ^^^^^^^^^^^^^^^^^^  ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `GroupMessage` and `MessageContent`
[INFO] [stdout]   --> src/key_manager.rs:10:15
[INFO] [stdout]    |
[INFO] [stdout] 10 |     message::{GroupMessage, MessageContent},
[INFO] [stdout]    |               ^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `UNIX_EPOCH`
[INFO] [stdout]   --> src/key_manager.rs:13:39
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::time::{SystemTime, Duration, UNIX_EPOCH};
[INFO] [stdout]    |                                       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/async_group.rs:7:27
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tokio::sync::{RwLock, Mutex};
[INFO] [stdout]   |                           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `base64::encode`: Use Engine::encode
[INFO] [stdout]    --> src/crypto.rs:181:47
[INFO] [stdout]     |
[INFO] [stdout] 181 |             serializer.serialize_str(&base64::encode(self.as_bytes()))
[INFO] [stdout]     |                                               ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `base64::decode`: Use Engine::decode
[INFO] [stdout]    --> src/crypto.rs:205:43
[INFO] [stdout]     |
[INFO] [stdout] 205 |                     let decoded = base64::decode(value)
[INFO] [stdout]     |                                           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `base64::encode`: Use Engine::encode
[INFO] [stdout]    --> src/crypto.rs:229:58
[INFO] [stdout]     |
[INFO] [stdout] 229 |             state.serialize_field("ciphertext", &base64::encode(&self.ciphertext))?;
[INFO] [stdout]     |                                                          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `base64::encode`: Use Engine::encode
[INFO] [stdout]    --> src/crypto.rs:230:53
[INFO] [stdout]     |
[INFO] [stdout] 230 |             state.serialize_field("nonce", &base64::encode(&self.nonce))?;
[INFO] [stdout]     |                                                     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `base64::encode`: Use Engine::encode
[INFO] [stdout]    --> src/crypto.rs:231:56
[INFO] [stdout]     |
[INFO] [stdout] 231 |             state.serialize_field("aad_hash", &base64::encode(&self.aad_hash))?;
[INFO] [stdout]     |                                                        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `base64::decode`: Use Engine::decode
[INFO] [stdout]    --> src/crypto.rs:264:59
[INFO] [stdout]     |
[INFO] [stdout] 264 | ...                   ciphertext = Some(base64::decode(&encoded)
[INFO] [stdout]     |                                                 ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `base64::decode`: Use Engine::decode
[INFO] [stdout]    --> src/crypto.rs:269:55
[INFO] [stdout]     |
[INFO] [stdout] 269 | ...                   let decoded = base64::decode(&encoded)
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `base64::decode`: Use Engine::decode
[INFO] [stdout]    --> src/crypto.rs:280:55
[INFO] [stdout]     |
[INFO] [stdout] 280 | ...                   let decoded = base64::decode(&encoded)
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `group_id`
[INFO] [stdout]     --> src/key_manager.rs:1085:34
[INFO] [stdout]      |
[INFO] [stdout] 1085 |     async fn store_backup(&self, group_id: [u8; 32], keyset: &KeySet, metadata: &BackupMetadata) -> Result<BackupId> {
[INFO] [stdout]      |                                  ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_group_id`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `version` is never read
[INFO] [stdout]    --> src/group.rs:288:5
[INFO] [stdout]     |
[INFO] [stdout] 270 | pub struct PhalanxGroup {
[INFO] [stdout]     |            ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 288 |     version: ProtocolVersion,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `PhalanxGroup` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `security_policies` and `hsm_provider` are never read
[INFO] [stdout]   --> src/key_manager.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct AdvancedKeyManager {
[INFO] [stdout]    |            ------------------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 30 |     security_policies: RwLock<SecurityPolicies>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     hsm_provider: Option<Box<dyn HsmProvider>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:298:5
[INFO] [stdout]     |
[INFO] [stdout] 298 |     TimeExpired,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/lib.rs:49:9
[INFO] [stdout]     |
[INFO] [stdout]  49 | #![warn(missing_docs, rustdoc::missing_crate_level_docs)]
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:299:5
[INFO] [stdout]     |
[INFO] [stdout] 299 |     UsageExceeded,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:300:5
[INFO] [stdout]     |
[INFO] [stdout] 300 |     SecurityBreach,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:301:5
[INFO] [stdout]     |
[INFO] [stdout] 301 |     MembershipChange,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:302:5
[INFO] [stdout]     |
[INFO] [stdout] 302 |     ComplianceRequirement,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:303:5
[INFO] [stdout]     |
[INFO] [stdout] 303 |     ManualRequest,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:304:5
[INFO] [stdout]     |
[INFO] [stdout] 304 |     EmergencyRotation,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/key_manager.rs:308:1
[INFO] [stdout]     |
[INFO] [stdout] 308 | pub enum RotationReason {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:309:5
[INFO] [stdout]     |
[INFO] [stdout] 309 |     Scheduled,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:310:5
[INFO] [stdout]     |
[INFO] [stdout] 310 |     Emergency,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:311:5
[INFO] [stdout]     |
[INFO] [stdout] 311 |     Compromise,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:312:5
[INFO] [stdout]     |
[INFO] [stdout] 312 |     Compliance,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:313:5
[INFO] [stdout]     |
[INFO] [stdout] 313 |     MembershipChange,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:314:5
[INFO] [stdout]     |
[INFO] [stdout] 314 |     Manual,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/key_manager.rs:318:1
[INFO] [stdout]     |
[INFO] [stdout] 318 | pub enum KeyType {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:319:5
[INFO] [stdout]     |
[INFO] [stdout] 319 |     Encryption,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:320:5
[INFO] [stdout]     |
[INFO] [stdout] 320 |     Authentication,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:321:5
[INFO] [stdout]     |
[INFO] [stdout] 321 |     KeyExchange,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:322:5
[INFO] [stdout]     |
[INFO] [stdout] 322 |     Derivation,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/key_manager.rs:326:1
[INFO] [stdout]     |
[INFO] [stdout] 326 | pub enum SecurityLevel {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:327:5
[INFO] [stdout]     |
[INFO] [stdout] 327 |     Standard,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:328:5
[INFO] [stdout]     |
[INFO] [stdout] 328 |     High,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:329:5
[INFO] [stdout]     |
[INFO] [stdout] 329 |     Critical,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:330:5
[INFO] [stdout]     |
[INFO] [stdout] 330 |     TopSecret,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/key_manager.rs:334:1
[INFO] [stdout]     |
[INFO] [stdout] 334 | pub enum MemberKeyStatus {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:335:5
[INFO] [stdout]     |
[INFO] [stdout] 335 |     Active,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:336:5
[INFO] [stdout]     |
[INFO] [stdout] 336 |     Revoked,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:337:5
[INFO] [stdout]     |
[INFO] [stdout] 337 |     Expired,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:338:5
[INFO] [stdout]     |
[INFO] [stdout] 338 |     Pending,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/key_manager.rs:342:1
[INFO] [stdout]     |
[INFO] [stdout] 342 | pub enum SecurityClassification {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:343:5
[INFO] [stdout]     |
[INFO] [stdout] 343 |     Public,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:344:5
[INFO] [stdout]     |
[INFO] [stdout] 344 |     Internal,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:345:5
[INFO] [stdout]     |
[INFO] [stdout] 345 |     Confidential,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:346:5
[INFO] [stdout]     |
[INFO] [stdout] 346 |     Secret,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:347:5
[INFO] [stdout]     |
[INFO] [stdout] 347 |     TopSecret,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/key_manager.rs:351:1
[INFO] [stdout]     |
[INFO] [stdout] 351 | pub enum ComplianceFramework {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:352:5
[INFO] [stdout]     |
[INFO] [stdout] 352 |     FIPS140_2,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:353:5
[INFO] [stdout]     |
[INFO] [stdout] 353 |     CommonCriteria,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:354:5
[INFO] [stdout]     |
[INFO] [stdout] 354 |     NIST,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:355:5
[INFO] [stdout]     |
[INFO] [stdout] 355 |     ISO27001,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:356:5
[INFO] [stdout]     |
[INFO] [stdout] 356 |     SOX,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:357:5
[INFO] [stdout]     |
[INFO] [stdout] 357 |     GDPR,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:358:5
[INFO] [stdout]     |
[INFO] [stdout] 358 |     HIPAA,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/key_manager.rs:362:1
[INFO] [stdout]     |
[INFO] [stdout] 362 | pub enum OperationPriority {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:363:5
[INFO] [stdout]     |
[INFO] [stdout] 363 |     Low,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:364:5
[INFO] [stdout]     |
[INFO] [stdout] 364 |     Normal,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:365:5
[INFO] [stdout]     |
[INFO] [stdout] 365 |     High,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:366:5
[INFO] [stdout]     |
[INFO] [stdout] 366 |     Emergency,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:372:5
[INFO] [stdout]     |
[INFO] [stdout] 372 |     pub method: DerivationMethod,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:373:5
[INFO] [stdout]     |
[INFO] [stdout] 373 |     pub parameters: HashMap<String, Vec<u8>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:374:5
[INFO] [stdout]     |
[INFO] [stdout] 374 |     pub context: String,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> src/key_manager.rs:378:1
[INFO] [stdout]     |
[INFO] [stdout] 378 | pub struct KeyDerivationParams {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:379:5
[INFO] [stdout]     |
[INFO] [stdout] 379 |     pub method: DerivationMethod,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:380:5
[INFO] [stdout]     |
[INFO] [stdout] 380 |     pub salt: [u8; 32],
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:381:5
[INFO] [stdout]     |
[INFO] [stdout] 381 |     pub iterations: u32,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:382:5
[INFO] [stdout]     |
[INFO] [stdout] 382 |     pub key_length: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/key_manager.rs:386:1
[INFO] [stdout]     |
[INFO] [stdout] 386 | pub enum DerivationMethod {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:387:5
[INFO] [stdout]     |
[INFO] [stdout] 387 |     HKDF,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:388:5
[INFO] [stdout]     |
[INFO] [stdout] 388 |     PBKDF2,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:389:5
[INFO] [stdout]     |
[INFO] [stdout] 389 |     Scrypt,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:390:5
[INFO] [stdout]     |
[INFO] [stdout] 390 |     Argon2,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> src/key_manager.rs:394:1
[INFO] [stdout]     |
[INFO] [stdout] 394 | pub struct RetryConfig {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:395:5
[INFO] [stdout]     |
[INFO] [stdout] 395 |     pub max_retries: u32,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:396:5
[INFO] [stdout]     |
[INFO] [stdout] 396 |     pub base_delay: Duration,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:397:5
[INFO] [stdout]     |
[INFO] [stdout] 397 |     pub max_delay: Duration,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:398:5
[INFO] [stdout]     |
[INFO] [stdout] 398 |     pub backoff_multiplier: f64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> src/key_manager.rs:402:1
[INFO] [stdout]     |
[INFO] [stdout] 402 | pub struct BackupEncryption {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:403:5
[INFO] [stdout]     |
[INFO] [stdout] 403 |     pub enabled: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:404:5
[INFO] [stdout]     |
[INFO] [stdout] 404 |     pub key_id: Option<[u8; 32]>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:405:5
[INFO] [stdout]     |
[INFO] [stdout] 405 |     pub cipher: String,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> src/key_manager.rs:409:1
[INFO] [stdout]     |
[INFO] [stdout] 409 | pub struct GeoDistribution {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:410:5
[INFO] [stdout]     |
[INFO] [stdout] 410 |     pub regions: Vec<String>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:411:5
[INFO] [stdout]     |
[INFO] [stdout] 411 |     pub min_replicas: u32,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:412:5
[INFO] [stdout]     |
[INFO] [stdout] 412 |     pub consistency_level: ConsistencyLevel,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/key_manager.rs:416:1
[INFO] [stdout]     |
[INFO] [stdout] 416 | pub enum ConsistencyLevel {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:417:5
[INFO] [stdout]     |
[INFO] [stdout] 417 |     Eventual,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:418:5
[INFO] [stdout]     |
[INFO] [stdout] 418 |     Strong,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:419:5
[INFO] [stdout]     |
[INFO] [stdout] 419 |     Linearizable,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> src/key_manager.rs:423:1
[INFO] [stdout]     |
[INFO] [stdout] 423 | pub struct KeyEscrowPolicy {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:424:5
[INFO] [stdout]     |
[INFO] [stdout] 424 |     pub enabled: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:425:5
[INFO] [stdout]     |
[INFO] [stdout] 425 |     pub trustees: Vec<String>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:426:5
[INFO] [stdout]     |
[INFO] [stdout] 426 |     pub threshold: u32,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:427:5
[INFO] [stdout]     |
[INFO] [stdout] 427 |     pub escrow_duration: Duration,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> src/key_manager.rs:431:1
[INFO] [stdout]     |
[INFO] [stdout] 431 | pub struct AuditPolicy {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:432:5
[INFO] [stdout]     |
[INFO] [stdout] 432 |     pub enabled: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:433:5
[INFO] [stdout]     |
[INFO] [stdout] 433 |     pub log_all_operations: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:434:5
[INFO] [stdout]     |
[INFO] [stdout] 434 |     pub retention_period: Duration,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:435:5
[INFO] [stdout]     |
[INFO] [stdout] 435 |     pub compliance_reporting: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> src/key_manager.rs:439:1
[INFO] [stdout]     |
[INFO] [stdout] 439 | pub struct AccessControlPolicy {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:440:5
[INFO] [stdout]     |
[INFO] [stdout] 440 |     pub require_authentication: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:441:5
[INFO] [stdout]     |
[INFO] [stdout] 441 |     pub multi_factor_auth: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:442:5
[INFO] [stdout]     |
[INFO] [stdout] 442 |     pub role_based_access: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:443:5
[INFO] [stdout]     |
[INFO] [stdout] 443 |     pub audit_access: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/key_manager.rs:447:1
[INFO] [stdout]     |
[INFO] [stdout] 447 | pub enum BackupDestination {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:448:5
[INFO] [stdout]     |
[INFO] [stdout] 448 |     Local { path: String },
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:448:13
[INFO] [stdout]     |
[INFO] [stdout] 448 |     Local { path: String },
[INFO] [stdout]     |             ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:449:5
[INFO] [stdout]     |
[INFO] [stdout] 449 |     Remote { url: String, credentials: String },
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:449:14
[INFO] [stdout]     |
[INFO] [stdout] 449 |     Remote { url: String, credentials: String },
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:449:27
[INFO] [stdout]     |
[INFO] [stdout] 449 |     Remote { url: String, credentials: String },
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:450:5
[INFO] [stdout]     |
[INFO] [stdout] 450 |     HSM { module_id: String },
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:450:11
[INFO] [stdout]     |
[INFO] [stdout] 450 |     HSM { module_id: String },
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:451:5
[INFO] [stdout]     |
[INFO] [stdout] 451 |     Cloud { provider: String, config: HashMap<String, String> },
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:451:13
[INFO] [stdout]     |
[INFO] [stdout] 451 |     Cloud { provider: String, config: HashMap<String, String> },
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:451:31
[INFO] [stdout]     |
[INFO] [stdout] 451 |     Cloud { provider: String, config: HashMap<String, String> },
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/key_manager.rs:455:1
[INFO] [stdout]     |
[INFO] [stdout] 455 | pub enum BackupSource {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:456:5
[INFO] [stdout]     |
[INFO] [stdout] 456 |     Local { path: String },
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:456:13
[INFO] [stdout]     |
[INFO] [stdout] 456 |     Local { path: String },
[INFO] [stdout]     |             ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:457:5
[INFO] [stdout]     |
[INFO] [stdout] 457 |     Remote { url: String, credentials: String },
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:457:14
[INFO] [stdout]     |
[INFO] [stdout] 457 |     Remote { url: String, credentials: String },
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:457:27
[INFO] [stdout]     |
[INFO] [stdout] 457 |     Remote { url: String, credentials: String },
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:458:5
[INFO] [stdout]     |
[INFO] [stdout] 458 |     HSM { module_id: String },
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:458:11
[INFO] [stdout]     |
[INFO] [stdout] 458 |     HSM { module_id: String },
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:459:5
[INFO] [stdout]     |
[INFO] [stdout] 459 |     Cloud { provider: String, config: HashMap<String, String> },
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:459:13
[INFO] [stdout]     |
[INFO] [stdout] 459 |     Cloud { provider: String, config: HashMap<String, String> },
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:459:31
[INFO] [stdout]     |
[INFO] [stdout] 459 |     Cloud { provider: String, config: HashMap<String, String> },
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/key_manager.rs:465:5
[INFO] [stdout]     |
[INFO] [stdout] 465 |     async fn store_backup(&self, group_id: [u8; 32], keyset: &KeySet, metadata: &BackupMetadata) -> Result<BackupId>;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/key_manager.rs:466:5
[INFO] [stdout]     |
[INFO] [stdout] 466 |     async fn retrieve_backup(&self, backup_id: BackupId) -> Result<(KeySet, BackupMetadata)>;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/key_manager.rs:467:5
[INFO] [stdout]     |
[INFO] [stdout] 467 |     async fn list_backups(&self, group_id: [u8; 32]) -> Result<Vec<BackupInfo>>;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/key_manager.rs:468:5
[INFO] [stdout]     |
[INFO] [stdout] 468 |     async fn delete_backup(&self, backup_id: BackupId) -> Result<()>;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/key_manager.rs:469:5
[INFO] [stdout]     |
[INFO] [stdout] 469 |     async fn verify_backup(&self, backup_id: BackupId) -> Result<bool>;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/key_manager.rs:475:5
[INFO] [stdout]     |
[INFO] [stdout] 475 |     async fn generate_key(&self, key_type: KeyType, security_level: SecurityLevel) -> Result<HsmKeyHandle>;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/key_manager.rs:476:5
[INFO] [stdout]     |
[INFO] [stdout] 476 |     async fn derive_key(&self, base_key: HsmKeyHandle, context: &str, params: &[u8]) -> Result<HsmKeyHandle>;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/key_manager.rs:477:5
[INFO] [stdout]     |
[INFO] [stdout] 477 |     async fn encrypt(&self, key_handle: HsmKeyHandle, plaintext: &[u8], aad: &[u8]) -> Result<Vec<u8>>;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/key_manager.rs:478:5
[INFO] [stdout]     |
[INFO] [stdout] 478 |     async fn decrypt(&self, key_handle: HsmKeyHandle, ciphertext: &[u8], aad: &[u8]) -> Result<Vec<u8>>;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/key_manager.rs:479:5
[INFO] [stdout]     |
[INFO] [stdout] 479 |     async fn export_key(&self, key_handle: HsmKeyHandle) -> Result<Vec<u8>>;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/key_manager.rs:480:5
[INFO] [stdout]     |
[INFO] [stdout] 480 |     async fn import_key(&self, key_data: &[u8], key_type: KeyType) -> Result<HsmKeyHandle>;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a type alias
[INFO] [stdout]    --> src/key_manager.rs:485:1
[INFO] [stdout]     |
[INFO] [stdout] 485 | pub type HsmKeyHandle = String;
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> src/key_manager.rs:488:1
[INFO] [stdout]     |
[INFO] [stdout] 488 | pub struct BackupMetadata {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:489:5
[INFO] [stdout]     |
[INFO] [stdout] 489 |     pub backup_id: BackupId,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:490:5
[INFO] [stdout]     |
[INFO] [stdout] 490 |     pub group_id: [u8; 32],
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:491:5
[INFO] [stdout]     |
[INFO] [stdout] 491 |     pub created_at: SystemTime,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:492:5
[INFO] [stdout]     |
[INFO] [stdout] 492 |     pub version: u64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:493:5
[INFO] [stdout]     |
[INFO] [stdout] 493 |     pub encryption: BackupEncryption,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:494:5
[INFO] [stdout]     |
[INFO] [stdout] 494 |     pub compression: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:495:5
[INFO] [stdout]     |
[INFO] [stdout] 495 |     pub integrity_hash: [u8; 32],
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> src/key_manager.rs:499:1
[INFO] [stdout]     |
[INFO] [stdout] 499 | pub struct BackupInfo {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:500:5
[INFO] [stdout]     |
[INFO] [stdout] 500 |     pub backup_id: BackupId,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:501:5
[INFO] [stdout]     |
[INFO] [stdout] 501 |     pub created_at: SystemTime,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:502:5
[INFO] [stdout]     |
[INFO] [stdout] 502 |     pub size: u64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:503:5
[INFO] [stdout]     |
[INFO] [stdout] 503 |     pub version: u64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:504:5
[INFO] [stdout]     |
[INFO] [stdout] 504 |     pub verified: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]     --> src/key_manager.rs:1075:5
[INFO] [stdout]      |
[INFO] [stdout] 1075 |     pub async fn new(backup_dir: String) -> Result<Self> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 23.42s
[INFO] running `Command { std: "docker" "inspect" "2a095ee96526a90d1addd75818a0744ed3958a0128a3747c2ec730dbb8bda39e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2a095ee96526a90d1addd75818a0744ed3958a0128a3747c2ec730dbb8bda39e", kill_on_drop: false }`
[INFO] [stdout] 2a095ee96526a90d1addd75818a0744ed3958a0128a3747c2ec730dbb8bda39e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 5bace5470c9413f2dc1152e0f013aff5227a189ddd5ddc06487ba758ec0a8bad
[INFO] running `Command { std: "docker" "start" "-a" "5bace5470c9413f2dc1152e0f013aff5227a189ddd5ddc06487ba758ec0a8bad", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.174
[INFO] [stderr]    Compiling parking_lot_core v0.9.11
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling rustix v1.0.8
[INFO] [stderr]    Compiling linux-raw-sys v0.9.4
[INFO] [stderr]    Compiling half v2.6.0
[INFO] [stderr]    Compiling tokio-macros v2.5.0
[INFO] [stderr]    Compiling async-stream-impl v0.3.6
[INFO] [stderr]    Compiling clap_builder v4.5.43
[INFO] [stderr]    Compiling regex-automata v0.4.9
[INFO] [stderr]    Compiling bit-vec v0.8.0
[INFO] [stderr]    Compiling quick-error v1.2.3
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling unarray v0.1.4
[INFO] [stderr]    Compiling bit-set v0.8.0
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling async-stream v0.3.6
[INFO] [stderr]    Compiling plotters v0.3.7
[INFO] [stderr]    Compiling getrandom v0.2.16
[INFO] [stderr]    Compiling getrandom v0.3.3
[INFO] [stderr]    Compiling mio v1.0.4
[INFO] [stderr]    Compiling socket2 v0.6.0
[INFO] [stderr]    Compiling signal-hook-registry v1.4.6
[INFO] [stderr]    Compiling wait-timeout v0.2.1
[INFO] [stderr]    Compiling is-terminal v0.4.16
[INFO] [stderr]    Compiling rand_core v0.9.3
[INFO] [stderr]    Compiling parking_lot v0.12.4
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling clap v4.5.43
[INFO] [stderr]    Compiling tokio v1.47.1
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand_xorshift v0.4.0
[INFO] [stderr]    Compiling rand v0.9.2
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling cipher v0.4.4
[INFO] [stderr]    Compiling universal-hash v0.5.1
[INFO] [stderr]    Compiling aead v0.5.2
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling poly1305 v0.8.0
[INFO] [stderr]    Compiling curve25519-dalek v4.1.3
[INFO] [stderr]    Compiling hmac v0.12.1
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling hkdf v0.12.4
[INFO] [stderr]    Compiling regex v1.11.1
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling chacha20 v0.9.1
[INFO] [stderr]    Compiling chacha20poly1305 v0.10.1
[INFO] [stderr]    Compiling tempfile v3.20.0
[INFO] [stderr]    Compiling criterion v0.5.1
[INFO] [stderr]    Compiling rusty-fork v0.3.0
[INFO] [stderr]    Compiling proptest v1.7.0
[INFO] [stderr]    Compiling x25519-dalek v2.0.1
[INFO] [stderr]    Compiling ed25519-dalek v2.2.0
[INFO] [stderr]    Compiling tokio-stream v0.1.17
[INFO] [stderr]    Compiling phalanx-crypto v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `AdvancedKeyManager` and `KeySet`
[INFO] [stdout]  --> src/group.rs:9:19
[INFO] [stdout]   |
[INFO] [stdout] 9 |     key_manager::{AdvancedKeyManager, KeySet, RotationPolicy},
[INFO] [stdout]   |                   ^^^^^^^^^^^^^^^^^^  ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `GroupMessage` and `MessageContent`
[INFO] [stdout]   --> src/key_manager.rs:10:15
[INFO] [stdout]    |
[INFO] [stdout] 10 |     message::{GroupMessage, MessageContent},
[INFO] [stdout]    |               ^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `UNIX_EPOCH`
[INFO] [stdout]   --> src/key_manager.rs:13:39
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::time::{SystemTime, Duration, UNIX_EPOCH};
[INFO] [stdout]    |                                       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/async_group.rs:7:27
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tokio::sync::{RwLock, Mutex};
[INFO] [stdout]   |                           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling tokio-test v0.4.4
[INFO] [stdout] warning: use of deprecated function `base64::encode`: Use Engine::encode
[INFO] [stdout]    --> src/crypto.rs:181:47
[INFO] [stdout]     |
[INFO] [stdout] 181 |             serializer.serialize_str(&base64::encode(self.as_bytes()))
[INFO] [stdout]     |                                               ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `base64::decode`: Use Engine::decode
[INFO] [stdout]    --> src/crypto.rs:205:43
[INFO] [stdout]     |
[INFO] [stdout] 205 |                     let decoded = base64::decode(value)
[INFO] [stdout]     |                                           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `base64::encode`: Use Engine::encode
[INFO] [stdout]    --> src/crypto.rs:229:58
[INFO] [stdout]     |
[INFO] [stdout] 229 |             state.serialize_field("ciphertext", &base64::encode(&self.ciphertext))?;
[INFO] [stdout]     |                                                          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `base64::encode`: Use Engine::encode
[INFO] [stdout]    --> src/crypto.rs:230:53
[INFO] [stdout]     |
[INFO] [stdout] 230 |             state.serialize_field("nonce", &base64::encode(&self.nonce))?;
[INFO] [stdout]     |                                                     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `base64::encode`: Use Engine::encode
[INFO] [stdout]    --> src/crypto.rs:231:56
[INFO] [stdout]     |
[INFO] [stdout] 231 |             state.serialize_field("aad_hash", &base64::encode(&self.aad_hash))?;
[INFO] [stdout]     |                                                        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `base64::decode`: Use Engine::decode
[INFO] [stdout]    --> src/crypto.rs:264:59
[INFO] [stdout]     |
[INFO] [stdout] 264 | ...                   ciphertext = Some(base64::decode(&encoded)
[INFO] [stdout]     |                                                 ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `base64::decode`: Use Engine::decode
[INFO] [stdout]    --> src/crypto.rs:269:55
[INFO] [stdout]     |
[INFO] [stdout] 269 | ...                   let decoded = base64::decode(&encoded)
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `base64::decode`: Use Engine::decode
[INFO] [stdout]    --> src/crypto.rs:280:55
[INFO] [stdout]     |
[INFO] [stdout] 280 | ...                   let decoded = base64::decode(&encoded)
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AdvancedKeyManager` and `KeySet`
[INFO] [stdout]  --> src/group.rs:9:19
[INFO] [stdout]   |
[INFO] [stdout] 9 |     key_manager::{AdvancedKeyManager, KeySet, RotationPolicy},
[INFO] [stdout]   |                   ^^^^^^^^^^^^^^^^^^  ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `GroupMessage` and `MessageContent`
[INFO] [stdout]   --> src/key_manager.rs:10:15
[INFO] [stdout]    |
[INFO] [stdout] 10 |     message::{GroupMessage, MessageContent},
[INFO] [stdout]    |               ^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `UNIX_EPOCH`
[INFO] [stdout]   --> src/key_manager.rs:13:39
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::time::{SystemTime, Duration, UNIX_EPOCH};
[INFO] [stdout]    |                                       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/async_group.rs:7:27
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tokio::sync::{RwLock, Mutex};
[INFO] [stdout]   |                           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `group_id`
[INFO] [stdout]     --> src/key_manager.rs:1085:34
[INFO] [stdout]      |
[INFO] [stdout] 1085 |     async fn store_backup(&self, group_id: [u8; 32], keyset: &KeySet, metadata: &BackupMetadata) -> Result<BackupId> {
[INFO] [stdout]      |                                  ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_group_id`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `base64::encode`: Use Engine::encode
[INFO] [stdout]    --> src/crypto.rs:181:47
[INFO] [stdout]     |
[INFO] [stdout] 181 |             serializer.serialize_str(&base64::encode(self.as_bytes()))
[INFO] [stdout]     |                                               ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `base64::decode`: Use Engine::decode
[INFO] [stdout]    --> src/crypto.rs:205:43
[INFO] [stdout]     |
[INFO] [stdout] 205 |                     let decoded = base64::decode(value)
[INFO] [stdout]     |                                           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `base64::encode`: Use Engine::encode
[INFO] [stdout]    --> src/crypto.rs:229:58
[INFO] [stdout]     |
[INFO] [stdout] 229 |             state.serialize_field("ciphertext", &base64::encode(&self.ciphertext))?;
[INFO] [stdout]     |                                                          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `base64::encode`: Use Engine::encode
[INFO] [stdout]    --> src/crypto.rs:230:53
[INFO] [stdout]     |
[INFO] [stdout] 230 |             state.serialize_field("nonce", &base64::encode(&self.nonce))?;
[INFO] [stdout]     |                                                     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `base64::encode`: Use Engine::encode
[INFO] [stdout]    --> src/crypto.rs:231:56
[INFO] [stdout]     |
[INFO] [stdout] 231 |             state.serialize_field("aad_hash", &base64::encode(&self.aad_hash))?;
[INFO] [stdout]     |                                                        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `base64::decode`: Use Engine::decode
[INFO] [stdout]    --> src/crypto.rs:264:59
[INFO] [stdout]     |
[INFO] [stdout] 264 | ...                   ciphertext = Some(base64::decode(&encoded)
[INFO] [stdout]     |                                                 ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `base64::decode`: Use Engine::decode
[INFO] [stdout]    --> src/crypto.rs:269:55
[INFO] [stdout]     |
[INFO] [stdout] 269 | ...                   let decoded = base64::decode(&encoded)
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `base64::decode`: Use Engine::decode
[INFO] [stdout]    --> src/crypto.rs:280:55
[INFO] [stdout]     |
[INFO] [stdout] 280 | ...                   let decoded = base64::decode(&encoded)
[INFO] [stdout]     |                                             ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `version` is never read
[INFO] [stdout]    --> src/group.rs:288:5
[INFO] [stdout]     |
[INFO] [stdout] 270 | pub struct PhalanxGroup {
[INFO] [stdout]     |            ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 288 |     version: ProtocolVersion,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `PhalanxGroup` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `security_policies` and `hsm_provider` are never read
[INFO] [stdout]   --> src/key_manager.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct AdvancedKeyManager {
[INFO] [stdout]    |            ------------------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 30 |     security_policies: RwLock<SecurityPolicies>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     hsm_provider: Option<Box<dyn HsmProvider>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:298:5
[INFO] [stdout]     |
[INFO] [stdout] 298 |     TimeExpired,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/lib.rs:49:9
[INFO] [stdout]     |
[INFO] [stdout]  49 | #![warn(missing_docs, rustdoc::missing_crate_level_docs)]
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:299:5
[INFO] [stdout]     |
[INFO] [stdout] 299 |     UsageExceeded,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:300:5
[INFO] [stdout]     |
[INFO] [stdout] 300 |     SecurityBreach,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:301:5
[INFO] [stdout]     |
[INFO] [stdout] 301 |     MembershipChange,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:302:5
[INFO] [stdout]     |
[INFO] [stdout] 302 |     ComplianceRequirement,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:303:5
[INFO] [stdout]     |
[INFO] [stdout] 303 |     ManualRequest,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:304:5
[INFO] [stdout]     |
[INFO] [stdout] 304 |     EmergencyRotation,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/key_manager.rs:308:1
[INFO] [stdout]     |
[INFO] [stdout] 308 | pub enum RotationReason {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:309:5
[INFO] [stdout]     |
[INFO] [stdout] 309 |     Scheduled,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:310:5
[INFO] [stdout]     |
[INFO] [stdout] 310 |     Emergency,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:311:5
[INFO] [stdout]     |
[INFO] [stdout] 311 |     Compromise,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:312:5
[INFO] [stdout]     |
[INFO] [stdout] 312 |     Compliance,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:313:5
[INFO] [stdout]     |
[INFO] [stdout] 313 |     MembershipChange,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:314:5
[INFO] [stdout]     |
[INFO] [stdout] 314 |     Manual,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/key_manager.rs:318:1
[INFO] [stdout]     |
[INFO] [stdout] 318 | pub enum KeyType {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:319:5
[INFO] [stdout]     |
[INFO] [stdout] 319 |     Encryption,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:320:5
[INFO] [stdout]     |
[INFO] [stdout] 320 |     Authentication,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:321:5
[INFO] [stdout]     |
[INFO] [stdout] 321 |     KeyExchange,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:322:5
[INFO] [stdout]     |
[INFO] [stdout] 322 |     Derivation,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/key_manager.rs:326:1
[INFO] [stdout]     |
[INFO] [stdout] 326 | pub enum SecurityLevel {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:327:5
[INFO] [stdout]     |
[INFO] [stdout] 327 |     Standard,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:328:5
[INFO] [stdout]     |
[INFO] [stdout] 328 |     High,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:329:5
[INFO] [stdout]     |
[INFO] [stdout] 329 |     Critical,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:330:5
[INFO] [stdout]     |
[INFO] [stdout] 330 |     TopSecret,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/key_manager.rs:334:1
[INFO] [stdout]     |
[INFO] [stdout] 334 | pub enum MemberKeyStatus {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:335:5
[INFO] [stdout]     |
[INFO] [stdout] 335 |     Active,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:336:5
[INFO] [stdout]     |
[INFO] [stdout] 336 |     Revoked,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:337:5
[INFO] [stdout]     |
[INFO] [stdout] 337 |     Expired,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:338:5
[INFO] [stdout]     |
[INFO] [stdout] 338 |     Pending,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/key_manager.rs:342:1
[INFO] [stdout]     |
[INFO] [stdout] 342 | pub enum SecurityClassification {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:343:5
[INFO] [stdout]     |
[INFO] [stdout] 343 |     Public,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:344:5
[INFO] [stdout]     |
[INFO] [stdout] 344 |     Internal,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:345:5
[INFO] [stdout]     |
[INFO] [stdout] 345 |     Confidential,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:346:5
[INFO] [stdout]     |
[INFO] [stdout] 346 |     Secret,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:347:5
[INFO] [stdout]     |
[INFO] [stdout] 347 |     TopSecret,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/key_manager.rs:351:1
[INFO] [stdout]     |
[INFO] [stdout] 351 | pub enum ComplianceFramework {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:352:5
[INFO] [stdout]     |
[INFO] [stdout] 352 |     FIPS140_2,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:353:5
[INFO] [stdout]     |
[INFO] [stdout] 353 |     CommonCriteria,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:354:5
[INFO] [stdout]     |
[INFO] [stdout] 354 |     NIST,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:355:5
[INFO] [stdout]     |
[INFO] [stdout] 355 |     ISO27001,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:356:5
[INFO] [stdout]     |
[INFO] [stdout] 356 |     SOX,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:357:5
[INFO] [stdout]     |
[INFO] [stdout] 357 |     GDPR,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:358:5
[INFO] [stdout]     |
[INFO] [stdout] 358 |     HIPAA,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/key_manager.rs:362:1
[INFO] [stdout]     |
[INFO] [stdout] 362 | pub enum OperationPriority {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:363:5
[INFO] [stdout]     |
[INFO] [stdout] 363 |     Low,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:364:5
[INFO] [stdout]     |
[INFO] [stdout] 364 |     Normal,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:365:5
[INFO] [stdout]     |
[INFO] [stdout] 365 |     High,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:366:5
[INFO] [stdout]     |
[INFO] [stdout] 366 |     Emergency,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:372:5
[INFO] [stdout]     |
[INFO] [stdout] 372 |     pub method: DerivationMethod,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:373:5
[INFO] [stdout]     |
[INFO] [stdout] 373 |     pub parameters: HashMap<String, Vec<u8>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:374:5
[INFO] [stdout]     |
[INFO] [stdout] 374 |     pub context: String,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> src/key_manager.rs:378:1
[INFO] [stdout]     |
[INFO] [stdout] 378 | pub struct KeyDerivationParams {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:379:5
[INFO] [stdout]     |
[INFO] [stdout] 379 |     pub method: DerivationMethod,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:380:5
[INFO] [stdout]     |
[INFO] [stdout] 380 |     pub salt: [u8; 32],
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:381:5
[INFO] [stdout]     |
[INFO] [stdout] 381 |     pub iterations: u32,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:382:5
[INFO] [stdout]     |
[INFO] [stdout] 382 |     pub key_length: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/key_manager.rs:386:1
[INFO] [stdout]     |
[INFO] [stdout] 386 | pub enum DerivationMethod {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:387:5
[INFO] [stdout]     |
[INFO] [stdout] 387 |     HKDF,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:388:5
[INFO] [stdout]     |
[INFO] [stdout] 388 |     PBKDF2,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:389:5
[INFO] [stdout]     |
[INFO] [stdout] 389 |     Scrypt,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:390:5
[INFO] [stdout]     |
[INFO] [stdout] 390 |     Argon2,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> src/key_manager.rs:394:1
[INFO] [stdout]     |
[INFO] [stdout] 394 | pub struct RetryConfig {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:395:5
[INFO] [stdout]     |
[INFO] [stdout] 395 |     pub max_retries: u32,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:396:5
[INFO] [stdout]     |
[INFO] [stdout] 396 |     pub base_delay: Duration,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:397:5
[INFO] [stdout]     |
[INFO] [stdout] 397 |     pub max_delay: Duration,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:398:5
[INFO] [stdout]     |
[INFO] [stdout] 398 |     pub backoff_multiplier: f64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> src/key_manager.rs:402:1
[INFO] [stdout]     |
[INFO] [stdout] 402 | pub struct BackupEncryption {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:403:5
[INFO] [stdout]     |
[INFO] [stdout] 403 |     pub enabled: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:404:5
[INFO] [stdout]     |
[INFO] [stdout] 404 |     pub key_id: Option<[u8; 32]>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:405:5
[INFO] [stdout]     |
[INFO] [stdout] 405 |     pub cipher: String,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> src/key_manager.rs:409:1
[INFO] [stdout]     |
[INFO] [stdout] 409 | pub struct GeoDistribution {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:410:5
[INFO] [stdout]     |
[INFO] [stdout] 410 |     pub regions: Vec<String>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:411:5
[INFO] [stdout]     |
[INFO] [stdout] 411 |     pub min_replicas: u32,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:412:5
[INFO] [stdout]     |
[INFO] [stdout] 412 |     pub consistency_level: ConsistencyLevel,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/key_manager.rs:416:1
[INFO] [stdout]     |
[INFO] [stdout] 416 | pub enum ConsistencyLevel {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:417:5
[INFO] [stdout]     |
[INFO] [stdout] 417 |     Eventual,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:418:5
[INFO] [stdout]     |
[INFO] [stdout] 418 |     Strong,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:419:5
[INFO] [stdout]     |
[INFO] [stdout] 419 |     Linearizable,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> src/key_manager.rs:423:1
[INFO] [stdout]     |
[INFO] [stdout] 423 | pub struct KeyEscrowPolicy {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:424:5
[INFO] [stdout]     |
[INFO] [stdout] 424 |     pub enabled: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:425:5
[INFO] [stdout]     |
[INFO] [stdout] 425 |     pub trustees: Vec<String>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:426:5
[INFO] [stdout]     |
[INFO] [stdout] 426 |     pub threshold: u32,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:427:5
[INFO] [stdout]     |
[INFO] [stdout] 427 |     pub escrow_duration: Duration,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> src/key_manager.rs:431:1
[INFO] [stdout]     |
[INFO] [stdout] 431 | pub struct AuditPolicy {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:432:5
[INFO] [stdout]     |
[INFO] [stdout] 432 |     pub enabled: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:433:5
[INFO] [stdout]     |
[INFO] [stdout] 433 |     pub log_all_operations: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:434:5
[INFO] [stdout]     |
[INFO] [stdout] 434 |     pub retention_period: Duration,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:435:5
[INFO] [stdout]     |
[INFO] [stdout] 435 |     pub compliance_reporting: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> src/key_manager.rs:439:1
[INFO] [stdout]     |
[INFO] [stdout] 439 | pub struct AccessControlPolicy {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:440:5
[INFO] [stdout]     |
[INFO] [stdout] 440 |     pub require_authentication: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:441:5
[INFO] [stdout]     |
[INFO] [stdout] 441 |     pub multi_factor_auth: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:442:5
[INFO] [stdout]     |
[INFO] [stdout] 442 |     pub role_based_access: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:443:5
[INFO] [stdout]     |
[INFO] [stdout] 443 |     pub audit_access: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/key_manager.rs:447:1
[INFO] [stdout]     |
[INFO] [stdout] 447 | pub enum BackupDestination {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:448:5
[INFO] [stdout]     |
[INFO] [stdout] 448 |     Local { path: String },
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:448:13
[INFO] [stdout]     |
[INFO] [stdout] 448 |     Local { path: String },
[INFO] [stdout]     |             ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:449:5
[INFO] [stdout]     |
[INFO] [stdout] 449 |     Remote { url: String, credentials: String },
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:449:14
[INFO] [stdout]     |
[INFO] [stdout] 449 |     Remote { url: String, credentials: String },
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:449:27
[INFO] [stdout]     |
[INFO] [stdout] 449 |     Remote { url: String, credentials: String },
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:450:5
[INFO] [stdout]     |
[INFO] [stdout] 450 |     HSM { module_id: String },
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:450:11
[INFO] [stdout]     |
[INFO] [stdout] 450 |     HSM { module_id: String },
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:451:5
[INFO] [stdout]     |
[INFO] [stdout] 451 |     Cloud { provider: String, config: HashMap<String, String> },
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:451:13
[INFO] [stdout]     |
[INFO] [stdout] 451 |     Cloud { provider: String, config: HashMap<String, String> },
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:451:31
[INFO] [stdout]     |
[INFO] [stdout] 451 |     Cloud { provider: String, config: HashMap<String, String> },
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/key_manager.rs:455:1
[INFO] [stdout]     |
[INFO] [stdout] 455 | pub enum BackupSource {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:456:5
[INFO] [stdout]     |
[INFO] [stdout] 456 |     Local { path: String },
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:456:13
[INFO] [stdout]     |
[INFO] [stdout] 456 |     Local { path: String },
[INFO] [stdout]     |             ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:457:5
[INFO] [stdout]     |
[INFO] [stdout] 457 |     Remote { url: String, credentials: String },
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:457:14
[INFO] [stdout]     |
[INFO] [stdout] 457 |     Remote { url: String, credentials: String },
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:457:27
[INFO] [stdout]     |
[INFO] [stdout] 457 |     Remote { url: String, credentials: String },
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:458:5
[INFO] [stdout]     |
[INFO] [stdout] 458 |     HSM { module_id: String },
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:458:11
[INFO] [stdout]     |
[INFO] [stdout] 458 |     HSM { module_id: String },
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:459:5
[INFO] [stdout]     |
[INFO] [stdout] 459 |     Cloud { provider: String, config: HashMap<String, String> },
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:459:13
[INFO] [stdout]     |
[INFO] [stdout] 459 |     Cloud { provider: String, config: HashMap<String, String> },
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:459:31
[INFO] [stdout]     |
[INFO] [stdout] 459 |     Cloud { provider: String, config: HashMap<String, String> },
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/key_manager.rs:465:5
[INFO] [stdout]     |
[INFO] [stdout] 465 |     async fn store_backup(&self, group_id: [u8; 32], keyset: &KeySet, metadata: &BackupMetadata) -> Result<BackupId>;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/key_manager.rs:466:5
[INFO] [stdout]     |
[INFO] [stdout] 466 |     async fn retrieve_backup(&self, backup_id: BackupId) -> Result<(KeySet, BackupMetadata)>;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/key_manager.rs:467:5
[INFO] [stdout]     |
[INFO] [stdout] 467 |     async fn list_backups(&self, group_id: [u8; 32]) -> Result<Vec<BackupInfo>>;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/key_manager.rs:468:5
[INFO] [stdout]     |
[INFO] [stdout] 468 |     async fn delete_backup(&self, backup_id: BackupId) -> Result<()>;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/key_manager.rs:469:5
[INFO] [stdout]     |
[INFO] [stdout] 469 |     async fn verify_backup(&self, backup_id: BackupId) -> Result<bool>;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/key_manager.rs:475:5
[INFO] [stdout]     |
[INFO] [stdout] 475 |     async fn generate_key(&self, key_type: KeyType, security_level: SecurityLevel) -> Result<HsmKeyHandle>;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/key_manager.rs:476:5
[INFO] [stdout]     |
[INFO] [stdout] 476 |     async fn derive_key(&self, base_key: HsmKeyHandle, context: &str, params: &[u8]) -> Result<HsmKeyHandle>;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/key_manager.rs:477:5
[INFO] [stdout]     |
[INFO] [stdout] 477 |     async fn encrypt(&self, key_handle: HsmKeyHandle, plaintext: &[u8], aad: &[u8]) -> Result<Vec<u8>>;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/key_manager.rs:478:5
[INFO] [stdout]     |
[INFO] [stdout] 478 |     async fn decrypt(&self, key_handle: HsmKeyHandle, ciphertext: &[u8], aad: &[u8]) -> Result<Vec<u8>>;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/key_manager.rs:479:5
[INFO] [stdout]     |
[INFO] [stdout] 479 |     async fn export_key(&self, key_handle: HsmKeyHandle) -> Result<Vec<u8>>;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/key_manager.rs:480:5
[INFO] [stdout]     |
[INFO] [stdout] 480 |     async fn import_key(&self, key_data: &[u8], key_type: KeyType) -> Result<HsmKeyHandle>;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a type alias
[INFO] [stdout]    --> src/key_manager.rs:485:1
[INFO] [stdout]     |
[INFO] [stdout] 485 | pub type HsmKeyHandle = String;
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> src/key_manager.rs:488:1
[INFO] [stdout]     |
[INFO] [stdout] 488 | pub struct BackupMetadata {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:489:5
[INFO] [stdout]     |
[INFO] [stdout] 489 |     pub backup_id: BackupId,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:490:5
[INFO] [stdout]     |
[INFO] [stdout] 490 |     pub group_id: [u8; 32],
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:491:5
[INFO] [stdout]     |
[INFO] [stdout] 491 |     pub created_at: SystemTime,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:492:5
[INFO] [stdout]     |
[INFO] [stdout] 492 |     pub version: u64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:493:5
[INFO] [stdout]     |
[INFO] [stdout] 493 |     pub encryption: BackupEncryption,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:494:5
[INFO] [stdout]     |
[INFO] [stdout] 494 |     pub compression: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:495:5
[INFO] [stdout]     |
[INFO] [stdout] 495 |     pub integrity_hash: [u8; 32],
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> src/key_manager.rs:499:1
[INFO] [stdout]     |
[INFO] [stdout] 499 | pub struct BackupInfo {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:500:5
[INFO] [stdout]     |
[INFO] [stdout] 500 |     pub backup_id: BackupId,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:501:5
[INFO] [stdout]     |
[INFO] [stdout] 501 |     pub created_at: SystemTime,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:502:5
[INFO] [stdout]     |
[INFO] [stdout] 502 |     pub size: u64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:503:5
[INFO] [stdout]     |
[INFO] [stdout] 503 |     pub version: u64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:504:5
[INFO] [stdout]     |
[INFO] [stdout] 504 |     pub verified: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]     --> src/key_manager.rs:1075:5
[INFO] [stdout]      |
[INFO] [stdout] 1075 |     pub async fn new(backup_dir: String) -> Result<Self> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `phalanx`
[INFO] [stdout]  --> tests/key_manager_tests.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use phalanx::key_manager::*;
[INFO] [stdout]   |     ^^^^^^^ use of unresolved module or unlinked crate `phalanx`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `phalanx`, use `cargo add phalanx` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `phalanx`
[INFO] [stdout]  --> tests/group_advanced_tests.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use phalanx::group::*;
[INFO] [stdout]   |     ^^^^^^^ use of unresolved module or unlinked crate `phalanx`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `phalanx`, use `cargo add phalanx` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `phalanx`
[INFO] [stdout]  --> tests/group_advanced_tests.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use phalanx::key_manager::RotationPolicy;
[INFO] [stdout]   |     ^^^^^^^ use of unresolved module or unlinked crate `phalanx`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `phalanx`, use `cargo add phalanx` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `phalanx`
[INFO] [stdout]  --> tests/group_advanced_tests.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use phalanx::*;
[INFO] [stdout]   |     ^^^^^^^ use of unresolved module or unlinked crate `phalanx`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `phalanx`, use `cargo add phalanx` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AdvancedKeyManager`
[INFO] [stdout]  --> tests/key_manager_tests.rs:9:19
[INFO] [stdout]   |
[INFO] [stdout] 9 |     let manager = AdvancedKeyManager::new().await.unwrap();
[INFO] [stdout]   |                   ^^^^^^^^^^^^^^^^^^ use of undeclared type `AdvancedKeyManager`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]   |
[INFO] [stdout] 3 + use phalanx_crypto::AdvancedKeyManager;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AdvancedKeyManager`
[INFO] [stdout]   --> tests/key_manager_tests.rs:15:23
[INFO] [stdout]    |
[INFO] [stdout] 15 |     let mut manager = AdvancedKeyManager::new().await.unwrap();
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^^^ use of undeclared type `AdvancedKeyManager`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout]  3 + use phalanx_crypto::AdvancedKeyManager;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `AdvancedKeyManager`
[INFO] [stdout]   --> tests/key_manager_tests.rs:30:23
[INFO] [stdout]    |
[INFO] [stdout] 30 |     let mut manager = AdvancedKeyManager::new().await.unwrap();
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^^^ use of undeclared type `AdvancedKeyManager`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout]  3 + use phalanx_crypto::AdvancedKeyManager;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `KeySet` in this scope
[INFO] [stdout]   --> tests/key_manager_tests.rs:47:19
[INFO] [stdout]    |
[INFO] [stdout] 47 |     let key_set = KeySet {
[INFO] [stdout]    |                   ^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout]  3 + use phalanx_crypto::key_manager::KeySet;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `KeyMetadata`
[INFO] [stdout]   --> tests/key_manager_tests.rs:54:19
[INFO] [stdout]    |
[INFO] [stdout] 54 |         metadata: KeyMetadata::default(),
[INFO] [stdout]    |                   ^^^^^^^^^^^ use of undeclared type `KeyMetadata`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout]  3 + use phalanx_crypto::key_manager::KeyMetadata;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0422, E0433.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0422`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `phalanx-crypto` (test "key_manager_tests") due to 6 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error[E0282]: type annotations needed for `Arc<_, _>`
[INFO] [stdout]   --> tests/group_advanced_tests.rs:75:13
[INFO] [stdout]    |
[INFO] [stdout] 75 |         let group_clone = Arc::clone(&group);
[INFO] [stdout]    |             ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 79 |             let mut g = group_clone.lock().unwrap();
[INFO] [stdout]    |                                     ---- type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout] help: consider giving `group_clone` an explicit type, where the type for type parameter `T` is specified
[INFO] [stdout]    |
[INFO] [stdout] 75 |         let group_clone: Arc<T, A> = Arc::clone(&group);
[INFO] [stdout]    |                        +++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0282, E0432, E0433.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0282`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `phalanx-crypto` (test "group_advanced_tests") due to 4 previous errors
[INFO] [stdout] warning: unused variable: `group_id`
[INFO] [stdout]     --> src/key_manager.rs:1085:34
[INFO] [stdout]      |
[INFO] [stdout] 1085 |     async fn store_backup(&self, group_id: [u8; 32], keyset: &KeySet, metadata: &BackupMetadata) -> Result<BackupId> {
[INFO] [stdout]      |                                  ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_group_id`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `version` is never read
[INFO] [stdout]    --> src/group.rs:288:5
[INFO] [stdout]     |
[INFO] [stdout] 270 | pub struct PhalanxGroup {
[INFO] [stdout]     |            ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 288 |     version: ProtocolVersion,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `PhalanxGroup` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `security_policies` and `hsm_provider` are never read
[INFO] [stdout]   --> src/key_manager.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct AdvancedKeyManager {
[INFO] [stdout]    |            ------------------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 30 |     security_policies: RwLock<SecurityPolicies>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     hsm_provider: Option<Box<dyn HsmProvider>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:298:5
[INFO] [stdout]     |
[INFO] [stdout] 298 |     TimeExpired,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/lib.rs:49:9
[INFO] [stdout]     |
[INFO] [stdout]  49 | #![warn(missing_docs, rustdoc::missing_crate_level_docs)]
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:299:5
[INFO] [stdout]     |
[INFO] [stdout] 299 |     UsageExceeded,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:300:5
[INFO] [stdout]     |
[INFO] [stdout] 300 |     SecurityBreach,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:301:5
[INFO] [stdout]     |
[INFO] [stdout] 301 |     MembershipChange,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:302:5
[INFO] [stdout]     |
[INFO] [stdout] 302 |     ComplianceRequirement,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:303:5
[INFO] [stdout]     |
[INFO] [stdout] 303 |     ManualRequest,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:304:5
[INFO] [stdout]     |
[INFO] [stdout] 304 |     EmergencyRotation,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/key_manager.rs:308:1
[INFO] [stdout]     |
[INFO] [stdout] 308 | pub enum RotationReason {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:309:5
[INFO] [stdout]     |
[INFO] [stdout] 309 |     Scheduled,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:310:5
[INFO] [stdout]     |
[INFO] [stdout] 310 |     Emergency,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:311:5
[INFO] [stdout]     |
[INFO] [stdout] 311 |     Compromise,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:312:5
[INFO] [stdout]     |
[INFO] [stdout] 312 |     Compliance,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:313:5
[INFO] [stdout]     |
[INFO] [stdout] 313 |     MembershipChange,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:314:5
[INFO] [stdout]     |
[INFO] [stdout] 314 |     Manual,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/key_manager.rs:318:1
[INFO] [stdout]     |
[INFO] [stdout] 318 | pub enum KeyType {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:319:5
[INFO] [stdout]     |
[INFO] [stdout] 319 |     Encryption,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:320:5
[INFO] [stdout]     |
[INFO] [stdout] 320 |     Authentication,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:321:5
[INFO] [stdout]     |
[INFO] [stdout] 321 |     KeyExchange,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:322:5
[INFO] [stdout]     |
[INFO] [stdout] 322 |     Derivation,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/key_manager.rs:326:1
[INFO] [stdout]     |
[INFO] [stdout] 326 | pub enum SecurityLevel {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:327:5
[INFO] [stdout]     |
[INFO] [stdout] 327 |     Standard,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:328:5
[INFO] [stdout]     |
[INFO] [stdout] 328 |     High,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:329:5
[INFO] [stdout]     |
[INFO] [stdout] 329 |     Critical,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:330:5
[INFO] [stdout]     |
[INFO] [stdout] 330 |     TopSecret,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/key_manager.rs:334:1
[INFO] [stdout]     |
[INFO] [stdout] 334 | pub enum MemberKeyStatus {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:335:5
[INFO] [stdout]     |
[INFO] [stdout] 335 |     Active,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:336:5
[INFO] [stdout]     |
[INFO] [stdout] 336 |     Revoked,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:337:5
[INFO] [stdout]     |
[INFO] [stdout] 337 |     Expired,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:338:5
[INFO] [stdout]     |
[INFO] [stdout] 338 |     Pending,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/key_manager.rs:342:1
[INFO] [stdout]     |
[INFO] [stdout] 342 | pub enum SecurityClassification {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:343:5
[INFO] [stdout]     |
[INFO] [stdout] 343 |     Public,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:344:5
[INFO] [stdout]     |
[INFO] [stdout] 344 |     Internal,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:345:5
[INFO] [stdout]     |
[INFO] [stdout] 345 |     Confidential,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:346:5
[INFO] [stdout]     |
[INFO] [stdout] 346 |     Secret,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:347:5
[INFO] [stdout]     |
[INFO] [stdout] 347 |     TopSecret,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/key_manager.rs:351:1
[INFO] [stdout]     |
[INFO] [stdout] 351 | pub enum ComplianceFramework {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:352:5
[INFO] [stdout]     |
[INFO] [stdout] 352 |     FIPS140_2,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:353:5
[INFO] [stdout]     |
[INFO] [stdout] 353 |     CommonCriteria,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:354:5
[INFO] [stdout]     |
[INFO] [stdout] 354 |     NIST,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:355:5
[INFO] [stdout]     |
[INFO] [stdout] 355 |     ISO27001,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:356:5
[INFO] [stdout]     |
[INFO] [stdout] 356 |     SOX,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:357:5
[INFO] [stdout]     |
[INFO] [stdout] 357 |     GDPR,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:358:5
[INFO] [stdout]     |
[INFO] [stdout] 358 |     HIPAA,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/key_manager.rs:362:1
[INFO] [stdout]     |
[INFO] [stdout] 362 | pub enum OperationPriority {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:363:5
[INFO] [stdout]     |
[INFO] [stdout] 363 |     Low,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:364:5
[INFO] [stdout]     |
[INFO] [stdout] 364 |     Normal,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:365:5
[INFO] [stdout]     |
[INFO] [stdout] 365 |     High,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:366:5
[INFO] [stdout]     |
[INFO] [stdout] 366 |     Emergency,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:372:5
[INFO] [stdout]     |
[INFO] [stdout] 372 |     pub method: DerivationMethod,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:373:5
[INFO] [stdout]     |
[INFO] [stdout] 373 |     pub parameters: HashMap<String, Vec<u8>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:374:5
[INFO] [stdout]     |
[INFO] [stdout] 374 |     pub context: String,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> src/key_manager.rs:378:1
[INFO] [stdout]     |
[INFO] [stdout] 378 | pub struct KeyDerivationParams {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:379:5
[INFO] [stdout]     |
[INFO] [stdout] 379 |     pub method: DerivationMethod,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:380:5
[INFO] [stdout]     |
[INFO] [stdout] 380 |     pub salt: [u8; 32],
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:381:5
[INFO] [stdout]     |
[INFO] [stdout] 381 |     pub iterations: u32,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:382:5
[INFO] [stdout]     |
[INFO] [stdout] 382 |     pub key_length: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/key_manager.rs:386:1
[INFO] [stdout]     |
[INFO] [stdout] 386 | pub enum DerivationMethod {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:387:5
[INFO] [stdout]     |
[INFO] [stdout] 387 |     HKDF,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:388:5
[INFO] [stdout]     |
[INFO] [stdout] 388 |     PBKDF2,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:389:5
[INFO] [stdout]     |
[INFO] [stdout] 389 |     Scrypt,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:390:5
[INFO] [stdout]     |
[INFO] [stdout] 390 |     Argon2,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> src/key_manager.rs:394:1
[INFO] [stdout]     |
[INFO] [stdout] 394 | pub struct RetryConfig {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:395:5
[INFO] [stdout]     |
[INFO] [stdout] 395 |     pub max_retries: u32,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:396:5
[INFO] [stdout]     |
[INFO] [stdout] 396 |     pub base_delay: Duration,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:397:5
[INFO] [stdout]     |
[INFO] [stdout] 397 |     pub max_delay: Duration,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:398:5
[INFO] [stdout]     |
[INFO] [stdout] 398 |     pub backoff_multiplier: f64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> src/key_manager.rs:402:1
[INFO] [stdout]     |
[INFO] [stdout] 402 | pub struct BackupEncryption {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:403:5
[INFO] [stdout]     |
[INFO] [stdout] 403 |     pub enabled: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:404:5
[INFO] [stdout]     |
[INFO] [stdout] 404 |     pub key_id: Option<[u8; 32]>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:405:5
[INFO] [stdout]     |
[INFO] [stdout] 405 |     pub cipher: String,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> src/key_manager.rs:409:1
[INFO] [stdout]     |
[INFO] [stdout] 409 | pub struct GeoDistribution {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:410:5
[INFO] [stdout]     |
[INFO] [stdout] 410 |     pub regions: Vec<String>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:411:5
[INFO] [stdout]     |
[INFO] [stdout] 411 |     pub min_replicas: u32,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:412:5
[INFO] [stdout]     |
[INFO] [stdout] 412 |     pub consistency_level: ConsistencyLevel,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/key_manager.rs:416:1
[INFO] [stdout]     |
[INFO] [stdout] 416 | pub enum ConsistencyLevel {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:417:5
[INFO] [stdout]     |
[INFO] [stdout] 417 |     Eventual,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:418:5
[INFO] [stdout]     |
[INFO] [stdout] 418 |     Strong,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:419:5
[INFO] [stdout]     |
[INFO] [stdout] 419 |     Linearizable,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> src/key_manager.rs:423:1
[INFO] [stdout]     |
[INFO] [stdout] 423 | pub struct KeyEscrowPolicy {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:424:5
[INFO] [stdout]     |
[INFO] [stdout] 424 |     pub enabled: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:425:5
[INFO] [stdout]     |
[INFO] [stdout] 425 |     pub trustees: Vec<String>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:426:5
[INFO] [stdout]     |
[INFO] [stdout] 426 |     pub threshold: u32,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:427:5
[INFO] [stdout]     |
[INFO] [stdout] 427 |     pub escrow_duration: Duration,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> src/key_manager.rs:431:1
[INFO] [stdout]     |
[INFO] [stdout] 431 | pub struct AuditPolicy {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:432:5
[INFO] [stdout]     |
[INFO] [stdout] 432 |     pub enabled: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:433:5
[INFO] [stdout]     |
[INFO] [stdout] 433 |     pub log_all_operations: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:434:5
[INFO] [stdout]     |
[INFO] [stdout] 434 |     pub retention_period: Duration,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:435:5
[INFO] [stdout]     |
[INFO] [stdout] 435 |     pub compliance_reporting: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> src/key_manager.rs:439:1
[INFO] [stdout]     |
[INFO] [stdout] 439 | pub struct AccessControlPolicy {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:440:5
[INFO] [stdout]     |
[INFO] [stdout] 440 |     pub require_authentication: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:441:5
[INFO] [stdout]     |
[INFO] [stdout] 441 |     pub multi_factor_auth: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:442:5
[INFO] [stdout]     |
[INFO] [stdout] 442 |     pub role_based_access: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:443:5
[INFO] [stdout]     |
[INFO] [stdout] 443 |     pub audit_access: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/key_manager.rs:447:1
[INFO] [stdout]     |
[INFO] [stdout] 447 | pub enum BackupDestination {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:448:5
[INFO] [stdout]     |
[INFO] [stdout] 448 |     Local { path: String },
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:448:13
[INFO] [stdout]     |
[INFO] [stdout] 448 |     Local { path: String },
[INFO] [stdout]     |             ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:449:5
[INFO] [stdout]     |
[INFO] [stdout] 449 |     Remote { url: String, credentials: String },
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:449:14
[INFO] [stdout]     |
[INFO] [stdout] 449 |     Remote { url: String, credentials: String },
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:449:27
[INFO] [stdout]     |
[INFO] [stdout] 449 |     Remote { url: String, credentials: String },
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:450:5
[INFO] [stdout]     |
[INFO] [stdout] 450 |     HSM { module_id: String },
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:450:11
[INFO] [stdout]     |
[INFO] [stdout] 450 |     HSM { module_id: String },
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:451:5
[INFO] [stdout]     |
[INFO] [stdout] 451 |     Cloud { provider: String, config: HashMap<String, String> },
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:451:13
[INFO] [stdout]     |
[INFO] [stdout] 451 |     Cloud { provider: String, config: HashMap<String, String> },
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:451:31
[INFO] [stdout]     |
[INFO] [stdout] 451 |     Cloud { provider: String, config: HashMap<String, String> },
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]    --> src/key_manager.rs:455:1
[INFO] [stdout]     |
[INFO] [stdout] 455 | pub enum BackupSource {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:456:5
[INFO] [stdout]     |
[INFO] [stdout] 456 |     Local { path: String },
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:456:13
[INFO] [stdout]     |
[INFO] [stdout] 456 |     Local { path: String },
[INFO] [stdout]     |             ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:457:5
[INFO] [stdout]     |
[INFO] [stdout] 457 |     Remote { url: String, credentials: String },
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:457:14
[INFO] [stdout]     |
[INFO] [stdout] 457 |     Remote { url: String, credentials: String },
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:457:27
[INFO] [stdout]     |
[INFO] [stdout] 457 |     Remote { url: String, credentials: String },
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:458:5
[INFO] [stdout]     |
[INFO] [stdout] 458 |     HSM { module_id: String },
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:458:11
[INFO] [stdout]     |
[INFO] [stdout] 458 |     HSM { module_id: String },
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]    --> src/key_manager.rs:459:5
[INFO] [stdout]     |
[INFO] [stdout] 459 |     Cloud { provider: String, config: HashMap<String, String> },
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:459:13
[INFO] [stdout]     |
[INFO] [stdout] 459 |     Cloud { provider: String, config: HashMap<String, String> },
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:459:31
[INFO] [stdout]     |
[INFO] [stdout] 459 |     Cloud { provider: String, config: HashMap<String, String> },
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/key_manager.rs:465:5
[INFO] [stdout]     |
[INFO] [stdout] 465 |     async fn store_backup(&self, group_id: [u8; 32], keyset: &KeySet, metadata: &BackupMetadata) -> Result<BackupId>;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/key_manager.rs:466:5
[INFO] [stdout]     |
[INFO] [stdout] 466 |     async fn retrieve_backup(&self, backup_id: BackupId) -> Result<(KeySet, BackupMetadata)>;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/key_manager.rs:467:5
[INFO] [stdout]     |
[INFO] [stdout] 467 |     async fn list_backups(&self, group_id: [u8; 32]) -> Result<Vec<BackupInfo>>;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/key_manager.rs:468:5
[INFO] [stdout]     |
[INFO] [stdout] 468 |     async fn delete_backup(&self, backup_id: BackupId) -> Result<()>;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/key_manager.rs:469:5
[INFO] [stdout]     |
[INFO] [stdout] 469 |     async fn verify_backup(&self, backup_id: BackupId) -> Result<bool>;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/key_manager.rs:475:5
[INFO] [stdout]     |
[INFO] [stdout] 475 |     async fn generate_key(&self, key_type: KeyType, security_level: SecurityLevel) -> Result<HsmKeyHandle>;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/key_manager.rs:476:5
[INFO] [stdout]     |
[INFO] [stdout] 476 |     async fn derive_key(&self, base_key: HsmKeyHandle, context: &str, params: &[u8]) -> Result<HsmKeyHandle>;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/key_manager.rs:477:5
[INFO] [stdout]     |
[INFO] [stdout] 477 |     async fn encrypt(&self, key_handle: HsmKeyHandle, plaintext: &[u8], aad: &[u8]) -> Result<Vec<u8>>;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/key_manager.rs:478:5
[INFO] [stdout]     |
[INFO] [stdout] 478 |     async fn decrypt(&self, key_handle: HsmKeyHandle, ciphertext: &[u8], aad: &[u8]) -> Result<Vec<u8>>;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/key_manager.rs:479:5
[INFO] [stdout]     |
[INFO] [stdout] 479 |     async fn export_key(&self, key_handle: HsmKeyHandle) -> Result<Vec<u8>>;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/key_manager.rs:480:5
[INFO] [stdout]     |
[INFO] [stdout] 480 |     async fn import_key(&self, key_data: &[u8], key_type: KeyType) -> Result<HsmKeyHandle>;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a type alias
[INFO] [stdout]    --> src/key_manager.rs:485:1
[INFO] [stdout]     |
[INFO] [stdout] 485 | pub type HsmKeyHandle = String;
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> src/key_manager.rs:488:1
[INFO] [stdout]     |
[INFO] [stdout] 488 | pub struct BackupMetadata {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:489:5
[INFO] [stdout]     |
[INFO] [stdout] 489 |     pub backup_id: BackupId,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:490:5
[INFO] [stdout]     |
[INFO] [stdout] 490 |     pub group_id: [u8; 32],
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:491:5
[INFO] [stdout]     |
[INFO] [stdout] 491 |     pub created_at: SystemTime,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:492:5
[INFO] [stdout]     |
[INFO] [stdout] 492 |     pub version: u64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:493:5
[INFO] [stdout]     |
[INFO] [stdout] 493 |     pub encryption: BackupEncryption,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:494:5
[INFO] [stdout]     |
[INFO] [stdout] 494 |     pub compression: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:495:5
[INFO] [stdout]     |
[INFO] [stdout] 495 |     pub integrity_hash: [u8; 32],
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> src/key_manager.rs:499:1
[INFO] [stdout]     |
[INFO] [stdout] 499 | pub struct BackupInfo {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:500:5
[INFO] [stdout]     |
[INFO] [stdout] 500 |     pub backup_id: BackupId,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:501:5
[INFO] [stdout]     |
[INFO] [stdout] 501 |     pub created_at: SystemTime,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:502:5
[INFO] [stdout]     |
[INFO] [stdout] 502 |     pub size: u64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:503:5
[INFO] [stdout]     |
[INFO] [stdout] 503 |     pub version: u64,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/key_manager.rs:504:5
[INFO] [stdout]     |
[INFO] [stdout] 504 |     pub verified: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]     --> src/key_manager.rs:1075:5
[INFO] [stdout]      |
[INFO] [stdout] 1075 |     pub async fn new(backup_dir: String) -> Result<Self> {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "5bace5470c9413f2dc1152e0f013aff5227a189ddd5ddc06487ba758ec0a8bad", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5bace5470c9413f2dc1152e0f013aff5227a189ddd5ddc06487ba758ec0a8bad", kill_on_drop: false }`
[INFO] [stdout] 5bace5470c9413f2dc1152e0f013aff5227a189ddd5ddc06487ba758ec0a8bad
