diff --git a/package.json b/package.json index f1a97a02..3f2671dd 100644 --- a/package.json +++ b/package.json @@ -30,13 +30,13 @@ }, "devDependencies": { "@changesets/cli": "^2.29.8", - "@eslint/js": "^9.39.2", + "@eslint/js": "^10.0.1", "@fast-check/packaged": "*", "@typescript-eslint/utils": "^8.54.0", "@vitest/coverage-v8": "^4.0.18", "all-contributors-cli": "^6.26.1", "cross-env": "^10.1.0", - "eslint": "^9.39.2", + "eslint": "^10.0.0", "eslint-config-prettier": "^10.1.8", "globals": "^17.3.0", "pkg-pr-new": "^0.0.63", diff --git a/packages/fast-check/test/e2e/Poisoning.spec.ts b/packages/fast-check/test/e2e/Poisoning.spec.ts index 16317450..20c764a4 100644 --- a/packages/fast-check/test/e2e/Poisoning.spec.ts +++ b/packages/fast-check/test/e2e/Poisoning.spec.ts @@ -218,26 +218,31 @@ function dropMainGlobals(): () => void { TypeError, URIError, Atomics, - WebAssembly, URL, CompressionStream, DecompressionStream, TextDecoder, globalThis, // The following globals are unknown for TypeScript - // @ts-expect-error Unknown for TypeScript given our current compilation options AggregateError, // @ts-expect-error Unknown for TypeScript given our current compilation options + WebAssembly, + // @ts-expect-error Unknown for TypeScript given our current compilation options FinalizationRegistry, // @ts-expect-error Unknown for TypeScript given our current compilation options WeakRef, + // @ts-expect-error Unknown for TypeScript given our current compilation options + typeof Performance !== 'undefined' ? Performance : undefined, + // @ts-expect-error Unknown for TypeScript given our current compilation options + typeof ErrorEvent !== 'undefined' ? ErrorEvent : undefined, + // @ts-expect-error - 'Iterator' only refers to a type, but is being used as a value here. ts(2693) + typeof Iterator !== 'undefined' ? Iterator : undefined, // The following globals used to be unknown on MacOS, // as such we check they exist before referencing them typeof File !== 'undefined' ? File : undefined, typeof BroadcastChannel !== 'undefined' ? BroadcastChannel : undefined, typeof DOMException !== 'undefined' ? DOMException : undefined, typeof Blob !== 'undefined' ? Blob : undefined, - typeof Performance !== 'undefined' ? Performance : undefined, typeof ReadableStream !== 'undefined' ? ReadableStream : undefined, typeof ReadableStreamDefaultReader !== 'undefined' ? ReadableStreamDefaultReader : undefined, typeof ReadableStreamBYOBReader !== 'undefined' ? ReadableStreamBYOBReader : undefined, @@ -268,8 +273,6 @@ function dropMainGlobals(): () => void { typeof SubtleCrypto !== 'undefined' ? SubtleCrypto : undefined, typeof CustomEvent !== 'undefined' ? CustomEvent : undefined, typeof WebSocket !== 'undefined' ? WebSocket : undefined, - // @ts-expect-error - 'Iterator' only refers to a type, but is being used as a value here. ts(2693) - typeof Iterator !== 'undefined' ? Iterator : undefined, typeof Navigator !== 'undefined' ? Navigator : undefined, typeof CloseEvent !== 'undefined' ? CloseEvent : undefined, typeof URLPattern !== 'undefined' ? URLPattern : undefined, @@ -277,7 +280,6 @@ function dropMainGlobals(): () => void { typeof DisposableStack !== 'undefined' ? DisposableStack : undefined, typeof AsyncDisposableStack !== 'undefined' ? AsyncDisposableStack : undefined, typeof Float16Array !== 'undefined' ? Float16Array : undefined, - typeof ErrorEvent !== 'undefined' ? ErrorEvent : undefined, typeof Storage !== 'undefined' ? Storage : undefined, ].filter((mainGlobal) => mainGlobal !== undefined); const skippedGlobals = new Set(['Array']); diff --git a/packages/fast-check/test/e2e/documentation/Docs.md.spec.ts b/packages/fast-check/test/e2e/documentation/Docs.md.spec.ts index 9f1eaead..e287a6ab 100644 --- a/packages/fast-check/test/e2e/documentation/Docs.md.spec.ts +++ b/packages/fast-check/test/e2e/documentation/Docs.md.spec.ts @@ -187,7 +187,7 @@ function refreshContent(originalContent: string): { content: string; numExecuted eval(evalCode); return lines; } catch (err) { - throw new Error(`Failed to run code snippet:\n\n${evalCode}\n\nWith error message: ${err}`); + throw new Error(`Failed to run code snippet:\n\n${evalCode}\n\nWith error message: ${err}`, { cause: err }); } finally { console.log = originalConsoleLog; fc.configureGlobal(originalGlobal); diff --git a/packages/fast-check/test/unit/arbitrary/__test-helpers__/ArbitraryAssertions.ts b/packages/fast-check/test/unit/arbitrary/__test-helpers__/ArbitraryAssertions.ts index 1ae86b39..66a1d1d8 100644 --- a/packages/fast-check/test/unit/arbitrary/__test-helpers__/ArbitraryAssertions.ts +++ b/packages/fast-check/test/unit/arbitrary/__test-helpers__/ArbitraryAssertions.ts @@ -209,6 +209,7 @@ export function assertShrinkProducesStrictlySmallerValue( } catch (err) { throw new Error( `Expect: ${fc.stringify(vNew)} to be strictly smaller than ${fc.stringify(vOld)}\n\nGot error: ${err}`, + { cause: err }, ); } } finally { @@ -300,7 +301,9 @@ function assertEquality( expect(v1).toStrictEqual(v2); } } catch (err) { - throw new Error(`Expect: ${fc.stringify(v1)} to be equal to ${fc.stringify(v2)}\n\nGot error: ${err}`); + throw new Error(`Expect: ${fc.stringify(v1)} to be equal to ${fc.stringify(v2)}\n\nGot error: ${err}`, { + cause: err, + }); } } @@ -314,6 +317,6 @@ function assertCorrectness( const out = isCorrect(v, extraParameters, arb); expect(out).not.toBe(false); } catch (err) { - throw new Error(`Expect: ${fc.stringify(v)} to be a correct value\n\nGot error: ${err}`); + throw new Error(`Expect: ${fc.stringify(v)} to be a correct value\n\nGot error: ${err}`, { cause: err }); } } diff --git a/packages/fast-check/test/unit/arbitrary/__test-helpers__/ToStringIsSameFunction.ts b/packages/fast-check/test/unit/arbitrary/__test-helpers__/ToStringIsSameFunction.ts index 04d88863..b7285bb5 100644 --- a/packages/fast-check/test/unit/arbitrary/__test-helpers__/ToStringIsSameFunction.ts +++ b/packages/fast-check/test/unit/arbitrary/__test-helpers__/ToStringIsSameFunction.ts @@ -21,7 +21,7 @@ export function assertToStringIsSameFunction( expect(dataFromToStringBefore).toStrictEqual(data); expect(dataFromToString).toStrictEqual(data); } catch (err) { - throw new Error(`Invalid toString representation encountered, got: ${f}\n\nFailed with: ${err}`); + throw new Error(`Invalid toString representation encountered, got: ${f}\n\nFailed with: ${err}`, { cause: err }); } })(hash, stringify); diff --git a/packages/fast-check/test/unit/arbitrary/_internals/helpers/TextEscaper.spec.ts b/packages/fast-check/test/unit/arbitrary/_internals/helpers/TextEscaper.spec.ts index 1e81d65e..b91b6403 100644 --- a/packages/fast-check/test/unit/arbitrary/_internals/helpers/TextEscaper.spec.ts +++ b/packages/fast-check/test/unit/arbitrary/_internals/helpers/TextEscaper.spec.ts @@ -30,7 +30,7 @@ describe('escapeForTemplateString', () => { try { expect(eval('`' + escapedCharacter + '`')).toBe(character); } catch (err) { - throw new Error(`Failed for i = ${i}, got error: ${err}`); + throw new Error(`Failed for i = ${i}, got error: ${err}`, { cause: err }); } } }); diff --git a/packages/packaged/test/packaged.spec.ts b/packages/packaged/test/packaged.spec.ts index 316a4056..25bd0db6 100644 --- a/packages/packaged/test/packaged.spec.ts +++ b/packages/packaged/test/packaged.spec.ts @@ -37,7 +37,7 @@ describe('removeNonPublishedFiles', () => { await fileSystem.createFile(['node_modules', 'dep-a', 'main.js'], 'console.log("main.js")'); // Act - let requestedPath = ''; + let requestedPath; const lastFolderName = path.basename(fileSystem.packagePath); const beforeLastFolderName = path.basename(path.dirname(fileSystem.packagePath)); switch (pathStyle) { diff --git a/packages/worker/test/e2e/concurrentAssert.spec.ts b/packages/worker/test/e2e/concurrentAssert.spec.ts index 3b96f15d..535599dc 100644 --- a/packages/worker/test/e2e/concurrentAssert.spec.ts +++ b/packages/worker/test/e2e/concurrentAssert.spec.ts @@ -31,7 +31,6 @@ if (isMainThread) { } catch (err) { throw new Error( 'Failed to run concurrentAssert, with log file:\n\n' + readFileSync(concurrentLogFile).toString(), - // @ts-expect-error - Not yet supported by our TS target { cause: err }, ); } finally { diff --git a/packages/worker/test/e2e/predicateIsolation.spec.ts b/packages/worker/test/e2e/predicateIsolation.spec.ts index 4083c41e..01e17006 100644 --- a/packages/worker/test/e2e/predicateIsolation.spec.ts +++ b/packages/worker/test/e2e/predicateIsolation.spec.ts @@ -74,7 +74,9 @@ if (isMainThread) { try { expect(summaryLine).toContain('\x1b[32m\u221A\x1b[0m'); // success tick } catch (subErr) { - throw new Error(`Invalid summary, received:\n${summaryLines.join('\n')}\n\n${subErr}`); + throw new Error(`Invalid summary, received:\n${summaryLines.join('\n')}\n\n${subErr}`, { + cause: subErr, + }); } previousLevel = currentLevel; } @@ -112,7 +114,9 @@ if (isMainThread) { expect(summaryLine).toContain('\x1b[31m\xD7\x1b[0m'); // error tick, we are still running on the same worker } } catch (subErr) { - throw new Error(`Invalid summary, received:\n${summaryLines.join('\n')}\n\n${subErr}`); + throw new Error(`Invalid summary, received:\n${summaryLines.join('\n')}\n\n${subErr}`, { + cause: subErr, + }); } previousLevel = currentLevel; } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 9e884cd4..b09df658 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -12,14 +12,14 @@ importers: specifier: ^2.29.8 version: 2.29.8(@types/node@24.10.11) '@eslint/js': - specifier: ^9.39.2 - version: 9.39.2 + specifier: ^10.0.1 + version: 10.0.1(eslint@10.0.0(jiti@1.21.7)) '@fast-check/packaged': specifier: '*' version: link:packages/packaged '@typescript-eslint/utils': specifier: ^8.54.0 - version: 8.54.0(eslint@9.39.2(jiti@1.21.7))(typescript@5.9.3) + version: 8.54.0(eslint@10.0.0(jiti@1.21.7))(typescript@5.9.3) '@vitest/coverage-v8': specifier: ^4.0.18 version: 4.0.18(vitest@4.0.18(@opentelemetry/api@1.9.0)(@types/node@24.10.11)(happy-dom@20.5.0)(jiti@1.21.7)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)) @@ -30,11 +30,11 @@ importers: specifier: ^10.1.0 version: 10.1.0 eslint: - specifier: ^9.39.2 - version: 9.39.2(jiti@1.21.7) + specifier: ^10.0.0 + version: 10.0.0(jiti@1.21.7) eslint-config-prettier: specifier: ^10.1.8 - version: 10.1.8(eslint@9.39.2(jiti@1.21.7)) + version: 10.1.8(eslint@10.0.0(jiti@1.21.7)) globals: specifier: ^17.3.0 version: 17.3.0 @@ -58,7 +58,7 @@ importers: version: 5.9.3 typescript-eslint: specifier: ^8.54.0 - version: 8.54.0(eslint@9.39.2(jiti@1.21.7))(typescript@5.9.3) + version: 8.54.0(eslint@10.0.0(jiti@1.21.7))(typescript@5.9.3) vitest: specifier: ^4.0.18 version: 4.0.18(@opentelemetry/api@1.9.0)(@types/node@24.10.11)(happy-dom@20.5.0)(jiti@1.21.7)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1) @@ -2015,33 +2015,34 @@ packages: resolution: {integrity: sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew==} engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} - '@eslint/config-array@0.21.1': - resolution: {integrity: sha512-aw1gNayWpdI/jSYVgzN5pL0cfzU02GT3NBpeT/DXbx1/1x7ZKxFPd9bwrzygx/qiwIQiJ1sw/zD8qY/kRvlGHA==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@eslint/config-array@0.23.0': + resolution: {integrity: sha512-T5Swqd+PZxBekRuMsIFCySM3NUE8GjuqyksIIsXgkF2GCuiDaqpxKyPkv9VMEKpq5D7r5DLss1tM8tCsvRSjeg==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} - '@eslint/config-helpers@0.4.2': - resolution: {integrity: sha512-gBrxN88gOIf3R7ja5K9slwNayVcZgK6SOUORm2uBzTeIEfeVaIhOpCtTox3P6R7o2jLFwLFTLnC7kU/RGcYEgw==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@eslint/config-helpers@0.5.2': + resolution: {integrity: sha512-a5MxrdDXEvqnIq+LisyCX6tQMPF/dSJpCfBgBauY+pNZ28yCtSsTvyTYrMhaI+LK26bVyCJfJkT0u8KIj2i1dQ==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} - '@eslint/core@0.17.0': - resolution: {integrity: sha512-yL/sLrpmtDaFEiUj1osRP4TI2MDz1AddJL+jZ7KSqvBuliN4xqYY54IfdN8qD8Toa6g1iloph1fxQNkjOxrrpQ==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@eslint/core@1.1.0': + resolution: {integrity: sha512-/nr9K9wkr3P1EzFTdFdMoLuo1PmIxjmwvPozwoSodjNBdefGujXQUF93u1DDZpEaTuDvMsIQddsd35BwtrW9Xw==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} - '@eslint/eslintrc@3.3.3': - resolution: {integrity: sha512-Kr+LPIUVKz2qkx1HAMH8q1q6azbqBAsXJUxBl/ODDuVPX45Z9DfwB8tPjTi6nNZ8BuM3nbJxC5zCAg5elnBUTQ==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@eslint/js@10.0.1': + resolution: {integrity: sha512-zeR9k5pd4gxjZ0abRoIaxdc7I3nDktoXZk2qOv9gCNWx3mVwEn32VRhyLaRsDiJjTs0xq/T8mfPtyuXu7GWBcA==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} + peerDependencies: + eslint: ^10.0.0 + peerDependenciesMeta: + eslint: + optional: true - '@eslint/js@9.39.2': - resolution: {integrity: sha512-q1mjIoW1VX4IvSocvM/vbTiveKC4k9eLrajNEuSsmjymSDEbpGddtpfOoN7YGAqBK3NG+uqo8ia4PDTt8buCYA==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@eslint/object-schema@3.0.0': + resolution: {integrity: sha512-nWl20RtHQP2A2yvKU6Fee62Xo1AoNRqBLixtyg45zJhU8ljPFCyBK90d8e8XTnPns1RggSf4HH3bM8AhevkPVg==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} - '@eslint/object-schema@2.1.7': - resolution: {integrity: sha512-VtAOaymWVfZcmZbp6E2mympDIHvyjXs/12LqWYjVw6qjrfF+VK+fyG33kChz3nnK+SU5/NeHOqrTEHS8sXO3OA==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - - '@eslint/plugin-kit@0.4.1': - resolution: {integrity: sha512-43/qtrDUokr7LJqoF2c3+RInu/t4zfrpYdoSDfYyhg52rwLV6TnOvdG4fXm7IkSB3wErkcmJS9iEhjVtOSEjjA==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@eslint/plugin-kit@0.6.0': + resolution: {integrity: sha512-bIZEUzOI1jkhviX2cp5vNyXQc6olzb2ohewQubuYlMXZ2Q/XjBO0x0XhGPvc9fjSIiUN0vw+0hq53BJ4eQSJKQ==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} '@gerrit0/mini-shiki@3.20.0': resolution: {integrity: sha512-Wa57i+bMpK6PGJZ1f2myxo3iO+K/kZikcyvH8NIqNNZhQUbDav7V9LQmWOXhf946mz5c1NZ19WMsGYiDKTryzQ==} @@ -3501,6 +3502,9 @@ packages: '@types/eslint@9.6.1': resolution: {integrity: sha512-FXx2pKgId/WyYo2jXw63kk7/+TY7u7AziEJxJAnSFzHlqTAS3Ync6SvgYAN/k4/PQpnnVuzoMuVnByKK2qp0ag==} + '@types/esrecurse@4.3.1': + resolution: {integrity: sha512-xJBAbDifo5hpffDBuHl0Y8ywswbiAp/Wi7Y/GtAgSlZyIABppyurxVueOPE8LUQOxdlgi6Zqce7uoEpqNTeiUw==} + '@types/estree-jsx@1.0.5': resolution: {integrity: sha512-52CcUVNFyfb1A2ALocQw/Dd1BQFNmSdkuC3BkZ6iqhdMfQz7JWOFRuJFloOzjk+6WijU56m9oKXFAXc7o3Towg==} @@ -5457,9 +5461,9 @@ packages: resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==} engines: {node: '>=8.0.0'} - eslint-scope@8.4.0: - resolution: {integrity: sha512-sNXOfKCn74rt8RICKMvJS7XKV/Xk9kA7DyJr8mJik3S7Cwgy3qlkkmyS2uQB3jiJg6VNdZd/pDBJu0nvG2NlTg==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + eslint-scope@9.1.0: + resolution: {integrity: sha512-CkWE42hOJsNj9FJRaoMX9waUFYhqY4jmyLFdAdzZr6VaCg3ynLYx4WnOdkaIifGfH4gsUcBTn4OZbHXkpLD0FQ==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} eslint-visitor-keys@3.4.3: resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} @@ -5469,9 +5473,13 @@ packages: resolution: {integrity: sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - eslint@9.39.2: - resolution: {integrity: sha512-LEyamqS7W5HB3ujJyvi0HQK/dtVINZvd5mAAp9eT5S/ujByGjiZLCzPcHVzuXbpJDJF/cxwHlfceVUDZ2lnSTw==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + eslint-visitor-keys@5.0.0: + resolution: {integrity: sha512-A0XeIi7CXU7nPlfHS9loMYEKxUaONu/hTEzHTGba9Huu94Cq1hPivf+DE5erJozZOky0LfvXAyrV/tcswpLI0Q==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} + + eslint@10.0.0: + resolution: {integrity: sha512-O0piBKY36YSJhlFSG8p9VUdPV/SxxS4FYDWVpr/9GJuMaepzwlf4J8I4ov1b+ySQfDTPhc3DtLaxcT1fN0yqCg==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} hasBin: true peerDependencies: jiti: '*' @@ -5487,9 +5495,9 @@ packages: resolution: {integrity: sha512-kTUIGKQ/mDPFoJ0oVfcmyJn4iBDRptjNVIzwIFR7tqWXdVI9xfA2RMwY/gbSpJG3lkdWNEjLap/NqVHZiJsdfg==} engines: {node: '>=0.10'} - espree@10.4.0: - resolution: {integrity: sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + espree@11.1.0: + resolution: {integrity: sha512-WFWYhO1fV4iYkqOOvq8FbqIhr2pYfoDY0kCotMkDeNtGpiGGkZ1iov2u8ydjtgM8yF8rzK7oaTbw2NAzbAbehw==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} esprima@4.0.1: resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} @@ -5910,10 +5918,6 @@ packages: resolution: {integrity: sha512-NBcGGFbBA9s1VzD41QXDG+3++t9Mn5t1FpLdhESY6oKY4gYTFpX4wO3sqGUa0Srjtbfj3szX0RnemmrVRUdULA==} engines: {node: '>=10'} - globals@14.0.0: - resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==} - engines: {node: '>=18'} - globals@17.3.0: resolution: {integrity: sha512-yMqGUQVVCkD4tqjOJf3TnrvaaHDMYp4VlUSObbkIiuCPe/ofdMBFIAcBbCSRFWOnos6qRiTVStDwqPLUclaxIw==} engines: {node: '>=18'} @@ -6960,9 +6964,6 @@ packages: lodash.memoize@4.1.2: resolution: {integrity: sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==} - lodash.merge@4.6.2: - resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} - lodash.sortby@4.7.0: resolution: {integrity: sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==} @@ -12694,50 +12695,38 @@ snapshots: '@esbuild/win32-x64@0.27.2': optional: true - '@eslint-community/eslint-utils@4.9.1(eslint@9.39.2(jiti@1.21.7))': + '@eslint-community/eslint-utils@4.9.1(eslint@10.0.0(jiti@1.21.7))': dependencies: - eslint: 9.39.2(jiti@1.21.7) + eslint: 10.0.0(jiti@1.21.7) eslint-visitor-keys: 3.4.3 '@eslint-community/regexpp@4.12.2': {} - '@eslint/config-array@0.21.1': + '@eslint/config-array@0.23.0': dependencies: - '@eslint/object-schema': 2.1.7 + '@eslint/object-schema': 3.0.0 debug: 4.4.3 - minimatch: 3.1.2 + minimatch: 10.1.2 transitivePeerDependencies: - supports-color - '@eslint/config-helpers@0.4.2': + '@eslint/config-helpers@0.5.2': dependencies: - '@eslint/core': 0.17.0 + '@eslint/core': 1.1.0 - '@eslint/core@0.17.0': + '@eslint/core@1.1.0': dependencies: '@types/json-schema': 7.0.15 - '@eslint/eslintrc@3.3.3': - dependencies: - ajv: 6.12.6 - debug: 4.4.3 - espree: 10.4.0 - globals: 14.0.0 - ignore: 5.3.2 - import-fresh: 3.3.1 - js-yaml: 4.1.1 - minimatch: 3.1.2 - strip-json-comments: 3.1.1 - transitivePeerDependencies: - - supports-color - - '@eslint/js@9.39.2': {} + '@eslint/js@10.0.1(eslint@10.0.0(jiti@1.21.7))': + optionalDependencies: + eslint: 10.0.0(jiti@1.21.7) - '@eslint/object-schema@2.1.7': {} + '@eslint/object-schema@3.0.0': {} - '@eslint/plugin-kit@0.4.1': + '@eslint/plugin-kit@0.6.0': dependencies: - '@eslint/core': 0.17.0 + '@eslint/core': 1.1.0 levn: 0.4.1 '@gerrit0/mini-shiki@3.20.0': @@ -14472,6 +14461,8 @@ snapshots: '@types/estree': 1.0.8 '@types/json-schema': 7.0.15 + '@types/esrecurse@4.3.1': {} + '@types/estree-jsx@1.0.5': dependencies: '@types/estree': 1.0.8 @@ -14714,15 +14705,15 @@ snapshots: dependencies: '@types/yargs-parser': 21.0.3 - '@typescript-eslint/eslint-plugin@8.54.0(@typescript-eslint/parser@8.54.0(eslint@9.39.2(jiti@1.21.7))(typescript@5.9.3))(eslint@9.39.2(jiti@1.21.7))(typescript@5.9.3)': + '@typescript-eslint/eslint-plugin@8.54.0(@typescript-eslint/parser@8.54.0(eslint@10.0.0(jiti@1.21.7))(typescript@5.9.3))(eslint@10.0.0(jiti@1.21.7))(typescript@5.9.3)': dependencies: '@eslint-community/regexpp': 4.12.2 - '@typescript-eslint/parser': 8.54.0(eslint@9.39.2(jiti@1.21.7))(typescript@5.9.3) + '@typescript-eslint/parser': 8.54.0(eslint@10.0.0(jiti@1.21.7))(typescript@5.9.3) '@typescript-eslint/scope-manager': 8.54.0 - '@typescript-eslint/type-utils': 8.54.0(eslint@9.39.2(jiti@1.21.7))(typescript@5.9.3) - '@typescript-eslint/utils': 8.54.0(eslint@9.39.2(jiti@1.21.7))(typescript@5.9.3) + '@typescript-eslint/type-utils': 8.54.0(eslint@10.0.0(jiti@1.21.7))(typescript@5.9.3) + '@typescript-eslint/utils': 8.54.0(eslint@10.0.0(jiti@1.21.7))(typescript@5.9.3) '@typescript-eslint/visitor-keys': 8.54.0 - eslint: 9.39.2(jiti@1.21.7) + eslint: 10.0.0(jiti@1.21.7) ignore: 7.0.5 natural-compare: 1.4.0 ts-api-utils: 2.4.0(typescript@5.9.3) @@ -14730,14 +14721,14 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@8.54.0(eslint@9.39.2(jiti@1.21.7))(typescript@5.9.3)': + '@typescript-eslint/parser@8.54.0(eslint@10.0.0(jiti@1.21.7))(typescript@5.9.3)': dependencies: '@typescript-eslint/scope-manager': 8.54.0 '@typescript-eslint/types': 8.54.0 '@typescript-eslint/typescript-estree': 8.54.0(typescript@5.9.3) '@typescript-eslint/visitor-keys': 8.54.0 debug: 4.4.3 - eslint: 9.39.2(jiti@1.21.7) + eslint: 10.0.0(jiti@1.21.7) typescript: 5.9.3 transitivePeerDependencies: - supports-color @@ -14760,13 +14751,13 @@ snapshots: dependencies: typescript: 5.9.3 - '@typescript-eslint/type-utils@8.54.0(eslint@9.39.2(jiti@1.21.7))(typescript@5.9.3)': + '@typescript-eslint/type-utils@8.54.0(eslint@10.0.0(jiti@1.21.7))(typescript@5.9.3)': dependencies: '@typescript-eslint/types': 8.54.0 '@typescript-eslint/typescript-estree': 8.54.0(typescript@5.9.3) - '@typescript-eslint/utils': 8.54.0(eslint@9.39.2(jiti@1.21.7))(typescript@5.9.3) + '@typescript-eslint/utils': 8.54.0(eslint@10.0.0(jiti@1.21.7))(typescript@5.9.3) debug: 4.4.3 - eslint: 9.39.2(jiti@1.21.7) + eslint: 10.0.0(jiti@1.21.7) ts-api-utils: 2.4.0(typescript@5.9.3) typescript: 5.9.3 transitivePeerDependencies: @@ -14789,13 +14780,13 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@8.54.0(eslint@9.39.2(jiti@1.21.7))(typescript@5.9.3)': + '@typescript-eslint/utils@8.54.0(eslint@10.0.0(jiti@1.21.7))(typescript@5.9.3)': dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.2(jiti@1.21.7)) + '@eslint-community/eslint-utils': 4.9.1(eslint@10.0.0(jiti@1.21.7)) '@typescript-eslint/scope-manager': 8.54.0 '@typescript-eslint/types': 8.54.0 '@typescript-eslint/typescript-estree': 8.54.0(typescript@5.9.3) - eslint: 9.39.2(jiti@1.21.7) + eslint: 10.0.0(jiti@1.21.7) typescript: 5.9.3 transitivePeerDependencies: - supports-color @@ -16682,17 +16673,19 @@ snapshots: escape-string-regexp@5.0.0: {} - eslint-config-prettier@10.1.8(eslint@9.39.2(jiti@1.21.7)): + eslint-config-prettier@10.1.8(eslint@10.0.0(jiti@1.21.7)): dependencies: - eslint: 9.39.2(jiti@1.21.7) + eslint: 10.0.0(jiti@1.21.7) eslint-scope@5.1.1: dependencies: esrecurse: 4.3.0 estraverse: 4.3.0 - eslint-scope@8.4.0: + eslint-scope@9.1.0: dependencies: + '@types/esrecurse': 4.3.1 + '@types/estree': 1.0.8 esrecurse: 4.3.0 estraverse: 5.3.0 @@ -16700,28 +16693,27 @@ snapshots: eslint-visitor-keys@4.2.1: {} - eslint@9.39.2(jiti@1.21.7): + eslint-visitor-keys@5.0.0: {} + + eslint@10.0.0(jiti@1.21.7): dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.2(jiti@1.21.7)) + '@eslint-community/eslint-utils': 4.9.1(eslint@10.0.0(jiti@1.21.7)) '@eslint-community/regexpp': 4.12.2 - '@eslint/config-array': 0.21.1 - '@eslint/config-helpers': 0.4.2 - '@eslint/core': 0.17.0 - '@eslint/eslintrc': 3.3.3 - '@eslint/js': 9.39.2 - '@eslint/plugin-kit': 0.4.1 + '@eslint/config-array': 0.23.0 + '@eslint/config-helpers': 0.5.2 + '@eslint/core': 1.1.0 + '@eslint/plugin-kit': 0.6.0 '@humanfs/node': 0.16.6 '@humanwhocodes/module-importer': 1.0.1 '@humanwhocodes/retry': 0.4.3 '@types/estree': 1.0.8 ajv: 6.12.6 - chalk: 4.1.2 cross-spawn: 7.0.6 debug: 4.4.3 escape-string-regexp: 4.0.0 - eslint-scope: 8.4.0 - eslint-visitor-keys: 4.2.1 - espree: 10.4.0 + eslint-scope: 9.1.0 + eslint-visitor-keys: 5.0.0 + espree: 11.1.0 esquery: 1.7.0 esutils: 2.0.3 fast-deep-equal: 3.1.3 @@ -16732,8 +16724,7 @@ snapshots: imurmurhash: 0.1.4 is-glob: 4.0.3 json-stable-stringify-without-jsonify: 1.0.1 - lodash.merge: 4.6.2 - minimatch: 3.1.2 + minimatch: 10.1.2 natural-compare: 1.4.0 optionator: 0.9.4 optionalDependencies: @@ -16750,11 +16741,11 @@ snapshots: event-emitter: 0.3.5 type: 2.7.3 - espree@10.4.0: + espree@11.1.0: dependencies: acorn: 8.15.0 acorn-jsx: 5.3.2(acorn@8.15.0) - eslint-visitor-keys: 4.2.1 + eslint-visitor-keys: 5.0.0 esprima@4.0.1: {} @@ -17258,8 +17249,6 @@ snapshots: dependencies: ini: 2.0.0 - globals@14.0.0: {} - globals@17.3.0: {} globalthis@1.0.4: @@ -18561,8 +18550,6 @@ snapshots: lodash.memoize@4.1.2: {} - lodash.merge@4.6.2: {} - lodash.sortby@4.7.0: {} lodash.startcase@4.4.0: {} @@ -21629,13 +21616,13 @@ snapshots: typescript: 5.9.3 yaml: 2.8.1 - typescript-eslint@8.54.0(eslint@9.39.2(jiti@1.21.7))(typescript@5.9.3): + typescript-eslint@8.54.0(eslint@10.0.0(jiti@1.21.7))(typescript@5.9.3): dependencies: - '@typescript-eslint/eslint-plugin': 8.54.0(@typescript-eslint/parser@8.54.0(eslint@9.39.2(jiti@1.21.7))(typescript@5.9.3))(eslint@9.39.2(jiti@1.21.7))(typescript@5.9.3) - '@typescript-eslint/parser': 8.54.0(eslint@9.39.2(jiti@1.21.7))(typescript@5.9.3) + '@typescript-eslint/eslint-plugin': 8.54.0(@typescript-eslint/parser@8.54.0(eslint@10.0.0(jiti@1.21.7))(typescript@5.9.3))(eslint@10.0.0(jiti@1.21.7))(typescript@5.9.3) + '@typescript-eslint/parser': 8.54.0(eslint@10.0.0(jiti@1.21.7))(typescript@5.9.3) '@typescript-eslint/typescript-estree': 8.54.0(typescript@5.9.3) - '@typescript-eslint/utils': 8.54.0(eslint@9.39.2(jiti@1.21.7))(typescript@5.9.3) - eslint: 9.39.2(jiti@1.21.7) + '@typescript-eslint/utils': 8.54.0(eslint@10.0.0(jiti@1.21.7))(typescript@5.9.3) + eslint: 10.0.0(jiti@1.21.7) typescript: 5.9.3 transitivePeerDependencies: - supports-color diff --git a/tsconfig.common.json b/tsconfig.common.json index ecc7f9ba..14d44709 100644 --- a/tsconfig.common.json +++ b/tsconfig.common.json @@ -6,6 +6,7 @@ "incremental": false, "sourceMap": true, "target": "es2020", + "lib": ["ES2020", "ES2022.Error"], "module": "node18", "importHelpers": false, "preserveConstEnums": true,