diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml index be8443e..687d163 100644 --- a/.github/workflows/codeql-analysis.yml +++ b/.github/workflows/codeql-analysis.yml @@ -47,7 +47,7 @@ jobs: # Initializes the CodeQL tools for scanning. - name: Initialize CodeQL - uses: github/codeql-action/init@5595ccaf912efad79be6eef63a5619ff05969be3 # v4.37.6 + uses: github/codeql-action/init@ff2f1c621b7f889edc0d3c761ac2e6a3f8cdb0dd # v4.37.7 with: languages: ${{ matrix.language }} source-root: src @@ -59,7 +59,7 @@ jobs: # Autobuild attempts to build any compiled languages (C/C++, C#, or Java). # If this step fails, then you should remove it and run the build manually (see below) - name: Autobuild - uses: github/codeql-action/autobuild@5595ccaf912efad79be6eef63a5619ff05969be3 # v4.37.6 + uses: github/codeql-action/autobuild@ff2f1c621b7f889edc0d3c761ac2e6a3f8cdb0dd # v4.37.7 # â„šī¸ Command-line programs to run using the OS shell. # 📚 https://git.io/JvXDl @@ -73,4 +73,4 @@ jobs: # make release - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@5595ccaf912efad79be6eef63a5619ff05969be3 # v4.37.6 + uses: github/codeql-action/analyze@ff2f1c621b7f889edc0d3c761ac2e6a3f8cdb0dd # v4.37.7 diff --git a/biome.json b/biome.json index 6f3e42a..bc935fc 100644 --- a/biome.json +++ b/biome.json @@ -1,5 +1,5 @@ { - "$schema": "https://biomejs.dev/schemas/2.5.8/schema.json", + "$schema": "https://biomejs.dev/schemas/2.5.9/schema.json", "assist": { "actions": { "source": { diff --git a/dist/save-cache/index.cjs b/dist/save-cache/index.cjs index 7f6c04d..a9efef0 100644 --- a/dist/save-cache/index.cjs +++ b/dist/save-cache/index.cjs @@ -63908,57 +63908,111 @@ ${codeblock}`, options); } }; +// node_modules/smol-toml/dist/util.js +function indexOfNewline(str, start = 0) { + let idx = str.indexOf("\n", start); + if (str.charCodeAt(idx - 1) === 13) + idx--; + return idx; +} +function skipComment(ctx) { + for (; ctx.p < ctx.s.length; ctx.p++) { + let c = ctx.s.charCodeAt(ctx.p); + if (c === 10) + break; + if (c === 13 && ctx.s.charCodeAt(ctx.p + 1) === 10) { + ctx.p++; + break; + } + if (c < 32 && c !== 9 || c === 127) { + throw new TomlError("control characters are not allowed in comments", { + toml: ctx.s, + ptr: ctx.p + }); + } + } +} +function skipVoid(ctx, banNewLines, banComments) { + let c; + while (1) { + while ((c = ctx.s.charCodeAt(ctx.p)) === 32 || c === 9 || !banNewLines && (c === 10 || c === 13 && ctx.s.charCodeAt(ctx.p + 1) === 10)) + ctx.p++; + if (banComments || c !== 35) + break; + skipComment(ctx); + } +} +function skipUntil(ctx, sep8, end) { + let ptr = ctx.p; + if (!end) { + ptr = indexOfNewline(ctx.s, ptr); + ctx.p = ptr < 0 ? ctx.s.length : ptr; + return; + } + for (; ctx.p < ctx.s.length; ctx.p++) { + let c = ctx.s.charCodeAt(ctx.p); + if (c === 35) { + skipComment(ctx); + } else if (c === end || c === sep8) { + return; + } + } + throw new TomlError("cannot find end of structure", { + toml: ctx.s, + ptr + }); +} + // node_modules/smol-toml/dist/primitive.js var INT_REGEX = /^((0x[0-9a-fA-F](_?[0-9a-fA-F])*)|(([+-]|0[ob])?\d(_?\d)*))$/; var FLOAT_REGEX = /^[+-]?\d(_?\d)*(\.\d(_?\d)*)?([eE][+-]?\d(_?\d)*)?$/; var LEADING_ZERO = /^[+-]?0[0-9_]/; -function parseString(str, ptr) { - let c = str[ptr++]; +function parseString(ctx) { + let start = ctx.p; + let c = ctx.s.charCodeAt(ctx.p++); let first = c; - let isLiteral = c === "'"; - let isMultiline = c === str[ptr] && c === str[ptr + 1]; + let isLiteral = c === 39; + let isMultiline = c === ctx.s.charCodeAt(ctx.p) && c === ctx.s.charCodeAt(ctx.p + 1); if (isMultiline) { - if (str[ptr += 2] === "\n") - ptr++; - else if (str[ptr] === "\r" && str[ptr + 1] === "\n") - ptr += 2; + if ((c = ctx.s.charCodeAt(ctx.p += 2)) === 10) + ctx.p++; + else if (c === 13 && ctx.s.charCodeAt(ctx.p + 1) === 10) + ctx.p += 2; } let parsed = ""; - let sliceStart = ptr; + let sliceStart = ctx.p; let state3 = 0; - for (let i = ptr; i < str.length; i++) { - c = str[i]; - if (isMultiline && (c === "\n" || c === "\r" && str[i + 1] === "\n")) { + for (; ctx.p < ctx.s.length; ctx.p++) { + c = ctx.s.charCodeAt(ctx.p); + if (isMultiline && (c === 10 || c === 13 && ctx.s.charCodeAt(ctx.p + 1) === 10)) { state3 = state3 && 3; - } else if (c < " " && c !== " " || c === "\x7F") { + } else if (c < 32 && c !== 9 || c === 127) { throw new TomlError("control characters are not allowed in strings", { - toml: str, - ptr: i + toml: ctx.s, + ptr: ctx.p }); - } else if ((!state3 || state3 === 3) && c === first && (!isMultiline || str[i + 1] === first && str[i + 2] === first)) { + } else if ((!state3 || state3 === 3) && c === first && (!isMultiline || ctx.s.charCodeAt(ctx.p + 1) === first && ctx.s.charCodeAt(ctx.p + 2) === first)) { if (isMultiline) { - if (str[i + 3] === first) - i++; - if (str[i + 3] === first) - i++; + if (ctx.s.charCodeAt(ctx.p + 3) === first) + ctx.p++; + if (ctx.s.charCodeAt(ctx.p + 3) === first) + ctx.p++; } - return [ - // If we're in a newline escape still, then there's nothing to add. - // Also try to avoid concat if there's nothing to add to parsed, or nothing has been added to parsed. - state3 ? parsed : parsed + str.slice(sliceStart, i), - i + (isMultiline ? 3 : 1) - ]; + if (!state3) + parsed += ctx.s.slice(sliceStart, ctx.p); + ctx.p += isMultiline ? 3 : 1; + return parsed; } else if (!state3) { - if (!isLiteral && c === "\\") { - parsed += str.slice(sliceStart, sliceStart = i); + if (!isLiteral && c === 92) { + parsed += ctx.s.slice(sliceStart, sliceStart = ctx.p); state3 = 1; } } else if (state3 === 1) { - if (c === "x" || c === "u" || c === "U") { + if (c === 120 || c === 117 || c === 85) { let value = 0; - let len = c === "x" ? 2 : c === "u" ? 4 : 8; - for (let j = 0; j < len; j++, i++) { - let hex = str.charCodeAt(i + 1); + let len = c === 120 ? 2 : c === 117 ? 4 : 8; + for (let j = 0; j < len; j++, ctx.p++) { + let hex = ctx.s.charCodeAt(ctx.p + 1); let digit = ( /* 0-9 */ hex >= 48 && hex <= 57 ? hex - 48 : ( @@ -63970,57 +64024,68 @@ function parseString(str, ptr) { ) ); if (digit < 0) - throw new TomlError("invalid non-hex character in unicode escape", { toml: str, ptr: i + 1 }); + throw new TomlError("invalid non-hex character in unicode escape", { toml: ctx.s, ptr: ctx.p + 1 }); value = value << 4 | digit; } if (value < 0 || value > 1114111 || value >= 55296 && value <= 57343) { - throw new TomlError("invalid unicode escape", { toml: str, ptr: i }); + throw new TomlError("invalid unicode escape", { toml: ctx.s, ptr: ctx.p }); } parsed += String.fromCodePoint(value); - sliceStart = i + 1; + sliceStart = ctx.p + 1; state3 = 0; - } else if (c === " " || c === " ") { + } else if (c === 32 || c === 9) { state3 = 2; } else { - if (c === "b") + if (c === 98) parsed += "\b"; - else if (c === "t") + else if (c === 116) parsed += " "; - else if (c === "n") + else if (c === 110) parsed += "\n"; - else if (c === "f") + else if (c === 102) parsed += "\f"; - else if (c === "r") + else if (c === 114) parsed += "\r"; - else if (c === "e") + else if (c === 101) parsed += "\x1B"; - else if (c === '"') + else if (c === 34) parsed += '"'; - else if (c === "\\") + else if (c === 92) parsed += "\\"; else - throw new TomlError("unrecognized escape sequence", { toml: str, ptr: i }); - sliceStart = i + 1; + throw new TomlError("unrecognized escape sequence", { toml: ctx.s, ptr: ctx.p }); + sliceStart = ctx.p + 1; state3 = 0; } - } else if (c !== " " && c !== " ") { + } else if (c !== 32 && c !== 9) { if (state3 === 2) { throw new TomlError("invalid escape: only line-ending whitespace may be escaped", { - toml: str, + toml: ctx.s, ptr: sliceStart }); } - state3 = !isLiteral && c === "\\" ? 1 : 0; - sliceStart = i; + state3 = !isLiteral && c === 92 ? 1 : 0; + sliceStart = ctx.p; } } - throw new TomlError("unfinished string", { toml: str, ptr }); + throw new TomlError("unfinished string", { toml: ctx.s, ptr: start }); } -function parseValue2(value, toml, ptr, integersAsBigInt) { - if (value === "true") - return true; - if (value === "false") - return false; +function sliceAndTrimEndOf(ctx, start, end) { + let value = ctx.s.slice(start, end); + let commentIdx = value.indexOf("#"); + if (commentIdx > 0) { + skipComment({ s: value, p: commentIdx, d: 0 }); + value = value.slice(0, commentIdx); + } + return value.trimEnd(); +} +function parseValue2(ctx, integersAsBigInt, end) { + let ptr = ctx.p; + let err = { toml: ctx.s, ptr }; + skipUntil(ctx, 44, end); + let value = sliceAndTrimEndOf(ctx, ptr, ctx.p); + if (!value) + throw new TomlError("incomplete declaration: value expected", err); if (value === "-inf") return -Infinity; if (value === "inf" || value === "+inf") @@ -64032,25 +64097,16 @@ function parseValue2(value, toml, ptr, integersAsBigInt) { let isInt = INT_REGEX.test(value); if (isInt || FLOAT_REGEX.test(value)) { if (LEADING_ZERO.test(value)) { - throw new TomlError("leading zeroes are not allowed", { - toml, - ptr - }); + throw new TomlError("leading zeroes are not allowed", err); } value = value.replace(/_/g, ""); let numeric2 = +value; if (isNaN(numeric2)) { - throw new TomlError("invalid number", { - toml, - ptr - }); + throw new TomlError("invalid number", err); } if (isInt) { if ((isInt = !Number.isSafeInteger(numeric2)) && !integersAsBigInt) { - throw new TomlError("integer value cannot be represented losslessly", { - toml, - ptr - }); + throw new TomlError("integer value cannot be represented losslessly", err); } if (isInt || integersAsBigInt === true) numeric2 = BigInt(value); @@ -64058,279 +64114,184 @@ function parseValue2(value, toml, ptr, integersAsBigInt) { return numeric2; } const date = new TomlDate(value); - if (!date.isValid()) { - throw new TomlError("invalid value", { - toml, - ptr - }); - } + if (!date.isValid()) + throw new TomlError("invalid value", err); return date; } -// node_modules/smol-toml/dist/util.js -function indexOfNewline(str, start = 0, end = str.length) { - let idx = str.indexOf("\n", start); - if (str[idx - 1] === "\r") - idx--; - return idx <= end ? idx : -1; -} -function skipComment(str, ptr) { - for (let i = ptr; i < str.length; i++) { - let c = str[i]; - if (c === "\n") - return i; - if (c === "\r" && str[i + 1] === "\n") - return i + 1; - if (c < " " && c !== " " || c === "\x7F") { - throw new TomlError("control characters are not allowed in comments", { - toml: str, +// node_modules/smol-toml/dist/extract.js +function extractValue(ctx, end, integersAsBigInt) { + let ptr = ctx.p; + let c = ctx.s.charCodeAt(ptr); + if (c === 91 || c === 123) { + if (!ctx.d--) { + throw new TomlError("document contains excessively nested structures. aborting.", { + toml: ctx.s, ptr }); } + let value = c === 91 ? parseArray(ctx, integersAsBigInt) : parseInlineTable(ctx, integersAsBigInt); + ctx.d++; + return value; } - return str.length; -} -function skipVoid(str, ptr, banNewLines, banComments) { - let c; - while (1) { - while ((c = str[ptr]) === " " || c === " " || !banNewLines && (c === "\n" || c === "\r" && str[ptr + 1] === "\n")) - ptr++; - if (banComments || c !== "#") - break; - ptr = skipComment(str, ptr); + if (c === 34 || c === 39) { + return parseString(ctx); } - return ptr; -} -function skipUntil(str, ptr, sep8, end, banNewLines = false) { - if (!end) { - ptr = indexOfNewline(str, ptr); - return ptr < 0 ? str.length : ptr; + if (c === 116) { + if (ctx.s.charCodeAt(++ctx.p) !== 114 || ctx.s.charCodeAt(++ctx.p) !== 117 || ctx.s.charCodeAt(++ctx.p) !== 101) + throw new TomlError("invalid value", { toml: ctx.s, ptr }); + ctx.p++; + return true; } - for (let i = ptr; i < str.length; i++) { - let c = str[i]; - if (c === "#") { - i = indexOfNewline(str, i); - if (i < 0) - break; - } else if (c === sep8) { - return i + 1; - } else if (c === end || banNewLines && (c === "\n" || c === "\r" && str[i + 1] === "\n")) { - return i; - } + if (c === 102) { + if (ctx.s.charCodeAt(++ctx.p) !== 97 || ctx.s.charCodeAt(++ctx.p) !== 108 || ctx.s.charCodeAt(++ctx.p) !== 115 || ctx.s.charCodeAt(++ctx.p) !== 101) + throw new TomlError("invalid value", { toml: ctx.s, ptr }); + ctx.p++; + return false; } - throw new TomlError("cannot find end of structure", { - toml: str, - ptr - }); -} - -// node_modules/smol-toml/dist/extract.js -function sliceAndTrimEndOf(str, startPtr, endPtr) { - let value = str.slice(startPtr, endPtr); - let commentIdx = value.indexOf("#"); - if (commentIdx > -1) { - skipComment(str, commentIdx); - value = value.slice(0, commentIdx); - } - return [value.trimEnd(), commentIdx]; -} -function extractValue(str, ptr, end, depth, integersAsBigInt) { - if (depth === 0) { - throw new TomlError("document contains excessively nested structures. aborting.", { - toml: str, - ptr - }); - } - let c = str[ptr]; - if (c === "[" || c === "{") { - let [value, endPtr2] = c === "[" ? parseArray(str, ptr, depth, integersAsBigInt) : parseInlineTable(str, ptr, depth, integersAsBigInt); - if (end) { - endPtr2 = skipVoid(str, endPtr2); - if (str[endPtr2] === ",") - endPtr2++; - else if (str[endPtr2] !== end) { - throw new TomlError("expected comma or end of structure", { - toml: str, - ptr: endPtr2 - }); - } - } - return [value, endPtr2]; - } - if (c === '"' || c === "'") { - let [parsed, endPtr2] = parseString(str, ptr); - if (end) { - endPtr2 = skipVoid(str, endPtr2); - if (str[endPtr2] && str[endPtr2] !== "," && str[endPtr2] !== end && str[endPtr2] !== "\n" && str[endPtr2] !== "\r") { - throw new TomlError("unexpected character encountered", { - toml: str, - ptr: endPtr2 - }); - } - if (str[endPtr2] === ",") - endPtr2++; - } - return [parsed, endPtr2]; - } - let endPtr = skipUntil(str, ptr, ",", end); - let slice = sliceAndTrimEndOf(str, ptr, endPtr - (str[endPtr - 1] === "," ? 1 : 0)); - if (!slice[0]) { - throw new TomlError("incomplete key-value declaration: no value specified", { - toml: str, - ptr - }); - } - if (end && slice[1] > -1) { - endPtr = skipVoid(str, ptr + slice[1]); - if (str[endPtr] === ",") - endPtr++; - } - return [ - parseValue2(slice[0], str, ptr, integersAsBigInt), - endPtr - ]; + return parseValue2(ctx, integersAsBigInt, end); } // node_modules/smol-toml/dist/struct.js var KEY_PART_RE = /^[a-zA-Z0-9-_]+[ \t]*$/; -function parseKey(str, ptr, end = "=") { - let dot = ptr - 1; +function parseKey(ctx, end = "=") { + let start = ctx.p; + let dot = start - 1; let parsed = []; - let endPtr = str.indexOf(end, ptr); + let endPtr = ctx.s.indexOf(end, start); if (endPtr < 0) { throw new TomlError("incomplete key-value: cannot find end of key", { - toml: str, - ptr + toml: ctx.s, + ptr: start }); } do { - let c = str[ptr = ++dot]; - if (c !== " " && c !== " ") { - if (c === '"' || c === "'") { - if (c === str[ptr + 1] && c === str[ptr + 2]) { + let c = ctx.s.charCodeAt(ctx.p = ++dot); + if (c !== 32 && c !== 9) { + if (c === 34 || c === 39) { + if (c === ctx.s.charCodeAt(ctx.p + 1) && c === ctx.s.charCodeAt(ctx.p + 2)) { throw new TomlError("multiline strings are not allowed in keys", { - toml: str, - ptr + toml: ctx.s, + ptr: ctx.p }); } - let [part, eos] = parseString(str, ptr); - dot = str.indexOf(".", eos); - let strEnd = str.slice(eos, dot < 0 || dot > endPtr ? endPtr : dot); + let part = parseString(ctx); + dot = ctx.s.indexOf(".", ctx.p); + let strEnd = ctx.s.slice(ctx.p, dot < 0 || dot > endPtr ? endPtr : dot); let newLine = indexOfNewline(strEnd); if (newLine > -1) { throw new TomlError("newlines are not allowed in keys", { - toml: str, - ptr: ptr + dot + newLine + toml: ctx.s, + ptr: newLine }); } if (strEnd.trimStart()) { throw new TomlError("found extra tokens after the string part", { - toml: str, - ptr: eos + toml: ctx.s, + ptr: ctx.p }); } - if (endPtr < eos) { - endPtr = str.indexOf(end, eos); + if (endPtr < ctx.p) { + endPtr = ctx.s.indexOf(end, ctx.p); if (endPtr < 0) { throw new TomlError("incomplete key-value: cannot find end of key", { - toml: str, - ptr + toml: ctx.s, + ptr: start }); } } parsed.push(part); } else { - dot = str.indexOf(".", ptr); - let part = str.slice(ptr, dot < 0 || dot > endPtr ? endPtr : dot); + dot = ctx.s.indexOf(".", ctx.p); + let part = ctx.s.slice(ctx.p, dot < 0 || dot > endPtr ? endPtr : dot); if (!KEY_PART_RE.test(part)) { throw new TomlError("only letter, numbers, dashes and underscores are allowed in keys", { - toml: str, - ptr + toml: ctx.s, + ptr: ctx.p }); } parsed.push(part.trimEnd()); } } } while (dot + 1 && dot < endPtr); - return [parsed, skipVoid(str, endPtr + 1, true, true)]; + ctx.p = endPtr + 1; + skipVoid(ctx, true, true); + return parsed; } -function parseInlineTable(str, ptr, depth, integersAsBigInt) { +function parseInlineTable(ctx, integersAsBigInt) { let res = {}; let seen = /* @__PURE__ */ new Set(); let c; - ptr++; - while ((c = str[ptr++]) !== "}" && c) { - if (c === ",") { - throw new TomlError("expected value, found comma", { - toml: str, - ptr: ptr - 1 - }); - } else if (c === "#") - ptr = skipComment(str, ptr); - else if (c !== " " && c !== " " && c !== "\n" && c !== "\r") { - let k; - let t = res; - let hasOwn = false; - let [key, keyEndPtr] = parseKey(str, ptr - 1); - for (let i = 0; i < key.length; i++) { - if (i) - t = hasOwn ? t[k] : t[k] = {}; - k = key[i]; - if ((hasOwn = Object.hasOwn(t, k)) && (typeof t[k] !== "object" || seen.has(t[k]))) { - throw new TomlError("trying to redefine an already defined value", { - toml: str, - ptr - }); - } - if (!hasOwn && k === "__proto__") { - Object.defineProperty(t, k, { enumerable: true, configurable: true, writable: true }); - } - } - if (hasOwn) { + ctx.p++; + while (ctx.p < ctx.s.length) { + skipVoid(ctx); + if ((c = ctx.s.charCodeAt(ctx.p)) === 125) { + ctx.p++; + return res; + } + let k; + let t = res; + let hasOwn = false; + let p = ctx.p; + let key = parseKey(ctx); + for (let i = 0; i < key.length; i++) { + if (i) + t = hasOwn ? t[k] : t[k] = {}; + k = key[i]; + if ((hasOwn = Object.hasOwn(t, k)) && (typeof t[k] !== "object" || seen.has(t[k]))) { throw new TomlError("trying to redefine an already defined value", { - toml: str, - ptr + toml: ctx.s, + ptr: p }); } - let [value, valueEndPtr] = extractValue(str, keyEndPtr, "}", depth - 1, integersAsBigInt); - seen.add(value); - t[k] = value; - ptr = valueEndPtr; + if (!hasOwn && k === "__proto__") { + Object.defineProperty(t, k, { enumerable: true, configurable: true, writable: true }); + } + } + if (hasOwn) { + throw new TomlError("trying to redefine an already defined value", { + toml: ctx.s, + ptr: ctx.p + }); + } + let value = extractValue(ctx, 125, integersAsBigInt); + seen.add(t[k] = value); + skipVoid(ctx); + if ((c = ctx.s.charCodeAt(ctx.p++)) === 125) { + return res; + } + if (c !== 44) { + throw new TomlError("expected comma or end of structure", { toml: ctx.s, ptr: ctx.p - 1 }); } } - if (!c) { - throw new TomlError("unfinished table encountered", { - toml: str, - ptr - }); - } - return [res, ptr]; + throw new TomlError("unfinished table encountered", { + toml: ctx.s, + ptr: ctx.p + }); } -function parseArray(str, ptr, depth, integersAsBigInt) { +function parseArray(ctx, integersAsBigInt) { let res = []; let c; - ptr++; - while ((c = str[ptr++]) !== "]" && c) { - if (c === ",") { - throw new TomlError("expected value, found comma", { - toml: str, - ptr: ptr - 1 - }); - } else if (c === "#") - ptr = skipComment(str, ptr); - else if (c !== " " && c !== " " && c !== "\n" && c !== "\r") { - let e = extractValue(str, ptr - 1, "]", depth - 1, integersAsBigInt); - res.push(e[0]); - ptr = e[1]; + ctx.p++; + while (ctx.p < ctx.s.length) { + skipVoid(ctx); + if ((c = ctx.s.charCodeAt(ctx.p)) === 93) { + ctx.p++; + return res; + } + res.push(extractValue(ctx, 93, integersAsBigInt)); + skipVoid(ctx); + if ((c = ctx.s.charCodeAt(ctx.p++)) === 93) { + return res; + } + if (c !== 44) { + throw new TomlError("expected comma or end of structure", { toml: ctx.s, ptr: ctx.p - 1 }); } } - if (!c) { - throw new TomlError("unfinished array encountered", { - toml: str, - ptr - }); - } - return [res, ptr]; + throw new TomlError("unfinished array encountered", { + toml: ctx.s, + ptr: ctx.p + }); } // node_modules/smol-toml/dist/parse.js @@ -64394,25 +64355,29 @@ function peekTable(key, table, meta, type) { return [k, t, state3.c]; } function parse3(toml, { maxDepth = 1e3, integersAsBigInt } = {}) { + let ctx = { s: toml, p: 0, d: maxDepth }; let res = {}; let meta = {}; + let tmp; let tbl = res; let m = meta; - for (let ptr = skipVoid(toml, 0); ptr < toml.length; ) { - if (toml[ptr] === "[") { - let isTableArray = toml[++ptr] === "["; - let k = parseKey(toml, ptr += +isTableArray, "]"); + skipVoid(ctx); + while (ctx.p < toml.length) { + if (toml.charCodeAt(ctx.p) === 91) { + let isTableArray = toml.charCodeAt(++ctx.p) === 91; + tmp = ctx.p += +isTableArray; + let k = parseKey(ctx, "]"); if (isTableArray) { - if (toml[k[1] - 1] !== "]") { + if (toml.charCodeAt(ctx.p - 1) !== 93) { throw new TomlError("expected end of table declaration", { toml, - ptr: k[1] - 1 + ptr: ctx.p - 1 }); } - k[1]++; + ctx.p++; } let p = peekTable( - k[0], + k, res, meta, isTableArray ? 2 : 1 @@ -64421,16 +64386,16 @@ function parse3(toml, { maxDepth = 1e3, integersAsBigInt } = {}) { if (!p) { throw new TomlError("trying to redefine an already defined table or value", { toml, - ptr + ptr: tmp }); } m = p[2]; tbl = p[1]; - ptr = k[1]; } else { - let k = parseKey(toml, ptr); + tmp = ctx.p; + let k = parseKey(ctx); let p = peekTable( - k[0], + k, tbl, m, 0 @@ -64439,21 +64404,19 @@ function parse3(toml, { maxDepth = 1e3, integersAsBigInt } = {}) { if (!p) { throw new TomlError("trying to redefine an already defined table or value", { toml, - ptr + ptr: tmp }); } - let v = extractValue(toml, k[1], void 0, maxDepth, integersAsBigInt); - p[1][p[0]] = v[0]; - ptr = v[1]; + p[1][p[0]] = extractValue(ctx, void 0, integersAsBigInt); } - ptr = skipVoid(toml, ptr, true); - if (toml[ptr] && toml[ptr] !== "\n" && toml[ptr] !== "\r") { + skipVoid(ctx, true); + if (ctx.p < toml.length && (tmp = toml.charCodeAt(ctx.p)) !== 10 && tmp !== 13) { throw new TomlError("each key-value declaration must be followed by an end-of-line", { toml, - ptr + ptr: ctx.p }); } - ptr = skipVoid(toml, ptr); + skipVoid(ctx); } return res; } @@ -64910,8 +64873,8 @@ undici/lib/web/websocket/frame.js: smol-toml/dist/date.js: smol-toml/dist/error.js: -smol-toml/dist/primitive.js: smol-toml/dist/util.js: +smol-toml/dist/primitive.js: smol-toml/dist/extract.js: smol-toml/dist/struct.js: smol-toml/dist/parse.js: diff --git a/dist/setup/index.cjs b/dist/setup/index.cjs index cf1c72b..96ba02f 100644 --- a/dist/setup/index.cjs +++ b/dist/setup/index.cjs @@ -100787,57 +100787,111 @@ ${codeblock}`, options); } }; +// node_modules/smol-toml/dist/util.js +function indexOfNewline(str, start = 0) { + let idx = str.indexOf("\n", start); + if (str.charCodeAt(idx - 1) === 13) + idx--; + return idx; +} +function skipComment(ctx) { + for (; ctx.p < ctx.s.length; ctx.p++) { + let c = ctx.s.charCodeAt(ctx.p); + if (c === 10) + break; + if (c === 13 && ctx.s.charCodeAt(ctx.p + 1) === 10) { + ctx.p++; + break; + } + if (c < 32 && c !== 9 || c === 127) { + throw new TomlError("control characters are not allowed in comments", { + toml: ctx.s, + ptr: ctx.p + }); + } + } +} +function skipVoid(ctx, banNewLines, banComments) { + let c; + while (1) { + while ((c = ctx.s.charCodeAt(ctx.p)) === 32 || c === 9 || !banNewLines && (c === 10 || c === 13 && ctx.s.charCodeAt(ctx.p + 1) === 10)) + ctx.p++; + if (banComments || c !== 35) + break; + skipComment(ctx); + } +} +function skipUntil(ctx, sep9, end) { + let ptr = ctx.p; + if (!end) { + ptr = indexOfNewline(ctx.s, ptr); + ctx.p = ptr < 0 ? ctx.s.length : ptr; + return; + } + for (; ctx.p < ctx.s.length; ctx.p++) { + let c = ctx.s.charCodeAt(ctx.p); + if (c === 35) { + skipComment(ctx); + } else if (c === end || c === sep9) { + return; + } + } + throw new TomlError("cannot find end of structure", { + toml: ctx.s, + ptr + }); +} + // node_modules/smol-toml/dist/primitive.js var INT_REGEX = /^((0x[0-9a-fA-F](_?[0-9a-fA-F])*)|(([+-]|0[ob])?\d(_?\d)*))$/; var FLOAT_REGEX = /^[+-]?\d(_?\d)*(\.\d(_?\d)*)?([eE][+-]?\d(_?\d)*)?$/; var LEADING_ZERO = /^[+-]?0[0-9_]/; -function parseString(str, ptr) { - let c = str[ptr++]; +function parseString(ctx) { + let start = ctx.p; + let c = ctx.s.charCodeAt(ctx.p++); let first = c; - let isLiteral = c === "'"; - let isMultiline = c === str[ptr] && c === str[ptr + 1]; + let isLiteral = c === 39; + let isMultiline = c === ctx.s.charCodeAt(ctx.p) && c === ctx.s.charCodeAt(ctx.p + 1); if (isMultiline) { - if (str[ptr += 2] === "\n") - ptr++; - else if (str[ptr] === "\r" && str[ptr + 1] === "\n") - ptr += 2; + if ((c = ctx.s.charCodeAt(ctx.p += 2)) === 10) + ctx.p++; + else if (c === 13 && ctx.s.charCodeAt(ctx.p + 1) === 10) + ctx.p += 2; } let parsed = ""; - let sliceStart = ptr; + let sliceStart = ctx.p; let state3 = 0; - for (let i = ptr; i < str.length; i++) { - c = str[i]; - if (isMultiline && (c === "\n" || c === "\r" && str[i + 1] === "\n")) { + for (; ctx.p < ctx.s.length; ctx.p++) { + c = ctx.s.charCodeAt(ctx.p); + if (isMultiline && (c === 10 || c === 13 && ctx.s.charCodeAt(ctx.p + 1) === 10)) { state3 = state3 && 3; - } else if (c < " " && c !== " " || c === "\x7F") { + } else if (c < 32 && c !== 9 || c === 127) { throw new TomlError("control characters are not allowed in strings", { - toml: str, - ptr: i + toml: ctx.s, + ptr: ctx.p }); - } else if ((!state3 || state3 === 3) && c === first && (!isMultiline || str[i + 1] === first && str[i + 2] === first)) { + } else if ((!state3 || state3 === 3) && c === first && (!isMultiline || ctx.s.charCodeAt(ctx.p + 1) === first && ctx.s.charCodeAt(ctx.p + 2) === first)) { if (isMultiline) { - if (str[i + 3] === first) - i++; - if (str[i + 3] === first) - i++; + if (ctx.s.charCodeAt(ctx.p + 3) === first) + ctx.p++; + if (ctx.s.charCodeAt(ctx.p + 3) === first) + ctx.p++; } - return [ - // If we're in a newline escape still, then there's nothing to add. - // Also try to avoid concat if there's nothing to add to parsed, or nothing has been added to parsed. - state3 ? parsed : parsed + str.slice(sliceStart, i), - i + (isMultiline ? 3 : 1) - ]; + if (!state3) + parsed += ctx.s.slice(sliceStart, ctx.p); + ctx.p += isMultiline ? 3 : 1; + return parsed; } else if (!state3) { - if (!isLiteral && c === "\\") { - parsed += str.slice(sliceStart, sliceStart = i); + if (!isLiteral && c === 92) { + parsed += ctx.s.slice(sliceStart, sliceStart = ctx.p); state3 = 1; } } else if (state3 === 1) { - if (c === "x" || c === "u" || c === "U") { + if (c === 120 || c === 117 || c === 85) { let value = 0; - let len = c === "x" ? 2 : c === "u" ? 4 : 8; - for (let j = 0; j < len; j++, i++) { - let hex = str.charCodeAt(i + 1); + let len = c === 120 ? 2 : c === 117 ? 4 : 8; + for (let j = 0; j < len; j++, ctx.p++) { + let hex = ctx.s.charCodeAt(ctx.p + 1); let digit = ( /* 0-9 */ hex >= 48 && hex <= 57 ? hex - 48 : ( @@ -100849,57 +100903,68 @@ function parseString(str, ptr) { ) ); if (digit < 0) - throw new TomlError("invalid non-hex character in unicode escape", { toml: str, ptr: i + 1 }); + throw new TomlError("invalid non-hex character in unicode escape", { toml: ctx.s, ptr: ctx.p + 1 }); value = value << 4 | digit; } if (value < 0 || value > 1114111 || value >= 55296 && value <= 57343) { - throw new TomlError("invalid unicode escape", { toml: str, ptr: i }); + throw new TomlError("invalid unicode escape", { toml: ctx.s, ptr: ctx.p }); } parsed += String.fromCodePoint(value); - sliceStart = i + 1; + sliceStart = ctx.p + 1; state3 = 0; - } else if (c === " " || c === " ") { + } else if (c === 32 || c === 9) { state3 = 2; } else { - if (c === "b") + if (c === 98) parsed += "\b"; - else if (c === "t") + else if (c === 116) parsed += " "; - else if (c === "n") + else if (c === 110) parsed += "\n"; - else if (c === "f") + else if (c === 102) parsed += "\f"; - else if (c === "r") + else if (c === 114) parsed += "\r"; - else if (c === "e") + else if (c === 101) parsed += "\x1B"; - else if (c === '"') + else if (c === 34) parsed += '"'; - else if (c === "\\") + else if (c === 92) parsed += "\\"; else - throw new TomlError("unrecognized escape sequence", { toml: str, ptr: i }); - sliceStart = i + 1; + throw new TomlError("unrecognized escape sequence", { toml: ctx.s, ptr: ctx.p }); + sliceStart = ctx.p + 1; state3 = 0; } - } else if (c !== " " && c !== " ") { + } else if (c !== 32 && c !== 9) { if (state3 === 2) { throw new TomlError("invalid escape: only line-ending whitespace may be escaped", { - toml: str, + toml: ctx.s, ptr: sliceStart }); } - state3 = !isLiteral && c === "\\" ? 1 : 0; - sliceStart = i; + state3 = !isLiteral && c === 92 ? 1 : 0; + sliceStart = ctx.p; } } - throw new TomlError("unfinished string", { toml: str, ptr }); + throw new TomlError("unfinished string", { toml: ctx.s, ptr: start }); } -function parseValue2(value, toml, ptr, integersAsBigInt) { - if (value === "true") - return true; - if (value === "false") - return false; +function sliceAndTrimEndOf(ctx, start, end) { + let value = ctx.s.slice(start, end); + let commentIdx = value.indexOf("#"); + if (commentIdx > 0) { + skipComment({ s: value, p: commentIdx, d: 0 }); + value = value.slice(0, commentIdx); + } + return value.trimEnd(); +} +function parseValue2(ctx, integersAsBigInt, end) { + let ptr = ctx.p; + let err = { toml: ctx.s, ptr }; + skipUntil(ctx, 44, end); + let value = sliceAndTrimEndOf(ctx, ptr, ctx.p); + if (!value) + throw new TomlError("incomplete declaration: value expected", err); if (value === "-inf") return -Infinity; if (value === "inf" || value === "+inf") @@ -100911,25 +100976,16 @@ function parseValue2(value, toml, ptr, integersAsBigInt) { let isInt = INT_REGEX.test(value); if (isInt || FLOAT_REGEX.test(value)) { if (LEADING_ZERO.test(value)) { - throw new TomlError("leading zeroes are not allowed", { - toml, - ptr - }); + throw new TomlError("leading zeroes are not allowed", err); } value = value.replace(/_/g, ""); let numeric2 = +value; if (isNaN(numeric2)) { - throw new TomlError("invalid number", { - toml, - ptr - }); + throw new TomlError("invalid number", err); } if (isInt) { if ((isInt = !Number.isSafeInteger(numeric2)) && !integersAsBigInt) { - throw new TomlError("integer value cannot be represented losslessly", { - toml, - ptr - }); + throw new TomlError("integer value cannot be represented losslessly", err); } if (isInt || integersAsBigInt === true) numeric2 = BigInt(value); @@ -100937,279 +100993,184 @@ function parseValue2(value, toml, ptr, integersAsBigInt) { return numeric2; } const date = new TomlDate(value); - if (!date.isValid()) { - throw new TomlError("invalid value", { - toml, - ptr - }); - } + if (!date.isValid()) + throw new TomlError("invalid value", err); return date; } -// node_modules/smol-toml/dist/util.js -function indexOfNewline(str, start = 0, end = str.length) { - let idx = str.indexOf("\n", start); - if (str[idx - 1] === "\r") - idx--; - return idx <= end ? idx : -1; -} -function skipComment(str, ptr) { - for (let i = ptr; i < str.length; i++) { - let c = str[i]; - if (c === "\n") - return i; - if (c === "\r" && str[i + 1] === "\n") - return i + 1; - if (c < " " && c !== " " || c === "\x7F") { - throw new TomlError("control characters are not allowed in comments", { - toml: str, +// node_modules/smol-toml/dist/extract.js +function extractValue(ctx, end, integersAsBigInt) { + let ptr = ctx.p; + let c = ctx.s.charCodeAt(ptr); + if (c === 91 || c === 123) { + if (!ctx.d--) { + throw new TomlError("document contains excessively nested structures. aborting.", { + toml: ctx.s, ptr }); } + let value = c === 91 ? parseArray(ctx, integersAsBigInt) : parseInlineTable(ctx, integersAsBigInt); + ctx.d++; + return value; } - return str.length; -} -function skipVoid(str, ptr, banNewLines, banComments) { - let c; - while (1) { - while ((c = str[ptr]) === " " || c === " " || !banNewLines && (c === "\n" || c === "\r" && str[ptr + 1] === "\n")) - ptr++; - if (banComments || c !== "#") - break; - ptr = skipComment(str, ptr); + if (c === 34 || c === 39) { + return parseString(ctx); } - return ptr; -} -function skipUntil(str, ptr, sep9, end, banNewLines = false) { - if (!end) { - ptr = indexOfNewline(str, ptr); - return ptr < 0 ? str.length : ptr; + if (c === 116) { + if (ctx.s.charCodeAt(++ctx.p) !== 114 || ctx.s.charCodeAt(++ctx.p) !== 117 || ctx.s.charCodeAt(++ctx.p) !== 101) + throw new TomlError("invalid value", { toml: ctx.s, ptr }); + ctx.p++; + return true; } - for (let i = ptr; i < str.length; i++) { - let c = str[i]; - if (c === "#") { - i = indexOfNewline(str, i); - if (i < 0) - break; - } else if (c === sep9) { - return i + 1; - } else if (c === end || banNewLines && (c === "\n" || c === "\r" && str[i + 1] === "\n")) { - return i; - } + if (c === 102) { + if (ctx.s.charCodeAt(++ctx.p) !== 97 || ctx.s.charCodeAt(++ctx.p) !== 108 || ctx.s.charCodeAt(++ctx.p) !== 115 || ctx.s.charCodeAt(++ctx.p) !== 101) + throw new TomlError("invalid value", { toml: ctx.s, ptr }); + ctx.p++; + return false; } - throw new TomlError("cannot find end of structure", { - toml: str, - ptr - }); -} - -// node_modules/smol-toml/dist/extract.js -function sliceAndTrimEndOf(str, startPtr, endPtr) { - let value = str.slice(startPtr, endPtr); - let commentIdx = value.indexOf("#"); - if (commentIdx > -1) { - skipComment(str, commentIdx); - value = value.slice(0, commentIdx); - } - return [value.trimEnd(), commentIdx]; -} -function extractValue(str, ptr, end, depth, integersAsBigInt) { - if (depth === 0) { - throw new TomlError("document contains excessively nested structures. aborting.", { - toml: str, - ptr - }); - } - let c = str[ptr]; - if (c === "[" || c === "{") { - let [value, endPtr2] = c === "[" ? parseArray(str, ptr, depth, integersAsBigInt) : parseInlineTable(str, ptr, depth, integersAsBigInt); - if (end) { - endPtr2 = skipVoid(str, endPtr2); - if (str[endPtr2] === ",") - endPtr2++; - else if (str[endPtr2] !== end) { - throw new TomlError("expected comma or end of structure", { - toml: str, - ptr: endPtr2 - }); - } - } - return [value, endPtr2]; - } - if (c === '"' || c === "'") { - let [parsed, endPtr2] = parseString(str, ptr); - if (end) { - endPtr2 = skipVoid(str, endPtr2); - if (str[endPtr2] && str[endPtr2] !== "," && str[endPtr2] !== end && str[endPtr2] !== "\n" && str[endPtr2] !== "\r") { - throw new TomlError("unexpected character encountered", { - toml: str, - ptr: endPtr2 - }); - } - if (str[endPtr2] === ",") - endPtr2++; - } - return [parsed, endPtr2]; - } - let endPtr = skipUntil(str, ptr, ",", end); - let slice = sliceAndTrimEndOf(str, ptr, endPtr - (str[endPtr - 1] === "," ? 1 : 0)); - if (!slice[0]) { - throw new TomlError("incomplete key-value declaration: no value specified", { - toml: str, - ptr - }); - } - if (end && slice[1] > -1) { - endPtr = skipVoid(str, ptr + slice[1]); - if (str[endPtr] === ",") - endPtr++; - } - return [ - parseValue2(slice[0], str, ptr, integersAsBigInt), - endPtr - ]; + return parseValue2(ctx, integersAsBigInt, end); } // node_modules/smol-toml/dist/struct.js var KEY_PART_RE = /^[a-zA-Z0-9-_]+[ \t]*$/; -function parseKey(str, ptr, end = "=") { - let dot = ptr - 1; +function parseKey(ctx, end = "=") { + let start = ctx.p; + let dot = start - 1; let parsed = []; - let endPtr = str.indexOf(end, ptr); + let endPtr = ctx.s.indexOf(end, start); if (endPtr < 0) { throw new TomlError("incomplete key-value: cannot find end of key", { - toml: str, - ptr + toml: ctx.s, + ptr: start }); } do { - let c = str[ptr = ++dot]; - if (c !== " " && c !== " ") { - if (c === '"' || c === "'") { - if (c === str[ptr + 1] && c === str[ptr + 2]) { + let c = ctx.s.charCodeAt(ctx.p = ++dot); + if (c !== 32 && c !== 9) { + if (c === 34 || c === 39) { + if (c === ctx.s.charCodeAt(ctx.p + 1) && c === ctx.s.charCodeAt(ctx.p + 2)) { throw new TomlError("multiline strings are not allowed in keys", { - toml: str, - ptr + toml: ctx.s, + ptr: ctx.p }); } - let [part, eos] = parseString(str, ptr); - dot = str.indexOf(".", eos); - let strEnd = str.slice(eos, dot < 0 || dot > endPtr ? endPtr : dot); + let part = parseString(ctx); + dot = ctx.s.indexOf(".", ctx.p); + let strEnd = ctx.s.slice(ctx.p, dot < 0 || dot > endPtr ? endPtr : dot); let newLine = indexOfNewline(strEnd); if (newLine > -1) { throw new TomlError("newlines are not allowed in keys", { - toml: str, - ptr: ptr + dot + newLine + toml: ctx.s, + ptr: newLine }); } if (strEnd.trimStart()) { throw new TomlError("found extra tokens after the string part", { - toml: str, - ptr: eos + toml: ctx.s, + ptr: ctx.p }); } - if (endPtr < eos) { - endPtr = str.indexOf(end, eos); + if (endPtr < ctx.p) { + endPtr = ctx.s.indexOf(end, ctx.p); if (endPtr < 0) { throw new TomlError("incomplete key-value: cannot find end of key", { - toml: str, - ptr + toml: ctx.s, + ptr: start }); } } parsed.push(part); } else { - dot = str.indexOf(".", ptr); - let part = str.slice(ptr, dot < 0 || dot > endPtr ? endPtr : dot); + dot = ctx.s.indexOf(".", ctx.p); + let part = ctx.s.slice(ctx.p, dot < 0 || dot > endPtr ? endPtr : dot); if (!KEY_PART_RE.test(part)) { throw new TomlError("only letter, numbers, dashes and underscores are allowed in keys", { - toml: str, - ptr + toml: ctx.s, + ptr: ctx.p }); } parsed.push(part.trimEnd()); } } } while (dot + 1 && dot < endPtr); - return [parsed, skipVoid(str, endPtr + 1, true, true)]; + ctx.p = endPtr + 1; + skipVoid(ctx, true, true); + return parsed; } -function parseInlineTable(str, ptr, depth, integersAsBigInt) { +function parseInlineTable(ctx, integersAsBigInt) { let res = {}; let seen = /* @__PURE__ */ new Set(); let c; - ptr++; - while ((c = str[ptr++]) !== "}" && c) { - if (c === ",") { - throw new TomlError("expected value, found comma", { - toml: str, - ptr: ptr - 1 - }); - } else if (c === "#") - ptr = skipComment(str, ptr); - else if (c !== " " && c !== " " && c !== "\n" && c !== "\r") { - let k; - let t = res; - let hasOwn = false; - let [key, keyEndPtr] = parseKey(str, ptr - 1); - for (let i = 0; i < key.length; i++) { - if (i) - t = hasOwn ? t[k] : t[k] = {}; - k = key[i]; - if ((hasOwn = Object.hasOwn(t, k)) && (typeof t[k] !== "object" || seen.has(t[k]))) { - throw new TomlError("trying to redefine an already defined value", { - toml: str, - ptr - }); - } - if (!hasOwn && k === "__proto__") { - Object.defineProperty(t, k, { enumerable: true, configurable: true, writable: true }); - } - } - if (hasOwn) { + ctx.p++; + while (ctx.p < ctx.s.length) { + skipVoid(ctx); + if ((c = ctx.s.charCodeAt(ctx.p)) === 125) { + ctx.p++; + return res; + } + let k; + let t = res; + let hasOwn = false; + let p = ctx.p; + let key = parseKey(ctx); + for (let i = 0; i < key.length; i++) { + if (i) + t = hasOwn ? t[k] : t[k] = {}; + k = key[i]; + if ((hasOwn = Object.hasOwn(t, k)) && (typeof t[k] !== "object" || seen.has(t[k]))) { throw new TomlError("trying to redefine an already defined value", { - toml: str, - ptr + toml: ctx.s, + ptr: p }); } - let [value, valueEndPtr] = extractValue(str, keyEndPtr, "}", depth - 1, integersAsBigInt); - seen.add(value); - t[k] = value; - ptr = valueEndPtr; + if (!hasOwn && k === "__proto__") { + Object.defineProperty(t, k, { enumerable: true, configurable: true, writable: true }); + } + } + if (hasOwn) { + throw new TomlError("trying to redefine an already defined value", { + toml: ctx.s, + ptr: ctx.p + }); + } + let value = extractValue(ctx, 125, integersAsBigInt); + seen.add(t[k] = value); + skipVoid(ctx); + if ((c = ctx.s.charCodeAt(ctx.p++)) === 125) { + return res; + } + if (c !== 44) { + throw new TomlError("expected comma or end of structure", { toml: ctx.s, ptr: ctx.p - 1 }); } } - if (!c) { - throw new TomlError("unfinished table encountered", { - toml: str, - ptr - }); - } - return [res, ptr]; + throw new TomlError("unfinished table encountered", { + toml: ctx.s, + ptr: ctx.p + }); } -function parseArray(str, ptr, depth, integersAsBigInt) { +function parseArray(ctx, integersAsBigInt) { let res = []; let c; - ptr++; - while ((c = str[ptr++]) !== "]" && c) { - if (c === ",") { - throw new TomlError("expected value, found comma", { - toml: str, - ptr: ptr - 1 - }); - } else if (c === "#") - ptr = skipComment(str, ptr); - else if (c !== " " && c !== " " && c !== "\n" && c !== "\r") { - let e = extractValue(str, ptr - 1, "]", depth - 1, integersAsBigInt); - res.push(e[0]); - ptr = e[1]; + ctx.p++; + while (ctx.p < ctx.s.length) { + skipVoid(ctx); + if ((c = ctx.s.charCodeAt(ctx.p)) === 93) { + ctx.p++; + return res; + } + res.push(extractValue(ctx, 93, integersAsBigInt)); + skipVoid(ctx); + if ((c = ctx.s.charCodeAt(ctx.p++)) === 93) { + return res; + } + if (c !== 44) { + throw new TomlError("expected comma or end of structure", { toml: ctx.s, ptr: ctx.p - 1 }); } } - if (!c) { - throw new TomlError("unfinished array encountered", { - toml: str, - ptr - }); - } - return [res, ptr]; + throw new TomlError("unfinished array encountered", { + toml: ctx.s, + ptr: ctx.p + }); } // node_modules/smol-toml/dist/parse.js @@ -101273,25 +101234,29 @@ function peekTable(key, table, meta, type) { return [k, t, state3.c]; } function parse4(toml, { maxDepth = 1e3, integersAsBigInt } = {}) { + let ctx = { s: toml, p: 0, d: maxDepth }; let res = {}; let meta = {}; + let tmp; let tbl = res; let m = meta; - for (let ptr = skipVoid(toml, 0); ptr < toml.length; ) { - if (toml[ptr] === "[") { - let isTableArray = toml[++ptr] === "["; - let k = parseKey(toml, ptr += +isTableArray, "]"); + skipVoid(ctx); + while (ctx.p < toml.length) { + if (toml.charCodeAt(ctx.p) === 91) { + let isTableArray = toml.charCodeAt(++ctx.p) === 91; + tmp = ctx.p += +isTableArray; + let k = parseKey(ctx, "]"); if (isTableArray) { - if (toml[k[1] - 1] !== "]") { + if (toml.charCodeAt(ctx.p - 1) !== 93) { throw new TomlError("expected end of table declaration", { toml, - ptr: k[1] - 1 + ptr: ctx.p - 1 }); } - k[1]++; + ctx.p++; } let p = peekTable( - k[0], + k, res, meta, isTableArray ? 2 : 1 @@ -101300,16 +101265,16 @@ function parse4(toml, { maxDepth = 1e3, integersAsBigInt } = {}) { if (!p) { throw new TomlError("trying to redefine an already defined table or value", { toml, - ptr + ptr: tmp }); } m = p[2]; tbl = p[1]; - ptr = k[1]; } else { - let k = parseKey(toml, ptr); + tmp = ctx.p; + let k = parseKey(ctx); let p = peekTable( - k[0], + k, tbl, m, 0 @@ -101318,21 +101283,19 @@ function parse4(toml, { maxDepth = 1e3, integersAsBigInt } = {}) { if (!p) { throw new TomlError("trying to redefine an already defined table or value", { toml, - ptr + ptr: tmp }); } - let v = extractValue(toml, k[1], void 0, maxDepth, integersAsBigInt); - p[1][p[0]] = v[0]; - ptr = v[1]; + p[1][p[0]] = extractValue(ctx, void 0, integersAsBigInt); } - ptr = skipVoid(toml, ptr, true); - if (toml[ptr] && toml[ptr] !== "\n" && toml[ptr] !== "\r") { + skipVoid(ctx, true); + if (ctx.p < toml.length && (tmp = toml.charCodeAt(ctx.p)) !== 10 && tmp !== 13) { throw new TomlError("each key-value declaration must be followed by an end-of-line", { toml, - ptr + ptr: ctx.p }); } - ptr = skipVoid(toml, ptr); + skipVoid(ctx); } return res; } @@ -102488,8 +102451,8 @@ undici/lib/web/websocket/frame.js: smol-toml/dist/date.js: smol-toml/dist/error.js: -smol-toml/dist/primitive.js: smol-toml/dist/util.js: +smol-toml/dist/primitive.js: smol-toml/dist/extract.js: smol-toml/dist/struct.js: smol-toml/dist/parse.js: diff --git a/package-lock.json b/package-lock.json index dccff7c..d43cd31 100644 --- a/package-lock.json +++ b/package-lock.json @@ -16,18 +16,18 @@ "@actions/io": "^3.0.2", "@actions/tool-cache": "^4.0.0", "@renovatebot/pep440": "^5.0.0", - "smol-toml": "^1.7.1", + "smol-toml": "^1.8.0", "undici": "^8.10.0" }, "devDependencies": { - "@biomejs/biome": "^2.5.8", + "@biomejs/biome": "^2.5.9", "@types/js-yaml": "^4.0.9", "@types/node": "^26.2.0", "@types/semver": "^7.8.0", - "@vercel/ncc": "^0.44.1", + "@vercel/ncc": "^0.45.0", "esbuild": "^0.28.2", "jest": "^30.4.2", - "js-yaml": "^5.2.3", + "js-yaml": "^5.3.0", "ts-jest": "^29.4.11", "typescript": "^6.0.3" }, @@ -912,9 +912,9 @@ "license": "MIT" }, "node_modules/@biomejs/biome": { - "version": "2.5.8", - "resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-2.5.8.tgz", - "integrity": "sha512-aeAeeJB9fSDc7Gq+2GqpQxA0qBj6gj1k2R6L1cYqGePKP/baIq1WX8y6B+D+nRsO5ViQL22K/8IwbqERW0q1nw==", + "version": "2.5.9", + "resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-2.5.9.tgz", + "integrity": "sha512-KkgCvdHB4IhtpHpF564plA9jo6fDOwWGQ/3jvreLzgOtRLEDoPqr7QO9qejNA8jKwDsSkAKr77hqBHnyUbIw4g==", "dev": true, "license": "MIT OR Apache-2.0", "bin": { @@ -928,20 +928,20 @@ "url": "https://opencollective.com/biome" }, "optionalDependencies": { - "@biomejs/cli-darwin-arm64": "2.5.8", - "@biomejs/cli-darwin-x64": "2.5.8", - "@biomejs/cli-linux-arm64": "2.5.8", - "@biomejs/cli-linux-arm64-musl": "2.5.8", - "@biomejs/cli-linux-x64": "2.5.8", - "@biomejs/cli-linux-x64-musl": "2.5.8", - "@biomejs/cli-win32-arm64": "2.5.8", - "@biomejs/cli-win32-x64": "2.5.8" + "@biomejs/cli-darwin-arm64": "2.5.9", + "@biomejs/cli-darwin-x64": "2.5.9", + "@biomejs/cli-linux-arm64": "2.5.9", + "@biomejs/cli-linux-arm64-musl": "2.5.9", + "@biomejs/cli-linux-x64": "2.5.9", + "@biomejs/cli-linux-x64-musl": "2.5.9", + "@biomejs/cli-win32-arm64": "2.5.9", + "@biomejs/cli-win32-x64": "2.5.9" } }, "node_modules/@biomejs/cli-darwin-arm64": { - "version": "2.5.8", - "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-2.5.8.tgz", - "integrity": "sha512-mk1QON9PHllvvLN5gU3f4rMxeh4syK5p9OvKyWH6/W8ueh04uaC8TUXXByhGufWf/y5mQc03ZLM45zU+cmqMjA==", + "version": "2.5.9", + "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-2.5.9.tgz", + "integrity": "sha512-am22pX2aBqznqq1eMyIj/bZ++riF3Lk6ct7cbv+gQK0csFhr+d8O0RkOi2FF2qSgFgANbqNkIZ0/PxlnW2pLFg==", "cpu": [ "arm64" ], @@ -956,9 +956,9 @@ } }, "node_modules/@biomejs/cli-darwin-x64": { - "version": "2.5.8", - "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-2.5.8.tgz", - "integrity": "sha512-bsGwFMBNyHPyiLSsQcZJxdoRrg1V4JL+d7wEsvUBczlP9U9lwM+7mzQHxI4o1mhBsTmdOBbAb6fHU3Z3snN45w==", + "version": "2.5.9", + "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-2.5.9.tgz", + "integrity": "sha512-l44KWDHLDvEnD0N/XcrVs7VXb3A18xL7QS3WB0eL93wbmk529ffIG55vleGCqaunpRUjLrdnjK05Qki1dsjylg==", "cpu": [ "x64" ], @@ -973,9 +973,9 @@ } }, "node_modules/@biomejs/cli-linux-arm64": { - "version": "2.5.8", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-2.5.8.tgz", - "integrity": "sha512-XmFiA0WPYFC+uiUDC8WRFzAIH9bo7vwQLav38Uoq4ETC+T/+uBi0TsYGJECkugY3r8USl3jc+Ae2/irAF6F2lQ==", + "version": "2.5.9", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-2.5.9.tgz", + "integrity": "sha512-ICaK+IYaVZvKbBxX2rwrPT0DdUDMnE9Vm3nQGe+mltQPmUg19pONzkPWGdY4FCsoreDETWDynvdt4ysCbF5gNQ==", "cpu": [ "arm64" ], @@ -990,9 +990,9 @@ } }, "node_modules/@biomejs/cli-linux-arm64-musl": { - "version": "2.5.8", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-2.5.8.tgz", - "integrity": "sha512-VcJNbstduTHx83NGAdhp78/JOcP45BZHXL7yNsfI1uGzdUgegAz2s+mSoT7wK6PBNzLoqG0zDOXaz/RQYVtSiw==", + "version": "2.5.9", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-2.5.9.tgz", + "integrity": "sha512-7ImVPwBLCtkmpR5esd8RHhTqW94f0JLJQum6AneYcy94jRm18TaPPm7slaigGzFhfgt3QiD1Vj52LKmBAnKizA==", "cpu": [ "arm64" ], @@ -1007,9 +1007,9 @@ } }, "node_modules/@biomejs/cli-linux-x64": { - "version": "2.5.8", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-2.5.8.tgz", - "integrity": "sha512-S5wcm9OBDvLHodD4PUaN488hCpco9QD/9ZxuYJiw4euWtr/oQvLR72z2ixItH8Wd5BCm6FZaeb+YNvOoM1xHtQ==", + "version": "2.5.9", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-2.5.9.tgz", + "integrity": "sha512-z22Q/zFYSvbIJfW1CbfZPu4X8PddS6Qd2ORbc6h+aT6EcwAxUF3m6fA4HjNvA3TU4X0dTJRwNPB165ES3PJXzg==", "cpu": [ "x64" ], @@ -1024,9 +1024,9 @@ } }, "node_modules/@biomejs/cli-linux-x64-musl": { - "version": "2.5.8", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-2.5.8.tgz", - "integrity": "sha512-kKmiyokeISRGq2FLwvr+TzsgBusfxaZ0FZNLcOYOpCK/78tRrEjeEBLvq3xLZMpqbANgJdRPI7vZX8ZL37u9/w==", + "version": "2.5.9", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-2.5.9.tgz", + "integrity": "sha512-RXGaD0o1/pTTguYw1aeDJh9ad6Lfrui0fI7mBderTyGr7WuUJkBIttgLkR3XJyoxOkkgfBDspaUT8wXArTqLZw==", "cpu": [ "x64" ], @@ -1041,9 +1041,9 @@ } }, "node_modules/@biomejs/cli-win32-arm64": { - "version": "2.5.8", - "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-2.5.8.tgz", - "integrity": "sha512-nILH0mzm3Hi3iEdd7o7GpB8kBR/mSQwfQG/tyBqyNrY2GFtcgwfV9nV8xLmbtUpMNY/Oi0Ml1XgfR4flOdq+AA==", + "version": "2.5.9", + "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-2.5.9.tgz", + "integrity": "sha512-nHK+/HHC+D0ogAHUxomgoSTdjImb6fmNNVTKmf0tyu4eDL1DqPKIHc+i+UL8+b0RnAu8224qo8F2tCVnaT0A3w==", "cpu": [ "arm64" ], @@ -1058,9 +1058,9 @@ } }, "node_modules/@biomejs/cli-win32-x64": { - "version": "2.5.8", - "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-2.5.8.tgz", - "integrity": "sha512-I2czzXTY61f3nFJxXoMDq80t7MivxDEnCjE+8sDKoFfcKMaoQdkqhIFQ3KyY0XLzeSpUBYeNAXgD+iOV/BU0VA==", + "version": "2.5.9", + "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-2.5.9.tgz", + "integrity": "sha512-Yiq0H56LjXSSw/hd9YkXgSLQfzyDJzbzU2TezozxyNw+uKWAqOtqGVvBfzKRRDiaFF5avGAhHdWKx7LtDOShUw==", "cpu": [ "x64" ], @@ -2569,9 +2569,9 @@ ] }, "node_modules/@vercel/ncc": { - "version": "0.44.1", - "resolved": "https://registry.npmjs.org/@vercel/ncc/-/ncc-0.44.1.tgz", - "integrity": "sha512-cUjIE5P2YY1n+Kt9rFIazMMpGoPn1Fic04rOmTkElMkiDP5oszGfERMpo2shVkFKDL7rVppdM2pqJKC59shQWQ==", + "version": "0.45.0", + "resolved": "https://registry.npmjs.org/@vercel/ncc/-/ncc-0.45.0.tgz", + "integrity": "sha512-8zPi1yO2mHpoKTD+e+Bf0ZT3e+sWHSOyGapm9s7b5R0gxJi3CiFTqmeQiMEyu6ejrz2s09M8JkEoUaTWjBJPQQ==", "dev": true, "license": "MIT", "bin": { @@ -4414,9 +4414,9 @@ "license": "MIT" }, "node_modules/js-yaml": { - "version": "5.2.3", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-5.2.3.tgz", - "integrity": "sha512-n+mUVyUX5bVv7G/G2zyIHOhdxfuU1dY2NOFzTQUWiMUbFss8b57NFlgCCaggU78wSw5KVS9cllzeLyzyR+n5nw==", + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-5.3.0.tgz", + "integrity": "sha512-muutsYr+e2+d3rTgUGslq5rxbBlUy3cJ61IsHag2QNDQV+7zXWjkUpmALIajhrlLlrgRUiymj6U3zUr/TMK84Q==", "dev": true, "funding": [ { @@ -5043,9 +5043,9 @@ } }, "node_modules/smol-toml": { - "version": "1.7.1", - "resolved": "https://registry.npmjs.org/smol-toml/-/smol-toml-1.7.1.tgz", - "integrity": "sha512-PPlsspAZ4jbMBu5DMFhfUGDQLu/vrL4SyBROVS37x8ynnVmFIs1VPBz1Co8Xks3TvpIaZXmU85y4DrQ+UyVFoQ==", + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/smol-toml/-/smol-toml-1.8.0.tgz", + "integrity": "sha512-kCZr2V3ch9i00x8zXRhjUNVcjG9ijES5dDudkXvUVCT5QlJNQWElSJdZqyPemffHoLNUYwOcou0Fy+ojN0uHSQ==", "license": "BSD-3-Clause", "engines": { "node": ">= 18" @@ -6458,74 +6458,74 @@ "dev": true }, "@biomejs/biome": { - "version": "2.5.8", - "resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-2.5.8.tgz", - "integrity": "sha512-aeAeeJB9fSDc7Gq+2GqpQxA0qBj6gj1k2R6L1cYqGePKP/baIq1WX8y6B+D+nRsO5ViQL22K/8IwbqERW0q1nw==", + "version": "2.5.9", + "resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-2.5.9.tgz", + "integrity": "sha512-KkgCvdHB4IhtpHpF564plA9jo6fDOwWGQ/3jvreLzgOtRLEDoPqr7QO9qejNA8jKwDsSkAKr77hqBHnyUbIw4g==", "dev": true, "requires": { - "@biomejs/cli-darwin-arm64": "2.5.8", - "@biomejs/cli-darwin-x64": "2.5.8", - "@biomejs/cli-linux-arm64": "2.5.8", - "@biomejs/cli-linux-arm64-musl": "2.5.8", - "@biomejs/cli-linux-x64": "2.5.8", - "@biomejs/cli-linux-x64-musl": "2.5.8", - "@biomejs/cli-win32-arm64": "2.5.8", - "@biomejs/cli-win32-x64": "2.5.8" + "@biomejs/cli-darwin-arm64": "2.5.9", + "@biomejs/cli-darwin-x64": "2.5.9", + "@biomejs/cli-linux-arm64": "2.5.9", + "@biomejs/cli-linux-arm64-musl": "2.5.9", + "@biomejs/cli-linux-x64": "2.5.9", + "@biomejs/cli-linux-x64-musl": "2.5.9", + "@biomejs/cli-win32-arm64": "2.5.9", + "@biomejs/cli-win32-x64": "2.5.9" } }, "@biomejs/cli-darwin-arm64": { - "version": "2.5.8", - "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-2.5.8.tgz", - "integrity": "sha512-mk1QON9PHllvvLN5gU3f4rMxeh4syK5p9OvKyWH6/W8ueh04uaC8TUXXByhGufWf/y5mQc03ZLM45zU+cmqMjA==", + "version": "2.5.9", + "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-2.5.9.tgz", + "integrity": "sha512-am22pX2aBqznqq1eMyIj/bZ++riF3Lk6ct7cbv+gQK0csFhr+d8O0RkOi2FF2qSgFgANbqNkIZ0/PxlnW2pLFg==", "dev": true, "optional": true }, "@biomejs/cli-darwin-x64": { - "version": "2.5.8", - "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-2.5.8.tgz", - "integrity": "sha512-bsGwFMBNyHPyiLSsQcZJxdoRrg1V4JL+d7wEsvUBczlP9U9lwM+7mzQHxI4o1mhBsTmdOBbAb6fHU3Z3snN45w==", + "version": "2.5.9", + "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-2.5.9.tgz", + "integrity": "sha512-l44KWDHLDvEnD0N/XcrVs7VXb3A18xL7QS3WB0eL93wbmk529ffIG55vleGCqaunpRUjLrdnjK05Qki1dsjylg==", "dev": true, "optional": true }, "@biomejs/cli-linux-arm64": { - "version": "2.5.8", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-2.5.8.tgz", - "integrity": "sha512-XmFiA0WPYFC+uiUDC8WRFzAIH9bo7vwQLav38Uoq4ETC+T/+uBi0TsYGJECkugY3r8USl3jc+Ae2/irAF6F2lQ==", + "version": "2.5.9", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-2.5.9.tgz", + "integrity": "sha512-ICaK+IYaVZvKbBxX2rwrPT0DdUDMnE9Vm3nQGe+mltQPmUg19pONzkPWGdY4FCsoreDETWDynvdt4ysCbF5gNQ==", "dev": true, "optional": true }, "@biomejs/cli-linux-arm64-musl": { - "version": "2.5.8", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-2.5.8.tgz", - "integrity": "sha512-VcJNbstduTHx83NGAdhp78/JOcP45BZHXL7yNsfI1uGzdUgegAz2s+mSoT7wK6PBNzLoqG0zDOXaz/RQYVtSiw==", + "version": "2.5.9", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-2.5.9.tgz", + "integrity": "sha512-7ImVPwBLCtkmpR5esd8RHhTqW94f0JLJQum6AneYcy94jRm18TaPPm7slaigGzFhfgt3QiD1Vj52LKmBAnKizA==", "dev": true, "optional": true }, "@biomejs/cli-linux-x64": { - "version": "2.5.8", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-2.5.8.tgz", - "integrity": "sha512-S5wcm9OBDvLHodD4PUaN488hCpco9QD/9ZxuYJiw4euWtr/oQvLR72z2ixItH8Wd5BCm6FZaeb+YNvOoM1xHtQ==", + "version": "2.5.9", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-2.5.9.tgz", + "integrity": "sha512-z22Q/zFYSvbIJfW1CbfZPu4X8PddS6Qd2ORbc6h+aT6EcwAxUF3m6fA4HjNvA3TU4X0dTJRwNPB165ES3PJXzg==", "dev": true, "optional": true }, "@biomejs/cli-linux-x64-musl": { - "version": "2.5.8", - "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-2.5.8.tgz", - "integrity": "sha512-kKmiyokeISRGq2FLwvr+TzsgBusfxaZ0FZNLcOYOpCK/78tRrEjeEBLvq3xLZMpqbANgJdRPI7vZX8ZL37u9/w==", + "version": "2.5.9", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-2.5.9.tgz", + "integrity": "sha512-RXGaD0o1/pTTguYw1aeDJh9ad6Lfrui0fI7mBderTyGr7WuUJkBIttgLkR3XJyoxOkkgfBDspaUT8wXArTqLZw==", "dev": true, "optional": true }, "@biomejs/cli-win32-arm64": { - "version": "2.5.8", - "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-2.5.8.tgz", - "integrity": "sha512-nILH0mzm3Hi3iEdd7o7GpB8kBR/mSQwfQG/tyBqyNrY2GFtcgwfV9nV8xLmbtUpMNY/Oi0Ml1XgfR4flOdq+AA==", + "version": "2.5.9", + "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-2.5.9.tgz", + "integrity": "sha512-nHK+/HHC+D0ogAHUxomgoSTdjImb6fmNNVTKmf0tyu4eDL1DqPKIHc+i+UL8+b0RnAu8224qo8F2tCVnaT0A3w==", "dev": true, "optional": true }, "@biomejs/cli-win32-x64": { - "version": "2.5.8", - "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-2.5.8.tgz", - "integrity": "sha512-I2czzXTY61f3nFJxXoMDq80t7MivxDEnCjE+8sDKoFfcKMaoQdkqhIFQ3KyY0XLzeSpUBYeNAXgD+iOV/BU0VA==", + "version": "2.5.9", + "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-2.5.9.tgz", + "integrity": "sha512-Yiq0H56LjXSSw/hd9YkXgSLQfzyDJzbzU2TezozxyNw+uKWAqOtqGVvBfzKRRDiaFF5avGAhHdWKx7LtDOShUw==", "dev": true, "optional": true }, @@ -7445,9 +7445,9 @@ "optional": true }, "@vercel/ncc": { - "version": "0.44.1", - "resolved": "https://registry.npmjs.org/@vercel/ncc/-/ncc-0.44.1.tgz", - "integrity": "sha512-cUjIE5P2YY1n+Kt9rFIazMMpGoPn1Fic04rOmTkElMkiDP5oszGfERMpo2shVkFKDL7rVppdM2pqJKC59shQWQ==", + "version": "0.45.0", + "resolved": "https://registry.npmjs.org/@vercel/ncc/-/ncc-0.45.0.tgz", + "integrity": "sha512-8zPi1yO2mHpoKTD+e+Bf0ZT3e+sWHSOyGapm9s7b5R0gxJi3CiFTqmeQiMEyu6ejrz2s09M8JkEoUaTWjBJPQQ==", "dev": true }, "agent-base": { @@ -8708,9 +8708,9 @@ "dev": true }, "js-yaml": { - "version": "5.2.3", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-5.2.3.tgz", - "integrity": "sha512-n+mUVyUX5bVv7G/G2zyIHOhdxfuU1dY2NOFzTQUWiMUbFss8b57NFlgCCaggU78wSw5KVS9cllzeLyzyR+n5nw==", + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-5.3.0.tgz", + "integrity": "sha512-muutsYr+e2+d3rTgUGslq5rxbBlUy3cJ61IsHag2QNDQV+7zXWjkUpmALIajhrlLlrgRUiymj6U3zUr/TMK84Q==", "dev": true, "requires": { "argparse": "^2.0.1" @@ -9116,9 +9116,9 @@ "dev": true }, "smol-toml": { - "version": "1.7.1", - "resolved": "https://registry.npmjs.org/smol-toml/-/smol-toml-1.7.1.tgz", - "integrity": "sha512-PPlsspAZ4jbMBu5DMFhfUGDQLu/vrL4SyBROVS37x8ynnVmFIs1VPBz1Co8Xks3TvpIaZXmU85y4DrQ+UyVFoQ==" + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/smol-toml/-/smol-toml-1.8.0.tgz", + "integrity": "sha512-kCZr2V3ch9i00x8zXRhjUNVcjG9ijES5dDudkXvUVCT5QlJNQWElSJdZqyPemffHoLNUYwOcou0Fy+ojN0uHSQ==" }, "source-map": { "version": "0.6.1", diff --git a/package.json b/package.json index bd69da6..a300eca 100644 --- a/package.json +++ b/package.json @@ -45,18 +45,18 @@ "@actions/io": "^3.0.2", "@actions/tool-cache": "^4.0.0", "@renovatebot/pep440": "^5.0.0", - "smol-toml": "^1.7.1", + "smol-toml": "^1.8.0", "undici": "^8.10.0" }, "devDependencies": { - "@biomejs/biome": "^2.5.8", + "@biomejs/biome": "^2.5.9", "@types/js-yaml": "^4.0.9", "@types/node": "^26.2.0", "@types/semver": "^7.8.0", - "@vercel/ncc": "^0.44.1", + "@vercel/ncc": "^0.45.0", "esbuild": "^0.28.2", "jest": "^30.4.2", - "js-yaml": "^5.2.3", + "js-yaml": "^5.3.0", "ts-jest": "^29.4.11", "typescript": "^6.0.3" }