From fbe5a8497a9d8b9b7093182f51c506825d6e34cf Mon Sep 17 00:00:00 2001 From: Valentin Popov Date: Sat, 18 Jul 2026 05:31:39 +0400 Subject: [PATCH] fix(clippy): address Rust 1.97 lints --- .../fparkan-render-vulkan/src/ffi/smoke.rs | 10 +++++----- .../src/planning_backend.rs | 9 ++------- crates/fparkan-animation/src/lib.rs | 1 - crates/fparkan-inspection/src/lib.rs | 8 ++++++++ crates/fparkan-nres/src/lib.rs | 2 +- crates/fparkan-resource/src/lib.rs | 20 +++++++++++-------- crates/fparkan-vfs/src/lib.rs | 4 ++-- crates/fparkan-world/src/lib.rs | 2 +- 8 files changed, 31 insertions(+), 25 deletions(-) diff --git a/adapters/fparkan-render-vulkan/src/ffi/smoke.rs b/adapters/fparkan-render-vulkan/src/ffi/smoke.rs index 228e763..afb5b2a 100644 --- a/adapters/fparkan-render-vulkan/src/ffi/smoke.rs +++ b/adapters/fparkan-render-vulkan/src/ffi/smoke.rs @@ -43,7 +43,7 @@ fn take_runtime_children_with_validation_snapshot< surface: &mut Option, device: &mut Option, swapchain: &mut Option, - validation: &Option, + validation: Option<&Validation>, capture: Capture, ) -> Option where @@ -52,7 +52,7 @@ where swapchain.take(); device.take(); surface.take(); - validation.as_ref().map(capture) + validation.map(capture) } struct RollbackOnDrop @@ -672,7 +672,7 @@ impl VulkanSmokeRenderer { &mut self.surface, &mut self.device, &mut self.swapchain, - &self.validation, + self.validation.as_ref(), VulkanValidationMessenger::report, ) .unwrap_or_default(); @@ -695,7 +695,7 @@ impl VulkanSmokeRenderer { &mut self.surface, &mut self.device, &mut self.swapchain, - &self.validation, + self.validation.as_ref(), VulkanValidationMessenger::report, ); self.validation.take(); @@ -864,7 +864,7 @@ mod tests { &mut surface, &mut device, &mut swapchain, - &validation, + validation.as_ref(), |_| { log.borrow_mut().push(TeardownStep::Snapshot); TeardownStep::Validation diff --git a/adapters/fparkan-render-vulkan/src/planning_backend.rs b/adapters/fparkan-render-vulkan/src/planning_backend.rs index 4936007..b68b054 100644 --- a/adapters/fparkan-render-vulkan/src/planning_backend.rs +++ b/adapters/fparkan-render-vulkan/src/planning_backend.rs @@ -10,9 +10,10 @@ use crate::{ }; /// Vulkan backend migration readiness. -#[derive(Clone, Copy, Debug, Eq, PartialEq)] +#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)] pub enum VulkanPlanningBackendState { /// Planning facade is configured and able to accept command lists. + #[default] Configured, /// Adapter is tracking a recoverable runtime surface/depth pipeline fault. Degraded, @@ -20,12 +21,6 @@ pub enum VulkanPlanningBackendState { Error, } -impl Default for VulkanPlanningBackendState { - fn default() -> Self { - Self::Configured - } -} - /// Diagnostics for planning-facade request tracking. #[derive(Clone, Debug, PartialEq)] pub struct VulkanPlanningRequestReport { diff --git a/crates/fparkan-animation/src/lib.rs b/crates/fparkan-animation/src/lib.rs index 7903f88..36db0e7 100644 --- a/crates/fparkan-animation/src/lib.rs +++ b/crates/fparkan-animation/src/lib.rs @@ -4,7 +4,6 @@ allow( clippy::cast_possible_truncation, clippy::cast_possible_wrap, - clippy::cast_precision_loss, clippy::expect_used, clippy::float_cmp, clippy::identity_op, diff --git a/crates/fparkan-inspection/src/lib.rs b/crates/fparkan-inspection/src/lib.rs index f4a085d..983505a 100644 --- a/crates/fparkan-inspection/src/lib.rs +++ b/crates/fparkan-inspection/src/lib.rs @@ -146,6 +146,8 @@ pub fn inspect_archive_file(path: &Path, sample_limit: usize) -> Result Result { }) } +// Preserves the shared structured-error type without changing callers to boxed errors. +#[allow(clippy::result_large_err)] fn read_resource_bytes_diagnostic( root: &Path, archive: &str, @@ -438,6 +444,8 @@ fn read_resource_bytes_diagnostic( Ok(Arc::from(bytes.into_owned())) } +// Preserves the shared structured-error type without changing callers to boxed errors. +#[allow(clippy::result_large_err)] fn load_model_document_from_root_diagnostic( root: &Path, archive: &str, diff --git a/crates/fparkan-nres/src/lib.rs b/crates/fparkan-nres/src/lib.rs index 86dd613..778b76b 100644 --- a/crates/fparkan-nres/src/lib.rs +++ b/crates/fparkan-nres/src/lib.rs @@ -1270,7 +1270,7 @@ mod tests { Err(NresError::Binary(DecodeError::LimitExceeded { count, limit - })) if count == i32::MAX as u64 && limit == DecodeLimits::default().max_entries as u64 + })) if count == i32::MAX as u64 && limit == u64::from(DecodeLimits::default().max_entries) )); } diff --git a/crates/fparkan-resource/src/lib.rs b/crates/fparkan-resource/src/lib.rs index e60b3ba..9697e8b 100644 --- a/crates/fparkan-resource/src/lib.rs +++ b/crates/fparkan-resource/src/lib.rs @@ -412,17 +412,21 @@ impl CachedResourceRepository { /// Creates a cached repository with a decoded payload entry budget. #[must_use] pub fn with_payload_cache_budget(vfs: Arc, max_payload_entries: usize) -> Self { - let mut limits = RepositoryLimits::default(); - limits.max_decoded_payload_entries = max_payload_entries; + let limits = RepositoryLimits { + max_decoded_payload_entries: max_payload_entries, + ..RepositoryLimits::default() + }; Self::with_limits(vfs, limits) } /// Creates a cached repository with decoded payload entry and byte budgets. #[must_use] pub fn with_payload_cache_limits(vfs: Arc, limits: PayloadCacheLimits) -> Self { - let mut repository_limits = RepositoryLimits::default(); - repository_limits.max_decoded_payload_entries = limits.max_entries; - repository_limits.max_decoded_payload_bytes = limits.max_bytes; + let repository_limits = RepositoryLimits { + max_decoded_payload_entries: limits.max_entries, + max_decoded_payload_bytes: limits.max_bytes, + ..RepositoryLimits::default() + }; Self::with_limits(vfs, repository_limits) } @@ -482,11 +486,11 @@ impl ResourceRepository for CachedResourceRepository { } let current_generation = current.generation; let current_fingerprint = current.fingerprint; - if current_fingerprint != observed_fingerprint { + if current_fingerprint == observed_fingerprint { + slot.generation = current_generation; + } else { slot.generation = current_generation.saturating_add(1); state.payload_cache.remove_archive(id); - } else { - slot.generation = current_generation; } state.unload_archive(id)?; *state.archive_mut(id)? = slot; diff --git a/crates/fparkan-vfs/src/lib.rs b/crates/fparkan-vfs/src/lib.rs index 4557884..0b25056 100644 --- a/crates/fparkan-vfs/src/lib.rs +++ b/crates/fparkan-vfs/src/lib.rs @@ -122,7 +122,7 @@ impl DirectoryVfs { resolve_casefolded(&self.root, path) } - fn metadata_from_host_file(&self, path: &Path) -> Result { + fn metadata_from_host_file(path: &Path) -> Result { let metadata = fs::symlink_metadata(path).map_err(VfsError::Io)?; metadata_from_host_file(path, &metadata) } @@ -130,7 +130,7 @@ impl DirectoryVfs { impl Vfs for DirectoryVfs { fn metadata(&self, path: &NormalizedPath) -> Result { - self.metadata_from_host_file(&self.host_path(path)?) + Self::metadata_from_host_file(&self.host_path(path)?) } fn read(&self, path: &NormalizedPath) -> Result, VfsError> { diff --git a/crates/fparkan-world/src/lib.rs b/crates/fparkan-world/src/lib.rs index 5d659b9..62108fe 100644 --- a/crates/fparkan-world/src/lib.rs +++ b/crates/fparkan-world/src/lib.rs @@ -1053,7 +1053,7 @@ mod tests { handles.push(handle); } for (index, handle) in handles.iter().copied().enumerate() { - if (seed as usize + index) % 3 == 0 { + if (seed as usize + index).is_multiple_of(3) { request_delete(&mut world, handle).expect("delete"); } else { enqueue(