[INFO] cloning repository https://github.com/tubackkhoa/zksnarks-zerocash
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/tubackkhoa/zksnarks-zerocash" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftubackkhoa%2Fzksnarks-zerocash", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftubackkhoa%2Fzksnarks-zerocash'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] b95ee8cb5743440dce8a8c9b4c7f8248dc4d8ab6
[INFO] testing tubackkhoa/zksnarks-zerocash against 1.75.0 for beta-1.76-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftubackkhoa%2Fzksnarks-zerocash" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/tubackkhoa/zksnarks-zerocash on toolchain 1.75.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.75.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/tubackkhoa/zksnarks-zerocash
[INFO] finished tweaking git repo https://github.com/tubackkhoa/zksnarks-zerocash
[INFO] tweaked toml for git repo https://github.com/tubackkhoa/zksnarks-zerocash written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/tubackkhoa/zksnarks-zerocash already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.75.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating git repository `https://github.com/gtank/blake2-rfc`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded wasm-bindgen-macro-support v0.2.33
[INFO] [stderr]   Downloaded wasm-bindgen-shared v0.2.33
[INFO] [stderr]   Downloaded wasm-bindgen-backend v0.2.33
[INFO] [stderr]   Downloaded wasm-bindgen-macro v0.2.33
[INFO] [stderr]   Downloaded wasm-bindgen v0.2.33
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.75.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 24d3daa634547acc2bfa4f3363534627d5a896718e9acc5c61c72b45f03e045e
[INFO] running `Command { std: "docker" "start" "-a" "24d3daa634547acc2bfa4f3363534627d5a896718e9acc5c61c72b45f03e045e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "24d3daa634547acc2bfa4f3363534627d5a896718e9acc5c61c72b45f03e045e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "24d3daa634547acc2bfa4f3363534627d5a896718e9acc5c61c72b45f03e045e", kill_on_drop: false }`
[INFO] [stdout] 24d3daa634547acc2bfa4f3363534627d5a896718e9acc5c61c72b45f03e045e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.75.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 1740cde322485dca83888ecc849a09429c79a1c7a078c3c9d51947adb3df8a78
[INFO] running `Command { std: "docker" "start" "-a" "1740cde322485dca83888ecc849a09429c79a1c7a078c3c9d51947adb3df8a78", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v0.4.27
[INFO] [stderr]    Compiling unicode-xid v0.1.0
[INFO] [stderr]    Compiling num-traits v0.2.6
[INFO] [stderr]    Compiling libc v0.2.48
[INFO] [stderr]    Compiling num-integer v0.1.39
[INFO] [stderr]    Compiling serde v1.0.87
[INFO] [stderr]    Compiling ryu v0.2.7
[INFO] [stderr]    Compiling num-bigint v0.2.2
[INFO] [stderr]    Compiling byteorder v1.3.1
[INFO] [stderr]    Compiling wasm-bindgen-shared v0.2.33
[INFO] [stderr]    Compiling arrayvec v0.4.10
[INFO] [stderr]    Compiling cfg-if v0.1.6
[INFO] [stderr]    Compiling itoa v0.4.3
[INFO] [stderr]    Compiling typenum v1.10.0
[INFO] [stderr]    Compiling nodrop v0.1.13
[INFO] [stderr]    Compiling lazy_static v1.2.0
[INFO] [stderr]    Compiling log v0.4.6
[INFO] [stderr]    Compiling hex v0.3.2
[INFO] [stderr]    Compiling constant_time_eq v0.1.3
[INFO] [stderr]    Compiling futures v0.1.25
[INFO] [stderr]    Compiling wasm-bindgen v0.2.33
[INFO] [stderr]    Compiling bit-vec v0.4.4
[INFO] [stderr]    Compiling blake2-rfc v0.2.18 (https://github.com/gtank/blake2-rfc?rev=7a5b5fc99ae483a0043db7547fb79a6fa44b88a9#7a5b5fc9)
[INFO] [stderr]    Compiling blake2-rfc v0.2.18
[INFO] [stderr]    Compiling rand v0.4.6
[INFO] [stderr]    Compiling time v0.1.42
[INFO] [stderr]    Compiling quote v0.6.11
[INFO] [stderr]    Compiling syn v0.15.26
[INFO] [stderr]    Compiling syn v0.14.9
[INFO] [stderr]    Compiling generic-array v0.9.0
[INFO] [stderr]    Compiling digest v0.7.6
[INFO] [stderr]    Compiling serde_json v1.0.38
[INFO] [stderr]    Compiling wasm-bindgen-backend v0.2.33
[INFO] [stderr]    Compiling serde_derive v1.0.87
[INFO] [stderr]    Compiling wasm-bindgen-macro-support v0.2.33
[INFO] [stderr]    Compiling wasm-bindgen-macro v0.2.33
[INFO] [stderr]    Compiling ff_derive v0.4.0 (/opt/rustwide/workdir/ff/ff_derive)
[INFO] [stderr]    Compiling ff v0.5.0 (/opt/rustwide/workdir/ff)
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> ff/src/lib.rs:269:18
[INFO] [stdout]     |
[INFO] [stdout] 269 |     fn from_repr(Self::Repr) -> Result<Self, PrimeFieldDecodingError>;
[INFO] [stdout]     |                  ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Repr`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]     = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling pairing v0.15.1 (/opt/rustwide/workdir/pairing)
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> pairing/src/lib.rs:292:39
[INFO] [stdout]     |
[INFO] [stdout] 292 |             _ => write!(f, "{}", self.description()),
[INFO] [stdout]     |                                       ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stdout]   --> pairing/src/lib.rs:97:62
[INFO] [stdout]    |
[INFO] [stdout] 97 |             [(&(p.into().prepare()), &(q.into().prepare()))].into_iter(),
[INFO] [stdout]    |                                                              ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout]    = note: `#[warn(array_into_iter)]` on by default
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 97 |             [(&(p.into().prepare()), &(q.into().prepare()))].iter(),
[INFO] [stdout]    |                                                              ~~~~
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]    |
[INFO] [stdout] 97 |             IntoIterator::into_iter([(&(p.into().prepare()), &(q.into().prepare()))]),
[INFO] [stdout]    |             ++++++++++++++++++++++++                                                ~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling bellman v0.1.0 (/opt/rustwide/workdir/bellman)
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> bellman/src/multiexp.rs:150:10
[INFO] [stdout]     |
[INFO] [stdout] 150 | ) -> Box<Future<Item=<G as CurveAffine>::Projective, Error=SynthesisError>>
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 150 | ) -> Box<dyn Future<Item=<G as CurveAffine>::Projective, Error=SynthesisError>>
[INFO] [stdout]     |          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> bellman/src/multiexp.rs:244:10
[INFO] [stdout]     |
[INFO] [stdout] 244 | ) -> Box<Future<Item=<G as CurveAffine>::Projective, Error=SynthesisError>>
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 244 | ) -> Box<dyn Future<Item=<G as CurveAffine>::Projective, Error=SynthesisError>>
[INFO] [stdout]     |          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> bellman/src/lib.rs:221:34
[INFO] [stdout]     |
[INFO] [stdout] 221 |             write!(f, "{}", self.description())
[INFO] [stdout]     |                                  ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stdout]   --> bellman/src/groth16/verifier.rs:67:11
[INFO] [stdout]    |
[INFO] [stdout] 67 |         ].into_iter())
[INFO] [stdout]    |           ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout]    = note: `#[warn(array_into_iter)]` on by default
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 67 |         ].iter())
[INFO] [stdout]    |           ~~~~
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]    |
[INFO] [stdout] 63 ~         &E::miller_loop(IntoIterator::into_iter([
[INFO] [stdout] 64 |             (&proof.a.prepare(), &proof.b.prepare()),
[INFO] [stdout] 65 |             (&acc.into_affine().prepare(), &pvk.neg_gamma_g2),
[INFO] [stdout] 66 |             (&proof.c.prepare(), &pvk.neg_delta_g2)
[INFO] [stdout] 67 ~         ]))
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 4 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling sapling-crypto v0.0.3 (/opt/rustwide/workdir/sapling-crypto)
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> sapling-crypto/src/babyjubjub/fs.rs:82:9
[INFO] [stdout]    |
[INFO] [stdout] 82 |         try!(write!(f, "0x"));
[INFO] [stdout]    |         ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> sapling-crypto/src/babyjubjub/fs.rs:84:13
[INFO] [stdout]    |
[INFO] [stdout] 84 |             try!(write!(f, "{:016x}", *i));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> sapling-crypto/src/babyjubjub/mod.rs:137:34
[INFO] [stdout]     |
[INFO] [stdout] 137 |     fn circuit_generators(&self, FixedGenerators) -> &[Vec<(E::Fr, E::Fr)>];
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: FixedGenerators`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]     = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> sapling-crypto/src/jubjub/fs.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 52 |         try!(write!(f, "0x"));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> sapling-crypto/src/jubjub/fs.rs:54:13
[INFO] [stdout]    |
[INFO] [stdout] 54 |             try!(write!(f, "{:016x}", *i));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> sapling-crypto/src/jubjub/mod.rs:134:34
[INFO] [stdout]     |
[INFO] [stdout] 134 |     fn circuit_generators(&self, FixedGenerators) -> &[Vec<(E::Fr, E::Fr)>];
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: FixedGenerators`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> sapling-crypto/src/alt_babyjubjub/fs.rs:82:9
[INFO] [stdout]    |
[INFO] [stdout] 82 |         try!(write!(f, "0x"));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> sapling-crypto/src/alt_babyjubjub/fs.rs:84:13
[INFO] [stdout]    |
[INFO] [stdout] 84 |             try!(write!(f, "{:016x}", *i));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> sapling-crypto/src/circuit/num.rs:409:17
[INFO] [stdout]     |
[INFO] [stdout] 409 |     ) -> Result<(Self), SynthesisError>
[INFO] [stdout]     |                 ^    ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 409 -     ) -> Result<(Self), SynthesisError>
[INFO] [stdout] 409 +     ) -> Result<Self, SynthesisError>
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> sapling-crypto/src/babyjubjub/mod.rs:366:17
[INFO] [stdout]     |
[INFO] [stdout] 366 |             for mut gen in tmp_params.pedersen_hash_generators.iter().cloned() {
[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]    --> sapling-crypto/src/jubjub/mod.rs:358:17
[INFO] [stdout]     |
[INFO] [stdout] 358 |             for mut gen in tmp_params.pedersen_hash_generators.iter().cloned() {
[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]    --> sapling-crypto/src/alt_babyjubjub/mod.rs:296:17
[INFO] [stdout]     |
[INFO] [stdout] 296 |             for mut gen in tmp_params.pedersen_hash_generators.iter().cloned() {
[INFO] [stdout]     |                 ----^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stdout]   --> sapling-crypto/src/circuit/sprout/input.rs:78:37
[INFO] [stdout]    |
[INFO] [stdout] 78 |         for (i, layer) in auth_path.into_iter().enumerate() {
[INFO] [stdout]    |                                     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout]    = note: `#[warn(array_into_iter)]` on by default
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 78 |         for (i, layer) in auth_path.iter().enumerate() {
[INFO] [stdout]    |                                     ~~~~
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]    |
[INFO] [stdout] 78 |         for (i, layer) in IntoIterator::into_iter(auth_path).enumerate() {
[INFO] [stdout]    |                           ++++++++++++++++++++++++         ~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 13 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling rust-miximus v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/blake_circuit.rs:205:75
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub fn generate(seed_slice: &[u32], depth: u32) -> Result<KGGenerate, Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub fn generate(seed_slice: &[u32], depth: u32) -> Result<KGGenerate, Box<dyn Error>> {
[INFO] [stdout]     |                                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/blake_circuit.rs:242:26
[INFO] [stdout]     |
[INFO] [stdout] 242 | ) -> Result<KGProof, Box<Error>> {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 242 | ) -> Result<KGProof, Box<dyn Error>> {
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/blake_circuit.rs:270:27
[INFO] [stdout]     |
[INFO] [stdout] 270 | ) -> Result<KGVerify, Box<Error>> {
[INFO] [stdout]     |                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 270 | ) -> Result<KGVerify, Box<dyn Error>> {
[INFO] [stdout]     |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/zk_util.rs:37:75
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub fn generate(seed_slice: &[u32], depth: u32) -> Result<KGGenerate, Box<Error>> {
[INFO] [stdout]    |                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub fn generate(seed_slice: &[u32], depth: u32) -> Result<KGGenerate, Box<dyn Error>> {
[INFO] [stdout]    |                                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/zk_util.rs:74:26
[INFO] [stdout]    |
[INFO] [stdout] 74 | ) -> Result<KGProof, Box<Error>> {
[INFO] [stdout]    |                          ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 74 | ) -> Result<KGProof, Box<dyn Error>> {
[INFO] [stdout]    |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/zk_util.rs:124:103
[INFO] [stdout]     |
[INFO] [stdout] 124 | pub fn verify(params: &str, proof: &str, nullifier_hex: &str, root_hex: &str) -> Result<KGVerify, Box<Error>> {
[INFO] [stdout]     |                                                                                                       ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 124 | pub fn verify(params: &str, proof: &str, nullifier_hex: &str, root_hex: &str) -> Result<KGVerify, Box<dyn Error>> {
[INFO] [stdout]     |                                                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_booleans` is never used
[INFO] [stdout]    --> src/blake_circuit.rs:137:4
[INFO] [stdout]     |
[INFO] [stdout] 137 | fn print_booleans(booleans: Vec<Boolean>) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate` is never used
[INFO] [stdout]    --> src/blake_circuit.rs:205:8
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub fn generate(seed_slice: &[u32], depth: u32) -> Result<KGGenerate, Box<Error>> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `prove` is never used
[INFO] [stdout]    --> src/blake_circuit.rs:236:8
[INFO] [stdout]     |
[INFO] [stdout] 236 | pub fn prove(
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify` is never used
[INFO] [stdout]    --> src/blake_circuit.rs:265:8
[INFO] [stdout]     |
[INFO] [stdout] 265 | pub fn verify(
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_tree` is never used
[INFO] [stdout]    --> src/blake_circuit.rs:296:8
[INFO] [stdout]     |
[INFO] [stdout] 296 | pub fn generate_tree(seed_slice: &[u32], depth: u32) -> Result<JsValue, JsValue> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `prove_tree` is never used
[INFO] [stdout]    --> src/blake_circuit.rs:306:8
[INFO] [stdout]     |
[INFO] [stdout] 306 | pub fn prove_tree(
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_tree` is never used
[INFO] [stdout]    --> src/blake_circuit.rs:322:8
[INFO] [stdout]     |
[INFO] [stdout] 322 | pub fn verify_tree(
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Empty` is never constructed
[INFO] [stdout]  --> src/blake_merkle_tree.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub enum Tree {
[INFO] [stdout]   |          ---- variant in this enum
[INFO] [stdout] 5 |     Empty {
[INFO] [stdout]   |     ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Tree` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_leaf_from_preimage` is never used
[INFO] [stdout]   --> src/blake_merkle_tree.rs:36:8
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub fn create_leaf_from_preimage(nullifier: [u8; 32], secret: [u8; 32]) -> Tree {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_leaf_list` is never used
[INFO] [stdout]   --> src/blake_merkle_tree.rs:49:8
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub fn create_leaf_list(mut nodes: Vec<[u8; 32]>, depth: usize) -> Vec<Box<Tree>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_root_from_proof` is never used
[INFO] [stdout]    --> src/blake_merkle_tree.rs:178:8
[INFO] [stdout]     |
[INFO] [stdout] 178 | pub fn compute_root_from_proof(leaf: [u8; 32], path: Vec<Option<(bool, [u8; 32])>>) -> [u8; 32] {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Empty` is never constructed
[INFO] [stdout]  --> src/merkle_tree.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub enum Tree {
[INFO] [stdout]   |          ---- variant in this enum
[INFO] [stdout] 8 |     Empty {
[INFO] [stdout]   |     ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Tree` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_leaf_from_preimage` is never used
[INFO] [stdout]   --> src/merkle_tree.rs:35:8
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub fn create_leaf_from_preimage(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_leaf_list` is never used
[INFO] [stdout]   --> src/merkle_tree.rs:56:8
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub fn create_leaf_list(mut nodes: Vec<pairing::bn256::Fr>, depth: usize) -> Vec<Box<Tree>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_root_from_proof` is never used
[INFO] [stdout]    --> src/merkle_tree.rs:188:8
[INFO] [stdout]     |
[INFO] [stdout] 188 | pub fn compute_root_from_proof(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/blake_circuit.rs:224:26
[INFO] [stdout]     |
[INFO] [stdout] 224 |         Err(m) => panic!(m),
[INFO] [stdout]     |                          ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 224 |         Err(m) => panic!("{}", m),
[INFO] [stdout]     |                          +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]     |
[INFO] [stdout] 224 |         Err(m) => std::panic::panic_any(m),
[INFO] [stdout]     |                   ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stdout]   --> src/blake_merkle_tree.rs:39:31
[INFO] [stdout]    |
[INFO] [stdout] 39 |     preimage.extend(nullifier.into_iter());
[INFO] [stdout]    |                               ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout]    = note: `#[warn(array_into_iter)]` on by default
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 39 |     preimage.extend(nullifier.iter());
[INFO] [stdout]    |                               ~~~~
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]    |
[INFO] [stdout] 39 |     preimage.extend(IntoIterator::into_iter(nullifier));
[INFO] [stdout]    |                     ++++++++++++++++++++++++         ~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stdout]   --> src/blake_merkle_tree.rs:40:28
[INFO] [stdout]    |
[INFO] [stdout] 40 |     preimage.extend(secret.into_iter());
[INFO] [stdout]    |                            ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 40 |     preimage.extend(secret.iter());
[INFO] [stdout]    |                            ~~~~
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]    |
[INFO] [stdout] 40 |     preimage.extend(IntoIterator::into_iter(secret));
[INFO] [stdout]    |                     ++++++++++++++++++++++++      ~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 24 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 10.00s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: syn v0.14.9
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] running `Command { std: "docker" "inspect" "1740cde322485dca83888ecc849a09429c79a1c7a078c3c9d51947adb3df8a78", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1740cde322485dca83888ecc849a09429c79a1c7a078c3c9d51947adb3df8a78", kill_on_drop: false }`
[INFO] [stdout] 1740cde322485dca83888ecc849a09429c79a1c7a078c3c9d51947adb3df8a78
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.75.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ce4a7d23d958043b7807626d0c6951d3234d3f9e51454643fb7435ba6801ade4
[INFO] running `Command { std: "docker" "start" "-a" "ce4a7d23d958043b7807626d0c6951d3234d3f9e51454643fb7435ba6801ade4", kill_on_drop: false }`
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> ff/src/lib.rs:269:18
[INFO] [stdout]     |
[INFO] [stdout] 269 |     fn from_repr(Self::Repr) -> Result<Self, PrimeFieldDecodingError>;
[INFO] [stdout]     |                  ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Repr`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]     = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> pairing/src/lib.rs:292:39
[INFO] [stdout]     |
[INFO] [stdout] 292 |             _ => write!(f, "{}", self.description()),
[INFO] [stdout]     |                                       ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stdout]   --> pairing/src/lib.rs:97:62
[INFO] [stdout]    |
[INFO] [stdout] 97 |             [(&(p.into().prepare()), &(q.into().prepare()))].into_iter(),
[INFO] [stdout]    |                                                              ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout]    = note: `#[warn(array_into_iter)]` on by default
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 97 |             [(&(p.into().prepare()), &(q.into().prepare()))].iter(),
[INFO] [stdout]    |                                                              ~~~~
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]    |
[INFO] [stdout] 97 |             IntoIterator::into_iter([(&(p.into().prepare()), &(q.into().prepare()))]),
[INFO] [stdout]    |             ++++++++++++++++++++++++                                                ~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> bellman/src/multiexp.rs:150:10
[INFO] [stdout]     |
[INFO] [stdout] 150 | ) -> Box<Future<Item=<G as CurveAffine>::Projective, Error=SynthesisError>>
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 150 | ) -> Box<dyn Future<Item=<G as CurveAffine>::Projective, Error=SynthesisError>>
[INFO] [stdout]     |          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> bellman/src/multiexp.rs:244:10
[INFO] [stdout]     |
[INFO] [stdout] 244 | ) -> Box<Future<Item=<G as CurveAffine>::Projective, Error=SynthesisError>>
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 244 | ) -> Box<dyn Future<Item=<G as CurveAffine>::Projective, Error=SynthesisError>>
[INFO] [stdout]     |          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> bellman/src/lib.rs:221:34
[INFO] [stdout]     |
[INFO] [stdout] 221 |             write!(f, "{}", self.description())
[INFO] [stdout]     |                                  ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stdout]   --> bellman/src/groth16/verifier.rs:67:11
[INFO] [stdout]    |
[INFO] [stdout] 67 |         ].into_iter())
[INFO] [stdout]    |           ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout]    = note: `#[warn(array_into_iter)]` on by default
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 67 |         ].iter())
[INFO] [stdout]    |           ~~~~
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]    |
[INFO] [stdout] 63 ~         &E::miller_loop(IntoIterator::into_iter([
[INFO] [stdout] 64 |             (&proof.a.prepare(), &proof.b.prepare()),
[INFO] [stdout] 65 |             (&acc.into_affine().prepare(), &pvk.neg_gamma_g2),
[INFO] [stdout] 66 |             (&proof.c.prepare(), &pvk.neg_delta_g2)
[INFO] [stdout] 67 ~         ]))
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 4 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> sapling-crypto/src/babyjubjub/fs.rs:82:9
[INFO] [stdout]    |
[INFO] [stdout] 82 |         try!(write!(f, "0x"));
[INFO] [stdout]    |         ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> sapling-crypto/src/babyjubjub/fs.rs:84:13
[INFO] [stdout]    |
[INFO] [stdout] 84 |             try!(write!(f, "{:016x}", *i));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> sapling-crypto/src/babyjubjub/mod.rs:137:34
[INFO] [stdout]     |
[INFO] [stdout] 137 |     fn circuit_generators(&self, FixedGenerators) -> &[Vec<(E::Fr, E::Fr)>];
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: FixedGenerators`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]     = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> sapling-crypto/src/jubjub/fs.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 52 |         try!(write!(f, "0x"));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> sapling-crypto/src/jubjub/fs.rs:54:13
[INFO] [stdout]    |
[INFO] [stdout] 54 |             try!(write!(f, "{:016x}", *i));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> sapling-crypto/src/jubjub/mod.rs:134:34
[INFO] [stdout]     |
[INFO] [stdout] 134 |     fn circuit_generators(&self, FixedGenerators) -> &[Vec<(E::Fr, E::Fr)>];
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: FixedGenerators`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> sapling-crypto/src/alt_babyjubjub/fs.rs:82:9
[INFO] [stdout]    |
[INFO] [stdout] 82 |         try!(write!(f, "0x"));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> sapling-crypto/src/alt_babyjubjub/fs.rs:84:13
[INFO] [stdout]    |
[INFO] [stdout] 84 |             try!(write!(f, "{:016x}", *i));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> sapling-crypto/src/circuit/num.rs:409:17
[INFO] [stdout]     |
[INFO] [stdout] 409 |     ) -> Result<(Self), SynthesisError>
[INFO] [stdout]     |                 ^    ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 409 -     ) -> Result<(Self), SynthesisError>
[INFO] [stdout] 409 +     ) -> Result<Self, SynthesisError>
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> sapling-crypto/src/babyjubjub/mod.rs:366:17
[INFO] [stdout]     |
[INFO] [stdout] 366 |             for mut gen in tmp_params.pedersen_hash_generators.iter().cloned() {
[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]    --> sapling-crypto/src/jubjub/mod.rs:358:17
[INFO] [stdout]     |
[INFO] [stdout] 358 |             for mut gen in tmp_params.pedersen_hash_generators.iter().cloned() {
[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]    --> sapling-crypto/src/alt_babyjubjub/mod.rs:296:17
[INFO] [stdout]     |
[INFO] [stdout] 296 |             for mut gen in tmp_params.pedersen_hash_generators.iter().cloned() {
[INFO] [stdout]     |                 ----^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stdout]   --> sapling-crypto/src/circuit/sprout/input.rs:78:37
[INFO] [stdout]    |
[INFO] [stdout] 78 |         for (i, layer) in auth_path.into_iter().enumerate() {
[INFO] [stdout]    |                                     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout]    = note: `#[warn(array_into_iter)]` on by default
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 78 |         for (i, layer) in auth_path.iter().enumerate() {
[INFO] [stdout]    |                                     ~~~~
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]    |
[INFO] [stdout] 78 |         for (i, layer) in IntoIterator::into_iter(auth_path).enumerate() {
[INFO] [stdout]    |                           ++++++++++++++++++++++++         ~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling rust-miximus v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: 13 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sapling_crypto::circuit`
[INFO] [stdout]    --> src/lib.rs:198:9
[INFO] [stdout]     |
[INFO] [stdout] 198 |     use sapling_crypto::circuit;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/blake_circuit.rs:205:75
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub fn generate(seed_slice: &[u32], depth: u32) -> Result<KGGenerate, Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub fn generate(seed_slice: &[u32], depth: u32) -> Result<KGGenerate, Box<dyn Error>> {
[INFO] [stdout]     |                                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/blake_circuit.rs:242:26
[INFO] [stdout]     |
[INFO] [stdout] 242 | ) -> Result<KGProof, Box<Error>> {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 242 | ) -> Result<KGProof, Box<dyn Error>> {
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/blake_circuit.rs:270:27
[INFO] [stdout]     |
[INFO] [stdout] 270 | ) -> Result<KGVerify, Box<Error>> {
[INFO] [stdout]     |                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 270 | ) -> Result<KGVerify, Box<dyn Error>> {
[INFO] [stdout]     |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/zk_util.rs:37:75
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub fn generate(seed_slice: &[u32], depth: u32) -> Result<KGGenerate, Box<Error>> {
[INFO] [stdout]    |                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub fn generate(seed_slice: &[u32], depth: u32) -> Result<KGGenerate, Box<dyn Error>> {
[INFO] [stdout]    |                                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/zk_util.rs:74:26
[INFO] [stdout]    |
[INFO] [stdout] 74 | ) -> Result<KGProof, Box<Error>> {
[INFO] [stdout]    |                          ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 74 | ) -> Result<KGProof, Box<dyn Error>> {
[INFO] [stdout]    |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/zk_util.rs:124:103
[INFO] [stdout]     |
[INFO] [stdout] 124 | pub fn verify(params: &str, proof: &str, nullifier_hex: &str, root_hex: &str) -> Result<KGVerify, Box<Error>> {
[INFO] [stdout]     |                                                                                                       ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 124 | pub fn verify(params: &str, proof: &str, nullifier_hex: &str, root_hex: &str) -> Result<KGVerify, Box<dyn Error>> {
[INFO] [stdout]     |                                                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_booleans` is never used
[INFO] [stdout]    --> src/blake_circuit.rs:137:4
[INFO] [stdout]     |
[INFO] [stdout] 137 | fn print_booleans(booleans: Vec<Boolean>) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify` is never used
[INFO] [stdout]    --> src/blake_circuit.rs:265:8
[INFO] [stdout]     |
[INFO] [stdout] 265 | pub fn verify(
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_tree` is never used
[INFO] [stdout]    --> src/blake_circuit.rs:296:8
[INFO] [stdout]     |
[INFO] [stdout] 296 | pub fn generate_tree(seed_slice: &[u32], depth: u32) -> Result<JsValue, JsValue> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `prove_tree` is never used
[INFO] [stdout]    --> src/blake_circuit.rs:306:8
[INFO] [stdout]     |
[INFO] [stdout] 306 | pub fn prove_tree(
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_tree` is never used
[INFO] [stdout]    --> src/blake_circuit.rs:322:8
[INFO] [stdout]     |
[INFO] [stdout] 322 | pub fn verify_tree(
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_root_from_proof` is never used
[INFO] [stdout]    --> src/blake_merkle_tree.rs:178:8
[INFO] [stdout]     |
[INFO] [stdout] 178 | pub fn compute_root_from_proof(leaf: [u8; 32], path: Vec<Option<(bool, [u8; 32])>>) -> [u8; 32] {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/blake_circuit.rs:224:26
[INFO] [stdout]     |
[INFO] [stdout] 224 |         Err(m) => panic!(m),
[INFO] [stdout]     |                          ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 224 |         Err(m) => panic!("{}", m),
[INFO] [stdout]     |                          +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]     |
[INFO] [stdout] 224 |         Err(m) => std::panic::panic_any(m),
[INFO] [stdout]     |                   ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stdout]   --> src/blake_merkle_tree.rs:39:31
[INFO] [stdout]    |
[INFO] [stdout] 39 |     preimage.extend(nullifier.into_iter());
[INFO] [stdout]    |                               ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout]    = note: `#[warn(array_into_iter)]` on by default
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 39 |     preimage.extend(nullifier.iter());
[INFO] [stdout]    |                               ~~~~
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]    |
[INFO] [stdout] 39 |     preimage.extend(IntoIterator::into_iter(nullifier));
[INFO] [stdout]    |                     ++++++++++++++++++++++++         ~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stdout]   --> src/blake_merkle_tree.rs:40:28
[INFO] [stdout]    |
[INFO] [stdout] 40 |     preimage.extend(secret.into_iter());
[INFO] [stdout]    |                            ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 40 |     preimage.extend(secret.iter());
[INFO] [stdout]    |                            ~~~~
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]    |
[INFO] [stdout] 40 |     preimage.extend(IntoIterator::into_iter(secret));
[INFO] [stdout]    |                     ++++++++++++++++++++++++      ~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 16 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 2.08s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: syn v0.14.9
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] running `Command { std: "docker" "inspect" "ce4a7d23d958043b7807626d0c6951d3234d3f9e51454643fb7435ba6801ade4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ce4a7d23d958043b7807626d0c6951d3234d3f9e51454643fb7435ba6801ade4", kill_on_drop: false }`
[INFO] [stdout] ce4a7d23d958043b7807626d0c6951d3234d3f9e51454643fb7435ba6801ade4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.75.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] dce88986d819d30d6dc84bf79bc131af5c686c6f4ac2348c95fce3cb59706f4c
[INFO] running `Command { std: "docker" "start" "-a" "dce88986d819d30d6dc84bf79bc131af5c686c6f4ac2348c95fce3cb59706f4c", kill_on_drop: false }`
[INFO] [stderr] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stderr]    --> ff/src/lib.rs:269:18
[INFO] [stderr]     |
[INFO] [stderr] 269 |     fn from_repr(Self::Repr) -> Result<Self, PrimeFieldDecodingError>;
[INFO] [stderr]     |                  ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Repr`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stderr]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stderr]     = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `ff` (lib) generated 1 warning (run `cargo fix --lib -p ff` to apply 1 suggestion)
[INFO] [stderr] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stderr]    --> pairing/src/lib.rs:292:39
[INFO] [stderr]     |
[INFO] [stderr] 292 |             _ => write!(f, "{}", self.description()),
[INFO] [stderr]     |                                       ^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stderr]   --> pairing/src/lib.rs:97:62
[INFO] [stderr]    |
[INFO] [stderr] 97 |             [(&(p.into().prepare()), &(q.into().prepare()))].into_iter(),
[INFO] [stderr]    |                                                              ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this changes meaning in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stderr]    = note: `#[warn(array_into_iter)]` on by default
[INFO] [stderr] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stderr]    |
[INFO] [stderr] 97 |             [(&(p.into().prepare()), &(q.into().prepare()))].iter(),
[INFO] [stderr]    |                                                              ~~~~
[INFO] [stderr] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stderr]    |
[INFO] [stderr] 97 |             IntoIterator::into_iter([(&(p.into().prepare()), &(q.into().prepare()))]),
[INFO] [stderr]    |             ++++++++++++++++++++++++                                                ~
[INFO] [stderr] 
[INFO] [stderr] warning: `pairing` (lib) generated 2 warnings (run `cargo fix --lib -p pairing` to apply 1 suggestion)
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> bellman/src/multiexp.rs:150:10
[INFO] [stderr]     |
[INFO] [stderr] 150 | ) -> Box<Future<Item=<G as CurveAffine>::Projective, Error=SynthesisError>>
[INFO] [stderr]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 150 | ) -> Box<dyn Future<Item=<G as CurveAffine>::Projective, Error=SynthesisError>>
[INFO] [stderr]     |          +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> bellman/src/multiexp.rs:244:10
[INFO] [stderr]     |
[INFO] [stderr] 244 | ) -> Box<Future<Item=<G as CurveAffine>::Projective, Error=SynthesisError>>
[INFO] [stderr]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 244 | ) -> Box<dyn Future<Item=<G as CurveAffine>::Projective, Error=SynthesisError>>
[INFO] [stderr]     |          +++
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stderr]    --> bellman/src/lib.rs:221:34
[INFO] [stderr]     |
[INFO] [stderr] 221 |             write!(f, "{}", self.description())
[INFO] [stderr]     |                                  ^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stderr]   --> bellman/src/groth16/verifier.rs:67:11
[INFO] [stderr]    |
[INFO] [stderr] 67 |         ].into_iter())
[INFO] [stderr]    |           ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this changes meaning in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stderr]    = note: `#[warn(array_into_iter)]` on by default
[INFO] [stderr] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stderr]    |
[INFO] [stderr] 67 |         ].iter())
[INFO] [stderr]    |           ~~~~
[INFO] [stderr] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stderr]    |
[INFO] [stderr] 63 ~         &E::miller_loop(IntoIterator::into_iter([
[INFO] [stderr] 64 |             (&proof.a.prepare(), &proof.b.prepare()),
[INFO] [stderr] 65 |             (&acc.into_affine().prepare(), &pvk.neg_gamma_g2),
[INFO] [stderr] 66 |             (&proof.c.prepare(), &pvk.neg_delta_g2)
[INFO] [stderr] 67 ~         ]))
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: `bellman` (lib) generated 4 warnings (run `cargo fix --lib -p bellman` to apply 3 suggestions)
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> sapling-crypto/src/babyjubjub/fs.rs:82:9
[INFO] [stderr]    |
[INFO] [stderr] 82 |         try!(write!(f, "0x"));
[INFO] [stderr]    |         ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> sapling-crypto/src/babyjubjub/fs.rs:84:13
[INFO] [stderr]    |
[INFO] [stderr] 84 |             try!(write!(f, "{:016x}", *i));
[INFO] [stderr]    |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stderr]    --> sapling-crypto/src/babyjubjub/mod.rs:137:34
[INFO] [stderr]     |
[INFO] [stderr] 137 |     fn circuit_generators(&self, FixedGenerators) -> &[Vec<(E::Fr, E::Fr)>];
[INFO] [stderr]     |                                  ^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: FixedGenerators`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stderr]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stderr]     = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> sapling-crypto/src/jubjub/fs.rs:52:9
[INFO] [stderr]    |
[INFO] [stderr] 52 |         try!(write!(f, "0x"));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> sapling-crypto/src/jubjub/fs.rs:54:13
[INFO] [stderr]    |
[INFO] [stderr] 54 |             try!(write!(f, "{:016x}", *i));
[INFO] [stderr]    |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stderr]    --> sapling-crypto/src/jubjub/mod.rs:134:34
[INFO] [stderr]     |
[INFO] [stderr] 134 |     fn circuit_generators(&self, FixedGenerators) -> &[Vec<(E::Fr, E::Fr)>];
[INFO] [stderr]     |                                  ^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: FixedGenerators`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stderr]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> sapling-crypto/src/alt_babyjubjub/fs.rs:82:9
[INFO] [stderr]    |
[INFO] [stderr] 82 |         try!(write!(f, "0x"));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> sapling-crypto/src/alt_babyjubjub/fs.rs:84:13
[INFO] [stderr]    |
[INFO] [stderr] 84 |             try!(write!(f, "{:016x}", *i));
[INFO] [stderr]    |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]    --> sapling-crypto/src/circuit/num.rs:409:17
[INFO] [stderr]     |
[INFO] [stderr] 409 |     ) -> Result<(Self), SynthesisError>
[INFO] [stderr]     |                 ^    ^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 409 -     ) -> Result<(Self), SynthesisError>
[INFO] [stderr] 409 +     ) -> Result<Self, SynthesisError>
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> sapling-crypto/src/babyjubjub/mod.rs:366:17
[INFO] [stderr]     |
[INFO] [stderr] 366 |             for mut gen in tmp_params.pedersen_hash_generators.iter().cloned() {
[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]    --> sapling-crypto/src/jubjub/mod.rs:358:17
[INFO] [stderr]     |
[INFO] [stderr] 358 |             for mut gen in tmp_params.pedersen_hash_generators.iter().cloned() {
[INFO] [stderr]     |                 ----^^^
[INFO] [stderr]     |                 |
[INFO] [stderr]     |                 help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> sapling-crypto/src/alt_babyjubjub/mod.rs:296:17
[INFO] [stderr]     |
[INFO] [stderr] 296 |             for mut gen in tmp_params.pedersen_hash_generators.iter().cloned() {
[INFO] [stderr]     |                 ----^^^
[INFO] [stderr]     |                 |
[INFO] [stderr]     |                 help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stderr]   --> sapling-crypto/src/circuit/sprout/input.rs:78:37
[INFO] [stderr]    |
[INFO] [stderr] 78 |         for (i, layer) in auth_path.into_iter().enumerate() {
[INFO] [stderr]    |                                     ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this changes meaning in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stderr]    = note: `#[warn(array_into_iter)]` on by default
[INFO] [stderr] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stderr]    |
[INFO] [stderr] 78 |         for (i, layer) in auth_path.iter().enumerate() {
[INFO] [stderr]    |                                     ~~~~
[INFO] [stderr] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stderr]    |
[INFO] [stderr] 78 |         for (i, layer) in IntoIterator::into_iter(auth_path).enumerate() {
[INFO] [stderr]    |                           ++++++++++++++++++++++++         ~
[INFO] [stderr] 
[INFO] [stderr] warning: `sapling-crypto` (lib) generated 13 warnings (run `cargo fix --lib -p sapling-crypto` to apply 7 suggestions)
[INFO] [stderr] warning: unused import: `sapling_crypto::circuit`
[INFO] [stderr]    --> src/lib.rs:198:9
[INFO] [stderr]     |
[INFO] [stderr] 198 |     use sapling_crypto::circuit;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/blake_circuit.rs:205:75
[INFO] [stderr]     |
[INFO] [stderr] 205 | pub fn generate(seed_slice: &[u32], depth: u32) -> Result<KGGenerate, Box<Error>> {
[INFO] [stderr]     |                                                                           ^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 205 | pub fn generate(seed_slice: &[u32], depth: u32) -> Result<KGGenerate, Box<dyn Error>> {
[INFO] [stderr]     |                                                                           +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/blake_circuit.rs:242:26
[INFO] [stderr]     |
[INFO] [stderr] 242 | ) -> Result<KGProof, Box<Error>> {
[INFO] [stderr]     |                          ^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 242 | ) -> Result<KGProof, Box<dyn Error>> {
[INFO] [stderr]     |                          +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/blake_circuit.rs:270:27
[INFO] [stderr]     |
[INFO] [stderr] 270 | ) -> Result<KGVerify, Box<Error>> {
[INFO] [stderr]     |                           ^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 270 | ) -> Result<KGVerify, Box<dyn Error>> {
[INFO] [stderr]     |                           +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/zk_util.rs:37:75
[INFO] [stderr]    |
[INFO] [stderr] 37 | pub fn generate(seed_slice: &[u32], depth: u32) -> Result<KGGenerate, Box<Error>> {
[INFO] [stderr]    |                                                                           ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 37 | pub fn generate(seed_slice: &[u32], depth: u32) -> Result<KGGenerate, Box<dyn Error>> {
[INFO] [stderr]    |                                                                           +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/zk_util.rs:74:26
[INFO] [stderr]    |
[INFO] [stderr] 74 | ) -> Result<KGProof, Box<Error>> {
[INFO] [stderr]    |                          ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 74 | ) -> Result<KGProof, Box<dyn Error>> {
[INFO] [stderr]    |                          +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/zk_util.rs:124:103
[INFO] [stderr]     |
[INFO] [stderr] 124 | pub fn verify(params: &str, proof: &str, nullifier_hex: &str, root_hex: &str) -> Result<KGVerify, Box<Error>> {
[INFO] [stderr]     |                                                                                                       ^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 124 | pub fn verify(params: &str, proof: &str, nullifier_hex: &str, root_hex: &str) -> Result<KGVerify, Box<dyn Error>> {
[INFO] [stderr]     |                                                                                                       +++
[INFO] [stderr] 
[INFO] [stderr] warning: function `print_booleans` is never used
[INFO] [stderr]    --> src/blake_circuit.rs:137:4
[INFO] [stderr]     |
[INFO] [stderr] 137 | fn print_booleans(booleans: Vec<Boolean>) {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `verify` is never used
[INFO] [stderr]    --> src/blake_circuit.rs:265:8
[INFO] [stderr]     |
[INFO] [stderr] 265 | pub fn verify(
[INFO] [stderr]     |        ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `generate_tree` is never used
[INFO] [stderr]    --> src/blake_circuit.rs:296:8
[INFO] [stderr]     |
[INFO] [stderr] 296 | pub fn generate_tree(seed_slice: &[u32], depth: u32) -> Result<JsValue, JsValue> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `prove_tree` is never used
[INFO] [stderr]    --> src/blake_circuit.rs:306:8
[INFO] [stderr]     |
[INFO] [stderr] 306 | pub fn prove_tree(
[INFO] [stderr]     |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `verify_tree` is never used
[INFO] [stderr]    --> src/blake_circuit.rs:322:8
[INFO] [stderr]     |
[INFO] [stderr] 322 | pub fn verify_tree(
[INFO] [stderr]     |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `compute_root_from_proof` is never used
[INFO] [stderr]    --> src/blake_merkle_tree.rs:178:8
[INFO] [stderr]     |
[INFO] [stderr] 178 | pub fn compute_root_from_proof(leaf: [u8; 32], path: Vec<Option<(bool, [u8; 32])>>) -> [u8; 32] {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/blake_circuit.rs:224:26
[INFO] [stderr]     |
[INFO] [stderr] 224 |         Err(m) => panic!(m),
[INFO] [stderr]     |                          ^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]     = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]     |
[INFO] [stderr] 224 |         Err(m) => panic!("{}", m),
[INFO] [stderr]     |                          +++++
[INFO] [stderr] help: or use std::panic::panic_any instead
[INFO] [stderr]     |
[INFO] [stderr] 224 |         Err(m) => std::panic::panic_any(m),
[INFO] [stderr]     |                   ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stderr]   --> src/blake_merkle_tree.rs:39:31
[INFO] [stderr]    |
[INFO] [stderr] 39 |     preimage.extend(nullifier.into_iter());
[INFO] [stderr]    |                               ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this changes meaning in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stderr]    = note: `#[warn(array_into_iter)]` on by default
[INFO] [stderr] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stderr]    |
[INFO] [stderr] 39 |     preimage.extend(nullifier.iter());
[INFO] [stderr]    |                               ~~~~
[INFO] [stderr] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stderr]    |
[INFO] [stderr] 39 |     preimage.extend(IntoIterator::into_iter(nullifier));
[INFO] [stderr]    |                     ++++++++++++++++++++++++         ~
[INFO] [stderr] 
[INFO] [stderr] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stderr]   --> src/blake_merkle_tree.rs:40:28
[INFO] [stderr]    |
[INFO] [stderr] 40 |     preimage.extend(secret.into_iter());
[INFO] [stderr]    |                            ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this changes meaning in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stderr] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stderr]    |
[INFO] [stderr] 40 |     preimage.extend(secret.iter());
[INFO] [stderr]    |                            ~~~~
[INFO] [stderr] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stderr]    |
[INFO] [stderr] 40 |     preimage.extend(IntoIterator::into_iter(secret));
[INFO] [stderr]    |                     ++++++++++++++++++++++++      ~
[INFO] [stderr] 
[INFO] [stderr] warning: `rust-miximus` (lib test) generated 16 warnings (run `cargo fix --lib -p rust-miximus --tests` to apply 10 suggestions)
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.03s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: syn v0.14.9
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/rust_miximus-a37d120d438dcc28)
[INFO] [stdout] 
[INFO] [stdout] running 8 tests
[INFO] [stdout] test test::create_deposit ... ok
[INFO] [stdout] test test::test_merkle_circuit ... ok
[INFO] [stdout] test test::test_blake_merkle_circuit ... ok
[INFO] [stdout] test test::test_input_circuit_with_bls12_381 ... ok
[INFO] [stdout] test test::test_proof_creation ... ok
[INFO] [stdout] test test::test_nullifier_proof ... ok
[INFO] [stdout] test test::test_bmt_sequence has been running for over 60 seconds
[INFO] [stdout] test test::test_generate_params has been running for over 60 seconds
[INFO] [stdout] test test::test_generate_params ... FAILED
[ERROR] error running command: no output for 300 seconds
[INFO] running `Command { std: "docker" "inspect" "dce88986d819d30d6dc84bf79bc131af5c686c6f4ac2348c95fce3cb59706f4c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "dce88986d819d30d6dc84bf79bc131af5c686c6f4ac2348c95fce3cb59706f4c", kill_on_drop: false }`
[INFO] [stdout] dce88986d819d30d6dc84bf79bc131af5c686c6f4ac2348c95fce3cb59706f4c
[INFO] testing tubackkhoa/zksnarks-zerocash against beta-2023-12-22 for beta-1.76-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftubackkhoa%2Fzksnarks-zerocash" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/tubackkhoa/zksnarks-zerocash on toolchain beta-2023-12-22
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2023-12-22" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/tubackkhoa/zksnarks-zerocash
[INFO] finished tweaking git repo https://github.com/tubackkhoa/zksnarks-zerocash
[INFO] tweaked toml for git repo https://github.com/tubackkhoa/zksnarks-zerocash written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/tubackkhoa/zksnarks-zerocash 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" "+beta-2023-12-22" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2023-12-22" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] ca5cbda55c777dbc9ad520bf659674a983c7cce4b670f25a36456e6723d3de12
[INFO] running `Command { std: "docker" "start" "-a" "ca5cbda55c777dbc9ad520bf659674a983c7cce4b670f25a36456e6723d3de12", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ca5cbda55c777dbc9ad520bf659674a983c7cce4b670f25a36456e6723d3de12", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ca5cbda55c777dbc9ad520bf659674a983c7cce4b670f25a36456e6723d3de12", kill_on_drop: false }`
[INFO] [stdout] ca5cbda55c777dbc9ad520bf659674a983c7cce4b670f25a36456e6723d3de12
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2023-12-22" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e8ffa1d0f4577ba92d09bc36371239987180257e4b184cb62eebae9ffcc1e6e7
[INFO] running `Command { std: "docker" "start" "-a" "e8ffa1d0f4577ba92d09bc36371239987180257e4b184cb62eebae9ffcc1e6e7", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v0.4.27
[INFO] [stderr]    Compiling unicode-xid v0.1.0
[INFO] [stderr]    Compiling num-traits v0.2.6
[INFO] [stderr]    Compiling libc v0.2.48
[INFO] [stderr]    Compiling num-integer v0.1.39
[INFO] [stderr]    Compiling byteorder v1.3.1
[INFO] [stderr]    Compiling serde v1.0.87
[INFO] [stderr]    Compiling num-bigint v0.2.2
[INFO] [stderr]    Compiling ryu v0.2.7
[INFO] [stderr]    Compiling wasm-bindgen-shared v0.2.33
[INFO] [stderr]    Compiling itoa v0.4.3
[INFO] [stderr]    Compiling arrayvec v0.4.10
[INFO] [stderr]    Compiling cfg-if v0.1.6
[INFO] [stderr]    Compiling typenum v1.10.0
[INFO] [stderr]    Compiling lazy_static v1.2.0
[INFO] [stderr]    Compiling nodrop v0.1.13
[INFO] [stderr]    Compiling log v0.4.6
[INFO] [stderr]    Compiling hex v0.3.2
[INFO] [stderr]    Compiling constant_time_eq v0.1.3
[INFO] [stderr]    Compiling wasm-bindgen v0.2.33
[INFO] [stderr]    Compiling futures v0.1.25
[INFO] [stderr]    Compiling bit-vec v0.4.4
[INFO] [stderr]    Compiling blake2-rfc v0.2.18
[INFO] [stderr]    Compiling rand v0.4.6
[INFO] [stderr]    Compiling time v0.1.42
[INFO] [stderr]    Compiling blake2-rfc v0.2.18 (https://github.com/gtank/blake2-rfc?rev=7a5b5fc99ae483a0043db7547fb79a6fa44b88a9#7a5b5fc9)
[INFO] [stderr]    Compiling quote v0.6.11
[INFO] [stderr]    Compiling syn v0.15.26
[INFO] [stderr]    Compiling syn v0.14.9
[INFO] [stderr]    Compiling generic-array v0.9.0
[INFO] [stderr]    Compiling digest v0.7.6
[INFO] [stderr]    Compiling wasm-bindgen-backend v0.2.33
[INFO] [stderr]    Compiling serde_json v1.0.38
[INFO] [stderr]    Compiling serde_derive v1.0.87
[INFO] [stderr]    Compiling wasm-bindgen-macro-support v0.2.33
[INFO] [stderr]    Compiling wasm-bindgen-macro v0.2.33
[INFO] [stderr]    Compiling ff_derive v0.4.0 (/opt/rustwide/workdir/ff/ff_derive)
[INFO] [stderr]    Compiling ff v0.5.0 (/opt/rustwide/workdir/ff)
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> ff/src/lib.rs:269:18
[INFO] [stdout]     |
[INFO] [stdout] 269 |     fn from_repr(Self::Repr) -> Result<Self, PrimeFieldDecodingError>;
[INFO] [stdout]     |                  ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Repr`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]     = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling pairing v0.15.1 (/opt/rustwide/workdir/pairing)
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> pairing/src/lib.rs:292:39
[INFO] [stdout]     |
[INFO] [stdout] 292 |             _ => write!(f, "{}", self.description()),
[INFO] [stdout]     |                                       ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stdout]   --> pairing/src/lib.rs:97:62
[INFO] [stdout]    |
[INFO] [stdout] 97 |             [(&(p.into().prepare()), &(q.into().prepare()))].into_iter(),
[INFO] [stdout]    |                                                              ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout]    = note: `#[warn(array_into_iter)]` on by default
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 97 |             [(&(p.into().prepare()), &(q.into().prepare()))].iter(),
[INFO] [stdout]    |                                                              ~~~~
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]    |
[INFO] [stdout] 97 |             IntoIterator::into_iter([(&(p.into().prepare()), &(q.into().prepare()))]),
[INFO] [stdout]    |             ++++++++++++++++++++++++                                                ~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling bellman v0.1.0 (/opt/rustwide/workdir/bellman)
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> bellman/src/multiexp.rs:150:10
[INFO] [stdout]     |
[INFO] [stdout] 150 | ) -> Box<Future<Item=<G as CurveAffine>::Projective, Error=SynthesisError>>
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 150 | ) -> Box<dyn Future<Item=<G as CurveAffine>::Projective, Error=SynthesisError>>
[INFO] [stdout]     |          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> bellman/src/multiexp.rs:244:10
[INFO] [stdout]     |
[INFO] [stdout] 244 | ) -> Box<Future<Item=<G as CurveAffine>::Projective, Error=SynthesisError>>
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 244 | ) -> Box<dyn Future<Item=<G as CurveAffine>::Projective, Error=SynthesisError>>
[INFO] [stdout]     |          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> bellman/src/lib.rs:221:34
[INFO] [stdout]     |
[INFO] [stdout] 221 |             write!(f, "{}", self.description())
[INFO] [stdout]     |                                  ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stdout]   --> bellman/src/groth16/verifier.rs:67:11
[INFO] [stdout]    |
[INFO] [stdout] 67 |         ].into_iter())
[INFO] [stdout]    |           ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout]    = note: `#[warn(array_into_iter)]` on by default
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 67 |         ].iter())
[INFO] [stdout]    |           ~~~~
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]    |
[INFO] [stdout] 63 ~         &E::miller_loop(IntoIterator::into_iter([
[INFO] [stdout] 64 |             (&proof.a.prepare(), &proof.b.prepare()),
[INFO] [stdout] 65 |             (&acc.into_affine().prepare(), &pvk.neg_gamma_g2),
[INFO] [stdout] 66 |             (&proof.c.prepare(), &pvk.neg_delta_g2)
[INFO] [stdout] 67 ~         ]))
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 4 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling sapling-crypto v0.0.3 (/opt/rustwide/workdir/sapling-crypto)
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> sapling-crypto/src/babyjubjub/fs.rs:82:9
[INFO] [stdout]    |
[INFO] [stdout] 82 |         try!(write!(f, "0x"));
[INFO] [stdout]    |         ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> sapling-crypto/src/babyjubjub/fs.rs:84:13
[INFO] [stdout]    |
[INFO] [stdout] 84 |             try!(write!(f, "{:016x}", *i));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> sapling-crypto/src/babyjubjub/mod.rs:137:34
[INFO] [stdout]     |
[INFO] [stdout] 137 |     fn circuit_generators(&self, FixedGenerators) -> &[Vec<(E::Fr, E::Fr)>];
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: FixedGenerators`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]     = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> sapling-crypto/src/jubjub/fs.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 52 |         try!(write!(f, "0x"));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> sapling-crypto/src/jubjub/fs.rs:54:13
[INFO] [stdout]    |
[INFO] [stdout] 54 |             try!(write!(f, "{:016x}", *i));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> sapling-crypto/src/jubjub/mod.rs:134:34
[INFO] [stdout]     |
[INFO] [stdout] 134 |     fn circuit_generators(&self, FixedGenerators) -> &[Vec<(E::Fr, E::Fr)>];
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: FixedGenerators`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> sapling-crypto/src/alt_babyjubjub/fs.rs:82:9
[INFO] [stdout]    |
[INFO] [stdout] 82 |         try!(write!(f, "0x"));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> sapling-crypto/src/alt_babyjubjub/fs.rs:84:13
[INFO] [stdout]    |
[INFO] [stdout] 84 |             try!(write!(f, "{:016x}", *i));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> sapling-crypto/src/circuit/num.rs:409:17
[INFO] [stdout]     |
[INFO] [stdout] 409 |     ) -> Result<(Self), SynthesisError>
[INFO] [stdout]     |                 ^    ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 409 -     ) -> Result<(Self), SynthesisError>
[INFO] [stdout] 409 +     ) -> Result<Self, SynthesisError>
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> sapling-crypto/src/babyjubjub/mod.rs:366:17
[INFO] [stdout]     |
[INFO] [stdout] 366 |             for mut gen in tmp_params.pedersen_hash_generators.iter().cloned() {
[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]    --> sapling-crypto/src/jubjub/mod.rs:358:17
[INFO] [stdout]     |
[INFO] [stdout] 358 |             for mut gen in tmp_params.pedersen_hash_generators.iter().cloned() {
[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]    --> sapling-crypto/src/alt_babyjubjub/mod.rs:296:17
[INFO] [stdout]     |
[INFO] [stdout] 296 |             for mut gen in tmp_params.pedersen_hash_generators.iter().cloned() {
[INFO] [stdout]     |                 ----^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stdout]   --> sapling-crypto/src/circuit/sprout/input.rs:78:37
[INFO] [stdout]    |
[INFO] [stdout] 78 |         for (i, layer) in auth_path.into_iter().enumerate() {
[INFO] [stdout]    |                                     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout]    = note: `#[warn(array_into_iter)]` on by default
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 78 |         for (i, layer) in auth_path.iter().enumerate() {
[INFO] [stdout]    |                                     ~~~~
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]    |
[INFO] [stdout] 78 |         for (i, layer) in IntoIterator::into_iter(auth_path).enumerate() {
[INFO] [stdout]    |                           ++++++++++++++++++++++++         ~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 13 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling rust-miximus v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/blake_circuit.rs:205:75
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub fn generate(seed_slice: &[u32], depth: u32) -> Result<KGGenerate, Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub fn generate(seed_slice: &[u32], depth: u32) -> Result<KGGenerate, Box<dyn Error>> {
[INFO] [stdout]     |                                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/blake_circuit.rs:242:26
[INFO] [stdout]     |
[INFO] [stdout] 242 | ) -> Result<KGProof, Box<Error>> {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 242 | ) -> Result<KGProof, Box<dyn Error>> {
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/blake_circuit.rs:270:27
[INFO] [stdout]     |
[INFO] [stdout] 270 | ) -> Result<KGVerify, Box<Error>> {
[INFO] [stdout]     |                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 270 | ) -> Result<KGVerify, Box<dyn Error>> {
[INFO] [stdout]     |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/zk_util.rs:37:75
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub fn generate(seed_slice: &[u32], depth: u32) -> Result<KGGenerate, Box<Error>> {
[INFO] [stdout]    |                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub fn generate(seed_slice: &[u32], depth: u32) -> Result<KGGenerate, Box<dyn Error>> {
[INFO] [stdout]    |                                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/zk_util.rs:74:26
[INFO] [stdout]    |
[INFO] [stdout] 74 | ) -> Result<KGProof, Box<Error>> {
[INFO] [stdout]    |                          ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 74 | ) -> Result<KGProof, Box<dyn Error>> {
[INFO] [stdout]    |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/zk_util.rs:124:103
[INFO] [stdout]     |
[INFO] [stdout] 124 | pub fn verify(params: &str, proof: &str, nullifier_hex: &str, root_hex: &str) -> Result<KGVerify, Box<Error>> {
[INFO] [stdout]     |                                                                                                       ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 124 | pub fn verify(params: &str, proof: &str, nullifier_hex: &str, root_hex: &str) -> Result<KGVerify, Box<dyn Error>> {
[INFO] [stdout]     |                                                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_booleans` is never used
[INFO] [stdout]    --> src/blake_circuit.rs:137:4
[INFO] [stdout]     |
[INFO] [stdout] 137 | fn print_booleans(booleans: Vec<Boolean>) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate` is never used
[INFO] [stdout]    --> src/blake_circuit.rs:205:8
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub fn generate(seed_slice: &[u32], depth: u32) -> Result<KGGenerate, Box<Error>> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `prove` is never used
[INFO] [stdout]    --> src/blake_circuit.rs:236:8
[INFO] [stdout]     |
[INFO] [stdout] 236 | pub fn prove(
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify` is never used
[INFO] [stdout]    --> src/blake_circuit.rs:265:8
[INFO] [stdout]     |
[INFO] [stdout] 265 | pub fn verify(
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_tree` is never used
[INFO] [stdout]    --> src/blake_circuit.rs:296:8
[INFO] [stdout]     |
[INFO] [stdout] 296 | pub fn generate_tree(seed_slice: &[u32], depth: u32) -> Result<JsValue, JsValue> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `prove_tree` is never used
[INFO] [stdout]    --> src/blake_circuit.rs:306:8
[INFO] [stdout]     |
[INFO] [stdout] 306 | pub fn prove_tree(
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_tree` is never used
[INFO] [stdout]    --> src/blake_circuit.rs:322:8
[INFO] [stdout]     |
[INFO] [stdout] 322 | pub fn verify_tree(
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Empty` is never constructed
[INFO] [stdout]  --> src/blake_merkle_tree.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub enum Tree {
[INFO] [stdout]   |          ---- variant in this enum
[INFO] [stdout] 5 |     Empty {
[INFO] [stdout]   |     ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Tree` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_leaf_from_preimage` is never used
[INFO] [stdout]   --> src/blake_merkle_tree.rs:36:8
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub fn create_leaf_from_preimage(nullifier: [u8; 32], secret: [u8; 32]) -> Tree {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_leaf_list` is never used
[INFO] [stdout]   --> src/blake_merkle_tree.rs:49:8
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub fn create_leaf_list(mut nodes: Vec<[u8; 32]>, depth: usize) -> Vec<Box<Tree>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_root_from_proof` is never used
[INFO] [stdout]    --> src/blake_merkle_tree.rs:178:8
[INFO] [stdout]     |
[INFO] [stdout] 178 | pub fn compute_root_from_proof(leaf: [u8; 32], path: Vec<Option<(bool, [u8; 32])>>) -> [u8; 32] {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Empty` is never constructed
[INFO] [stdout]  --> src/merkle_tree.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub enum Tree {
[INFO] [stdout]   |          ---- variant in this enum
[INFO] [stdout] 8 |     Empty {
[INFO] [stdout]   |     ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Tree` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_leaf_from_preimage` is never used
[INFO] [stdout]   --> src/merkle_tree.rs:35:8
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub fn create_leaf_from_preimage(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_leaf_list` is never used
[INFO] [stdout]   --> src/merkle_tree.rs:56:8
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub fn create_leaf_list(mut nodes: Vec<pairing::bn256::Fr>, depth: usize) -> Vec<Box<Tree>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_root_from_proof` is never used
[INFO] [stdout]    --> src/merkle_tree.rs:188:8
[INFO] [stdout]     |
[INFO] [stdout] 188 | pub fn compute_root_from_proof(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/blake_circuit.rs:224:26
[INFO] [stdout]     |
[INFO] [stdout] 224 |         Err(m) => panic!(m),
[INFO] [stdout]     |                          ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 224 |         Err(m) => panic!("{}", m),
[INFO] [stdout]     |                          +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]     |
[INFO] [stdout] 224 |         Err(m) => std::panic::panic_any(m),
[INFO] [stdout]     |                   ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stdout]   --> src/blake_merkle_tree.rs:39:31
[INFO] [stdout]    |
[INFO] [stdout] 39 |     preimage.extend(nullifier.into_iter());
[INFO] [stdout]    |                               ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout]    = note: `#[warn(array_into_iter)]` on by default
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 39 |     preimage.extend(nullifier.iter());
[INFO] [stdout]    |                               ~~~~
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]    |
[INFO] [stdout] 39 |     preimage.extend(IntoIterator::into_iter(nullifier));
[INFO] [stdout]    |                     ++++++++++++++++++++++++         ~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stdout]   --> src/blake_merkle_tree.rs:40:28
[INFO] [stdout]    |
[INFO] [stdout] 40 |     preimage.extend(secret.into_iter());
[INFO] [stdout]    |                            ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 40 |     preimage.extend(secret.iter());
[INFO] [stdout]    |                            ~~~~
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]    |
[INFO] [stdout] 40 |     preimage.extend(IntoIterator::into_iter(secret));
[INFO] [stdout]    |                     ++++++++++++++++++++++++      ~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 24 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 8.69s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: syn v0.14.9
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] running `Command { std: "docker" "inspect" "e8ffa1d0f4577ba92d09bc36371239987180257e4b184cb62eebae9ffcc1e6e7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e8ffa1d0f4577ba92d09bc36371239987180257e4b184cb62eebae9ffcc1e6e7", kill_on_drop: false }`
[INFO] [stdout] e8ffa1d0f4577ba92d09bc36371239987180257e4b184cb62eebae9ffcc1e6e7
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2023-12-22" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 8cae94508a9e58745b8804495f6b3fb48d27ef3412369ca0597d0a7174641b8f
[INFO] running `Command { std: "docker" "start" "-a" "8cae94508a9e58745b8804495f6b3fb48d27ef3412369ca0597d0a7174641b8f", kill_on_drop: false }`
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> ff/src/lib.rs:269:18
[INFO] [stdout]     |
[INFO] [stdout] 269 |     fn from_repr(Self::Repr) -> Result<Self, PrimeFieldDecodingError>;
[INFO] [stdout]     |                  ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Repr`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]     = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> pairing/src/lib.rs:292:39
[INFO] [stdout]     |
[INFO] [stdout] 292 |             _ => write!(f, "{}", self.description()),
[INFO] [stdout]     |                                       ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stdout]   --> pairing/src/lib.rs:97:62
[INFO] [stdout]    |
[INFO] [stdout] 97 |             [(&(p.into().prepare()), &(q.into().prepare()))].into_iter(),
[INFO] [stdout]    |                                                              ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout]    = note: `#[warn(array_into_iter)]` on by default
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 97 |             [(&(p.into().prepare()), &(q.into().prepare()))].iter(),
[INFO] [stdout]    |                                                              ~~~~
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]    |
[INFO] [stdout] 97 |             IntoIterator::into_iter([(&(p.into().prepare()), &(q.into().prepare()))]),
[INFO] [stdout]    |             ++++++++++++++++++++++++                                                ~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> bellman/src/multiexp.rs:150:10
[INFO] [stdout]     |
[INFO] [stdout] 150 | ) -> Box<Future<Item=<G as CurveAffine>::Projective, Error=SynthesisError>>
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 150 | ) -> Box<dyn Future<Item=<G as CurveAffine>::Projective, Error=SynthesisError>>
[INFO] [stdout]     |          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> bellman/src/multiexp.rs:244:10
[INFO] [stdout]     |
[INFO] [stdout] 244 | ) -> Box<Future<Item=<G as CurveAffine>::Projective, Error=SynthesisError>>
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 244 | ) -> Box<dyn Future<Item=<G as CurveAffine>::Projective, Error=SynthesisError>>
[INFO] [stdout]     |          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> bellman/src/lib.rs:221:34
[INFO] [stdout]     |
[INFO] [stdout] 221 |             write!(f, "{}", self.description())
[INFO] [stdout]     |                                  ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stdout]   --> bellman/src/groth16/verifier.rs:67:11
[INFO] [stdout]    |
[INFO] [stdout] 67 |         ].into_iter())
[INFO] [stdout]    |           ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout]    = note: `#[warn(array_into_iter)]` on by default
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 67 |         ].iter())
[INFO] [stdout]    |           ~~~~
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]    |
[INFO] [stdout] 63 ~         &E::miller_loop(IntoIterator::into_iter([
[INFO] [stdout] 64 |             (&proof.a.prepare(), &proof.b.prepare()),
[INFO] [stdout] 65 |             (&acc.into_affine().prepare(), &pvk.neg_gamma_g2),
[INFO] [stdout] 66 |             (&proof.c.prepare(), &pvk.neg_delta_g2)
[INFO] [stdout] 67 ~         ]))
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 4 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> sapling-crypto/src/babyjubjub/fs.rs:82:9
[INFO] [stdout]    |
[INFO] [stdout] 82 |         try!(write!(f, "0x"));
[INFO] [stdout]    |         ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> sapling-crypto/src/babyjubjub/fs.rs:84:13
[INFO] [stdout]    |
[INFO] [stdout] 84 |             try!(write!(f, "{:016x}", *i));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> sapling-crypto/src/babyjubjub/mod.rs:137:34
[INFO] [stdout]     |
[INFO] [stdout] 137 |     fn circuit_generators(&self, FixedGenerators) -> &[Vec<(E::Fr, E::Fr)>];
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: FixedGenerators`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]     = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> sapling-crypto/src/jubjub/fs.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 52 |         try!(write!(f, "0x"));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> sapling-crypto/src/jubjub/fs.rs:54:13
[INFO] [stdout]    |
[INFO] [stdout] 54 |             try!(write!(f, "{:016x}", *i));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> sapling-crypto/src/jubjub/mod.rs:134:34
[INFO] [stdout]     |
[INFO] [stdout] 134 |     fn circuit_generators(&self, FixedGenerators) -> &[Vec<(E::Fr, E::Fr)>];
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: FixedGenerators`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> sapling-crypto/src/alt_babyjubjub/fs.rs:82:9
[INFO] [stdout]    |
[INFO] [stdout] 82 |         try!(write!(f, "0x"));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling rust-miximus v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> sapling-crypto/src/alt_babyjubjub/fs.rs:84:13
[INFO] [stdout]    |
[INFO] [stdout] 84 |             try!(write!(f, "{:016x}", *i));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> sapling-crypto/src/circuit/num.rs:409:17
[INFO] [stdout]     |
[INFO] [stdout] 409 |     ) -> Result<(Self), SynthesisError>
[INFO] [stdout]     |                 ^    ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 409 -     ) -> Result<(Self), SynthesisError>
[INFO] [stdout] 409 +     ) -> Result<Self, SynthesisError>
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> sapling-crypto/src/babyjubjub/mod.rs:366:17
[INFO] [stdout]     |
[INFO] [stdout] 366 |             for mut gen in tmp_params.pedersen_hash_generators.iter().cloned() {
[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]    --> sapling-crypto/src/jubjub/mod.rs:358:17
[INFO] [stdout]     |
[INFO] [stdout] 358 |             for mut gen in tmp_params.pedersen_hash_generators.iter().cloned() {
[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]    --> sapling-crypto/src/alt_babyjubjub/mod.rs:296:17
[INFO] [stdout]     |
[INFO] [stdout] 296 |             for mut gen in tmp_params.pedersen_hash_generators.iter().cloned() {
[INFO] [stdout]     |                 ----^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stdout]   --> sapling-crypto/src/circuit/sprout/input.rs:78:37
[INFO] [stdout]    |
[INFO] [stdout] 78 |         for (i, layer) in auth_path.into_iter().enumerate() {
[INFO] [stdout]    |                                     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout]    = note: `#[warn(array_into_iter)]` on by default
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 78 |         for (i, layer) in auth_path.iter().enumerate() {
[INFO] [stdout]    |                                     ~~~~
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]    |
[INFO] [stdout] 78 |         for (i, layer) in IntoIterator::into_iter(auth_path).enumerate() {
[INFO] [stdout]    |                           ++++++++++++++++++++++++         ~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 13 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sapling_crypto::circuit`
[INFO] [stdout]    --> src/lib.rs:198:9
[INFO] [stdout]     |
[INFO] [stdout] 198 |     use sapling_crypto::circuit;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/blake_circuit.rs:205:75
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub fn generate(seed_slice: &[u32], depth: u32) -> Result<KGGenerate, Box<Error>> {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub fn generate(seed_slice: &[u32], depth: u32) -> Result<KGGenerate, Box<dyn Error>> {
[INFO] [stdout]     |                                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/blake_circuit.rs:242:26
[INFO] [stdout]     |
[INFO] [stdout] 242 | ) -> Result<KGProof, Box<Error>> {
[INFO] [stdout]     |                          ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 242 | ) -> Result<KGProof, Box<dyn Error>> {
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/blake_circuit.rs:270:27
[INFO] [stdout]     |
[INFO] [stdout] 270 | ) -> Result<KGVerify, Box<Error>> {
[INFO] [stdout]     |                           ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 270 | ) -> Result<KGVerify, Box<dyn Error>> {
[INFO] [stdout]     |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/zk_util.rs:37:75
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub fn generate(seed_slice: &[u32], depth: u32) -> Result<KGGenerate, Box<Error>> {
[INFO] [stdout]    |                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub fn generate(seed_slice: &[u32], depth: u32) -> Result<KGGenerate, Box<dyn Error>> {
[INFO] [stdout]    |                                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/zk_util.rs:74:26
[INFO] [stdout]    |
[INFO] [stdout] 74 | ) -> Result<KGProof, Box<Error>> {
[INFO] [stdout]    |                          ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 74 | ) -> Result<KGProof, Box<dyn Error>> {
[INFO] [stdout]    |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/zk_util.rs:124:103
[INFO] [stdout]     |
[INFO] [stdout] 124 | pub fn verify(params: &str, proof: &str, nullifier_hex: &str, root_hex: &str) -> Result<KGVerify, Box<Error>> {
[INFO] [stdout]     |                                                                                                       ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 124 | pub fn verify(params: &str, proof: &str, nullifier_hex: &str, root_hex: &str) -> Result<KGVerify, Box<dyn Error>> {
[INFO] [stdout]     |                                                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_booleans` is never used
[INFO] [stdout]    --> src/blake_circuit.rs:137:4
[INFO] [stdout]     |
[INFO] [stdout] 137 | fn print_booleans(booleans: Vec<Boolean>) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify` is never used
[INFO] [stdout]    --> src/blake_circuit.rs:265:8
[INFO] [stdout]     |
[INFO] [stdout] 265 | pub fn verify(
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_tree` is never used
[INFO] [stdout]    --> src/blake_circuit.rs:296:8
[INFO] [stdout]     |
[INFO] [stdout] 296 | pub fn generate_tree(seed_slice: &[u32], depth: u32) -> Result<JsValue, JsValue> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `prove_tree` is never used
[INFO] [stdout]    --> src/blake_circuit.rs:306:8
[INFO] [stdout]     |
[INFO] [stdout] 306 | pub fn prove_tree(
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_tree` is never used
[INFO] [stdout]    --> src/blake_circuit.rs:322:8
[INFO] [stdout]     |
[INFO] [stdout] 322 | pub fn verify_tree(
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_root_from_proof` is never used
[INFO] [stdout]    --> src/blake_merkle_tree.rs:178:8
[INFO] [stdout]     |
[INFO] [stdout] 178 | pub fn compute_root_from_proof(leaf: [u8; 32], path: Vec<Option<(bool, [u8; 32])>>) -> [u8; 32] {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/blake_circuit.rs:224:26
[INFO] [stdout]     |
[INFO] [stdout] 224 |         Err(m) => panic!(m),
[INFO] [stdout]     |                          ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 224 |         Err(m) => panic!("{}", m),
[INFO] [stdout]     |                          +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]     |
[INFO] [stdout] 224 |         Err(m) => std::panic::panic_any(m),
[INFO] [stdout]     |                   ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stdout]   --> src/blake_merkle_tree.rs:39:31
[INFO] [stdout]    |
[INFO] [stdout] 39 |     preimage.extend(nullifier.into_iter());
[INFO] [stdout]    |                               ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout]    = note: `#[warn(array_into_iter)]` on by default
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 39 |     preimage.extend(nullifier.iter());
[INFO] [stdout]    |                               ~~~~
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]    |
[INFO] [stdout] 39 |     preimage.extend(IntoIterator::into_iter(nullifier));
[INFO] [stdout]    |                     ++++++++++++++++++++++++         ~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stdout]   --> src/blake_merkle_tree.rs:40:28
[INFO] [stdout]    |
[INFO] [stdout] 40 |     preimage.extend(secret.into_iter());
[INFO] [stdout]    |                            ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 40 |     preimage.extend(secret.iter());
[INFO] [stdout]    |                            ~~~~
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]    |
[INFO] [stdout] 40 |     preimage.extend(IntoIterator::into_iter(secret));
[INFO] [stdout]    |                     ++++++++++++++++++++++++      ~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 16 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 2.10s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: syn v0.14.9
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] running `Command { std: "docker" "inspect" "8cae94508a9e58745b8804495f6b3fb48d27ef3412369ca0597d0a7174641b8f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8cae94508a9e58745b8804495f6b3fb48d27ef3412369ca0597d0a7174641b8f", kill_on_drop: false }`
[INFO] [stdout] 8cae94508a9e58745b8804495f6b3fb48d27ef3412369ca0597d0a7174641b8f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2023-12-22" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] f583d89781ea945d5fc768a1d8ecd59e6cbf65094b925204c9b5af697eb8c96f
[INFO] running `Command { std: "docker" "start" "-a" "f583d89781ea945d5fc768a1d8ecd59e6cbf65094b925204c9b5af697eb8c96f", kill_on_drop: false }`
[INFO] [stderr] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stderr]    --> ff/src/lib.rs:269:18
[INFO] [stderr]     |
[INFO] [stderr] 269 |     fn from_repr(Self::Repr) -> Result<Self, PrimeFieldDecodingError>;
[INFO] [stderr]     |                  ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Repr`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stderr]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stderr]     = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `ff` (lib) generated 1 warning (run `cargo fix --lib -p ff` to apply 1 suggestion)
[INFO] [stderr] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stderr]    --> pairing/src/lib.rs:292:39
[INFO] [stderr]     |
[INFO] [stderr] 292 |             _ => write!(f, "{}", self.description()),
[INFO] [stderr]     |                                       ^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stderr]   --> pairing/src/lib.rs:97:62
[INFO] [stderr]    |
[INFO] [stderr] 97 |             [(&(p.into().prepare()), &(q.into().prepare()))].into_iter(),
[INFO] [stderr]    |                                                              ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this changes meaning in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stderr]    = note: `#[warn(array_into_iter)]` on by default
[INFO] [stderr] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stderr]    |
[INFO] [stderr] 97 |             [(&(p.into().prepare()), &(q.into().prepare()))].iter(),
[INFO] [stderr]    |                                                              ~~~~
[INFO] [stderr] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stderr]    |
[INFO] [stderr] 97 |             IntoIterator::into_iter([(&(p.into().prepare()), &(q.into().prepare()))]),
[INFO] [stderr]    |             ++++++++++++++++++++++++                                                ~
[INFO] [stderr] 
[INFO] [stderr] warning: `pairing` (lib) generated 2 warnings (run `cargo fix --lib -p pairing` to apply 1 suggestion)
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> bellman/src/multiexp.rs:150:10
[INFO] [stderr]     |
[INFO] [stderr] 150 | ) -> Box<Future<Item=<G as CurveAffine>::Projective, Error=SynthesisError>>
[INFO] [stderr]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 150 | ) -> Box<dyn Future<Item=<G as CurveAffine>::Projective, Error=SynthesisError>>
[INFO] [stderr]     |          +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> bellman/src/multiexp.rs:244:10
[INFO] [stderr]     |
[INFO] [stderr] 244 | ) -> Box<Future<Item=<G as CurveAffine>::Projective, Error=SynthesisError>>
[INFO] [stderr]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 244 | ) -> Box<dyn Future<Item=<G as CurveAffine>::Projective, Error=SynthesisError>>
[INFO] [stderr]     |          +++
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stderr]    --> bellman/src/lib.rs:221:34
[INFO] [stderr]     |
[INFO] [stderr] 221 |             write!(f, "{}", self.description())
[INFO] [stderr]     |                                  ^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stderr]   --> bellman/src/groth16/verifier.rs:67:11
[INFO] [stderr]    |
[INFO] [stderr] 67 |         ].into_iter())
[INFO] [stderr]    |           ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this changes meaning in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stderr]    = note: `#[warn(array_into_iter)]` on by default
[INFO] [stderr] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stderr]    |
[INFO] [stderr] 67 |         ].iter())
[INFO] [stderr]    |           ~~~~
[INFO] [stderr] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stderr]    |
[INFO] [stderr] 63 ~         &E::miller_loop(IntoIterator::into_iter([
[INFO] [stderr] 64 |             (&proof.a.prepare(), &proof.b.prepare()),
[INFO] [stderr] 65 |             (&acc.into_affine().prepare(), &pvk.neg_gamma_g2),
[INFO] [stderr] 66 |             (&proof.c.prepare(), &pvk.neg_delta_g2)
[INFO] [stderr] 67 ~         ]))
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: `bellman` (lib) generated 4 warnings (run `cargo fix --lib -p bellman` to apply 3 suggestions)
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> sapling-crypto/src/babyjubjub/fs.rs:82:9
[INFO] [stderr]    |
[INFO] [stderr] 82 |         try!(write!(f, "0x"));
[INFO] [stderr]    |         ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> sapling-crypto/src/babyjubjub/fs.rs:84:13
[INFO] [stderr]    |
[INFO] [stderr] 84 |             try!(write!(f, "{:016x}", *i));
[INFO] [stderr]    |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stderr]    --> sapling-crypto/src/babyjubjub/mod.rs:137:34
[INFO] [stderr]     |
[INFO] [stderr] 137 |     fn circuit_generators(&self, FixedGenerators) -> &[Vec<(E::Fr, E::Fr)>];
[INFO] [stderr]     |                                  ^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: FixedGenerators`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stderr]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stderr]     = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> sapling-crypto/src/jubjub/fs.rs:52:9
[INFO] [stderr]    |
[INFO] [stderr] 52 |         try!(write!(f, "0x"));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> sapling-crypto/src/jubjub/fs.rs:54:13
[INFO] [stderr]    |
[INFO] [stderr] 54 |             try!(write!(f, "{:016x}", *i));
[INFO] [stderr]    |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stderr]    --> sapling-crypto/src/jubjub/mod.rs:134:34
[INFO] [stderr]     |
[INFO] [stderr] 134 |     fn circuit_generators(&self, FixedGenerators) -> &[Vec<(E::Fr, E::Fr)>];
[INFO] [stderr]     |                                  ^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: FixedGenerators`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stderr]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> sapling-crypto/src/alt_babyjubjub/fs.rs:82:9
[INFO] [stderr]    |
[INFO] [stderr] 82 |         try!(write!(f, "0x"));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> sapling-crypto/src/alt_babyjubjub/fs.rs:84:13
[INFO] [stderr]    |
[INFO] [stderr] 84 |             try!(write!(f, "{:016x}", *i));
[INFO] [stderr]    |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]    --> sapling-crypto/src/circuit/num.rs:409:17
[INFO] [stderr]     |
[INFO] [stderr] 409 |     ) -> Result<(Self), SynthesisError>
[INFO] [stderr]     |                 ^    ^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 409 -     ) -> Result<(Self), SynthesisError>
[INFO] [stderr] 409 +     ) -> Result<Self, SynthesisError>
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> sapling-crypto/src/babyjubjub/mod.rs:366:17
[INFO] [stderr]     |
[INFO] [stderr] 366 |             for mut gen in tmp_params.pedersen_hash_generators.iter().cloned() {
[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]    --> sapling-crypto/src/jubjub/mod.rs:358:17
[INFO] [stderr]     |
[INFO] [stderr] 358 |             for mut gen in tmp_params.pedersen_hash_generators.iter().cloned() {
[INFO] [stderr]     |                 ----^^^
[INFO] [stderr]     |                 |
[INFO] [stderr]     |                 help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> sapling-crypto/src/alt_babyjubjub/mod.rs:296:17
[INFO] [stderr]     |
[INFO] [stderr] 296 |             for mut gen in tmp_params.pedersen_hash_generators.iter().cloned() {
[INFO] [stderr]     |                 ----^^^
[INFO] [stderr]     |                 |
[INFO] [stderr]     |                 help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stderr]   --> sapling-crypto/src/circuit/sprout/input.rs:78:37
[INFO] [stderr]    |
[INFO] [stderr] 78 |         for (i, layer) in auth_path.into_iter().enumerate() {
[INFO] [stderr]    |                                     ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this changes meaning in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stderr]    = note: `#[warn(array_into_iter)]` on by default
[INFO] [stderr] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stderr]    |
[INFO] [stderr] 78 |         for (i, layer) in auth_path.iter().enumerate() {
[INFO] [stderr]    |                                     ~~~~
[INFO] [stderr] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stderr]    |
[INFO] [stderr] 78 |         for (i, layer) in IntoIterator::into_iter(auth_path).enumerate() {
[INFO] [stderr]    |                           ++++++++++++++++++++++++         ~
[INFO] [stderr] 
[INFO] [stderr] warning: `sapling-crypto` (lib) generated 13 warnings (run `cargo fix --lib -p sapling-crypto` to apply 7 suggestions)
[INFO] [stderr] warning: unused import: `sapling_crypto::circuit`
[INFO] [stderr]    --> src/lib.rs:198:9
[INFO] [stderr]     |
[INFO] [stderr] 198 |     use sapling_crypto::circuit;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/blake_circuit.rs:205:75
[INFO] [stderr]     |
[INFO] [stderr] 205 | pub fn generate(seed_slice: &[u32], depth: u32) -> Result<KGGenerate, Box<Error>> {
[INFO] [stderr]     |                                                                           ^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 205 | pub fn generate(seed_slice: &[u32], depth: u32) -> Result<KGGenerate, Box<dyn Error>> {
[INFO] [stderr]     |                                                                           +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/blake_circuit.rs:242:26
[INFO] [stderr]     |
[INFO] [stderr] 242 | ) -> Result<KGProof, Box<Error>> {
[INFO] [stderr]     |                          ^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 242 | ) -> Result<KGProof, Box<dyn Error>> {
[INFO] [stderr]     |                          +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/blake_circuit.rs:270:27
[INFO] [stderr]     |
[INFO] [stderr] 270 | ) -> Result<KGVerify, Box<Error>> {
[INFO] [stderr]     |                           ^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 270 | ) -> Result<KGVerify, Box<dyn Error>> {
[INFO] [stderr]     |                           +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/zk_util.rs:37:75
[INFO] [stderr]    |
[INFO] [stderr] 37 | pub fn generate(seed_slice: &[u32], depth: u32) -> Result<KGGenerate, Box<Error>> {
[INFO] [stderr]    |                                                                           ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 37 | pub fn generate(seed_slice: &[u32], depth: u32) -> Result<KGGenerate, Box<dyn Error>> {
[INFO] [stderr]    |                                                                           +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/zk_util.rs:74:26
[INFO] [stderr]    |
[INFO] [stderr] 74 | ) -> Result<KGProof, Box<Error>> {
[INFO] [stderr]    |                          ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 74 | ) -> Result<KGProof, Box<dyn Error>> {
[INFO] [stderr]    |                          +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/zk_util.rs:124:103
[INFO] [stderr]     |
[INFO] [stderr] 124 | pub fn verify(params: &str, proof: &str, nullifier_hex: &str, root_hex: &str) -> Result<KGVerify, Box<Error>> {
[INFO] [stderr]     |                                                                                                       ^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 124 | pub fn verify(params: &str, proof: &str, nullifier_hex: &str, root_hex: &str) -> Result<KGVerify, Box<dyn Error>> {
[INFO] [stderr]     |                                                                                                       +++
[INFO] [stderr] 
[INFO] [stderr] warning: function `print_booleans` is never used
[INFO] [stderr]    --> src/blake_circuit.rs:137:4
[INFO] [stderr]     |
[INFO] [stderr] 137 | fn print_booleans(booleans: Vec<Boolean>) {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `verify` is never used
[INFO] [stderr]    --> src/blake_circuit.rs:265:8
[INFO] [stderr]     |
[INFO] [stderr] 265 | pub fn verify(
[INFO] [stderr]     |        ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `generate_tree` is never used
[INFO] [stderr]    --> src/blake_circuit.rs:296:8
[INFO] [stderr]     |
[INFO] [stderr] 296 | pub fn generate_tree(seed_slice: &[u32], depth: u32) -> Result<JsValue, JsValue> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `prove_tree` is never used
[INFO] [stderr]    --> src/blake_circuit.rs:306:8
[INFO] [stderr]     |
[INFO] [stderr] 306 | pub fn prove_tree(
[INFO] [stderr]     |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `verify_tree` is never used
[INFO] [stderr]    --> src/blake_circuit.rs:322:8
[INFO] [stderr]     |
[INFO] [stderr] 322 | pub fn verify_tree(
[INFO] [stderr]     |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `compute_root_from_proof` is never used
[INFO] [stderr]    --> src/blake_merkle_tree.rs:178:8
[INFO] [stderr]     |
[INFO] [stderr] 178 | pub fn compute_root_from_proof(leaf: [u8; 32], path: Vec<Option<(bool, [u8; 32])>>) -> [u8; 32] {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/blake_circuit.rs:224:26
[INFO] [stderr]     |
[INFO] [stderr] 224 |         Err(m) => panic!(m),
[INFO] [stderr]     |                          ^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]     = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]     |
[INFO] [stderr] 224 |         Err(m) => panic!("{}", m),
[INFO] [stderr]     |                          +++++
[INFO] [stderr] help: or use std::panic::panic_any instead
[INFO] [stderr]     |
[INFO] [stderr] 224 |         Err(m) => std::panic::panic_any(m),
[INFO] [stderr]     |                   ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stderr]   --> src/blake_merkle_tree.rs:39:31
[INFO] [stderr]    |
[INFO] [stderr] 39 |     preimage.extend(nullifier.into_iter());
[INFO] [stderr]    |                               ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this changes meaning in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stderr]    = note: `#[warn(array_into_iter)]` on by default
[INFO] [stderr] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stderr]    |
[INFO] [stderr] 39 |     preimage.extend(nullifier.iter());
[INFO] [stderr]    |                               ~~~~
[INFO] [stderr] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stderr]    |
[INFO] [stderr] 39 |     preimage.extend(IntoIterator::into_iter(nullifier));
[INFO] [stderr]    |                     ++++++++++++++++++++++++         ~
[INFO] [stderr] 
[INFO] [stderr] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stderr]   --> src/blake_merkle_tree.rs:40:28
[INFO] [stderr]    |
[INFO] [stderr] 40 |     preimage.extend(secret.into_iter());
[INFO] [stderr]    |                            ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this changes meaning in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stderr] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stderr]    |
[INFO] [stderr] 40 |     preimage.extend(secret.iter());
[INFO] [stderr]    |                            ~~~~
[INFO] [stderr] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stderr]    |
[INFO] [stderr] 40 |     preimage.extend(IntoIterator::into_iter(secret));
[INFO] [stderr]    |                     ++++++++++++++++++++++++      ~
[INFO] [stderr] 
[INFO] [stderr] warning: `rust-miximus` (lib test) generated 16 warnings (run `cargo fix --lib -p rust-miximus --tests` to apply 10 suggestions)
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.03s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: syn v0.14.9
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/rust_miximus-d83262a376167f04)
[INFO] [stdout] 
[INFO] [stdout] running 8 tests
[INFO] [stdout] test test::create_deposit ... ok
[INFO] [stdout] test test::test_merkle_circuit ... ok
[INFO] [stdout] test test::test_blake_merkle_circuit ... ok
[INFO] [stdout] test test::test_input_circuit_with_bls12_381 ... ok
[INFO] [stdout] test test::test_nullifier_proof ... ok
[INFO] [stdout] test test::test_proof_creation ... ok
[INFO] [stdout] test test::test_bmt_sequence has been running for over 60 seconds
[INFO] [stdout] test test::test_generate_params has been running for over 60 seconds
[INFO] [stdout] test test::test_generate_params ... FAILED
[ERROR] error running command: no output for 300 seconds
[INFO] running `Command { std: "docker" "inspect" "f583d89781ea945d5fc768a1d8ecd59e6cbf65094b925204c9b5af697eb8c96f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f583d89781ea945d5fc768a1d8ecd59e6cbf65094b925204c9b5af697eb8c96f", kill_on_drop: false }`
[INFO] [stdout] f583d89781ea945d5fc768a1d8ecd59e6cbf65094b925204c9b5af697eb8c96f
