[INFO] cloning repository https://github.com/VinithKrishnan/Prism_Voting_Chains [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/VinithKrishnan/Prism_Voting_Chains" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FVinithKrishnan%2FPrism_Voting_Chains", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FVinithKrishnan%2FPrism_Voting_Chains'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] bf56bc4996b47b6384ee5f7ec92f0bf10c882aaf [INFO] checking VinithKrishnan/Prism_Voting_Chains against beta for pr-78714 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FVinithKrishnan%2FPrism_Voting_Chains" "/workspace/builds/worker-6/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/VinithKrishnan/Prism_Voting_Chains on toolchain beta [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/VinithKrishnan/Prism_Voting_Chains [INFO] finished tweaking git repo https://github.com/VinithKrishnan/Prism_Voting_Chains [INFO] tweaked toml for git repo https://github.com/VinithKrishnan/Prism_Voting_Chains written to /workspace/builds/worker-6/source/Cargo.toml [INFO] crate git repo https://github.com/VinithKrishnan/Prism_Voting_Chains already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/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" "rustops/crates-build-env@sha256:6eabd152ff4036248d66efda456a36cb33d24b7291b33f25f75140726c88da35" "/opt/rustwide/cargo-home/bin/cargo" "+beta" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] f9d0b8d7ef16739c6141f7c085cd0d07aaeb6706993b20c6f023fd5cdb224988 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "f9d0b8d7ef16739c6141f7c085cd0d07aaeb6706993b20c6f023fd5cdb224988", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "f9d0b8d7ef16739c6141f7c085cd0d07aaeb6706993b20c6f023fd5cdb224988", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f9d0b8d7ef16739c6141f7c085cd0d07aaeb6706993b20c6f023fd5cdb224988", kill_on_drop: false }` [INFO] [stdout] f9d0b8d7ef16739c6141f7c085cd0d07aaeb6706993b20c6f023fd5cdb224988 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/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" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:6eabd152ff4036248d66efda456a36cb33d24b7291b33f25f75140726c88da35" "/opt/rustwide/cargo-home/bin/cargo" "+beta" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 7996416b04d916b598378cc96e61b0c8f85aa7f9048fdc9c7a3f24f8ef2dcb79 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "7996416b04d916b598378cc96e61b0c8f85aa7f9048fdc9c7a3f24f8ef2dcb79", kill_on_drop: false }` [INFO] [stderr] Compiling autocfg v0.1.6 [INFO] [stderr] Compiling proc-macro2 v1.0.5 [INFO] [stderr] Compiling syn v1.0.5 [INFO] [stderr] Checking smallvec v0.6.10 [INFO] [stderr] Compiling arrayvec v0.4.12 [INFO] [stderr] Compiling serde v1.0.101 [INFO] [stderr] Compiling bitflags v1.2.0 [INFO] [stderr] Compiling crunchy v0.1.6 [INFO] [stderr] Compiling cc v1.0.45 [INFO] [stderr] Checking unicode-width v0.1.6 [INFO] [stderr] Checking chunked_transfer v0.3.1 [INFO] [stderr] Checking ascii v0.8.7 [INFO] [stderr] Checking hex v0.4.0 [INFO] [stderr] Checking rand_core v0.3.1 [INFO] [stderr] Checking getrandom v0.1.14 [INFO] [stderr] Checking time v0.1.42 [INFO] [stderr] Checking term_size v0.3.1 [INFO] [stderr] Checking net2 v0.2.33 [INFO] [stderr] Checking iovec v0.1.4 [INFO] [stderr] Checking rand_os v0.1.3 [INFO] [stderr] Checking atty v0.2.13 [INFO] [stderr] Compiling memoffset v0.5.1 [INFO] [stderr] Checking rand_xorshift v0.1.1 [INFO] [stderr] Checking rand_isaac v0.1.1 [INFO] [stderr] Checking rand_hc v0.1.0 [INFO] [stderr] Checking textwrap v0.11.0 [INFO] [stderr] Checking unicode-normalization v0.1.8 [INFO] [stderr] Checking rand_core v0.5.1 [INFO] [stderr] Checking rand_chacha v0.2.2 [INFO] [stderr] Checking mio v0.6.19 [INFO] [stderr] Compiling num-traits v0.2.8 [INFO] [stderr] Compiling num-integer v0.1.41 [INFO] [stderr] Compiling rand_pcg v0.1.2 [INFO] [stderr] Compiling rand_chacha v0.1.1 [INFO] [stderr] Compiling bincode v1.2.0 [INFO] [stderr] Compiling rand v0.6.5 [INFO] [stderr] Checking bigint v4.4.1 [INFO] [stderr] Checking clap v2.33.0 [INFO] [stderr] Checking rand v0.7.3 [INFO] [stderr] Checking crossbeam-epoch v0.7.2 [INFO] [stderr] Checking crossbeam-deque v0.7.1 [INFO] [stderr] Compiling ring v0.16.9 [INFO] [stderr] Compiling quote v1.0.2 [INFO] [stderr] Checking crossbeam v0.7.2 [INFO] [stderr] Checking mio-extras v2.0.5 [INFO] [stderr] Checking idna v0.1.5 [INFO] [stderr] Checking idna v0.2.0 [INFO] [stderr] Checking statrs v0.12.0 [INFO] [stderr] Checking url v1.7.2 [INFO] [stderr] Checking chrono v0.4.9 [INFO] [stderr] Checking url v2.1.0 [INFO] [stderr] Checking stderrlog v0.4.1 [INFO] [stderr] Checking tiny_http v0.6.2 [INFO] [stderr] Compiling serde_derive v1.0.101 [INFO] [stderr] Compiling proc-macro-hack v0.5.11 [INFO] [stderr] Compiling hex-literal-impl v0.2.1 [INFO] [stderr] Checking hex-literal v0.2.1 [INFO] [stderr] Checking serde_json v1.0.44 [INFO] [stderr] Checking bitcoin v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `log::debug` [INFO] [stdout] --> src/api/mod.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use log::debug; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::Rng` [INFO] [stdout] --> src/block.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use rand::Rng; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self` [INFO] [stdout] --> src/block.rs:7:26 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::transaction::{self, SignedTransaction}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self` [INFO] [stdout] --> src/blockchain.rs:1:20 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::block::{self, *}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `log::debug` [INFO] [stdout] --> src/blockchain.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use log::debug; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `log::info` [INFO] [stdout] --> src/blockchain.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use log::info; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::VecDeque` [INFO] [stdout] --> src/blockchain.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::collections::VecDeque; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `chrono::prelude::*` [INFO] [stdout] --> src/blockchain.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use chrono::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/blockchain.rs:167:20 [INFO] [stdout] | [INFO] [stdout] 167 | if (!self.proposer_chain.contains_key(&content.parent_hash)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/blockchain.rs:175:24 [INFO] [stdout] | [INFO] [stdout] 175 | if (!self.proposer_chain.contains_key(&ref_proposer)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/blockchain.rs:186:20 [INFO] [stdout] | [INFO] [stdout] 186 | if (!self.voter_chains[(chain_num-1) as usize].contains_key(&content.parent_hash)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/blockchain.rs:194:24 [INFO] [stdout] | [INFO] [stdout] 194 | if (!self.proposer_chain.contains_key(&vote)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `while` condition [INFO] [stdout] --> src/blockchain.rs:385:19 [INFO] [stdout] | [INFO] [stdout] 385 | while (self.voter_chains[chain_idx as usize].contains_key(&curr_key)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression [INFO] [stdout] --> src/blockchain.rs:388:23 [INFO] [stdout] | [INFO] [stdout] 388 | match (content) { [INFO] [stdout] | ^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::crypto::hash::Hashable` [INFO] [stdout] --> src/blockchain.rs:409:9 [INFO] [stdout] | [INFO] [stdout] 409 | use crate::crypto::hash::Hashable; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Duration`, `Instant` [INFO] [stdout] --> src/miner.rs:8:41 [INFO] [stdout] | [INFO] [stdout] 8 | use std::time::{SystemTime, UNIX_EPOCH, Duration, Instant}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self` [INFO] [stdout] --> src/miner.rs:13:26 [INFO] [stdout] | [INFO] [stdout] 13 | use crate::transaction::{self, SignedTransaction}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/miner.rs:194:20 [INFO] [stdout] | [INFO] [stdout] 194 | if (locked_mempool.len() == 0) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `while` condition [INFO] [stdout] --> src/miner.rs:209:23 [INFO] [stdout] | [INFO] [stdout] 209 | while (true) { [INFO] [stdout] | ^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: denote infinite loops with `loop { ... }` [INFO] [stdout] --> src/miner.rs:209:17 [INFO] [stdout] | [INFO] [stdout] 209 | while (true) { [INFO] [stdout] | ^^^^^^^^^^^^ help: use `loop` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(while_true)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/miner.rs:222:24 [INFO] [stdout] | [INFO] [stdout] 222 | if (locked_blockchain.has_new_proposer() || empty_mempool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/miner.rs:225:28 [INFO] [stdout] | [INFO] [stdout] 225 | if (locked_mempool.len() == 0) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/miner.rs:239:24 [INFO] [stdout] | [INFO] [stdout] 239 | if (txs.len() == 0) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `debug` [INFO] [stdout] --> src/network/server.rs:4:24 [INFO] [stdout] | [INFO] [stdout] 4 | use log::{info, error, debug, trace, warn}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `HashMap`, `HashSet` [INFO] [stdout] --> src/network/worker.rs:10:24 [INFO] [stdout] | [INFO] [stdout] 10 | use std::collections::{HashMap, HashSet}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `debug`, `info` [INFO] [stdout] --> src/network/worker.rs:13:11 [INFO] [stdout] | [INFO] [stdout] 13 | use log::{info,debug, warn}; [INFO] [stdout] | ^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/network/worker.rs:74:28 [INFO] [stdout] | [INFO] [stdout] 74 | if (!locked_blockchain.has_block(block_hash)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/network/worker.rs:112:28 [INFO] [stdout] | [INFO] [stdout] 112 | if (!locked_blockchain.has_block(block_hash)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/network/worker.rs:151:28 [INFO] [stdout] | [INFO] [stdout] 151 | if (!locked_mempool.contains(&tx_hash)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/network/worker.rs:183:28 [INFO] [stdout] | [INFO] [stdout] 183 | if (!locked_mempool.contains(&tx_hash)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `UtxoInput` [INFO] [stdout] --> src/mempool.rs:2:44 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::transaction::{SignedTransaction,UtxoInput}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::VecDeque` [INFO] [stdout] --> src/mempool.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::collections::VecDeque; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Duration`, `Instant` [INFO] [stdout] --> src/mempool.rs:10:41 [INFO] [stdout] | [INFO] [stdout] 10 | use std::time::{SystemTime, UNIX_EPOCH, Duration, Instant}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::blockchain::Blockchain` [INFO] [stdout] --> src/tx_generator.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::blockchain::Blockchain; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::block::*` [INFO] [stdout] --> src/tx_generator.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::block::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::ledger_manager::LedgerManager` [INFO] [stdout] --> src/tx_generator.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::ledger_manager::LedgerManager; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self` [INFO] [stdout] --> src/tx_generator.rs:5:26 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::transaction::{self,*}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `debug` [INFO] [stdout] --> src/tx_generator.rs:9:11 [INFO] [stdout] | [INFO] [stdout] 9 | use log::{debug,info}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Ed25519KeyPair`, `Signature` [INFO] [stdout] --> src/tx_generator.rs:12:28 [INFO] [stdout] | [INFO] [stdout] 12 | use ring::signature::{self,Ed25519KeyPair, Signature, KeyPair}; [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::crypto::key_pair` [INFO] [stdout] --> src/tx_generator.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use crate::crypto::key_pair; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `*` [INFO] [stdout] --> src/tx_generator.rs:15:35 [INFO] [stdout] | [INFO] [stdout] 15 | use crate::crypto::address::{self,*}; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::borrow::Borrow` [INFO] [stdout] --> src/tx_generator.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use std::borrow::Borrow; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `log::debug` [INFO] [stdout] --> src/api/mod.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use log::debug; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `HashMap`, `HashSet` [INFO] [stdout] --> src/tx_generator.rs:17:24 [INFO] [stdout] | [INFO] [stdout] 17 | use std::collections::{HashSet, HashMap}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `chrono::prelude::*` [INFO] [stdout] --> src/tx_generator.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 24 | use chrono::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::Rng` [INFO] [stdout] --> src/block.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use rand::Rng; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self` [INFO] [stdout] --> src/block.rs:7:26 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::transaction::{self, SignedTransaction}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self` [INFO] [stdout] --> src/blockchain.rs:1:20 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::block::{self, *}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `log::debug` [INFO] [stdout] --> src/blockchain.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use log::debug; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `log::info` [INFO] [stdout] --> src/blockchain.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use log::info; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::VecDeque` [INFO] [stdout] --> src/blockchain.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::collections::VecDeque; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `chrono::prelude::*` [INFO] [stdout] --> src/blockchain.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use chrono::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/tx_generator.rs:204:20 [INFO] [stdout] | [INFO] [stdout] 204 | if (locked_mempool.contains_utxoinput(&input.hash())) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/blockchain.rs:167:20 [INFO] [stdout] | [INFO] [stdout] 167 | if (!self.proposer_chain.contains_key(&content.parent_hash)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/tx_generator.rs:234:20 [INFO] [stdout] | [INFO] [stdout] 234 | if (old_receipient == address1) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/blockchain.rs:175:24 [INFO] [stdout] | [INFO] [stdout] 175 | if (!self.proposer_chain.contains_key(&ref_proposer)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/blockchain.rs:186:20 [INFO] [stdout] | [INFO] [stdout] 186 | if (!self.voter_chains[(chain_num-1) as usize].contains_key(&content.parent_hash)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/blockchain.rs:194:24 [INFO] [stdout] | [INFO] [stdout] 194 | if (!self.proposer_chain.contains_key(&vote)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `while` condition [INFO] [stdout] --> src/blockchain.rs:385:19 [INFO] [stdout] | [INFO] [stdout] 385 | while (self.voter_chains[chain_idx as usize].contains_key(&curr_key)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression [INFO] [stdout] --> src/blockchain.rs:388:23 [INFO] [stdout] | [INFO] [stdout] 388 | match (content) { [INFO] [stdout] | ^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Duration`, `Instant` [INFO] [stdout] --> src/miner.rs:8:41 [INFO] [stdout] | [INFO] [stdout] 8 | use std::time::{SystemTime, UNIX_EPOCH, Duration, Instant}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self` [INFO] [stdout] --> src/miner.rs:13:26 [INFO] [stdout] | [INFO] [stdout] 13 | use crate::transaction::{self, SignedTransaction}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/miner.rs:194:20 [INFO] [stdout] | [INFO] [stdout] 194 | if (locked_mempool.len() == 0) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/tx_generator.rs:238:27 [INFO] [stdout] | [INFO] [stdout] 238 | } else if (old_receipient == address2) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/tx_generator.rs:242:27 [INFO] [stdout] | [INFO] [stdout] 242 | } else if (old_receipient == address3) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/tx_generator.rs:246:27 [INFO] [stdout] | [INFO] [stdout] 246 | } else if (old_receipient == address4) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `while` condition [INFO] [stdout] --> src/miner.rs:209:23 [INFO] [stdout] | [INFO] [stdout] 209 | while (true) { [INFO] [stdout] | ^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: denote infinite loops with `loop { ... }` [INFO] [stdout] --> src/miner.rs:209:17 [INFO] [stdout] | [INFO] [stdout] 209 | while (true) { [INFO] [stdout] | ^^^^^^^^^^^^ help: use `loop` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(while_true)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/miner.rs:222:24 [INFO] [stdout] | [INFO] [stdout] 222 | if (locked_blockchain.has_new_proposer() || empty_mempool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/miner.rs:225:28 [INFO] [stdout] | [INFO] [stdout] 225 | if (locked_mempool.len() == 0) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/miner.rs:239:24 [INFO] [stdout] | [INFO] [stdout] 239 | if (txs.len() == 0) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/tx_generator.rs:250:27 [INFO] [stdout] | [INFO] [stdout] 250 | } else if (old_receipient == address5) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `debug` [INFO] [stdout] --> src/network/server.rs:4:24 [INFO] [stdout] | [INFO] [stdout] 4 | use log::{info, error, debug, trace, warn}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `HashMap`, `HashSet` [INFO] [stdout] --> src/network/worker.rs:10:24 [INFO] [stdout] | [INFO] [stdout] 10 | use std::collections::{HashMap, HashSet}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `debug`, `info` [INFO] [stdout] --> src/network/worker.rs:13:11 [INFO] [stdout] | [INFO] [stdout] 13 | use log::{info,debug, warn}; [INFO] [stdout] | ^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/network/worker.rs:74:28 [INFO] [stdout] | [INFO] [stdout] 74 | if (!locked_blockchain.has_block(block_hash)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/network/worker.rs:112:28 [INFO] [stdout] | [INFO] [stdout] 112 | if (!locked_blockchain.has_block(block_hash)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/network/worker.rs:151:28 [INFO] [stdout] | [INFO] [stdout] 151 | if (!locked_mempool.contains(&tx_hash)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/network/worker.rs:183:28 [INFO] [stdout] | [INFO] [stdout] 183 | if (!locked_mempool.contains(&tx_hash)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/tx_generator.rs:254:27 [INFO] [stdout] | [INFO] [stdout] 254 | } else if (old_receipient == address6) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `UtxoInput` [INFO] [stdout] --> src/mempool.rs:2:44 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::transaction::{SignedTransaction,UtxoInput}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::VecDeque` [INFO] [stdout] --> src/mempool.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::collections::VecDeque; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Duration`, `Instant` [INFO] [stdout] --> src/mempool.rs:10:41 [INFO] [stdout] | [INFO] [stdout] 10 | use std::time::{SystemTime, UNIX_EPOCH, Duration, Instant}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::blockchain::Blockchain` [INFO] [stdout] --> src/tx_generator.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::blockchain::Blockchain; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::block::*` [INFO] [stdout] --> src/tx_generator.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::block::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::ledger_manager::LedgerManager` [INFO] [stdout] --> src/tx_generator.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::ledger_manager::LedgerManager; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::network::server::Handle as ServerHandle` [INFO] [stdout] --> src/validation/mod.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::network::server::Handle as ServerHandle; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self` [INFO] [stdout] --> src/tx_generator.rs:5:26 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::transaction::{self,*}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `debug` [INFO] [stdout] --> src/tx_generator.rs:9:11 [INFO] [stdout] | [INFO] [stdout] 9 | use log::{debug,info}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Ed25519KeyPair`, `Signature` [INFO] [stdout] --> src/tx_generator.rs:12:28 [INFO] [stdout] | [INFO] [stdout] 12 | use ring::signature::{self,Ed25519KeyPair, Signature, KeyPair}; [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::crypto::key_pair` [INFO] [stdout] --> src/tx_generator.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use crate::crypto::key_pair; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `*` [INFO] [stdout] --> src/tx_generator.rs:15:35 [INFO] [stdout] | [INFO] [stdout] 15 | use crate::crypto::address::{self,*}; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::borrow::Borrow` [INFO] [stdout] --> src/tx_generator.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use std::borrow::Borrow; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `HashMap`, `HashSet` [INFO] [stdout] --> src/tx_generator.rs:17:24 [INFO] [stdout] | [INFO] [stdout] 17 | use std::collections::{HashSet, HashMap}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `chrono::prelude::*` [INFO] [stdout] --> src/tx_generator.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 24 | use chrono::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/tx_generator.rs:204:20 [INFO] [stdout] | [INFO] [stdout] 204 | if (locked_mempool.contains_utxoinput(&input.hash())) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/tx_generator.rs:234:20 [INFO] [stdout] | [INFO] [stdout] 234 | if (old_receipient == address1) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/tx_generator.rs:238:27 [INFO] [stdout] | [INFO] [stdout] 238 | } else if (old_receipient == address2) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/tx_generator.rs:242:27 [INFO] [stdout] | [INFO] [stdout] 242 | } else if (old_receipient == address3) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/tx_generator.rs:246:27 [INFO] [stdout] | [INFO] [stdout] 246 | } else if (old_receipient == address4) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/tx_generator.rs:250:27 [INFO] [stdout] | [INFO] [stdout] 250 | } else if (old_receipient == address5) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/tx_generator.rs:254:27 [INFO] [stdout] | [INFO] [stdout] 254 | } else if (old_receipient == address6) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self` [INFO] [stdout] --> src/validation/mod.rs:3:20 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::block::{self, *}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `H256` [INFO] [stdout] --> src/validation/mod.rs:4:27 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::crypto::hash::{H256, Hashable}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `MerkleTree` [INFO] [stdout] --> src/validation/mod.rs:5:29 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::crypto::merkle::{MerkleTree, verify}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Blockchain`, `InsertStatus` [INFO] [stdout] --> src/validation/mod.rs:6:25 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::blockchain::{Blockchain, InsertStatus}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `log::info` [INFO] [stdout] --> src/validation/mod.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use log::info; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `bigint::uint::U256` [INFO] [stdout] --> src/validation/mod.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use bigint::uint::U256; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Receiver`, `Sender`, `TryRecvError`, `unbounded` [INFO] [stdout] --> src/validation/mod.rs:12:26 [INFO] [stdout] | [INFO] [stdout] 12 | use crossbeam::channel::{unbounded, Receiver, Sender, TryRecvError}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^ ^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time` [INFO] [stdout] --> src/validation/mod.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use std::time; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::thread` [INFO] [stdout] --> src/validation/mod.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use std::thread; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Discrete`, `Poisson`, `Univariate` [INFO] [stdout] --> src/ledger_manager.rs:12:28 [INFO] [stdout] | [INFO] [stdout] 12 | use statrs::distribution::{Discrete, Poisson, Univariate}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `log::debug` [INFO] [stdout] --> src/ledger_manager.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use log::debug; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Ed25519KeyPair`, `Signature` [INFO] [stdout] --> src/utxo.rs:4:28 [INFO] [stdout] | [INFO] [stdout] 4 | use ring::signature::{self,Ed25519KeyPair, Signature, KeyPair}; [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `log::debug` [INFO] [stdout] --> src/utxo.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use log::debug; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `debug` [INFO] [stdout] --> src/main.rs:20:18 [INFO] [stdout] | [INFO] [stdout] 20 | use log::{error, debug,info}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `H256`, `Hashable`, `self` [INFO] [stdout] --> src/main.rs:28:27 [INFO] [stdout] | [INFO] [stdout] 28 | use crate::crypto::hash::{self, H256, Hashable}; [INFO] [stdout] | ^^^^ ^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `*` [INFO] [stdout] --> src/main.rs:29:20 [INFO] [stdout] | [INFO] [stdout] 29 | use crate::block::{*}; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashSet` [INFO] [stdout] --> src/main.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 31 | use std::collections::HashSet; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::network::server::Handle as ServerHandle` [INFO] [stdout] --> src/validation/mod.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::network::server::Handle as ServerHandle; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self` [INFO] [stdout] --> src/validation/mod.rs:3:20 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::block::{self, *}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `H256` [INFO] [stdout] --> src/validation/mod.rs:4:27 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::crypto::hash::{H256, Hashable}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `MerkleTree` [INFO] [stdout] --> src/validation/mod.rs:5:29 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::crypto::merkle::{MerkleTree, verify}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Blockchain`, `InsertStatus` [INFO] [stdout] --> src/validation/mod.rs:6:25 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::blockchain::{Blockchain, InsertStatus}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `log::info` [INFO] [stdout] --> src/validation/mod.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use log::info; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `bigint::uint::U256` [INFO] [stdout] --> src/validation/mod.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use bigint::uint::U256; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Receiver`, `Sender`, `TryRecvError`, `unbounded` [INFO] [stdout] --> src/validation/mod.rs:12:26 [INFO] [stdout] | [INFO] [stdout] 12 | use crossbeam::channel::{unbounded, Receiver, Sender, TryRecvError}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^ ^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time` [INFO] [stdout] --> src/validation/mod.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use std::time; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::thread` [INFO] [stdout] --> src/validation/mod.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use std::thread; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Discrete`, `Poisson`, `Univariate` [INFO] [stdout] --> src/ledger_manager.rs:12:28 [INFO] [stdout] | [INFO] [stdout] 12 | use statrs::distribution::{Discrete, Poisson, Univariate}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `log::debug` [INFO] [stdout] --> src/ledger_manager.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use log::debug; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Ed25519KeyPair`, `Signature` [INFO] [stdout] --> src/utxo.rs:4:28 [INFO] [stdout] | [INFO] [stdout] 4 | use ring::signature::{self,Ed25519KeyPair, Signature, KeyPair}; [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `log::debug` [INFO] [stdout] --> src/utxo.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use log::debug; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `debug` [INFO] [stdout] --> src/main.rs:20:18 [INFO] [stdout] | [INFO] [stdout] 20 | use log::{error, debug,info}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `H256`, `Hashable`, `self` [INFO] [stdout] --> src/main.rs:28:27 [INFO] [stdout] | [INFO] [stdout] 28 | use crate::crypto::hash::{self, H256, Hashable}; [INFO] [stdout] | ^^^^ ^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `*` [INFO] [stdout] --> src/main.rs:29:20 [INFO] [stdout] | [INFO] [stdout] 29 | use crate::block::{*}; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashSet` [INFO] [stdout] --> src/main.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 31 | use std::collections::HashSet; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 2 arguments but 1 argument was supplied [INFO] [stdout] --> src/blockchain.rs:414:30 [INFO] [stdout] | [INFO] [stdout] 83 | pub fn new(num_voter_chains: u32, mempool: &Arc>) -> Self { [INFO] [stdout] | ----------------------------------------------------------------------------------- defined here [INFO] [stdout] ... [INFO] [stdout] 414 | let mut blockchain = Blockchain::new(10); [INFO] [stdout] | ^^^^^^^^^^^^^^^ -- supplied 1 argument [INFO] [stdout] | | [INFO] [stdout] | expected 2 arguments [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `chrono::prelude` [INFO] [stdout] --> src/block.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use chrono::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::Rng` [INFO] [stdout] --> src/tx_generator.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use rand::Rng; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: irrefutable if-let pattern [INFO] [stdout] --> src/network/worker.rs:135:29 [INFO] [stdout] | [INFO] [stdout] 135 | / ... if let result = InsertStatus::Valid { [INFO] [stdout] 136 | | ... valid_block_hashes.push(block_hash); [INFO] [stdout] 137 | | ... } [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(irrefutable_let_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `proposer_tip` [INFO] [stdout] --> src/blockchain.rs:97:13 [INFO] [stdout] | [INFO] [stdout] 97 | let proposer_tip = proposer_hash; [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_proposer_tip` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `max_vote_level` [INFO] [stdout] --> src/blockchain.rs:283:25 [INFO] [stdout] | [INFO] [stdout] 283 | let max_vote_level = cmp::max(max_vote_level, block_level); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_max_vote_level` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `c` [INFO] [stdout] --> src/blockchain.rs:392:39 [INFO] [stdout] | [INFO] [stdout] 392 | Content::Proposer(c) => { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_c` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `index` is never read [INFO] [stdout] --> src/miner.rs:156:17 [INFO] [stdout] | [INFO] [stdout] 156 | let mut index:u64 = 0; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `time_i` is never read [INFO] [stdout] --> src/miner.rs:157:17 [INFO] [stdout] | [INFO] [stdout] 157 | let mut time_i:u64 = 0; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> src/network/worker.rs:134:33 [INFO] [stdout] | [INFO] [stdout] 134 | ... let result = locked_blockchain.insert(&block); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> src/network/worker.rs:135:36 [INFO] [stdout] | [INFO] [stdout] 135 | ... if let result = InsertStatus::Valid { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input` [INFO] [stdout] --> src/utxo.rs:73:14 [INFO] [stdout] | [INFO] [stdout] 73 | for (input, output) in self.state_map.iter() { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_input` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `chrono::prelude` [INFO] [stdout] --> src/block.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use chrono::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::Rng` [INFO] [stdout] --> src/tx_generator.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use rand::Rng; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/blockchain.rs:271:21 [INFO] [stdout] | [INFO] [stdout] 271 | let mut max_vote_level: u32 = self.chain2level[&chain_num]; [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/blockchain.rs:288:21 [INFO] [stdout] | [INFO] [stdout] 288 | let mut parent_meta = &self.voter_chains[(chain_num-1) as usize][&content.parent_hash]; [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to previous error; 71 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0061`. [INFO] [stdout] [INFO] [stderr] error: could not compile `bitcoin` [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/utxo.rs:53:17 [INFO] [stdout] | [INFO] [stdout] 53 | let mut initial_tx_hash: H256 = sam.into() ; [INFO] [stdout] | ----^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `get_leader_sequence` [INFO] [stdout] --> src/ledger_manager.rs:84:8 [INFO] [stdout] | [INFO] [stdout] 84 | fn get_leader_sequence(&mut self) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 83 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: build failed [INFO] running `Command { std: "docker" "inspect" "7996416b04d916b598378cc96e61b0c8f85aa7f9048fdc9c7a3f24f8ef2dcb79", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7996416b04d916b598378cc96e61b0c8f85aa7f9048fdc9c7a3f24f8ef2dcb79", kill_on_drop: false }` [INFO] [stdout] 7996416b04d916b598378cc96e61b0c8f85aa7f9048fdc9c7a3f24f8ef2dcb79