Skip to content

CleanYourWechatTool v1.0.8 · 上线前全量审核修复

Choose a tag to compare

@LuckTerence LuckTerence released this 11 Sep 06:19
· 6 commits to main since this release

Release Notes - CleanYourWechatTool v1.0.8

发布日期: 2026-09-11
类型: 上线前全量审核修复(11 项,含 1 个阻断发布的问题)

本轮在发布前做了三路并行审核(引擎/CLI、图形界面、端到端实跑),共修复 11 个问题,
其中包含一个会导致「发布即失败」的问题和一个会导致「去重后文件意外消失」的问题。


重要修复

1. 界面承诺的释放量 = 实际能释放的量

此前界面上「预计可安全释放」可能高于实际,原因有三处,本次全部对齐到同一个判定函数:

  • 死线过度拦截:运行时目录名(resources 等)的死线原先对任意路径层级生效,
    导致缓存内部的同名目录被误保护——实测本机 52 MB 可清缓存被白留。
    现改为仅对账号根目录第一层生效;数据库、.db/.db-wal、.dll/.pak
    等硬拦截完全不变。
  • 预估未扣除拦截项:修改后预估与执行的差额由 65.9 MB 降至 13.9 MB
    (余下为真正应拦的程序组件后缀)。
  • 跨卡片重复计算:同一个文件可能同时属于「缓存垃圾」与「历史大文件」候选,
    此前简单相加导致虚高;现按绝对路径去重(实测显示 260 MB → 正确值 160 MB)。

2. 避免「去重」与「清理」相互叠加造成意外

同一文件既在去重组、又被勾选清理时,此前会先合并为硬链接、随后该路径又被清理,
结果超出用户「只合并不删除」的预期。现改为:组内任一文件被选中清理时,整组避让。

3. 归档可靠性

  • 归档过程中被取消或异常中断时,此前不会写出清单,已归档文件将失去还原依据;
    现改为每 100 条周期性落盘,清单本身也改为原子写入(临时文件 + 替换)。
  • 归档的行为边界在命令输出与文档中明确说明:归档文件不在本机,
    微信内点击会提示"文件不可用"属预期行为,插回磁盘执行 restore 即可原样恢复。

4. 多账号支持(命令行)

scan / clean / dedup 此前只处理第一个账号,多账号用户其余账号静默漏清。
现默认处理全部账号(输出 [1/2] [2/2] 分组),并新增 --account <id或片段> 精确指定。

5. 触控板 / 滚轮无法滚动

界面内容超出后只能拖动滚动条,无法用触控板双指或滚轮滚动。
根因是界面库按事件数值计算滚动步长,在较新的 Tk 运行时下该值算为 0;
现改为按方向以固定步长滚动(兼容各平台事件语义)。

6. 打包产物启动崩溃(继承 v1.0.6/v1.0.7 修复)

窗口图标的 Pillow 依赖改为可选(缺失时优雅降级),打包配置显式收集,
并在发布流程中增加产物冒烟测试:产物无法启动则发布直接失败。


其他修复

问题 影响
restore 命令的模块导入路径 pip 安装 / 打包环境下该命令直接崩溃(已改为统一导入)
scan 的 --account 参数未生效 参数存在但不起作用
表格标题写成 账号 [wxid] 方括号被渲染库当作样式标签,账号名被吞掉
--archive-to 未展开 ~ ~/路径 写法失效
任务进行中切换账号 界面显示与实际扫描账号错位(现拦截并提示)
--min-size abc 等非法参数 显示原始错误堆栈(现为友好提示)
测试断言停留在旧默认值 会导致 CI 失败、发布被跳过(已同步)

下载

平台 文件
macOS (Apple Silicon) CleanYourWechatTool-arm64.dmg
Windows 10/11 (64 位) CleanYourWechatTool-windows-x64.zip

首次打开若提示"无法验证开发者":系统设置 → 隐私与安全性 → 仍要打开;
或终端 xattr -cr /Applications/CleanYourWechatTool.app。
(macOS 15 起 Apple 已移除"右键打开"的绕过方式。)

首次使用需授予完全磁盘访问权限(系统设置 → 隐私与安全性 → 完全磁盘访问权限),
否则读不到微信数据——应用内会给出跳转指引。


质量与验证

  • 83 项自动化测试全绿(含新增的死线回归测试 4 项);
  • flake8 / mypy 无告警;CI 在 macOS / Windows / Ubuntu × Python 3.8–3.12 矩阵运行;
  • 端到端实跑验证:清理(文件确实进入废纸篓、数据库未被触碰、统计计数正确)、
    归档与恢复闭环、多账号分派、命令行全命令冒烟 10/10 通过。