[INFO] cloning repository https://github.com/BearGuy/saito [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/BearGuy/saito" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FBearGuy%2Fsaito", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FBearGuy%2Fsaito'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 8a6c6a07f56febff68aba9698ee92de00d07352a [INFO] checking BearGuy/saito against master#1f12b9b0fdbe735968ac002792a720f0ba4faca6 for crater-rollup-uwu [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FBearGuy%2Fsaito" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/BearGuy/saito on toolchain 1f12b9b0fdbe735968ac002792a720f0ba4faca6 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/BearGuy/saito [INFO] finished tweaking git repo https://github.com/BearGuy/saito [INFO] tweaked toml for git repo https://github.com/BearGuy/saito written to /workspace/builds/worker-1-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/BearGuy/saito 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" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded serde_bytes v0.11.1 [INFO] [stderr] Downloaded opaque-debug v0.2.2 [INFO] [stderr] Downloaded secp256k1 v0.12.2 [INFO] [stderr] Downloaded generic-array v0.12.0 [INFO] [stderr] Downloaded bincode v1.1.4 [INFO] [stderr] Downloaded serde v1.0.93 [INFO] [stderr] Downloaded cc v1.0.26 [INFO] [stderr] Downloaded digest v0.8.0 [INFO] [stderr] Downloaded syn v0.15.40 [INFO] [stderr] Downloaded bstr v0.2.4 [INFO] [stderr] Downloaded merkle v1.10.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 4b9de2acf84a3d54aa9a650e404b354cc5c4d0c82f7eebeb80d076378a9466bd [INFO] running `Command { std: "docker" "start" "-a" "4b9de2acf84a3d54aa9a650e404b354cc5c4d0c82f7eebeb80d076378a9466bd", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "4b9de2acf84a3d54aa9a650e404b354cc5c4d0c82f7eebeb80d076378a9466bd", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4b9de2acf84a3d54aa9a650e404b354cc5c4d0c82f7eebeb80d076378a9466bd", kill_on_drop: false }` [INFO] [stdout] 4b9de2acf84a3d54aa9a650e404b354cc5c4d0c82f7eebeb80d076378a9466bd [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 4f42ea3ee1bbcd21bcc441b56f358c2fbdd69f39f2bce10472a2a774deb18d4e [INFO] running `Command { std: "docker" "start" "-a" "4f42ea3ee1bbcd21bcc441b56f358c2fbdd69f39f2bce10472a2a774deb18d4e", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.58 [INFO] [stderr] Compiling syn v0.15.40 [INFO] [stderr] Checking lazy_static v1.3.0 [INFO] [stderr] Compiling serde v1.0.93 [INFO] [stderr] Compiling cc v1.0.26 [INFO] [stderr] Compiling autocfg v0.1.5 [INFO] [stderr] Compiling typenum v1.10.0 [INFO] [stderr] Compiling rayon-core v1.5.0 [INFO] [stderr] Checking crossbeam-utils v0.6.5 [INFO] [stderr] Checking either v1.5.2 [INFO] [stderr] Compiling memchr v2.2.1 [INFO] [stderr] Compiling ryu v1.0.0 [INFO] [stderr] Checking crossbeam-epoch v0.7.1 [INFO] [stderr] Checking crossbeam-queue v0.1.2 [INFO] [stderr] Compiling bincode v1.1.4 [INFO] [stderr] Checking crossbeam-deque v0.6.3 [INFO] [stderr] Checking untrusted v0.6.2 [INFO] [stderr] Compiling merkle v1.10.0 [INFO] [stderr] Checking itoa v0.4.4 [INFO] [stderr] Compiling bitflags v1.1.0 [INFO] [stderr] Compiling num-traits v0.2.8 [INFO] [stderr] Checking regex-automata v0.1.8 [INFO] [stderr] Checking opaque-debug v0.2.2 [INFO] [stderr] Checking num_cpus v1.10.1 [INFO] [stderr] Compiling ring v0.13.5 [INFO] [stderr] Compiling secp256k1 v0.12.2 [INFO] [stderr] Checking rand v0.4.6 [INFO] [stderr] Checking unicode-width v0.1.5 [INFO] [stderr] Checking textwrap v0.11.0 [INFO] [stderr] Checking csv-core v0.1.6 [INFO] [stderr] Checking generic-array v0.12.0 [INFO] [stderr] Checking rayon v1.1.0 [INFO] [stderr] Checking itertools v0.8.0 [INFO] [stderr] Checking block-buffer v0.7.3 [INFO] [stderr] Checking digest v0.8.0 [INFO] [stderr] Checking base58 v0.1.0 [INFO] [stderr] Checking sha2 v0.8.0 [INFO] [stderr] Checking same-file v1.0.5 [INFO] [stderr] Checking cast v0.2.2 [INFO] [stderr] Checking walkdir v2.2.9 [INFO] [stderr] Checking rand_xoshiro v0.1.0 [INFO] [stderr] Checking clap v2.33.0 [INFO] [stderr] Checking criterion-plot v0.3.1 [INFO] [stderr] Checking rand_os v0.1.3 [INFO] [stderr] Checking atty v0.2.13 [INFO] [stderr] Compiling serde_derive v1.0.97 [INFO] [stderr] Checking serde_bytes v0.11.1 [INFO] [stderr] Checking serde_json v1.0.40 [INFO] [stderr] Checking bstr v0.2.4 [INFO] [stderr] Checking saito-rust v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused variable: `golden_tx_solution` [INFO] [stdout] --> src/lib.rs:132:17 [INFO] [stdout] | [INFO] [stdout] 132 | let golden_tx_solution = self.calculate_solution( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_golden_tx_solution` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `golden_tx` [INFO] [stdout] --> src/lib.rs:162:21 [INFO] [stdout] | [INFO] [stdout] 162 | let mut golden_tx = wallet.create_transaction( [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_golden_tx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:162:17 [INFO] [stdout] | [INFO] [stdout] 162 | let mut golden_tx = wallet.create_transaction( [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: unused variable: `vote` [INFO] [stdout] --> src/lib.rs:205:17 [INFO] [stdout] | [INFO] [stdout] 205 | let mut vote: u8 = 0; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_vote` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:205:13 [INFO] [stdout] | [INFO] [stdout] 205 | let mut vote: u8 = 0; [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `random_solution` [INFO] [stdout] --> src/lib.rs:234:27 [INFO] [stdout] | [INFO] [stdout] 234 | fn find_winner(&self, random_solution: &[u8], previous_block: &Block) -> PublicKey { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_random_solution` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:248:12 [INFO] [stdout] | [INFO] [stdout] 248 | let mut winning_tx = self.find_winning_transaction(previous_block); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `secret_key` [INFO] [stdout] --> src/lib.rs:1137:10 [INFO] [stdout] | [INFO] [stdout] 1137 | let (secret_key, public_key) = generate_keys(); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_secret_key` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/lib.rs:1140:10 [INFO] [stdout] | [INFO] [stdout] 1140 | for x in 0..10 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `block` [INFO] [stdout] --> src/lib.rs:1150:9 [INFO] [stdout] | [INFO] [stdout] 1150 | for block in blocks.iter() { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_block` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `f` [INFO] [stdout] --> src/lib.rs:1155:17 [INFO] [stdout] | [INFO] [stdout] 1155 | let mut f = BufWriter::new(File::create(filename).unwrap()); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_f` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:1155:13 [INFO] [stdout] | [INFO] [stdout] 1155 | let mut f = BufWriter::new(File::create(filename).unwrap()); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `decoded` [INFO] [stdout] --> src/lib.rs:1174:17 [INFO] [stdout] | [INFO] [stdout] 1174 | let decoded: Block = bincode::deserialize(&encoded[..]).unwrap(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_decoded` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `decoded` [INFO] [stdout] --> src/lib.rs:1195:9 [INFO] [stdout] | [INFO] [stdout] 1195 | let decoded: Block = bincode::deserialize(&encoded[..]).unwrap(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_decoded` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `blocks` is never read [INFO] [stdout] --> src/lib.rs:283:5 [INFO] [stdout] | [INFO] [stdout] 282 | pub struct Mempool { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] 283 | blocks: RefCell>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Mempool` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `target`, `vote`, `random`, and `publickey` are never read [INFO] [stdout] --> src/lib.rs:314:5 [INFO] [stdout] | [INFO] [stdout] 313 | struct GoldenTicket { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] 314 | target: Vec, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 315 | vote: u8, [INFO] [stdout] | ^^^^ [INFO] [stdout] 316 | random: Vec, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 317 | publickey: PublicKey [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GoldenTicket` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `calculate_difficulty` and `calculate_paysplit` are never used [INFO] [stdout] --> src/lib.rs:321:8 [INFO] [stdout] | [INFO] [stdout] 320 | impl GoldenTicket { [INFO] [stdout] | ----------------- methods in this implementation [INFO] [stdout] 321 | fn calculate_difficulty (&self, previous_block: &Block) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 328 | fn calculate_paysplit (&self, previous_block: &Block) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `calculate_to_amount` is never used [INFO] [stdout] --> src/lib.rs:436:8 [INFO] [stdout] | [INFO] [stdout] 366 | impl Transaction { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 436 | fn calculate_to_amount(&self) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `genesis_ts` is never read [INFO] [stdout] --> src/lib.rs:908:5 [INFO] [stdout] | [INFO] [stdout] 907 | pub struct Blockchain { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] 908 | genesis_ts: u128, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Blockchain` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_block` is never used [INFO] [stdout] --> src/lib.rs:1136:4 [INFO] [stdout] | [INFO] [stdout] 1136 | fn create_block() -> Block { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `write_blocks` is never used [INFO] [stdout] --> src/lib.rs:1149:4 [INFO] [stdout] | [INFO] [stdout] 1149 | fn write_blocks(blocks: &Vec) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `read_blocks` is never used [INFO] [stdout] --> src/lib.rs:1164:4 [INFO] [stdout] | [INFO] [stdout] 1164 | fn read_blocks() -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `serialize_and_deserialize` is never used [INFO] [stdout] --> src/lib.rs:1183:4 [INFO] [stdout] | [INFO] [stdout] 1183 | fn serialize_and_deserialize(block: &Block) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/lib.rs:879:9 [INFO] [stdout] | [INFO] [stdout] 879 | f.write_all(&encode[..]); [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)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 879 | let _ = f.write_all(&encode[..]); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/lib.rs:1003:9 [INFO] [stdout] | [INFO] [stdout] 1003 | f.write_all(&encode[..]); [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] 1003 | let _ = f.write_all(&encode[..]); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/lib.rs:1187:5 [INFO] [stdout] | [INFO] [stdout] 1187 | f.write_all(&encode[..]); [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] 1187 | let _ = f.write_all(&encode[..]); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking csv v1.1.1 [INFO] [stdout] warning: 26 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `create_merkle_root` [INFO] [stdout] --> src/main.rs:1:65 [INFO] [stdout] | [INFO] [stdout] 1 | use saito::{Mempool, Blockchain, BurnFee, Wallet, Miner, Block, create_merkle_root}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `RefCell` and `RefMut` [INFO] [stdout] --> src/main.rs:3:17 [INFO] [stdout] | [INFO] [stdout] 3 | use std::cell::{RefCell, RefMut}; [INFO] [stdout] | ^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SystemTime` and `UNIX_EPOCH` [INFO] [stdout] --> src/main.rs:4:17 [INFO] [stdout] | [INFO] [stdout] 4 | use std::time::{SystemTime, UNIX_EPOCH}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | let mut mempool = Mempool::new(); [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: 4 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking tinytemplate v1.0.2 [INFO] [stderr] Checking criterion v0.2.11 [INFO] [stdout] warning: unused import: `Duration` [INFO] [stdout] --> benches/saito_benchmark.rs:6:41 [INFO] [stdout] | [INFO] [stdout] 6 | use std::time::{SystemTime, UNIX_EPOCH, Duration}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `deserialize_from` and `serialize_into` [INFO] [stdout] --> benches/saito_benchmark.rs:8:15 [INFO] [stdout] | [INFO] [stdout] 8 | use bincode::{serialize_into, deserialize_from}; [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BufReader` and `BufWriter` [INFO] [stdout] --> benches/saito_benchmark.rs:10:15 [INFO] [stdout] | [INFO] [stdout] 10 | use std::io::{BufWriter, BufReader, Read}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::thread` [INFO] [stdout] --> benches/saito_benchmark.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use std::thread; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Mutex` [INFO] [stdout] --> benches/saito_benchmark.rs:16:17 [INFO] [stdout] | [INFO] [stdout] 16 | use std::sync::{Mutex, Arc}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Receiver` [INFO] [stdout] --> benches/saito_benchmark.rs:18:31 [INFO] [stdout] | [INFO] [stdout] 18 | use std::sync::mpsc::{Sender, Receiver}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `create_merkle_root` [INFO] [stdout] --> src/main.rs:1:65 [INFO] [stdout] | [INFO] [stdout] 1 | use saito::{Mempool, Blockchain, BurnFee, Wallet, Miner, Block, create_merkle_root}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `RefCell` and `RefMut` [INFO] [stdout] --> src/main.rs:3:17 [INFO] [stdout] | [INFO] [stdout] 3 | use std::cell::{RefCell, RefMut}; [INFO] [stdout] | ^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SystemTime` and `UNIX_EPOCH` [INFO] [stdout] --> src/main.rs:4:17 [INFO] [stdout] | [INFO] [stdout] 4 | use std::time::{SystemTime, UNIX_EPOCH}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | let mut mempool = Mempool::new(); [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: 4 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> benches/saito_benchmark.rs:46:9 [INFO] [stdout] | [INFO] [stdout] 46 | for x in 0..100 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> benches/saito_benchmark.rs:61:60 [INFO] [stdout] | [INFO] [stdout] 61 | (0..1000000).into_par_iter().for_each_with(sender, |s, x| create_transaction_multi(s.clone())); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> benches/saito_benchmark.rs:73:19 [INFO] [stdout] | [INFO] [stdout] 73 | |rng, x| rng.gen() [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `decoded` [INFO] [stdout] --> benches/saito_benchmark.rs:115:17 [INFO] [stdout] | [INFO] [stdout] 115 | let decoded: Block = bincode::deserialize(&encoded[..]).unwrap(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_decoded` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `decoded` [INFO] [stdout] --> benches/saito_benchmark.rs:128:9 [INFO] [stdout] | [INFO] [stdout] 128 | let decoded: Block = bincode::deserialize(&encoded[..]).unwrap(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_decoded` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `decoded` [INFO] [stdout] --> benches/saito_benchmark.rs:143:9 [INFO] [stdout] | [INFO] [stdout] 143 | let decoded: Block = bincode::deserialize(&encoded[..]).unwrap(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_decoded` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `decoded` [INFO] [stdout] --> benches/saito_benchmark.rs:152:9 [INFO] [stdout] | [INFO] [stdout] 152 | let decoded: Block = bincode::deserialize(&encoded[..]).unwrap(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_decoded` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `encoded` [INFO] [stdout] --> benches/saito_benchmark.rs:156:9 [INFO] [stdout] | [INFO] [stdout] 156 | let encoded: Vec = bincode::serialize(block).unwrap(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_encoded` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `secret_key` [INFO] [stdout] --> benches/saito_benchmark.rs:166:10 [INFO] [stdout] | [INFO] [stdout] 166 | let (secret_key, public_key) = generate_keys(); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_secret_key` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `secret_key` [INFO] [stdout] --> benches/saito_benchmark.rs:178:10 [INFO] [stdout] | [INFO] [stdout] 178 | let (secret_key, public_key) = generate_keys(); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_secret_key` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `secret_key` [INFO] [stdout] --> benches/saito_benchmark.rs:191:10 [INFO] [stdout] | [INFO] [stdout] 191 | let (secret_key, public_key) = generate_keys(); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_secret_key` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `secret_key` [INFO] [stdout] --> benches/saito_benchmark.rs:232:10 [INFO] [stdout] | [INFO] [stdout] 232 | let (secret_key, public_key) = generate_keys(); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_secret_key` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `secret_key` [INFO] [stdout] --> benches/saito_benchmark.rs:245:10 [INFO] [stdout] | [INFO] [stdout] 245 | let (secret_key, public_key) = generate_keys(); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_secret_key` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `secret_key` [INFO] [stdout] --> benches/saito_benchmark.rs:258:10 [INFO] [stdout] | [INFO] [stdout] 258 | let (secret_key, public_key) = generate_keys(); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_secret_key` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `secret_key` [INFO] [stdout] --> benches/saito_benchmark.rs:271:10 [INFO] [stdout] | [INFO] [stdout] 271 | let (secret_key, public_key) = generate_keys(); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_secret_key` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `time_since_unix_epoch` is never used [INFO] [stdout] --> benches/saito_benchmark.rs:29:4 [INFO] [stdout] | [INFO] [stdout] 29 | fn time_since_unix_epoch() -> u128 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_block` is never used [INFO] [stdout] --> benches/saito_benchmark.rs:41:4 [INFO] [stdout] | [INFO] [stdout] 41 | fn create_block(public_key: PublicKey) -> Block { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `write_blocks` is never used [INFO] [stdout] --> benches/saito_benchmark.rs:88:4 [INFO] [stdout] | [INFO] [stdout] 88 | fn write_blocks(blocks: &Vec) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `read_blocks` is never used [INFO] [stdout] --> benches/saito_benchmark.rs:105:4 [INFO] [stdout] | [INFO] [stdout] 105 | fn read_blocks() { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `read_block` is never used [INFO] [stdout] --> benches/saito_benchmark.rs:120:4 [INFO] [stdout] | [INFO] [stdout] 120 | fn read_block() { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `serialize_and_deserialize_with_file` is never used [INFO] [stdout] --> benches/saito_benchmark.rs:131:4 [INFO] [stdout] | [INFO] [stdout] 131 | fn serialize_and_deserialize_with_file(block: &Block) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `serialize_and_deserialize_in_memory` is never used [INFO] [stdout] --> benches/saito_benchmark.rs:150:4 [INFO] [stdout] | [INFO] [stdout] 150 | fn serialize_and_deserialize_in_memory(block: &Block) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `serialize_in_memory` is never used [INFO] [stdout] --> benches/saito_benchmark.rs:155:4 [INFO] [stdout] | [INFO] [stdout] 155 | fn serialize_in_memory(block: &Block) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_block_benchmark` is never used [INFO] [stdout] --> benches/saito_benchmark.rs:164:4 [INFO] [stdout] | [INFO] [stdout] 164 | fn create_block_benchmark(c: &mut Criterion) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_block_multi_thread_benchmark` is never used [INFO] [stdout] --> benches/saito_benchmark.rs:177:4 [INFO] [stdout] | [INFO] [stdout] 177 | fn create_block_multi_thread_benchmark(c: &mut Criterion) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `serialize_blocks_benchmark` is never used [INFO] [stdout] --> benches/saito_benchmark.rs:190:4 [INFO] [stdout] | [INFO] [stdout] 190 | fn serialize_blocks_benchmark(c: &mut Criterion) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `deserialize_blocks_benchmark` is never used [INFO] [stdout] --> benches/saito_benchmark.rs:208:4 [INFO] [stdout] | [INFO] [stdout] 208 | fn deserialize_blocks_benchmark(c: &mut Criterion) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `deserialize_block_from_disk_benchmark` is never used [INFO] [stdout] --> benches/saito_benchmark.rs:220:4 [INFO] [stdout] | [INFO] [stdout] 220 | fn deserialize_block_from_disk_benchmark(c: &mut Criterion) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `serialize_in_memory_benchmark` is never used [INFO] [stdout] --> benches/saito_benchmark.rs:231:4 [INFO] [stdout] | [INFO] [stdout] 231 | fn serialize_in_memory_benchmark(c: &mut Criterion) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `serialize_deserialize_in_memory_benchmark` is never used [INFO] [stdout] --> benches/saito_benchmark.rs:244:4 [INFO] [stdout] | [INFO] [stdout] 244 | fn serialize_deserialize_in_memory_benchmark(c: &mut Criterion) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `serialize_deserialize_to_file_benchmark` is never used [INFO] [stdout] --> benches/saito_benchmark.rs:257:4 [INFO] [stdout] | [INFO] [stdout] 257 | fn serialize_deserialize_to_file_benchmark(c: &mut Criterion) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::*` [INFO] [stdout] --> src/lib.rs:1204:9 [INFO] [stdout] | [INFO] [stdout] 1204 | use super::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::thread` [INFO] [stdout] --> src/lib.rs:1205:9 [INFO] [stdout] | [INFO] [stdout] 1205 | use std::thread; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Arc` and `Mutex` [INFO] [stdout] --> src/lib.rs:1206:21 [INFO] [stdout] | [INFO] [stdout] 1206 | use std::sync::{Mutex, Arc}; [INFO] [stdout] | ^^^^^ ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> benches/saito_benchmark.rs:101:9 [INFO] [stdout] | [INFO] [stdout] 101 | f.write_all(&encode[..]); [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)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 101 | let _ = f.write_all(&encode[..]); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> benches/saito_benchmark.rs:135:5 [INFO] [stdout] | [INFO] [stdout] 135 | f.write_all(&encode[..]); [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] 135 | let _ = f.write_all(&encode[..]); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 39 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `golden_tx_solution` [INFO] [stdout] --> src/lib.rs:132:17 [INFO] [stdout] | [INFO] [stdout] 132 | let golden_tx_solution = self.calculate_solution( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_golden_tx_solution` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `golden_tx` [INFO] [stdout] --> src/lib.rs:162:21 [INFO] [stdout] | [INFO] [stdout] 162 | let mut golden_tx = wallet.create_transaction( [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_golden_tx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:162:17 [INFO] [stdout] | [INFO] [stdout] 162 | let mut golden_tx = wallet.create_transaction( [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: unused variable: `vote` [INFO] [stdout] --> src/lib.rs:205:17 [INFO] [stdout] | [INFO] [stdout] 205 | let mut vote: u8 = 0; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_vote` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:205:13 [INFO] [stdout] | [INFO] [stdout] 205 | let mut vote: u8 = 0; [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `random_solution` [INFO] [stdout] --> src/lib.rs:234:27 [INFO] [stdout] | [INFO] [stdout] 234 | fn find_winner(&self, random_solution: &[u8], previous_block: &Block) -> PublicKey { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_random_solution` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:248:12 [INFO] [stdout] | [INFO] [stdout] 248 | let mut winning_tx = self.find_winning_transaction(previous_block); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `secret_key` [INFO] [stdout] --> src/lib.rs:1137:10 [INFO] [stdout] | [INFO] [stdout] 1137 | let (secret_key, public_key) = generate_keys(); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_secret_key` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/lib.rs:1140:10 [INFO] [stdout] | [INFO] [stdout] 1140 | for x in 0..10 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `block` [INFO] [stdout] --> src/lib.rs:1150:9 [INFO] [stdout] | [INFO] [stdout] 1150 | for block in blocks.iter() { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_block` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `f` [INFO] [stdout] --> src/lib.rs:1155:17 [INFO] [stdout] | [INFO] [stdout] 1155 | let mut f = BufWriter::new(File::create(filename).unwrap()); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_f` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:1155:13 [INFO] [stdout] | [INFO] [stdout] 1155 | let mut f = BufWriter::new(File::create(filename).unwrap()); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `decoded` [INFO] [stdout] --> src/lib.rs:1174:17 [INFO] [stdout] | [INFO] [stdout] 1174 | let decoded: Block = bincode::deserialize(&encoded[..]).unwrap(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_decoded` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `decoded` [INFO] [stdout] --> src/lib.rs:1195:9 [INFO] [stdout] | [INFO] [stdout] 1195 | let decoded: Block = bincode::deserialize(&encoded[..]).unwrap(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_decoded` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `blocks` is never read [INFO] [stdout] --> src/lib.rs:283:5 [INFO] [stdout] | [INFO] [stdout] 282 | pub struct Mempool { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] 283 | blocks: RefCell>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Mempool` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `target`, `vote`, `random`, and `publickey` are never read [INFO] [stdout] --> src/lib.rs:314:5 [INFO] [stdout] | [INFO] [stdout] 313 | struct GoldenTicket { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] 314 | target: Vec, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 315 | vote: u8, [INFO] [stdout] | ^^^^ [INFO] [stdout] 316 | random: Vec, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 317 | publickey: PublicKey [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GoldenTicket` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `calculate_difficulty` and `calculate_paysplit` are never used [INFO] [stdout] --> src/lib.rs:321:8 [INFO] [stdout] | [INFO] [stdout] 320 | impl GoldenTicket { [INFO] [stdout] | ----------------- methods in this implementation [INFO] [stdout] 321 | fn calculate_difficulty (&self, previous_block: &Block) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 328 | fn calculate_paysplit (&self, previous_block: &Block) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `calculate_to_amount` is never used [INFO] [stdout] --> src/lib.rs:436:8 [INFO] [stdout] | [INFO] [stdout] 366 | impl Transaction { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 436 | fn calculate_to_amount(&self) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `genesis_ts` is never read [INFO] [stdout] --> src/lib.rs:908:5 [INFO] [stdout] | [INFO] [stdout] 907 | pub struct Blockchain { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] 908 | genesis_ts: u128, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Blockchain` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_block` is never used [INFO] [stdout] --> src/lib.rs:1136:4 [INFO] [stdout] | [INFO] [stdout] 1136 | fn create_block() -> Block { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `write_blocks` is never used [INFO] [stdout] --> src/lib.rs:1149:4 [INFO] [stdout] | [INFO] [stdout] 1149 | fn write_blocks(blocks: &Vec) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `read_blocks` is never used [INFO] [stdout] --> src/lib.rs:1164:4 [INFO] [stdout] | [INFO] [stdout] 1164 | fn read_blocks() -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `serialize_and_deserialize` is never used [INFO] [stdout] --> src/lib.rs:1183:4 [INFO] [stdout] | [INFO] [stdout] 1183 | fn serialize_and_deserialize(block: &Block) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/lib.rs:879:9 [INFO] [stdout] | [INFO] [stdout] 879 | f.write_all(&encode[..]); [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)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 879 | let _ = f.write_all(&encode[..]); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/lib.rs:1003:9 [INFO] [stdout] | [INFO] [stdout] 1003 | f.write_all(&encode[..]); [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] 1003 | let _ = f.write_all(&encode[..]); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/lib.rs:1187:5 [INFO] [stdout] | [INFO] [stdout] 1187 | f.write_all(&encode[..]); [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] 1187 | let _ = f.write_all(&encode[..]); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 29 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 7.84s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: criterion v0.2.11 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2` [INFO] running `Command { std: "docker" "inspect" "4f42ea3ee1bbcd21bcc441b56f358c2fbdd69f39f2bce10472a2a774deb18d4e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4f42ea3ee1bbcd21bcc441b56f358c2fbdd69f39f2bce10472a2a774deb18d4e", kill_on_drop: false }` [INFO] [stdout] 4f42ea3ee1bbcd21bcc441b56f358c2fbdd69f39f2bce10472a2a774deb18d4e