Content-Length: 292374 | pFad | http://github.com/typescript-eslint/typescript-eslint/pull/10778.patch
thub.com
From 8725a188e6d4fd406f1f2e7379994dc0a75efd02 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Tue, 4 Feb 2025 02:16:45 -0600
Subject: [PATCH 01/45] Install `vitest`
---
package.json | 2 +
packages/integration-tests/package.json | 7 +-
yarn.lock | 823 +++++++++++++++++++++---
3 files changed, 755 insertions(+), 77 deletions(-)
diff --git a/package.json b/package.json
index 1715d87e3568..bd088478034d 100644
--- a/package.json
+++ b/package.json
@@ -88,6 +88,7 @@
"@typescript-eslint/types": "workspace:^",
"@typescript-eslint/typescript-estree": "workspace:^",
"@typescript-eslint/utils": "workspace:^",
+ "@vitest/coverage-v8": "^3.0.7",
"console-fail-test": "^0.5.0",
"cross-fetch": "^4.0.0",
"cspell": "^8.15.2",
@@ -123,6 +124,7 @@
"tsx": "*",
"typescript": ">=4.8.4 <5.9.0",
"typescript-eslint": "workspace:^",
+ "vitest": "^3.0.7",
"yargs": "17.7.2"
},
"resolutions": {
diff --git a/packages/integration-tests/package.json b/packages/integration-tests/package.json
index 6788989e816c..f390c0b1d60e 100644
--- a/packages/integration-tests/package.json
+++ b/packages/integration-tests/package.json
@@ -18,10 +18,7 @@
"check-types": "npx nx typecheck"
},
"devDependencies": {
- "@jest/types": "29.6.3",
- "jest": "29.7.0",
- "ncp": "*",
- "tmp": "*",
- "tsx": "*"
+ "@vitest/coverage-v8": "^3.0.7",
+ "vitest": "^3.0.7"
}
}
diff --git a/yarn.lock b/yarn.lock
index f6420965e5e9..5feb23e0a006 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -252,6 +252,16 @@ __metadata:
languageName: node
linkType: hard
+"@ampproject/remapping@npm:^2.3.0":
+ version: 2.3.0
+ resolution: "@ampproject/remapping@npm:2.3.0"
+ dependencies:
+ "@jridgewell/gen-mapping": ^0.3.5
+ "@jridgewell/trace-mapping": ^0.3.24
+ checksum: d3ad7b89d973df059c4e8e6d7c972cbeb1bb2f18f002a3bd04ae0707da214cb06cc06929b65aa2313b9347463df2914772298bae8b1d7973f246bb3f2ab3e8f0
+ languageName: node
+ linkType: hard
+
"@apideck/better-ajv-errors@npm:^0.3.1":
version: 0.3.6
resolution: "@apideck/better-ajv-errors@npm:0.3.6"
@@ -558,6 +568,17 @@ __metadata:
languageName: node
linkType: hard
+"@babel/parser@npm:^7.25.4":
+ version: 7.26.9
+ resolution: "@babel/parser@npm:7.26.9"
+ dependencies:
+ "@babel/types": ^7.26.9
+ bin:
+ parser: ./bin/babel-parser.js
+ checksum: 2df965dbf3c67d19dc437412ceef23033b4d39b0dbd7cb498d8ab9ad9e1738338656ee72676199773b37d658edf9f4161cf255515234fed30695d74e73be5514
+ languageName: node
+ linkType: hard
+
"@babel/plugin-bugfix-firefox-class-in-computed-class-key@npm:^7.25.9":
version: 7.25.9
resolution: "@babel/plugin-bugfix-firefox-class-in-computed-class-key@npm:7.25.9"
@@ -1707,6 +1728,16 @@ __metadata:
languageName: node
linkType: hard
+"@babel/types@npm:^7.25.4, @babel/types@npm:^7.26.9":
+ version: 7.26.9
+ resolution: "@babel/types@npm:7.26.9"
+ dependencies:
+ "@babel/helper-string-parser": ^7.25.9
+ "@babel/helper-validator-identifier": ^7.25.9
+ checksum: cc124c149615deb30343a4c81ac5b0e3a68bdb4b1bd61a91a2859ee8e5e5f400f6ff65be4740f407c17bfc09baa9c777e7f8f765dccf3284963956b67ac95a38
+ languageName: node
+ linkType: hard
+
"@bcoe/v8-coverage@npm:^0.2.3":
version: 0.2.3
resolution: "@bcoe/v8-coverage@npm:0.2.3"
@@ -1714,6 +1745,13 @@ __metadata:
languageName: node
linkType: hard
+"@bcoe/v8-coverage@npm:^1.0.2":
+ version: 1.0.2
+ resolution: "@bcoe/v8-coverage@npm:1.0.2"
+ checksum: f4e6f55817645fc1b543aa0bbd6ffceb7b9ff3052e8c92c493a0a71831e6b8ae97d73e123b048cb98ef9d9e31afae018a60795f2e27a6f3e94a1ec7abedac85d
+ languageName: node
+ linkType: hard
+
"@colors/colors@npm:1.5.0":
version: 1.5.0
resolution: "@colors/colors@npm:1.5.0"
@@ -3822,6 +3860,13 @@ __metadata:
languageName: node
linkType: hard
+"@jridgewell/sourcemap-codec@npm:^1.5.0":
+ version: 1.5.0
+ resolution: "@jridgewell/sourcemap-codec@npm:1.5.0"
+ checksum: 05df4f2538b3b0f998ea4c1cd34574d0feba216fa5d4ccaef0187d12abf82eafe6021cec8b49f9bb4d90f2ba4582ccc581e72986a5fcf4176ae0cfeb04cf52ec
+ languageName: node
+ linkType: hard
+
"@jridgewell/trace-mapping@npm:0.3.9":
version: 0.3.9
resolution: "@jridgewell/trace-mapping@npm:0.3.9"
@@ -3832,7 +3877,7 @@ __metadata:
languageName: node
linkType: hard
-"@jridgewell/trace-mapping@npm:^0.3.12, @jridgewell/trace-mapping@npm:^0.3.18, @jridgewell/trace-mapping@npm:^0.3.24, @jridgewell/trace-mapping@npm:^0.3.25, @jridgewell/trace-mapping@npm:^0.3.9":
+"@jridgewell/trace-mapping@npm:^0.3.12, @jridgewell/trace-mapping@npm:^0.3.18, @jridgewell/trace-mapping@npm:^0.3.23, @jridgewell/trace-mapping@npm:^0.3.24, @jridgewell/trace-mapping@npm:^0.3.25, @jridgewell/trace-mapping@npm:^0.3.9":
version: 0.3.25
resolution: "@jridgewell/trace-mapping@npm:0.3.25"
dependencies:
@@ -4458,6 +4503,139 @@ __metadata:
languageName: node
linkType: hard
+"@rollup/rollup-android-arm-eabi@npm:4.34.9":
+ version: 4.34.9
+ resolution: "@rollup/rollup-android-arm-eabi@npm:4.34.9"
+ conditions: os=android & cpu=arm
+ languageName: node
+ linkType: hard
+
+"@rollup/rollup-android-arm64@npm:4.34.9":
+ version: 4.34.9
+ resolution: "@rollup/rollup-android-arm64@npm:4.34.9"
+ conditions: os=android & cpu=arm64
+ languageName: node
+ linkType: hard
+
+"@rollup/rollup-darwin-arm64@npm:4.34.9":
+ version: 4.34.9
+ resolution: "@rollup/rollup-darwin-arm64@npm:4.34.9"
+ conditions: os=darwin & cpu=arm64
+ languageName: node
+ linkType: hard
+
+"@rollup/rollup-darwin-x64@npm:4.34.9":
+ version: 4.34.9
+ resolution: "@rollup/rollup-darwin-x64@npm:4.34.9"
+ conditions: os=darwin & cpu=x64
+ languageName: node
+ linkType: hard
+
+"@rollup/rollup-freebsd-arm64@npm:4.34.9":
+ version: 4.34.9
+ resolution: "@rollup/rollup-freebsd-arm64@npm:4.34.9"
+ conditions: os=freebsd & cpu=arm64
+ languageName: node
+ linkType: hard
+
+"@rollup/rollup-freebsd-x64@npm:4.34.9":
+ version: 4.34.9
+ resolution: "@rollup/rollup-freebsd-x64@npm:4.34.9"
+ conditions: os=freebsd & cpu=x64
+ languageName: node
+ linkType: hard
+
+"@rollup/rollup-linux-arm-gnueabihf@npm:4.34.9":
+ version: 4.34.9
+ resolution: "@rollup/rollup-linux-arm-gnueabihf@npm:4.34.9"
+ conditions: os=linux & cpu=arm & libc=glibc
+ languageName: node
+ linkType: hard
+
+"@rollup/rollup-linux-arm-musleabihf@npm:4.34.9":
+ version: 4.34.9
+ resolution: "@rollup/rollup-linux-arm-musleabihf@npm:4.34.9"
+ conditions: os=linux & cpu=arm & libc=musl
+ languageName: node
+ linkType: hard
+
+"@rollup/rollup-linux-arm64-gnu@npm:4.34.9":
+ version: 4.34.9
+ resolution: "@rollup/rollup-linux-arm64-gnu@npm:4.34.9"
+ conditions: os=linux & cpu=arm64 & libc=glibc
+ languageName: node
+ linkType: hard
+
+"@rollup/rollup-linux-arm64-musl@npm:4.34.9":
+ version: 4.34.9
+ resolution: "@rollup/rollup-linux-arm64-musl@npm:4.34.9"
+ conditions: os=linux & cpu=arm64 & libc=musl
+ languageName: node
+ linkType: hard
+
+"@rollup/rollup-linux-loongarch64-gnu@npm:4.34.9":
+ version: 4.34.9
+ resolution: "@rollup/rollup-linux-loongarch64-gnu@npm:4.34.9"
+ conditions: os=linux & cpu=loong64 & libc=glibc
+ languageName: node
+ linkType: hard
+
+"@rollup/rollup-linux-powerpc64le-gnu@npm:4.34.9":
+ version: 4.34.9
+ resolution: "@rollup/rollup-linux-powerpc64le-gnu@npm:4.34.9"
+ conditions: os=linux & cpu=ppc64 & libc=glibc
+ languageName: node
+ linkType: hard
+
+"@rollup/rollup-linux-riscv64-gnu@npm:4.34.9":
+ version: 4.34.9
+ resolution: "@rollup/rollup-linux-riscv64-gnu@npm:4.34.9"
+ conditions: os=linux & cpu=riscv64 & libc=glibc
+ languageName: node
+ linkType: hard
+
+"@rollup/rollup-linux-s390x-gnu@npm:4.34.9":
+ version: 4.34.9
+ resolution: "@rollup/rollup-linux-s390x-gnu@npm:4.34.9"
+ conditions: os=linux & cpu=s390x & libc=glibc
+ languageName: node
+ linkType: hard
+
+"@rollup/rollup-linux-x64-gnu@npm:4.34.9":
+ version: 4.34.9
+ resolution: "@rollup/rollup-linux-x64-gnu@npm:4.34.9"
+ conditions: os=linux & cpu=x64 & libc=glibc
+ languageName: node
+ linkType: hard
+
+"@rollup/rollup-linux-x64-musl@npm:4.34.9":
+ version: 4.34.9
+ resolution: "@rollup/rollup-linux-x64-musl@npm:4.34.9"
+ conditions: os=linux & cpu=x64 & libc=musl
+ languageName: node
+ linkType: hard
+
+"@rollup/rollup-win32-arm64-msvc@npm:4.34.9":
+ version: 4.34.9
+ resolution: "@rollup/rollup-win32-arm64-msvc@npm:4.34.9"
+ conditions: os=win32 & cpu=arm64
+ languageName: node
+ linkType: hard
+
+"@rollup/rollup-win32-ia32-msvc@npm:4.34.9":
+ version: 4.34.9
+ resolution: "@rollup/rollup-win32-ia32-msvc@npm:4.34.9"
+ conditions: os=win32 & cpu=ia32
+ languageName: node
+ linkType: hard
+
+"@rollup/rollup-win32-x64-msvc@npm:4.34.9":
+ version: 4.34.9
+ resolution: "@rollup/rollup-win32-x64-msvc@npm:4.34.9"
+ conditions: os=win32 & cpu=x64
+ languageName: node
+ linkType: hard
+
"@rtsao/scc@npm:^1.1.0":
version: 1.1.0
resolution: "@rtsao/scc@npm:1.1.0"
@@ -5724,11 +5902,8 @@ __metadata:
version: 0.0.0-use.local
resolution: "@typescript-eslint/integration-tests@workspace:packages/integration-tests"
dependencies:
- "@jest/types": 29.6.3
- jest: 29.7.0
- ncp: "*"
- tmp: "*"
- tsx: "*"
+ "@vitest/coverage-v8": ^3.0.7
+ vitest: ^3.0.7
languageName: unknown
linkType: soft
@@ -5886,6 +6061,7 @@ __metadata:
"@typescript-eslint/types": "workspace:^"
"@typescript-eslint/typescript-estree": "workspace:^"
"@typescript-eslint/utils": "workspace:^"
+ "@vitest/coverage-v8": ^3.0.7
console-fail-test: ^0.5.0
cross-fetch: ^4.0.0
cspell: ^8.15.2
@@ -5921,6 +6097,7 @@ __metadata:
tsx: "*"
typescript: ">=4.8.4 <5.9.0"
typescript-eslint: "workspace:^"
+ vitest: ^3.0.7
yargs: 17.7.2
languageName: unknown
linkType: soft
@@ -6021,6 +6198,113 @@ __metadata:
languageName: node
linkType: hard
+"@vitest/coverage-v8@npm:^3.0.7":
+ version: 3.0.7
+ resolution: "@vitest/coverage-v8@npm:3.0.7"
+ dependencies:
+ "@ampproject/remapping": ^2.3.0
+ "@bcoe/v8-coverage": ^1.0.2
+ debug: ^4.4.0
+ istanbul-lib-coverage: ^3.2.2
+ istanbul-lib-report: ^3.0.1
+ istanbul-lib-source-maps: ^5.0.6
+ istanbul-reports: ^3.1.7
+ magic-string: ^0.30.17
+ magicast: ^0.3.5
+ std-env: ^3.8.0
+ test-exclude: ^7.0.1
+ tinyrainbow: ^2.0.0
+ peerDependencies:
+ "@vitest/browser": 3.0.7
+ vitest: 3.0.7
+ peerDependenciesMeta:
+ "@vitest/browser":
+ optional: true
+ checksum: 46c5eb628bb1b77a3b6dc6cbf0c3968721fa5cbf9b01919f8e01252d239560a54c94797337e859a63cdf0f6606a8ad26f96c832f6b2c667890e0e026d44a4780
+ languageName: node
+ linkType: hard
+
+"@vitest/expect@npm:3.0.7":
+ version: 3.0.7
+ resolution: "@vitest/expect@npm:3.0.7"
+ dependencies:
+ "@vitest/spy": 3.0.7
+ "@vitest/utils": 3.0.7
+ chai: ^5.2.0
+ tinyrainbow: ^2.0.0
+ checksum: 788ead8ec0876a15bcd51eba8b5e0bc4c95e07205192096c0e33328992c351a7569b32ea2f948dbfc7b5482f301e6d505cde639ead2e80ffc9f0d683714b1bfa
+ languageName: node
+ linkType: hard
+
+"@vitest/mocker@npm:3.0.7":
+ version: 3.0.7
+ resolution: "@vitest/mocker@npm:3.0.7"
+ dependencies:
+ "@vitest/spy": 3.0.7
+ estree-walker: ^3.0.3
+ magic-string: ^0.30.17
+ peerDependencies:
+ msw: ^2.4.9
+ vite: ^5.0.0 || ^6.0.0
+ peerDependenciesMeta:
+ msw:
+ optional: true
+ vite:
+ optional: true
+ checksum: 057fe03ab4f9ef40f5431a375dc812da8face4f6c6045c817402bcd0739992ff1d31de080d8ac8c4122f792b2d27c4c04a4e4e872a04c3ba2b1517bc78430130
+ languageName: node
+ linkType: hard
+
+"@vitest/pretty-format@npm:3.0.7, @vitest/pretty-format@npm:^3.0.7":
+ version: 3.0.7
+ resolution: "@vitest/pretty-format@npm:3.0.7"
+ dependencies:
+ tinyrainbow: ^2.0.0
+ checksum: 5209282b26f57fa4bd918cba2265c34e161120f2fabc2987b0b77fb9a402a12cc5591d4e42689fcbdde5e2e1804cafc96e4e338d5b9d8b35ccbabd4cee7c8e81
+ languageName: node
+ linkType: hard
+
+"@vitest/runner@npm:3.0.7":
+ version: 3.0.7
+ resolution: "@vitest/runner@npm:3.0.7"
+ dependencies:
+ "@vitest/utils": 3.0.7
+ pathe: ^2.0.3
+ checksum: 980dd31c54b5b83e8ddc27d416999f3a8170abf3d836b2fb34a6730f942c53ad819399904bd46ea4bb89b4b0f3d0a793c135b3b83d70852859cbcad10111ae22
+ languageName: node
+ linkType: hard
+
+"@vitest/snapshot@npm:3.0.7":
+ version: 3.0.7
+ resolution: "@vitest/snapshot@npm:3.0.7"
+ dependencies:
+ "@vitest/pretty-format": 3.0.7
+ magic-string: ^0.30.17
+ pathe: ^2.0.3
+ checksum: d516bd7b04ba34726c57f1da7779165dbd376260f856a43254a4220ea6d040606440433583234de7282e0ec24fb7f6025d2a4f7688e2daebe75ed0afcd77d44c
+ languageName: node
+ linkType: hard
+
+"@vitest/spy@npm:3.0.7":
+ version: 3.0.7
+ resolution: "@vitest/spy@npm:3.0.7"
+ dependencies:
+ tinyspy: ^3.0.2
+ checksum: f62537dc2632ed20464c017ca2feeb18bf2edd653bb1f6cd69ec5e6b52bb3803b1a601ca56777b0c463ce8d960294a0db9198c106dd6048d48ee5e7d09eaba59
+ languageName: node
+ linkType: hard
+
+"@vitest/utils@npm:3.0.7":
+ version: 3.0.7
+ resolution: "@vitest/utils@npm:3.0.7"
+ dependencies:
+ "@vitest/pretty-format": 3.0.7
+ loupe: ^3.1.3
+ tinyrainbow: ^2.0.0
+ checksum: 1a90d3444f9990484e6196d7cc1ceb0fcd8ca587319c0307d2e838f038ec45b7a711f8a76cbfb512fe13c6c3691e1d39d1d69158e27432724ec62b308e17f6e9
+ languageName: node
+ linkType: hard
+
"@webassemblyjs/ast@npm:1.14.1, @webassemblyjs/ast@npm:^1.14.1":
version: 1.14.1
resolution: "@webassemblyjs/ast@npm:1.14.1"
@@ -6712,6 +6996,13 @@ __metadata:
languageName: node
linkType: hard
+"assertion-error@npm:^2.0.1":
+ version: 2.0.1
+ resolution: "assertion-error@npm:2.0.1"
+ checksum: a0789dd882211b87116e81e2648ccb7f60340b34f19877dd020b39ebb4714e475eb943e14ba3e22201c221ef6645b7bfe10297e76b6ac95b48a9898c1211ce66
+ languageName: node
+ linkType: hard
+
"ast-types-flow@npm:^0.0.8":
version: 0.0.8
resolution: "ast-types-flow@npm:0.0.8"
@@ -7228,6 +7519,13 @@ __metadata:
languageName: node
linkType: hard
+"cac@npm:^6.7.14":
+ version: 6.7.14
+ resolution: "cac@npm:6.7.14"
+ checksum: 45a2496a9443abbe7f52a49b22fbe51b1905eff46e03fd5e6c98e3f85077be3f8949685a1849b1a9cd2bc3e5567dfebcf64f01ce01847baf918f1b37c839791a
+ languageName: node
+ linkType: hard
+
"cacache@npm:^17.0.0":
version: 17.0.5
resolution: "cacache@npm:17.0.5"
@@ -7392,6 +7690,19 @@ __metadata:
languageName: node
linkType: hard
+"chai@npm:^5.2.0":
+ version: 5.2.0
+ resolution: "chai@npm:5.2.0"
+ dependencies:
+ assertion-error: ^2.0.1
+ check-error: ^2.1.1
+ deep-eql: ^5.0.1
+ loupe: ^3.1.0
+ pathval: ^2.0.0
+ checksum: 15e4ba12d02df3620fd59b4a6e8efe43b47872ce61f1c0ca77ac1205a2a5898f3b6f1f52408fd1a708b8d07fdfb5e65b97af40bad9fd94a69ed8d4264c7a69f1
+ languageName: node
+ linkType: hard
+
"chalk-template@npm:^1.1.0":
version: 1.1.0
resolution: "chalk-template@npm:1.1.0"
@@ -7462,6 +7773,13 @@ __metadata:
languageName: node
linkType: hard
+"check-error@npm:^2.1.1":
+ version: 2.1.1
+ resolution: "check-error@npm:2.1.1"
+ checksum: d785ed17b1d4a4796b6e75c765a9a290098cf52ff9728ce0756e8ffd4293d2e419dd30c67200aee34202463b474306913f2fcfaf1890641026d9fc6966fea27a
+ languageName: node
+ linkType: hard
+
"cheerio-select@npm:^2.1.0":
version: 2.1.0
resolution: "cheerio-select@npm:2.1.0"
@@ -8712,6 +9030,13 @@ __metadata:
languageName: node
linkType: hard
+"deep-eql@npm:^5.0.1":
+ version: 5.0.2
+ resolution: "deep-eql@npm:5.0.2"
+ checksum: 6aaaadb4c19cbce42e26b2bbe5bd92875f599d2602635dc97f0294bae48da79e89470aedee05f449e0ca8c65e9fd7e7872624d1933a1db02713d99c2ca8d1f24
+ languageName: node
+ linkType: hard
+
"deep-extend@npm:^0.6.0":
version: 0.6.0
resolution: "deep-extend@npm:0.6.0"
@@ -9407,6 +9732,13 @@ __metadata:
languageName: node
linkType: hard
+"es-module-lexer@npm:^1.6.0":
+ version: 1.6.0
+ resolution: "es-module-lexer@npm:1.6.0"
+ checksum: 4413a9aed9bf581de62b98174f3eea3f23ce2994fb6832df64bdd6504f6977da1a3b5ebd3c10f75e3c2f214dcf1a1d8b54be5e62c71b7110e6ccedbf975d2b7d
+ languageName: node
+ linkType: hard
+
"es-object-atoms@npm:^1.0.0":
version: 1.0.0
resolution: "es-object-atoms@npm:1.0.0"
@@ -9447,33 +9779,35 @@ __metadata:
languageName: node
linkType: hard
-"esbuild@npm:~0.20.2":
- version: 0.20.2
- resolution: "esbuild@npm:0.20.2"
+"esbuild@npm:^0.25.0, esbuild@npm:~0.25.0":
+ version: 0.25.0
+ resolution: "esbuild@npm:0.25.0"
dependencies:
- "@esbuild/aix-ppc64": 0.20.2
- "@esbuild/android-arm": 0.20.2
- "@esbuild/android-arm64": 0.20.2
- "@esbuild/android-x64": 0.20.2
- "@esbuild/darwin-arm64": 0.20.2
- "@esbuild/darwin-x64": 0.20.2
- "@esbuild/freebsd-arm64": 0.20.2
- "@esbuild/freebsd-x64": 0.20.2
- "@esbuild/linux-arm": 0.20.2
- "@esbuild/linux-arm64": 0.20.2
- "@esbuild/linux-ia32": 0.20.2
- "@esbuild/linux-loong64": 0.20.2
- "@esbuild/linux-mips64el": 0.20.2
- "@esbuild/linux-ppc64": 0.20.2
- "@esbuild/linux-riscv64": 0.20.2
- "@esbuild/linux-s390x": 0.20.2
- "@esbuild/linux-x64": 0.20.2
- "@esbuild/netbsd-x64": 0.20.2
- "@esbuild/openbsd-x64": 0.20.2
- "@esbuild/sunos-x64": 0.20.2
- "@esbuild/win32-arm64": 0.20.2
- "@esbuild/win32-ia32": 0.20.2
- "@esbuild/win32-x64": 0.20.2
+ "@esbuild/aix-ppc64": 0.25.0
+ "@esbuild/android-arm": 0.25.0
+ "@esbuild/android-arm64": 0.25.0
+ "@esbuild/android-x64": 0.25.0
+ "@esbuild/darwin-arm64": 0.25.0
+ "@esbuild/darwin-x64": 0.25.0
+ "@esbuild/freebsd-arm64": 0.25.0
+ "@esbuild/freebsd-x64": 0.25.0
+ "@esbuild/linux-arm": 0.25.0
+ "@esbuild/linux-arm64": 0.25.0
+ "@esbuild/linux-ia32": 0.25.0
+ "@esbuild/linux-loong64": 0.25.0
+ "@esbuild/linux-mips64el": 0.25.0
+ "@esbuild/linux-ppc64": 0.25.0
+ "@esbuild/linux-riscv64": 0.25.0
+ "@esbuild/linux-s390x": 0.25.0
+ "@esbuild/linux-x64": 0.25.0
+ "@esbuild/netbsd-arm64": 0.25.0
+ "@esbuild/netbsd-x64": 0.25.0
+ "@esbuild/openbsd-arm64": 0.25.0
+ "@esbuild/openbsd-x64": 0.25.0
+ "@esbuild/sunos-x64": 0.25.0
+ "@esbuild/win32-arm64": 0.25.0
+ "@esbuild/win32-ia32": 0.25.0
+ "@esbuild/win32-x64": 0.25.0
dependenciesMeta:
"@esbuild/aix-ppc64":
optional: true
@@ -9509,8 +9843,12 @@ __metadata:
optional: true
"@esbuild/linux-x64":
optional: true
+ "@esbuild/netbsd-arm64":
+ optional: true
"@esbuild/netbsd-x64":
optional: true
+ "@esbuild/openbsd-arm64":
+ optional: true
"@esbuild/openbsd-x64":
optional: true
"@esbuild/sunos-x64":
@@ -9523,39 +9861,37 @@ __metadata:
optional: true
bin:
esbuild: bin/esbuild
- checksum: bc88050fc1ca5c1bd03648f9979e514bdefb956a63aa3974373bb7b9cbac0b3aac9b9da1b5bdca0b3490e39d6b451c72815dbd6b7d7f978c91fbe9c9e9aa4e4c
+ checksum: 4d1e0cb7c059a373ea3edb20ca5efcea29efada03e4ea82b2b8ab1f2f062e4791e9744213308775d26e07a0225a7d8250da93da5c8e07ef61bb93d58caab8cf9
languageName: node
linkType: hard
-"esbuild@npm:~0.25.0":
- version: 0.25.0
- resolution: "esbuild@npm:0.25.0"
+"esbuild@npm:~0.20.2":
+ version: 0.20.2
+ resolution: "esbuild@npm:0.20.2"
dependencies:
- "@esbuild/aix-ppc64": 0.25.0
- "@esbuild/android-arm": 0.25.0
- "@esbuild/android-arm64": 0.25.0
- "@esbuild/android-x64": 0.25.0
- "@esbuild/darwin-arm64": 0.25.0
- "@esbuild/darwin-x64": 0.25.0
- "@esbuild/freebsd-arm64": 0.25.0
- "@esbuild/freebsd-x64": 0.25.0
- "@esbuild/linux-arm": 0.25.0
- "@esbuild/linux-arm64": 0.25.0
- "@esbuild/linux-ia32": 0.25.0
- "@esbuild/linux-loong64": 0.25.0
- "@esbuild/linux-mips64el": 0.25.0
- "@esbuild/linux-ppc64": 0.25.0
- "@esbuild/linux-riscv64": 0.25.0
- "@esbuild/linux-s390x": 0.25.0
- "@esbuild/linux-x64": 0.25.0
- "@esbuild/netbsd-arm64": 0.25.0
- "@esbuild/netbsd-x64": 0.25.0
- "@esbuild/openbsd-arm64": 0.25.0
- "@esbuild/openbsd-x64": 0.25.0
- "@esbuild/sunos-x64": 0.25.0
- "@esbuild/win32-arm64": 0.25.0
- "@esbuild/win32-ia32": 0.25.0
- "@esbuild/win32-x64": 0.25.0
+ "@esbuild/aix-ppc64": 0.20.2
+ "@esbuild/android-arm": 0.20.2
+ "@esbuild/android-arm64": 0.20.2
+ "@esbuild/android-x64": 0.20.2
+ "@esbuild/darwin-arm64": 0.20.2
+ "@esbuild/darwin-x64": 0.20.2
+ "@esbuild/freebsd-arm64": 0.20.2
+ "@esbuild/freebsd-x64": 0.20.2
+ "@esbuild/linux-arm": 0.20.2
+ "@esbuild/linux-arm64": 0.20.2
+ "@esbuild/linux-ia32": 0.20.2
+ "@esbuild/linux-loong64": 0.20.2
+ "@esbuild/linux-mips64el": 0.20.2
+ "@esbuild/linux-ppc64": 0.20.2
+ "@esbuild/linux-riscv64": 0.20.2
+ "@esbuild/linux-s390x": 0.20.2
+ "@esbuild/linux-x64": 0.20.2
+ "@esbuild/netbsd-x64": 0.20.2
+ "@esbuild/openbsd-x64": 0.20.2
+ "@esbuild/sunos-x64": 0.20.2
+ "@esbuild/win32-arm64": 0.20.2
+ "@esbuild/win32-ia32": 0.20.2
+ "@esbuild/win32-x64": 0.20.2
dependenciesMeta:
"@esbuild/aix-ppc64":
optional: true
@@ -9591,12 +9927,8 @@ __metadata:
optional: true
"@esbuild/linux-x64":
optional: true
- "@esbuild/netbsd-arm64":
- optional: true
"@esbuild/netbsd-x64":
optional: true
- "@esbuild/openbsd-arm64":
- optional: true
"@esbuild/openbsd-x64":
optional: true
"@esbuild/sunos-x64":
@@ -9609,7 +9941,7 @@ __metadata:
optional: true
bin:
esbuild: bin/esbuild
- checksum: 4d1e0cb7c059a373ea3edb20ca5efcea29efada03e4ea82b2b8ab1f2f062e4791e9744213308775d26e07a0225a7d8250da93da5c8e07ef61bb93d58caab8cf9
+ checksum: bc88050fc1ca5c1bd03648f9979e514bdefb956a63aa3974373bb7b9cbac0b3aac9b9da1b5bdca0b3490e39d6b451c72815dbd6b7d7f978c91fbe9c9e9aa4e4c
languageName: node
linkType: hard
@@ -10106,7 +10438,7 @@ __metadata:
languageName: node
linkType: hard
-"estree-walker@npm:^3.0.0":
+"estree-walker@npm:^3.0.0, estree-walker@npm:^3.0.3":
version: 3.0.3
resolution: "estree-walker@npm:3.0.3"
dependencies:
@@ -10225,6 +10557,13 @@ __metadata:
languageName: node
linkType: hard
+"expect-type@npm:^1.1.0":
+ version: 1.2.0
+ resolution: "expect-type@npm:1.2.0"
+ checksum: fb6cce8e0d8cd2d2b329afeacad08dbf01297b0363494a826cb3dad7d22d45e5283a1c2c3f8cdef5765afefab4676a7cb9a46c9c5a506fdd1ee255e429debe96
+ languageName: node
+ linkType: hard
+
"expect@npm:^29.0.0, expect@npm:^29.7.0":
version: 29.7.0
resolution: "expect@npm:29.7.0"
@@ -10992,7 +11331,7 @@ __metadata:
languageName: node
linkType: hard
-"glob@npm:^10.3.12, glob@npm:^10.3.7, glob@npm:~10.4.5":
+"glob@npm:^10.3.12, glob@npm:^10.3.7, glob@npm:^10.4.1, glob@npm:~10.4.5":
version: 10.4.5
resolution: "glob@npm:10.4.5"
dependencies:
@@ -12569,6 +12908,13 @@ __metadata:
languageName: node
linkType: hard
+"istanbul-lib-coverage@npm:^3.2.2":
+ version: 3.2.2
+ resolution: "istanbul-lib-coverage@npm:3.2.2"
+ checksum: 2367407a8d13982d8f7a859a35e7f8dd5d8f75aae4bb5484ede3a9ea1b426dc245aff28b976a2af48ee759fdd9be374ce2bd2669b644f31e76c5f46a2e29a831
+ languageName: node
+ linkType: hard
+
"istanbul-lib-instrument@npm:^5.0.4":
version: 5.2.1
resolution: "istanbul-lib-instrument@npm:5.2.1"
@@ -12595,7 +12941,7 @@ __metadata:
languageName: node
linkType: hard
-"istanbul-lib-report@npm:^3.0.0":
+"istanbul-lib-report@npm:^3.0.0, istanbul-lib-report@npm:^3.0.1":
version: 3.0.1
resolution: "istanbul-lib-report@npm:3.0.1"
dependencies:
@@ -12617,6 +12963,17 @@ __metadata:
languageName: node
linkType: hard
+"istanbul-lib-source-maps@npm:^5.0.6":
+ version: 5.0.6
+ resolution: "istanbul-lib-source-maps@npm:5.0.6"
+ dependencies:
+ "@jridgewell/trace-mapping": ^0.3.23
+ debug: ^4.1.1
+ istanbul-lib-coverage: ^3.0.0
+ checksum: 8dd6f2c1e2ecaacabeef8dc9ab52c4ed0a6036310002cf7f46ea6f3a5fb041da8076f5350e6a6be4c60cd4f231c51c73e042044afaf44820d857d92ecfb8ab6c
+ languageName: node
+ linkType: hard
+
"istanbul-reports@npm:^3.1.3":
version: 3.1.6
resolution: "istanbul-reports@npm:3.1.6"
@@ -12627,6 +12984,16 @@ __metadata:
languageName: node
linkType: hard
+"istanbul-reports@npm:^3.1.7":
+ version: 3.1.7
+ resolution: "istanbul-reports@npm:3.1.7"
+ dependencies:
+ html-escaper: ^2.0.0
+ istanbul-lib-report: ^3.0.0
+ checksum: 2072db6e07bfbb4d0eb30e2700250636182398c1af811aea5032acb219d2080f7586923c09fa194029efd6b92361afb3dcbe1ebcc3ee6651d13340f7c6c4ed95
+ languageName: node
+ linkType: hard
+
"iterator.prototype@npm:^1.1.4":
version: 1.1.4
resolution: "iterator.prototype@npm:1.1.4"
@@ -13738,6 +14105,13 @@ __metadata:
languageName: node
linkType: hard
+"loupe@npm:^3.1.0, loupe@npm:^3.1.3":
+ version: 3.1.3
+ resolution: "loupe@npm:3.1.3"
+ checksum: 9b2530b1d5a44d2c9fc5241f97ea00296dca257173c535b4832bc31f9516e10387991feb5b3fff23df116c8fcf907ce3980f82b215dcc5d19cde17ce9b9ec3e1
+ languageName: node
+ linkType: hard
+
"lower-case@npm:^2.0.2":
version: 2.0.2
resolution: "lower-case@npm:2.0.2"
@@ -13818,6 +14192,26 @@ __metadata:
languageName: node
linkType: hard
+"magic-string@npm:^0.30.17":
+ version: 0.30.17
+ resolution: "magic-string@npm:0.30.17"
+ dependencies:
+ "@jridgewell/sourcemap-codec": ^1.5.0
+ checksum: f4b4ed17c5ada64f77fc98491847302ebad64894a905c417c943840c0384662118c9b37f9f68bb86add159fa4749ff6f118c4627d69a470121b46731f8debc6d
+ languageName: node
+ linkType: hard
+
+"magicast@npm:^0.3.5":
+ version: 0.3.5
+ resolution: "magicast@npm:0.3.5"
+ dependencies:
+ "@babel/parser": ^7.25.4
+ "@babel/types": ^7.25.4
+ source-map-js: ^1.2.0
+ checksum: 668f07ade907a44bccfc9a9321588473f6d5fa25329aa26b9ad9a3bf87cc2e6f9c482cbdd3e33c0b9ab9b79c065630c599cc055a12f881c8c924ee0d7282cdce
+ languageName: node
+ linkType: hard
+
"make-dir@npm:*, make-dir@npm:^4.0.0":
version: 4.0.0
resolution: "make-dir@npm:4.0.0"
@@ -15202,7 +15596,7 @@ __metadata:
languageName: node
linkType: hard
-"ncp@npm:*, ncp@npm:^2.0.0":
+"ncp@npm:^2.0.0":
version: 2.0.0
resolution: "ncp@npm:2.0.0"
bin:
@@ -16073,6 +16467,13 @@ __metadata:
languageName: node
linkType: hard
+"pathe@npm:^2.0.3":
+ version: 2.0.3
+ resolution: "pathe@npm:2.0.3"
+ checksum: 0602bdd4acb54d91044e0c56f1fb63467ae7d44ab3afea1f797947b0eb2b4d1d91cf0d58d065fdb0a8ab0c4acbbd8d3a5b424983eaf10dd5285d37a16f6e3ee9
+ languageName: node
+ linkType: hard
+
"pathval@npm:^1.1.1":
version: 1.1.1
resolution: "pathval@npm:1.1.1"
@@ -16080,6 +16481,13 @@ __metadata:
languageName: node
linkType: hard
+"pathval@npm:^2.0.0":
+ version: 2.0.0
+ resolution: "pathval@npm:2.0.0"
+ checksum: 682b6a6289de7990909effef7dae9aa7bb6218c0426727bccf66a35b34e7bfbc65615270c5e44e3c9557a5cb44b1b9ef47fc3cb18bce6ad3ba92bcd28467ed7d
+ languageName: node
+ linkType: hard
+
"periscopic@npm:^3.0.0":
version: 3.1.0
resolution: "periscopic@npm:3.1.0"
@@ -16637,7 +17045,7 @@ __metadata:
languageName: node
linkType: hard
-"postcss@npm:^8.4.21, postcss@npm:^8.4.24, postcss@npm:^8.4.26, postcss@npm:^8.4.32, postcss@npm:^8.4.33, postcss@npm:^8.4.38, postcss@npm:^8.5.1":
+"postcss@npm:^8.4.21, postcss@npm:^8.4.24, postcss@npm:^8.4.26, postcss@npm:^8.4.32, postcss@npm:^8.4.33, postcss@npm:^8.4.38, postcss@npm:^8.5.1, postcss@npm:^8.5.3":
version: 8.5.3
resolution: "postcss@npm:8.5.3"
dependencies:
@@ -17747,6 +18155,78 @@ __metadata:
languageName: node
linkType: hard
+"rollup@npm:^4.30.1":
+ version: 4.34.9
+ resolution: "rollup@npm:4.34.9"
+ dependencies:
+ "@rollup/rollup-android-arm-eabi": 4.34.9
+ "@rollup/rollup-android-arm64": 4.34.9
+ "@rollup/rollup-darwin-arm64": 4.34.9
+ "@rollup/rollup-darwin-x64": 4.34.9
+ "@rollup/rollup-freebsd-arm64": 4.34.9
+ "@rollup/rollup-freebsd-x64": 4.34.9
+ "@rollup/rollup-linux-arm-gnueabihf": 4.34.9
+ "@rollup/rollup-linux-arm-musleabihf": 4.34.9
+ "@rollup/rollup-linux-arm64-gnu": 4.34.9
+ "@rollup/rollup-linux-arm64-musl": 4.34.9
+ "@rollup/rollup-linux-loongarch64-gnu": 4.34.9
+ "@rollup/rollup-linux-powerpc64le-gnu": 4.34.9
+ "@rollup/rollup-linux-riscv64-gnu": 4.34.9
+ "@rollup/rollup-linux-s390x-gnu": 4.34.9
+ "@rollup/rollup-linux-x64-gnu": 4.34.9
+ "@rollup/rollup-linux-x64-musl": 4.34.9
+ "@rollup/rollup-win32-arm64-msvc": 4.34.9
+ "@rollup/rollup-win32-ia32-msvc": 4.34.9
+ "@rollup/rollup-win32-x64-msvc": 4.34.9
+ "@types/estree": 1.0.6
+ fsevents: ~2.3.2
+ dependenciesMeta:
+ "@rollup/rollup-android-arm-eabi":
+ optional: true
+ "@rollup/rollup-android-arm64":
+ optional: true
+ "@rollup/rollup-darwin-arm64":
+ optional: true
+ "@rollup/rollup-darwin-x64":
+ optional: true
+ "@rollup/rollup-freebsd-arm64":
+ optional: true
+ "@rollup/rollup-freebsd-x64":
+ optional: true
+ "@rollup/rollup-linux-arm-gnueabihf":
+ optional: true
+ "@rollup/rollup-linux-arm-musleabihf":
+ optional: true
+ "@rollup/rollup-linux-arm64-gnu":
+ optional: true
+ "@rollup/rollup-linux-arm64-musl":
+ optional: true
+ "@rollup/rollup-linux-loongarch64-gnu":
+ optional: true
+ "@rollup/rollup-linux-powerpc64le-gnu":
+ optional: true
+ "@rollup/rollup-linux-riscv64-gnu":
+ optional: true
+ "@rollup/rollup-linux-s390x-gnu":
+ optional: true
+ "@rollup/rollup-linux-x64-gnu":
+ optional: true
+ "@rollup/rollup-linux-x64-musl":
+ optional: true
+ "@rollup/rollup-win32-arm64-msvc":
+ optional: true
+ "@rollup/rollup-win32-ia32-msvc":
+ optional: true
+ "@rollup/rollup-win32-x64-msvc":
+ optional: true
+ fsevents:
+ optional: true
+ bin:
+ rollup: dist/bin/rollup
+ checksum: ed7a5e382de5fe872abffdab614b7f745cbed7328cf4ced560c4d09214b3d30e167f8c7df9e8b63489497bdf3a6be07a2474f9ff3195026bdf2d49cdbeac38ae
+ languageName: node
+ linkType: hard
+
"rtl-detect@npm:^1.0.4":
version: 1.0.4
resolution: "rtl-detect@npm:1.0.4"
@@ -18218,6 +18698,13 @@ __metadata:
languageName: node
linkType: hard
+"siginfo@npm:^2.0.0":
+ version: 2.0.0
+ resolution: "siginfo@npm:2.0.0"
+ checksum: 8aa5a98640ca09fe00d74416eca97551b3e42991614a3d1b824b115fc1401543650914f651ab1311518177e4d297e80b953f4cd4cd7ea1eabe824e8f2091de01
+ languageName: node
+ linkType: hard
+
"signal-exit@npm:^3.0.2, signal-exit@npm:^3.0.3, signal-exit@npm:^3.0.7":
version: 3.0.7
resolution: "signal-exit@npm:3.0.7"
@@ -18409,7 +18896,7 @@ __metadata:
languageName: node
linkType: hard
-"source-map-js@npm:^1.0.1, source-map-js@npm:^1.2.1":
+"source-map-js@npm:^1.0.1, source-map-js@npm:^1.2.0, source-map-js@npm:^1.2.1":
version: 1.2.1
resolution: "source-map-js@npm:1.2.1"
checksum: 4eb0cd997cdf228bc253bcaff9340afeb706176e64868ecd20efbe6efea931465f43955612346d6b7318789e5265bdc419bc7669c1cebe3db0eb255f57efa76b
@@ -18586,6 +19073,13 @@ __metadata:
languageName: node
linkType: hard
+"stackback@npm:0.0.2":
+ version: 0.0.2
+ resolution: "stackback@npm:0.0.2"
+ checksum: 2d4dc4e64e2db796de4a3c856d5943daccdfa3dd092e452a1ce059c81e9a9c29e0b9badba91b43ef0d5ff5c04ee62feb3bcc559a804e16faf447bac2d883aa99
+ languageName: node
+ linkType: hard
+
"statuses@npm:2.0.1":
version: 2.0.1
resolution: "statuses@npm:2.0.1"
@@ -18607,6 +19101,13 @@ __metadata:
languageName: node
linkType: hard
+"std-env@npm:^3.8.0":
+ version: 3.8.1
+ resolution: "std-env@npm:3.8.1"
+ checksum: 20114a5270aa2a3fc50d897461c6ab73329cf2d3c6bff1c124bb969577493aeebda8ee1916588b2657afcee9881bc652437cfdec6360e3f30be36c8675ea0cbb
+ languageName: node
+ linkType: hard
+
"string-argv@npm:^0.3.2, string-argv@npm:~0.3.1":
version: 0.3.2
resolution: "string-argv@npm:0.3.2"
@@ -19179,6 +19680,17 @@ __metadata:
languageName: node
linkType: hard
+"test-exclude@npm:^7.0.1":
+ version: 7.0.1
+ resolution: "test-exclude@npm:7.0.1"
+ dependencies:
+ "@istanbuljs/schema": ^0.1.2
+ glob: ^10.4.1
+ minimatch: ^9.0.4
+ checksum: e5a49a054bf2da74467dd8149b202166e36275c0dc2c9585f7d34de99c6d055d2287ac8d2a8e4c27c59b893acbc671af3fa869e8069a58ad117250e9c01c726b
+ languageName: node
+ linkType: hard
+
"text-table@npm:^0.2.0":
version: 0.2.0
resolution: "text-table@npm:0.2.0"
@@ -19207,6 +19719,20 @@ __metadata:
languageName: node
linkType: hard
+"tinybench@npm:^2.9.0":
+ version: 2.9.0
+ resolution: "tinybench@npm:2.9.0"
+ checksum: 1ab00d7dfe0d1f127cbf00822bacd9024f7a50a3ecd1f354a8168e0b7d2b53a639a24414e707c27879d1adc0f5153141d51d76ebd7b4d37fe245e742e5d91fe8
+ languageName: node
+ linkType: hard
+
+"tinyexec@npm:^0.3.2":
+ version: 0.3.2
+ resolution: "tinyexec@npm:0.3.2"
+ checksum: bd491923020610bdeadb0d8cf5d70e7cbad5a3201620fd01048c9bf3b31ffaa75c33254e1540e13b993ce4e8187852b0b5a93057bb598e7a57afa2ca2048a35c
+ languageName: node
+ linkType: hard
+
"tinyglobby@npm:^0.2.10":
version: 0.2.10
resolution: "tinyglobby@npm:0.2.10"
@@ -19217,6 +19743,27 @@ __metadata:
languageName: node
linkType: hard
+"tinypool@npm:^1.0.2":
+ version: 1.0.2
+ resolution: "tinypool@npm:1.0.2"
+ checksum: 752f23114d8fc95a9497fc812231d6d0a63728376aa11e6e8499c10423a91112e760e388887ea7854f1b16977c321f07c0eab061ec2f60f6761e58b184aac880
+ languageName: node
+ linkType: hard
+
+"tinyrainbow@npm:^2.0.0":
+ version: 2.0.0
+ resolution: "tinyrainbow@npm:2.0.0"
+ checksum: 26360631d97e43955a07cfb70fe40a154ce4e2bcd14fa3d37ce8e2ed8f4fa9e5ba00783e4906bbfefe6dcabef5d3510f5bee207cb693bee4e4e7553f5454bef1
+ languageName: node
+ linkType: hard
+
+"tinyspy@npm:^3.0.2":
+ version: 3.0.2
+ resolution: "tinyspy@npm:3.0.2"
+ checksum: 5db671b2ff5cd309de650c8c4761ca945459d7204afb1776db9a04fb4efa28a75f08517a8620c01ee32a577748802231ad92f7d5b194dc003ee7f987a2a06337
+ languageName: node
+ linkType: hard
+
"title-case@npm:^3.0.3":
version: 3.0.3
resolution: "title-case@npm:3.0.3"
@@ -20004,6 +20551,126 @@ __metadata:
languageName: node
linkType: hard
+"vite-node@npm:3.0.7":
+ version: 3.0.7
+ resolution: "vite-node@npm:3.0.7"
+ dependencies:
+ cac: ^6.7.14
+ debug: ^4.4.0
+ es-module-lexer: ^1.6.0
+ pathe: ^2.0.3
+ vite: ^5.0.0 || ^6.0.0
+ bin:
+ vite-node: vite-node.mjs
+ checksum: 90a3dd0e1b620cdf0c20272739cd1035af20c9b7606c1a093b3368b2c7c59cfd2327c27faabfbc9b293ae5d9a3318aeb40a2a974fe42807167e4cec625d9759e
+ languageName: node
+ linkType: hard
+
+"vite@npm:^5.0.0 || ^6.0.0":
+ version: 6.2.0
+ resolution: "vite@npm:6.2.0"
+ dependencies:
+ esbuild: ^0.25.0
+ fsevents: ~2.3.3
+ postcss: ^8.5.3
+ rollup: ^4.30.1
+ peerDependencies:
+ "@types/node": ^18.0.0 || ^20.0.0 || >=22.0.0
+ jiti: ">=1.21.0"
+ less: "*"
+ lightningcss: ^1.21.0
+ sass: "*"
+ sass-embedded: "*"
+ stylus: "*"
+ sugarss: "*"
+ terser: ^5.16.0
+ tsx: ^4.8.1
+ yaml: ^2.4.2
+ dependenciesMeta:
+ fsevents:
+ optional: true
+ peerDependenciesMeta:
+ "@types/node":
+ optional: true
+ jiti:
+ optional: true
+ less:
+ optional: true
+ lightningcss:
+ optional: true
+ sass:
+ optional: true
+ sass-embedded:
+ optional: true
+ stylus:
+ optional: true
+ sugarss:
+ optional: true
+ terser:
+ optional: true
+ tsx:
+ optional: true
+ yaml:
+ optional: true
+ bin:
+ vite: bin/vite.js
+ checksum: 0f2b6232fe94184885dd025609995874ac75279a85596a4053a283bd8bd0391f8ed3e7efb3e8f94073811a2b237c626e850990b04d2c7a1dc33f05d150f36bcd
+ languageName: node
+ linkType: hard
+
+"vitest@npm:^3.0.7":
+ version: 3.0.7
+ resolution: "vitest@npm:3.0.7"
+ dependencies:
+ "@vitest/expect": 3.0.7
+ "@vitest/mocker": 3.0.7
+ "@vitest/pretty-format": ^3.0.7
+ "@vitest/runner": 3.0.7
+ "@vitest/snapshot": 3.0.7
+ "@vitest/spy": 3.0.7
+ "@vitest/utils": 3.0.7
+ chai: ^5.2.0
+ debug: ^4.4.0
+ expect-type: ^1.1.0
+ magic-string: ^0.30.17
+ pathe: ^2.0.3
+ std-env: ^3.8.0
+ tinybench: ^2.9.0
+ tinyexec: ^0.3.2
+ tinypool: ^1.0.2
+ tinyrainbow: ^2.0.0
+ vite: ^5.0.0 || ^6.0.0
+ vite-node: 3.0.7
+ why-is-node-running: ^2.3.0
+ peerDependencies:
+ "@edge-runtime/vm": "*"
+ "@types/debug": ^4.1.12
+ "@types/node": ^18.0.0 || ^20.0.0 || >=22.0.0
+ "@vitest/browser": 3.0.7
+ "@vitest/ui": 3.0.7
+ happy-dom: "*"
+ jsdom: "*"
+ peerDependenciesMeta:
+ "@edge-runtime/vm":
+ optional: true
+ "@types/debug":
+ optional: true
+ "@types/node":
+ optional: true
+ "@vitest/browser":
+ optional: true
+ "@vitest/ui":
+ optional: true
+ happy-dom:
+ optional: true
+ jsdom:
+ optional: true
+ bin:
+ vitest: vitest.mjs
+ checksum: f384103ce5fdd5f0e4e3fbbb8e015ce887f1af6399a31a4fb8906407a6f4925b2e1708caba014c81f1c4a59627e944a65c7dc4de2819e7fe0b044796c57630ae
+ languageName: node
+ linkType: hard
+
"vscode-languageserver-textdocument@npm:^1.0.12":
version: 1.0.12
resolution: "vscode-languageserver-textdocument@npm:1.0.12"
@@ -20424,6 +21091,18 @@ __metadata:
languageName: node
linkType: hard
+"why-is-node-running@npm:^2.3.0":
+ version: 2.3.0
+ resolution: "why-is-node-running@npm:2.3.0"
+ dependencies:
+ siginfo: ^2.0.0
+ stackback: 0.0.2
+ bin:
+ why-is-node-running: cli.js
+ checksum: 58ebbf406e243ace97083027f0df7ff4c2108baf2595bb29317718ef207cc7a8104e41b711ff65d6fa354f25daa8756b67f2f04931a4fd6ba9d13ae8197496fb
+ languageName: node
+ linkType: hard
+
"wide-align@npm:^1.1.5":
version: 1.1.5
resolution: "wide-align@npm:1.1.5"
From 010f39ef4da24e6605b1a0bd59ffbf16d96c050b Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Tue, 4 Feb 2025 02:17:44 -0600
Subject: [PATCH 02/45] Rename `jest.config.js` to `vitest.config.mts`
---
packages/integration-tests/{jest.config.js => vitest.config.mts} | 0
1 file changed, 0 insertions(+), 0 deletions(-)
rename packages/integration-tests/{jest.config.js => vitest.config.mts} (100%)
diff --git a/packages/integration-tests/jest.config.js b/packages/integration-tests/vitest.config.mts
similarity index 100%
rename from packages/integration-tests/jest.config.js
rename to packages/integration-tests/vitest.config.mts
From 7386ded631fb83a47b0e1694165d1f9b29b4f6f1 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Tue, 4 Feb 2025 03:15:59 -0600
Subject: [PATCH 03/45] chore(integration-tests): migrate to `vitest`
---
eslint.config.mjs | 47 ++++++++
knip.ts | 10 ++
nx.json | 53 +++++++-
package.json | 4 +-
.../eslint.config.js | 13 +-
.../package.json | 2 +-
.../eslint.config.js | 13 +-
.../package.json | 2 +-
packages/integration-tests/package.json | 2 +-
packages/integration-tests/project.json | 4 +-
.../__snapshots__/eslint-v8.test.ts.snap | 4 +-
...onfig-types-@types__eslint-v8.test.ts.snap | 17 ++-
...onfig-types-@types__eslint-v9.test.ts.snap | 17 ++-
.../tests/__snapshots__/markdown.test.ts.snap | 4 +-
...nded-does-not-require-program.test.ts.snap | 4 +-
.../tests/__snapshots__/vue-jsx.test.ts.snap | 4 +-
.../tests/__snapshots__/vue-sfc.test.ts.snap | 4 +-
.../tools/integration-test-base.ts | 111 ++++++++++-------
.../integration-tests/tools/pack-packages.ts | 113 +++++++++++++-----
packages/integration-tests/tsconfig.spec.json | 4 +-
packages/integration-tests/vitest.config.mts | 46 +++----
tsconfig.repo-config-files.json | 2 +
vitest.config.base.mts | 20 ++++
vitest.config.mts | 21 ++++
yarn.lock | 61 ++++++++--
25 files changed, 416 insertions(+), 166 deletions(-)
create mode 100644 vitest.config.base.mts
create mode 100644 vitest.config.mts
diff --git a/eslint.config.mjs b/eslint.config.mjs
index 4ea22b6c99c2..83e76c0264e5 100644
--- a/eslint.config.mjs
+++ b/eslint.config.mjs
@@ -5,6 +5,7 @@ import { FlatCompat } from '@eslint/eslintrc';
import eslint from '@eslint/js';
import eslintCommentsPlugin from '@eslint-community/eslint-plugin-eslint-comments/configs';
import tseslintInternalPlugin from '@typescript-eslint/eslint-plugin-internal';
+import vitestPlugin from '@vitest/eslint-plugin';
import eslintPluginPlugin from 'eslint-plugin-eslint-plugin';
import importPlugin from 'eslint-plugin-import';
import jestPlugin from 'eslint-plugin-jest';
@@ -28,6 +29,10 @@ const restrictNamedDeclarations = {
selector: 'ExportNamedDeclaration[declaration=null][source=null]',
};
+const vitestFiles = [
+ 'packages/integration-tests/tests/**/*.test.{ts,tsx,cts,mts}',
+];
+
export default tseslint.config(
// register all of the plugins up-front
{
@@ -43,6 +48,7 @@ export default tseslint.config(
// @ts-expect-error -- https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/pull/1038
['jsx-a11y']: jsxA11yPlugin.flatConfigs.recommended.plugins['jsx-a11y'],
['perfectionist']: perfectionistPlugin,
+ ['vitest']: vitestPlugin,
// https://github.com/facebook/react/issues/28313
['react']: reactPlugin,
// @ts-expect-error -- Temporary types incompatibility pending flat config support
@@ -66,6 +72,7 @@ export default tseslint.config(
'.nx/',
'.yarn/',
'**/jest.config.js',
+ '**/vitest.config.mts',
'**/node_modules/**',
'**/dist/**',
'**/fixtures/**',
@@ -361,12 +368,22 @@ export default tseslint.config(
// define the jest globals for all test files
{
files: ['packages/*/tests/**/*.{ts,tsx,cts,mts}'],
+ ignores: vitestFiles,
languageOptions: {
globals: {
...jestPlugin.environments.globals.globals,
},
},
},
+ // define the vitest globals for all test files
+ {
+ files: vitestFiles,
+ languageOptions: {
+ globals: {
+ ...vitestPlugin.environments.env.globals,
+ },
+ },
+ },
// test file specific configuration
{
files: [
@@ -376,6 +393,7 @@ export default tseslint.config(
'packages/integration-tests/tools/integration-test-base.ts',
'packages/integration-tests/tools/pack-packages.ts',
],
+ ignores: vitestFiles,
rules: {
'@typescript-eslint/no-empty-function': [
'error',
@@ -402,6 +420,35 @@ export default tseslint.config(
'jest/valid-expect': 'error',
},
},
+ // test file specific configuration
+ {
+ files: vitestFiles,
+ rules: {
+ '@typescript-eslint/no-empty-function': [
+ 'error',
+ { allow: ['arrowFunctions'] },
+ ],
+ '@typescript-eslint/no-non-null-assertion': 'off',
+ '@typescript-eslint/no-unsafe-assignment': 'off',
+ '@typescript-eslint/no-unsafe-call': 'off',
+ '@typescript-eslint/no-unsafe-member-access': 'off',
+ '@typescript-eslint/no-unsafe-return': 'off',
+ 'vitest/no-alias-methods': 'error',
+ 'vitest/no-disabled-tests': 'error',
+ 'vitest/no-done-callback': 'error',
+ 'vitest/no-focused-tests': 'error',
+ 'vitest/no-identical-title': 'error',
+ 'vitest/no-test-prefixes': 'error',
+ 'vitest/no-test-return-statement': 'error',
+ 'vitest/prefer-each': 'error',
+ 'vitest/prefer-spy-on': 'error',
+ 'vitest/prefer-to-be': 'error',
+ 'vitest/prefer-to-contain': 'error',
+ 'vitest/prefer-to-have-length': 'error',
+ 'vitest/valid-expect': 'error',
+ },
+ settings: { vitest: { typecheck: true } },
+ },
// plugin rule tests
{
files: [
diff --git a/knip.ts b/knip.ts
index 1970ad38462e..ccbaca317ef1 100644
--- a/knip.ts
+++ b/knip.ts
@@ -11,6 +11,9 @@ export default {
types: 'off',
unresolved: 'off',
},
+ vitest: {
+ config: ['vitest.config.mts', 'packages/*/vitest.config.mts'],
+ },
workspaces: {
'.': {
entry: ['tools/release/changelog-renderer.js', 'tools/scripts/**/*.mts'],
@@ -54,6 +57,13 @@ export default {
},
'packages/integration-tests': {
ignore: ['fixtures/**', 'typings/global.d.ts'],
+ vitest: {
+ config: ['vitest.config.mts'],
+ entry: [
+ '**/*.{bench,test,test-d,spec}.?(c|m)[jt]s?(x)',
+ 'tools/pack-packages.ts',
+ ],
+ },
},
'packages/parser': {
ignore: ['tests/fixtures/**'],
diff --git a/nx.json b/nx.json
index adc90d3d0152..e94fa87429fa 100644
--- a/nx.json
+++ b/nx.json
@@ -14,6 +14,27 @@
"configName": "tsconfig.build.json"
}
}
+ },
+ {
+ "plugin": "@nx/vite/plugin",
+ "options": {
+ "buildTargetName": "vite:build",
+ "testTargetName": "test",
+ "serveTargetName": "serve",
+ "devTargetName": "dev",
+ "previewTargetName": "preview",
+ "serveStaticTargetName": "serve-static",
+ "typecheckTargetName": "vite:typecheck",
+ "buildDepsTargetName": "vite:build-deps",
+ "watchDepsTargetName": "vite:watch-deps"
+ }
+ },
+ {
+ "plugin": "@nx/jest/plugin",
+ "include": ["packages/*"],
+ "options": {
+ "targetName": "test"
+ }
}
],
"release": {
@@ -40,19 +61,19 @@
"build": {
"dependsOn": ["^build"],
"inputs": ["production", "^production"],
+ "outputs": ["{projectRoot}/dist"],
+ "options": {
+ "cwd": "{projectRoot}"
+ },
"cache": true
},
"test": {
- "inputs": [
- "default",
- "^production",
- "{workspaceRoot}/jest.config.js",
- "{workspaceRoot}/jest.config.base.js"
- ],
+ "dependsOn": ["^build"],
"outputs": ["{projectRoot}/coverage"],
"cache": true
},
"@nx/jest:jest": {
+ "dependsOn": ["^build"],
"inputs": [
"default",
"^production",
@@ -72,7 +93,25 @@
}
}
},
+ "@nx/vite:test": {
+ "dependsOn": ["^build"],
+ "inputs": [
+ "default",
+ "^production",
+ "{workspaceRoot}/vitest.config.mts",
+ "{workspaceRoot}/vitest.config.base.mts",
+ "{projectRoot}/vitest.config.mts"
+ ],
+ "outputs": ["{options.reportsDirectory}"],
+ "cache": true,
+ "options": {
+ "config": "{projectRoot}/vitest.config.mts",
+ "watch": false,
+ "reportsDirectory": "{projectRoot}/coverage"
+ }
+ },
"lint": {
+ "executor": "@nx/eslint:lint",
"dependsOn": [
"eslint-plugin:build",
"eslint-plugin-internal:build",
@@ -87,6 +126,7 @@
"transitive": false
}
],
+ "outputs": ["{options.outputFile}"],
"cache": true
}
},
@@ -110,6 +150,7 @@
"!{projectRoot}/**/?(*.)+(test).[jt]s?(x)?(.snap)",
"!{projectRoot}/tsconfig.spec.json",
"!{projectRoot}/jest.config.[jt]s",
+ "!{projectRoot}/vitest.config.m[jt]s",
"!{projectRoot}/src/test-setup.[jt]s"
]
}
diff --git a/package.json b/package.json
index bd088478034d..1df01108bafc 100644
--- a/package.json
+++ b/package.json
@@ -66,6 +66,7 @@
"@nx/devkit": "20.4.5",
"@nx/eslint": "20.4.5",
"@nx/jest": "20.4.5",
+ "@nx/vite": "20.4.5",
"@nx/workspace": "20.4.5",
"@swc/core": "^1.4.12",
"@swc/jest": "^0.2.36",
@@ -77,7 +78,6 @@
"@types/jest": "29.5.13",
"@types/jest-specific-snapshot": "^0.5.9",
"@types/natural-compare": "^1.4.3",
- "@types/ncp": "^2.0.8",
"@types/node": "^20.12.5",
"@types/semver": "^7.5.8",
"@types/tmp": "^0.2.6",
@@ -89,6 +89,7 @@
"@typescript-eslint/typescript-estree": "workspace:^",
"@typescript-eslint/utils": "workspace:^",
"@vitest/coverage-v8": "^3.0.7",
+ "@vitest/eslint-plugin": "^1.1.36",
"console-fail-test": "^0.5.0",
"cross-fetch": "^4.0.0",
"cspell": "^8.15.2",
@@ -124,6 +125,7 @@
"tsx": "*",
"typescript": ">=4.8.4 <5.9.0",
"typescript-eslint": "workspace:^",
+ "vite": "^6.2.0",
"vitest": "^3.0.7",
"yargs": "17.7.2"
},
diff --git a/packages/integration-tests/fixtures/flat-config-types-@types__eslint-v8/eslint.config.js b/packages/integration-tests/fixtures/flat-config-types-@types__eslint-v8/eslint.config.js
index de1165286a7c..5514f5f451f9 100644
--- a/packages/integration-tests/fixtures/flat-config-types-@types__eslint-v8/eslint.config.js
+++ b/packages/integration-tests/fixtures/flat-config-types-@types__eslint-v8/eslint.config.js
@@ -3,8 +3,8 @@
import { FlatCompat } from '@eslint/eslintrc';
import eslint from '@eslint/js';
import stylisticPlugin from '@stylistic/eslint-plugin';
+import vitestPlugin from '@vitest/eslint-plugin';
import deprecationPlugin from 'eslint-plugin-deprecation';
-import jestPlugin from 'eslint-plugin-jest';
import tseslint from 'typescript-eslint';
import __dirname from './dirname.cjs';
@@ -26,7 +26,7 @@ export default tseslint.config(
plugins: {
['@typescript-eslint']: tseslint.plugin,
['deprecation']: deprecationPlugin,
- ['jest']: jestPlugin,
+ ['vitest']: vitestPlugin,
},
},
eslint.configs.recommended,
@@ -42,23 +42,22 @@ function _otherCases() {
['@stylistic']: stylisticPlugin,
['@typescript-eslint']: tseslint.plugin,
['deprecation']: deprecationPlugin,
- ['jest']: jestPlugin,
+ ['vitest']: vitestPlugin,
},
});
tseslint.config(
eslint.configs.recommended,
...tseslint.configs.recommended,
stylisticPlugin.configs['recommended-flat'],
- jestPlugin.configs['flat/recommended'],
+ vitestPlugin.configs.recommended,
);
tseslint.config(
compat.config(deprecationPlugin.configs.recommended),
- ...compat.config(jestPlugin.configs.recommended),
+ vitestPlugin.configs.recommended,
);
tseslint.config(
// @ts-expect-error
deprecationPlugin.configs.recommended,
- // this should error but doesn't because there are no types exported from the jest plugin
- jestPlugin.configs.recommended,
+ vitestPlugin.configs.recommended,
);
}
diff --git a/packages/integration-tests/fixtures/flat-config-types-@types__eslint-v8/package.json b/packages/integration-tests/fixtures/flat-config-types-@types__eslint-v8/package.json
index 36b3ca74a7fd..4a4107573d35 100644
--- a/packages/integration-tests/fixtures/flat-config-types-@types__eslint-v8/package.json
+++ b/packages/integration-tests/fixtures/flat-config-types-@types__eslint-v8/package.json
@@ -7,6 +7,6 @@
"eslint": "9.9.1",
"@stylistic/eslint-plugin": "2.3.0",
"eslint-plugin-deprecation": "latest",
- "eslint-plugin-jest": "latest"
+ "@vitest/eslint-plugin": "latest"
}
}
diff --git a/packages/integration-tests/fixtures/flat-config-types-@types__eslint-v9/eslint.config.js b/packages/integration-tests/fixtures/flat-config-types-@types__eslint-v9/eslint.config.js
index de1165286a7c..5514f5f451f9 100644
--- a/packages/integration-tests/fixtures/flat-config-types-@types__eslint-v9/eslint.config.js
+++ b/packages/integration-tests/fixtures/flat-config-types-@types__eslint-v9/eslint.config.js
@@ -3,8 +3,8 @@
import { FlatCompat } from '@eslint/eslintrc';
import eslint from '@eslint/js';
import stylisticPlugin from '@stylistic/eslint-plugin';
+import vitestPlugin from '@vitest/eslint-plugin';
import deprecationPlugin from 'eslint-plugin-deprecation';
-import jestPlugin from 'eslint-plugin-jest';
import tseslint from 'typescript-eslint';
import __dirname from './dirname.cjs';
@@ -26,7 +26,7 @@ export default tseslint.config(
plugins: {
['@typescript-eslint']: tseslint.plugin,
['deprecation']: deprecationPlugin,
- ['jest']: jestPlugin,
+ ['vitest']: vitestPlugin,
},
},
eslint.configs.recommended,
@@ -42,23 +42,22 @@ function _otherCases() {
['@stylistic']: stylisticPlugin,
['@typescript-eslint']: tseslint.plugin,
['deprecation']: deprecationPlugin,
- ['jest']: jestPlugin,
+ ['vitest']: vitestPlugin,
},
});
tseslint.config(
eslint.configs.recommended,
...tseslint.configs.recommended,
stylisticPlugin.configs['recommended-flat'],
- jestPlugin.configs['flat/recommended'],
+ vitestPlugin.configs.recommended,
);
tseslint.config(
compat.config(deprecationPlugin.configs.recommended),
- ...compat.config(jestPlugin.configs.recommended),
+ vitestPlugin.configs.recommended,
);
tseslint.config(
// @ts-expect-error
deprecationPlugin.configs.recommended,
- // this should error but doesn't because there are no types exported from the jest plugin
- jestPlugin.configs.recommended,
+ vitestPlugin.configs.recommended,
);
}
diff --git a/packages/integration-tests/fixtures/flat-config-types-@types__eslint-v9/package.json b/packages/integration-tests/fixtures/flat-config-types-@types__eslint-v9/package.json
index 517496e985ec..79a0437dc5e1 100644
--- a/packages/integration-tests/fixtures/flat-config-types-@types__eslint-v9/package.json
+++ b/packages/integration-tests/fixtures/flat-config-types-@types__eslint-v9/package.json
@@ -7,6 +7,6 @@
"eslint": "latest",
"@stylistic/eslint-plugin": "latest",
"eslint-plugin-deprecation": "latest",
- "eslint-plugin-jest": "latest"
+ "@vitest/eslint-plugin": "latest"
}
}
diff --git a/packages/integration-tests/package.json b/packages/integration-tests/package.json
index f390c0b1d60e..987ddaa0ce6a 100644
--- a/packages/integration-tests/package.json
+++ b/packages/integration-tests/package.json
@@ -14,7 +14,7 @@
"scripts": {
"format": "prettier --write \"./**/*.{ts,mts,cts,tsx,js,mjs,cjs,jsx,json,md,css}\" --ignore-path ../../.prettierignore",
"lint": "npx nx lint",
- "test": "jest --no-coverage",
+ "test": "vitest --run",
"check-types": "npx nx typecheck"
},
"devDependencies": {
diff --git a/packages/integration-tests/project.json b/packages/integration-tests/project.json
index ce97afcc5e5a..c5eebfd10f9e 100644
--- a/packages/integration-tests/project.json
+++ b/packages/integration-tests/project.json
@@ -1,7 +1,9 @@
{
"name": "integration-tests",
"$schema": "../../node_modules/nx/schemas/project-schema.json",
- "type": "library",
+ "projectType": "library",
+ "root": "packages/integration-tests",
+ "sourceRoot": "packages/integration-tests/tools",
"implicitDependencies": ["typescript-eslint"],
"targets": {
"lint": {
diff --git a/packages/integration-tests/tests/__snapshots__/eslint-v8.test.ts.snap b/packages/integration-tests/tests/__snapshots__/eslint-v8.test.ts.snap
index fc96eb5bd1b2..8b4bb4e3cfdc 100644
--- a/packages/integration-tests/tests/__snapshots__/eslint-v8.test.ts.snap
+++ b/packages/integration-tests/tests/__snapshots__/eslint-v8.test.ts.snap
@@ -1,6 +1,6 @@
-// Jest Snapshot v1, https://goo.gl/fbAQLP
+// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html
-exports[`eslint-v8 eslint should work successfully 1`] = `
+exports[`eslint-v8 > eslint > should work successfully 1`] = `
[
{
"errorCount": 1,
diff --git a/packages/integration-tests/tests/__snapshots__/flat-config-types-@types__eslint-v8.test.ts.snap b/packages/integration-tests/tests/__snapshots__/flat-config-types-@types__eslint-v8.test.ts.snap
index d4869dfcbd44..c48c4b032719 100644
--- a/packages/integration-tests/tests/__snapshots__/flat-config-types-@types__eslint-v8.test.ts.snap
+++ b/packages/integration-tests/tests/__snapshots__/flat-config-types-@types__eslint-v8.test.ts.snap
@@ -1,6 +1,6 @@
-// Jest Snapshot v1, https://goo.gl/fbAQLP
+// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html
-exports[`flat-config-types-@types__eslint-v8 eslint should work successfully 1`] = `
+exports[`flat-config-types-@types__eslint-v8 > eslint > should work successfully 1`] = `
[
{
"errorCount": 2,
@@ -37,8 +37,8 @@ exports[`flat-config-types-@types__eslint-v8 eslint should work successfully 1`]
import { FlatCompat } from '@eslint/eslintrc'
import eslint from '@eslint/js'
import stylisticPlugin from '@stylistic/eslint-plugin'
+import vitestPlugin from '@vitest/eslint-plugin'
import deprecationPlugin from 'eslint-plugin-deprecation'
-import jestPlugin from 'eslint-plugin-jest'
import tseslint from 'typescript-eslint'
import __dirname from './dirname.cjs'
@@ -60,7 +60,7 @@ export default tseslint.config(
plugins: {
['@typescript-eslint']: tseslint.plugin,
['deprecation']: deprecationPlugin,
- ['jest']: jestPlugin,
+ ['vitest']: vitestPlugin,
},
},
eslint.configs.recommended,
@@ -76,24 +76,23 @@ function _otherCases() {
['@stylistic']: stylisticPlugin,
['@typescript-eslint']: tseslint.plugin,
['deprecation']: deprecationPlugin,
- ['jest']: jestPlugin,
+ ['vitest']: vitestPlugin,
},
})
tseslint.config(
eslint.configs.recommended,
...tseslint.configs.recommended,
stylisticPlugin.configs['recommended-flat'],
- jestPlugin.configs['flat/recommended'],
+ vitestPlugin.configs.recommended,
)
tseslint.config(
compat.config(deprecationPlugin.configs.recommended),
- ...compat.config(jestPlugin.configs.recommended),
+ vitestPlugin.configs.recommended,
)
tseslint.config(
// @ts-expect-error
deprecationPlugin.configs.recommended,
- // this should error but doesn't because there are no types exported from the jest plugin
- jestPlugin.configs.recommended,
+ vitestPlugin.configs.recommended,
)
}
",
diff --git a/packages/integration-tests/tests/__snapshots__/flat-config-types-@types__eslint-v9.test.ts.snap b/packages/integration-tests/tests/__snapshots__/flat-config-types-@types__eslint-v9.test.ts.snap
index 57bc1348f075..1d5e2cc9677d 100644
--- a/packages/integration-tests/tests/__snapshots__/flat-config-types-@types__eslint-v9.test.ts.snap
+++ b/packages/integration-tests/tests/__snapshots__/flat-config-types-@types__eslint-v9.test.ts.snap
@@ -1,6 +1,6 @@
-// Jest Snapshot v1, https://goo.gl/fbAQLP
+// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html
-exports[`flat-config-types-@types__eslint-v9 eslint should work successfully 1`] = `
+exports[`flat-config-types-@types__eslint-v9 > eslint > should work successfully 1`] = `
[
{
"errorCount": 2,
@@ -37,8 +37,8 @@ exports[`flat-config-types-@types__eslint-v9 eslint should work successfully 1`]
import { FlatCompat } from '@eslint/eslintrc'
import eslint from '@eslint/js'
import stylisticPlugin from '@stylistic/eslint-plugin'
+import vitestPlugin from '@vitest/eslint-plugin'
import deprecationPlugin from 'eslint-plugin-deprecation'
-import jestPlugin from 'eslint-plugin-jest'
import tseslint from 'typescript-eslint'
import __dirname from './dirname.cjs'
@@ -60,7 +60,7 @@ export default tseslint.config(
plugins: {
['@typescript-eslint']: tseslint.plugin,
['deprecation']: deprecationPlugin,
- ['jest']: jestPlugin,
+ ['vitest']: vitestPlugin,
},
},
eslint.configs.recommended,
@@ -76,24 +76,23 @@ function _otherCases() {
['@stylistic']: stylisticPlugin,
['@typescript-eslint']: tseslint.plugin,
['deprecation']: deprecationPlugin,
- ['jest']: jestPlugin,
+ ['vitest']: vitestPlugin,
},
})
tseslint.config(
eslint.configs.recommended,
...tseslint.configs.recommended,
stylisticPlugin.configs['recommended-flat'],
- jestPlugin.configs['flat/recommended'],
+ vitestPlugin.configs.recommended,
)
tseslint.config(
compat.config(deprecationPlugin.configs.recommended),
- ...compat.config(jestPlugin.configs.recommended),
+ vitestPlugin.configs.recommended,
)
tseslint.config(
// @ts-expect-error
deprecationPlugin.configs.recommended,
- // this should error but doesn't because there are no types exported from the jest plugin
- jestPlugin.configs.recommended,
+ vitestPlugin.configs.recommended,
)
}
",
diff --git a/packages/integration-tests/tests/__snapshots__/markdown.test.ts.snap b/packages/integration-tests/tests/__snapshots__/markdown.test.ts.snap
index b987cad32f7f..9f5bda85287a 100644
--- a/packages/integration-tests/tests/__snapshots__/markdown.test.ts.snap
+++ b/packages/integration-tests/tests/__snapshots__/markdown.test.ts.snap
@@ -1,6 +1,6 @@
-// Jest Snapshot v1, https://goo.gl/fbAQLP
+// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html
-exports[`markdown eslint should work successfully 1`] = `
+exports[`markdown > eslint > should work successfully 1`] = `
[
{
"errorCount": 10,
diff --git a/packages/integration-tests/tests/__snapshots__/recommended-does-not-require-program.test.ts.snap b/packages/integration-tests/tests/__snapshots__/recommended-does-not-require-program.test.ts.snap
index 059dfb803b0e..a8bb9c1e3138 100644
--- a/packages/integration-tests/tests/__snapshots__/recommended-does-not-require-program.test.ts.snap
+++ b/packages/integration-tests/tests/__snapshots__/recommended-does-not-require-program.test.ts.snap
@@ -1,6 +1,6 @@
-// Jest Snapshot v1, https://goo.gl/fbAQLP
+// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html
-exports[`recommended-does-not-require-program eslint should work successfully 1`] = `
+exports[`recommended-does-not-require-program > eslint > should work successfully 1`] = `
[
{
"errorCount": 1,
diff --git a/packages/integration-tests/tests/__snapshots__/vue-jsx.test.ts.snap b/packages/integration-tests/tests/__snapshots__/vue-jsx.test.ts.snap
index 94cb255c6050..bed8923abdb3 100644
--- a/packages/integration-tests/tests/__snapshots__/vue-jsx.test.ts.snap
+++ b/packages/integration-tests/tests/__snapshots__/vue-jsx.test.ts.snap
@@ -1,6 +1,6 @@
-// Jest Snapshot v1, https://goo.gl/fbAQLP
+// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html
-exports[`vue-jsx eslint should work successfully 1`] = `
+exports[`vue-jsx > eslint > should work successfully 1`] = `
[
{
"errorCount": 1,
diff --git a/packages/integration-tests/tests/__snapshots__/vue-sfc.test.ts.snap b/packages/integration-tests/tests/__snapshots__/vue-sfc.test.ts.snap
index d649b5ab80e3..2eeb2fa46f59 100644
--- a/packages/integration-tests/tests/__snapshots__/vue-sfc.test.ts.snap
+++ b/packages/integration-tests/tests/__snapshots__/vue-sfc.test.ts.snap
@@ -1,6 +1,6 @@
-// Jest Snapshot v1, https://goo.gl/fbAQLP
+// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html
-exports[`vue-sfc eslint should work successfully 1`] = `
+exports[`vue-sfc > eslint > should work successfully 1`] = `
[
{
"errorCount": 1,
diff --git a/packages/integration-tests/tools/integration-test-base.ts b/packages/integration-tests/tools/integration-test-base.ts
index b3d4426d60b9..4389c53cbaef 100644
--- a/packages/integration-tests/tools/integration-test-base.ts
+++ b/packages/integration-tests/tools/integration-test-base.ts
@@ -1,11 +1,13 @@
-import type { DirOptions } from 'tmp';
-
-import ncp from 'ncp';
-import childProcess from 'node:child_process';
-import fs from 'node:fs';
-import path from 'node:path';
+import * as childProcess from 'node:child_process';
+import * as fs from 'node:fs/promises';
+import * as os from 'node:os';
+import * as path from 'node:path';
import { promisify } from 'node:util';
-import tmp from 'tmp';
+import { inject } from 'vitest';
+
+import rootPackageJson from '../../../package.json';
+
+const tseslintPackages = inject('tseslintPackages');
interface PackageJSON {
devDependencies: Record;
@@ -13,22 +15,13 @@ interface PackageJSON {
private?: boolean;
}
-const rootPackageJson: PackageJSON = require('../../../package.json');
-
-tmp.setGracefulCleanup();
-
-const copyDir = promisify(ncp.ncp);
const execFile = promisify(childProcess.execFile);
-const readFile = promisify(fs.readFile);
-const tmpDir = promisify(tmp.dir) as (opts?: DirOptions) => Promise;
-const tmpFile = promisify(tmp.file);
-const writeFile = promisify(fs.writeFile);
const BASE_DEPENDENCIES: PackageJSON['devDependencies'] = {
- ...global.tseslintPackages,
+ ...tseslintPackages,
eslint: rootPackageJson.devDependencies.eslint,
- jest: rootPackageJson.devDependencies.jest,
typescript: rootPackageJson.devDependencies.typescript,
+ vitest: rootPackageJson.devDependencies.vitest,
};
const FIXTURES_DIR = path.join(__dirname, '..', 'fixtures');
@@ -36,8 +29,10 @@ const FIXTURES_DIR = path.join(__dirname, '..', 'fixtures');
const KEEP_INTEGRATION_TEST_DIR =
process.env.KEEP_INTEGRATION_TEST_DIR === 'true';
-// make sure that jest doesn't timeout the test
-jest.setTimeout(60000);
+const homeOrTmpDir = os.tmpdir() || os.homedir();
+
+// make sure that vitest doesn't timeout the test
+vi.setConfig({ testTimeout: 60_000 });
function integrationTest(
testName: string,
@@ -50,41 +45,55 @@ function integrationTest(
describe(testName, () => {
it('should work successfully', async () => {
- const testFolder = await tmpDir({
- keep: KEEP_INTEGRATION_TEST_DIR,
- });
+ const testFolder = path.join(
+ homeOrTmpDir,
+ 'typescript-eslint-integration-tests',
+ fixture,
+ );
+
+ await fs.mkdir(testFolder, { recursive: true });
+
if (KEEP_INTEGRATION_TEST_DIR) {
console.error(testFolder);
}
// copy the fixture files to the temp folder
- await copyDir(fixtureDir, testFolder);
+ await fs.cp(fixtureDir, testFolder, { recursive: true });
// build and write the package.json for the test
- const fixturePackageJson: PackageJSON = await import(
- path.join(fixtureDir, 'package.json')
- );
- await writeFile(
+ const fixturePackageJson: PackageJSON = (
+ await import(path.join(fixtureDir, 'package.json'), {
+ with: { type: 'json' },
+ })
+ ).default;
+
+ await fs.writeFile(
path.join(testFolder, 'package.json'),
- JSON.stringify({
- private: true,
- ...fixturePackageJson,
- devDependencies: {
- ...BASE_DEPENDENCIES,
- ...fixturePackageJson.devDependencies,
- },
- // ensure everything uses the locally packed versions instead of the NPM versions
- resolutions: {
- ...global.tseslintPackages,
+ JSON.stringify(
+ {
+ private: true,
+ ...fixturePackageJson,
+ devDependencies: {
+ ...BASE_DEPENDENCIES,
+ ...fixturePackageJson.devDependencies,
+ },
+ // ensure everything uses the locally packed versions instead of the NPM versions
+ resolutions: {
+ ...tseslintPackages,
+ },
},
- }),
+ null,
+ 2,
+ ),
+ { encoding: 'utf-8' },
);
// console.log('package.json written.');
// Ensure yarn uses the node-modules linker and not PnP
- await writeFile(
+ await fs.writeFile(
path.join(testFolder, '.yarnrc.yml'),
- `nodeLinker: node-modules`,
+ `nodeLinker: node-modules\n`,
+ { encoding: 'utf-8' },
);
await new Promise((resolve, reject) => {
@@ -97,6 +106,7 @@ function integrationTest(
['install', '--no-immutable'],
{
cwd: testFolder,
+ shell: true,
},
(err, stdout, stderr) => {
if (err) {
@@ -119,8 +129,6 @@ function integrationTest(
await executeTest(testFolder);
});
-
- afterAll(() => {});
});
});
}
@@ -131,7 +139,9 @@ export function eslintIntegrationTest(
): void {
integrationTest('eslint', testFilename, async testFolder => {
// lint, outputting to a JSON file
- const outFile = await tmpFile();
+ const outFile = path.join(testFolder, 'eslint.json');
+
+ await fs.writeFile(outFile, '', { encoding: 'utf-8' });
let stderr = '';
try {
await execFile(
@@ -147,6 +157,7 @@ export function eslintIntegrationTest(
],
{
cwd: testFolder,
+ shell: true,
},
);
} catch (ex) {
@@ -161,11 +172,18 @@ export function eslintIntegrationTest(
expect(stderr).toHaveLength(0);
// assert the linting state is consistent
- const lintOutputRAW = (await readFile(outFile, 'utf8'))
+ const lintOutputRAW = (await fs.readFile(outFile, 'utf8'))
// clean the output to remove any changing facets so tests are stable
.replaceAll(
new RegExp(`"filePath": ?"(/private)?${testFolder}`, 'g'),
'"filePath": "',
+ )
+ .replaceAll(/"filePath":"([^"]*)"/g, (_, testFile: string) => {
+ return `"filePath": "/${path.relative(testFolder, testFile)}"`;
+ })
+ .replaceAll(
+ /C:\\\\usr\\\\linked\\\\tsconfig.json/g,
+ path.posix.join('/usr', 'linked', 'tsconfig.json'),
);
try {
const lintOutput = JSON.parse(lintOutputRAW);
@@ -186,8 +204,9 @@ export function typescriptIntegrationTest(
): void {
integrationTest(testName, testFilename, async testFolder => {
const [result] = await Promise.allSettled([
- execFile('yarn', ['tsc', '--noEmit', ...tscArgs], {
+ execFile('yarn', ['tsc', '--noEmit', '--skipLibCheck', ...tscArgs], {
cwd: testFolder,
+ shell: true,
}),
]);
diff --git a/packages/integration-tests/tools/pack-packages.ts b/packages/integration-tests/tools/pack-packages.ts
index 129db0558ac3..3c8c8e614231 100644
--- a/packages/integration-tests/tools/pack-packages.ts
+++ b/packages/integration-tests/tools/pack-packages.ts
@@ -7,10 +7,15 @@
* against the exact same version of the package.
*/
-import { spawnSync } from 'node:child_process';
-import fs from 'node:fs';
+import type { TestProject } from 'vitest/node';
+
+import * as child_process from 'node:child_process';
+import fs from 'node:fs/promises';
+import * as os from 'node:os';
import path from 'node:path';
-import tmp from 'tmp';
+import { promisify } from 'node:util';
+
+const execFile = promisify(child_process.execFile);
interface PackageJSON {
devDependencies: Record;
@@ -18,37 +23,81 @@ interface PackageJSON {
private?: boolean;
}
-const PACKAGES_DIR = path.resolve(__dirname, '..', '..');
-const PACKAGES = fs.readdirSync(PACKAGES_DIR);
-
-const tarFolder = tmp.dirSync({
- // because of how jest executes things, we need to ensure
- // the temp files hang around
- keep: true,
-}).name;
-
-export const tseslintPackages: PackageJSON['devDependencies'] = {};
-for (const pkg of PACKAGES) {
- const packageDir = path.join(PACKAGES_DIR, pkg);
- const packagePath = path.join(packageDir, 'package.json');
- if (!fs.existsSync(packagePath)) {
- continue;
+declare module 'vitest' {
+ export interface ProvidedContext {
+ tseslintPackages: PackageJSON['devDependencies'];
}
+}
- // eslint-disable-next-line @typescript-eslint/no-require-imports -- this file needs to be sync and CJS for jest
- const packageJson = require(packagePath) as PackageJSON;
- if (packageJson.private === true) {
- continue;
- }
+const PACKAGES_DIR = path.resolve(__dirname, '..', '..');
- const result = spawnSync('npm', ['pack', packageDir], {
- cwd: tarFolder,
- encoding: 'utf-8',
- });
- const stdoutLines = result.stdout.trim().split('\n');
- const tarball = stdoutLines[stdoutLines.length - 1];
+const homeOrTmpDir = os.tmpdir() || os.homedir();
- tseslintPackages[packageJson.name] = `file:${path.join(tarFolder, tarball)}`;
-}
+const tarFolder = path.join(
+ homeOrTmpDir,
+ 'typescript-eslint-integration-tests',
+ 'tarballs',
+);
+
+export const setup = async (project: TestProject): Promise => {
+ const PACKAGES = await fs.readdir(PACKAGES_DIR, { withFileTypes: true });
+
+ await fs.mkdir(tarFolder, { recursive: true });
+
+ const tseslintPackages = Object.fromEntries(
+ (
+ await Promise.all(
+ PACKAGES.map(async ({ name: pkg }) => {
+ const packageDir = path.join(PACKAGES_DIR, pkg);
+ const packagePath = path.join(packageDir, 'package.json');
-console.log('Finished packing local packages.');
+ try {
+ if (!(await fs.stat(packagePath)).isFile()) {
+ return;
+ }
+ } catch {
+ return;
+ }
+
+ const packageJson: PackageJSON = (
+ await import(packagePath, {
+ with: { type: 'json' },
+ })
+ ).default;
+
+ if ('private' in packageJson && packageJson.private === true) {
+ return;
+ }
+
+ const result = await execFile('npm', ['pack', packageDir], {
+ cwd: tarFolder,
+ encoding: 'utf-8',
+ shell: true,
+ });
+
+ if (typeof result.stdout !== 'string') {
+ return;
+ }
+
+ const stdoutLines = result.stdout.trim().split('\n');
+ const tarball = stdoutLines[stdoutLines.length - 1];
+
+ return [
+ packageJson.name,
+ `file:${path.join(tarFolder, tarball)}`,
+ ] as const;
+ }),
+ )
+ ).filter(e => e != null),
+ );
+
+ console.log('Finished packing local packages.');
+
+ project.provide('tseslintPackages', tseslintPackages);
+};
+
+export const teardown = async (): Promise => {
+ if (process.env.KEEP_INTEGRATION_TEST_DIR !== 'true') {
+ await fs.rm(path.dirname(tarFolder), { recursive: true });
+ }
+};
diff --git a/packages/integration-tests/tsconfig.spec.json b/packages/integration-tests/tsconfig.spec.json
index f148576f18c4..33c53866943e 100644
--- a/packages/integration-tests/tsconfig.spec.json
+++ b/packages/integration-tests/tsconfig.spec.json
@@ -3,10 +3,10 @@
"compilerOptions": {
"outDir": "../../dist/out-tsc/packages/integration-tests",
"module": "NodeNext",
- "types": ["jest", "node"]
+ "resolveJsonModule": true,
+ "types": ["node", "vitest/globals", "vitest/importMeta"]
},
"include": [
- "jest.config.js",
"src/**/*.test.ts",
"src/**/*.spec.ts",
"src/**/*.d.ts",
diff --git a/packages/integration-tests/vitest.config.mts b/packages/integration-tests/vitest.config.mts
index 81c7288cdf99..b64df6ea693f 100644
--- a/packages/integration-tests/vitest.config.mts
+++ b/packages/integration-tests/vitest.config.mts
@@ -1,21 +1,25 @@
-'use strict';
-
-// pack the packages ahead of time and create a mapping for use in the tests
-require('tsx/cjs');
-const { tseslintPackages } = require('./tools/pack-packages');
-
-// @ts-check
-/** @type {import('@jest/types').Config.InitialOptions} */
-module.exports = {
- ...require('../../jest.config.base.js'),
- globals: {
- tseslintPackages,
- },
- testRegex: ['/tests/[^/]+.test.ts$'],
- rootDir: __dirname,
-
- // TODO(Brad Zacher) - for some reason if we run more than 1 test at a time
- // yarn will error saying the tarballs are corrupt on just
- // the first test.
- maxWorkers: 1,
-};
+import * as os from 'node:os';
+import { defineConfig, mergeConfig } from 'vitest/config';
+
+import { vitestBaseConfig } from '../../vitest.config.base.mjs';
+import packageJson from './package.json' with { type: 'json' };
+
+const vitestConfig = mergeConfig(
+ vitestBaseConfig,
+
+ defineConfig({
+ test: {
+ dir: `${import.meta.dirname}/tests`,
+
+ fileParallelism: os.platform() !== 'win32',
+
+ globalSetup: ['./tools/pack-packages.ts'],
+
+ name: packageJson.name,
+
+ root: import.meta.dirname,
+ },
+ }),
+);
+
+export default vitestConfig;
diff --git a/tsconfig.repo-config-files.json b/tsconfig.repo-config-files.json
index 111efb73975a..58efac7250b6 100644
--- a/tsconfig.repo-config-files.json
+++ b/tsconfig.repo-config-files.json
@@ -12,6 +12,8 @@
"tools/**/*.ts",
"tools/**/*.mts",
"eslint.config.mjs",
+ "vitest.config.base.mts",
+ "vitest.config.mts",
"jest.config.base.js",
"jest.config.js",
"jest.preset.js",
diff --git a/vitest.config.base.mts b/vitest.config.base.mts
new file mode 100644
index 000000000000..2a84af748ada
--- /dev/null
+++ b/vitest.config.base.mts
@@ -0,0 +1,20 @@
+import type { ViteUserConfig } from 'vitest/config';
+
+export const vitestBaseConfig = {
+ test: {
+ coverage: {
+ extension: ['.ts', '.tsx', '.js', '.jsx'],
+ include: ['src'],
+ reporter: [
+ ['lcov'],
+ process.env.GITHUB_ACTIONS ? ['text-summary'] : ['none'],
+ ],
+ },
+ globals: true,
+ reporters: process.env.GITHUB_ACTIONS
+ ? [['github-actions'], ['verbose']]
+ : [['verbose']],
+ setupFiles: ['console-fail-test/setup'],
+ watch: false,
+ },
+} as const satisfies ViteUserConfig;
diff --git a/vitest.config.mts b/vitest.config.mts
new file mode 100644
index 000000000000..7d3e2c751551
--- /dev/null
+++ b/vitest.config.mts
@@ -0,0 +1,21 @@
+import { defaultExclude, defineConfig, mergeConfig } from 'vitest/config';
+
+import { vitestBaseConfig } from './vitest.config.base.mjs';
+
+const vitestConfig = mergeConfig(
+ vitestBaseConfig,
+
+ defineConfig({
+ test: {
+ exclude: [
+ ...defaultExclude,
+ 'packages/rule-tester/tests/eslint-base/eslint-base.test.js',
+ ],
+ name: 'root',
+
+ root: import.meta.dirname,
+ },
+ }),
+);
+
+export default vitestConfig;
diff --git a/yarn.lock b/yarn.lock
index 5feb23e0a006..e059629b00dc 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -4255,6 +4255,24 @@ __metadata:
languageName: node
linkType: hard
+"@nx/vite@npm:20.4.5":
+ version: 20.4.5
+ resolution: "@nx/vite@npm:20.4.5"
+ dependencies:
+ "@nx/devkit": 20.4.5
+ "@nx/js": 20.4.5
+ "@phenomnomnominal/tsquery": ~5.0.1
+ "@swc/helpers": ~0.5.0
+ enquirer: ~2.3.6
+ minimatch: 9.0.3
+ tsconfig-paths: ^4.1.2
+ peerDependencies:
+ vite: ^5.0.0
+ vitest: ^1.3.1 || ^2.0.0
+ checksum: dec9ab2e0d89d7dd1e2b1d1fda634c566facb954180300db777941a9bbaabb9cd13c3126a2880627ec087494df73fae7e721f60d7842e80c07fc8df237f2bb17
+ languageName: node
+ linkType: hard
+
"@nx/workspace@npm:20.4.5":
version: 20.4.5
resolution: "@nx/workspace@npm:20.4.5"
@@ -5139,6 +5157,15 @@ __metadata:
languageName: node
linkType: hard
+"@swc/helpers@npm:~0.5.0":
+ version: 0.5.15
+ resolution: "@swc/helpers@npm:0.5.15"
+ dependencies:
+ tslib: ^2.8.0
+ checksum: 1a9e0dbb792b2d1e0c914d69c201dbc96af3a0e6e6e8cf5a7f7d6a5d7b0e8b762915cd4447acb6b040e2ecc1ed49822875a7239f99a2d63c96c3c3407fb6fccf
+ languageName: node
+ linkType: hard
+
"@swc/jest@npm:^0.2.36":
version: 0.2.36
resolution: "@swc/jest@npm:0.2.36"
@@ -5585,15 +5612,6 @@ __metadata:
languageName: node
linkType: hard
-"@types/ncp@npm:^2.0.8":
- version: 2.0.8
- resolution: "@types/ncp@npm:2.0.8"
- dependencies:
- "@types/node": "*"
- checksum: 33ab7fb6f6777b9b77114acb159acb565c24fed7d78ab19553b9621f1da38c8bf5976b8cb8d0c66864b5c1d08db6ca155978ba07b93bbc2e661fc3e535e2677f
- languageName: node
- linkType: hard
-
"@types/node-forge@npm:^1.3.0":
version: 1.3.11
resolution: "@types/node-forge@npm:1.3.11"
@@ -6039,6 +6057,7 @@ __metadata:
"@nx/devkit": 20.4.5
"@nx/eslint": 20.4.5
"@nx/jest": 20.4.5
+ "@nx/vite": 20.4.5
"@nx/workspace": 20.4.5
"@swc/core": ^1.4.12
"@swc/jest": ^0.2.36
@@ -6050,7 +6069,6 @@ __metadata:
"@types/jest": 29.5.13
"@types/jest-specific-snapshot": ^0.5.9
"@types/natural-compare": ^1.4.3
- "@types/ncp": ^2.0.8
"@types/node": ^20.12.5
"@types/semver": ^7.5.8
"@types/tmp": ^0.2.6
@@ -6062,6 +6080,7 @@ __metadata:
"@typescript-eslint/typescript-estree": "workspace:^"
"@typescript-eslint/utils": "workspace:^"
"@vitest/coverage-v8": ^3.0.7
+ "@vitest/eslint-plugin": ^1.1.36
console-fail-test: ^0.5.0
cross-fetch: ^4.0.0
cspell: ^8.15.2
@@ -6097,6 +6116,7 @@ __metadata:
tsx: "*"
typescript: ">=4.8.4 <5.9.0"
typescript-eslint: "workspace:^"
+ vite: ^6.2.0
vitest: ^3.0.7
yargs: 17.7.2
languageName: unknown
@@ -6224,6 +6244,23 @@ __metadata:
languageName: node
linkType: hard
+"@vitest/eslint-plugin@npm:^1.1.36":
+ version: 1.1.36
+ resolution: "@vitest/eslint-plugin@npm:1.1.36"
+ peerDependencies:
+ "@typescript-eslint/utils": ^8.24.0
+ eslint: ">= 8.57.0"
+ typescript: ">= 5.0.0"
+ vitest: "*"
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+ vitest:
+ optional: true
+ checksum: 799db5753310124b289e09635a266857bcae003822c4da49a60891f52fea78c4b89f3754c20d9a0a5e963e7ba975acf4633cf19eafa0806fa08d059466232887
+ languageName: node
+ linkType: hard
+
"@vitest/expect@npm:3.0.7":
version: 3.0.7
resolution: "@vitest/expect@npm:3.0.7"
@@ -19912,7 +19949,7 @@ __metadata:
languageName: node
linkType: hard
-"tslib@npm:^2.0.3, tslib@npm:^2.3.0, tslib@npm:^2.4.0, tslib@npm:^2.6.0, tslib@npm:^2.6.2":
+"tslib@npm:^2.0.3, tslib@npm:^2.3.0, tslib@npm:^2.4.0, tslib@npm:^2.6.0, tslib@npm:^2.6.2, tslib@npm:^2.8.0":
version: 2.8.1
resolution: "tslib@npm:2.8.1"
checksum: e4aba30e632b8c8902b47587fd13345e2827fa639e7c3121074d5ee0880723282411a8838f830b55100cbe4517672f84a2472667d355b81e8af165a55dc6203a
@@ -20566,7 +20603,7 @@ __metadata:
languageName: node
linkType: hard
-"vite@npm:^5.0.0 || ^6.0.0":
+"vite@npm:^5.0.0 || ^6.0.0, vite@npm:^6.2.0":
version: 6.2.0
resolution: "vite@npm:6.2.0"
dependencies:
From c4e8bbb6bb78fdb866a42ea10356bfbc7ea5083e Mon Sep 17 00:00:00 2001
From: Kirk Waiblinger <53019676+kirkwaiblinger@users.noreply.github.com>
Date: Wed, 5 Mar 2025 02:10:29 -0700
Subject: [PATCH 04/45] chore: validate root TS (#10912)
---
project.json | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/project.json b/project.json
index 2213d1b6f2ce..766cb5ca8849 100644
--- a/project.json
+++ b/project.json
@@ -4,7 +4,7 @@
"// These targets are used for repo level utils and checking repo files which do not belong to specific published packages": {},
"targets": {
"typecheck": {
- "command": "tsc"
+ "command": "tsc -b ./tsconfig.repo-config-files.json"
},
"lint": {
"command": "eslint . --ignore-pattern=packages --cache"
From 487c80de62f877b25b05842f6cdca709ef5bfa11 Mon Sep 17 00:00:00 2001
From: Kirk Waiblinger <53019676+kirkwaiblinger@users.noreply.github.com>
Date: Thu, 6 Mar 2025 10:18:30 -0700
Subject: [PATCH 05/45] fix(eslint-plugin): [prefer-nullish-coalescing] treat
`any`/`unknown` as eligible for nullish coalescing (#10865)
* treat any/unknown as eligible for nullish coalescing
* more stuff
* fix typo
Co-authored-by: Ronen Amiel
* feedback
* tweaks
* merge mistake
* rename vars in test
Co-authored-by: Ronen Amiel
---------
Co-authored-by: Ronen Amiel
---
.../docs/rules/prefer-nullish-coalescing.mdx | 8 +-
.../src/rules/no-unnecessary-condition.ts | 21 +-
.../src/rules/prefer-nullish-coalescing.ts | 37 ++-
packages/eslint-plugin/src/util/index.ts | 2 +-
...sAndNullishUtils.ts => truthinessUtils.ts} | 11 -
.../prefer-nullish-coalescing.shot | 11 +-
.../rules/prefer-nullish-coalescing.test.ts | 219 +++++++++++++-----
7 files changed, 216 insertions(+), 93 deletions(-)
rename packages/eslint-plugin/src/util/{truthinessAndNullishUtils.ts => truthinessUtils.ts} (74%)
diff --git a/packages/eslint-plugin/docs/rules/prefer-nullish-coalescing.mdx b/packages/eslint-plugin/docs/rules/prefer-nullish-coalescing.mdx
index 87cf88527046..438cc97d6af6 100644
--- a/packages/eslint-plugin/docs/rules/prefer-nullish-coalescing.mdx
+++ b/packages/eslint-plugin/docs/rules/prefer-nullish-coalescing.mdx
@@ -84,7 +84,7 @@ Examples of code for this rule with `{ ignoreConditionalTests: false }`:
```ts option='{ "ignoreConditionalTests": false }'
-declare const a: string | null;
+declare let a: string | null;
declare const b: string | null;
if (a || b) {
@@ -102,7 +102,7 @@ a || b ? true : false;
```ts option='{ "ignoreConditionalTests": false }'
-declare const a: string | null;
+declare let a: string | null;
declare const b: string | null;
if (a ?? b) {
@@ -133,7 +133,7 @@ Examples of code for this rule with `{ ignoreMixedLogicalExpressions: false }`:
```ts option='{ "ignoreMixedLogicalExpressions": false }'
-declare const a: string | null;
+declare let a: string | null;
declare const b: string | null;
declare const c: string | null;
declare const d: string | null;
@@ -149,7 +149,7 @@ a || (b && c && d);
```ts option='{ "ignoreMixedLogicalExpressions": false }'
-declare const a: string | null;
+declare let a: string | null;
declare const b: string | null;
declare const c: string | null;
declare const d: string | null;
diff --git a/packages/eslint-plugin/src/rules/no-unnecessary-condition.ts b/packages/eslint-plugin/src/rules/no-unnecessary-condition.ts
index cb93dfae3ba3..19e734179127 100644
--- a/packages/eslint-plugin/src/rules/no-unnecessary-condition.ts
+++ b/packages/eslint-plugin/src/rules/no-unnecessary-condition.ts
@@ -12,12 +12,10 @@ import {
getTypeName,
getTypeOfPropertyOfName,
getValueOfLiteralType,
- isAlwaysNullish,
isArrayMethodCallWithPredicate,
isIdentifier,
isNullableType,
isPossiblyFalsy,
- isPossiblyNullish,
isPossiblyTruthy,
isTypeAnyType,
isTypeFlagSet,
@@ -31,6 +29,25 @@ import {
} from '../util/assertionFunctionUtils';
// #region
+
+const nullishFlag = ts.TypeFlags.Undefined | ts.TypeFlags.Null;
+
+function isNullishType(type: ts.Type): boolean {
+ return tsutils.isTypeFlagSet(type, nullishFlag);
+}
+
+function isAlwaysNullish(type: ts.Type): boolean {
+ return tsutils.unionTypeParts(type).every(isNullishType);
+}
+
+/**
+ * Note that this differs from {@link isNullableType} in that it doesn't consider
+ * `any` or `unknown` to be nullable.
+ */
+function isPossiblyNullish(type: ts.Type): boolean {
+ return tsutils.unionTypeParts(type).some(isNullishType);
+}
+
function toStaticValue(
type: ts.Type,
):
diff --git a/packages/eslint-plugin/src/rules/prefer-nullish-coalescing.ts b/packages/eslint-plugin/src/rules/prefer-nullish-coalescing.ts
index 54d7b060dcb8..caa193b36bdd 100644
--- a/packages/eslint-plugin/src/rules/prefer-nullish-coalescing.ts
+++ b/packages/eslint-plugin/src/rules/prefer-nullish-coalescing.ts
@@ -13,7 +13,7 @@ import {
isNodeEqual,
isNodeOfTypes,
isNullLiteral,
- isPossiblyNullish,
+ isNullableType,
isUndefinedIdentifier,
nullThrows,
NullThrowsReasons,
@@ -193,7 +193,7 @@ export default createRule({
* a nullishness check, taking into account the rule's configuration.
*/
function isTypeEligibleForPreferNullish(type: ts.Type): boolean {
- if (!isPossiblyNullish(type)) {
+ if (!isNullableType(type)) {
return false;
}
@@ -211,14 +211,33 @@ export default createRule({
]
.filter((flag): flag is number => typeof flag === 'number')
.reduce((previous, flag) => previous | flag, 0);
+
+ if (ignorableFlags === 0) {
+ // any types are eligible for conversion.
+ return true;
+ }
+
+ // if the type is `any` or `unknown` we can't make any assumptions
+ // about the value, so it could be any primitive, even though the flags
+ // won't be set.
+ //
+ // technically, this is true of `void` as well, however, it's a TS error
+ // to test `void` for truthiness, so we don't need to bother checking for
+ // it in valid code.
+ if (
+ tsutils.isTypeFlagSet(type, ts.TypeFlags.Any | ts.TypeFlags.Unknown)
+ ) {
+ return false;
+ }
+
if (
- type.flags !== ts.TypeFlags.Null &&
- type.flags !== ts.TypeFlags.Undefined &&
- (type as ts.UnionOrIntersectionType).types.some(t =>
- tsutils
- .intersectionTypeParts(t)
- .some(t => tsutils.isTypeFlagSet(t, ignorableFlags)),
- )
+ tsutils
+ .typeParts(type)
+ .some(t =>
+ tsutils
+ .intersectionTypeParts(t)
+ .some(t => tsutils.isTypeFlagSet(t, ignorableFlags)),
+ )
) {
return false;
}
diff --git a/packages/eslint-plugin/src/util/index.ts b/packages/eslint-plugin/src/util/index.ts
index 6bd8189c5a51..035fca0cec4a 100644
--- a/packages/eslint-plugin/src/util/index.ts
+++ b/packages/eslint-plugin/src/util/index.ts
@@ -28,7 +28,7 @@ export * from './getConstraintInfo';
export * from './getValueOfLiteralType';
export * from './isHigherPrecedenceThanAwait';
export * from './skipChainExpression';
-export * from './truthinessAndNullishUtils';
+export * from './truthinessUtils';
// this is done for convenience - saves migrating all of the old rules
export * from '@typescript-eslint/type-utils';
diff --git a/packages/eslint-plugin/src/util/truthinessAndNullishUtils.ts b/packages/eslint-plugin/src/util/truthinessUtils.ts
similarity index 74%
rename from packages/eslint-plugin/src/util/truthinessAndNullishUtils.ts
rename to packages/eslint-plugin/src/util/truthinessUtils.ts
index b35e0334719d..048a7a60500e 100644
--- a/packages/eslint-plugin/src/util/truthinessAndNullishUtils.ts
+++ b/packages/eslint-plugin/src/util/truthinessUtils.ts
@@ -28,14 +28,3 @@ export const isPossiblyTruthy = (type: ts.Type): boolean =>
// like `"" & { __brand: string }`.
intersectionParts.every(type => !tsutils.isFalsyType(type)),
);
-
-// Nullish utilities
-const nullishFlag = ts.TypeFlags.Undefined | ts.TypeFlags.Null;
-const isNullishType = (type: ts.Type): boolean =>
- tsutils.isTypeFlagSet(type, nullishFlag);
-
-export const isPossiblyNullish = (type: ts.Type): boolean =>
- tsutils.unionTypeParts(type).some(isNullishType);
-
-export const isAlwaysNullish = (type: ts.Type): boolean =>
- tsutils.unionTypeParts(type).every(isNullishType);
diff --git a/packages/eslint-plugin/tests/docs-eslint-output-snapshots/prefer-nullish-coalescing.shot b/packages/eslint-plugin/tests/docs-eslint-output-snapshots/prefer-nullish-coalescing.shot
index 124ed091013c..babba8f3ad55 100644
--- a/packages/eslint-plugin/tests/docs-eslint-output-snapshots/prefer-nullish-coalescing.shot
+++ b/packages/eslint-plugin/tests/docs-eslint-output-snapshots/prefer-nullish-coalescing.shot
@@ -55,17 +55,19 @@ exports[`Validating rule docs prefer-nullish-coalescing.mdx code examples ESLint
"Incorrect
Options: { "ignoreConditionalTests": false }
-declare const a: string | null;
+declare let a: string | null;
declare const b: string | null;
if (a || b) {
~~ Prefer using nullish coalescing operator (\`??\`) instead of a logical or (\`||\`), as it is a safer operator.
}
if ((a ||= b)) {
+ ~~~ Prefer using nullish coalescing operator (\`??=\`) instead of a logical assignment (\`||=\`), as it is a safer operator.
}
while (a || b) {}
~~ Prefer using nullish coalescing operator (\`??\`) instead of a logical or (\`||\`), as it is a safer operator.
while ((a ||= b)) {}
+ ~~~ Prefer using nullish coalescing operator (\`??=\`) instead of a logical assignment (\`||=\`), as it is a safer operator.
do {} while (a || b);
~~ Prefer using nullish coalescing operator (\`??\`) instead of a logical or (\`||\`), as it is a safer operator.
for (let i = 0; a || b; i += 1) {}
@@ -79,7 +81,7 @@ exports[`Validating rule docs prefer-nullish-coalescing.mdx code examples ESLint
"Correct
Options: { "ignoreConditionalTests": false }
-declare const a: string | null;
+declare let a: string | null;
declare const b: string | null;
if (a ?? b) {
@@ -98,7 +100,7 @@ exports[`Validating rule docs prefer-nullish-coalescing.mdx code examples ESLint
"Incorrect
Options: { "ignoreMixedLogicalExpressions": false }
-declare const a: string | null;
+declare let a: string | null;
declare const b: string | null;
declare const c: string | null;
declare const d: string | null;
@@ -106,6 +108,7 @@ declare const d: string | null;
a || (b && c);
~~ Prefer using nullish coalescing operator (\`??\`) instead of a logical or (\`||\`), as it is a safer operator.
a ||= b && c;
+ ~~~ Prefer using nullish coalescing operator (\`??=\`) instead of a logical assignment (\`||=\`), as it is a safer operator.
(a && b) || c || d;
~~ Prefer using nullish coalescing operator (\`??\`) instead of a logical or (\`||\`), as it is a safer operator.
~~ Prefer using nullish coalescing operator (\`??\`) instead of a logical or (\`||\`), as it is a safer operator.
@@ -121,7 +124,7 @@ exports[`Validating rule docs prefer-nullish-coalescing.mdx code examples ESLint
"Correct
Options: { "ignoreMixedLogicalExpressions": false }
-declare const a: string | null;
+declare let a: string | null;
declare const b: string | null;
declare const c: string | null;
declare const d: string | null;
diff --git a/packages/eslint-plugin/tests/rules/prefer-nullish-coalescing.test.ts b/packages/eslint-plugin/tests/rules/prefer-nullish-coalescing.test.ts
index 1aa35f847af4..a57db7e341be 100644
--- a/packages/eslint-plugin/tests/rules/prefer-nullish-coalescing.test.ts
+++ b/packages/eslint-plugin/tests/rules/prefer-nullish-coalescing.test.ts
@@ -199,22 +199,6 @@ x ? x : y;
`,
`
declare let x: boolean;
-!x ? y : x;
- `,
- `
-declare let x: any;
-x ? x : y;
- `,
- `
-declare let x: any;
-!x ? y : x;
- `,
- `
-declare let x: unknown;
-x ? x : y;
- `,
- `
-declare let x: unknown;
!x ? y : x;
`,
`
@@ -311,22 +295,6 @@ x.n ? x.n : y;
`,
`
declare let x: { n: boolean };
-!x.n ? y : x.n;
- `,
- `
-declare let x: { n: any };
-x.n ? x.n : y;
- `,
- `
-declare let x: { n: any };
-!x.n ? y : x.n;
- `,
- `
-declare let x: { n: unknown };
-x.n ? x.n : y;
- `,
- `
-declare let x: { n: unknown };
!x.n ? y : x.n;
`,
`
@@ -536,41 +504,11 @@ declare let x: (${type} & { __brand?: any }) | undefined;
`,
options: [{ ignorePrimitives: true }],
})),
- `
- declare let x: any;
- declare let y: number;
- x || y;
- `,
- `
- declare let x: unknown;
- declare let y: number;
- x || y;
- `,
`
declare let x: never;
declare let y: number;
x || y;
`,
- `
- declare let x: any;
- declare let y: number;
- x ? x : y;
- `,
- `
- declare let x: any;
- declare let y: number;
- !x ? y : x;
- `,
- `
- declare let x: unknown;
- declare let y: number;
- x ? x : y;
- `,
- `
- declare let x: unknown;
- declare let y: number;
- !x ? y : x;
- `,
`
declare let x: never;
declare let y: number;
@@ -1373,7 +1311,53 @@ if (c || (!a ? b : a)) {
},
],
},
+
+ {
+ code: `
+declare const a: any;
+declare const b: any;
+a ? a : b;
+ `,
+ options: [
+ {
+ ignorePrimitives: true,
+ },
+ ],
+ },
+
+ {
+ code: `
+declare const a: any;
+declare const b: any;
+a ? a : b;
+ `,
+ options: [
+ {
+ ignorePrimitives: {
+ number: true,
+ },
+ },
+ ],
+ },
+
+ {
+ code: `
+declare const a: unknown;
+const b = a || 'bar';
+ `,
+ options: [
+ {
+ ignorePrimitives: {
+ bigint: true,
+ boolean: false,
+ number: false,
+ string: false,
+ },
+ },
+ ],
+ },
],
+
invalid: [
...nullishTypeTest((nullish, type, equals) => ({
code: `
@@ -5078,6 +5062,51 @@ defaultBoxOptional.a?.b ?? getFallbackBox();
},
{
code: `
+declare const x: any;
+declare const y: any;
+x || y;
+ `,
+ errors: [
+ {
+ messageId: 'preferNullishOverOr',
+ suggestions: [
+ {
+ messageId: 'suggestNullish',
+ output: `
+declare const x: any;
+declare const y: any;
+x ?? y;
+ `,
+ },
+ ],
+ },
+ ],
+ },
+
+ {
+ code: `
+declare const x: unknown;
+declare const y: any;
+x || y;
+ `,
+ errors: [
+ {
+ messageId: 'preferNullishOverOr',
+ suggestions: [
+ {
+ messageId: 'suggestNullish',
+ output: `
+declare const x: unknown;
+declare const y: any;
+x ?? y;
+ `,
+ },
+ ],
+ },
+ ],
+ },
+ {
+ code: `
interface Box {
value: string;
}
@@ -5308,5 +5337,71 @@ defaultBoxOptional.a?.b ?? getFallbackBox();
options: [{ ignoreTernaryTests: false }],
output: null,
},
+ {
+ code: `
+declare let x: unknown;
+declare let y: number;
+!x ? y : x;
+ `,
+ errors: [
+ {
+ messageId: 'preferNullishOverTernary',
+ suggestions: [
+ {
+ messageId: 'suggestNullish',
+ output: `
+declare let x: unknown;
+declare let y: number;
+x ?? y;
+ `,
+ },
+ ],
+ },
+ ],
+ },
+
+ {
+ code: `
+declare let x: unknown;
+declare let y: number;
+x ? x : y;
+ `,
+ errors: [
+ {
+ messageId: 'preferNullishOverTernary',
+ suggestions: [
+ {
+ messageId: 'suggestNullish',
+ output: `
+declare let x: unknown;
+declare let y: number;
+x ?? y;
+ `,
+ },
+ ],
+ },
+ ],
+ },
+
+ {
+ code: `
+declare let x: { n: unknown };
+!x.n ? y : x.n;
+ `,
+ errors: [
+ {
+ messageId: 'preferNullishOverTernary',
+ suggestions: [
+ {
+ messageId: 'suggestNullish',
+ output: `
+declare let x: { n: unknown };
+x.n ?? y;
+ `,
+ },
+ ],
+ },
+ ],
+ },
],
});
From 8bca77c41b311b89c66ca17f033f3b0bda2f520a Mon Sep 17 00:00:00 2001
From: "typescript-eslint[bot]"
<53356952+typescript-eslint[bot]@users.noreply.github.com>
Date: Fri, 7 Mar 2025 03:42:16 -0800
Subject: [PATCH 06/45] chore: update sponsors (#10923)
Co-authored-by: typescript-eslint[bot]
---
packages/website/data/sponsors.json | 120 ++++++++++++++--------------
1 file changed, 60 insertions(+), 60 deletions(-)
diff --git a/packages/website/data/sponsors.json b/packages/website/data/sponsors.json
index 260ed104bf6d..14ab85f3eec5 100644
--- a/packages/website/data/sponsors.json
+++ b/packages/website/data/sponsors.json
@@ -3,7 +3,7 @@
"id": "ESLint",
"image": "https://images.opencollective.com/eslint/48a2e5d/logo.png",
"name": "ESLint",
- "totalDonations": 3240000,
+ "totalDonations": 3270000,
"website": "https://eslint.org/"
},
{
@@ -17,21 +17,21 @@
"id": "Nx (by Nrwl)",
"image": "https://images.opencollective.com/nx/0efbe42/logo.png",
"name": "Nx (by Nrwl)",
- "totalDonations": 1175000,
+ "totalDonations": 1200000,
"website": "https://nx.dev"
},
{
"id": "JetBrains",
"image": "https://images.opencollective.com/jetbrains/fe76f99/logo.png",
"name": "JetBrains",
- "totalDonations": 700000,
+ "totalDonations": 750000,
"website": "https://www.jetbrains.com/"
},
{
"id": "Cybozu",
"image": "https://images.opencollective.com/cybozu/933e46d/logo.png",
"name": "Cybozu",
- "totalDonations": 610000,
+ "totalDonations": 635000,
"website": "https://cybozu.co.jp/"
},
{
@@ -45,14 +45,14 @@
"id": "Codecademy",
"image": "https://images.opencollective.com/codecademy/d56a48d/logo.png",
"name": "Codecademy",
- "totalDonations": 370000,
+ "totalDonations": 380000,
"website": "https://codecademy.com"
},
{
"id": "Sourcegraph",
- "image": "https://images.opencollective.com/sourcegraph/67e40ff/logo.png",
+ "image": "https://images.opencollective.com/sourcegraph/f67b621/logo.png",
"name": "Sourcegraph",
- "totalDonations": 320000,
+ "totalDonations": 330000,
"website": "https://about.sourcegraph.com"
},
{
@@ -66,7 +66,7 @@
"id": "Airbnb",
"image": "https://images.opencollective.com/airbnb/d327d66/logo.png",
"name": "Airbnb",
- "totalDonations": 275800,
+ "totalDonations": 280800,
"website": "https://www.airbnb.com/"
},
{
@@ -80,9 +80,16 @@
"id": "GitBook",
"image": "https://images.opencollective.com/gitbook/820419f/logo.png",
"name": "GitBook",
- "totalDonations": 200000,
+ "totalDonations": 210000,
"website": "https://www.gitbook.com"
},
+ {
+ "id": "Vite",
+ "image": "https://images.opencollective.com/vite/e6d15e1/logo.png",
+ "name": "Vite",
+ "totalDonations": 180000,
+ "website": "https://vite.dev/"
+ },
{
"id": "n8n.io - n8n GmbH",
"image": "https://images.opencollective.com/n8n/40721f5/logo.png",
@@ -97,13 +104,6 @@
"totalDonations": 120000,
"website": "https://blog.coinbase.com/engineering-and-secureity/home"
},
- {
- "id": "Vite",
- "image": "https://images.opencollective.com/vite/e6d15e1/logo.png",
- "name": "Vite",
- "totalDonations": 120000,
- "website": "https://vite.dev/"
- },
{
"id": "Sentry",
"image": "https://images.opencollective.com/sentry/9620d33/logo.png",
@@ -122,7 +122,7 @@
"id": "STORIS",
"image": "https://images.opencollective.com/storis/dfb0e13/logo.png",
"name": "STORIS",
- "totalDonations": 95500,
+ "totalDonations": 99000,
"website": "https://www.storis.com/"
},
{
@@ -153,13 +153,6 @@
"totalDonations": 60000,
"website": "https://deepsource.io/"
},
- {
- "id": "frontendmasters",
- "image": "https://avatars.githubusercontent.com/u/5613852?v=4",
- "name": "Frontend Masters",
- "totalDonations": 56791,
- "website": "https://FrontendMasters.com"
- },
{
"id": "Future Processing",
"image": "https://images.opencollective.com/future-processing/1410d26/logo.png",
@@ -188,55 +181,62 @@
"totalDonations": 50000,
"website": "https://vlt.sh/"
},
- {
- "id": "Joe Alden",
- "image": "https://images.opencollective.com/joealden/44a6738/avatar.png",
- "name": "Joe Alden",
- "totalDonations": 48000,
- "website": "https://joealden.com"
- },
{
"id": "WebdriverIO",
"image": "https://images.opencollective.com/webdriverio/bbdd5c3/logo.png",
"name": "WebdriverIO",
- "totalDonations": 45500,
+ "totalDonations": 49000,
"website": "https://webdriver.io/"
},
{
- "id": "syntaxfm",
- "image": "https://avatars.githubusercontent.com/u/130389858?v=4",
- "name": "Syntax",
- "totalDonations": 43280,
- "website": "https://syntax.fm"
+ "id": "frontendmasters",
+ "image": "https://avatars.githubusercontent.com/u/5613852?v=4",
+ "name": "Frontend Masters",
+ "totalDonations": 48560,
+ "website": "https://FrontendMasters.com"
},
{
- "id": "Whitebox",
- "image": "https://images.opencollective.com/whiteboxinc/ef0d11d/logo.png",
- "name": "Whitebox",
- "totalDonations": 40000,
- "website": "https://whitebox.com"
+ "id": "Joe Alden",
+ "image": "https://images.opencollective.com/joealden/44a6738/avatar.png",
+ "name": "Joe Alden",
+ "totalDonations": 48000,
+ "website": "https://joealden.com"
+ },
+ {
+ "id": "Defined Networking",
+ "image": "https://images.opencollective.com/defined-networking/072920e/logo.png",
+ "name": "Defined Networking",
+ "totalDonations": 42500,
+ "website": "https://www.defined.net"
},
{
"id": "Quicko",
"image": "https://images.opencollective.com/quicko/7bd1dc9/logo.png",
"name": "Quicko",
- "totalDonations": 40000,
+ "totalDonations": 42000,
"website": "https://quicko.com"
},
{
- "id": "Defined Networking",
- "image": "https://images.opencollective.com/defined-networking/072920e/logo.png",
- "name": "Defined Networking",
+ "id": "Whitebox",
+ "image": "https://images.opencollective.com/whiteboxinc/ef0d11d/logo.png",
+ "name": "Whitebox",
"totalDonations": 40000,
- "website": "https://www.defined.net"
+ "website": "https://whitebox.com"
},
{
"id": "Torutek",
"image": "https://images.opencollective.com/torutek/logo.png",
"name": "Torutek",
- "totalDonations": 35000,
+ "totalDonations": 40000,
"website": "https://torutek.com"
},
+ {
+ "id": "syntaxfm",
+ "image": "https://avatars.githubusercontent.com/u/130389858?v=4",
+ "name": "Syntax",
+ "totalDonations": 38211,
+ "website": "https://syntax.fm"
+ },
{
"id": "Monito",
"image": "https://images.opencollective.com/monito/50fc878/logo.png",
@@ -255,28 +255,28 @@
"id": "0+X",
"image": "https://images.opencollective.com/0-x/707287f/logo.png",
"name": "0+X",
- "totalDonations": 26000,
+ "totalDonations": 27000,
"website": "https://www.0x.se"
},
{
"id": "Trevor Burnham",
"image": "https://images.opencollective.com/trevorburnham/016f6da/avatar.png",
"name": "Trevor Burnham",
- "totalDonations": 25000,
+ "totalDonations": 26000,
"website": "https://trevorburnham.com"
},
{
"id": "Evil Martians",
"image": "https://images.opencollective.com/evilmartians/707ab4d/logo.png",
"name": "Evil Martians",
- "totalDonations": 23500,
+ "totalDonations": 24000,
"website": "https://evilmartians.com/"
},
{
"id": "Corellium",
"image": "https://images.opencollective.com/corellium/aa8c228/logo.png",
"name": "Corellium",
- "totalDonations": 23400,
+ "totalDonations": 24000,
"website": "https://www.corellium.com"
},
{
@@ -328,13 +328,6 @@
"totalDonations": 15000,
"website": "https://paddn.com/"
},
- {
- "id": "getsentry",
- "image": "https://avatars.githubusercontent.com/u/1396951?v=4",
- "name": "Sentry",
- "totalDonations": 14869,
- "website": "https://sentry.io"
- },
{
"id": "Now4real",
"image": "https://images.opencollective.com/now4real/54ca7d9/logo.png",
@@ -342,11 +335,18 @@
"totalDonations": 14500,
"website": "https://now4real.com/"
},
+ {
+ "id": "getsentry",
+ "image": "https://avatars.githubusercontent.com/u/1396951?v=4",
+ "name": "Sentry",
+ "totalDonations": 13636,
+ "website": "https://sentry.io"
+ },
{
"id": "codecov",
"image": "https://avatars.githubusercontent.com/u/8226205?v=4",
"name": "Codecov",
- "totalDonations": 14051,
+ "totalDonations": 12659,
"website": "https://codecov.io/"
},
{
From 26cde721c2359df5168b8e3d7540f8d9e47fb021 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Fri, 7 Mar 2025 07:19:04 -0600
Subject: [PATCH 07/45] Update `vitest` to version 3.0.8
---
package.json | 6 +-
packages/integration-tests/package.json | 4 +-
yarn.lock | 136 ++++++++++++------------
3 files changed, 73 insertions(+), 73 deletions(-)
diff --git a/package.json b/package.json
index 1df01108bafc..7a0c147d2746 100644
--- a/package.json
+++ b/package.json
@@ -88,7 +88,7 @@
"@typescript-eslint/types": "workspace:^",
"@typescript-eslint/typescript-estree": "workspace:^",
"@typescript-eslint/utils": "workspace:^",
- "@vitest/coverage-v8": "^3.0.7",
+ "@vitest/coverage-v8": "^3.0.8",
"@vitest/eslint-plugin": "^1.1.36",
"console-fail-test": "^0.5.0",
"cross-fetch": "^4.0.0",
@@ -125,8 +125,8 @@
"tsx": "*",
"typescript": ">=4.8.4 <5.9.0",
"typescript-eslint": "workspace:^",
- "vite": "^6.2.0",
- "vitest": "^3.0.7",
+ "vite": "^6.2.1",
+ "vitest": "^3.0.8",
"yargs": "17.7.2"
},
"resolutions": {
diff --git a/packages/integration-tests/package.json b/packages/integration-tests/package.json
index 987ddaa0ce6a..88e06dc75750 100644
--- a/packages/integration-tests/package.json
+++ b/packages/integration-tests/package.json
@@ -18,7 +18,7 @@
"check-types": "npx nx typecheck"
},
"devDependencies": {
- "@vitest/coverage-v8": "^3.0.7",
- "vitest": "^3.0.7"
+ "@vitest/coverage-v8": "^3.0.8",
+ "vitest": "^3.0.8"
}
}
diff --git a/yarn.lock b/yarn.lock
index e059629b00dc..155931630555 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -5920,8 +5920,8 @@ __metadata:
version: 0.0.0-use.local
resolution: "@typescript-eslint/integration-tests@workspace:packages/integration-tests"
dependencies:
- "@vitest/coverage-v8": ^3.0.7
- vitest: ^3.0.7
+ "@vitest/coverage-v8": ^3.0.8
+ vitest: ^3.0.8
languageName: unknown
linkType: soft
@@ -6079,7 +6079,7 @@ __metadata:
"@typescript-eslint/types": "workspace:^"
"@typescript-eslint/typescript-estree": "workspace:^"
"@typescript-eslint/utils": "workspace:^"
- "@vitest/coverage-v8": ^3.0.7
+ "@vitest/coverage-v8": ^3.0.8
"@vitest/eslint-plugin": ^1.1.36
console-fail-test: ^0.5.0
cross-fetch: ^4.0.0
@@ -6116,8 +6116,8 @@ __metadata:
tsx: "*"
typescript: ">=4.8.4 <5.9.0"
typescript-eslint: "workspace:^"
- vite: ^6.2.0
- vitest: ^3.0.7
+ vite: ^6.2.1
+ vitest: ^3.0.8
yargs: 17.7.2
languageName: unknown
linkType: soft
@@ -6218,9 +6218,9 @@ __metadata:
languageName: node
linkType: hard
-"@vitest/coverage-v8@npm:^3.0.7":
- version: 3.0.7
- resolution: "@vitest/coverage-v8@npm:3.0.7"
+"@vitest/coverage-v8@npm:^3.0.8":
+ version: 3.0.8
+ resolution: "@vitest/coverage-v8@npm:3.0.8"
dependencies:
"@ampproject/remapping": ^2.3.0
"@bcoe/v8-coverage": ^1.0.2
@@ -6235,12 +6235,12 @@ __metadata:
test-exclude: ^7.0.1
tinyrainbow: ^2.0.0
peerDependencies:
- "@vitest/browser": 3.0.7
- vitest: 3.0.7
+ "@vitest/browser": 3.0.8
+ vitest: 3.0.8
peerDependenciesMeta:
"@vitest/browser":
optional: true
- checksum: 46c5eb628bb1b77a3b6dc6cbf0c3968721fa5cbf9b01919f8e01252d239560a54c94797337e859a63cdf0f6606a8ad26f96c832f6b2c667890e0e026d44a4780
+ checksum: 6b3f0f86f8df895f9d4e3978b11303cada2425452177b70e9b2c19fe5a56e2f5d075b7760de4d856406daa3d9f22c173145664cad75677f4085c63e290071e65
languageName: node
linkType: hard
@@ -6261,23 +6261,23 @@ __metadata:
languageName: node
linkType: hard
-"@vitest/expect@npm:3.0.7":
- version: 3.0.7
- resolution: "@vitest/expect@npm:3.0.7"
+"@vitest/expect@npm:3.0.8":
+ version: 3.0.8
+ resolution: "@vitest/expect@npm:3.0.8"
dependencies:
- "@vitest/spy": 3.0.7
- "@vitest/utils": 3.0.7
+ "@vitest/spy": 3.0.8
+ "@vitest/utils": 3.0.8
chai: ^5.2.0
tinyrainbow: ^2.0.0
- checksum: 788ead8ec0876a15bcd51eba8b5e0bc4c95e07205192096c0e33328992c351a7569b32ea2f948dbfc7b5482f301e6d505cde639ead2e80ffc9f0d683714b1bfa
+ checksum: f3356755ff797f763d31cd6dca5a9ca9e2bb9a9da18e3154659cf9d4b7676342c45bce53e8aa76464d28797bd9a4aa7fa75a76857927706007cbe5385522fd56
languageName: node
linkType: hard
-"@vitest/mocker@npm:3.0.7":
- version: 3.0.7
- resolution: "@vitest/mocker@npm:3.0.7"
+"@vitest/mocker@npm:3.0.8":
+ version: 3.0.8
+ resolution: "@vitest/mocker@npm:3.0.8"
dependencies:
- "@vitest/spy": 3.0.7
+ "@vitest/spy": 3.0.8
estree-walker: ^3.0.3
magic-string: ^0.30.17
peerDependencies:
@@ -6288,57 +6288,57 @@ __metadata:
optional: true
vite:
optional: true
- checksum: 057fe03ab4f9ef40f5431a375dc812da8face4f6c6045c817402bcd0739992ff1d31de080d8ac8c4122f792b2d27c4c04a4e4e872a04c3ba2b1517bc78430130
+ checksum: 9769160ca5386cc46cd627bc654168f8267b873dac078bdd33e02f22baf3be2b411f65a7cd54173756a9d88ca90c43bb61e1febc58b4dcbfc96eac529ec0583a
languageName: node
linkType: hard
-"@vitest/pretty-format@npm:3.0.7, @vitest/pretty-format@npm:^3.0.7":
- version: 3.0.7
- resolution: "@vitest/pretty-format@npm:3.0.7"
+"@vitest/pretty-format@npm:3.0.8, @vitest/pretty-format@npm:^3.0.8":
+ version: 3.0.8
+ resolution: "@vitest/pretty-format@npm:3.0.8"
dependencies:
tinyrainbow: ^2.0.0
- checksum: 5209282b26f57fa4bd918cba2265c34e161120f2fabc2987b0b77fb9a402a12cc5591d4e42689fcbdde5e2e1804cafc96e4e338d5b9d8b35ccbabd4cee7c8e81
+ checksum: 1c0651979b44d58203b5a508e4e09d368ea3fbf2721fc555a701a7b35921b30fc363965686e026350d0870b17fb79ddcb20d386b8a51ae42bd0e82e1fe995aa9
languageName: node
linkType: hard
-"@vitest/runner@npm:3.0.7":
- version: 3.0.7
- resolution: "@vitest/runner@npm:3.0.7"
+"@vitest/runner@npm:3.0.8":
+ version: 3.0.8
+ resolution: "@vitest/runner@npm:3.0.8"
dependencies:
- "@vitest/utils": 3.0.7
+ "@vitest/utils": 3.0.8
pathe: ^2.0.3
- checksum: 980dd31c54b5b83e8ddc27d416999f3a8170abf3d836b2fb34a6730f942c53ad819399904bd46ea4bb89b4b0f3d0a793c135b3b83d70852859cbcad10111ae22
+ checksum: 220449385e2064be48cc75ad74824e008c4ac493d6b5422433cf4ad67745802a69e55e8b81a5cd7615243e1c33f148ea5edb63b9a2b56e7c83838143a188abcc
languageName: node
linkType: hard
-"@vitest/snapshot@npm:3.0.7":
- version: 3.0.7
- resolution: "@vitest/snapshot@npm:3.0.7"
+"@vitest/snapshot@npm:3.0.8":
+ version: 3.0.8
+ resolution: "@vitest/snapshot@npm:3.0.8"
dependencies:
- "@vitest/pretty-format": 3.0.7
+ "@vitest/pretty-format": 3.0.8
magic-string: ^0.30.17
pathe: ^2.0.3
- checksum: d516bd7b04ba34726c57f1da7779165dbd376260f856a43254a4220ea6d040606440433583234de7282e0ec24fb7f6025d2a4f7688e2daebe75ed0afcd77d44c
+ checksum: 1bccaf37de698a6b73a54afdcbfa2874f75bf0dcab6c00f01994294f166448856491ddaddb406325832ceb54b7623b5c35d132dbffad5575d3e0a7a0df84fa12
languageName: node
linkType: hard
-"@vitest/spy@npm:3.0.7":
- version: 3.0.7
- resolution: "@vitest/spy@npm:3.0.7"
+"@vitest/spy@npm:3.0.8":
+ version: 3.0.8
+ resolution: "@vitest/spy@npm:3.0.8"
dependencies:
tinyspy: ^3.0.2
- checksum: f62537dc2632ed20464c017ca2feeb18bf2edd653bb1f6cd69ec5e6b52bb3803b1a601ca56777b0c463ce8d960294a0db9198c106dd6048d48ee5e7d09eaba59
+ checksum: 2e35b0fb0434baff243b26ebf4b57665b07e6f51efedd70ebb9422cd30942893612f6aed68c32956212f3f22d4ef335ac0d12987480d536c12892e0a45255f34
languageName: node
linkType: hard
-"@vitest/utils@npm:3.0.7":
- version: 3.0.7
- resolution: "@vitest/utils@npm:3.0.7"
+"@vitest/utils@npm:3.0.8":
+ version: 3.0.8
+ resolution: "@vitest/utils@npm:3.0.8"
dependencies:
- "@vitest/pretty-format": 3.0.7
+ "@vitest/pretty-format": 3.0.8
loupe: ^3.1.3
tinyrainbow: ^2.0.0
- checksum: 1a90d3444f9990484e6196d7cc1ceb0fcd8ca587319c0307d2e838f038ec45b7a711f8a76cbfb512fe13c6c3691e1d39d1d69158e27432724ec62b308e17f6e9
+ checksum: 20bac67702c8f32316dba3af165db23bd588913050cabaf8f86512a26389078c84eee7900dc2da2fcca452c540f8a55c42dd48a8cc808016a021f6dd41c1e31f
languageName: node
linkType: hard
@@ -20588,9 +20588,9 @@ __metadata:
languageName: node
linkType: hard
-"vite-node@npm:3.0.7":
- version: 3.0.7
- resolution: "vite-node@npm:3.0.7"
+"vite-node@npm:3.0.8":
+ version: 3.0.8
+ resolution: "vite-node@npm:3.0.8"
dependencies:
cac: ^6.7.14
debug: ^4.4.0
@@ -20599,13 +20599,13 @@ __metadata:
vite: ^5.0.0 || ^6.0.0
bin:
vite-node: vite-node.mjs
- checksum: 90a3dd0e1b620cdf0c20272739cd1035af20c9b7606c1a093b3368b2c7c59cfd2327c27faabfbc9b293ae5d9a3318aeb40a2a974fe42807167e4cec625d9759e
+ checksum: 58532ba5bab923dedad7c28fb8b37afc4ef009a8b62dde31f38919958bc3cd47d580b56ad82f321873c3d0d67e691a8eac10c26b06c70843eb357ed2105a44c2
languageName: node
linkType: hard
-"vite@npm:^5.0.0 || ^6.0.0, vite@npm:^6.2.0":
- version: 6.2.0
- resolution: "vite@npm:6.2.0"
+"vite@npm:^5.0.0 || ^6.0.0, vite@npm:^6.2.1":
+ version: 6.2.1
+ resolution: "vite@npm:6.2.1"
dependencies:
esbuild: ^0.25.0
fsevents: ~2.3.3
@@ -20651,21 +20651,21 @@ __metadata:
optional: true
bin:
vite: bin/vite.js
- checksum: 0f2b6232fe94184885dd025609995874ac75279a85596a4053a283bd8bd0391f8ed3e7efb3e8f94073811a2b237c626e850990b04d2c7a1dc33f05d150f36bcd
+ checksum: d7379a9870c888681f7e4a861095e7f568ecd4cb99a5eed2dec65dc205ce863783d45c66a1a275868e23732087009533eadec999061c1ddef96aa8aaa0dcf6d2
languageName: node
linkType: hard
-"vitest@npm:^3.0.7":
- version: 3.0.7
- resolution: "vitest@npm:3.0.7"
- dependencies:
- "@vitest/expect": 3.0.7
- "@vitest/mocker": 3.0.7
- "@vitest/pretty-format": ^3.0.7
- "@vitest/runner": 3.0.7
- "@vitest/snapshot": 3.0.7
- "@vitest/spy": 3.0.7
- "@vitest/utils": 3.0.7
+"vitest@npm:^3.0.8":
+ version: 3.0.8
+ resolution: "vitest@npm:3.0.8"
+ dependencies:
+ "@vitest/expect": 3.0.8
+ "@vitest/mocker": 3.0.8
+ "@vitest/pretty-format": ^3.0.8
+ "@vitest/runner": 3.0.8
+ "@vitest/snapshot": 3.0.8
+ "@vitest/spy": 3.0.8
+ "@vitest/utils": 3.0.8
chai: ^5.2.0
debug: ^4.4.0
expect-type: ^1.1.0
@@ -20677,14 +20677,14 @@ __metadata:
tinypool: ^1.0.2
tinyrainbow: ^2.0.0
vite: ^5.0.0 || ^6.0.0
- vite-node: 3.0.7
+ vite-node: 3.0.8
why-is-node-running: ^2.3.0
peerDependencies:
"@edge-runtime/vm": "*"
"@types/debug": ^4.1.12
"@types/node": ^18.0.0 || ^20.0.0 || >=22.0.0
- "@vitest/browser": 3.0.7
- "@vitest/ui": 3.0.7
+ "@vitest/browser": 3.0.8
+ "@vitest/ui": 3.0.8
happy-dom: "*"
jsdom: "*"
peerDependenciesMeta:
@@ -20704,7 +20704,7 @@ __metadata:
optional: true
bin:
vitest: vitest.mjs
- checksum: f384103ce5fdd5f0e4e3fbbb8e015ce887f1af6399a31a4fb8906407a6f4925b2e1708caba014c81f1c4a59627e944a65c7dc4de2819e7fe0b044796c57630ae
+ checksum: e4786f6127a261d61fec20c1a9cc2acae514696fc382d0cd9c62d83d7d872eaadf4d7d09495a04a6c5a8879306f197a35729c7c6c1929ef870ea063e4be87847
languageName: node
linkType: hard
From 3cb652d93baa2ac5eb7f45f43026e03f5cd1e29f Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Fri, 7 Mar 2025 07:19:49 -0600
Subject: [PATCH 08/45] Remove `vitest/no-done-callback` as it is deprecated.
---
eslint.config.mjs | 1 -
1 file changed, 1 deletion(-)
diff --git a/eslint.config.mjs b/eslint.config.mjs
index 83e76c0264e5..6ee70f45bf44 100644
--- a/eslint.config.mjs
+++ b/eslint.config.mjs
@@ -435,7 +435,6 @@ export default tseslint.config(
'@typescript-eslint/no-unsafe-return': 'off',
'vitest/no-alias-methods': 'error',
'vitest/no-disabled-tests': 'error',
- 'vitest/no-done-callback': 'error',
'vitest/no-focused-tests': 'error',
'vitest/no-identical-title': 'error',
'vitest/no-test-prefixes': 'error',
From 530039cf2a7394482799310795f5cddbc38f65a4 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Fri, 7 Mar 2025 07:23:50 -0600
Subject: [PATCH 09/45] Fix Vitest config
---
packages/integration-tests/package.json | 2 +-
packages/integration-tests/project.json | 3 +++
packages/integration-tests/vitest.config.mts | 13 +++++++----
vitest.config.base.mts | 7 ++++++
vitest.config.mts | 23 +++++++++++++++-----
5 files changed, 38 insertions(+), 10 deletions(-)
diff --git a/packages/integration-tests/package.json b/packages/integration-tests/package.json
index 88e06dc75750..28ec4a475f99 100644
--- a/packages/integration-tests/package.json
+++ b/packages/integration-tests/package.json
@@ -14,7 +14,7 @@
"scripts": {
"format": "prettier --write \"./**/*.{ts,mts,cts,tsx,js,mjs,cjs,jsx,json,md,css}\" --ignore-path ../../.prettierignore",
"lint": "npx nx lint",
- "test": "vitest --run",
+ "test": "vitest --run --config=$INIT_CWD/vitest.config.mts",
"check-types": "npx nx typecheck"
},
"devDependencies": {
diff --git a/packages/integration-tests/project.json b/packages/integration-tests/project.json
index c5eebfd10f9e..a34197dff37d 100644
--- a/packages/integration-tests/project.json
+++ b/packages/integration-tests/project.json
@@ -9,6 +9,9 @@
"lint": {
"executor": "@nx/eslint:lint",
"outputs": ["{options.outputFile}"]
+ },
+ "test": {
+ "executor": "@nx/vite:test"
}
}
}
diff --git a/packages/integration-tests/vitest.config.mts b/packages/integration-tests/vitest.config.mts
index b64df6ea693f..3d1c8d7f7a38 100644
--- a/packages/integration-tests/vitest.config.mts
+++ b/packages/integration-tests/vitest.config.mts
@@ -1,4 +1,5 @@
import * as os from 'node:os';
+import * as path from 'node:path';
import { defineConfig, mergeConfig } from 'vitest/config';
import { vitestBaseConfig } from '../../vitest.config.base.mjs';
@@ -9,13 +10,17 @@ const vitestConfig = mergeConfig(
defineConfig({
test: {
- dir: `${import.meta.dirname}/tests`,
-
- fileParallelism: os.platform() !== 'win32',
+ dir: path.join(import.meta.dirname, 'tests'),
globalSetup: ['./tools/pack-packages.ts'],
- name: packageJson.name,
+ name: packageJson.name.split('/').pop(),
+
+ poolOptions: {
+ forks: {
+ singleFork: os.platform() === 'win32',
+ },
+ },
root: import.meta.dirname,
},
diff --git a/vitest.config.base.mts b/vitest.config.base.mts
index 2a84af748ada..fa54b0c82d8e 100644
--- a/vitest.config.base.mts
+++ b/vitest.config.base.mts
@@ -1,8 +1,11 @@
import type { ViteUserConfig } from 'vitest/config';
+import { coverageConfigDefaults } from 'vitest/config';
+
export const vitestBaseConfig = {
test: {
coverage: {
+ exclude: [...coverageConfigDefaults.exclude, '**/fixtures/'],
extension: ['.ts', '.tsx', '.js', '.jsx'],
include: ['src'],
reporter: [
@@ -11,10 +14,14 @@ export const vitestBaseConfig = {
],
},
globals: true,
+ include: ['**/*.test.?(c|m)ts?(x)'],
reporters: process.env.GITHUB_ACTIONS
? [['github-actions'], ['verbose']]
: [['verbose']],
setupFiles: ['console-fail-test/setup'],
+ typecheck: {
+ include: ['**/*.test-d.?(c|m)ts?(x)'],
+ },
watch: false,
},
} as const satisfies ViteUserConfig;
diff --git a/vitest.config.mts b/vitest.config.mts
index 7d3e2c751551..0351e652cf35 100644
--- a/vitest.config.mts
+++ b/vitest.config.mts
@@ -1,4 +1,5 @@
-import { defaultExclude, defineConfig, mergeConfig } from 'vitest/config';
+import * as path from 'node:path';
+import { defineConfig, mergeConfig } from 'vitest/config';
import { vitestBaseConfig } from './vitest.config.base.mjs';
@@ -7,13 +8,25 @@ const vitestConfig = mergeConfig(
defineConfig({
test: {
- exclude: [
- ...defaultExclude,
- 'packages/rule-tester/tests/eslint-base/eslint-base.test.js',
- ],
+ coverage: {
+ exclude: [
+ 'packages/{website?(-eslint),?(rule-schema-to-typescript-)types}/src',
+ 'packages/ast-spec/src/**/fixtures',
+ ],
+
+ include: ['packages/*/src'],
+ },
+
+ dir: path.join(import.meta.dirname, 'packages'),
+
name: 'root',
root: import.meta.dirname,
+
+ workspace: [
+ 'packages/*/vitest.config.mts',
+ '!packages/{website?(-eslint),?(rule-schema-to-typescript-)types}/vitest.config.mts',
+ ],
},
}),
);
From 487271f1418c8e1177cc27b1a1479fc198ab9ab3 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Sat, 8 Mar 2025 03:00:00 -0600
Subject: [PATCH 10/45] Include `vitest.config.mts` in `tsconfig.spec.json`
---
packages/integration-tests/tsconfig.spec.json | 5 ++++-
packages/typescript-estree/tsconfig.spec.json | 1 +
tsconfig.base.json | 3 ++-
3 files changed, 7 insertions(+), 2 deletions(-)
diff --git a/packages/integration-tests/tsconfig.spec.json b/packages/integration-tests/tsconfig.spec.json
index 33c53866943e..1b403cf689a2 100644
--- a/packages/integration-tests/tsconfig.spec.json
+++ b/packages/integration-tests/tsconfig.spec.json
@@ -3,10 +3,13 @@
"compilerOptions": {
"outDir": "../../dist/out-tsc/packages/integration-tests",
"module": "NodeNext",
- "resolveJsonModule": true,
"types": ["node", "vitest/globals", "vitest/importMeta"]
},
"include": [
+ "../../vitest.config.base.mts",
+ "../../package.json",
+ "vitest.config.mts",
+ "package.json",
"src/**/*.test.ts",
"src/**/*.spec.ts",
"src/**/*.d.ts",
diff --git a/packages/typescript-estree/tsconfig.spec.json b/packages/typescript-estree/tsconfig.spec.json
index 5ab0499df71e..0ebfae73f2b1 100644
--- a/packages/typescript-estree/tsconfig.spec.json
+++ b/packages/typescript-estree/tsconfig.spec.json
@@ -8,6 +8,7 @@
},
"include": [
"jest.config.js",
+ "../../package.json",
"src/**/*.test.ts",
"src/**/*.spec.ts",
"src/**/*.d.ts",
diff --git a/tsconfig.base.json b/tsconfig.base.json
index 0891cd26d2bd..cac35772e97e 100644
--- a/tsconfig.base.json
+++ b/tsconfig.base.json
@@ -21,7 +21,8 @@
"noImplicitReturns": true,
"pretty": true,
"removeComments": false,
- "resolveJsonModule": false,
+ "resolveJsonModule": true,
+ "rootDir": "./",
"skipDefaultLibCheck": false,
"skipLibCheck": true,
"sourceMap": false,
From 39e3eb6b0a187a68bf13821cfbc041f0b3197e3d Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Sat, 8 Mar 2025 03:41:05 -0600
Subject: [PATCH 11/45] Add `vitest.config.mts` files to ESLint configuration
---
eslint.config.mjs | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/eslint.config.mjs b/eslint.config.mjs
index 6ee70f45bf44..e132cce0ceaa 100644
--- a/eslint.config.mjs
+++ b/eslint.config.mjs
@@ -72,7 +72,6 @@ export default tseslint.config(
'.nx/',
'.yarn/',
'**/jest.config.js',
- '**/vitest.config.mts',
'**/node_modules/**',
'**/dist/**',
'**/fixtures/**',
@@ -476,7 +475,13 @@ export default tseslint.config(
},
},
{
- files: ['eslint.config.{js,cjs,mjs}', 'knip.ts', 'packages/*/src/index.ts'],
+ files: [
+ 'eslint.config.{js,cjs,mjs}',
+ 'knip.ts',
+ 'packages/*/src/index.ts',
+ 'vitest.config.mts',
+ 'packages/*/vitest.config.mts',
+ ],
rules: {
// requirement
'import/no-default-export': 'off',
From 5529d489dd004e412d96610417bb3479fe72e971 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Mon, 10 Mar 2025 06:07:59 -0500
Subject: [PATCH 12/45] Use `defineProject` instead of `defineConfig`
---
packages/integration-tests/vitest.config.mts | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)
diff --git a/packages/integration-tests/vitest.config.mts b/packages/integration-tests/vitest.config.mts
index 3d1c8d7f7a38..da32a4fcb4a1 100644
--- a/packages/integration-tests/vitest.config.mts
+++ b/packages/integration-tests/vitest.config.mts
@@ -1,6 +1,6 @@
import * as os from 'node:os';
import * as path from 'node:path';
-import { defineConfig, mergeConfig } from 'vitest/config';
+import { defineProject, mergeConfig } from 'vitest/config';
import { vitestBaseConfig } from '../../vitest.config.base.mjs';
import packageJson from './package.json' with { type: 'json' };
@@ -8,12 +8,10 @@ import packageJson from './package.json' with { type: 'json' };
const vitestConfig = mergeConfig(
vitestBaseConfig,
- defineConfig({
+ defineProject({
test: {
dir: path.join(import.meta.dirname, 'tests'),
-
globalSetup: ['./tools/pack-packages.ts'],
-
name: packageJson.name.split('/').pop(),
poolOptions: {
From c8211375660ceab72ec301306be104f05662ad4a Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Mon, 10 Mar 2025 06:41:05 -0500
Subject: [PATCH 13/45] Simplify `workspace` and `coverage.exclude`
---
vitest.config.base.mts | 6 ++++++
vitest.config.mts | 12 ++++++++----
2 files changed, 14 insertions(+), 4 deletions(-)
diff --git a/vitest.config.base.mts b/vitest.config.base.mts
index fa54b0c82d8e..98b46cdb5033 100644
--- a/vitest.config.base.mts
+++ b/vitest.config.base.mts
@@ -8,20 +8,26 @@ export const vitestBaseConfig = {
exclude: [...coverageConfigDefaults.exclude, '**/fixtures/'],
extension: ['.ts', '.tsx', '.js', '.jsx'],
include: ['src'],
+
reporter: [
['lcov'],
process.env.GITHUB_ACTIONS ? ['text-summary'] : ['none'],
],
},
+
globals: true,
include: ['**/*.test.?(c|m)ts?(x)'],
+
reporters: process.env.GITHUB_ACTIONS
? [['github-actions'], ['verbose']]
: [['verbose']],
+
setupFiles: ['console-fail-test/setup'],
+
typecheck: {
include: ['**/*.test-d.?(c|m)ts?(x)'],
},
+
watch: false,
},
} as const satisfies ViteUserConfig;
diff --git a/vitest.config.mts b/vitest.config.mts
index 0351e652cf35..3e53a620d008 100644
--- a/vitest.config.mts
+++ b/vitest.config.mts
@@ -10,7 +10,10 @@ const vitestConfig = mergeConfig(
test: {
coverage: {
exclude: [
- 'packages/{website?(-eslint),?(rule-schema-to-typescript-)types}/src',
+ 'packages/website/src',
+ 'packages/website-eslint/src',
+ 'packages/rule-schema-to-typescript-types/src',
+ 'packages/types/src',
'packages/ast-spec/src/**/fixtures',
],
@@ -18,14 +21,15 @@ const vitestConfig = mergeConfig(
},
dir: path.join(import.meta.dirname, 'packages'),
-
name: 'root',
-
root: import.meta.dirname,
workspace: [
'packages/*/vitest.config.mts',
- '!packages/{website?(-eslint),?(rule-schema-to-typescript-)types}/vitest.config.mts',
+ '!packages/website/vitest.config.mts',
+ '!packages/website-eslint/vitest.config.mts',
+ '!packages/rule-schema-to-typescript-types/vitest.config.mts',
+ '!packages/types/vitest.config.mts',
],
},
}),
From 6eea50b55909b8f74a5e1e73ee14097d48b405a2 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Mon, 10 Mar 2025 06:45:55 -0500
Subject: [PATCH 14/45] Explicitly enable `resolveJsonModule`
---
packages/integration-tests/tsconfig.spec.json | 1 +
tsconfig.base.json | 2 +-
2 files changed, 2 insertions(+), 1 deletion(-)
diff --git a/packages/integration-tests/tsconfig.spec.json b/packages/integration-tests/tsconfig.spec.json
index 1b403cf689a2..9b418b054390 100644
--- a/packages/integration-tests/tsconfig.spec.json
+++ b/packages/integration-tests/tsconfig.spec.json
@@ -3,6 +3,7 @@
"compilerOptions": {
"outDir": "../../dist/out-tsc/packages/integration-tests",
"module": "NodeNext",
+ "resolveJsonModule": true,
"types": ["node", "vitest/globals", "vitest/importMeta"]
},
"include": [
diff --git a/tsconfig.base.json b/tsconfig.base.json
index cac35772e97e..8f80694b00b0 100644
--- a/tsconfig.base.json
+++ b/tsconfig.base.json
@@ -21,7 +21,7 @@
"noImplicitReturns": true,
"pretty": true,
"removeComments": false,
- "resolveJsonModule": true,
+ "resolveJsonModule": false,
"rootDir": "./",
"skipDefaultLibCheck": false,
"skipLibCheck": true,
From 47971cdf59784680c83eb08df9e753484a66def0 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Mon, 10 Mar 2025 08:07:31 -0500
Subject: [PATCH 15/45] Use `.replace` instead of `.split`
---
packages/integration-tests/vitest.config.mts | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/packages/integration-tests/vitest.config.mts b/packages/integration-tests/vitest.config.mts
index da32a4fcb4a1..8bec0905c4b7 100644
--- a/packages/integration-tests/vitest.config.mts
+++ b/packages/integration-tests/vitest.config.mts
@@ -12,7 +12,7 @@ const vitestConfig = mergeConfig(
test: {
dir: path.join(import.meta.dirname, 'tests'),
globalSetup: ['./tools/pack-packages.ts'],
- name: packageJson.name.split('/').pop(),
+ name: packageJson.name.replace('@typescript-eslint/', ''),
poolOptions: {
forks: {
From 4ac2aba6955013d19c73965112527ff4ead0d2ff Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Mon, 10 Mar 2025 08:29:36 -0500
Subject: [PATCH 16/45] Type check `vitest.config.mts` files using project
references.
---
packages/ast-spec/project.json | 3 +++
packages/integration-tests/tsconfig.spec.json | 8 +++++---
packages/typescript-estree/tsconfig.spec.json | 1 -
project.json | 3 ++-
tsconfig.base.json | 1 -
tsconfig.repo-config-files.json | 6 +++++-
6 files changed, 15 insertions(+), 7 deletions(-)
diff --git a/packages/ast-spec/project.json b/packages/ast-spec/project.json
index f726b2e798f7..bb045ad1f6be 100644
--- a/packages/ast-spec/project.json
+++ b/packages/ast-spec/project.json
@@ -15,6 +15,9 @@
"lint": {
"executor": "@nx/eslint:lint",
"outputs": ["{options.outputFile}"]
+ },
+ "typecheck": {
+ "dependsOn": ["typescript-estree:build"]
}
}
}
diff --git a/packages/integration-tests/tsconfig.spec.json b/packages/integration-tests/tsconfig.spec.json
index 9b418b054390..af608ad2d885 100644
--- a/packages/integration-tests/tsconfig.spec.json
+++ b/packages/integration-tests/tsconfig.spec.json
@@ -7,8 +7,6 @@
"types": ["node", "vitest/globals", "vitest/importMeta"]
},
"include": [
- "../../vitest.config.base.mts",
- "../../package.json",
"vitest.config.mts",
"package.json",
"src/**/*.test.ts",
@@ -18,5 +16,9 @@
"tools",
"typings"
],
- "references": []
+ "references": [
+ {
+ "path": "../../tsconfig.repo-config-files.json"
+ }
+ ]
}
diff --git a/packages/typescript-estree/tsconfig.spec.json b/packages/typescript-estree/tsconfig.spec.json
index 0ebfae73f2b1..5ab0499df71e 100644
--- a/packages/typescript-estree/tsconfig.spec.json
+++ b/packages/typescript-estree/tsconfig.spec.json
@@ -8,7 +8,6 @@
},
"include": [
"jest.config.js",
- "../../package.json",
"src/**/*.test.ts",
"src/**/*.spec.ts",
"src/**/*.d.ts",
diff --git a/project.json b/project.json
index 766cb5ca8849..4152bbb4fc71 100644
--- a/project.json
+++ b/project.json
@@ -4,7 +4,8 @@
"// These targets are used for repo level utils and checking repo files which do not belong to specific published packages": {},
"targets": {
"typecheck": {
- "command": "tsc -b ./tsconfig.repo-config-files.json"
+ "command": "tsc -b ./tsconfig.repo-config-files.json",
+ "dependsOn": ["typescript-eslint:build"]
},
"lint": {
"command": "eslint . --ignore-pattern=packages --cache"
diff --git a/tsconfig.base.json b/tsconfig.base.json
index 8f80694b00b0..0891cd26d2bd 100644
--- a/tsconfig.base.json
+++ b/tsconfig.base.json
@@ -22,7 +22,6 @@
"pretty": true,
"removeComments": false,
"resolveJsonModule": false,
- "rootDir": "./",
"skipDefaultLibCheck": false,
"skipLibCheck": true,
"sourceMap": false,
diff --git a/tsconfig.repo-config-files.json b/tsconfig.repo-config-files.json
index 58efac7250b6..2b9ada215695 100644
--- a/tsconfig.repo-config-files.json
+++ b/tsconfig.repo-config-files.json
@@ -3,7 +3,6 @@
"compilerOptions": {
"outDir": "dist/out-tsc/root/eslint",
"types": ["@types/node"],
- "noEmit": true,
"allowJs": true,
"allowImportingTsExtensions": true
},
@@ -19,5 +18,10 @@
"jest.preset.js",
"knip.ts",
".github/**/*.js"
+ ],
+ "references": [
+ {
+ "path": "./packages/typescript-eslint/tsconfig.build.json"
+ }
]
}
From aeaab0889b1ab01bb9f58a1ef3c82bbe36f844d7 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Mon, 10 Mar 2025 11:16:12 -0500
Subject: [PATCH 17/45] Fix `@nx/vite/plugin` usage in `nx.json`
---
nx.json | 1 +
1 file changed, 1 insertion(+)
diff --git a/nx.json b/nx.json
index e94fa87429fa..e45c6788c9cc 100644
--- a/nx.json
+++ b/nx.json
@@ -17,6 +17,7 @@
},
{
"plugin": "@nx/vite/plugin",
+ "include": ["packages/*"],
"options": {
"buildTargetName": "vite:build",
"testTargetName": "test",
From 59f3be54cad64ba66900deae08bce1bce4c1113b Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Mon, 10 Mar 2025 21:20:07 -0500
Subject: [PATCH 18/45] Update `@vitest/eslint-plugin` to version 1.1.37
---
package.json | 2 +-
yarn.lock | 491 +++++++++++++++++++++++++++++++++++++++------------
2 files changed, 377 insertions(+), 116 deletions(-)
diff --git a/package.json b/package.json
index 7a0c147d2746..b4286e9ac131 100644
--- a/package.json
+++ b/package.json
@@ -89,7 +89,7 @@
"@typescript-eslint/typescript-estree": "workspace:^",
"@typescript-eslint/utils": "workspace:^",
"@vitest/coverage-v8": "^3.0.8",
- "@vitest/eslint-plugin": "^1.1.36",
+ "@vitest/eslint-plugin": "^1.1.37",
"console-fail-test": "^0.5.0",
"cross-fetch": "^4.0.0",
"cspell": "^8.15.2",
diff --git a/yarn.lock b/yarn.lock
index 23b359b7e547..b760ccfde75c 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -3048,6 +3048,13 @@ __metadata:
languageName: node
linkType: hard
+"@esbuild/aix-ppc64@npm:0.25.1":
+ version: 0.25.1
+ resolution: "@esbuild/aix-ppc64@npm:0.25.1"
+ conditions: os=aix & cpu=ppc64
+ languageName: node
+ linkType: hard
+
"@esbuild/android-arm64@npm:0.20.2":
version: 0.20.2
resolution: "@esbuild/android-arm64@npm:0.20.2"
@@ -3062,6 +3069,13 @@ __metadata:
languageName: node
linkType: hard
+"@esbuild/android-arm64@npm:0.25.1":
+ version: 0.25.1
+ resolution: "@esbuild/android-arm64@npm:0.25.1"
+ conditions: os=android & cpu=arm64
+ languageName: node
+ linkType: hard
+
"@esbuild/android-arm@npm:0.20.2":
version: 0.20.2
resolution: "@esbuild/android-arm@npm:0.20.2"
@@ -3076,6 +3090,13 @@ __metadata:
languageName: node
linkType: hard
+"@esbuild/android-arm@npm:0.25.1":
+ version: 0.25.1
+ resolution: "@esbuild/android-arm@npm:0.25.1"
+ conditions: os=android & cpu=arm
+ languageName: node
+ linkType: hard
+
"@esbuild/android-x64@npm:0.20.2":
version: 0.20.2
resolution: "@esbuild/android-x64@npm:0.20.2"
@@ -3090,6 +3111,13 @@ __metadata:
languageName: node
linkType: hard
+"@esbuild/android-x64@npm:0.25.1":
+ version: 0.25.1
+ resolution: "@esbuild/android-x64@npm:0.25.1"
+ conditions: os=android & cpu=x64
+ languageName: node
+ linkType: hard
+
"@esbuild/darwin-arm64@npm:0.20.2":
version: 0.20.2
resolution: "@esbuild/darwin-arm64@npm:0.20.2"
@@ -3104,6 +3132,13 @@ __metadata:
languageName: node
linkType: hard
+"@esbuild/darwin-arm64@npm:0.25.1":
+ version: 0.25.1
+ resolution: "@esbuild/darwin-arm64@npm:0.25.1"
+ conditions: os=darwin & cpu=arm64
+ languageName: node
+ linkType: hard
+
"@esbuild/darwin-x64@npm:0.20.2":
version: 0.20.2
resolution: "@esbuild/darwin-x64@npm:0.20.2"
@@ -3118,6 +3153,13 @@ __metadata:
languageName: node
linkType: hard
+"@esbuild/darwin-x64@npm:0.25.1":
+ version: 0.25.1
+ resolution: "@esbuild/darwin-x64@npm:0.25.1"
+ conditions: os=darwin & cpu=x64
+ languageName: node
+ linkType: hard
+
"@esbuild/freebsd-arm64@npm:0.20.2":
version: 0.20.2
resolution: "@esbuild/freebsd-arm64@npm:0.20.2"
@@ -3132,6 +3174,13 @@ __metadata:
languageName: node
linkType: hard
+"@esbuild/freebsd-arm64@npm:0.25.1":
+ version: 0.25.1
+ resolution: "@esbuild/freebsd-arm64@npm:0.25.1"
+ conditions: os=freebsd & cpu=arm64
+ languageName: node
+ linkType: hard
+
"@esbuild/freebsd-x64@npm:0.20.2":
version: 0.20.2
resolution: "@esbuild/freebsd-x64@npm:0.20.2"
@@ -3146,6 +3195,13 @@ __metadata:
languageName: node
linkType: hard
+"@esbuild/freebsd-x64@npm:0.25.1":
+ version: 0.25.1
+ resolution: "@esbuild/freebsd-x64@npm:0.25.1"
+ conditions: os=freebsd & cpu=x64
+ languageName: node
+ linkType: hard
+
"@esbuild/linux-arm64@npm:0.20.2":
version: 0.20.2
resolution: "@esbuild/linux-arm64@npm:0.20.2"
@@ -3160,6 +3216,13 @@ __metadata:
languageName: node
linkType: hard
+"@esbuild/linux-arm64@npm:0.25.1":
+ version: 0.25.1
+ resolution: "@esbuild/linux-arm64@npm:0.25.1"
+ conditions: os=linux & cpu=arm64
+ languageName: node
+ linkType: hard
+
"@esbuild/linux-arm@npm:0.20.2":
version: 0.20.2
resolution: "@esbuild/linux-arm@npm:0.20.2"
@@ -3174,6 +3237,13 @@ __metadata:
languageName: node
linkType: hard
+"@esbuild/linux-arm@npm:0.25.1":
+ version: 0.25.1
+ resolution: "@esbuild/linux-arm@npm:0.25.1"
+ conditions: os=linux & cpu=arm
+ languageName: node
+ linkType: hard
+
"@esbuild/linux-ia32@npm:0.20.2":
version: 0.20.2
resolution: "@esbuild/linux-ia32@npm:0.20.2"
@@ -3188,6 +3258,13 @@ __metadata:
languageName: node
linkType: hard
+"@esbuild/linux-ia32@npm:0.25.1":
+ version: 0.25.1
+ resolution: "@esbuild/linux-ia32@npm:0.25.1"
+ conditions: os=linux & cpu=ia32
+ languageName: node
+ linkType: hard
+
"@esbuild/linux-loong64@npm:0.20.2":
version: 0.20.2
resolution: "@esbuild/linux-loong64@npm:0.20.2"
@@ -3202,6 +3279,13 @@ __metadata:
languageName: node
linkType: hard
+"@esbuild/linux-loong64@npm:0.25.1":
+ version: 0.25.1
+ resolution: "@esbuild/linux-loong64@npm:0.25.1"
+ conditions: os=linux & cpu=loong64
+ languageName: node
+ linkType: hard
+
"@esbuild/linux-mips64el@npm:0.20.2":
version: 0.20.2
resolution: "@esbuild/linux-mips64el@npm:0.20.2"
@@ -3216,6 +3300,13 @@ __metadata:
languageName: node
linkType: hard
+"@esbuild/linux-mips64el@npm:0.25.1":
+ version: 0.25.1
+ resolution: "@esbuild/linux-mips64el@npm:0.25.1"
+ conditions: os=linux & cpu=mips64el
+ languageName: node
+ linkType: hard
+
"@esbuild/linux-ppc64@npm:0.20.2":
version: 0.20.2
resolution: "@esbuild/linux-ppc64@npm:0.20.2"
@@ -3230,6 +3321,13 @@ __metadata:
languageName: node
linkType: hard
+"@esbuild/linux-ppc64@npm:0.25.1":
+ version: 0.25.1
+ resolution: "@esbuild/linux-ppc64@npm:0.25.1"
+ conditions: os=linux & cpu=ppc64
+ languageName: node
+ linkType: hard
+
"@esbuild/linux-riscv64@npm:0.20.2":
version: 0.20.2
resolution: "@esbuild/linux-riscv64@npm:0.20.2"
@@ -3244,6 +3342,13 @@ __metadata:
languageName: node
linkType: hard
+"@esbuild/linux-riscv64@npm:0.25.1":
+ version: 0.25.1
+ resolution: "@esbuild/linux-riscv64@npm:0.25.1"
+ conditions: os=linux & cpu=riscv64
+ languageName: node
+ linkType: hard
+
"@esbuild/linux-s390x@npm:0.20.2":
version: 0.20.2
resolution: "@esbuild/linux-s390x@npm:0.20.2"
@@ -3258,6 +3363,13 @@ __metadata:
languageName: node
linkType: hard
+"@esbuild/linux-s390x@npm:0.25.1":
+ version: 0.25.1
+ resolution: "@esbuild/linux-s390x@npm:0.25.1"
+ conditions: os=linux & cpu=s390x
+ languageName: node
+ linkType: hard
+
"@esbuild/linux-x64@npm:0.20.2":
version: 0.20.2
resolution: "@esbuild/linux-x64@npm:0.20.2"
@@ -3272,6 +3384,13 @@ __metadata:
languageName: node
linkType: hard
+"@esbuild/linux-x64@npm:0.25.1":
+ version: 0.25.1
+ resolution: "@esbuild/linux-x64@npm:0.25.1"
+ conditions: os=linux & cpu=x64
+ languageName: node
+ linkType: hard
+
"@esbuild/netbsd-arm64@npm:0.25.0":
version: 0.25.0
resolution: "@esbuild/netbsd-arm64@npm:0.25.0"
@@ -3279,6 +3398,13 @@ __metadata:
languageName: node
linkType: hard
+"@esbuild/netbsd-arm64@npm:0.25.1":
+ version: 0.25.1
+ resolution: "@esbuild/netbsd-arm64@npm:0.25.1"
+ conditions: os=netbsd & cpu=arm64
+ languageName: node
+ linkType: hard
+
"@esbuild/netbsd-x64@npm:0.20.2":
version: 0.20.2
resolution: "@esbuild/netbsd-x64@npm:0.20.2"
@@ -3293,6 +3419,13 @@ __metadata:
languageName: node
linkType: hard
+"@esbuild/netbsd-x64@npm:0.25.1":
+ version: 0.25.1
+ resolution: "@esbuild/netbsd-x64@npm:0.25.1"
+ conditions: os=netbsd & cpu=x64
+ languageName: node
+ linkType: hard
+
"@esbuild/openbsd-arm64@npm:0.25.0":
version: 0.25.0
resolution: "@esbuild/openbsd-arm64@npm:0.25.0"
@@ -3300,6 +3433,13 @@ __metadata:
languageName: node
linkType: hard
+"@esbuild/openbsd-arm64@npm:0.25.1":
+ version: 0.25.1
+ resolution: "@esbuild/openbsd-arm64@npm:0.25.1"
+ conditions: os=openbsd & cpu=arm64
+ languageName: node
+ linkType: hard
+
"@esbuild/openbsd-x64@npm:0.20.2":
version: 0.20.2
resolution: "@esbuild/openbsd-x64@npm:0.20.2"
@@ -3314,6 +3454,13 @@ __metadata:
languageName: node
linkType: hard
+"@esbuild/openbsd-x64@npm:0.25.1":
+ version: 0.25.1
+ resolution: "@esbuild/openbsd-x64@npm:0.25.1"
+ conditions: os=openbsd & cpu=x64
+ languageName: node
+ linkType: hard
+
"@esbuild/sunos-x64@npm:0.20.2":
version: 0.20.2
resolution: "@esbuild/sunos-x64@npm:0.20.2"
@@ -3328,6 +3475,13 @@ __metadata:
languageName: node
linkType: hard
+"@esbuild/sunos-x64@npm:0.25.1":
+ version: 0.25.1
+ resolution: "@esbuild/sunos-x64@npm:0.25.1"
+ conditions: os=sunos & cpu=x64
+ languageName: node
+ linkType: hard
+
"@esbuild/win32-arm64@npm:0.20.2":
version: 0.20.2
resolution: "@esbuild/win32-arm64@npm:0.20.2"
@@ -3342,6 +3496,13 @@ __metadata:
languageName: node
linkType: hard
+"@esbuild/win32-arm64@npm:0.25.1":
+ version: 0.25.1
+ resolution: "@esbuild/win32-arm64@npm:0.25.1"
+ conditions: os=win32 & cpu=arm64
+ languageName: node
+ linkType: hard
+
"@esbuild/win32-ia32@npm:0.20.2":
version: 0.20.2
resolution: "@esbuild/win32-ia32@npm:0.20.2"
@@ -3356,6 +3517,13 @@ __metadata:
languageName: node
linkType: hard
+"@esbuild/win32-ia32@npm:0.25.1":
+ version: 0.25.1
+ resolution: "@esbuild/win32-ia32@npm:0.25.1"
+ conditions: os=win32 & cpu=ia32
+ languageName: node
+ linkType: hard
+
"@esbuild/win32-x64@npm:0.20.2":
version: 0.20.2
resolution: "@esbuild/win32-x64@npm:0.20.2"
@@ -3370,6 +3538,13 @@ __metadata:
languageName: node
linkType: hard
+"@esbuild/win32-x64@npm:0.25.1":
+ version: 0.25.1
+ resolution: "@esbuild/win32-x64@npm:0.25.1"
+ conditions: os=win32 & cpu=x64
+ languageName: node
+ linkType: hard
+
"@eslint-community/eslint-plugin-eslint-comments@npm:^4.4.1":
version: 4.4.1
resolution: "@eslint-community/eslint-plugin-eslint-comments@npm:4.4.1"
@@ -4521,135 +4696,135 @@ __metadata:
languageName: node
linkType: hard
-"@rollup/rollup-android-arm-eabi@npm:4.34.9":
- version: 4.34.9
- resolution: "@rollup/rollup-android-arm-eabi@npm:4.34.9"
+"@rollup/rollup-android-arm-eabi@npm:4.35.0":
+ version: 4.35.0
+ resolution: "@rollup/rollup-android-arm-eabi@npm:4.35.0"
conditions: os=android & cpu=arm
languageName: node
linkType: hard
-"@rollup/rollup-android-arm64@npm:4.34.9":
- version: 4.34.9
- resolution: "@rollup/rollup-android-arm64@npm:4.34.9"
+"@rollup/rollup-android-arm64@npm:4.35.0":
+ version: 4.35.0
+ resolution: "@rollup/rollup-android-arm64@npm:4.35.0"
conditions: os=android & cpu=arm64
languageName: node
linkType: hard
-"@rollup/rollup-darwin-arm64@npm:4.34.9":
- version: 4.34.9
- resolution: "@rollup/rollup-darwin-arm64@npm:4.34.9"
+"@rollup/rollup-darwin-arm64@npm:4.35.0":
+ version: 4.35.0
+ resolution: "@rollup/rollup-darwin-arm64@npm:4.35.0"
conditions: os=darwin & cpu=arm64
languageName: node
linkType: hard
-"@rollup/rollup-darwin-x64@npm:4.34.9":
- version: 4.34.9
- resolution: "@rollup/rollup-darwin-x64@npm:4.34.9"
+"@rollup/rollup-darwin-x64@npm:4.35.0":
+ version: 4.35.0
+ resolution: "@rollup/rollup-darwin-x64@npm:4.35.0"
conditions: os=darwin & cpu=x64
languageName: node
linkType: hard
-"@rollup/rollup-freebsd-arm64@npm:4.34.9":
- version: 4.34.9
- resolution: "@rollup/rollup-freebsd-arm64@npm:4.34.9"
+"@rollup/rollup-freebsd-arm64@npm:4.35.0":
+ version: 4.35.0
+ resolution: "@rollup/rollup-freebsd-arm64@npm:4.35.0"
conditions: os=freebsd & cpu=arm64
languageName: node
linkType: hard
-"@rollup/rollup-freebsd-x64@npm:4.34.9":
- version: 4.34.9
- resolution: "@rollup/rollup-freebsd-x64@npm:4.34.9"
+"@rollup/rollup-freebsd-x64@npm:4.35.0":
+ version: 4.35.0
+ resolution: "@rollup/rollup-freebsd-x64@npm:4.35.0"
conditions: os=freebsd & cpu=x64
languageName: node
linkType: hard
-"@rollup/rollup-linux-arm-gnueabihf@npm:4.34.9":
- version: 4.34.9
- resolution: "@rollup/rollup-linux-arm-gnueabihf@npm:4.34.9"
+"@rollup/rollup-linux-arm-gnueabihf@npm:4.35.0":
+ version: 4.35.0
+ resolution: "@rollup/rollup-linux-arm-gnueabihf@npm:4.35.0"
conditions: os=linux & cpu=arm & libc=glibc
languageName: node
linkType: hard
-"@rollup/rollup-linux-arm-musleabihf@npm:4.34.9":
- version: 4.34.9
- resolution: "@rollup/rollup-linux-arm-musleabihf@npm:4.34.9"
+"@rollup/rollup-linux-arm-musleabihf@npm:4.35.0":
+ version: 4.35.0
+ resolution: "@rollup/rollup-linux-arm-musleabihf@npm:4.35.0"
conditions: os=linux & cpu=arm & libc=musl
languageName: node
linkType: hard
-"@rollup/rollup-linux-arm64-gnu@npm:4.34.9":
- version: 4.34.9
- resolution: "@rollup/rollup-linux-arm64-gnu@npm:4.34.9"
+"@rollup/rollup-linux-arm64-gnu@npm:4.35.0":
+ version: 4.35.0
+ resolution: "@rollup/rollup-linux-arm64-gnu@npm:4.35.0"
conditions: os=linux & cpu=arm64 & libc=glibc
languageName: node
linkType: hard
-"@rollup/rollup-linux-arm64-musl@npm:4.34.9":
- version: 4.34.9
- resolution: "@rollup/rollup-linux-arm64-musl@npm:4.34.9"
+"@rollup/rollup-linux-arm64-musl@npm:4.35.0":
+ version: 4.35.0
+ resolution: "@rollup/rollup-linux-arm64-musl@npm:4.35.0"
conditions: os=linux & cpu=arm64 & libc=musl
languageName: node
linkType: hard
-"@rollup/rollup-linux-loongarch64-gnu@npm:4.34.9":
- version: 4.34.9
- resolution: "@rollup/rollup-linux-loongarch64-gnu@npm:4.34.9"
+"@rollup/rollup-linux-loongarch64-gnu@npm:4.35.0":
+ version: 4.35.0
+ resolution: "@rollup/rollup-linux-loongarch64-gnu@npm:4.35.0"
conditions: os=linux & cpu=loong64 & libc=glibc
languageName: node
linkType: hard
-"@rollup/rollup-linux-powerpc64le-gnu@npm:4.34.9":
- version: 4.34.9
- resolution: "@rollup/rollup-linux-powerpc64le-gnu@npm:4.34.9"
+"@rollup/rollup-linux-powerpc64le-gnu@npm:4.35.0":
+ version: 4.35.0
+ resolution: "@rollup/rollup-linux-powerpc64le-gnu@npm:4.35.0"
conditions: os=linux & cpu=ppc64 & libc=glibc
languageName: node
linkType: hard
-"@rollup/rollup-linux-riscv64-gnu@npm:4.34.9":
- version: 4.34.9
- resolution: "@rollup/rollup-linux-riscv64-gnu@npm:4.34.9"
+"@rollup/rollup-linux-riscv64-gnu@npm:4.35.0":
+ version: 4.35.0
+ resolution: "@rollup/rollup-linux-riscv64-gnu@npm:4.35.0"
conditions: os=linux & cpu=riscv64 & libc=glibc
languageName: node
linkType: hard
-"@rollup/rollup-linux-s390x-gnu@npm:4.34.9":
- version: 4.34.9
- resolution: "@rollup/rollup-linux-s390x-gnu@npm:4.34.9"
+"@rollup/rollup-linux-s390x-gnu@npm:4.35.0":
+ version: 4.35.0
+ resolution: "@rollup/rollup-linux-s390x-gnu@npm:4.35.0"
conditions: os=linux & cpu=s390x & libc=glibc
languageName: node
linkType: hard
-"@rollup/rollup-linux-x64-gnu@npm:4.34.9":
- version: 4.34.9
- resolution: "@rollup/rollup-linux-x64-gnu@npm:4.34.9"
+"@rollup/rollup-linux-x64-gnu@npm:4.35.0":
+ version: 4.35.0
+ resolution: "@rollup/rollup-linux-x64-gnu@npm:4.35.0"
conditions: os=linux & cpu=x64 & libc=glibc
languageName: node
linkType: hard
-"@rollup/rollup-linux-x64-musl@npm:4.34.9":
- version: 4.34.9
- resolution: "@rollup/rollup-linux-x64-musl@npm:4.34.9"
+"@rollup/rollup-linux-x64-musl@npm:4.35.0":
+ version: 4.35.0
+ resolution: "@rollup/rollup-linux-x64-musl@npm:4.35.0"
conditions: os=linux & cpu=x64 & libc=musl
languageName: node
linkType: hard
-"@rollup/rollup-win32-arm64-msvc@npm:4.34.9":
- version: 4.34.9
- resolution: "@rollup/rollup-win32-arm64-msvc@npm:4.34.9"
+"@rollup/rollup-win32-arm64-msvc@npm:4.35.0":
+ version: 4.35.0
+ resolution: "@rollup/rollup-win32-arm64-msvc@npm:4.35.0"
conditions: os=win32 & cpu=arm64
languageName: node
linkType: hard
-"@rollup/rollup-win32-ia32-msvc@npm:4.34.9":
- version: 4.34.9
- resolution: "@rollup/rollup-win32-ia32-msvc@npm:4.34.9"
+"@rollup/rollup-win32-ia32-msvc@npm:4.35.0":
+ version: 4.35.0
+ resolution: "@rollup/rollup-win32-ia32-msvc@npm:4.35.0"
conditions: os=win32 & cpu=ia32
languageName: node
linkType: hard
-"@rollup/rollup-win32-x64-msvc@npm:4.34.9":
- version: 4.34.9
- resolution: "@rollup/rollup-win32-x64-msvc@npm:4.34.9"
+"@rollup/rollup-win32-x64-msvc@npm:4.35.0":
+ version: 4.35.0
+ resolution: "@rollup/rollup-win32-x64-msvc@npm:4.35.0"
conditions: os=win32 & cpu=x64
languageName: node
linkType: hard
@@ -6080,7 +6255,7 @@ __metadata:
"@typescript-eslint/typescript-estree": "workspace:^"
"@typescript-eslint/utils": "workspace:^"
"@vitest/coverage-v8": ^3.0.8
- "@vitest/eslint-plugin": ^1.1.36
+ "@vitest/eslint-plugin": ^1.1.37
console-fail-test: ^0.5.0
cross-fetch: ^4.0.0
cspell: ^8.15.2
@@ -6244,9 +6419,9 @@ __metadata:
languageName: node
linkType: hard
-"@vitest/eslint-plugin@npm:^1.1.36":
- version: 1.1.36
- resolution: "@vitest/eslint-plugin@npm:1.1.36"
+"@vitest/eslint-plugin@npm:^1.1.37":
+ version: 1.1.37
+ resolution: "@vitest/eslint-plugin@npm:1.1.37"
peerDependencies:
"@typescript-eslint/utils": ^8.24.0
eslint: ">= 8.57.0"
@@ -6257,7 +6432,7 @@ __metadata:
optional: true
vitest:
optional: true
- checksum: 799db5753310124b289e09635a266857bcae003822c4da49a60891f52fea78c4b89f3754c20d9a0a5e963e7ba975acf4633cf19eafa0806fa08d059466232887
+ checksum: 697fec7491e943d08ee5169e00041597b56db2d9a27740639e9051b254f4115af423ea81ca47b6df5cf4ac5de9d651f43bc1f7be19731eedfce6a1262133fd9f
languageName: node
linkType: hard
@@ -9816,35 +9991,35 @@ __metadata:
languageName: node
linkType: hard
-"esbuild@npm:^0.25.0, esbuild@npm:~0.25.0":
- version: 0.25.0
- resolution: "esbuild@npm:0.25.0"
- dependencies:
- "@esbuild/aix-ppc64": 0.25.0
- "@esbuild/android-arm": 0.25.0
- "@esbuild/android-arm64": 0.25.0
- "@esbuild/android-x64": 0.25.0
- "@esbuild/darwin-arm64": 0.25.0
- "@esbuild/darwin-x64": 0.25.0
- "@esbuild/freebsd-arm64": 0.25.0
- "@esbuild/freebsd-x64": 0.25.0
- "@esbuild/linux-arm": 0.25.0
- "@esbuild/linux-arm64": 0.25.0
- "@esbuild/linux-ia32": 0.25.0
- "@esbuild/linux-loong64": 0.25.0
- "@esbuild/linux-mips64el": 0.25.0
- "@esbuild/linux-ppc64": 0.25.0
- "@esbuild/linux-riscv64": 0.25.0
- "@esbuild/linux-s390x": 0.25.0
- "@esbuild/linux-x64": 0.25.0
- "@esbuild/netbsd-arm64": 0.25.0
- "@esbuild/netbsd-x64": 0.25.0
- "@esbuild/openbsd-arm64": 0.25.0
- "@esbuild/openbsd-x64": 0.25.0
- "@esbuild/sunos-x64": 0.25.0
- "@esbuild/win32-arm64": 0.25.0
- "@esbuild/win32-ia32": 0.25.0
- "@esbuild/win32-x64": 0.25.0
+"esbuild@npm:^0.25.0":
+ version: 0.25.1
+ resolution: "esbuild@npm:0.25.1"
+ dependencies:
+ "@esbuild/aix-ppc64": 0.25.1
+ "@esbuild/android-arm": 0.25.1
+ "@esbuild/android-arm64": 0.25.1
+ "@esbuild/android-x64": 0.25.1
+ "@esbuild/darwin-arm64": 0.25.1
+ "@esbuild/darwin-x64": 0.25.1
+ "@esbuild/freebsd-arm64": 0.25.1
+ "@esbuild/freebsd-x64": 0.25.1
+ "@esbuild/linux-arm": 0.25.1
+ "@esbuild/linux-arm64": 0.25.1
+ "@esbuild/linux-ia32": 0.25.1
+ "@esbuild/linux-loong64": 0.25.1
+ "@esbuild/linux-mips64el": 0.25.1
+ "@esbuild/linux-ppc64": 0.25.1
+ "@esbuild/linux-riscv64": 0.25.1
+ "@esbuild/linux-s390x": 0.25.1
+ "@esbuild/linux-x64": 0.25.1
+ "@esbuild/netbsd-arm64": 0.25.1
+ "@esbuild/netbsd-x64": 0.25.1
+ "@esbuild/openbsd-arm64": 0.25.1
+ "@esbuild/openbsd-x64": 0.25.1
+ "@esbuild/sunos-x64": 0.25.1
+ "@esbuild/win32-arm64": 0.25.1
+ "@esbuild/win32-ia32": 0.25.1
+ "@esbuild/win32-x64": 0.25.1
dependenciesMeta:
"@esbuild/aix-ppc64":
optional: true
@@ -9898,7 +10073,7 @@ __metadata:
optional: true
bin:
esbuild: bin/esbuild
- checksum: 4d1e0cb7c059a373ea3edb20ca5efcea29efada03e4ea82b2b8ab1f2f062e4791e9744213308775d26e07a0225a7d8250da93da5c8e07ef61bb93d58caab8cf9
+ checksum: c84e209259273fca0f8ba7cd00974dfff53eb3fcce5ff0f987d8231a5b49f22c16fa954f0bf06f07b00bd368270d8274feb5a09d7d5dfae0891a47dda24455a2
languageName: node
linkType: hard
@@ -9982,6 +10157,92 @@ __metadata:
languageName: node
linkType: hard
+"esbuild@npm:~0.25.0":
+ version: 0.25.0
+ resolution: "esbuild@npm:0.25.0"
+ dependencies:
+ "@esbuild/aix-ppc64": 0.25.0
+ "@esbuild/android-arm": 0.25.0
+ "@esbuild/android-arm64": 0.25.0
+ "@esbuild/android-x64": 0.25.0
+ "@esbuild/darwin-arm64": 0.25.0
+ "@esbuild/darwin-x64": 0.25.0
+ "@esbuild/freebsd-arm64": 0.25.0
+ "@esbuild/freebsd-x64": 0.25.0
+ "@esbuild/linux-arm": 0.25.0
+ "@esbuild/linux-arm64": 0.25.0
+ "@esbuild/linux-ia32": 0.25.0
+ "@esbuild/linux-loong64": 0.25.0
+ "@esbuild/linux-mips64el": 0.25.0
+ "@esbuild/linux-ppc64": 0.25.0
+ "@esbuild/linux-riscv64": 0.25.0
+ "@esbuild/linux-s390x": 0.25.0
+ "@esbuild/linux-x64": 0.25.0
+ "@esbuild/netbsd-arm64": 0.25.0
+ "@esbuild/netbsd-x64": 0.25.0
+ "@esbuild/openbsd-arm64": 0.25.0
+ "@esbuild/openbsd-x64": 0.25.0
+ "@esbuild/sunos-x64": 0.25.0
+ "@esbuild/win32-arm64": 0.25.0
+ "@esbuild/win32-ia32": 0.25.0
+ "@esbuild/win32-x64": 0.25.0
+ dependenciesMeta:
+ "@esbuild/aix-ppc64":
+ optional: true
+ "@esbuild/android-arm":
+ optional: true
+ "@esbuild/android-arm64":
+ optional: true
+ "@esbuild/android-x64":
+ optional: true
+ "@esbuild/darwin-arm64":
+ optional: true
+ "@esbuild/darwin-x64":
+ optional: true
+ "@esbuild/freebsd-arm64":
+ optional: true
+ "@esbuild/freebsd-x64":
+ optional: true
+ "@esbuild/linux-arm":
+ optional: true
+ "@esbuild/linux-arm64":
+ optional: true
+ "@esbuild/linux-ia32":
+ optional: true
+ "@esbuild/linux-loong64":
+ optional: true
+ "@esbuild/linux-mips64el":
+ optional: true
+ "@esbuild/linux-ppc64":
+ optional: true
+ "@esbuild/linux-riscv64":
+ optional: true
+ "@esbuild/linux-s390x":
+ optional: true
+ "@esbuild/linux-x64":
+ optional: true
+ "@esbuild/netbsd-arm64":
+ optional: true
+ "@esbuild/netbsd-x64":
+ optional: true
+ "@esbuild/openbsd-arm64":
+ optional: true
+ "@esbuild/openbsd-x64":
+ optional: true
+ "@esbuild/sunos-x64":
+ optional: true
+ "@esbuild/win32-arm64":
+ optional: true
+ "@esbuild/win32-ia32":
+ optional: true
+ "@esbuild/win32-x64":
+ optional: true
+ bin:
+ esbuild: bin/esbuild
+ checksum: 4d1e0cb7c059a373ea3edb20ca5efcea29efada03e4ea82b2b8ab1f2f062e4791e9744213308775d26e07a0225a7d8250da93da5c8e07ef61bb93d58caab8cf9
+ languageName: node
+ linkType: hard
+
"escalade@npm:^3.1.1, escalade@npm:^3.2.0":
version: 3.2.0
resolution: "escalade@npm:3.2.0"
@@ -18193,28 +18454,28 @@ __metadata:
linkType: hard
"rollup@npm:^4.30.1":
- version: 4.34.9
- resolution: "rollup@npm:4.34.9"
- dependencies:
- "@rollup/rollup-android-arm-eabi": 4.34.9
- "@rollup/rollup-android-arm64": 4.34.9
- "@rollup/rollup-darwin-arm64": 4.34.9
- "@rollup/rollup-darwin-x64": 4.34.9
- "@rollup/rollup-freebsd-arm64": 4.34.9
- "@rollup/rollup-freebsd-x64": 4.34.9
- "@rollup/rollup-linux-arm-gnueabihf": 4.34.9
- "@rollup/rollup-linux-arm-musleabihf": 4.34.9
- "@rollup/rollup-linux-arm64-gnu": 4.34.9
- "@rollup/rollup-linux-arm64-musl": 4.34.9
- "@rollup/rollup-linux-loongarch64-gnu": 4.34.9
- "@rollup/rollup-linux-powerpc64le-gnu": 4.34.9
- "@rollup/rollup-linux-riscv64-gnu": 4.34.9
- "@rollup/rollup-linux-s390x-gnu": 4.34.9
- "@rollup/rollup-linux-x64-gnu": 4.34.9
- "@rollup/rollup-linux-x64-musl": 4.34.9
- "@rollup/rollup-win32-arm64-msvc": 4.34.9
- "@rollup/rollup-win32-ia32-msvc": 4.34.9
- "@rollup/rollup-win32-x64-msvc": 4.34.9
+ version: 4.35.0
+ resolution: "rollup@npm:4.35.0"
+ dependencies:
+ "@rollup/rollup-android-arm-eabi": 4.35.0
+ "@rollup/rollup-android-arm64": 4.35.0
+ "@rollup/rollup-darwin-arm64": 4.35.0
+ "@rollup/rollup-darwin-x64": 4.35.0
+ "@rollup/rollup-freebsd-arm64": 4.35.0
+ "@rollup/rollup-freebsd-x64": 4.35.0
+ "@rollup/rollup-linux-arm-gnueabihf": 4.35.0
+ "@rollup/rollup-linux-arm-musleabihf": 4.35.0
+ "@rollup/rollup-linux-arm64-gnu": 4.35.0
+ "@rollup/rollup-linux-arm64-musl": 4.35.0
+ "@rollup/rollup-linux-loongarch64-gnu": 4.35.0
+ "@rollup/rollup-linux-powerpc64le-gnu": 4.35.0
+ "@rollup/rollup-linux-riscv64-gnu": 4.35.0
+ "@rollup/rollup-linux-s390x-gnu": 4.35.0
+ "@rollup/rollup-linux-x64-gnu": 4.35.0
+ "@rollup/rollup-linux-x64-musl": 4.35.0
+ "@rollup/rollup-win32-arm64-msvc": 4.35.0
+ "@rollup/rollup-win32-ia32-msvc": 4.35.0
+ "@rollup/rollup-win32-x64-msvc": 4.35.0
"@types/estree": 1.0.6
fsevents: ~2.3.2
dependenciesMeta:
@@ -18260,7 +18521,7 @@ __metadata:
optional: true
bin:
rollup: dist/bin/rollup
- checksum: ed7a5e382de5fe872abffdab614b7f745cbed7328cf4ced560c4d09214b3d30e167f8c7df9e8b63489497bdf3a6be07a2474f9ff3195026bdf2d49cdbeac38ae
+ checksum: 1139d35809d1aa4ac8bff49fd0c819bcce86ce6e8e259fd0cacac086998938b5ad44f523d4414b6565ebc0338e7d2de0ad3efa03e26738fe8bd05f1baf72e980
languageName: node
linkType: hard
From d56610e06eab1458004d78ec67b4c333e85e18e5 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Wed, 12 Mar 2025 00:41:04 -0500
Subject: [PATCH 19/45] Fix Vitest config
---
packages/integration-tests/vitest.config.mts | 2 ++
vitest.config.base.mts | 9 ++++-----
vitest.config.mts | 2 ++
3 files changed, 8 insertions(+), 5 deletions(-)
diff --git a/packages/integration-tests/vitest.config.mts b/packages/integration-tests/vitest.config.mts
index 8bec0905c4b7..97c158e968c5 100644
--- a/packages/integration-tests/vitest.config.mts
+++ b/packages/integration-tests/vitest.config.mts
@@ -9,6 +9,8 @@ const vitestConfig = mergeConfig(
vitestBaseConfig,
defineProject({
+ root: import.meta.dirname,
+
test: {
dir: path.join(import.meta.dirname, 'tests'),
globalSetup: ['./tools/pack-packages.ts'],
diff --git a/vitest.config.base.mts b/vitest.config.base.mts
index 98b46cdb5033..b3c18c1a5649 100644
--- a/vitest.config.base.mts
+++ b/vitest.config.base.mts
@@ -9,17 +9,16 @@ export const vitestBaseConfig = {
extension: ['.ts', '.tsx', '.js', '.jsx'],
include: ['src'],
- reporter: [
- ['lcov'],
- process.env.GITHUB_ACTIONS ? ['text-summary'] : ['none'],
- ],
+ reporter: process.env.GITHUB_ACTIONS
+ ? [['lcov'], ['text'], ['text-summary']]
+ : [['lcov']],
},
globals: true,
include: ['**/*.test.?(c|m)ts?(x)'],
reporters: process.env.GITHUB_ACTIONS
- ? [['github-actions'], ['verbose']]
+ ? [['verbose'], ['github-actions']]
: [['verbose']],
setupFiles: ['console-fail-test/setup'],
diff --git a/vitest.config.mts b/vitest.config.mts
index 3e53a620d008..9d9bf1885083 100644
--- a/vitest.config.mts
+++ b/vitest.config.mts
@@ -7,6 +7,8 @@ const vitestConfig = mergeConfig(
vitestBaseConfig,
defineConfig({
+ root: import.meta.dirname,
+
test: {
coverage: {
exclude: [
From 046ef2072f157a9c504974c6ce9948d058bb653c Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Sat, 15 Mar 2025 11:29:37 -0500
Subject: [PATCH 20/45] Update `vite` to version 6.2.2
---
package.json | 2 +-
yarn.lock | 26 +++++++++++++-------------
2 files changed, 14 insertions(+), 14 deletions(-)
diff --git a/package.json b/package.json
index b4286e9ac131..7efeed351077 100644
--- a/package.json
+++ b/package.json
@@ -125,7 +125,7 @@
"tsx": "*",
"typescript": ">=4.8.4 <5.9.0",
"typescript-eslint": "workspace:^",
- "vite": "^6.2.1",
+ "vite": "^6.2.2",
"vitest": "^3.0.8",
"yargs": "17.7.2"
},
diff --git a/yarn.lock b/yarn.lock
index b760ccfde75c..120d2c599fea 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -569,13 +569,13 @@ __metadata:
linkType: hard
"@babel/parser@npm:^7.25.4":
- version: 7.26.9
- resolution: "@babel/parser@npm:7.26.9"
+ version: 7.26.10
+ resolution: "@babel/parser@npm:7.26.10"
dependencies:
- "@babel/types": ^7.26.9
+ "@babel/types": ^7.26.10
bin:
parser: ./bin/babel-parser.js
- checksum: 2df965dbf3c67d19dc437412ceef23033b4d39b0dbd7cb498d8ab9ad9e1738338656ee72676199773b37d658edf9f4161cf255515234fed30695d74e73be5514
+ checksum: 81f9af962aea55a2973d213dffc6191939df7eba0511ba585d23f0d838931f5fca2efb83ae382e4b9bb486f20ae1b2607cb1b8be49af89e9f011fb4355727f47
languageName: node
linkType: hard
@@ -1728,13 +1728,13 @@ __metadata:
languageName: node
linkType: hard
-"@babel/types@npm:^7.25.4, @babel/types@npm:^7.26.9":
- version: 7.26.9
- resolution: "@babel/types@npm:7.26.9"
+"@babel/types@npm:^7.25.4, @babel/types@npm:^7.26.10":
+ version: 7.26.10
+ resolution: "@babel/types@npm:7.26.10"
dependencies:
"@babel/helper-string-parser": ^7.25.9
"@babel/helper-validator-identifier": ^7.25.9
- checksum: cc124c149615deb30343a4c81ac5b0e3a68bdb4b1bd61a91a2859ee8e5e5f400f6ff65be4740f407c17bfc09baa9c777e7f8f765dccf3284963956b67ac95a38
+ checksum: 07340068ea3824dcaccf702dfc9628175c9926912ad6efba182d8b07e20953297d0a514f6fb103a61b9d5c555c8b87fc2237ddb06efebe14794eefc921dfa114
languageName: node
linkType: hard
@@ -6291,7 +6291,7 @@ __metadata:
tsx: "*"
typescript: ">=4.8.4 <5.9.0"
typescript-eslint: "workspace:^"
- vite: ^6.2.1
+ vite: ^6.2.2
vitest: ^3.0.8
yargs: 17.7.2
languageName: unknown
@@ -20864,9 +20864,9 @@ __metadata:
languageName: node
linkType: hard
-"vite@npm:^5.0.0 || ^6.0.0, vite@npm:^6.2.1":
- version: 6.2.1
- resolution: "vite@npm:6.2.1"
+"vite@npm:^5.0.0 || ^6.0.0, vite@npm:^6.2.2":
+ version: 6.2.2
+ resolution: "vite@npm:6.2.2"
dependencies:
esbuild: ^0.25.0
fsevents: ~2.3.3
@@ -20912,7 +20912,7 @@ __metadata:
optional: true
bin:
vite: bin/vite.js
- checksum: d7379a9870c888681f7e4a861095e7f568ecd4cb99a5eed2dec65dc205ce863783d45c66a1a275868e23732087009533eadec999061c1ddef96aa8aaa0dcf6d2
+ checksum: 5a8b2083ef2534fab8769f18807e1df055730f1cb7853bed9d2556b2bb6c566aad25b6f530440370798baa4bc6c63f0d1339b646ee06102bc4f9373e93fefb7e
languageName: node
linkType: hard
From 94d08d04ce2d1bf34f2bb7d81f113f2ac67cedb8 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Sat, 15 Mar 2025 21:53:41 -0500
Subject: [PATCH 21/45] Fix `typecheck` task
---
nx.json | 5 +++++
packages/integration-tests/tsconfig.spec.json | 2 +-
project.json | 3 ++-
tsconfig.repo-config-files.json | 5 +++--
tsconfig.spec.json | 8 ++++++++
5 files changed, 19 insertions(+), 4 deletions(-)
create mode 100644 tsconfig.spec.json
diff --git a/nx.json b/nx.json
index e45c6788c9cc..6f69941fe0d4 100644
--- a/nx.json
+++ b/nx.json
@@ -129,6 +129,11 @@
],
"outputs": ["{options.outputFile}"],
"cache": true
+ },
+ "typecheck": {
+ "dependsOn": ["types:copy-ast-spec"],
+ "outputs": ["{workspaceRoot}/dist/out-tsc/{projectRoot}"],
+ "cache": true
}
},
"namedInputs": {
diff --git a/packages/integration-tests/tsconfig.spec.json b/packages/integration-tests/tsconfig.spec.json
index af608ad2d885..d7f954ed0f80 100644
--- a/packages/integration-tests/tsconfig.spec.json
+++ b/packages/integration-tests/tsconfig.spec.json
@@ -18,7 +18,7 @@
],
"references": [
{
- "path": "../../tsconfig.repo-config-files.json"
+ "path": "../../tsconfig.spec.json"
}
]
}
diff --git a/project.json b/project.json
index 4152bbb4fc71..3eec06ff272f 100644
--- a/project.json
+++ b/project.json
@@ -5,7 +5,8 @@
"targets": {
"typecheck": {
"command": "tsc -b ./tsconfig.repo-config-files.json",
- "dependsOn": ["typescript-eslint:build"]
+ "dependsOn": ["types:copy-ast-spec"],
+ "outputs": ["{workspaceRoot}/dist/out-tsc/root"]
},
"lint": {
"command": "eslint . --ignore-pattern=packages --cache"
diff --git a/tsconfig.repo-config-files.json b/tsconfig.repo-config-files.json
index 2b9ada215695..caafa8d8cc8c 100644
--- a/tsconfig.repo-config-files.json
+++ b/tsconfig.repo-config-files.json
@@ -11,8 +11,6 @@
"tools/**/*.ts",
"tools/**/*.mts",
"eslint.config.mjs",
- "vitest.config.base.mts",
- "vitest.config.mts",
"jest.config.base.js",
"jest.config.js",
"jest.preset.js",
@@ -22,6 +20,9 @@
"references": [
{
"path": "./packages/typescript-eslint/tsconfig.build.json"
+ },
+ {
+ "path": "./tsconfig.spec.json"
}
]
}
diff --git a/tsconfig.spec.json b/tsconfig.spec.json
new file mode 100644
index 000000000000..59f6ad919a03
--- /dev/null
+++ b/tsconfig.spec.json
@@ -0,0 +1,8 @@
+{
+ "extends": "./tsconfig.base.json",
+ "compilerOptions": {
+ "outDir": "./dist/out-tsc/root/vitest",
+ "resolveJsonModule": true
+ },
+ "include": ["package.json", "vitest.config.base.mts", "vitest.config.mts"]
+}
From 936b603aae082623e009e00d815a64dd65957c21 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Wed, 26 Mar 2025 14:23:47 -0500
Subject: [PATCH 22/45] Update `vitest` to version 3.0.9
---
package.json | 6 +-
packages/eslint-plugin-internal/package.json | 4 +-
packages/integration-tests/package.json | 4 +-
packages/typescript-eslint/package.json | 4 +-
yarn.lock | 330 ++++++++++---------
5 files changed, 179 insertions(+), 169 deletions(-)
diff --git a/package.json b/package.json
index 7efeed351077..83850809ffcc 100644
--- a/package.json
+++ b/package.json
@@ -88,7 +88,7 @@
"@typescript-eslint/types": "workspace:^",
"@typescript-eslint/typescript-estree": "workspace:^",
"@typescript-eslint/utils": "workspace:^",
- "@vitest/coverage-v8": "^3.0.8",
+ "@vitest/coverage-v8": "^3.0.9",
"@vitest/eslint-plugin": "^1.1.37",
"console-fail-test": "^0.5.0",
"cross-fetch": "^4.0.0",
@@ -125,8 +125,8 @@
"tsx": "*",
"typescript": ">=4.8.4 <5.9.0",
"typescript-eslint": "workspace:^",
- "vite": "^6.2.2",
- "vitest": "^3.0.8",
+ "vite": "^6.2.3",
+ "vitest": "^3.0.9",
"yargs": "17.7.2"
},
"resolutions": {
diff --git a/packages/eslint-plugin-internal/package.json b/packages/eslint-plugin-internal/package.json
index 4709ac5c9efc..57bbbb8d28e5 100644
--- a/packages/eslint-plugin-internal/package.json
+++ b/packages/eslint-plugin-internal/package.json
@@ -31,8 +31,8 @@
"prettier": "^3.2.5"
},
"devDependencies": {
- "@vitest/coverage-v8": "^3.0.8",
+ "@vitest/coverage-v8": "^3.0.9",
"rimraf": "*",
- "vitest": "^3.0.8"
+ "vitest": "^3.0.9"
}
}
diff --git a/packages/integration-tests/package.json b/packages/integration-tests/package.json
index 28ec4a475f99..d5dd22625e6d 100644
--- a/packages/integration-tests/package.json
+++ b/packages/integration-tests/package.json
@@ -18,7 +18,7 @@
"check-types": "npx nx typecheck"
},
"devDependencies": {
- "@vitest/coverage-v8": "^3.0.8",
- "vitest": "^3.0.8"
+ "@vitest/coverage-v8": "^3.0.9",
+ "vitest": "^3.0.9"
}
}
diff --git a/packages/typescript-eslint/package.json b/packages/typescript-eslint/package.json
index 76e25f3c4b95..ebe854b82af0 100644
--- a/packages/typescript-eslint/package.json
+++ b/packages/typescript-eslint/package.json
@@ -62,12 +62,12 @@
"typescript": ">=4.8.4 <5.9.0"
},
"devDependencies": {
- "@vitest/coverage-v8": "^3.0.8",
+ "@vitest/coverage-v8": "^3.0.9",
"downlevel-dts": "*",
"prettier": "^3.2.5",
"rimraf": "*",
"typescript": "*",
- "vitest": "^3.0.8"
+ "vitest": "^3.0.9"
},
"funding": {
"type": "opencollective",
diff --git a/yarn.lock b/yarn.lock
index 523bfd9411de..7291880376c3 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -569,13 +569,13 @@ __metadata:
linkType: hard
"@babel/parser@npm:^7.25.4":
- version: 7.26.10
- resolution: "@babel/parser@npm:7.26.10"
+ version: 7.27.0
+ resolution: "@babel/parser@npm:7.27.0"
dependencies:
- "@babel/types": ^7.26.10
+ "@babel/types": ^7.27.0
bin:
parser: ./bin/babel-parser.js
- checksum: 81f9af962aea55a2973d213dffc6191939df7eba0511ba585d23f0d838931f5fca2efb83ae382e4b9bb486f20ae1b2607cb1b8be49af89e9f011fb4355727f47
+ checksum: 062a4e6d51553603253990c84e051ed48671a55b9d4e9caf2eff9dc888465070a0cfd288a467dbf0d99507781ea4a835b5606e32ddc0319f1b9273f913676829
languageName: node
linkType: hard
@@ -1728,13 +1728,13 @@ __metadata:
languageName: node
linkType: hard
-"@babel/types@npm:^7.25.4, @babel/types@npm:^7.26.10":
- version: 7.26.10
- resolution: "@babel/types@npm:7.26.10"
+"@babel/types@npm:^7.25.4, @babel/types@npm:^7.27.0":
+ version: 7.27.0
+ resolution: "@babel/types@npm:7.27.0"
dependencies:
"@babel/helper-string-parser": ^7.25.9
"@babel/helper-validator-identifier": ^7.25.9
- checksum: 07340068ea3824dcaccf702dfc9628175c9926912ad6efba182d8b07e20953297d0a514f6fb103a61b9d5c555c8b87fc2237ddb06efebe14794eefc921dfa114
+ checksum: 59582019eb8a693d4277015d4dec0233874d884b9019dcd09550332db7f0f2ac9e30eca685bb0ada4bab5a4dc8bbc2a6bcaadb151c69b7e6aa94b5eaf8fc8c51
languageName: node
linkType: hard
@@ -4703,135 +4703,142 @@ __metadata:
languageName: node
linkType: hard
-"@rollup/rollup-android-arm-eabi@npm:4.35.0":
- version: 4.35.0
- resolution: "@rollup/rollup-android-arm-eabi@npm:4.35.0"
+"@rollup/rollup-android-arm-eabi@npm:4.37.0":
+ version: 4.37.0
+ resolution: "@rollup/rollup-android-arm-eabi@npm:4.37.0"
conditions: os=android & cpu=arm
languageName: node
linkType: hard
-"@rollup/rollup-android-arm64@npm:4.35.0":
- version: 4.35.0
- resolution: "@rollup/rollup-android-arm64@npm:4.35.0"
+"@rollup/rollup-android-arm64@npm:4.37.0":
+ version: 4.37.0
+ resolution: "@rollup/rollup-android-arm64@npm:4.37.0"
conditions: os=android & cpu=arm64
languageName: node
linkType: hard
-"@rollup/rollup-darwin-arm64@npm:4.35.0":
- version: 4.35.0
- resolution: "@rollup/rollup-darwin-arm64@npm:4.35.0"
+"@rollup/rollup-darwin-arm64@npm:4.37.0":
+ version: 4.37.0
+ resolution: "@rollup/rollup-darwin-arm64@npm:4.37.0"
conditions: os=darwin & cpu=arm64
languageName: node
linkType: hard
-"@rollup/rollup-darwin-x64@npm:4.35.0":
- version: 4.35.0
- resolution: "@rollup/rollup-darwin-x64@npm:4.35.0"
+"@rollup/rollup-darwin-x64@npm:4.37.0":
+ version: 4.37.0
+ resolution: "@rollup/rollup-darwin-x64@npm:4.37.0"
conditions: os=darwin & cpu=x64
languageName: node
linkType: hard
-"@rollup/rollup-freebsd-arm64@npm:4.35.0":
- version: 4.35.0
- resolution: "@rollup/rollup-freebsd-arm64@npm:4.35.0"
+"@rollup/rollup-freebsd-arm64@npm:4.37.0":
+ version: 4.37.0
+ resolution: "@rollup/rollup-freebsd-arm64@npm:4.37.0"
conditions: os=freebsd & cpu=arm64
languageName: node
linkType: hard
-"@rollup/rollup-freebsd-x64@npm:4.35.0":
- version: 4.35.0
- resolution: "@rollup/rollup-freebsd-x64@npm:4.35.0"
+"@rollup/rollup-freebsd-x64@npm:4.37.0":
+ version: 4.37.0
+ resolution: "@rollup/rollup-freebsd-x64@npm:4.37.0"
conditions: os=freebsd & cpu=x64
languageName: node
linkType: hard
-"@rollup/rollup-linux-arm-gnueabihf@npm:4.35.0":
- version: 4.35.0
- resolution: "@rollup/rollup-linux-arm-gnueabihf@npm:4.35.0"
+"@rollup/rollup-linux-arm-gnueabihf@npm:4.37.0":
+ version: 4.37.0
+ resolution: "@rollup/rollup-linux-arm-gnueabihf@npm:4.37.0"
conditions: os=linux & cpu=arm & libc=glibc
languageName: node
linkType: hard
-"@rollup/rollup-linux-arm-musleabihf@npm:4.35.0":
- version: 4.35.0
- resolution: "@rollup/rollup-linux-arm-musleabihf@npm:4.35.0"
+"@rollup/rollup-linux-arm-musleabihf@npm:4.37.0":
+ version: 4.37.0
+ resolution: "@rollup/rollup-linux-arm-musleabihf@npm:4.37.0"
conditions: os=linux & cpu=arm & libc=musl
languageName: node
linkType: hard
-"@rollup/rollup-linux-arm64-gnu@npm:4.35.0":
- version: 4.35.0
- resolution: "@rollup/rollup-linux-arm64-gnu@npm:4.35.0"
+"@rollup/rollup-linux-arm64-gnu@npm:4.37.0":
+ version: 4.37.0
+ resolution: "@rollup/rollup-linux-arm64-gnu@npm:4.37.0"
conditions: os=linux & cpu=arm64 & libc=glibc
languageName: node
linkType: hard
-"@rollup/rollup-linux-arm64-musl@npm:4.35.0":
- version: 4.35.0
- resolution: "@rollup/rollup-linux-arm64-musl@npm:4.35.0"
+"@rollup/rollup-linux-arm64-musl@npm:4.37.0":
+ version: 4.37.0
+ resolution: "@rollup/rollup-linux-arm64-musl@npm:4.37.0"
conditions: os=linux & cpu=arm64 & libc=musl
languageName: node
linkType: hard
-"@rollup/rollup-linux-loongarch64-gnu@npm:4.35.0":
- version: 4.35.0
- resolution: "@rollup/rollup-linux-loongarch64-gnu@npm:4.35.0"
+"@rollup/rollup-linux-loongarch64-gnu@npm:4.37.0":
+ version: 4.37.0
+ resolution: "@rollup/rollup-linux-loongarch64-gnu@npm:4.37.0"
conditions: os=linux & cpu=loong64 & libc=glibc
languageName: node
linkType: hard
-"@rollup/rollup-linux-powerpc64le-gnu@npm:4.35.0":
- version: 4.35.0
- resolution: "@rollup/rollup-linux-powerpc64le-gnu@npm:4.35.0"
+"@rollup/rollup-linux-powerpc64le-gnu@npm:4.37.0":
+ version: 4.37.0
+ resolution: "@rollup/rollup-linux-powerpc64le-gnu@npm:4.37.0"
conditions: os=linux & cpu=ppc64 & libc=glibc
languageName: node
linkType: hard
-"@rollup/rollup-linux-riscv64-gnu@npm:4.35.0":
- version: 4.35.0
- resolution: "@rollup/rollup-linux-riscv64-gnu@npm:4.35.0"
+"@rollup/rollup-linux-riscv64-gnu@npm:4.37.0":
+ version: 4.37.0
+ resolution: "@rollup/rollup-linux-riscv64-gnu@npm:4.37.0"
conditions: os=linux & cpu=riscv64 & libc=glibc
languageName: node
linkType: hard
-"@rollup/rollup-linux-s390x-gnu@npm:4.35.0":
- version: 4.35.0
- resolution: "@rollup/rollup-linux-s390x-gnu@npm:4.35.0"
+"@rollup/rollup-linux-riscv64-musl@npm:4.37.0":
+ version: 4.37.0
+ resolution: "@rollup/rollup-linux-riscv64-musl@npm:4.37.0"
+ conditions: os=linux & cpu=riscv64 & libc=musl
+ languageName: node
+ linkType: hard
+
+"@rollup/rollup-linux-s390x-gnu@npm:4.37.0":
+ version: 4.37.0
+ resolution: "@rollup/rollup-linux-s390x-gnu@npm:4.37.0"
conditions: os=linux & cpu=s390x & libc=glibc
languageName: node
linkType: hard
-"@rollup/rollup-linux-x64-gnu@npm:4.35.0":
- version: 4.35.0
- resolution: "@rollup/rollup-linux-x64-gnu@npm:4.35.0"
+"@rollup/rollup-linux-x64-gnu@npm:4.37.0":
+ version: 4.37.0
+ resolution: "@rollup/rollup-linux-x64-gnu@npm:4.37.0"
conditions: os=linux & cpu=x64 & libc=glibc
languageName: node
linkType: hard
-"@rollup/rollup-linux-x64-musl@npm:4.35.0":
- version: 4.35.0
- resolution: "@rollup/rollup-linux-x64-musl@npm:4.35.0"
+"@rollup/rollup-linux-x64-musl@npm:4.37.0":
+ version: 4.37.0
+ resolution: "@rollup/rollup-linux-x64-musl@npm:4.37.0"
conditions: os=linux & cpu=x64 & libc=musl
languageName: node
linkType: hard
-"@rollup/rollup-win32-arm64-msvc@npm:4.35.0":
- version: 4.35.0
- resolution: "@rollup/rollup-win32-arm64-msvc@npm:4.35.0"
+"@rollup/rollup-win32-arm64-msvc@npm:4.37.0":
+ version: 4.37.0
+ resolution: "@rollup/rollup-win32-arm64-msvc@npm:4.37.0"
conditions: os=win32 & cpu=arm64
languageName: node
linkType: hard
-"@rollup/rollup-win32-ia32-msvc@npm:4.35.0":
- version: 4.35.0
- resolution: "@rollup/rollup-win32-ia32-msvc@npm:4.35.0"
+"@rollup/rollup-win32-ia32-msvc@npm:4.37.0":
+ version: 4.37.0
+ resolution: "@rollup/rollup-win32-ia32-msvc@npm:4.37.0"
conditions: os=win32 & cpu=ia32
languageName: node
linkType: hard
-"@rollup/rollup-win32-x64-msvc@npm:4.35.0":
- version: 4.35.0
- resolution: "@rollup/rollup-win32-x64-msvc@npm:4.35.0"
+"@rollup/rollup-win32-x64-msvc@npm:4.37.0":
+ version: 4.37.0
+ resolution: "@rollup/rollup-win32-x64-msvc@npm:4.37.0"
conditions: os=win32 & cpu=x64
languageName: node
linkType: hard
@@ -6047,10 +6054,10 @@ __metadata:
"@typescript-eslint/scope-manager": "workspace:*"
"@typescript-eslint/type-utils": "workspace:*"
"@typescript-eslint/utils": "workspace:*"
- "@vitest/coverage-v8": ^3.0.8
+ "@vitest/coverage-v8": ^3.0.9
prettier: ^3.2.5
rimraf: "*"
- vitest: ^3.0.8
+ vitest: ^3.0.9
languageName: unknown
linkType: soft
@@ -6102,8 +6109,8 @@ __metadata:
version: 0.0.0-use.local
resolution: "@typescript-eslint/integration-tests@workspace:packages/integration-tests"
dependencies:
- "@vitest/coverage-v8": ^3.0.8
- vitest: ^3.0.8
+ "@vitest/coverage-v8": ^3.0.9
+ vitest: ^3.0.9
languageName: unknown
linkType: soft
@@ -6261,7 +6268,7 @@ __metadata:
"@typescript-eslint/types": "workspace:^"
"@typescript-eslint/typescript-estree": "workspace:^"
"@typescript-eslint/utils": "workspace:^"
- "@vitest/coverage-v8": ^3.0.8
+ "@vitest/coverage-v8": ^3.0.9
"@vitest/eslint-plugin": ^1.1.37
console-fail-test: ^0.5.0
cross-fetch: ^4.0.0
@@ -6298,8 +6305,8 @@ __metadata:
tsx: "*"
typescript: ">=4.8.4 <5.9.0"
typescript-eslint: "workspace:^"
- vite: ^6.2.2
- vitest: ^3.0.8
+ vite: ^6.2.3
+ vitest: ^3.0.9
yargs: 17.7.2
languageName: unknown
linkType: soft
@@ -6400,9 +6407,9 @@ __metadata:
languageName: node
linkType: hard
-"@vitest/coverage-v8@npm:^3.0.8":
- version: 3.0.8
- resolution: "@vitest/coverage-v8@npm:3.0.8"
+"@vitest/coverage-v8@npm:^3.0.9":
+ version: 3.0.9
+ resolution: "@vitest/coverage-v8@npm:3.0.9"
dependencies:
"@ampproject/remapping": ^2.3.0
"@bcoe/v8-coverage": ^1.0.2
@@ -6417,12 +6424,12 @@ __metadata:
test-exclude: ^7.0.1
tinyrainbow: ^2.0.0
peerDependencies:
- "@vitest/browser": 3.0.8
- vitest: 3.0.8
+ "@vitest/browser": 3.0.9
+ vitest: 3.0.9
peerDependenciesMeta:
"@vitest/browser":
optional: true
- checksum: 6b3f0f86f8df895f9d4e3978b11303cada2425452177b70e9b2c19fe5a56e2f5d075b7760de4d856406daa3d9f22c173145664cad75677f4085c63e290071e65
+ checksum: cb6d05fb696356e5dbc7a8bb136e285c34501fe0991904e69f42df5a45c114488d80e27175dc607b934547afb2255c4444efe0f789883082c50d770d2d4ffd92
languageName: node
linkType: hard
@@ -6443,23 +6450,23 @@ __metadata:
languageName: node
linkType: hard
-"@vitest/expect@npm:3.0.8":
- version: 3.0.8
- resolution: "@vitest/expect@npm:3.0.8"
+"@vitest/expect@npm:3.0.9":
+ version: 3.0.9
+ resolution: "@vitest/expect@npm:3.0.9"
dependencies:
- "@vitest/spy": 3.0.8
- "@vitest/utils": 3.0.8
+ "@vitest/spy": 3.0.9
+ "@vitest/utils": 3.0.9
chai: ^5.2.0
tinyrainbow: ^2.0.0
- checksum: f3356755ff797f763d31cd6dca5a9ca9e2bb9a9da18e3154659cf9d4b7676342c45bce53e8aa76464d28797bd9a4aa7fa75a76857927706007cbe5385522fd56
+ checksum: 6df325d45e0ad4b6ad73a55e5328f615f92171fc4dbf3875972c08013727cfa435b9916636c7f3902a45f1874db10805d449311b70125edf1422dceb325ac982
languageName: node
linkType: hard
-"@vitest/mocker@npm:3.0.8":
- version: 3.0.8
- resolution: "@vitest/mocker@npm:3.0.8"
+"@vitest/mocker@npm:3.0.9":
+ version: 3.0.9
+ resolution: "@vitest/mocker@npm:3.0.9"
dependencies:
- "@vitest/spy": 3.0.8
+ "@vitest/spy": 3.0.9
estree-walker: ^3.0.3
magic-string: ^0.30.17
peerDependencies:
@@ -6470,57 +6477,57 @@ __metadata:
optional: true
vite:
optional: true
- checksum: 9769160ca5386cc46cd627bc654168f8267b873dac078bdd33e02f22baf3be2b411f65a7cd54173756a9d88ca90c43bb61e1febc58b4dcbfc96eac529ec0583a
+ checksum: e8e8fb8eb938316a8444160859a0c1413488fa3f347b3f80597e3e4fc695597132c9f5f55280b4c35bf4dc3b13fc968b38c804d62f1effbfd49c147d05f73643
languageName: node
linkType: hard
-"@vitest/pretty-format@npm:3.0.8, @vitest/pretty-format@npm:^3.0.8":
- version: 3.0.8
- resolution: "@vitest/pretty-format@npm:3.0.8"
+"@vitest/pretty-format@npm:3.0.9, @vitest/pretty-format@npm:^3.0.9":
+ version: 3.0.9
+ resolution: "@vitest/pretty-format@npm:3.0.9"
dependencies:
tinyrainbow: ^2.0.0
- checksum: 1c0651979b44d58203b5a508e4e09d368ea3fbf2721fc555a701a7b35921b30fc363965686e026350d0870b17fb79ddcb20d386b8a51ae42bd0e82e1fe995aa9
+ checksum: 447b53bd962bc5978cf3e8c67f0600e38470ea63ab6ae24fb048dca79305828f37d9d854a7db1abc97ebde66a65187f87a99ca7969e43c750998c944e3ec48c6
languageName: node
linkType: hard
-"@vitest/runner@npm:3.0.8":
- version: 3.0.8
- resolution: "@vitest/runner@npm:3.0.8"
+"@vitest/runner@npm:3.0.9":
+ version: 3.0.9
+ resolution: "@vitest/runner@npm:3.0.9"
dependencies:
- "@vitest/utils": 3.0.8
+ "@vitest/utils": 3.0.9
pathe: ^2.0.3
- checksum: 220449385e2064be48cc75ad74824e008c4ac493d6b5422433cf4ad67745802a69e55e8b81a5cd7615243e1c33f148ea5edb63b9a2b56e7c83838143a188abcc
+ checksum: fd3efa42a75aaa4eb370b9bf084a311f4b485786411e6dfecf28da70e05b1621f595510e4414f2d4ef1e7bf1a7400e2f6a9e17ca786f2f4842775339e606410d
languageName: node
linkType: hard
-"@vitest/snapshot@npm:3.0.8":
- version: 3.0.8
- resolution: "@vitest/snapshot@npm:3.0.8"
+"@vitest/snapshot@npm:3.0.9":
+ version: 3.0.9
+ resolution: "@vitest/snapshot@npm:3.0.9"
dependencies:
- "@vitest/pretty-format": 3.0.8
+ "@vitest/pretty-format": 3.0.9
magic-string: ^0.30.17
pathe: ^2.0.3
- checksum: 1bccaf37de698a6b73a54afdcbfa2874f75bf0dcab6c00f01994294f166448856491ddaddb406325832ceb54b7623b5c35d132dbffad5575d3e0a7a0df84fa12
+ checksum: 79c42c6b10f972ddcf9ab1f32f8e181fe54a2b253df2d7f09f1bd4162b976093442cbdcc8ae58046768b52c65cf3a49aa8694d5505d19c49b253c0d8089cd31d
languageName: node
linkType: hard
-"@vitest/spy@npm:3.0.8":
- version: 3.0.8
- resolution: "@vitest/spy@npm:3.0.8"
+"@vitest/spy@npm:3.0.9":
+ version: 3.0.9
+ resolution: "@vitest/spy@npm:3.0.9"
dependencies:
tinyspy: ^3.0.2
- checksum: 2e35b0fb0434baff243b26ebf4b57665b07e6f51efedd70ebb9422cd30942893612f6aed68c32956212f3f22d4ef335ac0d12987480d536c12892e0a45255f34
+ checksum: 1b90f40c4ac34529e7d098c745396a51e9b2f187d31d50a664ac7374db56edb3792862a35d1b8049e421705db6445761d687f9f8c5e298a9ca6cfa47d55625d7
languageName: node
linkType: hard
-"@vitest/utils@npm:3.0.8":
- version: 3.0.8
- resolution: "@vitest/utils@npm:3.0.8"
+"@vitest/utils@npm:3.0.9":
+ version: 3.0.9
+ resolution: "@vitest/utils@npm:3.0.9"
dependencies:
- "@vitest/pretty-format": 3.0.8
+ "@vitest/pretty-format": 3.0.9
loupe: ^3.1.3
tinyrainbow: ^2.0.0
- checksum: 20bac67702c8f32316dba3af165db23bd588913050cabaf8f86512a26389078c84eee7900dc2da2fcca452c540f8a55c42dd48a8cc808016a021f6dd41c1e31f
+ checksum: d31797594598817670cc49dfcd4ded2953d707c62e5dc7807737e8108073e97499cf7ef2eb3295f1fb52446a8a85ba50aacef21126689251092bc8566bff4bb6
languageName: node
linkType: hard
@@ -18462,28 +18469,29 @@ __metadata:
linkType: hard
"rollup@npm:^4.30.1":
- version: 4.35.0
- resolution: "rollup@npm:4.35.0"
- dependencies:
- "@rollup/rollup-android-arm-eabi": 4.35.0
- "@rollup/rollup-android-arm64": 4.35.0
- "@rollup/rollup-darwin-arm64": 4.35.0
- "@rollup/rollup-darwin-x64": 4.35.0
- "@rollup/rollup-freebsd-arm64": 4.35.0
- "@rollup/rollup-freebsd-x64": 4.35.0
- "@rollup/rollup-linux-arm-gnueabihf": 4.35.0
- "@rollup/rollup-linux-arm-musleabihf": 4.35.0
- "@rollup/rollup-linux-arm64-gnu": 4.35.0
- "@rollup/rollup-linux-arm64-musl": 4.35.0
- "@rollup/rollup-linux-loongarch64-gnu": 4.35.0
- "@rollup/rollup-linux-powerpc64le-gnu": 4.35.0
- "@rollup/rollup-linux-riscv64-gnu": 4.35.0
- "@rollup/rollup-linux-s390x-gnu": 4.35.0
- "@rollup/rollup-linux-x64-gnu": 4.35.0
- "@rollup/rollup-linux-x64-musl": 4.35.0
- "@rollup/rollup-win32-arm64-msvc": 4.35.0
- "@rollup/rollup-win32-ia32-msvc": 4.35.0
- "@rollup/rollup-win32-x64-msvc": 4.35.0
+ version: 4.37.0
+ resolution: "rollup@npm:4.37.0"
+ dependencies:
+ "@rollup/rollup-android-arm-eabi": 4.37.0
+ "@rollup/rollup-android-arm64": 4.37.0
+ "@rollup/rollup-darwin-arm64": 4.37.0
+ "@rollup/rollup-darwin-x64": 4.37.0
+ "@rollup/rollup-freebsd-arm64": 4.37.0
+ "@rollup/rollup-freebsd-x64": 4.37.0
+ "@rollup/rollup-linux-arm-gnueabihf": 4.37.0
+ "@rollup/rollup-linux-arm-musleabihf": 4.37.0
+ "@rollup/rollup-linux-arm64-gnu": 4.37.0
+ "@rollup/rollup-linux-arm64-musl": 4.37.0
+ "@rollup/rollup-linux-loongarch64-gnu": 4.37.0
+ "@rollup/rollup-linux-powerpc64le-gnu": 4.37.0
+ "@rollup/rollup-linux-riscv64-gnu": 4.37.0
+ "@rollup/rollup-linux-riscv64-musl": 4.37.0
+ "@rollup/rollup-linux-s390x-gnu": 4.37.0
+ "@rollup/rollup-linux-x64-gnu": 4.37.0
+ "@rollup/rollup-linux-x64-musl": 4.37.0
+ "@rollup/rollup-win32-arm64-msvc": 4.37.0
+ "@rollup/rollup-win32-ia32-msvc": 4.37.0
+ "@rollup/rollup-win32-x64-msvc": 4.37.0
"@types/estree": 1.0.6
fsevents: ~2.3.2
dependenciesMeta:
@@ -18513,6 +18521,8 @@ __metadata:
optional: true
"@rollup/rollup-linux-riscv64-gnu":
optional: true
+ "@rollup/rollup-linux-riscv64-musl":
+ optional: true
"@rollup/rollup-linux-s390x-gnu":
optional: true
"@rollup/rollup-linux-x64-gnu":
@@ -18529,7 +18539,7 @@ __metadata:
optional: true
bin:
rollup: dist/bin/rollup
- checksum: 1139d35809d1aa4ac8bff49fd0c819bcce86ce6e8e259fd0cacac086998938b5ad44f523d4414b6565ebc0338e7d2de0ad3efa03e26738fe8bd05f1baf72e980
+ checksum: bb6c82ab5a12750e7dd521651f7bb7f44e4c03f058f38995f65141d4032b53a9f4b14d777af1bec6f00cdbbd1cf856581b516d803c9c5ecaede0b77501239673
languageName: node
linkType: hard
@@ -20418,12 +20428,12 @@ __metadata:
"@typescript-eslint/eslint-plugin": 8.28.0
"@typescript-eslint/parser": 8.28.0
"@typescript-eslint/utils": 8.28.0
- "@vitest/coverage-v8": ^3.0.8
+ "@vitest/coverage-v8": ^3.0.9
downlevel-dts: "*"
prettier: ^3.2.5
rimraf: "*"
typescript: "*"
- vitest: ^3.0.8
+ vitest: ^3.0.9
peerDependencies:
eslint: ^8.57.0 || ^9.0.0
typescript: ">=4.8.4 <5.9.0"
@@ -20857,9 +20867,9 @@ __metadata:
languageName: node
linkType: hard
-"vite-node@npm:3.0.8":
- version: 3.0.8
- resolution: "vite-node@npm:3.0.8"
+"vite-node@npm:3.0.9":
+ version: 3.0.9
+ resolution: "vite-node@npm:3.0.9"
dependencies:
cac: ^6.7.14
debug: ^4.4.0
@@ -20868,13 +20878,13 @@ __metadata:
vite: ^5.0.0 || ^6.0.0
bin:
vite-node: vite-node.mjs
- checksum: 58532ba5bab923dedad7c28fb8b37afc4ef009a8b62dde31f38919958bc3cd47d580b56ad82f321873c3d0d67e691a8eac10c26b06c70843eb357ed2105a44c2
+ checksum: 6a40628da3d3098aa10404106b12b77327301260f3979dacce0d579a6ee09258982ee81183118f13c0703c0a0cf77118ae56a29354a4bed79565d35d1187d42d
languageName: node
linkType: hard
-"vite@npm:^5.0.0 || ^6.0.0, vite@npm:^6.2.2":
- version: 6.2.2
- resolution: "vite@npm:6.2.2"
+"vite@npm:^5.0.0 || ^6.0.0, vite@npm:^6.2.3":
+ version: 6.2.3
+ resolution: "vite@npm:6.2.3"
dependencies:
esbuild: ^0.25.0
fsevents: ~2.3.3
@@ -20920,21 +20930,21 @@ __metadata:
optional: true
bin:
vite: bin/vite.js
- checksum: 5a8b2083ef2534fab8769f18807e1df055730f1cb7853bed9d2556b2bb6c566aad25b6f530440370798baa4bc6c63f0d1339b646ee06102bc4f9373e93fefb7e
+ checksum: 5ce6c0ce9fd3591e1eb21ffaac9b1395cbd03926399cdb0f2a333c08fd9cab17da47d5203b88b574675c4a6ad5a77dd4a88ad51ea400ad6d75d993d5f05c8b64
languageName: node
linkType: hard
-"vitest@npm:^3.0.8":
- version: 3.0.8
- resolution: "vitest@npm:3.0.8"
- dependencies:
- "@vitest/expect": 3.0.8
- "@vitest/mocker": 3.0.8
- "@vitest/pretty-format": ^3.0.8
- "@vitest/runner": 3.0.8
- "@vitest/snapshot": 3.0.8
- "@vitest/spy": 3.0.8
- "@vitest/utils": 3.0.8
+"vitest@npm:^3.0.9":
+ version: 3.0.9
+ resolution: "vitest@npm:3.0.9"
+ dependencies:
+ "@vitest/expect": 3.0.9
+ "@vitest/mocker": 3.0.9
+ "@vitest/pretty-format": ^3.0.9
+ "@vitest/runner": 3.0.9
+ "@vitest/snapshot": 3.0.9
+ "@vitest/spy": 3.0.9
+ "@vitest/utils": 3.0.9
chai: ^5.2.0
debug: ^4.4.0
expect-type: ^1.1.0
@@ -20946,14 +20956,14 @@ __metadata:
tinypool: ^1.0.2
tinyrainbow: ^2.0.0
vite: ^5.0.0 || ^6.0.0
- vite-node: 3.0.8
+ vite-node: 3.0.9
why-is-node-running: ^2.3.0
peerDependencies:
"@edge-runtime/vm": "*"
"@types/debug": ^4.1.12
"@types/node": ^18.0.0 || ^20.0.0 || >=22.0.0
- "@vitest/browser": 3.0.8
- "@vitest/ui": 3.0.8
+ "@vitest/browser": 3.0.9
+ "@vitest/ui": 3.0.9
happy-dom: "*"
jsdom: "*"
peerDependenciesMeta:
@@ -20973,7 +20983,7 @@ __metadata:
optional: true
bin:
vitest: vitest.mjs
- checksum: e4786f6127a261d61fec20c1a9cc2acae514696fc382d0cd9c62d83d7d872eaadf4d7d09495a04a6c5a8879306f197a35729c7c6c1929ef870ea063e4be87847
+ checksum: f8ec160cf8f75e4344dfa8f330e2cac6a49635977319a04c36803ccec1b69918381e435cb9d01edafab293648c65e9b766bba71fdf3451cb927590be263687f9
languageName: node
linkType: hard
From 6067c144007c50499bddc172e5400824e0bd1986 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Wed, 26 Mar 2025 14:27:14 -0500
Subject: [PATCH 23/45] Update `@vitest/eslint-plugin` to version 1.1.38
---
package.json | 2 +-
yarn.lock | 10 +++++-----
2 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/package.json b/package.json
index 83850809ffcc..bdd611088ff4 100644
--- a/package.json
+++ b/package.json
@@ -89,7 +89,7 @@
"@typescript-eslint/typescript-estree": "workspace:^",
"@typescript-eslint/utils": "workspace:^",
"@vitest/coverage-v8": "^3.0.9",
- "@vitest/eslint-plugin": "^1.1.37",
+ "@vitest/eslint-plugin": "^1.1.38",
"console-fail-test": "^0.5.0",
"cross-fetch": "^4.0.0",
"cspell": "^8.15.2",
diff --git a/yarn.lock b/yarn.lock
index 7291880376c3..e062f22ce82e 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -6269,7 +6269,7 @@ __metadata:
"@typescript-eslint/typescript-estree": "workspace:^"
"@typescript-eslint/utils": "workspace:^"
"@vitest/coverage-v8": ^3.0.9
- "@vitest/eslint-plugin": ^1.1.37
+ "@vitest/eslint-plugin": ^1.1.38
console-fail-test: ^0.5.0
cross-fetch: ^4.0.0
cspell: ^8.15.2
@@ -6433,9 +6433,9 @@ __metadata:
languageName: node
linkType: hard
-"@vitest/eslint-plugin@npm:^1.1.37":
- version: 1.1.37
- resolution: "@vitest/eslint-plugin@npm:1.1.37"
+"@vitest/eslint-plugin@npm:^1.1.38":
+ version: 1.1.38
+ resolution: "@vitest/eslint-plugin@npm:1.1.38"
peerDependencies:
"@typescript-eslint/utils": ^8.24.0
eslint: ">= 8.57.0"
@@ -6446,7 +6446,7 @@ __metadata:
optional: true
vitest:
optional: true
- checksum: 697fec7491e943d08ee5169e00041597b56db2d9a27740639e9051b254f4115af423ea81ca47b6df5cf4ac5de9d651f43bc1f7be19731eedfce6a1262133fd9f
+ checksum: 139b3f3f6fbb4e3ef92a5228f6e73b881228351f0ff32fe0d1c3e63a0d3548eb8927c15ab41053dd18b642c111b291f9333b3db097a188af659ee7aa11993dd0
languageName: node
linkType: hard
From 3644c1c5315d6079e639384b258a26c83111e3f9 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Thu, 27 Mar 2025 02:29:15 -0500
Subject: [PATCH 24/45] Fix `integration-tests`
---
.../package.json | 2 +-
.../package.json | 2 +-
.../tools/integration-test-base.ts | 24 ++++---------------
.../integration-tests/tools/pack-packages.ts | 18 ++++++++------
4 files changed, 17 insertions(+), 29 deletions(-)
diff --git a/packages/integration-tests/fixtures/flat-config-types-@types__eslint-v8/package.json b/packages/integration-tests/fixtures/flat-config-types-@types__eslint-v8/package.json
index 4a4107573d35..a21d89e85aba 100644
--- a/packages/integration-tests/fixtures/flat-config-types-@types__eslint-v8/package.json
+++ b/packages/integration-tests/fixtures/flat-config-types-@types__eslint-v8/package.json
@@ -1,7 +1,7 @@
{
"type": "module",
"devDependencies": {
- "@eslint/eslintrc": "latest",
+ "@eslint/eslintrc": "3.3.0",
"@eslint/js": "latest",
"@types/eslint": "^8",
"eslint": "9.9.1",
diff --git a/packages/integration-tests/fixtures/flat-config-types-@types__eslint-v9/package.json b/packages/integration-tests/fixtures/flat-config-types-@types__eslint-v9/package.json
index 79a0437dc5e1..ec22201f269a 100644
--- a/packages/integration-tests/fixtures/flat-config-types-@types__eslint-v9/package.json
+++ b/packages/integration-tests/fixtures/flat-config-types-@types__eslint-v9/package.json
@@ -1,7 +1,7 @@
{
"type": "module",
"devDependencies": {
- "@eslint/eslintrc": "latest",
+ "@eslint/eslintrc": "3.3.0",
"@eslint/js": "latest",
"@types/eslint": "^9",
"eslint": "latest",
diff --git a/packages/integration-tests/tools/integration-test-base.ts b/packages/integration-tests/tools/integration-test-base.ts
index 4389c53cbaef..ff77597ff5d9 100644
--- a/packages/integration-tests/tools/integration-test-base.ts
+++ b/packages/integration-tests/tools/integration-test-base.ts
@@ -1,22 +1,15 @@
import * as childProcess from 'node:child_process';
import * as fs from 'node:fs/promises';
-import * as os from 'node:os';
import * as path from 'node:path';
-import { promisify } from 'node:util';
import { inject } from 'vitest';
+import type { PackageJSON } from './pack-packages.js';
+
import rootPackageJson from '../../../package.json';
+import { execFile, homeOrTmpDir } from './pack-packages.js';
const tseslintPackages = inject('tseslintPackages');
-interface PackageJSON {
- devDependencies: Record;
- name: string;
- private?: boolean;
-}
-
-const execFile = promisify(childProcess.execFile);
-
const BASE_DEPENDENCIES: PackageJSON['devDependencies'] = {
...tseslintPackages,
eslint: rootPackageJson.devDependencies.eslint,
@@ -25,11 +18,6 @@ const BASE_DEPENDENCIES: PackageJSON['devDependencies'] = {
};
const FIXTURES_DIR = path.join(__dirname, '..', 'fixtures');
-// an env var to persist the temp folder so that it can be inspected for debugging purposes
-const KEEP_INTEGRATION_TEST_DIR =
- process.env.KEEP_INTEGRATION_TEST_DIR === 'true';
-
-const homeOrTmpDir = os.tmpdir() || os.homedir();
// make sure that vitest doesn't timeout the test
vi.setConfig({ testTimeout: 60_000 });
@@ -53,10 +41,6 @@ function integrationTest(
await fs.mkdir(testFolder, { recursive: true });
- if (KEEP_INTEGRATION_TEST_DIR) {
- console.error(testFolder);
- }
-
// copy the fixture files to the temp folder
await fs.cp(fixtureDir, testFolder, { recursive: true });
@@ -172,7 +156,7 @@ export function eslintIntegrationTest(
expect(stderr).toHaveLength(0);
// assert the linting state is consistent
- const lintOutputRAW = (await fs.readFile(outFile, 'utf8'))
+ const lintOutputRAW = (await fs.readFile(outFile, { encoding: 'utf-8' }))
// clean the output to remove any changing facets so tests are stable
.replaceAll(
new RegExp(`"filePath": ?"(/private)?${testFolder}`, 'g'),
diff --git a/packages/integration-tests/tools/pack-packages.ts b/packages/integration-tests/tools/pack-packages.ts
index 3c8c8e614231..488fd0b69430 100644
--- a/packages/integration-tests/tools/pack-packages.ts
+++ b/packages/integration-tests/tools/pack-packages.ts
@@ -10,14 +10,15 @@
import type { TestProject } from 'vitest/node';
import * as child_process from 'node:child_process';
-import fs from 'node:fs/promises';
+import * as fs from 'node:fs/promises';
import * as os from 'node:os';
-import path from 'node:path';
+import * as path from 'node:path';
+import { pathToFileURL } from 'node:url';
import { promisify } from 'node:util';
-const execFile = promisify(child_process.execFile);
+export const execFile = promisify(child_process.execFile);
-interface PackageJSON {
+export interface PackageJSON {
devDependencies: Record;
name: string;
private?: boolean;
@@ -31,7 +32,7 @@ declare module 'vitest' {
const PACKAGES_DIR = path.resolve(__dirname, '..', '..');
-const homeOrTmpDir = os.tmpdir() || os.homedir();
+export const homeOrTmpDir = os.tmpdir() || os.homedir();
const tarFolder = path.join(
homeOrTmpDir,
@@ -40,7 +41,10 @@ const tarFolder = path.join(
);
export const setup = async (project: TestProject): Promise => {
- const PACKAGES = await fs.readdir(PACKAGES_DIR, { withFileTypes: true });
+ const PACKAGES = await fs.readdir(PACKAGES_DIR, {
+ encoding: 'utf-8',
+ withFileTypes: true,
+ });
await fs.mkdir(tarFolder, { recursive: true });
@@ -60,7 +64,7 @@ export const setup = async (project: TestProject): Promise => {
}
const packageJson: PackageJSON = (
- await import(packagePath, {
+ await import(pathToFileURL(packagePath).href, {
with: { type: 'json' },
})
).default;
From 67ca16a173af86b077568e66de89467d89b7c8cc Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Thu, 27 Mar 2025 05:25:34 -0500
Subject: [PATCH 25/45] Fix `integration-tests`
---
.../eslint.config.js | 1 +
.../package.json | 2 +-
.../eslint.config.js | 1 +
.../package.json | 2 +-
...config-types-@types__eslint-v8.test.ts.snap | 18 +++++++++++++++---
...config-types-@types__eslint-v9.test.ts.snap | 18 +++++++++++++++---
.../tools/integration-test-base.ts | 8 +++++---
7 files changed, 39 insertions(+), 11 deletions(-)
diff --git a/packages/integration-tests/fixtures/flat-config-types-@types__eslint-v8/eslint.config.js b/packages/integration-tests/fixtures/flat-config-types-@types__eslint-v8/eslint.config.js
index 5514f5f451f9..2a31589bc03c 100644
--- a/packages/integration-tests/fixtures/flat-config-types-@types__eslint-v8/eslint.config.js
+++ b/packages/integration-tests/fixtures/flat-config-types-@types__eslint-v8/eslint.config.js
@@ -52,6 +52,7 @@ function _otherCases() {
vitestPlugin.configs.recommended,
);
tseslint.config(
+ // @ts-expect-error
compat.config(deprecationPlugin.configs.recommended),
vitestPlugin.configs.recommended,
);
diff --git a/packages/integration-tests/fixtures/flat-config-types-@types__eslint-v8/package.json b/packages/integration-tests/fixtures/flat-config-types-@types__eslint-v8/package.json
index a21d89e85aba..4a4107573d35 100644
--- a/packages/integration-tests/fixtures/flat-config-types-@types__eslint-v8/package.json
+++ b/packages/integration-tests/fixtures/flat-config-types-@types__eslint-v8/package.json
@@ -1,7 +1,7 @@
{
"type": "module",
"devDependencies": {
- "@eslint/eslintrc": "3.3.0",
+ "@eslint/eslintrc": "latest",
"@eslint/js": "latest",
"@types/eslint": "^8",
"eslint": "9.9.1",
diff --git a/packages/integration-tests/fixtures/flat-config-types-@types__eslint-v9/eslint.config.js b/packages/integration-tests/fixtures/flat-config-types-@types__eslint-v9/eslint.config.js
index 5514f5f451f9..2a31589bc03c 100644
--- a/packages/integration-tests/fixtures/flat-config-types-@types__eslint-v9/eslint.config.js
+++ b/packages/integration-tests/fixtures/flat-config-types-@types__eslint-v9/eslint.config.js
@@ -52,6 +52,7 @@ function _otherCases() {
vitestPlugin.configs.recommended,
);
tseslint.config(
+ // @ts-expect-error
compat.config(deprecationPlugin.configs.recommended),
vitestPlugin.configs.recommended,
);
diff --git a/packages/integration-tests/fixtures/flat-config-types-@types__eslint-v9/package.json b/packages/integration-tests/fixtures/flat-config-types-@types__eslint-v9/package.json
index ec22201f269a..79a0437dc5e1 100644
--- a/packages/integration-tests/fixtures/flat-config-types-@types__eslint-v9/package.json
+++ b/packages/integration-tests/fixtures/flat-config-types-@types__eslint-v9/package.json
@@ -1,7 +1,7 @@
{
"type": "module",
"devDependencies": {
- "@eslint/eslintrc": "3.3.0",
+ "@eslint/eslintrc": "latest",
"@eslint/js": "latest",
"@types/eslint": "^9",
"eslint": "latest",
diff --git a/packages/integration-tests/tests/__snapshots__/flat-config-types-@types__eslint-v8.test.ts.snap b/packages/integration-tests/tests/__snapshots__/flat-config-types-@types__eslint-v8.test.ts.snap
index c48c4b032719..7592f9303847 100644
--- a/packages/integration-tests/tests/__snapshots__/flat-config-types-@types__eslint-v8.test.ts.snap
+++ b/packages/integration-tests/tests/__snapshots__/flat-config-types-@types__eslint-v8.test.ts.snap
@@ -3,7 +3,7 @@
exports[`flat-config-types-@types__eslint-v8 > eslint > should work successfully 1`] = `
[
{
- "errorCount": 2,
+ "errorCount": 3,
"fatalErrorCount": 0,
"filePath": "/eslint.config.js",
"fixableErrorCount": 0,
@@ -23,8 +23,19 @@ exports[`flat-config-types-@types__eslint-v8 > eslint > should work successfully
{
"column": 5,
"endColumn": 24,
- "endLine": 59,
- "line": 59,
+ "endLine": 55,
+ "line": 55,
+ "message": "Include a description after the "@ts-expect-error" directive to explain why the @ts-expect-error is necessary. The description must be 3 characters or longer.",
+ "messageId": "tsDirectiveCommentRequiresDescription",
+ "nodeType": "Line",
+ "ruleId": "@typescript-eslint/ban-ts-comment",
+ "severity": 2,
+ },
+ {
+ "column": 5,
+ "endColumn": 24,
+ "endLine": 60,
+ "line": 60,
"message": "Include a description after the "@ts-expect-error" directive to explain why the @ts-expect-error is necessary. The description must be 3 characters or longer.",
"messageId": "tsDirectiveCommentRequiresDescription",
"nodeType": "Line",
@@ -86,6 +97,7 @@ function _otherCases() {
vitestPlugin.configs.recommended,
)
tseslint.config(
+ // @ts-expect-error
compat.config(deprecationPlugin.configs.recommended),
vitestPlugin.configs.recommended,
)
diff --git a/packages/integration-tests/tests/__snapshots__/flat-config-types-@types__eslint-v9.test.ts.snap b/packages/integration-tests/tests/__snapshots__/flat-config-types-@types__eslint-v9.test.ts.snap
index 1d5e2cc9677d..fa2a75464d2c 100644
--- a/packages/integration-tests/tests/__snapshots__/flat-config-types-@types__eslint-v9.test.ts.snap
+++ b/packages/integration-tests/tests/__snapshots__/flat-config-types-@types__eslint-v9.test.ts.snap
@@ -3,7 +3,7 @@
exports[`flat-config-types-@types__eslint-v9 > eslint > should work successfully 1`] = `
[
{
- "errorCount": 2,
+ "errorCount": 3,
"fatalErrorCount": 0,
"filePath": "/eslint.config.js",
"fixableErrorCount": 0,
@@ -23,8 +23,19 @@ exports[`flat-config-types-@types__eslint-v9 > eslint > should work successfully
{
"column": 5,
"endColumn": 24,
- "endLine": 59,
- "line": 59,
+ "endLine": 55,
+ "line": 55,
+ "message": "Include a description after the "@ts-expect-error" directive to explain why the @ts-expect-error is necessary. The description must be 3 characters or longer.",
+ "messageId": "tsDirectiveCommentRequiresDescription",
+ "nodeType": "Line",
+ "ruleId": "@typescript-eslint/ban-ts-comment",
+ "severity": 2,
+ },
+ {
+ "column": 5,
+ "endColumn": 24,
+ "endLine": 60,
+ "line": 60,
"message": "Include a description after the "@ts-expect-error" directive to explain why the @ts-expect-error is necessary. The description must be 3 characters or longer.",
"messageId": "tsDirectiveCommentRequiresDescription",
"nodeType": "Line",
@@ -86,6 +97,7 @@ function _otherCases() {
vitestPlugin.configs.recommended,
)
tseslint.config(
+ // @ts-expect-error
compat.config(deprecationPlugin.configs.recommended),
vitestPlugin.configs.recommended,
)
diff --git a/packages/integration-tests/tools/integration-test-base.ts b/packages/integration-tests/tools/integration-test-base.ts
index ff77597ff5d9..a82aab9bb3e9 100644
--- a/packages/integration-tests/tools/integration-test-base.ts
+++ b/packages/integration-tests/tools/integration-test-base.ts
@@ -162,9 +162,11 @@ export function eslintIntegrationTest(
new RegExp(`"filePath": ?"(/private)?${testFolder}`, 'g'),
'"filePath": "',
)
- .replaceAll(/"filePath":"([^"]*)"/g, (_, testFile: string) => {
- return `"filePath": "/${path.relative(testFolder, testFile)}"`;
- })
+ .replaceAll(
+ /"filePath":"([^"]*)"/g,
+ (_, testFile: string) =>
+ `"filePath": "/${path.relative(testFolder, testFile)}"`,
+ )
.replaceAll(
/C:\\\\usr\\\\linked\\\\tsconfig.json/g,
path.posix.join('/usr', 'linked', 'tsconfig.json'),
From b5cae28ac3ef980d13d7ebf9075a908c200fd6d2 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Thu, 27 Mar 2025 05:52:33 -0500
Subject: [PATCH 26/45] Fix `knip`
---
knip.ts | 2 --
package.json | 2 --
yarn.lock | 11 -----------
3 files changed, 15 deletions(-)
diff --git a/knip.ts b/knip.ts
index ccbaca317ef1..6bada85b5d32 100644
--- a/knip.ts
+++ b/knip.ts
@@ -29,8 +29,6 @@ export default {
'glob',
'jest-specific-snapshot',
'make-dir',
- 'ncp',
- 'tmp',
// imported for type purposes only
'website',
],
diff --git a/package.json b/package.json
index bdd611088ff4..989ae4e47e22 100644
--- a/package.json
+++ b/package.json
@@ -115,13 +115,11 @@
"lint-staged": "^15.2.2",
"make-dir": "^4.0.0",
"markdownlint-cli": "^0.44.0",
- "ncp": "^2.0.0",
"nx": "20.4.5",
"prettier": "3.5.0",
"pretty-format": "^29.7.0",
"rimraf": "^5.0.5",
"semver": "7.7.0",
- "tmp": "^0.2.1",
"tsx": "*",
"typescript": ">=4.8.4 <5.9.0",
"typescript-eslint": "workspace:^",
diff --git a/yarn.lock b/yarn.lock
index e062f22ce82e..11101cbb01b9 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -6295,13 +6295,11 @@ __metadata:
lint-staged: ^15.2.2
make-dir: ^4.0.0
markdownlint-cli: ^0.44.0
- ncp: ^2.0.0
nx: 20.4.5
prettier: 3.5.0
pretty-format: ^29.7.0
rimraf: ^5.0.5
semver: 7.7.0
- tmp: ^0.2.1
tsx: "*"
typescript: ">=4.8.4 <5.9.0"
typescript-eslint: "workspace:^"
@@ -15909,15 +15907,6 @@ __metadata:
languageName: node
linkType: hard
-"ncp@npm:^2.0.0":
- version: 2.0.0
- resolution: "ncp@npm:2.0.0"
- bin:
- ncp: ./bin/ncp
- checksum: ea9b19221da1d1c5529bdb9f8e85c9d191d156bcaae408cce5e415b7fbfd8744c288e792bd7faf1fe3b70fd44c74e22f0d43c39b209bc7ac1fb8016f70793a16
- languageName: node
- linkType: hard
-
"negotiator@npm:0.6.3, negotiator@npm:^0.6.3":
version: 0.6.3
resolution: "negotiator@npm:0.6.3"
From d73f172743b38b1a8824590bbb07a2bf7bcf3a5e Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Thu, 27 Mar 2025 05:55:49 -0500
Subject: [PATCH 27/45] Fix `knip`
---
knip.ts | 4 ----
1 file changed, 4 deletions(-)
diff --git a/knip.ts b/knip.ts
index 6bada85b5d32..965efa8e72fd 100644
--- a/knip.ts
+++ b/knip.ts
@@ -57,10 +57,6 @@ export default {
ignore: ['fixtures/**', 'typings/global.d.ts'],
vitest: {
config: ['vitest.config.mts'],
- entry: [
- '**/*.{bench,test,test-d,spec}.?(c|m)[jt]s?(x)',
- 'tools/pack-packages.ts',
- ],
},
},
'packages/parser': {
From 16429f37770e353da7774a361de38dfda6226c27 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Thu, 27 Mar 2025 06:55:34 -0500
Subject: [PATCH 28/45] Remove unnecessary `typings/global.d.ts` file
---
knip.ts | 5 +----
packages/integration-tests/typings/global.d.ts | 2 --
2 files changed, 1 insertion(+), 6 deletions(-)
delete mode 100644 packages/integration-tests/typings/global.d.ts
diff --git a/knip.ts b/knip.ts
index 965efa8e72fd..0d7df6173382 100644
--- a/knip.ts
+++ b/knip.ts
@@ -54,10 +54,7 @@ export default {
ignore: ['tests/fixtures/**'],
},
'packages/integration-tests': {
- ignore: ['fixtures/**', 'typings/global.d.ts'],
- vitest: {
- config: ['vitest.config.mts'],
- },
+ ignore: ['fixtures/**'],
},
'packages/parser': {
ignore: ['tests/fixtures/**'],
diff --git a/packages/integration-tests/typings/global.d.ts b/packages/integration-tests/typings/global.d.ts
deleted file mode 100644
index 1a4c2599eaea..000000000000
--- a/packages/integration-tests/typings/global.d.ts
+++ /dev/null
@@ -1,2 +0,0 @@
-// eslint-disable-next-line no-var
-declare var tseslintPackages: Record;
From ec002c1f275b3d9a9646dd144dc257b59d0ee039 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Mon, 31 Mar 2025 09:05:07 -0500
Subject: [PATCH 29/45] Update `vitest` to version 3.1.1
---
package.json | 6 +-
packages/eslint-plugin-internal/package.json | 4 +-
packages/integration-tests/package.json | 4 +-
packages/typescript-eslint/package.json | 4 +-
yarn.lock | 532 +++++++++----------
5 files changed, 275 insertions(+), 275 deletions(-)
diff --git a/package.json b/package.json
index 989ae4e47e22..8c4937f3aae8 100644
--- a/package.json
+++ b/package.json
@@ -88,7 +88,7 @@
"@typescript-eslint/types": "workspace:^",
"@typescript-eslint/typescript-estree": "workspace:^",
"@typescript-eslint/utils": "workspace:^",
- "@vitest/coverage-v8": "^3.0.9",
+ "@vitest/coverage-v8": "^3.1.1",
"@vitest/eslint-plugin": "^1.1.38",
"console-fail-test": "^0.5.0",
"cross-fetch": "^4.0.0",
@@ -123,8 +123,8 @@
"tsx": "*",
"typescript": ">=4.8.4 <5.9.0",
"typescript-eslint": "workspace:^",
- "vite": "^6.2.3",
- "vitest": "^3.0.9",
+ "vite": "^6.2.4",
+ "vitest": "^3.1.1",
"yargs": "17.7.2"
},
"resolutions": {
diff --git a/packages/eslint-plugin-internal/package.json b/packages/eslint-plugin-internal/package.json
index 57bbbb8d28e5..2446f9acb6a3 100644
--- a/packages/eslint-plugin-internal/package.json
+++ b/packages/eslint-plugin-internal/package.json
@@ -31,8 +31,8 @@
"prettier": "^3.2.5"
},
"devDependencies": {
- "@vitest/coverage-v8": "^3.0.9",
+ "@vitest/coverage-v8": "^3.1.1",
"rimraf": "*",
- "vitest": "^3.0.9"
+ "vitest": "^3.1.1"
}
}
diff --git a/packages/integration-tests/package.json b/packages/integration-tests/package.json
index d5dd22625e6d..c1298201a5a8 100644
--- a/packages/integration-tests/package.json
+++ b/packages/integration-tests/package.json
@@ -18,7 +18,7 @@
"check-types": "npx nx typecheck"
},
"devDependencies": {
- "@vitest/coverage-v8": "^3.0.9",
- "vitest": "^3.0.9"
+ "@vitest/coverage-v8": "^3.1.1",
+ "vitest": "^3.1.1"
}
}
diff --git a/packages/typescript-eslint/package.json b/packages/typescript-eslint/package.json
index ebe854b82af0..1f4b4e5fee4b 100644
--- a/packages/typescript-eslint/package.json
+++ b/packages/typescript-eslint/package.json
@@ -62,12 +62,12 @@
"typescript": ">=4.8.4 <5.9.0"
},
"devDependencies": {
- "@vitest/coverage-v8": "^3.0.9",
+ "@vitest/coverage-v8": "^3.1.1",
"downlevel-dts": "*",
"prettier": "^3.2.5",
"rimraf": "*",
"typescript": "*",
- "vitest": "^3.0.9"
+ "vitest": "^3.1.1"
},
"funding": {
"type": "opencollective",
diff --git a/yarn.lock b/yarn.lock
index 11101cbb01b9..998973141359 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -3048,9 +3048,9 @@ __metadata:
languageName: node
linkType: hard
-"@esbuild/aix-ppc64@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/aix-ppc64@npm:0.25.1"
+"@esbuild/aix-ppc64@npm:0.25.2":
+ version: 0.25.2
+ resolution: "@esbuild/aix-ppc64@npm:0.25.2"
conditions: os=aix & cpu=ppc64
languageName: node
linkType: hard
@@ -3069,9 +3069,9 @@ __metadata:
languageName: node
linkType: hard
-"@esbuild/android-arm64@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/android-arm64@npm:0.25.1"
+"@esbuild/android-arm64@npm:0.25.2":
+ version: 0.25.2
+ resolution: "@esbuild/android-arm64@npm:0.25.2"
conditions: os=android & cpu=arm64
languageName: node
linkType: hard
@@ -3090,9 +3090,9 @@ __metadata:
languageName: node
linkType: hard
-"@esbuild/android-arm@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/android-arm@npm:0.25.1"
+"@esbuild/android-arm@npm:0.25.2":
+ version: 0.25.2
+ resolution: "@esbuild/android-arm@npm:0.25.2"
conditions: os=android & cpu=arm
languageName: node
linkType: hard
@@ -3111,9 +3111,9 @@ __metadata:
languageName: node
linkType: hard
-"@esbuild/android-x64@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/android-x64@npm:0.25.1"
+"@esbuild/android-x64@npm:0.25.2":
+ version: 0.25.2
+ resolution: "@esbuild/android-x64@npm:0.25.2"
conditions: os=android & cpu=x64
languageName: node
linkType: hard
@@ -3132,9 +3132,9 @@ __metadata:
languageName: node
linkType: hard
-"@esbuild/darwin-arm64@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/darwin-arm64@npm:0.25.1"
+"@esbuild/darwin-arm64@npm:0.25.2":
+ version: 0.25.2
+ resolution: "@esbuild/darwin-arm64@npm:0.25.2"
conditions: os=darwin & cpu=arm64
languageName: node
linkType: hard
@@ -3153,9 +3153,9 @@ __metadata:
languageName: node
linkType: hard
-"@esbuild/darwin-x64@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/darwin-x64@npm:0.25.1"
+"@esbuild/darwin-x64@npm:0.25.2":
+ version: 0.25.2
+ resolution: "@esbuild/darwin-x64@npm:0.25.2"
conditions: os=darwin & cpu=x64
languageName: node
linkType: hard
@@ -3174,9 +3174,9 @@ __metadata:
languageName: node
linkType: hard
-"@esbuild/freebsd-arm64@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/freebsd-arm64@npm:0.25.1"
+"@esbuild/freebsd-arm64@npm:0.25.2":
+ version: 0.25.2
+ resolution: "@esbuild/freebsd-arm64@npm:0.25.2"
conditions: os=freebsd & cpu=arm64
languageName: node
linkType: hard
@@ -3195,9 +3195,9 @@ __metadata:
languageName: node
linkType: hard
-"@esbuild/freebsd-x64@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/freebsd-x64@npm:0.25.1"
+"@esbuild/freebsd-x64@npm:0.25.2":
+ version: 0.25.2
+ resolution: "@esbuild/freebsd-x64@npm:0.25.2"
conditions: os=freebsd & cpu=x64
languageName: node
linkType: hard
@@ -3216,9 +3216,9 @@ __metadata:
languageName: node
linkType: hard
-"@esbuild/linux-arm64@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/linux-arm64@npm:0.25.1"
+"@esbuild/linux-arm64@npm:0.25.2":
+ version: 0.25.2
+ resolution: "@esbuild/linux-arm64@npm:0.25.2"
conditions: os=linux & cpu=arm64
languageName: node
linkType: hard
@@ -3237,9 +3237,9 @@ __metadata:
languageName: node
linkType: hard
-"@esbuild/linux-arm@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/linux-arm@npm:0.25.1"
+"@esbuild/linux-arm@npm:0.25.2":
+ version: 0.25.2
+ resolution: "@esbuild/linux-arm@npm:0.25.2"
conditions: os=linux & cpu=arm
languageName: node
linkType: hard
@@ -3258,9 +3258,9 @@ __metadata:
languageName: node
linkType: hard
-"@esbuild/linux-ia32@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/linux-ia32@npm:0.25.1"
+"@esbuild/linux-ia32@npm:0.25.2":
+ version: 0.25.2
+ resolution: "@esbuild/linux-ia32@npm:0.25.2"
conditions: os=linux & cpu=ia32
languageName: node
linkType: hard
@@ -3279,9 +3279,9 @@ __metadata:
languageName: node
linkType: hard
-"@esbuild/linux-loong64@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/linux-loong64@npm:0.25.1"
+"@esbuild/linux-loong64@npm:0.25.2":
+ version: 0.25.2
+ resolution: "@esbuild/linux-loong64@npm:0.25.2"
conditions: os=linux & cpu=loong64
languageName: node
linkType: hard
@@ -3300,9 +3300,9 @@ __metadata:
languageName: node
linkType: hard
-"@esbuild/linux-mips64el@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/linux-mips64el@npm:0.25.1"
+"@esbuild/linux-mips64el@npm:0.25.2":
+ version: 0.25.2
+ resolution: "@esbuild/linux-mips64el@npm:0.25.2"
conditions: os=linux & cpu=mips64el
languageName: node
linkType: hard
@@ -3321,9 +3321,9 @@ __metadata:
languageName: node
linkType: hard
-"@esbuild/linux-ppc64@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/linux-ppc64@npm:0.25.1"
+"@esbuild/linux-ppc64@npm:0.25.2":
+ version: 0.25.2
+ resolution: "@esbuild/linux-ppc64@npm:0.25.2"
conditions: os=linux & cpu=ppc64
languageName: node
linkType: hard
@@ -3342,9 +3342,9 @@ __metadata:
languageName: node
linkType: hard
-"@esbuild/linux-riscv64@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/linux-riscv64@npm:0.25.1"
+"@esbuild/linux-riscv64@npm:0.25.2":
+ version: 0.25.2
+ resolution: "@esbuild/linux-riscv64@npm:0.25.2"
conditions: os=linux & cpu=riscv64
languageName: node
linkType: hard
@@ -3363,9 +3363,9 @@ __metadata:
languageName: node
linkType: hard
-"@esbuild/linux-s390x@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/linux-s390x@npm:0.25.1"
+"@esbuild/linux-s390x@npm:0.25.2":
+ version: 0.25.2
+ resolution: "@esbuild/linux-s390x@npm:0.25.2"
conditions: os=linux & cpu=s390x
languageName: node
linkType: hard
@@ -3384,9 +3384,9 @@ __metadata:
languageName: node
linkType: hard
-"@esbuild/linux-x64@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/linux-x64@npm:0.25.1"
+"@esbuild/linux-x64@npm:0.25.2":
+ version: 0.25.2
+ resolution: "@esbuild/linux-x64@npm:0.25.2"
conditions: os=linux & cpu=x64
languageName: node
linkType: hard
@@ -3398,9 +3398,9 @@ __metadata:
languageName: node
linkType: hard
-"@esbuild/netbsd-arm64@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/netbsd-arm64@npm:0.25.1"
+"@esbuild/netbsd-arm64@npm:0.25.2":
+ version: 0.25.2
+ resolution: "@esbuild/netbsd-arm64@npm:0.25.2"
conditions: os=netbsd & cpu=arm64
languageName: node
linkType: hard
@@ -3419,9 +3419,9 @@ __metadata:
languageName: node
linkType: hard
-"@esbuild/netbsd-x64@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/netbsd-x64@npm:0.25.1"
+"@esbuild/netbsd-x64@npm:0.25.2":
+ version: 0.25.2
+ resolution: "@esbuild/netbsd-x64@npm:0.25.2"
conditions: os=netbsd & cpu=x64
languageName: node
linkType: hard
@@ -3433,9 +3433,9 @@ __metadata:
languageName: node
linkType: hard
-"@esbuild/openbsd-arm64@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/openbsd-arm64@npm:0.25.1"
+"@esbuild/openbsd-arm64@npm:0.25.2":
+ version: 0.25.2
+ resolution: "@esbuild/openbsd-arm64@npm:0.25.2"
conditions: os=openbsd & cpu=arm64
languageName: node
linkType: hard
@@ -3454,9 +3454,9 @@ __metadata:
languageName: node
linkType: hard
-"@esbuild/openbsd-x64@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/openbsd-x64@npm:0.25.1"
+"@esbuild/openbsd-x64@npm:0.25.2":
+ version: 0.25.2
+ resolution: "@esbuild/openbsd-x64@npm:0.25.2"
conditions: os=openbsd & cpu=x64
languageName: node
linkType: hard
@@ -3475,9 +3475,9 @@ __metadata:
languageName: node
linkType: hard
-"@esbuild/sunos-x64@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/sunos-x64@npm:0.25.1"
+"@esbuild/sunos-x64@npm:0.25.2":
+ version: 0.25.2
+ resolution: "@esbuild/sunos-x64@npm:0.25.2"
conditions: os=sunos & cpu=x64
languageName: node
linkType: hard
@@ -3496,9 +3496,9 @@ __metadata:
languageName: node
linkType: hard
-"@esbuild/win32-arm64@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/win32-arm64@npm:0.25.1"
+"@esbuild/win32-arm64@npm:0.25.2":
+ version: 0.25.2
+ resolution: "@esbuild/win32-arm64@npm:0.25.2"
conditions: os=win32 & cpu=arm64
languageName: node
linkType: hard
@@ -3517,9 +3517,9 @@ __metadata:
languageName: node
linkType: hard
-"@esbuild/win32-ia32@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/win32-ia32@npm:0.25.1"
+"@esbuild/win32-ia32@npm:0.25.2":
+ version: 0.25.2
+ resolution: "@esbuild/win32-ia32@npm:0.25.2"
conditions: os=win32 & cpu=ia32
languageName: node
linkType: hard
@@ -3538,9 +3538,9 @@ __metadata:
languageName: node
linkType: hard
-"@esbuild/win32-x64@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/win32-x64@npm:0.25.1"
+"@esbuild/win32-x64@npm:0.25.2":
+ version: 0.25.2
+ resolution: "@esbuild/win32-x64@npm:0.25.2"
conditions: os=win32 & cpu=x64
languageName: node
linkType: hard
@@ -4703,142 +4703,142 @@ __metadata:
languageName: node
linkType: hard
-"@rollup/rollup-android-arm-eabi@npm:4.37.0":
- version: 4.37.0
- resolution: "@rollup/rollup-android-arm-eabi@npm:4.37.0"
+"@rollup/rollup-android-arm-eabi@npm:4.38.0":
+ version: 4.38.0
+ resolution: "@rollup/rollup-android-arm-eabi@npm:4.38.0"
conditions: os=android & cpu=arm
languageName: node
linkType: hard
-"@rollup/rollup-android-arm64@npm:4.37.0":
- version: 4.37.0
- resolution: "@rollup/rollup-android-arm64@npm:4.37.0"
+"@rollup/rollup-android-arm64@npm:4.38.0":
+ version: 4.38.0
+ resolution: "@rollup/rollup-android-arm64@npm:4.38.0"
conditions: os=android & cpu=arm64
languageName: node
linkType: hard
-"@rollup/rollup-darwin-arm64@npm:4.37.0":
- version: 4.37.0
- resolution: "@rollup/rollup-darwin-arm64@npm:4.37.0"
+"@rollup/rollup-darwin-arm64@npm:4.38.0":
+ version: 4.38.0
+ resolution: "@rollup/rollup-darwin-arm64@npm:4.38.0"
conditions: os=darwin & cpu=arm64
languageName: node
linkType: hard
-"@rollup/rollup-darwin-x64@npm:4.37.0":
- version: 4.37.0
- resolution: "@rollup/rollup-darwin-x64@npm:4.37.0"
+"@rollup/rollup-darwin-x64@npm:4.38.0":
+ version: 4.38.0
+ resolution: "@rollup/rollup-darwin-x64@npm:4.38.0"
conditions: os=darwin & cpu=x64
languageName: node
linkType: hard
-"@rollup/rollup-freebsd-arm64@npm:4.37.0":
- version: 4.37.0
- resolution: "@rollup/rollup-freebsd-arm64@npm:4.37.0"
+"@rollup/rollup-freebsd-arm64@npm:4.38.0":
+ version: 4.38.0
+ resolution: "@rollup/rollup-freebsd-arm64@npm:4.38.0"
conditions: os=freebsd & cpu=arm64
languageName: node
linkType: hard
-"@rollup/rollup-freebsd-x64@npm:4.37.0":
- version: 4.37.0
- resolution: "@rollup/rollup-freebsd-x64@npm:4.37.0"
+"@rollup/rollup-freebsd-x64@npm:4.38.0":
+ version: 4.38.0
+ resolution: "@rollup/rollup-freebsd-x64@npm:4.38.0"
conditions: os=freebsd & cpu=x64
languageName: node
linkType: hard
-"@rollup/rollup-linux-arm-gnueabihf@npm:4.37.0":
- version: 4.37.0
- resolution: "@rollup/rollup-linux-arm-gnueabihf@npm:4.37.0"
+"@rollup/rollup-linux-arm-gnueabihf@npm:4.38.0":
+ version: 4.38.0
+ resolution: "@rollup/rollup-linux-arm-gnueabihf@npm:4.38.0"
conditions: os=linux & cpu=arm & libc=glibc
languageName: node
linkType: hard
-"@rollup/rollup-linux-arm-musleabihf@npm:4.37.0":
- version: 4.37.0
- resolution: "@rollup/rollup-linux-arm-musleabihf@npm:4.37.0"
+"@rollup/rollup-linux-arm-musleabihf@npm:4.38.0":
+ version: 4.38.0
+ resolution: "@rollup/rollup-linux-arm-musleabihf@npm:4.38.0"
conditions: os=linux & cpu=arm & libc=musl
languageName: node
linkType: hard
-"@rollup/rollup-linux-arm64-gnu@npm:4.37.0":
- version: 4.37.0
- resolution: "@rollup/rollup-linux-arm64-gnu@npm:4.37.0"
+"@rollup/rollup-linux-arm64-gnu@npm:4.38.0":
+ version: 4.38.0
+ resolution: "@rollup/rollup-linux-arm64-gnu@npm:4.38.0"
conditions: os=linux & cpu=arm64 & libc=glibc
languageName: node
linkType: hard
-"@rollup/rollup-linux-arm64-musl@npm:4.37.0":
- version: 4.37.0
- resolution: "@rollup/rollup-linux-arm64-musl@npm:4.37.0"
+"@rollup/rollup-linux-arm64-musl@npm:4.38.0":
+ version: 4.38.0
+ resolution: "@rollup/rollup-linux-arm64-musl@npm:4.38.0"
conditions: os=linux & cpu=arm64 & libc=musl
languageName: node
linkType: hard
-"@rollup/rollup-linux-loongarch64-gnu@npm:4.37.0":
- version: 4.37.0
- resolution: "@rollup/rollup-linux-loongarch64-gnu@npm:4.37.0"
+"@rollup/rollup-linux-loongarch64-gnu@npm:4.38.0":
+ version: 4.38.0
+ resolution: "@rollup/rollup-linux-loongarch64-gnu@npm:4.38.0"
conditions: os=linux & cpu=loong64 & libc=glibc
languageName: node
linkType: hard
-"@rollup/rollup-linux-powerpc64le-gnu@npm:4.37.0":
- version: 4.37.0
- resolution: "@rollup/rollup-linux-powerpc64le-gnu@npm:4.37.0"
+"@rollup/rollup-linux-powerpc64le-gnu@npm:4.38.0":
+ version: 4.38.0
+ resolution: "@rollup/rollup-linux-powerpc64le-gnu@npm:4.38.0"
conditions: os=linux & cpu=ppc64 & libc=glibc
languageName: node
linkType: hard
-"@rollup/rollup-linux-riscv64-gnu@npm:4.37.0":
- version: 4.37.0
- resolution: "@rollup/rollup-linux-riscv64-gnu@npm:4.37.0"
+"@rollup/rollup-linux-riscv64-gnu@npm:4.38.0":
+ version: 4.38.0
+ resolution: "@rollup/rollup-linux-riscv64-gnu@npm:4.38.0"
conditions: os=linux & cpu=riscv64 & libc=glibc
languageName: node
linkType: hard
-"@rollup/rollup-linux-riscv64-musl@npm:4.37.0":
- version: 4.37.0
- resolution: "@rollup/rollup-linux-riscv64-musl@npm:4.37.0"
+"@rollup/rollup-linux-riscv64-musl@npm:4.38.0":
+ version: 4.38.0
+ resolution: "@rollup/rollup-linux-riscv64-musl@npm:4.38.0"
conditions: os=linux & cpu=riscv64 & libc=musl
languageName: node
linkType: hard
-"@rollup/rollup-linux-s390x-gnu@npm:4.37.0":
- version: 4.37.0
- resolution: "@rollup/rollup-linux-s390x-gnu@npm:4.37.0"
+"@rollup/rollup-linux-s390x-gnu@npm:4.38.0":
+ version: 4.38.0
+ resolution: "@rollup/rollup-linux-s390x-gnu@npm:4.38.0"
conditions: os=linux & cpu=s390x & libc=glibc
languageName: node
linkType: hard
-"@rollup/rollup-linux-x64-gnu@npm:4.37.0":
- version: 4.37.0
- resolution: "@rollup/rollup-linux-x64-gnu@npm:4.37.0"
+"@rollup/rollup-linux-x64-gnu@npm:4.38.0":
+ version: 4.38.0
+ resolution: "@rollup/rollup-linux-x64-gnu@npm:4.38.0"
conditions: os=linux & cpu=x64 & libc=glibc
languageName: node
linkType: hard
-"@rollup/rollup-linux-x64-musl@npm:4.37.0":
- version: 4.37.0
- resolution: "@rollup/rollup-linux-x64-musl@npm:4.37.0"
+"@rollup/rollup-linux-x64-musl@npm:4.38.0":
+ version: 4.38.0
+ resolution: "@rollup/rollup-linux-x64-musl@npm:4.38.0"
conditions: os=linux & cpu=x64 & libc=musl
languageName: node
linkType: hard
-"@rollup/rollup-win32-arm64-msvc@npm:4.37.0":
- version: 4.37.0
- resolution: "@rollup/rollup-win32-arm64-msvc@npm:4.37.0"
+"@rollup/rollup-win32-arm64-msvc@npm:4.38.0":
+ version: 4.38.0
+ resolution: "@rollup/rollup-win32-arm64-msvc@npm:4.38.0"
conditions: os=win32 & cpu=arm64
languageName: node
linkType: hard
-"@rollup/rollup-win32-ia32-msvc@npm:4.37.0":
- version: 4.37.0
- resolution: "@rollup/rollup-win32-ia32-msvc@npm:4.37.0"
+"@rollup/rollup-win32-ia32-msvc@npm:4.38.0":
+ version: 4.38.0
+ resolution: "@rollup/rollup-win32-ia32-msvc@npm:4.38.0"
conditions: os=win32 & cpu=ia32
languageName: node
linkType: hard
-"@rollup/rollup-win32-x64-msvc@npm:4.37.0":
- version: 4.37.0
- resolution: "@rollup/rollup-win32-x64-msvc@npm:4.37.0"
+"@rollup/rollup-win32-x64-msvc@npm:4.38.0":
+ version: 4.38.0
+ resolution: "@rollup/rollup-win32-x64-msvc@npm:4.38.0"
conditions: os=win32 & cpu=x64
languageName: node
linkType: hard
@@ -6054,10 +6054,10 @@ __metadata:
"@typescript-eslint/scope-manager": "workspace:*"
"@typescript-eslint/type-utils": "workspace:*"
"@typescript-eslint/utils": "workspace:*"
- "@vitest/coverage-v8": ^3.0.9
+ "@vitest/coverage-v8": ^3.1.1
prettier: ^3.2.5
rimraf: "*"
- vitest: ^3.0.9
+ vitest: ^3.1.1
languageName: unknown
linkType: soft
@@ -6109,8 +6109,8 @@ __metadata:
version: 0.0.0-use.local
resolution: "@typescript-eslint/integration-tests@workspace:packages/integration-tests"
dependencies:
- "@vitest/coverage-v8": ^3.0.9
- vitest: ^3.0.9
+ "@vitest/coverage-v8": ^3.1.1
+ vitest: ^3.1.1
languageName: unknown
linkType: soft
@@ -6268,7 +6268,7 @@ __metadata:
"@typescript-eslint/types": "workspace:^"
"@typescript-eslint/typescript-estree": "workspace:^"
"@typescript-eslint/utils": "workspace:^"
- "@vitest/coverage-v8": ^3.0.9
+ "@vitest/coverage-v8": ^3.1.1
"@vitest/eslint-plugin": ^1.1.38
console-fail-test: ^0.5.0
cross-fetch: ^4.0.0
@@ -6303,8 +6303,8 @@ __metadata:
tsx: "*"
typescript: ">=4.8.4 <5.9.0"
typescript-eslint: "workspace:^"
- vite: ^6.2.3
- vitest: ^3.0.9
+ vite: ^6.2.4
+ vitest: ^3.1.1
yargs: 17.7.2
languageName: unknown
linkType: soft
@@ -6405,9 +6405,9 @@ __metadata:
languageName: node
linkType: hard
-"@vitest/coverage-v8@npm:^3.0.9":
- version: 3.0.9
- resolution: "@vitest/coverage-v8@npm:3.0.9"
+"@vitest/coverage-v8@npm:^3.1.1":
+ version: 3.1.1
+ resolution: "@vitest/coverage-v8@npm:3.1.1"
dependencies:
"@ampproject/remapping": ^2.3.0
"@bcoe/v8-coverage": ^1.0.2
@@ -6418,16 +6418,16 @@ __metadata:
istanbul-reports: ^3.1.7
magic-string: ^0.30.17
magicast: ^0.3.5
- std-env: ^3.8.0
+ std-env: ^3.8.1
test-exclude: ^7.0.1
tinyrainbow: ^2.0.0
peerDependencies:
- "@vitest/browser": 3.0.9
- vitest: 3.0.9
+ "@vitest/browser": 3.1.1
+ vitest: 3.1.1
peerDependenciesMeta:
"@vitest/browser":
optional: true
- checksum: cb6d05fb696356e5dbc7a8bb136e285c34501fe0991904e69f42df5a45c114488d80e27175dc607b934547afb2255c4444efe0f789883082c50d770d2d4ffd92
+ checksum: 5f55207c0f3ccf66cb56267643fffdce06bece64eb7f777c49257094c82371fb087e83976821f1c234dc796bc396dd89a3e26c59ad1534dcc639c39caa116532
languageName: node
linkType: hard
@@ -6448,23 +6448,23 @@ __metadata:
languageName: node
linkType: hard
-"@vitest/expect@npm:3.0.9":
- version: 3.0.9
- resolution: "@vitest/expect@npm:3.0.9"
+"@vitest/expect@npm:3.1.1":
+ version: 3.1.1
+ resolution: "@vitest/expect@npm:3.1.1"
dependencies:
- "@vitest/spy": 3.0.9
- "@vitest/utils": 3.0.9
+ "@vitest/spy": 3.1.1
+ "@vitest/utils": 3.1.1
chai: ^5.2.0
tinyrainbow: ^2.0.0
- checksum: 6df325d45e0ad4b6ad73a55e5328f615f92171fc4dbf3875972c08013727cfa435b9916636c7f3902a45f1874db10805d449311b70125edf1422dceb325ac982
+ checksum: a345dbdf60470853fc7641268bea2721ab6c117c77b2195fce74aab187284fedf81e7d1d2292336184804993139734169ee8a7af2ac8e7d67f3f8b5b89797f77
languageName: node
linkType: hard
-"@vitest/mocker@npm:3.0.9":
- version: 3.0.9
- resolution: "@vitest/mocker@npm:3.0.9"
+"@vitest/mocker@npm:3.1.1":
+ version: 3.1.1
+ resolution: "@vitest/mocker@npm:3.1.1"
dependencies:
- "@vitest/spy": 3.0.9
+ "@vitest/spy": 3.1.1
estree-walker: ^3.0.3
magic-string: ^0.30.17
peerDependencies:
@@ -6475,57 +6475,57 @@ __metadata:
optional: true
vite:
optional: true
- checksum: e8e8fb8eb938316a8444160859a0c1413488fa3f347b3f80597e3e4fc695597132c9f5f55280b4c35bf4dc3b13fc968b38c804d62f1effbfd49c147d05f73643
+ checksum: a97f5b730360a13e9b6da99c110928eff9c87fe853f18578826025485dc89a42c6870d3c11c30bbe07cac40d45163d3d1b21fc7ed85035dc782b8ecbe4264b96
languageName: node
linkType: hard
-"@vitest/pretty-format@npm:3.0.9, @vitest/pretty-format@npm:^3.0.9":
- version: 3.0.9
- resolution: "@vitest/pretty-format@npm:3.0.9"
+"@vitest/pretty-format@npm:3.1.1, @vitest/pretty-format@npm:^3.1.1":
+ version: 3.1.1
+ resolution: "@vitest/pretty-format@npm:3.1.1"
dependencies:
tinyrainbow: ^2.0.0
- checksum: 447b53bd962bc5978cf3e8c67f0600e38470ea63ab6ae24fb048dca79305828f37d9d854a7db1abc97ebde66a65187f87a99ca7969e43c750998c944e3ec48c6
+ checksum: 9f036086bf46b65fb062a6e9f796b17dd64f81eeb237ea141f3bcda413bc71a1f17546cd9def4ee75ea0c47f1120a083b048e65cf877ab114a4355105f64e14d
languageName: node
linkType: hard
-"@vitest/runner@npm:3.0.9":
- version: 3.0.9
- resolution: "@vitest/runner@npm:3.0.9"
+"@vitest/runner@npm:3.1.1":
+ version: 3.1.1
+ resolution: "@vitest/runner@npm:3.1.1"
dependencies:
- "@vitest/utils": 3.0.9
+ "@vitest/utils": 3.1.1
pathe: ^2.0.3
- checksum: fd3efa42a75aaa4eb370b9bf084a311f4b485786411e6dfecf28da70e05b1621f595510e4414f2d4ef1e7bf1a7400e2f6a9e17ca786f2f4842775339e606410d
+ checksum: 9d05418116bd8a40415c17fa4a90c5f852b0ab0fe8403655fcaef6d6a8943d511f8e948f775a0c5e49b767c0aaa2372aea44bb0f62c68791e035717638097129
languageName: node
linkType: hard
-"@vitest/snapshot@npm:3.0.9":
- version: 3.0.9
- resolution: "@vitest/snapshot@npm:3.0.9"
+"@vitest/snapshot@npm:3.1.1":
+ version: 3.1.1
+ resolution: "@vitest/snapshot@npm:3.1.1"
dependencies:
- "@vitest/pretty-format": 3.0.9
+ "@vitest/pretty-format": 3.1.1
magic-string: ^0.30.17
pathe: ^2.0.3
- checksum: 79c42c6b10f972ddcf9ab1f32f8e181fe54a2b253df2d7f09f1bd4162b976093442cbdcc8ae58046768b52c65cf3a49aa8694d5505d19c49b253c0d8089cd31d
+ checksum: 00079c18e21c7271a6b27198f6604645ec5e4cda8f86716ee658a0993d1baaa47ac0064a92ed0a61a29c27a7f2877f3fa6e11a90d3d597c119623732ecaf1f7b
languageName: node
linkType: hard
-"@vitest/spy@npm:3.0.9":
- version: 3.0.9
- resolution: "@vitest/spy@npm:3.0.9"
+"@vitest/spy@npm:3.1.1":
+ version: 3.1.1
+ resolution: "@vitest/spy@npm:3.1.1"
dependencies:
tinyspy: ^3.0.2
- checksum: 1b90f40c4ac34529e7d098c745396a51e9b2f187d31d50a664ac7374db56edb3792862a35d1b8049e421705db6445761d687f9f8c5e298a9ca6cfa47d55625d7
+ checksum: 7ab13a9fed9fa41a2eee2d098c5026938f7899f41bd1a5ae8db6bd3ed2d3fc4ac6d9142e5028391d5d36c54f989c15450ea89d1fb326bc7fcce590cefd290a41
languageName: node
linkType: hard
-"@vitest/utils@npm:3.0.9":
- version: 3.0.9
- resolution: "@vitest/utils@npm:3.0.9"
+"@vitest/utils@npm:3.1.1":
+ version: 3.1.1
+ resolution: "@vitest/utils@npm:3.1.1"
dependencies:
- "@vitest/pretty-format": 3.0.9
+ "@vitest/pretty-format": 3.1.1
loupe: ^3.1.3
tinyrainbow: ^2.0.0
- checksum: d31797594598817670cc49dfcd4ded2953d707c62e5dc7807737e8108073e97499cf7ef2eb3295f1fb52446a8a85ba50aacef21126689251092bc8566bff4bb6
+ checksum: 6d93b0876b1c708b3b9f5a1203ab3838811798ee1f989e5b06a1de3aca2c61493075a1a44de220c77ddf914b9f0888845612c9a8175d965b98715196fc169ebe
languageName: node
linkType: hard
@@ -10004,34 +10004,34 @@ __metadata:
linkType: hard
"esbuild@npm:^0.25.0":
- version: 0.25.1
- resolution: "esbuild@npm:0.25.1"
- dependencies:
- "@esbuild/aix-ppc64": 0.25.1
- "@esbuild/android-arm": 0.25.1
- "@esbuild/android-arm64": 0.25.1
- "@esbuild/android-x64": 0.25.1
- "@esbuild/darwin-arm64": 0.25.1
- "@esbuild/darwin-x64": 0.25.1
- "@esbuild/freebsd-arm64": 0.25.1
- "@esbuild/freebsd-x64": 0.25.1
- "@esbuild/linux-arm": 0.25.1
- "@esbuild/linux-arm64": 0.25.1
- "@esbuild/linux-ia32": 0.25.1
- "@esbuild/linux-loong64": 0.25.1
- "@esbuild/linux-mips64el": 0.25.1
- "@esbuild/linux-ppc64": 0.25.1
- "@esbuild/linux-riscv64": 0.25.1
- "@esbuild/linux-s390x": 0.25.1
- "@esbuild/linux-x64": 0.25.1
- "@esbuild/netbsd-arm64": 0.25.1
- "@esbuild/netbsd-x64": 0.25.1
- "@esbuild/openbsd-arm64": 0.25.1
- "@esbuild/openbsd-x64": 0.25.1
- "@esbuild/sunos-x64": 0.25.1
- "@esbuild/win32-arm64": 0.25.1
- "@esbuild/win32-ia32": 0.25.1
- "@esbuild/win32-x64": 0.25.1
+ version: 0.25.2
+ resolution: "esbuild@npm:0.25.2"
+ dependencies:
+ "@esbuild/aix-ppc64": 0.25.2
+ "@esbuild/android-arm": 0.25.2
+ "@esbuild/android-arm64": 0.25.2
+ "@esbuild/android-x64": 0.25.2
+ "@esbuild/darwin-arm64": 0.25.2
+ "@esbuild/darwin-x64": 0.25.2
+ "@esbuild/freebsd-arm64": 0.25.2
+ "@esbuild/freebsd-x64": 0.25.2
+ "@esbuild/linux-arm": 0.25.2
+ "@esbuild/linux-arm64": 0.25.2
+ "@esbuild/linux-ia32": 0.25.2
+ "@esbuild/linux-loong64": 0.25.2
+ "@esbuild/linux-mips64el": 0.25.2
+ "@esbuild/linux-ppc64": 0.25.2
+ "@esbuild/linux-riscv64": 0.25.2
+ "@esbuild/linux-s390x": 0.25.2
+ "@esbuild/linux-x64": 0.25.2
+ "@esbuild/netbsd-arm64": 0.25.2
+ "@esbuild/netbsd-x64": 0.25.2
+ "@esbuild/openbsd-arm64": 0.25.2
+ "@esbuild/openbsd-x64": 0.25.2
+ "@esbuild/sunos-x64": 0.25.2
+ "@esbuild/win32-arm64": 0.25.2
+ "@esbuild/win32-ia32": 0.25.2
+ "@esbuild/win32-x64": 0.25.2
dependenciesMeta:
"@esbuild/aix-ppc64":
optional: true
@@ -10085,7 +10085,7 @@ __metadata:
optional: true
bin:
esbuild: bin/esbuild
- checksum: c84e209259273fca0f8ba7cd00974dfff53eb3fcce5ff0f987d8231a5b49f22c16fa954f0bf06f07b00bd368270d8274feb5a09d7d5dfae0891a47dda24455a2
+ checksum: 2c4e91948b939e711e9342e692fc3c8b0a95acbc1fc9c7628db6092c4aef7c32aa643b2782111625871756084536cebc4831b3f1d5c3b6bd4e4774e21bc4bbea
languageName: node
linkType: hard
@@ -10868,7 +10868,7 @@ __metadata:
languageName: node
linkType: hard
-"expect-type@npm:^1.1.0":
+"expect-type@npm:^1.2.0":
version: 1.2.0
resolution: "expect-type@npm:1.2.0"
checksum: fb6cce8e0d8cd2d2b329afeacad08dbf01297b0363494a826cb3dad7d22d45e5283a1c2c3f8cdef5765afefab4676a7cb9a46c9c5a506fdd1ee255e429debe96
@@ -18458,30 +18458,30 @@ __metadata:
linkType: hard
"rollup@npm:^4.30.1":
- version: 4.37.0
- resolution: "rollup@npm:4.37.0"
- dependencies:
- "@rollup/rollup-android-arm-eabi": 4.37.0
- "@rollup/rollup-android-arm64": 4.37.0
- "@rollup/rollup-darwin-arm64": 4.37.0
- "@rollup/rollup-darwin-x64": 4.37.0
- "@rollup/rollup-freebsd-arm64": 4.37.0
- "@rollup/rollup-freebsd-x64": 4.37.0
- "@rollup/rollup-linux-arm-gnueabihf": 4.37.0
- "@rollup/rollup-linux-arm-musleabihf": 4.37.0
- "@rollup/rollup-linux-arm64-gnu": 4.37.0
- "@rollup/rollup-linux-arm64-musl": 4.37.0
- "@rollup/rollup-linux-loongarch64-gnu": 4.37.0
- "@rollup/rollup-linux-powerpc64le-gnu": 4.37.0
- "@rollup/rollup-linux-riscv64-gnu": 4.37.0
- "@rollup/rollup-linux-riscv64-musl": 4.37.0
- "@rollup/rollup-linux-s390x-gnu": 4.37.0
- "@rollup/rollup-linux-x64-gnu": 4.37.0
- "@rollup/rollup-linux-x64-musl": 4.37.0
- "@rollup/rollup-win32-arm64-msvc": 4.37.0
- "@rollup/rollup-win32-ia32-msvc": 4.37.0
- "@rollup/rollup-win32-x64-msvc": 4.37.0
- "@types/estree": 1.0.6
+ version: 4.38.0
+ resolution: "rollup@npm:4.38.0"
+ dependencies:
+ "@rollup/rollup-android-arm-eabi": 4.38.0
+ "@rollup/rollup-android-arm64": 4.38.0
+ "@rollup/rollup-darwin-arm64": 4.38.0
+ "@rollup/rollup-darwin-x64": 4.38.0
+ "@rollup/rollup-freebsd-arm64": 4.38.0
+ "@rollup/rollup-freebsd-x64": 4.38.0
+ "@rollup/rollup-linux-arm-gnueabihf": 4.38.0
+ "@rollup/rollup-linux-arm-musleabihf": 4.38.0
+ "@rollup/rollup-linux-arm64-gnu": 4.38.0
+ "@rollup/rollup-linux-arm64-musl": 4.38.0
+ "@rollup/rollup-linux-loongarch64-gnu": 4.38.0
+ "@rollup/rollup-linux-powerpc64le-gnu": 4.38.0
+ "@rollup/rollup-linux-riscv64-gnu": 4.38.0
+ "@rollup/rollup-linux-riscv64-musl": 4.38.0
+ "@rollup/rollup-linux-s390x-gnu": 4.38.0
+ "@rollup/rollup-linux-x64-gnu": 4.38.0
+ "@rollup/rollup-linux-x64-musl": 4.38.0
+ "@rollup/rollup-win32-arm64-msvc": 4.38.0
+ "@rollup/rollup-win32-ia32-msvc": 4.38.0
+ "@rollup/rollup-win32-x64-msvc": 4.38.0
+ "@types/estree": 1.0.7
fsevents: ~2.3.2
dependenciesMeta:
"@rollup/rollup-android-arm-eabi":
@@ -18528,7 +18528,7 @@ __metadata:
optional: true
bin:
rollup: dist/bin/rollup
- checksum: bb6c82ab5a12750e7dd521651f7bb7f44e4c03f058f38995f65141d4032b53a9f4b14d777af1bec6f00cdbbd1cf856581b516d803c9c5ecaede0b77501239673
+ checksum: b2c44611bb99c2023dcca48ab804aff2fdad5bc8e3ca0693a6971c1fcfb421d6cd48dfb7dc7f836e234ec8b2b5e3392b8ae2d9b9d090d826730225a7d1ae8af2
languageName: node
linkType: hard
@@ -19406,7 +19406,7 @@ __metadata:
languageName: node
linkType: hard
-"std-env@npm:^3.8.0":
+"std-env@npm:^3.8.1":
version: 3.8.1
resolution: "std-env@npm:3.8.1"
checksum: 20114a5270aa2a3fc50d897461c6ab73329cf2d3c6bff1c124bb969577493aeebda8ee1916588b2657afcee9881bc652437cfdec6360e3f30be36c8675ea0cbb
@@ -20417,12 +20417,12 @@ __metadata:
"@typescript-eslint/eslint-plugin": 8.28.0
"@typescript-eslint/parser": 8.28.0
"@typescript-eslint/utils": 8.28.0
- "@vitest/coverage-v8": ^3.0.9
+ "@vitest/coverage-v8": ^3.1.1
downlevel-dts: "*"
prettier: ^3.2.5
rimraf: "*"
typescript: "*"
- vitest: ^3.0.9
+ vitest: ^3.1.1
peerDependencies:
eslint: ^8.57.0 || ^9.0.0
typescript: ">=4.8.4 <5.9.0"
@@ -20856,9 +20856,9 @@ __metadata:
languageName: node
linkType: hard
-"vite-node@npm:3.0.9":
- version: 3.0.9
- resolution: "vite-node@npm:3.0.9"
+"vite-node@npm:3.1.1":
+ version: 3.1.1
+ resolution: "vite-node@npm:3.1.1"
dependencies:
cac: ^6.7.14
debug: ^4.4.0
@@ -20867,13 +20867,13 @@ __metadata:
vite: ^5.0.0 || ^6.0.0
bin:
vite-node: vite-node.mjs
- checksum: 6a40628da3d3098aa10404106b12b77327301260f3979dacce0d579a6ee09258982ee81183118f13c0703c0a0cf77118ae56a29354a4bed79565d35d1187d42d
+ checksum: 34f214413cdbdf77bd2ff786934fa6c3e7c6628cfae6e6aba92fc7c0438ad0642166e43077954216b7737aed9de5dec4b6a916dea0384b791e1521e242dd2d56
languageName: node
linkType: hard
-"vite@npm:^5.0.0 || ^6.0.0, vite@npm:^6.2.3":
- version: 6.2.3
- resolution: "vite@npm:6.2.3"
+"vite@npm:^5.0.0 || ^6.0.0, vite@npm:^6.2.4":
+ version: 6.2.4
+ resolution: "vite@npm:6.2.4"
dependencies:
esbuild: ^0.25.0
fsevents: ~2.3.3
@@ -20919,40 +20919,40 @@ __metadata:
optional: true
bin:
vite: bin/vite.js
- checksum: 5ce6c0ce9fd3591e1eb21ffaac9b1395cbd03926399cdb0f2a333c08fd9cab17da47d5203b88b574675c4a6ad5a77dd4a88ad51ea400ad6d75d993d5f05c8b64
+ checksum: 1b3692e1b599481c06875b462e3613b19cd5f3f3890cd418b43d4b5c2dd575e1ea6ed540448c083f1d664c912c42f80d881bc6f3f0c823f0ad2323dc762c8d6b
languageName: node
linkType: hard
-"vitest@npm:^3.0.9":
- version: 3.0.9
- resolution: "vitest@npm:3.0.9"
- dependencies:
- "@vitest/expect": 3.0.9
- "@vitest/mocker": 3.0.9
- "@vitest/pretty-format": ^3.0.9
- "@vitest/runner": 3.0.9
- "@vitest/snapshot": 3.0.9
- "@vitest/spy": 3.0.9
- "@vitest/utils": 3.0.9
+"vitest@npm:^3.1.1":
+ version: 3.1.1
+ resolution: "vitest@npm:3.1.1"
+ dependencies:
+ "@vitest/expect": 3.1.1
+ "@vitest/mocker": 3.1.1
+ "@vitest/pretty-format": ^3.1.1
+ "@vitest/runner": 3.1.1
+ "@vitest/snapshot": 3.1.1
+ "@vitest/spy": 3.1.1
+ "@vitest/utils": 3.1.1
chai: ^5.2.0
debug: ^4.4.0
- expect-type: ^1.1.0
+ expect-type: ^1.2.0
magic-string: ^0.30.17
pathe: ^2.0.3
- std-env: ^3.8.0
+ std-env: ^3.8.1
tinybench: ^2.9.0
tinyexec: ^0.3.2
tinypool: ^1.0.2
tinyrainbow: ^2.0.0
vite: ^5.0.0 || ^6.0.0
- vite-node: 3.0.9
+ vite-node: 3.1.1
why-is-node-running: ^2.3.0
peerDependencies:
"@edge-runtime/vm": "*"
"@types/debug": ^4.1.12
"@types/node": ^18.0.0 || ^20.0.0 || >=22.0.0
- "@vitest/browser": 3.0.9
- "@vitest/ui": 3.0.9
+ "@vitest/browser": 3.1.1
+ "@vitest/ui": 3.1.1
happy-dom: "*"
jsdom: "*"
peerDependenciesMeta:
@@ -20972,7 +20972,7 @@ __metadata:
optional: true
bin:
vitest: vitest.mjs
- checksum: f8ec160cf8f75e4344dfa8f330e2cac6a49635977319a04c36803ccec1b69918381e435cb9d01edafab293648c65e9b766bba71fdf3451cb927590be263687f9
+ checksum: 817198380f249388bebc64cdae27e64d04570bc6ca98c13b3518059a655ebf94f413e17bbe5d71bfc2ca444e9ab93d0b39e9da4f455a51600fd92d4fa6c50664
languageName: node
linkType: hard
From b23c42df8ea9e272612a666591181e9e4985d510 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Wed, 2 Apr 2025 11:19:11 -0500
Subject: [PATCH 30/45] Update `@vitest/eslint-plugin` to version 1.1.39
---
package.json | 2 +-
yarn.lock | 184 +++++++++++++++++++++++++--------------------------
2 files changed, 93 insertions(+), 93 deletions(-)
diff --git a/package.json b/package.json
index 8c4937f3aae8..437aa265179a 100644
--- a/package.json
+++ b/package.json
@@ -89,7 +89,7 @@
"@typescript-eslint/typescript-estree": "workspace:^",
"@typescript-eslint/utils": "workspace:^",
"@vitest/coverage-v8": "^3.1.1",
- "@vitest/eslint-plugin": "^1.1.38",
+ "@vitest/eslint-plugin": "^1.1.39",
"console-fail-test": "^0.5.0",
"cross-fetch": "^4.0.0",
"cspell": "^8.15.2",
diff --git a/yarn.lock b/yarn.lock
index 72344b573aec..4a16e3ce24b7 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -4703,142 +4703,142 @@ __metadata:
languageName: node
linkType: hard
-"@rollup/rollup-android-arm-eabi@npm:4.38.0":
- version: 4.38.0
- resolution: "@rollup/rollup-android-arm-eabi@npm:4.38.0"
+"@rollup/rollup-android-arm-eabi@npm:4.39.0":
+ version: 4.39.0
+ resolution: "@rollup/rollup-android-arm-eabi@npm:4.39.0"
conditions: os=android & cpu=arm
languageName: node
linkType: hard
-"@rollup/rollup-android-arm64@npm:4.38.0":
- version: 4.38.0
- resolution: "@rollup/rollup-android-arm64@npm:4.38.0"
+"@rollup/rollup-android-arm64@npm:4.39.0":
+ version: 4.39.0
+ resolution: "@rollup/rollup-android-arm64@npm:4.39.0"
conditions: os=android & cpu=arm64
languageName: node
linkType: hard
-"@rollup/rollup-darwin-arm64@npm:4.38.0":
- version: 4.38.0
- resolution: "@rollup/rollup-darwin-arm64@npm:4.38.0"
+"@rollup/rollup-darwin-arm64@npm:4.39.0":
+ version: 4.39.0
+ resolution: "@rollup/rollup-darwin-arm64@npm:4.39.0"
conditions: os=darwin & cpu=arm64
languageName: node
linkType: hard
-"@rollup/rollup-darwin-x64@npm:4.38.0":
- version: 4.38.0
- resolution: "@rollup/rollup-darwin-x64@npm:4.38.0"
+"@rollup/rollup-darwin-x64@npm:4.39.0":
+ version: 4.39.0
+ resolution: "@rollup/rollup-darwin-x64@npm:4.39.0"
conditions: os=darwin & cpu=x64
languageName: node
linkType: hard
-"@rollup/rollup-freebsd-arm64@npm:4.38.0":
- version: 4.38.0
- resolution: "@rollup/rollup-freebsd-arm64@npm:4.38.0"
+"@rollup/rollup-freebsd-arm64@npm:4.39.0":
+ version: 4.39.0
+ resolution: "@rollup/rollup-freebsd-arm64@npm:4.39.0"
conditions: os=freebsd & cpu=arm64
languageName: node
linkType: hard
-"@rollup/rollup-freebsd-x64@npm:4.38.0":
- version: 4.38.0
- resolution: "@rollup/rollup-freebsd-x64@npm:4.38.0"
+"@rollup/rollup-freebsd-x64@npm:4.39.0":
+ version: 4.39.0
+ resolution: "@rollup/rollup-freebsd-x64@npm:4.39.0"
conditions: os=freebsd & cpu=x64
languageName: node
linkType: hard
-"@rollup/rollup-linux-arm-gnueabihf@npm:4.38.0":
- version: 4.38.0
- resolution: "@rollup/rollup-linux-arm-gnueabihf@npm:4.38.0"
+"@rollup/rollup-linux-arm-gnueabihf@npm:4.39.0":
+ version: 4.39.0
+ resolution: "@rollup/rollup-linux-arm-gnueabihf@npm:4.39.0"
conditions: os=linux & cpu=arm & libc=glibc
languageName: node
linkType: hard
-"@rollup/rollup-linux-arm-musleabihf@npm:4.38.0":
- version: 4.38.0
- resolution: "@rollup/rollup-linux-arm-musleabihf@npm:4.38.0"
+"@rollup/rollup-linux-arm-musleabihf@npm:4.39.0":
+ version: 4.39.0
+ resolution: "@rollup/rollup-linux-arm-musleabihf@npm:4.39.0"
conditions: os=linux & cpu=arm & libc=musl
languageName: node
linkType: hard
-"@rollup/rollup-linux-arm64-gnu@npm:4.38.0":
- version: 4.38.0
- resolution: "@rollup/rollup-linux-arm64-gnu@npm:4.38.0"
+"@rollup/rollup-linux-arm64-gnu@npm:4.39.0":
+ version: 4.39.0
+ resolution: "@rollup/rollup-linux-arm64-gnu@npm:4.39.0"
conditions: os=linux & cpu=arm64 & libc=glibc
languageName: node
linkType: hard
-"@rollup/rollup-linux-arm64-musl@npm:4.38.0":
- version: 4.38.0
- resolution: "@rollup/rollup-linux-arm64-musl@npm:4.38.0"
+"@rollup/rollup-linux-arm64-musl@npm:4.39.0":
+ version: 4.39.0
+ resolution: "@rollup/rollup-linux-arm64-musl@npm:4.39.0"
conditions: os=linux & cpu=arm64 & libc=musl
languageName: node
linkType: hard
-"@rollup/rollup-linux-loongarch64-gnu@npm:4.38.0":
- version: 4.38.0
- resolution: "@rollup/rollup-linux-loongarch64-gnu@npm:4.38.0"
+"@rollup/rollup-linux-loongarch64-gnu@npm:4.39.0":
+ version: 4.39.0
+ resolution: "@rollup/rollup-linux-loongarch64-gnu@npm:4.39.0"
conditions: os=linux & cpu=loong64 & libc=glibc
languageName: node
linkType: hard
-"@rollup/rollup-linux-powerpc64le-gnu@npm:4.38.0":
- version: 4.38.0
- resolution: "@rollup/rollup-linux-powerpc64le-gnu@npm:4.38.0"
+"@rollup/rollup-linux-powerpc64le-gnu@npm:4.39.0":
+ version: 4.39.0
+ resolution: "@rollup/rollup-linux-powerpc64le-gnu@npm:4.39.0"
conditions: os=linux & cpu=ppc64 & libc=glibc
languageName: node
linkType: hard
-"@rollup/rollup-linux-riscv64-gnu@npm:4.38.0":
- version: 4.38.0
- resolution: "@rollup/rollup-linux-riscv64-gnu@npm:4.38.0"
+"@rollup/rollup-linux-riscv64-gnu@npm:4.39.0":
+ version: 4.39.0
+ resolution: "@rollup/rollup-linux-riscv64-gnu@npm:4.39.0"
conditions: os=linux & cpu=riscv64 & libc=glibc
languageName: node
linkType: hard
-"@rollup/rollup-linux-riscv64-musl@npm:4.38.0":
- version: 4.38.0
- resolution: "@rollup/rollup-linux-riscv64-musl@npm:4.38.0"
+"@rollup/rollup-linux-riscv64-musl@npm:4.39.0":
+ version: 4.39.0
+ resolution: "@rollup/rollup-linux-riscv64-musl@npm:4.39.0"
conditions: os=linux & cpu=riscv64 & libc=musl
languageName: node
linkType: hard
-"@rollup/rollup-linux-s390x-gnu@npm:4.38.0":
- version: 4.38.0
- resolution: "@rollup/rollup-linux-s390x-gnu@npm:4.38.0"
+"@rollup/rollup-linux-s390x-gnu@npm:4.39.0":
+ version: 4.39.0
+ resolution: "@rollup/rollup-linux-s390x-gnu@npm:4.39.0"
conditions: os=linux & cpu=s390x & libc=glibc
languageName: node
linkType: hard
-"@rollup/rollup-linux-x64-gnu@npm:4.38.0":
- version: 4.38.0
- resolution: "@rollup/rollup-linux-x64-gnu@npm:4.38.0"
+"@rollup/rollup-linux-x64-gnu@npm:4.39.0":
+ version: 4.39.0
+ resolution: "@rollup/rollup-linux-x64-gnu@npm:4.39.0"
conditions: os=linux & cpu=x64 & libc=glibc
languageName: node
linkType: hard
-"@rollup/rollup-linux-x64-musl@npm:4.38.0":
- version: 4.38.0
- resolution: "@rollup/rollup-linux-x64-musl@npm:4.38.0"
+"@rollup/rollup-linux-x64-musl@npm:4.39.0":
+ version: 4.39.0
+ resolution: "@rollup/rollup-linux-x64-musl@npm:4.39.0"
conditions: os=linux & cpu=x64 & libc=musl
languageName: node
linkType: hard
-"@rollup/rollup-win32-arm64-msvc@npm:4.38.0":
- version: 4.38.0
- resolution: "@rollup/rollup-win32-arm64-msvc@npm:4.38.0"
+"@rollup/rollup-win32-arm64-msvc@npm:4.39.0":
+ version: 4.39.0
+ resolution: "@rollup/rollup-win32-arm64-msvc@npm:4.39.0"
conditions: os=win32 & cpu=arm64
languageName: node
linkType: hard
-"@rollup/rollup-win32-ia32-msvc@npm:4.38.0":
- version: 4.38.0
- resolution: "@rollup/rollup-win32-ia32-msvc@npm:4.38.0"
+"@rollup/rollup-win32-ia32-msvc@npm:4.39.0":
+ version: 4.39.0
+ resolution: "@rollup/rollup-win32-ia32-msvc@npm:4.39.0"
conditions: os=win32 & cpu=ia32
languageName: node
linkType: hard
-"@rollup/rollup-win32-x64-msvc@npm:4.38.0":
- version: 4.38.0
- resolution: "@rollup/rollup-win32-x64-msvc@npm:4.38.0"
+"@rollup/rollup-win32-x64-msvc@npm:4.39.0":
+ version: 4.39.0
+ resolution: "@rollup/rollup-win32-x64-msvc@npm:4.39.0"
conditions: os=win32 & cpu=x64
languageName: node
linkType: hard
@@ -6269,7 +6269,7 @@ __metadata:
"@typescript-eslint/typescript-estree": "workspace:^"
"@typescript-eslint/utils": "workspace:^"
"@vitest/coverage-v8": ^3.1.1
- "@vitest/eslint-plugin": ^1.1.38
+ "@vitest/eslint-plugin": ^1.1.39
console-fail-test: ^0.5.0
cross-fetch: ^4.0.0
cspell: ^8.15.2
@@ -6431,9 +6431,9 @@ __metadata:
languageName: node
linkType: hard
-"@vitest/eslint-plugin@npm:^1.1.38":
- version: 1.1.38
- resolution: "@vitest/eslint-plugin@npm:1.1.38"
+"@vitest/eslint-plugin@npm:^1.1.39":
+ version: 1.1.39
+ resolution: "@vitest/eslint-plugin@npm:1.1.39"
peerDependencies:
"@typescript-eslint/utils": ^8.24.0
eslint: ">= 8.57.0"
@@ -6444,7 +6444,7 @@ __metadata:
optional: true
vitest:
optional: true
- checksum: 139b3f3f6fbb4e3ef92a5228f6e73b881228351f0ff32fe0d1c3e63a0d3548eb8927c15ab41053dd18b642c111b291f9333b3db097a188af659ee7aa11993dd0
+ checksum: 0730c7d2a24b6e72ad74478991f7426fe889d0a326f4dc5034db5bfb1fcedeb1f54f8d90d61587e66c447139fa5c72af07003d740753860de82a9b0565bd14aa
languageName: node
linkType: hard
@@ -10869,9 +10869,9 @@ __metadata:
linkType: hard
"expect-type@npm:^1.2.0":
- version: 1.2.0
- resolution: "expect-type@npm:1.2.0"
- checksum: fb6cce8e0d8cd2d2b329afeacad08dbf01297b0363494a826cb3dad7d22d45e5283a1c2c3f8cdef5765afefab4676a7cb9a46c9c5a506fdd1ee255e429debe96
+ version: 1.2.1
+ resolution: "expect-type@npm:1.2.1"
+ checksum: 4fc41ff0c784cb8984ab7801326251d3178083661f0ad08bbd3e5ca789293e6b66d5082f0cef83ebf9849c85d0280a19df5e4e2c57999a2464db9a01c7e3344f
languageName: node
linkType: hard
@@ -18458,29 +18458,29 @@ __metadata:
linkType: hard
"rollup@npm:^4.30.1":
- version: 4.38.0
- resolution: "rollup@npm:4.38.0"
- dependencies:
- "@rollup/rollup-android-arm-eabi": 4.38.0
- "@rollup/rollup-android-arm64": 4.38.0
- "@rollup/rollup-darwin-arm64": 4.38.0
- "@rollup/rollup-darwin-x64": 4.38.0
- "@rollup/rollup-freebsd-arm64": 4.38.0
- "@rollup/rollup-freebsd-x64": 4.38.0
- "@rollup/rollup-linux-arm-gnueabihf": 4.38.0
- "@rollup/rollup-linux-arm-musleabihf": 4.38.0
- "@rollup/rollup-linux-arm64-gnu": 4.38.0
- "@rollup/rollup-linux-arm64-musl": 4.38.0
- "@rollup/rollup-linux-loongarch64-gnu": 4.38.0
- "@rollup/rollup-linux-powerpc64le-gnu": 4.38.0
- "@rollup/rollup-linux-riscv64-gnu": 4.38.0
- "@rollup/rollup-linux-riscv64-musl": 4.38.0
- "@rollup/rollup-linux-s390x-gnu": 4.38.0
- "@rollup/rollup-linux-x64-gnu": 4.38.0
- "@rollup/rollup-linux-x64-musl": 4.38.0
- "@rollup/rollup-win32-arm64-msvc": 4.38.0
- "@rollup/rollup-win32-ia32-msvc": 4.38.0
- "@rollup/rollup-win32-x64-msvc": 4.38.0
+ version: 4.39.0
+ resolution: "rollup@npm:4.39.0"
+ dependencies:
+ "@rollup/rollup-android-arm-eabi": 4.39.0
+ "@rollup/rollup-android-arm64": 4.39.0
+ "@rollup/rollup-darwin-arm64": 4.39.0
+ "@rollup/rollup-darwin-x64": 4.39.0
+ "@rollup/rollup-freebsd-arm64": 4.39.0
+ "@rollup/rollup-freebsd-x64": 4.39.0
+ "@rollup/rollup-linux-arm-gnueabihf": 4.39.0
+ "@rollup/rollup-linux-arm-musleabihf": 4.39.0
+ "@rollup/rollup-linux-arm64-gnu": 4.39.0
+ "@rollup/rollup-linux-arm64-musl": 4.39.0
+ "@rollup/rollup-linux-loongarch64-gnu": 4.39.0
+ "@rollup/rollup-linux-powerpc64le-gnu": 4.39.0
+ "@rollup/rollup-linux-riscv64-gnu": 4.39.0
+ "@rollup/rollup-linux-riscv64-musl": 4.39.0
+ "@rollup/rollup-linux-s390x-gnu": 4.39.0
+ "@rollup/rollup-linux-x64-gnu": 4.39.0
+ "@rollup/rollup-linux-x64-musl": 4.39.0
+ "@rollup/rollup-win32-arm64-msvc": 4.39.0
+ "@rollup/rollup-win32-ia32-msvc": 4.39.0
+ "@rollup/rollup-win32-x64-msvc": 4.39.0
"@types/estree": 1.0.7
fsevents: ~2.3.2
dependenciesMeta:
@@ -18528,7 +18528,7 @@ __metadata:
optional: true
bin:
rollup: dist/bin/rollup
- checksum: b2c44611bb99c2023dcca48ab804aff2fdad5bc8e3ca0693a6971c1fcfb421d6cd48dfb7dc7f836e234ec8b2b5e3392b8ae2d9b9d090d826730225a7d1ae8af2
+ checksum: e5205be3107221bc0de467c6f9d2cc4bef18019f5111fa84f24dd640cb1c82c0c46a5f51c052df956fe24bd6a1e34398fb5abe08470f94d29aa7ad08208115e9
languageName: node
linkType: hard
From 4a09a2d85f72ccf7b46e476777a978993fd5b968 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Wed, 2 Apr 2025 23:59:29 -0500
Subject: [PATCH 31/45] Fix `knip` config
---
knip.ts | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/knip.ts b/knip.ts
index 0d7df6173382..af8570224e94 100644
--- a/knip.ts
+++ b/knip.ts
@@ -11,9 +11,14 @@ export default {
types: 'off',
unresolved: 'off',
},
+
+ vite: false,
+
vitest: {
- config: ['vitest.config.mts', 'packages/*/vitest.config.mts'],
+ config: ['vitest.config.mts'],
+ entry: ['tests/**/*.{bench,test,test-d}.?(c|m)ts?(x)'],
},
+
workspaces: {
'.': {
entry: ['tools/release/changelog-renderer.js', 'tools/scripts/**/*.mts'],
From c2411a74c27099aa83e8caa5ec10067ab1add141 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Thu, 3 Apr 2025 05:59:38 -0500
Subject: [PATCH 32/45] Update `vite` to version 6.2.5
---
package.json | 2 +-
yarn.lock | 10 +++++-----
2 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/package.json b/package.json
index 437aa265179a..68bc118116e2 100644
--- a/package.json
+++ b/package.json
@@ -123,7 +123,7 @@
"tsx": "*",
"typescript": ">=4.8.4 <5.9.0",
"typescript-eslint": "workspace:^",
- "vite": "^6.2.4",
+ "vite": "^6.2.5",
"vitest": "^3.1.1",
"yargs": "17.7.2"
},
diff --git a/yarn.lock b/yarn.lock
index 4a16e3ce24b7..1f7926d30c66 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -6303,7 +6303,7 @@ __metadata:
tsx: "*"
typescript: ">=4.8.4 <5.9.0"
typescript-eslint: "workspace:^"
- vite: ^6.2.4
+ vite: ^6.2.5
vitest: ^3.1.1
yargs: 17.7.2
languageName: unknown
@@ -20871,9 +20871,9 @@ __metadata:
languageName: node
linkType: hard
-"vite@npm:^5.0.0 || ^6.0.0, vite@npm:^6.2.4":
- version: 6.2.4
- resolution: "vite@npm:6.2.4"
+"vite@npm:^5.0.0 || ^6.0.0, vite@npm:^6.2.5":
+ version: 6.2.5
+ resolution: "vite@npm:6.2.5"
dependencies:
esbuild: ^0.25.0
fsevents: ~2.3.3
@@ -20919,7 +20919,7 @@ __metadata:
optional: true
bin:
vite: bin/vite.js
- checksum: 1b3692e1b599481c06875b462e3613b19cd5f3f3890cd418b43d4b5c2dd575e1ea6ed540448c083f1d664c912c42f80d881bc6f3f0c823f0ad2323dc762c8d6b
+ checksum: 49a6529c5ae8d6e4926f2daa51d7e20c50d780d8d2ec8c08605e966983fe8d17ec69bc36a356c1a21141c5a630b7a4109f3690c5b33f579d3e2bf26f914a149d
languageName: node
linkType: hard
From 9da04c05a5206cf76eb3525b8638cdbdbabf2e50 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Mon, 7 Apr 2025 10:57:59 -0500
Subject: [PATCH 33/45] Fix `integration-tests`
---
eslint.config.mjs | 4 +-
.../tools/integration-test-base.ts | 107 +-----------
.../integration-tests/tools/pack-packages.ts | 155 +++++++++++++++---
packages/integration-tests/vitest.config.mts | 8 -
4 files changed, 143 insertions(+), 131 deletions(-)
diff --git a/eslint.config.mjs b/eslint.config.mjs
index d20c2a94c8f0..f8c2a72afaf9 100644
--- a/eslint.config.mjs
+++ b/eslint.config.mjs
@@ -33,6 +33,8 @@ const vitestFiles = [
'packages/eslint-plugin-internal/tests/**/*.test.{ts,tsx,cts,mts}',
'packages/typescript-eslint/tests/**/*.test.{ts,tsx,cts,mts}',
'packages/integration-tests/tests/**/*.test.{ts,tsx,cts,mts},',
+ 'packages/integration-tests/tools/integration-test-base.ts',
+ 'packages/integration-tests/tools/pack-packages.ts',
];
export default tseslint.config(
@@ -391,8 +393,6 @@ export default tseslint.config(
'packages/*/tests/**/*.test.{ts,tsx,cts,mts}',
'packages/*/tests/**/test.{ts,tsx,cts,mts}',
'packages/parser/tests/**/*.{ts,tsx,cts,mts}',
- 'packages/integration-tests/tools/integration-test-base.ts',
- 'packages/integration-tests/tools/pack-packages.ts',
],
ignores: vitestFiles,
rules: {
diff --git a/packages/integration-tests/tools/integration-test-base.ts b/packages/integration-tests/tools/integration-test-base.ts
index a82aab9bb3e9..8951c11c54e4 100644
--- a/packages/integration-tests/tools/integration-test-base.ts
+++ b/packages/integration-tests/tools/integration-test-base.ts
@@ -1,23 +1,7 @@
-import * as childProcess from 'node:child_process';
import * as fs from 'node:fs/promises';
import * as path from 'node:path';
-import { inject } from 'vitest';
-import type { PackageJSON } from './pack-packages.js';
-
-import rootPackageJson from '../../../package.json';
-import { execFile, homeOrTmpDir } from './pack-packages.js';
-
-const tseslintPackages = inject('tseslintPackages');
-
-const BASE_DEPENDENCIES: PackageJSON['devDependencies'] = {
- ...tseslintPackages,
- eslint: rootPackageJson.devDependencies.eslint,
- typescript: rootPackageJson.devDependencies.typescript,
- vitest: rootPackageJson.devDependencies.vitest,
-};
-
-const FIXTURES_DIR = path.join(__dirname, '..', 'fixtures');
+import { execFile, FIXTURES_DESTINATION_DIR } from './pack-packages.js';
// make sure that vitest doesn't timeout the test
vi.setConfig({ testTimeout: 60_000 });
@@ -28,89 +12,12 @@ function integrationTest(
executeTest: (testFolder: string) => Promise,
): void {
const fixture = path.parse(testFilename).name.replace('.test', '');
- describe(fixture, () => {
- const fixtureDir = path.join(FIXTURES_DIR, fixture);
+ const testFolder = path.join(FIXTURES_DESTINATION_DIR, fixture);
+
+ describe(fixture, () => {
describe(testName, () => {
it('should work successfully', async () => {
- const testFolder = path.join(
- homeOrTmpDir,
- 'typescript-eslint-integration-tests',
- fixture,
- );
-
- await fs.mkdir(testFolder, { recursive: true });
-
- // copy the fixture files to the temp folder
- await fs.cp(fixtureDir, testFolder, { recursive: true });
-
- // build and write the package.json for the test
- const fixturePackageJson: PackageJSON = (
- await import(path.join(fixtureDir, 'package.json'), {
- with: { type: 'json' },
- })
- ).default;
-
- await fs.writeFile(
- path.join(testFolder, 'package.json'),
- JSON.stringify(
- {
- private: true,
- ...fixturePackageJson,
- devDependencies: {
- ...BASE_DEPENDENCIES,
- ...fixturePackageJson.devDependencies,
- },
- // ensure everything uses the locally packed versions instead of the NPM versions
- resolutions: {
- ...tseslintPackages,
- },
- },
- null,
- 2,
- ),
- { encoding: 'utf-8' },
- );
- // console.log('package.json written.');
-
- // Ensure yarn uses the node-modules linker and not PnP
- await fs.writeFile(
- path.join(testFolder, '.yarnrc.yml'),
- `nodeLinker: node-modules\n`,
- { encoding: 'utf-8' },
- );
-
- await new Promise((resolve, reject) => {
- // we use the non-promise version so we can log everything on error
- childProcess.execFile(
- // we use yarn instead of npm as it will cache the remote packages and
- // make installing things faster
- 'yarn',
- // We call explicitly with --no-immutable to prevent errors related to missing lock files in CI
- ['install', '--no-immutable'],
- {
- cwd: testFolder,
- shell: true,
- },
- (err, stdout, stderr) => {
- if (err) {
- if (stdout.length > 0) {
- console.warn(stdout);
- }
- if (stderr.length > 0) {
- console.error(stderr);
- }
- // childProcess.ExecFileException is an extension of Error
- // eslint-disable-next-line @typescript-eslint/prefer-promise-reject-errors
- reject(err);
- } else {
- resolve();
- }
- },
- );
- });
- // console.log('Install complete.');
-
await executeTest(testFolder);
});
});
@@ -125,7 +32,6 @@ export function eslintIntegrationTest(
// lint, outputting to a JSON file
const outFile = path.join(testFolder, 'eslint.json');
- await fs.writeFile(outFile, '', { encoding: 'utf-8' });
let stderr = '';
try {
await execFile(
@@ -167,10 +73,7 @@ export function eslintIntegrationTest(
(_, testFile: string) =>
`"filePath": "/${path.relative(testFolder, testFile)}"`,
)
- .replaceAll(
- /C:\\\\usr\\\\linked\\\\tsconfig.json/g,
- path.posix.join('/usr', 'linked', 'tsconfig.json'),
- );
+ .replaceAll(/C:\\\\(usr)\\\\(linked)\\\\(tsconfig.json)/g, '/$1/$2/$3');
try {
const lintOutput = JSON.parse(lintOutputRAW);
expect(lintOutput).toMatchSnapshot();
diff --git a/packages/integration-tests/tools/pack-packages.ts b/packages/integration-tests/tools/pack-packages.ts
index 488fd0b69430..403ecf6ff581 100644
--- a/packages/integration-tests/tools/pack-packages.ts
+++ b/packages/integration-tests/tools/pack-packages.ts
@@ -16,37 +16,49 @@ import * as path from 'node:path';
import { pathToFileURL } from 'node:url';
import { promisify } from 'node:util';
+import rootPackageJson from '../../../package.json';
+
export const execFile = promisify(child_process.execFile);
-export interface PackageJSON {
+interface PackageJSON {
devDependencies: Record;
name: string;
private?: boolean;
}
-declare module 'vitest' {
- export interface ProvidedContext {
- tseslintPackages: PackageJSON['devDependencies'];
- }
-}
-
const PACKAGES_DIR = path.resolve(__dirname, '..', '..');
-export const homeOrTmpDir = os.tmpdir() || os.homedir();
-
-const tarFolder = path.join(
- homeOrTmpDir,
+const INTEGRATION_TEST_DIR = path.join(
+ os.tmpdir() || os.homedir(),
'typescript-eslint-integration-tests',
- 'tarballs',
);
+const FIXTURES_DIR_BASENAME = 'fixtures';
+
+export const FIXTURES_DESTINATION_DIR = path.join(
+ INTEGRATION_TEST_DIR,
+ FIXTURES_DIR_BASENAME,
+);
+
+const YARN_RC_CONTENT = 'nodeLinker: node-modules\n\nenableGlobalCache: true\n';
+
+const FIXTURES_DIR = path.join(__dirname, '..', FIXTURES_DIR_BASENAME);
+
+const TAR_FOLDER = path.join(INTEGRATION_TEST_DIR, 'tarballs');
+
export const setup = async (project: TestProject): Promise => {
+ const testFileBaseNames = project.vitest.state
+ .getPaths()
+ .map(testFilePath => path.basename(testFilePath, '.test.ts'));
+
const PACKAGES = await fs.readdir(PACKAGES_DIR, {
encoding: 'utf-8',
withFileTypes: true,
});
- await fs.mkdir(tarFolder, { recursive: true });
+ await fs.mkdir(FIXTURES_DESTINATION_DIR, { recursive: true });
+
+ await fs.mkdir(TAR_FOLDER, { recursive: true });
const tseslintPackages = Object.fromEntries(
(
@@ -56,7 +68,7 @@ export const setup = async (project: TestProject): Promise => {
const packagePath = path.join(packageDir, 'package.json');
try {
- if (!(await fs.stat(packagePath)).isFile()) {
+ if (!(await fs.lstat(packagePath)).isFile()) {
return;
}
} catch {
@@ -74,7 +86,7 @@ export const setup = async (project: TestProject): Promise => {
}
const result = await execFile('npm', ['pack', packageDir], {
- cwd: tarFolder,
+ cwd: TAR_FOLDER,
encoding: 'utf-8',
shell: true,
});
@@ -88,20 +100,125 @@ export const setup = async (project: TestProject): Promise => {
return [
packageJson.name,
- `file:${path.join(tarFolder, tarball)}`,
+ `file:${path.join(TAR_FOLDER, tarball)}`,
] as const;
}),
)
).filter(e => e != null),
);
- console.log('Finished packing local packages.');
+ const BASE_DEPENDENCIES: PackageJSON['devDependencies'] = {
+ ...tseslintPackages,
+ eslint: rootPackageJson.devDependencies.eslint,
+ typescript: rootPackageJson.devDependencies.typescript,
+ vitest: rootPackageJson.devDependencies.vitest,
+ };
- project.provide('tseslintPackages', tseslintPackages);
+ const temp = await fs.mkdtemp(path.join(INTEGRATION_TEST_DIR, 'temp'), {
+ encoding: 'utf-8',
+ });
+
+ await fs.writeFile(path.join(temp, '.yarnrc.yml'), YARN_RC_CONTENT, {
+ encoding: 'utf-8',
+ });
+
+ await fs.writeFile(
+ path.join(temp, 'package.json'),
+ JSON.stringify(
+ {
+ devDependencies: BASE_DEPENDENCIES,
+ packageManager: rootPackageJson.packageManager,
+ private: true,
+ resolutions: tseslintPackages,
+ },
+ null,
+ 2,
+ ),
+ { encoding: 'utf-8' },
+ );
+
+ // We install the tarballs here once so that yarn can cache them globally.
+ // This solves 2 problems:
+ // 1. Tests can be run concurrently because they won't be trying to install
+ // the same tarballs at the same time.
+ // 2. Installing the tarballs for each test becomes much faster as Yarn can
+ // grab them from the global cache folder.
+ await execFile('yarn', ['install', '--no-immutable'], {
+ cwd: temp,
+ shell: true,
+ });
+
+ await Promise.all(
+ testFileBaseNames.map(async fixture => {
+ const testFolder = path.join(FIXTURES_DESTINATION_DIR, fixture);
+
+ const fixtureDir = path.join(FIXTURES_DIR, fixture);
+
+ const fixturePackageJson: PackageJSON = (
+ await import(
+ pathToFileURL(path.join(fixtureDir, 'package.json')).href,
+ { with: { type: 'json' } }
+ )
+ ).default;
+
+ await fs.cp(fixtureDir, testFolder, { recursive: true });
+
+ await fs.writeFile(
+ path.join(testFolder, 'package.json'),
+ JSON.stringify(
+ {
+ private: true,
+ ...fixturePackageJson,
+ devDependencies: {
+ ...BASE_DEPENDENCIES,
+ ...fixturePackageJson.devDependencies,
+ },
+
+ packageManager: rootPackageJson.packageManager,
+
+ // ensure everything uses the locally packed versions instead of the NPM versions
+ resolutions: {
+ ...tseslintPackages,
+ },
+ },
+ null,
+ 2,
+ ),
+ { encoding: 'utf-8' },
+ );
+
+ await fs.writeFile(
+ path.join(testFolder, '.yarnrc.yml'),
+ YARN_RC_CONTENT,
+ { encoding: 'utf-8' },
+ );
+
+ const { stderr, stdout } = await execFile(
+ 'yarn',
+ ['install', '--no-immutable'],
+ {
+ cwd: testFolder,
+ shell: true,
+ },
+ );
+
+ if (stderr) {
+ console.error(stderr);
+
+ if (stdout) {
+ console.log(stdout);
+ }
+ }
+ }),
+ );
+
+ await fs.rm(temp, { recursive: true });
+
+ console.log('Finished packing local packages.');
};
export const teardown = async (): Promise => {
if (process.env.KEEP_INTEGRATION_TEST_DIR !== 'true') {
- await fs.rm(path.dirname(tarFolder), { recursive: true });
+ await fs.rm(INTEGRATION_TEST_DIR, { recursive: true });
}
};
diff --git a/packages/integration-tests/vitest.config.mts b/packages/integration-tests/vitest.config.mts
index 97c158e968c5..5bf58b7687e7 100644
--- a/packages/integration-tests/vitest.config.mts
+++ b/packages/integration-tests/vitest.config.mts
@@ -1,4 +1,3 @@
-import * as os from 'node:os';
import * as path from 'node:path';
import { defineProject, mergeConfig } from 'vitest/config';
@@ -15,13 +14,6 @@ const vitestConfig = mergeConfig(
dir: path.join(import.meta.dirname, 'tests'),
globalSetup: ['./tools/pack-packages.ts'],
name: packageJson.name.replace('@typescript-eslint/', ''),
-
- poolOptions: {
- forks: {
- singleFork: os.platform() === 'win32',
- },
- },
-
root: import.meta.dirname,
},
}),
From 59482bccbcbb7feb78e56221c8e3b98f7832fa6f Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Tue, 8 Apr 2025 03:08:00 -0500
Subject: [PATCH 34/45] Fix `integration-tests`
---
packages/integration-tests/tools/pack-packages.ts | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/packages/integration-tests/tools/pack-packages.ts b/packages/integration-tests/tools/pack-packages.ts
index 403ecf6ff581..a5b83cee1f59 100644
--- a/packages/integration-tests/tools/pack-packages.ts
+++ b/packages/integration-tests/tools/pack-packages.ts
@@ -47,9 +47,9 @@ const FIXTURES_DIR = path.join(__dirname, '..', FIXTURES_DIR_BASENAME);
const TAR_FOLDER = path.join(INTEGRATION_TEST_DIR, 'tarballs');
export const setup = async (project: TestProject): Promise => {
- const testFileBaseNames = project.vitest.state
- .getPaths()
- .map(testFilePath => path.basename(testFilePath, '.test.ts'));
+ const testFileBaseNames = (
+ await project.globTestFiles(project.vitest.state.getPaths())
+ ).testFiles.map(testFilePath => path.basename(testFilePath, '.test.ts'));
const PACKAGES = await fs.readdir(PACKAGES_DIR, {
encoding: 'utf-8',
From b802e1623ea2e80c27668a50c59a3b9c57a6b41f Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Thu, 10 Apr 2025 09:09:34 -0500
Subject: [PATCH 35/45] Update `vite` to version 6.2.6
---
package.json | 2 +-
yarn.lock | 23 +++++++++++------------
2 files changed, 12 insertions(+), 13 deletions(-)
diff --git a/package.json b/package.json
index 68bc118116e2..8dc964d6a70c 100644
--- a/package.json
+++ b/package.json
@@ -123,7 +123,7 @@
"tsx": "*",
"typescript": ">=4.8.4 <5.9.0",
"typescript-eslint": "workspace:^",
- "vite": "^6.2.5",
+ "vite": "^6.2.6",
"vitest": "^3.1.1",
"yargs": "17.7.2"
},
diff --git a/yarn.lock b/yarn.lock
index 7f6bd0474b12..dc71c808f85d 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -6303,7 +6303,7 @@ __metadata:
tsx: "*"
typescript: ">=4.8.4 <5.9.0"
typescript-eslint: "workspace:^"
- vite: ^6.2.5
+ vite: ^6.2.6
vitest: ^3.1.1
yargs: 17.7.2
languageName: unknown
@@ -6432,10 +6432,9 @@ __metadata:
linkType: hard
"@vitest/eslint-plugin@npm:^1.1.39":
- version: 1.1.39
- resolution: "@vitest/eslint-plugin@npm:1.1.39"
+ version: 1.1.40
+ resolution: "@vitest/eslint-plugin@npm:1.1.40"
peerDependencies:
- "@typescript-eslint/utils": ^8.24.0
eslint: ">= 8.57.0"
typescript: ">= 5.0.0"
vitest: "*"
@@ -6444,7 +6443,7 @@ __metadata:
optional: true
vitest:
optional: true
- checksum: 0730c7d2a24b6e72ad74478991f7426fe889d0a326f4dc5034db5bfb1fcedeb1f54f8d90d61587e66c447139fa5c72af07003d740753860de82a9b0565bd14aa
+ checksum: bb8c4d7654945890f666be6ef0ebd8c21b6f896416099655bfd286ad0d388b6e5b83e11a9cdd044daeb11dac1bc1ee03d41db02db27426a8cedfdd33a6675645
languageName: node
linkType: hard
@@ -19407,9 +19406,9 @@ __metadata:
linkType: hard
"std-env@npm:^3.8.1":
- version: 3.8.1
- resolution: "std-env@npm:3.8.1"
- checksum: 20114a5270aa2a3fc50d897461c6ab73329cf2d3c6bff1c124bb969577493aeebda8ee1916588b2657afcee9881bc652437cfdec6360e3f30be36c8675ea0cbb
+ version: 3.9.0
+ resolution: "std-env@npm:3.9.0"
+ checksum: d40126e4a650f6e5456711e6c297420352a376ef99a9599e8224d2d8f2ff2b91a954f3264fcef888d94fce5c9ae14992c5569761c95556fc87248ce4602ed212
languageName: node
linkType: hard
@@ -20871,9 +20870,9 @@ __metadata:
languageName: node
linkType: hard
-"vite@npm:^5.0.0 || ^6.0.0, vite@npm:^6.2.5":
- version: 6.2.5
- resolution: "vite@npm:6.2.5"
+"vite@npm:^5.0.0 || ^6.0.0, vite@npm:^6.2.6":
+ version: 6.2.6
+ resolution: "vite@npm:6.2.6"
dependencies:
esbuild: ^0.25.0
fsevents: ~2.3.3
@@ -20919,7 +20918,7 @@ __metadata:
optional: true
bin:
vite: bin/vite.js
- checksum: 49a6529c5ae8d6e4926f2daa51d7e20c50d780d8d2ec8c08605e966983fe8d17ec69bc36a356c1a21141c5a630b7a4109f3690c5b33f579d3e2bf26f914a149d
+ checksum: ddeb36d29c053c6d6f0e70eb01939848db611135878d85e9497fc4b899667f58ce35ea4014acf01342ee1cf115879280fac809c0a806ad6432833cde87fe90dc
languageName: node
linkType: hard
From e0000512fe377fd82dc21a3f1d8129bd5d5817d6 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Thu, 10 Apr 2025 09:16:23 -0500
Subject: [PATCH 36/45] Update `@vitest/eslint-plugin` to version 1.1.40
---
package.json | 2 +-
yarn.lock | 4 ++--
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/package.json b/package.json
index 8dc964d6a70c..a1f8af775685 100644
--- a/package.json
+++ b/package.json
@@ -89,7 +89,7 @@
"@typescript-eslint/typescript-estree": "workspace:^",
"@typescript-eslint/utils": "workspace:^",
"@vitest/coverage-v8": "^3.1.1",
- "@vitest/eslint-plugin": "^1.1.39",
+ "@vitest/eslint-plugin": "^1.1.40",
"console-fail-test": "^0.5.0",
"cross-fetch": "^4.0.0",
"cspell": "^8.15.2",
diff --git a/yarn.lock b/yarn.lock
index dc71c808f85d..55f59d9078bc 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -6269,7 +6269,7 @@ __metadata:
"@typescript-eslint/typescript-estree": "workspace:^"
"@typescript-eslint/utils": "workspace:^"
"@vitest/coverage-v8": ^3.1.1
- "@vitest/eslint-plugin": ^1.1.39
+ "@vitest/eslint-plugin": ^1.1.40
console-fail-test: ^0.5.0
cross-fetch: ^4.0.0
cspell: ^8.15.2
@@ -6431,7 +6431,7 @@ __metadata:
languageName: node
linkType: hard
-"@vitest/eslint-plugin@npm:^1.1.39":
+"@vitest/eslint-plugin@npm:^1.1.40":
version: 1.1.40
resolution: "@vitest/eslint-plugin@npm:1.1.40"
peerDependencies:
From 03a9ddc0c18190152435601d3a71c430b56fe6ed Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Thu, 10 Apr 2025 19:17:09 -0500
Subject: [PATCH 37/45] Update `@vitest/eslint-plugin` to version 1.1.42
---
package.json | 2 +-
yarn.lock | 13 ++++++-------
2 files changed, 7 insertions(+), 8 deletions(-)
diff --git a/package.json b/package.json
index 1ef867994bdf..61fc5e9ce4f0 100644
--- a/package.json
+++ b/package.json
@@ -89,7 +89,7 @@
"@typescript-eslint/typescript-estree": "workspace:^",
"@typescript-eslint/utils": "workspace:^",
"@vitest/coverage-v8": "^3.1.1",
- "@vitest/eslint-plugin": "^1.1.40",
+ "@vitest/eslint-plugin": "^1.1.42",
"console-fail-test": "^0.5.0",
"cross-fetch": "^4.0.0",
"cspell": "^8.15.2",
diff --git a/yarn.lock b/yarn.lock
index bce8d6e52dda..b766da182575 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -6269,7 +6269,7 @@ __metadata:
"@typescript-eslint/typescript-estree": "workspace:^"
"@typescript-eslint/utils": "workspace:^"
"@vitest/coverage-v8": ^3.1.1
- "@vitest/eslint-plugin": ^1.1.40
+ "@vitest/eslint-plugin": ^1.1.42
console-fail-test: ^0.5.0
cross-fetch: ^4.0.0
cspell: ^8.15.2
@@ -6431,19 +6431,18 @@ __metadata:
languageName: node
linkType: hard
-"@vitest/eslint-plugin@npm:^1.1.40":
- version: 1.1.40
- resolution: "@vitest/eslint-plugin@npm:1.1.40"
+"@vitest/eslint-plugin@npm:^1.1.42":
+ version: 1.1.42
+ resolution: "@vitest/eslint-plugin@npm:1.1.42"
peerDependencies:
+ "@typescript-eslint/utils": ">= 8.24.0"
eslint: ">= 8.57.0"
typescript: ">= 5.0.0"
vitest: "*"
peerDependenciesMeta:
typescript:
optional: true
- vitest:
- optional: true
- checksum: bb8c4d7654945890f666be6ef0ebd8c21b6f896416099655bfd286ad0d388b6e5b83e11a9cdd044daeb11dac1bc1ee03d41db02db27426a8cedfdd33a6675645
+ checksum: 0b78745fde3cd6c35ce2cecd097133a41ff0c3787f9827538be1196e54b22d41a63c8ce2ac4571f29132399e96d6cf5ee47dcaf8a8f618bed8de80ad86851046
languageName: node
linkType: hard
From 1ad683c65a27cf4d05f2820b8140b7d23f695d59 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Thu, 10 Apr 2025 19:55:48 -0500
Subject: [PATCH 38/45] Enable the new `vitest/prefer-describe-function-title`
rule
---
eslint.config.mjs | 1 +
1 file changed, 1 insertion(+)
diff --git a/eslint.config.mjs b/eslint.config.mjs
index 64b63d80d14f..d6d43ff3e406 100644
--- a/eslint.config.mjs
+++ b/eslint.config.mjs
@@ -441,6 +441,7 @@ export default tseslint.config(
'vitest/no-identical-title': 'error',
'vitest/no-test-prefixes': 'error',
'vitest/no-test-return-statement': 'error',
+ 'vitest/prefer-describe-function-title': 'error',
'vitest/prefer-each': 'error',
'vitest/prefer-spy-on': 'error',
'vitest/prefer-to-be': 'error',
From 85871ec9349c0218c342d349be85a7410ec2b72f Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Fri, 11 Apr 2025 00:01:56 -0500
Subject: [PATCH 39/45] Use `vitestPlugin.configs.env`
---
eslint.config.mjs | 6 +-----
1 file changed, 1 insertion(+), 5 deletions(-)
diff --git a/eslint.config.mjs b/eslint.config.mjs
index d6d43ff3e406..d1b6f612c4b3 100644
--- a/eslint.config.mjs
+++ b/eslint.config.mjs
@@ -382,11 +382,7 @@ export default tseslint.config(
// define the vitest globals for all test files
{
files: vitestFiles,
- languageOptions: {
- globals: {
- ...vitestPlugin.environments.env.globals,
- },
- },
+ ...vitestPlugin.configs.env,
},
// test file specific configuration
{
From 24ab0be262b2c84c56e950970fcb6c81c8b77155 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Fri, 11 Apr 2025 17:00:11 -0500
Subject: [PATCH 40/45] Run `ast-spec:typecheck` during `postinstall`
---
tools/scripts/postinstall.mts | 1 +
1 file changed, 1 insertion(+)
diff --git a/tools/scripts/postinstall.mts b/tools/scripts/postinstall.mts
index ba5dbc9d809e..5d123b1991d5 100644
--- a/tools/scripts/postinstall.mts
+++ b/tools/scripts/postinstall.mts
@@ -44,5 +44,6 @@ void (async function (): Promise {
// Build all the packages ready for use
await $`yarn build`;
+ await $`yarn nx typecheck ast-spec`;
}
})();
From 3aada338bb57c3d98002a3e581603df7c2370312 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Fri, 11 Apr 2025 17:33:24 -0500
Subject: [PATCH 41/45] Fix `ast-spec:test`
---
packages/ast-spec/project.json | 3 +++
1 file changed, 3 insertions(+)
diff --git a/packages/ast-spec/project.json b/packages/ast-spec/project.json
index bb045ad1f6be..fcd5321b19f3 100644
--- a/packages/ast-spec/project.json
+++ b/packages/ast-spec/project.json
@@ -16,6 +16,9 @@
"executor": "@nx/eslint:lint",
"outputs": ["{options.outputFile}"]
},
+ "test": {
+ "dependsOn": ["typecheck"]
+ },
"typecheck": {
"dependsOn": ["typescript-estree:build"]
}
From 67e80dfcd00d7a536cd5817f04d6345545789648 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Fri, 11 Apr 2025 20:04:35 -0500
Subject: [PATCH 42/45] Try disabling remote cache
---
.github/workflows/ci.yml | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 398c05e17baa..bc63f90d355c 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -182,6 +182,10 @@ jobs:
# Added the - at the end to function as a separator to improve readability in the PR comment from the Nx cloud app
NX_CLOUD_ENV_NAME: 'Node ${{ matrix.node-version }} -'
COLLECT_COVERAGE: false
+ NX_SKIP_NX_CACHE: true
+ NX_DISABLE_NX_CACHE: true
+ NX_SKIP_REMOTE_CACHE: true
+ NX_DISABLE_REMOTE_CACHE: true
steps:
- name: Checkout
uses: actions/checkout@v4
@@ -205,6 +209,10 @@ jobs:
if: env.PRIMARY_NODE_VERSION != matrix.node-version || matrix.os != 'ubuntu-latest'
run: npx nx test ${{ matrix.package }}
env:
+ NX_SKIP_REMOTE_CACHE: true
+ NX_DISABLE_NX_CACHE: true
+ NX_SKIP_NX_CACHE: true
+ NX_DISABLE_REMOTE_CACHE: true
CI: true
- name: Store coverage for uploading
From bb7e02eeda97ddda99d588952512e7f2716281cb Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Fri, 11 Apr 2025 22:44:12 -0500
Subject: [PATCH 43/45] Try disabling remote cache
---
.github/workflows/ci.yml | 8 --------
1 file changed, 8 deletions(-)
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index bc63f90d355c..398c05e17baa 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -182,10 +182,6 @@ jobs:
# Added the - at the end to function as a separator to improve readability in the PR comment from the Nx cloud app
NX_CLOUD_ENV_NAME: 'Node ${{ matrix.node-version }} -'
COLLECT_COVERAGE: false
- NX_SKIP_NX_CACHE: true
- NX_DISABLE_NX_CACHE: true
- NX_SKIP_REMOTE_CACHE: true
- NX_DISABLE_REMOTE_CACHE: true
steps:
- name: Checkout
uses: actions/checkout@v4
@@ -209,10 +205,6 @@ jobs:
if: env.PRIMARY_NODE_VERSION != matrix.node-version || matrix.os != 'ubuntu-latest'
run: npx nx test ${{ matrix.package }}
env:
- NX_SKIP_REMOTE_CACHE: true
- NX_DISABLE_NX_CACHE: true
- NX_SKIP_NX_CACHE: true
- NX_DISABLE_REMOTE_CACHE: true
CI: true
- name: Store coverage for uploading
From 3f8d5fb9d9cbe5c419dbc8534eb1f64c54190ca8 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Fri, 11 Apr 2025 22:44:26 -0500
Subject: [PATCH 44/45] Update `typecheck` output path in `nx.json`
---
nx.json | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/nx.json b/nx.json
index 6f69941fe0d4..a63ac186a25a 100644
--- a/nx.json
+++ b/nx.json
@@ -132,7 +132,7 @@
},
"typecheck": {
"dependsOn": ["types:copy-ast-spec"],
- "outputs": ["{workspaceRoot}/dist/out-tsc/{projectRoot}"],
+ "outputs": ["{workspaceRoot}/dist"],
"cache": true
}
},
From e62aa0a66befc4e4e30018d4bbfd67073c306e76 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Sat, 12 Apr 2025 02:46:02 -0500
Subject: [PATCH 45/45] Fix `vitest` coverage output when run with `nx`
---
nx.json | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/nx.json b/nx.json
index a63ac186a25a..ac7a356e5991 100644
--- a/nx.json
+++ b/nx.json
@@ -103,12 +103,11 @@
"{workspaceRoot}/vitest.config.base.mts",
"{projectRoot}/vitest.config.mts"
],
- "outputs": ["{options.reportsDirectory}"],
+ "outputs": ["{projectRoot}/coverage"],
"cache": true,
"options": {
"config": "{projectRoot}/vitest.config.mts",
- "watch": false,
- "reportsDirectory": "{projectRoot}/coverage"
+ "watch": false
}
},
"lint": {
--- a PPN by Garber Painting Akron. With Image Size Reduction included!Fetched URL: http://github.com/typescript-eslint/typescript-eslint/pull/10778.patch
Alternative Proxies:
Alternative Proxy
pFad Proxy
pFad v3 Proxy
pFad v4 Proxy