[INFO] cloning repository https://github.com/hsiangawang/Principles-of-Blockchain-2020Spring [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/hsiangawang/Principles-of-Blockchain-2020Spring" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhsiangawang%2FPrinciples-of-Blockchain-2020Spring", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhsiangawang%2FPrinciples-of-Blockchain-2020Spring'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 9952c4d0a9db21fd7b9da34694cc2230e097dedd [INFO] testing hsiangawang/Principles-of-Blockchain-2020Spring against master#0e21a27075a8c508f00d1a4430497f17ce93d5c9 for pr-98839 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhsiangawang%2FPrinciples-of-Blockchain-2020Spring" "/workspace/builds/worker-1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/hsiangawang/Principles-of-Blockchain-2020Spring on toolchain 0e21a27075a8c508f00d1a4430497f17ce93d5c9 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+0e21a27075a8c508f00d1a4430497f17ce93d5c9" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/hsiangawang/Principles-of-Blockchain-2020Spring [INFO] finished tweaking git repo https://github.com/hsiangawang/Principles-of-Blockchain-2020Spring [INFO] tweaked toml for git repo https://github.com/hsiangawang/Principles-of-Blockchain-2020Spring written to /workspace/builds/worker-1/source/Cargo.toml [INFO] crate git repo https://github.com/hsiangawang/Principles-of-Blockchain-2020Spring already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+0e21a27075a8c508f00d1a4430497f17ce93d5c9" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded ring v0.16.10 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/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:5873ed620acfc3295992aedd9294443d62a478a48ba243bc5e6c4f5abaffa05f" "/opt/rustwide/cargo-home/bin/cargo" "+0e21a27075a8c508f00d1a4430497f17ce93d5c9" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] f4d5d9a9876a3f68905f2ca7fab5ed00b8040589f486007ffff5dcad1260e787 [INFO] running `Command { std: "docker" "start" "-a" "f4d5d9a9876a3f68905f2ca7fab5ed00b8040589f486007ffff5dcad1260e787", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "f4d5d9a9876a3f68905f2ca7fab5ed00b8040589f486007ffff5dcad1260e787", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f4d5d9a9876a3f68905f2ca7fab5ed00b8040589f486007ffff5dcad1260e787", kill_on_drop: false }` [INFO] [stdout] f4d5d9a9876a3f68905f2ca7fab5ed00b8040589f486007ffff5dcad1260e787 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/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" "ghcr.io/rust-lang/crates-build-env/linux@sha256:5873ed620acfc3295992aedd9294443d62a478a48ba243bc5e6c4f5abaffa05f" "/opt/rustwide/cargo-home/bin/cargo" "+0e21a27075a8c508f00d1a4430497f17ce93d5c9" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] f8ec746c0bf16b7fe43062a24c3da4ad470b888bf98ce08370fb228eefdcf50a [INFO] running `Command { std: "docker" "start" "-a" "f8ec746c0bf16b7fe43062a24c3da4ad470b888bf98ce08370fb228eefdcf50a", kill_on_drop: false }` [INFO] [stderr] Compiling autocfg v0.1.6 [INFO] [stderr] Compiling libc v0.2.62 [INFO] [stderr] Compiling cfg-if v0.1.10 [INFO] [stderr] Compiling proc-macro2 v1.0.5 [INFO] [stderr] Compiling unicode-xid v0.2.0 [INFO] [stderr] Compiling syn v1.0.5 [INFO] [stderr] Compiling lazy_static v1.4.0 [INFO] [stderr] Compiling rand_core v0.4.2 [INFO] [stderr] Compiling semver-parser v0.7.0 [INFO] [stderr] Compiling matches v0.1.8 [INFO] [stderr] Compiling smallvec v0.6.10 [INFO] [stderr] Compiling log v0.4.8 [INFO] [stderr] Compiling arrayvec v0.4.12 [INFO] [stderr] Compiling nodrop v0.1.14 [INFO] [stderr] Compiling serde v1.0.101 [INFO] [stderr] Compiling bitflags v1.2.0 [INFO] [stderr] Compiling byteorder v1.3.2 [INFO] [stderr] Compiling cc v1.0.45 [INFO] [stderr] Compiling scopeguard v1.0.0 [INFO] [stderr] Compiling ryu v1.0.2 [INFO] [stderr] Compiling unicode-width v0.1.6 [INFO] [stderr] Compiling slab v0.4.2 [INFO] [stderr] Compiling percent-encoding v1.0.1 [INFO] [stderr] Compiling vec_map v0.8.1 [INFO] [stderr] Compiling ansi_term v0.11.0 [INFO] [stderr] Compiling termcolor v0.3.6 [INFO] [stderr] Compiling percent-encoding v2.1.0 [INFO] [stderr] Compiling strsim v0.8.0 [INFO] [stderr] Compiling lazycell v1.2.1 [INFO] [stderr] Compiling ascii v0.8.7 [INFO] [stderr] Compiling chunked_transfer v0.3.1 [INFO] [stderr] Compiling untrusted v0.7.0 [INFO] [stderr] Compiling itoa v0.4.4 [INFO] [stderr] Compiling spin v0.5.2 [INFO] [stderr] Compiling hex v0.4.0 [INFO] [stderr] Compiling unicode-bidi v0.3.4 [INFO] [stderr] Compiling thread_local v0.3.6 [INFO] [stderr] Compiling crossbeam-utils v0.6.6 [INFO] [stderr] Compiling unicode-normalization v0.1.8 [INFO] [stderr] Compiling rand_core v0.3.1 [INFO] [stderr] Compiling rand_jitter v0.1.4 [INFO] [stderr] Compiling semver v0.9.0 [INFO] [stderr] Compiling num-traits v0.2.8 [INFO] [stderr] Compiling num-integer v0.1.41 [INFO] [stderr] Compiling rand_chacha v0.1.1 [INFO] [stderr] Compiling rand_pcg v0.1.2 [INFO] [stderr] Compiling rand v0.6.5 [INFO] [stderr] Compiling bincode v1.2.0 [INFO] [stderr] Compiling rand_xorshift v0.1.1 [INFO] [stderr] Compiling rand_isaac v0.1.1 [INFO] [stderr] Compiling rand_hc v0.1.0 [INFO] [stderr] Compiling crossbeam-queue v0.1.2 [INFO] [stderr] Compiling crossbeam-channel v0.3.9 [INFO] [stderr] Compiling rustc_version v0.2.3 [INFO] [stderr] Compiling time v0.1.42 [INFO] [stderr] Compiling term_size v0.3.1 [INFO] [stderr] Compiling iovec v0.1.4 [INFO] [stderr] Compiling net2 v0.2.33 [INFO] [stderr] Compiling rand_os v0.1.3 [INFO] [stderr] Compiling atty v0.2.13 [INFO] [stderr] Compiling idna v0.1.5 [INFO] [stderr] Compiling idna v0.2.0 [INFO] [stderr] Compiling textwrap v0.11.0 [INFO] [stderr] Compiling quote v1.0.2 [INFO] [stderr] Compiling mio v0.6.19 [INFO] [stderr] Compiling clap v2.33.0 [INFO] [stderr] Compiling url v2.1.0 [INFO] [stderr] Compiling memoffset v0.5.1 [INFO] [stderr] Compiling url v1.7.2 [INFO] [stderr] Compiling ring v0.16.10 [INFO] [stderr] Compiling mio-extras v2.0.5 [INFO] [stderr] Compiling crossbeam-epoch v0.7.2 [INFO] [stderr] Compiling chrono v0.4.9 [INFO] [stderr] Compiling crossbeam-deque v0.7.1 [INFO] [stderr] Compiling crossbeam v0.7.2 [INFO] [stderr] Compiling tiny_http v0.6.2 [INFO] [stderr] Compiling stderrlog v0.4.1 [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] Compiling hex-literal v0.2.1 [INFO] [stderr] Compiling serde_json v1.0.44 [INFO] [stderr] Compiling bitcoin v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `MerkleTree` [INFO] [stdout] --> src/block.rs:3:29 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::crypto::merkle::{MerkleTree}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `info` [INFO] [stdout] --> src/block.rs:5:11 [INFO] [stdout] | [INFO] [stdout] 5 | use log::{info}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::convert::TryInto` [INFO] [stdout] --> src/blockchain.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::convert::TryInto; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `MerkleTree` [INFO] [stdout] --> src/blockchain.rs:4:29 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::crypto::merkle::{MerkleTree}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Transaction` [INFO] [stdout] --> src/blockchain.rs:6:26 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::transaction::{Transaction, SignedTransaction}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::crypto::hash::generate_random_hash` [INFO] [stdout] --> src/blockchain.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::crypto::hash::generate_random_hash; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::crypto::key_pair` [INFO] [stdout] --> src/blockchain.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::crypto::key_pair; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::BTreeMap` [INFO] [stdout] --> src/blockchain.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use std::collections::BTreeMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::transaction::sign` [INFO] [stdout] --> src/blockchain.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use crate::transaction::sign; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Ed25519KeyPair`, `EdDSAParameters`, `KeyPair`, `Signature`, `VerificationAlgorithm` [INFO] [stdout] --> src/blockchain.rs:14:23 [INFO] [stdout] | [INFO] [stdout] 14 | use ring::signature::{Ed25519KeyPair, Signature, KeyPair, VerificationAlgorithm, EdDSAParameters}; [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^ ^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `info` [INFO] [stdout] --> src/blockchain.rs:15:11 [INFO] [stdout] | [INFO] [stdout] 15 | use log::{info}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/blockchain.rs:112:11 [INFO] [stdout] | [INFO] [stdout] 112 | if(self.blocks_height[&block.hash()] > self.blocks_height[&self.tip]) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 112 - if(self.blocks_height[&block.hash()] > self.blocks_height[&self.tip]) [INFO] [stdout] 112 + if self.blocks_height[&block.hash()] > self.blocks_height[&self.tip] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/crypto/merkle.rs:25:11 [INFO] [stdout] | [INFO] [stdout] 25 | if(level_hash.len() != 1 && (level_hash.len())%2 == 1) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 25 - if(level_hash.len() != 1 && (level_hash.len())%2 == 1) [INFO] [stdout] 25 + if level_hash.len() != 1 && (level_hash.len())%2 == 1 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/crypto/merkle.rs:32:15 [INFO] [stdout] | [INFO] [stdout] 32 | if(level_hash.len() % 2 != 0) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 32 - if(level_hash.len() % 2 != 0) [INFO] [stdout] 32 + if level_hash.len() % 2 != 0 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/crypto/merkle.rs:101:14 [INFO] [stdout] | [INFO] [stdout] 101 | for i in (0..proof_num) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 101 - for i in (0..proof_num) { [INFO] [stdout] 101 + for i in 0..proof_num { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/crypto/merkle.rs:102:11 [INFO] [stdout] | [INFO] [stdout] 102 | if(Idx % 2 == 0) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 102 - if(Idx % 2 == 0) [INFO] [stdout] 102 + if Idx % 2 == 0 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Ed25519KeyPair`, `EdDSAParameters`, `Signature`, `VerificationAlgorithm` [INFO] [stdout] --> src/miner.rs:17:23 [INFO] [stdout] | [INFO] [stdout] 17 | use ring::signature::{Ed25519KeyPair, Signature, KeyPair, VerificationAlgorithm, EdDSAParameters}; [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/miner.rs:172:16 [INFO] [stdout] | [INFO] [stdout] 172 | if (self.txs.lock().unwrap().is_empty()) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 172 - if (self.txs.lock().unwrap().is_empty()) { [INFO] [stdout] 172 + if self.txs.lock().unwrap().is_empty() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/miner.rs:189:15 [INFO] [stdout] | [INFO] [stdout] 189 | if(new_block.hash() <= difficulty) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 189 - if(new_block.hash() <= difficulty) [INFO] [stdout] 189 + if new_block.hash() <= difficulty [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/miner.rs:192:26 [INFO] [stdout] | [INFO] [stdout] 192 | for i in (0..size) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 192 - for i in (0..size) { [INFO] [stdout] 192 + for i in 0..size { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/miner.rs:193:24 [INFO] [stdout] | [INFO] [stdout] 193 | if (self.mempool.lock().unwrap().contains_key(&new_block.content.data[i].hash())) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 193 - if (self.mempool.lock().unwrap().contains_key(&new_block.content.data[i].hash())) { [INFO] [stdout] 193 + if self.mempool.lock().unwrap().contains_key(&new_block.content.data[i].hash()) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/miner.rs:202:28 [INFO] [stdout] | [INFO] [stdout] 202 | if (nonce != self.states.lock().unwrap().accountMaping[&sender_addr].0 + 1) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 202 - if (nonce != self.states.lock().unwrap().accountMaping[&sender_addr].0 + 1) { [INFO] [stdout] 202 + if nonce != self.states.lock().unwrap().accountMaping[&sender_addr].0 + 1 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/miner.rs:210:28 [INFO] [stdout] | [INFO] [stdout] 210 | if (self.states.lock().unwrap().accountMaping[&sender_addr].1 >= trans_money) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 210 - if (self.states.lock().unwrap().accountMaping[&sender_addr].1 >= trans_money) { [INFO] [stdout] 210 + if self.states.lock().unwrap().accountMaping[&sender_addr].1 >= trans_money { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Hashable` [INFO] [stdout] --> src/network/message.rs:2:33 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::crypto::hash::{H256, Hashable}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Content`, `Header` [INFO] [stdout] --> src/network/message.rs:3:27 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::block::{Block, Header, Content}; [INFO] [stdout] | ^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Transaction` [INFO] [stdout] --> src/network/message.rs:4:26 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::transaction::{Transaction, SignedTransaction}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Content`, `Header` [INFO] [stdout] --> src/network/worker.rs:8:27 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::block::{Block, Header, Content}; [INFO] [stdout] | ^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Deserialize`, `Serialize` [INFO] [stdout] --> src/network/worker.rs:12:13 [INFO] [stdout] | [INFO] [stdout] 12 | use serde::{Serialize,Deserialize}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Transaction` [INFO] [stdout] --> src/network/worker.rs:14:26 [INFO] [stdout] | [INFO] [stdout] 14 | use crate::transaction::{Transaction, SignedTransaction}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/network/worker.rs:94:30 [INFO] [stdout] | [INFO] [stdout] 94 | for i in (0..size) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 94 - for i in (0..size) { [INFO] [stdout] 94 + for i in 0..size { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/network/worker.rs:96:27 [INFO] [stdout] | [INFO] [stdout] 96 | if(!exist) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 96 - if(!exist) [INFO] [stdout] 96 + if !exist [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/network/worker.rs:112:30 [INFO] [stdout] | [INFO] [stdout] 112 | for i in (0..size) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 112 - for i in (0..size) { [INFO] [stdout] 112 + for i in 0..size { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/network/worker.rs:113:27 [INFO] [stdout] | [INFO] [stdout] 113 | if(!self.blockchain.lock().unwrap().hash_blocks.contains_key(&getblocks[i])) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 113 - if(!self.blockchain.lock().unwrap().hash_blocks.contains_key(&getblocks[i])) [INFO] [stdout] 113 + if !self.blockchain.lock().unwrap().hash_blocks.contains_key(&getblocks[i]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/network/worker.rs:121:34 [INFO] [stdout] | [INFO] [stdout] 121 | for i in (0..size) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 121 - for i in (0..size) { [INFO] [stdout] 121 + for i in 0..size { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/network/worker.rs:139:30 [INFO] [stdout] | [INFO] [stdout] 139 | for i in (0..size) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 139 - for i in (0..size) { [INFO] [stdout] 139 + for i in 0..size { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/network/worker.rs:143:34 [INFO] [stdout] | [INFO] [stdout] 143 | for j in (0..signedTxs_size) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 143 - for j in (0..signedTxs_size) { [INFO] [stdout] 143 + for j in 0..signedTxs_size { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/network/worker.rs:149:31 [INFO] [stdout] | [INFO] [stdout] 149 | ... if(!verify(&blocks[i].content.data[j].Transaction, &blocks[i].content.data[j].public_key, &blocks[i].content.data[j].Signature)){ [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 149 - if(!verify(&blocks[i].content.data[j].Transaction, &blocks[i].content.data[j].public_key, &blocks[i].content.data[j].Signature)){ [INFO] [stdout] 149 + if !verify(&blocks[i].content.data[j].Transaction, &blocks[i].content.data[j].public_key, &blocks[i].content.data[j].Signature) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/network/worker.rs:153:36 [INFO] [stdout] | [INFO] [stdout] 153 | ... else if(hash_key_20bytes != blocks[i].content.data[j].sender_addr){ [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 153 - else if(hash_key_20bytes != blocks[i].content.data[j].sender_addr){ [INFO] [stdout] 153 + else if hash_key_20bytes != blocks[i].content.data[j].sender_addr { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/network/worker.rs:158:28 [INFO] [stdout] | [INFO] [stdout] 158 | if (!valid_block) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 158 - if (!valid_block) { [INFO] [stdout] 158 + if !valid_block { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/network/worker.rs:164:34 [INFO] [stdout] | [INFO] [stdout] 164 | for i in (0..size) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 164 - for i in (0..size) { [INFO] [stdout] 164 + for i in 0..size { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/network/worker.rs:166:38 [INFO] [stdout] | [INFO] [stdout] 166 | ... for j in (0..signedTxs_size) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 166 - for j in (0..signedTxs_size) { [INFO] [stdout] 166 + for j in 0..signedTxs_size { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/network/worker.rs:167:35 [INFO] [stdout] | [INFO] [stdout] 167 | ... if (self.mempool.lock().unwrap().contains_key(&blocks[i].content.data[j].hash())) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 167 - if (self.mempool.lock().unwrap().contains_key(&blocks[i].content.data[j].hash())) { [INFO] [stdout] 167 + if self.mempool.lock().unwrap().contains_key(&blocks[i].content.data[j].hash()) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/network/worker.rs:177:40 [INFO] [stdout] | [INFO] [stdout] 177 | ... if (accountNonce != self.states.lock().unwrap().accountMaping[&sender_addr].0 + 1) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 177 - if (accountNonce != self.states.lock().unwrap().accountMaping[&sender_addr].0 + 1) { [INFO] [stdout] 177 + if accountNonce != self.states.lock().unwrap().accountMaping[&sender_addr].0 + 1 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/network/worker.rs:184:40 [INFO] [stdout] | [INFO] [stdout] 184 | ... if (self.states.lock().unwrap().accountMaping[&sender_addr].1 >= trans_money) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 184 - if (self.states.lock().unwrap().accountMaping[&sender_addr].1 >= trans_money) { [INFO] [stdout] 184 + if self.states.lock().unwrap().accountMaping[&sender_addr].1 >= trans_money { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/network/worker.rs:201:28 [INFO] [stdout] | [INFO] [stdout] 201 | if (!self.blockchain.lock().unwrap().hash_blocks.contains_key(&blocks[i].hash())) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 201 - if (!self.blockchain.lock().unwrap().hash_blocks.contains_key(&blocks[i].hash())) { [INFO] [stdout] 201 + if !self.blockchain.lock().unwrap().hash_blocks.contains_key(&blocks[i].hash()) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/network/worker.rs:202:32 [INFO] [stdout] | [INFO] [stdout] 202 | ... if (!self.blockchain.lock().unwrap().hash_blocks.contains_key(&blocks[i].header.parent)) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 202 - if (!self.blockchain.lock().unwrap().hash_blocks.contains_key(&blocks[i].header.parent)) { [INFO] [stdout] 202 + if !self.blockchain.lock().unwrap().hash_blocks.contains_key(&blocks[i].header.parent) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/network/worker.rs:212:36 [INFO] [stdout] | [INFO] [stdout] 212 | ... if (blocks[i].hash() <= diff) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 212 - if (blocks[i].hash() <= diff) { [INFO] [stdout] 212 + if blocks[i].hash() <= diff { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/network/worker.rs:253:40 [INFO] [stdout] | [INFO] [stdout] 253 | ... if (blocks[i].header.parent == prev_tip) { // condition 1. [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 253 - if (blocks[i].header.parent == prev_tip) { // condition 1. [INFO] [stdout] 253 + if blocks[i].header.parent == prev_tip { // condition 1. [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/network/worker.rs:262:44 [INFO] [stdout] | [INFO] [stdout] 262 | ... if (self.blockchain.lock().unwrap().tip() != blocks[i].hash()) { // condition 2 [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 262 - if (self.blockchain.lock().unwrap().tip() != blocks[i].hash()) { // condition 2 [INFO] [stdout] 262 + if self.blockchain.lock().unwrap().tip() != blocks[i].hash() { // condition 2 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/network/worker.rs:264:48 [INFO] [stdout] | [INFO] [stdout] 264 | ... if (parent_state.accountMaping[&sender_addr].1 >= trans_money) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 264 - if (parent_state.accountMaping[&sender_addr].1 >= trans_money) { [INFO] [stdout] 264 + if parent_state.accountMaping[&sender_addr].1 >= trans_money { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/network/worker.rs:279:48 [INFO] [stdout] | [INFO] [stdout] 279 | ... if (parent_state.accountMaping[&sender_addr].1 >= trans_money) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 279 - if (parent_state.accountMaping[&sender_addr].1 >= trans_money) { [INFO] [stdout] 279 + if parent_state.accountMaping[&sender_addr].1 >= trans_money { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/network/worker.rs:296:46 [INFO] [stdout] | [INFO] [stdout] 296 | ... for j in (0..size) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 296 - for j in (0..size) { [INFO] [stdout] 296 + for j in 0..size { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/network/worker.rs:297:43 [INFO] [stdout] | [INFO] [stdout] 297 | ... if (self.mempool.lock().unwrap().contains_key(&blocks[i].content.data[j].hash())) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 297 - if (self.mempool.lock().unwrap().contains_key(&blocks[i].content.data[j].hash())) { [INFO] [stdout] 297 + if self.mempool.lock().unwrap().contains_key(&blocks[i].content.data[j].hash()) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/network/worker.rs:307:32 [INFO] [stdout] | [INFO] [stdout] 307 | ... if (orphan_buffer.orphan_blocks.contains_key(&blocks[0].hash())) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 307 - if (orphan_buffer.orphan_blocks.contains_key(&blocks[0].hash())) { [INFO] [stdout] 307 + if orphan_buffer.orphan_blocks.contains_key(&blocks[0].hash()) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/network/worker.rs:311:42 [INFO] [stdout] | [INFO] [stdout] 311 | ... for j in (0..size) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 311 - for j in (0..size) { [INFO] [stdout] 311 + for j in 0..size { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/network/worker.rs:312:40 [INFO] [stdout] | [INFO] [stdout] 312 | ... if (self.mempool.lock().unwrap().contains_key(&blocks[0].content.data[j].hash())) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 312 - if (self.mempool.lock().unwrap().contains_key(&blocks[0].content.data[j].hash())) { [INFO] [stdout] 312 + if self.mempool.lock().unwrap().contains_key(&blocks[0].content.data[j].hash()) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/network/worker.rs:335:30 [INFO] [stdout] | [INFO] [stdout] 335 | for i in (0..size) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 335 - for i in (0..size) { [INFO] [stdout] 335 + for i in 0..size { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/network/worker.rs:337:27 [INFO] [stdout] | [INFO] [stdout] 337 | if(!exist) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 337 - if(!exist) [INFO] [stdout] 337 + if !exist [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/network/worker.rs:349:30 [INFO] [stdout] | [INFO] [stdout] 349 | for i in (0..size) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 349 - for i in (0..size) { [INFO] [stdout] 349 + for i in 0..size { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/network/worker.rs:350:27 [INFO] [stdout] | [INFO] [stdout] 350 | if(!self.mempool.lock().unwrap().contains_key(&get_trans[i])) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 350 - if(!self.mempool.lock().unwrap().contains_key(&get_trans[i])) [INFO] [stdout] 350 + if !self.mempool.lock().unwrap().contains_key(&get_trans[i]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/network/worker.rs:358:34 [INFO] [stdout] | [INFO] [stdout] 358 | for i in (0..size) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 358 - for i in (0..size) { [INFO] [stdout] 358 + for i in 0..size { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/network/worker.rs:371:30 [INFO] [stdout] | [INFO] [stdout] 371 | for i in (0..size) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 371 - for i in (0..size) { [INFO] [stdout] 371 + for i in 0..size { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/network/worker.rs:372:27 [INFO] [stdout] | [INFO] [stdout] 372 | if(verify(&trans[i].Transaction, &trans[i].public_key, &trans[i].Signature)){ [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 372 - if(verify(&trans[i].Transaction, &trans[i].public_key, &trans[i].Signature)){ [INFO] [stdout] 372 + if verify(&trans[i].Transaction, &trans[i].public_key, &trans[i].Signature) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/network/worker.rs:386:24 [INFO] [stdout] | [INFO] [stdout] 386 | if (!verified) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 386 - if (!verified) { [INFO] [stdout] 386 + if !verified { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/network/worker.rs:388:34 [INFO] [stdout] | [INFO] [stdout] 388 | for j in (0..size) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 388 - for j in (0..size) { [INFO] [stdout] 388 + for j in 0..size { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `EdDSAParameters` [INFO] [stdout] --> src/transaction.rs:2:82 [INFO] [stdout] | [INFO] [stdout] 2 | use ring::signature::{Ed25519KeyPair, Signature, KeyPair, VerificationAlgorithm, EdDSAParameters}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `H256`, `Hashable` [INFO] [stdout] --> src/transaction.rs:3:27 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::crypto::hash::{H256, H160, Hashable}; [INFO] [stdout] | ^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `info` [INFO] [stdout] --> src/transaction.rs:4:11 [INFO] [stdout] | [INFO] [stdout] 4 | use log::{info}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Blockchain` [INFO] [stdout] --> src/TransGen.rs:3:25 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::blockchain::{Blockchain, State}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Block`, `Content`, `Header` [INFO] [stdout] --> src/TransGen.rs:4:20 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::block::{Block, Content, Header}; [INFO] [stdout] | ^^^^^ ^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `MerkleTree` [INFO] [stdout] --> src/TransGen.rs:5:29 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::crypto::merkle::{MerkleTree}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Receiver`, `Sender`, `TryRecvError`, `unbounded` [INFO] [stdout] --> src/TransGen.rs:9:26 [INFO] [stdout] | [INFO] [stdout] 9 | use crossbeam::channel::{unbounded, Receiver, Sender, TryRecvError}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^ ^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Ed25519KeyPair`, `EdDSAParameters`, `Signature`, `VerificationAlgorithm` [INFO] [stdout] --> src/TransGen.rs:17:23 [INFO] [stdout] | [INFO] [stdout] 17 | use ring::signature::{Ed25519KeyPair, Signature, KeyPair, VerificationAlgorithm, EdDSAParameters}; [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `H160`, `Hashable` [INFO] [stdout] --> src/main.rs:25:33 [INFO] [stdout] | [INFO] [stdout] 25 | use crate::crypto::hash::{H256, H160, Hashable}; [INFO] [stdout] | ^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Transaction` [INFO] [stdout] --> src/main.rs:26:26 [INFO] [stdout] | [INFO] [stdout] 26 | use crate::transaction::{Transaction, SignedTransaction}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `KeyPair` [INFO] [stdout] --> src/transaction.rs:2:50 [INFO] [stdout] | [INFO] [stdout] 2 | use ring::signature::{Ed25519KeyPair, Signature, KeyPair, VerificationAlgorithm, EdDSAParameters}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `VerificationAlgorithm` [INFO] [stdout] --> src/transaction.rs:2:59 [INFO] [stdout] | [INFO] [stdout] 2 | use ring::signature::{Ed25519KeyPair, Signature, KeyPair, VerificationAlgorithm, EdDSAParameters}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `bitcoin`; 77 warnings emitted [INFO] running `Command { std: "docker" "inspect" "f8ec746c0bf16b7fe43062a24c3da4ad470b888bf98ce08370fb228eefdcf50a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f8ec746c0bf16b7fe43062a24c3da4ad470b888bf98ce08370fb228eefdcf50a", kill_on_drop: false }` [INFO] [stdout] f8ec746c0bf16b7fe43062a24c3da4ad470b888bf98ce08370fb228eefdcf50a