From 72203fe4c921dac2d3e73c8a534056a092cef6ee Mon Sep 17 00:00:00 2001 From: Andreas Fackler Date: Thu, 8 Nov 2018 15:49:02 +0100 Subject: [PATCH] Fix some Clippy lints; migrate to new hbbft API. This fixes the build with the modified hbbft `Step` type, and addresses some uncontroversial Clippy warnings. Other Clippy lints are disabled. --- src/bin/peer_node.rs | 4 ++-- src/blockchain.rs | 2 +- src/hydrabadger/handler.rs | 12 +++++----- src/hydrabadger/hydrabadger.rs | 42 +++++++++++++++------------------- src/hydrabadger/state.rs | 4 ++-- src/lib.rs | 6 ++++- src/peer.rs | 12 +++++----- 7 files changed, 41 insertions(+), 41 deletions(-) diff --git a/src/bin/peer_node.rs b/src/bin/peer_node.rs index 0d1838a..e3cbf5b 100644 --- a/src/bin/peer_node.rs +++ b/src/bin/peer_node.rs @@ -104,9 +104,9 @@ impl Transaction { fn main() { env_logger::Builder::new() .format(|buf, record| { - write!( + writeln!( buf, - "{} [{}]: {}\n", + "{} [{}]: {}", Local::now().format("%Y-%m-%dT%H:%M:%S"), record.level(), record.args() diff --git a/src/blockchain.rs b/src/blockchain.rs index 81653f3..c25ca83 100644 --- a/src/blockchain.rs +++ b/src/blockchain.rs @@ -133,7 +133,7 @@ impl Block { /// Returns this block's hash. pub fn hash(&self) -> Option { - self.hash.clone() + self.hash } /// Returns this block's hash. diff --git a/src/hydrabadger/handler.rs b/src/hydrabadger/handler.rs index 471b6f8..692536d 100644 --- a/src/hydrabadger/handler.rs +++ b/src/hydrabadger/handler.rs @@ -514,7 +514,7 @@ impl Handler { } State::AwaitingMorePeersForKeyGeneration { .. } => { // info!("Removing peer ({}: '{}') from await list.", - // src_out_addr, src_uid.clone().unwrap()); + // src_out_addr, src_uid.unwrap()); // state.peer_connection_dropped(&*self.hdb.peers()); } State::GeneratingKeys { .. } => { @@ -575,7 +575,7 @@ impl Handler { .unwrap() .tx() .unbounded_send(WireMessage::welcome_received_change_add( - self.hdb.uid().clone(), + *self.hdb.uid(), self.hdb.secret_key().public_key(), net_state, )) @@ -613,7 +613,7 @@ impl Handler { } InternalMessageKind::PeerDisconnect => { - let dropped_src_uid = src_uid.clone().unwrap(); + let dropped_src_uid = src_uid.unwrap(); info!( "Peer disconnected: ({}: '{}').", src_out_addr, dropped_src_uid @@ -637,7 +637,7 @@ impl Handler { match peers .establish_validator(src_out_addr, (src_uid_new, src_in_addr, src_pk)) { - true => debug_assert!(src_uid_new == src_uid.clone().unwrap()), + true => debug_assert!(src_uid_new == src_uid.unwrap()), false => debug_assert!(src_uid.is_none()), } @@ -648,7 +648,7 @@ impl Handler { // New outgoing connection: WireMessageKind::WelcomeReceivedChangeAdd(src_uid_new, src_pk, net_state) => { debug!("Received NetworkState: \n{:?}", net_state); - assert!(src_uid_new == src_uid.clone().unwrap()); + assert!(src_uid_new == src_uid.unwrap()); let mut peers = self.hdb.peers_mut(); // Set new (outgoing-connection) peer's public info: @@ -691,7 +691,7 @@ impl Handler { self.handle_join_plan(jp, state, &peers)?; } - wm @ _ => warn!( + wm => warn!( "hydrabadger::Handler::handle_internal_message: Unhandled wire message: \ \n{:?}", wm, diff --git a/src/hydrabadger/hydrabadger.rs b/src/hydrabadger/hydrabadger.rs index 752367c..8672fe4 100644 --- a/src/hydrabadger/hydrabadger.rs +++ b/src/hydrabadger/hydrabadger.rs @@ -196,8 +196,7 @@ impl Hydrabadger { /// Returns a mutable reference to the inner state. pub(crate) fn state_mut(&self) -> RwLockWriteGuard> { - let state = self.inner.state.write(); - state + self.inner.state.write() } /// Sets the publicly visible state discriminant and returns the previous value. @@ -359,7 +358,7 @@ impl Hydrabadger { pub_info: Option<(Uid, InAddr, PublicKey)>, is_optimistic: bool, ) -> impl Future { - let uid = self.inner.uid.clone(); + let uid = self.inner.uid; let in_addr = self.inner.addr; info!("Initiating outgoing connection to: {}", remote_addr); @@ -409,25 +408,22 @@ impl Hydrabadger { .for_each(move |_epoch_no| { let hdb = self.clone(); - match hdb.state_info_stale().0 { - StateDsct::Validator => { - info!( - "Generating and inputting {} random transactions...", - self.inner.config.txn_gen_count - ); - // Send some random transactions to our internal HB instance. - let txns = gen_txns( - self.inner.config.txn_gen_count, - self.inner.config.txn_gen_bytes, - ); + if let StateDsct::Validator = hdb.state_info_stale().0 { + info!( + "Generating and inputting {} random transactions...", + self.inner.config.txn_gen_count + ); + // Send some random transactions to our internal HB instance. + let txns = gen_txns( + self.inner.config.txn_gen_count, + self.inner.config.txn_gen_bytes, + ); - hdb.send_internal(InternalMessage::hb_input( - hdb.inner.uid, - OutAddr(*hdb.inner.addr), - DhbInput::User(txns), - )); - } - _ => {} + hdb.send_internal(InternalMessage::hb_input( + hdb.inner.uid, + OutAddr(*hdb.inner.addr), + DhbInput::User(txns), + )); } Ok(()) }) @@ -489,7 +485,7 @@ impl Hydrabadger { let socket = TcpListener::bind(&self.inner.addr).unwrap(); info!("Listening on: {}", self.inner.addr); - let remotes = remotes.unwrap_or(HashSet::new()); + let remotes = remotes.unwrap_or_default(); let hdb = self.clone(); let listen = socket @@ -570,4 +566,4 @@ impl HydrabadgerWeak { }) }) } -} \ No newline at end of file +} diff --git a/src/hydrabadger/state.rs b/src/hydrabadger/state.rs index 4f3ec23..5c374a7 100644 --- a/src/hydrabadger/state.rs +++ b/src/hydrabadger/state.rs @@ -398,11 +398,11 @@ impl State { State::GeneratingKeys { .. } => { panic!("FIXME: RESTART KEY GENERATION PROCESS AFTER PEER DISCONNECTS."); } - State::Observer { dhb: _, .. } => { + State::Observer { .. } => { debug!("Ignoring peer disconnection when `State::Observer`."); return; } - State::Validator { dhb: _, .. } => { + State::Validator { .. } => { debug!("Ignoring peer disconnection when `State::Validator`."); return; } diff --git a/src/lib.rs b/src/lib.rs index ca98e55..0c03a05 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -1,5 +1,9 @@ #![cfg_attr(feature = "nightly", feature(alloc_system))] #![cfg_attr(feature = "nightly", feature(proc_macro))] +#![cfg_attr(feature = "cargo-clippy", + allow(large_enum_variant, new_without_default_derive, expect_fun_call, or_fun_call, + useless_format, cyclomatic_complexity, needless_pass_by_value, module_inception, + match_bool))] #[cfg(feature = "nightly")] extern crate alloc_system; @@ -63,7 +67,7 @@ use hbbft::{ crypto::{PublicKey, PublicKeySet}, dynamic_honey_badger::{JoinPlan, Message as DhbMessage, DynamicHoneyBadger, Input as DhbInput}, sync_key_gen::{Ack, Part}, - Step as MessagingStep, + DaStep as MessagingStep, Contribution as HbbftContribution, }; diff --git a/src/peer.rs b/src/peer.rs index 002f87d..3d4fcd0 100644 --- a/src/peer.rs +++ b/src/peer.rs @@ -53,7 +53,7 @@ impl PeerHandler { // Create a channel for this peer let (tx, rx) = mpsc::unbounded(); - let uid = pub_info.as_ref().map(|(uid, _, _)| uid.clone()); + let uid = pub_info.as_ref().map(|(uid, _, _)| *uid); // Add an entry for this `Peer` in the shared state map. hdb.peers_mut().add(out_addr, tx, pub_info); @@ -150,7 +150,7 @@ impl Future for PeerHandler { )) } kind => self.hdb.send_internal(InternalMessage::wire( - self.uid.clone(), + self.uid, self.out_addr, kind.into(), )), @@ -170,16 +170,16 @@ impl Drop for PeerHandler { debug!( "Removing peer ({}: '{}') from the list of peers.", self.out_addr, - self.uid.clone().unwrap() + self.uid.unwrap() ); // Remove peer transmitter from the lists: self.hdb.peers_mut().remove(&self.out_addr); - if let Some(uid) = self.uid.clone() { + if let Some(uid) = self.uid { debug!( "Sending peer ({}: '{}') disconnect internal message.", self.out_addr, - self.uid.clone().unwrap() + self.uid.unwrap() ); self.hdb @@ -281,7 +281,7 @@ impl Peer { } }, State::EstablishedObserver { uid, in_addr, pk } => { - if let Some(_) = pub_info { + if pub_info.is_some() { panic!( "Peer::establish_validator: `pub_info` must be `None` \ when upgrading an observer node."