mirror of
https://github.com/actions/setup-python.git
synced 2024-11-21 22:50:58 -05:00
Bump semver from 7.3.8 to 7.5.2 (#692)
This commit is contained in:
parent
014d32a830
commit
ea5b57fccc
4 changed files with 236 additions and 144 deletions
Binary file not shown.
364
dist/setup/index.js
vendored
364
dist/setup/index.js
vendored
|
@ -60229,6 +60229,7 @@ class Comparator {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
comp = comp.trim().split(/\s+/).join(' ')
|
||||||
debug('comparator', comp, options)
|
debug('comparator', comp, options)
|
||||||
this.options = options
|
this.options = options
|
||||||
this.loose = !!options.loose
|
this.loose = !!options.loose
|
||||||
|
@ -60291,13 +60292,6 @@ class Comparator {
|
||||||
throw new TypeError('a Comparator is required')
|
throw new TypeError('a Comparator is required')
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!options || typeof options !== 'object') {
|
|
||||||
options = {
|
|
||||||
loose: !!options,
|
|
||||||
includePrerelease: false,
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (this.operator === '') {
|
if (this.operator === '') {
|
||||||
if (this.value === '') {
|
if (this.value === '') {
|
||||||
return true
|
return true
|
||||||
|
@ -60310,39 +60304,50 @@ class Comparator {
|
||||||
return new Range(this.value, options).test(comp.semver)
|
return new Range(this.value, options).test(comp.semver)
|
||||||
}
|
}
|
||||||
|
|
||||||
const sameDirectionIncreasing =
|
options = parseOptions(options)
|
||||||
(this.operator === '>=' || this.operator === '>') &&
|
|
||||||
(comp.operator === '>=' || comp.operator === '>')
|
|
||||||
const sameDirectionDecreasing =
|
|
||||||
(this.operator === '<=' || this.operator === '<') &&
|
|
||||||
(comp.operator === '<=' || comp.operator === '<')
|
|
||||||
const sameSemVer = this.semver.version === comp.semver.version
|
|
||||||
const differentDirectionsInclusive =
|
|
||||||
(this.operator === '>=' || this.operator === '<=') &&
|
|
||||||
(comp.operator === '>=' || comp.operator === '<=')
|
|
||||||
const oppositeDirectionsLessThan =
|
|
||||||
cmp(this.semver, '<', comp.semver, options) &&
|
|
||||||
(this.operator === '>=' || this.operator === '>') &&
|
|
||||||
(comp.operator === '<=' || comp.operator === '<')
|
|
||||||
const oppositeDirectionsGreaterThan =
|
|
||||||
cmp(this.semver, '>', comp.semver, options) &&
|
|
||||||
(this.operator === '<=' || this.operator === '<') &&
|
|
||||||
(comp.operator === '>=' || comp.operator === '>')
|
|
||||||
|
|
||||||
return (
|
// Special cases where nothing can possibly be lower
|
||||||
sameDirectionIncreasing ||
|
if (options.includePrerelease &&
|
||||||
sameDirectionDecreasing ||
|
(this.value === '<0.0.0-0' || comp.value === '<0.0.0-0')) {
|
||||||
(sameSemVer && differentDirectionsInclusive) ||
|
return false
|
||||||
oppositeDirectionsLessThan ||
|
}
|
||||||
oppositeDirectionsGreaterThan
|
if (!options.includePrerelease &&
|
||||||
)
|
(this.value.startsWith('<0.0.0') || comp.value.startsWith('<0.0.0'))) {
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
|
||||||
|
// Same direction increasing (> or >=)
|
||||||
|
if (this.operator.startsWith('>') && comp.operator.startsWith('>')) {
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
// Same direction decreasing (< or <=)
|
||||||
|
if (this.operator.startsWith('<') && comp.operator.startsWith('<')) {
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
// same SemVer and both sides are inclusive (<= or >=)
|
||||||
|
if (
|
||||||
|
(this.semver.version === comp.semver.version) &&
|
||||||
|
this.operator.includes('=') && comp.operator.includes('=')) {
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
// opposite directions less than
|
||||||
|
if (cmp(this.semver, '<', comp.semver, options) &&
|
||||||
|
this.operator.startsWith('>') && comp.operator.startsWith('<')) {
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
// opposite directions greater than
|
||||||
|
if (cmp(this.semver, '>', comp.semver, options) &&
|
||||||
|
this.operator.startsWith('<') && comp.operator.startsWith('>')) {
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
return false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
module.exports = Comparator
|
module.exports = Comparator
|
||||||
|
|
||||||
const parseOptions = __nccwpck_require__(785)
|
const parseOptions = __nccwpck_require__(785)
|
||||||
const { re, t } = __nccwpck_require__(9523)
|
const { safeRe: re, t } = __nccwpck_require__(9523)
|
||||||
const cmp = __nccwpck_require__(5098)
|
const cmp = __nccwpck_require__(5098)
|
||||||
const debug = __nccwpck_require__(106)
|
const debug = __nccwpck_require__(106)
|
||||||
const SemVer = __nccwpck_require__(8088)
|
const SemVer = __nccwpck_require__(8088)
|
||||||
|
@ -60382,19 +60387,26 @@ class Range {
|
||||||
this.loose = !!options.loose
|
this.loose = !!options.loose
|
||||||
this.includePrerelease = !!options.includePrerelease
|
this.includePrerelease = !!options.includePrerelease
|
||||||
|
|
||||||
// First, split based on boolean or ||
|
// First reduce all whitespace as much as possible so we do not have to rely
|
||||||
|
// on potentially slow regexes like \s*. This is then stored and used for
|
||||||
|
// future error messages as well.
|
||||||
this.raw = range
|
this.raw = range
|
||||||
this.set = range
|
.trim()
|
||||||
|
.split(/\s+/)
|
||||||
|
.join(' ')
|
||||||
|
|
||||||
|
// First, split on ||
|
||||||
|
this.set = this.raw
|
||||||
.split('||')
|
.split('||')
|
||||||
// map the range to a 2d array of comparators
|
// map the range to a 2d array of comparators
|
||||||
.map(r => this.parseRange(r.trim()))
|
.map(r => this.parseRange(r))
|
||||||
// throw out any comparator lists that are empty
|
// throw out any comparator lists that are empty
|
||||||
// this generally means that it was not a valid range, which is allowed
|
// this generally means that it was not a valid range, which is allowed
|
||||||
// in loose mode, but will still throw if the WHOLE range is invalid.
|
// in loose mode, but will still throw if the WHOLE range is invalid.
|
||||||
.filter(c => c.length)
|
.filter(c => c.length)
|
||||||
|
|
||||||
if (!this.set.length) {
|
if (!this.set.length) {
|
||||||
throw new TypeError(`Invalid SemVer Range: ${range}`)
|
throw new TypeError(`Invalid SemVer Range: ${this.raw}`)
|
||||||
}
|
}
|
||||||
|
|
||||||
// if we have any that are not the null set, throw out null sets.
|
// if we have any that are not the null set, throw out null sets.
|
||||||
|
@ -60420,9 +60432,7 @@ class Range {
|
||||||
|
|
||||||
format () {
|
format () {
|
||||||
this.range = this.set
|
this.range = this.set
|
||||||
.map((comps) => {
|
.map((comps) => comps.join(' ').trim())
|
||||||
return comps.join(' ').trim()
|
|
||||||
})
|
|
||||||
.join('||')
|
.join('||')
|
||||||
.trim()
|
.trim()
|
||||||
return this.range
|
return this.range
|
||||||
|
@ -60433,12 +60443,12 @@ class Range {
|
||||||
}
|
}
|
||||||
|
|
||||||
parseRange (range) {
|
parseRange (range) {
|
||||||
range = range.trim()
|
|
||||||
|
|
||||||
// memoize range parsing for performance.
|
// memoize range parsing for performance.
|
||||||
// this is a very hot path, and fully deterministic.
|
// this is a very hot path, and fully deterministic.
|
||||||
const memoOpts = Object.keys(this.options).join(',')
|
const memoOpts =
|
||||||
const memoKey = `parseRange:${memoOpts}:${range}`
|
(this.options.includePrerelease && FLAG_INCLUDE_PRERELEASE) |
|
||||||
|
(this.options.loose && FLAG_LOOSE)
|
||||||
|
const memoKey = memoOpts + ':' + range
|
||||||
const cached = cache.get(memoKey)
|
const cached = cache.get(memoKey)
|
||||||
if (cached) {
|
if (cached) {
|
||||||
return cached
|
return cached
|
||||||
|
@ -60459,9 +60469,6 @@ class Range {
|
||||||
// `^ 1.2.3` => `^1.2.3`
|
// `^ 1.2.3` => `^1.2.3`
|
||||||
range = range.replace(re[t.CARETTRIM], caretTrimReplace)
|
range = range.replace(re[t.CARETTRIM], caretTrimReplace)
|
||||||
|
|
||||||
// normalize spaces
|
|
||||||
range = range.split(/\s+/).join(' ')
|
|
||||||
|
|
||||||
// At this point, the range is completely trimmed and
|
// At this point, the range is completely trimmed and
|
||||||
// ready to be split into comparators.
|
// ready to be split into comparators.
|
||||||
|
|
||||||
|
@ -60546,6 +60553,7 @@ class Range {
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
module.exports = Range
|
module.exports = Range
|
||||||
|
|
||||||
const LRU = __nccwpck_require__(7129)
|
const LRU = __nccwpck_require__(7129)
|
||||||
|
@ -60556,12 +60564,13 @@ const Comparator = __nccwpck_require__(1532)
|
||||||
const debug = __nccwpck_require__(106)
|
const debug = __nccwpck_require__(106)
|
||||||
const SemVer = __nccwpck_require__(8088)
|
const SemVer = __nccwpck_require__(8088)
|
||||||
const {
|
const {
|
||||||
re,
|
safeRe: re,
|
||||||
t,
|
t,
|
||||||
comparatorTrimReplace,
|
comparatorTrimReplace,
|
||||||
tildeTrimReplace,
|
tildeTrimReplace,
|
||||||
caretTrimReplace,
|
caretTrimReplace,
|
||||||
} = __nccwpck_require__(9523)
|
} = __nccwpck_require__(9523)
|
||||||
|
const { FLAG_INCLUDE_PRERELEASE, FLAG_LOOSE } = __nccwpck_require__(2293)
|
||||||
|
|
||||||
const isNullSet = c => c.value === '<0.0.0-0'
|
const isNullSet = c => c.value === '<0.0.0-0'
|
||||||
const isAny = c => c.value === ''
|
const isAny = c => c.value === ''
|
||||||
|
@ -60609,10 +60618,13 @@ const isX = id => !id || id.toLowerCase() === 'x' || id === '*'
|
||||||
// ~1.2.3, ~>1.2.3 --> >=1.2.3 <1.3.0-0
|
// ~1.2.3, ~>1.2.3 --> >=1.2.3 <1.3.0-0
|
||||||
// ~1.2.0, ~>1.2.0 --> >=1.2.0 <1.3.0-0
|
// ~1.2.0, ~>1.2.0 --> >=1.2.0 <1.3.0-0
|
||||||
// ~0.0.1 --> >=0.0.1 <0.1.0-0
|
// ~0.0.1 --> >=0.0.1 <0.1.0-0
|
||||||
const replaceTildes = (comp, options) =>
|
const replaceTildes = (comp, options) => {
|
||||||
comp.trim().split(/\s+/).map((c) => {
|
return comp
|
||||||
return replaceTilde(c, options)
|
.trim()
|
||||||
}).join(' ')
|
.split(/\s+/)
|
||||||
|
.map((c) => replaceTilde(c, options))
|
||||||
|
.join(' ')
|
||||||
|
}
|
||||||
|
|
||||||
const replaceTilde = (comp, options) => {
|
const replaceTilde = (comp, options) => {
|
||||||
const r = options.loose ? re[t.TILDELOOSE] : re[t.TILDE]
|
const r = options.loose ? re[t.TILDELOOSE] : re[t.TILDE]
|
||||||
|
@ -60650,10 +60662,13 @@ const replaceTilde = (comp, options) => {
|
||||||
// ^1.2.0 --> >=1.2.0 <2.0.0-0
|
// ^1.2.0 --> >=1.2.0 <2.0.0-0
|
||||||
// ^0.0.1 --> >=0.0.1 <0.0.2-0
|
// ^0.0.1 --> >=0.0.1 <0.0.2-0
|
||||||
// ^0.1.0 --> >=0.1.0 <0.2.0-0
|
// ^0.1.0 --> >=0.1.0 <0.2.0-0
|
||||||
const replaceCarets = (comp, options) =>
|
const replaceCarets = (comp, options) => {
|
||||||
comp.trim().split(/\s+/).map((c) => {
|
return comp
|
||||||
return replaceCaret(c, options)
|
.trim()
|
||||||
}).join(' ')
|
.split(/\s+/)
|
||||||
|
.map((c) => replaceCaret(c, options))
|
||||||
|
.join(' ')
|
||||||
|
}
|
||||||
|
|
||||||
const replaceCaret = (comp, options) => {
|
const replaceCaret = (comp, options) => {
|
||||||
debug('caret', comp, options)
|
debug('caret', comp, options)
|
||||||
|
@ -60710,9 +60725,10 @@ const replaceCaret = (comp, options) => {
|
||||||
|
|
||||||
const replaceXRanges = (comp, options) => {
|
const replaceXRanges = (comp, options) => {
|
||||||
debug('replaceXRanges', comp, options)
|
debug('replaceXRanges', comp, options)
|
||||||
return comp.split(/\s+/).map((c) => {
|
return comp
|
||||||
return replaceXRange(c, options)
|
.split(/\s+/)
|
||||||
}).join(' ')
|
.map((c) => replaceXRange(c, options))
|
||||||
|
.join(' ')
|
||||||
}
|
}
|
||||||
|
|
||||||
const replaceXRange = (comp, options) => {
|
const replaceXRange = (comp, options) => {
|
||||||
|
@ -60795,12 +60811,15 @@ const replaceXRange = (comp, options) => {
|
||||||
const replaceStars = (comp, options) => {
|
const replaceStars = (comp, options) => {
|
||||||
debug('replaceStars', comp, options)
|
debug('replaceStars', comp, options)
|
||||||
// Looseness is ignored here. star is always as loose as it gets!
|
// Looseness is ignored here. star is always as loose as it gets!
|
||||||
return comp.trim().replace(re[t.STAR], '')
|
return comp
|
||||||
|
.trim()
|
||||||
|
.replace(re[t.STAR], '')
|
||||||
}
|
}
|
||||||
|
|
||||||
const replaceGTE0 = (comp, options) => {
|
const replaceGTE0 = (comp, options) => {
|
||||||
debug('replaceGTE0', comp, options)
|
debug('replaceGTE0', comp, options)
|
||||||
return comp.trim()
|
return comp
|
||||||
|
.trim()
|
||||||
.replace(re[options.includePrerelease ? t.GTE0PRE : t.GTE0], '')
|
.replace(re[options.includePrerelease ? t.GTE0PRE : t.GTE0], '')
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -60838,7 +60857,7 @@ const hyphenReplace = incPr => ($0,
|
||||||
to = `<=${to}`
|
to = `<=${to}`
|
||||||
}
|
}
|
||||||
|
|
||||||
return (`${from} ${to}`).trim()
|
return `${from} ${to}`.trim()
|
||||||
}
|
}
|
||||||
|
|
||||||
const testSet = (set, version, options) => {
|
const testSet = (set, version, options) => {
|
||||||
|
@ -60885,7 +60904,7 @@ const testSet = (set, version, options) => {
|
||||||
|
|
||||||
const debug = __nccwpck_require__(106)
|
const debug = __nccwpck_require__(106)
|
||||||
const { MAX_LENGTH, MAX_SAFE_INTEGER } = __nccwpck_require__(2293)
|
const { MAX_LENGTH, MAX_SAFE_INTEGER } = __nccwpck_require__(2293)
|
||||||
const { re, t } = __nccwpck_require__(9523)
|
const { safeRe: re, t } = __nccwpck_require__(9523)
|
||||||
|
|
||||||
const parseOptions = __nccwpck_require__(785)
|
const parseOptions = __nccwpck_require__(785)
|
||||||
const { compareIdentifiers } = __nccwpck_require__(2463)
|
const { compareIdentifiers } = __nccwpck_require__(2463)
|
||||||
|
@ -60901,7 +60920,7 @@ class SemVer {
|
||||||
version = version.version
|
version = version.version
|
||||||
}
|
}
|
||||||
} else if (typeof version !== 'string') {
|
} else if (typeof version !== 'string') {
|
||||||
throw new TypeError(`Invalid Version: ${version}`)
|
throw new TypeError(`Invalid version. Must be a string. Got type "${typeof version}".`)
|
||||||
}
|
}
|
||||||
|
|
||||||
if (version.length > MAX_LENGTH) {
|
if (version.length > MAX_LENGTH) {
|
||||||
|
@ -61060,36 +61079,36 @@ class SemVer {
|
||||||
|
|
||||||
// preminor will bump the version up to the next minor release, and immediately
|
// preminor will bump the version up to the next minor release, and immediately
|
||||||
// down to pre-release. premajor and prepatch work the same way.
|
// down to pre-release. premajor and prepatch work the same way.
|
||||||
inc (release, identifier) {
|
inc (release, identifier, identifierBase) {
|
||||||
switch (release) {
|
switch (release) {
|
||||||
case 'premajor':
|
case 'premajor':
|
||||||
this.prerelease.length = 0
|
this.prerelease.length = 0
|
||||||
this.patch = 0
|
this.patch = 0
|
||||||
this.minor = 0
|
this.minor = 0
|
||||||
this.major++
|
this.major++
|
||||||
this.inc('pre', identifier)
|
this.inc('pre', identifier, identifierBase)
|
||||||
break
|
break
|
||||||
case 'preminor':
|
case 'preminor':
|
||||||
this.prerelease.length = 0
|
this.prerelease.length = 0
|
||||||
this.patch = 0
|
this.patch = 0
|
||||||
this.minor++
|
this.minor++
|
||||||
this.inc('pre', identifier)
|
this.inc('pre', identifier, identifierBase)
|
||||||
break
|
break
|
||||||
case 'prepatch':
|
case 'prepatch':
|
||||||
// If this is already a prerelease, it will bump to the next version
|
// If this is already a prerelease, it will bump to the next version
|
||||||
// drop any prereleases that might already exist, since they are not
|
// drop any prereleases that might already exist, since they are not
|
||||||
// relevant at this point.
|
// relevant at this point.
|
||||||
this.prerelease.length = 0
|
this.prerelease.length = 0
|
||||||
this.inc('patch', identifier)
|
this.inc('patch', identifier, identifierBase)
|
||||||
this.inc('pre', identifier)
|
this.inc('pre', identifier, identifierBase)
|
||||||
break
|
break
|
||||||
// If the input is a non-prerelease version, this acts the same as
|
// If the input is a non-prerelease version, this acts the same as
|
||||||
// prepatch.
|
// prepatch.
|
||||||
case 'prerelease':
|
case 'prerelease':
|
||||||
if (this.prerelease.length === 0) {
|
if (this.prerelease.length === 0) {
|
||||||
this.inc('patch', identifier)
|
this.inc('patch', identifier, identifierBase)
|
||||||
}
|
}
|
||||||
this.inc('pre', identifier)
|
this.inc('pre', identifier, identifierBase)
|
||||||
break
|
break
|
||||||
|
|
||||||
case 'major':
|
case 'major':
|
||||||
|
@ -61131,9 +61150,15 @@ class SemVer {
|
||||||
break
|
break
|
||||||
// This probably shouldn't be used publicly.
|
// This probably shouldn't be used publicly.
|
||||||
// 1.0.0 'pre' would become 1.0.0-0 which is the wrong direction.
|
// 1.0.0 'pre' would become 1.0.0-0 which is the wrong direction.
|
||||||
case 'pre':
|
case 'pre': {
|
||||||
|
const base = Number(identifierBase) ? 1 : 0
|
||||||
|
|
||||||
|
if (!identifier && identifierBase === false) {
|
||||||
|
throw new Error('invalid increment argument: identifier is empty')
|
||||||
|
}
|
||||||
|
|
||||||
if (this.prerelease.length === 0) {
|
if (this.prerelease.length === 0) {
|
||||||
this.prerelease = [0]
|
this.prerelease = [base]
|
||||||
} else {
|
} else {
|
||||||
let i = this.prerelease.length
|
let i = this.prerelease.length
|
||||||
while (--i >= 0) {
|
while (--i >= 0) {
|
||||||
|
@ -61144,27 +61169,36 @@ class SemVer {
|
||||||
}
|
}
|
||||||
if (i === -1) {
|
if (i === -1) {
|
||||||
// didn't increment anything
|
// didn't increment anything
|
||||||
this.prerelease.push(0)
|
if (identifier === this.prerelease.join('.') && identifierBase === false) {
|
||||||
|
throw new Error('invalid increment argument: identifier already exists')
|
||||||
|
}
|
||||||
|
this.prerelease.push(base)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (identifier) {
|
if (identifier) {
|
||||||
// 1.2.0-beta.1 bumps to 1.2.0-beta.2,
|
// 1.2.0-beta.1 bumps to 1.2.0-beta.2,
|
||||||
// 1.2.0-beta.fooblz or 1.2.0-beta bumps to 1.2.0-beta.0
|
// 1.2.0-beta.fooblz or 1.2.0-beta bumps to 1.2.0-beta.0
|
||||||
|
let prerelease = [identifier, base]
|
||||||
|
if (identifierBase === false) {
|
||||||
|
prerelease = [identifier]
|
||||||
|
}
|
||||||
if (compareIdentifiers(this.prerelease[0], identifier) === 0) {
|
if (compareIdentifiers(this.prerelease[0], identifier) === 0) {
|
||||||
if (isNaN(this.prerelease[1])) {
|
if (isNaN(this.prerelease[1])) {
|
||||||
this.prerelease = [identifier, 0]
|
this.prerelease = prerelease
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
this.prerelease = [identifier, 0]
|
this.prerelease = prerelease
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break
|
break
|
||||||
|
}
|
||||||
default:
|
default:
|
||||||
throw new Error(`invalid increment argument: ${release}`)
|
throw new Error(`invalid increment argument: ${release}`)
|
||||||
}
|
}
|
||||||
this.format()
|
this.raw = this.format()
|
||||||
this.raw = this.version
|
if (this.build.length) {
|
||||||
|
this.raw += `+${this.build.join('.')}`
|
||||||
|
}
|
||||||
return this
|
return this
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -61251,7 +61285,7 @@ module.exports = cmp
|
||||||
|
|
||||||
const SemVer = __nccwpck_require__(8088)
|
const SemVer = __nccwpck_require__(8088)
|
||||||
const parse = __nccwpck_require__(5925)
|
const parse = __nccwpck_require__(5925)
|
||||||
const { re, t } = __nccwpck_require__(9523)
|
const { safeRe: re, t } = __nccwpck_require__(9523)
|
||||||
|
|
||||||
const coerce = (version, options) => {
|
const coerce = (version, options) => {
|
||||||
if (version instanceof SemVer) {
|
if (version instanceof SemVer) {
|
||||||
|
@ -61345,27 +61379,69 @@ module.exports = compare
|
||||||
/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
|
/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
|
||||||
|
|
||||||
const parse = __nccwpck_require__(5925)
|
const parse = __nccwpck_require__(5925)
|
||||||
const eq = __nccwpck_require__(1898)
|
|
||||||
|
|
||||||
const diff = (version1, version2) => {
|
const diff = (version1, version2) => {
|
||||||
if (eq(version1, version2)) {
|
const v1 = parse(version1, null, true)
|
||||||
|
const v2 = parse(version2, null, true)
|
||||||
|
const comparison = v1.compare(v2)
|
||||||
|
|
||||||
|
if (comparison === 0) {
|
||||||
return null
|
return null
|
||||||
} else {
|
|
||||||
const v1 = parse(version1)
|
|
||||||
const v2 = parse(version2)
|
|
||||||
const hasPre = v1.prerelease.length || v2.prerelease.length
|
|
||||||
const prefix = hasPre ? 'pre' : ''
|
|
||||||
const defaultResult = hasPre ? 'prerelease' : ''
|
|
||||||
for (const key in v1) {
|
|
||||||
if (key === 'major' || key === 'minor' || key === 'patch') {
|
|
||||||
if (v1[key] !== v2[key]) {
|
|
||||||
return prefix + key
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return defaultResult // may be undefined
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const v1Higher = comparison > 0
|
||||||
|
const highVersion = v1Higher ? v1 : v2
|
||||||
|
const lowVersion = v1Higher ? v2 : v1
|
||||||
|
const highHasPre = !!highVersion.prerelease.length
|
||||||
|
const lowHasPre = !!lowVersion.prerelease.length
|
||||||
|
|
||||||
|
if (lowHasPre && !highHasPre) {
|
||||||
|
// Going from prerelease -> no prerelease requires some special casing
|
||||||
|
|
||||||
|
// If the low version has only a major, then it will always be a major
|
||||||
|
// Some examples:
|
||||||
|
// 1.0.0-1 -> 1.0.0
|
||||||
|
// 1.0.0-1 -> 1.1.1
|
||||||
|
// 1.0.0-1 -> 2.0.0
|
||||||
|
if (!lowVersion.patch && !lowVersion.minor) {
|
||||||
|
return 'major'
|
||||||
|
}
|
||||||
|
|
||||||
|
// Otherwise it can be determined by checking the high version
|
||||||
|
|
||||||
|
if (highVersion.patch) {
|
||||||
|
// anything higher than a patch bump would result in the wrong version
|
||||||
|
return 'patch'
|
||||||
|
}
|
||||||
|
|
||||||
|
if (highVersion.minor) {
|
||||||
|
// anything higher than a minor bump would result in the wrong version
|
||||||
|
return 'minor'
|
||||||
|
}
|
||||||
|
|
||||||
|
// bumping major/minor/patch all have same result
|
||||||
|
return 'major'
|
||||||
|
}
|
||||||
|
|
||||||
|
// add the `pre` prefix if we are going to a prerelease version
|
||||||
|
const prefix = highHasPre ? 'pre' : ''
|
||||||
|
|
||||||
|
if (v1.major !== v2.major) {
|
||||||
|
return prefix + 'major'
|
||||||
|
}
|
||||||
|
|
||||||
|
if (v1.minor !== v2.minor) {
|
||||||
|
return prefix + 'minor'
|
||||||
|
}
|
||||||
|
|
||||||
|
if (v1.patch !== v2.patch) {
|
||||||
|
return prefix + 'patch'
|
||||||
|
}
|
||||||
|
|
||||||
|
// high and low are preleases
|
||||||
|
return 'prerelease'
|
||||||
}
|
}
|
||||||
|
|
||||||
module.exports = diff
|
module.exports = diff
|
||||||
|
|
||||||
|
|
||||||
|
@ -61406,8 +61482,9 @@ module.exports = gte
|
||||||
|
|
||||||
const SemVer = __nccwpck_require__(8088)
|
const SemVer = __nccwpck_require__(8088)
|
||||||
|
|
||||||
const inc = (version, release, options, identifier) => {
|
const inc = (version, release, options, identifier, identifierBase) => {
|
||||||
if (typeof (options) === 'string') {
|
if (typeof (options) === 'string') {
|
||||||
|
identifierBase = identifier
|
||||||
identifier = options
|
identifier = options
|
||||||
options = undefined
|
options = undefined
|
||||||
}
|
}
|
||||||
|
@ -61416,7 +61493,7 @@ const inc = (version, release, options, identifier) => {
|
||||||
return new SemVer(
|
return new SemVer(
|
||||||
version instanceof SemVer ? version.version : version,
|
version instanceof SemVer ? version.version : version,
|
||||||
options
|
options
|
||||||
).inc(release, identifier).version
|
).inc(release, identifier, identifierBase).version
|
||||||
} catch (er) {
|
} catch (er) {
|
||||||
return null
|
return null
|
||||||
}
|
}
|
||||||
|
@ -61479,35 +61556,18 @@ module.exports = neq
|
||||||
/***/ 5925:
|
/***/ 5925:
|
||||||
/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
|
/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
|
||||||
|
|
||||||
const { MAX_LENGTH } = __nccwpck_require__(2293)
|
|
||||||
const { re, t } = __nccwpck_require__(9523)
|
|
||||||
const SemVer = __nccwpck_require__(8088)
|
const SemVer = __nccwpck_require__(8088)
|
||||||
|
const parse = (version, options, throwErrors = false) => {
|
||||||
const parseOptions = __nccwpck_require__(785)
|
|
||||||
const parse = (version, options) => {
|
|
||||||
options = parseOptions(options)
|
|
||||||
|
|
||||||
if (version instanceof SemVer) {
|
if (version instanceof SemVer) {
|
||||||
return version
|
return version
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof version !== 'string') {
|
|
||||||
return null
|
|
||||||
}
|
|
||||||
|
|
||||||
if (version.length > MAX_LENGTH) {
|
|
||||||
return null
|
|
||||||
}
|
|
||||||
|
|
||||||
const r = options.loose ? re[t.LOOSE] : re[t.FULL]
|
|
||||||
if (!r.test(version)) {
|
|
||||||
return null
|
|
||||||
}
|
|
||||||
|
|
||||||
try {
|
try {
|
||||||
return new SemVer(version, options)
|
return new SemVer(version, options)
|
||||||
} catch (er) {
|
} catch (er) {
|
||||||
return null
|
if (!throwErrors) {
|
||||||
|
return null
|
||||||
|
}
|
||||||
|
throw er
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -61687,6 +61747,7 @@ module.exports = {
|
||||||
src: internalRe.src,
|
src: internalRe.src,
|
||||||
tokens: internalRe.t,
|
tokens: internalRe.t,
|
||||||
SEMVER_SPEC_VERSION: constants.SEMVER_SPEC_VERSION,
|
SEMVER_SPEC_VERSION: constants.SEMVER_SPEC_VERSION,
|
||||||
|
RELEASE_TYPES: constants.RELEASE_TYPES,
|
||||||
compareIdentifiers: identifiers.compareIdentifiers,
|
compareIdentifiers: identifiers.compareIdentifiers,
|
||||||
rcompareIdentifiers: identifiers.rcompareIdentifiers,
|
rcompareIdentifiers: identifiers.rcompareIdentifiers,
|
||||||
}
|
}
|
||||||
|
@ -61708,11 +61769,24 @@ const MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER ||
|
||||||
// Max safe segment length for coercion.
|
// Max safe segment length for coercion.
|
||||||
const MAX_SAFE_COMPONENT_LENGTH = 16
|
const MAX_SAFE_COMPONENT_LENGTH = 16
|
||||||
|
|
||||||
|
const RELEASE_TYPES = [
|
||||||
|
'major',
|
||||||
|
'premajor',
|
||||||
|
'minor',
|
||||||
|
'preminor',
|
||||||
|
'patch',
|
||||||
|
'prepatch',
|
||||||
|
'prerelease',
|
||||||
|
]
|
||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
SEMVER_SPEC_VERSION,
|
|
||||||
MAX_LENGTH,
|
MAX_LENGTH,
|
||||||
MAX_SAFE_INTEGER,
|
|
||||||
MAX_SAFE_COMPONENT_LENGTH,
|
MAX_SAFE_COMPONENT_LENGTH,
|
||||||
|
MAX_SAFE_INTEGER,
|
||||||
|
RELEASE_TYPES,
|
||||||
|
SEMVER_SPEC_VERSION,
|
||||||
|
FLAG_INCLUDE_PRERELEASE: 0b001,
|
||||||
|
FLAG_LOOSE: 0b010,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -61767,16 +61841,20 @@ module.exports = {
|
||||||
/***/ 785:
|
/***/ 785:
|
||||||
/***/ ((module) => {
|
/***/ ((module) => {
|
||||||
|
|
||||||
// parse out just the options we care about so we always get a consistent
|
// parse out just the options we care about
|
||||||
// obj with keys in a consistent order.
|
const looseOption = Object.freeze({ loose: true })
|
||||||
const opts = ['includePrerelease', 'loose', 'rtl']
|
const emptyOpts = Object.freeze({ })
|
||||||
const parseOptions = options =>
|
const parseOptions = options => {
|
||||||
!options ? {}
|
if (!options) {
|
||||||
: typeof options !== 'object' ? { loose: true }
|
return emptyOpts
|
||||||
: opts.filter(k => options[k]).reduce((o, k) => {
|
}
|
||||||
o[k] = true
|
|
||||||
return o
|
if (typeof options !== 'object') {
|
||||||
}, {})
|
return looseOption
|
||||||
|
}
|
||||||
|
|
||||||
|
return options
|
||||||
|
}
|
||||||
module.exports = parseOptions
|
module.exports = parseOptions
|
||||||
|
|
||||||
|
|
||||||
|
@ -61791,16 +61869,27 @@ exports = module.exports = {}
|
||||||
|
|
||||||
// The actual regexps go on exports.re
|
// The actual regexps go on exports.re
|
||||||
const re = exports.re = []
|
const re = exports.re = []
|
||||||
|
const safeRe = exports.safeRe = []
|
||||||
const src = exports.src = []
|
const src = exports.src = []
|
||||||
const t = exports.t = {}
|
const t = exports.t = {}
|
||||||
let R = 0
|
let R = 0
|
||||||
|
|
||||||
const createToken = (name, value, isGlobal) => {
|
const createToken = (name, value, isGlobal) => {
|
||||||
|
// Replace all greedy whitespace to prevent regex dos issues. These regex are
|
||||||
|
// used internally via the safeRe object since all inputs in this library get
|
||||||
|
// normalized first to trim and collapse all extra whitespace. The original
|
||||||
|
// regexes are exported for userland consumption and lower level usage. A
|
||||||
|
// future breaking change could export the safer regex only with a note that
|
||||||
|
// all input should have extra whitespace removed.
|
||||||
|
const safe = value
|
||||||
|
.split('\\s*').join('\\s{0,1}')
|
||||||
|
.split('\\s+').join('\\s')
|
||||||
const index = R++
|
const index = R++
|
||||||
debug(name, index, value)
|
debug(name, index, value)
|
||||||
t[name] = index
|
t[name] = index
|
||||||
src[index] = value
|
src[index] = value
|
||||||
re[index] = new RegExp(value, isGlobal ? 'g' : undefined)
|
re[index] = new RegExp(value, isGlobal ? 'g' : undefined)
|
||||||
|
safeRe[index] = new RegExp(safe, isGlobal ? 'g' : undefined)
|
||||||
}
|
}
|
||||||
|
|
||||||
// The following Regular Expressions can be used for tokenizing,
|
// The following Regular Expressions can be used for tokenizing,
|
||||||
|
@ -61989,7 +62078,7 @@ const Range = __nccwpck_require__(9828)
|
||||||
const intersects = (r1, r2, options) => {
|
const intersects = (r1, r2, options) => {
|
||||||
r1 = new Range(r1, options)
|
r1 = new Range(r1, options)
|
||||||
r2 = new Range(r2, options)
|
r2 = new Range(r2, options)
|
||||||
return r1.intersects(r2)
|
return r1.intersects(r2, options)
|
||||||
}
|
}
|
||||||
module.exports = intersects
|
module.exports = intersects
|
||||||
|
|
||||||
|
@ -62352,6 +62441,9 @@ const subset = (sub, dom, options = {}) => {
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const minimumVersionWithPreRelease = [new Comparator('>=0.0.0-0')]
|
||||||
|
const minimumVersion = [new Comparator('>=0.0.0')]
|
||||||
|
|
||||||
const simpleSubset = (sub, dom, options) => {
|
const simpleSubset = (sub, dom, options) => {
|
||||||
if (sub === dom) {
|
if (sub === dom) {
|
||||||
return true
|
return true
|
||||||
|
@ -62361,9 +62453,9 @@ const simpleSubset = (sub, dom, options) => {
|
||||||
if (dom.length === 1 && dom[0].semver === ANY) {
|
if (dom.length === 1 && dom[0].semver === ANY) {
|
||||||
return true
|
return true
|
||||||
} else if (options.includePrerelease) {
|
} else if (options.includePrerelease) {
|
||||||
sub = [new Comparator('>=0.0.0-0')]
|
sub = minimumVersionWithPreRelease
|
||||||
} else {
|
} else {
|
||||||
sub = [new Comparator('>=0.0.0')]
|
sub = minimumVersion
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -62371,7 +62463,7 @@ const simpleSubset = (sub, dom, options) => {
|
||||||
if (options.includePrerelease) {
|
if (options.includePrerelease) {
|
||||||
return true
|
return true
|
||||||
} else {
|
} else {
|
||||||
dom = [new Comparator('>=0.0.0')]
|
dom = minimumVersion
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
14
package-lock.json
generated
14
package-lock.json
generated
|
@ -17,7 +17,7 @@
|
||||||
"@actions/io": "^1.0.2",
|
"@actions/io": "^1.0.2",
|
||||||
"@actions/tool-cache": "^1.5.5",
|
"@actions/tool-cache": "^1.5.5",
|
||||||
"@iarna/toml": "^2.2.5",
|
"@iarna/toml": "^2.2.5",
|
||||||
"semver": "^7.1.3"
|
"semver": "^7.5.2"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@types/jest": "^27.0.2",
|
"@types/jest": "^27.0.2",
|
||||||
|
@ -6187,9 +6187,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/semver": {
|
"node_modules/semver": {
|
||||||
"version": "7.3.8",
|
"version": "7.5.2",
|
||||||
"resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz",
|
"resolved": "https://registry.npmjs.org/semver/-/semver-7.5.2.tgz",
|
||||||
"integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==",
|
"integrity": "sha512-SoftuTROv/cRjCze/scjGyiDtcUyxw1rgYQSZY7XTmtR5hX+dm76iDbTH8TkLPHCQmlbQVSSbNZCPM2hb0knnQ==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"lru-cache": "^6.0.0"
|
"lru-cache": "^6.0.0"
|
||||||
},
|
},
|
||||||
|
@ -11628,9 +11628,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"semver": {
|
"semver": {
|
||||||
"version": "7.3.8",
|
"version": "7.5.2",
|
||||||
"resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz",
|
"resolved": "https://registry.npmjs.org/semver/-/semver-7.5.2.tgz",
|
||||||
"integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==",
|
"integrity": "sha512-SoftuTROv/cRjCze/scjGyiDtcUyxw1rgYQSZY7XTmtR5hX+dm76iDbTH8TkLPHCQmlbQVSSbNZCPM2hb0knnQ==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"lru-cache": "^6.0.0"
|
"lru-cache": "^6.0.0"
|
||||||
}
|
}
|
||||||
|
|
|
@ -33,7 +33,7 @@
|
||||||
"@actions/io": "^1.0.2",
|
"@actions/io": "^1.0.2",
|
||||||
"@actions/tool-cache": "^1.5.5",
|
"@actions/tool-cache": "^1.5.5",
|
||||||
"@iarna/toml": "^2.2.5",
|
"@iarna/toml": "^2.2.5",
|
||||||
"semver": "^7.1.3"
|
"semver": "^7.5.2"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@types/jest": "^27.0.2",
|
"@types/jest": "^27.0.2",
|
||||||
|
|
Loading…
Reference in a new issue