github tw93/Mole V1.31.0
V1.31.0 Makima 🐕

latest release: v1.29.1-windows
23 hours ago
Mole Logo

Mole V1.31.0

Deep clean and optimize your Mac.

Changelog

  1. Performance: Scan phase is significantly faster across mo clean, mo purge, and mo optimize. Cache root discovery runs in parallel, per-item subprocess forks are replaced with bash parameter expansion, and brew outdated checks run concurrently with timeout protection.
  2. mo status: Fixed APFS disk capacity reporting — gopsutil could return inflated totals on external volumes. Now uses a three-tier fallback: Finder → diskutil APFS → raw statfs. Finder probe failures are cached to avoid repeated timeouts.
  3. mo status: Added persistent high-CPU process alerts. Processes exceeding the CPU threshold for a sustained window are flagged in the status display. Configurable via --proc-cpu-threshold (default 100%) and --proc-cpu-window (default 5 minutes).
  4. mo status: Fixed ghost lines appearing when the terminal is resized.
  5. mo clean: Fixed incomplete download cleanup silently skipping files whose names contain spaces. Files currently in use are also skipped.
  6. mo clean: Preserved Mole runtime logs, tealdeer tldr cache, and Aerial wallpaper assets — these are no longer removed during a standard clean. Added opt-in Docker unused data pruning.
  7. mo clean: Dry-run preview no longer shows duplicate entries for alias paths or symlinks pointing to the same location. Application support cleanup now respects the user whitelist, and system launch agents are explicitly protected.
  8. mo purge: Full paths are now shown during item selection and confirmation. Long paths are intelligently compressed to fit the terminal width instead of being hard-truncated at 60 characters. Size calculations run in parallel to prevent the menu hanging on large projects.
  9. mo uninstall: Fixed relative symlink resolution during app cleanup. Improved brew uninstall fallback consistency. Added detection for bundle-ID-derived extension leftovers.
  10. macOS update / sudo: Update detection now uses softwareupdate output directly, eliminating false positives. Sudo credential prompting passes through the system's native PAM prompt instead of a hardcoded string, ensuring correct behavior across locales.

更新日志

  1. 性能提升mo cleanmo purgemo optimize 的扫描阶段大幅提速。缓存根目录发现改为并行执行,逐条目子进程 fork 替换为 bash 参数展开,brew outdated 检查并发运行并带超时保护。
  2. mo status:修复 APFS 磁盘容量显示不准确问题,gopsutil 在外部 APFS 卷上可能返回翻倍数值,现改为三层回退:Finder → diskutil APFS → 原始 statfs,Finder 探测失败结果缓存避免重复超时。
  3. mo status:新增持续高 CPU 进程告警。超过阈值并持续达到设定窗口的进程会在界面中标记,可通过 --proc-cpu-threshold(默认 100%)和 --proc-cpu-window(默认 5 分钟)配置。
  4. mo status:修复调整终端窗口大小时出现幽灵行的问题。
  5. mo clean:修复未完成下载清理静默跳过含空格文件名的问题,同时跳过正在使用中的文件。
  6. mo clean:默认保留 Mole 运行日志、tealdeer tldr 缓存和 Aerial 壁纸资源,不再在常规清理中删除。新增可选的 Docker 未使用数据清理。
  7. mo clean:dry-run 预览按文件系统身份去重,别名路径和符号链接不再重复出现。Application Support 清理遵守用户白名单,系统 launch agent 受到明确保护。
  8. mo purge:条目选择和确认界面现在显示完整路径,移除 60 字符硬截断,改为根据终端宽度智能压缩。大小计算并行执行,避免大型项目卡住菜单。
  9. mo uninstall:修复应用清理中相对路径符号链接解析问题,改善 brew 卸载兜底一致性,新增 bundle ID 派生扩展残留文件检测。
  10. macOS 更新检测 / sudo:更新检测改为直接解析 softwareupdate 输出,消除误报。sudo 凭证提示透传系统原生 PAM,不再硬编码 Password: 字符串。

Special thanks to @Parsifa1, @yetval, @MohammedTarigg, @FelixLyfe, @fishwww-ww, @dwjoss, @jason-costello, @corevibe555, and @sibisai for their contributions to this release.

https://github.com/tw93/Mole

Don't miss a new Mole release

NewReleases is sending notifications on new releases.