Releases: Yurzs/mac-cleanup
Releases · Yurzs/mac-cleanup
Release list
v0.2.3
Full Changelog: v0.2.2...v0.2.3
v0.2.2
v0.2.1 — Python, Swift, container, and macOS System Data cleanup
A big expansion of built-in cleanup rules and two new rule kinds. Adds coverage for Python package
managers, Swift tooling, container runtimes beyond Docker, and several large categories that were
previously showing up in macOS's mysterious "System Data" bucket.
New cleanup rules
Python package managers
pip cache purgeanduv cache cleannow wired as native clean commands- Poetry, conda (
conda clean --all --yes), Hatch, Pipenv caches
Swift ecosystem
- SwiftPM shared cache (
~/Library/Caches/org.swift.swiftpm) - Carthage and Mint caches
- Xcode shared app cache, CoreSimulator caches, and iOS/watchOS/tvOS/macOS/visionOS Device
Support folders (can be many GB)
Container runtimes
- Podman, Finch, and Apple's
containerCLI (WWDC 2025) — all viasystem prune-style
external commands, sized from each tool'ssystem dfoutput - Time Machine local APFS snapshots via
tmutil thinlocalsnapshots(often holds GBs hostage in
"System Data" even with no TM disk attached)
Developer caches
- JetBrains IDE caches (
~/Library/Caches/JetBrains) - JetBrains stale IDE versions — smartly detects prior-release per-version directories (e.g.
keepsIntelliJIdea2026.1, flagsIntelliJIdea2025.3) - Playwright browsers, GitHub Copilot cache, Lens updater cache, Docker installer
staging - Android SDK system images (emulator disks, often 10+ GB)
macOS system files
- QuickLook thumbnails
- iOS/iPadOS device backups (MobileSync — Caution)
- iOS/iPadOS IPSW software updates (Caution)
- Xcode iOS Device Logs
- macOS installer apps (
/Applications/Install macOS*.app— often 15+ GB each)
New rule kinds
Two new RuleKind variants in the rule schema:
GlobKeepLatest— scans a parent directory, groups children by<family><version>pattern,
keeps the highest version in each family and flags the rest. Used for JetBrains IDE per-version
directories; generalizes to any<name><YYYY.N>layout.KnownPathGlob— matches children of a parent directory against a glob pattern. Used for
/Applications/Install macOS*.app; the validator's allowlist now accepts/Applicationsas a safe
glob parent.
Safety and validator
- Binary allowlist extended with
podman,finch,container,tmutil - New validation for
KnownPathGlobparent paths and name patterns - All new rules are marked
SafeorCautionwith clear descriptions; noDangerousrules were
added - Rules that target potentially-valuable user data (iOS backups, IPSWs, JetBrains stale versions,
device support symbols) are explicitlyCautionwith recovery-cost notes in their descriptions
Tests
15 → 18 passing (3 new tests for the GlobKeepLatest family/version parser).
Full Changelog: v0.2.0...v0.2.1
v0.2.0
Full Changelog: https://github.com/Yurzs/mac-cleanup/commits/v0.2.0