Skip to content

Commit 9c6b1d3

Browse files
committed
chore: development v0.4.95 - comprehensive testing complete [auto-commit]
1 parent 0bfb584 commit 9c6b1d3

File tree

11 files changed

+34
-26
lines changed

11 files changed

+34
-26
lines changed

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ members = [
4242
# Workspace Package Metadata (inherited by all crates)
4343
# ─────────────────────────────────────────────────────────────────────────────
4444
[workspace.package]
45-
version = "0.4.94"
45+
version = "0.4.95"
4646
edition = "2024"
4747
# MSRV: Pure Rust code compiles on stable 1.91+ (Duration::from_mins),
4848
# but Polars is built with features = ["nightly", "simd"] which requires

crates/uffs-core/src/compact.rs

Lines changed: 22 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -537,7 +537,9 @@ pub fn compute_path_lengths(records: &mut [CompactRecord], names: &[u8], drive_l
537537
// BFS from roots.
538538
let mut queue = alloc::collections::VecDeque::with_capacity(roots.len());
539539
for &root in &roots {
540-
let Some(rec) = records.get(root as usize) else { continue };
540+
let Some(rec) = records.get(root as usize) else {
541+
continue;
542+
};
541543
let name_chars = name_char_count(rec, names);
542544
let pl = if name_chars == 0 {
543545
// Drive root directory: "C:\"
@@ -548,21 +550,31 @@ pub fn compute_path_lengths(records: &mut [CompactRecord], names: &[u8], drive_l
548550
};
549551
if let Some(slot) = records.get_mut(root as usize) {
550552
#[allow(clippy::cast_possible_truncation)] // clamped to u16::MAX
551-
{ slot.path_len = pl.min(u32::from(u16::MAX)) as u16; }
553+
{
554+
slot.path_len = pl.min(u32::from(u16::MAX)) as u16;
555+
}
552556
}
553557
queue.push_back(root);
554558
}
555559

556560
while let Some(idx) = queue.pop_front() {
557-
let parent_pl = records.get(idx as usize).map_or(0, |rec| u32::from(rec.path_len));
558-
let children: Vec<u32> = children_of.get(idx as usize).map_or_else(Vec::new, Clone::clone);
561+
let parent_pl = records
562+
.get(idx as usize)
563+
.map_or(0, |rec| u32::from(rec.path_len));
564+
let children: Vec<u32> = children_of
565+
.get(idx as usize)
566+
.map_or_else(Vec::new, Clone::clone);
559567
for &child in &children {
560-
let child_chars = records.get(child as usize).map_or(0, |rec| name_char_count(rec, names));
568+
let child_chars = records
569+
.get(child as usize)
570+
.map_or(0, |rec| name_char_count(rec, names));
561571
// path = parent_path + "\" + name
562572
let pl = parent_pl.saturating_add(1).saturating_add(child_chars);
563573
if let Some(slot) = records.get_mut(child as usize) {
564574
#[allow(clippy::cast_possible_truncation)] // clamped to u16::MAX
565-
{ slot.path_len = pl.min(u32::from(u16::MAX)) as u16; }
575+
{
576+
slot.path_len = pl.min(u32::from(u16::MAX)) as u16;
577+
}
566578
}
567579
queue.push_back(child);
568580
}
@@ -581,7 +593,10 @@ fn name_char_count(rec: &CompactRecord, names: &[u8]) -> u32 {
581593
names
582594
.get(start..end)
583595
.and_then(|slice| core::str::from_utf8(slice).ok())
584-
.map_or_else(|| u32::from(rec.name_len), |name| name.chars().count() as u32)
596+
.map_or_else(
597+
|| u32::from(rec.name_len),
598+
|name| name.chars().count() as u32,
599+
)
585600
}
586601

587602
/// Build a `DriveCompactIndex` from a loaded `MftIndex`.

crates/uffs-core/src/search/backend.rs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -184,7 +184,10 @@ impl<'a> SearchRequest<'a> {
184184
///
185185
/// All optional flags default to `false` / `None` / `FilterMode::All`.
186186
#[must_use]
187-
pub const fn new(pattern: &'a str, search_filters: &'a mut super::filters::SearchFilters) -> Self {
187+
pub const fn new(
188+
pattern: &'a str,
189+
search_filters: &'a mut super::filters::SearchFilters,
190+
) -> Self {
188191
Self {
189192
pattern,
190193
case_sensitive: false,

crates/uffs-core/src/search/filters_tests.rs

Lines changed: 1 addition & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1651,21 +1651,7 @@ fn apply_min_path_len_rejects_short_paths() {
16511651
0,
16521652
0,
16531653
),
1654-
DisplayRow::new(
1655-
0,
1656-
'C',
1657-
long,
1658-
200,
1659-
false,
1660-
0,
1661-
0,
1662-
0,
1663-
0x20,
1664-
4096,
1665-
0,
1666-
0,
1667-
0,
1668-
),
1654+
DisplayRow::new(0, 'C', long, 200, false, 0, 0, 0, 0x20, 4096, 0, 0, 0),
16691655
];
16701656
let filters = SearchFilters {
16711657
min_path_len: Some(200),

crates/uffs-daemon/src/index.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,9 @@
44
//! the compact search indices for all loaded drives and delegates to
55
//! `uffs_core::search` for query execution.
66
7+
use alloc::sync::Arc;
78
use core::sync::atomic::{AtomicU64, Ordering};
89
use std::path::PathBuf;
9-
use alloc::sync::Arc;
1010
use std::time::Instant;
1111

1212
use tokio::sync::{RwLock, Semaphore};

dist/latest

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
v0.4.94
1+
v0.4.95

dist/v0.4.95/checksums.txt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
5d27d6276b9c21ee9a012f6569065faaba3af73a3cf949fec421df74ab7021f0 dist/v0.4.95/uffs/uffs-windows-x64.exe (71261696 bytes)
2+
0dd0263cbdbf7731b95b5d73b0482f1bf080f3e3f2997c72e31dd7fbeee81a0c dist/v0.4.95/uffs_mft/uffs_mft-windows-x64.exe (23437824 bytes)
3+
2aebf01eef983ae1218ed15c3686eeff44773d704cb263eaa816094d6e485175 dist/v0.4.95/uffs_tui/uffs_tui-windows-x64.exe (4635136 bytes)
4+
28a19d8c40cbdc95654bb826640eb61a90c7b4e28b2f35e03e2b7cd02934ebcf dist/v0.4.95/uffs_gui/uffs_gui-windows-x64.exe (123904 bytes)
68 MB
Binary file not shown.
121 KB
Binary file not shown.
22.4 MB
Binary file not shown.

0 commit comments

Comments
 (0)