Changelog
- mo purge / installer / uninstall / touchid / completion / remove: Added
--dry-run-n. Destructive commands now support preflight planning and full target preview before execution. - mo status: Added
--jsonwith machine-readable metrics. JSON mode auto-enables on non TTY stdout, and network throughput fields are now included. - mo analyze: Added
--jsonfor structured directory analysis output. JSON mode auto-enables in non TTY pipelines. - mo clean: Added version-aware cleanup for Xcode DeviceSupport on iOS, watchOS, tvOS. Retains latest 2 versions and removes older entries. Added Helium Browser cache cleanup.
- mo clean: Fixed Go module whitelist matching to
go/pkg/mod/*. Homebrew dry-run now enforces whitelist rules correctly. Xcode simulator cleanup now includes graceful fallback handling. - sudo: In non TTY contexts such as Automator and Shortcuts, privilege escalation now uses native macOS GUI auth via
osascriptinstead of silent failure. - mole --version: Nightly builds now expose install channel and commit hash for deterministic version tracing.
- core: Removed unused spinner stack and terminal validation paths in
lib/core/base.sh, reducing dead code and control-flow complexity. - update: Installer now keeps sudo session alive for the full run, avoiding credential timeout on slow networks.
- bug fixes: Fixed color variable interpolation, spinner residue after stop, pip3 macOS stub detection, and SIGPIPE in Homebrew detection under
set -euo pipefail.
更新日志
- mo purge / installer / uninstall / touchid / completion / remove:新增
--dry-run-n,破坏性命令在执行前可完成预演并输出完整目标清单。 - mo status:新增
--json机器可读输出。非 TTY stdout 自动切换 JSON,网络吞吐字段已补齐。 - mo analyze:新增
--json结构化目录分析输出,非 TTY 管道场景自动启用。 - mo clean:新增 Xcode DeviceSupport 版本化清理能力,覆盖 iOS、watchOS、tvOS,默认保留最新 2 个版本并移除历史版本。新增 Helium Browser 缓存清理。
- mo clean:修复 Go 模块缓存白名单匹配为
go/pkg/mod/*。Homebrew dry-run 现可正确执行白名单约束。Xcode 模拟器清理新增平稳降级路径。 - sudo:在非 TTY 场景,如 Automator、快捷指令,提权流程改为通过
osascript拉起原生 macOS GUI 验证,不再静默失败。 - mole --version:Nightly 构建现输出安装渠道与 commit hash,便于版本追踪与问题定位。
- core:在
lib/core/base.sh移除未使用 Spinner 栈与终端校验分支,降低死代码与控制流复杂度。 - update:安装器全程维持 sudo keepalive,避免慢网络下载阶段凭据过期。
- bug fixes:修复颜色变量插值缺失、Spinner 停止后残留、pip3 macOS stub 误判、
set -euo pipefail下 Homebrew 检测 SIGPIPE 问题。
Special thanks to @Angelk90, @KoukeNeko, @MohammedTarigg, and @imnotnoahhh for their contributions to this release.