[INFO] cloning repository https://github.com/DocteurMoriarty/Zenth_lib_crypto
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/DocteurMoriarty/Zenth_lib_crypto" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDocteurMoriarty%2FZenth_lib_crypto", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDocteurMoriarty%2FZenth_lib_crypto'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 9bf69e48262ecb368841862d3d24647f100cb1f4
[INFO] checking DocteurMoriarty/Zenth_lib_crypto against try#2b39fe756f52bc2825bf5b2bfc385cab922dae10 for pr-143011
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDocteurMoriarty%2FZenth_lib_crypto" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/DocteurMoriarty/Zenth_lib_crypto
[INFO] finished tweaking git repo https://github.com/DocteurMoriarty/Zenth_lib_crypto
[INFO] tweaked toml for git repo https://github.com/DocteurMoriarty/Zenth_lib_crypto written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/DocteurMoriarty/Zenth_lib_crypto on toolchain 2b39fe756f52bc2825bf5b2bfc385cab922dae10
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+2b39fe756f52bc2825bf5b2bfc385cab922dae10" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/DocteurMoriarty/Zenth_lib_crypto 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" "+2b39fe756f52bc2825bf5b2bfc385cab922dae10" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+2b39fe756f52bc2825bf5b2bfc385cab922dae10" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 35e49a0a0f9ec4bddd730e03d56e276ec2567f7c053694f3c8ec0cf28d2dfcab
[INFO] running `Command { std: "docker" "start" "-a" "35e49a0a0f9ec4bddd730e03d56e276ec2567f7c053694f3c8ec0cf28d2dfcab", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "35e49a0a0f9ec4bddd730e03d56e276ec2567f7c053694f3c8ec0cf28d2dfcab", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "35e49a0a0f9ec4bddd730e03d56e276ec2567f7c053694f3c8ec0cf28d2dfcab", kill_on_drop: false }`
[INFO] [stdout] 35e49a0a0f9ec4bddd730e03d56e276ec2567f7c053694f3c8ec0cf28d2dfcab
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+2b39fe756f52bc2825bf5b2bfc385cab922dae10" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 2659792370a0b8202af6f3c78f36ef8669878d7f210a2b7394b4539f97041fb7
[INFO] running `Command { std: "docker" "start" "-a" "2659792370a0b8202af6f3c78f36ef8669878d7f210a2b7394b4539f97041fb7", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.95
[INFO] [stderr]    Compiling libc v0.2.172
[INFO] [stderr]    Compiling typenum v1.18.0
[INFO] [stderr]     Checking subtle v2.6.1
[INFO] [stderr]     Checking const-oid v0.9.6
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling glob v0.3.2
[INFO] [stderr]    Compiling semver v1.0.26
[INFO] [stderr]     Checking cpufeatures v0.2.17
[INFO] [stderr]     Checking zeroize v1.8.1
[INFO] [stderr]    Compiling libm v0.2.15
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling regex-syntax v0.8.5
[INFO] [stderr]    Compiling memchr v2.7.4
[INFO] [stderr]    Compiling clang-sys v1.8.1
[INFO] [stderr]    Compiling quote v1.0.40
[INFO] [stderr]    Compiling syn v2.0.101
[INFO] [stderr]    Compiling cfg-if v1.0.0
[INFO] [stderr]     Checking base64ct v1.7.3
[INFO] [stderr]    Compiling minimal-lexical v0.2.1
[INFO] [stderr]    Compiling libloading v0.8.8
[INFO] [stderr]    Compiling rustc_version v0.4.1
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking getrandom v0.2.16
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling bindgen v0.70.1
[INFO] [stderr]    Compiling zerocopy v0.8.25
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]     Checking crypto-common v0.1.6
[INFO] [stderr]    Compiling regex-automata v0.4.9
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]    Compiling cc v1.2.26
[INFO] [stderr]    Compiling rustc-hash v1.1.0
[INFO] [stderr]    Compiling bitflags v2.9.1
[INFO] [stderr]    Compiling cmake v0.1.54
[INFO] [stderr]    Compiling cexpr v0.6.0
[INFO] [stderr]    Compiling regex v1.11.1
[INFO] [stderr]     Checking inout v0.1.4
[INFO] [stderr]    Compiling fslock v0.2.1
[INFO] [stderr]     Checking pem-rfc7468 v0.7.0
[INFO] [stderr]    Compiling fnv v1.0.7
[INFO] [stderr]    Compiling strsim v0.11.1
[INFO] [stderr]    Compiling fs_extra v1.3.0
[INFO] [stderr]    Compiling ident_case v1.0.1
[INFO] [stderr]     Checking der v0.7.10
[INFO] [stderr]     Checking crossbeam-epoch v0.9.18
[INFO] [stderr]     Checking cipher v0.4.4
[INFO] [stderr]    Compiling rayon-core v1.12.1
[INFO] [stderr]    Compiling serde_json v1.0.140
[INFO] [stderr]     Checking crossbeam-deque v0.8.6
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking signature v2.2.0
[INFO] [stderr]     Checking universal-hash v0.5.1
[INFO] [stderr]    Compiling curve25519-dalek v4.1.3
[INFO] [stderr]     Checking half v2.6.0
[INFO] [stderr]     Checking opaque-debug v0.3.1
[INFO] [stderr]    Compiling num-bigint-dig v0.8.4
[INFO] [stderr]     Checking plotters-backend v0.3.7
[INFO] [stderr]     Checking byteorder v1.5.0
[INFO] [stderr]     Checking ciborium-io v0.2.2
[INFO] [stderr]     Checking spin v0.9.8
[INFO] [stderr]     Checking anstyle v1.0.10
[INFO] [stderr]     Checking foreign-types-shared v0.3.1
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking clap_lex v0.7.4
[INFO] [stderr]    Compiling darling_core v0.20.11
[INFO] [stderr]     Checking plotters-svg v0.3.7
[INFO] [stderr]     Checking clap_builder v4.5.39
[INFO] [stderr]     Checking lazy_static v1.5.0
[INFO] [stderr]     Checking ciborium-ll v0.2.2
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking spki v0.7.3
[INFO] [stderr]     Checking pkcs8 v0.10.2
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking num-iter v0.1.45
[INFO] [stderr]     Checking polyval v0.6.2
[INFO] [stderr]    Compiling curve25519-dalek v4.1.3 (https://github.com/signalapp/curve25519-dalek?tag=signal-curve25519-4.1.3#7c6d3475)
[INFO] [stderr]     Checking smallvec v1.15.1
[INFO] [stderr]    Compiling thiserror v2.0.12
[INFO] [stderr]     Checking cast v0.3.0
[INFO] [stderr]    Compiling unicode-xid v0.2.6
[INFO] [stderr]     Checking clap v4.5.39
[INFO] [stderr]     Checking tokio v1.45.1
[INFO] [stderr]     Checking walkdir v2.5.0
[INFO] [stderr]     Checking rayon v1.10.0
[INFO] [stderr]     Checking ghash v0.5.1
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling foreign-types-macros v0.2.3
[INFO] [stderr]    Compiling curve25519-dalek-derive v0.1.1
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]     Checking foreign-types v0.5.0
[INFO] [stderr]     Checking criterion-plot v0.5.0
[INFO] [stderr]    Compiling derive_more-impl v2.0.1
[INFO] [stderr]    Compiling dir-test-macros v0.4.1
[INFO] [stderr]    Compiling curve25519-dalek-derive v0.1.1 (https://github.com/signalapp/curve25519-dalek?tag=signal-curve25519-4.1.3#7c6d3475)
[INFO] [stderr]    Compiling thiserror-impl v2.0.12
[INFO] [stderr]    Compiling darling_macro v0.20.11
[INFO] [stderr]     Checking pkcs1 v0.7.5
[INFO] [stderr]    Compiling darling v0.20.11
[INFO] [stderr]    Compiling serde_with_macros v3.12.0
[INFO] [stderr]     Checking plotters v0.3.7
[INFO] [stderr]     Checking ed25519 v2.2.3
[INFO] [stderr]     Checking ctr v0.9.2
[INFO] [stderr]     Checking aes v0.8.4
[INFO] [stderr]     Checking blake2 v0.10.6
[INFO] [stderr]     Checking sha2 v0.10.9
[INFO] [stderr]     Checking aead v0.5.2
[INFO] [stderr]     Checking password-hash v0.5.0
[INFO] [stderr]     Checking is-terminal v0.4.16
[INFO] [stderr]     Checking keccak v0.1.5
[INFO] [stderr]     Checking anes v0.1.6
[INFO] [stderr]     Checking oorandom v11.1.5
[INFO] [stderr]     Checking once_cell v1.21.3
[INFO] [stderr]     Checking derive_more v2.0.1
[INFO] [stderr]     Checking ed25519-dalek v2.1.1
[INFO] [stderr]     Checking sha3 v0.10.8
[INFO] [stderr]     Checking argon2 v0.5.3
[INFO] [stderr]     Checking aes-gcm v0.10.3
[INFO] [stderr]     Checking rsa v0.9.8
[INFO] [stderr]     Checking dir-test v0.4.1
[INFO] [stderr]    Compiling derive-where v1.4.0
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]     Checking serpent v0.5.1
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]     Checking hmac v0.12.1
[INFO] [stderr]     Checking heck v0.5.0
[INFO] [stderr]     Checking base64 v0.22.1
[INFO] [stderr]     Checking const-str v0.6.2
[INFO] [stderr]     Checking hex-literal v1.0.0
[INFO] [stderr]     Checking hex v0.4.3
[INFO] [stderr]     Checking md5 v0.7.0
[INFO] [stderr]    Compiling boring-sys v4.15.0 (https://github.com/signalapp/boring?tag=signal-v4.15.0#bb42da53)
[INFO] [stderr]     Checking ciborium v0.2.2
[INFO] [stderr]     Checking serde_with v3.12.0
[INFO] [stderr]     Checking tinytemplate v1.2.1
[INFO] [stderr]     Checking criterion v0.5.1
[INFO] [stderr]     Checking boring v4.15.0 (https://github.com/signalapp/boring?tag=signal-v4.15.0#bb42da53)
[INFO] [stderr]     Checking tokio-boring v4.15.0 (https://github.com/signalapp/boring?tag=signal-v4.15.0#bb42da53)
[INFO] [stderr]     Checking zenth_crypto_service v0.0.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated associated function `argon2::password_hash::SaltString::new`: use `from_b64` instead
[INFO] [stdout]   --> src/hashs.rs:76:32
[INFO] [stdout]    |
[INFO] [stdout] 76 |         let salt = SaltString::new(salt_client_b64).expect("Invalid salt string");
[INFO] [stdout]    |                                ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `argon2::password_hash::SaltString::new`: use `from_b64` instead
[INFO] [stdout]   --> src/hashs.rs:76:32
[INFO] [stdout]    |
[INFO] [stdout] 76 |         let salt = SaltString::new(salt_client_b64).expect("Invalid salt string");
[INFO] [stdout]    |                                ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/aes_cbc.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 |     let mut cipher = Aes256::new(key);
[INFO] [stdout]    |         ----^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/aes_cbc.rs:77:9
[INFO] [stdout]    |
[INFO] [stdout] 77 |     let mut cipher = Aes256::new(key);
[INFO] [stdout]    |         ----^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/aes_cbc.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 |     let mut cipher = Aes256::new(key);
[INFO] [stdout]    |         ----^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/aes_cbc.rs:77:9
[INFO] [stdout]    |
[INFO] [stdout] 77 |     let mut cipher = Aes256::new(key);
[INFO] [stdout]    |         ----^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for the crate
[INFO] [stdout]   --> src/lib.rs:1:1
[INFO] [stdout]    |
[INFO] [stdout] 1  | / #![deny(clippy::unwrap_used)]
[INFO] [stdout] 2  | | #![warn(missing_docs)]
[INFO] [stdout] 3  | |
[INFO] [stdout] 4  | | pub mod hash;
[INFO] [stdout] ...  |
[INFO] [stdout] 20 | | pub use crate::hashs::{HasherImpl, HashSecure, base64_vecdecode, base64decode, base64encode};
[INFO] [stdout] 21 | | pub use crate::aes_cbc::{aes_256_cbc_decrypt, aes_256_cbc_encrypt, DecryptionError, EncryptionError};
[INFO] [stdout]    | |_____________________________________________________________________________________________________^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:2:9
[INFO] [stdout]    |
[INFO] [stdout] 2  | #![warn(missing_docs)]
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]  --> src/lib.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub mod hash;
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]  --> src/lib.rs:5:1
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub mod error;
[INFO] [stdout]   | ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]  --> src/lib.rs:6:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub mod hashs;
[INFO] [stdout]   | ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]  --> src/lib.rs:7:1
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub mod aes_cbc;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]  --> src/lib.rs:8:1
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub mod aes_ctr;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]  --> src/lib.rs:9:1
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub mod aes_gcm;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]   --> src/lib.rs:10:1
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub mod rsa4096;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]   --> src/lib.rs:11:1
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub mod serpent_ctr;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]   --> src/hash.rs:14:1
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub enum CryptographicMac {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/hash.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     HmacSha256(Hmac<Sha256>),
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/hash.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     HmacSha1(Hmac<Sha1>),
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/hash.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 |     pub fn new(algo: &str, key: &[u8]) -> Result<Self> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/hash.rs:32:5
[INFO] [stdout]    |
[INFO] [stdout] 32 |     pub fn update(&mut self, input: &[u8]) {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/hash.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 39 |     pub fn update_and_get(&mut self, input: &[u8]) -> &mut Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/hash.rs:44:5
[INFO] [stdout]    |
[INFO] [stdout] 44 |     pub fn finalize(&mut self) -> Vec<u8> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]   --> src/hash.rs:53:1
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub enum CryptographicHash {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/hash.rs:54:5
[INFO] [stdout]    |
[INFO] [stdout] 54 |     Sha1(Sha1),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/hash.rs:55:5
[INFO] [stdout]    |
[INFO] [stdout] 55 |     Sha256(Sha256),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/hash.rs:56:5
[INFO] [stdout]    |
[INFO] [stdout] 56 |     Sha512(Sha512),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/hash.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 60 |     pub fn new(algo: &str) -> Result<Self> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/hash.rs:69:5
[INFO] [stdout]    |
[INFO] [stdout] 69 |     pub fn update(&mut self, input: &[u8]) {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/hash.rs:77:5
[INFO] [stdout]    |
[INFO] [stdout] 77 |     pub fn finalize(&mut self) -> Vec<u8> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]  --> src/error.rs:7:1
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub enum Error {
[INFO] [stdout]   | ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a type alias
[INFO] [stdout]   --> src/error.rs:20:1
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub type Result<T> = std::result::Result<T, Error>;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a trait
[INFO] [stdout]   --> src/hashs.rs:11:1
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub trait HashSecure {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/hashs.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 |     fn sha512_fun(text: &str, rounds: usize) -> String;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/hashs.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     fn keccak_fun(text: &str, rounds: usize) -> String;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/hashs.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn md5_fun(text: &str, rounds: usize) -> String;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/hashs.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     fn crc_fun(text: &str, rounds: usize) -> String;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/hashs.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn argon2id_hash(password: &str) -> String;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/hashs.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     fn argon2id_hash_with_client_salt(password: &str, salt_client_b64: &str) -> String;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/hashs.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn argon2id_verify(password: &str, hashed: &str) -> bool;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/hashs.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct HasherImpl;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]   --> src/hashs.rs:93:1
[INFO] [stdout]    |
[INFO] [stdout] 93 | pub fn base64encode(data: &[u8]) -> String {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]   --> src/hashs.rs:97:1
[INFO] [stdout]    |
[INFO] [stdout] 97 | pub fn base64decode(encoded_message: &str) -> Result<String, String> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/hashs.rs:106:1
[INFO] [stdout]     |
[INFO] [stdout] 106 | pub fn base64_vecdecode(encoded_message: &str) -> Result<Vec<u8>, String> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]   --> src/aes_cbc.rs:17:1
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub enum EncryptionError {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/aes_cbc.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 |     BadKeyOrIv,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]   --> src/aes_cbc.rs:23:1
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub enum DecryptionError {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/aes_cbc.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     BadKeyOrIv,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/aes_cbc.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 |     BadCiphertext(&'static str),
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]   --> src/aes_cbc.rs:30:1
[INFO] [stdout]    |
[INFO] [stdout] 30 | / pub fn aes_256_cbc_encrypt(
[INFO] [stdout] 31 | |     plaintext: &[u8],
[INFO] [stdout] 32 | |     key: &[u8],
[INFO] [stdout] 33 | |     iv: &[u8],
[INFO] [stdout] 34 | | ) -> Result<Vec<u8>, EncryptionError> {
[INFO] [stdout]    | |_____________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]   --> src/aes_cbc.rs:67:1
[INFO] [stdout]    |
[INFO] [stdout] 67 | / pub fn aes_256_cbc_decrypt(
[INFO] [stdout] 68 | |     ciphertext: &[u8],
[INFO] [stdout] 69 | |     key: &[u8],
[INFO] [stdout] 70 | |     iv: &[u8],
[INFO] [stdout] 71 | | ) -> Result<Vec<u8>, DecryptionError> {
[INFO] [stdout]    | |_____________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for the crate
[INFO] [stdout]   --> src/lib.rs:1:1
[INFO] [stdout]    |
[INFO] [stdout] 1  | / #![deny(clippy::unwrap_used)]
[INFO] [stdout] 2  | | #![warn(missing_docs)]
[INFO] [stdout] 3  | |
[INFO] [stdout] 4  | | pub mod hash;
[INFO] [stdout] ...  |
[INFO] [stdout] 20 | | pub use crate::hashs::{HasherImpl, HashSecure, base64_vecdecode, base64decode, base64encode};
[INFO] [stdout] 21 | | pub use crate::aes_cbc::{aes_256_cbc_decrypt, aes_256_cbc_encrypt, DecryptionError, EncryptionError};
[INFO] [stdout]    | |_____________________________________________________________________________________________________^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:2:9
[INFO] [stdout]    |
[INFO] [stdout] 2  | #![warn(missing_docs)]
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]  --> src/lib.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub mod hash;
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]  --> src/lib.rs:5:1
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub mod error;
[INFO] [stdout]   | ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]  --> src/lib.rs:6:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub mod hashs;
[INFO] [stdout]   | ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]  --> src/lib.rs:7:1
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub mod aes_cbc;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]  --> src/lib.rs:8:1
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub mod aes_ctr;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]  --> src/lib.rs:9:1
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub mod aes_gcm;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]   --> src/lib.rs:10:1
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub mod rsa4096;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]   --> src/lib.rs:11:1
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub mod serpent_ctr;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]   --> src/hash.rs:14:1
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub enum CryptographicMac {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/hash.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     HmacSha256(Hmac<Sha256>),
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/hash.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     HmacSha1(Hmac<Sha1>),
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/hash.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 |     pub fn new(algo: &str, key: &[u8]) -> Result<Self> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/hash.rs:32:5
[INFO] [stdout]    |
[INFO] [stdout] 32 |     pub fn update(&mut self, input: &[u8]) {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/hash.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 39 |     pub fn update_and_get(&mut self, input: &[u8]) -> &mut Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/hash.rs:44:5
[INFO] [stdout]    |
[INFO] [stdout] 44 |     pub fn finalize(&mut self) -> Vec<u8> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]   --> src/hash.rs:53:1
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub enum CryptographicHash {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/hash.rs:54:5
[INFO] [stdout]    |
[INFO] [stdout] 54 |     Sha1(Sha1),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/hash.rs:55:5
[INFO] [stdout]    |
[INFO] [stdout] 55 |     Sha256(Sha256),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/hash.rs:56:5
[INFO] [stdout]    |
[INFO] [stdout] 56 |     Sha512(Sha512),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/hash.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 60 |     pub fn new(algo: &str) -> Result<Self> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/hash.rs:69:5
[INFO] [stdout]    |
[INFO] [stdout] 69 |     pub fn update(&mut self, input: &[u8]) {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/hash.rs:77:5
[INFO] [stdout]    |
[INFO] [stdout] 77 |     pub fn finalize(&mut self) -> Vec<u8> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]  --> src/error.rs:7:1
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub enum Error {
[INFO] [stdout]   | ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a type alias
[INFO] [stdout]   --> src/error.rs:20:1
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub type Result<T> = std::result::Result<T, Error>;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a trait
[INFO] [stdout]   --> src/hashs.rs:11:1
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub trait HashSecure {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/hashs.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 |     fn sha512_fun(text: &str, rounds: usize) -> String;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/hashs.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     fn keccak_fun(text: &str, rounds: usize) -> String;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated constant
[INFO] [stdout]   --> src/aes_ctr.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     pub const NONCE_SIZE: usize = <Aes256 as aes::cipher::BlockSizeUser>::BlockSize::USIZE - 4;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/aes_ctr.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub fn new(aes256: Aes256, nonce: &[u8], init_ctr: u32) -> Result<Self> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/aes_ctr.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 35 |     pub fn from_key(key: &[u8], nonce: &[u8], init_ctr: u32) -> Result<Self> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/aes_ctr.rs:43:5
[INFO] [stdout]    |
[INFO] [stdout] 43 |     pub fn process(&mut self, buf: &mut [u8]) {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a constant
[INFO] [stdout]   --> src/aes_gcm.rs:15:1
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub const TAG_SIZE: usize = 16;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a constant
[INFO] [stdout]   --> src/aes_gcm.rs:16:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub const NONCE_SIZE: usize = 12;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> src/aes_gcm.rs:133:1
[INFO] [stdout]     |
[INFO] [stdout] 133 | pub struct Aes256GcmEncryption {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated constant
[INFO] [stdout]    --> src/aes_gcm.rs:139:5
[INFO] [stdout]     |
[INFO] [stdout] 139 |     pub const TAG_SIZE: usize = TAG_SIZE;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated constant
[INFO] [stdout]    --> src/aes_gcm.rs:140:5
[INFO] [stdout]     |
[INFO] [stdout] 140 |     pub const NONCE_SIZE: usize = NONCE_SIZE;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> src/aes_gcm.rs:142:5
[INFO] [stdout]     |
[INFO] [stdout] 142 |     pub fn new(key: &[u8], nonce: &[u8], associated_data: &[u8]) -> Result<Self> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/aes_gcm.rs:147:5
[INFO] [stdout]     |
[INFO] [stdout] 147 |     pub fn encrypt(&mut self, buf: &mut [u8]) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/aes_gcm.rs:152:5
[INFO] [stdout]     |
[INFO] [stdout] 152 |     pub fn compute_tag(self) -> [u8; TAG_SIZE] {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> src/aes_gcm.rs:157:1
[INFO] [stdout]     |
[INFO] [stdout] 157 | pub struct Aes256GcmDecryption {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated constant
[INFO] [stdout]    --> src/aes_gcm.rs:163:5
[INFO] [stdout]     |
[INFO] [stdout] 163 |     pub const TAG_SIZE: usize = TAG_SIZE;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated constant
[INFO] [stdout]    --> src/aes_gcm.rs:164:5
[INFO] [stdout]     |
[INFO] [stdout] 164 |     pub const NONCE_SIZE: usize = NONCE_SIZE;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> src/aes_gcm.rs:166:5
[INFO] [stdout]     |
[INFO] [stdout] 166 |     pub fn new(key: &[u8], nonce: &[u8], associated_data: &[u8]) -> Result<Self> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/aes_gcm.rs:171:5
[INFO] [stdout]     |
[INFO] [stdout] 171 |     pub fn decrypt(&mut self, buf: &mut [u8]) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/aes_gcm.rs:176:5
[INFO] [stdout]     |
[INFO] [stdout] 176 |     pub fn verify_tag(self, tag: &[u8]) -> Result<()> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/rsa4096.rs:9:1
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct Rsa4096 {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/serpent_ctr.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     InvalidKeySize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/serpent_ctr.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     InvalidNonceSize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated constant
[INFO] [stdout]   --> src/serpent_ctr.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub const NONCE_SIZE: usize = <Serpent as BlockSizeUser>::BlockSize::USIZE - 4;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/serpent_ctr.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 29 |     pub fn new(cipher: Serpent, nonce: &[u8], init_ctr: u32) -> Result<Self> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/serpent_ctr.rs:47:5
[INFO] [stdout]    |
[INFO] [stdout] 47 |     pub fn from_key(key: &[u8], nonce: &[u8], init_ctr: u32) -> Result<Self> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/serpent_ctr.rs:52:5
[INFO] [stdout]    |
[INFO] [stdout] 52 |     pub fn process(&mut self, buf: &mut [u8]) {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/hashs.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn md5_fun(text: &str, rounds: usize) -> String;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/hashs.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     fn crc_fun(text: &str, rounds: usize) -> String;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/hashs.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn argon2id_hash(password: &str) -> String;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/hashs.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     fn argon2id_hash_with_client_salt(password: &str, salt_client_b64: &str) -> String;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/hashs.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn argon2id_verify(password: &str, hashed: &str) -> bool;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/hashs.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct HasherImpl;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]   --> src/hashs.rs:93:1
[INFO] [stdout]    |
[INFO] [stdout] 93 | pub fn base64encode(data: &[u8]) -> String {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]   --> src/hashs.rs:97:1
[INFO] [stdout]    |
[INFO] [stdout] 97 | pub fn base64decode(encoded_message: &str) -> Result<String, String> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/hashs.rs:106:1
[INFO] [stdout]     |
[INFO] [stdout] 106 | pub fn base64_vecdecode(encoded_message: &str) -> Result<Vec<u8>, String> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]   --> src/aes_cbc.rs:17:1
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub enum EncryptionError {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/aes_cbc.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 |     BadKeyOrIv,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]   --> src/aes_cbc.rs:23:1
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub enum DecryptionError {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/aes_cbc.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     BadKeyOrIv,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/aes_cbc.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 |     BadCiphertext(&'static str),
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]   --> src/aes_cbc.rs:30:1
[INFO] [stdout]    |
[INFO] [stdout] 30 | / pub fn aes_256_cbc_encrypt(
[INFO] [stdout] 31 | |     plaintext: &[u8],
[INFO] [stdout] 32 | |     key: &[u8],
[INFO] [stdout] 33 | |     iv: &[u8],
[INFO] [stdout] 34 | | ) -> Result<Vec<u8>, EncryptionError> {
[INFO] [stdout]    | |_____________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]   --> src/aes_cbc.rs:67:1
[INFO] [stdout]    |
[INFO] [stdout] 67 | / pub fn aes_256_cbc_decrypt(
[INFO] [stdout] 68 | |     ciphertext: &[u8],
[INFO] [stdout] 69 | |     key: &[u8],
[INFO] [stdout] 70 | |     iv: &[u8],
[INFO] [stdout] 71 | | ) -> Result<Vec<u8>, DecryptionError> {
[INFO] [stdout]    | |_____________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated constant
[INFO] [stdout]   --> src/aes_ctr.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     pub const NONCE_SIZE: usize = <Aes256 as aes::cipher::BlockSizeUser>::BlockSize::USIZE - 4;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/aes_ctr.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub fn new(aes256: Aes256, nonce: &[u8], init_ctr: u32) -> Result<Self> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/aes_ctr.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 35 |     pub fn from_key(key: &[u8], nonce: &[u8], init_ctr: u32) -> Result<Self> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/aes_ctr.rs:43:5
[INFO] [stdout]    |
[INFO] [stdout] 43 |     pub fn process(&mut self, buf: &mut [u8]) {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a constant
[INFO] [stdout]   --> src/aes_gcm.rs:15:1
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub const TAG_SIZE: usize = 16;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a constant
[INFO] [stdout]   --> src/aes_gcm.rs:16:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub const NONCE_SIZE: usize = 12;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> src/aes_gcm.rs:133:1
[INFO] [stdout]     |
[INFO] [stdout] 133 | pub struct Aes256GcmEncryption {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated constant
[INFO] [stdout]    --> src/aes_gcm.rs:139:5
[INFO] [stdout]     |
[INFO] [stdout] 139 |     pub const TAG_SIZE: usize = TAG_SIZE;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated constant
[INFO] [stdout]    --> src/aes_gcm.rs:140:5
[INFO] [stdout]     |
[INFO] [stdout] 140 |     pub const NONCE_SIZE: usize = NONCE_SIZE;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> src/aes_gcm.rs:142:5
[INFO] [stdout]     |
[INFO] [stdout] 142 |     pub fn new(key: &[u8], nonce: &[u8], associated_data: &[u8]) -> Result<Self> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/aes_gcm.rs:147:5
[INFO] [stdout]     |
[INFO] [stdout] 147 |     pub fn encrypt(&mut self, buf: &mut [u8]) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/aes_gcm.rs:152:5
[INFO] [stdout]     |
[INFO] [stdout] 152 |     pub fn compute_tag(self) -> [u8; TAG_SIZE] {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]    --> src/aes_gcm.rs:157:1
[INFO] [stdout]     |
[INFO] [stdout] 157 | pub struct Aes256GcmDecryption {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated constant
[INFO] [stdout]    --> src/aes_gcm.rs:163:5
[INFO] [stdout]     |
[INFO] [stdout] 163 |     pub const TAG_SIZE: usize = TAG_SIZE;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated constant
[INFO] [stdout]    --> src/aes_gcm.rs:164:5
[INFO] [stdout]     |
[INFO] [stdout] 164 |     pub const NONCE_SIZE: usize = NONCE_SIZE;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]    --> src/aes_gcm.rs:166:5
[INFO] [stdout]     |
[INFO] [stdout] 166 |     pub fn new(key: &[u8], nonce: &[u8], associated_data: &[u8]) -> Result<Self> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/aes_gcm.rs:171:5
[INFO] [stdout]     |
[INFO] [stdout] 171 |     pub fn decrypt(&mut self, buf: &mut [u8]) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/aes_gcm.rs:176:5
[INFO] [stdout]     |
[INFO] [stdout] 176 |     pub fn verify_tag(self, tag: &[u8]) -> Result<()> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/rsa4096.rs:9:1
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct Rsa4096 {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/serpent_ctr.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     InvalidKeySize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/serpent_ctr.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     InvalidNonceSize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated constant
[INFO] [stdout]   --> src/serpent_ctr.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub const NONCE_SIZE: usize = <Serpent as BlockSizeUser>::BlockSize::USIZE - 4;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/serpent_ctr.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 29 |     pub fn new(cipher: Serpent, nonce: &[u8], init_ctr: u32) -> Result<Self> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/serpent_ctr.rs:47:5
[INFO] [stdout]    |
[INFO] [stdout] 47 |     pub fn from_key(key: &[u8], nonce: &[u8], init_ctr: u32) -> Result<Self> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/serpent_ctr.rs:52:5
[INFO] [stdout]    |
[INFO] [stdout] 52 |     pub fn process(&mut self, buf: &mut [u8]) {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rand::rngs::OsRng`
[INFO] [stdout]  --> tests/test_serpent.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use rand::rngs::OsRng;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `zenth_crypto_service::hash::*`
[INFO] [stdout]  --> tests/test_hash.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use zenth_crypto_service::hash::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `zenth_crypto_service::hashs::base64encode`
[INFO] [stdout]  --> tests/test_hash.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use zenth_crypto_service::hashs::base64encode;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `zenth_crypto_service::hashs::*`
[INFO] [stdout]  --> tests/test_hash.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use zenth_crypto_service::hashs::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `signal_crypto`
[INFO] [stdout]   --> benches/aes_gcm.rs:23:35
[INFO] [stdout]    |
[INFO] [stdout] 23 |                 let mut gcm_enc = signal_crypto::Aes256GcmEncryption::new(&key, &nonce, &aad)
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^ use of unresolved module or unlinked crate `signal_crypto`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `signal_crypto`, use `cargo add signal_crypto` to add it to your `Cargo.toml`
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 6  + use zenth_crypto_service::Aes256GcmEncryption;
[INFO] [stdout]    |
[INFO] [stdout] help: if you import `Aes256GcmEncryption`, refer to it directly
[INFO] [stdout]    |
[INFO] [stdout] 23 -                 let mut gcm_enc = signal_crypto::Aes256GcmEncryption::new(&key, &nonce, &aad)
[INFO] [stdout] 23 +                 let mut gcm_enc = Aes256GcmEncryption::new(&key, &nonce, &aad)
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `signal_crypto`
[INFO] [stdout]   --> benches/aes_gcm.rs:31:35
[INFO] [stdout]    |
[INFO] [stdout] 31 |                 let mut gcm_dec = signal_crypto::Aes256GcmDecryption::new(&key, &nonce, &aad)
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^ use of unresolved module or unlinked crate `signal_crypto`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `signal_crypto`, use `cargo add signal_crypto` to add it to your `Cargo.toml`
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 6  + use zenth_crypto_service::Aes256GcmDecryption;
[INFO] [stdout]    |
[INFO] [stdout] help: if you import `Aes256GcmDecryption`, refer to it directly
[INFO] [stdout]    |
[INFO] [stdout] 31 -                 let mut gcm_dec = signal_crypto::Aes256GcmDecryption::new(&key, &nonce, &aad)
[INFO] [stdout] 31 +                 let mut gcm_dec = Aes256GcmDecryption::new(&key, &nonce, &aad)
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0433`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `zenth_crypto_service` (bench "aes_gcm") due to 2 previous errors
[INFO] running `Command { std: "docker" "inspect" "2659792370a0b8202af6f3c78f36ef8669878d7f210a2b7394b4539f97041fb7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2659792370a0b8202af6f3c78f36ef8669878d7f210a2b7394b4539f97041fb7", kill_on_drop: false }`
[INFO] [stdout] 2659792370a0b8202af6f3c78f36ef8669878d7f210a2b7394b4539f97041fb7
