[INFO] crate microsalt 0.2.21 is already in cache
[INFO] checking microsalt-0.2.21 against master#209b2be09fcaff937480d1fbbe8b31646e361c7a for pr-70917
[INFO] extracting crate microsalt 0.2.21 into /workspace/builds/worker-4/source
[INFO] validating manifest of crates.io crate microsalt 0.2.21 on toolchain 209b2be09fcaff937480d1fbbe8b31646e361c7a
[INFO] running `"/workspace/cargo-home/bin/cargo" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "read-manifest" "--manifest-path" "Cargo.toml"`
[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-4/source/Cargo.toml
[INFO] running `"/workspace/cargo-home/bin/cargo" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `"/workspace/cargo-home/bin/cargo" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "fetch" "--locked" "--manifest-path" "Cargo.toml"`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "check" "--frozen" "--all" "--all-targets"`
[INFO] [stdout] c4452e19c5bb9592eb33201c7f046e02682ad6de41903f27500f9252767057bb
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `"docker" "start" "-a" "c4452e19c5bb9592eb33201c7f046e02682ad6de41903f27500f9252767057bb"`
[INFO] [stderr]    Compiling memsec v0.3.4
[INFO] [stderr]     Checking unwrap v1.1.0
[INFO] [stderr]     Checking index-fixed v0.0.2
[INFO] [stderr]     Checking microsalt v0.2.21 (/opt/rustwide/workdir)
[INFO] [stderr] warning: use of deprecated item '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 a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item '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 a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item '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 a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item '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 a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[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 macros
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_doc_comments)]` on by default
[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 doc comment
[INFO] [stderr]   --> src/sign/mod.rs:29:1
[INFO] [stderr]    |
[INFO] [stderr] 29 | ///A Pubic key for crypto box
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros
[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 doc comment
[INFO] [stderr]   --> src/sign/mod.rs:31:1
[INFO] [stderr]    |
[INFO] [stderr] 31 | ///A secret key for crypto box
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros
[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 imports: `Hash`, `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)]` on by default
[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: use of deprecated item '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 a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item '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 a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item '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 a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item '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 a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[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 macros
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_doc_comments)]` on by default
[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 doc comment
[INFO] [stderr]   --> src/sign/mod.rs:29:1
[INFO] [stderr]    |
[INFO] [stderr] 29 | ///A Pubic key for crypto box
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros
[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 doc comment
[INFO] [stderr]   --> src/sign/mod.rs:31:1
[INFO] [stderr]    |
[INFO] [stderr] 31 | ///A secret key for crypto box
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macros
[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 `#[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)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Hash`, `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: 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 import: `shared`
[INFO] [stderr]  --> src/sign/mod.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use shared;
[INFO] [stderr]   |     ^^^^^^
[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: 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)]` on by default
[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)]` 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: 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: function is never used: `random_data_test_helper`
[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)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: constant item is never used: `SIGN_BYTES`
[INFO] [stderr]   --> src/sign/ed25519.rs:20:1
[INFO] [stderr]    |
[INFO] [stderr] 20 | pub const SIGN_BYTES: usize = 64;
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::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: `#[warn(unused_must_use)]` on by default
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::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] 
[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: constant item is never used: `SIGN_BYTES`
[INFO] [stderr]   --> src/sign/ed25519.rs:20:1
[INFO] [stderr]    |
[INFO] [stderr] 20 | pub const SIGN_BYTES: usize = 64;
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::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: `#[warn(unused_must_use)]` on by default
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::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] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 3.18s
[INFO] running `"docker" "inspect" "c4452e19c5bb9592eb33201c7f046e02682ad6de41903f27500f9252767057bb"`
[INFO] running `"docker" "rm" "-f" "c4452e19c5bb9592eb33201c7f046e02682ad6de41903f27500f9252767057bb"`
[INFO] [stdout] c4452e19c5bb9592eb33201c7f046e02682ad6de41903f27500f9252767057bb
