[INFO] cloning repository https://github.com/vivien98/Blockchain [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/vivien98/Blockchain" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fvivien98%2FBlockchain", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fvivien98%2FBlockchain'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] d4b83850951ab21cbba4f77a958c8e9610abce75 [INFO] testing vivien98/Blockchain against 1.60.0 for beta-1.61-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fvivien98%2FBlockchain" "/workspace/builds/worker-56/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-56/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/vivien98/Blockchain on toolchain 1.60.0 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.60.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/vivien98/Blockchain [INFO] finished tweaking git repo https://github.com/vivien98/Blockchain [INFO] tweaked toml for git repo https://github.com/vivien98/Blockchain written to /workspace/builds/worker-56/source/Cargo.toml [INFO] crate git repo https://github.com/vivien98/Blockchain already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.60.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded stderrlog v0.4.1 [INFO] [stderr] Downloaded wasm-bindgen-backend v0.2.51 [INFO] [stderr] Downloaded wasm-bindgen-webidl v0.2.51 [INFO] [stderr] Downloaded wasm-bindgen-shared v0.2.51 [INFO] [stderr] Downloaded proc-macro2 v1.0.5 [INFO] [stderr] Downloaded web-sys v0.3.28 [INFO] [stderr] Downloaded wasm-bindgen-macro-support v0.2.51 [INFO] [stderr] Downloaded wasm-bindgen-macro v0.2.51 [INFO] [stderr] Downloaded hex v0.4.0 [INFO] [stderr] Downloaded js-sys v0.3.28 [INFO] [stderr] Downloaded backtrace v0.3.38 [INFO] [stderr] Downloaded wasm-bindgen v0.2.51 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-56/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-56/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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] d0b8962a953614a8d9237b3b9cd7bab4ae27beca24838407a8081ac5a6c21cb1 [INFO] running `Command { std: "docker" "start" "-a" "d0b8962a953614a8d9237b3b9cd7bab4ae27beca24838407a8081ac5a6c21cb1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "d0b8962a953614a8d9237b3b9cd7bab4ae27beca24838407a8081ac5a6c21cb1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d0b8962a953614a8d9237b3b9cd7bab4ae27beca24838407a8081ac5a6c21cb1", kill_on_drop: false }` [INFO] [stdout] d0b8962a953614a8d9237b3b9cd7bab4ae27beca24838407a8081ac5a6c21cb1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-56/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-56/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 9e42d37efa09a23801b56eb20b81687b11cbc34a4f5aa77201886e17dde9b7fd [INFO] running `Command { std: "docker" "start" "-a" "9e42d37efa09a23801b56eb20b81687b11cbc34a4f5aa77201886e17dde9b7fd", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Compiling autocfg v0.1.6 [INFO] [stderr] Compiling libc v0.2.97 [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 rand_core v0.4.2 [INFO] [stderr] Compiling serde v1.0.101 [INFO] [stderr] Compiling log v0.4.8 [INFO] [stderr] Compiling matches v0.1.8 [INFO] [stderr] Compiling smallvec v0.6.10 [INFO] [stderr] Compiling arrayvec v0.4.12 [INFO] [stderr] Compiling nodrop v0.1.14 [INFO] [stderr] Compiling cc v1.0.45 [INFO] [stderr] Compiling scopeguard v1.0.0 [INFO] [stderr] Compiling ryu v1.0.2 [INFO] [stderr] Compiling byteorder v1.3.2 [INFO] [stderr] Compiling bitflags v1.2.0 [INFO] [stderr] Compiling slab v0.4.2 [INFO] [stderr] Compiling unicode-width v0.1.6 [INFO] [stderr] Compiling percent-encoding v1.0.1 [INFO] [stderr] Compiling ascii v0.8.7 [INFO] [stderr] Compiling untrusted v0.7.0 [INFO] [stderr] Compiling itoa v0.4.4 [INFO] [stderr] Compiling termcolor v0.3.6 [INFO] [stderr] Compiling chunked_transfer v0.3.1 [INFO] [stderr] Compiling lazycell v1.2.1 [INFO] [stderr] Compiling hex v0.4.0 [INFO] [stderr] Compiling crossbeam-utils v0.6.6 [INFO] [stderr] Compiling thread_local v0.3.6 [INFO] [stderr] Compiling memoffset v0.5.1 [INFO] [stderr] Compiling rand_core v0.3.1 [INFO] [stderr] Compiling rand_jitter v0.1.4 [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 rand v0.6.5 [INFO] [stderr] Compiling bincode v1.2.0 [INFO] [stderr] Compiling unicode-normalization v0.1.8 [INFO] [stderr] Compiling ring v0.16.9 [INFO] [stderr] Compiling crossbeam-channel v0.3.9 [INFO] [stderr] Compiling crossbeam-queue v0.1.2 [INFO] [stderr] Compiling unicode-bidi v0.3.4 [INFO] [stderr] Compiling rand_xorshift v0.1.1 [INFO] [stderr] Compiling rand_hc v0.1.0 [INFO] [stderr] Compiling rand_isaac v0.1.1 [INFO] [stderr] Compiling idna v0.1.5 [INFO] [stderr] Compiling idna v0.2.0 [INFO] [stderr] Compiling url v1.7.2 [INFO] [stderr] Compiling url v2.1.0 [INFO] [stderr] Compiling time v0.1.44 [INFO] [stderr] Compiling iovec v0.1.4 [INFO] [stderr] Compiling net2 v0.2.33 [INFO] [stderr] Compiling term_size v0.3.1 [INFO] [stderr] Compiling atty v0.2.13 [INFO] [stderr] Compiling rand_os v0.1.3 [INFO] [stderr] Compiling crossbeam-epoch v0.7.2 [INFO] [stderr] Compiling quote v1.0.2 [INFO] [stderr] Compiling textwrap v0.11.0 [INFO] [stderr] Compiling mio v0.6.19 [INFO] [stderr] Compiling crossbeam-deque v0.7.1 [INFO] [stderr] Compiling clap v2.33.0 [INFO] [stderr] Compiling crossbeam v0.7.2 [INFO] [stderr] Compiling mio-extras v2.0.5 [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 chrono v0.4.19 [INFO] [stderr] Compiling serde_json v1.0.44 [INFO] [stderr] Compiling stderrlog v0.4.1 [INFO] [stderr] Compiling tiny_http v0.6.2 [INFO] [stderr] Compiling bitcoin v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused imports: `DateTime`, `Utc` [INFO] [stdout] --> src/block.rs:3:14 [INFO] [stdout] | [INFO] [stdout] 3 | use chrono::{DateTime,Utc}; [INFO] [stdout] | ^^^^^^^^ ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Transaction` [INFO] [stdout] --> src/block.rs:4:26 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::transaction::{Transaction,SignedTransaction}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::Rng` [INFO] [stdout] --> src/block.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use rand::Rng; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Duration`, `SystemTime`, `UNIX_EPOCH` [INFO] [stdout] --> src/block.rs:6:17 [INFO] [stdout] | [INFO] [stdout] 6 | use std::time::{Duration, SystemTime, UNIX_EPOCH}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `MerkleNode`, `MerkleTree` [INFO] [stdout] --> src/block.rs:7:29 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::crypto::merkle::{MerkleNode,MerkleTree}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Deserialize`, `Serialize` [INFO] [stdout] --> src/blockchain.rs:3:13 [INFO] [stdout] | [INFO] [stdout] 3 | use serde::{Serialize, Deserialize}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `DateTime`, `Utc` [INFO] [stdout] --> src/blockchain.rs:5:14 [INFO] [stdout] | [INFO] [stdout] 5 | use chrono::{DateTime,Utc}; [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: `rand::Rng` [INFO] [stdout] --> src/blockchain.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use rand::Rng; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Duration`, `SystemTime` [INFO] [stdout] --> src/blockchain.rs:8:17 [INFO] [stdout] | [INFO] [stdout] 8 | use std::time::{Duration, SystemTime, UNIX_EPOCH}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `MerkleNode` [INFO] [stdout] --> src/blockchain.rs:9:29 [INFO] [stdout] | [INFO] [stdout] 9 | use crate::crypto::merkle::{MerkleNode,MerkleTree}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/blockchain.rs:22:109 [INFO] [stdout] | [INFO] [stdout] 22 | let sign1: H256 = (hex!("0000000000000000000000000000000000000000000000000000000000000000")).into();; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/blockchain.rs:23:109 [INFO] [stdout] | [INFO] [stdout] 23 | let sign2: H256 = (hex!("0000000000000000000000000000000000000000000000000000000000000000")).into();; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/crypto/merkle.rs:81:81 [INFO] [stdout] | [INFO] [stdout] 81 | let mut trail: MerkleNode = self.node_array_by_levels[0][index].clone();; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/crypto/merkle.rs:111:5 [INFO] [stdout] | [INFO] [stdout] 111 | (trail_hash == *root) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 111 - (trail_hash == *root) [INFO] [stdout] 111 + trail_hash == *root [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Duration` [INFO] [stdout] --> src/miner.rs:7:17 [INFO] [stdout] | [INFO] [stdout] 7 | use std::time::{Duration, SystemTime, UNIX_EPOCH}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Transaction` [INFO] [stdout] --> src/miner.rs:14:26 [INFO] [stdout] | [INFO] [stdout] 14 | use crate::transaction::{Transaction,SignedTransaction}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `MerkleNode` [INFO] [stdout] --> src/miner.rs:15:29 [INFO] [stdout] | [INFO] [stdout] 15 | use crate::crypto::merkle::{MerkleNode,MerkleTree}; [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:20 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::block::{Header,Content,Block}; [INFO] [stdout] | ^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Content`, `Header` [INFO] [stdout] --> src/network/worker.rs:13:20 [INFO] [stdout] | [INFO] [stdout] 13 | use crate::block::{Header,Content,Block}; [INFO] [stdout] | ^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::Rng` [INFO] [stdout] --> src/transaction.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use rand::Rng; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Block`, `Content`, `Header` [INFO] [stdout] --> src/main.rs:25:20 [INFO] [stdout] | [INFO] [stdout] 25 | use crate::block::{Header,Content,Block}; [INFO] [stdout] | ^^^^^^ ^^^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SignedTransaction`, `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 variable: `leaf_size` [INFO] [stdout] --> src/crypto/merkle.rs:94:72 [INFO] [stdout] | [INFO] [stdout] 94 | pub fn verify(root: &H256, datum: &H256, proof: &[H256], index: usize, leaf_size: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_leaf_size` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `level` [INFO] [stdout] --> src/crypto/merkle.rs:82:13 [INFO] [stdout] | [INFO] [stdout] 82 | for level in self.node_array_by_levels.clone() { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_level` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/blockchain.rs:44:13 [INFO] [stdout] | [INFO] [stdout] 44 | let mut tip: H256 = genHash; [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/crypto/merkle.rs:41:17 [INFO] [stdout] | [INFO] [stdout] 41 | let mut hashed_datum = MerkleNode{value: Hashable::hash(&datum),child1:None,child2:None,parent:None,is_leaf: true}; [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/crypto/merkle.rs:61:21 [INFO] [stdout] | [INFO] [stdout] 61 | ... let mut new_node : MerkleNode = MerkleNode{value: root, child1: Some(Box::new(prev_level[2*i].clone())), child2: Some(Box::new(prev... [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/crypto/merkle.rs:69:13 [INFO] [stdout] | [INFO] [stdout] 69 | let mut root: MerkleNode = prev_level[0].clone(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/network/worker.rs:122:41 [INFO] [stdout] | [INFO] [stdout] 122 | ... let mut new_parent = orphanBlocks[&parent].hash(); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `blockMap` should have a snake case name [INFO] [stdout] --> src/blockchain.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 13 | pub blockMap : HashMap, [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `block_map` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `chainLength` should have a snake case name [INFO] [stdout] --> src/blockchain.rs:15:9 [INFO] [stdout] | [INFO] [stdout] 15 | pub chainLength : u32 [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `chain_length` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `blockMap` should have a snake case name [INFO] [stdout] --> src/blockchain.rs:37:17 [INFO] [stdout] | [INFO] [stdout] 37 | let mut blockMap = HashMap::new(); [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `block_map` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `genHash` should have a snake case name [INFO] [stdout] --> src/blockchain.rs:38:13 [INFO] [stdout] | [INFO] [stdout] 38 | let genHash: H256 = Hashable::hash(&gen_block); [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `gen_hash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `blockHash` should have a snake case name [INFO] [stdout] --> src/blockchain.rs:50:13 [INFO] [stdout] | [INFO] [stdout] 50 | let blockHash: H256 = Hashable::hash(block); [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `block_hash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `thisParent` should have a snake case name [INFO] [stdout] --> src/blockchain.rs:58:17 [INFO] [stdout] | [INFO] [stdout] 58 | let mut thisParent: H256 = (*block).header.parent; [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `this_parent` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `hashVec` should have a snake case name [INFO] [stdout] --> src/blockchain.rs:78:17 [INFO] [stdout] | [INFO] [stdout] 78 | let mut hashVec: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `hash_vec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `thisParent` should have a snake case name [INFO] [stdout] --> src/blockchain.rs:80:17 [INFO] [stdout] | [INFO] [stdout] 80 | let mut thisParent: H256 = self.blockMap[&(self.tip)].header.parent; [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `this_parent` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `blockHashVec` should have a snake case name [INFO] [stdout] --> src/miner.rs:162:25 [INFO] [stdout] | [INFO] [stdout] 162 | let mut blockHashVec: Vec = Vec::new();//self.blockchain.lock().unwrap().all_blocks_in_longest_chain(); [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `block_hash_vec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `convertSigToH256` should have a snake case name [INFO] [stdout] --> src/transaction.rs:40:8 [INFO] [stdout] | [INFO] [stdout] 40 | pub fn convertSigToH256(signature: &Signature) -> [H256;2] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `convert_sig_to_h256` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `convertH256ToSigRef` should have a snake case name [INFO] [stdout] --> src/transaction.rs:49:8 [INFO] [stdout] | [INFO] [stdout] 49 | pub fn convertH256ToSigRef(signature: [H256;2]) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `convert_h256_to_sig_ref` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `orphanBlocks` should have a snake case name [INFO] [stdout] --> src/network/worker.rs:51:17 [INFO] [stdout] | [INFO] [stdout] 51 | let mut orphanBlocks = HashMap::new();// has parent Hash -> child Block mapping [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `orphan_blocks` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `blockHashVec` should have a snake case name [INFO] [stdout] --> src/network/worker.rs:66:41 [INFO] [stdout] | [INFO] [stdout] 66 | Message::NewBlockHashes(blockHashVec) => { [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `block_hash_vec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `wantedBlocks` should have a snake case name [INFO] [stdout] --> src/network/worker.rs:68:29 [INFO] [stdout] | [INFO] [stdout] 68 | let mut wantedBlocks: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `wanted_blocks` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `blockHash` should have a snake case name [INFO] [stdout] --> src/network/worker.rs:69:25 [INFO] [stdout] | [INFO] [stdout] 69 | for blockHash in blockHashVec.iter() { [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `block_hash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `blockHashVec` should have a snake case name [INFO] [stdout] --> src/network/worker.rs:84:35 [INFO] [stdout] | [INFO] [stdout] 84 | Message::GetBlock(blockHashVec) => { [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `block_hash_vec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `blockVecToSend` should have a snake case name [INFO] [stdout] --> src/network/worker.rs:86:29 [INFO] [stdout] | [INFO] [stdout] 86 | let mut blockVecToSend: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `block_vec_to_send` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `blockHash` should have a snake case name [INFO] [stdout] --> src/network/worker.rs:87:25 [INFO] [stdout] | [INFO] [stdout] 87 | for blockHash in blockHashVec.iter() { [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `block_hash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `blockVec` should have a snake case name [INFO] [stdout] --> src/network/worker.rs:100:32 [INFO] [stdout] | [INFO] [stdout] 100 | Message::Block(blockVec) => { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `block_vec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `insertedBlocks` should have a snake case name [INFO] [stdout] --> src/network/worker.rs:103:29 [INFO] [stdout] | [INFO] [stdout] 103 | let mut insertedBlocks: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `inserted_blocks` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `getBlocks` should have a snake case name [INFO] [stdout] --> src/network/worker.rs:104:29 [INFO] [stdout] | [INFO] [stdout] 104 | let mut getBlocks: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `get_blocks` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `blockHash` should have a snake case name [INFO] [stdout] --> src/network/worker.rs:111:29 [INFO] [stdout] | [INFO] [stdout] 111 | let blockHash: H256 = (*block).hash(); [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `block_hash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 53 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 7m 45s [INFO] running `Command { std: "docker" "inspect" "9e42d37efa09a23801b56eb20b81687b11cbc34a4f5aa77201886e17dde9b7fd", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9e42d37efa09a23801b56eb20b81687b11cbc34a4f5aa77201886e17dde9b7fd", kill_on_drop: false }` [INFO] [stdout] 9e42d37efa09a23801b56eb20b81687b11cbc34a4f5aa77201886e17dde9b7fd [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-56/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-56/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 8f4fdbfa4c77321aa5eb978e03af5f9160d6eb35c34524f5a8cb02ee06234e29 [INFO] running `Command { std: "docker" "start" "-a" "8f4fdbfa4c77321aa5eb978e03af5f9160d6eb35c34524f5a8cb02ee06234e29", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Compiling bitcoin v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused imports: `DateTime`, `Utc` [INFO] [stdout] --> src/block.rs:3:14 [INFO] [stdout] | [INFO] [stdout] 3 | use chrono::{DateTime,Utc}; [INFO] [stdout] | ^^^^^^^^ ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Transaction` [INFO] [stdout] --> src/block.rs:4:26 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::transaction::{Transaction,SignedTransaction}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Duration` [INFO] [stdout] --> src/block.rs:6:17 [INFO] [stdout] | [INFO] [stdout] 6 | use std::time::{Duration, SystemTime, UNIX_EPOCH}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `MerkleNode` [INFO] [stdout] --> src/block.rs:7:29 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::crypto::merkle::{MerkleNode,MerkleTree}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Deserialize`, `Serialize` [INFO] [stdout] --> src/blockchain.rs:3:13 [INFO] [stdout] | [INFO] [stdout] 3 | use serde::{Serialize, Deserialize}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `DateTime`, `Utc` [INFO] [stdout] --> src/blockchain.rs:5:14 [INFO] [stdout] | [INFO] [stdout] 5 | use chrono::{DateTime,Utc}; [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: `rand::Rng` [INFO] [stdout] --> src/blockchain.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use rand::Rng; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Duration`, `SystemTime` [INFO] [stdout] --> src/blockchain.rs:8:17 [INFO] [stdout] | [INFO] [stdout] 8 | use std::time::{Duration, SystemTime, UNIX_EPOCH}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `MerkleNode` [INFO] [stdout] --> src/blockchain.rs:9:29 [INFO] [stdout] | [INFO] [stdout] 9 | use crate::crypto::merkle::{MerkleNode,MerkleTree}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/blockchain.rs:22:109 [INFO] [stdout] | [INFO] [stdout] 22 | let sign1: H256 = (hex!("0000000000000000000000000000000000000000000000000000000000000000")).into();; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/blockchain.rs:23:109 [INFO] [stdout] | [INFO] [stdout] 23 | let sign2: H256 = (hex!("0000000000000000000000000000000000000000000000000000000000000000")).into();; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/crypto/merkle.rs:81:81 [INFO] [stdout] | [INFO] [stdout] 81 | let mut trail: MerkleNode = self.node_array_by_levels[0][index].clone();; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/crypto/merkle.rs:111:5 [INFO] [stdout] | [INFO] [stdout] 111 | (trail_hash == *root) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 111 - (trail_hash == *root) [INFO] [stdout] 111 + trail_hash == *root [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Duration` [INFO] [stdout] --> src/miner.rs:7:17 [INFO] [stdout] | [INFO] [stdout] 7 | use std::time::{Duration, SystemTime, UNIX_EPOCH}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Transaction` [INFO] [stdout] --> src/miner.rs:14:26 [INFO] [stdout] | [INFO] [stdout] 14 | use crate::transaction::{Transaction,SignedTransaction}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `MerkleNode` [INFO] [stdout] --> src/miner.rs:15:29 [INFO] [stdout] | [INFO] [stdout] 15 | use crate::crypto::merkle::{MerkleNode,MerkleTree}; [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:20 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::block::{Header,Content,Block}; [INFO] [stdout] | ^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Content`, `Header` [INFO] [stdout] --> src/network/worker.rs:13:20 [INFO] [stdout] | [INFO] [stdout] 13 | use crate::block::{Header,Content,Block}; [INFO] [stdout] | ^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Block`, `Content`, `Header` [INFO] [stdout] --> src/main.rs:25:20 [INFO] [stdout] | [INFO] [stdout] 25 | use crate::block::{Header,Content,Block}; [INFO] [stdout] | ^^^^^^ ^^^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SignedTransaction`, `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 variable: `leaf_size` [INFO] [stdout] --> src/crypto/merkle.rs:94:72 [INFO] [stdout] | [INFO] [stdout] 94 | pub fn verify(root: &H256, datum: &H256, proof: &[H256], index: usize, leaf_size: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_leaf_size` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `level` [INFO] [stdout] --> src/crypto/merkle.rs:82:13 [INFO] [stdout] | [INFO] [stdout] 82 | for level in self.node_array_by_levels.clone() { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_level` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/blockchain.rs:44:13 [INFO] [stdout] | [INFO] [stdout] 44 | let mut tip: H256 = genHash; [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/crypto/merkle.rs:41:17 [INFO] [stdout] | [INFO] [stdout] 41 | let mut hashed_datum = MerkleNode{value: Hashable::hash(&datum),child1:None,child2:None,parent:None,is_leaf: true}; [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/crypto/merkle.rs:61:21 [INFO] [stdout] | [INFO] [stdout] 61 | ... let mut new_node : MerkleNode = MerkleNode{value: root, child1: Some(Box::new(prev_level[2*i].clone())), child2: Some(Box::new(prev... [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/crypto/merkle.rs:69:13 [INFO] [stdout] | [INFO] [stdout] 69 | let mut root: MerkleNode = prev_level[0].clone(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/network/worker.rs:122:41 [INFO] [stdout] | [INFO] [stdout] 122 | ... let mut new_parent = orphanBlocks[&parent].hash(); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `blockMap` should have a snake case name [INFO] [stdout] --> src/blockchain.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 13 | pub blockMap : HashMap, [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `block_map` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `chainLength` should have a snake case name [INFO] [stdout] --> src/blockchain.rs:15:9 [INFO] [stdout] | [INFO] [stdout] 15 | pub chainLength : u32 [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `chain_length` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `blockMap` should have a snake case name [INFO] [stdout] --> src/blockchain.rs:37:17 [INFO] [stdout] | [INFO] [stdout] 37 | let mut blockMap = HashMap::new(); [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `block_map` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `genHash` should have a snake case name [INFO] [stdout] --> src/blockchain.rs:38:13 [INFO] [stdout] | [INFO] [stdout] 38 | let genHash: H256 = Hashable::hash(&gen_block); [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `gen_hash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `blockHash` should have a snake case name [INFO] [stdout] --> src/blockchain.rs:50:13 [INFO] [stdout] | [INFO] [stdout] 50 | let blockHash: H256 = Hashable::hash(block); [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `block_hash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `thisParent` should have a snake case name [INFO] [stdout] --> src/blockchain.rs:58:17 [INFO] [stdout] | [INFO] [stdout] 58 | let mut thisParent: H256 = (*block).header.parent; [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `this_parent` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `hashVec` should have a snake case name [INFO] [stdout] --> src/blockchain.rs:78:17 [INFO] [stdout] | [INFO] [stdout] 78 | let mut hashVec: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `hash_vec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `thisParent` should have a snake case name [INFO] [stdout] --> src/blockchain.rs:80:17 [INFO] [stdout] | [INFO] [stdout] 80 | let mut thisParent: H256 = self.blockMap[&(self.tip)].header.parent; [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `this_parent` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `blockHashVec` should have a snake case name [INFO] [stdout] --> src/miner.rs:162:25 [INFO] [stdout] | [INFO] [stdout] 162 | let mut blockHashVec: Vec = Vec::new();//self.blockchain.lock().unwrap().all_blocks_in_longest_chain(); [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `block_hash_vec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `convertSigToH256` should have a snake case name [INFO] [stdout] --> src/transaction.rs:40:8 [INFO] [stdout] | [INFO] [stdout] 40 | pub fn convertSigToH256(signature: &Signature) -> [H256;2] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `convert_sig_to_h256` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `convertH256ToSigRef` should have a snake case name [INFO] [stdout] --> src/transaction.rs:49:8 [INFO] [stdout] | [INFO] [stdout] 49 | pub fn convertH256ToSigRef(signature: [H256;2]) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `convert_h256_to_sig_ref` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `orphanBlocks` should have a snake case name [INFO] [stdout] --> src/network/worker.rs:51:17 [INFO] [stdout] | [INFO] [stdout] 51 | let mut orphanBlocks = HashMap::new();// has parent Hash -> child Block mapping [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `orphan_blocks` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `blockHashVec` should have a snake case name [INFO] [stdout] --> src/network/worker.rs:66:41 [INFO] [stdout] | [INFO] [stdout] 66 | Message::NewBlockHashes(blockHashVec) => { [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `block_hash_vec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `wantedBlocks` should have a snake case name [INFO] [stdout] --> src/network/worker.rs:68:29 [INFO] [stdout] | [INFO] [stdout] 68 | let mut wantedBlocks: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `wanted_blocks` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `blockHash` should have a snake case name [INFO] [stdout] --> src/network/worker.rs:69:25 [INFO] [stdout] | [INFO] [stdout] 69 | for blockHash in blockHashVec.iter() { [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `block_hash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `blockHashVec` should have a snake case name [INFO] [stdout] --> src/network/worker.rs:84:35 [INFO] [stdout] | [INFO] [stdout] 84 | Message::GetBlock(blockHashVec) => { [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `block_hash_vec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `blockVecToSend` should have a snake case name [INFO] [stdout] --> src/network/worker.rs:86:29 [INFO] [stdout] | [INFO] [stdout] 86 | let mut blockVecToSend: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `block_vec_to_send` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `blockHash` should have a snake case name [INFO] [stdout] --> src/network/worker.rs:87:25 [INFO] [stdout] | [INFO] [stdout] 87 | for blockHash in blockHashVec.iter() { [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `block_hash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `blockVec` should have a snake case name [INFO] [stdout] --> src/network/worker.rs:100:32 [INFO] [stdout] | [INFO] [stdout] 100 | Message::Block(blockVec) => { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `block_vec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `insertedBlocks` should have a snake case name [INFO] [stdout] --> src/network/worker.rs:103:29 [INFO] [stdout] | [INFO] [stdout] 103 | let mut insertedBlocks: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `inserted_blocks` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `getBlocks` should have a snake case name [INFO] [stdout] --> src/network/worker.rs:104:29 [INFO] [stdout] | [INFO] [stdout] 104 | let mut getBlocks: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `get_blocks` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `blockHash` should have a snake case name [INFO] [stdout] --> src/network/worker.rs:111:29 [INFO] [stdout] | [INFO] [stdout] 111 | let blockHash: H256 = (*block).hash(); [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `block_hash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 51 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 23.05s [INFO] running `Command { std: "docker" "inspect" "8f4fdbfa4c77321aa5eb978e03af5f9160d6eb35c34524f5a8cb02ee06234e29", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "8f4fdbfa4c77321aa5eb978e03af5f9160d6eb35c34524f5a8cb02ee06234e29", kill_on_drop: false }` [INFO] [stdout] 8f4fdbfa4c77321aa5eb978e03af5f9160d6eb35c34524f5a8cb02ee06234e29 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-56/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-56/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 387c3ede92606618307a505eab628b7a6247235b2fa141e509e389ecfab96bd0 [INFO] running `Command { std: "docker" "start" "-a" "387c3ede92606618307a505eab628b7a6247235b2fa141e509e389ecfab96bd0", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] warning: unused imports: `DateTime`, `Utc` [INFO] [stderr] --> src/block.rs:3:14 [INFO] [stderr] | [INFO] [stderr] 3 | use chrono::{DateTime,Utc}; [INFO] [stderr] | ^^^^^^^^ ^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `Transaction` [INFO] [stderr] --> src/block.rs:4:26 [INFO] [stderr] | [INFO] [stderr] 4 | use crate::transaction::{Transaction,SignedTransaction}; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Duration` [INFO] [stderr] --> src/block.rs:6:17 [INFO] [stderr] | [INFO] [stderr] 6 | use std::time::{Duration, SystemTime, UNIX_EPOCH}; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `MerkleNode` [INFO] [stderr] --> src/block.rs:7:29 [INFO] [stderr] | [INFO] [stderr] 7 | use crate::crypto::merkle::{MerkleNode,MerkleTree}; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Deserialize`, `Serialize` [INFO] [stderr] --> src/blockchain.rs:3:13 [INFO] [stderr] | [INFO] [stderr] 3 | use serde::{Serialize, Deserialize}; [INFO] [stderr] | ^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `DateTime`, `Utc` [INFO] [stderr] --> src/blockchain.rs:5:14 [INFO] [stderr] | [INFO] [stderr] 5 | use chrono::{DateTime,Utc}; [INFO] [stderr] | ^^^^^^^^ ^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Transaction` [INFO] [stderr] --> src/blockchain.rs:6:26 [INFO] [stderr] | [INFO] [stderr] 6 | use crate::transaction::{Transaction,SignedTransaction}; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `rand::Rng` [INFO] [stderr] --> src/blockchain.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use rand::Rng; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Duration`, `SystemTime` [INFO] [stderr] --> src/blockchain.rs:8:17 [INFO] [stderr] | [INFO] [stderr] 8 | use std::time::{Duration, SystemTime, UNIX_EPOCH}; [INFO] [stderr] | ^^^^^^^^ ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `MerkleNode` [INFO] [stderr] --> src/blockchain.rs:9:29 [INFO] [stderr] | [INFO] [stderr] 9 | use crate::crypto::merkle::{MerkleNode,MerkleTree}; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unnecessary trailing semicolon [INFO] [stderr] --> src/blockchain.rs:22:109 [INFO] [stderr] | [INFO] [stderr] 22 | let sign1: H256 = (hex!("0000000000000000000000000000000000000000000000000000000000000000")).into();; [INFO] [stderr] | ^ help: remove this semicolon [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary trailing semicolon [INFO] [stderr] --> src/blockchain.rs:23:109 [INFO] [stderr] | [INFO] [stderr] 23 | let sign2: H256 = (hex!("0000000000000000000000000000000000000000000000000000000000000000")).into();; [INFO] [stderr] | ^ help: remove this semicolon [INFO] [stderr] [INFO] [stderr] warning: unnecessary trailing semicolon [INFO] [stderr] --> src/crypto/merkle.rs:81:81 [INFO] [stderr] | [INFO] [stderr] 81 | let mut trail: MerkleNode = self.node_array_by_levels[0][index].clone();; [INFO] [stderr] | ^ help: remove this semicolon [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around block return value [INFO] [stderr] --> src/crypto/merkle.rs:111:5 [INFO] [stderr] | [INFO] [stderr] 111 | (trail_hash == *root) [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 111 - (trail_hash == *root) [INFO] [stderr] 111 + trail_hash == *root [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused import: `Duration` [INFO] [stderr] --> src/miner.rs:7:17 [INFO] [stderr] | [INFO] [stderr] 7 | use std::time::{Duration, SystemTime, UNIX_EPOCH}; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Transaction` [INFO] [stderr] --> src/miner.rs:14:26 [INFO] [stderr] | [INFO] [stderr] 14 | use crate::transaction::{Transaction,SignedTransaction}; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `MerkleNode` [INFO] [stderr] --> src/miner.rs:15:29 [INFO] [stderr] | [INFO] [stderr] 15 | use crate::crypto::merkle::{MerkleNode,MerkleTree}; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Hashable` [INFO] [stderr] --> src/network/message.rs:2:33 [INFO] [stderr] | [INFO] [stderr] 2 | use crate::crypto::hash::{H256, Hashable}; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Content`, `Header` [INFO] [stderr] --> src/network/message.rs:3:20 [INFO] [stderr] | [INFO] [stderr] 3 | use crate::block::{Header,Content,Block}; [INFO] [stderr] | ^^^^^^ ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Content`, `Header` [INFO] [stderr] --> src/network/worker.rs:13:20 [INFO] [stderr] | [INFO] [stderr] 13 | use crate::block::{Header,Content,Block}; [INFO] [stderr] | ^^^^^^ ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Block`, `Content`, `Header` [INFO] [stderr] --> src/main.rs:25:20 [INFO] [stderr] | [INFO] [stderr] 25 | use crate::block::{Header,Content,Block}; [INFO] [stderr] | ^^^^^^ ^^^^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `SignedTransaction`, `Transaction` [INFO] [stderr] --> src/main.rs:26:26 [INFO] [stderr] | [INFO] [stderr] 26 | use crate::transaction::{Transaction,SignedTransaction}; [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `leaf_size` [INFO] [stderr] --> src/crypto/merkle.rs:94:72 [INFO] [stderr] | [INFO] [stderr] 94 | pub fn verify(root: &H256, datum: &H256, proof: &[H256], index: usize, leaf_size: usize) -> bool { [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_leaf_size` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `level` [INFO] [stderr] --> src/crypto/merkle.rs:82:13 [INFO] [stderr] | [INFO] [stderr] 82 | for level in self.node_array_by_levels.clone() { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_level` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/blockchain.rs:44:13 [INFO] [stderr] | [INFO] [stderr] 44 | let mut tip: H256 = genHash; [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/crypto/merkle.rs:41:17 [INFO] [stderr] | [INFO] [stderr] 41 | let mut hashed_datum = MerkleNode{value: Hashable::hash(&datum),child1:None,child2:None,parent:None,is_leaf: true}; [INFO] [stderr] | ----^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/crypto/merkle.rs:61:21 [INFO] [stderr] | [INFO] [stderr] 61 | ... let mut new_node : MerkleNode = MerkleNode{value: root, child1: Some(Box::new(prev_level[2*i].clone())), child2: Some(Box::new(prev... [INFO] [stderr] | ----^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/crypto/merkle.rs:69:13 [INFO] [stderr] | [INFO] [stderr] 69 | let mut root: MerkleNode = prev_level[0].clone(); [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/network/worker.rs:122:41 [INFO] [stderr] | [INFO] [stderr] 122 | ... let mut new_parent = orphanBlocks[&parent].hash(); [INFO] [stderr] | ----^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: structure field `blockMap` should have a snake case name [INFO] [stderr] --> src/blockchain.rs:13:9 [INFO] [stderr] | [INFO] [stderr] 13 | pub blockMap : HashMap, [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to snake case: `block_map` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_snake_case)]` on by default [INFO] [stderr] [INFO] [stderr] warning: structure field `chainLength` should have a snake case name [INFO] [stderr] --> src/blockchain.rs:15:9 [INFO] [stderr] | [INFO] [stderr] 15 | pub chainLength : u32 [INFO] [stderr] | ^^^^^^^^^^^ help: convert the identifier to snake case: `chain_length` [INFO] [stderr] [INFO] [stderr] warning: variable `blockMap` should have a snake case name [INFO] [stderr] --> src/blockchain.rs:37:17 [INFO] [stderr] | [INFO] [stderr] 37 | let mut blockMap = HashMap::new(); [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to snake case: `block_map` [INFO] [stderr] [INFO] [stderr] warning: variable `genHash` should have a snake case name [INFO] [stderr] --> src/blockchain.rs:38:13 [INFO] [stderr] | [INFO] [stderr] 38 | let genHash: H256 = Hashable::hash(&gen_block); [INFO] [stderr] | ^^^^^^^ help: convert the identifier to snake case: `gen_hash` [INFO] [stderr] [INFO] [stderr] warning: variable `blockHash` should have a snake case name [INFO] [stderr] --> src/blockchain.rs:50:13 [INFO] [stderr] | [INFO] [stderr] 50 | let blockHash: H256 = Hashable::hash(block); [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to snake case: `block_hash` [INFO] [stderr] [INFO] [stderr] warning: variable `thisParent` should have a snake case name [INFO] [stderr] --> src/blockchain.rs:58:17 [INFO] [stderr] | [INFO] [stderr] 58 | let mut thisParent: H256 = (*block).header.parent; [INFO] [stderr] | ^^^^^^^^^^ help: convert the identifier to snake case: `this_parent` [INFO] [stderr] [INFO] [stderr] warning: variable `hashVec` should have a snake case name [INFO] [stderr] --> src/blockchain.rs:78:17 [INFO] [stderr] | [INFO] [stderr] 78 | let mut hashVec: Vec = Vec::new(); [INFO] [stderr] | ^^^^^^^ help: convert the identifier to snake case: `hash_vec` [INFO] [stderr] [INFO] [stderr] warning: variable `thisParent` should have a snake case name [INFO] [stderr] --> src/blockchain.rs:80:17 [INFO] [stderr] | [INFO] [stderr] 80 | let mut thisParent: H256 = self.blockMap[&(self.tip)].header.parent; [INFO] [stderr] | ^^^^^^^^^^ help: convert the identifier to snake case: `this_parent` [INFO] [stderr] [INFO] [stderr] warning: variable `blockHashVec` should have a snake case name [INFO] [stderr] --> src/miner.rs:162:25 [INFO] [stderr] | [INFO] [stderr] 162 | let mut blockHashVec: Vec = Vec::new();//self.blockchain.lock().unwrap().all_blocks_in_longest_chain(); [INFO] [stderr] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `block_hash_vec` [INFO] [stderr] [INFO] [stderr] warning: function `convertSigToH256` should have a snake case name [INFO] [stderr] --> src/transaction.rs:40:8 [INFO] [stderr] | [INFO] [stderr] 40 | pub fn convertSigToH256(signature: &Signature) -> [H256;2] { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `convert_sig_to_h256` [INFO] [stderr] [INFO] [stderr] warning: function `convertH256ToSigRef` should have a snake case name [INFO] [stderr] --> src/transaction.rs:49:8 [INFO] [stderr] | [INFO] [stderr] 49 | pub fn convertH256ToSigRef(signature: [H256;2]) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `convert_h256_to_sig_ref` [INFO] [stderr] [INFO] [stderr] warning: variable `orphanBlocks` should have a snake case name [INFO] [stderr] --> src/network/worker.rs:51:17 [INFO] [stderr] | [INFO] [stderr] 51 | let mut orphanBlocks = HashMap::new();// has parent Hash -> child Block mapping [INFO] [stderr] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `orphan_blocks` [INFO] [stderr] [INFO] [stderr] warning: variable `blockHashVec` should have a snake case name [INFO] [stderr] --> src/network/worker.rs:66:41 [INFO] [stderr] | [INFO] [stderr] 66 | Message::NewBlockHashes(blockHashVec) => { [INFO] [stderr] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `block_hash_vec` [INFO] [stderr] [INFO] [stderr] warning: variable `wantedBlocks` should have a snake case name [INFO] [stderr] --> src/network/worker.rs:68:29 [INFO] [stderr] | [INFO] [stderr] 68 | let mut wantedBlocks: Vec = Vec::new(); [INFO] [stderr] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `wanted_blocks` [INFO] [stderr] [INFO] [stderr] warning: variable `blockHash` should have a snake case name [INFO] [stderr] --> src/network/worker.rs:69:25 [INFO] [stderr] | [INFO] [stderr] 69 | for blockHash in blockHashVec.iter() { [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to snake case: `block_hash` [INFO] [stderr] [INFO] [stderr] warning: variable `blockHashVec` should have a snake case name [INFO] [stderr] --> src/network/worker.rs:84:35 [INFO] [stderr] | [INFO] [stderr] 84 | Message::GetBlock(blockHashVec) => { [INFO] [stderr] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `block_hash_vec` [INFO] [stderr] [INFO] [stderr] warning: variable `blockVecToSend` should have a snake case name [INFO] [stderr] --> src/network/worker.rs:86:29 [INFO] [stderr] | [INFO] [stderr] 86 | let mut blockVecToSend: Vec = Vec::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `block_vec_to_send` [INFO] [stderr] [INFO] [stderr] warning: variable `blockHash` should have a snake case name [INFO] [stderr] --> src/network/worker.rs:87:25 [INFO] [stderr] | [INFO] [stderr] 87 | for blockHash in blockHashVec.iter() { [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to snake case: `block_hash` [INFO] [stderr] [INFO] [stderr] warning: variable `blockVec` should have a snake case name [INFO] [stderr] --> src/network/worker.rs:100:32 [INFO] [stderr] | [INFO] [stderr] 100 | Message::Block(blockVec) => { [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to snake case: `block_vec` [INFO] [stderr] [INFO] [stderr] warning: variable `insertedBlocks` should have a snake case name [INFO] [stderr] --> src/network/worker.rs:103:29 [INFO] [stderr] | [INFO] [stderr] 103 | let mut insertedBlocks: Vec = Vec::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `inserted_blocks` [INFO] [stderr] [INFO] [stderr] warning: variable `getBlocks` should have a snake case name [INFO] [stderr] --> src/network/worker.rs:104:29 [INFO] [stderr] | [INFO] [stderr] 104 | let mut getBlocks: Vec = Vec::new(); [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to snake case: `get_blocks` [INFO] [stderr] [INFO] [stderr] warning: variable `blockHash` should have a snake case name [INFO] [stderr] --> src/network/worker.rs:111:29 [INFO] [stderr] | [INFO] [stderr] 111 | let blockHash: H256 = (*block).hash(); [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to snake case: `block_hash` [INFO] [stderr] [INFO] [stderr] warning: `bitcoin` (bin "bitcoin" test) generated 51 warnings [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 54.37s [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/bitcoin-d1eb00066048fad9) [INFO] [stdout] [INFO] [stdout] running 5 tests [INFO] [stdout] test crypto::merkle::tests::proof ... ok [INFO] [stdout] test crypto::merkle::tests::root ... ok [INFO] [stdout] test crypto::merkle::tests::verifying ... ok [INFO] [stdout] test blockchain::tests::insert_one ... ok [INFO] [stdout] test transaction::tests::sign_verify ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "387c3ede92606618307a505eab628b7a6247235b2fa141e509e389ecfab96bd0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "387c3ede92606618307a505eab628b7a6247235b2fa141e509e389ecfab96bd0", kill_on_drop: false }` [INFO] [stdout] 387c3ede92606618307a505eab628b7a6247235b2fa141e509e389ecfab96bd0