Merge pull request #396 from actions/dependabot/npm_and_yarn/semver-6.3.1
Bump semver from 6.3.0 to 6.3.1
This commit is contained in:
		
						commit
						27eec5b982
					
				
							
								
								
									
										2
									
								
								.licenses/npm/semver.dep.yml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										2
									
								
								.licenses/npm/semver.dep.yml
									
									
									
										generated
									
									
									
								
							| @ -1,6 +1,6 @@ | |||||||
| --- | --- | ||||||
| name: semver | name: semver | ||||||
| version: 6.3.0 | version: 6.3.1 | ||||||
| type: npm | type: npm | ||||||
| summary: The semantic version parser used by npm. | summary: The semantic version parser used by npm. | ||||||
| homepage: https://github.com/npm/node-semver#readme | homepage: https://github.com/npm/node-semver#readme | ||||||
|  | |||||||
							
								
								
									
										95
									
								
								dist/cache-save/index.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										95
									
								
								dist/cache-save/index.js
									
									
									
									
										vendored
									
									
								
							| @ -51331,8 +51331,11 @@ var MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER || | |||||||
| // Max safe segment length for coercion.
 | // Max safe segment length for coercion.
 | ||||||
| var MAX_SAFE_COMPONENT_LENGTH = 16 | var MAX_SAFE_COMPONENT_LENGTH = 16 | ||||||
| 
 | 
 | ||||||
|  | var MAX_SAFE_BUILD_LENGTH = MAX_LENGTH - 6 | ||||||
|  | 
 | ||||||
| // The actual regexps go on exports.re
 | // The actual regexps go on exports.re
 | ||||||
| var re = exports.re = [] | var re = exports.re = [] | ||||||
|  | var safeRe = exports.safeRe = [] | ||||||
| var src = exports.src = [] | var src = exports.src = [] | ||||||
| var t = exports.tokens = {} | var t = exports.tokens = {} | ||||||
| var R = 0 | var R = 0 | ||||||
| @ -51341,6 +51344,31 @@ function tok (n) { | |||||||
|   t[n] = R++ |   t[n] = R++ | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | var LETTERDASHNUMBER = '[a-zA-Z0-9-]' | ||||||
|  | 
 | ||||||
|  | // Replace some greedy regex tokens 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.
 | ||||||
|  | var safeRegexReplacements = [ | ||||||
|  |   ['\\s', 1], | ||||||
|  |   ['\\d', MAX_LENGTH], | ||||||
|  |   [LETTERDASHNUMBER, MAX_SAFE_BUILD_LENGTH], | ||||||
|  | ] | ||||||
|  | 
 | ||||||
|  | function makeSafeRe (value) { | ||||||
|  |   for (var i = 0; i < safeRegexReplacements.length; i++) { | ||||||
|  |     var token = safeRegexReplacements[i][0] | ||||||
|  |     var max = safeRegexReplacements[i][1] | ||||||
|  |     value = value | ||||||
|  |       .split(token + '*').join(token + '{0,' + max + '}') | ||||||
|  |       .split(token + '+').join(token + '{1,' + max + '}') | ||||||
|  |   } | ||||||
|  |   return value | ||||||
|  | } | ||||||
|  | 
 | ||||||
| // The following Regular Expressions can be used for tokenizing,
 | // The following Regular Expressions can be used for tokenizing,
 | ||||||
| // validating, and parsing SemVer version strings.
 | // validating, and parsing SemVer version strings.
 | ||||||
| 
 | 
 | ||||||
| @ -51350,14 +51378,14 @@ function tok (n) { | |||||||
| tok('NUMERICIDENTIFIER') | tok('NUMERICIDENTIFIER') | ||||||
| src[t.NUMERICIDENTIFIER] = '0|[1-9]\\d*' | src[t.NUMERICIDENTIFIER] = '0|[1-9]\\d*' | ||||||
| tok('NUMERICIDENTIFIERLOOSE') | tok('NUMERICIDENTIFIERLOOSE') | ||||||
| src[t.NUMERICIDENTIFIERLOOSE] = '[0-9]+' | src[t.NUMERICIDENTIFIERLOOSE] = '\\d+' | ||||||
| 
 | 
 | ||||||
| // ## Non-numeric Identifier
 | // ## Non-numeric Identifier
 | ||||||
| // Zero or more digits, followed by a letter or hyphen, and then zero or
 | // Zero or more digits, followed by a letter or hyphen, and then zero or
 | ||||||
| // more letters, digits, or hyphens.
 | // more letters, digits, or hyphens.
 | ||||||
| 
 | 
 | ||||||
| tok('NONNUMERICIDENTIFIER') | tok('NONNUMERICIDENTIFIER') | ||||||
| src[t.NONNUMERICIDENTIFIER] = '\\d*[a-zA-Z-][a-zA-Z0-9-]*' | src[t.NONNUMERICIDENTIFIER] = '\\d*[a-zA-Z-]' + LETTERDASHNUMBER + '*' | ||||||
| 
 | 
 | ||||||
| // ## Main Version
 | // ## Main Version
 | ||||||
| // Three dot-separated numeric identifiers.
 | // Three dot-separated numeric identifiers.
 | ||||||
| @ -51399,7 +51427,7 @@ src[t.PRERELEASELOOSE] = '(?:-?(' + src[t.PRERELEASEIDENTIFIERLOOSE] + | |||||||
| // Any combination of digits, letters, or hyphens.
 | // Any combination of digits, letters, or hyphens.
 | ||||||
| 
 | 
 | ||||||
| tok('BUILDIDENTIFIER') | tok('BUILDIDENTIFIER') | ||||||
| src[t.BUILDIDENTIFIER] = '[0-9A-Za-z-]+' | src[t.BUILDIDENTIFIER] = LETTERDASHNUMBER + '+' | ||||||
| 
 | 
 | ||||||
| // ## Build Metadata
 | // ## Build Metadata
 | ||||||
| // Plus sign, followed by one or more period-separated build metadata
 | // Plus sign, followed by one or more period-separated build metadata
 | ||||||
| @ -51479,6 +51507,7 @@ src[t.COERCE] = '(^|[^\\d])' + | |||||||
|               '(?:$|[^\\d])' |               '(?:$|[^\\d])' | ||||||
| tok('COERCERTL') | tok('COERCERTL') | ||||||
| re[t.COERCERTL] = new RegExp(src[t.COERCE], 'g') | re[t.COERCERTL] = new RegExp(src[t.COERCE], 'g') | ||||||
|  | safeRe[t.COERCERTL] = new RegExp(makeSafeRe(src[t.COERCE]), 'g') | ||||||
| 
 | 
 | ||||||
| // Tilde ranges.
 | // Tilde ranges.
 | ||||||
| // Meaning is "reasonably at or greater than"
 | // Meaning is "reasonably at or greater than"
 | ||||||
| @ -51488,6 +51517,7 @@ src[t.LONETILDE] = '(?:~>?)' | |||||||
| tok('TILDETRIM') | tok('TILDETRIM') | ||||||
| src[t.TILDETRIM] = '(\\s*)' + src[t.LONETILDE] + '\\s+' | src[t.TILDETRIM] = '(\\s*)' + src[t.LONETILDE] + '\\s+' | ||||||
| re[t.TILDETRIM] = new RegExp(src[t.TILDETRIM], 'g') | re[t.TILDETRIM] = new RegExp(src[t.TILDETRIM], 'g') | ||||||
|  | safeRe[t.TILDETRIM] = new RegExp(makeSafeRe(src[t.TILDETRIM]), 'g') | ||||||
| var tildeTrimReplace = '$1~' | var tildeTrimReplace = '$1~' | ||||||
| 
 | 
 | ||||||
| tok('TILDE') | tok('TILDE') | ||||||
| @ -51503,6 +51533,7 @@ src[t.LONECARET] = '(?:\\^)' | |||||||
| tok('CARETTRIM') | tok('CARETTRIM') | ||||||
| src[t.CARETTRIM] = '(\\s*)' + src[t.LONECARET] + '\\s+' | src[t.CARETTRIM] = '(\\s*)' + src[t.LONECARET] + '\\s+' | ||||||
| re[t.CARETTRIM] = new RegExp(src[t.CARETTRIM], 'g') | re[t.CARETTRIM] = new RegExp(src[t.CARETTRIM], 'g') | ||||||
|  | safeRe[t.CARETTRIM] = new RegExp(makeSafeRe(src[t.CARETTRIM]), 'g') | ||||||
| var caretTrimReplace = '$1^' | var caretTrimReplace = '$1^' | ||||||
| 
 | 
 | ||||||
| tok('CARET') | tok('CARET') | ||||||
| @ -51524,6 +51555,7 @@ src[t.COMPARATORTRIM] = '(\\s*)' + src[t.GTLT] + | |||||||
| 
 | 
 | ||||||
| // this one has to use the /g flag
 | // this one has to use the /g flag
 | ||||||
| re[t.COMPARATORTRIM] = new RegExp(src[t.COMPARATORTRIM], 'g') | re[t.COMPARATORTRIM] = new RegExp(src[t.COMPARATORTRIM], 'g') | ||||||
|  | safeRe[t.COMPARATORTRIM] = new RegExp(makeSafeRe(src[t.COMPARATORTRIM]), 'g') | ||||||
| var comparatorTrimReplace = '$1$2$3' | var comparatorTrimReplace = '$1$2$3' | ||||||
| 
 | 
 | ||||||
| // Something like `1.2.3 - 1.2.4`
 | // Something like `1.2.3 - 1.2.4`
 | ||||||
| @ -51552,6 +51584,14 @@ for (var i = 0; i < R; i++) { | |||||||
|   debug(i, src[i]) |   debug(i, src[i]) | ||||||
|   if (!re[i]) { |   if (!re[i]) { | ||||||
|     re[i] = new RegExp(src[i]) |     re[i] = new RegExp(src[i]) | ||||||
|  | 
 | ||||||
|  |     // 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.
 | ||||||
|  |     safeRe[i] = new RegExp(makeSafeRe(src[i])) | ||||||
|   } |   } | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| @ -51576,7 +51616,7 @@ function parse (version, options) { | |||||||
|     return null |     return null | ||||||
|   } |   } | ||||||
| 
 | 
 | ||||||
|   var r = options.loose ? re[t.LOOSE] : re[t.FULL] |   var r = options.loose ? safeRe[t.LOOSE] : safeRe[t.FULL] | ||||||
|   if (!r.test(version)) { |   if (!r.test(version)) { | ||||||
|     return null |     return null | ||||||
|   } |   } | ||||||
| @ -51631,7 +51671,7 @@ function SemVer (version, options) { | |||||||
|   this.options = options |   this.options = options | ||||||
|   this.loose = !!options.loose |   this.loose = !!options.loose | ||||||
| 
 | 
 | ||||||
|   var m = version.trim().match(options.loose ? re[t.LOOSE] : re[t.FULL]) |   var m = version.trim().match(options.loose ? safeRe[t.LOOSE] : safeRe[t.FULL]) | ||||||
| 
 | 
 | ||||||
|   if (!m) { |   if (!m) { | ||||||
|     throw new TypeError('Invalid Version: ' + version) |     throw new TypeError('Invalid Version: ' + version) | ||||||
| @ -52076,6 +52116,7 @@ function Comparator (comp, options) { | |||||||
|     return new Comparator(comp, options) |     return new Comparator(comp, options) | ||||||
|   } |   } | ||||||
| 
 | 
 | ||||||
|  |   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 | ||||||
| @ -52092,7 +52133,7 @@ function Comparator (comp, options) { | |||||||
| 
 | 
 | ||||||
| var ANY = {} | var ANY = {} | ||||||
| Comparator.prototype.parse = function (comp) { | Comparator.prototype.parse = function (comp) { | ||||||
|   var r = this.options.loose ? re[t.COMPARATORLOOSE] : re[t.COMPARATOR] |   var r = this.options.loose ? safeRe[t.COMPARATORLOOSE] : safeRe[t.COMPARATOR] | ||||||
|   var m = comp.match(r) |   var m = comp.match(r) | ||||||
| 
 | 
 | ||||||
|   if (!m) { |   if (!m) { | ||||||
| @ -52216,9 +52257,16 @@ function Range (range, options) { | |||||||
|   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.split(/\s*\|\|\s*/).map(function (range) { |     .trim() | ||||||
|  |     .split(/\s+/) | ||||||
|  |     .join(' ') | ||||||
|  | 
 | ||||||
|  |   // First, split based on boolean or ||
 | ||||||
|  |   this.set = this.raw.split('||').map(function (range) { | ||||||
|     return this.parseRange(range.trim()) |     return this.parseRange(range.trim()) | ||||||
|   }, this).filter(function (c) { |   }, this).filter(function (c) { | ||||||
|     // throw out any that are not relevant for whatever reason
 |     // throw out any that are not relevant for whatever reason
 | ||||||
| @ -52226,7 +52274,7 @@ function Range (range, options) { | |||||||
|   }) |   }) | ||||||
| 
 | 
 | ||||||
|   if (!this.set.length) { |   if (!this.set.length) { | ||||||
|     throw new TypeError('Invalid SemVer Range: ' + range) |     throw new TypeError('Invalid SemVer Range: ' + this.raw) | ||||||
|   } |   } | ||||||
| 
 | 
 | ||||||
|   this.format() |   this.format() | ||||||
| @ -52245,20 +52293,19 @@ Range.prototype.toString = function () { | |||||||
| 
 | 
 | ||||||
| Range.prototype.parseRange = function (range) { | Range.prototype.parseRange = function (range) { | ||||||
|   var loose = this.options.loose |   var loose = this.options.loose | ||||||
|   range = range.trim() |  | ||||||
|   // `1.2.3 - 1.2.4` => `>=1.2.3 <=1.2.4`
 |   // `1.2.3 - 1.2.4` => `>=1.2.3 <=1.2.4`
 | ||||||
|   var hr = loose ? re[t.HYPHENRANGELOOSE] : re[t.HYPHENRANGE] |   var hr = loose ? safeRe[t.HYPHENRANGELOOSE] : safeRe[t.HYPHENRANGE] | ||||||
|   range = range.replace(hr, hyphenReplace) |   range = range.replace(hr, hyphenReplace) | ||||||
|   debug('hyphen replace', range) |   debug('hyphen replace', range) | ||||||
|   // `> 1.2.3 < 1.2.5` => `>1.2.3 <1.2.5`
 |   // `> 1.2.3 < 1.2.5` => `>1.2.3 <1.2.5`
 | ||||||
|   range = range.replace(re[t.COMPARATORTRIM], comparatorTrimReplace) |   range = range.replace(safeRe[t.COMPARATORTRIM], comparatorTrimReplace) | ||||||
|   debug('comparator trim', range, re[t.COMPARATORTRIM]) |   debug('comparator trim', range, safeRe[t.COMPARATORTRIM]) | ||||||
| 
 | 
 | ||||||
|   // `~ 1.2.3` => `~1.2.3`
 |   // `~ 1.2.3` => `~1.2.3`
 | ||||||
|   range = range.replace(re[t.TILDETRIM], tildeTrimReplace) |   range = range.replace(safeRe[t.TILDETRIM], tildeTrimReplace) | ||||||
| 
 | 
 | ||||||
|   // `^ 1.2.3` => `^1.2.3`
 |   // `^ 1.2.3` => `^1.2.3`
 | ||||||
|   range = range.replace(re[t.CARETTRIM], caretTrimReplace) |   range = range.replace(safeRe[t.CARETTRIM], caretTrimReplace) | ||||||
| 
 | 
 | ||||||
|   // normalize spaces
 |   // normalize spaces
 | ||||||
|   range = range.split(/\s+/).join(' ') |   range = range.split(/\s+/).join(' ') | ||||||
| @ -52266,7 +52313,7 @@ Range.prototype.parseRange = function (range) { | |||||||
|   // 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.
 | ||||||
| 
 | 
 | ||||||
|   var compRe = loose ? re[t.COMPARATORLOOSE] : re[t.COMPARATOR] |   var compRe = loose ? safeRe[t.COMPARATORLOOSE] : safeRe[t.COMPARATOR] | ||||||
|   var set = range.split(' ').map(function (comp) { |   var set = range.split(' ').map(function (comp) { | ||||||
|     return parseComparator(comp, this.options) |     return parseComparator(comp, this.options) | ||||||
|   }, this).join(' ').split(/\s+/) |   }, this).join(' ').split(/\s+/) | ||||||
| @ -52366,7 +52413,7 @@ function replaceTildes (comp, options) { | |||||||
| } | } | ||||||
| 
 | 
 | ||||||
| function replaceTilde (comp, options) { | function replaceTilde (comp, options) { | ||||||
|   var r = options.loose ? re[t.TILDELOOSE] : re[t.TILDE] |   var r = options.loose ? safeRe[t.TILDELOOSE] : safeRe[t.TILDE] | ||||||
|   return comp.replace(r, function (_, M, m, p, pr) { |   return comp.replace(r, function (_, M, m, p, pr) { | ||||||
|     debug('tilde', comp, _, M, m, p, pr) |     debug('tilde', comp, _, M, m, p, pr) | ||||||
|     var ret |     var ret | ||||||
| @ -52407,7 +52454,7 @@ function replaceCarets (comp, options) { | |||||||
| 
 | 
 | ||||||
| function replaceCaret (comp, options) { | function replaceCaret (comp, options) { | ||||||
|   debug('caret', comp, options) |   debug('caret', comp, options) | ||||||
|   var r = options.loose ? re[t.CARETLOOSE] : re[t.CARET] |   var r = options.loose ? safeRe[t.CARETLOOSE] : safeRe[t.CARET] | ||||||
|   return comp.replace(r, function (_, M, m, p, pr) { |   return comp.replace(r, function (_, M, m, p, pr) { | ||||||
|     debug('caret', comp, _, M, m, p, pr) |     debug('caret', comp, _, M, m, p, pr) | ||||||
|     var ret |     var ret | ||||||
| @ -52466,7 +52513,7 @@ function replaceXRanges (comp, options) { | |||||||
| 
 | 
 | ||||||
| function replaceXRange (comp, options) { | function replaceXRange (comp, options) { | ||||||
|   comp = comp.trim() |   comp = comp.trim() | ||||||
|   var r = options.loose ? re[t.XRANGELOOSE] : re[t.XRANGE] |   var r = options.loose ? safeRe[t.XRANGELOOSE] : safeRe[t.XRANGE] | ||||||
|   return comp.replace(r, function (ret, gtlt, M, m, p, pr) { |   return comp.replace(r, function (ret, gtlt, M, m, p, pr) { | ||||||
|     debug('xRange', comp, ret, gtlt, M, m, p, pr) |     debug('xRange', comp, ret, gtlt, M, m, p, pr) | ||||||
|     var xM = isX(M) |     var xM = isX(M) | ||||||
| @ -52541,7 +52588,7 @@ function replaceXRange (comp, options) { | |||||||
| function replaceStars (comp, options) { | function 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(safeRe[t.STAR], '') | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| // This function is passed to string.replace(re[t.HYPHENRANGE])
 | // This function is passed to string.replace(re[t.HYPHENRANGE])
 | ||||||
| @ -52867,7 +52914,7 @@ function coerce (version, options) { | |||||||
| 
 | 
 | ||||||
|   var match = null |   var match = null | ||||||
|   if (!options.rtl) { |   if (!options.rtl) { | ||||||
|     match = version.match(re[t.COERCE]) |     match = version.match(safeRe[t.COERCE]) | ||||||
|   } else { |   } else { | ||||||
|     // Find the right-most coercible string that does not share
 |     // Find the right-most coercible string that does not share
 | ||||||
|     // a terminus with a more left-ward coercible string.
 |     // a terminus with a more left-ward coercible string.
 | ||||||
| @ -52878,17 +52925,17 @@ function coerce (version, options) { | |||||||
|     // Stop when we get a match that ends at the string end, since no
 |     // Stop when we get a match that ends at the string end, since no
 | ||||||
|     // coercible string can be more right-ward without the same terminus.
 |     // coercible string can be more right-ward without the same terminus.
 | ||||||
|     var next |     var next | ||||||
|     while ((next = re[t.COERCERTL].exec(version)) && |     while ((next = safeRe[t.COERCERTL].exec(version)) && | ||||||
|       (!match || match.index + match[0].length !== version.length) |       (!match || match.index + match[0].length !== version.length) | ||||||
|     ) { |     ) { | ||||||
|       if (!match || |       if (!match || | ||||||
|           next.index + next[0].length !== match.index + match[0].length) { |           next.index + next[0].length !== match.index + match[0].length) { | ||||||
|         match = next |         match = next | ||||||
|       } |       } | ||||||
|       re[t.COERCERTL].lastIndex = next.index + next[1].length + next[2].length |       safeRe[t.COERCERTL].lastIndex = next.index + next[1].length + next[2].length | ||||||
|     } |     } | ||||||
|     // leave it in a clean state
 |     // leave it in a clean state
 | ||||||
|     re[t.COERCERTL].lastIndex = -1 |     safeRe[t.COERCERTL].lastIndex = -1 | ||||||
|   } |   } | ||||||
| 
 | 
 | ||||||
|   if (match === null) { |   if (match === null) { | ||||||
|  | |||||||
							
								
								
									
										95
									
								
								dist/setup/index.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										95
									
								
								dist/setup/index.js
									
									
									
									
										vendored
									
									
								
							| @ -54025,8 +54025,11 @@ var MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER || | |||||||
| // Max safe segment length for coercion.
 | // Max safe segment length for coercion.
 | ||||||
| var MAX_SAFE_COMPONENT_LENGTH = 16 | var MAX_SAFE_COMPONENT_LENGTH = 16 | ||||||
| 
 | 
 | ||||||
|  | var MAX_SAFE_BUILD_LENGTH = MAX_LENGTH - 6 | ||||||
|  | 
 | ||||||
| // The actual regexps go on exports.re
 | // The actual regexps go on exports.re
 | ||||||
| var re = exports.re = [] | var re = exports.re = [] | ||||||
|  | var safeRe = exports.safeRe = [] | ||||||
| var src = exports.src = [] | var src = exports.src = [] | ||||||
| var t = exports.tokens = {} | var t = exports.tokens = {} | ||||||
| var R = 0 | var R = 0 | ||||||
| @ -54035,6 +54038,31 @@ function tok (n) { | |||||||
|   t[n] = R++ |   t[n] = R++ | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | var LETTERDASHNUMBER = '[a-zA-Z0-9-]' | ||||||
|  | 
 | ||||||
|  | // Replace some greedy regex tokens 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.
 | ||||||
|  | var safeRegexReplacements = [ | ||||||
|  |   ['\\s', 1], | ||||||
|  |   ['\\d', MAX_LENGTH], | ||||||
|  |   [LETTERDASHNUMBER, MAX_SAFE_BUILD_LENGTH], | ||||||
|  | ] | ||||||
|  | 
 | ||||||
|  | function makeSafeRe (value) { | ||||||
|  |   for (var i = 0; i < safeRegexReplacements.length; i++) { | ||||||
|  |     var token = safeRegexReplacements[i][0] | ||||||
|  |     var max = safeRegexReplacements[i][1] | ||||||
|  |     value = value | ||||||
|  |       .split(token + '*').join(token + '{0,' + max + '}') | ||||||
|  |       .split(token + '+').join(token + '{1,' + max + '}') | ||||||
|  |   } | ||||||
|  |   return value | ||||||
|  | } | ||||||
|  | 
 | ||||||
| // The following Regular Expressions can be used for tokenizing,
 | // The following Regular Expressions can be used for tokenizing,
 | ||||||
| // validating, and parsing SemVer version strings.
 | // validating, and parsing SemVer version strings.
 | ||||||
| 
 | 
 | ||||||
| @ -54044,14 +54072,14 @@ function tok (n) { | |||||||
| tok('NUMERICIDENTIFIER') | tok('NUMERICIDENTIFIER') | ||||||
| src[t.NUMERICIDENTIFIER] = '0|[1-9]\\d*' | src[t.NUMERICIDENTIFIER] = '0|[1-9]\\d*' | ||||||
| tok('NUMERICIDENTIFIERLOOSE') | tok('NUMERICIDENTIFIERLOOSE') | ||||||
| src[t.NUMERICIDENTIFIERLOOSE] = '[0-9]+' | src[t.NUMERICIDENTIFIERLOOSE] = '\\d+' | ||||||
| 
 | 
 | ||||||
| // ## Non-numeric Identifier
 | // ## Non-numeric Identifier
 | ||||||
| // Zero or more digits, followed by a letter or hyphen, and then zero or
 | // Zero or more digits, followed by a letter or hyphen, and then zero or
 | ||||||
| // more letters, digits, or hyphens.
 | // more letters, digits, or hyphens.
 | ||||||
| 
 | 
 | ||||||
| tok('NONNUMERICIDENTIFIER') | tok('NONNUMERICIDENTIFIER') | ||||||
| src[t.NONNUMERICIDENTIFIER] = '\\d*[a-zA-Z-][a-zA-Z0-9-]*' | src[t.NONNUMERICIDENTIFIER] = '\\d*[a-zA-Z-]' + LETTERDASHNUMBER + '*' | ||||||
| 
 | 
 | ||||||
| // ## Main Version
 | // ## Main Version
 | ||||||
| // Three dot-separated numeric identifiers.
 | // Three dot-separated numeric identifiers.
 | ||||||
| @ -54093,7 +54121,7 @@ src[t.PRERELEASELOOSE] = '(?:-?(' + src[t.PRERELEASEIDENTIFIERLOOSE] + | |||||||
| // Any combination of digits, letters, or hyphens.
 | // Any combination of digits, letters, or hyphens.
 | ||||||
| 
 | 
 | ||||||
| tok('BUILDIDENTIFIER') | tok('BUILDIDENTIFIER') | ||||||
| src[t.BUILDIDENTIFIER] = '[0-9A-Za-z-]+' | src[t.BUILDIDENTIFIER] = LETTERDASHNUMBER + '+' | ||||||
| 
 | 
 | ||||||
| // ## Build Metadata
 | // ## Build Metadata
 | ||||||
| // Plus sign, followed by one or more period-separated build metadata
 | // Plus sign, followed by one or more period-separated build metadata
 | ||||||
| @ -54173,6 +54201,7 @@ src[t.COERCE] = '(^|[^\\d])' + | |||||||
|               '(?:$|[^\\d])' |               '(?:$|[^\\d])' | ||||||
| tok('COERCERTL') | tok('COERCERTL') | ||||||
| re[t.COERCERTL] = new RegExp(src[t.COERCE], 'g') | re[t.COERCERTL] = new RegExp(src[t.COERCE], 'g') | ||||||
|  | safeRe[t.COERCERTL] = new RegExp(makeSafeRe(src[t.COERCE]), 'g') | ||||||
| 
 | 
 | ||||||
| // Tilde ranges.
 | // Tilde ranges.
 | ||||||
| // Meaning is "reasonably at or greater than"
 | // Meaning is "reasonably at or greater than"
 | ||||||
| @ -54182,6 +54211,7 @@ src[t.LONETILDE] = '(?:~>?)' | |||||||
| tok('TILDETRIM') | tok('TILDETRIM') | ||||||
| src[t.TILDETRIM] = '(\\s*)' + src[t.LONETILDE] + '\\s+' | src[t.TILDETRIM] = '(\\s*)' + src[t.LONETILDE] + '\\s+' | ||||||
| re[t.TILDETRIM] = new RegExp(src[t.TILDETRIM], 'g') | re[t.TILDETRIM] = new RegExp(src[t.TILDETRIM], 'g') | ||||||
|  | safeRe[t.TILDETRIM] = new RegExp(makeSafeRe(src[t.TILDETRIM]), 'g') | ||||||
| var tildeTrimReplace = '$1~' | var tildeTrimReplace = '$1~' | ||||||
| 
 | 
 | ||||||
| tok('TILDE') | tok('TILDE') | ||||||
| @ -54197,6 +54227,7 @@ src[t.LONECARET] = '(?:\\^)' | |||||||
| tok('CARETTRIM') | tok('CARETTRIM') | ||||||
| src[t.CARETTRIM] = '(\\s*)' + src[t.LONECARET] + '\\s+' | src[t.CARETTRIM] = '(\\s*)' + src[t.LONECARET] + '\\s+' | ||||||
| re[t.CARETTRIM] = new RegExp(src[t.CARETTRIM], 'g') | re[t.CARETTRIM] = new RegExp(src[t.CARETTRIM], 'g') | ||||||
|  | safeRe[t.CARETTRIM] = new RegExp(makeSafeRe(src[t.CARETTRIM]), 'g') | ||||||
| var caretTrimReplace = '$1^' | var caretTrimReplace = '$1^' | ||||||
| 
 | 
 | ||||||
| tok('CARET') | tok('CARET') | ||||||
| @ -54218,6 +54249,7 @@ src[t.COMPARATORTRIM] = '(\\s*)' + src[t.GTLT] + | |||||||
| 
 | 
 | ||||||
| // this one has to use the /g flag
 | // this one has to use the /g flag
 | ||||||
| re[t.COMPARATORTRIM] = new RegExp(src[t.COMPARATORTRIM], 'g') | re[t.COMPARATORTRIM] = new RegExp(src[t.COMPARATORTRIM], 'g') | ||||||
|  | safeRe[t.COMPARATORTRIM] = new RegExp(makeSafeRe(src[t.COMPARATORTRIM]), 'g') | ||||||
| var comparatorTrimReplace = '$1$2$3' | var comparatorTrimReplace = '$1$2$3' | ||||||
| 
 | 
 | ||||||
| // Something like `1.2.3 - 1.2.4`
 | // Something like `1.2.3 - 1.2.4`
 | ||||||
| @ -54246,6 +54278,14 @@ for (var i = 0; i < R; i++) { | |||||||
|   debug(i, src[i]) |   debug(i, src[i]) | ||||||
|   if (!re[i]) { |   if (!re[i]) { | ||||||
|     re[i] = new RegExp(src[i]) |     re[i] = new RegExp(src[i]) | ||||||
|  | 
 | ||||||
|  |     // 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.
 | ||||||
|  |     safeRe[i] = new RegExp(makeSafeRe(src[i])) | ||||||
|   } |   } | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| @ -54270,7 +54310,7 @@ function parse (version, options) { | |||||||
|     return null |     return null | ||||||
|   } |   } | ||||||
| 
 | 
 | ||||||
|   var r = options.loose ? re[t.LOOSE] : re[t.FULL] |   var r = options.loose ? safeRe[t.LOOSE] : safeRe[t.FULL] | ||||||
|   if (!r.test(version)) { |   if (!r.test(version)) { | ||||||
|     return null |     return null | ||||||
|   } |   } | ||||||
| @ -54325,7 +54365,7 @@ function SemVer (version, options) { | |||||||
|   this.options = options |   this.options = options | ||||||
|   this.loose = !!options.loose |   this.loose = !!options.loose | ||||||
| 
 | 
 | ||||||
|   var m = version.trim().match(options.loose ? re[t.LOOSE] : re[t.FULL]) |   var m = version.trim().match(options.loose ? safeRe[t.LOOSE] : safeRe[t.FULL]) | ||||||
| 
 | 
 | ||||||
|   if (!m) { |   if (!m) { | ||||||
|     throw new TypeError('Invalid Version: ' + version) |     throw new TypeError('Invalid Version: ' + version) | ||||||
| @ -54770,6 +54810,7 @@ function Comparator (comp, options) { | |||||||
|     return new Comparator(comp, options) |     return new Comparator(comp, options) | ||||||
|   } |   } | ||||||
| 
 | 
 | ||||||
|  |   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 | ||||||
| @ -54786,7 +54827,7 @@ function Comparator (comp, options) { | |||||||
| 
 | 
 | ||||||
| var ANY = {} | var ANY = {} | ||||||
| Comparator.prototype.parse = function (comp) { | Comparator.prototype.parse = function (comp) { | ||||||
|   var r = this.options.loose ? re[t.COMPARATORLOOSE] : re[t.COMPARATOR] |   var r = this.options.loose ? safeRe[t.COMPARATORLOOSE] : safeRe[t.COMPARATOR] | ||||||
|   var m = comp.match(r) |   var m = comp.match(r) | ||||||
| 
 | 
 | ||||||
|   if (!m) { |   if (!m) { | ||||||
| @ -54910,9 +54951,16 @@ function Range (range, options) { | |||||||
|   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.split(/\s*\|\|\s*/).map(function (range) { |     .trim() | ||||||
|  |     .split(/\s+/) | ||||||
|  |     .join(' ') | ||||||
|  | 
 | ||||||
|  |   // First, split based on boolean or ||
 | ||||||
|  |   this.set = this.raw.split('||').map(function (range) { | ||||||
|     return this.parseRange(range.trim()) |     return this.parseRange(range.trim()) | ||||||
|   }, this).filter(function (c) { |   }, this).filter(function (c) { | ||||||
|     // throw out any that are not relevant for whatever reason
 |     // throw out any that are not relevant for whatever reason
 | ||||||
| @ -54920,7 +54968,7 @@ function Range (range, options) { | |||||||
|   }) |   }) | ||||||
| 
 | 
 | ||||||
|   if (!this.set.length) { |   if (!this.set.length) { | ||||||
|     throw new TypeError('Invalid SemVer Range: ' + range) |     throw new TypeError('Invalid SemVer Range: ' + this.raw) | ||||||
|   } |   } | ||||||
| 
 | 
 | ||||||
|   this.format() |   this.format() | ||||||
| @ -54939,20 +54987,19 @@ Range.prototype.toString = function () { | |||||||
| 
 | 
 | ||||||
| Range.prototype.parseRange = function (range) { | Range.prototype.parseRange = function (range) { | ||||||
|   var loose = this.options.loose |   var loose = this.options.loose | ||||||
|   range = range.trim() |  | ||||||
|   // `1.2.3 - 1.2.4` => `>=1.2.3 <=1.2.4`
 |   // `1.2.3 - 1.2.4` => `>=1.2.3 <=1.2.4`
 | ||||||
|   var hr = loose ? re[t.HYPHENRANGELOOSE] : re[t.HYPHENRANGE] |   var hr = loose ? safeRe[t.HYPHENRANGELOOSE] : safeRe[t.HYPHENRANGE] | ||||||
|   range = range.replace(hr, hyphenReplace) |   range = range.replace(hr, hyphenReplace) | ||||||
|   debug('hyphen replace', range) |   debug('hyphen replace', range) | ||||||
|   // `> 1.2.3 < 1.2.5` => `>1.2.3 <1.2.5`
 |   // `> 1.2.3 < 1.2.5` => `>1.2.3 <1.2.5`
 | ||||||
|   range = range.replace(re[t.COMPARATORTRIM], comparatorTrimReplace) |   range = range.replace(safeRe[t.COMPARATORTRIM], comparatorTrimReplace) | ||||||
|   debug('comparator trim', range, re[t.COMPARATORTRIM]) |   debug('comparator trim', range, safeRe[t.COMPARATORTRIM]) | ||||||
| 
 | 
 | ||||||
|   // `~ 1.2.3` => `~1.2.3`
 |   // `~ 1.2.3` => `~1.2.3`
 | ||||||
|   range = range.replace(re[t.TILDETRIM], tildeTrimReplace) |   range = range.replace(safeRe[t.TILDETRIM], tildeTrimReplace) | ||||||
| 
 | 
 | ||||||
|   // `^ 1.2.3` => `^1.2.3`
 |   // `^ 1.2.3` => `^1.2.3`
 | ||||||
|   range = range.replace(re[t.CARETTRIM], caretTrimReplace) |   range = range.replace(safeRe[t.CARETTRIM], caretTrimReplace) | ||||||
| 
 | 
 | ||||||
|   // normalize spaces
 |   // normalize spaces
 | ||||||
|   range = range.split(/\s+/).join(' ') |   range = range.split(/\s+/).join(' ') | ||||||
| @ -54960,7 +55007,7 @@ Range.prototype.parseRange = function (range) { | |||||||
|   // 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.
 | ||||||
| 
 | 
 | ||||||
|   var compRe = loose ? re[t.COMPARATORLOOSE] : re[t.COMPARATOR] |   var compRe = loose ? safeRe[t.COMPARATORLOOSE] : safeRe[t.COMPARATOR] | ||||||
|   var set = range.split(' ').map(function (comp) { |   var set = range.split(' ').map(function (comp) { | ||||||
|     return parseComparator(comp, this.options) |     return parseComparator(comp, this.options) | ||||||
|   }, this).join(' ').split(/\s+/) |   }, this).join(' ').split(/\s+/) | ||||||
| @ -55060,7 +55107,7 @@ function replaceTildes (comp, options) { | |||||||
| } | } | ||||||
| 
 | 
 | ||||||
| function replaceTilde (comp, options) { | function replaceTilde (comp, options) { | ||||||
|   var r = options.loose ? re[t.TILDELOOSE] : re[t.TILDE] |   var r = options.loose ? safeRe[t.TILDELOOSE] : safeRe[t.TILDE] | ||||||
|   return comp.replace(r, function (_, M, m, p, pr) { |   return comp.replace(r, function (_, M, m, p, pr) { | ||||||
|     debug('tilde', comp, _, M, m, p, pr) |     debug('tilde', comp, _, M, m, p, pr) | ||||||
|     var ret |     var ret | ||||||
| @ -55101,7 +55148,7 @@ function replaceCarets (comp, options) { | |||||||
| 
 | 
 | ||||||
| function replaceCaret (comp, options) { | function replaceCaret (comp, options) { | ||||||
|   debug('caret', comp, options) |   debug('caret', comp, options) | ||||||
|   var r = options.loose ? re[t.CARETLOOSE] : re[t.CARET] |   var r = options.loose ? safeRe[t.CARETLOOSE] : safeRe[t.CARET] | ||||||
|   return comp.replace(r, function (_, M, m, p, pr) { |   return comp.replace(r, function (_, M, m, p, pr) { | ||||||
|     debug('caret', comp, _, M, m, p, pr) |     debug('caret', comp, _, M, m, p, pr) | ||||||
|     var ret |     var ret | ||||||
| @ -55160,7 +55207,7 @@ function replaceXRanges (comp, options) { | |||||||
| 
 | 
 | ||||||
| function replaceXRange (comp, options) { | function replaceXRange (comp, options) { | ||||||
|   comp = comp.trim() |   comp = comp.trim() | ||||||
|   var r = options.loose ? re[t.XRANGELOOSE] : re[t.XRANGE] |   var r = options.loose ? safeRe[t.XRANGELOOSE] : safeRe[t.XRANGE] | ||||||
|   return comp.replace(r, function (ret, gtlt, M, m, p, pr) { |   return comp.replace(r, function (ret, gtlt, M, m, p, pr) { | ||||||
|     debug('xRange', comp, ret, gtlt, M, m, p, pr) |     debug('xRange', comp, ret, gtlt, M, m, p, pr) | ||||||
|     var xM = isX(M) |     var xM = isX(M) | ||||||
| @ -55235,7 +55282,7 @@ function replaceXRange (comp, options) { | |||||||
| function replaceStars (comp, options) { | function 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(safeRe[t.STAR], '') | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| // This function is passed to string.replace(re[t.HYPHENRANGE])
 | // This function is passed to string.replace(re[t.HYPHENRANGE])
 | ||||||
| @ -55561,7 +55608,7 @@ function coerce (version, options) { | |||||||
| 
 | 
 | ||||||
|   var match = null |   var match = null | ||||||
|   if (!options.rtl) { |   if (!options.rtl) { | ||||||
|     match = version.match(re[t.COERCE]) |     match = version.match(safeRe[t.COERCE]) | ||||||
|   } else { |   } else { | ||||||
|     // Find the right-most coercible string that does not share
 |     // Find the right-most coercible string that does not share
 | ||||||
|     // a terminus with a more left-ward coercible string.
 |     // a terminus with a more left-ward coercible string.
 | ||||||
| @ -55572,17 +55619,17 @@ function coerce (version, options) { | |||||||
|     // Stop when we get a match that ends at the string end, since no
 |     // Stop when we get a match that ends at the string end, since no
 | ||||||
|     // coercible string can be more right-ward without the same terminus.
 |     // coercible string can be more right-ward without the same terminus.
 | ||||||
|     var next |     var next | ||||||
|     while ((next = re[t.COERCERTL].exec(version)) && |     while ((next = safeRe[t.COERCERTL].exec(version)) && | ||||||
|       (!match || match.index + match[0].length !== version.length) |       (!match || match.index + match[0].length !== version.length) | ||||||
|     ) { |     ) { | ||||||
|       if (!match || |       if (!match || | ||||||
|           next.index + next[0].length !== match.index + match[0].length) { |           next.index + next[0].length !== match.index + match[0].length) { | ||||||
|         match = next |         match = next | ||||||
|       } |       } | ||||||
|       re[t.COERCERTL].lastIndex = next.index + next[1].length + next[2].length |       safeRe[t.COERCERTL].lastIndex = next.index + next[1].length + next[2].length | ||||||
|     } |     } | ||||||
|     // leave it in a clean state
 |     // leave it in a clean state
 | ||||||
|     re[t.COERCERTL].lastIndex = -1 |     safeRe[t.COERCERTL].lastIndex = -1 | ||||||
|   } |   } | ||||||
| 
 | 
 | ||||||
|   if (match === null) { |   if (match === null) { | ||||||
|  | |||||||
							
								
								
									
										14
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										14
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							| @ -16,7 +16,7 @@ | |||||||
|         "@actions/http-client": "^2.0.1", |         "@actions/http-client": "^2.0.1", | ||||||
|         "@actions/io": "^1.0.2", |         "@actions/io": "^1.0.2", | ||||||
|         "@actions/tool-cache": "^1.5.5", |         "@actions/tool-cache": "^1.5.5", | ||||||
|         "semver": "^6.1.1" |         "semver": "^6.3.1" | ||||||
|       }, |       }, | ||||||
|       "devDependencies": { |       "devDependencies": { | ||||||
|         "@types/jest": "^27.0.2", |         "@types/jest": "^27.0.2", | ||||||
| @ -5534,9 +5534,9 @@ | |||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/semver": { |     "node_modules/semver": { | ||||||
|       "version": "6.3.0", |       "version": "6.3.1", | ||||||
|       "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", |       "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", | ||||||
|       "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", |       "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", | ||||||
|       "bin": { |       "bin": { | ||||||
|         "semver": "bin/semver.js" |         "semver": "bin/semver.js" | ||||||
|       } |       } | ||||||
| @ -10441,9 +10441,9 @@ | |||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "semver": { |     "semver": { | ||||||
|       "version": "6.3.0", |       "version": "6.3.1", | ||||||
|       "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", |       "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", | ||||||
|       "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" |       "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==" | ||||||
|     }, |     }, | ||||||
|     "shebang-command": { |     "shebang-command": { | ||||||
|       "version": "2.0.0", |       "version": "2.0.0", | ||||||
|  | |||||||
| @ -32,7 +32,7 @@ | |||||||
|     "@actions/http-client": "^2.0.1", |     "@actions/http-client": "^2.0.1", | ||||||
|     "@actions/io": "^1.0.2", |     "@actions/io": "^1.0.2", | ||||||
|     "@actions/tool-cache": "^1.5.5", |     "@actions/tool-cache": "^1.5.5", | ||||||
|     "semver": "^6.1.1" |     "semver": "^6.3.1" | ||||||
|   }, |   }, | ||||||
|   "devDependencies": { |   "devDependencies": { | ||||||
|     "@types/jest": "^27.0.2", |     "@types/jest": "^27.0.2", | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user