From c53a0602ecdd977742cfbbfbe14d882fa11fff87 Mon Sep 17 00:00:00 2001 From: Jared Wolff Date: Thu, 5 Mar 2026 17:39:34 -0500 Subject: [PATCH] fix: resolve clippy warnings (collapsible_if, manual_clamp) Co-Authored-By: Claude Opus 4.6 --- src/infrastructure/services/exif_service.rs | 38 +++++++++---------- src/interfaces/api/handlers/file_handler.rs | 8 ++-- src/interfaces/api/handlers/photos_handler.rs | 2 +- 3 files changed, 23 insertions(+), 25 deletions(-) diff --git a/src/infrastructure/services/exif_service.rs b/src/infrastructure/services/exif_service.rs index 577948bc..a309e926 100644 --- a/src/infrastructure/services/exif_service.rs +++ b/src/infrastructure/services/exif_service.rs @@ -49,10 +49,10 @@ impl ExifService { meta.captured_at = parse_exif_datetime(&field.display_value().to_string()); } // Fallback to DateTimeDigitized if DateTimeOriginal is missing - if meta.captured_at.is_none() { - if let Some(field) = exif.get_field(Tag::DateTimeDigitized, In::PRIMARY) { - meta.captured_at = parse_exif_datetime(&field.display_value().to_string()); - } + if meta.captured_at.is_none() + && let Some(field) = exif.get_field(Tag::DateTimeDigitized, In::PRIMARY) + { + meta.captured_at = parse_exif_datetime(&field.display_value().to_string()); } // ── GPS coordinates ── @@ -84,14 +84,12 @@ impl ExifService { } // ── Orientation ── - if let Some(field) = exif.get_field(Tag::Orientation, In::PRIMARY) { - if let exif::Value::Short(ref v) = field.value { - if let Some(&o) = v.first() { - if (1..=8).contains(&o) { - meta.orientation = Some(o); - } - } - } + if let Some(field) = exif.get_field(Tag::Orientation, In::PRIMARY) + && let exif::Value::Short(ref v) = field.value + && let Some(&o) = v.first() + && (1..=8).contains(&o) + { + meta.orientation = Some(o); } // ── Dimensions ── @@ -102,15 +100,15 @@ impl ExifService { meta.height = parse_u32_value(&field.value); } // Fallback to ImageWidth/ImageLength if PixelXDimension is missing - if meta.width.is_none() { - if let Some(field) = exif.get_field(Tag::ImageWidth, In::PRIMARY) { - meta.width = parse_u32_value(&field.value); - } + if meta.width.is_none() + && let Some(field) = exif.get_field(Tag::ImageWidth, In::PRIMARY) + { + meta.width = parse_u32_value(&field.value); } - if meta.height.is_none() { - if let Some(field) = exif.get_field(Tag::ImageLength, In::PRIMARY) { - meta.height = parse_u32_value(&field.value); - } + if meta.height.is_none() + && let Some(field) = exif.get_field(Tag::ImageLength, In::PRIMARY) + { + meta.height = parse_u32_value(&field.value); } Some(meta) diff --git a/src/interfaces/api/handlers/file_handler.rs b/src/interfaces/api/handlers/file_handler.rs index 9f123a3b..a1dd2d3f 100755 --- a/src/interfaces/api/handlers/file_handler.rs +++ b/src/interfaces/api/handlers/file_handler.rs @@ -635,10 +635,10 @@ impl FileHandler { use crate::infrastructure::services::exif_service::ExifService; match tokio::fs::read(&file_path).await { Ok(data) => { - if let Some(meta) = ExifService::extract(&data) { - if let Err(e) = metadata_repo.upsert(&file_id, &meta).await { - tracing::warn!("Failed to store EXIF for {}: {}", file_id, e); - } + if let Some(meta) = ExifService::extract(&data) + && let Err(e) = metadata_repo.upsert(&file_id, &meta).await + { + tracing::warn!("Failed to store EXIF for {}: {}", file_id, e); } } Err(e) => { diff --git a/src/interfaces/api/handlers/photos_handler.rs b/src/interfaces/api/handlers/photos_handler.rs index e83965db..3cdaa32c 100644 --- a/src/interfaces/api/handlers/photos_handler.rs +++ b/src/interfaces/api/handlers/photos_handler.rs @@ -32,7 +32,7 @@ pub async fn list_photos( Query(params): Query, ) -> impl IntoResponse { let user_id = &auth_user.id; - let limit = params.limit.unwrap_or(200).min(500).max(1); + let limit = params.limit.unwrap_or(200).clamp(1, 500); let file_read = &state.repositories.file_read_repository;