[INFO] cloning repository https://github.com/KonZoX/BlockChainProject [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/KonZoX/BlockChainProject" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FKonZoX%2FBlockChainProject", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FKonZoX%2FBlockChainProject'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 613af3c4a681e52d70cf527dc825ce56c985f277 [INFO] checking KonZoX/BlockChainProject against try#f77b5bc6c7c84df104f86b0dd01d9490e3923fa8 for pr-147834 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FKonZoX%2FBlockChainProject" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/KonZoX/BlockChainProject [INFO] finished tweaking git repo https://github.com/KonZoX/BlockChainProject [INFO] tweaked toml for git repo https://github.com/KonZoX/BlockChainProject written to /workspace/builds/worker-1-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/KonZoX/BlockChainProject on toolchain f77b5bc6c7c84df104f86b0dd01d9490e3923fa8 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f77b5bc6c7c84df104f86b0dd01d9490e3923fa8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/KonZoX/BlockChainProject already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f77b5bc6c7c84df104f86b0dd01d9490e3923fa8" "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 [ERROR] error running command: no output for 300 seconds [INFO] checking KonZoX/BlockChainProject against try#f77b5bc6c7c84df104f86b0dd01d9490e3923fa8 for pr-147834 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FKonZoX%2FBlockChainProject" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/KonZoX/BlockChainProject [INFO] finished tweaking git repo https://github.com/KonZoX/BlockChainProject [INFO] tweaked toml for git repo https://github.com/KonZoX/BlockChainProject written to /workspace/builds/worker-1-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/KonZoX/BlockChainProject on toolchain f77b5bc6c7c84df104f86b0dd01d9490e3923fa8 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f77b5bc6c7c84df104f86b0dd01d9490e3923fa8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/KonZoX/BlockChainProject already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f77b5bc6c7c84df104f86b0dd01d9490e3923fa8" "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] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+f77b5bc6c7c84df104f86b0dd01d9490e3923fa8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] cc9bf0fdcc300f5004e86059cb5448b787cb3ec442290dd81a1d06b6b4bb83eb [INFO] running `Command { std: "docker" "start" "-a" "cc9bf0fdcc300f5004e86059cb5448b787cb3ec442290dd81a1d06b6b4bb83eb", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "cc9bf0fdcc300f5004e86059cb5448b787cb3ec442290dd81a1d06b6b4bb83eb", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "cc9bf0fdcc300f5004e86059cb5448b787cb3ec442290dd81a1d06b6b4bb83eb", kill_on_drop: false }` [INFO] [stdout] cc9bf0fdcc300f5004e86059cb5448b787cb3ec442290dd81a1d06b6b4bb83eb [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+f77b5bc6c7c84df104f86b0dd01d9490e3923fa8" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] c59939abc6f010c97d1527c9fccb03d4741d82810a484e211cd0272f99e25e75 [INFO] running `Command { std: "docker" "start" "-a" "c59939abc6f010c97d1527c9fccb03d4741d82810a484e211cd0272f99e25e75", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.172 [INFO] [stderr] Compiling cc v1.2.25 [INFO] [stderr] Compiling serde v1.0.219 [INFO] [stderr] Checking subtle v2.6.1 [INFO] [stderr] Compiling rustls v0.23.27 [INFO] [stderr] Checking webpki-roots v1.0.0 [INFO] [stderr] Compiling syn v2.0.101 [INFO] [stderr] Checking signature v2.2.0 [INFO] [stderr] Compiling curve25519-dalek v4.1.3 [INFO] [stderr] Checking flate2 v1.1.1 [INFO] [stderr] Checking sha2 v0.10.9 [INFO] [stderr] Checking webpki-roots v0.26.11 [INFO] [stderr] Checking getrandom v0.2.16 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Compiling ring v0.17.14 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Compiling zerofrom-derive v0.1.6 [INFO] [stderr] Compiling yoke-derive v0.8.0 [INFO] [stderr] Compiling zerovec-derive v0.11.1 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Compiling serde_derive v1.0.219 [INFO] [stderr] Compiling curve25519-dalek-derive v0.1.1 [INFO] [stderr] Checking rustls-webpki v0.103.3 [INFO] [stderr] Checking zerofrom v0.1.6 [INFO] [stderr] Checking yoke v0.8.0 [INFO] [stderr] Checking zerovec v0.11.2 [INFO] [stderr] Checking zerotrie v0.2.2 [INFO] [stderr] Checking tinystr v0.8.1 [INFO] [stderr] Checking potential_utf v0.1.2 [INFO] [stderr] Checking icu_collections v2.0.0 [INFO] [stderr] Checking icu_locale_core v2.0.0 [INFO] [stderr] Checking icu_provider v2.0.0 [INFO] [stderr] Checking icu_normalizer v2.0.0 [INFO] [stderr] Checking icu_properties v2.0.1 [INFO] [stderr] Checking idna_adapter v1.2.1 [INFO] [stderr] Checking idna v1.0.3 [INFO] [stderr] Checking url v2.5.4 [INFO] [stderr] Checking ureq v2.12.1 [INFO] [stderr] Checking ed25519 v2.2.3 [INFO] [stderr] Checking bincode v1.3.3 [INFO] [stderr] Checking ed25519-dalek v2.1.1 [INFO] [stderr] Checking BlockChainProject v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `serialize_into` [INFO] [stdout] --> src/components/blockchain.rs:4:37 [INFO] [stdout] | [INFO] [stdout] 4 | use bincode::{deserialize_from, serialize_into}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Error` and `serialize_into` [INFO] [stdout] --> src/components/blockchain.rs:161:19 [INFO] [stdout] | [INFO] [stdout] 161 | use bincode::{Error, deserialize_from, serialize_into}; [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `SigningKey` [INFO] [stdout] --> src/components/payment.rs:39:44 [INFO] [stdout] | [INFO] [stdout] 39 | use ed25519_dalek::{Signature, Signer, SigningKey, VerifyingKey}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `sha2::digest::typenum::Pow` [INFO] [stdout] --> src/components/payment.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 42 | use sha2::digest::typenum::Pow; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs` [INFO] [stdout] --> src/network/p2p.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::fs; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BufRead`, `Write`, and `prelude` [INFO] [stdout] --> src/network/p2p.rs:2:15 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::{BufRead, BufReader, Write, prelude}; [INFO] [stdout] | ^^^^^^^ ^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::Duration` [INFO] [stdout] --> src/network/p2p.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::time::Duration; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serialize_into` [INFO] [stdout] --> src/components/blockchain.rs:4:37 [INFO] [stdout] | [INFO] [stdout] 4 | use bincode::{deserialize_from, serialize_into}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self` [INFO] [stdout] --> src/network/peer.rs:11:48 [INFO] [stdout] | [INFO] [stdout] 11 | use crate::components::payment::transactions::{self, Transaction}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Error` and `serialize_into` [INFO] [stdout] --> src/components/blockchain.rs:161:19 [INFO] [stdout] | [INFO] [stdout] 161 | use bincode::{Error, deserialize_from, serialize_into}; [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `SigningKey` [INFO] [stdout] --> src/components/payment.rs:39:44 [INFO] [stdout] | [INFO] [stdout] 39 | use ed25519_dalek::{Signature, Signer, SigningKey, VerifyingKey}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `sha2::digest::typenum::Pow` [INFO] [stdout] --> src/components/payment.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 42 | use sha2::digest::typenum::Pow; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs` [INFO] [stdout] --> src/network/p2p.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::fs; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BufRead`, `Write`, and `prelude` [INFO] [stdout] --> src/network/p2p.rs:2:15 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::{BufRead, BufReader, Write, prelude}; [INFO] [stdout] | ^^^^^^^ ^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::Duration` [INFO] [stdout] --> src/network/p2p.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::time::Duration; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self` [INFO] [stdout] --> src/network/peer.rs:11:48 [INFO] [stdout] | [INFO] [stdout] 11 | use crate::components::payment::transactions::{self, Transaction}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Signer` [INFO] [stdout] --> src/components/payment.rs:39:36 [INFO] [stdout] | [INFO] [stdout] 39 | use ed25519_dalek::{Signature, Signer, SigningKey, VerifyingKey}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Signer` [INFO] [stdout] --> src/components/payment.rs:39:36 [INFO] [stdout] | [INFO] [stdout] 39 | use ed25519_dalek::{Signature, Signer, SigningKey, VerifyingKey}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `nonce` [INFO] [stdout] --> src/components/blockchain.rs:208:37 [INFO] [stdout] | [INFO] [stdout] 208 | let Block { data, hash, nonce } = self.last_block(); [INFO] [stdout] | ^^^^^ help: try ignoring the field: `nonce: _` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `nonce` [INFO] [stdout] --> src/components/blockchain.rs:216:37 [INFO] [stdout] | [INFO] [stdout] 216 | let Block { data, hash, nonce } = self.last_block(); [INFO] [stdout] | ^^^^^ help: try ignoring the field: `nonce: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `nonce` [INFO] [stdout] --> src/components/blockchain.rs:208:37 [INFO] [stdout] | [INFO] [stdout] 208 | let Block { data, hash, nonce } = self.last_block(); [INFO] [stdout] | ^^^^^ help: try ignoring the field: `nonce: _` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `nonce` [INFO] [stdout] --> src/components/blockchain.rs:216:37 [INFO] [stdout] | [INFO] [stdout] 216 | let Block { data, hash, nonce } = self.last_block(); [INFO] [stdout] | ^^^^^ help: try ignoring the field: `nonce: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/components/blockchain.rs:302:17 [INFO] [stdout] | [INFO] [stdout] 302 | let mut fo = File::open(path)?; [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/components/blockchain.rs:302:17 [INFO] [stdout] | [INFO] [stdout] 302 | let mut fo = File::open(path)?; [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/network/p2p.rs:10:26 [INFO] [stdout] | [INFO] [stdout] 10 | pub fn handle_connection(mut stream: TcpStream) -> Result { [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/p2p.rs:10:26 [INFO] [stdout] | [INFO] [stdout] 10 | pub fn handle_connection(mut stream: TcpStream) -> Result { [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `status` [INFO] [stdout] --> src/network/peer.rs:89:9 [INFO] [stdout] | [INFO] [stdout] 89 | status: ConnectionStatus, [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_status` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `direction` [INFO] [stdout] --> src/network/peer.rs:90:9 [INFO] [stdout] | [INFO] [stdout] 90 | direction: ConnectionDirection, [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_direction` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `inbox` [INFO] [stdout] --> src/network/peer.rs:91:9 [INFO] [stdout] | [INFO] [stdout] 91 | inbox: VecDeque, [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_inbox` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `status` [INFO] [stdout] --> src/network/peer.rs:89:9 [INFO] [stdout] | [INFO] [stdout] 89 | status: ConnectionStatus, [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_status` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `direction` [INFO] [stdout] --> src/network/peer.rs:90:9 [INFO] [stdout] | [INFO] [stdout] 90 | direction: ConnectionDirection, [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_direction` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `inbox` [INFO] [stdout] --> src/network/peer.rs:91:9 [INFO] [stdout] | [INFO] [stdout] 91 | inbox: VecDeque, [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_inbox` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `genesis` is never used [INFO] [stdout] --> src/components/blockchain.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 25 | impl BlockData { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] 26 | fn genesis(transactions: &Vec) -> Self { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: crate `BlockChainProject` should have a snake case name [INFO] [stdout] | [INFO] [stdout] = help: convert the identifier to snake case: `block_chain_project` [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `genesis` is never used [INFO] [stdout] --> src/components/blockchain.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 25 | impl BlockData { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] 26 | fn genesis(transactions: &Vec) -> Self { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/network/peer.rs:138:13 [INFO] [stdout] | [INFO] [stdout] 138 | stream.shutdown(Shutdown::Both); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 138 | let _ = stream.shutdown(Shutdown::Both); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/network/peer.rs:156:13 [INFO] [stdout] | [INFO] [stdout] 156 | writer.write_all(&serialized); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 156 | let _ = writer.write_all(&serialized); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/network/peer.rs:205:29 [INFO] [stdout] | [INFO] [stdout] 205 | ... ref_chain.append_block(&mut block); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 205 | let _ = ref_chain.append_block(&mut block); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/network/peer.rs:210:33 [INFO] [stdout] | [INFO] [stdout] 210 | ... self.send_message(&p, &msg); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 210 | let _ = self.send_message(&p, &msg); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/network/peer.rs:138:13 [INFO] [stdout] | [INFO] [stdout] 138 | stream.shutdown(Shutdown::Both); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 138 | let _ = stream.shutdown(Shutdown::Both); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/network/peer.rs:156:13 [INFO] [stdout] | [INFO] [stdout] 156 | writer.write_all(&serialized); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 156 | let _ = writer.write_all(&serialized); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/network/peer.rs:205:29 [INFO] [stdout] | [INFO] [stdout] 205 | ... ref_chain.append_block(&mut block); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 205 | let _ = ref_chain.append_block(&mut block); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/network/peer.rs:210:33 [INFO] [stdout] | [INFO] [stdout] 210 | ... self.send_message(&p, &msg); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 210 | let _ = self.send_message(&p, &msg); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/message_sender.rs:21:9 [INFO] [stdout] | [INFO] [stdout] 21 | let mut peer = Peer::new( [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/message_sender.rs:21:9 [INFO] [stdout] | [INFO] [stdout] 21 | let mut peer = Peer::new( [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `sb` [INFO] [stdout] --> src/bin/message_sender.rs:40:9 [INFO] [stdout] | [INFO] [stdout] 40 | let sb = Block::read_block("./storage/block1.bin").unwrap(); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_sb` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `sb` [INFO] [stdout] --> src/bin/message_sender.rs:40:9 [INFO] [stdout] | [INFO] [stdout] 40 | let sb = Block::read_block("./storage/block1.bin").unwrap(); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_sb` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `c` [INFO] [stdout] --> src/bin/message_sender.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 41 | let c = BlockChain::new(); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_c` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `c` [INFO] [stdout] --> src/bin/message_sender.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 41 | let c = BlockChain::new(); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_c` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/bin/message_sender.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | peer.send_message(&receiving_peer_info, &Message::NewBlock(b)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 44 | let _ = peer.send_message(&receiving_peer_info, &Message::NewBlock(b)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/bin/message_sender.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | peer.send_message(&receiving_peer_info, &Message::NewBlock(b)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 44 | let _ = peer.send_message(&receiving_peer_info, &Message::NewBlock(b)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/bin/message_sender.rs:45:5 [INFO] [stdout] | [INFO] [stdout] 45 | peer.send_message(&receiving_peer_info, &Message::Transaction(tx)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 45 | let _ = peer.send_message(&receiving_peer_info, &Message::Transaction(tx)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/bin/message_sender.rs:45:5 [INFO] [stdout] | [INFO] [stdout] 45 | peer.send_message(&receiving_peer_info, &Message::Transaction(tx)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 45 | let _ = peer.send_message(&receiving_peer_info, &Message::Transaction(tx)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/bin/message_sender.rs:47:5 [INFO] [stdout] | [INFO] [stdout] 47 | peer.send_message(&receiving_peer_info, &Message::RequestInfo); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 47 | let _ = peer.send_message(&receiving_peer_info, &Message::RequestInfo); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/bin/message_sender.rs:47:5 [INFO] [stdout] | [INFO] [stdout] 47 | peer.send_message(&receiving_peer_info, &Message::RequestInfo); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 47 | let _ = peer.send_message(&receiving_peer_info, &Message::RequestInfo); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serialize_into` [INFO] [stdout] --> src/components/blockchain.rs:4:37 [INFO] [stdout] | [INFO] [stdout] 4 | use bincode::{deserialize_from, serialize_into}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Error` and `serialize_into` [INFO] [stdout] --> src/components/blockchain.rs:161:19 [INFO] [stdout] | [INFO] [stdout] 161 | use bincode::{Error, deserialize_from, serialize_into}; [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `SigningKey` [INFO] [stdout] --> src/components/payment.rs:39:44 [INFO] [stdout] | [INFO] [stdout] 39 | use ed25519_dalek::{Signature, Signer, SigningKey, VerifyingKey}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `sha2::digest::typenum::Pow` [INFO] [stdout] --> src/components/payment.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 42 | use sha2::digest::typenum::Pow; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs` [INFO] [stdout] --> src/network/p2p.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::fs; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BufRead`, `Write`, and `prelude` [INFO] [stdout] --> src/network/p2p.rs:2:15 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::{BufRead, BufReader, Write, prelude}; [INFO] [stdout] | ^^^^^^^ ^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::Duration` [INFO] [stdout] --> src/network/p2p.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::time::Duration; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self` [INFO] [stdout] --> src/network/peer.rs:11:48 [INFO] [stdout] | [INFO] [stdout] 11 | use crate::components::payment::transactions::{self, Transaction}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `BlockPredicates` [INFO] [stdout] --> src/main.rs:5:50 [INFO] [stdout] | [INFO] [stdout] 5 | use components::blockchain::chains::{BlockChain, BlockPredicates}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serialize_into` [INFO] [stdout] --> src/components/blockchain.rs:4:37 [INFO] [stdout] | [INFO] [stdout] 4 | use bincode::{deserialize_from, serialize_into}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Error` and `serialize_into` [INFO] [stdout] --> src/components/blockchain.rs:161:19 [INFO] [stdout] | [INFO] [stdout] 161 | use bincode::{Error, deserialize_from, serialize_into}; [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `SigningKey` [INFO] [stdout] --> src/components/payment.rs:39:44 [INFO] [stdout] | [INFO] [stdout] 39 | use ed25519_dalek::{Signature, Signer, SigningKey, VerifyingKey}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `sha2::digest::typenum::Pow` [INFO] [stdout] --> src/components/payment.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 42 | use sha2::digest::typenum::Pow; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs` [INFO] [stdout] --> src/network/p2p.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::fs; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BufRead`, `Write`, and `prelude` [INFO] [stdout] --> src/network/p2p.rs:2:15 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::{BufRead, BufReader, Write, prelude}; [INFO] [stdout] | ^^^^^^^ ^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::Duration` [INFO] [stdout] --> src/network/p2p.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::time::Duration; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self` [INFO] [stdout] --> src/network/peer.rs:11:48 [INFO] [stdout] | [INFO] [stdout] 11 | use crate::components::payment::transactions::{self, Transaction}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `BlockPredicates` [INFO] [stdout] --> src/main.rs:5:50 [INFO] [stdout] | [INFO] [stdout] 5 | use components::blockchain::chains::{BlockChain, BlockPredicates}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Signer` [INFO] [stdout] --> src/components/payment.rs:39:36 [INFO] [stdout] | [INFO] [stdout] 39 | use ed25519_dalek::{Signature, Signer, SigningKey, VerifyingKey}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Signer` [INFO] [stdout] --> src/components/payment.rs:39:36 [INFO] [stdout] | [INFO] [stdout] 39 | use ed25519_dalek::{Signature, Signer, SigningKey, VerifyingKey}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `nonce` [INFO] [stdout] --> src/components/blockchain.rs:208:37 [INFO] [stdout] | [INFO] [stdout] 208 | let Block { data, hash, nonce } = self.last_block(); [INFO] [stdout] | ^^^^^ help: try ignoring the field: `nonce: _` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `nonce` [INFO] [stdout] --> src/components/blockchain.rs:216:37 [INFO] [stdout] | [INFO] [stdout] 216 | let Block { data, hash, nonce } = self.last_block(); [INFO] [stdout] | ^^^^^ help: try ignoring the field: `nonce: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/components/blockchain.rs:302:17 [INFO] [stdout] | [INFO] [stdout] 302 | let mut fo = File::open(path)?; [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `nonce` [INFO] [stdout] --> src/components/blockchain.rs:208:37 [INFO] [stdout] | [INFO] [stdout] 208 | let Block { data, hash, nonce } = self.last_block(); [INFO] [stdout] | ^^^^^ help: try ignoring the field: `nonce: _` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `nonce` [INFO] [stdout] --> src/components/blockchain.rs:216:37 [INFO] [stdout] | [INFO] [stdout] 216 | let Block { data, hash, nonce } = self.last_block(); [INFO] [stdout] | ^^^^^ help: try ignoring the field: `nonce: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/components/blockchain.rs:302:17 [INFO] [stdout] | [INFO] [stdout] 302 | let mut fo = File::open(path)?; [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/network/p2p.rs:10:26 [INFO] [stdout] | [INFO] [stdout] 10 | pub fn handle_connection(mut stream: TcpStream) -> Result { [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/p2p.rs:10:26 [INFO] [stdout] | [INFO] [stdout] 10 | pub fn handle_connection(mut stream: TcpStream) -> Result { [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `status` [INFO] [stdout] --> src/network/peer.rs:89:9 [INFO] [stdout] | [INFO] [stdout] 89 | status: ConnectionStatus, [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_status` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `direction` [INFO] [stdout] --> src/network/peer.rs:90:9 [INFO] [stdout] | [INFO] [stdout] 90 | direction: ConnectionDirection, [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_direction` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `inbox` [INFO] [stdout] --> src/network/peer.rs:91:9 [INFO] [stdout] | [INFO] [stdout] 91 | inbox: VecDeque, [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_inbox` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 52 | let mut peer = Peer::new( [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `genesis` is never used [INFO] [stdout] --> src/components/blockchain.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 25 | impl BlockData { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] 26 | fn genesis(transactions: &Vec) -> Self { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `read_block` is never used [INFO] [stdout] --> src/components/blockchain.rs:122:16 [INFO] [stdout] | [INFO] [stdout] 45 | impl Block { [INFO] [stdout] | ---------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 122 | pub fn read_block(pth: &str) -> Result> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/components/blockchain.rs:191:12 [INFO] [stdout] | [INFO] [stdout] 174 | impl BlockChain { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 191 | fn create_chain_from_iter(blocks: Vec) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 241 | pub fn print(&self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 270 | pub fn save_blockchain( [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 290 | pub fn load_blocks(pth: &str) -> Result, Box> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 300 | pub fn load_chain(pth: &str) -> Result> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 308 | pub fn get_block_by_index(&self, index: usize) -> Option<&Block> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 312 | pub fn search(&self, predicate: F) -> Option<&Block> [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `BlockPredicates` is never constructed [INFO] [stdout] --> src/components/blockchain.rs:321:16 [INFO] [stdout] | [INFO] [stdout] 321 | pub struct BlockPredicates; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `by_nonce`, `by_transaction`, `by_timestamp`, and `by_prev_hash` are never used [INFO] [stdout] --> src/components/blockchain.rs:324:16 [INFO] [stdout] | [INFO] [stdout] 323 | impl BlockPredicates { [INFO] [stdout] | -------------------- associated functions in this implementation [INFO] [stdout] 324 | pub fn by_nonce(n: u32) -> impl Fn(&Block) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 328 | pub fn by_transaction(tx: Transaction) -> impl Fn(&Block) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 332 | pub fn by_timestamp(ts: u128) -> impl Fn(&Block) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 336 | pub fn by_prev_hash(h: [u8; 32]) -> impl Fn(&Block) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `amount` is never read [INFO] [stdout] --> src/components/payment.rs:10:13 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Wallet { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 10 | pub amount: u64, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `create_transaction` is never used [INFO] [stdout] --> src/components/payment.rs:29:16 [INFO] [stdout] | [INFO] [stdout] 13 | impl Wallet { [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 29 | pub fn create_transaction(&mut self, to: VerifyingKey, value: u64) -> Transaction { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_timestamp_millis` is never used [INFO] [stdout] --> src/components/utils.rs:15:8 [INFO] [stdout] | [INFO] [stdout] 15 | pub fn get_timestamp_millis() -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `stream`, `status`, and `direction` are never read [INFO] [stdout] --> src/network/peer.rs:70:9 [INFO] [stdout] | [INFO] [stdout] 69 | pub struct PeerConnection { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] 70 | pub stream: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 71 | pub status: ConnectionStatus, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 72 | pub direction: ConnectionDirection, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `connection`, `performance`, and `inbox` are never read [INFO] [stdout] --> src/network/peer.rs:77:9 [INFO] [stdout] | [INFO] [stdout] 75 | pub struct Peer { [INFO] [stdout] | ---- fields in this struct [INFO] [stdout] 76 | pub info: PeerInfo, [INFO] [stdout] 77 | pub connection: PeerConnection, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 78 | pub performance: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 79 | pub inbox: VecDeque, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `status` [INFO] [stdout] --> src/network/peer.rs:89:9 [INFO] [stdout] | [INFO] [stdout] 89 | status: ConnectionStatus, [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_status` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `direction` [INFO] [stdout] --> src/network/peer.rs:90:9 [INFO] [stdout] | [INFO] [stdout] 90 | direction: ConnectionDirection, [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_direction` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `chain_len`, `connect`, `disconnect`, and `receive_message` are never used [INFO] [stdout] --> src/network/peer.rs:123:12 [INFO] [stdout] | [INFO] [stdout] 84 | impl Peer { [INFO] [stdout] | --------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 123 | pub fn chain_len(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 127 | pub fn connect(&mut self) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 136 | pub fn disconnect(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 162 | pub fn receive_message(&mut self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `inbox` [INFO] [stdout] --> src/network/peer.rs:91:9 [INFO] [stdout] | [INFO] [stdout] 91 | inbox: VecDeque, [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_inbox` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 52 | let mut peer = Peer::new( [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | remove_dir_all("./storage/"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 18 | let _ = remove_dir_all("./storage/"); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 19 | create_dir("./storage/"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 19 | let _ = create_dir("./storage/"); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:46:5 [INFO] [stdout] | [INFO] [stdout] 46 | Block::save_block(&b1, "./storage/block1.bin"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 46 | let _ = Block::save_block(&b1, "./storage/block1.bin"); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:63:5 [INFO] [stdout] | [INFO] [stdout] 63 | start_server(Arc::clone(&peer)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 63 | let _ = start_server(Arc::clone(&peer)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `genesis` is never used [INFO] [stdout] --> src/components/blockchain.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 25 | impl BlockData { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] 26 | fn genesis(transactions: &Vec) -> Self { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `read_block` is never used [INFO] [stdout] --> src/components/blockchain.rs:122:16 [INFO] [stdout] | [INFO] [stdout] 45 | impl Block { [INFO] [stdout] | ---------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 122 | pub fn read_block(pth: &str) -> Result> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/components/blockchain.rs:191:12 [INFO] [stdout] | [INFO] [stdout] 174 | impl BlockChain { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 191 | fn create_chain_from_iter(blocks: Vec) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 241 | pub fn print(&self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 270 | pub fn save_blockchain( [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 290 | pub fn load_blocks(pth: &str) -> Result, Box> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 300 | pub fn load_chain(pth: &str) -> Result> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 308 | pub fn get_block_by_index(&self, index: usize) -> Option<&Block> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 312 | pub fn search(&self, predicate: F) -> Option<&Block> [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `BlockPredicates` is never constructed [INFO] [stdout] --> src/components/blockchain.rs:321:16 [INFO] [stdout] | [INFO] [stdout] 321 | pub struct BlockPredicates; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `by_nonce`, `by_transaction`, `by_timestamp`, and `by_prev_hash` are never used [INFO] [stdout] --> src/components/blockchain.rs:324:16 [INFO] [stdout] | [INFO] [stdout] 323 | impl BlockPredicates { [INFO] [stdout] | -------------------- associated functions in this implementation [INFO] [stdout] 324 | pub fn by_nonce(n: u32) -> impl Fn(&Block) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 328 | pub fn by_transaction(tx: Transaction) -> impl Fn(&Block) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 332 | pub fn by_timestamp(ts: u128) -> impl Fn(&Block) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 336 | pub fn by_prev_hash(h: [u8; 32]) -> impl Fn(&Block) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `amount` is never read [INFO] [stdout] --> src/components/payment.rs:10:13 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Wallet { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 10 | pub amount: u64, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `create_transaction` is never used [INFO] [stdout] --> src/components/payment.rs:29:16 [INFO] [stdout] | [INFO] [stdout] 13 | impl Wallet { [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 29 | pub fn create_transaction(&mut self, to: VerifyingKey, value: u64) -> Transaction { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_timestamp_millis` is never used [INFO] [stdout] --> src/components/utils.rs:15:8 [INFO] [stdout] | [INFO] [stdout] 15 | pub fn get_timestamp_millis() -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `stream`, `status`, and `direction` are never read [INFO] [stdout] --> src/network/peer.rs:70:9 [INFO] [stdout] | [INFO] [stdout] 69 | pub struct PeerConnection { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] 70 | pub stream: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 71 | pub status: ConnectionStatus, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 72 | pub direction: ConnectionDirection, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `connection`, `performance`, and `inbox` are never read [INFO] [stdout] --> src/network/peer.rs:77:9 [INFO] [stdout] | [INFO] [stdout] 75 | pub struct Peer { [INFO] [stdout] | ---- fields in this struct [INFO] [stdout] 76 | pub info: PeerInfo, [INFO] [stdout] 77 | pub connection: PeerConnection, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 78 | pub performance: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 79 | pub inbox: VecDeque, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `chain_len`, `connect`, `disconnect`, and `receive_message` are never used [INFO] [stdout] --> src/network/peer.rs:123:12 [INFO] [stdout] | [INFO] [stdout] 84 | impl Peer { [INFO] [stdout] | --------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 123 | pub fn chain_len(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 127 | pub fn connect(&mut self) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 136 | pub fn disconnect(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 162 | pub fn receive_message(&mut self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/network/peer.rs:138:13 [INFO] [stdout] | [INFO] [stdout] 138 | stream.shutdown(Shutdown::Both); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 138 | let _ = stream.shutdown(Shutdown::Both); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/network/peer.rs:156:13 [INFO] [stdout] | [INFO] [stdout] 156 | writer.write_all(&serialized); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 156 | let _ = writer.write_all(&serialized); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/network/peer.rs:205:29 [INFO] [stdout] | [INFO] [stdout] 205 | ... ref_chain.append_block(&mut block); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 205 | let _ = ref_chain.append_block(&mut block); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/network/peer.rs:210:33 [INFO] [stdout] | [INFO] [stdout] 210 | ... self.send_message(&p, &msg); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 210 | let _ = self.send_message(&p, &msg); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | remove_dir_all("./storage/"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 18 | let _ = remove_dir_all("./storage/"); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 19 | create_dir("./storage/"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 19 | let _ = create_dir("./storage/"); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:46:5 [INFO] [stdout] | [INFO] [stdout] 46 | Block::save_block(&b1, "./storage/block1.bin"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 46 | let _ = Block::save_block(&b1, "./storage/block1.bin"); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:63:5 [INFO] [stdout] | [INFO] [stdout] 63 | start_server(Arc::clone(&peer)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 63 | let _ = start_server(Arc::clone(&peer)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/network/peer.rs:138:13 [INFO] [stdout] | [INFO] [stdout] 138 | stream.shutdown(Shutdown::Both); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 138 | let _ = stream.shutdown(Shutdown::Both); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/network/peer.rs:156:13 [INFO] [stdout] | [INFO] [stdout] 156 | writer.write_all(&serialized); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 156 | let _ = writer.write_all(&serialized); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/network/peer.rs:205:29 [INFO] [stdout] | [INFO] [stdout] 205 | ... ref_chain.append_block(&mut block); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 205 | let _ = ref_chain.append_block(&mut block); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/network/peer.rs:210:33 [INFO] [stdout] | [INFO] [stdout] 210 | ... self.send_message(&p, &msg); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 210 | let _ = self.send_message(&p, &msg); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 9.85s [INFO] running `Command { std: "docker" "inspect" "c59939abc6f010c97d1527c9fccb03d4741d82810a484e211cd0272f99e25e75", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c59939abc6f010c97d1527c9fccb03d4741d82810a484e211cd0272f99e25e75", kill_on_drop: false }` [INFO] [stdout] c59939abc6f010c97d1527c9fccb03d4741d82810a484e211cd0272f99e25e75