[INFO] fetching crate buffett-core 0.1.1...
[INFO] checking buffett-core-0.1.1 against master#4d1bd0db7f489b22c6d8aa2385937a95412c015b for pr-114682
[INFO] extracting crate buffett-core 0.1.1 into /workspace/builds/worker-0-tc1/source
[INFO] validating manifest of crates.io crate buffett-core 0.1.1 on toolchain 4d1bd0db7f489b22c6d8aa2385937a95412c015b
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4d1bd0db7f489b22c6d8aa2385937a95412c015b" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate buffett-core 0.1.1
[INFO] finished tweaking crates.io crate buffett-core 0.1.1
[INFO] tweaked toml for crates.io crate buffett-core 0.1.1 written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4d1bd0db7f489b22c6d8aa2385937a95412c015b" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4d1bd0db7f489b22c6d8aa2385937a95412c015b" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded tokio-udp v0.1.6
[INFO] [stderr]   Downloaded byte-tools v0.2.0
[INFO] [stderr]   Downloaded digest v0.7.6
[INFO] [stderr]   Downloaded unicase v1.4.2
[INFO] [stderr]   Downloaded mio-uds v0.6.8
[INFO] [stderr]   Downloaded generic-array v0.9.1
[INFO] [stderr]   Downloaded bitconch-jsonrpc-pubsub v0.1.0
[INFO] [stderr]   Downloaded redox_users v0.3.5
[INFO] [stderr]   Downloaded serde_cbor v0.9.0
[INFO] [stderr]   Downloaded rust-argon2 v0.8.3
[INFO] [stderr]   Downloaded mime v0.2.6
[INFO] [stderr]   Downloaded untrusted v0.6.2
[INFO] [stderr]   Downloaded sys-info v0.5.10
[INFO] [stderr]   Downloaded tokio-codec v0.1.2
[INFO] [stderr]   Downloaded block-buffer v0.3.3
[INFO] [stderr]   Downloaded globset v0.4.14
[INFO] [stderr]   Downloaded tokio-uds v0.2.7
[INFO] [stderr]   Downloaded sha2 v0.7.1
[INFO] [stderr]   Downloaded hyper v0.10.16
[INFO] [stderr]   Downloaded typeable v0.1.2
[INFO] [stderr]   Downloaded nix v0.11.1
[INFO] [stderr]   Downloaded itertools v0.7.11
[INFO] [stderr]   Downloaded ring v0.13.5
[INFO] [stderr]   Downloaded parking_lot v0.6.4
[INFO] [stderr]   Downloaded blake2b_simd v0.5.11
[INFO] [stderr]   Downloaded pnet_datalink v0.21.0
[INFO] [stderr]   Downloaded base64 v0.9.3
[INFO] [stderr]   Downloaded bs58 v0.2.5
[INFO] [stderr]   Downloaded tokio-fs v0.1.7
[INFO] [stderr]   Downloaded owning_ref v0.4.1
[INFO] [stderr]   Downloaded bitconch-jsonrpc-server-utils v0.1.0
[INFO] [stderr]   Downloaded lock_api v0.1.5
[INFO] [stderr]   Downloaded parking_lot_core v0.3.1
[INFO] [stderr]   Downloaded env_logger v0.5.13
[INFO] [stderr]   Downloaded bitconch-jsonrpc-core v0.1.0
[INFO] [stderr]   Downloaded buffett-budget v0.1.2
[INFO] [stderr]   Downloaded buffett-timing v0.1.1
[INFO] [stderr]   Downloaded language-tags v0.2.2
[INFO] [stderr]   Downloaded traitobject v0.1.0
[INFO] [stderr]   Downloaded hyper-native-tls v0.3.0
[INFO] [stderr]   Downloaded buffett-interface v0.1.0
[INFO] [stderr]   Downloaded dirs v1.0.5
[INFO] [stderr]   Downloaded safemem v0.3.3
[INFO] [stderr]   Downloaded bitconch-jsonrpc-http-server v0.1.0
[INFO] [stderr]   Downloaded antidote v1.0.0
[INFO] [stderr]   Downloaded rand v0.5.6
[INFO] [stderr]   Downloaded pnet_base v0.21.0
[INFO] [stderr]   Downloaded buffett-metrics v0.1.3
[INFO] [stderr]   Downloaded ipnetwork v0.12.8
[INFO] [stderr]   Downloaded pnet_sys v0.21.0
[INFO] [stderr]   Downloaded buffett-crypto v0.1.1
[INFO] [stderr]   Downloaded bitconch-jsonrpc-macros v0.1.0
[INFO] [stderr]   Downloaded influx_db_client v0.3.6
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+4d1bd0db7f489b22c6d8aa2385937a95412c015b" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 25666a7822c5e23d8fd400bacd6402b9896c469b14e91642ea6112bf5e30fcfd
[INFO] running `Command { std: "docker" "start" "-a" "25666a7822c5e23d8fd400bacd6402b9896c469b14e91642ea6112bf5e30fcfd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "25666a7822c5e23d8fd400bacd6402b9896c469b14e91642ea6112bf5e30fcfd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "25666a7822c5e23d8fd400bacd6402b9896c469b14e91642ea6112bf5e30fcfd", kill_on_drop: false }`
[INFO] [stdout] 25666a7822c5e23d8fd400bacd6402b9896c469b14e91642ea6112bf5e30fcfd
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+4d1bd0db7f489b22c6d8aa2385937a95412c015b" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 92b28f97802e537fa9bb1bf593c0875c60237b0910b26a57a4c03a46dbb1b0d7
[INFO] running `Command { std: "docker" "start" "-a" "92b28f97802e537fa9bb1bf593c0875c60237b0910b26a57a4c03a46dbb1b0d7", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.151
[INFO] [stderr]    Compiling proc-macro2 v1.0.71
[INFO] [stderr]     Checking cfg-if v0.1.10
[INFO] [stderr]     Checking byteorder v1.5.0
[INFO] [stderr]     Checking futures v0.1.31
[INFO] [stderr]    Compiling semver-parser v0.7.0
[INFO] [stderr]    Compiling maybe-uninit v2.0.0
[INFO] [stderr]     Checking either v1.9.0
[INFO] [stderr]     Checking rand_core v0.4.2
[INFO] [stderr]    Compiling crossbeam-utils v0.7.2
[INFO] [stderr]     Checking unicode-bidi v0.3.14
[INFO] [stderr]    Compiling memoffset v0.5.6
[INFO] [stderr]     Checking matches v0.1.10
[INFO] [stderr]     Checking unicode-normalization v0.1.22
[INFO] [stderr]    Compiling pkg-config v0.3.28
[INFO] [stderr]    Compiling crossbeam-epoch v0.8.2
[INFO] [stderr]     Checking lock_api v0.3.4
[INFO] [stderr]     Checking itoa v1.0.10
[INFO] [stderr]     Checking rand_core v0.3.1
[INFO] [stderr]     Checking ryu v1.0.16
[INFO] [stderr]    Compiling semver v0.9.0
[INFO] [stderr]    Compiling unicase v2.7.0
[INFO] [stderr]    Compiling typenum v1.17.0
[INFO] [stderr]     Checking percent-encoding v1.0.1
[INFO] [stderr]     Checking itoa v0.4.8
[INFO] [stderr]    Compiling openssl v0.10.62
[INFO] [stderr]    Compiling memoffset v0.9.0
[INFO] [stderr]    Compiling rustc_version v0.2.3
[INFO] [stderr]    Compiling indexmap v1.9.3
[INFO] [stderr]    Compiling crossbeam-utils v0.8.17
[INFO] [stderr]     Checking smallvec v0.6.14
[INFO] [stderr]     Checking once_cell v1.19.0
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking idna v0.1.5
[INFO] [stderr]    Compiling unicase v1.4.2
[INFO] [stderr]    Compiling parking_lot_core v0.6.3
[INFO] [stderr]    Compiling parking_lot v0.9.0
[INFO] [stderr]     Checking hashbrown v0.12.3
[INFO] [stderr]     Checking adler v1.0.2
[INFO] [stderr]     Checking miniz_oxide v0.7.1
[INFO] [stderr]     Checking regex-automata v0.4.3
[INFO] [stderr]     Checking crossbeam-queue v0.2.3
[INFO] [stderr]    Compiling quote v1.0.33
[INFO] [stderr]    Compiling parking_lot_core v0.3.1
[INFO] [stderr]    Compiling hyper v0.12.36
[INFO] [stderr]     Checking log v0.3.9
[INFO] [stderr]     Checking try-lock v0.2.5
[INFO] [stderr]    Compiling unicode-xid v0.2.4
[INFO] [stderr]     Checking crossbeam-deque v0.7.4
[INFO] [stderr]     Checking stable_deref_trait v1.2.0
[INFO] [stderr]     Checking gimli v0.28.1
[INFO] [stderr]    Compiling syn v2.0.42
[INFO] [stderr]     Checking url v1.7.2
[INFO] [stderr]    Compiling failure_derive v0.1.8
[INFO] [stderr]     Checking safemem v0.3.3
[INFO] [stderr]     Checking tokio-executor v0.1.10
[INFO] [stderr]     Checking tokio-sync v0.1.8
[INFO] [stderr]     Checking want v0.2.0
[INFO] [stderr]     Checking crossbeam-epoch v0.9.16
[INFO] [stderr]     Checking base64 v0.9.3
[INFO] [stderr]     Checking owning_ref v0.4.1
[INFO] [stderr]     Checking mime v0.2.6
[INFO] [stderr]     Checking tokio-current-thread v0.1.7
[INFO] [stderr]     Checking tokio-timer v0.2.13
[INFO] [stderr]    Compiling rand_chacha v0.1.1
[INFO] [stderr]    Compiling rand_pcg v0.1.2
[INFO] [stderr]     Checking idna v0.5.0
[INFO] [stderr]     Checking object v0.32.1
[INFO] [stderr]     Checking language-tags v0.2.2
[INFO] [stderr]     Checking scopeguard v0.3.3
[INFO] [stderr]     Checking typeable v0.1.2
[INFO] [stderr]    Compiling rayon-core v1.12.0
[INFO] [stderr]     Checking traitobject v0.1.0
[INFO] [stderr]     Checking rustc-demangle v0.1.23
[INFO] [stderr]    Compiling mime_guess v2.0.4
[INFO] [stderr]     Checking lock_api v0.1.5
[INFO] [stderr]    Compiling rand v0.6.5
[INFO] [stderr]     Checking crossbeam-deque v0.8.4
[INFO] [stderr]     Checking idna v0.2.3
[INFO] [stderr]     Checking rand_hc v0.1.0
[INFO] [stderr]     Checking generic-array v0.9.1
[INFO] [stderr]     Checking rand_isaac v0.1.1
[INFO] [stderr]     Checking rand_xorshift v0.1.1
[INFO] [stderr]     Checking rand_jitter v0.1.4
[INFO] [stderr]     Checking bstr v1.8.0
[INFO] [stderr]     Checking arrayref v0.3.7
[INFO] [stderr]     Checking antidote v1.0.0
[INFO] [stderr]     Checking byte-tools v0.2.0
[INFO] [stderr]     Checking bs58 v0.2.5
[INFO] [stderr]     Checking digest v0.7.6
[INFO] [stderr]     Checking url v2.5.0
[INFO] [stderr]     Checking try_from v0.3.2
[INFO] [stderr]    Compiling nix v0.11.1
[INFO] [stderr]     Checking block-buffer v0.3.3
[INFO] [stderr]     Checking iovec v0.1.4
[INFO] [stderr]     Checking num_cpus v1.16.0
[INFO] [stderr]     Checking bytes v0.4.12
[INFO] [stderr]     Checking net2 v0.2.39
[INFO] [stderr]    Compiling cc v1.0.83
[INFO] [stderr]     Checking time v0.1.45
[INFO] [stderr]     Checking tokio-threadpool v0.1.18
[INFO] [stderr]     Checking rand v0.5.6
[INFO] [stderr]     Checking futures-cpupool v0.1.8
[INFO] [stderr]     Checking mio v0.6.23
[INFO] [stderr]     Checking rand_os v0.1.3
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking tokio-io v0.1.13
[INFO] [stderr]     Checking http v0.1.21
[INFO] [stderr]     Checking tokio-buf v0.1.1
[INFO] [stderr]     Checking string v0.2.1
[INFO] [stderr]     Checking hyper v0.10.16
[INFO] [stderr]     Checking publicsuffix v1.5.6
[INFO] [stderr]     Checking cookie v0.12.0
[INFO] [stderr]     Checking half v1.8.2
[INFO] [stderr]     Checking fake-simd v0.1.2
[INFO] [stderr]     Checking dtoa v0.4.8
[INFO] [stderr]     Checking untrusted v0.6.2
[INFO] [stderr]     Checking sha2 v0.7.1
[INFO] [stderr]     Checking tokio-codec v0.1.2
[INFO] [stderr]     Checking tokio-fs v0.1.7
[INFO] [stderr]     Checking rayon v1.8.0
[INFO] [stderr]     Checking pnet_sys v0.21.0
[INFO] [stderr]     Checking humantime v1.3.0
[INFO] [stderr]     Checking tokio-reactor v0.1.12
[INFO] [stderr]     Checking mio-uds v0.6.8
[INFO] [stderr]     Checking flate2 v1.0.28
[INFO] [stderr]     Checking globset v0.4.14
[INFO] [stderr]     Checking regex v1.10.2
[INFO] [stderr]     Checking base64 v0.10.1
[INFO] [stderr]     Checking void v1.0.2
[INFO] [stderr]     Checking tokio-tcp v0.1.4
[INFO] [stderr]     Checking tokio-uds v0.2.7
[INFO] [stderr]     Checking tokio-udp v0.1.6
[INFO] [stderr]     Checking uuid v0.7.4
[INFO] [stderr]     Checking buffett-timing v0.1.1
[INFO] [stderr]     Checking ipnetwork v0.12.8
[INFO] [stderr]     Checking pnet_base v0.21.0
[INFO] [stderr]     Checking env_logger v0.5.13
[INFO] [stderr]     Checking parking_lot v0.6.4
[INFO] [stderr]     Checking clap v2.34.0
[INFO] [stderr]     Checking tokio v0.1.22
[INFO] [stderr]     Checking pnet_datalink v0.21.0
[INFO] [stderr]     Checking dirs v1.0.5
[INFO] [stderr]     Checking addr2line v0.21.0
[INFO] [stderr]     Checking socket2 v0.3.19
[INFO] [stderr]     Checking getopts v0.2.21
[INFO] [stderr]     Checking itertools v0.7.11
[INFO] [stderr]    Compiling synstructure v0.12.6
[INFO] [stderr]    Compiling openssl-sys v0.9.98
[INFO] [stderr]    Compiling backtrace v0.3.69
[INFO] [stderr]    Compiling ring v0.13.5
[INFO] [stderr]    Compiling sys-info v0.5.10
[INFO] [stderr]    Compiling libloading v0.5.2
[INFO] [stderr]     Checking h2 v0.1.26
[INFO] [stderr]     Checking http-body v0.1.0
[INFO] [stderr]    Compiling native-tls v0.2.11
[INFO] [stderr]    Compiling serde_derive v1.0.193
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]     Checking failure v0.1.8
[INFO] [stderr]     Checking serde v1.0.193
[INFO] [stderr]     Checking hyper-native-tls v0.3.0
[INFO] [stderr]     Checking hyper-tls v0.3.2
[INFO] [stderr]     Checking serde_json v1.0.108
[INFO] [stderr]     Checking bincode v1.3.3
[INFO] [stderr]     Checking generic-array v0.12.4
[INFO] [stderr]     Checking chrono v0.4.31
[INFO] [stderr]     Checking serde_cbor v0.9.0
[INFO] [stderr]     Checking serde_urlencoded v0.5.5
[INFO] [stderr]     Checking buffett-interface v0.1.0
[INFO] [stderr]     Checking bitconch-jsonrpc-core v0.1.0
[INFO] [stderr]     Checking influx_db_client v0.3.6
[INFO] [stderr]     Checking cookie_store v0.7.0
[INFO] [stderr]     Checking buffett-crypto v0.1.1
[INFO] [stderr]     Checking buffett-metrics v0.1.3
[INFO] [stderr]     Checking reqwest v0.9.24
[INFO] [stderr]     Checking bitconch-jsonrpc-server-utils v0.1.0
[INFO] [stderr]     Checking bitconch-jsonrpc-pubsub v0.1.0
[INFO] [stderr]     Checking buffett-budget v0.1.2
[INFO] [stderr]     Checking bitconch-jsonrpc-macros v0.1.0
[INFO] [stderr]     Checking bitconch-jsonrpc-http-server v0.1.0
[INFO] [stderr]     Checking buffett-core v0.1.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]     --> src/crdt.rs:1205:10
[INFO] [stdout]      |
[INFO] [stdout] 1205 |         };
[INFO] [stdout]      |          ^ help: remove this semicolon
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/fullnode.rs:493:34
[INFO] [stdout]     |
[INFO] [stdout] 493 |     pub fn close(self) -> Result<(Option<FullnodeReturnType>)> {
[INFO] [stdout]     |                                  ^                          ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 493 -     pub fn close(self) -> Result<(Option<FullnodeReturnType>)> {
[INFO] [stdout] 493 +     pub fn close(self) -> Result<Option<FullnodeReturnType>> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/packet.rs:26:30
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub const BLOB_SIZE: usize = (64 * 1024 - 128); // wikipedia says there should be 20b for ipv4 headers
[INFO] [stdout]    |                              ^               ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 26 - pub const BLOB_SIZE: usize = (64 * 1024 - 128); // wikipedia says there should be 20b for ipv4 headers
[INFO] [stdout] 26 + pub const BLOB_SIZE: usize = 64 * 1024 - 128; // wikipedia says there should be 20b for ipv4 headers
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/replicate_stage.rs:101:50
[INFO] [stdout]     |
[INFO] [stdout] 101 |                 let _exit = Finalizer::new(exit);;
[INFO] [stdout]     |                                                  ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:100:39
[INFO] [stdout]     |
[INFO] [stdout] 100 |         fn confirm_transaction(&self, Self::Metadata, String) -> Result<bool>;
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Metadata`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]     = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:100:55
[INFO] [stdout]     |
[INFO] [stdout] 100 |         fn confirm_transaction(&self, Self::Metadata, String) -> Result<bool>;
[INFO] [stdout]     |                                                       ^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: String`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:103:36
[INFO] [stdout]     |
[INFO] [stdout] 103 |         fn get_account_info(&self, Self::Metadata, String) -> Result<Account>;
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Metadata`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:103:52
[INFO] [stdout]     |
[INFO] [stdout] 103 |         fn get_account_info(&self, Self::Metadata, String) -> Result<Account>;
[INFO] [stdout]     |                                                    ^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: String`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:106:31
[INFO] [stdout]     |
[INFO] [stdout] 106 |         fn get_balance(&self, Self::Metadata, String) -> Result<i64>;
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Metadata`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:106:47
[INFO] [stdout]     |
[INFO] [stdout] 106 |         fn get_balance(&self, Self::Metadata, String) -> Result<i64>;
[INFO] [stdout]     |                                               ^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: String`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:109:32
[INFO] [stdout]     |
[INFO] [stdout] 109 |         fn get_finality(&self, Self::Metadata) -> Result<usize>;
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Metadata`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:112:31
[INFO] [stdout]     |
[INFO] [stdout] 112 |         fn get_last_id(&self, Self::Metadata) -> Result<String>;
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Metadata`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:115:40
[INFO] [stdout]     |
[INFO] [stdout] 115 |         fn get_signature_status(&self, Self::Metadata, String) -> Result<RpcSignatureStatus>;
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Metadata`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:115:56
[INFO] [stdout]     |
[INFO] [stdout] 115 |         fn get_signature_status(&self, Self::Metadata, String) -> Result<RpcSignatureStatus>;
[INFO] [stdout]     |                                                        ^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: String`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:118:41
[INFO] [stdout]     |
[INFO] [stdout] 118 |         fn get_transaction_count(&self, Self::Metadata) -> Result<u64>;
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Metadata`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:121:35
[INFO] [stdout]     |
[INFO] [stdout] 121 |         fn request_airdrop(&self, Self::Metadata, String, u64) -> Result<String>;
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Metadata`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:121:51
[INFO] [stdout]     |
[INFO] [stdout] 121 |         fn request_airdrop(&self, Self::Metadata, String, u64) -> Result<String>;
[INFO] [stdout]     |                                                   ^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: String`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:121:59
[INFO] [stdout]     |
[INFO] [stdout] 121 |         fn request_airdrop(&self, Self::Metadata, String, u64) -> Result<String>;
[INFO] [stdout]     |                                                           ^^^ help: try naming the parameter or explicitly ignoring it: `_: u64`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:124:36
[INFO] [stdout]     |
[INFO] [stdout] 124 |         fn send_transaction(&self, Self::Metadata, Vec<u8>) -> Result<String>;
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Metadata`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:124:52
[INFO] [stdout]     |
[INFO] [stdout] 124 |         fn send_transaction(&self, Self::Metadata, Vec<u8>) -> Result<String>;
[INFO] [stdout]     |                                                    ^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Vec<u8>`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/tpu.rs:81:37
[INFO] [stdout]    |
[INFO] [stdout] 81 |     fn join(self) -> thread::Result<(Option<TpuReturnType>)> {
[INFO] [stdout]    |                                     ^                     ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 81 -     fn join(self) -> thread::Result<(Option<TpuReturnType>)> {
[INFO] [stdout] 81 +     fn join(self) -> thread::Result<Option<TpuReturnType>> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `tmp_ledger_path` in this scope
[INFO] [stdout]    --> src/ledger.rs:550:16
[INFO] [stdout]     |
[INFO] [stdout] 550 |     let path = tmp_ledger_path(name);
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] note: function `token_service::tests::tmp_ledger_path` exists but is inaccessible
[INFO] [stdout]    --> src/token_service.rs:312:5
[INFO] [stdout]     |
[INFO] [stdout] 312 |     fn tmp_ledger_path(name: &str) -> String {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not accessible
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `tmp_ledger_path` in this scope
[INFO] [stdout]    --> src/ledger.rs:724:27
[INFO] [stdout]     |
[INFO] [stdout] 724 |         let ledger_path = tmp_ledger_path("test_ledger_reader_writer");
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] note: function `token_service::tests::tmp_ledger_path` exists but is inaccessible
[INFO] [stdout]    --> src/token_service.rs:312:5
[INFO] [stdout]     |
[INFO] [stdout] 312 |     fn tmp_ledger_path(name: &str) -> String {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not accessible
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `tmp_ledger_path` in this scope
[INFO] [stdout]    --> src/ledger.rs:804:27
[INFO] [stdout]     |
[INFO] [stdout] 804 |         let ledger_path = tmp_ledger_path("test_recover_ledger");
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] note: function `token_service::tests::tmp_ledger_path` exists but is inaccessible
[INFO] [stdout]    --> src/token_service.rs:312:5
[INFO] [stdout]     |
[INFO] [stdout] 312 |     fn tmp_ledger_path(name: &str) -> String {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not accessible
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `tmp_ledger_path` in this scope
[INFO] [stdout]    --> src/ledger.rs:855:27
[INFO] [stdout]     |
[INFO] [stdout] 855 |         let ledger_path = tmp_ledger_path("test_verify_ledger");
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] note: function `token_service::tests::tmp_ledger_path` exists but is inaccessible
[INFO] [stdout]    --> src/token_service.rs:312:5
[INFO] [stdout]     |
[INFO] [stdout] 312 |     fn tmp_ledger_path(name: &str) -> String {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not accessible
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]     --> src/crdt.rs:1205:10
[INFO] [stdout]      |
[INFO] [stdout] 1205 |         };
[INFO] [stdout]      |          ^ help: remove this semicolon
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/fullnode.rs:493:34
[INFO] [stdout]     |
[INFO] [stdout] 493 |     pub fn close(self) -> Result<(Option<FullnodeReturnType>)> {
[INFO] [stdout]     |                                  ^                          ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 493 -     pub fn close(self) -> Result<(Option<FullnodeReturnType>)> {
[INFO] [stdout] 493 +     pub fn close(self) -> Result<Option<FullnodeReturnType>> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Keypair`
[INFO] [stdout]   --> src/ledger.rs:17:33
[INFO] [stdout]    |
[INFO] [stdout] 17 | use buffett_crypto::signature::{Keypair, KeypairUtil};
[INFO] [stdout]    |                                 ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `buffett_crypto::hash::Hash`
[INFO] [stdout]  --> src/packet.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use buffett_crypto::hash::Hash;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Block`, `next_entries_mut`
[INFO] [stdout]  --> src/packet.rs:7:21
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::ledger::{next_entries_mut, Block};
[INFO] [stdout]   |                     ^^^^^^^^^^^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/packet.rs:26:30
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub const BLOB_SIZE: usize = (64 * 1024 - 128); // wikipedia says there should be 20b for ipv4 headers
[INFO] [stdout]    |                              ^               ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 26 - pub const BLOB_SIZE: usize = (64 * 1024 - 128); // wikipedia says there should be 20b for ipv4 headers
[INFO] [stdout] 26 + pub const BLOB_SIZE: usize = 64 * 1024 - 128; // wikipedia says there should be 20b for ipv4 headers
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/replicate_stage.rs:101:50
[INFO] [stdout]     |
[INFO] [stdout] 101 |                 let _exit = Finalizer::new(exit);;
[INFO] [stdout]     |                                                  ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:100:39
[INFO] [stdout]     |
[INFO] [stdout] 100 |         fn confirm_transaction(&self, Self::Metadata, String) -> Result<bool>;
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Metadata`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]     = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:100:55
[INFO] [stdout]     |
[INFO] [stdout] 100 |         fn confirm_transaction(&self, Self::Metadata, String) -> Result<bool>;
[INFO] [stdout]     |                                                       ^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: String`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:103:36
[INFO] [stdout]     |
[INFO] [stdout] 103 |         fn get_account_info(&self, Self::Metadata, String) -> Result<Account>;
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Metadata`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:103:52
[INFO] [stdout]     |
[INFO] [stdout] 103 |         fn get_account_info(&self, Self::Metadata, String) -> Result<Account>;
[INFO] [stdout]     |                                                    ^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: String`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:106:31
[INFO] [stdout]     |
[INFO] [stdout] 106 |         fn get_balance(&self, Self::Metadata, String) -> Result<i64>;
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Metadata`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:106:47
[INFO] [stdout]     |
[INFO] [stdout] 106 |         fn get_balance(&self, Self::Metadata, String) -> Result<i64>;
[INFO] [stdout]     |                                               ^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: String`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:109:32
[INFO] [stdout]     |
[INFO] [stdout] 109 |         fn get_finality(&self, Self::Metadata) -> Result<usize>;
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Metadata`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:112:31
[INFO] [stdout]     |
[INFO] [stdout] 112 |         fn get_last_id(&self, Self::Metadata) -> Result<String>;
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Metadata`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:115:40
[INFO] [stdout]     |
[INFO] [stdout] 115 |         fn get_signature_status(&self, Self::Metadata, String) -> Result<RpcSignatureStatus>;
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Metadata`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:115:56
[INFO] [stdout]     |
[INFO] [stdout] 115 |         fn get_signature_status(&self, Self::Metadata, String) -> Result<RpcSignatureStatus>;
[INFO] [stdout]     |                                                        ^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: String`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:118:41
[INFO] [stdout]     |
[INFO] [stdout] 118 |         fn get_transaction_count(&self, Self::Metadata) -> Result<u64>;
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Metadata`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:121:35
[INFO] [stdout]     |
[INFO] [stdout] 121 |         fn request_airdrop(&self, Self::Metadata, String, u64) -> Result<String>;
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Metadata`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:121:51
[INFO] [stdout]     |
[INFO] [stdout] 121 |         fn request_airdrop(&self, Self::Metadata, String, u64) -> Result<String>;
[INFO] [stdout]     |                                                   ^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: String`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:121:59
[INFO] [stdout]     |
[INFO] [stdout] 121 |         fn request_airdrop(&self, Self::Metadata, String, u64) -> Result<String>;
[INFO] [stdout]     |                                                           ^^^ help: try naming the parameter or explicitly ignoring it: `_: u64`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:124:36
[INFO] [stdout]     |
[INFO] [stdout] 124 |         fn send_transaction(&self, Self::Metadata, Vec<u8>) -> Result<String>;
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Metadata`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:124:52
[INFO] [stdout]     |
[INFO] [stdout] 124 |         fn send_transaction(&self, Self::Metadata, Vec<u8>) -> Result<String>;
[INFO] [stdout]     |                                                    ^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Vec<u8>`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/tpu.rs:81:37
[INFO] [stdout]    |
[INFO] [stdout] 81 |     fn join(self) -> thread::Result<(Option<TpuReturnType>)> {
[INFO] [stdout]    |                                     ^                     ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 81 -     fn join(self) -> thread::Result<(Option<TpuReturnType>)> {
[INFO] [stdout] 81 +     fn join(self) -> thread::Result<Option<TpuReturnType>> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]  --> src/logger.rs:1:23
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::sync::{Once, ONCE_INIT};
[INFO] [stdout]   |                       ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]  --> src/logger.rs:4:21
[INFO] [stdout]   |
[INFO] [stdout] 4 | static INIT: Once = ONCE_INIT;
[INFO] [stdout]   |                     ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: replace the use of the deprecated constant
[INFO] [stdout]   |
[INFO] [stdout] 4 | static INIT: Once = Once::new();
[INFO] [stdout]   |                     ~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/choose_gossip_peer_strategy.rs:16:17
[INFO] [stdout]    |
[INFO] [stdout] 16 |     random: &'a Fn() -> u64,
[INFO] [stdout]    |                 ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 16 |     random: &'a dyn Fn() -> u64,
[INFO] [stdout]    |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/choose_gossip_peer_strategy.rs:44:20
[INFO] [stdout]    |
[INFO] [stdout] 44 |     get_stake: &'a Fn(Pubkey) -> f64,
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 44 |     get_stake: &'a dyn Fn(Pubkey) -> f64,
[INFO] [stdout]    |                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/result.rs:16:19
[INFO] [stdout]    |
[INFO] [stdout] 16 |     JoinError(Box<Any + Send + 'static>),
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 16 |     JoinError(Box<dyn Any + Send + 'static>),
[INFO] [stdout]    |                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/choose_gossip_peer_strategy.rs:21:28
[INFO] [stdout]    |
[INFO] [stdout] 21 |     pub fn new(random: &'a Fn() -> u64) -> Self {
[INFO] [stdout]    |                            ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 21 |     pub fn new(random: &'a dyn Fn() -> u64) -> Self {
[INFO] [stdout]    |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/choose_gossip_peer_strategy.rs:51:24
[INFO] [stdout]    |
[INFO] [stdout] 51 |         get_stake: &'a Fn(Pubkey) -> f64,
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 51 |         get_stake: &'a dyn Fn(Pubkey) -> f64,
[INFO] [stdout]    |                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/result.rs:69:29
[INFO] [stdout]    |
[INFO] [stdout] 69 | impl std::convert::From<Box<Any + Send + 'static>> for Error {
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 69 | impl std::convert::From<Box<dyn Any + Send + 'static>> for Error {
[INFO] [stdout]    |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/result.rs:70:20
[INFO] [stdout]    |
[INFO] [stdout] 70 |     fn from(e: Box<Any + Send + 'static>) -> Error {
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 70 |     fn from(e: Box<dyn Any + Send + 'static>) -> Error {
[INFO] [stdout]    |                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wallet.rs:100:32
[INFO] [stdout]     |
[INFO] [stdout] 100 | ) -> Result<WalletCommand, Box<error::Error>> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 100 | ) -> Result<WalletCommand, Box<dyn error::Error>> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wallet.rs:281:69
[INFO] [stdout]     |
[INFO] [stdout] 281 | pub fn process_command(config: &WalletConfig) -> Result<String, Box<error::Error>> {
[INFO] [stdout]     |                                                                     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 281 | pub fn process_command(config: &WalletConfig) -> Result<String, Box<dyn error::Error>> {
[INFO] [stdout]     |                                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wallet.rs:567:64
[INFO] [stdout]     |
[INFO] [stdout] 567 | pub fn gen_keypair_file(outfile: String) -> Result<String, Box<error::Error>> {
[INFO] [stdout]     |                                                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 567 | pub fn gen_keypair_file(outfile: String) -> Result<String, Box<dyn error::Error>> {
[INFO] [stdout]     |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wallet.rs:635:59
[INFO] [stdout]     |
[INFO] [stdout] 635 | fn get_last_id(config: &WalletConfig) -> Result<Hash, Box<error::Error>> {
[INFO] [stdout]     |                                                           ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 635 | fn get_last_id(config: &WalletConfig) -> Result<Hash, Box<dyn error::Error>> {
[INFO] [stdout]     |                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wallet.rs:652:25
[INFO] [stdout]     |
[INFO] [stdout] 652 | ) -> Result<String, Box<error::Error>> {
[INFO] [stdout]     |                         ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 652 | ) -> Result<String, Box<dyn error::Error>> {
[INFO] [stdout]     |                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/wallet.rs:70:32
[INFO] [stdout]    |
[INFO] [stdout] 70 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 70 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wallet.rs:598:28
[INFO] [stdout]     |
[INFO] [stdout] 598 |     ) -> Result<Value, Box<error::Error>> {
[INFO] [stdout]     |                            ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 598 |     ) -> Result<Value, Box<dyn error::Error>> {
[INFO] [stdout]     |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]  --> src/logger.rs:1:23
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::sync::{Once, ONCE_INIT};
[INFO] [stdout]   |                       ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]  --> src/logger.rs:4:21
[INFO] [stdout]   |
[INFO] [stdout] 4 | static INIT: Once = ONCE_INIT;
[INFO] [stdout]   |                     ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: replace the use of the deprecated constant
[INFO] [stdout]   |
[INFO] [stdout] 4 | static INIT: Once = Once::new();
[INFO] [stdout]   |                     ~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/choose_gossip_peer_strategy.rs:16:17
[INFO] [stdout]    |
[INFO] [stdout] 16 |     random: &'a Fn() -> u64,
[INFO] [stdout]    |                 ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 16 |     random: &'a dyn Fn() -> u64,
[INFO] [stdout]    |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/choose_gossip_peer_strategy.rs:44:20
[INFO] [stdout]    |
[INFO] [stdout] 44 |     get_stake: &'a Fn(Pubkey) -> f64,
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 44 |     get_stake: &'a dyn Fn(Pubkey) -> f64,
[INFO] [stdout]    |                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/result.rs:16:19
[INFO] [stdout]    |
[INFO] [stdout] 16 |     JoinError(Box<Any + Send + 'static>),
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 16 |     JoinError(Box<dyn Any + Send + 'static>),
[INFO] [stdout]    |                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/choose_gossip_peer_strategy.rs:21:28
[INFO] [stdout]    |
[INFO] [stdout] 21 |     pub fn new(random: &'a Fn() -> u64) -> Self {
[INFO] [stdout]    |                            ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 21 |     pub fn new(random: &'a dyn Fn() -> u64) -> Self {
[INFO] [stdout]    |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/choose_gossip_peer_strategy.rs:51:24
[INFO] [stdout]    |
[INFO] [stdout] 51 |         get_stake: &'a Fn(Pubkey) -> f64,
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 51 |         get_stake: &'a dyn Fn(Pubkey) -> f64,
[INFO] [stdout]    |                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/result.rs:69:29
[INFO] [stdout]    |
[INFO] [stdout] 69 | impl std::convert::From<Box<Any + Send + 'static>> for Error {
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 69 | impl std::convert::From<Box<dyn Any + Send + 'static>> for Error {
[INFO] [stdout]    |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/result.rs:70:20
[INFO] [stdout]    |
[INFO] [stdout] 70 |     fn from(e: Box<Any + Send + 'static>) -> Error {
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 70 |     fn from(e: Box<dyn Any + Send + 'static>) -> Error {
[INFO] [stdout]    |                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wallet.rs:100:32
[INFO] [stdout]     |
[INFO] [stdout] 100 | ) -> Result<WalletCommand, Box<error::Error>> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 100 | ) -> Result<WalletCommand, Box<dyn error::Error>> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wallet.rs:281:69
[INFO] [stdout]     |
[INFO] [stdout] 281 | pub fn process_command(config: &WalletConfig) -> Result<String, Box<error::Error>> {
[INFO] [stdout]     |                                                                     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 281 | pub fn process_command(config: &WalletConfig) -> Result<String, Box<dyn error::Error>> {
[INFO] [stdout]     |                                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wallet.rs:567:64
[INFO] [stdout]     |
[INFO] [stdout] 567 | pub fn gen_keypair_file(outfile: String) -> Result<String, Box<error::Error>> {
[INFO] [stdout]     |                                                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 567 | pub fn gen_keypair_file(outfile: String) -> Result<String, Box<dyn error::Error>> {
[INFO] [stdout]     |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wallet.rs:635:59
[INFO] [stdout]     |
[INFO] [stdout] 635 | fn get_last_id(config: &WalletConfig) -> Result<Hash, Box<error::Error>> {
[INFO] [stdout]     |                                                           ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 635 | fn get_last_id(config: &WalletConfig) -> Result<Hash, Box<dyn error::Error>> {
[INFO] [stdout]     |                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wallet.rs:652:25
[INFO] [stdout]     |
[INFO] [stdout] 652 | ) -> Result<String, Box<error::Error>> {
[INFO] [stdout]     |                         ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 652 | ) -> Result<String, Box<dyn error::Error>> {
[INFO] [stdout]     |                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/wallet.rs:70:32
[INFO] [stdout]    |
[INFO] [stdout] 70 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 70 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wallet.rs:598:28
[INFO] [stdout]     |
[INFO] [stdout] 598 |     ) -> Result<Value, Box<error::Error>> {
[INFO] [stdout]     |                            ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 598 |     ) -> Result<Value, Box<dyn error::Error>> {
[INFO] [stdout]     |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/broadcast_stage.rs:70:9
[INFO] [stdout]    |
[INFO] [stdout] 70 |     for mut blobs in blobs_chunked {
[INFO] [stdout]    |         ----^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `KeypairUtil`
[INFO] [stdout]   --> src/ledger.rs:17:42
[INFO] [stdout]    |
[INFO] [stdout] 17 | use buffett_crypto::signature::{Keypair, KeypairUtil};
[INFO] [stdout]    |                                          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors; 41 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0425`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `buffett-core` (lib test) due to 5 previous errors; 41 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/packet.rs:209:13
[INFO] [stdout]     |
[INFO] [stdout] 209 |         let mut p = SharedPackets::default();
[INFO] [stdout]     |             ----^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/recvmmsg.rs:72:25
[INFO] [stdout]    |
[INFO] [stdout] 72 |                     let mut p = &mut packets[i];
[INFO] [stdout]    |                         ----^
[INFO] [stdout]    |                         |
[INFO] [stdout]    |                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `[u8]`, which is not FFI-safe
[INFO] [stdout]   --> src/dynamic_program.rs:44:19
[INFO] [stdout]    |
[INFO] [stdout] 44 | type Entrypoint = unsafe extern "C" fn(infos: &mut Vec<KeyedAccount>, data: &[u8]);
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a raw pointer instead
[INFO] [stdout]    = note: slices have no C equivalent
[INFO] [stdout]    = note: `#[warn(improper_ctypes_definitions)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 41 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "92b28f97802e537fa9bb1bf593c0875c60237b0910b26a57a4c03a46dbb1b0d7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "92b28f97802e537fa9bb1bf593c0875c60237b0910b26a57a4c03a46dbb1b0d7", kill_on_drop: false }`
[INFO] [stdout] 92b28f97802e537fa9bb1bf593c0875c60237b0910b26a57a4c03a46dbb1b0d7
[INFO] checking buffett-core-0.1.1 against try#785364c7e5e0804473a3fddfb579798ea14e3493 for pr-114682
[INFO] extracting crate buffett-core 0.1.1 into /workspace/builds/worker-0-tc2/source
[INFO] validating manifest of crates.io crate buffett-core 0.1.1 on toolchain 785364c7e5e0804473a3fddfb579798ea14e3493
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+785364c7e5e0804473a3fddfb579798ea14e3493" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate buffett-core 0.1.1
[INFO] finished tweaking crates.io crate buffett-core 0.1.1
[INFO] tweaked toml for crates.io crate buffett-core 0.1.1 written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+785364c7e5e0804473a3fddfb579798ea14e3493" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+785364c7e5e0804473a3fddfb579798ea14e3493" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+785364c7e5e0804473a3fddfb579798ea14e3493" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 7a287bd1520afb1a452ca5c1f5bd2bd5e0df07b248585d781b4b98ad6963ccf7
[INFO] running `Command { std: "docker" "start" "-a" "7a287bd1520afb1a452ca5c1f5bd2bd5e0df07b248585d781b4b98ad6963ccf7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "7a287bd1520afb1a452ca5c1f5bd2bd5e0df07b248585d781b4b98ad6963ccf7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7a287bd1520afb1a452ca5c1f5bd2bd5e0df07b248585d781b4b98ad6963ccf7", kill_on_drop: false }`
[INFO] [stdout] 7a287bd1520afb1a452ca5c1f5bd2bd5e0df07b248585d781b4b98ad6963ccf7
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+785364c7e5e0804473a3fddfb579798ea14e3493" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b39efaa93207cfaa691d3c8492e20f8b2761355dfb67b9101761b75f95997125
[INFO] running `Command { std: "docker" "start" "-a" "b39efaa93207cfaa691d3c8492e20f8b2761355dfb67b9101761b75f95997125", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.151
[INFO] [stderr]    Compiling proc-macro2 v1.0.71
[INFO] [stderr]     Checking cfg-if v0.1.10
[INFO] [stderr]     Checking byteorder v1.5.0
[INFO] [stderr]     Checking futures v0.1.31
[INFO] [stderr]    Compiling semver-parser v0.7.0
[INFO] [stderr]    Compiling maybe-uninit v2.0.0
[INFO] [stderr]     Checking either v1.9.0
[INFO] [stderr]     Checking rand_core v0.4.2
[INFO] [stderr]    Compiling crossbeam-utils v0.7.2
[INFO] [stderr]     Checking unicode-bidi v0.3.14
[INFO] [stderr]    Compiling memoffset v0.5.6
[INFO] [stderr]    Compiling pkg-config v0.3.28
[INFO] [stderr]     Checking unicode-normalization v0.1.22
[INFO] [stderr]     Checking matches v0.1.10
[INFO] [stderr]     Checking lock_api v0.3.4
[INFO] [stderr]    Compiling crossbeam-epoch v0.8.2
[INFO] [stderr]     Checking ryu v1.0.16
[INFO] [stderr]     Checking rand_core v0.3.1
[INFO] [stderr]     Checking itoa v1.0.10
[INFO] [stderr]    Compiling semver v0.9.0
[INFO] [stderr]    Compiling unicase v2.7.0
[INFO] [stderr]     Checking percent-encoding v1.0.1
[INFO] [stderr]    Compiling typenum v1.17.0
[INFO] [stderr]    Compiling openssl v0.10.62
[INFO] [stderr]     Checking itoa v0.4.8
[INFO] [stderr]    Compiling memoffset v0.9.0
[INFO] [stderr]    Compiling indexmap v1.9.3
[INFO] [stderr]    Compiling rustc_version v0.2.3
[INFO] [stderr]     Checking smallvec v0.6.14
[INFO] [stderr]     Checking once_cell v1.19.0
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking idna v0.1.5
[INFO] [stderr]    Compiling crossbeam-utils v0.8.17
[INFO] [stderr]    Compiling unicase v1.4.2
[INFO] [stderr]     Checking hashbrown v0.12.3
[INFO] [stderr]     Checking adler v1.0.2
[INFO] [stderr]    Compiling parking_lot_core v0.6.3
[INFO] [stderr]    Compiling parking_lot v0.9.0
[INFO] [stderr]     Checking regex-automata v0.4.3
[INFO] [stderr]     Checking miniz_oxide v0.7.1
[INFO] [stderr]    Compiling parking_lot_core v0.3.1
[INFO] [stderr]    Compiling hyper v0.12.36
[INFO] [stderr]     Checking crossbeam-queue v0.2.3
[INFO] [stderr]    Compiling quote v1.0.33
[INFO] [stderr]     Checking log v0.3.9
[INFO] [stderr]     Checking url v1.7.2
[INFO] [stderr]     Checking safemem v0.3.3
[INFO] [stderr]     Checking crossbeam-deque v0.7.4
[INFO] [stderr]    Compiling syn v2.0.42
[INFO] [stderr]    Compiling failure_derive v0.1.8
[INFO] [stderr]    Compiling unicode-xid v0.2.4
[INFO] [stderr]     Checking tokio-executor v0.1.10
[INFO] [stderr]     Checking tokio-sync v0.1.8
[INFO] [stderr]     Checking gimli v0.28.1
[INFO] [stderr]     Checking stable_deref_trait v1.2.0
[INFO] [stderr]     Checking try-lock v0.2.5
[INFO] [stderr]     Checking mime v0.2.6
[INFO] [stderr]     Checking owning_ref v0.4.1
[INFO] [stderr]     Checking want v0.2.0
[INFO] [stderr]     Checking tokio-current-thread v0.1.7
[INFO] [stderr]     Checking tokio-timer v0.2.13
[INFO] [stderr]     Checking base64 v0.9.3
[INFO] [stderr]     Checking crossbeam-epoch v0.9.16
[INFO] [stderr]    Compiling rand_chacha v0.1.1
[INFO] [stderr]    Compiling rand_pcg v0.1.2
[INFO] [stderr]     Checking idna v0.5.0
[INFO] [stderr]     Checking object v0.32.1
[INFO] [stderr]     Checking rustc-demangle v0.1.23
[INFO] [stderr]     Checking language-tags v0.2.2
[INFO] [stderr]     Checking traitobject v0.1.0
[INFO] [stderr]    Compiling rayon-core v1.12.0
[INFO] [stderr]     Checking scopeguard v0.3.3
[INFO] [stderr]     Checking typeable v0.1.2
[INFO] [stderr]    Compiling mime_guess v2.0.4
[INFO] [stderr]     Checking crossbeam-deque v0.8.4
[INFO] [stderr]     Checking lock_api v0.1.5
[INFO] [stderr]    Compiling rand v0.6.5
[INFO] [stderr]     Checking idna v0.2.3
[INFO] [stderr]     Checking rand_xorshift v0.1.1
[INFO] [stderr]     Checking rand_hc v0.1.0
[INFO] [stderr]     Checking generic-array v0.9.1
[INFO] [stderr]     Checking rand_isaac v0.1.1
[INFO] [stderr]     Checking rand_jitter v0.1.4
[INFO] [stderr]     Checking bstr v1.8.0
[INFO] [stderr]     Checking antidote v1.0.0
[INFO] [stderr]     Checking bs58 v0.2.5
[INFO] [stderr]     Checking url v2.5.0
[INFO] [stderr]     Checking arrayref v0.3.7
[INFO] [stderr]     Checking iovec v0.1.4
[INFO] [stderr]     Checking num_cpus v1.16.0
[INFO] [stderr]     Checking net2 v0.2.39
[INFO] [stderr]    Compiling cc v1.0.83
[INFO] [stderr]     Checking bytes v0.4.12
[INFO] [stderr]     Checking time v0.1.45
[INFO] [stderr]     Checking tokio-threadpool v0.1.18
[INFO] [stderr]     Checking rand v0.5.6
[INFO] [stderr]     Checking mio v0.6.23
[INFO] [stderr]     Checking futures-cpupool v0.1.8
[INFO] [stderr]     Checking hyper v0.10.16
[INFO] [stderr]     Checking rand_os v0.1.3
[INFO] [stderr]     Checking byte-tools v0.2.0
[INFO] [stderr]     Checking cookie v0.12.0
[INFO] [stderr]     Checking tokio-io v0.1.13
[INFO] [stderr]     Checking http v0.1.21
[INFO] [stderr]     Checking string v0.2.1
[INFO] [stderr]     Checking tokio-buf v0.1.1
[INFO] [stderr]     Checking publicsuffix v1.5.6
[INFO] [stderr]     Checking block-buffer v0.3.3
[INFO] [stderr]     Checking digest v0.7.6
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking try_from v0.3.2
[INFO] [stderr]    Compiling nix v0.11.1
[INFO] [stderr]     Checking fake-simd v0.1.2
[INFO] [stderr]     Checking tokio-codec v0.1.2
[INFO] [stderr]     Checking tokio-fs v0.1.7
[INFO] [stderr]     Checking dtoa v0.4.8
[INFO] [stderr]     Checking tokio-reactor v0.1.12
[INFO] [stderr]     Checking mio-uds v0.6.8
[INFO] [stderr]     Checking half v1.8.2
[INFO] [stderr]     Checking untrusted v0.6.2
[INFO] [stderr]     Checking sha2 v0.7.1
[INFO] [stderr]     Checking globset v0.4.14
[INFO] [stderr]     Checking regex v1.10.2
[INFO] [stderr]     Checking tokio-tcp v0.1.4
[INFO] [stderr]     Checking tokio-udp v0.1.6
[INFO] [stderr]     Checking tokio-uds v0.2.7
[INFO] [stderr]     Checking rayon v1.8.0
[INFO] [stderr]     Checking humantime v1.3.0
[INFO] [stderr]     Checking flate2 v1.0.28
[INFO] [stderr]     Checking parking_lot v0.6.4
[INFO] [stderr]     Checking uuid v0.7.4
[INFO] [stderr]     Checking pnet_sys v0.21.0
[INFO] [stderr]     Checking tokio v0.1.22
[INFO] [stderr]     Checking base64 v0.10.1
[INFO] [stderr]     Checking pnet_base v0.21.0
[INFO] [stderr]     Checking ipnetwork v0.12.8
[INFO] [stderr]     Checking buffett-timing v0.1.1
[INFO] [stderr]     Checking void v1.0.2
[INFO] [stderr]     Checking env_logger v0.5.13
[INFO] [stderr]     Checking clap v2.34.0
[INFO] [stderr]    Compiling synstructure v0.12.6
[INFO] [stderr]     Checking pnet_datalink v0.21.0
[INFO] [stderr]     Checking dirs v1.0.5
[INFO] [stderr]    Compiling openssl-sys v0.9.98
[INFO] [stderr]    Compiling backtrace v0.3.69
[INFO] [stderr]    Compiling sys-info v0.5.10
[INFO] [stderr]    Compiling ring v0.13.5
[INFO] [stderr]     Checking addr2line v0.21.0
[INFO] [stderr]    Compiling libloading v0.5.2
[INFO] [stderr]     Checking socket2 v0.3.19
[INFO] [stderr]     Checking getopts v0.2.21
[INFO] [stderr]     Checking itertools v0.7.11
[INFO] [stderr]     Checking http-body v0.1.0
[INFO] [stderr]     Checking h2 v0.1.26
[INFO] [stderr]    Compiling native-tls v0.2.11
[INFO] [stderr]    Compiling serde_derive v1.0.193
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]     Checking failure v0.1.8
[INFO] [stderr]     Checking serde v1.0.193
[INFO] [stderr]     Checking hyper-native-tls v0.3.0
[INFO] [stderr]     Checking hyper-tls v0.3.2
[INFO] [stderr]     Checking serde_json v1.0.108
[INFO] [stderr]     Checking generic-array v0.12.4
[INFO] [stderr]     Checking bincode v1.3.3
[INFO] [stderr]     Checking chrono v0.4.31
[INFO] [stderr]     Checking serde_urlencoded v0.5.5
[INFO] [stderr]     Checking serde_cbor v0.9.0
[INFO] [stderr]     Checking buffett-interface v0.1.0
[INFO] [stderr]     Checking bitconch-jsonrpc-core v0.1.0
[INFO] [stderr]     Checking influx_db_client v0.3.6
[INFO] [stderr]     Checking cookie_store v0.7.0
[INFO] [stderr]     Checking buffett-crypto v0.1.1
[INFO] [stderr]     Checking buffett-metrics v0.1.3
[INFO] [stderr]     Checking reqwest v0.9.24
[INFO] [stderr]     Checking buffett-budget v0.1.2
[INFO] [stderr]     Checking bitconch-jsonrpc-pubsub v0.1.0
[INFO] [stderr]     Checking bitconch-jsonrpc-server-utils v0.1.0
[INFO] [stderr]     Checking bitconch-jsonrpc-macros v0.1.0
[INFO] [stderr]     Checking bitconch-jsonrpc-http-server v0.1.0
[INFO] [stderr]     Checking buffett-core v0.1.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]     --> src/crdt.rs:1205:10
[INFO] [stdout]      |
[INFO] [stdout] 1205 |         };
[INFO] [stdout]      |          ^ help: remove this semicolon
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/fullnode.rs:493:34
[INFO] [stdout]     |
[INFO] [stdout] 493 |     pub fn close(self) -> Result<(Option<FullnodeReturnType>)> {
[INFO] [stdout]     |                                  ^                          ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 493 -     pub fn close(self) -> Result<(Option<FullnodeReturnType>)> {
[INFO] [stdout] 493 +     pub fn close(self) -> Result<Option<FullnodeReturnType>> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/packet.rs:26:30
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub const BLOB_SIZE: usize = (64 * 1024 - 128); // wikipedia says there should be 20b for ipv4 headers
[INFO] [stdout]    |                              ^               ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 26 - pub const BLOB_SIZE: usize = (64 * 1024 - 128); // wikipedia says there should be 20b for ipv4 headers
[INFO] [stdout] 26 + pub const BLOB_SIZE: usize = 64 * 1024 - 128; // wikipedia says there should be 20b for ipv4 headers
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/replicate_stage.rs:101:50
[INFO] [stdout]     |
[INFO] [stdout] 101 |                 let _exit = Finalizer::new(exit);;
[INFO] [stdout]     |                                                  ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:100:39
[INFO] [stdout]     |
[INFO] [stdout] 100 |         fn confirm_transaction(&self, Self::Metadata, String) -> Result<bool>;
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Metadata`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]     = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:100:55
[INFO] [stdout]     |
[INFO] [stdout] 100 |         fn confirm_transaction(&self, Self::Metadata, String) -> Result<bool>;
[INFO] [stdout]     |                                                       ^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: String`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:103:36
[INFO] [stdout]     |
[INFO] [stdout] 103 |         fn get_account_info(&self, Self::Metadata, String) -> Result<Account>;
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Metadata`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:103:52
[INFO] [stdout]     |
[INFO] [stdout] 103 |         fn get_account_info(&self, Self::Metadata, String) -> Result<Account>;
[INFO] [stdout]     |                                                    ^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: String`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:106:31
[INFO] [stdout]     |
[INFO] [stdout] 106 |         fn get_balance(&self, Self::Metadata, String) -> Result<i64>;
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Metadata`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:106:47
[INFO] [stdout]     |
[INFO] [stdout] 106 |         fn get_balance(&self, Self::Metadata, String) -> Result<i64>;
[INFO] [stdout]     |                                               ^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: String`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:109:32
[INFO] [stdout]     |
[INFO] [stdout] 109 |         fn get_finality(&self, Self::Metadata) -> Result<usize>;
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Metadata`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:112:31
[INFO] [stdout]     |
[INFO] [stdout] 112 |         fn get_last_id(&self, Self::Metadata) -> Result<String>;
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Metadata`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:115:40
[INFO] [stdout]     |
[INFO] [stdout] 115 |         fn get_signature_status(&self, Self::Metadata, String) -> Result<RpcSignatureStatus>;
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Metadata`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:115:56
[INFO] [stdout]     |
[INFO] [stdout] 115 |         fn get_signature_status(&self, Self::Metadata, String) -> Result<RpcSignatureStatus>;
[INFO] [stdout]     |                                                        ^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: String`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:118:41
[INFO] [stdout]     |
[INFO] [stdout] 118 |         fn get_transaction_count(&self, Self::Metadata) -> Result<u64>;
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Metadata`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:121:35
[INFO] [stdout]     |
[INFO] [stdout] 121 |         fn request_airdrop(&self, Self::Metadata, String, u64) -> Result<String>;
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Metadata`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:121:51
[INFO] [stdout]     |
[INFO] [stdout] 121 |         fn request_airdrop(&self, Self::Metadata, String, u64) -> Result<String>;
[INFO] [stdout]     |                                                   ^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: String`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:121:59
[INFO] [stdout]     |
[INFO] [stdout] 121 |         fn request_airdrop(&self, Self::Metadata, String, u64) -> Result<String>;
[INFO] [stdout]     |                                                           ^^^ help: try naming the parameter or explicitly ignoring it: `_: u64`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:124:36
[INFO] [stdout]     |
[INFO] [stdout] 124 |         fn send_transaction(&self, Self::Metadata, Vec<u8>) -> Result<String>;
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Metadata`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:124:52
[INFO] [stdout]     |
[INFO] [stdout] 124 |         fn send_transaction(&self, Self::Metadata, Vec<u8>) -> Result<String>;
[INFO] [stdout]     |                                                    ^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Vec<u8>`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/tpu.rs:81:37
[INFO] [stdout]    |
[INFO] [stdout] 81 |     fn join(self) -> thread::Result<(Option<TpuReturnType>)> {
[INFO] [stdout]    |                                     ^                     ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 81 -     fn join(self) -> thread::Result<(Option<TpuReturnType>)> {
[INFO] [stdout] 81 +     fn join(self) -> thread::Result<Option<TpuReturnType>> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `tmp_ledger_path` in this scope
[INFO] [stdout]    --> src/ledger.rs:550:16
[INFO] [stdout]     |
[INFO] [stdout] 550 |     let path = tmp_ledger_path(name);
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] note: function `token_service::tests::tmp_ledger_path` exists but is inaccessible
[INFO] [stdout]    --> src/token_service.rs:312:5
[INFO] [stdout]     |
[INFO] [stdout] 312 |     fn tmp_ledger_path(name: &str) -> String {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not accessible
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `tmp_ledger_path` in this scope
[INFO] [stdout]    --> src/ledger.rs:724:27
[INFO] [stdout]     |
[INFO] [stdout] 724 |         let ledger_path = tmp_ledger_path("test_ledger_reader_writer");
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] note: function `token_service::tests::tmp_ledger_path` exists but is inaccessible
[INFO] [stdout]    --> src/token_service.rs:312:5
[INFO] [stdout]     |
[INFO] [stdout] 312 |     fn tmp_ledger_path(name: &str) -> String {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not accessible
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `tmp_ledger_path` in this scope
[INFO] [stdout]    --> src/ledger.rs:804:27
[INFO] [stdout]     |
[INFO] [stdout] 804 |         let ledger_path = tmp_ledger_path("test_recover_ledger");
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] note: function `token_service::tests::tmp_ledger_path` exists but is inaccessible
[INFO] [stdout]    --> src/token_service.rs:312:5
[INFO] [stdout]     |
[INFO] [stdout] 312 |     fn tmp_ledger_path(name: &str) -> String {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not accessible
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `tmp_ledger_path` in this scope
[INFO] [stdout]    --> src/ledger.rs:855:27
[INFO] [stdout]     |
[INFO] [stdout] 855 |         let ledger_path = tmp_ledger_path("test_verify_ledger");
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] note: function `token_service::tests::tmp_ledger_path` exists but is inaccessible
[INFO] [stdout]    --> src/token_service.rs:312:5
[INFO] [stdout]     |
[INFO] [stdout] 312 |     fn tmp_ledger_path(name: &str) -> String {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not accessible
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]     --> src/crdt.rs:1205:10
[INFO] [stdout]      |
[INFO] [stdout] 1205 |         };
[INFO] [stdout]      |          ^ help: remove this semicolon
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/fullnode.rs:493:34
[INFO] [stdout]     |
[INFO] [stdout] 493 |     pub fn close(self) -> Result<(Option<FullnodeReturnType>)> {
[INFO] [stdout]     |                                  ^                          ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 493 -     pub fn close(self) -> Result<(Option<FullnodeReturnType>)> {
[INFO] [stdout] 493 +     pub fn close(self) -> Result<Option<FullnodeReturnType>> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Keypair`
[INFO] [stdout]   --> src/ledger.rs:17:33
[INFO] [stdout]    |
[INFO] [stdout] 17 | use buffett_crypto::signature::{Keypair, KeypairUtil};
[INFO] [stdout]    |                                 ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `buffett_crypto::hash::Hash`
[INFO] [stdout]  --> src/packet.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use buffett_crypto::hash::Hash;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Block`, `next_entries_mut`
[INFO] [stdout]  --> src/packet.rs:7:21
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::ledger::{next_entries_mut, Block};
[INFO] [stdout]   |                     ^^^^^^^^^^^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/packet.rs:26:30
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub const BLOB_SIZE: usize = (64 * 1024 - 128); // wikipedia says there should be 20b for ipv4 headers
[INFO] [stdout]    |                              ^               ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 26 - pub const BLOB_SIZE: usize = (64 * 1024 - 128); // wikipedia says there should be 20b for ipv4 headers
[INFO] [stdout] 26 + pub const BLOB_SIZE: usize = 64 * 1024 - 128; // wikipedia says there should be 20b for ipv4 headers
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/replicate_stage.rs:101:50
[INFO] [stdout]     |
[INFO] [stdout] 101 |                 let _exit = Finalizer::new(exit);;
[INFO] [stdout]     |                                                  ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:100:39
[INFO] [stdout]     |
[INFO] [stdout] 100 |         fn confirm_transaction(&self, Self::Metadata, String) -> Result<bool>;
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Metadata`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]     = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:100:55
[INFO] [stdout]     |
[INFO] [stdout] 100 |         fn confirm_transaction(&self, Self::Metadata, String) -> Result<bool>;
[INFO] [stdout]     |                                                       ^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: String`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:103:36
[INFO] [stdout]     |
[INFO] [stdout] 103 |         fn get_account_info(&self, Self::Metadata, String) -> Result<Account>;
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Metadata`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:103:52
[INFO] [stdout]     |
[INFO] [stdout] 103 |         fn get_account_info(&self, Self::Metadata, String) -> Result<Account>;
[INFO] [stdout]     |                                                    ^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: String`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:106:31
[INFO] [stdout]     |
[INFO] [stdout] 106 |         fn get_balance(&self, Self::Metadata, String) -> Result<i64>;
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Metadata`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:106:47
[INFO] [stdout]     |
[INFO] [stdout] 106 |         fn get_balance(&self, Self::Metadata, String) -> Result<i64>;
[INFO] [stdout]     |                                               ^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: String`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:109:32
[INFO] [stdout]     |
[INFO] [stdout] 109 |         fn get_finality(&self, Self::Metadata) -> Result<usize>;
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Metadata`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:112:31
[INFO] [stdout]     |
[INFO] [stdout] 112 |         fn get_last_id(&self, Self::Metadata) -> Result<String>;
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Metadata`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:115:40
[INFO] [stdout]     |
[INFO] [stdout] 115 |         fn get_signature_status(&self, Self::Metadata, String) -> Result<RpcSignatureStatus>;
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Metadata`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:115:56
[INFO] [stdout]     |
[INFO] [stdout] 115 |         fn get_signature_status(&self, Self::Metadata, String) -> Result<RpcSignatureStatus>;
[INFO] [stdout]     |                                                        ^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: String`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:118:41
[INFO] [stdout]     |
[INFO] [stdout] 118 |         fn get_transaction_count(&self, Self::Metadata) -> Result<u64>;
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Metadata`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:121:35
[INFO] [stdout]     |
[INFO] [stdout] 121 |         fn request_airdrop(&self, Self::Metadata, String, u64) -> Result<String>;
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Metadata`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:121:51
[INFO] [stdout]     |
[INFO] [stdout] 121 |         fn request_airdrop(&self, Self::Metadata, String, u64) -> Result<String>;
[INFO] [stdout]     |                                                   ^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: String`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:121:59
[INFO] [stdout]     |
[INFO] [stdout] 121 |         fn request_airdrop(&self, Self::Metadata, String, u64) -> Result<String>;
[INFO] [stdout]     |                                                           ^^^ help: try naming the parameter or explicitly ignoring it: `_: u64`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:124:36
[INFO] [stdout]     |
[INFO] [stdout] 124 |         fn send_transaction(&self, Self::Metadata, Vec<u8>) -> Result<String>;
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Metadata`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/rpc.rs:124:52
[INFO] [stdout]     |
[INFO] [stdout] 124 |         fn send_transaction(&self, Self::Metadata, Vec<u8>) -> Result<String>;
[INFO] [stdout]     |                                                    ^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Vec<u8>`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/tpu.rs:81:37
[INFO] [stdout]    |
[INFO] [stdout] 81 |     fn join(self) -> thread::Result<(Option<TpuReturnType>)> {
[INFO] [stdout]    |                                     ^                     ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 81 -     fn join(self) -> thread::Result<(Option<TpuReturnType>)> {
[INFO] [stdout] 81 +     fn join(self) -> thread::Result<Option<TpuReturnType>> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]  --> src/logger.rs:1:23
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::sync::{Once, ONCE_INIT};
[INFO] [stdout]   |                       ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]  --> src/logger.rs:4:21
[INFO] [stdout]   |
[INFO] [stdout] 4 | static INIT: Once = ONCE_INIT;
[INFO] [stdout]   |                     ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: replace the use of the deprecated constant
[INFO] [stdout]   |
[INFO] [stdout] 4 | static INIT: Once = Once::new();
[INFO] [stdout]   |                     ~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]  --> src/logger.rs:1:23
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::sync::{Once, ONCE_INIT};
[INFO] [stdout]   |                       ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]  --> src/logger.rs:4:21
[INFO] [stdout]   |
[INFO] [stdout] 4 | static INIT: Once = ONCE_INIT;
[INFO] [stdout]   |                     ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: replace the use of the deprecated constant
[INFO] [stdout]   |
[INFO] [stdout] 4 | static INIT: Once = Once::new();
[INFO] [stdout]   |                     ~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/choose_gossip_peer_strategy.rs:16:17
[INFO] [stdout]    |
[INFO] [stdout] 16 |     random: &'a Fn() -> u64,
[INFO] [stdout]    |                 ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 16 |     random: &'a dyn Fn() -> u64,
[INFO] [stdout]    |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/choose_gossip_peer_strategy.rs:44:20
[INFO] [stdout]    |
[INFO] [stdout] 44 |     get_stake: &'a Fn(Pubkey) -> f64,
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 44 |     get_stake: &'a dyn Fn(Pubkey) -> f64,
[INFO] [stdout]    |                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/result.rs:16:19
[INFO] [stdout]    |
[INFO] [stdout] 16 |     JoinError(Box<Any + Send + 'static>),
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 16 |     JoinError(Box<dyn Any + Send + 'static>),
[INFO] [stdout]    |                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/choose_gossip_peer_strategy.rs:21:28
[INFO] [stdout]    |
[INFO] [stdout] 21 |     pub fn new(random: &'a Fn() -> u64) -> Self {
[INFO] [stdout]    |                            ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 21 |     pub fn new(random: &'a dyn Fn() -> u64) -> Self {
[INFO] [stdout]    |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/choose_gossip_peer_strategy.rs:51:24
[INFO] [stdout]    |
[INFO] [stdout] 51 |         get_stake: &'a Fn(Pubkey) -> f64,
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 51 |         get_stake: &'a dyn Fn(Pubkey) -> f64,
[INFO] [stdout]    |                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/choose_gossip_peer_strategy.rs:16:17
[INFO] [stdout]    |
[INFO] [stdout] 16 |     random: &'a Fn() -> u64,
[INFO] [stdout]    |                 ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 16 |     random: &'a dyn Fn() -> u64,
[INFO] [stdout]    |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/choose_gossip_peer_strategy.rs:44:20
[INFO] [stdout]    |
[INFO] [stdout] 44 |     get_stake: &'a Fn(Pubkey) -> f64,
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 44 |     get_stake: &'a dyn Fn(Pubkey) -> f64,
[INFO] [stdout]    |                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/result.rs:16:19
[INFO] [stdout]    |
[INFO] [stdout] 16 |     JoinError(Box<Any + Send + 'static>),
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 16 |     JoinError(Box<dyn Any + Send + 'static>),
[INFO] [stdout]    |                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/choose_gossip_peer_strategy.rs:21:28
[INFO] [stdout]    |
[INFO] [stdout] 21 |     pub fn new(random: &'a Fn() -> u64) -> Self {
[INFO] [stdout]    |                            ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 21 |     pub fn new(random: &'a dyn Fn() -> u64) -> Self {
[INFO] [stdout]    |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/choose_gossip_peer_strategy.rs:51:24
[INFO] [stdout]    |
[INFO] [stdout] 51 |         get_stake: &'a Fn(Pubkey) -> f64,
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 51 |         get_stake: &'a dyn Fn(Pubkey) -> f64,
[INFO] [stdout]    |                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/result.rs:69:29
[INFO] [stdout]    |
[INFO] [stdout] 69 | impl std::convert::From<Box<Any + Send + 'static>> for Error {
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 69 | impl std::convert::From<Box<dyn Any + Send + 'static>> for Error {
[INFO] [stdout]    |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/result.rs:70:20
[INFO] [stdout]    |
[INFO] [stdout] 70 |     fn from(e: Box<Any + Send + 'static>) -> Error {
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 70 |     fn from(e: Box<dyn Any + Send + 'static>) -> Error {
[INFO] [stdout]    |                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/result.rs:69:29
[INFO] [stdout]    |
[INFO] [stdout] 69 | impl std::convert::From<Box<Any + Send + 'static>> for Error {
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 69 | impl std::convert::From<Box<dyn Any + Send + 'static>> for Error {
[INFO] [stdout]    |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/result.rs:70:20
[INFO] [stdout]    |
[INFO] [stdout] 70 |     fn from(e: Box<Any + Send + 'static>) -> Error {
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 70 |     fn from(e: Box<dyn Any + Send + 'static>) -> Error {
[INFO] [stdout]    |                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wallet.rs:100:32
[INFO] [stdout]     |
[INFO] [stdout] 100 | ) -> Result<WalletCommand, Box<error::Error>> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 100 | ) -> Result<WalletCommand, Box<dyn error::Error>> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wallet.rs:281:69
[INFO] [stdout]     |
[INFO] [stdout] 281 | pub fn process_command(config: &WalletConfig) -> Result<String, Box<error::Error>> {
[INFO] [stdout]     |                                                                     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 281 | pub fn process_command(config: &WalletConfig) -> Result<String, Box<dyn error::Error>> {
[INFO] [stdout]     |                                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wallet.rs:567:64
[INFO] [stdout]     |
[INFO] [stdout] 567 | pub fn gen_keypair_file(outfile: String) -> Result<String, Box<error::Error>> {
[INFO] [stdout]     |                                                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 567 | pub fn gen_keypair_file(outfile: String) -> Result<String, Box<dyn error::Error>> {
[INFO] [stdout]     |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wallet.rs:635:59
[INFO] [stdout]     |
[INFO] [stdout] 635 | fn get_last_id(config: &WalletConfig) -> Result<Hash, Box<error::Error>> {
[INFO] [stdout]     |                                                           ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 635 | fn get_last_id(config: &WalletConfig) -> Result<Hash, Box<dyn error::Error>> {
[INFO] [stdout]     |                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wallet.rs:652:25
[INFO] [stdout]     |
[INFO] [stdout] 652 | ) -> Result<String, Box<error::Error>> {
[INFO] [stdout]     |                         ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 652 | ) -> Result<String, Box<dyn error::Error>> {
[INFO] [stdout]     |                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/wallet.rs:70:32
[INFO] [stdout]    |
[INFO] [stdout] 70 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 70 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wallet.rs:598:28
[INFO] [stdout]     |
[INFO] [stdout] 598 |     ) -> Result<Value, Box<error::Error>> {
[INFO] [stdout]     |                            ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 598 |     ) -> Result<Value, Box<dyn error::Error>> {
[INFO] [stdout]     |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wallet.rs:100:32
[INFO] [stdout]     |
[INFO] [stdout] 100 | ) -> Result<WalletCommand, Box<error::Error>> {
[INFO] [stdout]     |                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 100 | ) -> Result<WalletCommand, Box<dyn error::Error>> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wallet.rs:281:69
[INFO] [stdout]     |
[INFO] [stdout] 281 | pub fn process_command(config: &WalletConfig) -> Result<String, Box<error::Error>> {
[INFO] [stdout]     |                                                                     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 281 | pub fn process_command(config: &WalletConfig) -> Result<String, Box<dyn error::Error>> {
[INFO] [stdout]     |                                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wallet.rs:567:64
[INFO] [stdout]     |
[INFO] [stdout] 567 | pub fn gen_keypair_file(outfile: String) -> Result<String, Box<error::Error>> {
[INFO] [stdout]     |                                                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 567 | pub fn gen_keypair_file(outfile: String) -> Result<String, Box<dyn error::Error>> {
[INFO] [stdout]     |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wallet.rs:635:59
[INFO] [stdout]     |
[INFO] [stdout] 635 | fn get_last_id(config: &WalletConfig) -> Result<Hash, Box<error::Error>> {
[INFO] [stdout]     |                                                           ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 635 | fn get_last_id(config: &WalletConfig) -> Result<Hash, Box<dyn error::Error>> {
[INFO] [stdout]     |                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wallet.rs:652:25
[INFO] [stdout]     |
[INFO] [stdout] 652 | ) -> Result<String, Box<error::Error>> {
[INFO] [stdout]     |                         ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 652 | ) -> Result<String, Box<dyn error::Error>> {
[INFO] [stdout]     |                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/wallet.rs:70:32
[INFO] [stdout]    |
[INFO] [stdout] 70 |     fn cause(&self) -> Option<&error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 70 |     fn cause(&self) -> Option<&dyn error::Error> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/wallet.rs:598:28
[INFO] [stdout]     |
[INFO] [stdout] 598 |     ) -> Result<Value, Box<error::Error>> {
[INFO] [stdout]     |                            ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 598 |     ) -> Result<Value, Box<dyn error::Error>> {
[INFO] [stdout]     |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `KeypairUtil`
[INFO] [stdout]   --> src/ledger.rs:17:42
[INFO] [stdout]    |
[INFO] [stdout] 17 | use buffett_crypto::signature::{Keypair, KeypairUtil};
[INFO] [stdout]    |                                          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/broadcast_stage.rs:70:9
[INFO] [stdout]    |
[INFO] [stdout] 70 |     for mut blobs in blobs_chunked {
[INFO] [stdout]    |         ----^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors; 41 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0425`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `buffett-core` (lib test) due to 5 previous errors; 41 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/packet.rs:209:13
[INFO] [stdout]     |
[INFO] [stdout] 209 |         let mut p = SharedPackets::default();
[INFO] [stdout]     |             ----^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/recvmmsg.rs:72:25
[INFO] [stdout]    |
[INFO] [stdout] 72 |                     let mut p = &mut packets[i];
[INFO] [stdout]    |                         ----^
[INFO] [stdout]    |                         |
[INFO] [stdout]    |                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `[u8]`, which is not FFI-safe
[INFO] [stdout]   --> src/dynamic_program.rs:44:19
[INFO] [stdout]    |
[INFO] [stdout] 44 | type Entrypoint = unsafe extern "C" fn(infos: &mut Vec<KeyedAccount>, data: &[u8]);
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a raw pointer instead
[INFO] [stdout]    = note: slices have no C equivalent
[INFO] [stdout]    = note: `#[warn(improper_ctypes_definitions)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 41 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "b39efaa93207cfaa691d3c8492e20f8b2761355dfb67b9101761b75f95997125", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b39efaa93207cfaa691d3c8492e20f8b2761355dfb67b9101761b75f95997125", kill_on_drop: false }`
[INFO] [stdout] b39efaa93207cfaa691d3c8492e20f8b2761355dfb67b9101761b75f95997125
