fix: tag 回退时更新链接使用原始标签名(v1.0.0,而非清洗后的 1.0.0)

This commit is contained in:
Drsakura
2026-09-10 16:26:08 +08:00
parent e4537d5bf0
commit 250d2505d5
+7 -7
View File
@@ -161,10 +161,9 @@ async function checkUpdate(repoInput) {
const list = Array.isArray(tags.data) ? tags.data : []; const list = Array.isArray(tags.data) ? tags.data : [];
const versions = list const versions = list
.map((t) => normalizeTag(t && t.name)) .map((t) => ({ raw: String((t && t.name) || ''), version: normalizeTag(t && t.name) }))
.filter(Boolean) .filter((t) => t.version)
.sort(compareVersions) .sort((a, b) => compareVersions(b.version, a.version)); // 降序
.reverse();
if (!versions.length) { if (!versions.length) {
return { return {
@@ -177,18 +176,19 @@ async function checkUpdate(repoInput) {
}; };
} }
const latest = versions[0]; const [{ version: latest, raw }] = versions;
return { return {
...base, ...base,
ok: true, ok: true,
source: 'tag', source: 'tag',
latest, latest,
tag: latest, // 原始 tag 名留着:链接要用它,用清洗过的版本号会指向不存在的路径
tag: raw || latest,
hasUpdate: compareVersions(latest, current) > 0, hasUpdate: compareVersions(latest, current) > 0,
title: '', title: '',
notes: '', notes: '',
publishedAt: null, publishedAt: null,
url: `https://github.com/${repo}/releases/tag/${latest}` url: `https://github.com/${repo}/releases/tag/${encodeURIComponent(raw || latest)}`
}; };
} }