[INFO] cloning repository https://github.com/kcalvinalvin/rustreexo [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/kcalvinalvin/rustreexo" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkcalvinalvin%2Frustreexo", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkcalvinalvin%2Frustreexo'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 7fa88a0d8371fc1a2ff4c27a1c2e112d048d9cd5 [INFO] testing kcalvinalvin/rustreexo against master#595316b4006932405a63862d8fe65f71a6356293 for pr-128254 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkcalvinalvin%2Frustreexo" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/kcalvinalvin/rustreexo on toolchain 595316b4006932405a63862d8fe65f71a6356293 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+595316b4006932405a63862d8fe65f71a6356293" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/kcalvinalvin/rustreexo [INFO] finished tweaking git repo https://github.com/kcalvinalvin/rustreexo [INFO] tweaked toml for git repo https://github.com/kcalvinalvin/rustreexo written to /workspace/builds/worker-2-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/kcalvinalvin/rustreexo 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" "+595316b4006932405a63862d8fe65f71a6356293" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [ERROR] error running command: no output for 300 seconds [ERROR] this task or one of its parent failed! [ERROR] no output for 300 seconds [ERROR] note: run with `RUST_BACKTRACE=1` to display a backtrace. [INFO] testing kcalvinalvin/rustreexo against try#5e89635d7bf1d3033c2eb20378b7b3cbe2dd1a9b for pr-128254 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkcalvinalvin%2Frustreexo" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/kcalvinalvin/rustreexo on toolchain 5e89635d7bf1d3033c2eb20378b7b3cbe2dd1a9b [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+5e89635d7bf1d3033c2eb20378b7b3cbe2dd1a9b" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/kcalvinalvin/rustreexo [INFO] finished tweaking git repo https://github.com/kcalvinalvin/rustreexo [INFO] tweaked toml for git repo https://github.com/kcalvinalvin/rustreexo written to /workspace/builds/worker-2-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/kcalvinalvin/rustreexo 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" "+5e89635d7bf1d3033c2eb20378b7b3cbe2dd1a9b" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded bech32 v0.7.2 [INFO] [stderr] Downloaded bitcoin v0.23.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+5e89635d7bf1d3033c2eb20378b7b3cbe2dd1a9b" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 375d31a8eaa9427b3b9589f96482fd35e7be2853b04f61356f7e99e91f8defe0 [INFO] running `Command { std: "docker" "start" "-a" "375d31a8eaa9427b3b9589f96482fd35e7be2853b04f61356f7e99e91f8defe0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "375d31a8eaa9427b3b9589f96482fd35e7be2853b04f61356f7e99e91f8defe0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "375d31a8eaa9427b3b9589f96482fd35e7be2853b04f61356f7e99e91f8defe0", kill_on_drop: false }` [INFO] [stdout] 375d31a8eaa9427b3b9589f96482fd35e7be2853b04f61356f7e99e91f8defe0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+5e89635d7bf1d3033c2eb20378b7b3cbe2dd1a9b" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 599568f02e1390ea78942c4611b71569398844fd536986e85f7a270e448c491f [INFO] running `Command { std: "docker" "start" "-a" "599568f02e1390ea78942c4611b71569398844fd536986e85f7a270e448c491f", kill_on_drop: false }` [INFO] [stderr] Compiling cc v1.0.41 [INFO] [stderr] Compiling bech32 v0.7.2 [INFO] [stderr] Compiling bitcoin_hashes v0.7.6 [INFO] [stderr] Compiling secp256k1-sys v0.1.2 [INFO] [stderr] Compiling secp256k1 v0.17.2 [INFO] [stderr] Compiling bitcoin v0.23.0 [INFO] [stderr] Compiling rustreexo v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/accumulator/pollard.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HashEngine` [INFO] [stdout] --> src/accumulator/pollard.rs:12:37 [INFO] [stdout] | [INFO] [stdout] 12 | use bitcoin::hashes::{sha256, Hash, HashEngine}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Hash` [INFO] [stdout] --> src/accumulator/pollard.rs:12:31 [INFO] [stdout] | [INFO] [stdout] 12 | use bitcoin::hashes::{sha256, Hash, HashEngine}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `num_leaves` [INFO] [stdout] --> src/accumulator/util.rs:240:22 [INFO] [stdout] | [INFO] [stdout] 240 | fn get_roots_reverse(num_leaves: u64, forest_rows: u8) { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_leaves` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `forest_rows` [INFO] [stdout] --> src/accumulator/util.rs:240:39 [INFO] [stdout] | [INFO] [stdout] 240 | fn get_roots_reverse(num_leaves: u64, forest_rows: u8) { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_forest_rows` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `remember` [INFO] [stdout] --> src/accumulator/pollard.rs:69:50 [INFO] [stdout] | [INFO] [stdout] 69 | fn add_single(&mut self, utxo: sha256::Hash, remember: bool) { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_remember` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `leaves_after_del` [INFO] [stdout] --> src/accumulator/pollard.rs:135:13 [INFO] [stdout] | [INFO] [stdout] 135 | let leaves_after_del = self.num_leaves - dels.len() as u64; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_leaves_after_del` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/accumulator/pollard.rs:127:26 [INFO] [stdout] | [INFO] [stdout] 127 | fn remove(&mut self, mut dels: Vec) { [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: value passed to `p_node_sib` is never read [INFO] [stdout] --> src/accumulator/pollard.rs:153:48 [INFO] [stdout] | [INFO] [stdout] 153 | fn grab_niece(mut p_node: PolNode, mut p_node_sib: PolNode, branch_len: u8, bits: u64) -> Option<(PolNode, PolNode, u8)> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `row_offset` is never used [INFO] [stdout] --> src/accumulator/util.rs:71:4 [INFO] [stdout] | [INFO] [stdout] 71 | fn row_offset(row: u8, forest_rows: u8) -> u64 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `child` is never used [INFO] [stdout] --> src/accumulator/util.rs:124:4 [INFO] [stdout] | [INFO] [stdout] 124 | fn child(pos: u64, forest_rows: u8) -> u64 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `n_grandchild` is never used [INFO] [stdout] --> src/accumulator/util.rs:132:4 [INFO] [stdout] | [INFO] [stdout] 132 | fn n_grandchild(pos: u64, drop: u8, forest_rows: u8) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `cousin` is never used [INFO] [stdout] --> src/accumulator/util.rs:166:4 [INFO] [stdout] | [INFO] [stdout] 166 | fn cousin(pos: u64) -> u64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `num_roots` is never used [INFO] [stdout] --> src/accumulator/util.rs:216:4 [INFO] [stdout] | [INFO] [stdout] 216 | fn num_roots(num_leaves: u64) -> u8 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_roots_reverse` is never used [INFO] [stdout] --> src/accumulator/util.rs:240:4 [INFO] [stdout] | [INFO] [stdout] 240 | fn get_roots_reverse(num_leaves: u64, forest_rows: u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `subtree_positions` is never used [INFO] [stdout] --> src/accumulator/util.rs:246:4 [INFO] [stdout] | [INFO] [stdout] 246 | fn subtree_positions() {} [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `subtree_leafrange` is never used [INFO] [stdout] --> src/accumulator/util.rs:248:4 [INFO] [stdout] | [INFO] [stdout] 248 | fn subtree_leafrange() {} [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `to_leaves` is never used [INFO] [stdout] --> src/accumulator/util.rs:250:4 [INFO] [stdout] | [INFO] [stdout] 250 | fn to_leaves() {} [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `previous_pow2` is never used [INFO] [stdout] --> src/accumulator/util.rs:254:4 [INFO] [stdout] | [INFO] [stdout] 254 | fn previous_pow2(n: u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `HASH` is never used [INFO] [stdout] --> src/accumulator/types.rs:8:6 [INFO] [stdout] | [INFO] [stdout] 8 | type HASH = [u8; 32]; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LeafData` is never constructed [INFO] [stdout] --> src/accumulator/types.rs:24:12 [INFO] [stdout] | [INFO] [stdout] 24 | pub struct LeafData { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `grab_pos` is never used [INFO] [stdout] --> src/accumulator/pollard.rs:151:8 [INFO] [stdout] | [INFO] [stdout] 34 | impl Pollard { [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 151 | fn grab_pos(&mut self, pos: u64) -> Option<(PolNode, PolNode, HashableNode)> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `aunt_op` is never used [INFO] [stdout] --> src/accumulator/pollard.rs:244:8 [INFO] [stdout] | [INFO] [stdout] 241 | impl PolNode { [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 244 | fn aunt_op(&self) -> sha256::Hash { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `pol_swap` is never used [INFO] [stdout] --> src/accumulator/pollard.rs:293:4 [INFO] [stdout] | [INFO] [stdout] 293 | fn pol_swap<'a, 'b>(mut a: &'a mut PolNode, mut asib: &'b mut PolNode, mut b: &'a mut PolNode, mut bsib: &'b mut PolNode) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 24 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 7.31s [INFO] running `Command { std: "docker" "inspect" "599568f02e1390ea78942c4611b71569398844fd536986e85f7a270e448c491f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "599568f02e1390ea78942c4611b71569398844fd536986e85f7a270e448c491f", kill_on_drop: false }` [INFO] [stdout] 599568f02e1390ea78942c4611b71569398844fd536986e85f7a270e448c491f [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+5e89635d7bf1d3033c2eb20378b7b3cbe2dd1a9b" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 9c5e293dc877693426bd830f7007211b8a64328cfe221e3da7de4787db232c21 [INFO] running `Command { std: "docker" "start" "-a" "9c5e293dc877693426bd830f7007211b8a64328cfe221e3da7de4787db232c21", kill_on_drop: false }` [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/accumulator/pollard.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HashEngine` [INFO] [stdout] --> src/accumulator/pollard.rs:12:37 [INFO] [stdout] | [INFO] [stdout] 12 | use bitcoin::hashes::{sha256, Hash, HashEngine}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Hash` [INFO] [stdout] --> src/accumulator/pollard.rs:12:31 [INFO] [stdout] | [INFO] [stdout] 12 | use bitcoin::hashes::{sha256, Hash, HashEngine}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `num_leaves` [INFO] [stdout] --> src/accumulator/util.rs:240:22 [INFO] [stdout] | [INFO] [stdout] 240 | fn get_roots_reverse(num_leaves: u64, forest_rows: u8) { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_leaves` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `forest_rows` [INFO] [stdout] --> src/accumulator/util.rs:240:39 [INFO] [stdout] | [INFO] [stdout] 240 | fn get_roots_reverse(num_leaves: u64, forest_rows: u8) { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_forest_rows` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `remember` [INFO] [stdout] --> src/accumulator/pollard.rs:69:50 [INFO] [stdout] | [INFO] [stdout] 69 | fn add_single(&mut self, utxo: sha256::Hash, remember: bool) { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_remember` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `leaves_after_del` [INFO] [stdout] --> src/accumulator/pollard.rs:135:13 [INFO] [stdout] | [INFO] [stdout] 135 | let leaves_after_del = self.num_leaves - dels.len() as u64; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_leaves_after_del` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/accumulator/pollard.rs:127:26 [INFO] [stdout] | [INFO] [stdout] 127 | fn remove(&mut self, mut dels: Vec) { [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: value passed to `p_node_sib` is never read [INFO] [stdout] --> src/accumulator/pollard.rs:153:48 [INFO] [stdout] | [INFO] [stdout] 153 | fn grab_niece(mut p_node: PolNode, mut p_node_sib: PolNode, branch_len: u8, bits: u64) -> Option<(PolNode, PolNode, u8)> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `row_offset` is never used [INFO] [stdout] --> src/accumulator/util.rs:71:4 [INFO] [stdout] | [INFO] [stdout] 71 | fn row_offset(row: u8, forest_rows: u8) -> u64 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `child` is never used [INFO] [stdout] --> src/accumulator/util.rs:124:4 [INFO] [stdout] | [INFO] [stdout] 124 | fn child(pos: u64, forest_rows: u8) -> u64 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `n_grandchild` is never used [INFO] [stdout] --> src/accumulator/util.rs:132:4 [INFO] [stdout] | [INFO] [stdout] 132 | fn n_grandchild(pos: u64, drop: u8, forest_rows: u8) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `cousin` is never used [INFO] [stdout] --> src/accumulator/util.rs:166:4 [INFO] [stdout] | [INFO] [stdout] 166 | fn cousin(pos: u64) -> u64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `num_roots` is never used [INFO] [stdout] --> src/accumulator/util.rs:216:4 [INFO] [stdout] | [INFO] [stdout] 216 | fn num_roots(num_leaves: u64) -> u8 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_roots_reverse` is never used [INFO] [stdout] --> src/accumulator/util.rs:240:4 [INFO] [stdout] | [INFO] [stdout] 240 | fn get_roots_reverse(num_leaves: u64, forest_rows: u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `subtree_positions` is never used [INFO] [stdout] --> src/accumulator/util.rs:246:4 [INFO] [stdout] | [INFO] [stdout] 246 | fn subtree_positions() {} [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `subtree_leafrange` is never used [INFO] [stdout] --> src/accumulator/util.rs:248:4 [INFO] [stdout] | [INFO] [stdout] 248 | fn subtree_leafrange() {} [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `to_leaves` is never used [INFO] [stdout] --> src/accumulator/util.rs:250:4 [INFO] [stdout] | [INFO] [stdout] 250 | fn to_leaves() {} [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `previous_pow2` is never used [INFO] [stdout] --> src/accumulator/util.rs:254:4 [INFO] [stdout] | [INFO] [stdout] 254 | fn previous_pow2(n: u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `HASH` is never used [INFO] [stdout] --> src/accumulator/types.rs:8:6 [INFO] [stdout] | [INFO] [stdout] 8 | type HASH = [u8; 32]; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LeafData` is never constructed [INFO] [stdout] --> src/accumulator/types.rs:24:12 [INFO] [stdout] | [INFO] [stdout] 24 | pub struct LeafData { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling rustreexo v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: method `grab_pos` is never used [INFO] [stdout] --> src/accumulator/pollard.rs:151:8 [INFO] [stdout] | [INFO] [stdout] 34 | impl Pollard { [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 151 | fn grab_pos(&mut self, pos: u64) -> Option<(PolNode, PolNode, HashableNode)> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `aunt_op` is never used [INFO] [stdout] --> src/accumulator/pollard.rs:244:8 [INFO] [stdout] | [INFO] [stdout] 241 | impl PolNode { [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 244 | fn aunt_op(&self) -> sha256::Hash { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `pol_swap` is never used [INFO] [stdout] --> src/accumulator/pollard.rs:293:4 [INFO] [stdout] | [INFO] [stdout] 293 | fn pol_swap<'a, 'b>(mut a: &'a mut PolNode, mut asib: &'b mut PolNode, mut b: &'a mut PolNode, mut bsib: &'b mut PolNode) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 24 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `println as info` and `println as warn` [INFO] [stdout] --> src/accumulator/util.rs:278:11 [INFO] [stdout] | [INFO] [stdout] 278 | use std::{println as info, println as warn}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/accumulator/pollard.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HashEngine` [INFO] [stdout] --> src/accumulator/pollard.rs:12:37 [INFO] [stdout] | [INFO] [stdout] 12 | use bitcoin::hashes::{sha256, Hash, HashEngine}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::mem` [INFO] [stdout] --> src/accumulator/pollard.rs:415:13 [INFO] [stdout] | [INFO] [stdout] 415 | use std::mem; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Hash` [INFO] [stdout] --> src/accumulator/pollard.rs:12:31 [INFO] [stdout] | [INFO] [stdout] 12 | use bitcoin::hashes::{sha256, Hash, HashEngine}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `num_leaves` [INFO] [stdout] --> src/accumulator/util.rs:240:22 [INFO] [stdout] | [INFO] [stdout] 240 | fn get_roots_reverse(num_leaves: u64, forest_rows: u8) { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_leaves` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `forest_rows` [INFO] [stdout] --> src/accumulator/util.rs:240:39 [INFO] [stdout] | [INFO] [stdout] 240 | fn get_roots_reverse(num_leaves: u64, forest_rows: u8) { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_forest_rows` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `remember` [INFO] [stdout] --> src/accumulator/pollard.rs:69:50 [INFO] [stdout] | [INFO] [stdout] 69 | fn add_single(&mut self, utxo: sha256::Hash, remember: bool) { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_remember` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `leaves_after_del` [INFO] [stdout] --> src/accumulator/pollard.rs:135:13 [INFO] [stdout] | [INFO] [stdout] 135 | let leaves_after_del = self.num_leaves - dels.len() as u64; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_leaves_after_del` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/accumulator/pollard.rs:127:26 [INFO] [stdout] | [INFO] [stdout] 127 | fn remove(&mut self, mut dels: Vec) { [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: value passed to `p_node_sib` is never read [INFO] [stdout] --> src/accumulator/pollard.rs:153:48 [INFO] [stdout] | [INFO] [stdout] 153 | fn grab_niece(mut p_node: PolNode, mut p_node_sib: PolNode, branch_len: u8, bits: u64) -> Option<(PolNode, PolNode, u8)> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `h1_copy` [INFO] [stdout] --> src/accumulator/pollard.rs:421:13 [INFO] [stdout] | [INFO] [stdout] 421 | let h1_copy = h1.clone(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_h1_copy` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `h2_copy` [INFO] [stdout] --> src/accumulator/pollard.rs:427:13 [INFO] [stdout] | [INFO] [stdout] 427 | let h2_copy = h2.clone(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_h2_copy` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `h3_copy` [INFO] [stdout] --> src/accumulator/pollard.rs:433:13 [INFO] [stdout] | [INFO] [stdout] 433 | let h3_copy = h3.clone(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_h3_copy` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `h4_copy` [INFO] [stdout] --> src/accumulator/pollard.rs:439:13 [INFO] [stdout] | [INFO] [stdout] 439 | let h4_copy = h4.clone(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_h4_copy` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `child` is never used [INFO] [stdout] --> src/accumulator/util.rs:124:4 [INFO] [stdout] | [INFO] [stdout] 124 | fn child(pos: u64, forest_rows: u8) -> u64 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `n_grandchild` is never used [INFO] [stdout] --> src/accumulator/util.rs:132:4 [INFO] [stdout] | [INFO] [stdout] 132 | fn n_grandchild(pos: u64, drop: u8, forest_rows: u8) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `cousin` is never used [INFO] [stdout] --> src/accumulator/util.rs:166:4 [INFO] [stdout] | [INFO] [stdout] 166 | fn cousin(pos: u64) -> u64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `num_roots` is never used [INFO] [stdout] --> src/accumulator/util.rs:216:4 [INFO] [stdout] | [INFO] [stdout] 216 | fn num_roots(num_leaves: u64) -> u8 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_roots_reverse` is never used [INFO] [stdout] --> src/accumulator/util.rs:240:4 [INFO] [stdout] | [INFO] [stdout] 240 | fn get_roots_reverse(num_leaves: u64, forest_rows: u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `subtree_positions` is never used [INFO] [stdout] --> src/accumulator/util.rs:246:4 [INFO] [stdout] | [INFO] [stdout] 246 | fn subtree_positions() {} [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `subtree_leafrange` is never used [INFO] [stdout] --> src/accumulator/util.rs:248:4 [INFO] [stdout] | [INFO] [stdout] 248 | fn subtree_leafrange() {} [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `to_leaves` is never used [INFO] [stdout] --> src/accumulator/util.rs:250:4 [INFO] [stdout] | [INFO] [stdout] 250 | fn to_leaves() {} [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `previous_pow2` is never used [INFO] [stdout] --> src/accumulator/util.rs:254:4 [INFO] [stdout] | [INFO] [stdout] 254 | fn previous_pow2(n: u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `HASH` is never used [INFO] [stdout] --> src/accumulator/types.rs:8:6 [INFO] [stdout] | [INFO] [stdout] 8 | type HASH = [u8; 32]; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LeafData` is never constructed [INFO] [stdout] --> src/accumulator/types.rs:24:12 [INFO] [stdout] | [INFO] [stdout] 24 | pub struct LeafData { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `grab_pos` is never used [INFO] [stdout] --> src/accumulator/pollard.rs:151:8 [INFO] [stdout] | [INFO] [stdout] 34 | impl Pollard { [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 151 | fn grab_pos(&mut self, pos: u64) -> Option<(PolNode, PolNode, HashableNode)> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `aunt_op` is never used [INFO] [stdout] --> src/accumulator/pollard.rs:244:8 [INFO] [stdout] | [INFO] [stdout] 241 | impl PolNode { [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 244 | fn aunt_op(&self) -> sha256::Hash { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `pol_swap` is never used [INFO] [stdout] --> src/accumulator/pollard.rs:293:4 [INFO] [stdout] | [INFO] [stdout] 293 | fn pol_swap<'a, 'b>(mut a: &'a mut PolNode, mut asib: &'b mut PolNode, mut b: &'a mut PolNode, mut bsib: &'b mut PolNode) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check_root` is never used [INFO] [stdout] --> src/accumulator/pollard.rs:356:8 [INFO] [stdout] | [INFO] [stdout] 356 | fn check_root() { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_pol_del` is never used [INFO] [stdout] --> src/accumulator/pollard.rs:359:8 [INFO] [stdout] | [INFO] [stdout] 359 | fn test_pol_del() { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> src/accumulator/pollard.rs:316:13 [INFO] [stdout] | [INFO] [stdout] 316 | &pollard.modify(vec![leaf], vec![]); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 316 | let _ = &pollard.modify(vec![leaf], vec![]); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> src/accumulator/pollard.rs:375:13 [INFO] [stdout] | [INFO] [stdout] 375 | &pol.modify(vec![leaf], vec![]); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 375 | let _ = &pol.modify(vec![leaf], vec![]); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 33 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.72s [INFO] running `Command { std: "docker" "inspect" "9c5e293dc877693426bd830f7007211b8a64328cfe221e3da7de4787db232c21", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9c5e293dc877693426bd830f7007211b8a64328cfe221e3da7de4787db232c21", kill_on_drop: false }` [INFO] [stdout] 9c5e293dc877693426bd830f7007211b8a64328cfe221e3da7de4787db232c21 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+5e89635d7bf1d3033c2eb20378b7b3cbe2dd1a9b" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] b4d4e04978fe72e713aceaa22748d14485041bb1261b44fa179080a6d5eee535 [INFO] running `Command { std: "docker" "start" "-a" "b4d4e04978fe72e713aceaa22748d14485041bb1261b44fa179080a6d5eee535", kill_on_drop: false }` [INFO] [stderr] warning: unused import: `std::collections::HashMap` [INFO] [stderr] --> src/accumulator/pollard.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use std::collections::HashMap; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `HashEngine` [INFO] [stderr] --> src/accumulator/pollard.rs:12:37 [INFO] [stderr] | [INFO] [stderr] 12 | use bitcoin::hashes::{sha256, Hash, HashEngine}; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Hash` [INFO] [stderr] --> src/accumulator/pollard.rs:12:31 [INFO] [stderr] | [INFO] [stderr] 12 | use bitcoin::hashes::{sha256, Hash, HashEngine}; [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `num_leaves` [INFO] [stderr] --> src/accumulator/util.rs:240:22 [INFO] [stderr] | [INFO] [stderr] 240 | fn get_roots_reverse(num_leaves: u64, forest_rows: u8) { [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_leaves` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `forest_rows` [INFO] [stderr] --> src/accumulator/util.rs:240:39 [INFO] [stderr] | [INFO] [stderr] 240 | fn get_roots_reverse(num_leaves: u64, forest_rows: u8) { [INFO] [stderr] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_forest_rows` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `remember` [INFO] [stderr] --> src/accumulator/pollard.rs:69:50 [INFO] [stderr] | [INFO] [stderr] 69 | fn add_single(&mut self, utxo: sha256::Hash, remember: bool) { [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_remember` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `leaves_after_del` [INFO] [stderr] --> src/accumulator/pollard.rs:135:13 [INFO] [stderr] | [INFO] [stderr] 135 | let leaves_after_del = self.num_leaves - dels.len() as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_leaves_after_del` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/accumulator/pollard.rs:127:26 [INFO] [stderr] | [INFO] [stderr] 127 | fn remove(&mut self, mut dels: Vec) { [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: value passed to `p_node_sib` is never read [INFO] [stderr] --> src/accumulator/pollard.rs:153:48 [INFO] [stderr] | [INFO] [stderr] 153 | fn grab_niece(mut p_node: PolNode, mut p_node_sib: PolNode, branch_len: u8, bits: u64) -> Option<(PolNode, PolNode, u8)> { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] = note: `#[warn(unused_assignments)]` on by default [INFO] [stderr] [INFO] [stderr] warning: function `row_offset` is never used [INFO] [stderr] --> src/accumulator/util.rs:71:4 [INFO] [stderr] | [INFO] [stderr] 71 | fn row_offset(row: u8, forest_rows: u8) -> u64 { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: function `child` is never used [INFO] [stderr] --> src/accumulator/util.rs:124:4 [INFO] [stderr] | [INFO] [stderr] 124 | fn child(pos: u64, forest_rows: u8) -> u64 { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `n_grandchild` is never used [INFO] [stderr] --> src/accumulator/util.rs:132:4 [INFO] [stderr] | [INFO] [stderr] 132 | fn n_grandchild(pos: u64, drop: u8, forest_rows: u8) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `cousin` is never used [INFO] [stderr] --> src/accumulator/util.rs:166:4 [INFO] [stderr] | [INFO] [stderr] 166 | fn cousin(pos: u64) -> u64 { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `num_roots` is never used [INFO] [stderr] --> src/accumulator/util.rs:216:4 [INFO] [stderr] | [INFO] [stderr] 216 | fn num_roots(num_leaves: u64) -> u8 { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `get_roots_reverse` is never used [INFO] [stderr] --> src/accumulator/util.rs:240:4 [INFO] [stderr] | [INFO] [stderr] 240 | fn get_roots_reverse(num_leaves: u64, forest_rows: u8) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `subtree_positions` is never used [INFO] [stderr] --> src/accumulator/util.rs:246:4 [INFO] [stderr] | [INFO] [stderr] 246 | fn subtree_positions() {} [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `subtree_leafrange` is never used [INFO] [stderr] --> src/accumulator/util.rs:248:4 [INFO] [stderr] | [INFO] [stderr] 248 | fn subtree_leafrange() {} [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `to_leaves` is never used [INFO] [stderr] --> src/accumulator/util.rs:250:4 [INFO] [stderr] | [INFO] [stderr] 250 | fn to_leaves() {} [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `previous_pow2` is never used [INFO] [stderr] --> src/accumulator/util.rs:254:4 [INFO] [stderr] | [INFO] [stderr] 254 | fn previous_pow2(n: u64) -> u64 { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: type alias `HASH` is never used [INFO] [stderr] --> src/accumulator/types.rs:8:6 [INFO] [stderr] | [INFO] [stderr] 8 | type HASH = [u8; 32]; [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `LeafData` is never constructed [INFO] [stderr] --> src/accumulator/types.rs:24:12 [INFO] [stderr] | [INFO] [stderr] 24 | pub struct LeafData { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `grab_pos` is never used [INFO] [stderr] --> src/accumulator/pollard.rs:151:8 [INFO] [stderr] | [INFO] [stderr] 34 | impl Pollard { [INFO] [stderr] | ------------ method in this implementation [INFO] [stderr] ... [INFO] [stderr] 151 | fn grab_pos(&mut self, pos: u64) -> Option<(PolNode, PolNode, HashableNode)> { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `aunt_op` is never used [INFO] [stderr] --> src/accumulator/pollard.rs:244:8 [INFO] [stderr] | [INFO] [stderr] 241 | impl PolNode { [INFO] [stderr] | ------------ method in this implementation [INFO] [stderr] ... [INFO] [stderr] 244 | fn aunt_op(&self) -> sha256::Hash { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `pol_swap` is never used [INFO] [stderr] --> src/accumulator/pollard.rs:293:4 [INFO] [stderr] | [INFO] [stderr] 293 | fn pol_swap<'a, 'b>(mut a: &'a mut PolNode, mut asib: &'b mut PolNode, mut b: &'a mut PolNode, mut bsib: &'b mut PolNode) { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `println as info` and `println as warn` [INFO] [stderr] --> src/accumulator/util.rs:278:11 [INFO] [stderr] | [INFO] [stderr] 278 | use std::{println as info, println as warn}; [INFO] [stderr] | ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::HashMap` [INFO] [stderr] --> src/accumulator/pollard.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use std::collections::HashMap; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::mem` [INFO] [stderr] --> src/accumulator/pollard.rs:415:13 [INFO] [stderr] | [INFO] [stderr] 415 | use std::mem; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stdout] [INFO] [stdout] running 7 tests [INFO] [stderr] warning: unused variable: `h1_copy` [INFO] [stderr] --> src/accumulator/pollard.rs:421:13 [INFO] [stderr] | [INFO] [stderr] 421 | let h1_copy = h1.clone(); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_h1_copy` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `h2_copy` [INFO] [stderr] --> src/accumulator/pollard.rs:427:13 [INFO] [stderr] | [INFO] [stderr] 427 | let h2_copy = h2.clone(); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_h2_copy` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `h3_copy` [INFO] [stderr] --> src/accumulator/pollard.rs:433:13 [INFO] [stderr] | [INFO] [stderr] 433 | let h3_copy = h3.clone(); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_h3_copy` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `h4_copy` [INFO] [stderr] --> src/accumulator/pollard.rs:439:13 [INFO] [stderr] | [INFO] [stderr] 439 | let h4_copy = h4.clone(); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_h4_copy` [INFO] [stderr] [INFO] [stderr] warning: function `child` is never used [INFO] [stderr] --> src/accumulator/util.rs:124:4 [INFO] [stderr] | [INFO] [stderr] 124 | fn child(pos: u64, forest_rows: u8) -> u64 { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: function `check_root` is never used [INFO] [stderr] --> src/accumulator/pollard.rs:356:8 [INFO] [stderr] | [INFO] [stderr] 356 | fn check_root() { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `test_pol_del` is never used [INFO] [stderr] --> src/accumulator/pollard.rs:359:8 [INFO] [stderr] | [INFO] [stderr] 359 | fn test_pol_del() { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused borrow that must be used [INFO] [stderr] --> src/accumulator/pollard.rs:316:13 [INFO] [stderr] | [INFO] [stderr] 316 | &pollard.modify(vec![leaf], vec![]); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 316 | let _ = &pollard.modify(vec![leaf], vec![]); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused borrow that must be used [INFO] [stderr] --> src/accumulator/pollard.rs:375:13 [INFO] [stderr] | [INFO] [stderr] 375 | &pol.modify(vec![leaf], vec![]); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stderr] | [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 375 | let _ = &pol.modify(vec![leaf], vec![]); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: `rustreexo` (lib) generated 24 warnings (run `cargo fix --lib -p rustreexo` to apply 3 suggestions) [INFO] [stderr] warning: `rustreexo` (lib test) generated 33 warnings (21 duplicates) (run `cargo fix --lib -p rustreexo --tests` to apply 3 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.02s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/rustreexo-f5cae57ad5f6db31) [INFO] [stdout] test accumulator::util::tests::test_detect_row ... ok [INFO] [stdout] test accumulator::pollard::tests::test_pol_swap ... ok [INFO] [stdout] test accumulator::util::tests::pow_tests ... ok [INFO] [stdout] test accumulator::util::tests::test_detect_subtree_rows ... ok [INFO] [stdout] test accumulator::util::tests::test_root_position ... ok [INFO] [stdout] test accumulator::util::tests::util_test ... ok [INFO] [stdout] test accumulator::pollard::tests::test_pol_add ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.37s [INFO] [stdout] [INFO] [stderr] Doc-tests rustreexo [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" "b4d4e04978fe72e713aceaa22748d14485041bb1261b44fa179080a6d5eee535", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b4d4e04978fe72e713aceaa22748d14485041bb1261b44fa179080a6d5eee535", kill_on_drop: false }` [INFO] [stdout] b4d4e04978fe72e713aceaa22748d14485041bb1261b44fa179080a6d5eee535