[INFO] updating cached repository BearGuy/saito [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/BearGuy/saito [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/BearGuy/saito" "work/ex/pr-62849/sources/master#435236b8877cdb98c82eaebfb7887782277265c5/gh/BearGuy/saito"` [INFO] [stderr] Cloning into 'work/ex/pr-62849/sources/master#435236b8877cdb98c82eaebfb7887782277265c5/gh/BearGuy/saito'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/BearGuy/saito" "work/ex/pr-62849/sources/try#b5c7f157c20453dde8d47371abe73b32351b4e7f/gh/BearGuy/saito"` [INFO] [stderr] Cloning into 'work/ex/pr-62849/sources/try#b5c7f157c20453dde8d47371abe73b32351b4e7f/gh/BearGuy/saito'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 5c7f1c0a812a813674b5553aaec3ee088bca4dcd [INFO] sha for GitHub repo BearGuy/saito: 5c7f1c0a812a813674b5553aaec3ee088bca4dcd [INFO] validating manifest of BearGuy/saito on toolchain master#435236b8877cdb98c82eaebfb7887782277265c5 [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+435236b8877cdb98c82eaebfb7887782277265c5-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of BearGuy/saito on toolchain try#b5c7f157c20453dde8d47371abe73b32351b4e7f [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+b5c7f157c20453dde8d47371abe73b32351b4e7f-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing BearGuy/saito [INFO] finished frobbing BearGuy/saito [INFO] frobbed toml for BearGuy/saito written to work/ex/pr-62849/sources/master#435236b8877cdb98c82eaebfb7887782277265c5/gh/BearGuy/saito/Cargo.toml [INFO] started frobbing BearGuy/saito [INFO] finished frobbing BearGuy/saito [INFO] frobbed toml for BearGuy/saito written to work/ex/pr-62849/sources/try#b5c7f157c20453dde8d47371abe73b32351b4e7f/gh/BearGuy/saito/Cargo.toml [INFO] crate BearGuy/saito already has a lockfile, it will not be regenerated [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+435236b8877cdb98c82eaebfb7887782277265c5-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+b5c7f157c20453dde8d47371abe73b32351b4e7f-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] checking BearGuy/saito against try#b5c7f157c20453dde8d47371abe73b32351b4e7f for pr-62849 [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/pr-62849/worker-1/try#b5c7f157c20453dde8d47371abe73b32351b4e7f:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/pr-62849/sources/try#b5c7f157c20453dde8d47371abe73b32351b4e7f/gh/BearGuy/saito:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+b5c7f157c20453dde8d47371abe73b32351b4e7f-alt" "check" "--frozen" "--all" "--all-targets"` [INFO] [stdout] 1162f201b17692fb264926a45f5db8f720dffd9f5e382d3d8972330202e874ff [INFO] running `"docker" "start" "-a" "1162f201b17692fb264926a45f5db8f720dffd9f5e382d3d8972330202e874ff"` [INFO] [stderr] Compiling syn v0.15.40 [INFO] [stderr] Compiling merkle v1.10.0 [INFO] [stderr] Compiling secp256k1 v0.12.2 [INFO] [stderr] Checking memchr v2.2.1 [INFO] [stderr] Checking ring v0.13.5 [INFO] [stderr] Checking atty v0.2.13 [INFO] [stderr] Checking rayon-core v1.5.0 [INFO] [stderr] Checking csv-core v0.1.6 [INFO] [stderr] Checking rayon v1.1.0 [INFO] [stderr] Compiling serde_derive v1.0.97 [INFO] [stderr] Checking serde v1.0.93 [INFO] [stderr] Checking bstr v0.2.4 [INFO] [stderr] Checking serde_json v1.0.40 [INFO] [stderr] Checking serde_bytes v0.11.1 [INFO] [stderr] Checking bincode v1.1.4 [INFO] [stderr] Checking saito-rust v0.1.0 (/opt/crater/workdir) [INFO] [stderr] Checking csv v1.1.1 [INFO] [stderr] Checking tinytemplate v1.0.2 [INFO] [stderr] warning: unused variable: `secret_key` [INFO] [stderr] --> src/lib.rs:1120:10 [INFO] [stderr] | [INFO] [stderr] 1120 | let (secret_key, public_key) = generate_keys(); [INFO] [stderr] | ^^^^^^^^^^ help: consider prefixing with an underscore: `_secret_key` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `x` [INFO] [stderr] --> src/lib.rs:1123:10 [INFO] [stderr] | [INFO] [stderr] 1123 | for x in 0..10 { [INFO] [stderr] | ^ help: consider prefixing with an underscore: `_x` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `block` [INFO] [stderr] --> src/lib.rs:1133:9 [INFO] [stderr] | [INFO] [stderr] 1133 | for block in blocks.iter() { [INFO] [stderr] | ^^^^^ help: consider prefixing with an underscore: `_block` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `f` [INFO] [stderr] --> src/lib.rs:1138:17 [INFO] [stderr] | [INFO] [stderr] 1138 | let mut f = BufWriter::new(File::create(filename).unwrap()); [INFO] [stderr] | ^ help: consider prefixing with an underscore: `_f` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `decoded` [INFO] [stderr] --> src/lib.rs:1157:17 [INFO] [stderr] | [INFO] [stderr] 1157 | let decoded: Block = bincode::deserialize(&encoded[..]).unwrap(); [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_decoded` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `decoded` [INFO] [stderr] --> src/lib.rs:1178:9 [INFO] [stderr] | [INFO] [stderr] 1178 | let decoded: Block = bincode::deserialize(&encoded[..]).unwrap(); [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_decoded` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `golden_tx_solution` [INFO] [stderr] --> src/lib.rs:133:17 [INFO] [stderr] | [INFO] [stderr] 133 | let golden_tx_solution = self.calculate_solution( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: consider prefixing with an underscore: `_golden_tx_solution` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `golden_tx` [INFO] [stderr] --> src/lib.rs:163:21 [INFO] [stderr] | [INFO] [stderr] 163 | let mut golden_tx = wallet.create_transaction( [INFO] [stderr] | ^^^^^^^^^ help: consider prefixing with an underscore: `_golden_tx` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `vote` [INFO] [stderr] --> src/lib.rs:206:17 [INFO] [stderr] | [INFO] [stderr] 206 | let mut vote: u8 = 0; [INFO] [stderr] | ^^^^ help: consider prefixing with an underscore: `_vote` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `random_solution` [INFO] [stderr] --> src/lib.rs:236:27 [INFO] [stderr] | [INFO] [stderr] 236 | fn find_winner(&self, random_solution: &[u8], previous_block: &Block) -> PublicKey { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: consider prefixing with an underscore: `_random_solution` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/lib.rs:163:17 [INFO] [stderr] | [INFO] [stderr] 163 | let mut golden_tx = wallet.create_transaction( [INFO] [stderr] | ----^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/lib.rs:206:13 [INFO] [stderr] | [INFO] [stderr] 206 | let mut vote: u8 = 0; [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/lib.rs:250:12 [INFO] [stderr] | [INFO] [stderr] 250 | let mut winning_tx = self.find_winning_transaction(previous_block); [INFO] [stderr] | ----^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/lib.rs:1138:13 [INFO] [stderr] | [INFO] [stderr] 1138 | let mut f = BufWriter::new(File::create(filename).unwrap()); [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: static item is never used: `BLANK_32_SLICE` [INFO] [stderr] --> src/lib.rs:36:1 [INFO] [stderr] | [INFO] [stderr] 36 | static BLANK_32_SLICE: [u8; 72] = [0; 72]; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: method is never used: `calculate_difficulty` [INFO] [stderr] --> src/lib.rs:323:5 [INFO] [stderr] | [INFO] [stderr] 323 | fn calculate_difficulty (&self, previous_block: &Block) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `calculate_paysplit` [INFO] [stderr] --> src/lib.rs:330:5 [INFO] [stderr] | [INFO] [stderr] 330 | fn calculate_paysplit (&self, previous_block: &Block) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `calculate_to_amount` [INFO] [stderr] --> src/lib.rs:438:5 [INFO] [stderr] | [INFO] [stderr] 438 | fn calculate_to_amount(&self) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `create_block` [INFO] [stderr] --> src/lib.rs:1119:1 [INFO] [stderr] | [INFO] [stderr] 1119 | fn create_block() -> Block { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `write_blocks` [INFO] [stderr] --> src/lib.rs:1132:1 [INFO] [stderr] | [INFO] [stderr] 1132 | fn write_blocks(blocks: &Vec) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `read_blocks` [INFO] [stderr] --> src/lib.rs:1147:1 [INFO] [stderr] | [INFO] [stderr] 1147 | fn read_blocks() -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `serialize_and_deserialize` [INFO] [stderr] --> src/lib.rs:1166:1 [INFO] [stderr] | [INFO] [stderr] 1166 | fn serialize_and_deserialize(block: &Block) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/lib.rs:862:9 [INFO] [stderr] | [INFO] [stderr] 862 | f.write_all(&encode[..]); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/lib.rs:986:9 [INFO] [stderr] | [INFO] [stderr] 986 | f.write_all(&encode[..]); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/lib.rs:1170:5 [INFO] [stderr] | [INFO] [stderr] 1170 | f.write_all(&encode[..]); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] Checking criterion v0.2.11 [INFO] [stderr] warning: unused import: `create_merkle_root` [INFO] [stderr] --> src/main.rs:1:65 [INFO] [stderr] | [INFO] [stderr] 1 | use saito::{Mempool, Blockchain, BurnFee, Wallet, Miner, Block, create_merkle_root}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `RefCell`, `RefMut` [INFO] [stderr] --> src/main.rs:3:17 [INFO] [stderr] | [INFO] [stderr] 3 | use std::cell::{RefCell, RefMut}; [INFO] [stderr] | ^^^^^^^ ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `SystemTime`, `UNIX_EPOCH` [INFO] [stderr] --> src/main.rs:4:17 [INFO] [stderr] | [INFO] [stderr] 4 | use std::time::{SystemTime, UNIX_EPOCH}; [INFO] [stderr] | ^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:11:9 [INFO] [stderr] | [INFO] [stderr] 11 | let mut mempool = Mempool::new(); [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `create_merkle_root` [INFO] [stderr] --> src/main.rs:1:65 [INFO] [stderr] | [INFO] [stderr] 1 | use saito::{Mempool, Blockchain, BurnFee, Wallet, Miner, Block, create_merkle_root}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `RefCell`, `RefMut` [INFO] [stderr] --> src/main.rs:3:17 [INFO] [stderr] | [INFO] [stderr] 3 | use std::cell::{RefCell, RefMut}; [INFO] [stderr] | ^^^^^^^ ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `SystemTime`, `UNIX_EPOCH` [INFO] [stderr] --> src/main.rs:4:17 [INFO] [stderr] | [INFO] [stderr] 4 | use std::time::{SystemTime, UNIX_EPOCH}; [INFO] [stderr] | ^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:11:9 [INFO] [stderr] | [INFO] [stderr] 11 | let mut mempool = Mempool::new(); [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `Mutex` [INFO] [stderr] --> src/lib.rs:1189:21 [INFO] [stderr] | [INFO] [stderr] 1189 | use std::sync::{Mutex, Arc}; [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `Duration` [INFO] [stderr] --> benches/saito_benchmark.rs:6:41 [INFO] [stderr] | [INFO] [stderr] 6 | use std::time::{SystemTime, UNIX_EPOCH, Duration}; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `deserialize_from`, `serialize_into` [INFO] [stderr] --> benches/saito_benchmark.rs:8:15 [INFO] [stderr] | [INFO] [stderr] 8 | use bincode::{serialize_into, deserialize_from}; [INFO] [stderr] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `BufReader`, `BufWriter` [INFO] [stderr] --> benches/saito_benchmark.rs:10:15 [INFO] [stderr] | [INFO] [stderr] 10 | use std::io::{BufWriter, BufReader, Read}; [INFO] [stderr] | ^^^^^^^^^ ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::thread` [INFO] [stderr] --> benches/saito_benchmark.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | use std::thread; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Arc`, `Mutex` [INFO] [stderr] --> benches/saito_benchmark.rs:16:17 [INFO] [stderr] | [INFO] [stderr] 16 | use std::sync::{Mutex, Arc}; [INFO] [stderr] | ^^^^^ ^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Receiver` [INFO] [stderr] --> benches/saito_benchmark.rs:18:31 [INFO] [stderr] | [INFO] [stderr] 18 | use std::sync::mpsc::{Sender, Receiver}; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `secret_key` [INFO] [stderr] --> src/lib.rs:1120:10 [INFO] [stderr] | [INFO] [stderr] 1120 | let (secret_key, public_key) = generate_keys(); [INFO] [stderr] | ^^^^^^^^^^ help: consider prefixing with an underscore: `_secret_key` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `x` [INFO] [stderr] --> src/lib.rs:1123:10 [INFO] [stderr] | [INFO] [stderr] 1123 | for x in 0..10 { [INFO] [stderr] | ^ help: consider prefixing with an underscore: `_x` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `block` [INFO] [stderr] --> src/lib.rs:1133:9 [INFO] [stderr] | [INFO] [stderr] 1133 | for block in blocks.iter() { [INFO] [stderr] | ^^^^^ help: consider prefixing with an underscore: `_block` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `f` [INFO] [stderr] --> src/lib.rs:1138:17 [INFO] [stderr] | [INFO] [stderr] 1138 | let mut f = BufWriter::new(File::create(filename).unwrap()); [INFO] [stderr] | ^ help: consider prefixing with an underscore: `_f` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `decoded` [INFO] [stderr] --> src/lib.rs:1157:17 [INFO] [stderr] | [INFO] [stderr] 1157 | let decoded: Block = bincode::deserialize(&encoded[..]).unwrap(); [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_decoded` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `decoded` [INFO] [stderr] --> src/lib.rs:1178:9 [INFO] [stderr] | [INFO] [stderr] 1178 | let decoded: Block = bincode::deserialize(&encoded[..]).unwrap(); [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_decoded` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `golden_tx_solution` [INFO] [stderr] --> src/lib.rs:133:17 [INFO] [stderr] | [INFO] [stderr] 133 | let golden_tx_solution = self.calculate_solution( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: consider prefixing with an underscore: `_golden_tx_solution` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `golden_tx` [INFO] [stderr] --> src/lib.rs:163:21 [INFO] [stderr] | [INFO] [stderr] 163 | let mut golden_tx = wallet.create_transaction( [INFO] [stderr] | ^^^^^^^^^ help: consider prefixing with an underscore: `_golden_tx` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `vote` [INFO] [stderr] --> src/lib.rs:206:17 [INFO] [stderr] | [INFO] [stderr] 206 | let mut vote: u8 = 0; [INFO] [stderr] | ^^^^ help: consider prefixing with an underscore: `_vote` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `random_solution` [INFO] [stderr] --> src/lib.rs:236:27 [INFO] [stderr] | [INFO] [stderr] 236 | fn find_winner(&self, random_solution: &[u8], previous_block: &Block) -> PublicKey { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: consider prefixing with an underscore: `_random_solution` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/lib.rs:163:17 [INFO] [stderr] | [INFO] [stderr] 163 | let mut golden_tx = wallet.create_transaction( [INFO] [stderr] | ----^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/lib.rs:206:13 [INFO] [stderr] | [INFO] [stderr] 206 | let mut vote: u8 = 0; [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/lib.rs:250:12 [INFO] [stderr] | [INFO] [stderr] 250 | let mut winning_tx = self.find_winning_transaction(previous_block); [INFO] [stderr] | ----^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `x` [INFO] [stderr] --> benches/saito_benchmark.rs:46:9 [INFO] [stderr] | [INFO] [stderr] 46 | for x in 0..100 { [INFO] [stderr] | ^ help: consider prefixing with an underscore: `_x` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `x` [INFO] [stderr] --> benches/saito_benchmark.rs:61:60 [INFO] [stderr] | [INFO] [stderr] 61 | (0..1000000).into_par_iter().for_each_with(sender, |s, x| create_transaction_multi(s.clone())); [INFO] [stderr] | ^ help: consider prefixing with an underscore: `_x` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `x` [INFO] [stderr] --> benches/saito_benchmark.rs:75:19 [INFO] [stderr] | [INFO] [stderr] 75 | |rng, x| rng.gen() [INFO] [stderr] | ^ help: consider prefixing with an underscore: `_x` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `decoded` [INFO] [stderr] --> benches/saito_benchmark.rs:107:17 [INFO] [stderr] | [INFO] [stderr] 107 | let decoded: Block = bincode::deserialize(&encoded[..]).unwrap(); [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_decoded` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `decoded` [INFO] [stderr] --> benches/saito_benchmark.rs:120:9 [INFO] [stderr] | [INFO] [stderr] 120 | let decoded: Block = bincode::deserialize(&encoded[..]).unwrap(); [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_decoded` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `decoded` [INFO] [stderr] --> benches/saito_benchmark.rs:135:9 [INFO] [stderr] | [INFO] [stderr] 135 | let decoded: Block = bincode::deserialize(&encoded[..]).unwrap(); [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_decoded` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `decoded` [INFO] [stderr] --> benches/saito_benchmark.rs:144:9 [INFO] [stderr] | [INFO] [stderr] 144 | let decoded: Block = bincode::deserialize(&encoded[..]).unwrap(); [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_decoded` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `encoded` [INFO] [stderr] --> benches/saito_benchmark.rs:148:9 [INFO] [stderr] | [INFO] [stderr] 148 | let encoded: Vec = bincode::serialize(block).unwrap(); [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_encoded` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `secret_key` [INFO] [stderr] --> benches/saito_benchmark.rs:153:10 [INFO] [stderr] | [INFO] [stderr] 153 | let (secret_key, public_key) = generate_keys(); [INFO] [stderr] | ^^^^^^^^^^ help: consider prefixing with an underscore: `_secret_key` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `secret_key` [INFO] [stderr] --> benches/saito_benchmark.rs:165:10 [INFO] [stderr] | [INFO] [stderr] 165 | let (secret_key, public_key) = generate_keys(); [INFO] [stderr] | ^^^^^^^^^^ help: consider prefixing with an underscore: `_secret_key` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `secret_key` [INFO] [stderr] --> benches/saito_benchmark.rs:178:10 [INFO] [stderr] | [INFO] [stderr] 178 | let (secret_key, public_key) = generate_keys(); [INFO] [stderr] | ^^^^^^^^^^ help: consider prefixing with an underscore: `_secret_key` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `secret_key` [INFO] [stderr] --> benches/saito_benchmark.rs:219:10 [INFO] [stderr] | [INFO] [stderr] 219 | let (secret_key, public_key) = generate_keys(); [INFO] [stderr] | ^^^^^^^^^^ help: consider prefixing with an underscore: `_secret_key` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `secret_key` [INFO] [stderr] --> benches/saito_benchmark.rs:232:10 [INFO] [stderr] | [INFO] [stderr] 232 | let (secret_key, public_key) = generate_keys(); [INFO] [stderr] | ^^^^^^^^^^ help: consider prefixing with an underscore: `_secret_key` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `secret_key` [INFO] [stderr] --> benches/saito_benchmark.rs:245:10 [INFO] [stderr] | [INFO] [stderr] 245 | let (secret_key, public_key) = generate_keys(); [INFO] [stderr] | ^^^^^^^^^^ help: consider prefixing with an underscore: `_secret_key` [INFO] [stderr] [INFO] [stderr] warning: function is never used: `time_since_unix_epoch` [INFO] [stderr] --> benches/saito_benchmark.rs:29:1 [INFO] [stderr] | [INFO] [stderr] 29 | fn time_since_unix_epoch() -> u128 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: function is never used: `create_block` [INFO] [stderr] --> benches/saito_benchmark.rs:41:1 [INFO] [stderr] | [INFO] [stderr] 41 | fn create_block(public_key: PublicKey) -> Block { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `write_blocks` [INFO] [stderr] --> benches/saito_benchmark.rs:80:1 [INFO] [stderr] | [INFO] [stderr] 80 | fn write_blocks(blocks: &Vec) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `read_blocks` [INFO] [stderr] --> benches/saito_benchmark.rs:97:1 [INFO] [stderr] | [INFO] [stderr] 97 | fn read_blocks() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `read_block` [INFO] [stderr] --> benches/saito_benchmark.rs:112:1 [INFO] [stderr] | [INFO] [stderr] 112 | fn read_block() { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `serialize_and_deserialize_with_file` [INFO] [stderr] --> benches/saito_benchmark.rs:123:1 [INFO] [stderr] | [INFO] [stderr] 123 | fn serialize_and_deserialize_with_file(block: &Block) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `serialize_and_deserialize_in_memory` [INFO] [stderr] --> benches/saito_benchmark.rs:142:1 [INFO] [stderr] | [INFO] [stderr] 142 | fn serialize_and_deserialize_in_memory(block: &Block) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `serialize_in_memory` [INFO] [stderr] --> benches/saito_benchmark.rs:147:1 [INFO] [stderr] | [INFO] [stderr] 147 | fn serialize_in_memory(block: &Block) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `create_block_benchmark` [INFO] [stderr] --> benches/saito_benchmark.rs:151:1 [INFO] [stderr] | [INFO] [stderr] 151 | fn create_block_benchmark(c: &mut Criterion) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `serialize_blocks_benchmark` [INFO] [stderr] --> benches/saito_benchmark.rs:177:1 [INFO] [stderr] | [INFO] [stderr] 177 | fn serialize_blocks_benchmark(c: &mut Criterion) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `deserialize_blocks_benchmark` [INFO] [stderr] --> benches/saito_benchmark.rs:195:1 [INFO] [stderr] | [INFO] [stderr] 195 | fn deserialize_blocks_benchmark(c: &mut Criterion) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `deserialize_block_from_disk_benchmark` [INFO] [stderr] --> benches/saito_benchmark.rs:207:1 [INFO] [stderr] | [INFO] [stderr] 207 | fn deserialize_block_from_disk_benchmark(c: &mut Criterion) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `serialize_in_memory_benchmark` [INFO] [stderr] --> benches/saito_benchmark.rs:218:1 [INFO] [stderr] | [INFO] [stderr] 218 | fn serialize_in_memory_benchmark(c: &mut Criterion) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `serialize_deserialize_in_memory_benchmark` [INFO] [stderr] --> benches/saito_benchmark.rs:231:1 [INFO] [stderr] | [INFO] [stderr] 231 | fn serialize_deserialize_in_memory_benchmark(c: &mut Criterion) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `serialize_deserialize_to_file_benchmark` [INFO] [stderr] --> benches/saito_benchmark.rs:244:1 [INFO] [stderr] | [INFO] [stderr] 244 | fn serialize_deserialize_to_file_benchmark(c: &mut Criterion) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> benches/saito_benchmark.rs:93:9 [INFO] [stderr] | [INFO] [stderr] 93 | f.write_all(&encode[..]); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> benches/saito_benchmark.rs:127:5 [INFO] [stderr] | [INFO] [stderr] 127 | f.write_all(&encode[..]); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/lib.rs:1138:13 [INFO] [stderr] | [INFO] [stderr] 1138 | let mut f = BufWriter::new(File::create(filename).unwrap()); [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/lib.rs:1199:13 [INFO] [stderr] | [INFO] [stderr] 1199 | let mut block: Block = create_block(); [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: static item is never used: `BLANK_32_SLICE` [INFO] [stderr] --> src/lib.rs:36:1 [INFO] [stderr] | [INFO] [stderr] 36 | static BLANK_32_SLICE: [u8; 72] = [0; 72]; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: method is never used: `calculate_difficulty` [INFO] [stderr] --> src/lib.rs:323:5 [INFO] [stderr] | [INFO] [stderr] 323 | fn calculate_difficulty (&self, previous_block: &Block) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `calculate_paysplit` [INFO] [stderr] --> src/lib.rs:330:5 [INFO] [stderr] | [INFO] [stderr] 330 | fn calculate_paysplit (&self, previous_block: &Block) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `calculate_to_amount` [INFO] [stderr] --> src/lib.rs:438:5 [INFO] [stderr] | [INFO] [stderr] 438 | fn calculate_to_amount(&self) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `write_blocks` [INFO] [stderr] --> src/lib.rs:1132:1 [INFO] [stderr] | [INFO] [stderr] 1132 | fn write_blocks(blocks: &Vec) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `read_blocks` [INFO] [stderr] --> src/lib.rs:1147:1 [INFO] [stderr] | [INFO] [stderr] 1147 | fn read_blocks() -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `serialize_and_deserialize` [INFO] [stderr] --> src/lib.rs:1166:1 [INFO] [stderr] | [INFO] [stderr] 1166 | fn serialize_and_deserialize(block: &Block) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/lib.rs:862:9 [INFO] [stderr] | [INFO] [stderr] 862 | f.write_all(&encode[..]); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/lib.rs:986:9 [INFO] [stderr] | [INFO] [stderr] 986 | f.write_all(&encode[..]); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/lib.rs:1170:5 [INFO] [stderr] | [INFO] [stderr] 1170 | f.write_all(&encode[..]); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 1m 03s [INFO] running `"docker" "inspect" "1162f201b17692fb264926a45f5db8f720dffd9f5e382d3d8972330202e874ff"` [INFO] running `"docker" "rm" "-f" "1162f201b17692fb264926a45f5db8f720dffd9f5e382d3d8972330202e874ff"` [INFO] [stdout] 1162f201b17692fb264926a45f5db8f720dffd9f5e382d3d8972330202e874ff