-
v0.102.0 — Linux x64 build Stable
released this
2026-09-13 11:14:08 +02:00 | 6 commits to main since this releaseFirst Linux x86_64 release of hyperindex, alongside the existing Windows build.
What changed: hyperindex was previously Windows-only at the code level — winfs.rs, volume.rs and ui.rs called Win32 APIs (SetErrorMode, GetVolumeInformationW, console codepage/VT setup) unconditionally, with no #[cfg(windows)] gating anywhere. This release adds a real Unix side to each, following the split hyperfiler already used in its own winfs.rs:
- Volume identity: on Linux, the stable per-filesystem key (Windows volume serial) is now the filesystem's own UUID, resolved via /proc/self/mountinfo + /dev/disk/by-uuid (no blkid shell-out). Falls back to a deterministic hash of the mount point when no UUID is resolvable (mirrors the existing UNC-path fallback on Windows).
- Reparse-point detection during the walk becomes a symlink check on Unix; cloud-placeholder detection (OneDrive/Nextcloud Cloud Filter API attributes) has no Linux equivalent and correctly never fires there.
- Console setup (UTF-8 codepage, VT processing) is a no-op on Unix — terminals there are UTF-8/ANSI-native already.
- Error classification (FailureKind) gets its own errno-based mapping instead of reusing Win32 error codes.
- Found and fixed one real (platform-independent) bug along the way: doubles.rs's parent_folder_of used std::path::Path::parent(), which only recognises '/' as a separator on Linux — so folder-level duplicate grouping silently broke apart every Windows-recorded path into its own single-file group whenever doubles ran on Linux. Fixed to split on either separator explicitly, matching a neighbouring function that already did.
All 136 unit tests pass on Linux (x86_64-unknown-linux-gnu, built and tested on Linux Mint 22.3 / kernel 6.8). Verified with a live scan/dupes/volumes smoke test against a real ext4 filesystem.
Assets: dynamically linked against glibc (works on any reasonably current x86_64 Linux distro); gzip-compressed, SHA256SUMS.txt included.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads