From 6b58ac02cf81d6051d68f5fbd14678c188f33054 Mon Sep 17 00:00:00 2001 From: G2-Games Date: Fri, 24 Nov 2023 14:48:15 -0600 Subject: [PATCH] Fixed `cargo clippy` suggestions --- src/lib.rs | 6 ++--- src/music_controller/config.rs | 7 +++--- .../{music_controller.rs => controller.rs} | 0 src/music_storage/music_db.rs | 24 ++++++++----------- src/music_storage/playlist.rs | 2 +- src/music_storage/utils.rs | 7 +++--- src/{music_tracker => }/music_tracker.rs | 6 ++--- 7 files changed, 23 insertions(+), 29 deletions(-) rename src/music_controller/{music_controller.rs => controller.rs} (100%) rename src/{music_tracker => }/music_tracker.rs (99%) diff --git a/src/lib.rs b/src/lib.rs index a40622d..b676c9f 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -1,6 +1,4 @@ -pub mod music_tracker { - pub mod music_tracker; -} +pub mod music_tracker; pub mod music_storage { pub mod music_db; @@ -10,5 +8,5 @@ pub mod music_storage { pub mod music_controller { pub mod config; - pub mod music_controller; + pub mod controller; } diff --git a/src/music_controller/config.rs b/src/music_controller/config.rs index f450c9d..9b934d4 100644 --- a/src/music_controller/config.rs +++ b/src/music_controller/config.rs @@ -4,7 +4,7 @@ use std::path::PathBuf; use serde::{Deserialize, Serialize}; -use crate::music_tracker::music_tracker::{DiscordRPCConfig, LastFMConfig, ListenBrainzConfig}; +use crate::music_tracker::{DiscordRPCConfig, LastFMConfig, ListenBrainzConfig}; #[derive(Serialize, Deserialize, PartialEq, Eq)] pub struct Config { @@ -66,9 +66,8 @@ impl Config { fs::write(&temp_file, toml)?; // If configuration file already exists, delete it - match fs::metadata(config_file) { - Ok(_) => fs::remove_file(config_file)?, - Err(_) => {} + if fs::metadata(config_file).is_ok() { + fs::remove_file(config_file)? } fs::rename(temp_file, config_file)?; diff --git a/src/music_controller/music_controller.rs b/src/music_controller/controller.rs similarity index 100% rename from src/music_controller/music_controller.rs rename to src/music_controller/controller.rs diff --git a/src/music_storage/music_db.rs b/src/music_storage/music_db.rs index f9ef854..2bc3bd9 100644 --- a/src/music_storage/music_db.rs +++ b/src/music_storage/music_db.rs @@ -199,6 +199,7 @@ pub struct Album<'a> { discs: BTreeMap>, } +#[allow(clippy::len_without_is_empty)] impl Album<'_> { /// Returns the album title pub fn title(&self) -> &String { @@ -383,7 +384,7 @@ impl MusicLibrary { } // TODO: Handle more of these errors }; } else if extension == "cue" { - total += match self.add_cuesheet(&target_file.path().to_path_buf()) { + total += match self.add_cuesheet(target_file.path()) { Ok(added) => added, Err(error) => { errors += 1; @@ -457,7 +458,7 @@ impl MusicLibrary { } // Find images around the music file that can be used - let mut found_images = find_images(&target_file.to_path_buf()).unwrap(); + let mut found_images = find_images(target_file).unwrap(); album_art.append(&mut found_images); // Get the format as a string @@ -497,10 +498,10 @@ impl MusicLibrary { Ok(()) } - pub fn add_cuesheet(&mut self, cuesheet: &PathBuf) -> Result> { + pub fn add_cuesheet(&mut self, cuesheet: &Path) -> Result> { let mut tracks_added = 0; - let cue_data = parse_from_file(&cuesheet.as_path().to_string_lossy(), false).unwrap(); + let cue_data = parse_from_file(&cuesheet.to_string_lossy(), false).unwrap(); // Get album level information let album_title = &cue_data.title; @@ -515,10 +516,7 @@ impl MusicLibrary { } // Try to remove the original audio file from the db if it exists - match self.remove_uri(&URI::Local(audio_location.clone())) { - Ok(_) => tracks_added -= 1, - Err(_) => () - }; + if self.remove_uri(&URI::Local(audio_location.clone())).is_ok() { tracks_added -= 1 } let next_track = file.tracks.clone(); let mut next_track = next_track.iter().skip(1); @@ -626,12 +624,10 @@ impl MusicLibrary { } pub fn add_song(&mut self, new_song: Song) -> Result<(), Box> { - match self.query_uri(&new_song.location) { - Some(_) => { - return Err(format!("URI already in database: {:?}", new_song.location).into()) - } - None => (), + if self.query_uri(&new_song.location).is_some() { + return Err(format!("URI already in database: {:?}", new_song.location).into()) } + match new_song.location { URI::Local(_) if self.query_path(new_song.location.path()).is_some() => { return Err(format!("Location exists for {:?}", new_song.location).into()) @@ -854,7 +850,7 @@ impl MusicLibrary { /// Queries a list of albums by title pub fn query_albums( &self, - query_string: &String, // The query itself + query_string: &str, // The query itself ) -> Result, Box> { let all_albums = self.albums(); diff --git a/src/music_storage/playlist.rs b/src/music_storage/playlist.rs index 189b9e8..4f8892d 100644 --- a/src/music_storage/playlist.rs +++ b/src/music_storage/playlist.rs @@ -1,6 +1,6 @@ use crate::music_controller::config::Config; use std::path::Path; -pub fn playlist_add(_config: &Config, _playlist_name: &str, _song_paths: &Vec<&Path>) { +pub fn playlist_add(_config: &Config, _playlist_name: &str, _song_paths: &[&Path]) { unimplemented!() } diff --git a/src/music_storage/utils.rs b/src/music_storage/utils.rs index f4a7947..0687db4 100644 --- a/src/music_storage/utils.rs +++ b/src/music_storage/utils.rs @@ -1,5 +1,6 @@ use std::io::{BufReader, BufWriter}; -use std::{error::Error, fs, path::PathBuf}; +use std::path::{Path, PathBuf}; +use std::{error::Error, fs}; use walkdir::WalkDir; use file_format::{FileFormat, Kind}; @@ -8,7 +9,7 @@ use snap; use super::music_db::{Song, AlbumArt, URI}; use unidecode::unidecode; -pub(super) fn normalize(input_string: &String) -> String { +pub(super) fn normalize(input_string: &str) -> String { let mut normalized = unidecode(input_string); // Remove non alphanumeric characters @@ -65,7 +66,7 @@ pub(super) fn write_library( Ok(()) } -pub fn find_images(song_path: &PathBuf) -> Result, Box> { +pub fn find_images(song_path: &Path) -> Result, Box> { let mut images: Vec = Vec::new(); let song_dir = song_path.parent().ok_or("")?; diff --git a/src/music_tracker/music_tracker.rs b/src/music_tracker.rs similarity index 99% rename from src/music_tracker/music_tracker.rs rename to src/music_tracker.rs index f5bee70..3899f44 100644 --- a/src/music_tracker/music_tracker.rs +++ b/src/music_tracker.rs @@ -422,12 +422,12 @@ impl ListenBrainz { // Makes an api request to configured url with given json pub async fn api_request( &self, - request: &String, + request: &str, endpoint: &String, ) -> Result { - + surf::post(format!("{}{}", &self.config.api_url, endpoint)) - .body_string(request.clone()) + .body_string(request.to_owned()) .header("Authorization", format!("Token {}", self.config.auth_token)) .await }