Skip to content

SparkClean v1.1.0

Choose a tag to compare

@georgekhananaev georgekhananaev released this 30 Mar 13:35
· 28 commits to main since this release

What's New in v1.1.0

Critical Memory Leak Fix

  • Fixed 34GB RAM consumption crash caused by missing autoreleasepool in directory size calculations and full-resolution image loading in duplicate finder
  • Added memory pressure monitoring that auto-cancels scans when system memory is critically low

Safety Hardening

  • Protected path blocklist (30+ paths) prevents deletion of critical system and user directories
  • Deletion audit log written to ~/Library/Logs/SparkClean/ on every cleanup
  • Trash failure no longer silently falls back to permanent deletion
  • isOwnedByUser check wired into deletion pipeline
  • Path depth guard rejects shallow paths

Scan Accuracy Improvements

  • Docker double-counting fixed — was showing ~64GB instead of actual ~29GB by counting VM disk + CLI-reported sizes
  • Old Downloads now checks newest file date inside directories instead of directory modification date (prevents flagging active projects)
  • Large Files scanner checks if parent directory already scanned by other phases
  • Tightened orphaned app data matching to reduce false positives

New Cleanup Categories (10 added)

  • HuggingFace Models, Ollama Model Cache, LM Studio Models
  • Bazel Cache, Deno Cache, Poetry Cache
  • Font Caches, Speech Data Cache
  • Xcode Playground Cache, Provisioning Profiles

Performance

  • Static ByteCountFormatter/DateFormatter (was allocating on every call)
  • SHA256 buffer increased from 64KB to 256KB
  • DuplicateGroup.wastedSize pre-computed at init
  • autoreleasepool added to all tight enumeration loops

Download

Download SparkClean-1.1.0.dmg, open it, and drag SparkClean to your Applications folder.

Requirements

  • macOS 14.0 (Sonoma) or later