[INFO] cloning repository https://github.com/BlockchainIdentityLab/zero-knowledge-rust-example
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/BlockchainIdentityLab/zero-knowledge-rust-example" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FBlockchainIdentityLab%2Fzero-knowledge-rust-example", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FBlockchainIdentityLab%2Fzero-knowledge-rust-example'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] fbdd17e79a054e629587885cd840263b6737b424
[INFO] testing BlockchainIdentityLab/zero-knowledge-rust-example against 1.69.0 for beta-1.70-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FBlockchainIdentityLab%2Fzero-knowledge-rust-example" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/BlockchainIdentityLab/zero-knowledge-rust-example on toolchain 1.69.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.69.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/BlockchainIdentityLab/zero-knowledge-rust-example
[INFO] finished tweaking git repo https://github.com/BlockchainIdentityLab/zero-knowledge-rust-example
[INFO] tweaked toml for git repo https://github.com/BlockchainIdentityLab/zero-knowledge-rust-example written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/BlockchainIdentityLab/zero-knowledge-rust-example 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.69.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded typenum v1.10.0
[INFO] [stderr]   Downloaded rand v0.5.5
[INFO] [stderr]   Downloaded rand_core v0.3.0
[INFO] [stderr]   Downloaded sha3 v0.7.3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+1.69.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] fd106894fc743175d18a81d3ef7965fb31eb6db7323196e679c881f2c16cae9c
[INFO] running `Command { std: "docker" "start" "-a" "fd106894fc743175d18a81d3ef7965fb31eb6db7323196e679c881f2c16cae9c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "fd106894fc743175d18a81d3ef7965fb31eb6db7323196e679c881f2c16cae9c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fd106894fc743175d18a81d3ef7965fb31eb6db7323196e679c881f2c16cae9c", kill_on_drop: false }`
[INFO] [stdout] fd106894fc743175d18a81d3ef7965fb31eb6db7323196e679c881f2c16cae9c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+1.69.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 89e6e058f8cd6510b7aefa6069897aa48262ce22bd88d4afe964632b2183af70
[INFO] running `Command { std: "docker" "start" "-a" "89e6e058f8cd6510b7aefa6069897aa48262ce22bd88d4afe964632b2183af70", kill_on_drop: false }`
[INFO] [stderr]    Compiling typenum v1.10.0
[INFO] [stderr]    Compiling rand_core v0.3.0
[INFO] [stderr]    Compiling byte-tools v0.2.0
[INFO] [stderr]    Compiling arrayref v0.3.5
[INFO] [stderr]    Compiling block-buffer v0.3.3
[INFO] [stderr]    Compiling rand_core v0.2.2
[INFO] [stderr]    Compiling rand v0.5.5
[INFO] [stderr]    Compiling generic-array v0.9.0
[INFO] [stderr]    Compiling digest v0.7.6
[INFO] [stderr]    Compiling sha3 v0.7.3
[INFO] [stderr]    Compiling zk-tutorial v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `Rng`, `thread_rng`
[INFO] [stdout]  --> src/lib.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 | use rand::{thread_rng, Rng};
[INFO] [stdout]   |            ^^^^^^^^^^  ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::error::Error`
[INFO] [stdout]  --> src/lib.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::error::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp`
[INFO] [stdout]  --> src/lib.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::cmp;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp`
[INFO] [stdout]  --> src/prover.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::cmp;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Sha3_256`
[INFO] [stdout]  --> src/prover.rs:6:26
[INFO] [stdout]   |
[INFO] [stdout] 6 | use self::sha3::{Digest, Sha3_256};
[INFO] [stdout]   |                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/prover.rs:93:16
[INFO] [stdout]    |
[INFO] [stdout] 93 |             if (i != self.problem.partition_sizes.len() - 1) {
[INFO] [stdout]    |                ^                                           ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 93 -             if (i != self.problem.partition_sizes.len() - 1) {
[INFO] [stdout] 93 +             if i != self.problem.partition_sizes.len() - 1 {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `thread_rng`
[INFO] [stdout]  --> src/verifier.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | use rand::{thread_rng, Rng, SeedableRng, StdRng};
[INFO] [stdout]   |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Digest`
[INFO] [stdout]  --> src/prover.rs:6:18
[INFO] [stdout]   |
[INFO] [stdout] 6 | use self::sha3::{Digest, Sha3_256};
[INFO] [stdout]   |                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/prover.rs:49:17
[INFO] [stdout]    |
[INFO] [stdout] 49 |         for mut i in 0..num_queries {
[INFO] [stdout]    |                 ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/merkle.rs:32:13
[INFO] [stdout]    |
[INFO] [stdout] 32 |         for i in 0..next_pow_2 {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]   --> src/merkle.rs:58:17
[INFO] [stdout]    |
[INFO] [stdout] 58 |         for (i, value) in leaf_node_data.iter().enumerate().rev() {
[INFO] [stdout]    |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hasher`
[INFO] [stdout]   --> src/merkle.rs:61:25
[INFO] [stdout]    |
[INFO] [stdout] 61 |                 let mut hasher = Sha3_256::new();                   
[INFO] [stdout]    |                         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_hasher`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `abs_val`
[INFO] [stdout]   --> src/verifier.rs:29:13
[INFO] [stdout]    |
[INFO] [stdout] 29 |         let abs_val = (proof.merkle_proof_1.value - proof.merkle_proof_2.value).abs();
[INFO] [stdout]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_abs_val`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `abs_problem`
[INFO] [stdout]   --> src/verifier.rs:30:13
[INFO] [stdout]    |
[INFO] [stdout] 30 |         let abs_problem = problem[query_idx].abs();
[INFO] [stdout]    |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_abs_problem`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/prover.rs:49:13
[INFO] [stdout]    |
[INFO] [stdout] 49 |         for mut i in 0..num_queries {
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/merkle.rs:61:21
[INFO] [stdout]    |
[INFO] [stdout] 61 |                 let mut hasher = Sha3_256::new();                   
[INFO] [stdout]    |                     ----^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 16 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `merkle`, `prover`
[INFO] [stdout]  --> src/main.rs:4:19
[INFO] [stdout]   |
[INFO] [stdout] 4 | use zkpartition::{merkle, prover, problem};
[INFO] [stdout]   |                   ^^^^^^  ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]   --> src/main.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |     let config = problem::PartictionProblem::new(&problem, &assignment).unwrap_or_else(|err| {
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 3.19s
[INFO] running `Command { std: "docker" "inspect" "89e6e058f8cd6510b7aefa6069897aa48262ce22bd88d4afe964632b2183af70", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "89e6e058f8cd6510b7aefa6069897aa48262ce22bd88d4afe964632b2183af70", kill_on_drop: false }`
[INFO] [stdout] 89e6e058f8cd6510b7aefa6069897aa48262ce22bd88d4afe964632b2183af70
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+1.69.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 2af813c2d8a4d626e7c321a299de2c32c09369ae8a0e5e3cb8849b4d3945d91d
[INFO] running `Command { std: "docker" "start" "-a" "2af813c2d8a4d626e7c321a299de2c32c09369ae8a0e5e3cb8849b4d3945d91d", kill_on_drop: false }`
[INFO] [stdout] warning: unused imports: `Rng`, `thread_rng`
[INFO] [stdout]  --> src/lib.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 | use rand::{thread_rng, Rng};
[INFO] [stdout]   |            ^^^^^^^^^^  ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::error::Error`
[INFO] [stdout]  --> src/lib.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::error::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp`
[INFO] [stdout]  --> src/lib.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::cmp;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp`
[INFO] [stdout]  --> src/prover.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::cmp;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Sha3_256`
[INFO] [stdout]  --> src/prover.rs:6:26
[INFO] [stdout]   |
[INFO] [stdout] 6 | use self::sha3::{Digest, Sha3_256};
[INFO] [stdout]   |                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/prover.rs:93:16
[INFO] [stdout]    |
[INFO] [stdout] 93 |             if (i != self.problem.partition_sizes.len() - 1) {
[INFO] [stdout]    |                ^                                           ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 93 -             if (i != self.problem.partition_sizes.len() - 1) {
[INFO] [stdout] 93 +             if i != self.problem.partition_sizes.len() - 1 {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `thread_rng`
[INFO] [stdout]  --> src/verifier.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | use rand::{thread_rng, Rng, SeedableRng, StdRng};
[INFO] [stdout]   |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Digest`
[INFO] [stdout]  --> src/prover.rs:6:18
[INFO] [stdout]   |
[INFO] [stdout] 6 | use self::sha3::{Digest, Sha3_256};
[INFO] [stdout]   |                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/prover.rs:49:17
[INFO] [stdout]    |
[INFO] [stdout] 49 |         for mut i in 0..num_queries {
[INFO] [stdout]    |                 ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling zk-tutorial v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/merkle.rs:32:13
[INFO] [stdout]    |
[INFO] [stdout] 32 |         for i in 0..next_pow_2 {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]   --> src/merkle.rs:58:17
[INFO] [stdout]    |
[INFO] [stdout] 58 |         for (i, value) in leaf_node_data.iter().enumerate().rev() {
[INFO] [stdout]    |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hasher`
[INFO] [stdout]   --> src/merkle.rs:61:25
[INFO] [stdout]    |
[INFO] [stdout] 61 |                 let mut hasher = Sha3_256::new();                   
[INFO] [stdout]    |                         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_hasher`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `abs_val`
[INFO] [stdout]   --> src/verifier.rs:29:13
[INFO] [stdout]    |
[INFO] [stdout] 29 |         let abs_val = (proof.merkle_proof_1.value - proof.merkle_proof_2.value).abs();
[INFO] [stdout]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_abs_val`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `abs_problem`
[INFO] [stdout]   --> src/verifier.rs:30:13
[INFO] [stdout]    |
[INFO] [stdout] 30 |         let abs_problem = problem[query_idx].abs();
[INFO] [stdout]    |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_abs_problem`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/prover.rs:49:13
[INFO] [stdout]    |
[INFO] [stdout] 49 |         for mut i in 0..num_queries {
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/merkle.rs:61:21
[INFO] [stdout]    |
[INFO] [stdout] 61 |                 let mut hasher = Sha3_256::new();                   
[INFO] [stdout]    |                     ----^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 16 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `merkle`, `prover`
[INFO] [stdout]  --> src/main.rs:4:19
[INFO] [stdout]   |
[INFO] [stdout] 4 | use zkpartition::{merkle, prover, problem};
[INFO] [stdout]   |                   ^^^^^^  ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Rng`, `thread_rng`
[INFO] [stdout]  --> src/lib.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 | use rand::{thread_rng, Rng};
[INFO] [stdout]   |            ^^^^^^^^^^  ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::error::Error`
[INFO] [stdout]  --> src/lib.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::error::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp`
[INFO] [stdout]  --> src/lib.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::cmp;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp`
[INFO] [stdout]  --> src/prover.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::cmp;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Sha3_256`
[INFO] [stdout]  --> src/prover.rs:6:26
[INFO] [stdout]   |
[INFO] [stdout] 6 | use self::sha3::{Digest, Sha3_256};
[INFO] [stdout]   |                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/prover.rs:93:16
[INFO] [stdout]    |
[INFO] [stdout] 93 |             if (i != self.problem.partition_sizes.len() - 1) {
[INFO] [stdout]    |                ^                                           ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 93 -             if (i != self.problem.partition_sizes.len() - 1) {
[INFO] [stdout] 93 +             if i != self.problem.partition_sizes.len() - 1 {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `thread_rng`
[INFO] [stdout]  --> src/verifier.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | use rand::{thread_rng, Rng, SeedableRng, StdRng};
[INFO] [stdout]   |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]   --> src/main.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |     let config = problem::PartictionProblem::new(&problem, &assignment).unwrap_or_else(|err| {
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Digest`
[INFO] [stdout]  --> src/prover.rs:6:18
[INFO] [stdout]   |
[INFO] [stdout] 6 | use self::sha3::{Digest, Sha3_256};
[INFO] [stdout]   |                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/prover.rs:49:17
[INFO] [stdout]    |
[INFO] [stdout] 49 |         for mut i in 0..num_queries {
[INFO] [stdout]    |                 ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/merkle.rs:32:13
[INFO] [stdout]    |
[INFO] [stdout] 32 |         for i in 0..next_pow_2 {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]   --> src/merkle.rs:58:17
[INFO] [stdout]    |
[INFO] [stdout] 58 |         for (i, value) in leaf_node_data.iter().enumerate().rev() {
[INFO] [stdout]    |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hasher`
[INFO] [stdout]   --> src/merkle.rs:61:25
[INFO] [stdout]    |
[INFO] [stdout] 61 |                 let mut hasher = Sha3_256::new();                   
[INFO] [stdout]    |                         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_hasher`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `abs_val`
[INFO] [stdout]   --> src/verifier.rs:29:13
[INFO] [stdout]    |
[INFO] [stdout] 29 |         let abs_val = (proof.merkle_proof_1.value - proof.merkle_proof_2.value).abs();
[INFO] [stdout]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_abs_val`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `abs_problem`
[INFO] [stdout]   --> src/verifier.rs:30:13
[INFO] [stdout]    |
[INFO] [stdout] 30 |         let abs_problem = problem[query_idx].abs();
[INFO] [stdout]    |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_abs_problem`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/prover.rs:49:13
[INFO] [stdout]    |
[INFO] [stdout] 49 |         for mut i in 0..num_queries {
[INFO] [stdout]    |             ----^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/merkle.rs:61:21
[INFO] [stdout]    |
[INFO] [stdout] 61 |                 let mut hasher = Sha3_256::new();                   
[INFO] [stdout]    |                     ----^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 16 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.92s
[INFO] running `Command { std: "docker" "inspect" "2af813c2d8a4d626e7c321a299de2c32c09369ae8a0e5e3cb8849b4d3945d91d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2af813c2d8a4d626e7c321a299de2c32c09369ae8a0e5e3cb8849b4d3945d91d", kill_on_drop: false }`
[INFO] [stdout] 2af813c2d8a4d626e7c321a299de2c32c09369ae8a0e5e3cb8849b4d3945d91d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+1.69.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] e9315bffee4e9b07ec9c0be0137aabcad9beef36f4ba2b9f6c5cf1fa9e85ea55
[INFO] running `Command { std: "docker" "start" "-a" "e9315bffee4e9b07ec9c0be0137aabcad9beef36f4ba2b9f6c5cf1fa9e85ea55", kill_on_drop: false }`
[INFO] [stderr] warning: unused imports: `Rng`, `thread_rng`
[INFO] [stderr]  --> src/lib.rs:2:12
[INFO] [stderr]   |
[INFO] [stderr] 2 | use rand::{thread_rng, Rng};
[INFO] [stderr]   |            ^^^^^^^^^^  ^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::error::Error`
[INFO] [stderr]  --> src/lib.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use std::error::Error;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::cmp`
[INFO] [stderr]  --> src/lib.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use std::cmp;
[INFO] [stderr]   |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::cmp`
[INFO] [stderr]  --> src/prover.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 5 | use std::cmp;
[INFO] [stderr]   |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Sha3_256`
[INFO] [stderr]  --> src/prover.rs:6:26
[INFO] [stderr]   |
[INFO] [stderr] 6 | use self::sha3::{Digest, Sha3_256};
[INFO] [stderr]   |                          ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]   --> src/prover.rs:93:16
[INFO] [stderr]    |
[INFO] [stderr] 93 |             if (i != self.problem.partition_sizes.len() - 1) {
[INFO] [stderr]    |                ^                                           ^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 93 -             if (i != self.problem.partition_sizes.len() - 1) {
[INFO] [stderr] 93 +             if i != self.problem.partition_sizes.len() - 1 {
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `thread_rng`
[INFO] [stderr]  --> src/verifier.rs:3:12
[INFO] [stderr]   |
[INFO] [stderr] 3 | use rand::{thread_rng, Rng, SeedableRng, StdRng};
[INFO] [stderr]   |            ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Digest`
[INFO] [stderr]  --> src/prover.rs:6:18
[INFO] [stderr]   |
[INFO] [stderr] 6 | use self::sha3::{Digest, Sha3_256};
[INFO] [stderr]   |                  ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `i`
[INFO] [stderr]   --> src/prover.rs:49:17
[INFO] [stderr]    |
[INFO] [stderr] 49 |         for mut i in 0..num_queries {
[INFO] [stderr]    |                 ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `i`
[INFO] [stderr]   --> src/merkle.rs:32:13
[INFO] [stderr]    |
[INFO] [stderr] 32 |         for i in 0..next_pow_2 {
[INFO] [stderr]    |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]   --> src/merkle.rs:58:17
[INFO] [stderr]    |
[INFO] [stderr] 58 |         for (i, value) in leaf_node_data.iter().enumerate().rev() {
[INFO] [stderr]    |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `hasher`
[INFO] [stderr]   --> src/merkle.rs:61:25
[INFO] [stderr]    |
[INFO] [stderr] 61 |                 let mut hasher = Sha3_256::new();                   
[INFO] [stderr]    |                         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_hasher`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `abs_val`
[INFO] [stderr]   --> src/verifier.rs:29:13
[INFO] [stderr]    |
[INFO] [stderr] 29 |         let abs_val = (proof.merkle_proof_1.value - proof.merkle_proof_2.value).abs();
[INFO] [stderr]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_abs_val`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `abs_problem`
[INFO] [stderr]   --> src/verifier.rs:30:13
[INFO] [stderr]    |
[INFO] [stderr] 30 |         let abs_problem = problem[query_idx].abs();
[INFO] [stderr]    |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_abs_problem`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/prover.rs:49:13
[INFO] [stderr]    |
[INFO] [stderr] 49 |         for mut i in 0..num_queries {
[INFO] [stderr]    |             ----^
[INFO] [stderr]    |             |
[INFO] [stderr]    |             help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/merkle.rs:61:21
[INFO] [stderr]    |
[INFO] [stderr] 61 |                 let mut hasher = Sha3_256::new();                   
[INFO] [stderr]    |                     ----^^^^^^
[INFO] [stderr]    |                     |
[INFO] [stderr]    |                     help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: `zk-tutorial` (lib) generated 16 warnings (run `cargo fix --lib -p zk-tutorial` to apply 15 suggestions)
[INFO] [stderr] warning: `zk-tutorial` (lib test) generated 16 warnings (16 duplicates)
[INFO] [stderr] warning: unused imports: `merkle`, `prover`
[INFO] [stderr]  --> src/main.rs:4:19
[INFO] [stderr]   |
[INFO] [stderr] 4 | use zkpartition::{merkle, prover, problem};
[INFO] [stderr]   |                   ^^^^^^  ^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `config`
[INFO] [stderr]   --> src/main.rs:19:9
[INFO] [stderr]    |
[INFO] [stderr] 19 |     let config = problem::PartictionProblem::new(&problem, &assignment).unwrap_or_else(|err| {
[INFO] [stderr]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `zk-tutorial` (bin "zk-tutorial" test) generated 2 warnings (run `cargo fix --bin "zk-tutorial" --tests` to apply 2 suggestions)
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.02s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/zkpartition-1843b82202fe0e76)
[INFO] [stdout] 
[INFO] [stdout] running 5 tests
[INFO] [stdout] test tests::test_merkle_from_vec ... ok
[INFO] [stdout] test tests::verify_merkle_path ... ok
[INFO] [stdout] test tests::test_get_val_and_path ... ok
[INFO] [stdout] test tests::verify_true_proof ... ok
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/zk_tutorial-732aba453f5790c4)
[INFO] [stdout] test tests::verify_false_proof ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.53s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests zkpartition
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]   --> /opt/rustwide/workdir/src/prover.rs:93:16
[INFO] [stderr]    |
[INFO] [stderr] 93 |             if (i != self.problem.partition_sizes.len() - 1) {
[INFO] [stderr]    |                ^                                           ^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 93 -             if (i != self.problem.partition_sizes.len() - 1) {
[INFO] [stderr] 93 +             if i != self.problem.partition_sizes.len() - 1 {
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: 1 warning emitted
[INFO] [stderr] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "e9315bffee4e9b07ec9c0be0137aabcad9beef36f4ba2b9f6c5cf1fa9e85ea55", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e9315bffee4e9b07ec9c0be0137aabcad9beef36f4ba2b9f6c5cf1fa9e85ea55", kill_on_drop: false }`
[INFO] [stdout] e9315bffee4e9b07ec9c0be0137aabcad9beef36f4ba2b9f6c5cf1fa9e85ea55
