diff --git a/.github/actions/prepare-dynamic-steps/.nvmrc b/.github/actions/prepare-dynamic-steps/.nvmrc
index 209e3ef..a45fd52 100644
--- a/.github/actions/prepare-dynamic-steps/.nvmrc
+++ b/.github/actions/prepare-dynamic-steps/.nvmrc
@@ -1 +1 @@
-20
+24
diff --git a/.github/actions/prepare-dynamic-steps/action.yaml b/.github/actions/prepare-dynamic-steps/action.yaml
index 83be50f..0f1c82c 100644
--- a/.github/actions/prepare-dynamic-steps/action.yaml
+++ b/.github/actions/prepare-dynamic-steps/action.yaml
@@ -3,7 +3,7 @@ name: Dynamic action generator
description: Takes a list of steps as YAML inside string and writes them out as a composite action
runs:
- using: node20
+ using: node24
main: index.js
inputs:
diff --git a/.github/actions/prepare-dynamic-steps/node_modules/.package-lock.json b/.github/actions/prepare-dynamic-steps/node_modules/.package-lock.json
index 2fab00f..1d9caac 100644
--- a/.github/actions/prepare-dynamic-steps/node_modules/.package-lock.json
+++ b/.github/actions/prepare-dynamic-steps/node_modules/.package-lock.json
@@ -58,9 +58,9 @@
}
},
"node_modules/undici": {
- "version": "5.28.5",
- "resolved": "https://registry.npmjs.org/undici/-/undici-5.28.5.tgz",
- "integrity": "sha512-zICwjrDrcrUE0pyyJc1I2QzBkLM8FINsgOrt6WjA+BgajVq9Nxu2PbFFXUrAggLfDXlZGZBVZYw7WNV5KiBiBA==",
+ "version": "5.29.0",
+ "resolved": "https://registry.npmjs.org/undici/-/undici-5.29.0.tgz",
+ "integrity": "sha512-raqeBD6NQK4SkWhQzeYKd1KmIG6dllBOTt55Rmkt4HtI9mwdWtJljnrXjAFUBLTSN67HWrOIZ3EPF4kjUw80Bg==",
"license": "MIT",
"dependencies": {
"@fastify/busboy": "^2.0.0"
@@ -70,15 +70,15 @@
}
},
"node_modules/yaml": {
- "version": "2.7.0",
- "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.7.0.tgz",
- "integrity": "sha512-+hSoy/QHluxmC9kCIJyL/uyFmLmc+e5CFR5Wa+bpIhIj85LVb9ZH2nVnqrHoSvKogwODv0ClqZkmiSSaIH5LTA==",
+ "version": "2.8.1",
+ "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.8.1.tgz",
+ "integrity": "sha512-lcYcMxX2PO9XMGvAJkJ3OsNMw+/7FKes7/hgerGUYWIoWu5j/+YQqcZr5JnPZWzOsEBgMbSbiSTn/dv/69Mkpw==",
"license": "ISC",
"bin": {
"yaml": "bin.mjs"
},
"engines": {
- "node": ">= 14"
+ "node": ">= 14.6"
}
}
}
diff --git a/.github/actions/prepare-dynamic-steps/node_modules/undici/lib/cookies/index.js b/.github/actions/prepare-dynamic-steps/node_modules/undici/lib/cookies/index.js
index c9c1f28..f867b19 100644
--- a/.github/actions/prepare-dynamic-steps/node_modules/undici/lib/cookies/index.js
+++ b/.github/actions/prepare-dynamic-steps/node_modules/undici/lib/cookies/index.js
@@ -1,7 +1,7 @@
'use strict'
const { parseSetCookie } = require('./parse')
-const { stringify, getHeadersList } = require('./util')
+const { stringify } = require('./util')
const { webidl } = require('../fetch/webidl')
const { Headers } = require('../fetch/headers')
@@ -77,14 +77,13 @@ function getSetCookies (headers) {
webidl.brandCheck(headers, Headers, { strict: false })
- const cookies = getHeadersList(headers).cookies
+ const cookies = headers.getSetCookie()
if (!cookies) {
return []
}
- // In older versions of undici, cookies is a list of name:value.
- return cookies.map((pair) => parseSetCookie(Array.isArray(pair) ? pair[1] : pair))
+ return cookies.map((pair) => parseSetCookie(pair))
}
/**
diff --git a/.github/actions/prepare-dynamic-steps/node_modules/undici/lib/cookies/util.js b/.github/actions/prepare-dynamic-steps/node_modules/undici/lib/cookies/util.js
index 2290329..be3ccbe 100644
--- a/.github/actions/prepare-dynamic-steps/node_modules/undici/lib/cookies/util.js
+++ b/.github/actions/prepare-dynamic-steps/node_modules/undici/lib/cookies/util.js
@@ -1,8 +1,9 @@
'use strict'
-const assert = require('assert')
-const { kHeadersList } = require('../core/symbols')
-
+/**
+ * @param {string} value
+ * @returns {boolean}
+ */
function isCTLExcludingHtab (value) {
if (value.length === 0) {
return false
@@ -263,29 +264,11 @@ function stringify (cookie) {
return out.join('; ')
}
-let kHeadersListNode
-
-function getHeadersList (headers) {
- if (headers[kHeadersList]) {
- return headers[kHeadersList]
- }
-
- if (!kHeadersListNode) {
- kHeadersListNode = Object.getOwnPropertySymbols(headers).find(
- (symbol) => symbol.description === 'headers list'
- )
-
- assert(kHeadersListNode, 'Headers cannot be parsed')
- }
-
- const headersList = headers[kHeadersListNode]
- assert(headersList)
-
- return headersList
-}
-
module.exports = {
isCTLExcludingHtab,
- stringify,
- getHeadersList
+ validateCookieName,
+ validateCookiePath,
+ validateCookieValue,
+ toIMFDate,
+ stringify
}
diff --git a/.github/actions/prepare-dynamic-steps/node_modules/undici/lib/fetch/headers.js b/.github/actions/prepare-dynamic-steps/node_modules/undici/lib/fetch/headers.js
index 2f1c0be..fcab732 100644
--- a/.github/actions/prepare-dynamic-steps/node_modules/undici/lib/fetch/headers.js
+++ b/.github/actions/prepare-dynamic-steps/node_modules/undici/lib/fetch/headers.js
@@ -10,6 +10,7 @@ const {
isValidHeaderName,
isValidHeaderValue
} = require('./util')
+const util = require('util')
const { webidl } = require('./webidl')
const assert = require('assert')
@@ -563,6 +564,9 @@ Object.defineProperties(Headers.prototype, {
[Symbol.toStringTag]: {
value: 'Headers',
configurable: true
+ },
+ [util.inspect.custom]: {
+ enumerable: false
}
})
diff --git a/.github/actions/prepare-dynamic-steps/node_modules/undici/lib/pool.js b/.github/actions/prepare-dynamic-steps/node_modules/undici/lib/pool.js
index e3cd339..86b29d4 100644
--- a/.github/actions/prepare-dynamic-steps/node_modules/undici/lib/pool.js
+++ b/.github/actions/prepare-dynamic-steps/node_modules/undici/lib/pool.js
@@ -73,6 +73,20 @@ class Pool extends PoolBase {
? { ...options.interceptors }
: undefined
this[kFactory] = factory
+
+ this.on('connectionError', (origin, targets, error) => {
+ // If a connection error occurs, we remove the client from the pool,
+ // and emit a connectionError event. They will not be re-used.
+ // Fixes https://github.com/nodejs/undici/issues/3895
+ for (const target of targets) {
+ // Do not use kRemoveClient here, as it will close the client,
+ // but the client cannot be closed in this state.
+ const idx = this[kClients].indexOf(target)
+ if (idx !== -1) {
+ this[kClients].splice(idx, 1)
+ }
+ }
+ })
}
[kGetDispatcher] () {
diff --git a/.github/actions/prepare-dynamic-steps/node_modules/undici/package.json b/.github/actions/prepare-dynamic-steps/node_modules/undici/package.json
index 0c6b71e..738688d 100644
--- a/.github/actions/prepare-dynamic-steps/node_modules/undici/package.json
+++ b/.github/actions/prepare-dynamic-steps/node_modules/undici/package.json
@@ -1,6 +1,6 @@
{
"name": "undici",
- "version": "5.28.5",
+ "version": "5.29.0",
"description": "An HTTP/1.1 client, written from scratch for Node.js",
"homepage": "https://undici.nodejs.org",
"bugs": {
diff --git a/.github/actions/prepare-dynamic-steps/node_modules/yaml/README.md b/.github/actions/prepare-dynamic-steps/node_modules/yaml/README.md
index a5bdcba..1613c1d 100644
--- a/.github/actions/prepare-dynamic-steps/node_modules/yaml/README.md
+++ b/.github/actions/prepare-dynamic-steps/node_modules/yaml/README.md
@@ -20,34 +20,18 @@ This requirement may be updated between minor versions of the library.
For more information, see the project's documentation site: [**eemeli.org/yaml**](https://eemeli.org/yaml/)
+For build instructions and contribution guidelines, see [docs/CONTRIBUTING.md](docs/CONTRIBUTING.md).
+
To install:
```sh
npm install yaml
+# or
+deno add jsr:@eemeli/yaml
```
**Note:** These docs are for `yaml@2`. For v1, see the [v1.10.0 tag](https://github.com/eemeli/yaml/tree/v1.10.0) for the source and [eemeli.org/yaml/v1](https://eemeli.org/yaml/v1/) for the documentation.
-The development and maintenance of this library is [sponsored](https://github.com/sponsors/eemeli) by:
-
-
-
-
-
-
-
## API Overview
The API provided by `yaml` has three layers, depending on how deep you need to go: [Parse & Stringify](https://eemeli.org/yaml/#parse-amp-stringify), [Documents](https://eemeli.org/yaml/#documents), and the underlying [Lexer/Parser/Composer](https://eemeli.org/yaml/#parsing-yaml).
diff --git a/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/compose/compose-collection.js b/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/compose/compose-collection.js
index b80fba2..5ecf796 100644
--- a/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/compose/compose-collection.js
+++ b/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/compose/compose-collection.js
@@ -64,8 +64,8 @@ function composeCollection(CN, ctx, token, props, onError) {
tag = kt;
}
else {
- if (kt?.collection) {
- onError(tagToken, 'BAD_COLLECTION_TYPE', `${kt.tag} used for ${expType} collection, but expects ${kt.collection}`, true);
+ if (kt) {
+ onError(tagToken, 'BAD_COLLECTION_TYPE', `${kt.tag} used for ${expType} collection, but expects ${kt.collection ?? 'scalar'}`, true);
}
else {
onError(tagToken, 'TAG_RESOLVE_FAILED', `Unresolved tag: ${tagName}`, true);
diff --git a/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/compose/resolve-props.js b/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/compose/resolve-props.js
index b348b79..b6336e1 100644
--- a/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/compose/resolve-props.js
+++ b/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/compose/resolve-props.js
@@ -72,8 +72,7 @@ function resolveProps(tokens, { flow, indicator, next, offset, onError, parentIn
if (token.source.endsWith(':'))
onError(token.offset + token.source.length - 1, 'BAD_ALIAS', 'Anchor ending in : is ambiguous', true);
anchor = token;
- if (start === null)
- start = token.offset;
+ start ?? (start = token.offset);
atNewline = false;
hasSpace = false;
reqSpace = true;
@@ -82,8 +81,7 @@ function resolveProps(tokens, { flow, indicator, next, offset, onError, parentIn
if (tag)
onError(token, 'MULTIPLE_TAGS', 'A node can have at most one tag');
tag = token;
- if (start === null)
- start = token.offset;
+ start ?? (start = token.offset);
atNewline = false;
hasSpace = false;
reqSpace = true;
diff --git a/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/compose/util-empty-scalar-position.js b/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/compose/util-empty-scalar-position.js
index ab6e0c9..26f238c 100644
--- a/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/compose/util-empty-scalar-position.js
+++ b/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/compose/util-empty-scalar-position.js
@@ -1,7 +1,6 @@
function emptyScalarPosition(offset, before, pos) {
if (before) {
- if (pos === null)
- pos = before.length;
+ pos ?? (pos = before.length);
for (let i = pos - 1; i >= 0; --i) {
let st = before[i];
switch (st.type) {
diff --git a/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/doc/anchors.js b/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/doc/anchors.js
index 03c2442..64810d1 100644
--- a/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/doc/anchors.js
+++ b/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/doc/anchors.js
@@ -39,8 +39,7 @@ function createNodeAnchors(doc, prefix) {
return {
onAnchor: (source) => {
aliasObjects.push(source);
- if (!prevAnchors)
- prevAnchors = anchorNames(doc);
+ prevAnchors ?? (prevAnchors = anchorNames(doc));
const anchor = findNewAnchor(prefix, prevAnchors);
prevAnchors.add(anchor);
return anchor;
diff --git a/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/doc/createNode.js b/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/doc/createNode.js
index 1392269..ddcc211 100644
--- a/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/doc/createNode.js
+++ b/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/doc/createNode.js
@@ -38,8 +38,7 @@ function createNode(value, tagName, ctx) {
if (aliasDuplicateObjects && value && typeof value === 'object') {
ref = sourceObjects.get(value);
if (ref) {
- if (!ref.anchor)
- ref.anchor = onAnchor(value);
+ ref.anchor ?? (ref.anchor = onAnchor(value));
return new Alias(ref.anchor);
}
else {
diff --git a/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/nodes/Alias.js b/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/nodes/Alias.js
index 8e34f09..7a638ba 100644
--- a/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/nodes/Alias.js
+++ b/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/nodes/Alias.js
@@ -1,6 +1,6 @@
import { anchorIsValid } from '../doc/anchors.js';
import { visit } from '../visit.js';
-import { ALIAS, isAlias, isCollection, isPair } from './identity.js';
+import { ALIAS, isAlias, isCollection, isPair, hasAnchor } from './identity.js';
import { NodeBase } from './Node.js';
import { toJS } from './toJS.js';
@@ -18,23 +18,36 @@ class Alias extends NodeBase {
* Resolve the value of this alias within `doc`, finding the last
* instance of the `source` anchor before this node.
*/
- resolve(doc) {
+ resolve(doc, ctx) {
+ let nodes;
+ if (ctx?.aliasResolveCache) {
+ nodes = ctx.aliasResolveCache;
+ }
+ else {
+ nodes = [];
+ visit(doc, {
+ Node: (_key, node) => {
+ if (isAlias(node) || hasAnchor(node))
+ nodes.push(node);
+ }
+ });
+ if (ctx)
+ ctx.aliasResolveCache = nodes;
+ }
let found = undefined;
- visit(doc, {
- Node: (_key, node) => {
- if (node === this)
- return visit.BREAK;
- if (node.anchor === this.source)
- found = node;
- }
- });
+ for (const node of nodes) {
+ if (node === this)
+ break;
+ if (node.anchor === this.source)
+ found = node;
+ }
return found;
}
toJSON(_arg, ctx) {
if (!ctx)
return { source: this.source };
const { anchors, doc, maxAliasCount } = ctx;
- const source = this.resolve(doc);
+ const source = this.resolve(doc, ctx);
if (!source) {
const msg = `Unresolved alias (the anchor must be set before the alias): ${this.source}`;
throw new ReferenceError(msg);
diff --git a/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/nodes/YAMLMap.js b/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/nodes/YAMLMap.js
index 5d88737..6c6a504 100644
--- a/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/nodes/YAMLMap.js
+++ b/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/nodes/YAMLMap.js
@@ -1,7 +1,7 @@
import { stringifyCollection } from '../stringify/stringifyCollection.js';
import { addPairToJSMap } from './addPairToJSMap.js';
import { Collection } from './Collection.js';
-import { isPair, isScalar, MAP } from './identity.js';
+import { MAP, isPair, isScalar } from './identity.js';
import { Pair, createPair } from './Pair.js';
import { isScalarValue } from './Scalar.js';
diff --git a/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/nodes/addPairToJSMap.js b/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/nodes/addPairToJSMap.js
index 53f7858..8e671cb 100644
--- a/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/nodes/addPairToJSMap.js
+++ b/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/nodes/addPairToJSMap.js
@@ -37,6 +37,7 @@ function addPairToJSMap(ctx, map, { key, value }) {
function stringifyKey(key, jsKey, ctx) {
if (jsKey === null)
return '';
+ // eslint-disable-next-line @typescript-eslint/no-base-to-string
if (typeof jsKey !== 'object')
return String(jsKey);
if (isNode(key) && ctx?.doc) {
diff --git a/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/parse/parser.js b/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/parse/parser.js
index 0cd7d1a..45a384a 100644
--- a/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/parse/parser.js
+++ b/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/parse/parser.js
@@ -668,7 +668,20 @@ class Parser {
default: {
const bv = this.startBlockValue(map);
if (bv) {
- if (atMapIndent && bv.type !== 'block-seq') {
+ if (bv.type === 'block-seq') {
+ if (!it.explicitKey &&
+ it.sep &&
+ !includesToken(it.sep, 'newline')) {
+ yield* this.pop({
+ type: 'error',
+ offset: this.offset,
+ message: 'Unexpected block-seq-ind on same line with key',
+ source: this.source
+ });
+ return;
+ }
+ }
+ else if (atMapIndent) {
map.items.push({ start });
}
this.stack.push(bv);
diff --git a/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/schema/tags.js b/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/schema/tags.js
index ba52c35..5acd99f 100644
--- a/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/schema/tags.js
+++ b/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/schema/tags.js
@@ -3,8 +3,8 @@ import { nullTag } from './common/null.js';
import { seq } from './common/seq.js';
import { string } from './common/string.js';
import { boolTag } from './core/bool.js';
-import { float, floatExp, floatNaN } from './core/float.js';
-import { int, intHex, intOct } from './core/int.js';
+import { floatNaN, floatExp, float } from './core/float.js';
+import { intOct, intHex, int } from './core/int.js';
import { schema } from './core/schema.js';
import { schema as schema$1 } from './json/schema.js';
import { binary } from './yaml-1.1/binary.js';
@@ -13,7 +13,7 @@ import { omap } from './yaml-1.1/omap.js';
import { pairs } from './yaml-1.1/pairs.js';
import { schema as schema$2 } from './yaml-1.1/schema.js';
import { set } from './yaml-1.1/set.js';
-import { timestamp, floatTime, intTime } from './yaml-1.1/timestamp.js';
+import { timestamp, intTime, floatTime } from './yaml-1.1/timestamp.js';
const schemas = new Map([
['core', schema],
diff --git a/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/schema/yaml-1.1/binary.js b/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/schema/yaml-1.1/binary.js
index de5cce6..2deda7a 100644
--- a/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/schema/yaml-1.1/binary.js
+++ b/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/schema/yaml-1.1/binary.js
@@ -28,6 +28,8 @@ const binary = {
}
},
stringify({ comment, type, value }, ctx, onComment, onChompKeep) {
+ if (!value)
+ return '';
const buf = value; // checked earlier by binary.identify()
let str;
if (typeof btoa === 'function') {
@@ -39,8 +41,7 @@ const binary = {
else {
throw new Error('This environment does not support writing binary tags; either Buffer or btoa is required');
}
- if (!type)
- type = Scalar.BLOCK_LITERAL;
+ type ?? (type = Scalar.BLOCK_LITERAL);
if (type !== Scalar.QUOTE_DOUBLE) {
const lineWidth = Math.max(ctx.options.lineWidth - ctx.indent.length, ctx.options.minContentWidth);
const n = Math.ceil(str.length / lineWidth);
diff --git a/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/schema/yaml-1.1/pairs.js b/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/schema/yaml-1.1/pairs.js
index 18e3020..579f080 100644
--- a/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/schema/yaml-1.1/pairs.js
+++ b/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/schema/yaml-1.1/pairs.js
@@ -1,5 +1,5 @@
import { isSeq, isPair, isMap } from '../../nodes/identity.js';
-import { Pair, createPair } from '../../nodes/Pair.js';
+import { createPair, Pair } from '../../nodes/Pair.js';
import { Scalar } from '../../nodes/Scalar.js';
import { YAMLSeq } from '../../nodes/YAMLSeq.js';
diff --git a/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/schema/yaml-1.1/timestamp.js b/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/schema/yaml-1.1/timestamp.js
index 66daec4..77e3dbe 100644
--- a/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/schema/yaml-1.1/timestamp.js
+++ b/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/schema/yaml-1.1/timestamp.js
@@ -95,7 +95,7 @@ const timestamp = {
}
return new Date(date);
},
- stringify: ({ value }) => value.toISOString().replace(/(T00:00:00)?\.000Z$/, '')
+ stringify: ({ value }) => value?.toISOString().replace(/(T00:00:00)?\.000Z$/, '') ?? ''
};
export { floatTime, intTime, timestamp };
diff --git a/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/stringify/stringify.js b/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/stringify/stringify.js
index ad15d8f..7d27bf4 100644
--- a/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/stringify/stringify.js
+++ b/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/stringify/stringify.js
@@ -68,7 +68,7 @@ function getTagObject(tags, item) {
tagObj = tags.find(t => t.nodeClass && obj instanceof t.nodeClass);
}
if (!tagObj) {
- const name = obj?.constructor?.name ?? typeof obj;
+ const name = obj?.constructor?.name ?? (obj === null ? 'null' : typeof obj);
throw new Error(`Tag not resolved for ${name} value`);
}
return tagObj;
@@ -83,7 +83,7 @@ function stringifyProps(node, tagObj, { anchors, doc }) {
anchors.add(anchor);
props.push(`&${anchor}`);
}
- const tag = node.tag ? node.tag : tagObj.default ? null : tagObj.tag;
+ const tag = node.tag ?? (tagObj.default ? null : tagObj.tag);
if (tag)
props.push(doc.directives.tagString(tag));
return props.join(' ');
@@ -109,8 +109,7 @@ function stringify(item, ctx, onComment, onChompKeep) {
const node = isNode(item)
? item
: ctx.doc.createNode(item, { onTagObj: o => (tagObj = o) });
- if (!tagObj)
- tagObj = getTagObject(ctx.doc.schema.tags, node);
+ tagObj ?? (tagObj = getTagObject(ctx.doc.schema.tags, node));
const props = stringifyProps(node, tagObj, ctx);
if (props.length > 0)
ctx.indentAtStart = (ctx.indentAtStart ?? 0) + props.length + 1;
diff --git a/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/stringify/stringifyString.js b/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/stringify/stringifyString.js
index e19b3d4..1591ce6 100644
--- a/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/stringify/stringifyString.js
+++ b/.github/actions/prepare-dynamic-steps/node_modules/yaml/browser/dist/stringify/stringifyString.js
@@ -1,5 +1,5 @@
import { Scalar } from '../nodes/Scalar.js';
-import { foldFlowLines, FOLD_QUOTED, FOLD_FLOW, FOLD_BLOCK } from './foldFlowLines.js';
+import { foldFlowLines, FOLD_FLOW, FOLD_QUOTED, FOLD_BLOCK } from './foldFlowLines.js';
const getFoldOptions = (ctx, isBlock) => ({
indentAtStart: isBlock ? ctx.indent.length : ctx.indentAtStart,
@@ -159,7 +159,7 @@ function blockString({ comment, type, value }, ctx, onComment, onChompKeep) {
const { blockQuote, commentString, lineWidth } = ctx.options;
// 1. Block can't end in whitespace unless the last line is non-empty.
// 2. Strings consisting of only whitespace are best rendered explicitly.
- if (!blockQuote || /\n[\t ]+$/.test(value) || /^\s*$/.test(value)) {
+ if (!blockQuote || /\n[\t ]+$/.test(value)) {
return quotedString(value, ctx);
}
const indent = ctx.indent ||
@@ -253,10 +253,9 @@ function plainString(item, ctx, onComment, onChompKeep) {
(inFlow && /[[\]{},]/.test(value))) {
return quotedString(value, ctx);
}
- if (!value ||
- /^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(value)) {
+ if (/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(value)) {
// not allowed:
- // - empty string, '-' or '?'
+ // - '-' or '?'
// - start with an indicator character (except [?:-]) or /[?-] /
// - '\n ', ': ' or ' \n' anywhere
// - '#' not preceded by a non-space char
diff --git a/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/cli.d.ts b/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/cli.d.ts
index 7e2ea2a..4007923 100644
--- a/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/cli.d.ts
+++ b/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/cli.d.ts
@@ -1,4 +1,4 @@
-export declare const help = "yaml: A command-line YAML processor and inspector\n\nReads stdin and writes output to stdout and errors & warnings to stderr.\n\nUsage:\n yaml Process a YAML stream, outputting it as YAML\n yaml cst Parse the CST of a YAML stream\n yaml lex Parse the lexical tokens of a YAML stream\n yaml valid Validate a YAML stream, returning 0 on success\n\nOptions:\n --help, -h Show this message.\n --json, -j Output JSON.\n --indent 2 Output pretty-printed data, indented by the given number of spaces.\n\nAdditional options for bare \"yaml\" command:\n --doc, -d Output pretty-printed JS Document objects.\n --single, -1 Require the input to consist of a single YAML document.\n --strict, -s Stop on errors.\n --visit, -v Apply a visitor to each document (requires a path to import)\n --yaml 1.1 Set the YAML version. (default: 1.2)";
+export declare const help = "yaml: A command-line YAML processor and inspector\n\nReads stdin and writes output to stdout and errors & warnings to stderr.\n\nUsage:\n yaml Process a YAML stream, outputting it as YAML\n yaml cst Parse the CST of a YAML stream\n yaml lex Parse the lexical tokens of a YAML stream\n yaml valid Validate a YAML stream, returning 0 on success\n\nOptions:\n --help, -h Show this message.\n --json, -j Output JSON.\n --indent 2 Output pretty-printed data, indented by the given number of spaces.\n --merge, -m Enable support for \"<<\" merge keys.\n\nAdditional options for bare \"yaml\" command:\n --doc, -d Output pretty-printed JS Document objects.\n --single, -1 Require the input to consist of a single YAML document.\n --strict, -s Stop on errors.\n --visit, -v Apply a visitor to each document (requires a path to import)\n --yaml 1.1 Set the YAML version. (default: 1.2)";
export declare class UserError extends Error {
static ARGS: number;
static SINGLE: number;
diff --git a/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/cli.mjs b/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/cli.mjs
index d3c7d43..639cca4 100644
--- a/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/cli.mjs
+++ b/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/cli.mjs
@@ -1,5 +1,5 @@
-import { resolve } from 'node:path';
-import { parseArgs } from 'node:util';
+import { resolve } from 'path';
+import { parseArgs } from 'util';
import { prettyToken } from './parse/cst.js';
import { Lexer } from './parse/lexer.js';
import { Parser } from './parse/parser.js';
@@ -23,6 +23,7 @@ Options:
--help, -h Show this message.
--json, -j Output JSON.
--indent 2 Output pretty-printed data, indented by the given number of spaces.
+ --merge, -m Enable support for "<<" merge keys.
Additional options for bare "yaml" command:
--doc, -d Output pretty-printed JS Document objects.
@@ -48,6 +49,7 @@ async function cli(stdin, done, argv) {
doc: { type: 'boolean', short: 'd' },
help: { type: 'boolean', short: 'h' },
indent: { type: 'string', short: 'i' },
+ merge: { type: 'boolean', short: 'm' },
json: { type: 'boolean', short: 'j' },
single: { type: 'boolean', short: '1' },
strict: { type: 'boolean', short: 's' },
@@ -117,7 +119,7 @@ async function cli(stdin, done, argv) {
const lineCounter = new LineCounter();
const parser = new Parser(lineCounter.addNewLine);
// @ts-expect-error Version is validated at runtime
- const composer = new Composer({ version: opt.yaml });
+ const composer = new Composer({ version: opt.yaml, merge: opt.merge });
const visitor = opt.visit
? (await import(resolve(opt.visit))).default
: null;
diff --git a/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/compose/compose-collection.js b/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/compose/compose-collection.js
index 3f91468..9add89f 100644
--- a/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/compose/compose-collection.js
+++ b/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/compose/compose-collection.js
@@ -66,8 +66,8 @@ function composeCollection(CN, ctx, token, props, onError) {
tag = kt;
}
else {
- if (kt?.collection) {
- onError(tagToken, 'BAD_COLLECTION_TYPE', `${kt.tag} used for ${expType} collection, but expects ${kt.collection}`, true);
+ if (kt) {
+ onError(tagToken, 'BAD_COLLECTION_TYPE', `${kt.tag} used for ${expType} collection, but expects ${kt.collection ?? 'scalar'}`, true);
}
else {
onError(tagToken, 'TAG_RESOLVE_FAILED', `Unresolved tag: ${tagName}`, true);
diff --git a/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/compose/composer.js b/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/compose/composer.js
index 0757495..df60391 100644
--- a/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/compose/composer.js
+++ b/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/compose/composer.js
@@ -1,6 +1,6 @@
'use strict';
-var node_process = require('node:process');
+var node_process = require('process');
var directives = require('../doc/directives.js');
var Document = require('../doc/Document.js');
var errors = require('../errors.js');
diff --git a/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/compose/resolve-props.js b/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/compose/resolve-props.js
index 4f61696..a3598c8 100644
--- a/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/compose/resolve-props.js
+++ b/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/compose/resolve-props.js
@@ -74,8 +74,7 @@ function resolveProps(tokens, { flow, indicator, next, offset, onError, parentIn
if (token.source.endsWith(':'))
onError(token.offset + token.source.length - 1, 'BAD_ALIAS', 'Anchor ending in : is ambiguous', true);
anchor = token;
- if (start === null)
- start = token.offset;
+ start ?? (start = token.offset);
atNewline = false;
hasSpace = false;
reqSpace = true;
@@ -84,8 +83,7 @@ function resolveProps(tokens, { flow, indicator, next, offset, onError, parentIn
if (tag)
onError(token, 'MULTIPLE_TAGS', 'A node can have at most one tag');
tag = token;
- if (start === null)
- start = token.offset;
+ start ?? (start = token.offset);
atNewline = false;
hasSpace = false;
reqSpace = true;
diff --git a/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/compose/util-empty-scalar-position.js b/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/compose/util-empty-scalar-position.js
index b2cd849..50fedb1 100644
--- a/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/compose/util-empty-scalar-position.js
+++ b/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/compose/util-empty-scalar-position.js
@@ -2,8 +2,7 @@
function emptyScalarPosition(offset, before, pos) {
if (before) {
- if (pos === null)
- pos = before.length;
+ pos ?? (pos = before.length);
for (let i = pos - 1; i >= 0; --i) {
let st = before[i];
switch (st.type) {
diff --git a/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/doc/anchors.js b/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/doc/anchors.js
index 223639a..68613fa 100644
--- a/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/doc/anchors.js
+++ b/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/doc/anchors.js
@@ -41,8 +41,7 @@ function createNodeAnchors(doc, prefix) {
return {
onAnchor: (source) => {
aliasObjects.push(source);
- if (!prevAnchors)
- prevAnchors = anchorNames(doc);
+ prevAnchors ?? (prevAnchors = anchorNames(doc));
const anchor = findNewAnchor(prefix, prevAnchors);
prevAnchors.add(anchor);
return anchor;
diff --git a/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/doc/createNode.js b/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/doc/createNode.js
index 64dd31a..53522c6 100644
--- a/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/doc/createNode.js
+++ b/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/doc/createNode.js
@@ -40,8 +40,7 @@ function createNode(value, tagName, ctx) {
if (aliasDuplicateObjects && value && typeof value === 'object') {
ref = sourceObjects.get(value);
if (ref) {
- if (!ref.anchor)
- ref.anchor = onAnchor(value);
+ ref.anchor ?? (ref.anchor = onAnchor(value));
return new Alias.Alias(ref.anchor);
}
else {
diff --git a/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/log.js b/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/log.js
index 5d0b4c5..65f9950 100644
--- a/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/log.js
+++ b/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/log.js
@@ -1,6 +1,6 @@
'use strict';
-var node_process = require('node:process');
+var node_process = require('process');
function debug(logLevel, ...messages) {
if (logLevel === 'debug')
diff --git a/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/nodes/Alias.d.ts b/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/nodes/Alias.d.ts
index 8b03c81..c48f40e 100644
--- a/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/nodes/Alias.d.ts
+++ b/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/nodes/Alias.d.ts
@@ -23,7 +23,7 @@ export declare class Alias extends NodeBase {
* Resolve the value of this alias within `doc`, finding the last
* instance of the `source` anchor before this node.
*/
- resolve(doc: Document): Scalar | YAMLMap | YAMLSeq | undefined;
+ resolve(doc: Document, ctx?: ToJSContext): Scalar | YAMLMap | YAMLSeq | undefined;
toJSON(_arg?: unknown, ctx?: ToJSContext): unknown;
toString(ctx?: StringifyContext, _onComment?: () => void, _onChompKeep?: () => void): string;
}
diff --git a/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/nodes/Alias.js b/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/nodes/Alias.js
index 46b37d9..a9fac7c 100644
--- a/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/nodes/Alias.js
+++ b/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/nodes/Alias.js
@@ -20,23 +20,36 @@ class Alias extends Node.NodeBase {
* Resolve the value of this alias within `doc`, finding the last
* instance of the `source` anchor before this node.
*/
- resolve(doc) {
+ resolve(doc, ctx) {
+ let nodes;
+ if (ctx?.aliasResolveCache) {
+ nodes = ctx.aliasResolveCache;
+ }
+ else {
+ nodes = [];
+ visit.visit(doc, {
+ Node: (_key, node) => {
+ if (identity.isAlias(node) || identity.hasAnchor(node))
+ nodes.push(node);
+ }
+ });
+ if (ctx)
+ ctx.aliasResolveCache = nodes;
+ }
let found = undefined;
- visit.visit(doc, {
- Node: (_key, node) => {
- if (node === this)
- return visit.visit.BREAK;
- if (node.anchor === this.source)
- found = node;
- }
- });
+ for (const node of nodes) {
+ if (node === this)
+ break;
+ if (node.anchor === this.source)
+ found = node;
+ }
return found;
}
toJSON(_arg, ctx) {
if (!ctx)
return { source: this.source };
const { anchors, doc, maxAliasCount } = ctx;
- const source = this.resolve(doc);
+ const source = this.resolve(doc, ctx);
if (!source) {
const msg = `Unresolved alias (the anchor must be set before the alias): ${this.source}`;
throw new ReferenceError(msg);
diff --git a/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/nodes/addPairToJSMap.js b/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/nodes/addPairToJSMap.js
index 755468c..a8faa29 100644
--- a/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/nodes/addPairToJSMap.js
+++ b/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/nodes/addPairToJSMap.js
@@ -39,6 +39,7 @@ function addPairToJSMap(ctx, map, { key, value }) {
function stringifyKey(key, jsKey, ctx) {
if (jsKey === null)
return '';
+ // eslint-disable-next-line @typescript-eslint/no-base-to-string
if (typeof jsKey !== 'object')
return String(jsKey);
if (identity.isNode(key) && ctx?.doc) {
diff --git a/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/nodes/toJS.d.ts b/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/nodes/toJS.d.ts
index d51d631..d7e129e 100644
--- a/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/nodes/toJS.d.ts
+++ b/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/nodes/toJS.d.ts
@@ -7,6 +7,8 @@ export interface AnchorData {
}
export interface ToJSContext {
anchors: Map;
+ /** Cached anchor and alias nodes in the order they occur in the document */
+ aliasResolveCache?: Node[];
doc: Document;
keep: boolean;
mapAsMap: boolean;
diff --git a/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/parse/parser.js b/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/parse/parser.js
index 0e7caa6..d66ee5b 100644
--- a/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/parse/parser.js
+++ b/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/parse/parser.js
@@ -1,6 +1,6 @@
'use strict';
-var node_process = require('node:process');
+var node_process = require('process');
var cst = require('./cst.js');
var lexer = require('./lexer.js');
@@ -673,7 +673,20 @@ class Parser {
default: {
const bv = this.startBlockValue(map);
if (bv) {
- if (atMapIndent && bv.type !== 'block-seq') {
+ if (bv.type === 'block-seq') {
+ if (!it.explicitKey &&
+ it.sep &&
+ !includesToken(it.sep, 'newline')) {
+ yield* this.pop({
+ type: 'error',
+ offset: this.offset,
+ message: 'Unexpected block-seq-ind on same line with key',
+ source: this.source
+ });
+ return;
+ }
+ }
+ else if (atMapIndent) {
map.items.push({ start });
}
this.stack.push(bv);
diff --git a/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/schema/yaml-1.1/binary.js b/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/schema/yaml-1.1/binary.js
index df78b64..e529d74 100644
--- a/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/schema/yaml-1.1/binary.js
+++ b/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/schema/yaml-1.1/binary.js
@@ -1,6 +1,6 @@
'use strict';
-var node_buffer = require('node:buffer');
+var node_buffer = require('buffer');
var Scalar = require('../../nodes/Scalar.js');
var stringifyString = require('../../stringify/stringifyString.js');
@@ -34,6 +34,8 @@ const binary = {
}
},
stringify({ comment, type, value }, ctx, onComment, onChompKeep) {
+ if (!value)
+ return '';
const buf = value; // checked earlier by binary.identify()
let str;
if (typeof node_buffer.Buffer === 'function') {
@@ -51,8 +53,7 @@ const binary = {
else {
throw new Error('This environment does not support writing binary tags; either Buffer or btoa is required');
}
- if (!type)
- type = Scalar.Scalar.BLOCK_LITERAL;
+ type ?? (type = Scalar.Scalar.BLOCK_LITERAL);
if (type !== Scalar.Scalar.QUOTE_DOUBLE) {
const lineWidth = Math.max(ctx.options.lineWidth - ctx.indent.length, ctx.options.minContentWidth);
const n = Math.ceil(str.length / lineWidth);
diff --git a/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/schema/yaml-1.1/timestamp.js b/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/schema/yaml-1.1/timestamp.js
index 7163570..982fd06 100644
--- a/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/schema/yaml-1.1/timestamp.js
+++ b/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/schema/yaml-1.1/timestamp.js
@@ -97,7 +97,7 @@ const timestamp = {
}
return new Date(date);
},
- stringify: ({ value }) => value.toISOString().replace(/(T00:00:00)?\.000Z$/, '')
+ stringify: ({ value }) => value?.toISOString().replace(/(T00:00:00)?\.000Z$/, '') ?? ''
};
exports.floatTime = floatTime;
diff --git a/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/stringify/stringify.js b/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/stringify/stringify.js
index e10c08a..e6cc402 100644
--- a/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/stringify/stringify.js
+++ b/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/stringify/stringify.js
@@ -70,7 +70,7 @@ function getTagObject(tags, item) {
tagObj = tags.find(t => t.nodeClass && obj instanceof t.nodeClass);
}
if (!tagObj) {
- const name = obj?.constructor?.name ?? typeof obj;
+ const name = obj?.constructor?.name ?? (obj === null ? 'null' : typeof obj);
throw new Error(`Tag not resolved for ${name} value`);
}
return tagObj;
@@ -85,7 +85,7 @@ function stringifyProps(node, tagObj, { anchors: anchors$1, doc }) {
anchors$1.add(anchor);
props.push(`&${anchor}`);
}
- const tag = node.tag ? node.tag : tagObj.default ? null : tagObj.tag;
+ const tag = node.tag ?? (tagObj.default ? null : tagObj.tag);
if (tag)
props.push(doc.directives.tagString(tag));
return props.join(' ');
@@ -111,8 +111,7 @@ function stringify(item, ctx, onComment, onChompKeep) {
const node = identity.isNode(item)
? item
: ctx.doc.createNode(item, { onTagObj: o => (tagObj = o) });
- if (!tagObj)
- tagObj = getTagObject(ctx.doc.schema.tags, node);
+ tagObj ?? (tagObj = getTagObject(ctx.doc.schema.tags, node));
const props = stringifyProps(node, tagObj, ctx);
if (props.length > 0)
ctx.indentAtStart = (ctx.indentAtStart ?? 0) + props.length + 1;
diff --git a/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/stringify/stringifyString.js b/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/stringify/stringifyString.js
index 67252ce..2caadc6 100644
--- a/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/stringify/stringifyString.js
+++ b/.github/actions/prepare-dynamic-steps/node_modules/yaml/dist/stringify/stringifyString.js
@@ -161,7 +161,7 @@ function blockString({ comment, type, value }, ctx, onComment, onChompKeep) {
const { blockQuote, commentString, lineWidth } = ctx.options;
// 1. Block can't end in whitespace unless the last line is non-empty.
// 2. Strings consisting of only whitespace are best rendered explicitly.
- if (!blockQuote || /\n[\t ]+$/.test(value) || /^\s*$/.test(value)) {
+ if (!blockQuote || /\n[\t ]+$/.test(value)) {
return quotedString(value, ctx);
}
const indent = ctx.indent ||
@@ -255,10 +255,9 @@ function plainString(item, ctx, onComment, onChompKeep) {
(inFlow && /[[\]{},]/.test(value))) {
return quotedString(value, ctx);
}
- if (!value ||
- /^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(value)) {
+ if (/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(value)) {
// not allowed:
- // - empty string, '-' or '?'
+ // - '-' or '?'
// - start with an indicator character (except [?:-]) or /[?-] /
// - '\n ', ': ' or ' \n' anywhere
// - '#' not preceded by a non-space char
diff --git a/.github/actions/prepare-dynamic-steps/node_modules/yaml/package.json b/.github/actions/prepare-dynamic-steps/node_modules/yaml/package.json
index b7fbff4..1c43f12 100644
--- a/.github/actions/prepare-dynamic-steps/node_modules/yaml/package.json
+++ b/.github/actions/prepare-dynamic-steps/node_modules/yaml/package.json
@@ -1,6 +1,6 @@
{
"name": "yaml",
- "version": "2.7.0",
+ "version": "2.8.1",
"license": "ISC",
"author": "Eemeli Aro ",
"repository": "github:eemeli/yaml",
@@ -83,6 +83,7 @@
"eslint-config-prettier": "^9.0.0",
"fast-check": "^2.12.0",
"jest": "^29.0.1",
+ "jest-resolve": "^29.7.0",
"jest-ts-webcompat-resolver": "^1.0.0",
"prettier": "^3.0.2",
"rollup": "^4.12.0",
@@ -91,6 +92,6 @@
"typescript-eslint": "^8.4.0"
},
"engines": {
- "node": ">= 14"
+ "node": ">= 14.6"
}
}
diff --git a/.github/actions/prepare-dynamic-steps/npm-shrinkwrap.json b/.github/actions/prepare-dynamic-steps/npm-shrinkwrap.json
index 8a83280..134a5c3 100644
--- a/.github/actions/prepare-dynamic-steps/npm-shrinkwrap.json
+++ b/.github/actions/prepare-dynamic-steps/npm-shrinkwrap.json
@@ -13,8 +13,8 @@
"yaml": "^2.0.0"
},
"engines": {
- "node": "^20",
- "npm": "^10"
+ "node": "^24",
+ "npm": "^11"
}
},
"node_modules/@actions/core": {
@@ -71,9 +71,9 @@
}
},
"node_modules/undici": {
- "version": "5.28.5",
- "resolved": "https://registry.npmjs.org/undici/-/undici-5.28.5.tgz",
- "integrity": "sha512-zICwjrDrcrUE0pyyJc1I2QzBkLM8FINsgOrt6WjA+BgajVq9Nxu2PbFFXUrAggLfDXlZGZBVZYw7WNV5KiBiBA==",
+ "version": "5.29.0",
+ "resolved": "https://registry.npmjs.org/undici/-/undici-5.29.0.tgz",
+ "integrity": "sha512-raqeBD6NQK4SkWhQzeYKd1KmIG6dllBOTt55Rmkt4HtI9mwdWtJljnrXjAFUBLTSN67HWrOIZ3EPF4kjUw80Bg==",
"license": "MIT",
"dependencies": {
"@fastify/busboy": "^2.0.0"
@@ -83,15 +83,15 @@
}
},
"node_modules/yaml": {
- "version": "2.7.0",
- "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.7.0.tgz",
- "integrity": "sha512-+hSoy/QHluxmC9kCIJyL/uyFmLmc+e5CFR5Wa+bpIhIj85LVb9ZH2nVnqrHoSvKogwODv0ClqZkmiSSaIH5LTA==",
+ "version": "2.8.1",
+ "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.8.1.tgz",
+ "integrity": "sha512-lcYcMxX2PO9XMGvAJkJ3OsNMw+/7FKes7/hgerGUYWIoWu5j/+YQqcZr5JnPZWzOsEBgMbSbiSTn/dv/69Mkpw==",
"license": "ISC",
"bin": {
"yaml": "bin.mjs"
},
"engines": {
- "node": ">= 14"
+ "node": ">= 14.6"
}
}
}
diff --git a/.github/actions/prepare-dynamic-steps/package.json b/.github/actions/prepare-dynamic-steps/package.json
index cfac59e..c18cd84 100644
--- a/.github/actions/prepare-dynamic-steps/package.json
+++ b/.github/actions/prepare-dynamic-steps/package.json
@@ -13,8 +13,8 @@
"author": "@pkgjs",
"license": "MIT",
"engines": {
- "node": "^20",
- "npm": "^10 || ^11"
+ "node": "^24",
+ "npm": "^11"
},
"dependencies": {
"@actions/core": "^1.6.0",
diff --git a/.github/actions/prepare-node-test-matrix-action/.nvmrc b/.github/actions/prepare-node-test-matrix-action/.nvmrc
index 209e3ef..a45fd52 100644
--- a/.github/actions/prepare-node-test-matrix-action/.nvmrc
+++ b/.github/actions/prepare-node-test-matrix-action/.nvmrc
@@ -1 +1 @@
-20
+24
diff --git a/.github/actions/prepare-node-test-matrix-action/action.yaml b/.github/actions/prepare-node-test-matrix-action/action.yaml
index 753e31b..181d527 100644
--- a/.github/actions/prepare-node-test-matrix-action/action.yaml
+++ b/.github/actions/prepare-node-test-matrix-action/action.yaml
@@ -3,7 +3,7 @@ name: Node.js test matrix generator action
description: Returns an array of Node.js major versions based on an upgrade policy and package.json
runs:
- using: node20
+ using: node24
main: index.js
inputs:
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/.package-lock.json b/.github/actions/prepare-node-test-matrix-action/node_modules/.package-lock.json
index 492bd91..697f3cd 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/.package-lock.json
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/.package-lock.json
@@ -49,9 +49,9 @@
}
},
"node_modules/semver": {
- "version": "7.6.3",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz",
- "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==",
+ "version": "7.7.3",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz",
+ "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==",
"license": "ISC",
"bin": {
"semver": "bin/semver.js"
@@ -70,9 +70,9 @@
}
},
"node_modules/undici": {
- "version": "5.28.5",
- "resolved": "https://registry.npmjs.org/undici/-/undici-5.28.5.tgz",
- "integrity": "sha512-zICwjrDrcrUE0pyyJc1I2QzBkLM8FINsgOrt6WjA+BgajVq9Nxu2PbFFXUrAggLfDXlZGZBVZYw7WNV5KiBiBA==",
+ "version": "5.29.0",
+ "resolved": "https://registry.npmjs.org/undici/-/undici-5.29.0.tgz",
+ "integrity": "sha512-raqeBD6NQK4SkWhQzeYKd1KmIG6dllBOTt55Rmkt4HtI9mwdWtJljnrXjAFUBLTSN67HWrOIZ3EPF4kjUw80Bg==",
"license": "MIT",
"dependencies": {
"@fastify/busboy": "^2.0.0"
@@ -82,15 +82,15 @@
}
},
"node_modules/yaml": {
- "version": "2.7.0",
- "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.7.0.tgz",
- "integrity": "sha512-+hSoy/QHluxmC9kCIJyL/uyFmLmc+e5CFR5Wa+bpIhIj85LVb9ZH2nVnqrHoSvKogwODv0ClqZkmiSSaIH5LTA==",
+ "version": "2.8.1",
+ "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.8.1.tgz",
+ "integrity": "sha512-lcYcMxX2PO9XMGvAJkJ3OsNMw+/7FKes7/hgerGUYWIoWu5j/+YQqcZr5JnPZWzOsEBgMbSbiSTn/dv/69Mkpw==",
"license": "ISC",
"bin": {
"yaml": "bin.mjs"
},
"engines": {
- "node": ">= 14"
+ "node": ">= 14.6"
}
}
}
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/README.md b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/README.md
index ede7b7d..e952215 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/README.md
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/README.md
@@ -100,7 +100,7 @@ Options:
-i --increment []
Increment a version by the specified level. Level can
be one of: major, minor, patch, premajor, preminor,
- prepatch, or prerelease. Default level is 'patch'.
+ prepatch, prerelease, or release. Default level is 'patch'.
Only one version may be specified.
--preid
@@ -141,6 +141,8 @@ A "version" is described by the `v2.0.0` specification found at
.
A leading `"="` or `"v"` character is stripped off and ignored.
+Support for stripping a leading "v" is kept for compatibility with `v1.0.0` of the SemVer
+specification but should not be used anymore.
## Ranges
@@ -237,6 +239,13 @@ $ semver 1.2.4-beta.0 -i prerelease
1.2.4-beta.1
```
+To get out of the prerelease phase, use the `release` option:
+
+```bash
+$ semver 1.2.4-beta.1 -i release
+1.2.4
+```
+
#### Prerelease Identifier Base
The method `.inc` takes an optional parameter 'identifierBase' string
@@ -415,10 +424,10 @@ Strict-mode Comparators and Ranges will be strict about the SemVer
strings that they parse.
* `valid(v)`: Return the parsed version, or null if it's not valid.
-* `inc(v, release, options, identifier, identifierBase)`:
+* `inc(v, releaseType, options, identifier, identifierBase)`:
Return the version incremented by the release
type (`major`, `premajor`, `minor`, `preminor`, `patch`,
- `prepatch`, or `prerelease`), or null if it's not valid
+ `prepatch`, `prerelease`, or `release`), or null if it's not valid
* `premajor` in one call will bump the version up to the next major
version and down to a prerelease of that major version.
`preminor`, and `prepatch` work the same way.
@@ -426,6 +435,7 @@ strings that they parse.
same as `prepatch`. It increments the patch version and then makes a
prerelease. If the input version is already a prerelease it simply
increments it.
+ * `release` will remove any prerelease part of the version.
* `identifier` can be used to prefix `premajor`, `preminor`,
`prepatch`, or `prerelease` version increments. `identifierBase`
is the base to be used for the `prerelease` identifier.
@@ -477,7 +487,7 @@ strings that they parse.
### Ranges
-* `validRange(range)`: Return the valid range or null if it's not valid
+* `validRange(range)`: Return the valid range or null if it's not valid.
* `satisfies(version, range)`: Return true if the version satisfies the
range.
* `maxSatisfying(versions, range)`: Return the highest version in the list
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/bin/semver.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/bin/semver.js
index f62b566..dbb1bf5 100755
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/bin/semver.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/bin/semver.js
@@ -3,6 +3,8 @@
// Exits successfully and prints matching version(s) if
// any supplied version is valid and passes all tests.
+'use strict'
+
const argv = process.argv.slice(2)
let versions = []
@@ -61,6 +63,7 @@ const main = () => {
switch (argv[0]) {
case 'major': case 'minor': case 'patch': case 'prerelease':
case 'premajor': case 'preminor': case 'prepatch':
+ case 'release':
inc = argv.shift()
break
default:
@@ -149,7 +152,7 @@ Options:
-i --increment []
Increment a version by the specified level. Level can
be one of: major, minor, patch, premajor, preminor,
- prepatch, or prerelease. Default level is 'patch'.
+ prepatch, prerelease, or release. Default level is 'patch'.
Only one version may be specified.
--preid
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/classes/comparator.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/classes/comparator.js
index 3d39c0e..647c1f0 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/classes/comparator.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/classes/comparator.js
@@ -1,3 +1,5 @@
+'use strict'
+
const ANY = Symbol('SemVer ANY')
// hoisted class for cyclic dependency
class Comparator {
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/classes/index.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/classes/index.js
index 5e3f5c9..91c24ec 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/classes/index.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/classes/index.js
@@ -1,3 +1,5 @@
+'use strict'
+
module.exports = {
SemVer: require('./semver.js'),
Range: require('./range.js'),
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/classes/range.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/classes/range.js
index ceee231..94629ce 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/classes/range.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/classes/range.js
@@ -1,3 +1,5 @@
+'use strict'
+
const SPACE_CHARACTERS = /\s+/g
// hoisted class for cyclic dependency
@@ -253,6 +255,7 @@ const isSatisfiable = (comparators, options) => {
// already replaced the hyphen ranges
// turn into a set of JUST comparators.
const parseComparator = (comp, options) => {
+ comp = comp.replace(re[t.BUILD], '')
debug('comp', comp, options)
comp = replaceCarets(comp, options)
debug('caret', comp)
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/classes/semver.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/classes/semver.js
index 13e66ce..92254be 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/classes/semver.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/classes/semver.js
@@ -1,3 +1,5 @@
+'use strict'
+
const debug = require('../internal/debug')
const { MAX_LENGTH, MAX_SAFE_INTEGER } = require('../internal/constants')
const { safeRe: re, t } = require('../internal/re')
@@ -10,7 +12,7 @@ class SemVer {
if (version instanceof SemVer) {
if (version.loose === !!options.loose &&
- version.includePrerelease === !!options.includePrerelease) {
+ version.includePrerelease === !!options.includePrerelease) {
return version
} else {
version = version.version
@@ -109,11 +111,25 @@ class SemVer {
other = new SemVer(other, this.options)
}
- return (
- compareIdentifiers(this.major, other.major) ||
- compareIdentifiers(this.minor, other.minor) ||
- compareIdentifiers(this.patch, other.patch)
- )
+ if (this.major < other.major) {
+ return -1
+ }
+ if (this.major > other.major) {
+ return 1
+ }
+ if (this.minor < other.minor) {
+ return -1
+ }
+ if (this.minor > other.minor) {
+ return 1
+ }
+ if (this.patch < other.patch) {
+ return -1
+ }
+ if (this.patch > other.patch) {
+ return 1
+ }
+ return 0
}
comparePre (other) {
@@ -176,6 +192,19 @@ class SemVer {
// preminor will bump the version up to the next minor release, and immediately
// down to pre-release. premajor and prepatch work the same way.
inc (release, identifier, identifierBase) {
+ if (release.startsWith('pre')) {
+ if (!identifier && identifierBase === false) {
+ throw new Error('invalid increment argument: identifier is empty')
+ }
+ // Avoid an invalid semver results
+ if (identifier) {
+ const match = `-${identifier}`.match(this.options.loose ? re[t.PRERELEASELOOSE] : re[t.PRERELEASE])
+ if (!match || match[1] !== identifier) {
+ throw new Error(`invalid identifier: ${identifier}`)
+ }
+ }
+ }
+
switch (release) {
case 'premajor':
this.prerelease.length = 0
@@ -206,6 +235,12 @@ class SemVer {
}
this.inc('pre', identifier, identifierBase)
break
+ case 'release':
+ if (this.prerelease.length === 0) {
+ throw new Error(`version ${this.raw} is not a prerelease`)
+ }
+ this.prerelease.length = 0
+ break
case 'major':
// If this is a pre-major version, bump up to the same major version.
@@ -249,10 +284,6 @@ class SemVer {
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) {
this.prerelease = [base]
} else {
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/clean.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/clean.js
index 811fe6b..79703d6 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/clean.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/clean.js
@@ -1,3 +1,5 @@
+'use strict'
+
const parse = require('./parse')
const clean = (version, options) => {
const s = parse(version.trim().replace(/^[=v]+/, ''), options)
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/cmp.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/cmp.js
index 4011909..77487dc 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/cmp.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/cmp.js
@@ -1,3 +1,5 @@
+'use strict'
+
const eq = require('./eq')
const neq = require('./neq')
const gt = require('./gt')
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/coerce.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/coerce.js
index b378dce..cfe0275 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/coerce.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/coerce.js
@@ -1,3 +1,5 @@
+'use strict'
+
const SemVer = require('../classes/semver')
const parse = require('./parse')
const { safeRe: re, t } = require('../internal/re')
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/compare-build.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/compare-build.js
index 9eb881b..99157cf 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/compare-build.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/compare-build.js
@@ -1,3 +1,5 @@
+'use strict'
+
const SemVer = require('../classes/semver')
const compareBuild = (a, b, loose) => {
const versionA = new SemVer(a, loose)
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/compare-loose.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/compare-loose.js
index 4881fbe..7531634 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/compare-loose.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/compare-loose.js
@@ -1,3 +1,5 @@
+'use strict'
+
const compare = require('./compare')
const compareLoose = (a, b) => compare(a, b, true)
module.exports = compareLoose
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/compare.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/compare.js
index 748b7af..63d8090 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/compare.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/compare.js
@@ -1,3 +1,5 @@
+'use strict'
+
const SemVer = require('../classes/semver')
const compare = (a, b, loose) =>
new SemVer(a, loose).compare(new SemVer(b, loose))
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/diff.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/diff.js
index fc224e3..04e064e 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/diff.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/diff.js
@@ -1,3 +1,5 @@
+'use strict'
+
const parse = require('./parse.js')
const diff = (version1, version2) => {
@@ -27,20 +29,13 @@ const diff = (version1, version2) => {
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
+ // If the main part has no difference
+ if (lowVersion.compareMain(highVersion) === 0) {
+ if (lowVersion.minor && !lowVersion.patch) {
+ return 'minor'
+ }
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
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/eq.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/eq.js
index 271fed9..5f0eead 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/eq.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/eq.js
@@ -1,3 +1,5 @@
+'use strict'
+
const compare = require('./compare')
const eq = (a, b, loose) => compare(a, b, loose) === 0
module.exports = eq
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/gt.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/gt.js
index d9b2156..84a57dd 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/gt.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/gt.js
@@ -1,3 +1,5 @@
+'use strict'
+
const compare = require('./compare')
const gt = (a, b, loose) => compare(a, b, loose) > 0
module.exports = gt
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/gte.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/gte.js
index 5aeaa63..7c52bdf 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/gte.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/gte.js
@@ -1,3 +1,5 @@
+'use strict'
+
const compare = require('./compare')
const gte = (a, b, loose) => compare(a, b, loose) >= 0
module.exports = gte
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/inc.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/inc.js
index 7670b1b..ff999e9 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/inc.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/inc.js
@@ -1,3 +1,5 @@
+'use strict'
+
const SemVer = require('../classes/semver')
const inc = (version, release, options, identifier, identifierBase) => {
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/lt.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/lt.js
index b440ab7..2fb32a0 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/lt.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/lt.js
@@ -1,3 +1,5 @@
+'use strict'
+
const compare = require('./compare')
const lt = (a, b, loose) => compare(a, b, loose) < 0
module.exports = lt
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/lte.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/lte.js
index 6dcc956..da9ee8f 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/lte.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/lte.js
@@ -1,3 +1,5 @@
+'use strict'
+
const compare = require('./compare')
const lte = (a, b, loose) => compare(a, b, loose) <= 0
module.exports = lte
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/major.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/major.js
index 4283165..e6d08dc 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/major.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/major.js
@@ -1,3 +1,5 @@
+'use strict'
+
const SemVer = require('../classes/semver')
const major = (a, loose) => new SemVer(a, loose).major
module.exports = major
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/minor.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/minor.js
index 57b3455..9e70ffd 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/minor.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/minor.js
@@ -1,3 +1,5 @@
+'use strict'
+
const SemVer = require('../classes/semver')
const minor = (a, loose) => new SemVer(a, loose).minor
module.exports = minor
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/neq.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/neq.js
index f944c01..84326b7 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/neq.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/neq.js
@@ -1,3 +1,5 @@
+'use strict'
+
const compare = require('./compare')
const neq = (a, b, loose) => compare(a, b, loose) !== 0
module.exports = neq
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/parse.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/parse.js
index 459b3b1..d544d33 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/parse.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/parse.js
@@ -1,3 +1,5 @@
+'use strict'
+
const SemVer = require('../classes/semver')
const parse = (version, options, throwErrors = false) => {
if (version instanceof SemVer) {
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/patch.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/patch.js
index 63afca2..7675162 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/patch.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/patch.js
@@ -1,3 +1,5 @@
+'use strict'
+
const SemVer = require('../classes/semver')
const patch = (a, loose) => new SemVer(a, loose).patch
module.exports = patch
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/prerelease.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/prerelease.js
index 06aa132..b8fe1db 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/prerelease.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/prerelease.js
@@ -1,3 +1,5 @@
+'use strict'
+
const parse = require('./parse')
const prerelease = (version, options) => {
const parsed = parse(version, options)
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/rcompare.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/rcompare.js
index 0ac509e..8e1c222 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/rcompare.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/rcompare.js
@@ -1,3 +1,5 @@
+'use strict'
+
const compare = require('./compare')
const rcompare = (a, b, loose) => compare(b, a, loose)
module.exports = rcompare
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/rsort.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/rsort.js
index 82404c5..5d3d200 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/rsort.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/rsort.js
@@ -1,3 +1,5 @@
+'use strict'
+
const compareBuild = require('./compare-build')
const rsort = (list, loose) => list.sort((a, b) => compareBuild(b, a, loose))
module.exports = rsort
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/satisfies.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/satisfies.js
index 50af1c1..a0264a2 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/satisfies.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/satisfies.js
@@ -1,3 +1,5 @@
+'use strict'
+
const Range = require('../classes/range')
const satisfies = (version, range, options) => {
try {
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/sort.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/sort.js
index 4d10917..edb24b1 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/sort.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/sort.js
@@ -1,3 +1,5 @@
+'use strict'
+
const compareBuild = require('./compare-build')
const sort = (list, loose) => list.sort((a, b) => compareBuild(a, b, loose))
module.exports = sort
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/valid.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/valid.js
index f27bae1..0db67ed 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/valid.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/functions/valid.js
@@ -1,3 +1,5 @@
+'use strict'
+
const parse = require('./parse')
const valid = (version, options) => {
const v = parse(version, options)
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/index.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/index.js
index 86d42ac..285662a 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/index.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/index.js
@@ -1,3 +1,5 @@
+'use strict'
+
// just pre-load all the stuff that index.js lazily exports
const internalRe = require('./internal/re')
const constants = require('./internal/constants')
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/internal/constants.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/internal/constants.js
index 94be1c5..6d1db91 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/internal/constants.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/internal/constants.js
@@ -1,3 +1,5 @@
+'use strict'
+
// Note: this is the semver.org version of the spec that it implements
// Not necessarily the package version of this code.
const SEMVER_SPEC_VERSION = '2.0.0'
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/internal/debug.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/internal/debug.js
index 1c00e13..20d1e9d 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/internal/debug.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/internal/debug.js
@@ -1,3 +1,5 @@
+'use strict'
+
const debug = (
typeof process === 'object' &&
process.env &&
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/internal/identifiers.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/internal/identifiers.js
index e612d0a..d053472 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/internal/identifiers.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/internal/identifiers.js
@@ -1,5 +1,11 @@
+'use strict'
+
const numeric = /^[0-9]+$/
const compareIdentifiers = (a, b) => {
+ if (typeof a === 'number' && typeof b === 'number') {
+ return a === b ? 0 : a < b ? -1 : 1
+ }
+
const anum = numeric.test(a)
const bnum = numeric.test(b)
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/internal/lrucache.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/internal/lrucache.js
index 6d89ec9..b8bf526 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/internal/lrucache.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/internal/lrucache.js
@@ -1,3 +1,5 @@
+'use strict'
+
class LRUCache {
constructor () {
this.max = 1000
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/internal/parse-options.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/internal/parse-options.js
index 10d64ce..5295454 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/internal/parse-options.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/internal/parse-options.js
@@ -1,3 +1,5 @@
+'use strict'
+
// parse out just the options we care about
const looseOption = Object.freeze({ loose: true })
const emptyOpts = Object.freeze({ })
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/internal/re.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/internal/re.js
index fd8920e..4758c58 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/internal/re.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/internal/re.js
@@ -1,3 +1,5 @@
+'use strict'
+
const {
MAX_SAFE_COMPONENT_LENGTH,
MAX_SAFE_BUILD_LENGTH,
@@ -10,6 +12,7 @@ exports = module.exports = {}
const re = exports.re = []
const safeRe = exports.safeRe = []
const src = exports.src = []
+const safeSrc = exports.safeSrc = []
const t = exports.t = {}
let R = 0
@@ -42,6 +45,7 @@ const createToken = (name, value, isGlobal) => {
debug(name, index, value)
t[name] = index
src[index] = value
+ safeSrc[index] = safe
re[index] = new RegExp(value, isGlobal ? 'g' : undefined)
safeRe[index] = new RegExp(safe, isGlobal ? 'g' : undefined)
}
@@ -74,12 +78,14 @@ createToken('MAINVERSIONLOOSE', `(${src[t.NUMERICIDENTIFIERLOOSE]})\\.` +
// ## Pre-release Version Identifier
// A numeric identifier, or a non-numeric identifier.
+// Non-numberic identifiers include numberic identifiers but can be longer.
+// Therefore non-numberic identifiers must go first.
-createToken('PRERELEASEIDENTIFIER', `(?:${src[t.NUMERICIDENTIFIER]
-}|${src[t.NONNUMERICIDENTIFIER]})`)
+createToken('PRERELEASEIDENTIFIER', `(?:${src[t.NONNUMERICIDENTIFIER]
+}|${src[t.NUMERICIDENTIFIER]})`)
-createToken('PRERELEASEIDENTIFIERLOOSE', `(?:${src[t.NUMERICIDENTIFIERLOOSE]
-}|${src[t.NONNUMERICIDENTIFIER]})`)
+createToken('PRERELEASEIDENTIFIERLOOSE', `(?:${src[t.NONNUMERICIDENTIFIER]
+}|${src[t.NUMERICIDENTIFIERLOOSE]})`)
// ## Pre-release Version
// Hyphen, followed by one or more dot-separated pre-release version
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/package.json b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/package.json
index 663d370..2b8cada 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/package.json
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/package.json
@@ -1,20 +1,21 @@
{
"name": "semver",
- "version": "7.6.3",
+ "version": "7.7.3",
"description": "The semantic version parser used by npm.",
"main": "index.js",
"scripts": {
"test": "tap",
"snap": "tap",
- "lint": "eslint \"**/*.{js,cjs,ts,mjs,jsx,tsx}\"",
+ "lint": "npm run eslint",
"postlint": "template-oss-check",
- "lintfix": "npm run lint -- --fix",
+ "lintfix": "npm run eslint -- --fix",
"posttest": "npm run lint",
- "template-oss-apply": "template-oss-apply --force"
+ "template-oss-apply": "template-oss-apply --force",
+ "eslint": "eslint \"**/*.{js,cjs,ts,mjs,jsx,tsx}\""
},
"devDependencies": {
- "@npmcli/eslint-config": "^4.0.0",
- "@npmcli/template-oss": "4.22.0",
+ "@npmcli/eslint-config": "^5.0.0",
+ "@npmcli/template-oss": "4.25.1",
"benchmark": "^2.1.4",
"tap": "^16.0.0"
},
@@ -51,7 +52,7 @@
"author": "GitHub Inc.",
"templateOSS": {
"//@npmcli/template-oss": "This file is partially managed by @npmcli/template-oss. Edits may be overwritten.",
- "version": "4.22.0",
+ "version": "4.25.1",
"engines": ">=10",
"distPaths": [
"classes/",
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/preload.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/preload.js
index 947cd4f..e6c47b9 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/preload.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/preload.js
@@ -1,2 +1,4 @@
+'use strict'
+
// XXX remove in v8 or beyond
module.exports = require('./index.js')
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/ranges/gtr.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/ranges/gtr.js
index db7e355..0e7601f 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/ranges/gtr.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/ranges/gtr.js
@@ -1,3 +1,5 @@
+'use strict'
+
// Determine if version is greater than all the versions possible in the range.
const outside = require('./outside')
const gtr = (version, range, options) => outside(version, range, '>', options)
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/ranges/intersects.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/ranges/intersects.js
index e0e9b7c..917be7e 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/ranges/intersects.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/ranges/intersects.js
@@ -1,3 +1,5 @@
+'use strict'
+
const Range = require('../classes/range')
const intersects = (r1, r2, options) => {
r1 = new Range(r1, options)
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/ranges/ltr.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/ranges/ltr.js
index 528a885..aa5e568 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/ranges/ltr.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/ranges/ltr.js
@@ -1,3 +1,5 @@
+'use strict'
+
const outside = require('./outside')
// Determine if version is less than all the versions possible in the range
const ltr = (version, range, options) => outside(version, range, '<', options)
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/ranges/max-satisfying.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/ranges/max-satisfying.js
index 6e3d993..01fe5ae 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/ranges/max-satisfying.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/ranges/max-satisfying.js
@@ -1,3 +1,5 @@
+'use strict'
+
const SemVer = require('../classes/semver')
const Range = require('../classes/range')
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/ranges/min-satisfying.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/ranges/min-satisfying.js
index 9b60974..af89c8e 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/ranges/min-satisfying.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/ranges/min-satisfying.js
@@ -1,3 +1,5 @@
+'use strict'
+
const SemVer = require('../classes/semver')
const Range = require('../classes/range')
const minSatisfying = (versions, range, options) => {
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/ranges/min-version.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/ranges/min-version.js
index 350e1f7..09a65aa 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/ranges/min-version.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/ranges/min-version.js
@@ -1,3 +1,5 @@
+'use strict'
+
const SemVer = require('../classes/semver')
const Range = require('../classes/range')
const gt = require('../functions/gt')
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/ranges/outside.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/ranges/outside.js
index ae99b10..ca74421 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/ranges/outside.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/ranges/outside.js
@@ -1,3 +1,5 @@
+'use strict'
+
const SemVer = require('../classes/semver')
const Comparator = require('../classes/comparator')
const { ANY } = Comparator
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/ranges/simplify.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/ranges/simplify.js
index 618d5b6..262732e 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/ranges/simplify.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/ranges/simplify.js
@@ -1,3 +1,5 @@
+'use strict'
+
// given a set of versions and a range, create a "simplified" range
// that includes the same versions that the original range does
// If the original range is shorter than the simplified one, return that.
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/ranges/subset.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/ranges/subset.js
index 1e5c268..2c49aef 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/ranges/subset.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/ranges/subset.js
@@ -1,3 +1,5 @@
+'use strict'
+
const Range = require('../classes/range.js')
const Comparator = require('../classes/comparator.js')
const { ANY } = Comparator
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/ranges/to-comparators.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/ranges/to-comparators.js
index 6c8bc7e..5be2519 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/ranges/to-comparators.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/ranges/to-comparators.js
@@ -1,3 +1,5 @@
+'use strict'
+
const Range = require('../classes/range')
// Mostly just for testing and legacy API reasons
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/ranges/valid.js b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/ranges/valid.js
index 365f356..cc6b0e9 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/semver/ranges/valid.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/semver/ranges/valid.js
@@ -1,3 +1,5 @@
+'use strict'
+
const Range = require('../classes/range')
const validRange = (range, options) => {
try {
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/undici/lib/cookies/index.js b/.github/actions/prepare-node-test-matrix-action/node_modules/undici/lib/cookies/index.js
index c9c1f28..f867b19 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/undici/lib/cookies/index.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/undici/lib/cookies/index.js
@@ -1,7 +1,7 @@
'use strict'
const { parseSetCookie } = require('./parse')
-const { stringify, getHeadersList } = require('./util')
+const { stringify } = require('./util')
const { webidl } = require('../fetch/webidl')
const { Headers } = require('../fetch/headers')
@@ -77,14 +77,13 @@ function getSetCookies (headers) {
webidl.brandCheck(headers, Headers, { strict: false })
- const cookies = getHeadersList(headers).cookies
+ const cookies = headers.getSetCookie()
if (!cookies) {
return []
}
- // In older versions of undici, cookies is a list of name:value.
- return cookies.map((pair) => parseSetCookie(Array.isArray(pair) ? pair[1] : pair))
+ return cookies.map((pair) => parseSetCookie(pair))
}
/**
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/undici/lib/cookies/util.js b/.github/actions/prepare-node-test-matrix-action/node_modules/undici/lib/cookies/util.js
index 2290329..be3ccbe 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/undici/lib/cookies/util.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/undici/lib/cookies/util.js
@@ -1,8 +1,9 @@
'use strict'
-const assert = require('assert')
-const { kHeadersList } = require('../core/symbols')
-
+/**
+ * @param {string} value
+ * @returns {boolean}
+ */
function isCTLExcludingHtab (value) {
if (value.length === 0) {
return false
@@ -263,29 +264,11 @@ function stringify (cookie) {
return out.join('; ')
}
-let kHeadersListNode
-
-function getHeadersList (headers) {
- if (headers[kHeadersList]) {
- return headers[kHeadersList]
- }
-
- if (!kHeadersListNode) {
- kHeadersListNode = Object.getOwnPropertySymbols(headers).find(
- (symbol) => symbol.description === 'headers list'
- )
-
- assert(kHeadersListNode, 'Headers cannot be parsed')
- }
-
- const headersList = headers[kHeadersListNode]
- assert(headersList)
-
- return headersList
-}
-
module.exports = {
isCTLExcludingHtab,
- stringify,
- getHeadersList
+ validateCookieName,
+ validateCookiePath,
+ validateCookieValue,
+ toIMFDate,
+ stringify
}
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/undici/lib/fetch/headers.js b/.github/actions/prepare-node-test-matrix-action/node_modules/undici/lib/fetch/headers.js
index 2f1c0be..fcab732 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/undici/lib/fetch/headers.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/undici/lib/fetch/headers.js
@@ -10,6 +10,7 @@ const {
isValidHeaderName,
isValidHeaderValue
} = require('./util')
+const util = require('util')
const { webidl } = require('./webidl')
const assert = require('assert')
@@ -563,6 +564,9 @@ Object.defineProperties(Headers.prototype, {
[Symbol.toStringTag]: {
value: 'Headers',
configurable: true
+ },
+ [util.inspect.custom]: {
+ enumerable: false
}
})
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/undici/lib/pool.js b/.github/actions/prepare-node-test-matrix-action/node_modules/undici/lib/pool.js
index e3cd339..86b29d4 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/undici/lib/pool.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/undici/lib/pool.js
@@ -73,6 +73,20 @@ class Pool extends PoolBase {
? { ...options.interceptors }
: undefined
this[kFactory] = factory
+
+ this.on('connectionError', (origin, targets, error) => {
+ // If a connection error occurs, we remove the client from the pool,
+ // and emit a connectionError event. They will not be re-used.
+ // Fixes https://github.com/nodejs/undici/issues/3895
+ for (const target of targets) {
+ // Do not use kRemoveClient here, as it will close the client,
+ // but the client cannot be closed in this state.
+ const idx = this[kClients].indexOf(target)
+ if (idx !== -1) {
+ this[kClients].splice(idx, 1)
+ }
+ }
+ })
}
[kGetDispatcher] () {
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/undici/package.json b/.github/actions/prepare-node-test-matrix-action/node_modules/undici/package.json
index 0c6b71e..738688d 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/undici/package.json
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/undici/package.json
@@ -1,6 +1,6 @@
{
"name": "undici",
- "version": "5.28.5",
+ "version": "5.29.0",
"description": "An HTTP/1.1 client, written from scratch for Node.js",
"homepage": "https://undici.nodejs.org",
"bugs": {
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/README.md b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/README.md
index a5bdcba..1613c1d 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/README.md
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/README.md
@@ -20,34 +20,18 @@ This requirement may be updated between minor versions of the library.
For more information, see the project's documentation site: [**eemeli.org/yaml**](https://eemeli.org/yaml/)
+For build instructions and contribution guidelines, see [docs/CONTRIBUTING.md](docs/CONTRIBUTING.md).
+
To install:
```sh
npm install yaml
+# or
+deno add jsr:@eemeli/yaml
```
**Note:** These docs are for `yaml@2`. For v1, see the [v1.10.0 tag](https://github.com/eemeli/yaml/tree/v1.10.0) for the source and [eemeli.org/yaml/v1](https://eemeli.org/yaml/v1/) for the documentation.
-The development and maintenance of this library is [sponsored](https://github.com/sponsors/eemeli) by:
-
-
-
-
-
-
-
## API Overview
The API provided by `yaml` has three layers, depending on how deep you need to go: [Parse & Stringify](https://eemeli.org/yaml/#parse-amp-stringify), [Documents](https://eemeli.org/yaml/#documents), and the underlying [Lexer/Parser/Composer](https://eemeli.org/yaml/#parsing-yaml).
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/compose/compose-collection.js b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/compose/compose-collection.js
index b80fba2..5ecf796 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/compose/compose-collection.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/compose/compose-collection.js
@@ -64,8 +64,8 @@ function composeCollection(CN, ctx, token, props, onError) {
tag = kt;
}
else {
- if (kt?.collection) {
- onError(tagToken, 'BAD_COLLECTION_TYPE', `${kt.tag} used for ${expType} collection, but expects ${kt.collection}`, true);
+ if (kt) {
+ onError(tagToken, 'BAD_COLLECTION_TYPE', `${kt.tag} used for ${expType} collection, but expects ${kt.collection ?? 'scalar'}`, true);
}
else {
onError(tagToken, 'TAG_RESOLVE_FAILED', `Unresolved tag: ${tagName}`, true);
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/compose/resolve-props.js b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/compose/resolve-props.js
index b348b79..b6336e1 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/compose/resolve-props.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/compose/resolve-props.js
@@ -72,8 +72,7 @@ function resolveProps(tokens, { flow, indicator, next, offset, onError, parentIn
if (token.source.endsWith(':'))
onError(token.offset + token.source.length - 1, 'BAD_ALIAS', 'Anchor ending in : is ambiguous', true);
anchor = token;
- if (start === null)
- start = token.offset;
+ start ?? (start = token.offset);
atNewline = false;
hasSpace = false;
reqSpace = true;
@@ -82,8 +81,7 @@ function resolveProps(tokens, { flow, indicator, next, offset, onError, parentIn
if (tag)
onError(token, 'MULTIPLE_TAGS', 'A node can have at most one tag');
tag = token;
- if (start === null)
- start = token.offset;
+ start ?? (start = token.offset);
atNewline = false;
hasSpace = false;
reqSpace = true;
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/compose/util-empty-scalar-position.js b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/compose/util-empty-scalar-position.js
index ab6e0c9..26f238c 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/compose/util-empty-scalar-position.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/compose/util-empty-scalar-position.js
@@ -1,7 +1,6 @@
function emptyScalarPosition(offset, before, pos) {
if (before) {
- if (pos === null)
- pos = before.length;
+ pos ?? (pos = before.length);
for (let i = pos - 1; i >= 0; --i) {
let st = before[i];
switch (st.type) {
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/doc/anchors.js b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/doc/anchors.js
index 03c2442..64810d1 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/doc/anchors.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/doc/anchors.js
@@ -39,8 +39,7 @@ function createNodeAnchors(doc, prefix) {
return {
onAnchor: (source) => {
aliasObjects.push(source);
- if (!prevAnchors)
- prevAnchors = anchorNames(doc);
+ prevAnchors ?? (prevAnchors = anchorNames(doc));
const anchor = findNewAnchor(prefix, prevAnchors);
prevAnchors.add(anchor);
return anchor;
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/doc/createNode.js b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/doc/createNode.js
index 1392269..ddcc211 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/doc/createNode.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/doc/createNode.js
@@ -38,8 +38,7 @@ function createNode(value, tagName, ctx) {
if (aliasDuplicateObjects && value && typeof value === 'object') {
ref = sourceObjects.get(value);
if (ref) {
- if (!ref.anchor)
- ref.anchor = onAnchor(value);
+ ref.anchor ?? (ref.anchor = onAnchor(value));
return new Alias(ref.anchor);
}
else {
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/nodes/Alias.js b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/nodes/Alias.js
index 8e34f09..7a638ba 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/nodes/Alias.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/nodes/Alias.js
@@ -1,6 +1,6 @@
import { anchorIsValid } from '../doc/anchors.js';
import { visit } from '../visit.js';
-import { ALIAS, isAlias, isCollection, isPair } from './identity.js';
+import { ALIAS, isAlias, isCollection, isPair, hasAnchor } from './identity.js';
import { NodeBase } from './Node.js';
import { toJS } from './toJS.js';
@@ -18,23 +18,36 @@ class Alias extends NodeBase {
* Resolve the value of this alias within `doc`, finding the last
* instance of the `source` anchor before this node.
*/
- resolve(doc) {
+ resolve(doc, ctx) {
+ let nodes;
+ if (ctx?.aliasResolveCache) {
+ nodes = ctx.aliasResolveCache;
+ }
+ else {
+ nodes = [];
+ visit(doc, {
+ Node: (_key, node) => {
+ if (isAlias(node) || hasAnchor(node))
+ nodes.push(node);
+ }
+ });
+ if (ctx)
+ ctx.aliasResolveCache = nodes;
+ }
let found = undefined;
- visit(doc, {
- Node: (_key, node) => {
- if (node === this)
- return visit.BREAK;
- if (node.anchor === this.source)
- found = node;
- }
- });
+ for (const node of nodes) {
+ if (node === this)
+ break;
+ if (node.anchor === this.source)
+ found = node;
+ }
return found;
}
toJSON(_arg, ctx) {
if (!ctx)
return { source: this.source };
const { anchors, doc, maxAliasCount } = ctx;
- const source = this.resolve(doc);
+ const source = this.resolve(doc, ctx);
if (!source) {
const msg = `Unresolved alias (the anchor must be set before the alias): ${this.source}`;
throw new ReferenceError(msg);
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/nodes/YAMLMap.js b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/nodes/YAMLMap.js
index 5d88737..6c6a504 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/nodes/YAMLMap.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/nodes/YAMLMap.js
@@ -1,7 +1,7 @@
import { stringifyCollection } from '../stringify/stringifyCollection.js';
import { addPairToJSMap } from './addPairToJSMap.js';
import { Collection } from './Collection.js';
-import { isPair, isScalar, MAP } from './identity.js';
+import { MAP, isPair, isScalar } from './identity.js';
import { Pair, createPair } from './Pair.js';
import { isScalarValue } from './Scalar.js';
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/nodes/addPairToJSMap.js b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/nodes/addPairToJSMap.js
index 53f7858..8e671cb 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/nodes/addPairToJSMap.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/nodes/addPairToJSMap.js
@@ -37,6 +37,7 @@ function addPairToJSMap(ctx, map, { key, value }) {
function stringifyKey(key, jsKey, ctx) {
if (jsKey === null)
return '';
+ // eslint-disable-next-line @typescript-eslint/no-base-to-string
if (typeof jsKey !== 'object')
return String(jsKey);
if (isNode(key) && ctx?.doc) {
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/parse/parser.js b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/parse/parser.js
index 0cd7d1a..45a384a 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/parse/parser.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/parse/parser.js
@@ -668,7 +668,20 @@ class Parser {
default: {
const bv = this.startBlockValue(map);
if (bv) {
- if (atMapIndent && bv.type !== 'block-seq') {
+ if (bv.type === 'block-seq') {
+ if (!it.explicitKey &&
+ it.sep &&
+ !includesToken(it.sep, 'newline')) {
+ yield* this.pop({
+ type: 'error',
+ offset: this.offset,
+ message: 'Unexpected block-seq-ind on same line with key',
+ source: this.source
+ });
+ return;
+ }
+ }
+ else if (atMapIndent) {
map.items.push({ start });
}
this.stack.push(bv);
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/schema/tags.js b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/schema/tags.js
index ba52c35..5acd99f 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/schema/tags.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/schema/tags.js
@@ -3,8 +3,8 @@ import { nullTag } from './common/null.js';
import { seq } from './common/seq.js';
import { string } from './common/string.js';
import { boolTag } from './core/bool.js';
-import { float, floatExp, floatNaN } from './core/float.js';
-import { int, intHex, intOct } from './core/int.js';
+import { floatNaN, floatExp, float } from './core/float.js';
+import { intOct, intHex, int } from './core/int.js';
import { schema } from './core/schema.js';
import { schema as schema$1 } from './json/schema.js';
import { binary } from './yaml-1.1/binary.js';
@@ -13,7 +13,7 @@ import { omap } from './yaml-1.1/omap.js';
import { pairs } from './yaml-1.1/pairs.js';
import { schema as schema$2 } from './yaml-1.1/schema.js';
import { set } from './yaml-1.1/set.js';
-import { timestamp, floatTime, intTime } from './yaml-1.1/timestamp.js';
+import { timestamp, intTime, floatTime } from './yaml-1.1/timestamp.js';
const schemas = new Map([
['core', schema],
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/schema/yaml-1.1/binary.js b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/schema/yaml-1.1/binary.js
index de5cce6..2deda7a 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/schema/yaml-1.1/binary.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/schema/yaml-1.1/binary.js
@@ -28,6 +28,8 @@ const binary = {
}
},
stringify({ comment, type, value }, ctx, onComment, onChompKeep) {
+ if (!value)
+ return '';
const buf = value; // checked earlier by binary.identify()
let str;
if (typeof btoa === 'function') {
@@ -39,8 +41,7 @@ const binary = {
else {
throw new Error('This environment does not support writing binary tags; either Buffer or btoa is required');
}
- if (!type)
- type = Scalar.BLOCK_LITERAL;
+ type ?? (type = Scalar.BLOCK_LITERAL);
if (type !== Scalar.QUOTE_DOUBLE) {
const lineWidth = Math.max(ctx.options.lineWidth - ctx.indent.length, ctx.options.minContentWidth);
const n = Math.ceil(str.length / lineWidth);
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/schema/yaml-1.1/pairs.js b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/schema/yaml-1.1/pairs.js
index 18e3020..579f080 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/schema/yaml-1.1/pairs.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/schema/yaml-1.1/pairs.js
@@ -1,5 +1,5 @@
import { isSeq, isPair, isMap } from '../../nodes/identity.js';
-import { Pair, createPair } from '../../nodes/Pair.js';
+import { createPair, Pair } from '../../nodes/Pair.js';
import { Scalar } from '../../nodes/Scalar.js';
import { YAMLSeq } from '../../nodes/YAMLSeq.js';
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/schema/yaml-1.1/timestamp.js b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/schema/yaml-1.1/timestamp.js
index 66daec4..77e3dbe 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/schema/yaml-1.1/timestamp.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/schema/yaml-1.1/timestamp.js
@@ -95,7 +95,7 @@ const timestamp = {
}
return new Date(date);
},
- stringify: ({ value }) => value.toISOString().replace(/(T00:00:00)?\.000Z$/, '')
+ stringify: ({ value }) => value?.toISOString().replace(/(T00:00:00)?\.000Z$/, '') ?? ''
};
export { floatTime, intTime, timestamp };
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/stringify/stringify.js b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/stringify/stringify.js
index ad15d8f..7d27bf4 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/stringify/stringify.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/stringify/stringify.js
@@ -68,7 +68,7 @@ function getTagObject(tags, item) {
tagObj = tags.find(t => t.nodeClass && obj instanceof t.nodeClass);
}
if (!tagObj) {
- const name = obj?.constructor?.name ?? typeof obj;
+ const name = obj?.constructor?.name ?? (obj === null ? 'null' : typeof obj);
throw new Error(`Tag not resolved for ${name} value`);
}
return tagObj;
@@ -83,7 +83,7 @@ function stringifyProps(node, tagObj, { anchors, doc }) {
anchors.add(anchor);
props.push(`&${anchor}`);
}
- const tag = node.tag ? node.tag : tagObj.default ? null : tagObj.tag;
+ const tag = node.tag ?? (tagObj.default ? null : tagObj.tag);
if (tag)
props.push(doc.directives.tagString(tag));
return props.join(' ');
@@ -109,8 +109,7 @@ function stringify(item, ctx, onComment, onChompKeep) {
const node = isNode(item)
? item
: ctx.doc.createNode(item, { onTagObj: o => (tagObj = o) });
- if (!tagObj)
- tagObj = getTagObject(ctx.doc.schema.tags, node);
+ tagObj ?? (tagObj = getTagObject(ctx.doc.schema.tags, node));
const props = stringifyProps(node, tagObj, ctx);
if (props.length > 0)
ctx.indentAtStart = (ctx.indentAtStart ?? 0) + props.length + 1;
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/stringify/stringifyString.js b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/stringify/stringifyString.js
index e19b3d4..1591ce6 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/stringify/stringifyString.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/browser/dist/stringify/stringifyString.js
@@ -1,5 +1,5 @@
import { Scalar } from '../nodes/Scalar.js';
-import { foldFlowLines, FOLD_QUOTED, FOLD_FLOW, FOLD_BLOCK } from './foldFlowLines.js';
+import { foldFlowLines, FOLD_FLOW, FOLD_QUOTED, FOLD_BLOCK } from './foldFlowLines.js';
const getFoldOptions = (ctx, isBlock) => ({
indentAtStart: isBlock ? ctx.indent.length : ctx.indentAtStart,
@@ -159,7 +159,7 @@ function blockString({ comment, type, value }, ctx, onComment, onChompKeep) {
const { blockQuote, commentString, lineWidth } = ctx.options;
// 1. Block can't end in whitespace unless the last line is non-empty.
// 2. Strings consisting of only whitespace are best rendered explicitly.
- if (!blockQuote || /\n[\t ]+$/.test(value) || /^\s*$/.test(value)) {
+ if (!blockQuote || /\n[\t ]+$/.test(value)) {
return quotedString(value, ctx);
}
const indent = ctx.indent ||
@@ -253,10 +253,9 @@ function plainString(item, ctx, onComment, onChompKeep) {
(inFlow && /[[\]{},]/.test(value))) {
return quotedString(value, ctx);
}
- if (!value ||
- /^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(value)) {
+ if (/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(value)) {
// not allowed:
- // - empty string, '-' or '?'
+ // - '-' or '?'
// - start with an indicator character (except [?:-]) or /[?-] /
// - '\n ', ': ' or ' \n' anywhere
// - '#' not preceded by a non-space char
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/cli.d.ts b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/cli.d.ts
index 7e2ea2a..4007923 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/cli.d.ts
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/cli.d.ts
@@ -1,4 +1,4 @@
-export declare const help = "yaml: A command-line YAML processor and inspector\n\nReads stdin and writes output to stdout and errors & warnings to stderr.\n\nUsage:\n yaml Process a YAML stream, outputting it as YAML\n yaml cst Parse the CST of a YAML stream\n yaml lex Parse the lexical tokens of a YAML stream\n yaml valid Validate a YAML stream, returning 0 on success\n\nOptions:\n --help, -h Show this message.\n --json, -j Output JSON.\n --indent 2 Output pretty-printed data, indented by the given number of spaces.\n\nAdditional options for bare \"yaml\" command:\n --doc, -d Output pretty-printed JS Document objects.\n --single, -1 Require the input to consist of a single YAML document.\n --strict, -s Stop on errors.\n --visit, -v Apply a visitor to each document (requires a path to import)\n --yaml 1.1 Set the YAML version. (default: 1.2)";
+export declare const help = "yaml: A command-line YAML processor and inspector\n\nReads stdin and writes output to stdout and errors & warnings to stderr.\n\nUsage:\n yaml Process a YAML stream, outputting it as YAML\n yaml cst Parse the CST of a YAML stream\n yaml lex Parse the lexical tokens of a YAML stream\n yaml valid Validate a YAML stream, returning 0 on success\n\nOptions:\n --help, -h Show this message.\n --json, -j Output JSON.\n --indent 2 Output pretty-printed data, indented by the given number of spaces.\n --merge, -m Enable support for \"<<\" merge keys.\n\nAdditional options for bare \"yaml\" command:\n --doc, -d Output pretty-printed JS Document objects.\n --single, -1 Require the input to consist of a single YAML document.\n --strict, -s Stop on errors.\n --visit, -v Apply a visitor to each document (requires a path to import)\n --yaml 1.1 Set the YAML version. (default: 1.2)";
export declare class UserError extends Error {
static ARGS: number;
static SINGLE: number;
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/cli.mjs b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/cli.mjs
index d3c7d43..639cca4 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/cli.mjs
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/cli.mjs
@@ -1,5 +1,5 @@
-import { resolve } from 'node:path';
-import { parseArgs } from 'node:util';
+import { resolve } from 'path';
+import { parseArgs } from 'util';
import { prettyToken } from './parse/cst.js';
import { Lexer } from './parse/lexer.js';
import { Parser } from './parse/parser.js';
@@ -23,6 +23,7 @@ Options:
--help, -h Show this message.
--json, -j Output JSON.
--indent 2 Output pretty-printed data, indented by the given number of spaces.
+ --merge, -m Enable support for "<<" merge keys.
Additional options for bare "yaml" command:
--doc, -d Output pretty-printed JS Document objects.
@@ -48,6 +49,7 @@ async function cli(stdin, done, argv) {
doc: { type: 'boolean', short: 'd' },
help: { type: 'boolean', short: 'h' },
indent: { type: 'string', short: 'i' },
+ merge: { type: 'boolean', short: 'm' },
json: { type: 'boolean', short: 'j' },
single: { type: 'boolean', short: '1' },
strict: { type: 'boolean', short: 's' },
@@ -117,7 +119,7 @@ async function cli(stdin, done, argv) {
const lineCounter = new LineCounter();
const parser = new Parser(lineCounter.addNewLine);
// @ts-expect-error Version is validated at runtime
- const composer = new Composer({ version: opt.yaml });
+ const composer = new Composer({ version: opt.yaml, merge: opt.merge });
const visitor = opt.visit
? (await import(resolve(opt.visit))).default
: null;
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/compose/compose-collection.js b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/compose/compose-collection.js
index 3f91468..9add89f 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/compose/compose-collection.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/compose/compose-collection.js
@@ -66,8 +66,8 @@ function composeCollection(CN, ctx, token, props, onError) {
tag = kt;
}
else {
- if (kt?.collection) {
- onError(tagToken, 'BAD_COLLECTION_TYPE', `${kt.tag} used for ${expType} collection, but expects ${kt.collection}`, true);
+ if (kt) {
+ onError(tagToken, 'BAD_COLLECTION_TYPE', `${kt.tag} used for ${expType} collection, but expects ${kt.collection ?? 'scalar'}`, true);
}
else {
onError(tagToken, 'TAG_RESOLVE_FAILED', `Unresolved tag: ${tagName}`, true);
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/compose/composer.js b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/compose/composer.js
index 0757495..df60391 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/compose/composer.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/compose/composer.js
@@ -1,6 +1,6 @@
'use strict';
-var node_process = require('node:process');
+var node_process = require('process');
var directives = require('../doc/directives.js');
var Document = require('../doc/Document.js');
var errors = require('../errors.js');
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/compose/resolve-props.js b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/compose/resolve-props.js
index 4f61696..a3598c8 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/compose/resolve-props.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/compose/resolve-props.js
@@ -74,8 +74,7 @@ function resolveProps(tokens, { flow, indicator, next, offset, onError, parentIn
if (token.source.endsWith(':'))
onError(token.offset + token.source.length - 1, 'BAD_ALIAS', 'Anchor ending in : is ambiguous', true);
anchor = token;
- if (start === null)
- start = token.offset;
+ start ?? (start = token.offset);
atNewline = false;
hasSpace = false;
reqSpace = true;
@@ -84,8 +83,7 @@ function resolveProps(tokens, { flow, indicator, next, offset, onError, parentIn
if (tag)
onError(token, 'MULTIPLE_TAGS', 'A node can have at most one tag');
tag = token;
- if (start === null)
- start = token.offset;
+ start ?? (start = token.offset);
atNewline = false;
hasSpace = false;
reqSpace = true;
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/compose/util-empty-scalar-position.js b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/compose/util-empty-scalar-position.js
index b2cd849..50fedb1 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/compose/util-empty-scalar-position.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/compose/util-empty-scalar-position.js
@@ -2,8 +2,7 @@
function emptyScalarPosition(offset, before, pos) {
if (before) {
- if (pos === null)
- pos = before.length;
+ pos ?? (pos = before.length);
for (let i = pos - 1; i >= 0; --i) {
let st = before[i];
switch (st.type) {
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/doc/anchors.js b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/doc/anchors.js
index 223639a..68613fa 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/doc/anchors.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/doc/anchors.js
@@ -41,8 +41,7 @@ function createNodeAnchors(doc, prefix) {
return {
onAnchor: (source) => {
aliasObjects.push(source);
- if (!prevAnchors)
- prevAnchors = anchorNames(doc);
+ prevAnchors ?? (prevAnchors = anchorNames(doc));
const anchor = findNewAnchor(prefix, prevAnchors);
prevAnchors.add(anchor);
return anchor;
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/doc/createNode.js b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/doc/createNode.js
index 64dd31a..53522c6 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/doc/createNode.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/doc/createNode.js
@@ -40,8 +40,7 @@ function createNode(value, tagName, ctx) {
if (aliasDuplicateObjects && value && typeof value === 'object') {
ref = sourceObjects.get(value);
if (ref) {
- if (!ref.anchor)
- ref.anchor = onAnchor(value);
+ ref.anchor ?? (ref.anchor = onAnchor(value));
return new Alias.Alias(ref.anchor);
}
else {
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/log.js b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/log.js
index 5d0b4c5..65f9950 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/log.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/log.js
@@ -1,6 +1,6 @@
'use strict';
-var node_process = require('node:process');
+var node_process = require('process');
function debug(logLevel, ...messages) {
if (logLevel === 'debug')
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/nodes/Alias.d.ts b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/nodes/Alias.d.ts
index 8b03c81..c48f40e 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/nodes/Alias.d.ts
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/nodes/Alias.d.ts
@@ -23,7 +23,7 @@ export declare class Alias extends NodeBase {
* Resolve the value of this alias within `doc`, finding the last
* instance of the `source` anchor before this node.
*/
- resolve(doc: Document): Scalar | YAMLMap | YAMLSeq | undefined;
+ resolve(doc: Document, ctx?: ToJSContext): Scalar | YAMLMap | YAMLSeq | undefined;
toJSON(_arg?: unknown, ctx?: ToJSContext): unknown;
toString(ctx?: StringifyContext, _onComment?: () => void, _onChompKeep?: () => void): string;
}
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/nodes/Alias.js b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/nodes/Alias.js
index 46b37d9..a9fac7c 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/nodes/Alias.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/nodes/Alias.js
@@ -20,23 +20,36 @@ class Alias extends Node.NodeBase {
* Resolve the value of this alias within `doc`, finding the last
* instance of the `source` anchor before this node.
*/
- resolve(doc) {
+ resolve(doc, ctx) {
+ let nodes;
+ if (ctx?.aliasResolveCache) {
+ nodes = ctx.aliasResolveCache;
+ }
+ else {
+ nodes = [];
+ visit.visit(doc, {
+ Node: (_key, node) => {
+ if (identity.isAlias(node) || identity.hasAnchor(node))
+ nodes.push(node);
+ }
+ });
+ if (ctx)
+ ctx.aliasResolveCache = nodes;
+ }
let found = undefined;
- visit.visit(doc, {
- Node: (_key, node) => {
- if (node === this)
- return visit.visit.BREAK;
- if (node.anchor === this.source)
- found = node;
- }
- });
+ for (const node of nodes) {
+ if (node === this)
+ break;
+ if (node.anchor === this.source)
+ found = node;
+ }
return found;
}
toJSON(_arg, ctx) {
if (!ctx)
return { source: this.source };
const { anchors, doc, maxAliasCount } = ctx;
- const source = this.resolve(doc);
+ const source = this.resolve(doc, ctx);
if (!source) {
const msg = `Unresolved alias (the anchor must be set before the alias): ${this.source}`;
throw new ReferenceError(msg);
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/nodes/addPairToJSMap.js b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/nodes/addPairToJSMap.js
index 755468c..a8faa29 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/nodes/addPairToJSMap.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/nodes/addPairToJSMap.js
@@ -39,6 +39,7 @@ function addPairToJSMap(ctx, map, { key, value }) {
function stringifyKey(key, jsKey, ctx) {
if (jsKey === null)
return '';
+ // eslint-disable-next-line @typescript-eslint/no-base-to-string
if (typeof jsKey !== 'object')
return String(jsKey);
if (identity.isNode(key) && ctx?.doc) {
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/nodes/toJS.d.ts b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/nodes/toJS.d.ts
index d51d631..d7e129e 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/nodes/toJS.d.ts
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/nodes/toJS.d.ts
@@ -7,6 +7,8 @@ export interface AnchorData {
}
export interface ToJSContext {
anchors: Map;
+ /** Cached anchor and alias nodes in the order they occur in the document */
+ aliasResolveCache?: Node[];
doc: Document;
keep: boolean;
mapAsMap: boolean;
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/parse/parser.js b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/parse/parser.js
index 0e7caa6..d66ee5b 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/parse/parser.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/parse/parser.js
@@ -1,6 +1,6 @@
'use strict';
-var node_process = require('node:process');
+var node_process = require('process');
var cst = require('./cst.js');
var lexer = require('./lexer.js');
@@ -673,7 +673,20 @@ class Parser {
default: {
const bv = this.startBlockValue(map);
if (bv) {
- if (atMapIndent && bv.type !== 'block-seq') {
+ if (bv.type === 'block-seq') {
+ if (!it.explicitKey &&
+ it.sep &&
+ !includesToken(it.sep, 'newline')) {
+ yield* this.pop({
+ type: 'error',
+ offset: this.offset,
+ message: 'Unexpected block-seq-ind on same line with key',
+ source: this.source
+ });
+ return;
+ }
+ }
+ else if (atMapIndent) {
map.items.push({ start });
}
this.stack.push(bv);
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/schema/yaml-1.1/binary.js b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/schema/yaml-1.1/binary.js
index df78b64..e529d74 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/schema/yaml-1.1/binary.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/schema/yaml-1.1/binary.js
@@ -1,6 +1,6 @@
'use strict';
-var node_buffer = require('node:buffer');
+var node_buffer = require('buffer');
var Scalar = require('../../nodes/Scalar.js');
var stringifyString = require('../../stringify/stringifyString.js');
@@ -34,6 +34,8 @@ const binary = {
}
},
stringify({ comment, type, value }, ctx, onComment, onChompKeep) {
+ if (!value)
+ return '';
const buf = value; // checked earlier by binary.identify()
let str;
if (typeof node_buffer.Buffer === 'function') {
@@ -51,8 +53,7 @@ const binary = {
else {
throw new Error('This environment does not support writing binary tags; either Buffer or btoa is required');
}
- if (!type)
- type = Scalar.Scalar.BLOCK_LITERAL;
+ type ?? (type = Scalar.Scalar.BLOCK_LITERAL);
if (type !== Scalar.Scalar.QUOTE_DOUBLE) {
const lineWidth = Math.max(ctx.options.lineWidth - ctx.indent.length, ctx.options.minContentWidth);
const n = Math.ceil(str.length / lineWidth);
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/schema/yaml-1.1/timestamp.js b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/schema/yaml-1.1/timestamp.js
index 7163570..982fd06 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/schema/yaml-1.1/timestamp.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/schema/yaml-1.1/timestamp.js
@@ -97,7 +97,7 @@ const timestamp = {
}
return new Date(date);
},
- stringify: ({ value }) => value.toISOString().replace(/(T00:00:00)?\.000Z$/, '')
+ stringify: ({ value }) => value?.toISOString().replace(/(T00:00:00)?\.000Z$/, '') ?? ''
};
exports.floatTime = floatTime;
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/stringify/stringify.js b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/stringify/stringify.js
index e10c08a..e6cc402 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/stringify/stringify.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/stringify/stringify.js
@@ -70,7 +70,7 @@ function getTagObject(tags, item) {
tagObj = tags.find(t => t.nodeClass && obj instanceof t.nodeClass);
}
if (!tagObj) {
- const name = obj?.constructor?.name ?? typeof obj;
+ const name = obj?.constructor?.name ?? (obj === null ? 'null' : typeof obj);
throw new Error(`Tag not resolved for ${name} value`);
}
return tagObj;
@@ -85,7 +85,7 @@ function stringifyProps(node, tagObj, { anchors: anchors$1, doc }) {
anchors$1.add(anchor);
props.push(`&${anchor}`);
}
- const tag = node.tag ? node.tag : tagObj.default ? null : tagObj.tag;
+ const tag = node.tag ?? (tagObj.default ? null : tagObj.tag);
if (tag)
props.push(doc.directives.tagString(tag));
return props.join(' ');
@@ -111,8 +111,7 @@ function stringify(item, ctx, onComment, onChompKeep) {
const node = identity.isNode(item)
? item
: ctx.doc.createNode(item, { onTagObj: o => (tagObj = o) });
- if (!tagObj)
- tagObj = getTagObject(ctx.doc.schema.tags, node);
+ tagObj ?? (tagObj = getTagObject(ctx.doc.schema.tags, node));
const props = stringifyProps(node, tagObj, ctx);
if (props.length > 0)
ctx.indentAtStart = (ctx.indentAtStart ?? 0) + props.length + 1;
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/stringify/stringifyString.js b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/stringify/stringifyString.js
index 67252ce..2caadc6 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/stringify/stringifyString.js
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/dist/stringify/stringifyString.js
@@ -161,7 +161,7 @@ function blockString({ comment, type, value }, ctx, onComment, onChompKeep) {
const { blockQuote, commentString, lineWidth } = ctx.options;
// 1. Block can't end in whitespace unless the last line is non-empty.
// 2. Strings consisting of only whitespace are best rendered explicitly.
- if (!blockQuote || /\n[\t ]+$/.test(value) || /^\s*$/.test(value)) {
+ if (!blockQuote || /\n[\t ]+$/.test(value)) {
return quotedString(value, ctx);
}
const indent = ctx.indent ||
@@ -255,10 +255,9 @@ function plainString(item, ctx, onComment, onChompKeep) {
(inFlow && /[[\]{},]/.test(value))) {
return quotedString(value, ctx);
}
- if (!value ||
- /^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(value)) {
+ if (/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(value)) {
// not allowed:
- // - empty string, '-' or '?'
+ // - '-' or '?'
// - start with an indicator character (except [?:-]) or /[?-] /
// - '\n ', ': ' or ' \n' anywhere
// - '#' not preceded by a non-space char
diff --git a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/package.json b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/package.json
index b7fbff4..1c43f12 100644
--- a/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/package.json
+++ b/.github/actions/prepare-node-test-matrix-action/node_modules/yaml/package.json
@@ -1,6 +1,6 @@
{
"name": "yaml",
- "version": "2.7.0",
+ "version": "2.8.1",
"license": "ISC",
"author": "Eemeli Aro ",
"repository": "github:eemeli/yaml",
@@ -83,6 +83,7 @@
"eslint-config-prettier": "^9.0.0",
"fast-check": "^2.12.0",
"jest": "^29.0.1",
+ "jest-resolve": "^29.7.0",
"jest-ts-webcompat-resolver": "^1.0.0",
"prettier": "^3.0.2",
"rollup": "^4.12.0",
@@ -91,6 +92,6 @@
"typescript-eslint": "^8.4.0"
},
"engines": {
- "node": ">= 14"
+ "node": ">= 14.6"
}
}
diff --git a/.github/actions/prepare-node-test-matrix-action/npm-shrinkwrap.json b/.github/actions/prepare-node-test-matrix-action/npm-shrinkwrap.json
index 30da5d0..7b1c306 100644
--- a/.github/actions/prepare-node-test-matrix-action/npm-shrinkwrap.json
+++ b/.github/actions/prepare-node-test-matrix-action/npm-shrinkwrap.json
@@ -15,7 +15,7 @@
},
"engines": {
"node": "^20",
- "npm": "^10"
+ "npm": "^10 || ^11"
}
},
"node_modules/@actions/core": {
@@ -63,9 +63,9 @@
}
},
"node_modules/semver": {
- "version": "7.6.3",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz",
- "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==",
+ "version": "7.7.3",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz",
+ "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==",
"license": "ISC",
"bin": {
"semver": "bin/semver.js"
@@ -84,9 +84,9 @@
}
},
"node_modules/undici": {
- "version": "5.28.5",
- "resolved": "https://registry.npmjs.org/undici/-/undici-5.28.5.tgz",
- "integrity": "sha512-zICwjrDrcrUE0pyyJc1I2QzBkLM8FINsgOrt6WjA+BgajVq9Nxu2PbFFXUrAggLfDXlZGZBVZYw7WNV5KiBiBA==",
+ "version": "5.29.0",
+ "resolved": "https://registry.npmjs.org/undici/-/undici-5.29.0.tgz",
+ "integrity": "sha512-raqeBD6NQK4SkWhQzeYKd1KmIG6dllBOTt55Rmkt4HtI9mwdWtJljnrXjAFUBLTSN67HWrOIZ3EPF4kjUw80Bg==",
"license": "MIT",
"dependencies": {
"@fastify/busboy": "^2.0.0"
@@ -96,15 +96,15 @@
}
},
"node_modules/yaml": {
- "version": "2.7.0",
- "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.7.0.tgz",
- "integrity": "sha512-+hSoy/QHluxmC9kCIJyL/uyFmLmc+e5CFR5Wa+bpIhIj85LVb9ZH2nVnqrHoSvKogwODv0ClqZkmiSSaIH5LTA==",
+ "version": "2.8.1",
+ "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.8.1.tgz",
+ "integrity": "sha512-lcYcMxX2PO9XMGvAJkJ3OsNMw+/7FKes7/hgerGUYWIoWu5j/+YQqcZr5JnPZWzOsEBgMbSbiSTn/dv/69Mkpw==",
"license": "ISC",
"bin": {
"yaml": "bin.mjs"
},
"engines": {
- "node": ">= 14"
+ "node": ">= 14.6"
}
}
}
diff --git a/.github/actions/prepare-node-test-matrix-action/package.json b/.github/actions/prepare-node-test-matrix-action/package.json
index 93aa32b..598b621 100644
--- a/.github/actions/prepare-node-test-matrix-action/package.json
+++ b/.github/actions/prepare-node-test-matrix-action/package.json
@@ -13,8 +13,8 @@
"author": "@pkgjs",
"license": "MIT",
"engines": {
- "node": "^20",
- "npm": "^10 || ^11"
+ "node": "^24",
+ "npm": "^11"
},
"dependencies": {
"@actions/core": "^1.6.0",
diff --git a/.github/actions/prepare-node-test-matrix-action/schedule.json b/.github/actions/prepare-node-test-matrix-action/schedule.json
index c1cf00e..f945d37 100644
--- a/.github/actions/prepare-node-test-matrix-action/schedule.json
+++ b/.github/actions/prepare-node-test-matrix-action/schedule.json
@@ -120,22 +120,34 @@
"end": "2024-06-01"
},
"v22": {
- "start": "2024-04-23",
+ "start": "2024-04-24",
"lts": "2024-10-29",
"maintenance": "2025-10-21",
"end": "2027-04-30",
- "codename": ""
+ "codename": "Jod"
},
"v23": {
- "start": "2024-10-15",
+ "start": "2024-10-16",
"maintenance": "2025-04-01",
"end": "2025-06-01"
},
"v24": {
- "start": "2025-04-22",
+ "start": "2025-05-06",
"lts": "2025-10-28",
"maintenance": "2026-10-20",
"end": "2028-04-30",
+ "codename": "Krypton"
+ },
+ "v25": {
+ "start": "2025-10-15",
+ "maintenance": "2026-04-01",
+ "end": "2026-06-01"
+ },
+ "v26": {
+ "start": "2026-04-22",
+ "lts": "2026-10-28",
+ "maintenance": "2027-10-20",
+ "end": "2029-04-30",
"codename": ""
}
}