+19
-2
@@ -9,2 +9,18 @@ 'use strict' | ||
| const { compareIdentifiers } = require('../internal/identifiers') | ||
| const isPrereleaseIdentifier = (prerelease, identifier) => { | ||
| const identifiers = identifier.split('.') | ||
| if (identifiers.length > prerelease.length) { | ||
| return false | ||
| } | ||
| for (let i = 0; i < identifiers.length; i++) { | ||
| if (compareIdentifiers(prerelease[i], identifiers[i]) !== 0) { | ||
| return false | ||
| } | ||
| } | ||
| return true | ||
| } | ||
| class SemVer { | ||
@@ -313,4 +329,5 @@ constructor (version, options) { | ||
| } | ||
| if (compareIdentifiers(this.prerelease[0], identifier) === 0) { | ||
| if (isNaN(this.prerelease[1])) { | ||
| if (isPrereleaseIdentifier(this.prerelease, identifier)) { | ||
| const prereleaseBase = this.prerelease[identifier.split('.').length] | ||
| if (isNaN(prereleaseBase)) { | ||
| this.prerelease = prerelease | ||
@@ -317,0 +334,0 @@ } |
+1
-1
| { | ||
| "name": "semver", | ||
| "version": "7.8.1", | ||
| "version": "7.8.2", | ||
| "description": "The semantic version parser used by npm.", | ||
@@ -5,0 +5,0 @@ "main": "index.js", |
100625
0.41%2272
0.58%