[INFO] fetching crate microsalt 0.2.21...
[INFO] testing microsalt-0.2.21 against master#0d162b25edd5bf0dba9a22e83b614f1113e90474 for pr-150681
[INFO] extracting crate microsalt 0.2.21 into /workspace/builds/worker-6-tc1/source
[INFO] started tweaking crates.io crate microsalt 0.2.21
[INFO] finished tweaking crates.io crate microsalt 0.2.21
[INFO] tweaked toml for crates.io crate microsalt 0.2.21 written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate microsalt 0.2.21 on toolchain 0d162b25edd5bf0dba9a22e83b614f1113e90474
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 19 packages to latest compatible versions
[INFO] [stderr]       Adding index-fixed v0.0.2 (available: v0.3.1)
[INFO] [stderr]       Adding memsec v0.3.4 (available: v0.7.0)
[INFO] [stderr]       Adding rand v0.3.23 (available: v0.9.2)
[INFO] [stderr]       Adding serde v0.9.15 (available: v1.0.228)
[INFO] [stderr]       Adding unwrap v1.1.0 (available: v1.2.1)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded unwrap v1.1.0
[INFO] [stderr]   Downloaded memsec v0.3.4
[INFO] [stderr]   Downloaded index-fixed v0.0.2
[INFO] [stderr]   Downloaded mach_o_sys v0.1.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 2c0435b41377900cf4e86370fd818e85217340b82bd3e5f8acf31132d4e983a2
[INFO] running `Command { std: "docker" "start" "-a" "2c0435b41377900cf4e86370fd818e85217340b82bd3e5f8acf31132d4e983a2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2c0435b41377900cf4e86370fd818e85217340b82bd3e5f8acf31132d4e983a2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2c0435b41377900cf4e86370fd818e85217340b82bd3e5f8acf31132d4e983a2", kill_on_drop: false }`
[INFO] [stdout] 2c0435b41377900cf4e86370fd818e85217340b82bd3e5f8acf31132d4e983a2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 2d6878bb45fa80bd2570311a5feafeb3a1a02c226a86baa0453c3b308b47ded7
[INFO] running `Command { std: "docker" "start" "-a" "2d6878bb45fa80bd2570311a5feafeb3a1a02c226a86baa0453c3b308b47ded7", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]    Compiling rand v0.4.6
[INFO] [stderr]    Compiling memsec v0.3.4
[INFO] [stderr]    Compiling rustc-serialize v0.3.25
[INFO] [stderr]    Compiling unwrap v1.1.0
[INFO] [stderr]    Compiling serde v0.9.15
[INFO] [stderr]    Compiling index-fixed v0.0.2
[INFO] [stderr]    Compiling rand v0.3.23
[INFO] [stderr]    Compiling microsalt v0.2.21 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]   --> src/lib.rs:23:1
[INFO] [stdout]    |
[INFO] [stdout] 23 | #[macro_use]
[INFO] [stdout]    | ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/hash/mod.rs:12:1
[INFO] [stdout]    |
[INFO] [stdout] 12 | /// A hash
[INFO] [stdout]    | ^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout]    = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Hash` and `Hasher`
[INFO] [stdout]  --> src/hash/mod.rs:8:17
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::hash::{Hash, Hasher};
[INFO] [stdout]   |                 ^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/newtype_macros.rs:66:50
[INFO] [stdout]    |
[INFO] [stdout] 66 |   ...                   if let Some(value) = try!(visitor.visit()) {
[INFO] [stdout]    |                                              ^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/hash/mod.rs:16:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | / new_type! {
[INFO] [stdout] 17 | |     /// Digest-structure
[INFO] [stdout] 18 | |     public HashType(LENGTH);
[INFO] [stdout] 19 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `newtype_traits` which comes from the expansion of the macro `new_type` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cmp`
[INFO] [stdout]    --> src/shared.rs:202:11
[INFO] [stdout]     |
[INFO] [stdout] 202 | use std::{cmp, mem};
[INFO] [stdout]     |           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/sign/mod.rs:29:1
[INFO] [stdout]    |
[INFO] [stdout] 29 | / ///A Pubic key for crypto box
[INFO] [stdout] 30 | | //pub type PublicKey = [u8; PUBLIC_KEY_BYTES];
[INFO] [stdout] 31 | | ///A secret key for crypto box
[INFO] [stdout]    | |_-----------------------------^
[INFO] [stdout]    |   |
[INFO] [stdout]    |   rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `shared`
[INFO] [stdout]  --> src/sign/mod.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use shared;
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/newtype_macros.rs:66:50
[INFO] [stdout]    |
[INFO] [stdout] 66 |   ...                   if let Some(value) = try!(visitor.visit()) {
[INFO] [stdout]    |                                              ^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/sign/mod.rs:34:1
[INFO] [stdout]    |
[INFO] [stdout] 34 | / new_type! {
[INFO] [stdout] 35 | |     /// `SecretKey` for signatures
[INFO] [stdout] 36 | |     ///
[INFO] [stdout] 37 | |     /// When a `SecretKey` goes out of scope its contents
[INFO] [stdout] 38 | |     /// will be zeroed out
[INFO] [stdout] 39 | |     secret SecretKey(SECRET_KEY_BYTES);
[INFO] [stdout] 40 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `newtype_traits` which comes from the expansion of the macro `new_type` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/newtype_macros.rs:66:50
[INFO] [stdout]    |
[INFO] [stdout] 66 |   ...                   if let Some(value) = try!(visitor.visit()) {
[INFO] [stdout]    |                                              ^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/sign/mod.rs:42:1
[INFO] [stdout]    |
[INFO] [stdout] 42 | / new_type! {
[INFO] [stdout] 43 | |     /// `PublicKey` for signatures
[INFO] [stdout] 44 | |     public PublicKey(PUBLIC_KEY_BYTES);
[INFO] [stdout] 45 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `newtype_traits` which comes from the expansion of the macro `new_type` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/newtype_macros.rs:66:50
[INFO] [stdout]    |
[INFO] [stdout] 66 |   ...                   if let Some(value) = try!(visitor.visit()) {
[INFO] [stdout]    |                                              ^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/sign/mod.rs:47:1
[INFO] [stdout]    |
[INFO] [stdout] 47 | / new_type! {
[INFO] [stdout] 48 | |     /// Detached signature
[INFO] [stdout] 49 | |     public Signature(SIGNATURE_LENGTH);
[INFO] [stdout] 50 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `newtype_traits` which comes from the expansion of the macro `new_type` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `shared`
[INFO] [stdout]   --> src/secretbox/mod.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 35 | use shared;
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `shared`
[INFO] [stdout]  --> src/boxy/mod.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use shared;
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/hash/sha512.rs:137:9
[INFO] [stdout]     |
[INFO] [stdout] 137 |     let mut x = &mut x[..new_len];
[INFO] [stdout]     |         ----^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/sign/ed25519.rs:396:16
[INFO] [stdout]     |
[INFO] [stdout] 396 |     let (init, mut rest) = r.split_at_mut(3);
[INFO] [stdout]     |                ----^^^^
[INFO] [stdout]     |                |
[INFO] [stdout]     |                help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `random_data_test_helper` is never used
[INFO] [stdout]    --> src/shared.rs:150:8
[INFO] [stdout]     |
[INFO] [stdout] 150 | pub fn random_data_test_helper(len: usize) -> Vec<u8> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SIGN_BYTES` is never used
[INFO] [stdout]   --> src/sign/ed25519.rs:20:11
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub const SIGN_BYTES: usize = 64;
[INFO] [stdout]    |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/secretbox/mod.rs:100:5
[INFO] [stdout]     |
[INFO] [stdout] 100 |     xsalsa20poly1305::secretbox(&mut cipher, &m, &nonce, &key.0);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 100 |     let _ = xsalsa20poly1305::secretbox(&mut cipher, &m, &nonce, &key.0);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/boxy/mod.rs:71:9
[INFO] [stdout]    |
[INFO] [stdout] 71 |         curve25519xsalsa20poly1305::box_(&mut cipher, &m, &nonce, &pk.0, &sk.0);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 71 |         let _ = curve25519xsalsa20poly1305::box_(&mut cipher, &m, &nonce, &pk.0, &sk.0);
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 5.61s
[INFO] running `Command { std: "docker" "inspect" "2d6878bb45fa80bd2570311a5feafeb3a1a02c226a86baa0453c3b308b47ded7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2d6878bb45fa80bd2570311a5feafeb3a1a02c226a86baa0453c3b308b47ded7", kill_on_drop: false }`
[INFO] [stdout] 2d6878bb45fa80bd2570311a5feafeb3a1a02c226a86baa0453c3b308b47ded7
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] fa3a00f0318d81cd626645a146ab47981eac122836bc75e32255047102549ee2
[INFO] running `Command { std: "docker" "start" "-a" "fa3a00f0318d81cd626645a146ab47981eac122836bc75e32255047102549ee2", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]   --> src/lib.rs:23:1
[INFO] [stdout]    |
[INFO] [stdout] 23 | #[macro_use]
[INFO] [stdout]    | ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/hash/mod.rs:12:1
[INFO] [stdout]    |
[INFO] [stdout] 12 | /// A hash
[INFO] [stdout]    | ^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout]    = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Hash` and `Hasher`
[INFO] [stdout]  --> src/hash/mod.rs:8:17
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::hash::{Hash, Hasher};
[INFO] [stdout]   |                 ^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/newtype_macros.rs:66:50
[INFO] [stdout]    |
[INFO] [stdout] 66 |   ...                   if let Some(value) = try!(visitor.visit()) {
[INFO] [stdout]    |                                              ^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/hash/mod.rs:16:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | / new_type! {
[INFO] [stdout] 17 | |     /// Digest-structure
[INFO] [stdout] 18 | |     public HashType(LENGTH);
[INFO] [stdout] 19 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `newtype_traits` which comes from the expansion of the macro `new_type` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cmp`
[INFO] [stdout]    --> src/shared.rs:202:11
[INFO] [stdout]     |
[INFO] [stdout] 202 | use std::{cmp, mem};
[INFO] [stdout]     |           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/sign/mod.rs:29:1
[INFO] [stdout]    |
[INFO] [stdout] 29 | / ///A Pubic key for crypto box
[INFO] [stdout] 30 | | //pub type PublicKey = [u8; PUBLIC_KEY_BYTES];
[INFO] [stdout] 31 | | ///A secret key for crypto box
[INFO] [stdout]    | |_-----------------------------^
[INFO] [stdout]    |   |
[INFO] [stdout]    |   rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `shared`
[INFO] [stdout]  --> src/sign/mod.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use shared;
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/newtype_macros.rs:66:50
[INFO] [stdout]    |
[INFO] [stdout] 66 |   ...                   if let Some(value) = try!(visitor.visit()) {
[INFO] [stdout]    |                                              ^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/sign/mod.rs:34:1
[INFO] [stdout]    |
[INFO] [stdout] 34 | / new_type! {
[INFO] [stdout] 35 | |     /// `SecretKey` for signatures
[INFO] [stdout] 36 | |     ///
[INFO] [stdout] 37 | |     /// When a `SecretKey` goes out of scope its contents
[INFO] [stdout] 38 | |     /// will be zeroed out
[INFO] [stdout] 39 | |     secret SecretKey(SECRET_KEY_BYTES);
[INFO] [stdout] 40 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `newtype_traits` which comes from the expansion of the macro `new_type` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/newtype_macros.rs:66:50
[INFO] [stdout]    |
[INFO] [stdout] 66 |   ...                   if let Some(value) = try!(visitor.visit()) {
[INFO] [stdout]    |                                              ^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/sign/mod.rs:42:1
[INFO] [stdout]    |
[INFO] [stdout] 42 | / new_type! {
[INFO] [stdout] 43 | |     /// `PublicKey` for signatures
[INFO] [stdout] 44 | |     public PublicKey(PUBLIC_KEY_BYTES);
[INFO] [stdout] 45 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `newtype_traits` which comes from the expansion of the macro `new_type` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/newtype_macros.rs:66:50
[INFO] [stdout]    |
[INFO] [stdout] 66 |   ...                   if let Some(value) = try!(visitor.visit()) {
[INFO] [stdout]    |                                              ^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/sign/mod.rs:47:1
[INFO] [stdout]    |
[INFO] [stdout] 47 | / new_type! {
[INFO] [stdout] 48 | |     /// Detached signature
[INFO] [stdout] 49 | |     public Signature(SIGNATURE_LENGTH);
[INFO] [stdout] 50 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `newtype_traits` which comes from the expansion of the macro `new_type` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `shared`
[INFO] [stdout]   --> src/secretbox/mod.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 35 | use shared;
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `shared`
[INFO] [stdout]  --> src/boxy/mod.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use shared;
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling microsalt v0.2.21 (/opt/rustwide/workdir)
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/hash/sha512.rs:137:9
[INFO] [stdout]     |
[INFO] [stdout] 137 |     let mut x = &mut x[..new_len];
[INFO] [stdout]     |         ----^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/sign/ed25519.rs:396:16
[INFO] [stdout]     |
[INFO] [stdout] 396 |     let (init, mut rest) = r.split_at_mut(3);
[INFO] [stdout]     |                ----^^^^
[INFO] [stdout]     |                |
[INFO] [stdout]     |                help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `random_data_test_helper` is never used
[INFO] [stdout]    --> src/shared.rs:150:8
[INFO] [stdout]     |
[INFO] [stdout] 150 | pub fn random_data_test_helper(len: usize) -> Vec<u8> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SIGN_BYTES` is never used
[INFO] [stdout]   --> src/sign/ed25519.rs:20:11
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub const SIGN_BYTES: usize = 64;
[INFO] [stdout]    |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/secretbox/mod.rs:100:5
[INFO] [stdout]     |
[INFO] [stdout] 100 |     xsalsa20poly1305::secretbox(&mut cipher, &m, &nonce, &key.0);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 100 |     let _ = xsalsa20poly1305::secretbox(&mut cipher, &m, &nonce, &key.0);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/boxy/mod.rs:71:9
[INFO] [stdout]    |
[INFO] [stdout] 71 |         curve25519xsalsa20poly1305::box_(&mut cipher, &m, &nonce, &pk.0, &sk.0);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 71 |         let _ = curve25519xsalsa20poly1305::box_(&mut cipher, &m, &nonce, &pk.0, &sk.0);
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/hash/mod.rs:12:1
[INFO] [stdout]    |
[INFO] [stdout] 12 | /// A hash
[INFO] [stdout]    | ^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout]    = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Hash` and `Hasher`
[INFO] [stdout]  --> src/hash/mod.rs:8:17
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::hash::{Hash, Hasher};
[INFO] [stdout]   |                 ^^^^  ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/newtype_macros.rs:66:50
[INFO] [stdout]    |
[INFO] [stdout] 66 |   ...                   if let Some(value) = try!(visitor.visit()) {
[INFO] [stdout]    |                                              ^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/hash/mod.rs:16:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | / new_type! {
[INFO] [stdout] 17 | |     /// Digest-structure
[INFO] [stdout] 18 | |     public HashType(LENGTH);
[INFO] [stdout] 19 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `newtype_traits` which comes from the expansion of the macro `new_type` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cmp`
[INFO] [stdout]    --> src/shared.rs:202:11
[INFO] [stdout]     |
[INFO] [stdout] 202 | use std::{cmp, mem};
[INFO] [stdout]     |           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/sign/mod.rs:29:1
[INFO] [stdout]    |
[INFO] [stdout] 29 | / ///A Pubic key for crypto box
[INFO] [stdout] 30 | | //pub type PublicKey = [u8; PUBLIC_KEY_BYTES];
[INFO] [stdout] 31 | | ///A secret key for crypto box
[INFO] [stdout]    | |_-----------------------------^
[INFO] [stdout]    |   |
[INFO] [stdout]    |   rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/newtype_macros.rs:66:50
[INFO] [stdout]    |
[INFO] [stdout] 66 |   ...                   if let Some(value) = try!(visitor.visit()) {
[INFO] [stdout]    |                                              ^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/sign/mod.rs:34:1
[INFO] [stdout]    |
[INFO] [stdout] 34 | / new_type! {
[INFO] [stdout] 35 | |     /// `SecretKey` for signatures
[INFO] [stdout] 36 | |     ///
[INFO] [stdout] 37 | |     /// When a `SecretKey` goes out of scope its contents
[INFO] [stdout] 38 | |     /// will be zeroed out
[INFO] [stdout] 39 | |     secret SecretKey(SECRET_KEY_BYTES);
[INFO] [stdout] 40 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `newtype_traits` which comes from the expansion of the macro `new_type` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/newtype_macros.rs:66:50
[INFO] [stdout]    |
[INFO] [stdout] 66 |   ...                   if let Some(value) = try!(visitor.visit()) {
[INFO] [stdout]    |                                              ^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/sign/mod.rs:42:1
[INFO] [stdout]    |
[INFO] [stdout] 42 | / new_type! {
[INFO] [stdout] 43 | |     /// `PublicKey` for signatures
[INFO] [stdout] 44 | |     public PublicKey(PUBLIC_KEY_BYTES);
[INFO] [stdout] 45 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `newtype_traits` which comes from the expansion of the macro `new_type` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/newtype_macros.rs:66:50
[INFO] [stdout]    |
[INFO] [stdout] 66 |   ...                   if let Some(value) = try!(visitor.visit()) {
[INFO] [stdout]    |                                              ^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/sign/mod.rs:47:1
[INFO] [stdout]    |
[INFO] [stdout] 47 | / new_type! {
[INFO] [stdout] 48 | |     /// Detached signature
[INFO] [stdout] 49 | |     public Signature(SIGNATURE_LENGTH);
[INFO] [stdout] 50 | | }
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `newtype_traits` which comes from the expansion of the macro `new_type` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `shared`
[INFO] [stdout]  --> src/boxy/mod.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use shared;
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/hash/sha512.rs:137:9
[INFO] [stdout]     |
[INFO] [stdout] 137 |     let mut x = &mut x[..new_len];
[INFO] [stdout]     |         ----^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/sign/ed25519.rs:396:16
[INFO] [stdout]     |
[INFO] [stdout] 396 |     let (init, mut rest) = r.split_at_mut(3);
[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/sign/mod.rs:261:13
[INFO] [stdout]     |
[INFO] [stdout] 261 |         let mut sig = key.sign(&message);
[INFO] [stdout]     |             ----^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SIGN_BYTES` is never used
[INFO] [stdout]   --> src/sign/ed25519.rs:20:11
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub const SIGN_BYTES: usize = 64;
[INFO] [stdout]    |           ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/secretbox/mod.rs:100:5
[INFO] [stdout]     |
[INFO] [stdout] 100 |     xsalsa20poly1305::secretbox(&mut cipher, &m, &nonce, &key.0);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 100 |     let _ = xsalsa20poly1305::secretbox(&mut cipher, &m, &nonce, &key.0);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/boxy/mod.rs:71:9
[INFO] [stdout]    |
[INFO] [stdout] 71 |         curve25519xsalsa20poly1305::box_(&mut cipher, &m, &nonce, &pk.0, &sk.0);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 71 |         let _ = curve25519xsalsa20poly1305::box_(&mut cipher, &m, &nonce, &pk.0, &sk.0);
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.18s
[INFO] running `Command { std: "docker" "inspect" "fa3a00f0318d81cd626645a146ab47981eac122836bc75e32255047102549ee2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fa3a00f0318d81cd626645a146ab47981eac122836bc75e32255047102549ee2", kill_on_drop: false }`
[INFO] [stdout] fa3a00f0318d81cd626645a146ab47981eac122836bc75e32255047102549ee2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 797b8dbb9398d65617b7bbfede7e8df88f2fed279567d022860851b91793c92c
[INFO] running `Command { std: "docker" "start" "-a" "797b8dbb9398d65617b7bbfede7e8df88f2fed279567d022860851b91793c92c", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr] warning: unused `#[macro_use]` import
[INFO] [stderr]   --> src/lib.rs:23:1
[INFO] [stderr]    |
[INFO] [stderr] 23 | #[macro_use]
[INFO] [stderr]    | ^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused doc comment
[INFO] [stderr]   --> src/hash/mod.rs:12:1
[INFO] [stderr]    |
[INFO] [stderr] 12 | /// A hash
[INFO] [stderr]    | ^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stderr]    |
[INFO] [stderr]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stderr]    = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Hash` and `Hasher`
[INFO] [stderr]  --> src/hash/mod.rs:8:17
[INFO] [stderr]   |
[INFO] [stderr] 8 | use std::hash::{Hash, Hasher};
[INFO] [stderr]   |                 ^^^^  ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/newtype_macros.rs:66:50
[INFO] [stderr]    |
[INFO] [stderr] 66 |   ...                   if let Some(value) = try!(visitor.visit()) {
[INFO] [stderr]    |                                              ^^^
[INFO] [stderr]    |
[INFO] [stderr]   ::: src/hash/mod.rs:16:1
[INFO] [stderr]    |
[INFO] [stderr] 16 | / new_type! {
[INFO] [stderr] 17 | |     /// Digest-structure
[INFO] [stderr] 18 | |     public HashType(LENGTH);
[INFO] [stderr] 19 | | }
[INFO] [stderr]    | |_- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr]    = note: this warning originates in the macro `newtype_traits` which comes from the expansion of the macro `new_type` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `cmp`
[INFO] [stderr]    --> src/shared.rs:202:11
[INFO] [stderr]     |
[INFO] [stderr] 202 | use std::{cmp, mem};
[INFO] [stderr]     |           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused doc comment
[INFO] [stderr]   --> src/sign/mod.rs:29:1
[INFO] [stderr]    |
[INFO] [stderr] 29 | / ///A Pubic key for crypto box
[INFO] [stderr] 30 | | //pub type PublicKey = [u8; PUBLIC_KEY_BYTES];
[INFO] [stderr] 31 | | ///A secret key for crypto box
[INFO] [stderr]    | |_-----------------------------^
[INFO] [stderr]    |   |
[INFO] [stderr]    |   rustdoc does not generate documentation for macro invocations
[INFO] [stderr]    |
[INFO] [stderr]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `shared`
[INFO] [stderr]  --> src/sign/mod.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use shared;
[INFO] [stderr]   |     ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/newtype_macros.rs:66:50
[INFO] [stderr]    |
[INFO] [stderr] 66 |   ...                   if let Some(value) = try!(visitor.visit()) {
[INFO] [stderr]    |                                              ^^^
[INFO] [stderr]    |
[INFO] [stderr]   ::: src/sign/mod.rs:34:1
[INFO] [stderr]    |
[INFO] [stderr] 34 | / new_type! {
[INFO] [stderr] 35 | |     /// `SecretKey` for signatures
[INFO] [stderr] 36 | |     ///
[INFO] [stderr] 37 | |     /// When a `SecretKey` goes out of scope its contents
[INFO] [stderr] 38 | |     /// will be zeroed out
[INFO] [stderr] 39 | |     secret SecretKey(SECRET_KEY_BYTES);
[INFO] [stderr] 40 | | }
[INFO] [stderr]    | |_- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in the macro `newtype_traits` which comes from the expansion of the macro `new_type` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/newtype_macros.rs:66:50
[INFO] [stderr]    |
[INFO] [stderr] 66 |   ...                   if let Some(value) = try!(visitor.visit()) {
[INFO] [stderr]    |                                              ^^^
[INFO] [stderr]    |
[INFO] [stderr]   ::: src/sign/mod.rs:42:1
[INFO] [stderr]    |
[INFO] [stderr] 42 | / new_type! {
[INFO] [stderr] 43 | |     /// `PublicKey` for signatures
[INFO] [stderr] 44 | |     public PublicKey(PUBLIC_KEY_BYTES);
[INFO] [stderr] 45 | | }
[INFO] [stderr]    | |_- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in the macro `newtype_traits` which comes from the expansion of the macro `new_type` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/newtype_macros.rs:66:50
[INFO] [stderr]    |
[INFO] [stderr] 66 |   ...                   if let Some(value) = try!(visitor.visit()) {
[INFO] [stderr]    |                                              ^^^
[INFO] [stderr]    |
[INFO] [stderr]   ::: src/sign/mod.rs:47:1
[INFO] [stderr]    |
[INFO] [stderr] 47 | / new_type! {
[INFO] [stderr] 48 | |     /// Detached signature
[INFO] [stderr] 49 | |     public Signature(SIGNATURE_LENGTH);
[INFO] [stderr] 50 | | }
[INFO] [stderr]    | |_- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in the macro `newtype_traits` which comes from the expansion of the macro `new_type` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `shared`
[INFO] [stderr]   --> src/secretbox/mod.rs:35:5
[INFO] [stderr]    |
[INFO] [stderr] 35 | use shared;
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `shared`
[INFO] [stderr]  --> src/boxy/mod.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 9 | use shared;
[INFO] [stderr]   |     ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/hash/sha512.rs:137:9
[INFO] [stderr]     |
[INFO] [stderr] 137 |     let mut x = &mut x[..new_len];
[INFO] [stderr]     |         ----^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/sign/ed25519.rs:396:16
[INFO] [stderr]     |
[INFO] [stderr] 396 |     let (init, mut rest) = r.split_at_mut(3);
[INFO] [stderr]     |                ----^^^^
[INFO] [stderr]     |                |
[INFO] [stderr]     |                help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: function `random_data_test_helper` is never used
[INFO] [stderr]    --> src/shared.rs:150:8
[INFO] [stderr]     |
[INFO] [stderr] 150 | pub fn random_data_test_helper(len: usize) -> Vec<u8> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: constant `SIGN_BYTES` is never used
[INFO] [stderr]   --> src/sign/ed25519.rs:20:11
[INFO] [stderr]    |
[INFO] [stderr] 20 | pub const SIGN_BYTES: usize = 64;
[INFO] [stderr]    |           ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/secretbox/mod.rs:100:5
[INFO] [stderr]     |
[INFO] [stderr] 100 |     xsalsa20poly1305::secretbox(&mut cipher, &m, &nonce, &key.0);
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 100 |     let _ = xsalsa20poly1305::secretbox(&mut cipher, &m, &nonce, &key.0);
[INFO] [stderr]     |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> src/boxy/mod.rs:71:9
[INFO] [stderr]    |
[INFO] [stderr] 71 |         curve25519xsalsa20poly1305::box_(&mut cipher, &m, &nonce, &pk.0, &sk.0);
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 71 |         let _ = curve25519xsalsa20poly1305::box_(&mut cipher, &m, &nonce, &pk.0, &sk.0);
[INFO] [stderr]    |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: `microsalt` (lib) generated 18 warnings (run `cargo fix --lib -p microsalt` to apply 7 suggestions)
[INFO] [stderr] warning: unused imports: `Hash` and `Hasher`
[INFO] [stderr]  --> src/hash/mod.rs:8:17
[INFO] [stderr]   |
[INFO] [stderr] 8 | use std::hash::{Hash, Hasher};
[INFO] [stderr]   |                 ^^^^  ^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/sign/mod.rs:261:13
[INFO] [stderr]     |
[INFO] [stderr] 261 |         let mut sig = key.sign(&message);
[INFO] [stderr]     |             ----^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: constant `SIGN_BYTES` is never used
[INFO] [stderr]   --> src/sign/ed25519.rs:20:11
[INFO] [stderr]    |
[INFO] [stderr] 20 | pub const SIGN_BYTES: usize = 64;
[INFO] [stderr]    |           ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `microsalt` (lib test) generated 15 warnings (12 duplicates) (run `cargo fix --lib -p microsalt --tests` to apply 2 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.07s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/microsalt-af1338a883b336ee)
[INFO] [stdout] 
[INFO] [stdout] running 31 tests
[INFO] [stdout] test hash::test::test_hash_abc ... ok
[INFO] [stdout] test hash::test::test_hash_sanity ... ok
[INFO] [stdout] test hash::test::test_hashtype_copy_constructor ... ok
[INFO] [stdout] test hash::test::test_hashtype_equality_operator ... ok
[INFO] [stdout] test onetimeauth::test_poly1305 ... ok
[INFO] [stdout] test hash::test::test_hash_448 ... ok
[INFO] [stdout] test boxy::curve25519xsalsa20poly1305::test_scalar_vector_3 ... ok
[INFO] [stdout] test boxy::curve25519xsalsa20poly1305::test_scalar_vector_4 ... ok
[INFO] [stdout] test boxy::curve25519xsalsa20poly1305::test_scalar_vector_1 ... ok
[INFO] [stdout] test boxy::curve25519xsalsa20poly1305::test_scalar_vector_2 ... ok
[INFO] [stdout] test secretbox::test_vector_known ... ok
[INFO] [stdout] test boxy::test_vector_2 ... ok
[INFO] [stdout] test boxy::test_vector_1 ... ok
[INFO] [stdout] test shared::test_memzero ... ok
[INFO] [stdout] test shared::test_verify_32 ... ok
[INFO] [stdout] test shared::test_verify_16 ... ok
[INFO] [stdout] test shared::test_memcmp ... ok
[INFO] [stdout] test secretbox::test_seal_open ... ok
[INFO] [stdout] test sign::test_sign_fail_sanity ... ok
[INFO] [stdout] test sign::test_sign_sanity ... ok
[INFO] [stdout] test secretbox::test_seal_open_tamper ... ok
[INFO] [stdout] test sign::test_sign_verify ... ok
[INFO] [stdout] test stream::test_xsalsa20_1 ... ok
[INFO] [stdout] test stream::test_xsalsa20_2 ... ok
[INFO] [stdout] test sign::test_sign_verify_seed ... ok
[INFO] [stdout] test sign::test_sign_verify_detached ... ok
[INFO] [stdout] test sign::test_sign_verify_detached_tamper ... ok
[INFO] [stdout] test sign::test_sign_verify_tamper_seed ... ok
[INFO] [stdout] test sign::test_sign_verify_tamper ... ok
[INFO] [stdout] test sign::test_sign_vectors has been running for over 60 seconds
[INFO] [stdout] test sign::test_sign_vectors_detached has been running for over 60 seconds
[INFO] [stdout] test sign::test_sign_vectors ... ok
[INFO] [stdout] test sign::test_sign_vectors_detached ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 31 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 273.85s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests microsalt
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test src/newtype_macros.rs - newtype_macros::new_type (line 203) ... FAILED
[INFO] [stdout] test src/newtype_macros.rs - newtype_macros::new_type (line 196) ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- src/newtype_macros.rs - newtype_macros::new_type (line 203) stdout ----
[INFO] [stdout] error: cannot find macro `new_type` in this scope
[INFO] [stdout]    --> src/newtype_macros.rs:204:1
[INFO] [stdout]     |
[INFO] [stdout] 204 | new_type! {
[INFO] [stdout]     | ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/newtype_macros.rs - newtype_macros::new_type (line 196) stdout ----
[INFO] [stdout] error: cannot find macro `new_type` in this scope
[INFO] [stdout]    --> src/newtype_macros.rs:197:1
[INFO] [stdout]     |
[INFO] [stdout] 197 | new_type! {
[INFO] [stdout]     | ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     src/newtype_macros.rs - newtype_macros::new_type (line 196)
[INFO] [stdout]     src/newtype_macros.rs - newtype_macros::new_type (line 203)
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 2 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.19s
[INFO] [stdout] 
[INFO] [stderr] error: doctest failed, to rerun pass `--doc`
[INFO] running `Command { std: "docker" "inspect" "797b8dbb9398d65617b7bbfede7e8df88f2fed279567d022860851b91793c92c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "797b8dbb9398d65617b7bbfede7e8df88f2fed279567d022860851b91793c92c", kill_on_drop: false }`
[INFO] [stdout] 797b8dbb9398d65617b7bbfede7e8df88f2fed279567d022860851b91793c92c
