actions-up 1.3.0 → 1.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/core/api/check-updates.js +68 -12
- package/dist/package.js +1 -1
- package/package.json +1 -1
|
@@ -49,20 +49,76 @@ async function checkUpdates(actions, token) {
|
|
|
49
49
|
let stableRelease = allReleases.find((currentRelease) => !currentRelease.isPrerelease);
|
|
50
50
|
release = stableRelease ?? allReleases[0] ?? null;
|
|
51
51
|
}
|
|
52
|
-
if (!release) {
|
|
53
|
-
let tags = await client.getAllTags(owner, repo, 30);
|
|
54
|
-
if (tags.length > 0) {
|
|
55
|
-
let semverTag = tags.find((tag) => /^v?\d+(?:\.\d+){0,2}/u.test(tag.tag));
|
|
56
|
-
let latestTag = semverTag ?? tags[0];
|
|
57
|
-
if (latestTag) return [...results, {
|
|
58
|
-
version: latestTag.tag,
|
|
59
|
-
sha: latestTag.sha,
|
|
60
|
-
actionName
|
|
61
|
-
}];
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
52
|
if (release) {
|
|
65
53
|
let { version, sha } = release;
|
|
54
|
+
let considerTags = false;
|
|
55
|
+
{
|
|
56
|
+
let normalized = normalizeVersion(version);
|
|
57
|
+
let hasVersion = Boolean(version && version.trim() !== "");
|
|
58
|
+
let majorOnly = hasVersion && /^v?\d+$/u.test(version.trim());
|
|
59
|
+
let valid = semver.valid(normalized);
|
|
60
|
+
considerTags = !hasVersion || majorOnly || !valid;
|
|
61
|
+
}
|
|
62
|
+
if (considerTags) {
|
|
63
|
+
let tags$1 = await client.getAllTags(owner, repo, 30);
|
|
64
|
+
if (tags$1.length > 0) {
|
|
65
|
+
let semverCandidates = tags$1.filter((tag) => isSemverLike(tag.tag)).map((tag) => ({
|
|
66
|
+
v: semver.valid(normalizeVersion(tag.tag)),
|
|
67
|
+
raw: tag
|
|
68
|
+
}));
|
|
69
|
+
if (semverCandidates.length > 0) {
|
|
70
|
+
semverCandidates.sort((a, b) => {
|
|
71
|
+
let cmp = semver.rcompare(a.v, b.v);
|
|
72
|
+
if (cmp !== 0) return cmp;
|
|
73
|
+
let aSpecific = /\d+\.\d+/u.test(a.raw.tag) ? 1 : 0;
|
|
74
|
+
let bSpecific = /\d+\.\d+/u.test(b.raw.tag) ? 1 : 0;
|
|
75
|
+
return bSpecific - aSpecific;
|
|
76
|
+
});
|
|
77
|
+
let best = semverCandidates[0].raw;
|
|
78
|
+
let releaseSem = semver.valid(normalizeVersion(version) ?? void 0);
|
|
79
|
+
if (!releaseSem || semver.gt(semverCandidates[0].v, releaseSem) || semver.eq(semverCandidates[0].v, releaseSem) && /\d+\.\d+/u.test(best.tag)) {
|
|
80
|
+
let tagVersion = best.tag;
|
|
81
|
+
let tagSha = best.sha?.length ? best.sha : null;
|
|
82
|
+
if (!tagSha && tagVersion) try {
|
|
83
|
+
tagSha = await client.getTagSha(owner, repo, tagVersion);
|
|
84
|
+
} catch {}
|
|
85
|
+
return [...results, {
|
|
86
|
+
version: tagVersion,
|
|
87
|
+
sha: tagSha,
|
|
88
|
+
actionName
|
|
89
|
+
}];
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
if (!sha && version) try {
|
|
95
|
+
sha = await client.getTagSha(owner, repo, version);
|
|
96
|
+
} catch {}
|
|
97
|
+
return [...results, {
|
|
98
|
+
actionName,
|
|
99
|
+
version,
|
|
100
|
+
sha
|
|
101
|
+
}];
|
|
102
|
+
}
|
|
103
|
+
let tags = await client.getAllTags(owner, repo, 30);
|
|
104
|
+
if (tags.length > 0) {
|
|
105
|
+
let semverCandidates = tags.filter((tag) => isSemverLike(tag.tag)).map((tag) => ({
|
|
106
|
+
v: semver.valid(normalizeVersion(tag.tag)),
|
|
107
|
+
raw: tag
|
|
108
|
+
}));
|
|
109
|
+
let best;
|
|
110
|
+
if (semverCandidates.length > 0) {
|
|
111
|
+
semverCandidates.sort((a, b) => {
|
|
112
|
+
let cmp = semver.rcompare(a.v, b.v);
|
|
113
|
+
if (cmp !== 0) return cmp;
|
|
114
|
+
let aSpecific = /\d+\.\d+/u.test(a.raw.tag) ? 1 : 0;
|
|
115
|
+
let bSpecific = /\d+\.\d+/u.test(b.raw.tag) ? 1 : 0;
|
|
116
|
+
return bSpecific - aSpecific;
|
|
117
|
+
});
|
|
118
|
+
best = semverCandidates[0].raw;
|
|
119
|
+
} else best = tags[0];
|
|
120
|
+
let version = best.tag;
|
|
121
|
+
let sha = best.sha?.length ? best.sha : null;
|
|
66
122
|
if (!sha && version) try {
|
|
67
123
|
sha = await client.getTagSha(owner, repo, version);
|
|
68
124
|
} catch {}
|
package/dist/package.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const version = "1.3.
|
|
1
|
+
const version = "1.3.1";
|
|
2
2
|
export { version };
|