From 8a7cbca4619be52d525420eae453b27248c7fdb3 Mon Sep 17 00:00:00 2001 From: Lynne Date: Fri, 24 Sep 2021 18:11:25 +1000 Subject: [PATCH] cargo fmt, rearranging use statements by setting `group_imports = "StdExternalCrate"` in `rustfmt.toml`, cargo fmt/rustfmt rearranges your use statements into three groups: - std/core/alloc, - followed by external crates, - followed by self/super/crate --- rustfmt.toml | 3 ++- src/files.rs | 10 +++++----- src/findings.rs | 7 +++---- src/lib.rs | 6 +++--- src/main.rs | 3 +-- src/parameters.rs | 10 ++++++---- src/tests/mod.rs | 22 +++++++++++++--------- 7 files changed, 33 insertions(+), 28 deletions(-) diff --git a/rustfmt.toml b/rustfmt.toml index 0003f27..9997ee3 100644 --- a/rustfmt.toml +++ b/rustfmt.toml @@ -2,4 +2,5 @@ max_width = 120 fn_single_line = true hard_tabs = true tab_spaces = 2 -newline_style = "Unix" \ No newline at end of file +newline_style = "Unix" +group_imports = "StdExternalCrate" \ No newline at end of file diff --git a/src/files.rs b/src/files.rs index e73be28..29f75cf 100644 --- a/src/files.rs +++ b/src/files.rs @@ -1,8 +1,3 @@ -use crate::findings::{Findings, ScanError}; -use crate::mime_db::MimeDb; -use crate::parameters::ScanOpts; -use crate::{String, MIMEDB}; - use std::collections::BTreeSet; use std::fs::File; use std::io; @@ -17,6 +12,11 @@ use mime::Mime; use mime_guess::from_ext; use walkdir::{DirEntry, WalkDir}; +use crate::findings::{Findings, ScanError}; +use crate::mime_db::MimeDb; +use crate::parameters::ScanOpts; +use crate::{String, MIMEDB}; + cfg_if! { if #[cfg(windows)] { /// Determines whether or not a file is hidden by checking its win32 file attributes. diff --git a/src/findings.rs b/src/findings.rs index 3dbef26..50a5495 100644 --- a/src/findings.rs +++ b/src/findings.rs @@ -1,14 +1,13 @@ +use std::fmt::{Display, Formatter}; use std::path::{Path, PathBuf}; use mime::Mime; +#[cfg(feature = "json")] +use serde::{ser::SerializeStruct, Serializer}; use crate::files::mime_extension_lookup; use crate::String; -#[cfg(feature = "json")] -use serde::{ser::SerializeStruct, Serializer}; -use std::fmt::{Display, Formatter}; - /// Information about a scanned file. #[derive(Ord, PartialOrd, Eq, PartialEq)] pub struct Findings { diff --git a/src/lib.rs b/src/lib.rs index 41449fe..2e81396 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -8,12 +8,12 @@ pub mod mime_db; pub mod parameters; pub mod utils; -use crate::findings::Findings; -use crate::mime_db::MimeDb; - use cfg_if::cfg_if; use once_cell::sync::OnceCell; +use crate::findings::Findings; +use crate::mime_db::MimeDb; + cfg_if! { if #[cfg(not(all(target_endian = "big", target_pointer_width = "32")))] { // most architectures diff --git a/src/main.rs b/src/main.rs index 07d5aaa..ba53f94 100644 --- a/src/main.rs +++ b/src/main.rs @@ -21,13 +21,12 @@ use std::io::{stdout, BufWriter, Write}; use std::process::exit; use clap::Clap; -use log::{debug, error, info, trace, warn, Level}; - use fif::files::{scan_directory, scan_from_walkdir}; use fif::formats::Format; use fif::parameters::OutputFormat; use fif::utils::{clap_long_version, os_name}; use fif::{formats, init_db, parameters}; +use log::{debug, error, info, trace, warn, Level}; #[cfg(test)] mod tests; diff --git a/src/parameters.rs b/src/parameters.rs index c20d36e..b5331b3 100644 --- a/src/parameters.rs +++ b/src/parameters.rs @@ -1,11 +1,13 @@ //! [Clap] struct used to parse command line arguments. +use std::collections::BTreeSet; +use std::path::PathBuf; + +use cfg_if::cfg_if; +use clap::{AppSettings, Clap}; + use crate::utils::{clap_long_version, clap_version}; use crate::String as StringType; -use cfg_if::cfg_if; -use clap::{AppSettings, Clap}; -use std::collections::BTreeSet; -use std::path::PathBuf; cfg_if! { if #[cfg(windows)] { diff --git a/src/tests/mod.rs b/src/tests/mod.rs index 3b2d536..4160a44 100644 --- a/src/tests/mod.rs +++ b/src/tests/mod.rs @@ -1,18 +1,18 @@ +use std::collections::HashMap; +use std::ffi::OsStr; +use std::path::{Path, PathBuf}; + +use clap::Clap; use fif::files::{mime_extension_lookup, BUF_SIZE}; use fif::files::{scan_directory, scan_from_walkdir}; use fif::findings::Findings; use fif::formats::{Format, PowerShell, Shell}; use fif::mime_db::MimeDb; use fif::String; - -use crate::parameters::Parameters; -use clap::Clap; use mime::{Mime, APPLICATION_OCTET_STREAM, APPLICATION_PDF, IMAGE_JPEG, IMAGE_PNG}; use crate::parameters::ExtensionSet; -use std::collections::HashMap; -use std::ffi::OsStr; -use std::path::{Path, PathBuf}; +use crate::parameters::Parameters; const JPEG_BYTES: &[u8] = b"\xFF\xD8\xFF"; const PNG_BYTES: &[u8] = b"\x89\x50\x4E\x47\x0D\x0A\x1A\x0A"; @@ -84,13 +84,15 @@ fn recommend_ext() { /// Create a simple directory with some files, run `scan_directory` on it, and ensure that the files have their /// associated mime types correctly deduced. fn simple_directory() { - use crate::parameters::ScanOpts; use std::borrow::Borrow; use std::env::set_current_dir; use std::fs::{canonicalize, File}; use std::io::Write; + use tempfile::tempdir; + use crate::parameters::ScanOpts; + // set of files to scan. all but the last files have magic numbers corresponding to their extension, except for // "wrong.jpg", which is actually a png. let mut files = HashMap::new(); @@ -379,8 +381,9 @@ fn outputs_move_commands() { #[cfg(feature = "json")] /// Ensure JSON output is valid. fn test_json() { - use crate::formats::Json; use std::io::Read; + + use crate::formats::Json; // create an example finding stating that "misnamed_file.png" has been identified as a jpeg file let entries = vec![Ok(Findings { file: Path::new("misnamed_file.png").to_path_buf(), @@ -466,8 +469,9 @@ fn verbosity() { #[test] /// Ensures that smart strings don't deviate from std's Strings fn validate_string_type() { - use fif::String as SmartString; use std::string::String as StdString; + + use fif::String as SmartString; assert_eq!(SmartString::new(), StdString::new()); assert_eq!(SmartString::from("smol"), StdString::from("smol")); assert_eq!(