From 26f1de19071e839dc60217dd5da1e55dac9bb277 Mon Sep 17 00:00:00 2001 From: Gregor Reitzenstein Date: Tue, 26 Jan 2021 14:33:50 +0000 Subject: [PATCH] Fixes all those unused import warnings --- src/actor.rs | 8 +++---- src/api.rs | 4 ---- src/api/auth.rs | 5 ----- src/api/machines.rs | 1 - src/builtin.rs | 9 +------- src/config.rs | 5 +---- src/connection.rs | 4 +--- src/db.rs | 4 ++-- src/db/access.rs | 32 ++++++++-------------------- src/db/access/internal.rs | 43 +++++++++++++++++--------------------- src/db/machine.rs | 20 ------------------ src/db/machine/internal.rs | 11 ---------- src/db/pass.rs | 3 +-- src/db/user/internal.rs | 2 +- src/initiator.rs | 5 +---- src/log.rs | 1 - src/machine.rs | 6 ++---- src/main.rs | 9 -------- src/modules.rs | 8 ------- src/modules/shelly.rs | 8 ------- src/network.rs | 10 +++------ src/server.rs | 9 -------- 22 files changed, 44 insertions(+), 163 deletions(-) diff --git a/src/actor.rs b/src/actor.rs index fdbff1c..1938cdd 100644 --- a/src/actor.rs +++ b/src/actor.rs @@ -1,14 +1,12 @@ use std::pin::Pin; use std::task::{Poll, Context}; -use std::sync::{Arc, Mutex}; +use std::sync::Mutex; use std::collections::HashMap; use std::future::Future; -use smol::Executor; - -use futures::{future::BoxFuture, Stream, StreamExt}; +use futures::{future::BoxFuture, Stream}; use futures::channel::mpsc; -use futures_signals::signal::{Signal, MutableSignalCloned, MutableSignal, Mutable}; +use futures_signals::signal::Signal; use crate::db::machine::MachineState; use crate::config::Config; diff --git a/src/api.rs b/src/api.rs index 70604b7..4819dac 100644 --- a/src/api.rs +++ b/src/api.rs @@ -1,7 +1,5 @@ use std::sync::Arc; -use slog::Logger; - use capnp::capability::{Params, Results, Promise}; use crate::schema::connection_capnp; @@ -9,8 +7,6 @@ use crate::connection::Session; use crate::db::Databases; -use crate::builtin; - use crate::network::Network; pub mod auth; diff --git a/src/api/auth.rs b/src/api/auth.rs index 6c3bbc2..bb5ab88 100644 --- a/src/api/auth.rs +++ b/src/api/auth.rs @@ -5,8 +5,6 @@ use std::sync::Arc; -use slog::Logger; - use rsasl::{ SASL, Property, @@ -21,9 +19,6 @@ use serde::{Serialize, Deserialize}; use capnp::capability::{Params, Results, Promise}; -use crate::error::Result; -use crate::config::Settings; - use crate::api::Session; pub use crate::schema::auth_capnp; diff --git a/src/api/machines.rs b/src/api/machines.rs index 15ddf28..ad5b014 100644 --- a/src/api/machines.rs +++ b/src/api/machines.rs @@ -7,7 +7,6 @@ use crate::schema::api_capnp::machines; use crate::connection::Session; use crate::db::Databases; -use crate::db::machine::uuid_from_api; use crate::network::Network; diff --git a/src/builtin.rs b/src/builtin.rs index dc32f11..d867643 100644 --- a/src/builtin.rs +++ b/src/builtin.rs @@ -1,12 +1,5 @@ -use std::collections::HashMap; use lazy_static::lazy_static; -use crate::db::access::{ - Permission, - PermissionBuf, - PermRule, - RoleIdentifier, - Role, -}; +use crate::db::access::Permission; lazy_static! { static ref AUTH_PERM: &'static Permission = Permission::new("bffh.auth"); diff --git a/src/config.rs b/src/config.rs index a18b7d6..b240c59 100644 --- a/src/config.rs +++ b/src/config.rs @@ -1,8 +1,5 @@ use std::default::Default; -use std::str::FromStr; -use std::path::{Path, PathBuf}; -use std::io::Read; -use std::fs; +use std::path::Path; use std::collections::HashMap; use serde::{Serialize, Deserialize}; diff --git a/src/connection.rs b/src/connection.rs index 2915c5e..e351d8e 100644 --- a/src/connection.rs +++ b/src/connection.rs @@ -6,8 +6,7 @@ use slog::Logger; use smol::net::TcpStream; -use crate::error::{Error, Result}; -use crate::api::auth; +use crate::error::Result; use crate::api::Bootstrap; use capnp_rpc::{twoparty, rpc_twoparty_capnp}; @@ -17,7 +16,6 @@ use crate::schema::connection_capnp; use crate::db::Databases; use crate::db::access::{AccessControl, Permission}; use crate::db::user::User; -use crate::builtin; use crate::network::Network; #[derive(Debug, Clone)] diff --git a/src/db.rs b/src/db.rs index e3c044c..09bf096 100644 --- a/src/db.rs +++ b/src/db.rs @@ -5,7 +5,7 @@ use std::str::FromStr; use slog::Logger; use crate::error::Result; -use crate::config::Settings; +use crate::config::Config; /// (Hashed) password database pub mod pass; @@ -34,7 +34,7 @@ pub struct Databases { const LMDB_MAX_DB: u32 = 16; impl Databases { - pub fn new(log: &Logger, config: &Settings) -> Result { + pub fn new(log: &Logger, config: &Config) -> Result { // Initialize the LMDB environment. This blocks until the mmap() finishes info!(log, "LMDB env"); diff --git a/src/db/access.rs b/src/db/access.rs index 81e7dc6..3057ff2 100644 --- a/src/db/access.rs +++ b/src/db/access.rs @@ -2,29 +2,15 @@ //! use std::fmt; -use std::collections::HashSet; use std::collections::HashMap; use std::cmp::Ordering; -use std::path::{Path, PathBuf}; +use std::path::Path; use std::fs; -use std::io::Write; -use std::sync::Arc; use std::iter::FromIterator; use std::convert::{TryFrom, Into}; -use flexbuffers; -use serde::{ - Serialize, - Serializer, +use serde::{Serialize, Deserialize}; - Deserialize, - Deserializer, -}; - -use slog::Logger; -use lmdb::{Environment, Transaction, RwTransaction, Cursor}; - -use crate::config::Settings; use crate::error::Result; pub mod internal; @@ -77,7 +63,7 @@ impl fmt::Debug for AccessControl { pub trait RoleDB { fn get_type_name(&self) -> &'static str; - fn get_role(&self, roleID: &RoleIdentifier) -> Result>; + fn get_role(&self, role_id: &RoleIdentifier) -> Result>; /// Check if a given user has the given permission /// @@ -95,8 +81,8 @@ pub trait RoleDB { fn check_roles(&self, roles: &[RoleIdentifier], perm: &Permission) -> Result { // Tally all roles. Makes dependent roles easier let mut roleset = HashMap::new(); - for roleID in roles { - self.tally_role(&mut roleset, roleID)?; + for role_id in roles { + self.tally_role(&mut roleset, role_id)?; } // Iter all unique role->permissions we've found and early return on match. @@ -115,16 +101,16 @@ pub trait RoleDB { /// /// A Default implementation exists which adapter may overwrite with more efficient /// implementations. - fn tally_role(&self, roles: &mut HashMap, roleID: &RoleIdentifier) -> Result<()> { - if let Some(role) = self.get_role(roleID)? { + fn tally_role(&self, roles: &mut HashMap, role_id: &RoleIdentifier) -> Result<()> { + if let Some(role) = self.get_role(role_id)? { // Only check and tally parents of a role at the role itself if it's the first time we // see it - if !roles.contains_key(&roleID) { + if !roles.contains_key(&role_id) { for parent in role.parents.iter() { self.tally_role(roles, parent)?; } - roles.insert(roleID.clone(), role); + roles.insert(role_id.clone(), role); } } diff --git a/src/db/access/internal.rs b/src/db/access/internal.rs index 7fb22a1..b5bf0af 100644 --- a/src/db/access/internal.rs +++ b/src/db/access/internal.rs @@ -1,23 +1,18 @@ use std::collections::HashMap; -use std::convert::TryInto; - -use std::path::{Path, PathBuf}; -use std::fs; -use std::io::Write; +use std::path::Path; use std::sync::Arc; use flexbuffers; -use serde::{Serialize, Deserialize}; use slog::Logger; -use lmdb::{Environment, Transaction, RwTransaction, Cursor, Iter}; +use lmdb::{Environment, Transaction, RwTransaction, Cursor}; use crate::config::Settings; use crate::error::Result; use crate::db::access::{Permission, Role, RoleIdentifier, RoleDB}; -use crate::db::user::{User, UserData}; +use crate::db::user::UserData; #[derive(Clone, Debug)] pub struct Internal { @@ -39,9 +34,9 @@ impl Internal { debug!(self.log, "Checking user {:?} for permission {:?}", user, perm.as_ref()); // Tally all roles. Makes dependent roles easier let mut roles = HashMap::new(); - for roleID in user.roles.iter() { - debug!(self.log, "Tallying role {} for its parents", roleID); - self._tally_role(txn, &mut roles, roleID)?; + for role_id in user.roles.iter() { + debug!(self.log, "Tallying role {} for its parents", role_id); + self._tally_role(txn, &mut roles, role_id)?; } // Iter all unique role->permissions we've found and early return on match. @@ -62,26 +57,26 @@ impl Internal { return Ok(false); } - fn _tally_role(&self, txn: &T, roles: &mut HashMap, roleID: &RoleIdentifier) -> Result<()> { - if let Some(role) = self._get_role(txn, roleID)? { + fn _tally_role(&self, txn: &T, roles: &mut HashMap, role_id: &RoleIdentifier) -> Result<()> { + if let Some(role) = self._get_role(txn, role_id)? { // Only check and tally parents of a role at the role itself if it's the first time we // see it - if !roles.contains_key(&roleID) { + if !roles.contains_key(&role_id) { for parent in role.parents.iter() { self._tally_role(txn, roles, parent)?; } - roles.insert(roleID.clone(), role); + roles.insert(role_id.clone(), role); } } else { - info!(self.log, "Did not find role {} while trying to tally", roleID); + info!(self.log, "Did not find role {} while trying to tally", role_id); } Ok(()) } - pub fn _get_role<'txn, T: Transaction>(&self, txn: &'txn T, roleID: &RoleIdentifier) -> Result> { - let string = format!("{}", roleID); + pub fn _get_role<'txn, T: Transaction>(&self, txn: &'txn T, role_id: &RoleIdentifier) -> Result> { + let string = format!("{}", role_id); match txn.get(self.roledb, &string.as_bytes()) { Ok(bytes) => { Ok(Some(flexbuffers::from_slice(bytes)?)) @@ -91,9 +86,9 @@ impl Internal { } } - fn put_role(&self, txn: &mut RwTransaction, roleID: &RoleIdentifier, role: Role) -> Result<()> { + fn put_role(&self, txn: &mut RwTransaction, role_id: &RoleIdentifier, role: Role) -> Result<()> { let bytes = flexbuffers::to_vec(role)?; - let string = format!("{}", roleID); + let string = format!("{}", role_id); txn.put(self.roledb, &string.as_bytes(), &bytes, lmdb::WriteFlags::empty())?; Ok(()) @@ -154,14 +149,14 @@ impl RoleDB for Internal { self._check(&txn, user, &perm) } - fn get_role(&self, roleID: &RoleIdentifier) -> Result> { + fn get_role(&self, role_id: &RoleIdentifier) -> Result> { let txn = self.env.begin_ro_txn()?; - self._get_role(&txn, roleID) + self._get_role(&txn, role_id) } - fn tally_role(&self, roles: &mut HashMap, roleID: &RoleIdentifier) -> Result<()> { + fn tally_role(&self, roles: &mut HashMap, role_id: &RoleIdentifier) -> Result<()> { let txn = self.env.begin_ro_txn()?; - self._tally_role(&txn, roles, roleID) + self._tally_role(&txn, roles, role_id) } } diff --git a/src/db/machine.rs b/src/db/machine.rs index e28d66f..5ebbc81 100644 --- a/src/db/machine.rs +++ b/src/db/machine.rs @@ -1,34 +1,14 @@ -use std::str::FromStr; -use std::collections::HashMap; -use std::fs; -use std::fs::File; -use std::io::{Read, Write}; -use std::path::{Path, PathBuf}; - use slog::Logger; use serde::{Serialize, Deserialize}; use std::sync::Arc; -use smol::lock::RwLock; use crate::error::Result; use crate::config::Settings; -use crate::db::access; - -use capnp::Error; use uuid::Uuid; -use lmdb::{Transaction, RwTransaction, Cursor}; - -use smol::channel::{Receiver, Sender}; - -use futures::{Future, Stream, StreamExt}; -use futures_signals::signal::*; - -use crate::machine::MachineDescription; - use crate::db::user::UserId; pub mod internal; diff --git a/src/db/machine/internal.rs b/src/db/machine/internal.rs index 74cbadd..59de116 100644 --- a/src/db/machine/internal.rs +++ b/src/db/machine/internal.rs @@ -1,21 +1,10 @@ use std::sync::Arc; -use std::fs; -use std::io::Write; -use std::str::FromStr; -use std::path::PathBuf; use slog::Logger; -use uuid::Uuid; use lmdb::{Environment, Transaction, RwTransaction, Cursor}; -use futures::{Future, Stream, StreamExt}; -use futures::stream; -use futures::future::Ready; -use futures::stream::Iter; - use super::{MachineIdentifier, MachineState}; -use crate::machine::MachineDescription; use crate::error::Result; #[derive(Clone, Debug)] diff --git a/src/db/pass.rs b/src/db/pass.rs index 4ee9321..9b3c415 100644 --- a/src/db/pass.rs +++ b/src/db/pass.rs @@ -4,8 +4,7 @@ use std::fs; use std::collections::HashMap; use argon2; -use lmdb::{Environment, Transaction, RwTransaction, Cursor}; -use rand::prelude::*; +use lmdb::{Environment, Transaction, RwTransaction}; use slog::Logger; use crate::error::Result; diff --git a/src/db/user/internal.rs b/src/db/user/internal.rs index 49c5580..938ee23 100644 --- a/src/db/user/internal.rs +++ b/src/db/user/internal.rs @@ -1,7 +1,7 @@ use std::sync::Arc; use slog::Logger; -use lmdb::{Environment, Transaction, RwTransaction, Cursor}; +use lmdb::{Environment, Cursor, Transaction, RwTransaction}; use crate::error::Result; diff --git a/src/initiator.rs b/src/initiator.rs index f2c4494..a207966 100644 --- a/src/initiator.rs +++ b/src/initiator.rs @@ -3,17 +3,14 @@ use std::task::{Poll, Context}; use std::future::Future; use std::collections::HashMap; -use smol::{Task, Timer}; +use smol::Timer; use slog::Logger; use paho_mqtt::AsyncClient; -use futures::FutureExt; use futures::future::BoxFuture; -use genawaiter::{sync::{Gen, GenBoxed, Co}, GeneratorState}; - use futures_signals::signal::{Signal, Mutable, MutableSignalCloned}; use crate::machine::{Machine, ReturnToken}; use crate::db::machine::MachineState; diff --git a/src/log.rs b/src/log.rs index 9f052e1..0b0715b 100644 --- a/src/log.rs +++ b/src/log.rs @@ -1,7 +1,6 @@ use slog::{Drain, Logger}; use slog_async; use slog_term::{TermDecorator, FullFormat}; -use crate::config::Settings; pub fn init() -> Logger { let decorator = TermDecorator::new().build(); diff --git a/src/machine.rs b/src/machine.rs index e0a3534..92c07c4 100644 --- a/src/machine.rs +++ b/src/machine.rs @@ -1,4 +1,4 @@ -use std::ops::{Deref, DerefMut}; +use std::ops::Deref; use std::iter::FromIterator; use std::sync::Arc; use futures_util::lock::Mutex; @@ -18,12 +18,10 @@ use futures_signals::signal::Signal; use futures_signals::signal::SignalExt; use futures_signals::signal::{Mutable, ReadOnlyMutable}; -use uuid::Uuid; - use crate::error::{Result, Error}; use crate::db::access; -use crate::db::machine::{MachineIdentifier, Status, MachineState}; +use crate::db::machine::{MachineIdentifier, MachineState}; use crate::db::user::{User, UserData}; use crate::network::MachineMap; diff --git a/src/main.rs b/src/main.rs index 0673956..5d00435 100644 --- a/src/main.rs +++ b/src/main.rs @@ -24,12 +24,6 @@ mod initiator; use clap::{App, Arg}; -use futures::prelude::*; -use futures::executor::{LocalPool, ThreadPool}; -use futures::compat::Stream01CompatExt; -use futures::join; -use futures::task::LocalSpawn; - use std::io; use std::io::Write; use std::path::PathBuf; @@ -37,9 +31,6 @@ use std::str::FromStr; use std::sync::Arc; -use lmdb::Transaction; -use smol::net::TcpListener; - use smol::Executor; use error::Error; diff --git a/src/modules.rs b/src/modules.rs index 51e218c..7f99a56 100644 --- a/src/modules.rs +++ b/src/modules.rs @@ -5,13 +5,5 @@ //! Additionally, FFI modules to other languages (Python/Lua/...) make the most sense in here as //! well. -use slog::Logger; - mod shelly; pub use shelly::Shelly; - -use futures::prelude::*; -use futures::task::Spawn; - -use crate::config::Settings; -use crate::error::Result; diff --git a/src/modules/shelly.rs b/src/modules/shelly.rs index 798a1a5..1e12df7 100644 --- a/src/modules/shelly.rs +++ b/src/modules/shelly.rs @@ -1,17 +1,9 @@ use slog::Logger; -use crate::config::Settings; -use crate::error::Result; use crate::db::machine::Status; -use std::pin::Pin; use futures::prelude::*; -use futures::channel::mpsc; use futures::future::BoxFuture; -use futures::ready; -use futures::task::{Poll, Context, Waker, Spawn, FutureObj}; -use futures::StreamExt; -use futures_signals::signal::Signal; use crate::actor::Actuator; use crate::db::machine::MachineState; diff --git a/src/network.rs b/src/network.rs index a962e20..3fcdec5 100644 --- a/src/network.rs +++ b/src/network.rs @@ -1,17 +1,13 @@ use std::fmt; -use std::sync::{Arc, Mutex, MutexGuard, TryLockResult}; +use std::sync::Mutex; use std::collections::HashMap; -use smol::Executor; - use futures::channel::mpsc; -use futures_signals::signal::{Signal, MutableSignalCloned, Mutable}; +use futures_signals::signal::Mutable; use crate::machine::Machine; -use crate::actor::{Actor, ActorSignal}; -use crate::initiator::Initiator; -use crate::db::machine::MachineState; +use crate::actor::ActorSignal; use crate::error::Result; diff --git a/src/server.rs b/src/server.rs index 8e14ad9..38fc533 100644 --- a/src/server.rs +++ b/src/server.rs @@ -9,18 +9,9 @@ use smol::net::TcpListener; use smol::net::unix::UnixStream; use smol::LocalExecutor; -use clap::{App, Arg}; - use futures::prelude::*; -use futures::executor::{LocalPool, ThreadPool}; -use futures::compat::Stream01CompatExt; -use futures::join; -use futures::task::LocalSpawn; use std::io; -use std::io::Write; -use std::path::PathBuf; -use std::str::FromStr; use std::sync::Arc;