semantic-release-lerna 3.2.0 → 3.3.0

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.
Files changed (2) hide show
  1. package/dist/index.js +35 -35
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -24439,7 +24439,7 @@ var intCoreTag = defineScalarTag("tag:yaml.org,2002:int", {
24439
24439
  ..."0123456789"
24440
24440
  ],
24441
24441
  resolve: resolveYamlInteger$2,
24442
- identify: (object) => Object.prototype.toString.call(object) === "[object Number]" && object % 1 === 0 && !Object.is(object, -0),
24442
+ identify: (object) => Number.isInteger(object) && !Object.is(object, -0) && object.toString(10).indexOf("e") < 0,
24443
24443
  represent: (object) => object.toString(10)
24444
24444
  });
24445
24445
  var YAML_INTEGER_IMPLICIT_PATTERN = /* @__PURE__ */ new RegExp("^-?(?:0|[1-9][0-9]*)$");
@@ -24467,7 +24467,7 @@ var intJsonTag = defineScalarTag("tag:yaml.org,2002:int", {
24467
24467
  implicit: true,
24468
24468
  implicitFirstChars: ["-", ..."0123456789"],
24469
24469
  resolve: resolveYamlInteger$1,
24470
- identify: (object) => Object.prototype.toString.call(object) === "[object Number]" && object % 1 === 0 && !Object.is(object, -0),
24470
+ identify: (object) => Number.isInteger(object) && !Object.is(object, -0) && object.toString(10).indexOf("e") < 0,
24471
24471
  represent: (object) => object.toString(10)
24472
24472
  });
24473
24473
  var YAML_INTEGER_PATTERN = /* @__PURE__ */ new RegExp("^(?:[-+]?0b[0-1_]+|[-+]?0[0-7_]+|[-+]?0x[0-9a-fA-F_]+|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+|[-+]?(?:0|[1-9][0-9_]*))$");
@@ -24501,7 +24501,7 @@ var intYaml11Tag = defineScalarTag("tag:yaml.org,2002:int", {
24501
24501
  ..."0123456789"
24502
24502
  ],
24503
24503
  resolve: resolveYamlInteger,
24504
- identify: (object) => Object.prototype.toString.call(object) === "[object Number]" && object % 1 === 0 && !Object.is(object, -0),
24504
+ identify: (object) => Number.isInteger(object) && !Object.is(object, -0) && object.toString(10).indexOf("e") < 0,
24505
24505
  represent: (object) => object.toString(10)
24506
24506
  });
24507
24507
  var YAML_FLOAT_PATTERN$1 = /* @__PURE__ */ new RegExp("^(?:[-+]?[0-9]+(?:\\.[0-9]*)?(?:[eE][-+]?[0-9]+)?|[-+]?\\.[0-9]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");
@@ -24534,7 +24534,7 @@ var floatCoreTag = defineScalarTag("tag:yaml.org,2002:float", {
24534
24534
  ..."0123456789"
24535
24535
  ],
24536
24536
  resolve: resolveYamlFloat$2,
24537
- identify: (object) => Object.prototype.toString.call(object) === "[object Number]" && (object % 1 !== 0 || Object.is(object, -0)),
24537
+ identify: (object) => typeof object === "number" && (!Number.isInteger(object) || Object.is(object, -0) || object.toString(10).indexOf("e") >= 0),
24538
24538
  represent: representYamlFloat$2
24539
24539
  });
24540
24540
  var YAML_FLOAT_IMPLICIT_PATTERN = /* @__PURE__ */ new RegExp("^-?(?:0|[1-9][0-9]*)(?:\\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$");
@@ -24567,7 +24567,7 @@ var floatJsonTag = defineScalarTag("tag:yaml.org,2002:float", {
24567
24567
  implicit: true,
24568
24568
  implicitFirstChars: ["-", ..."0123456789"],
24569
24569
  resolve: resolveYamlFloat$1,
24570
- identify: (object) => Object.prototype.toString.call(object) === "[object Number]" && (object % 1 !== 0 || Object.is(object, -0)),
24570
+ identify: (object) => typeof object === "number" && (!Number.isInteger(object) || Object.is(object, -0) || object.toString(10).indexOf("e") >= 0),
24571
24571
  represent: representYamlFloat$1
24572
24572
  });
24573
24573
  var YAML_FLOAT_PATTERN = /* @__PURE__ */ new RegExp("^(?:[-+]?(?:(?:[0-9][0-9_]*)?\\.[0-9_]*)(?:[eE][-+][0-9]+)?|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\.[0-9_]*|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");
@@ -24604,7 +24604,7 @@ var floatYaml11Tag = defineScalarTag("tag:yaml.org,2002:float", {
24604
24604
  ..."0123456789"
24605
24605
  ],
24606
24606
  resolve: resolveYamlFloat,
24607
- identify: (object) => Object.prototype.toString.call(object) === "[object Number]" && (object % 1 !== 0 || Object.is(object, -0)),
24607
+ identify: (object) => typeof object === "number" && (!Number.isInteger(object) || Object.is(object, -0) || object.toString(10).indexOf("e") >= 0),
24608
24608
  represent: representYamlFloat
24609
24609
  });
24610
24610
  var mergeTag = defineScalarTag("tag:yaml.org,2002:merge", {
@@ -25291,7 +25291,8 @@ var DEFAULT_CONSTRUCTOR_OPTIONS = {
25291
25291
  filename: "",
25292
25292
  schema: CORE_SCHEMA,
25293
25293
  json: false,
25294
- maxMergeSeqLength: 20
25294
+ maxTotalMergeKeys: 1e4,
25295
+ maxAliases: -1
25295
25296
  };
25296
25297
  function eventPosition$1(event) {
25297
25298
  if ("tagStart" in event && event.tagStart !== NO_RANGE$2) return event.tagStart;
@@ -25379,6 +25380,7 @@ function isMappingTag(tag) {
25379
25380
  }
25380
25381
  function mergeKeys(state2, frame, source, sourceTag) {
25381
25382
  for (const sourceKey of sourceTag.keys(source)) {
25383
+ if (state2.maxTotalMergeKeys !== -1 && ++state2.totalMergeKeys > state2.maxTotalMergeKeys) throwError$1(state2, `merge keys exceeded maxTotalMergeKeys (${state2.maxTotalMergeKeys})`);
25382
25384
  if (frame.tag.has(frame.value, sourceKey)) continue;
25383
25385
  const err = frame.tag.addPair(frame.value, sourceKey, sourceTag.get(source, sourceKey));
25384
25386
  if (err) throwError$1(state2, err);
@@ -25388,14 +25390,8 @@ function mergeKeys(state2, frame, source, sourceTag) {
25388
25390
  function mergeSource(state2, frame, source, sourceTag) {
25389
25391
  state2.position = frame.keyPosition;
25390
25392
  if (isMappingTag(sourceTag)) mergeKeys(state2, frame, source, sourceTag);
25391
- else if (sourceTag.nodeKind === "sequence" && Array.isArray(source)) {
25392
- const seen = /* @__PURE__ */ new Set();
25393
- for (const element of source) {
25394
- if (seen.has(element)) continue;
25395
- seen.add(element);
25396
- mergeKeys(state2, frame, element, frame.tag);
25397
- }
25398
- } else throwError$1(state2, "cannot merge mappings; the provided source object is unacceptable");
25393
+ else if (sourceTag.nodeKind === "sequence" && Array.isArray(source)) for (const element of source) mergeKeys(state2, frame, element, frame.tag);
25394
+ else throwError$1(state2, "cannot merge mappings; the provided source object is unacceptable");
25399
25395
  }
25400
25396
  function addMappingValue(state2, frame, key, value, tag) {
25401
25397
  state2.position = frame.keyPosition;
@@ -25416,7 +25412,6 @@ function addValue(state2, value, tag) {
25416
25412
  } else if (frame.kind === "sequence") {
25417
25413
  if (frame.merge) {
25418
25414
  if (!isMappingTag(tag)) throwError$1(state2, "cannot merge mappings; the provided source object is unacceptable");
25419
- if (frame.index >= state2.maxMergeSeqLength) throwError$1(state2, `merge sequence length exceeded maxMergeSeqLength (${state2.maxMergeSeqLength})`);
25420
25415
  }
25421
25416
  const err = frame.tag.addItem(frame.value, value, frame.index++);
25422
25417
  if (err) throwError$1(state2, err);
@@ -25453,7 +25448,9 @@ function constructFromEvents(events, options) {
25453
25448
  position: 0,
25454
25449
  frames: [],
25455
25450
  anchors: /* @__PURE__ */ new Map(),
25456
- tagHandlers: /* @__PURE__ */ Object.create(null)
25451
+ tagHandlers: /* @__PURE__ */ Object.create(null),
25452
+ totalMergeKeys: 0,
25453
+ aliasCount: 0
25457
25454
  };
25458
25455
  while (state2.eventIndex < state2.events.length) {
25459
25456
  const event = state2.events[state2.eventIndex++];
@@ -25461,6 +25458,7 @@ function constructFromEvents(events, options) {
25461
25458
  switch (event.type) {
25462
25459
  case 1:
25463
25460
  state2.anchors = /* @__PURE__ */ new Map();
25461
+ state2.aliasCount = 0;
25464
25462
  state2.tagHandlers = /* @__PURE__ */ Object.create(null);
25465
25463
  for (const directive of event.directives) if (directive.kind === "tag") state2.tagHandlers[directive.handle] = directive.prefix;
25466
25464
  state2.frames.push({
@@ -25511,6 +25509,7 @@ function constructFromEvents(events, options) {
25511
25509
  break;
25512
25510
  }
25513
25511
  case 5: {
25512
+ if (state2.maxAliases !== -1 && ++state2.aliasCount > state2.maxAliases) throwError$1(state2, `aliases exceeded maxAliases (${state2.maxAliases})`);
25514
25513
  const name = state2.source.slice(event.anchorStart, event.anchorEnd);
25515
25514
  const anchor = state2.anchors.get(name);
25516
25515
  if (!anchor) throwError$1(state2, `unidentified alias "${name}"`);
@@ -32011,7 +32010,7 @@ function getReferencePartsRegex(issuePrefixes, issuePrefixesCaseSensitive) {
32011
32010
  return nomatchRegex;
32012
32011
  }
32013
32012
  const flags = issuePrefixesCaseSensitive ? "g" : "gi";
32014
- return new RegExp(`(?:.*?)??\\s*([\\w-\\.\\/]*?)??(${joinOr(issuePrefixes)})([\\w-]+)(?=\\s|$|[,;)\\]])`, flags);
32013
+ return new RegExp(`(?:.*?)??\\s*([\\w-\\.\\/]*?)??(${joinOr(issuePrefixes)})([\\w-]+)(?=\\s|$|[,;.)\\]])`, flags);
32015
32014
  }
32016
32015
  function getReferencesRegex(referenceActions) {
32017
32016
  if (!referenceActions) {
@@ -32020,14 +32019,20 @@ function getReferencesRegex(referenceActions) {
32020
32019
  const joinedKeywords = joinOr(referenceActions);
32021
32020
  return new RegExp(`(${joinedKeywords})(?:\\s+(.*?))(?=(?:${joinedKeywords})|$)`, "gi");
32022
32021
  }
32022
+ function getFooterTokenRegex(issuePrefixes) {
32023
+ const issuePrefixSeparator = issuePrefixes ? `|\\s+(?:${joinOr(issuePrefixes)})` : "";
32024
+ return new RegExp(`^\\s*(?:BREAKING CHANGE|[\\w-]+)(?::\\s+${issuePrefixSeparator}).+`, "i");
32025
+ }
32023
32026
  function getParserRegexes(options = {}) {
32024
32027
  const notes = getNotesRegex(options.noteKeywords, options.notesPattern);
32025
32028
  const referenceParts = getReferencePartsRegex(options.issuePrefixes, options.issuePrefixesCaseSensitive);
32026
32029
  const references = getReferencesRegex(options.referenceActions);
32030
+ const footerToken = getFooterTokenRegex(options.issuePrefixes);
32027
32031
  return {
32028
32032
  notes,
32029
32033
  referenceParts,
32030
32034
  references,
32035
+ footerToken,
32031
32036
  mentions: /@([\w-]+)/g,
32032
32037
  url: /\b(?:https?):\/\/(?:www\.)?([-a-zA-Z0-9@:%_+.~#?&//=])+\b/
32033
32038
  };
@@ -32261,7 +32266,7 @@ var CommitParser = class {
32261
32266
  return false;
32262
32267
  }
32263
32268
  const matches = this.currentLine().match(regexes.notes);
32264
- let references = [];
32269
+ let isFooterToken;
32265
32270
  if (matches) {
32266
32271
  const note = {
32267
32272
  title: matches[1],
@@ -32277,15 +32282,14 @@ var CommitParser = class {
32277
32282
  if (this.parseNotes()) {
32278
32283
  return true;
32279
32284
  }
32280
- references = this.parseReferences(this.currentLine());
32281
- if (references.length) {
32282
- commit.references.push(...references);
32283
- } else {
32285
+ isFooterToken = regexes.footerToken.test(this.currentLine());
32286
+ commit.references.push(...this.parseReferences(this.currentLine()));
32287
+ if (!isFooterToken) {
32284
32288
  note.text = appendLine(note.text, this.currentLine());
32285
32289
  }
32286
32290
  commit.footer = appendLine(commit.footer, this.currentLine());
32287
32291
  this.nextLine();
32288
- if (references.length) {
32292
+ if (isFooterToken) {
32289
32293
  break;
32290
32294
  }
32291
32295
  }
@@ -32294,16 +32298,16 @@ var CommitParser = class {
32294
32298
  return false;
32295
32299
  }
32296
32300
  parseBodyAndFooter(isBody) {
32297
- const { commit } = this;
32301
+ const { commit, regexes } = this;
32298
32302
  if (!this.isLineAvailable()) {
32299
32303
  return isBody;
32300
32304
  }
32301
- const references = this.parseReferences(this.currentLine());
32302
- const isStillBody = !references.length && isBody;
32305
+ const isFooterToken = regexes.footerToken.test(this.currentLine());
32306
+ const isStillBody = !isFooterToken && isBody;
32307
+ commit.references.push(...this.parseReferences(this.currentLine()));
32303
32308
  if (isStillBody) {
32304
32309
  commit.body = appendLine(commit.body, this.currentLine());
32305
32310
  } else {
32306
- commit.references.push(...references);
32307
32311
  commit.footer = appendLine(commit.footer, this.currentLine());
32308
32312
  }
32309
32313
  this.nextLine();
@@ -32343,12 +32347,8 @@ var CommitParser = class {
32343
32347
  }
32344
32348
  cleanupCommit() {
32345
32349
  const { commit } = this;
32346
- if (commit.body) {
32347
- commit.body = trimNewLines(commit.body);
32348
- }
32349
- if (commit.footer) {
32350
- commit.footer = trimNewLines(commit.footer);
32351
- }
32350
+ commit.body &&= trimNewLines(commit.body);
32351
+ commit.footer &&= trimNewLines(commit.footer);
32352
32352
  commit.notes.forEach((note) => {
32353
32353
  note.text = trimNewLines(note.text);
32354
32354
  });
@@ -34354,5 +34354,5 @@ deep-extend/lib/deep-extend.js:
34354
34354
  *)
34355
34355
 
34356
34356
  js-yaml/dist/js-yaml.mjs:
34357
- (*! js-yaml 5.1.0 https://github.com/nodeca/js-yaml @license MIT *)
34357
+ (*! js-yaml 5.2.0 https://github.com/nodeca/js-yaml @license MIT *)
34358
34358
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "semantic-release-lerna",
3
- "version": "3.2.0",
3
+ "version": "3.3.0",
4
4
  "description": "semantic-release plugin to publish lerna monorepo packages to npm",
5
5
  "keywords": [
6
6
  "npm",