diff --git a/benches/bank.rs b/benches/bank.rs index 1583aee6f..eb2ece6b4 100644 --- a/benches/bank.rs +++ b/benches/bank.rs @@ -1,8 +1,8 @@ #![feature(test)] -extern crate bincode; -extern crate rayon; -extern crate solana; -extern crate solana_sdk; + + + + extern crate test; use solana::bank::*; diff --git a/benches/banking_stage.rs b/benches/banking_stage.rs index 26cf54692..05254651d 100644 --- a/benches/banking_stage.rs +++ b/benches/banking_stage.rs @@ -1,9 +1,9 @@ #![feature(test)] -extern crate bincode; -extern crate rand; -extern crate rayon; -extern crate solana; -extern crate solana_sdk; + + + + + extern crate test; use rand::{thread_rng, Rng}; diff --git a/benches/db_ledger.rs b/benches/db_ledger.rs index 1782100fb..7ee931652 100644 --- a/benches/db_ledger.rs +++ b/benches/db_ledger.rs @@ -1,7 +1,7 @@ #![feature(test)] -extern crate rand; -extern crate rocksdb; -extern crate solana; +use rand; + + extern crate test; use rand::seq::SliceRandom; diff --git a/benches/ledger.rs b/benches/ledger.rs index 8bfa8f19c..84e4b5941 100644 --- a/benches/ledger.rs +++ b/benches/ledger.rs @@ -1,6 +1,6 @@ #![feature(test)] -extern crate solana; -extern crate solana_sdk; + + extern crate test; use solana::entry::reconstruct_entries_from_blobs; diff --git a/benches/signature.rs b/benches/signature.rs index 21d50daab..0916bb49c 100644 --- a/benches/signature.rs +++ b/benches/signature.rs @@ -1,6 +1,6 @@ #![feature(test)] -extern crate solana; -extern crate solana_sdk; + + extern crate test; use solana::signature::GenKeys; diff --git a/benches/sigverify.rs b/benches/sigverify.rs index 5601bcbd0..d4fc446f3 100644 --- a/benches/sigverify.rs +++ b/benches/sigverify.rs @@ -1,7 +1,7 @@ #![feature(test)] -extern crate bincode; -extern crate rayon; -extern crate solana; + + + extern crate test; use solana::packet::to_packets; diff --git a/src/bin/bench-streamer.rs b/src/bin/bench-streamer.rs index e1d127dec..a5732e780 100644 --- a/src/bin/bench-streamer.rs +++ b/src/bin/bench-streamer.rs @@ -1,5 +1,5 @@ -extern crate clap; -extern crate solana; + + use clap::{App, Arg}; use solana::netutil::bind_to; diff --git a/src/bin/bench-tps.rs b/src/bin/bench-tps.rs index c8fcb8335..62d02f782 100644 --- a/src/bin/bench-tps.rs +++ b/src/bin/bench-tps.rs @@ -1,11 +1,11 @@ #[macro_use] extern crate clap; -extern crate rayon; + #[macro_use] extern crate solana; -extern crate solana_drone; -extern crate solana_metrics; -extern crate solana_sdk; + +use solana_metrics; + use clap::{App, Arg}; diff --git a/src/bin/fullnode-config.rs b/src/bin/fullnode-config.rs index 3433094b0..4721d117e 100644 --- a/src/bin/fullnode-config.rs +++ b/src/bin/fullnode-config.rs @@ -1,10 +1,10 @@ #[macro_use] extern crate clap; -extern crate dirs; -extern crate ring; -extern crate serde_json; -extern crate solana; -extern crate solana_sdk; +use dirs; + +use serde_json; + + use clap::{App, Arg}; use ring::rand::SystemRandom; diff --git a/src/bin/fullnode.rs b/src/bin/fullnode.rs index 00d440dd4..e9e9bb5cd 100644 --- a/src/bin/fullnode.rs +++ b/src/bin/fullnode.rs @@ -1,13 +1,13 @@ #[macro_use] extern crate clap; -extern crate getopts; + #[macro_use] extern crate log; -extern crate serde_json; +use serde_json; #[macro_use] extern crate solana; -extern crate solana_metrics; -extern crate solana_sdk; +use solana_metrics; + use clap::{App, Arg}; use solana::client::mk_client; diff --git a/src/bin/genesis.rs b/src/bin/genesis.rs index 8da12c3de..9f877d12e 100644 --- a/src/bin/genesis.rs +++ b/src/bin/genesis.rs @@ -1,12 +1,12 @@ //! A command-line executable for generating the chain's genesis block. -extern crate atty; + #[macro_use] extern crate clap; -extern crate serde_json; -extern crate solana; -extern crate solana_sdk; -extern crate untrusted; +use serde_json; + + + use clap::{App, Arg}; use solana::ledger::LedgerWriter; @@ -23,7 +23,7 @@ use std::path::Path; */ pub const BOOTSTRAP_LEADER_TOKENS: u64 = 2; -fn main() -> Result<(), Box> { +fn main() -> Result<(), Box> { let matches = App::new("solana-genesis") .version(crate_version!()) .arg( diff --git a/src/bin/keygen.rs b/src/bin/keygen.rs index a914a6a38..2e42db56f 100644 --- a/src/bin/keygen.rs +++ b/src/bin/keygen.rs @@ -1,15 +1,15 @@ #[macro_use] extern crate clap; -extern crate dirs; -extern crate ring; -extern crate serde_json; -extern crate solana; +use dirs; + + + use clap::{App, Arg}; use solana::wallet::gen_keypair_file; use std::error; -fn main() -> Result<(), Box> { +fn main() -> Result<(), Box> { let matches = App::new("solana-keygen") .version(crate_version!()) .arg( diff --git a/src/bin/ledger-tool.rs b/src/bin/ledger-tool.rs index 44fc7e92c..0081a9429 100644 --- a/src/bin/ledger-tool.rs +++ b/src/bin/ledger-tool.rs @@ -1,7 +1,7 @@ #[macro_use] extern crate clap; -extern crate serde_json; -extern crate solana; +use serde_json; + use clap::{App, Arg, SubCommand}; use solana::bank::Bank; diff --git a/src/bin/replicator.rs b/src/bin/replicator.rs index fd28ad936..cdc8a8103 100644 --- a/src/bin/replicator.rs +++ b/src/bin/replicator.rs @@ -1,11 +1,11 @@ #[macro_use] extern crate clap; -extern crate getopts; -extern crate serde_json; + +use serde_json; #[macro_use] extern crate solana; -extern crate solana_drone; -extern crate solana_sdk; + + use clap::{App, Arg}; use solana::cluster_info::{Node, NodeInfo}; diff --git a/src/bin/upload-perf.rs b/src/bin/upload-perf.rs index 7548a9c61..7a0d353a1 100644 --- a/src/bin/upload-perf.rs +++ b/src/bin/upload-perf.rs @@ -1,6 +1,6 @@ -extern crate serde_json; -extern crate solana; -extern crate solana_metrics; +use serde_json; + +use solana_metrics; use serde_json::Value; use solana_metrics::influxdb; diff --git a/src/bin/wallet.rs b/src/bin/wallet.rs index 0694e1f9d..091c8b9ef 100644 --- a/src/bin/wallet.rs +++ b/src/bin/wallet.rs @@ -1,9 +1,9 @@ #[macro_use] extern crate clap; -extern crate dirs; +use dirs; #[macro_use] extern crate solana; -extern crate solana_sdk; + use clap::{App, Arg, ArgMatches, SubCommand}; use solana::logger; @@ -12,7 +12,7 @@ use solana_sdk::signature::{read_keypair, KeypairUtil}; use std::error; use std::net::SocketAddr; -pub fn parse_args(matches: &ArgMatches) -> Result> { +pub fn parse_args(matches: &ArgMatches<'_>) -> Result> { let network = if let Some(addr) = matches.value_of("network") { addr.parse().or_else(|_| { Err(WalletError::BadParameter( @@ -61,7 +61,7 @@ pub fn parse_args(matches: &ArgMatches) -> Result Result<(), Box> { +fn main() -> Result<(), Box> { logger::setup(); let matches = App::new("solana-wallet") .version(crate_version!()) diff --git a/src/broadcast_service.rs b/src/broadcast_service.rs index 779e4606e..a639c9961 100644 --- a/src/broadcast_service.rs +++ b/src/broadcast_service.rs @@ -83,7 +83,7 @@ fn broadcast( let chunking_elapsed = duration_as_ms(&blobs_chunking.elapsed()); let broadcast_start = Instant::now(); - for mut blobs in blobs_chunked { + for blobs in blobs_chunked { let blobs_len = blobs.len(); trace!("{}: broadcast blobs.len: {}", id, blobs_len); diff --git a/src/crds_gossip.rs b/src/crds_gossip.rs index 30f2363ce..36384d47b 100644 --- a/src/crds_gossip.rs +++ b/src/crds_gossip.rs @@ -401,7 +401,7 @@ mod test { let network_values: Vec = network.values().cloned().collect(); for t in start..end { let now = t as u64 * 100; - let mut requests: Vec<_> = { + let requests: Vec<_> = { network_values .par_iter() .filter_map(|from| from.lock().unwrap().new_pull_request(now).ok()) diff --git a/src/crds_gossip_push.rs b/src/crds_gossip_push.rs index d56e78921..615d1d80c 100644 --- a/src/crds_gossip_push.rs +++ b/src/crds_gossip_push.rs @@ -189,7 +189,7 @@ impl CrdsGossipPush { } } let size = cmp::max(CRDS_GOSSIP_BLOOM_SIZE, network_size); - let mut bloom = Bloom::random(size, 0.1, 1024 * 8 * 4); + let bloom = Bloom::random(size, 0.1, 1024 * 8 * 4); new_items.insert(val.0.pubkey(), bloom); if new_items.len() == need { break; diff --git a/src/crds_value.rs b/src/crds_value.rs index cd170656a..2fcd97a59 100644 --- a/src/crds_value.rs +++ b/src/crds_value.rs @@ -101,7 +101,7 @@ pub enum CrdsValueLabel { } impl fmt::Display for CrdsValueLabel { - fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { match self { CrdsValueLabel::ContactInfo(_) => write!(f, "ContactInfo({})", self.pubkey()), CrdsValueLabel::Vote(_) => write!(f, "Vote({})", self.pubkey()), diff --git a/src/db_window.rs b/src/db_window.rs index 79f38e703..e8bdeed6a 100644 --- a/src/db_window.rs +++ b/src/db_window.rs @@ -125,8 +125,8 @@ pub fn find_missing_indexes( slot: u64, start_index: u64, end_index: u64, - key: &Fn(u64, u64) -> Vec, - index_from_key: &Fn(&[u8]) -> Result, + key: &dyn Fn(u64, u64) -> Vec, + index_from_key: &dyn Fn(&[u8]) -> Result, max_missing: usize, ) -> Vec { if start_index >= end_index || max_missing == 0 { @@ -458,7 +458,7 @@ mod test { let t_responder = responder("streamer_send_test", Arc::new(send), r_responder); let mut msgs = Vec::new(); for i in 0..10 { - let mut b = SharedBlob::default(); + let b = SharedBlob::default(); { let mut w = b.write().unwrap(); w.data[0] = i as u8; diff --git a/src/erasure.rs b/src/erasure.rs index 2ee02d600..c504bffdd 100644 --- a/src/erasure.rs +++ b/src/erasure.rs @@ -96,7 +96,7 @@ pub fn generate_coding_blocks(coding: &mut [&mut [u8]], data: &[&[u8]]) -> Resul data_arg.push(block.as_ptr()); } let mut coding_arg = Vec::with_capacity(coding.len()); - for mut block in coding { + for block in coding { if block_len != block.len() as i32 { error!( "coding block size incorrect {} expected {}", diff --git a/src/lib.rs b/src/lib.rs index 36ef9ebb0..06aaf8dbc 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -74,59 +74,59 @@ pub mod vote_stage; pub mod wallet; pub mod window; pub mod window_service; -extern crate bincode; -extern crate bs58; -extern crate bv; -extern crate byteorder; -extern crate bytes; -extern crate chrono; -extern crate clap; -extern crate dirs; -extern crate elf; -extern crate generic_array; +use bincode; +use bs58; + + + + + + +use elf; + #[cfg(test)] #[cfg(any(feature = "chacha", feature = "cuda"))] #[macro_use] extern crate hex_literal; -extern crate indexmap; -extern crate ipnetwork; -extern crate itertools; -extern crate libc; + + + + #[macro_use] extern crate log; -extern crate nix; -extern crate pnet_datalink; -extern crate rayon; -extern crate reqwest; -extern crate ring; -extern crate rocksdb; -extern crate serde; + +use pnet_datalink; + +use reqwest; + +use rocksdb; + #[macro_use] extern crate serde_derive; #[macro_use] extern crate serde_json; -extern crate serde_cbor; -extern crate sha2; -extern crate socket2; -extern crate solana_drone; -extern crate solana_jsonrpc_core as jsonrpc_core; -extern crate solana_jsonrpc_http_server as jsonrpc_http_server; -extern crate solana_system_program; + + + + +use solana_jsonrpc_core as jsonrpc_core; +use solana_jsonrpc_http_server as jsonrpc_http_server; +use solana_system_program; #[macro_use] extern crate solana_jsonrpc_macros as jsonrpc_macros; -extern crate solana_jsonrpc_pubsub as jsonrpc_pubsub; -extern crate solana_jsonrpc_ws_server as jsonrpc_ws_server; -extern crate solana_metrics; -extern crate solana_native_loader; -extern crate solana_sdk; -extern crate sys_info; -extern crate tokio; -extern crate tokio_codec; -extern crate untrusted; +use solana_jsonrpc_pubsub as jsonrpc_pubsub; +use solana_jsonrpc_ws_server as jsonrpc_ws_server; +use solana_metrics; +use solana_native_loader; + + + + +use untrusted; #[cfg(test)] #[macro_use] extern crate matches; -extern crate rand; -extern crate rand_chacha; +use rand; + diff --git a/src/logger.rs b/src/logger.rs index 08375adf5..5948f9fdf 100644 --- a/src/logger.rs +++ b/src/logger.rs @@ -2,7 +2,7 @@ //! `setup()` may be called multiple times. use std::sync::{Once, ONCE_INIT}; -extern crate env_logger; +use env_logger; static INIT: Once = ONCE_INIT; diff --git a/src/packet.rs b/src/packet.rs index 506c06fa4..311236ae8 100644 --- a/src/packet.rs +++ b/src/packet.rs @@ -49,7 +49,7 @@ pub struct Packet { } impl fmt::Debug for Packet { - fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { write!( f, "Packet {{ size: {:?}, addr: {:?} }}", @@ -135,7 +135,7 @@ impl PartialEq for Blob { } impl fmt::Debug for Blob { - fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { write!( f, "Blob {{ size: {:?}, addr: {:?} }}", @@ -217,7 +217,7 @@ impl Packets { pub fn to_packets_chunked(xs: &[T], chunks: usize) -> Vec { let mut out = vec![]; for x in xs.chunks(chunks) { - let mut p = SharedPackets::default(); + let p = SharedPackets::default(); p.write() .unwrap() .packets diff --git a/src/result.rs b/src/result.rs index 458c3880e..b3a319992 100644 --- a/src/result.rs +++ b/src/result.rs @@ -19,7 +19,7 @@ pub enum Error { IO(std::io::Error), JSON(serde_json::Error), AddrParse(std::net::AddrParseError), - JoinError(Box), + JoinError(Box), RecvError(std::sync::mpsc::RecvError), RecvTimeoutError(std::sync::mpsc::RecvTimeoutError), Serialize(std::boxed::Box), @@ -38,7 +38,7 @@ pub enum Error { pub type Result = std::result::Result; impl std::fmt::Display for Error { - fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { + fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { write!(f, "solana error") } } @@ -76,8 +76,8 @@ impl std::convert::From> for Error { Error::SendError } } -impl std::convert::From> for Error { - fn from(e: Box) -> Error { +impl std::convert::From> for Error { + fn from(e: Box) -> Error { Error::JoinError(e) } } diff --git a/src/rpc_request.rs b/src/rpc_request.rs index 30c926836..0621c6200 100644 --- a/src/rpc_request.rs +++ b/src/rpc_request.rs @@ -62,7 +62,7 @@ impl RpcRequest { client: &RpcClient, id: u64, params: Option, - ) -> Result> { + ) -> Result> { let request = self.build_request_json(id, params); let mut response = client @@ -116,7 +116,7 @@ pub enum RpcError { } impl fmt::Display for RpcError { - fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { write!(f, "invalid") } } @@ -126,7 +126,7 @@ impl error::Error for RpcError { "invalid" } - fn cause(&self) -> Option<&error::Error> { + fn cause(&self) -> Option<&dyn error::Error> { // Generic error, underlying cause isn't tracked. None } diff --git a/src/sigverify.rs b/src/sigverify.rs index 20b275703..d8ec30f72 100644 --- a/src/sigverify.rs +++ b/src/sigverify.rs @@ -294,7 +294,7 @@ pub fn ed25519_verify(batches: &[SharedPackets]) -> Vec> { trace!("done verify"); let mut num = 0; for (vs, sig_vs) in rvs.iter_mut().zip(sig_lens.iter()) { - for (mut v, sig_v) in vs.iter_mut().zip(sig_vs.iter()) { + for (v, sig_v) in vs.iter_mut().zip(sig_vs.iter()) { let mut vout = 1; for _ in 0..*sig_v { if 0 == out[num] { diff --git a/src/streamer.rs b/src/streamer.rs index 9a67069bb..9d3ce3c82 100644 --- a/src/streamer.rs +++ b/src/streamer.rs @@ -179,7 +179,7 @@ mod test { let t_responder = responder("streamer_send_test", Arc::new(send), r_responder); let mut msgs = Vec::new(); for i in 0..10 { - let mut b = SharedBlob::default(); + let b = SharedBlob::default(); { let mut w = b.write().unwrap(); w.data[0] = i as u8; diff --git a/src/tvu.rs b/src/tvu.rs index 8d98af78f..60d267129 100644 --- a/src/tvu.rs +++ b/src/tvu.rs @@ -313,7 +313,7 @@ pub mod tests { alice_ref_balance -= transfer_amount; for entry in vec![entry0, entry_tick0, entry_tick1, entry1, entry_tick2] { - let mut b = SharedBlob::default(); + let b = SharedBlob::default(); { let mut w = b.write().unwrap(); w.set_index(blob_idx).unwrap(); diff --git a/src/wallet.rs b/src/wallet.rs index 63f267fd0..64a0f0f8b 100644 --- a/src/wallet.rs +++ b/src/wallet.rs @@ -65,7 +65,7 @@ pub enum WalletError { } impl fmt::Display for WalletError { - fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { write!(f, "invalid") } } @@ -75,7 +75,7 @@ impl error::Error for WalletError { "invalid" } - fn cause(&self) -> Option<&error::Error> { + fn cause(&self) -> Option<&dyn error::Error> { // Generic error, underlying cause isn't tracked. None } @@ -119,8 +119,8 @@ impl WalletConfig { pub fn parse_command( pubkey: Pubkey, - matches: &ArgMatches, -) -> Result> { + matches: &ArgMatches<'_>, +) -> Result> { let response = match matches.subcommand() { ("address", Some(_address_matches)) => Ok(WalletCommand::Address), ("airdrop", Some(airdrop_matches)) => { @@ -308,7 +308,7 @@ pub fn parse_command( Ok(response) } -pub fn process_command(config: &WalletConfig) -> Result> { +pub fn process_command(config: &WalletConfig) -> Result> { if let WalletCommand::Address = config.command { // Get address of this client return Ok(format!("{}", config.id.pubkey())); @@ -667,7 +667,7 @@ pub fn read_leader(path: &str) -> Result { }) } -pub fn gen_keypair_file(outfile: String) -> Result> { +pub fn gen_keypair_file(outfile: String) -> Result> { let rnd = SystemRandom::new(); let pkcs8_bytes = Ed25519KeyPair::generate_pkcs8(&rnd)?; let serialized = serde_json::to_string(&pkcs8_bytes.to_vec())?; @@ -682,7 +682,7 @@ pub fn gen_keypair_file(outfile: String) -> Result> { Ok(serialized) } -fn get_last_id(rpc_client: &RpcClient) -> Result> { +fn get_last_id(rpc_client: &RpcClient) -> Result> { let result = RpcRequest::GetLastId.make_rpc_request(rpc_client, 1, None)?; if result.as_str().is_none() { Err(WalletError::RpcRequestError( @@ -696,7 +696,7 @@ fn get_last_id(rpc_client: &RpcClient) -> Result> { Ok(Hash::new(&last_id_vec)) } -fn send_tx(rpc_client: &RpcClient, tx: &Transaction) -> Result> { +fn send_tx(rpc_client: &RpcClient, tx: &Transaction) -> Result> { let serialized = serialize(tx).unwrap(); let params = json!([serialized]); let signature = RpcRequest::SendTransaction.make_rpc_request(rpc_client, 2, Some(params))?; @@ -711,7 +711,7 @@ fn send_tx(rpc_client: &RpcClient, tx: &Transaction) -> Result Result> { +) -> Result> { let params = json!([signature.to_string()]); let signature_status = RpcRequest::GetSignatureStatus.make_rpc_request(rpc_client, 1, Some(params))?; @@ -727,7 +727,7 @@ fn confirm_tx( } } -fn send_and_confirm_tx(rpc_client: &RpcClient, tx: &Transaction) -> Result<(), Box> { +fn send_and_confirm_tx(rpc_client: &RpcClient, tx: &Transaction) -> Result<(), Box> { let mut send_retries = 3; while send_retries > 0 { let mut status_retries = 4; diff --git a/src/window.rs b/src/window.rs index 8edf52cf3..68f29d197 100644 --- a/src/window.rs +++ b/src/window.rs @@ -448,7 +448,7 @@ mod test { let t_responder = responder("streamer_send_test", Arc::new(send), r_responder); let mut msgs = Vec::new(); for i in 0..10 { - let mut b = SharedBlob::default(); + let b = SharedBlob::default(); { let mut w = b.write().unwrap(); w.data[0] = i as u8; diff --git a/src/window_service.rs b/src/window_service.rs index 1137fcad8..ff2a678cb 100644 --- a/src/window_service.rs +++ b/src/window_service.rs @@ -298,7 +298,7 @@ mod test { tn.sockets.replicate.into_iter().map(Arc::new).collect(); let t_responder = responder("window_send_test", blob_sockets[0].clone(), r_responder); - let mut num_blobs_to_make = 10; + let num_blobs_to_make = 10; let gossip_address = &tn.info.gossip; let msgs = make_consecutive_blobs( me_id, diff --git a/tests/data_replicator.rs b/tests/data_replicator.rs index 4fab4219f..079519e7a 100644 --- a/tests/data_replicator.rs +++ b/tests/data_replicator.rs @@ -1,8 +1,8 @@ #[macro_use] extern crate log; -extern crate rayon; -extern crate solana; -extern crate solana_sdk; + + + use rayon::iter::*; use solana::cluster_info::{ClusterInfo, Node}; diff --git a/tests/multinode.rs b/tests/multinode.rs index e86c6cfb4..e9f4a3fc0 100644 --- a/tests/multinode.rs +++ b/tests/multinode.rs @@ -1,10 +1,10 @@ #[macro_use] extern crate log; -extern crate bincode; -extern crate chrono; -extern crate serde_json; -extern crate solana; -extern crate solana_sdk; + + + +use solana; + use solana::blob_fetch_stage::BlobFetchStage; use solana::cluster_info::{ClusterInfo, Node, NodeInfo}; @@ -272,7 +272,7 @@ fn test_multi_node_validator_catchup_from_zero() -> result::Result<()> { .unwrap(); info!("validator balance {}", validator_balance); - let mut val = Fullnode::new( + let val = Fullnode::new( validator, &ledger_path, keypair, @@ -871,7 +871,7 @@ fn test_leader_to_validator_transition() { let mut converged = false; for _ in 0..30 { let num = spy_node.read().unwrap().convergence(); - let mut v: Vec = spy_node.read().unwrap().rpc_peers(); + let v: Vec = spy_node.read().unwrap().rpc_peers(); // There's only one person excluding the spy node (the leader) who should see // two nodes on the network if num >= 2 && v.len() >= 1 { @@ -1605,7 +1605,7 @@ fn test_broadcast_last_tick() { // Check that the nodes got the last broadcasted blob for (_, receiver) in blob_fetch_stages.iter() { let mut last_tick_blob: SharedBlob = SharedBlob::default(); - while let Ok(mut new_blobs) = receiver.try_recv() { + while let Ok(new_blobs) = receiver.try_recv() { let last_blob = new_blobs.into_iter().find(|b| { b.read().unwrap().index().expect("Expected index in blob") == last_tick_entry_height - 1 diff --git a/tests/programs.rs b/tests/programs.rs index d5c1776f0..20f4fe1b2 100644 --- a/tests/programs.rs +++ b/tests/programs.rs @@ -1,9 +1,9 @@ -extern crate bincode; -extern crate elf; -extern crate serde_derive; -extern crate solana; -extern crate solana_native_loader; -extern crate solana_sdk; + + + +use solana; +use solana_native_loader; + use solana::bank::Bank; use solana::logger; diff --git a/tests/replicator.rs b/tests/replicator.rs index beed577de..ae3779326 100644 --- a/tests/replicator.rs +++ b/tests/replicator.rs @@ -1,7 +1,7 @@ #[macro_use] extern crate log; -extern crate solana; -extern crate solana_sdk; + + use solana::client::mk_client; use solana::cluster_info::{Node, NodeInfo};