
TRIPandbaiqing
58a0ad9e62
fix(release): use tagged URL in beta manifest, not releases/latest (#344)
修复 v1.2.24-1-beta-tauri release verification 时发现的 latent bug:
Beta manifest 里 url 字段指向 https://github.com/.../releases/latest/download/<asset>,
但 releases/latest 永远是最新非-prerelease(即 Stable),Beta 用户按这个 url
auto-update 会拉到 Stable 包:
- macOS Beta: 文件名 OpenLess_aarch64.app.tar.gz 跟 Stable 重名 → 下载 Stable 包,
装上的是 1.2.23 但 manifest 声称 1.2.24-1,version drift
- Windows/Linux Beta: 文件名带版本号 OpenLess_1.2.24-1_x64-setup.exe / .AppImage,
releases/latest 路径下没这个文件 → 直接 404
Stable 渠道沿用 releases/latest 是对的(latest = Stable)。
修法:write-updater-manifest.mjs 多读一个 OPENLESS_RELEASE_TAG env,beta 时
url 拼成 releases/download/<tag>/<asset>(指定具体 tag,不被 prerelease 折叠
影响);stable 不变。脚本对 beta 缺 tag 做 fail-fast。
release-tauri.yml 在 manifest step 多注入 OPENLESS_RELEASE_TAG: ${{ github.ref_name }}。
为什么不重发 v1.2.24-1:当前走 Path A 手动下载式 opt-in,前端调
fetch_latest_beta_release 拿 GitHub release 页 html_url,用户跳浏览器手动选包,
不消费 manifest.url。所以 v1.2.24-1 已发布的 manifest 里 url 错也是 dormant。
下一轮 Beta tag(v1.2.24-2-beta-tauri 或 stable cut 后再做 Beta)会用修复后
的脚本产出正确 URL。
本地 smoke test:
- channel=beta + 缺 OPENLESS_RELEASE_TAG → fail-fast 抛 "is required"
- channel=beta + 有 tag → env 检查通过,进入 artifact 解析
- channel=stable + 不传 tag → 维持原行为
- python yaml.safe_load() 解析 release-tauri.yml 通过
Co-authored-by: baiqing <lbx12309@icloud.com>
2026-05-08 09:04:14 +08:00
..
2026-05-06 11:20:24 +08:00
2026-04-30 11:26:26 +08:00
2026-05-04 20:00:36 +08:00
2026-05-04 20:27:05 +08:00
2026-05-06 11:20:24 +08:00
2026-05-02 09:46:39 +08:00
2026-05-02 09:46:39 +08:00
2026-05-02 03:59:01 +08:00
2026-05-02 03:29:49 +08:00
2026-04-30 14:19:29 +08:00
2026-04-30 14:16:03 +08:00
2026-05-03 22:59:38 +08:00
2026-05-05 19:31:49 +08:00
2026-05-04 10:17:56 +08:00
2026-05-04 10:17:56 +08:00
2026-04-30 14:19:29 +08:00
2026-04-30 14:21:35 +08:00
2026-05-02 05:07:40 +08:00
2026-05-03 19:03:43 +08:00
2026-05-04 22:21:50 +08:00
2026-05-05 19:31:49 +08:00
2026-05-01 21:44:26 +08:00
2026-05-06 21:18:15 +08:00
2026-05-06 15:49:28 +08:00
2026-05-06 15:21:29 +08:00
2026-05-06 15:21:29 +08:00
2026-05-02 03:29:49 +08:00
2026-05-02 03:59:01 +08:00
2026-05-06 23:32:28 +08:00
2026-05-08 09:04:14 +08:00