refactor: Fix compilation warnings across multiple crates

- Remove unused imports (Filter, Digest, Resource, etc.)
- Prefix unused variables with underscore (_pk, _size)
- Fix snake_case naming for local variables
- Remove unused ArgumentError enum in pmoupnp
- Apply cargo fix suggestions for unused imports

Remaining warnings are async_fn_in_trait style warnings which
would require API breaking changes to address.
This commit is contained in:
Claude
2025-11-04 22:20:35 +00:00
parent 701decfc55
commit 5d88d3a25e
10 changed files with 19 additions and 43 deletions

View File

@@ -1,5 +1,4 @@
use anyhow::Result; use anyhow::Result;
use sha1::{Digest, Sha1};
use std::{ use std::{
path::{Path, PathBuf}, path::{Path, PathBuf},
sync::Arc, sync::Arc,

View File

@@ -4,7 +4,7 @@ use crate::playlist::Playlist;
use crate::track::PlaylistTrack; use crate::track::PlaylistTrack;
use crate::Result; use crate::Result;
use pmocache::cache_trait::FileCache; use pmocache::cache_trait::FileCache;
use pmodidl::{Container, Item, Resource}; use pmodidl::{Container, Item};
use std::sync::atomic::{AtomicUsize, Ordering}; use std::sync::atomic::{AtomicUsize, Ordering};
use std::sync::Arc; use std::sync::Arc;

View File

@@ -1,6 +1,5 @@
//! WriteHandle : accès exclusif en écriture à une playlist //! WriteHandle : accès exclusif en écriture à une playlist
use crate::playlist::core::PlaylistConfig;
use crate::playlist::record::Record; use crate::playlist::record::Record;
use crate::playlist::Playlist; use crate::playlist::Playlist;
use crate::Result; use crate::Result;
@@ -185,7 +184,7 @@ impl WriteHandle {
// Créer la nouvelle playlist persistante // Créer la nouvelle playlist persistante
let manager = crate::manager::PlaylistManager(); let manager = crate::manager::PlaylistManager();
let mut new_handle = manager.create_persistent_playlist(new_id).await?; let new_handle = manager.create_persistent_playlist(new_id).await?;
// Copier le titre et la config // Copier le titre et la config
new_handle.set_title(title).await?; new_handle.set_title(title).await?;

View File

@@ -4,7 +4,6 @@ pub mod core;
pub mod record; pub mod record;
use self::core::{PlaylistConfig, PlaylistCore}; use self::core::{PlaylistConfig, PlaylistCore};
use self::record::Record;
use std::sync::atomic::{AtomicU8, Ordering}; use std::sync::atomic::{AtomicU8, Ordering};
use std::sync::{Arc, Weak}; use std::sync::{Arc, Weak};
use std::time::SystemTime; use std::time::SystemTime;

View File

@@ -25,11 +25,10 @@ use tracing::Level;
use tracing_subscriber::{ use tracing_subscriber::{
Registry, Registry,
filter::LevelFilter, filter::LevelFilter,
layer::{Filter, SubscriberExt}, layer::SubscriberExt,
reload, reload,
util::SubscriberInitExt, util::SubscriberInitExt,
}; };
use utoipa::OpenApi;
/// Représente une entrée de log /// Représente une entrée de log
#[derive(Debug, Clone, Serialize)] #[derive(Debug, Clone, Serialize)]
@@ -440,7 +439,7 @@ fn level_to_levelfilter(level: Level) -> LevelFilter {
/// Crée le router pour l'API de gestion des logs /// Crée le router pour l'API de gestion des logs
pub fn create_logs_router(log_state: LogState) -> axum::Router { pub fn create_logs_router(log_state: LogState) -> axum::Router {
use axum::routing::{get, post}; use axum::routing::get;
axum::Router::new() axum::Router::new()
.route("/log_setup", get(log_setup_get).post(log_setup_post)) .route("/log_setup", get(log_setup_get).post(log_setup_post))
.with_state(log_state) .with_state(log_state)

View File

@@ -122,10 +122,10 @@ impl SourceCacheManager {
let cache = self.track_cache.read().await; let cache = self.track_cache.read().await;
if let Some(metadata) = cache.get(object_id) { if let Some(metadata) = cache.get(object_id) {
if let Some(ref pk) = metadata.cached_audio_pk { if let Some(ref _pk) = metadata.cached_audio_pk {
#[cfg(feature = "server")] #[cfg(feature = "server")]
{ {
let url = pmoupnp::cache_registry::build_audio_url(pk, Some("stream")) let url = pmoupnp::cache_registry::build_audio_url(_pk, Some("stream"))
.map_err(|e| MusicSourceError::CacheError(e.to_string()))?; .map_err(|e| MusicSourceError::CacheError(e.to_string()))?;
return Ok(url); return Ok(url);
} }
@@ -147,7 +147,7 @@ impl SourceCacheManager {
let cache = self.track_cache.read().await; let cache = self.track_cache.read().await;
if let Some(metadata) = cache.get(object_id) { if let Some(metadata) = cache.get(object_id) {
if let Some(ref pk) = metadata.cached_audio_pk { if let Some(ref _pk) = metadata.cached_audio_pk {
// TODO: Ajouter get_info() à AudioCache // TODO: Ajouter get_info() à AudioCache
// Pour l'instant, on retourne juste Cached sans taille // Pour l'instant, on retourne juste Cached sans taille
return Ok(CacheStatus::Cached { size_bytes: 0 }); return Ok(CacheStatus::Cached { size_bytes: 0 });
@@ -181,10 +181,10 @@ impl SourceCacheManager {
/// # Returns /// # Returns
/// ///
/// L'URL complète de l'image /// L'URL complète de l'image
pub fn cover_url(&self, pk: &str, size: Option<usize>) -> Result<String> { pub fn cover_url(&self, _pk: &str, _size: Option<usize>) -> Result<String> {
#[cfg(feature = "server")] #[cfg(feature = "server")]
{ {
pmoupnp::cache_registry::build_cover_url(pk, size) pmoupnp::cache_registry::build_cover_url(_pk, _size)
.map_err(|e| MusicSourceError::CacheError(e.to_string())) .map_err(|e| MusicSourceError::CacheError(e.to_string()))
} }
#[cfg(not(feature = "server"))] #[cfg(not(feature = "server"))]

View File

@@ -1,10 +1,8 @@
use std::{ use std::{
collections::{HashMap, HashSet}, collections::{HashMap, HashSet},
env::var,
sync::Arc, sync::Arc,
}; };
use bevy_reflect::Reflect;
use xmltree::{Element, XMLNode}; use xmltree::{Element, XMLNode};
use crate::actions::{Action, ActionData, ActionInstance, ArgInstanceSet}; use crate::actions::{Action, ActionData, ActionInstance, ArgInstanceSet};

View File

@@ -1,6 +1,6 @@
use std::sync::Arc; use std::sync::Arc;
use tracing::{info, trace}; use tracing::info;
use xmltree::{Element, XMLNode}; use xmltree::{Element, XMLNode};
use crate::actions::{Action, ActionHandler, ActionInstance, Argument, ArgumentSet}; use crate::actions::{Action, ActionHandler, ActionInstance, Argument, ArgumentSet};

View File

@@ -17,21 +17,3 @@ impl From<std::io::Error> for ActionError {
ActionError::GeneralError(format!("IO error: {}", err)) ActionError::GeneralError(format!("IO error: {}", err))
} }
} }
#[derive(Error, Debug)]
pub enum ArgumentError {
#[error("Argument error: {0}")]
GeneralError(String),
#[error("Argument error: {0}")]
ArgumentError(String),
#[error("Set operation error: {0}")]
SetError(String),
}
impl From<std::io::Error> for ArgumentError {
fn from(err: std::io::Error) -> Self {
ArgumentError::GeneralError(format!("IO error: {}", err))
}
}

View File

@@ -47,21 +47,21 @@ impl UpnpObject for Service {
elem.children.push(XMLNode::Element(service_id)); elem.children.push(XMLNode::Element(service_id));
// SCPDURL // SCPDURL
let mut SCPDURL = Element::new("SCPDURL"); let mut scpdurl = Element::new("SCPDURL");
SCPDURL.children.push(XMLNode::Text(self.scpd_route())); scpdurl.children.push(XMLNode::Text(self.scpd_route()));
elem.children.push(XMLNode::Element(SCPDURL)); elem.children.push(XMLNode::Element(scpdurl));
// controlURL // controlURL
let mut controlURL = Element::new("controlURL"); let mut control_url = Element::new("controlURL");
controlURL control_url
.children .children
.push(XMLNode::Text(self.control_route())); .push(XMLNode::Text(self.control_route()));
elem.children.push(XMLNode::Element(controlURL)); elem.children.push(XMLNode::Element(control_url));
// eventSubURL // eventSubURL
let mut eventSubURL = Element::new("eventSubURL"); let mut event_sub_url = Element::new("eventSubURL");
eventSubURL.children.push(XMLNode::Text(self.event_route())); event_sub_url.children.push(XMLNode::Text(self.event_route()));
elem.children.push(XMLNode::Element(eventSubURL)); elem.children.push(XMLNode::Element(event_sub_url));
elem elem
} }