Commit Graph
162 Commits
Author SHA1 Message Date
ysicing e7040dd04b fix(menubar): 修正预览位图缩放 2026-10-01 11:18:40 +08:00
ysicing 9356f86e5d test(rest): 固定墙上时间避免午夜前后失败
按自然日统计会用真实时刻反推专注段完成时间,测试只伪造了单调时钟,
0:00 至约 1:55 之间运行时,段落会被算到昨天而失败。注入随时钟前进的正午时间。
2026-10-01 11:18:40 +08:00
ysicing 2c0905ece8 perf(menubar): 设置页预览只栅格化一次
预览图原为绘制回调型 NSImage,SwiftUI 每次布局或重绘都会重跑文字排版。
改为渲染一次位图后复用;设置页停在“菜单栏”时,同环境实测平均 CPU 约 2.73% 降至 2.16%。
2026-10-01 11:18:40 +08:00
ysicing dacc9cbbaa fix(calendar): 老用户沿用旧版默认值并区分小组件节假日提示
- 已有安装缺少日历选项时沿用旧版默认与周一起始,不按地区重新初始化
- “明天上班吗”区分未启用节假日与安排尚未公布,恢复“暂无法判断”译文
- 截图固定中国大陆默认值与周起始日,移除默认参数与无调用方的 defaults
2026-09-30 23:50:16 +08:00
ysicing c0976ef649 fix(calendar): 联动农历设置并优化菜单栏日期字体 2026-09-30 23:50:16 +08:00
ysicing 0b63a4ed04 refactor(calendar): 固定显示星期与黄历并简化设置 2026-09-30 23:50:16 +08:00
ysicing 01bf5c77b2 fix(calendar): 限制假期展示年份并关联倒计时设置 2026-09-30 23:50:16 +08:00
ysicing 1e0ff1236e refactor(calendar): 合并节气与时令设置 2026-09-30 23:50:16 +08:00
ysicing 3aae19a4c6 refactor(calendar): 移除月历干支显示与开关 2026-09-30 23:50:16 +08:00
ysicing 222b2baa89 fix(calendar): 保留农历选择并完善周起始日设置 2026-09-30 23:50:16 +08:00
ysicing 678303187d feat(calendar): 按语言与地区调整日历显示和默认选项 2026-09-30 23:50:16 +08:00
ysicing e8b151d205 chore(release): 发布 0.14.2 2026-09-30 17:26:37 +08:00
ysicingandClaude Opus 5.5 f1dd8cfacf fix: 收尾 PR 审查遗留的更新、卸载与签名问题
- 跳过已撤回的版本时不再显示"有更新";安装前发现更新源换了版本时给出明确提示(补齐 7 种语言)
- 补充双区域回退与失败重排的调度测试
- 回收结果按标准化路径比对,避免路径写法不同误报本体未移动
- 抽出 scan 统一后台遍历与取消,loadApps 嵌套降到 3 层
- 自我保护测试只校验错误语义,不再比较两次翻译
- sign_sparkle.sh 在证书不在钥匙串有效列表时提前报错,避免子组件漏签

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 16:59:02 +08:00
ysicing 7e0a22e132 refactor(ui): 优化弹窗标题图标与间距 2026-09-30 16:37:46 +08:00
ysicing b04282a93f chore(release): 发布 0.14.1 2026-09-30 15:39:45 +08:00
ysicing f533f29071 test(network): 修正取消测试时限并避免忙等 2026-09-30 15:30:38 +08:00
ysicingandClaude Opus 5.5 1623effd61 fix(release): 发布后逐区域核验 Sparkle 更新源并覆盖跳转策略
- 服务端保留探测标识(64 个 0):照常验签返回清单但不计入统计
- publish_api.py 新增 --verify-sparkle,JSON 发布后逐区域取回 XML 与本地签名文件逐字节比对,publish_release.sh 自动执行
- Cache-Control 探测按指令 token 判断,兼容代理合并的缓存头
- 抽出 feedRedirectPolicy 供测试复用,覆盖 HTTPS 跳转、HTTP 降级、跳转过多、404、传输错误
- 新增测试校验服务端公钥与 Info.plist、project.yml 的 SUPublicEDKey 一致

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 15:20:08 +08:00
ysicingandClaude Opus 5.5 3dd5aa3e6c fix(uninstaller,updates): 列表发布即结束扫描态并保留后台已发现的新版
- 列表发布后立即结束"正在扫描应用",计量在后台继续;新增 reloadApps 供显式刷新中断计量重新列举,已算出的大小保留
- 回收期间禁止勾选残留项,界面复选框同步禁用
- 后台检查失败时若已发现新版则保持"有更新",不再退回空闲

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 15:20:08 +08:00
ysicingandClaude Opus 5.5 036a4a6598 refactor(uninstaller): 移除无调用方的应用列表接口并放宽取消测试
- 删除吞错的 installedApps(home:excluding:),统一使用可取消的 scanInstalledApps
- 取消测试改为按完整扫描检查点数在中途取消,不再绑定具体检查次数

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 15:20:08 +08:00
ysicing bc2bfe8f5c fix: 修复应用扫描取消并校验 Sparkle 更新源 2026-09-30 15:20:08 +08:00
ysicing 1c1e94a15f feat(updates): 接入 Sparkle 并支持双语发布说明 2026-09-30 15:20:08 +08:00
ysicing 8b13fd44eb test(uninstaller): 修复本地化断言并记录测试隔离约束 2026-09-30 15:20:08 +08:00
ysicing 7e2024eedf fix(lifecycle): 修复更新取消与卸载、查询生命周期 2026-09-30 15:20:08 +08:00
ysicing 3196ebef83 chore(release): 发布 0.14.0 2026-09-29 23:56:06 +08:00
ysicing fda9179a58 refactor(uninstaller): 优化卸载确认弹窗布局与文案 2026-09-29 23:29:58 +08:00
ysicing f559af9d1d fix(uninstaller): 修复应用退出后运行状态未刷新 2026-09-29 23:08:40 +08:00
ysicing 578c7c7b64 refactor(ai-usage): 简化模块名称为 AI 用量 2026-09-29 22:32:10 +08:00
ysicing e19ea53771 feat(processes): 改为可选模块并支持活动监视器回退 2026-09-29 22:13:53 +08:00
ysicing dd099950b1 feat(menubar): 支持显示 IP 归属地国旗和文字 2026-09-29 21:12:47 +08:00
ysicing 0387b0704d fix(updates): 修复安装更新后无法自动启动 2026-09-29 20:39:02 +08:00
ysicing 588af8f7f7 chore(release): 发布 0.13.1 2026-09-29 19:47:15 +08:00
ysicing c48c50fca3 feat(update): 新增版本更新系统通知 2026-09-29 19:38:20 +08:00
ysicing 3e4448e3e5 perf(menubar): 减少菜单栏重绘与隐藏预览刷新 2026-09-29 19:24:11 +08:00
ysicing f9f029b0e3 fix: 按硬件能力显示风扇入口 2026-09-29 17:49:52 +08:00
ysicing 1a222519e5 perf: 优化用量扫描与弹窗布局 2026-09-29 16:33:03 +08:00
ysicing 4f04d42d55 feat(ui): 添加 GitHub 和赞助入口 2026-09-29 14:59:56 +08:00
ysicing fd6244295f fix(calendar): 优化月历布局并修复返回日期状态 2026-09-29 13:28:12 +08:00
ysicing fd465466d8 fix(calendar): 降低日历资源占用并修复夏令时漏标 2026-09-29 13:11:50 +08:00
ysicing 28d8c12830 chore(release): 发布 0.13.0 2026-09-28 23:28:25 +08:00
ysicing c58590fb05 fix(calendar): 将单日日程移到黄历下方 2026-09-28 23:20:30 +08:00
ysicing f6d42e3448 fix(cleaner): 取消时安全结束管道读取 2026-09-28 23:20:25 +08:00
ysicing cb758c134c fix(calendar): 修复日程刷新并优化假期计算 2026-09-28 22:54:18 +08:00
ysicing ffb2bba651 fix(process): 避免子进程退出时无限等待 2026-09-28 22:54:08 +08:00
ysicing 2ef08cd2e6 docs(license): 清理未使用的第三方许可文本 2026-09-28 22:39:20 +08:00
ysicing 8ee7061c06 feat(calendar): 新增全局快捷键并适配弹窗尺寸 2026-09-28 22:16:38 +08:00
ysicing 0a26452d7e feat(calendar): 完善日历显示与日程提醒集成 2026-09-28 20:47:54 +08:00
ysicing ef2a8050ee feat(updates): 优化安装标识去重并支持复制 2026-09-28 17:18:12 +08:00
ysicing d1e73940c9 chore(release): 发布 0.12.1 2026-09-28 15:40:50 +08:00
ysicing d93eec1bea docs(history): 清理屏幕时间遗留说明 2026-09-28 15:29:37 +08:00
ysicing 3beb670849 chore(history): 移除屏幕使用时间统计 2026-09-28 15:11:14 +08:00