Skip to content

Commit 1b64909

Browse files
committed
feat!: tag => prerelease and use semver (#20)
1 parent dc42613 commit 1b64909

File tree

2 files changed

+3
-9
lines changed

2 files changed

+3
-9
lines changed

index.js

+2-8
Original file line numberDiff line numberDiff line change
@@ -81,10 +81,9 @@ async function getLatestVersionsByCodename (now, cache, mirror) {
8181
const lts = {}
8282

8383
const aliases = versions.reduce((obj, ver) => {
84-
const { major, minor, patch, tag } = splitVersion(ver.version)
84+
const { version, major, minor, patch, prerelease } = semver.parse(ver.version)
8585
const versionName = major !== '0' ? `v${major}` : `v${major}.${minor}`
8686
const codename = ver.lts ? ver.lts.toLowerCase() : versionName
87-
const version = tag !== '' ? `${major}.${minor}.${patch}-${tag}` : `${major}.${minor}.${patch}`
8887
const s = schedule[versionName]
8988

9089
// Version Object
@@ -93,7 +92,7 @@ async function getLatestVersionsByCodename (now, cache, mirror) {
9392
major,
9493
minor,
9594
patch,
96-
tag,
95+
prerelease,
9796
codename,
9897
versionName,
9998
start: s && s.start && new Date(s.start),
@@ -186,8 +185,3 @@ async function getLatestVersionsByCodename (now, cache, mirror) {
186185

187186
return aliases
188187
}
189-
190-
function splitVersion (ver) {
191-
const [, major, minor, patch, tag] = /^v([0-9]*)\.([0-9]*)\.([0-9]*)(?:-([0-9A-Za-z-_]+))?/.exec(ver).map((n, i) => i < 4 ? parseInt(n, 10) : n || '')
192-
return { major, minor, patch, tag }
193-
}

test/index.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -162,7 +162,7 @@ suite('nv', () => {
162162
assert.strictEqual(versions[0].major, 13)
163163
assert.strictEqual(versions[0].minor, 0)
164164
assert.strictEqual(versions[0].patch, 0)
165-
assert.strictEqual(versions[0].tag, 'v8-canary20191022e5d3472f57')
165+
assert.deepStrictEqual(versions[0].prerelease, ['v8-canary20191022e5d3472f57'])
166166
assert.strictEqual(versions[0].versionName, 'v13')
167167
})
168168

0 commit comments

Comments
 (0)