[INFO] updating cached repository shenshing/test1 [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/shenshing/test1 [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/shenshing/test1" "work/ex/pr-60162/sources/master#a850a426491e14186af2250549bf41256b5938d2/gh/shenshing/test1"` [INFO] [stderr] Cloning into 'work/ex/pr-60162/sources/master#a850a426491e14186af2250549bf41256b5938d2/gh/shenshing/test1'... [INFO] [stderr] done. [INFO] [stderr] Checking out files: 45% (386/849) Checking out files: 46% (391/849) Checking out files: 47% (400/849) Checking out files: 48% (408/849) Checking out files: 49% (417/849) Checking out files: 50% (425/849) Checking out files: 51% (433/849) Checking out files: 52% (442/849) Checking out files: 53% (450/849) Checking out files: 54% (459/849) Checking out files: 55% (467/849) Checking out files: 56% (476/849) Checking out files: 57% (484/849) Checking out files: 58% (493/849) Checking out files: 59% (501/849) Checking out files: 60% (510/849) Checking out files: 61% (518/849) Checking out files: 62% (527/849) Checking out files: 63% (535/849) Checking out files: 64% (544/849) Checking out files: 65% (552/849) Checking out files: 66% (561/849) Checking out files: 67% (569/849) Checking out files: 68% (578/849) Checking out files: 69% (586/849) Checking out files: 70% (595/849) Checking out files: 71% (603/849) Checking out files: 72% (612/849) Checking out files: 73% (620/849) Checking out files: 74% (629/849) Checking out files: 75% (637/849) Checking out files: 76% (646/849) Checking out files: 77% (654/849) Checking out files: 78% (663/849) Checking out files: 79% (671/849) Checking out files: 80% (680/849) Checking out files: 81% (688/849) Checking out files: 82% (697/849) Checking out files: 83% (705/849) Checking out files: 84% (714/849) Checking out files: 85% (722/849) Checking out files: 86% (731/849) Checking out files: 87% (739/849) Checking out files: 88% (748/849) Checking out files: 89% (756/849) Checking out files: 90% (765/849) Checking out files: 91% (773/849) Checking out files: 92% (782/849) Checking out files: 93% (790/849) Checking out files: 94% (799/849) Checking out files: 95% (807/849) Checking out files: 96% (816/849) Checking out files: 97% (824/849) Checking out files: 98% (833/849) Checking out files: 99% (841/849) Checking out files: 100% (849/849) Checking out files: 100% (849/849), done. [INFO] running `"git" "clone" "work/cache/sources/gh/shenshing/test1" "work/ex/pr-60162/sources/try#06a150c7d11500b41499224f165e9de1de096768/gh/shenshing/test1"` [INFO] [stderr] Cloning into 'work/ex/pr-60162/sources/try#06a150c7d11500b41499224f165e9de1de096768/gh/shenshing/test1'... [INFO] [stderr] done. [INFO] [stderr] Checking out files: 42% (365/849) Checking out files: 43% (366/849) Checking out files: 44% (374/849) Checking out files: 45% (383/849) Checking out files: 46% (391/849) Checking out files: 47% (400/849) Checking out files: 48% (408/849) Checking out files: 49% (417/849) Checking out files: 50% (425/849) Checking out files: 51% (433/849) Checking out files: 52% (442/849) Checking out files: 53% (450/849) Checking out files: 54% (459/849) Checking out files: 55% (467/849) Checking out files: 56% (476/849) Checking out files: 57% (484/849) Checking out files: 58% (493/849) Checking out files: 59% (501/849) Checking out files: 60% (510/849) Checking out files: 61% (518/849) Checking out files: 62% (527/849) Checking out files: 63% (535/849) Checking out files: 64% (544/849) Checking out files: 65% (552/849) Checking out files: 66% (561/849) Checking out files: 67% (569/849) Checking out files: 68% (578/849) Checking out files: 69% (586/849) Checking out files: 70% (595/849) Checking out files: 71% (603/849) Checking out files: 72% (612/849) Checking out files: 73% (620/849) Checking out files: 74% (629/849) Checking out files: 75% (637/849) Checking out files: 76% (646/849) Checking out files: 77% (654/849) Checking out files: 78% (663/849) Checking out files: 79% (671/849) Checking out files: 80% (680/849) Checking out files: 81% (688/849) Checking out files: 82% (697/849) Checking out files: 83% (705/849) Checking out files: 84% (714/849) Checking out files: 85% (722/849) Checking out files: 86% (731/849) Checking out files: 87% (739/849) Checking out files: 88% (748/849) Checking out files: 89% (756/849) Checking out files: 90% (765/849) Checking out files: 91% (773/849) Checking out files: 92% (782/849) Checking out files: 93% (790/849) Checking out files: 94% (799/849) Checking out files: 95% (807/849) Checking out files: 96% (816/849) Checking out files: 97% (824/849) Checking out files: 98% (833/849) Checking out files: 99% (841/849) Checking out files: 100% (849/849) Checking out files: 100% (849/849), done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 42583e967b6de155aeea7980fcbad6960141aee3 [INFO] sha for GitHub repo shenshing/test1: 42583e967b6de155aeea7980fcbad6960141aee3 [INFO] validating manifest of shenshing/test1 on toolchain master#a850a426491e14186af2250549bf41256b5938d2 [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+a850a426491e14186af2250549bf41256b5938d2-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of shenshing/test1 on toolchain try#06a150c7d11500b41499224f165e9de1de096768 [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+06a150c7d11500b41499224f165e9de1de096768-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing shenshing/test1 [INFO] finished frobbing shenshing/test1 [INFO] frobbed toml for shenshing/test1 written to work/ex/pr-60162/sources/master#a850a426491e14186af2250549bf41256b5938d2/gh/shenshing/test1/Cargo.toml [INFO] started frobbing shenshing/test1 [INFO] finished frobbing shenshing/test1 [INFO] frobbed toml for shenshing/test1 written to work/ex/pr-60162/sources/try#06a150c7d11500b41499224f165e9de1de096768/gh/shenshing/test1/Cargo.toml [INFO] crate shenshing/test1 already has a lockfile, it will not be regenerated [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+a850a426491e14186af2250549bf41256b5938d2-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+06a150c7d11500b41499224f165e9de1de096768-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] checking shenshing/test1 against master#a850a426491e14186af2250549bf41256b5938d2 for pr-60162 [INFO] running `"docker" "create" "-v" "/mnt/crater-raid/crater/work/local/target-dirs/pr-60162/worker-7/master#a850a426491e14186af2250549bf41256b5938d2:/opt/crater/target:rw,Z" "-v" "/mnt/crater-raid/crater/work/ex/pr-60162/sources/master#a850a426491e14186af2250549bf41256b5938d2/gh/shenshing/test1:/opt/crater/workdir:ro,Z" "-v" "/mnt/crater-raid/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/crater-raid/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" "+a850a426491e14186af2250549bf41256b5938d2-alt" "check" "--frozen" "--all" "--all-targets"` [INFO] [stdout] 427caffefa8235e31113694984631b3dbd3d45f5acda5f54d9eae077a115cdc0 [INFO] running `"docker" "start" "-a" "427caffefa8235e31113694984631b3dbd3d45f5acda5f54d9eae077a115cdc0"` [INFO] [stderr] Compiling openssl v0.10.19 [INFO] [stderr] Checking openssl-sys v0.9.42 [INFO] [stderr] Checking rand v0.3.23 [INFO] [stderr] Checking base64-stream v1.0.3 [INFO] [stderr] Checking rust-crypto v0.2.36 [INFO] [stderr] Checking crypto-hash v0.3.3 [INFO] [stderr] Checking v_1 v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: unused import: `crypto::symmetriccipher::SynchronousStreamCipher` [INFO] [stderr] --> src/lib.rs:38:5 [INFO] [stderr] | [INFO] [stderr] 38 | use crypto::symmetriccipher::SynchronousStreamCipher; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::iter::repeat` [INFO] [stderr] --> src/lib.rs:39:5 [INFO] [stderr] | [INFO] [stderr] 39 | use std::iter::repeat; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `KeySize`, `self` [INFO] [stderr] --> src/lib.rs:42:19 [INFO] [stderr] | [INFO] [stderr] 42 | use crypto::aes::{self,KeySize}; [INFO] [stderr] | ^^^^ ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `rand::RngCore` [INFO] [stderr] --> src/lib.rs:43:5 [INFO] [stderr] | [INFO] [stderr] 43 | use rand::RngCore; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `rand::OsRng` [INFO] [stderr] --> src/lib.rs:44:5 [INFO] [stderr] | [INFO] [stderr] 44 | use rand::OsRng; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crypto::symmetriccipher::SynchronousStreamCipher` [INFO] [stderr] --> src/lib.rs:38:5 [INFO] [stderr] | [INFO] [stderr] 38 | use crypto::symmetriccipher::SynchronousStreamCipher; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::iter::repeat` [INFO] [stderr] --> src/lib.rs:39:5 [INFO] [stderr] | [INFO] [stderr] 39 | use std::iter::repeat; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `KeySize`, `self` [INFO] [stderr] --> src/lib.rs:42:19 [INFO] [stderr] | [INFO] [stderr] 42 | use crypto::aes::{self,KeySize}; [INFO] [stderr] | ^^^^ ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `rand::RngCore` [INFO] [stderr] --> src/lib.rs:43:5 [INFO] [stderr] | [INFO] [stderr] 43 | use rand::RngCore; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `rand::OsRng` [INFO] [stderr] --> src/lib.rs:44:5 [INFO] [stderr] | [INFO] [stderr] 44 | use rand::OsRng; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'rand::OsRng': import with rand::rngs::OsRng instead [INFO] [stderr] --> src/lib.rs:44:5 [INFO] [stderr] | [INFO] [stderr] 44 | use rand::OsRng; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(deprecated)] on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'rand::OsRng': import with rand::rngs::OsRng instead [INFO] [stderr] --> src/lib.rs:44:5 [INFO] [stderr] | [INFO] [stderr] 44 | use rand::OsRng; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(deprecated)] on by default [INFO] [stderr] [INFO] [stderr] warning: function is never used: `remove_hashmap` [INFO] [stderr] --> src/lib.rs:75:1 [INFO] [stderr] | [INFO] [stderr] 75 | fn remove_hashmap(x: &mut HashMap,remove: i32) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: function is never used: `remove_hashmap` [INFO] [stderr] --> src/lib.rs:75:1 [INFO] [stderr] | [INFO] [stderr] 75 | fn remove_hashmap(x: &mut HashMap,remove: i32) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `DateTime`, `Utc` [INFO] [stderr] --> src/main.rs:12:14 [INFO] [stderr] | [INFO] [stderr] 12 | use chrono::{DateTime,Utc}; [INFO] [stderr] | ^^^^^^^^ ^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `SystemTime`, `UNIX_EPOCH` [INFO] [stderr] --> src/main.rs:13:17 [INFO] [stderr] | [INFO] [stderr] 13 | use std::time::{SystemTime,UNIX_EPOCH}; [INFO] [stderr] | ^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `v_1::Hash` [INFO] [stderr] --> src/block.rs:222:5 [INFO] [stderr] | [INFO] [stderr] 222 | use v_1::Hash; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::wallet::Valid` [INFO] [stderr] --> src/block.rs:227:5 [INFO] [stderr] | [INFO] [stderr] 227 | use crate::wallet::Valid; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::HashMap` [INFO] [stderr] --> src/block.rs:229:5 [INFO] [stderr] | [INFO] [stderr] 229 | use std::collections::HashMap; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::HashSet` [INFO] [stderr] --> src/block.rs:230:5 [INFO] [stderr] | [INFO] [stderr] 230 | use std::collections::HashSet; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait `fn_transaction` should have an upper camel case name [INFO] [stderr] --> src/block.rs:249:11 [INFO] [stderr] | [INFO] [stderr] 249 | pub trait fn_transaction{ [INFO] [stderr] | ^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `FnTransaction` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(non_camel_case_types)] on by default [INFO] [stderr] [INFO] [stderr] warning: type `block__chain` should have an upper camel case name [INFO] [stderr] --> src/block.rs:650:12 [INFO] [stderr] | [INFO] [stderr] 650 | pub struct block__chain<'a,'b>{ [INFO] [stderr] | ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `BlockChain` [INFO] [stderr] [INFO] [stderr] warning: unused import: `block::block__chain` [INFO] [stderr] --> src/main.rs:25:5 [INFO] [stderr] | [INFO] [stderr] 25 | use block::block__chain; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `v_1::vec_to_str` [INFO] [stderr] --> src/main.rs:31:5 [INFO] [stderr] | [INFO] [stderr] 31 | use v_1::vec_to_str; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `v_1::vec_to_str1` [INFO] [stderr] --> src/main.rs:33:5 [INFO] [stderr] | [INFO] [stderr] 33 | use v_1::vec_to_str1; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `v_1::vec_to_str` [INFO] [stderr] --> src/wallet.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use v_1::vec_to_str; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `v_1::Hash` [INFO] [stderr] --> src/wallet.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use v_1::Hash; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `block::Transaction` [INFO] [stderr] --> src/wallet.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use block::Transaction; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: type `list_block` should have an upper camel case name [INFO] [stderr] --> src/wallet.rs:10:10 [INFO] [stderr] | [INFO] [stderr] 10 | pub type list_block<'a> = &'a Vec>; [INFO] [stderr] | ^^^^^^^^^^ help: convert the identifier to upper camel case: `ListBlock` [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::str` [INFO] [stderr] --> src/main.rs:36:5 [INFO] [stderr] | [INFO] [stderr] 36 | use std::str; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io::Read` [INFO] [stderr] --> src/main.rs:46:5 [INFO] [stderr] | [INFO] [stderr] 46 | use std::io::Read; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `DateTime`, `Utc` [INFO] [stderr] --> src/main.rs:12:14 [INFO] [stderr] | [INFO] [stderr] 12 | use chrono::{DateTime,Utc}; [INFO] [stderr] | ^^^^^^^^ ^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `SystemTime`, `UNIX_EPOCH` [INFO] [stderr] --> src/main.rs:13:17 [INFO] [stderr] | [INFO] [stderr] 13 | use std::time::{SystemTime,UNIX_EPOCH}; [INFO] [stderr] | ^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `v_1::Hash` [INFO] [stderr] --> src/block.rs:222:5 [INFO] [stderr] | [INFO] [stderr] 222 | use v_1::Hash; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::wallet::Valid` [INFO] [stderr] --> src/block.rs:227:5 [INFO] [stderr] | [INFO] [stderr] 227 | use crate::wallet::Valid; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::HashMap` [INFO] [stderr] --> src/block.rs:229:5 [INFO] [stderr] | [INFO] [stderr] 229 | use std::collections::HashMap; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::HashSet` [INFO] [stderr] --> src/block.rs:230:5 [INFO] [stderr] | [INFO] [stderr] 230 | use std::collections::HashSet; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait `fn_transaction` should have an upper camel case name [INFO] [stderr] --> src/block.rs:249:11 [INFO] [stderr] | [INFO] [stderr] 249 | pub trait fn_transaction{ [INFO] [stderr] | ^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `FnTransaction` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(non_camel_case_types)] on by default [INFO] [stderr] [INFO] [stderr] warning: type `block__chain` should have an upper camel case name [INFO] [stderr] --> src/block.rs:650:12 [INFO] [stderr] | [INFO] [stderr] 650 | pub struct block__chain<'a,'b>{ [INFO] [stderr] | ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `BlockChain` [INFO] [stderr] [INFO] [stderr] warning: unused import: `block::block__chain` [INFO] [stderr] --> src/main.rs:25:5 [INFO] [stderr] | [INFO] [stderr] 25 | use block::block__chain; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `v_1::vec_to_str` [INFO] [stderr] --> src/main.rs:31:5 [INFO] [stderr] | [INFO] [stderr] 31 | use v_1::vec_to_str; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `v_1::vec_to_str1` [INFO] [stderr] --> src/main.rs:33:5 [INFO] [stderr] | [INFO] [stderr] 33 | use v_1::vec_to_str1; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `v_1::vec_to_str` [INFO] [stderr] --> src/wallet.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use v_1::vec_to_str; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `v_1::Hash` [INFO] [stderr] --> src/wallet.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use v_1::Hash; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `block::Transaction` [INFO] [stderr] --> src/wallet.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use block::Transaction; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: type `list_block` should have an upper camel case name [INFO] [stderr] --> src/wallet.rs:10:10 [INFO] [stderr] | [INFO] [stderr] 10 | pub type list_block<'a> = &'a Vec>; [INFO] [stderr] | ^^^^^^^^^^ help: convert the identifier to upper camel case: `ListBlock` [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::str` [INFO] [stderr] --> src/main.rs:36:5 [INFO] [stderr] | [INFO] [stderr] 36 | use std::str; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io::Read` [INFO] [stderr] --> src/main.rs:46:5 [INFO] [stderr] | [INFO] [stderr] 46 | use std::io::Read; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `block::fn_transaction` [INFO] [stderr] --> src/wallet.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | use block::fn_transaction; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `total_bitcoin` [INFO] [stderr] --> src/main.rs:52:13 [INFO] [stderr] | [INFO] [stderr] 52 | let mut total_bitcoin: f64 = 100.00; [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider prefixing with an underscore: `_total_bitcoin` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `combine_string` [INFO] [stderr] --> src/main.rs:54:13 [INFO] [stderr] | [INFO] [stderr] 54 | let mut combine_string = String::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: consider prefixing with an underscore: `_combine_string` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `block` [INFO] [stderr] --> src/main.rs:93:33 [INFO] [stderr] | [INFO] [stderr] 93 | let mut block = block::Block::genesis_block(&tran_list); [INFO] [stderr] | ^^^^^ help: consider prefixing with an underscore: `_block` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `bonous` [INFO] [stderr] --> src/main.rs:111:69 [INFO] [stderr] | [INFO] [stderr] 111 | let mut bonous = 0.1 * (tran_list.len() as f64); [INFO] [stderr] | ^^^^^^ help: consider prefixing with an underscore: `_bonous` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `file` [INFO] [stderr] --> src/main.rs:193:41 [INFO] [stderr] | [INFO] [stderr] 193 | let mut file = match File::open(path){ [INFO] [stderr] | ^^^^ help: consider prefixing with an underscore: `_file` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `st` [INFO] [stderr] --> src/main.rs:260:33 [INFO] [stderr] | [INFO] [stderr] 260 | let mut st = String::new(); [INFO] [stderr] | ^^ help: consider prefixing with an underscore: `_st` [INFO] [stderr] [INFO] [stderr] warning: value assigned to `time` is never read [INFO] [stderr] --> src/block.rs:795:17 [INFO] [stderr] | [INFO] [stderr] 795 | let mut time = String::new(); [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_assignments)] on by default [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: variable `a1` is assigned to, but never used [INFO] [stderr] --> src/block.rs:806:13 [INFO] [stderr] | [INFO] [stderr] 806 | let mut a1 = 0; [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = note: consider using `_a1` instead [INFO] [stderr] [INFO] [stderr] warning: value assigned to `a` is never read [INFO] [stderr] --> src/block.rs:809:13 [INFO] [stderr] | [INFO] [stderr] 809 | let mut a = String::new(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `b` is never read [INFO] [stderr] --> src/block.rs:810:13 [INFO] [stderr] | [INFO] [stderr] 810 | let mut b = String::new(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `c` is never read [INFO] [stderr] --> src/block.rs:811:13 [INFO] [stderr] | [INFO] [stderr] 811 | let mut c = String::new(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `f` is never read [INFO] [stderr] --> src/block.rs:813:13 [INFO] [stderr] | [INFO] [stderr] 813 | let mut f = String::new(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `a1` is never read [INFO] [stderr] --> src/block.rs:819:13 [INFO] [stderr] | [INFO] [stderr] 819 | a1 = 1; [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `totalString1` is never read [INFO] [stderr] --> src/block.rs:887:13 [INFO] [stderr] | [INFO] [stderr] 887 | let mut totalString1 = format!(""); [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `st` is never read [INFO] [stderr] --> src/block.rs:912:13 [INFO] [stderr] | [INFO] [stderr] 912 | let mut st = String::new(); [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sign1` [INFO] [stderr] --> src/block.rs:913:13 [INFO] [stderr] | [INFO] [stderr] 913 | let mut sign1 = String::from("["); [INFO] [stderr] | ^^^^^ help: consider prefixing with an underscore: `_sign1` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sign2` [INFO] [stderr] --> src/block.rs:914:13 [INFO] [stderr] | [INFO] [stderr] 914 | let mut sign2 = String::from("]"); [INFO] [stderr] | ^^^^^ help: consider prefixing with an underscore: `_sign2` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `split_sign` [INFO] [stderr] --> src/block.rs:915:13 [INFO] [stderr] | [INFO] [stderr] 915 | let mut split_sign = String::from(","); [INFO] [stderr] | ^^^^^^^^^^ help: consider prefixing with an underscore: `_split_sign` [INFO] [stderr] [INFO] [stderr] warning: variable `a` is assigned to, but never used [INFO] [stderr] --> src/block.rs:467:17 [INFO] [stderr] | [INFO] [stderr] 467 | let mut a = String::new(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: consider using `_a` instead [INFO] [stderr] [INFO] [stderr] warning: variable `b` is assigned to, but never used [INFO] [stderr] --> src/block.rs:468:17 [INFO] [stderr] | [INFO] [stderr] 468 | let mut b = String::new(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: consider using `_b` instead [INFO] [stderr] [INFO] [stderr] warning: variable `c` is assigned to, but never used [INFO] [stderr] --> src/block.rs:469:17 [INFO] [stderr] | [INFO] [stderr] 469 | let mut c = String::new(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: consider using `_c` instead [INFO] [stderr] [INFO] [stderr] warning: variable `d` is assigned to, but never used [INFO] [stderr] --> src/block.rs:470:17 [INFO] [stderr] | [INFO] [stderr] 470 | let mut d = String::new(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: consider using `_d` instead [INFO] [stderr] [INFO] [stderr] warning: variable `e` is assigned to, but never used [INFO] [stderr] --> src/block.rs:471:17 [INFO] [stderr] | [INFO] [stderr] 471 | let mut e = String::new(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: consider using `_e` instead [INFO] [stderr] [INFO] [stderr] warning: variable `f` is assigned to, but never used [INFO] [stderr] --> src/block.rs:472:17 [INFO] [stderr] | [INFO] [stderr] 472 | let mut f = String::new(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: consider using `_f` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `d2` [INFO] [stderr] --> src/block.rs:473:17 [INFO] [stderr] | [INFO] [stderr] 473 | let mut d2: f64; [INFO] [stderr] | ^^ help: consider prefixing with an underscore: `_d2` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `e2` [INFO] [stderr] --> src/block.rs:474:17 [INFO] [stderr] | [INFO] [stderr] 474 | let mut e2: f64; [INFO] [stderr] | ^^ help: consider prefixing with an underscore: `_e2` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `f2` [INFO] [stderr] --> src/block.rs:475:17 [INFO] [stderr] | [INFO] [stderr] 475 | let mut f2: f64; [INFO] [stderr] | ^^ help: consider prefixing with an underscore: `_f2` [INFO] [stderr] [INFO] [stderr] warning: value assigned to `sender_balance` is never read [INFO] [stderr] --> src/block.rs:480:17 [INFO] [stderr] | [INFO] [stderr] 480 | let mut sender_balance: f64 = 0.00; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: unused variable: `amount3` [INFO] [stderr] --> src/block.rs:484:17 [INFO] [stderr] | [INFO] [stderr] 484 | let mut amount3: f64 = 0.00; [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_amount3` [INFO] [stderr] [INFO] [stderr] warning: variable `t` is assigned to, but never used [INFO] [stderr] --> src/block.rs:485:17 [INFO] [stderr] | [INFO] [stderr] 485 | let mut t = 0; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: consider using `_t` instead [INFO] [stderr] [INFO] [stderr] warning: value assigned to `a` is never read [INFO] [stderr] --> src/block.rs:516:45 [INFO] [stderr] | [INFO] [stderr] 516 | a = a1.clone(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `b` is never read [INFO] [stderr] --> src/block.rs:517:45 [INFO] [stderr] | [INFO] [stderr] 517 | b = b1.clone(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `c` is never read [INFO] [stderr] --> src/block.rs:518:45 [INFO] [stderr] | [INFO] [stderr] 518 | c = c1.clone(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `d` is never read [INFO] [stderr] --> src/block.rs:519:45 [INFO] [stderr] | [INFO] [stderr] 519 | d = d1.clone(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `e` is never read [INFO] [stderr] --> src/block.rs:520:45 [INFO] [stderr] | [INFO] [stderr] 520 | e = e1.clone(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `f` is never read [INFO] [stderr] --> src/block.rs:521:45 [INFO] [stderr] | [INFO] [stderr] 521 | f = f1.clone(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: variable `a` is assigned to, but never used [INFO] [stderr] --> src/block.rs:596:17 [INFO] [stderr] | [INFO] [stderr] 596 | let mut a: i32 = 0; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: consider using `_a` instead [INFO] [stderr] [INFO] [stderr] warning: value assigned to `time` is never read [INFO] [stderr] --> src/block.rs:598:17 [INFO] [stderr] | [INFO] [stderr] 598 | let mut time = String:: new(); [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `a` is never read [INFO] [stderr] --> src/block.rs:604:21 [INFO] [stderr] | [INFO] [stderr] 604 | a = 1; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `value_hash` is never read [INFO] [stderr] --> src/block.rs:697:21 [INFO] [stderr] | [INFO] [stderr] 697 | let mut value_hash = String::new(); [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `value_hash` is never read [INFO] [stderr] --> src/block.rs:715:21 [INFO] [stderr] | [INFO] [stderr] 715 | let mut value_hash = String::new(); [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: unused variable: `block` [INFO] [stderr] --> src/block.rs:729:30 [INFO] [stderr] | [INFO] [stderr] 729 | fn mine_block(&self, block: &[Block]){ [INFO] [stderr] | ^^^^^ help: consider prefixing with an underscore: `_block` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `blocks` [INFO] [stderr] --> src/block.rs:768:26 [INFO] [stderr] | [INFO] [stderr] 768 | fn checking_hash(blocks: &Vec) -> bool{ [INFO] [stderr] | ^^^^^^ help: consider prefixing with an underscore: `_blocks` [INFO] [stderr] [INFO] [stderr] warning: value assigned to `ha` is never read [INFO] [stderr] --> src/wallet.rs:32:17 [INFO] [stderr] | [INFO] [stderr] 32 | let mut ha = String::new(); [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `st` is never read [INFO] [stderr] --> src/wallet.rs:38:17 [INFO] [stderr] | [INFO] [stderr] 38 | let mut st = String::new(); [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: unused import: `block::fn_transaction` [INFO] [stderr] --> src/wallet.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | use block::fn_transaction; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:50:9 [INFO] [stderr] | [INFO] [stderr] 50 | let mut path = Path::new("blockchain.txt"); [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/main.rs:52:9 [INFO] [stderr] | [INFO] [stderr] 52 | let mut total_bitcoin: f64 = 100.00; [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/main.rs:54:9 [INFO] [stderr] | [INFO] [stderr] 54 | let mut combine_string = String::new(); [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/main.rs:56:9 [INFO] [stderr] | [INFO] [stderr] 56 | let mut blockchain: Vec = Vec::new(); [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/main.rs:77:29 [INFO] [stderr] | [INFO] [stderr] 77 | let mut new_account = Wallet::create_wallet(&blockchain); [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/main.rs:93:29 [INFO] [stderr] | [INFO] [stderr] 93 | let mut block = block::Block::genesis_block(&tran_list); [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/main.rs:111:65 [INFO] [stderr] | [INFO] [stderr] 111 | let mut bonous = 0.1 * (tran_list.len() as f64); [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/main.rs:142:25 [INFO] [stderr] | [INFO] [stderr] 142 | let mut file = match File::open(path){ [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/main.rs:175:33 [INFO] [stderr] | [INFO] [stderr] 175 | let mut id2: u32 = id1.trim().parse().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/main.rs:176:33 [INFO] [stderr] | [INFO] [stderr] 176 | let mut id1: u32 = id2 + 1u32; [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/main.rs:178:33 [INFO] [stderr] | [INFO] [stderr] 178 | let mut timestamp = current_time(); [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/main.rs:179:33 [INFO] [stderr] | [INFO] [stderr] 179 | let mut hash_str = format!("{}{}{}",struct_to_str(&tran_list),id1.to_string(),timestamp); [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/main.rs:180:33 [INFO] [stderr] | [INFO] [stderr] 180 | let mut hash1 = hash(&hash_str); [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/main.rs:181:33 [INFO] [stderr] | [INFO] [stderr] 181 | let mut prev_hash = p_hash; [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/main.rs:183:33 [INFO] [stderr] | [INFO] [stderr] 183 | let mut id1 = id1.to_string(); [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/main.rs:193:37 [INFO] [stderr] | [INFO] [stderr] 193 | let mut file = match File::open(path){ [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/main.rs:197:37 [INFO] [stderr] | [INFO] [stderr] 197 | let mut st = format!("{}\n",st); [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/main.rs:230:57 [INFO] [stderr] | [INFO] [stderr] 230 | let mut transaction = Transaction::transfer(&mut wallet_list); [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/main.rs:260:29 [INFO] [stderr] | [INFO] [stderr] 260 | let mut st = String::new(); [INFO] [stderr] | ----^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] warning: unused variable: `total_bitcoin` [INFO] [stderr] --> src/main.rs:52:13 [INFO] [stderr] | [INFO] [stderr] 52 | let mut total_bitcoin: f64 = 100.00; [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider prefixing with an underscore: `_total_bitcoin` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `combine_string` [INFO] [stderr] --> src/main.rs:54:13 [INFO] [stderr] | [INFO] [stderr] 54 | let mut combine_string = String::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: consider prefixing with an underscore: `_combine_string` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `block` [INFO] [stderr] --> src/main.rs:93:33 [INFO] [stderr] | [INFO] [stderr] 93 | let mut block = block::Block::genesis_block(&tran_list); [INFO] [stderr] | ^^^^^ help: consider prefixing with an underscore: `_block` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `bonous` [INFO] [stderr] --> src/main.rs:111:69 [INFO] [stderr] | [INFO] [stderr] 111 | let mut bonous = 0.1 * (tran_list.len() as f64); [INFO] [stderr] | ^^^^^^ help: consider prefixing with an underscore: `_bonous` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `file` [INFO] [stderr] --> src/main.rs:193:41 [INFO] [stderr] | [INFO] [stderr] 193 | let mut file = match File::open(path){ [INFO] [stderr] | ^^^^ help: consider prefixing with an underscore: `_file` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `st` [INFO] [stderr] --> src/main.rs:260:33 [INFO] [stderr] | [INFO] [stderr] 260 | let mut st = String::new(); [INFO] [stderr] | ^^ help: consider prefixing with an underscore: `_st` [INFO] [stderr] [INFO] [stderr] warning: value assigned to `time` is never read [INFO] [stderr] --> src/block.rs:795:17 [INFO] [stderr] | [INFO] [stderr] 795 | let mut time = String::new(); [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_assignments)] on by default [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: variable `a1` is assigned to, but never used [INFO] [stderr] --> src/block.rs:806:13 [INFO] [stderr] | [INFO] [stderr] 806 | let mut a1 = 0; [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = note: consider using `_a1` instead [INFO] [stderr] [INFO] [stderr] warning: value assigned to `a` is never read [INFO] [stderr] --> src/block.rs:809:13 [INFO] [stderr] | [INFO] [stderr] 809 | let mut a = String::new(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `b` is never read [INFO] [stderr] --> src/block.rs:810:13 [INFO] [stderr] | [INFO] [stderr] 810 | let mut b = String::new(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `c` is never read [INFO] [stderr] --> src/block.rs:811:13 [INFO] [stderr] | [INFO] [stderr] 811 | let mut c = String::new(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `f` is never read [INFO] [stderr] --> src/block.rs:813:13 [INFO] [stderr] | [INFO] [stderr] 813 | let mut f = String::new(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `a1` is never read [INFO] [stderr] --> src/block.rs:819:13 [INFO] [stderr] | [INFO] [stderr] 819 | a1 = 1; [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `totalString1` is never read [INFO] [stderr] --> src/block.rs:887:13 [INFO] [stderr] | [INFO] [stderr] 887 | let mut totalString1 = format!(""); [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `st` is never read [INFO] [stderr] --> src/block.rs:912:13 [INFO] [stderr] | [INFO] [stderr] 912 | let mut st = String::new(); [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sign1` [INFO] [stderr] --> src/block.rs:913:13 [INFO] [stderr] | [INFO] [stderr] 913 | let mut sign1 = String::from("["); [INFO] [stderr] | ^^^^^ help: consider prefixing with an underscore: `_sign1` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sign2` [INFO] [stderr] --> src/block.rs:914:13 [INFO] [stderr] | [INFO] [stderr] 914 | let mut sign2 = String::from("]"); [INFO] [stderr] | ^^^^^ help: consider prefixing with an underscore: `_sign2` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `split_sign` [INFO] [stderr] --> src/block.rs:915:13 [INFO] [stderr] | [INFO] [stderr] 915 | let mut split_sign = String::from(","); [INFO] [stderr] | ^^^^^^^^^^ help: consider prefixing with an underscore: `_split_sign` [INFO] [stderr] [INFO] [stderr] warning: variable `a` is assigned to, but never used [INFO] [stderr] --> src/block.rs:467:17 [INFO] [stderr] | [INFO] [stderr] 467 | let mut a = String::new(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: consider using `_a` instead [INFO] [stderr] [INFO] [stderr] warning: variable `b` is assigned to, but never used [INFO] [stderr] --> src/block.rs:468:17 [INFO] [stderr] | [INFO] [stderr] 468 | let mut b = String::new(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: consider using `_b` instead [INFO] [stderr] [INFO] [stderr] warning: variable `c` is assigned to, but never used [INFO] [stderr] --> src/block.rs:469:17 [INFO] [stderr] | [INFO] [stderr] 469 | let mut c = String::new(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: consider using `_c` instead [INFO] [stderr] [INFO] [stderr] warning: variable `d` is assigned to, but never used [INFO] [stderr] --> src/block.rs:470:17 [INFO] [stderr] | [INFO] [stderr] 470 | let mut d = String::new(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: consider using `_d` instead [INFO] [stderr] [INFO] [stderr] warning: variable `e` is assigned to, but never used [INFO] [stderr] --> src/block.rs:471:17 [INFO] [stderr] | [INFO] [stderr] 471 | let mut e = String::new(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: consider using `_e` instead [INFO] [stderr] [INFO] [stderr] warning: variable `f` is assigned to, but never used [INFO] [stderr] --> src/block.rs:472:17 [INFO] [stderr] | [INFO] [stderr] 472 | let mut f = String::new(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: consider using `_f` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `d2` [INFO] [stderr] --> src/block.rs:473:17 [INFO] [stderr] | [INFO] [stderr] 473 | let mut d2: f64; [INFO] [stderr] | ^^ help: consider prefixing with an underscore: `_d2` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `e2` [INFO] [stderr] --> src/block.rs:474:17 [INFO] [stderr] | [INFO] [stderr] 474 | let mut e2: f64; [INFO] [stderr] | ^^ help: consider prefixing with an underscore: `_e2` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `f2` [INFO] [stderr] --> src/block.rs:475:17 [INFO] [stderr] | [INFO] [stderr] 475 | let mut f2: f64; [INFO] [stderr] | ^^ help: consider prefixing with an underscore: `_f2` [INFO] [stderr] [INFO] [stderr] warning: value assigned to `sender_balance` is never read [INFO] [stderr] --> src/block.rs:480:17 [INFO] [stderr] | [INFO] [stderr] 480 | let mut sender_balance: f64 = 0.00; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: unused variable: `amount3` [INFO] [stderr] --> src/block.rs:484:17 [INFO] [stderr] | [INFO] [stderr] 484 | let mut amount3: f64 = 0.00; [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_amount3` [INFO] [stderr] [INFO] [stderr] warning: variable `t` is assigned to, but never used [INFO] [stderr] --> src/block.rs:485:17 [INFO] [stderr] | [INFO] [stderr] 485 | let mut t = 0; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: consider using `_t` instead [INFO] [stderr] [INFO] [stderr] warning: value assigned to `a` is never read [INFO] [stderr] --> src/block.rs:516:45 [INFO] [stderr] | [INFO] [stderr] 516 | a = a1.clone(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `b` is never read [INFO] [stderr] --> src/block.rs:517:45 [INFO] [stderr] | [INFO] [stderr] 517 | b = b1.clone(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `c` is never read [INFO] [stderr] --> src/block.rs:518:45 [INFO] [stderr] | [INFO] [stderr] 518 | c = c1.clone(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `d` is never read [INFO] [stderr] --> src/block.rs:519:45 [INFO] [stderr] | [INFO] [stderr] 519 | d = d1.clone(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `e` is never read [INFO] [stderr] --> src/block.rs:520:45 [INFO] [stderr] | [INFO] [stderr] 520 | e = e1.clone(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `f` is never read [INFO] [stderr] --> src/block.rs:521:45 [INFO] [stderr] | [INFO] [stderr] 521 | f = f1.clone(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: variable `a` is assigned to, but never used [INFO] [stderr] --> src/block.rs:596:17 [INFO] [stderr] | [INFO] [stderr] 596 | let mut a: i32 = 0; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: consider using `_a` instead [INFO] [stderr] [INFO] [stderr] warning: value assigned to `time` is never read [INFO] [stderr] --> src/block.rs:598:17 [INFO] [stderr] | [INFO] [stderr] 598 | let mut time = String:: new(); [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `a` is never read [INFO] [stderr] --> src/block.rs:604:21 [INFO] [stderr] | [INFO] [stderr] 604 | a = 1; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] [INFO] [stderr] warning: value assigned to `value_hash` is never read [INFO] [stderr] --> src/block.rs:697:21 [INFO] [stderr] | [INFO] [stderr] 697 | let mut value_hash = String::new(); [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `value_hash` is never read [INFO] [stderr] --> src/block.rs:715:21 [INFO] [stderr] | [INFO] [stderr] 715 | let mut value_hash = String::new(); [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: unused variable: `block` [INFO] [stderr] --> src/block.rs:729:30 [INFO] [stderr] | [INFO] [stderr] 729 | fn mine_block(&self, block: &[Block]){ [INFO] [stderr] | ^^^^^ help: consider prefixing with an underscore: `_block` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `blocks` [INFO] [stderr] --> src/block.rs:768:26 [INFO] [stderr] | [INFO] [stderr] 768 | fn checking_hash(blocks: &Vec) -> bool{ [INFO] [stderr] | ^^^^^^ help: consider prefixing with an underscore: `_blocks` [INFO] [stderr] [INFO] [stderr] warning: value assigned to `ha` is never read [INFO] [stderr] --> src/wallet.rs:32:17 [INFO] [stderr] | [INFO] [stderr] 32 | let mut ha = String::new(); [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `st` is never read [INFO] [stderr] --> src/wallet.rs:38:17 [INFO] [stderr] | [INFO] [stderr] 38 | let mut st = String::new(); [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:261:29 [INFO] [stderr] | [INFO] [stderr] 261 | let mut file = match File::open(path){ [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/block.rs:484:13 [INFO] [stderr] | [INFO] [stderr] 484 | let mut amount3: f64 = 0.00; [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/block.rs:510:49 [INFO] [stderr] | [INFO] [stderr] 510 | let mut a1 = String::from("null"); [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/block.rs:511:49 [INFO] [stderr] | [INFO] [stderr] 511 | let mut b1 = String::from("null"); [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/block.rs:512:49 [INFO] [stderr] | [INFO] [stderr] 512 | let mut c1 = String::from("null"); [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/block.rs:513:49 [INFO] [stderr] | [INFO] [stderr] 513 | let mut d1 = String::from("0.00"); [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/block.rs:514:49 [INFO] [stderr] | [INFO] [stderr] 514 | let mut e1 = String::from("0.00"); [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/block.rs:515:49 [INFO] [stderr] | [INFO] [stderr] 515 | let mut f1 = String::from("0.00"); [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/block.rs:542:17 [INFO] [stderr] | [INFO] [stderr] 542 | let mut string = format!("{}{}{}{}{}{}", [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/block.rs:812:9 [INFO] [stderr] | [INFO] [stderr] 812 | let mut d: f64; [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/block.rs:814:9 [INFO] [stderr] | [INFO] [stderr] 814 | let mut g: f64; [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/block.rs:815:9 [INFO] [stderr] | [INFO] [stderr] 815 | let mut h: f64; [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/main.rs:50:9 [INFO] [stderr] | [INFO] [stderr] 50 | let mut path = Path::new("blockchain.txt"); [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/main.rs:52:9 [INFO] [stderr] | [INFO] [stderr] 52 | let mut total_bitcoin: f64 = 100.00; [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/main.rs:54:9 [INFO] [stderr] | [INFO] [stderr] 54 | let mut combine_string = String::new(); [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/main.rs:56:9 [INFO] [stderr] | [INFO] [stderr] 56 | let mut blockchain: Vec = Vec::new(); [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/main.rs:77:29 [INFO] [stderr] | [INFO] [stderr] 77 | let mut new_account = Wallet::create_wallet(&blockchain); [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/main.rs:93:29 [INFO] [stderr] | [INFO] [stderr] 93 | let mut block = block::Block::genesis_block(&tran_list); [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/main.rs:111:65 [INFO] [stderr] | [INFO] [stderr] 111 | let mut bonous = 0.1 * (tran_list.len() as f64); [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/main.rs:142:25 [INFO] [stderr] | [INFO] [stderr] 142 | let mut file = match File::open(path){ [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/main.rs:175:33 [INFO] [stderr] | [INFO] [stderr] 175 | let mut id2: u32 = id1.trim().parse().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/main.rs:176:33 [INFO] [stderr] | [INFO] [stderr] 176 | let mut id1: u32 = id2 + 1u32; [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/main.rs:178:33 [INFO] [stderr] | [INFO] [stderr] 178 | let mut timestamp = current_time(); [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/main.rs:179:33 [INFO] [stderr] | [INFO] [stderr] 179 | let mut hash_str = format!("{}{}{}",struct_to_str(&tran_list),id1.to_string(),timestamp); [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/main.rs:180:33 [INFO] [stderr] | [INFO] [stderr] 180 | let mut hash1 = hash(&hash_str); [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/main.rs:181:33 [INFO] [stderr] | [INFO] [stderr] 181 | let mut prev_hash = p_hash; [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/main.rs:183:33 [INFO] [stderr] | [INFO] [stderr] 183 | let mut id1 = id1.to_string(); [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/main.rs:193:37 [INFO] [stderr] | [INFO] [stderr] 193 | let mut file = match File::open(path){ [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/main.rs:197:37 [INFO] [stderr] | [INFO] [stderr] 197 | let mut st = format!("{}\n",st); [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/main.rs:230:57 [INFO] [stderr] | [INFO] [stderr] 230 | let mut transaction = Transaction::transfer(&mut wallet_list); [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/main.rs:260:29 [INFO] [stderr] | [INFO] [stderr] 260 | let mut st = String::new(); [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/main.rs:261:29 [INFO] [stderr] | [INFO] [stderr] 261 | let mut file = match File::open(path){ [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/block.rs:913:9 [INFO] [stderr] | [INFO] [stderr] 913 | let mut sign1 = String::from("["); [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/block.rs:914:9 [INFO] [stderr] | [INFO] [stderr] 914 | let mut sign2 = String::from("]"); [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/block.rs:915:9 [INFO] [stderr] | [INFO] [stderr] 915 | let mut split_sign = String::from(","); [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/block.rs:484:13 [INFO] [stderr] | [INFO] [stderr] 484 | let mut amount3: f64 = 0.00; [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/block.rs:510:49 [INFO] [stderr] | [INFO] [stderr] 510 | let mut a1 = String::from("null"); [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/block.rs:511:49 [INFO] [stderr] | [INFO] [stderr] 511 | let mut b1 = String::from("null"); [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/block.rs:512:49 [INFO] [stderr] | [INFO] [stderr] 512 | let mut c1 = String::from("null"); [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/block.rs:513:49 [INFO] [stderr] | [INFO] [stderr] 513 | let mut d1 = String::from("0.00"); [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/block.rs:514:49 [INFO] [stderr] | [INFO] [stderr] 514 | let mut e1 = String::from("0.00"); [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/block.rs:515:49 [INFO] [stderr] | [INFO] [stderr] 515 | let mut f1 = String::from("0.00"); [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/block.rs:542:17 [INFO] [stderr] | [INFO] [stderr] 542 | let mut string = format!("{}{}{}{}{}{}", [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/wallet.rs:20:5 [INFO] [stderr] | [INFO] [stderr] 20 | pub fn new(vec: &'a Vec) -> Self{ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/wallet.rs:71:5 [INFO] [stderr] | [INFO] [stderr] 71 | pub fn new(address: String, amount: f64) -> Valid{ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `show` [INFO] [stderr] --> src/wallet.rs:77:5 [INFO] [stderr] | [INFO] [stderr] 77 | pub fn show(&self){ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `show_valid` [INFO] [stderr] --> src/wallet.rs:85:1 [INFO] [stderr] | [INFO] [stderr] 85 | pub fn show_valid(vec: &Vec){ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `main` [INFO] [stderr] --> src/wallet.rs:90:1 [INFO] [stderr] | [INFO] [stderr] 90 | fn main(){ [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never used: `total` [INFO] [stderr] --> src/main.rs:39:5 [INFO] [stderr] | [INFO] [stderr] 39 | total: u32, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/main.rs:203:33 [INFO] [stderr] | [INFO] [stderr] 203 | file.write_all(st.as_bytes()); [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: variable `totalString` should have a snake case name [INFO] [stderr] --> src/block.rs:886:13 [INFO] [stderr] | [INFO] [stderr] 886 | let mut totalString = format!(""); [INFO] [stderr] | ^^^^^^^^^^^ help: convert the identifier to snake case: `total_string` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(non_snake_case)] on by default [INFO] [stderr] [INFO] [stderr] warning: variable `totalString1` should have a snake case name [INFO] [stderr] --> src/block.rs:887:13 [INFO] [stderr] | [INFO] [stderr] 887 | let mut totalString1 = format!(""); [INFO] [stderr] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `total_string1` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/block.rs:812:9 [INFO] [stderr] | [INFO] [stderr] 812 | let mut d: f64; [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/block.rs:814:9 [INFO] [stderr] | [INFO] [stderr] 814 | let mut g: f64; [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/block.rs:815:9 [INFO] [stderr] | [INFO] [stderr] 815 | let mut h: f64; [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/block.rs:913:9 [INFO] [stderr] | [INFO] [stderr] 913 | let mut sign1 = String::from("["); [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/block.rs:914:9 [INFO] [stderr] | [INFO] [stderr] 914 | let mut sign2 = String::from("]"); [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/block.rs:915:9 [INFO] [stderr] | [INFO] [stderr] 915 | let mut split_sign = String::from(","); [INFO] [stderr] | ----^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/wallet.rs:20:5 [INFO] [stderr] | [INFO] [stderr] 20 | pub fn new(vec: &'a Vec) -> Self{ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/wallet.rs:71:5 [INFO] [stderr] | [INFO] [stderr] 71 | pub fn new(address: String, amount: f64) -> Valid{ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `show` [INFO] [stderr] --> src/wallet.rs:77:5 [INFO] [stderr] | [INFO] [stderr] 77 | pub fn show(&self){ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `show_valid` [INFO] [stderr] --> src/wallet.rs:85:1 [INFO] [stderr] | [INFO] [stderr] 85 | pub fn show_valid(vec: &Vec){ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `main` [INFO] [stderr] --> src/wallet.rs:90:1 [INFO] [stderr] | [INFO] [stderr] 90 | fn main(){ [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never used: `total` [INFO] [stderr] --> src/main.rs:39:5 [INFO] [stderr] | [INFO] [stderr] 39 | total: u32, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/main.rs:203:33 [INFO] [stderr] | [INFO] [stderr] 203 | file.write_all(st.as_bytes()); [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: variable `totalString` should have a snake case name [INFO] [stderr] --> src/block.rs:886:13 [INFO] [stderr] | [INFO] [stderr] 886 | let mut totalString = format!(""); [INFO] [stderr] | ^^^^^^^^^^^ help: convert the identifier to snake case: `total_string` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(non_snake_case)] on by default [INFO] [stderr] [INFO] [stderr] warning: variable `totalString1` should have a snake case name [INFO] [stderr] --> src/block.rs:887:13 [INFO] [stderr] | [INFO] [stderr] 887 | let mut totalString1 = format!(""); [INFO] [stderr] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `total_string1` [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 8.80s [INFO] running `"docker" "inspect" "427caffefa8235e31113694984631b3dbd3d45f5acda5f54d9eae077a115cdc0"` [INFO] running `"docker" "rm" "-f" "427caffefa8235e31113694984631b3dbd3d45f5acda5f54d9eae077a115cdc0"` [INFO] [stdout] 427caffefa8235e31113694984631b3dbd3d45f5acda5f54d9eae077a115cdc0