Keep core config writes on the watched file so repeated saves take effect. Recover credentials from the update backup when the new macOS app has an empty OAuth directory. Complete the v0.3.11 release notes in four languages.
维护更新说明
每个版本建立与发布 tag 同名的目录,分别维护四份 Markdown:
docs/release-notes/v0.2.99/
zh-CN.md # 简体中文
zh-TW.md # 繁體中文
en.md # English
ja.md # 日本語
发布新版本时,创建对应目录并为每种语言编写正文和分类标题。版本号和日期由页面自动展示,不需要重复写入正文。支持标题、列表、加粗、代码和 HTTP/HTTPS 链接;应用内不加载图片或原始 HTML。简体中文格式示例:
## 新增
- 描述新增的功能。
## 优化
- 描述体验上的改进。
## 修复
- 描述修复的问题。
将说明文件随代码提交到运行发布工作流的提交中,再发布对应 tag。不要把文案写进 CI YAML。目录名必须与实际发布 tag 一致。
发布流程读取这些文件后生成两份输出:GitHub Release 正文只展示英文和简体中文,英文在前、中文在后;Windows、Linux、macOS 更新清单的 releaseNotes 保留四种语言中已编写的正文,保存语言到 Markdown 的映射,例如 {"zh-CN":"## 新增\n…","en":"## Added\n…"}。应用检查版本时一并获取,切换界面语言会立即切换到对应正文,无需额外请求。清单中的发布日期使用本次生成清单的时间。
不做语言或内容回退。 文件不存在或只有空白时,清单不包含该语言的正文,应用直接提示“暂未获取到当前语言的更新说明”。即使其他语言有内容,也不会代替显示。GitHub Release 的简体中文或英文正文缺失时,对应一节同样显示缺失提示。不会读取旧的单文件正文、已有 Release 文本或 GitHub 自动生成内容来补齐。
旧清单没有按语言组织的 releaseNotes 时,同样显示提示,不影响版本检查和升级。已经更新到最新版也能继续查看当前语言的说明。
重新运行发布工作流会同步更新 Release 正文和清单;仅在 GitHub 网页修改正文不会改变已经上传的清单。说明文件的权限或读取错误会使 CI 报错,以免静默发布错误内容。