Releases: marksmayo/WinBlaze
Release list
v0.9.1 — Secure Updates
Secure updates. A focused follow-up to v0.9.0 that makes the in-app auto-updater verify what it downloads before it installs it.
Highlights
- SHA-256-verified updates, fail-closed. WinBlaze now hashes the update it downloads and checks it against a signed-by-hash release manifest shipped alongside the release. Only an explicit match proceeds — a mismatch, a missing or unfetchable manifest, or a blank/absent hash all abort the install. A tampered or truncated download can no longer be applied.
What's new since v0.9.0
Update security
- The updater computes the downloaded portable zip's SHA-256 (via WinRT crypto) and verifies it against
winblaze-update-manifest.json, published as a release asset, before handing off to the helper that swaps files. - Verification is fail-closed: anything other than a confirmed hash match stops the install.
- The manifest parser is object-scoped, so it can never read a sibling artifact's hash, and blank hashes are rejected rather than treated as a match. Covered by unit tests in the Rust core (
parse_manifest_sha256,hash_matches,wb_verify_download). - The release manifest is generated from the exact versioned zip that is uploaded, so the hash the app computes always matches the real download.
CI
- Gated signature verification (activates when a code-signing cert is configured) plus an always-on Release check that recomputes the packaged zip's SHA-256 and fails the build if it disagrees with the manifest.
Download & run
Grab WinBlaze-v0.9.1-windows-x64-portable.zip below, unzip, and run WinBlaze.UI.exe. If you already run v0.9.0, it will offer this update in-app and verify it before installing.
- Run as Administrator for the fast NTFS MFT path (otherwise WinBlaze falls back to a directory walk).
Requirements: Windows 11 x64 (build 19041+), Windows App SDK 1.8 runtime.
SHA-256 (portable zip): 4c128d5b77e4f7243c8cb28b7e1cb07e3387f64d71a8b665ddfc83dfd9381b7c
v0.9.0 — Velocity++
Velocity++ builds on the High Velocity release (v0.8.0) with the productionisation milestone: WinBlaze can now update itself, ships a proper designer logo, and gained a round of robustness, correctness, and quality hardening.
Highlights
- In-app updates. WinBlaze checks GitHub for a newer release on launch (and on demand in Settings). When one exists it offers Install now — it downloads the release, extracts it, and a small bundled helper swaps the files and relaunches. No manual reinstall.
- New logo & app icon. A designer disk-and-flame mark, tightly cropped with a transparent background, now used as the window/taskbar/Explorer icon and the README hero.
- Hardened against corrupt input. Fuzzed the NTFS MFT byte parsers — which surfaced and fixed a real overflow bug in the data-run decoder (a corrupt/hostile MFT now falls back to the directory walk instead of crashing).
What's new since v0.8.0
Updates
- On-launch + Settings update check against GitHub
releases/latest, with semver comparison in the Rust core (unit-tested). - "Install now" download-and-apply via the new
winblaze-updaterhelper (waits for exit, swaps files with lock-retry, relaunches, cleans up). Validated end-to-end.
Branding
- Designer logo as the app icon (multi-resolution
.ico) and README image; background removed and cropped tight. - The UI now compiles with
/utf-8so non-ASCII text renders correctly.
Robustness & correctness
- Fuzz corpora for the binary-cache decoder and the MFT byte parsers (truncation, garbage, bit-flips, full pipeline).
- Fix: unchecked multiply/add overflow in
decode_data_runson hostile data-run values — now uses checked arithmetic. soak_reprostability harness (repeated scan/rescan cycles with a leak verdict); a representative run was stable (flat handles, plateaued working set).
Quality & CI
- Pinned the Rust toolchain (
rust-toolchain.toml+ pinned CI action) so a floatingstable/clippy can't spontaneously break the build. cargo fmt --check+clippy -D warningsadded to the local gate (mirrors CI); fixed all outstanding clippy findings.- Accessibility audit script (
tests/ui/a11y-audit.ps1): every interactive control is named and keyboard-focusable.
Download & run
Grab WinBlaze-v0.9.0-windows-x64-portable.zip below, unzip, and run WinBlaze.UI.exe. This build bundles the updater, so future releases can auto-install from within the app.
- Run as Administrator for the fast NTFS MFT path (otherwise WinBlaze falls back to a directory walk).
Requirements: Windows 11 x64 (build 19041+), Windows App SDK 1.8 runtime.
SHA-256 (portable zip): 54b5cdfbfd13e2f506accff003e783c4fe29b476600160c3e603dd2ba707ebe9
Known limitations
- Binaries are not yet code-signed, so SmartScreen may warn on first launch (code signing is the next milestone).
- No MSI installer yet — portable build only.
- Auto-update currently verifies transport (HTTPS) + archive integrity; SHA-256 verification against a signed manifest is a planned follow-up.
Privacy
No telemetry. WinBlaze writes only local logs and its index cache under %LOCALAPPDATA%\WinBlaze.
v0.8.0 — High Velocity
WinBlaze is a high-performance disk-usage analyzer for Windows: a Rust NTFS scanning engine paired with a C++/WinRT WinUI 3 front-end and a GPU-accelerated Direct2D treemap. High Velocity is the first public preview — the app is feature-complete and fast, and this milestone marks the point where it scans a full system drive in seconds.
Highlights
- Scans C:\ in ~4 seconds. A raw-volume NTFS Master File Table reader enumerates ~2.3M files / ~547k directories end-to-end and paints an interactive tree + treemap in about four seconds on a warm cache — the engine itself finishes in ~2.7 s.
- The High Velocity design system. A red-on-black shell with a sidebar navigation rail, monospace status strip, and GPU-rendered visuals — Dashboard, Insights, Cleanup, Explorer, and Settings views.
- Live results while it scans. Folders appear in the tree as the scan discovers them; size rollups land the moment it completes.
- GPU squarified treemap. Extension-colored Direct2D tiles with progressive deepening that never blocks the UI thread, hover focus, and click-to-zoom.
- Persistent, incremental index. Compact binary snapshots reload instantly; Incremental rescan diffs against the previous scan and reports exactly what was added, removed, modified, renamed, or moved.
Performance
Measured on a live C:\ system volume (~2.3M files / ~547k directories / 464 GB), Windows 11, NVMe, warm cache:
| Stage | Time |
|---|---|
| Raw-MFT engine (scan → summary) | ~2.7 s |
| In-app scan, idle → idle (tree + treemap rendered) | ~4.0 s |
| Post-scan index flush | < 1 s |
| Worst single UI-thread stall | < 1 s |
That is the result of a sustained optimization effort: the raw-MFT full-drive scan went from 143.7 s → 2.7 s across the overhaul rounds, and the snapshot on disk shrank from 562 MB → 323 MB.
Compared to WizTree and WinDirStat (warm C:)
- WinBlaze: ~4.0 s to an interactive view.
- WinDirStat 2.6: ~10.5 s (multithreaded directory walk).
- WizTree 4.31: a comparably fast raw MFT read, but ~14–55 s to a fully materialized interactive view because it builds the entire file list up front.
WinBlaze reaches an interactive view fastest because it pages and caps the UI (paged tree, 8,192-entry live catalog, deferred snapshot) instead of materializing every file. See benchmarks/perf-overhaul-baselines.md for methodology and raw runs.
Full feature list
- Real NTFS MFT scanning (boot-sector geometry, runlist extents, USA fixups) with correct handling of deleted records, named streams, extension records, and hardlinks
- Parallel directory-walk fallback with junction/symlink cycle protection for non-MFT roots
- Expandable folder tree with logical/physical/count/timestamp rollups and paged children
- GPU squarified treemap with progressive deepening
- Instant search over the persistent index
- Cleanup center (largest files, temp/log potential) with Open-in-Explorer
- Insights (top directories, per-extension breakdown) and a capacity Dashboard
- Structured local logging; no telemetry
Download & run
Grab WinBlaze-v0.8.0-windows-x64-portable.zip below, unzip anywhere, and run WinBlaze.UI.exe.
- Run as Administrator to enable the fast NTFS MFT path; without elevation WinBlaze falls back to the slower directory walk.
- The root path defaults to
C:\— adjust it and click Start scan.
Requirements: Windows 11 x64 (build 19041+), with the Windows App SDK 1.8 runtime.
SHA-256 (portable zip): 603dbd2b745eb4ee6a68e1a336a44d4873c52a0be4d51a35cb01374f812ef712
Known limitations (this is a preview)
- Binaries are not yet code-signed, so SmartScreen/Defender may warn on first launch.
- No MSI installer or in-app auto-update yet — this is a portable build.
- Competitor timings and scale calibration are single-machine, warm-cache figures.
These, along with clean-machine release validation, are tracked in TODO.md on the road to 1.0.
Privacy
WinBlaze has no telemetry. It writes only local logs (%LOCALAPPDATA%\WinBlaze\logs) and its index cache (%LOCALAPPDATA%\WinBlaze\index).