[INFO] updating cached repository JacksonCoder/fire-chain [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/JacksonCoder/fire-chain [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/JacksonCoder/fire-chain" "work/ex/pr-59199/sources/master#bc44841ad2a2ad5f6c5e67b9e35ed8e7e71d4dc7/gh/JacksonCoder/fire-chain"` [INFO] [stderr] Cloning into 'work/ex/pr-59199/sources/master#bc44841ad2a2ad5f6c5e67b9e35ed8e7e71d4dc7/gh/JacksonCoder/fire-chain'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/JacksonCoder/fire-chain" "work/ex/pr-59199/sources/try#68fcf881bd1e4dbfc21e22f8c7a56b8a5d8e8f7b/gh/JacksonCoder/fire-chain"` [INFO] [stderr] Cloning into 'work/ex/pr-59199/sources/try#68fcf881bd1e4dbfc21e22f8c7a56b8a5d8e8f7b/gh/JacksonCoder/fire-chain'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 378f8cff3b1ec40b08ad45b69c7cfcbdc98e4d72 [INFO] sha for GitHub repo JacksonCoder/fire-chain: 378f8cff3b1ec40b08ad45b69c7cfcbdc98e4d72 [INFO] validating manifest of JacksonCoder/fire-chain on toolchain master#bc44841ad2a2ad5f6c5e67b9e35ed8e7e71d4dc7 [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+bc44841ad2a2ad5f6c5e67b9e35ed8e7e71d4dc7-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of JacksonCoder/fire-chain on toolchain try#68fcf881bd1e4dbfc21e22f8c7a56b8a5d8e8f7b [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+68fcf881bd1e4dbfc21e22f8c7a56b8a5d8e8f7b-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing JacksonCoder/fire-chain [INFO] finished frobbing JacksonCoder/fire-chain [INFO] frobbed toml for JacksonCoder/fire-chain written to work/ex/pr-59199/sources/master#bc44841ad2a2ad5f6c5e67b9e35ed8e7e71d4dc7/gh/JacksonCoder/fire-chain/Cargo.toml [INFO] started frobbing JacksonCoder/fire-chain [INFO] finished frobbing JacksonCoder/fire-chain [INFO] frobbed toml for JacksonCoder/fire-chain written to work/ex/pr-59199/sources/try#68fcf881bd1e4dbfc21e22f8c7a56b8a5d8e8f7b/gh/JacksonCoder/fire-chain/Cargo.toml [INFO] crate JacksonCoder/fire-chain already has a lockfile, it will not be regenerated [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+bc44841ad2a2ad5f6c5e67b9e35ed8e7e71d4dc7-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+68fcf881bd1e4dbfc21e22f8c7a56b8a5d8e8f7b-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] checking JacksonCoder/fire-chain against try#68fcf881bd1e4dbfc21e22f8c7a56b8a5d8e8f7b for pr-59199 [INFO] running `"docker" "create" "-v" "/mnt/crater-raid/crater/work/local/target-dirs/pr-59199/worker-7/try#68fcf881bd1e4dbfc21e22f8c7a56b8a5d8e8f7b:/opt/crater/target:rw,Z" "-v" "/mnt/crater-raid/crater/work/ex/pr-59199/sources/try#68fcf881bd1e4dbfc21e22f8c7a56b8a5d8e8f7b/gh/JacksonCoder/fire-chain:/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" "+68fcf881bd1e4dbfc21e22f8c7a56b8a5d8e8f7b-alt" "check" "--frozen" "--all" "--all-targets"` [INFO] [stdout] 6477ec903828ebe3b500ff33c1badbe3d1000c3020ba664cf23fd8d8bd5779ff [INFO] running `"docker" "start" "-a" "6477ec903828ebe3b500ff33c1badbe3d1000c3020ba664cf23fd8d8bd5779ff"` [INFO] [stderr] Checking uuid v0.1.18 [INFO] [stderr] Checking chrono v0.2.25 [INFO] [stderr] Checking url v0.2.38 [INFO] [stderr] Checking tiny_http v0.5.8 [INFO] [stderr] Checking fchain v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: unused import: `firechain` [INFO] [stderr] --> src/server.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use firechain; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `firechain::setup_interface` [INFO] [stderr] --> src/server.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use firechain::setup_interface; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `firechain::chain_exists` [INFO] [stderr] --> src/server.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use firechain::chain_exists; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `firechain::Handler` [INFO] [stderr] --> src/server.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use firechain::Handler; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `firechain::Input` [INFO] [stderr] --> src/server.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use firechain::Input; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::str::FromStr` [INFO] [stderr] --> src/server.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use std::str::FromStr; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Arg`, `SubCommand` [INFO] [stderr] --> src/main.rs:5:17 [INFO] [stderr] | [INFO] [stderr] 5 | use clap::{App, Arg, SubCommand, ArgMatches}; [INFO] [stderr] | ^^^ ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `ParseError` [INFO] [stderr] --> src/main.rs:14:16 [INFO] [stderr] | [INFO] [stderr] 14 | use url::{Url, ParseError}; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ledger_file_path` [INFO] [stderr] --> src/main.rs:18:9 [INFO] [stderr] | [INFO] [stderr] 18 | let ledger_file_path = match matches.value_of("dbpath") { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: consider prefixing with an underscore: `_ledger_file_path` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `threads` [INFO] [stderr] --> src/main.rs:28:9 [INFO] [stderr] | [INFO] [stderr] 28 | let threads = match matches.value_of("threads") { [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_threads` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `vec` [INFO] [stderr] --> src/firechain/mod.rs:57:15 [INFO] [stderr] | [INFO] [stderr] 57 | Array(vec) => { [INFO] [stderr] | ^^^ help: consider prefixing with an underscore: `_vec` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `E` [INFO] [stderr] --> src/firechain/mod.rs:95:17 [INFO] [stderr] | [INFO] [stderr] 95 | Err(E) => fatal_error(format!("The file '{}' could not be opened.",s).as_str(),-1) [INFO] [stderr] | ^ help: consider prefixing with an underscore: `_E` [INFO] [stderr] [INFO] [stderr] warning: variable `is_record_request` is assigned to, but never used [INFO] [stderr] --> src/server.rs:52:13 [INFO] [stderr] | [INFO] [stderr] 52 | let mut is_record_request: bool; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: consider using `_is_record_request` instead [INFO] [stderr] [INFO] [stderr] warning: value assigned to `is_record_request` is never read [INFO] [stderr] --> src/server.rs:58:13 [INFO] [stderr] | [INFO] [stderr] 58 | is_record_request = match qpair.1.clone().into_owned().clone().as_str() { [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 does not need to be mutable [INFO] [stderr] --> src/firechain/mod.rs:86:13 [INFO] [stderr] | [INFO] [stderr] 86 | let mut file = File::open(s); [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: enum is never used: `FireChainStatus` [INFO] [stderr] --> src/firechain/enums.rs:1:1 [INFO] [stderr] | [INFO] [stderr] 1 | pub enum FireChainStatus { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: function is never used: `json_parse` [INFO] [stderr] --> src/firechain/parser.rs:6:1 [INFO] [stderr] | [INFO] [stderr] 6 | pub fn json_parse(input: &str) -> json::JsonValue { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `json_to_str` [INFO] [stderr] --> src/firechain/parser.rs:15:1 [INFO] [stderr] | [INFO] [stderr] 15 | pub fn json_to_str(input: json::JsonValue) -> String { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `ecdsa_check` [INFO] [stderr] --> src/firechain/crypto.rs:6:1 [INFO] [stderr] | [INFO] [stderr] 6 | pub fn ecdsa_check(key: &str, msg: &str, sig: &str) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `match_signature` [INFO] [stderr] --> src/firechain/crypto.rs:10:1 [INFO] [stderr] | [INFO] [stderr] 10 | pub fn match_signature(key_list: Vec, msg: &str, hash: &str) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `setup_interface` [INFO] [stderr] --> src/firechain/mod.rs:16:1 [INFO] [stderr] | [INFO] [stderr] 16 | pub fn setup_interface() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `chain_exists` [INFO] [stderr] --> src/firechain/mod.rs:20:1 [INFO] [stderr] | [INFO] [stderr] 20 | pub fn chain_exists(chain: &Handler) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Handler` [INFO] [stderr] --> src/firechain/mod.rs:28:1 [INFO] [stderr] | [INFO] [stderr] 28 | pub struct Handler { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Input` [INFO] [stderr] --> src/firechain/mod.rs:35:1 [INFO] [stderr] | [INFO] [stderr] 35 | pub struct Input { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Signature` [INFO] [stderr] --> src/firechain/mod.rs:39:1 [INFO] [stderr] | [INFO] [stderr] 39 | pub struct Signature { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `PKey` [INFO] [stderr] --> src/firechain/mod.rs:45:1 [INFO] [stderr] | [INFO] [stderr] 45 | pub struct PKey { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Transaction` [INFO] [stderr] --> src/firechain/mod.rs:49:1 [INFO] [stderr] | [INFO] [stderr] 49 | pub struct Transaction { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `json_read_ledger_file` [INFO] [stderr] --> src/firechain/mod.rs:55:1 [INFO] [stderr] | [INFO] [stderr] 55 | fn json_read_ledger_file(json_obj: JsonValue) -> (Vec,u32) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new_unknown` [INFO] [stderr] --> src/firechain/mod.rs:66:5 [INFO] [stderr] | [INFO] [stderr] 66 | pub fn new_unknown(input: Input) -> Handler { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `parse` [INFO] [stderr] --> src/firechain/mod.rs:75:5 [INFO] [stderr] | [INFO] [stderr] 75 | pub fn parse(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/firechain/mod.rs:85:5 [INFO] [stderr] | [INFO] [stderr] 85 | pub fn new(s: &str) -> Input { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_result` [INFO] [stderr] --> src/firechain/mod.rs:100:5 [INFO] [stderr] | [INFO] [stderr] 100 | pub fn get_result(&self) -> &str { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new_from_hash` [INFO] [stderr] --> src/firechain/mod.rs:106:5 [INFO] [stderr] | [INFO] [stderr] 106 | pub fn new_from_hash(hash: String, public_key_list: Vec, msg: String) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/firechain/mod.rs:113:5 [INFO] [stderr] | [INFO] [stderr] 113 | pub fn new(hash: String, msg: String, pkey: PKey) -> Signature { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_public` [INFO] [stderr] --> src/firechain/mod.rs:123:5 [INFO] [stderr] | [INFO] [stderr] 123 | pub fn get_public(&self) -> String { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `return_json` [INFO] [stderr] --> src/server.rs:39:1 [INFO] [stderr] | [INFO] [stderr] 39 | fn return_json(string: &str) -> Response>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `E` should have a snake case name [INFO] [stderr] --> src/firechain/parser.rs:10:13 [INFO] [stderr] | [INFO] [stderr] 10 | Err(E) => fatal_error(format!("The designated FireChain file has invalid JSON data: {}",E).as_str(),-1) [INFO] [stderr] | ^ help: convert the identifier to snake case: `e` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(non_snake_case)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/firechain/mod.rs:90:17 [INFO] [stderr] | [INFO] [stderr] 90 | file.read_to_string(& mut output); [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 `E` should have a snake case name [INFO] [stderr] --> src/firechain/mod.rs:95:17 [INFO] [stderr] | [INFO] [stderr] 95 | Err(E) => fatal_error(format!("The file '{}' could not be opened.",s).as_str(),-1) [INFO] [stderr] | ^ help: convert the identifier to snake case: `e` [INFO] [stderr] [INFO] [stderr] warning: unused import: `firechain` [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/main.rs:57:17 [INFO] [stderr] | [INFO] [stderr] 57 | rq.respond(response); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] --> src/server.rs:3:5 [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] 3 | use firechain; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `firechain::setup_interface` [INFO] [stderr] --> src/server.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use firechain::setup_interface; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `firechain::chain_exists` [INFO] [stderr] --> src/server.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use firechain::chain_exists; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `firechain::Handler` [INFO] [stderr] --> src/server.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use firechain::Handler; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `firechain::Input` [INFO] [stderr] --> src/server.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use firechain::Input; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::str::FromStr` [INFO] [stderr] --> src/server.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use std::str::FromStr; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Arg`, `SubCommand` [INFO] [stderr] --> src/main.rs:5:17 [INFO] [stderr] | [INFO] [stderr] 5 | use clap::{App, Arg, SubCommand, ArgMatches}; [INFO] [stderr] | ^^^ ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `ParseError` [INFO] [stderr] --> src/main.rs:14:16 [INFO] [stderr] | [INFO] [stderr] 14 | use url::{Url, ParseError}; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ledger_file_path` [INFO] [stderr] --> src/main.rs:18:9 [INFO] [stderr] | [INFO] [stderr] 18 | let ledger_file_path = match matches.value_of("dbpath") { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: consider prefixing with an underscore: `_ledger_file_path` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `threads` [INFO] [stderr] --> src/main.rs:28:9 [INFO] [stderr] | [INFO] [stderr] 28 | let threads = match matches.value_of("threads") { [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_threads` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `vec` [INFO] [stderr] --> src/firechain/mod.rs:57:15 [INFO] [stderr] | [INFO] [stderr] 57 | Array(vec) => { [INFO] [stderr] | ^^^ help: consider prefixing with an underscore: `_vec` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `E` [INFO] [stderr] --> src/firechain/mod.rs:95:17 [INFO] [stderr] | [INFO] [stderr] 95 | Err(E) => fatal_error(format!("The file '{}' could not be opened.",s).as_str(),-1) [INFO] [stderr] | ^ help: consider prefixing with an underscore: `_E` [INFO] [stderr] [INFO] [stderr] warning: variable `is_record_request` is assigned to, but never used [INFO] [stderr] --> src/server.rs:52:13 [INFO] [stderr] | [INFO] [stderr] 52 | let mut is_record_request: bool; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: consider using `_is_record_request` instead [INFO] [stderr] [INFO] [stderr] warning: value assigned to `is_record_request` is never read [INFO] [stderr] --> src/server.rs:58:13 [INFO] [stderr] | [INFO] [stderr] 58 | is_record_request = match qpair.1.clone().into_owned().clone().as_str() { [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 does not need to be mutable [INFO] [stderr] --> src/firechain/mod.rs:86:13 [INFO] [stderr] | [INFO] [stderr] 86 | let mut file = File::open(s); [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: enum is never used: `FireChainStatus` [INFO] [stderr] --> src/firechain/enums.rs:1:1 [INFO] [stderr] | [INFO] [stderr] 1 | pub enum FireChainStatus { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: function is never used: `json_parse` [INFO] [stderr] --> src/firechain/parser.rs:6:1 [INFO] [stderr] | [INFO] [stderr] 6 | pub fn json_parse(input: &str) -> json::JsonValue { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `json_to_str` [INFO] [stderr] --> src/firechain/parser.rs:15:1 [INFO] [stderr] | [INFO] [stderr] 15 | pub fn json_to_str(input: json::JsonValue) -> String { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `ecdsa_check` [INFO] [stderr] --> src/firechain/crypto.rs:6:1 [INFO] [stderr] | [INFO] [stderr] 6 | pub fn ecdsa_check(key: &str, msg: &str, sig: &str) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `match_signature` [INFO] [stderr] --> src/firechain/crypto.rs:10:1 [INFO] [stderr] | [INFO] [stderr] 10 | pub fn match_signature(key_list: Vec, msg: &str, hash: &str) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `setup_interface` [INFO] [stderr] --> src/firechain/mod.rs:16:1 [INFO] [stderr] | [INFO] [stderr] 16 | pub fn setup_interface() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `chain_exists` [INFO] [stderr] --> src/firechain/mod.rs:20:1 [INFO] [stderr] | [INFO] [stderr] 20 | pub fn chain_exists(chain: &Handler) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Handler` [INFO] [stderr] --> src/firechain/mod.rs:28:1 [INFO] [stderr] | [INFO] [stderr] 28 | pub struct Handler { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Input` [INFO] [stderr] --> src/firechain/mod.rs:35:1 [INFO] [stderr] | [INFO] [stderr] 35 | pub struct Input { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Signature` [INFO] [stderr] --> src/firechain/mod.rs:39:1 [INFO] [stderr] | [INFO] [stderr] 39 | pub struct Signature { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `PKey` [INFO] [stderr] --> src/firechain/mod.rs:45:1 [INFO] [stderr] | [INFO] [stderr] 45 | pub struct PKey { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Transaction` [INFO] [stderr] --> src/firechain/mod.rs:49:1 [INFO] [stderr] | [INFO] [stderr] 49 | pub struct Transaction { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `json_read_ledger_file` [INFO] [stderr] --> src/firechain/mod.rs:55:1 [INFO] [stderr] | [INFO] [stderr] 55 | fn json_read_ledger_file(json_obj: JsonValue) -> (Vec,u32) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new_unknown` [INFO] [stderr] --> src/firechain/mod.rs:66:5 [INFO] [stderr] | [INFO] [stderr] 66 | pub fn new_unknown(input: Input) -> Handler { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `parse` [INFO] [stderr] --> src/firechain/mod.rs:75:5 [INFO] [stderr] | [INFO] [stderr] 75 | pub fn parse(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/firechain/mod.rs:85:5 [INFO] [stderr] | [INFO] [stderr] 85 | pub fn new(s: &str) -> Input { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_result` [INFO] [stderr] --> src/firechain/mod.rs:100:5 [INFO] [stderr] | [INFO] [stderr] 100 | pub fn get_result(&self) -> &str { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new_from_hash` [INFO] [stderr] --> src/firechain/mod.rs:106:5 [INFO] [stderr] | [INFO] [stderr] 106 | pub fn new_from_hash(hash: String, public_key_list: Vec, msg: String) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/firechain/mod.rs:113:5 [INFO] [stderr] | [INFO] [stderr] 113 | pub fn new(hash: String, msg: String, pkey: PKey) -> Signature { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_public` [INFO] [stderr] --> src/firechain/mod.rs:123:5 [INFO] [stderr] | [INFO] [stderr] 123 | pub fn get_public(&self) -> String { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `return_json` [INFO] [stderr] --> src/server.rs:39:1 [INFO] [stderr] | [INFO] [stderr] 39 | fn return_json(string: &str) -> Response>> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `E` should have a snake case name [INFO] [stderr] --> src/firechain/parser.rs:10:13 [INFO] [stderr] | [INFO] [stderr] 10 | Err(E) => fatal_error(format!("The designated FireChain file has invalid JSON data: {}",E).as_str(),-1) [INFO] [stderr] | ^ help: convert the identifier to snake case: `e` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(non_snake_case)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/firechain/mod.rs:90:17 [INFO] [stderr] | [INFO] [stderr] 90 | file.read_to_string(& mut output); [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 `E` should have a snake case name [INFO] [stderr] --> src/firechain/mod.rs:95:17 [INFO] [stderr] | [INFO] [stderr] 95 | Err(E) => fatal_error(format!("The file '{}' could not be opened.",s).as_str(),-1) [INFO] [stderr] | ^ help: convert the identifier to snake case: `e` [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/main.rs:57:17 [INFO] [stderr] | [INFO] [stderr] 57 | rq.respond(response); [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 3.72s [INFO] running `"docker" "inspect" "6477ec903828ebe3b500ff33c1badbe3d1000c3020ba664cf23fd8d8bd5779ff"` [INFO] running `"docker" "rm" "-f" "6477ec903828ebe3b500ff33c1badbe3d1000c3020ba664cf23fd8d8bd5779ff"` [INFO] [stdout] 6477ec903828ebe3b500ff33c1badbe3d1000c3020ba664cf23fd8d8bd5779ff