fix: tag 回退时更新链接使用原始标签名(v1.0.0,而非清洗后的 1.0.0)
This commit is contained in:
@@ -161,10 +161,9 @@ async function checkUpdate(repoInput) {
|
||||
|
||||
const list = Array.isArray(tags.data) ? tags.data : [];
|
||||
const versions = list
|
||||
.map((t) => normalizeTag(t && t.name))
|
||||
.filter(Boolean)
|
||||
.sort(compareVersions)
|
||||
.reverse();
|
||||
.map((t) => ({ raw: String((t && t.name) || ''), version: normalizeTag(t && t.name) }))
|
||||
.filter((t) => t.version)
|
||||
.sort((a, b) => compareVersions(b.version, a.version)); // 降序
|
||||
|
||||
if (!versions.length) {
|
||||
return {
|
||||
@@ -177,18 +176,19 @@ async function checkUpdate(repoInput) {
|
||||
};
|
||||
}
|
||||
|
||||
const latest = versions[0];
|
||||
const [{ version: latest, raw }] = versions;
|
||||
return {
|
||||
...base,
|
||||
ok: true,
|
||||
source: 'tag',
|
||||
latest,
|
||||
tag: latest,
|
||||
// 原始 tag 名留着:链接要用它,用清洗过的版本号会指向不存在的路径
|
||||
tag: raw || latest,
|
||||
hasUpdate: compareVersions(latest, current) > 0,
|
||||
title: '',
|
||||
notes: '',
|
||||
publishedAt: null,
|
||||
url: `https://github.com/${repo}/releases/tag/${latest}`
|
||||
url: `https://github.com/${repo}/releases/tag/${encodeURIComponent(raw || latest)}`
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user