Content-Length: 209209 | pFad | http://github.com/typescript-eslint/typescript-eslint/pull/10767.patch
thub.com
From 9d61f5179e3ff6b2dda3496176afd5d66c42c278 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Mon, 3 Feb 2025 10:23:58 -0600
Subject: [PATCH 01/33] Install `vitest`
---
packages/type-utils/package.json | 6 +-
yarn.lock | 676 ++++++++++++++-----------------
2 files changed, 298 insertions(+), 384 deletions(-)
diff --git a/packages/type-utils/package.json b/packages/type-utils/package.json
index 5d30290cc412..ac14ce2e1681 100644
--- a/packages/type-utils/package.json
+++ b/packages/type-utils/package.json
@@ -57,14 +57,14 @@
"typescript": ">=4.8.4 <5.9.0"
},
"devDependencies": {
- "@jest/types": "29.6.3",
"@typescript-eslint/parser": "8.29.0",
+ "@vitest/coverage-v8": "^3.0.7",
"ajv": "^6.12.6",
"downlevel-dts": "*",
- "jest": "29.7.0",
"prettier": "^3.2.5",
"rimraf": "*",
- "typescript": "*"
+ "typescript": "*",
+ "vitest": "^3.0.7"
},
"funding": {
"type": "opencollective",
diff --git a/yarn.lock b/yarn.lock
index 960e7d2d1c13..3fbeca172cc3 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.26.9
+ resolution: "@babel/parser@npm:7.26.9"
dependencies:
- "@babel/types": ^7.26.10
+ "@babel/types": ^7.26.9
bin:
parser: ./bin/babel-parser.js
- checksum: 81f9af962aea55a2973d213dffc6191939df7eba0511ba585d23f0d838931f5fca2efb83ae382e4b9bb486f20ae1b2607cb1b8be49af89e9f011fb4355727f47
+ checksum: 2df965dbf3c67d19dc437412ceef23033b4d39b0dbd7cb498d8ab9ad9e1738338656ee72676199773b37d658edf9f4161cf255515234fed30695d74e73be5514
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.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: 07340068ea3824dcaccf702dfc9628175c9926912ad6efba182d8b07e20953297d0a514f6fb103a61b9d5c555c8b87fc2237ddb06efebe14794eefc921dfa114
+ checksum: cc124c149615deb30343a4c81ac5b0e3a68bdb4b1bd61a91a2859ee8e5e5f400f6ff65be4740f407c17bfc09baa9c777e7f8f765dccf3284963956b67ac95a38
languageName: node
linkType: hard
@@ -3048,13 +3048,6 @@ __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"
@@ -3069,13 +3062,6 @@ __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"
@@ -3090,13 +3076,6 @@ __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"
@@ -3111,13 +3090,6 @@ __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"
@@ -3132,13 +3104,6 @@ __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"
@@ -3153,13 +3118,6 @@ __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"
@@ -3174,13 +3132,6 @@ __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"
@@ -3195,13 +3146,6 @@ __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"
@@ -3216,13 +3160,6 @@ __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"
@@ -3237,13 +3174,6 @@ __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"
@@ -3258,13 +3188,6 @@ __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"
@@ -3279,13 +3202,6 @@ __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"
@@ -3300,13 +3216,6 @@ __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"
@@ -3321,13 +3230,6 @@ __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"
@@ -3342,13 +3244,6 @@ __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"
@@ -3363,13 +3258,6 @@ __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"
@@ -3384,13 +3272,6 @@ __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"
@@ -3398,13 +3279,6 @@ __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"
@@ -3419,13 +3293,6 @@ __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"
@@ -3433,13 +3300,6 @@ __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"
@@ -3454,13 +3314,6 @@ __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"
@@ -3475,13 +3328,6 @@ __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"
@@ -3496,13 +3342,6 @@ __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"
@@ -3517,13 +3356,6 @@ __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"
@@ -3538,13 +3370,6 @@ __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"
@@ -4703,135 +4528,135 @@ __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.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.35.0":
- version: 4.35.0
- resolution: "@rollup/rollup-android-arm64@npm:4.35.0"
+"@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.35.0":
- version: 4.35.0
- resolution: "@rollup/rollup-darwin-arm64@npm:4.35.0"
+"@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.35.0":
- version: 4.35.0
- resolution: "@rollup/rollup-darwin-x64@npm:4.35.0"
+"@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.35.0":
- version: 4.35.0
- resolution: "@rollup/rollup-freebsd-arm64@npm:4.35.0"
+"@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.35.0":
- version: 4.35.0
- resolution: "@rollup/rollup-freebsd-x64@npm:4.35.0"
+"@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.35.0":
- version: 4.35.0
- resolution: "@rollup/rollup-linux-arm-gnueabihf@npm:4.35.0"
+"@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.35.0":
- version: 4.35.0
- resolution: "@rollup/rollup-linux-arm-musleabihf@npm:4.35.0"
+"@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.35.0":
- version: 4.35.0
- resolution: "@rollup/rollup-linux-arm64-gnu@npm:4.35.0"
+"@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.35.0":
- version: 4.35.0
- resolution: "@rollup/rollup-linux-arm64-musl@npm:4.35.0"
+"@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.35.0":
- version: 4.35.0
- resolution: "@rollup/rollup-linux-loongarch64-gnu@npm:4.35.0"
+"@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.35.0":
- version: 4.35.0
- resolution: "@rollup/rollup-linux-powerpc64le-gnu@npm:4.35.0"
+"@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.35.0":
- version: 4.35.0
- resolution: "@rollup/rollup-linux-riscv64-gnu@npm:4.35.0"
+"@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.35.0":
- version: 4.35.0
- resolution: "@rollup/rollup-linux-s390x-gnu@npm:4.35.0"
+"@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.35.0":
- version: 4.35.0
- resolution: "@rollup/rollup-linux-x64-gnu@npm:4.35.0"
+"@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.35.0":
- version: 4.35.0
- resolution: "@rollup/rollup-linux-x64-musl@npm:4.35.0"
+"@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.35.0":
- version: 4.35.0
- resolution: "@rollup/rollup-win32-arm64-msvc@npm:4.35.0"
+"@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.35.0":
- version: 4.35.0
- resolution: "@rollup/rollup-win32-ia32-msvc@npm:4.35.0"
+"@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.35.0":
- version: 4.35.0
- resolution: "@rollup/rollup-win32-x64-msvc@npm:4.35.0"
+"@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
@@ -6202,18 +6027,18 @@ __metadata:
version: 0.0.0-use.local
resolution: "@typescript-eslint/type-utils@workspace:packages/type-utils"
dependencies:
- "@jest/types": 29.6.3
"@typescript-eslint/parser": 8.29.0
"@typescript-eslint/typescript-estree": 8.29.0
"@typescript-eslint/utils": 8.29.0
+ "@vitest/coverage-v8": ^3.0.7
ajv: ^6.12.6
debug: ^4.3.4
downlevel-dts: "*"
- jest: 29.7.0
prettier: ^3.2.5
rimraf: "*"
ts-api-utils: ^2.0.1
typescript: "*"
+ vitest: ^3.0.7
peerDependencies:
eslint: ^8.57.0 || ^9.0.0
typescript: ">=4.8.4 <5.9.0"
@@ -6413,6 +6238,32 @@ __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/coverage-v8@npm:^3.0.8":
version: 3.0.8
resolution: "@vitest/coverage-v8@npm:3.0.8"
@@ -6456,6 +6307,18 @@ __metadata:
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/expect@npm:3.0.8":
version: 3.0.8
resolution: "@vitest/expect@npm:3.0.8"
@@ -6468,6 +6331,25 @@ __metadata:
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/mocker@npm:3.0.8":
version: 3.0.8
resolution: "@vitest/mocker@npm:3.0.8"
@@ -6487,6 +6369,15 @@ __metadata:
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/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"
@@ -6496,6 +6387,16 @@ __metadata:
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/runner@npm:3.0.8":
version: 3.0.8
resolution: "@vitest/runner@npm:3.0.8"
@@ -6506,6 +6407,17 @@ __metadata:
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/snapshot@npm:3.0.8":
version: 3.0.8
resolution: "@vitest/snapshot@npm:3.0.8"
@@ -6517,6 +6429,15 @@ __metadata:
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/spy@npm:3.0.8":
version: 3.0.8
resolution: "@vitest/spy@npm:3.0.8"
@@ -6526,6 +6447,17 @@ __metadata:
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
+
"@vitest/utils@npm:3.0.8":
version: 3.0.8
resolution: "@vitest/utils@npm:3.0.8"
@@ -10011,35 +9943,35 @@ __metadata:
languageName: node
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
+"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
dependenciesMeta:
"@esbuild/aix-ppc64":
optional: true
@@ -10093,7 +10025,7 @@ __metadata:
optional: true
bin:
esbuild: bin/esbuild
- checksum: c84e209259273fca0f8ba7cd00974dfff53eb3fcce5ff0f987d8231a5b49f22c16fa954f0bf06f07b00bd368270d8274feb5a09d7d5dfae0891a47dda24455a2
+ checksum: 4d1e0cb7c059a373ea3edb20ca5efcea29efada03e4ea82b2b8ab1f2f062e4791e9744213308775d26e07a0225a7d8250da93da5c8e07ef61bb93d58caab8cf9
languageName: node
linkType: hard
@@ -10177,92 +10109,6 @@ __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"
@@ -18475,28 +18321,28 @@ __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.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:
@@ -18542,7 +18388,7 @@ __metadata:
optional: true
bin:
rollup: dist/bin/rollup
- checksum: 1139d35809d1aa4ac8bff49fd0c819bcce86ce6e8e259fd0cacac086998938b5ad44f523d4414b6565ebc0338e7d2de0ad3efa03e26738fe8bd05f1baf72e980
+ checksum: ed7a5e382de5fe872abffdab614b7f745cbed7328cf4ced560c4d09214b3d30e167f8c7df9e8b63489497bdf3a6be07a2474f9ff3195026bdf2d49cdbeac38ae
languageName: node
linkType: hard
@@ -20870,6 +20716,21 @@ __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-node@npm:3.0.8":
version: 3.0.8
resolution: "vite-node@npm:3.0.8"
@@ -20937,6 +20798,59 @@ __metadata:
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
+
"vitest@npm:^3.0.8":
version: 3.0.8
resolution: "vitest@npm:3.0.8"
From 8ef16f694002e38646fa03ab845a375a9503aadd Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Mon, 3 Feb 2025 10:24:38 -0600
Subject: [PATCH 02/33] Rename `jest.config.js` to `vitest.config.mts`
---
packages/type-utils/{jest.config.js => vitest.config.mts} | 0
1 file changed, 0 insertions(+), 0 deletions(-)
rename packages/type-utils/{jest.config.js => vitest.config.mts} (100%)
diff --git a/packages/type-utils/jest.config.js b/packages/type-utils/vitest.config.mts
similarity index 100%
rename from packages/type-utils/jest.config.js
rename to packages/type-utils/vitest.config.mts
From 010340a2412bbf4bfa86306bcaafbee3e144e796 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Mon, 3 Feb 2025 10:33:37 -0600
Subject: [PATCH 03/33] chore(type-utils): migrate to `vitest`
---
eslint.config.mjs | 2 +
packages/type-utils/package.json | 4 +-
packages/type-utils/project.json | 5 +-
.../tests/TypeOrValueSpecifier.test.ts | 118 ++++++++++++------
.../tests/containsAllTypesByName.test.ts | 10 +-
.../getConstrainedTypeAtLocation.test.ts | 4 +-
.../type-utils/tests/getDeclaration.test.ts | 2 +-
packages/type-utils/tests/getTypeName.test.ts | 6 +-
.../tests/isSymbolFromDefaultLibrary.test.ts | 6 +-
.../type-utils/tests/isTypeReadonly.test.ts | 92 ++++++++------
.../tests/isUnsafeAssignment.test.ts | 2 +-
.../type-utils/tests/requiresQuoting.test.ts | 2 +-
.../type-utils/tests/typeFlagUtils.test.ts | 18 ++-
packages/type-utils/tsconfig.build.json | 2 +-
packages/type-utils/tsconfig.spec.json | 10 +-
packages/type-utils/vitest.config.mts | 23 +++-
tsconfig.repo-config-files.json | 2 +
yarn.lock | 85 +++++++++++--
18 files changed, 261 insertions(+), 132 deletions(-)
diff --git a/eslint.config.mjs b/eslint.config.mjs
index e4060e8d1dfd..e8ef18c8420f 100644
--- a/eslint.config.mjs
+++ b/eslint.config.mjs
@@ -32,6 +32,7 @@ const restrictNamedDeclarations = {
const vitestFiles = [
'packages/eslint-plugin-internal/tests/**/*.test.{ts,tsx,cts,mts}',
'packages/typescript-eslint/tests/**/*.test.{ts,tsx,cts,mts}',
+ 'packages/type-utils/tests/**/*.test.{ts,tsx,cts,mts}',
];
export default tseslint.config(
@@ -73,6 +74,7 @@ export default tseslint.config(
'.nx/',
'.yarn/',
'**/jest.config.js',
+ '**/vitest.config.mts',
'**/node_modules/**',
'**/dist/**',
'**/fixtures/**',
diff --git a/packages/type-utils/package.json b/packages/type-utils/package.json
index ac14ce2e1681..c5e9785282df 100644
--- a/packages/type-utils/package.json
+++ b/packages/type-utils/package.json
@@ -40,10 +40,10 @@
"build": "tsc -b tsconfig.build.json",
"postbuild": "downlevel-dts dist _ts4.3/dist --to=4.3",
"clean": "tsc -b tsconfig.build.json --clean",
- "postclean": "rimraf dist && rimraf _ts3.4 && rimraf _ts4.3 && rimraf coverage",
+ "postclean": "rimraf dist/ _ts4.3/ coverage/",
"format": "prettier --write \"./**/*.{ts,mts,cts,tsx,js,mjs,cjs,jsx,json,md,css}\" --ignore-path ../../.prettierignore",
"lint": "npx nx lint",
- "test": "jest",
+ "test": "vitest --run",
"check-types": "npx nx typecheck"
},
"dependencies": {
diff --git a/packages/type-utils/project.json b/packages/type-utils/project.json
index 4ac211280e6b..bdf45fb9dbe2 100644
--- a/packages/type-utils/project.json
+++ b/packages/type-utils/project.json
@@ -1,8 +1,9 @@
{
"name": "type-utils",
"$schema": "../../node_modules/nx/schemas/project-schema.json",
- "type": "library",
- "implicitDependencies": [],
+ "projectType": "library",
+ "root": "packages/type-utils",
+ "sourceRoot": "packages/type-utils/src",
"targets": {
"lint": {
"executor": "@nx/eslint:lint",
diff --git a/packages/type-utils/tests/TypeOrValueSpecifier.test.ts b/packages/type-utils/tests/TypeOrValueSpecifier.test.ts
index b58ae80df8d2..74e0d677919b 100644
--- a/packages/type-utils/tests/TypeOrValueSpecifier.test.ts
+++ b/packages/type-utils/tests/TypeOrValueSpecifier.test.ts
@@ -21,7 +21,7 @@ describe('TypeOrValueSpecifier', () => {
expect(validate([typeOrValueSpecifier])).toBe(false);
}
- it.each([['MyType'], ['myValue'], ['any'], ['void'], ['never']])(
+ it.each([['MyType'], ['myValue'], ['any'], ['void'], ['never']] as const)(
'matches a simple string specifier %s',
runTestPositive,
);
@@ -33,14 +33,14 @@ describe('TypeOrValueSpecifier', () => {
[undefined],
[['MyType']],
[(): void => {}],
- ])("doesn't match any non-string basic type: %s", runTestNegative);
+ ] as const)("doesn't match any non-string basic type: %s", runTestNegative);
it.each([
[{ from: 'file', name: 'MyType' }],
[{ from: 'file', name: ['MyType', 'myValue'] }],
[{ from: 'file', name: 'MyType', path: './filename.js' }],
[{ from: 'file', name: ['MyType', 'myValue'], path: './filename.js' }],
- ])('matches a file specifier: %s', runTestPositive);
+ ] as const)('matches a file specifier: %s', runTestPositive);
it.each([
[{ from: 'file', name: 42 }],
@@ -59,12 +59,15 @@ describe('TypeOrValueSpecifier', () => {
},
],
[{ from: 'file', name: 'MyType', unrelatedProperty: '' }],
- ])("doesn't match a malformed file specifier: %s", runTestNegative);
+ ] as const)(
+ "doesn't match a malformed file specifier: %s",
+ runTestNegative,
+ );
it.each([
[{ from: 'lib', name: 'MyType' }],
[{ from: 'lib', name: ['MyType', 'myValue'] }],
- ])('matches a lib specifier: %s', runTestPositive);
+ ] as const)('matches a lib specifier: %s', runTestPositive);
it.each([
[{ from: 'lib', name: 42 }],
@@ -73,7 +76,7 @@ describe('TypeOrValueSpecifier', () => {
[{ from: 'lib', name: [] }],
[{ from: 'lib' }],
[{ from: 'lib', name: 'MyType', unrelatedProperty: '' }],
- ])("doesn't match a malformed lib specifier: %s", runTestNegative);
+ ] as const)("doesn't match a malformed lib specifier: %s", runTestNegative);
it.each([
[{ from: 'package', name: 'MyType', package: 'jquery' }],
@@ -84,7 +87,7 @@ describe('TypeOrValueSpecifier', () => {
package: 'jquery',
},
],
- ])('matches a package specifier: %s', runTestPositive);
+ ] as const)('matches a package specifier: %s', runTestPositive);
it.each([
[{ from: 'package', name: 42, package: 'jquery' }],
@@ -119,10 +122,13 @@ describe('TypeOrValueSpecifier', () => {
unrelatedProperty: '',
},
],
- ])("doesn't match a malformed package specifier: %s", runTestNegative);
+ ] as const)(
+ "doesn't match a malformed package specifier: %s",
+ runTestNegative,
+ );
});
- describe('typeMatchesSpecifier', () => {
+ describe(typeMatchesSpecifier, () => {
function runTests(
code: string,
specifier: TypeOrValueSpecifier,
@@ -162,22 +168,25 @@ describe('TypeOrValueSpecifier', () => {
runTests(code, specifier, false);
}
- it.each<[string, TypeOrValueSpecifier]>([
+ it.each([
['interface Foo {prop: string}; type Test = Foo;', 'Foo'],
['type Test = RegExp;', 'RegExp'],
- ])('matches a matching universal string specifier', runTestPositive);
+ ] as const satisfies [string, TypeOrValueSpecifier][])(
+ 'matches a matching universal string specifier',
+ runTestPositive,
+ );
- it.each<[string, TypeOrValueSpecifier]>([
+ it.each([
['interface Foo {prop: string}; type Test = Foo;', 'Bar'],
['interface Foo {prop: string}; type Test = Foo;', 'RegExp'],
['type Test = RegExp;', 'Foo'],
['type Test = RegExp;', 'BigInt'],
- ])(
+ ] as const satisfies [string, TypeOrValueSpecifier][])(
"doesn't match a mismatched universal string specifier",
runTestNegative,
);
- it.each<[string, TypeOrValueSpecifier]>([
+ it.each([
[
'interface Foo {prop: string}; type Test = Foo;',
{ from: 'file', name: 'Foo' },
@@ -238,9 +247,12 @@ describe('TypeOrValueSpecifier', () => {
path: 'tests/fixtures/file.ts',
},
],
- ])('matches a matching file specifier: %s', runTestPositive);
+ ] as const satisfies [string, TypeOrValueSpecifier][])(
+ 'matches a matching file specifier: %s',
+ runTestPositive,
+ );
- it.each<[string, TypeOrValueSpecifier]>([
+ it.each([
[
'interface Foo {prop: string}; type Test = Foo;',
{ from: 'file', name: 'Bar' },
@@ -261,32 +273,44 @@ describe('TypeOrValueSpecifier', () => {
path: 'tests/fixtures/wrong-file.ts',
},
],
- ])("doesn't match a mismatched file specifier: %s", runTestNegative);
+ ] as const satisfies [string, TypeOrValueSpecifier][])(
+ "doesn't match a mismatched file specifier: %s",
+ runTestNegative,
+ );
- it.each<[string, TypeOrValueSpecifier]>([
+ it.each([
['type Test = RegExp;', { from: 'lib', name: 'RegExp' }],
['type Test = RegExp;', { from: 'lib', name: ['RegExp', 'BigInt'] }],
- ])('matches a matching lib specifier: %s', runTestPositive);
+ ] as const satisfies [string, TypeOrValueSpecifier][])(
+ 'matches a matching lib specifier: %s',
+ runTestPositive,
+ );
- it.each<[string, TypeOrValueSpecifier]>([
+ it.each([
['type Test = RegExp;', { from: 'lib', name: 'BigInt' }],
['type Test = RegExp;', { from: 'lib', name: ['BigInt', 'Date'] }],
- ])("doesn't match a mismatched lib specifier: %s", runTestNegative);
+ ] as const satisfies [string, TypeOrValueSpecifier][])(
+ "doesn't match a mismatched lib specifier: %s",
+ runTestNegative,
+ );
- it.each<[string, TypeOrValueSpecifier]>([
+ it.each([
['type Test = string;', { from: 'lib', name: 'string' }],
['type Test = string;', { from: 'lib', name: ['string', 'number'] }],
- ])('matches a matching intrinsic type specifier: %s', runTestPositive);
+ ] as const satisfies [string, TypeOrValueSpecifier][])(
+ 'matches a matching intrinsic type specifier: %s',
+ runTestPositive,
+ );
- it.each<[string, TypeOrValueSpecifier]>([
+ it.each([
['type Test = string;', { from: 'lib', name: 'number' }],
['type Test = string;', { from: 'lib', name: ['number', 'boolean'] }],
- ])(
+ ] as const satisfies [string, TypeOrValueSpecifier][])(
"doesn't match a mismatched intrinsic type specifier: %s",
runTestNegative,
);
- it.each<[string, TypeOrValueSpecifier]>([
+ it.each([
[
'import type {Node} from "typescript"; type Test = Node;',
{ from: 'package', name: 'Node', package: 'typescript' },
@@ -366,9 +390,12 @@ describe('TypeOrValueSpecifier', () => {
package: 'node:test',
},
],
- ])('matches a matching package specifier: %s', runTestPositive);
+ ] as const satisfies [string, TypeOrValueSpecifier][])(
+ 'matches a matching package specifier: %s',
+ runTestPositive,
+ );
- it.each<[string, TypeOrValueSpecifier]>([
+ it.each([
[
`
type Other = { __otherBrand: true };
@@ -386,12 +413,12 @@ describe('TypeOrValueSpecifier', () => {
`,
{ from: 'file', name: ['SafePromise'] },
],
- ])(
+ ] as const satisfies [string, TypeOrValueSpecifier][])(
"doesn't match a mismatched type specifier for an intersection type: %s",
runTestNegative,
);
- it.each<[string, TypeOrValueSpecifier]>([
+ it.each([
[
`
type SafePromise = Promise & { __safeBrand: string };
@@ -400,12 +427,12 @@ describe('TypeOrValueSpecifier', () => {
`,
{ from: 'file', name: ['ResultType'] },
],
- ])(
+ ] as const satisfies [string, TypeOrValueSpecifier][])(
'matches a matching type specifier for an intersection type: %s',
runTestPositive,
);
- it.each<[string, TypeOrValueSpecifier]>([
+ it.each([
[
`
declare module "node:test" {
@@ -425,12 +452,12 @@ describe('TypeOrValueSpecifier', () => {
package: 'node:test',
},
],
- ])(
+ ] as const satisfies [string, TypeOrValueSpecifier][])(
'matches a matching package specifier for an intersection type: %s',
runTestPositive,
);
- it.each<[string, TypeOrValueSpecifier]>([
+ it.each([
[
`
declare module "node:test" {
@@ -450,7 +477,7 @@ describe('TypeOrValueSpecifier', () => {
package: 'node:test',
},
],
- ])(
+ ] as const satisfies [string, TypeOrValueSpecifier][])(
"doesn't match a mismatched package specifier for an intersection type: %s",
runTestNegative,
);
@@ -472,7 +499,7 @@ describe('TypeOrValueSpecifier', () => {
);
});
- it.each<[string, TypeOrValueSpecifier]>([
+ it.each([
[
'import type {Node} from "typescript"; type Test = Node;',
{ from: 'package', name: 'Symbol', package: 'typescript' },
@@ -497,9 +524,12 @@ describe('TypeOrValueSpecifier', () => {
'import type {Node as TsNode} from "typescript"; type Test = TsNode;',
{ from: 'package', name: 'TsNode', package: 'typescript' },
],
- ])("doesn't match a mismatched package specifier: %s", runTestNegative);
+ ] as const satisfies [string, TypeOrValueSpecifier][])(
+ "doesn't match a mismatched package specifier: %s",
+ runTestNegative,
+ );
- it.each<[string, TypeOrValueSpecifier]>([
+ it.each([
[
'interface Foo {prop: string}; type Test = Foo;',
{ from: 'lib', name: 'Foo' },
@@ -550,11 +580,17 @@ describe('TypeOrValueSpecifier', () => {
'type Test = RegExp;',
{ from: 'package', name: ['RegExp', 'BigInt'], package: 'foo-package' },
],
- ])("doesn't match a mismatched specifier type: %s", runTestNegative);
+ ] as const satisfies [string, TypeOrValueSpecifier][])(
+ "doesn't match a mismatched specifier type: %s",
+ runTestNegative,
+ );
- it.each<[string, TypeOrValueSpecifier]>([
+ it.each([
['type Test = Foo;', { from: 'lib', name: 'Foo' }],
['type Test = Foo;', { from: 'lib', name: ['Foo', 'number'] }],
- ])("doesn't match an error type: %s", runTestNegative);
+ ] as const satisfies [string, TypeOrValueSpecifier][])(
+ "doesn't match an error type: %s",
+ runTestNegative,
+ );
});
});
diff --git a/packages/type-utils/tests/containsAllTypesByName.test.ts b/packages/type-utils/tests/containsAllTypesByName.test.ts
index 46933b01f092..a3851417eeb7 100644
--- a/packages/type-utils/tests/containsAllTypesByName.test.ts
+++ b/packages/type-utils/tests/containsAllTypesByName.test.ts
@@ -7,7 +7,7 @@ import path from 'node:path';
import { containsAllTypesByName } from '../src';
import { expectToHaveParserServices } from './test-utils/expectToHaveParserServices';
-describe('containsAllTypesByName', () => {
+describe(containsAllTypesByName, () => {
const rootDir = path.join(__dirname, 'fixtures');
function getType(code: string): ts.Type {
@@ -42,7 +42,7 @@ describe('containsAllTypesByName', () => {
['type Test = unknown;', false],
['type Test = any;', false],
['type Test = string;', false],
- ])('when code is "%s" expected is %s', runTest);
+ ] as const)('when code is "%s" expected is %s', runTest);
});
describe('is false', () => {
@@ -54,7 +54,7 @@ describe('containsAllTypesByName', () => {
['type Test = unknown;', true],
['type Test = any;', true],
['type Test = string;', false],
- ])('when code is "%s" expected is %s', runTest);
+ ] as const)('when code is "%s" expected is %s', runTest);
});
});
@@ -83,7 +83,7 @@ describe('containsAllTypesByName', () => {
[`type Test = Promise & string`, true],
['type Test = Promise | string', true],
['type Test = Promise | Object', true],
- ])('when code is "%s" expected is %s', runTest);
+ ] as const)('when code is "%s" expected is %s', runTest);
});
describe('is false', () => {
@@ -95,7 +95,7 @@ describe('containsAllTypesByName', () => {
['type Test = Promise & string', false],
['type Test = Promise | string', false],
['type Test = Promise | Object', true],
- ])('when code is "%s" expected is %s', runTest);
+ ] as const)('when code is "%s" expected is %s', runTest);
});
});
});
diff --git a/packages/type-utils/tests/getConstrainedTypeAtLocation.test.ts b/packages/type-utils/tests/getConstrainedTypeAtLocation.test.ts
index 598e78500afe..c033dba526d7 100644
--- a/packages/type-utils/tests/getConstrainedTypeAtLocation.test.ts
+++ b/packages/type-utils/tests/getConstrainedTypeAtLocation.test.ts
@@ -21,9 +21,9 @@ function parseCodeForEslint(code: string): ReturnType & {
});
}
-describe('getConstrainedTypeAtLocation', () => {
+describe(getConstrainedTypeAtLocation, () => {
// See https://github.com/typescript-eslint/typescript-eslint/issues/10438
- // eslint-disable-next-line jest/no-disabled-tests -- known issue.
+ // eslint-disable-next-line vitest/no-disabled-tests -- known issue.
it.skip('returns unknown for unconstrained generic', () => {
const sourceCode = `
function foo(x: T);
diff --git a/packages/type-utils/tests/getDeclaration.test.ts b/packages/type-utils/tests/getDeclaration.test.ts
index a7af315b6b28..172e4b8bbd4b 100644
--- a/packages/type-utils/tests/getDeclaration.test.ts
+++ b/packages/type-utils/tests/getDeclaration.test.ts
@@ -24,7 +24,7 @@ const mockDeclaration = (): ts.Declaration => {
return {} as ts.Declaration;
};
-describe('getDeclaration', () => {
+describe(getDeclaration, () => {
describe('when symbol does not exist', () => {
it('returns null', () => {
const services = mockServices();
diff --git a/packages/type-utils/tests/getTypeName.test.ts b/packages/type-utils/tests/getTypeName.test.ts
index 7ab59ae0aae7..fc6ca5efc8fb 100644
--- a/packages/type-utils/tests/getTypeName.test.ts
+++ b/packages/type-utils/tests/getTypeName.test.ts
@@ -7,7 +7,7 @@ import path from 'node:path';
import { getTypeName } from '../src';
import { expectToHaveParserServices } from './test-utils/expectToHaveParserServices';
-describe('getTypeName', () => {
+describe(getTypeName, () => {
function getTypes(code: string): { checker: ts.TypeChecker; type: ts.Type } {
const rootDir = path.join(__dirname, 'fixtures');
@@ -45,7 +45,7 @@ describe('getTypeName', () => {
['type Test = undefined;', 'undefined'],
['type Test = null;', 'null'],
['type Test = symbol;', 'symbol'],
- ])('when code is %s, returns %s', runTest);
+ ] as const)('when code is %s, returns %s', runTest);
});
describe('returns non-primitive type', () => {
@@ -57,6 +57,6 @@ describe('getTypeName', () => {
['type Test = T & boolean;', 'Test'],
['type Test = string | number;', 'Test'],
['type Test = string | string[];', 'Test'],
- ])('when code is %s, returns %s', runTest);
+ ] as const)('when code is %s, returns %s', runTest);
});
});
diff --git a/packages/type-utils/tests/isSymbolFromDefaultLibrary.test.ts b/packages/type-utils/tests/isSymbolFromDefaultLibrary.test.ts
index 4f7050fb38d9..3e1581b58bd4 100644
--- a/packages/type-utils/tests/isSymbolFromDefaultLibrary.test.ts
+++ b/packages/type-utils/tests/isSymbolFromDefaultLibrary.test.ts
@@ -7,7 +7,7 @@ import path from 'node:path';
import { isSymbolFromDefaultLibrary } from '../src';
import { expectToHaveParserServices } from './test-utils/expectToHaveParserServices';
-describe('isSymbolFromDefaultLibrary', () => {
+describe(isSymbolFromDefaultLibrary, () => {
const rootDir = path.join(__dirname, 'fixtures');
function getTypes(code: string): {
@@ -43,7 +43,7 @@ describe('isSymbolFromDefaultLibrary', () => {
['type Test = Promise'],
['type Test = Error'],
['type Test = Object'],
- ])('when code is %s, returns true', runTest);
+ ] as const)('when code is %s, returns true', runTest);
});
describe('is not symbol from default library', () => {
@@ -55,6 +55,6 @@ describe('isSymbolFromDefaultLibrary', () => {
['const test: Array = [1,2,3];'],
['type Test = number;'],
['interface Test { bar: string; };'],
- ])('when code is %s, returns false', runTest);
+ ] as const)('when code is %s, returns false', runTest);
});
});
diff --git a/packages/type-utils/tests/isTypeReadonly.test.ts b/packages/type-utils/tests/isTypeReadonly.test.ts
index f7405e2e5add..8f2d04765cb8 100644
--- a/packages/type-utils/tests/isTypeReadonly.test.ts
+++ b/packages/type-utils/tests/isTypeReadonly.test.ts
@@ -2,6 +2,7 @@ import type { TSESTree } from '@typescript-eslint/utils';
import type * as ts from 'typescript';
import { parseForESLint } from '@typescript-eslint/parser';
+import { AST_NODE_TYPES } from '@typescript-eslint/utils';
import path from 'node:path';
import type { ReadonlynessOptions } from '../src/isTypeReadonly';
@@ -9,10 +10,10 @@ import type { ReadonlynessOptions } from '../src/isTypeReadonly';
import { isTypeReadonly } from '../src/isTypeReadonly';
import { expectToHaveParserServices } from './test-utils/expectToHaveParserServices';
-describe('isTypeReadonly', () => {
+describe(isTypeReadonly, () => {
const rootDir = path.join(__dirname, 'fixtures');
- describe('TSTypeAliasDeclaration ', () => {
+ describe(AST_NODE_TYPES.TSTypeAliasDeclaration, () => {
function getType(code: string): {
program: ts.Program;
type: ts.Type;
@@ -24,8 +25,7 @@ describe('isTypeReadonly', () => {
tsconfigRootDir: rootDir,
});
expectToHaveParserServices(services);
- const program = services.program;
- const esTreeNodeToTSNodeMap = services.esTreeNodeToTSNodeMap;
+ const { esTreeNodeToTSNodeMap, program } = services;
const declaration = ast.body[0] as TSESTree.TSTypeAliasDeclaration;
return {
@@ -59,33 +59,33 @@ describe('isTypeReadonly', () => {
}
describe('basics', () => {
- describe('is readonly', () => {
+ describe('is readonly', { timeout: 10_000 }, () => {
const runTests = runTestIsReadonly;
// Record.
it.each([
['type Test = { readonly bar: string; };'],
['type Test = Readonly<{ bar: string; }>;'],
- ])('handles fully readonly records', runTests);
+ ] as const)('handles fully readonly records', runTests);
// Array.
it.each([
['type Test = Readonly;'],
['type Test = Readonly>;'],
- ])('handles fully readonly arrays', runTests);
+ ] as const)('handles fully readonly arrays', runTests);
// Array - special case.
// Note: Methods are mutable but arrays are treated special; hence no failure.
it.each([
['type Test = readonly string[];'],
['type Test = ReadonlyArray;'],
- ])('treats readonly arrays as fully readonly', runTests);
+ ] as const)('treats readonly arrays as fully readonly', runTests);
// Set and Map.
it.each([
['type Test = Readonly>;'],
['type Test = Readonly>;'],
- ])('handles fully readonly sets and maps', runTests);
+ ] as const)('handles fully readonly sets and maps', runTests);
// Private Identifier.
// Note: It can't be accessed from outside of class thus exempt from the checks.
@@ -93,7 +93,7 @@ describe('isTypeReadonly', () => {
['class Foo { readonly #readonlyPrivateField = "foo"; }'],
['class Foo { #privateField = "foo"; }'],
['class Foo { #privateMember() {}; }'],
- ])('treat private identifier as readonly', runTests);
+ ] as const)('treat private identifier as readonly', runTests);
});
describe('is not readonly', () => {
@@ -103,13 +103,13 @@ describe('isTypeReadonly', () => {
it.each([
['type Test = { foo: string; };'],
['type Test = { foo: string; readonly bar: number; };'],
- ])('handles non fully readonly records', runTests);
+ ] as const)('handles non fully readonly records', runTests);
// Array.
- it.each([['type Test = string[]'], ['type Test = Array']])(
- 'handles non fully readonly arrays',
- runTests,
- );
+ it.each([
+ ['type Test = string[]'],
+ ['type Test = Array'],
+ ] as const)('handles non fully readonly arrays', runTests);
// Set and Map.
// Note: Methods are mutable for ReadonlySet and ReadonlyMet; hence failure.
@@ -118,7 +118,7 @@ describe('isTypeReadonly', () => {
['type Test = Map;'],
['type Test = ReadonlySet;'],
['type Test = ReadonlyMap;'],
- ])('handles non fully readonly sets and maps', runTests);
+ ] as const)('handles non fully readonly sets and maps', runTests);
});
});
@@ -131,7 +131,7 @@ describe('isTypeReadonly', () => {
[
'type Test = { readonly [key: string]: { readonly foo: readonly string[]; }; };',
],
- ])(
+ ] as const)(
'handles readonly PropertySignature inside a readonly IndexSignature',
runTests,
);
@@ -140,13 +140,15 @@ describe('isTypeReadonly', () => {
describe('is readonly circular', () => {
const runTests = runTestIsReadonly;
- it('handles circular readonly PropertySignature inside a readonly IndexSignature', () =>
- runTests('interface Test { readonly [key: string]: Test };'));
+ it('handles circular readonly PropertySignature inside a readonly IndexSignature', () => {
+ runTests('interface Test { readonly [key: string]: Test };');
+ });
- it('handles circular readonly PropertySignature inside interdependent objects', () =>
+ it('handles circular readonly PropertySignature inside interdependent objects', () => {
runTests(
'interface Test1 { readonly [key: string]: Test } interface Test { readonly [key: string]: Test1 }',
- ));
+ );
+ });
});
describe('is not readonly', () => {
@@ -155,7 +157,7 @@ describe('isTypeReadonly', () => {
it.each([
['type Test = { [key: string]: string };'],
['type Test = { readonly [key: string]: { foo: string[]; }; };'],
- ])(
+ ] as const)(
'handles mutable PropertySignature inside a readonly IndexSignature',
runTests,
);
@@ -164,8 +166,9 @@ describe('isTypeReadonly', () => {
describe('is not readonly circular', () => {
const runTests = runTestIsNotReadonly;
- it('handles circular mutable PropertySignature', () =>
- runTests('interface Test { [key: string]: Test };'));
+ it('handles circular mutable PropertySignature', () => {
+ runTests('interface Test { [key: string]: Test };');
+ });
it.each([
[
@@ -177,7 +180,7 @@ describe('isTypeReadonly', () => {
[
'interface Test1 { [key: string]: Test } interface Test { [key: string]: Test1 }',
],
- ])(
+ ] as const)(
'handles circular mutable PropertySignature inside interdependent objects',
runTests,
);
@@ -193,7 +196,7 @@ describe('isTypeReadonly', () => {
'type Test = Readonly<{ foo: string; bar: number; }> & Readonly<{ bar: number; }>;',
],
['type Test = readonly string[] | readonly number[];'],
- ])('handles a union of 2 fully readonly types', runTests);
+ ] as const)('handles a union of 2 fully readonly types', runTests);
});
describe('is not readonly', () => {
@@ -207,7 +210,7 @@ describe('isTypeReadonly', () => {
[
'type Test = Readonly<{ foo: string; bar: number; }> | { bar: number; };',
],
- ])('handles a union of non fully readonly types', runTests);
+ ] as const)('handles a union of non fully readonly types', runTests);
});
});
@@ -219,13 +222,16 @@ describe('isTypeReadonly', () => {
[
'type Test = Readonly<{ foo: string; bar: number; }> & Readonly<{ bar: number; }>;',
],
- ])('handles an intersection of 2 fully readonly types', runTests);
+ ] as const)(
+ 'handles an intersection of 2 fully readonly types',
+ runTests,
+ );
it.each([
[
'type Test = Readonly<{ foo: string; bar: number; }> & { foo: string; };',
],
- ])(
+ ] as const)(
'handles an intersection of a fully readonly type with a mutable subtype',
runTests,
);
@@ -237,7 +243,10 @@ describe('isTypeReadonly', () => {
[
'type Test = readonly [string, number] & Readonly<{ foo: string; }>;',
],
- ])('handles an intersections involving a readonly array', runTests);
+ ] as const)(
+ 'handles an intersections involving a readonly array',
+ runTests,
+ );
});
describe('is not readonly', () => {
@@ -251,7 +260,10 @@ describe('isTypeReadonly', () => {
[
'type Test = Readonly<{ bar: number; }> & { foo: string; bar: number; };',
],
- ])('handles an intersection of non fully readonly types', runTests);
+ ] as const)(
+ 'handles an intersection of non fully readonly types',
+ runTests,
+ );
});
});
@@ -263,13 +275,16 @@ describe('isTypeReadonly', () => {
[
'type Test = T extends readonly number[] ? readonly string[] : readonly number[];',
],
- ])('handles conditional type that are fully readonly', runTests);
+ ] as const)(
+ 'handles conditional type that are fully readonly',
+ runTests,
+ );
it.each([
[
'type Test = T extends number[] ? readonly string[] : readonly number[];',
],
- ])('should ignore mutable conditions', runTests);
+ ] as const)('should ignore mutable conditions', runTests);
});
describe('is not readonly', () => {
@@ -283,7 +298,7 @@ describe('isTypeReadonly', () => {
[
'type Test = T extends number[] ? readonly string[] : number[];',
],
- ])('handles non fully readonly conditional types', runTests);
+ ] as const)('handles non fully readonly conditional types', runTests);
});
});
});
@@ -308,7 +323,7 @@ describe('isTypeReadonly', () => {
it.each([
['type Test = ReadonlySet;'],
['type Test = ReadonlyMap;'],
- ])('handles non fully readonly sets and maps', runTests);
+ ] as const)('handles non fully readonly sets and maps', runTests);
});
});
@@ -343,7 +358,10 @@ describe('isTypeReadonly', () => {
'interface Foo {prop: RegExp}; type Test = (arg: Readonly) => void;',
],
['interface Foo {prop: string}; type Test = (arg: Foo) => void;'],
- ])('correctly marks allowlisted types as readonly', runTestIsReadonly);
+ ] as const)(
+ 'correctly marks allowlisted types as readonly',
+ runTestIsReadonly,
+ );
});
describe('is not readonly', () => {
@@ -352,7 +370,7 @@ describe('isTypeReadonly', () => {
'interface Bar {prop: RegExp}; type Test = (arg: Readonly) => void;',
],
['interface Bar {prop: string}; type Test = (arg: Bar) => void;'],
- ])(
+ ] as const)(
'correctly marks allowlisted types as readonly',
runTestIsNotReadonly,
);
diff --git a/packages/type-utils/tests/isUnsafeAssignment.test.ts b/packages/type-utils/tests/isUnsafeAssignment.test.ts
index b4ea26a58438..af605b73a441 100644
--- a/packages/type-utils/tests/isUnsafeAssignment.test.ts
+++ b/packages/type-utils/tests/isUnsafeAssignment.test.ts
@@ -7,7 +7,7 @@ import path from 'node:path';
import { isUnsafeAssignment } from '../src/isUnsafeAssignment';
import { expectToHaveParserServices } from './test-utils/expectToHaveParserServices';
-describe('isUnsafeAssignment', () => {
+describe(isUnsafeAssignment, () => {
const rootDir = path.join(__dirname, 'fixtures');
function getTypes(
diff --git a/packages/type-utils/tests/requiresQuoting.test.ts b/packages/type-utils/tests/requiresQuoting.test.ts
index 59c7d02e60e4..565743913164 100644
--- a/packages/type-utils/tests/requiresQuoting.test.ts
+++ b/packages/type-utils/tests/requiresQuoting.test.ts
@@ -1,6 +1,6 @@
import { requiresQuoting } from '../src';
-describe('getDeclaration', () => {
+describe(requiresQuoting, () => {
describe('valid identifier', () => {
it('upper and lower case alphabet', () => {
const name = 'c';
diff --git a/packages/type-utils/tests/typeFlagUtils.test.ts b/packages/type-utils/tests/typeFlagUtils.test.ts
index 24e66b394158..03f1526343aa 100644
--- a/packages/type-utils/tests/typeFlagUtils.test.ts
+++ b/packages/type-utils/tests/typeFlagUtils.test.ts
@@ -23,7 +23,7 @@ describe('typeFlagUtils', () => {
return services.getTypeAtLocation(declaration.id);
}
- describe('getTypeFlags', () => {
+ describe(getTypeFlags, () => {
function runTestForAliasDeclaration(
code: string,
expected: ts.TypeFlags,
@@ -40,12 +40,18 @@ describe('typeFlagUtils', () => {
['type Test = number;', 8],
['type Test = "text";', 128],
['type Test = 123;', 256],
- ['type Test = string | number', 12],
+ [
+ 'type Test = string | number',
+ ts.TypeFlags.String | ts.TypeFlags.Number,
+ ],
['type Test = "text" | 123', 384],
- ])('when code is "%s", type flags is %d', runTestForAliasDeclaration);
+ ] as const)(
+ 'when code is "%s", type flags is %d',
+ runTestForAliasDeclaration,
+ );
});
- describe('isTypeFlagSet', () => {
+ describe(isTypeFlagSet, () => {
function runTestForAliasDeclaration(
code: string,
flagsToCheck: ts.TypeFlags,
@@ -69,7 +75,7 @@ describe('typeFlagUtils', () => {
['type Test = string;', ts.TypeFlags.String],
['type Test = string | number;', ts.TypeFlags.String],
['type Test = string & { foo: string };', ts.TypeFlags.Intersection],
- ])(
+ ] as const)(
'when code is "%s" and flagsToCheck is %d , returns true',
runTestIsTypeFlagSet,
);
@@ -87,7 +93,7 @@ describe('typeFlagUtils', () => {
['type Test = string', ts.TypeFlags.Any],
['type Test = string | number;', ts.TypeFlags.Any],
['type Test = string & { foo: string }', ts.TypeFlags.String],
- ])(
+ ] as const)(
'when code is "%s" and flagsToCheck is %d , returns false',
runTestIsNotTypeFlagSet,
);
diff --git a/packages/type-utils/tsconfig.build.json b/packages/type-utils/tsconfig.build.json
index f409f6784f7c..821662562d80 100644
--- a/packages/type-utils/tsconfig.build.json
+++ b/packages/type-utils/tsconfig.build.json
@@ -9,7 +9,7 @@
"types": ["node"]
},
"include": ["src/**/*.ts", "typings"],
- "exclude": ["jest.config.js", "src/**/*.spec.ts", "src/**/*.test.ts"],
+ "exclude": ["vitest.config.mts", "src/**/*.spec.ts", "src/**/*.test.ts"],
"references": [
{
"path": "../types/tsconfig.build.json"
diff --git a/packages/type-utils/tsconfig.spec.json b/packages/type-utils/tsconfig.spec.json
index 9b6b8b55e093..ee94c6d08bec 100644
--- a/packages/type-utils/tsconfig.spec.json
+++ b/packages/type-utils/tsconfig.spec.json
@@ -3,15 +3,9 @@
"compilerOptions": {
"outDir": "../../dist/out-tsc/packages/type-utils",
"module": "NodeNext",
- "types": ["jest", "node"]
+ "types": ["node", "vitest/globals", "vitest/importMeta"]
},
- "include": [
- "jest.config.js",
- "src/**/*.test.ts",
- "src/**/*.spec.ts",
- "src/**/*.d.ts",
- "tests"
- ],
+ "include": ["src/**/*.test.ts", "src/**/*.spec.ts", "src/**/*.d.ts", "tests"],
"exclude": ["**/fixtures/**"],
"references": [
{
diff --git a/packages/type-utils/vitest.config.mts b/packages/type-utils/vitest.config.mts
index 910991b20cff..c803e1d1c1ee 100644
--- a/packages/type-utils/vitest.config.mts
+++ b/packages/type-utils/vitest.config.mts
@@ -1,7 +1,18 @@
-'use strict';
+import { defineConfig, mergeConfig } from 'vitest/config';
-// @ts-check
-/** @type {import('@jest/types').Config.InitialOptions} */
-module.exports = {
- ...require('../../jest.config.base.js'),
-};
+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`,
+ 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 d0c46503c208..b34e770c2746 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/yarn.lock b/yarn.lock
index 3fbeca172cc3..d7f7e83853dc 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -6265,8 +6265,8 @@ __metadata:
linkType: hard
"@vitest/coverage-v8@npm:^3.0.8":
- version: 3.0.8
- resolution: "@vitest/coverage-v8@npm:3.0.8"
+ version: 3.1.1
+ resolution: "@vitest/coverage-v8@npm:3.1.1"
dependencies:
"@ampproject/remapping": ^2.3.0
"@bcoe/v8-coverage": ^1.0.2
@@ -6277,22 +6277,22 @@ __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.8
- vitest: 3.0.8
+ "@vitest/browser": 3.1.1
+ vitest: 3.1.1
peerDependenciesMeta:
"@vitest/browser":
optional: true
- checksum: 6b3f0f86f8df895f9d4e3978b11303cada2425452177b70e9b2c19fe5a56e2f5d075b7760de4d856406daa3d9f22c173145664cad75677f4085c63e290071e65
+ checksum: 5f55207c0f3ccf66cb56267643fffdce06bece64eb7f777c49257094c82371fb087e83976821f1c234dc796bc396dd89a3e26c59ad1534dcc639c39caa116532
languageName: node
linkType: hard
"@vitest/eslint-plugin@npm:^1.1.37":
- version: 1.1.37
- resolution: "@vitest/eslint-plugin@npm:1.1.37"
+ version: 1.1.39
+ resolution: "@vitest/eslint-plugin@npm:1.1.39"
peerDependencies:
"@typescript-eslint/utils": ^8.24.0
eslint: ">= 8.57.0"
@@ -6303,7 +6303,7 @@ __metadata:
optional: true
vitest:
optional: true
- checksum: 697fec7491e943d08ee5169e00041597b56db2d9a27740639e9051b254f4115af423ea81ca47b6df5cf4ac5de9d651f43bc1f7be19731eedfce6a1262133fd9f
+ checksum: 0730c7d2a24b6e72ad74478991f7426fe889d0a326f4dc5034db5bfb1fcedeb1f54f8d90d61587e66c447139fa5c72af07003d740753860de82a9b0565bd14aa
languageName: node
linkType: hard
@@ -19273,6 +19273,13 @@ __metadata:
languageName: node
linkType: hard
+"std-env@npm:^3.8.1":
+ version: 3.9.0
+ resolution: "std-env@npm:3.9.0"
+ checksum: d40126e4a650f6e5456711e6c297420352a376ef99a9599e8224d2d8f2ff2b91a954f3264fcef888d94fce5c9ae14992c5569761c95556fc87248ce4602ed212
+ 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"
@@ -20746,9 +20753,61 @@ __metadata:
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":
+ 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
+
+"vite@npm:^6.2.2":
+ version: 6.2.5
+ resolution: "vite@npm:6.2.5"
dependencies:
esbuild: ^0.25.0
fsevents: ~2.3.3
@@ -20794,7 +20853,7 @@ __metadata:
optional: true
bin:
vite: bin/vite.js
- checksum: 5a8b2083ef2534fab8769f18807e1df055730f1cb7853bed9d2556b2bb6c566aad25b6f530440370798baa4bc6c63f0d1339b646ee06102bc4f9373e93fefb7e
+ checksum: 49a6529c5ae8d6e4926f2daa51d7e20c50d780d8d2ec8c08605e966983fe8d17ec69bc36a356c1a21141c5a630b7a4109f3690c5b33f579d3e2bf26f914a149d
languageName: node
linkType: hard
From 32528551ffa88568d8ef629a4347f353ebec3397 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Fri, 7 Mar 2025 07:45:59 -0600
Subject: [PATCH 04/33] Update `vitest` to version 3.0.8
---
packages/type-utils/package.json | 4 +-
yarn.lock | 185 +------------------------------
2 files changed, 7 insertions(+), 182 deletions(-)
diff --git a/packages/type-utils/package.json b/packages/type-utils/package.json
index c5e9785282df..f57da040bc37 100644
--- a/packages/type-utils/package.json
+++ b/packages/type-utils/package.json
@@ -58,13 +58,13 @@
},
"devDependencies": {
"@typescript-eslint/parser": "8.29.0",
- "@vitest/coverage-v8": "^3.0.7",
+ "@vitest/coverage-v8": "^3.0.8",
"ajv": "^6.12.6",
"downlevel-dts": "*",
"prettier": "^3.2.5",
"rimraf": "*",
"typescript": "*",
- "vitest": "^3.0.7"
+ "vitest": "^3.0.8"
},
"funding": {
"type": "opencollective",
diff --git a/yarn.lock b/yarn.lock
index d7f7e83853dc..c110b6247603 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -6030,7 +6030,7 @@ __metadata:
"@typescript-eslint/parser": 8.29.0
"@typescript-eslint/typescript-estree": 8.29.0
"@typescript-eslint/utils": 8.29.0
- "@vitest/coverage-v8": ^3.0.7
+ "@vitest/coverage-v8": ^3.0.8
ajv: ^6.12.6
debug: ^4.3.4
downlevel-dts: "*"
@@ -6038,7 +6038,7 @@ __metadata:
rimraf: "*"
ts-api-utils: ^2.0.1
typescript: "*"
- vitest: ^3.0.7
+ vitest: ^3.0.8
peerDependencies:
eslint: ^8.57.0 || ^9.0.0
typescript: ">=4.8.4 <5.9.0"
@@ -6238,32 +6238,6 @@ __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/coverage-v8@npm:^3.0.8":
version: 3.1.1
resolution: "@vitest/coverage-v8@npm:3.1.1"
@@ -6307,18 +6281,6 @@ __metadata:
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/expect@npm:3.0.8":
version: 3.0.8
resolution: "@vitest/expect@npm:3.0.8"
@@ -6331,25 +6293,6 @@ __metadata:
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/mocker@npm:3.0.8":
version: 3.0.8
resolution: "@vitest/mocker@npm:3.0.8"
@@ -6369,15 +6312,6 @@ __metadata:
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/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"
@@ -6387,16 +6321,6 @@ __metadata:
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/runner@npm:3.0.8":
version: 3.0.8
resolution: "@vitest/runner@npm:3.0.8"
@@ -6407,17 +6331,6 @@ __metadata:
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/snapshot@npm:3.0.8":
version: 3.0.8
resolution: "@vitest/snapshot@npm:3.0.8"
@@ -6429,15 +6342,6 @@ __metadata:
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/spy@npm:3.0.8":
version: 3.0.8
resolution: "@vitest/spy@npm:3.0.8"
@@ -6447,17 +6351,6 @@ __metadata:
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
-
"@vitest/utils@npm:3.0.8":
version: 3.0.8
resolution: "@vitest/utils@npm:3.0.8"
@@ -20723,21 +20616,6 @@ __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-node@npm:3.0.8":
version: 3.0.8
resolution: "vite-node@npm:3.0.8"
@@ -20754,8 +20632,8 @@ __metadata:
linkType: hard
"vite@npm:^5.0.0 || ^6.0.0":
- version: 6.2.0
- resolution: "vite@npm:6.2.0"
+ version: 6.2.1
+ resolution: "vite@npm:6.2.1"
dependencies:
esbuild: ^0.25.0
fsevents: ~2.3.3
@@ -20801,7 +20679,7 @@ __metadata:
optional: true
bin:
vite: bin/vite.js
- checksum: 0f2b6232fe94184885dd025609995874ac75279a85596a4053a283bd8bd0391f8ed3e7efb3e8f94073811a2b237c626e850990b04d2c7a1dc33f05d150f36bcd
+ checksum: d7379a9870c888681f7e4a861095e7f568ecd4cb99a5eed2dec65dc205ce863783d45c66a1a275868e23732087009533eadec999061c1ddef96aa8aaa0dcf6d2
languageName: node
linkType: hard
@@ -20857,59 +20735,6 @@ __metadata:
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
-
"vitest@npm:^3.0.8":
version: 3.0.8
resolution: "vitest@npm:3.0.8"
From f91982286e173cca33f086196ab99c0d4d8afe00 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Fri, 7 Mar 2025 07:50:14 -0600
Subject: [PATCH 05/33] Fix Vitest config
---
packages/type-utils/package.json | 2 +-
packages/type-utils/project.json | 3 ++
.../tests/TypeOrValueSpecifier.test.ts | 39 ++++++++++++++-----
packages/type-utils/vitest.config.mts | 5 ++-
4 files changed, 36 insertions(+), 13 deletions(-)
diff --git a/packages/type-utils/package.json b/packages/type-utils/package.json
index f57da040bc37..037678f65558 100644
--- a/packages/type-utils/package.json
+++ b/packages/type-utils/package.json
@@ -43,7 +43,7 @@
"postclean": "rimraf dist/ _ts4.3/ coverage/",
"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"
},
"dependencies": {
diff --git a/packages/type-utils/project.json b/packages/type-utils/project.json
index bdf45fb9dbe2..8c91c0ace943 100644
--- a/packages/type-utils/project.json
+++ b/packages/type-utils/project.json
@@ -8,6 +8,9 @@
"lint": {
"executor": "@nx/eslint:lint",
"outputs": ["{options.outputFile}"]
+ },
+ "test": {
+ "executor": "@nx/vite:test"
}
}
}
diff --git a/packages/type-utils/tests/TypeOrValueSpecifier.test.ts b/packages/type-utils/tests/TypeOrValueSpecifier.test.ts
index 74e0d677919b..40b9d76b4faf 100644
--- a/packages/type-utils/tests/TypeOrValueSpecifier.test.ts
+++ b/packages/type-utils/tests/TypeOrValueSpecifier.test.ts
@@ -8,6 +8,10 @@ import type { TypeOrValueSpecifier } from '../src/TypeOrValueSpecifier';
import { typeMatchesSpecifier, typeOrValueSpecifiersSchema } from '../src';
+const ROOT_DIR = path.posix.join(
+ ...path.relative(process.cwd(), path.join(__dirname, '..')).split(path.sep),
+);
+
describe('TypeOrValueSpecifier', () => {
describe('Schema', () => {
const ajv = new Ajv();
@@ -205,11 +209,19 @@ describe('TypeOrValueSpecifier', () => {
],
[
'interface Foo {prop: string}; type Test = Foo;',
- { from: 'file', name: 'Foo', path: 'tests/fixtures/file.ts' },
+ {
+ from: 'file',
+ name: 'Foo',
+ path: `${ROOT_DIR}/tests/fixtures/file.ts`,
+ },
],
[
'type Foo = {prop: string}; type Test = Foo;',
- { from: 'file', name: 'Foo', path: 'tests/fixtures/file.ts' },
+ {
+ from: 'file',
+ name: 'Foo',
+ path: `${ROOT_DIR}/tests/fixtures/file.ts`,
+ },
],
[
'type Foo = Promise & {hey?: string}; let foo: Foo = Promise.resolve(5); type Test = typeof foo;',
@@ -220,7 +232,7 @@ describe('TypeOrValueSpecifier', () => {
{
from: 'file',
name: 'Foo',
- path: 'tests/../tests/fixtures//github.com///file.ts',
+ path: `${ROOT_DIR}/tests/../tests/fixtures//github.com///file.ts`,
},
],
[
@@ -228,7 +240,7 @@ describe('TypeOrValueSpecifier', () => {
{
from: 'file',
name: 'Foo',
- path: 'tests/../tests/fixtures//github.com///file.ts',
+ path: `${ROOT_DIR}/tests/../tests/fixtures//github.com///file.ts`,
},
],
[
@@ -236,7 +248,7 @@ describe('TypeOrValueSpecifier', () => {
{
from: 'file',
name: ['Foo', 'Bar'],
- path: 'tests/fixtures/file.ts',
+ path: `${ROOT_DIR}/tests/fixtures/file.ts`,
},
],
[
@@ -244,7 +256,7 @@ describe('TypeOrValueSpecifier', () => {
{
from: 'file',
name: ['Foo', 'Bar'],
- path: 'tests/fixtures/file.ts',
+ path: `${ROOT_DIR}/tests/fixtures/file.ts`,
},
],
] as const satisfies [string, TypeOrValueSpecifier][])(
@@ -558,18 +570,25 @@ describe('TypeOrValueSpecifier', () => {
package: 'foo-package',
},
],
- ['type Test = RegExp;', { from: 'file', name: 'RegExp' }],
- ['type Test = RegExp;', { from: 'file', name: ['RegExp', 'BigInt'] }],
+ ['type Test = RegExp;', { from: 'file', name: 'RegExp', path: ROOT_DIR }],
+ [
+ 'type Test = RegExp;',
+ { from: 'file', name: ['RegExp', 'BigInt'], path: ROOT_DIR },
+ ],
[
'type Test = RegExp;',
- { from: 'file', name: 'RegExp', path: 'tests/fixtures/file.ts' },
+ {
+ from: 'file',
+ name: 'RegExp',
+ path: `${ROOT_DIR}/tests/fixtures/file.ts`,
+ },
],
[
'type Test = RegExp;',
{
from: 'file',
name: ['RegExp', 'BigInt'],
- path: 'tests/fixtures/file.ts',
+ path: `${ROOT_DIR}/tests/fixtures/file.ts`,
},
],
[
diff --git a/packages/type-utils/vitest.config.mts b/packages/type-utils/vitest.config.mts
index c803e1d1c1ee..d3990efb8797 100644
--- a/packages/type-utils/vitest.config.mts
+++ b/packages/type-utils/vitest.config.mts
@@ -1,3 +1,4 @@
+import * as path from 'node:path';
import { defineConfig, mergeConfig } from 'vitest/config';
import { vitestBaseConfig } from '../../vitest.config.base.mjs';
@@ -8,8 +9,8 @@ const vitestConfig = mergeConfig(
defineConfig({
test: {
- dir: `${import.meta.dirname}/tests`,
- name: packageJson.name,
+ dir: path.join(import.meta.dirname, 'tests'),
+ name: packageJson.name.split('/').pop(),
root: import.meta.dirname,
},
}),
From 578be1fd6419cb2e0d7e8698ca11d8700beec690 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Sat, 8 Mar 2025 03:10:16 -0600
Subject: [PATCH 06/33] Include `vitest.config.mts` in `tsconfig.spec.json`
---
packages/type-utils/tsconfig.spec.json | 10 +++++++++-
packages/typescript-estree/tsconfig.spec.json | 1 +
tsconfig.base.json | 3 ++-
3 files changed, 12 insertions(+), 2 deletions(-)
diff --git a/packages/type-utils/tsconfig.spec.json b/packages/type-utils/tsconfig.spec.json
index ee94c6d08bec..4df7c4a2945a 100644
--- a/packages/type-utils/tsconfig.spec.json
+++ b/packages/type-utils/tsconfig.spec.json
@@ -5,7 +5,15 @@
"module": "NodeNext",
"types": ["node", "vitest/globals", "vitest/importMeta"]
},
- "include": ["src/**/*.test.ts", "src/**/*.spec.ts", "src/**/*.d.ts", "tests"],
+ "include": [
+ "../../vitest.config.base.mts",
+ "vitest.config.mts",
+ "package.json",
+ "src/**/*.test.ts",
+ "src/**/*.spec.ts",
+ "src/**/*.d.ts",
+ "tests"
+ ],
"exclude": ["**/fixtures/**"],
"references": [
{
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 37ed9a8a34caf4bf377034eb754c4afe67a62865 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Sat, 8 Mar 2025 03:53:08 -0600
Subject: [PATCH 07/33] Add `vitest.config.mts` files to ESLint configuration
---
eslint.config.mjs | 1 -
1 file changed, 1 deletion(-)
diff --git a/eslint.config.mjs b/eslint.config.mjs
index e8ef18c8420f..682cb8b37ab1 100644
--- a/eslint.config.mjs
+++ b/eslint.config.mjs
@@ -74,7 +74,6 @@ export default tseslint.config(
'.nx/',
'.yarn/',
'**/jest.config.js',
- '**/vitest.config.mts',
'**/node_modules/**',
'**/dist/**',
'**/fixtures/**',
From 6e45f7e5cb00d3d86f80fc2df26ca3c0eadbd618 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Mon, 10 Mar 2025 06:11:15 -0500
Subject: [PATCH 08/33] Use `defineProject` instead of `defineConfig`
---
packages/type-utils/vitest.config.mts | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/packages/type-utils/vitest.config.mts b/packages/type-utils/vitest.config.mts
index d3990efb8797..d29a8172c238 100644
--- a/packages/type-utils/vitest.config.mts
+++ b/packages/type-utils/vitest.config.mts
@@ -1,5 +1,5 @@
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' };
@@ -7,7 +7,7 @@ import packageJson from './package.json' with { type: 'json' };
const vitestConfig = mergeConfig(
vitestBaseConfig,
- defineConfig({
+ defineProject({
test: {
dir: path.join(import.meta.dirname, 'tests'),
name: packageJson.name.split('/').pop(),
From d40ac848438ab6cd95fd4ebee169d816871c5318 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Mon, 10 Mar 2025 06:47:44 -0500
Subject: [PATCH 09/33] Explicitly enable `resolveJsonModule`
---
packages/type-utils/tsconfig.spec.json | 1 +
tsconfig.base.json | 2 +-
2 files changed, 2 insertions(+), 1 deletion(-)
diff --git a/packages/type-utils/tsconfig.spec.json b/packages/type-utils/tsconfig.spec.json
index 4df7c4a2945a..095a2b0e4265 100644
--- a/packages/type-utils/tsconfig.spec.json
+++ b/packages/type-utils/tsconfig.spec.json
@@ -3,6 +3,7 @@
"compilerOptions": {
"outDir": "../../dist/out-tsc/packages/type-utils",
"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 167178bc4730912553d3e7b15cd1ae7af90d659c Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Mon, 10 Mar 2025 08:09:14 -0500
Subject: [PATCH 10/33] Use `.replace` instead of `.split`
---
packages/type-utils/vitest.config.mts | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/packages/type-utils/vitest.config.mts b/packages/type-utils/vitest.config.mts
index d29a8172c238..4b5c326507e2 100644
--- a/packages/type-utils/vitest.config.mts
+++ b/packages/type-utils/vitest.config.mts
@@ -10,7 +10,7 @@ const vitestConfig = mergeConfig(
defineProject({
test: {
dir: path.join(import.meta.dirname, 'tests'),
- name: packageJson.name.split('/').pop(),
+ name: packageJson.name.replace('@typescript-eslint/', ''),
root: import.meta.dirname,
},
}),
From a8b0c668f778ed61d983a7cdd7d7d4d14afbc08c Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Mon, 10 Mar 2025 08:43:07 -0500
Subject: [PATCH 11/33] Type check `vitest.config.mts` files using project
references.
---
packages/type-utils/tsconfig.spec.json | 4 +++-
packages/typescript-estree/tsconfig.spec.json | 1 -
tsconfig.base.json | 1 -
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/packages/type-utils/tsconfig.spec.json b/packages/type-utils/tsconfig.spec.json
index 095a2b0e4265..84da90bf1f9d 100644
--- a/packages/type-utils/tsconfig.spec.json
+++ b/packages/type-utils/tsconfig.spec.json
@@ -7,7 +7,6 @@
"types": ["node", "vitest/globals", "vitest/importMeta"]
},
"include": [
- "../../vitest.config.base.mts",
"vitest.config.mts",
"package.json",
"src/**/*.test.ts",
@@ -19,6 +18,9 @@
"references": [
{
"path": "./tsconfig.build.json"
+ },
+ {
+ "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/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,
From af5caa4d844b19051410a2f33940f51088e6900f Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Wed, 12 Mar 2025 00:47:07 -0500
Subject: [PATCH 12/33] Fix Vitest config
---
packages/type-utils/vitest.config.mts | 2 ++
1 file changed, 2 insertions(+)
diff --git a/packages/type-utils/vitest.config.mts b/packages/type-utils/vitest.config.mts
index 4b5c326507e2..ddc038f86b56 100644
--- a/packages/type-utils/vitest.config.mts
+++ b/packages/type-utils/vitest.config.mts
@@ -8,6 +8,8 @@ const vitestConfig = mergeConfig(
vitestBaseConfig,
defineProject({
+ root: import.meta.dirname,
+
test: {
dir: path.join(import.meta.dirname, 'tests'),
name: packageJson.name.replace('@typescript-eslint/', ''),
From a502477f1dd4b5c58be76c5f4fa467abfa5743c4 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Sat, 15 Mar 2025 22:13:57 -0500
Subject: [PATCH 13/33] Fix `typecheck` task
---
packages/type-utils/tsconfig.spec.json | 2 +-
tsconfig.repo-config-files.json | 2 --
2 files changed, 1 insertion(+), 3 deletions(-)
diff --git a/packages/type-utils/tsconfig.spec.json b/packages/type-utils/tsconfig.spec.json
index 84da90bf1f9d..7ec995aaf7dc 100644
--- a/packages/type-utils/tsconfig.spec.json
+++ b/packages/type-utils/tsconfig.spec.json
@@ -20,7 +20,7 @@
"path": "./tsconfig.build.json"
},
{
- "path": "../../tsconfig.repo-config-files.json"
+ "path": "../../tsconfig.spec.json"
}
]
}
diff --git a/tsconfig.repo-config-files.json b/tsconfig.repo-config-files.json
index b34e770c2746..d0c46503c208 100644
--- a/tsconfig.repo-config-files.json
+++ b/tsconfig.repo-config-files.json
@@ -12,8 +12,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",
From e9b2248601ebabcdcb3419398e68d10b29b1e589 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Wed, 26 Mar 2025 14:41:59 -0500
Subject: [PATCH 14/33] Update `vitest` to version 3.0.9
---
package.json | 6 +-
packages/eslint-plugin-internal/package.json | 4 +-
packages/type-utils/package.json | 4 +-
packages/typescript-eslint/package.json | 4 +-
yarn.lock | 382 +++++++++----------
5 files changed, 179 insertions(+), 221 deletions(-)
diff --git a/package.json b/package.json
index 6aeb68662580..65234a0f7c06 100644
--- a/package.json
+++ b/package.json
@@ -89,7 +89,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",
@@ -126,8 +126,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/type-utils/package.json b/packages/type-utils/package.json
index 037678f65558..212e03dc58b7 100644
--- a/packages/type-utils/package.json
+++ b/packages/type-utils/package.json
@@ -58,13 +58,13 @@
},
"devDependencies": {
"@typescript-eslint/parser": "8.29.0",
- "@vitest/coverage-v8": "^3.0.8",
+ "@vitest/coverage-v8": "^3.0.9",
"ajv": "^6.12.6",
"downlevel-dts": "*",
"prettier": "^3.2.5",
"rimraf": "*",
"typescript": "*",
- "vitest": "^3.0.8"
+ "vitest": "^3.0.9"
},
"funding": {
"type": "opencollective",
diff --git a/packages/typescript-eslint/package.json b/packages/typescript-eslint/package.json
index 15d0cdcda68a..651097c9063b 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 c110b6247603..01bd9b7be388 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.27.0
+ resolution: "@babel/parser@npm:7.27.0"
dependencies:
- "@babel/types": ^7.26.9
+ "@babel/types": ^7.27.0
bin:
parser: ./bin/babel-parser.js
- checksum: 2df965dbf3c67d19dc437412ceef23033b4d39b0dbd7cb498d8ab9ad9e1738338656ee72676199773b37d658edf9f4161cf255515234fed30695d74e73be5514
+ 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.9":
- version: 7.26.9
- resolution: "@babel/types@npm:7.26.9"
+"@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: cc124c149615deb30343a4c81ac5b0e3a68bdb4b1bd61a91a2859ee8e5e5f400f6ff65be4740f407c17bfc09baa9c777e7f8f765dccf3284963956b67ac95a38
+ checksum: 59582019eb8a693d4277015d4dec0233874d884b9019dcd09550332db7f0f2ac9e30eca685bb0ada4bab5a4dc8bbc2a6bcaadb151c69b7e6aa94b5eaf8fc8c51
languageName: node
linkType: hard
@@ -4528,135 +4528,142 @@ __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.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.34.9":
- version: 4.34.9
- resolution: "@rollup/rollup-android-arm64@npm:4.34.9"
+"@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.34.9":
- version: 4.34.9
- resolution: "@rollup/rollup-darwin-arm64@npm:4.34.9"
+"@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.34.9":
- version: 4.34.9
- resolution: "@rollup/rollup-darwin-x64@npm:4.34.9"
+"@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.34.9":
- version: 4.34.9
- resolution: "@rollup/rollup-freebsd-arm64@npm:4.34.9"
+"@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.34.9":
- version: 4.34.9
- resolution: "@rollup/rollup-freebsd-x64@npm:4.34.9"
+"@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.34.9":
- version: 4.34.9
- resolution: "@rollup/rollup-linux-arm-gnueabihf@npm:4.34.9"
+"@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.34.9":
- version: 4.34.9
- resolution: "@rollup/rollup-linux-arm-musleabihf@npm:4.34.9"
+"@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.34.9":
- version: 4.34.9
- resolution: "@rollup/rollup-linux-arm64-gnu@npm:4.34.9"
+"@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.34.9":
- version: 4.34.9
- resolution: "@rollup/rollup-linux-arm64-musl@npm:4.34.9"
+"@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.34.9":
- version: 4.34.9
- resolution: "@rollup/rollup-linux-loongarch64-gnu@npm:4.34.9"
+"@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.34.9":
- version: 4.34.9
- resolution: "@rollup/rollup-linux-powerpc64le-gnu@npm:4.34.9"
+"@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.34.9":
- version: 4.34.9
- resolution: "@rollup/rollup-linux-riscv64-gnu@npm:4.34.9"
+"@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.34.9":
- version: 4.34.9
- resolution: "@rollup/rollup-linux-s390x-gnu@npm:4.34.9"
+"@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.34.9":
- version: 4.34.9
- resolution: "@rollup/rollup-linux-x64-gnu@npm:4.34.9"
+"@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.34.9":
- version: 4.34.9
- resolution: "@rollup/rollup-linux-x64-musl@npm:4.34.9"
+"@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.34.9":
- version: 4.34.9
- resolution: "@rollup/rollup-win32-arm64-msvc@npm:4.34.9"
+"@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.34.9":
- version: 4.34.9
- resolution: "@rollup/rollup-win32-ia32-msvc@npm:4.34.9"
+"@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.34.9":
- version: 4.34.9
- resolution: "@rollup/rollup-win32-x64-msvc@npm:4.34.9"
+"@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
@@ -5881,10 +5888,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
@@ -6030,7 +6037,7 @@ __metadata:
"@typescript-eslint/parser": 8.29.0
"@typescript-eslint/typescript-estree": 8.29.0
"@typescript-eslint/utils": 8.29.0
- "@vitest/coverage-v8": ^3.0.8
+ "@vitest/coverage-v8": ^3.0.9
ajv: ^6.12.6
debug: ^4.3.4
downlevel-dts: "*"
@@ -6038,7 +6045,7 @@ __metadata:
rimraf: "*"
ts-api-utils: ^2.0.1
typescript: "*"
- vitest: ^3.0.8
+ vitest: ^3.0.9
peerDependencies:
eslint: ^8.57.0 || ^9.0.0
typescript: ">=4.8.4 <5.9.0"
@@ -6099,7 +6106,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
@@ -6136,8 +6143,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
@@ -6238,9 +6245,9 @@ __metadata:
languageName: node
linkType: hard
-"@vitest/coverage-v8@npm:^3.0.8":
- version: 3.1.1
- resolution: "@vitest/coverage-v8@npm:3.1.1"
+"@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
@@ -6255,12 +6262,12 @@ __metadata:
test-exclude: ^7.0.1
tinyrainbow: ^2.0.0
peerDependencies:
- "@vitest/browser": 3.1.1
- vitest: 3.1.1
+ "@vitest/browser": 3.0.9
+ vitest: 3.0.9
peerDependenciesMeta:
"@vitest/browser":
optional: true
- checksum: 5f55207c0f3ccf66cb56267643fffdce06bece64eb7f777c49257094c82371fb087e83976821f1c234dc796bc396dd89a3e26c59ad1534dcc639c39caa116532
+ checksum: cb6d05fb696356e5dbc7a8bb136e285c34501fe0991904e69f42df5a45c114488d80e27175dc607b934547afb2255c4444efe0f789883082c50d770d2d4ffd92
languageName: node
linkType: hard
@@ -6281,23 +6288,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:
@@ -6308,57 +6315,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
@@ -18214,28 +18221,29 @@ __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.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:
@@ -18265,6 +18273,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":
@@ -18281,7 +18291,7 @@ __metadata:
optional: true
bin:
rollup: dist/bin/rollup
- checksum: ed7a5e382de5fe872abffdab614b7f745cbed7328cf4ced560c4d09214b3d30e167f8c7df9e8b63489497bdf3a6be07a2474f9ff3195026bdf2d49cdbeac38ae
+ checksum: bb6c82ab5a12750e7dd521651f7bb7f44e4c03f058f38995f65141d4032b53a9f4b14d777af1bec6f00cdbbd1cf856581b516d803c9c5ecaede0b77501239673
languageName: node
linkType: hard
@@ -20177,12 +20187,12 @@ __metadata:
"@typescript-eslint/eslint-plugin": 8.29.0
"@typescript-eslint/parser": 8.29.0
"@typescript-eslint/utils": 8.29.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"
@@ -20616,9 +20626,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
@@ -20627,13 +20637,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":
- version: 6.2.1
- resolution: "vite@npm:6.2.1"
+"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
@@ -20679,73 +20689,21 @@ __metadata:
optional: true
bin:
vite: bin/vite.js
- checksum: d7379a9870c888681f7e4a861095e7f568ecd4cb99a5eed2dec65dc205ce863783d45c66a1a275868e23732087009533eadec999061c1ddef96aa8aaa0dcf6d2
+ checksum: 5ce6c0ce9fd3591e1eb21ffaac9b1395cbd03926399cdb0f2a333c08fd9cab17da47d5203b88b574675c4a6ad5a77dd4a88ad51ea400ad6d75d993d5f05c8b64
languageName: node
linkType: hard
-"vite@npm:^6.2.2":
- version: 6.2.5
- resolution: "vite@npm:6.2.5"
- 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: 49a6529c5ae8d6e4926f2daa51d7e20c50d780d8d2ec8c08605e966983fe8d17ec69bc36a356c1a21141c5a630b7a4109f3690c5b33f579d3e2bf26f914a149d
- 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
@@ -20757,14 +20715,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:
@@ -20784,7 +20742,7 @@ __metadata:
optional: true
bin:
vitest: vitest.mjs
- checksum: e4786f6127a261d61fec20c1a9cc2acae514696fc382d0cd9c62d83d7d872eaadf4d7d09495a04a6c5a8879306f197a35729c7c6c1929ef870ea063e4be87847
+ checksum: f8ec160cf8f75e4344dfa8f330e2cac6a49635977319a04c36803ccec1b69918381e435cb9d01edafab293648c65e9b766bba71fdf3451cb927590be263687f9
languageName: node
linkType: hard
From e759da4670c4faa4a97ce51865349c8bcf7b21e4 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Wed, 26 Mar 2025 14:44:13 -0500
Subject: [PATCH 15/33] 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 65234a0f7c06..15282a8f32d6 100644
--- a/package.json
+++ b/package.json
@@ -90,7 +90,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 01bd9b7be388..55e58b73064e 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -6107,7 +6107,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
@@ -6271,9 +6271,9 @@ __metadata:
languageName: node
linkType: hard
-"@vitest/eslint-plugin@npm:^1.1.37":
- version: 1.1.39
- resolution: "@vitest/eslint-plugin@npm:1.1.39"
+"@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"
@@ -6284,7 +6284,7 @@ __metadata:
optional: true
vitest:
optional: true
- checksum: 0730c7d2a24b6e72ad74478991f7426fe889d0a326f4dc5034db5bfb1fcedeb1f54f8d90d61587e66c447139fa5c72af07003d740753860de82a9b0565bd14aa
+ checksum: 139b3f3f6fbb4e3ef92a5228f6e73b881228351f0ff32fe0d1c3e63a0d3548eb8927c15ab41053dd18b642c111b291f9333b3db097a188af659ee7aa11993dd0
languageName: node
linkType: hard
From 1f44186e5482a89f44f9e89657c0bceee15e97dd Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Mon, 31 Mar 2025 09:16:47 -0500
Subject: [PATCH 16/33] Update `vitest` to version 3.1.1
---
package.json | 6 +-
packages/eslint-plugin-internal/package.json | 4 +-
packages/type-utils/package.json | 4 +-
packages/typescript-eslint/package.json | 4 +-
yarn.lock | 660 +++++++++++++------
5 files changed, 466 insertions(+), 212 deletions(-)
diff --git a/package.json b/package.json
index 15282a8f32d6..e0da784ef01b 100644
--- a/package.json
+++ b/package.json
@@ -89,7 +89,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",
@@ -126,8 +126,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/type-utils/package.json b/packages/type-utils/package.json
index 212e03dc58b7..4b8cd795657d 100644
--- a/packages/type-utils/package.json
+++ b/packages/type-utils/package.json
@@ -58,13 +58,13 @@
},
"devDependencies": {
"@typescript-eslint/parser": "8.29.0",
- "@vitest/coverage-v8": "^3.0.9",
+ "@vitest/coverage-v8": "^3.1.1",
"ajv": "^6.12.6",
"downlevel-dts": "*",
"prettier": "^3.2.5",
"rimraf": "*",
"typescript": "*",
- "vitest": "^3.0.9"
+ "vitest": "^3.1.1"
},
"funding": {
"type": "opencollective",
diff --git a/packages/typescript-eslint/package.json b/packages/typescript-eslint/package.json
index 651097c9063b..20ad9339be6f 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 55e58b73064e..e5be3b6e8ea2 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -3048,6 +3048,13 @@ __metadata:
languageName: node
linkType: hard
+"@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
+
"@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.2":
+ version: 0.25.2
+ resolution: "@esbuild/android-arm64@npm:0.25.2"
+ 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.2":
+ version: 0.25.2
+ resolution: "@esbuild/android-arm@npm:0.25.2"
+ 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.2":
+ version: 0.25.2
+ resolution: "@esbuild/android-x64@npm:0.25.2"
+ 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.2":
+ version: 0.25.2
+ resolution: "@esbuild/darwin-arm64@npm:0.25.2"
+ 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.2":
+ version: 0.25.2
+ resolution: "@esbuild/darwin-x64@npm:0.25.2"
+ 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.2":
+ version: 0.25.2
+ resolution: "@esbuild/freebsd-arm64@npm:0.25.2"
+ 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.2":
+ version: 0.25.2
+ resolution: "@esbuild/freebsd-x64@npm:0.25.2"
+ 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.2":
+ version: 0.25.2
+ resolution: "@esbuild/linux-arm64@npm:0.25.2"
+ 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.2":
+ version: 0.25.2
+ resolution: "@esbuild/linux-arm@npm:0.25.2"
+ 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.2":
+ version: 0.25.2
+ resolution: "@esbuild/linux-ia32@npm:0.25.2"
+ 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.2":
+ version: 0.25.2
+ resolution: "@esbuild/linux-loong64@npm:0.25.2"
+ 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.2":
+ version: 0.25.2
+ resolution: "@esbuild/linux-mips64el@npm:0.25.2"
+ 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.2":
+ version: 0.25.2
+ resolution: "@esbuild/linux-ppc64@npm:0.25.2"
+ 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.2":
+ version: 0.25.2
+ resolution: "@esbuild/linux-riscv64@npm:0.25.2"
+ 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.2":
+ version: 0.25.2
+ resolution: "@esbuild/linux-s390x@npm:0.25.2"
+ 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.2":
+ version: 0.25.2
+ resolution: "@esbuild/linux-x64@npm:0.25.2"
+ 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.2":
+ version: 0.25.2
+ resolution: "@esbuild/netbsd-arm64@npm:0.25.2"
+ 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.2":
+ version: 0.25.2
+ resolution: "@esbuild/netbsd-x64@npm:0.25.2"
+ 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.2":
+ version: 0.25.2
+ resolution: "@esbuild/openbsd-arm64@npm:0.25.2"
+ 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.2":
+ version: 0.25.2
+ resolution: "@esbuild/openbsd-x64@npm:0.25.2"
+ 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.2":
+ version: 0.25.2
+ resolution: "@esbuild/sunos-x64@npm:0.25.2"
+ 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.2":
+ version: 0.25.2
+ resolution: "@esbuild/win32-arm64@npm:0.25.2"
+ 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.2":
+ version: 0.25.2
+ resolution: "@esbuild/win32-ia32@npm:0.25.2"
+ 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.2":
+ version: 0.25.2
+ resolution: "@esbuild/win32-x64@npm:0.25.2"
+ 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"
@@ -4528,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.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.37.0":
- version: 4.37.0
- resolution: "@rollup/rollup-android-arm64@npm:4.37.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.37.0":
- version: 4.37.0
- resolution: "@rollup/rollup-darwin-arm64@npm:4.37.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.37.0":
- version: 4.37.0
- resolution: "@rollup/rollup-darwin-x64@npm:4.37.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.37.0":
- version: 4.37.0
- resolution: "@rollup/rollup-freebsd-arm64@npm:4.37.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.37.0":
- version: 4.37.0
- resolution: "@rollup/rollup-freebsd-x64@npm:4.37.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.37.0":
- version: 4.37.0
- resolution: "@rollup/rollup-linux-arm-gnueabihf@npm:4.37.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.37.0":
- version: 4.37.0
- resolution: "@rollup/rollup-linux-arm-musleabihf@npm:4.37.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.37.0":
- version: 4.37.0
- resolution: "@rollup/rollup-linux-arm64-gnu@npm:4.37.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.37.0":
- version: 4.37.0
- resolution: "@rollup/rollup-linux-arm64-musl@npm:4.37.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.37.0":
- version: 4.37.0
- resolution: "@rollup/rollup-linux-loongarch64-gnu@npm:4.37.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.37.0":
- version: 4.37.0
- resolution: "@rollup/rollup-linux-powerpc64le-gnu@npm:4.37.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.37.0":
- version: 4.37.0
- resolution: "@rollup/rollup-linux-riscv64-gnu@npm:4.37.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.37.0":
- version: 4.37.0
- resolution: "@rollup/rollup-linux-riscv64-musl@npm:4.37.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.37.0":
- version: 4.37.0
- resolution: "@rollup/rollup-linux-s390x-gnu@npm:4.37.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.37.0":
- version: 4.37.0
- resolution: "@rollup/rollup-linux-x64-gnu@npm:4.37.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.37.0":
- version: 4.37.0
- resolution: "@rollup/rollup-linux-x64-musl@npm:4.37.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.37.0":
- version: 4.37.0
- resolution: "@rollup/rollup-win32-arm64-msvc@npm:4.37.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.37.0":
- version: 4.37.0
- resolution: "@rollup/rollup-win32-ia32-msvc@npm:4.37.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.37.0":
- version: 4.37.0
- resolution: "@rollup/rollup-win32-x64-msvc@npm:4.37.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
@@ -5888,10 +6063,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
@@ -6037,7 +6212,7 @@ __metadata:
"@typescript-eslint/parser": 8.29.0
"@typescript-eslint/typescript-estree": 8.29.0
"@typescript-eslint/utils": 8.29.0
- "@vitest/coverage-v8": ^3.0.9
+ "@vitest/coverage-v8": ^3.1.1
ajv: ^6.12.6
debug: ^4.3.4
downlevel-dts: "*"
@@ -6045,7 +6220,7 @@ __metadata:
rimraf: "*"
ts-api-utils: ^2.0.1
typescript: "*"
- vitest: ^3.0.9
+ vitest: ^3.1.1
peerDependencies:
eslint: ^8.57.0 || ^9.0.0
typescript: ">=4.8.4 <5.9.0"
@@ -6106,7 +6281,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
@@ -6143,8 +6318,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
@@ -6245,9 +6420,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
@@ -6262,18 +6437,18 @@ __metadata:
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
"@vitest/eslint-plugin@npm:^1.1.38":
- version: 1.1.38
- resolution: "@vitest/eslint-plugin@npm:1.1.38"
+ version: 1.1.39
+ resolution: "@vitest/eslint-plugin@npm:1.1.39"
peerDependencies:
"@typescript-eslint/utils": ^8.24.0
eslint: ">= 8.57.0"
@@ -6284,27 +6459,27 @@ __metadata:
optional: true
vitest:
optional: true
- checksum: 139b3f3f6fbb4e3ef92a5228f6e73b881228351f0ff32fe0d1c3e63a0d3548eb8927c15ab41053dd18b642c111b291f9333b3db097a188af659ee7aa11993dd0
+ checksum: 0730c7d2a24b6e72ad74478991f7426fe889d0a326f4dc5034db5bfb1fcedeb1f54f8d90d61587e66c447139fa5c72af07003d740753860de82a9b0565bd14aa
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:
@@ -6315,57 +6490,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
@@ -9843,35 +10018,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.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
@@ -9925,7 +10100,7 @@ __metadata:
optional: true
bin:
esbuild: bin/esbuild
- checksum: 4d1e0cb7c059a373ea3edb20ca5efcea29efada03e4ea82b2b8ab1f2f062e4791e9744213308775d26e07a0225a7d8250da93da5c8e07ef61bb93d58caab8cf9
+ checksum: 2c4e91948b939e711e9342e692fc3c8b0a95acbc1fc9c7628db6092c4aef7c32aa643b2782111625871756084536cebc4831b3f1d5c3b6bd4e4774e21bc4bbea
languageName: node
linkType: hard
@@ -10009,6 +10184,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"
@@ -10622,10 +10883,10 @@ __metadata:
languageName: node
linkType: hard
-"expect-type@npm:^1.1.0":
- version: 1.2.0
- resolution: "expect-type@npm:1.2.0"
- checksum: fb6cce8e0d8cd2d2b329afeacad08dbf01297b0363494a826cb3dad7d22d45e5283a1c2c3f8cdef5765afefab4676a7cb9a46c9c5a506fdd1ee255e429debe96
+"expect-type@npm:^1.2.0":
+ version: 1.2.1
+ resolution: "expect-type@npm:1.2.1"
+ checksum: 4fc41ff0c784cb8984ab7801326251d3178083661f0ad08bbd3e5ca789293e6b66d5082f0cef83ebf9849c85d0280a19df5e4e2c57999a2464db9a01c7e3344f
languageName: node
linkType: hard
@@ -18221,30 +18482,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.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:
"@rollup/rollup-android-arm-eabi":
@@ -18291,7 +18552,7 @@ __metadata:
optional: true
bin:
rollup: dist/bin/rollup
- checksum: bb6c82ab5a12750e7dd521651f7bb7f44e4c03f058f38995f65141d4032b53a9f4b14d777af1bec6f00cdbbd1cf856581b516d803c9c5ecaede0b77501239673
+ checksum: e5205be3107221bc0de467c6f9d2cc4bef18019f5111fa84f24dd640cb1c82c0c46a5f51c052df956fe24bd6a1e34398fb5abe08470f94d29aa7ad08208115e9
languageName: node
linkType: hard
@@ -19169,13 +19430,6 @@ __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
-
"std-env@npm:^3.8.1":
version: 3.9.0
resolution: "std-env@npm:3.9.0"
@@ -20187,12 +20441,12 @@ __metadata:
"@typescript-eslint/eslint-plugin": 8.29.0
"@typescript-eslint/parser": 8.29.0
"@typescript-eslint/utils": 8.29.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"
@@ -20626,9 +20880,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
@@ -20637,13 +20891,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.5
+ resolution: "vite@npm:6.2.5"
dependencies:
esbuild: ^0.25.0
fsevents: ~2.3.3
@@ -20689,40 +20943,40 @@ __metadata:
optional: true
bin:
vite: bin/vite.js
- checksum: 5ce6c0ce9fd3591e1eb21ffaac9b1395cbd03926399cdb0f2a333c08fd9cab17da47d5203b88b574675c4a6ad5a77dd4a88ad51ea400ad6d75d993d5f05c8b64
+ checksum: 49a6529c5ae8d6e4926f2daa51d7e20c50d780d8d2ec8c08605e966983fe8d17ec69bc36a356c1a21141c5a630b7a4109f3690c5b33f579d3e2bf26f914a149d
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:
@@ -20742,7 +20996,7 @@ __metadata:
optional: true
bin:
vitest: vitest.mjs
- checksum: f8ec160cf8f75e4344dfa8f330e2cac6a49635977319a04c36803ccec1b69918381e435cb9d01edafab293648c65e9b766bba71fdf3451cb927590be263687f9
+ checksum: 817198380f249388bebc64cdae27e64d04570bc6ca98c13b3518059a655ebf94f413e17bbe5d71bfc2ca444e9ab93d0b39e9da4f455a51600fd92d4fa6c50664
languageName: node
linkType: hard
From 4dd2332d6bfbc54d9256c2242163c21bc7b9fd6d Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Wed, 2 Apr 2025 11:46:40 -0500
Subject: [PATCH 17/33] Update `@vitest/eslint-plugin` to version 1.1.39
---
package.json | 2 +-
yarn.lock | 4 ++--
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/package.json b/package.json
index e0da784ef01b..061e0233531f 100644
--- a/package.json
+++ b/package.json
@@ -90,7 +90,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 e5be3b6e8ea2..b864667f0e48 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -6282,7 +6282,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
@@ -6446,7 +6446,7 @@ __metadata:
languageName: node
linkType: hard
-"@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:
From ed9a35f04da6aebd41fef0aba3d7edb41019b7d3 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Thu, 3 Apr 2025 00:10:27 -0500
Subject: [PATCH 18/33] Fix `knip` config
---
knip.ts | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/knip.ts b/knip.ts
index 594dc6e49d92..140c1485e885 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 777707ecdd321629dc3ce4216bf04f469a397537 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Thu, 3 Apr 2025 06:06:34 -0500
Subject: [PATCH 19/33] Update `vite` to version 6.2.5
---
package.json | 2 +-
yarn.lock | 4 ++--
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/package.json b/package.json
index 061e0233531f..10b2c4fc30d9 100644
--- a/package.json
+++ b/package.json
@@ -126,7 +126,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 b864667f0e48..7cf758e23c4d 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -6318,7 +6318,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
@@ -20895,7 +20895,7 @@ __metadata:
languageName: node
linkType: hard
-"vite@npm:^5.0.0 || ^6.0.0, 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:
From 99133cdd51678d57fae0d7cc443c13fea0df2e3f Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Thu, 10 Apr 2025 09:13:03 -0500
Subject: [PATCH 20/33] Update `vite` to version 6.2.6
---
package.json | 2 +-
yarn.lock | 17 ++++++++---------
2 files changed, 9 insertions(+), 10 deletions(-)
diff --git a/package.json b/package.json
index 10b2c4fc30d9..f964215b5f89 100644
--- a/package.json
+++ b/package.json
@@ -126,7 +126,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 54bc28d7364d..57a027fca713 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -6318,7 +6318,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
@@ -6447,10 +6447,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: "*"
@@ -6459,7 +6458,7 @@ __metadata:
optional: true
vitest:
optional: true
- checksum: 0730c7d2a24b6e72ad74478991f7426fe889d0a326f4dc5034db5bfb1fcedeb1f54f8d90d61587e66c447139fa5c72af07003d740753860de82a9b0565bd14aa
+ checksum: bb8c4d7654945890f666be6ef0ebd8c21b6f896416099655bfd286ad0d388b6e5b83e11a9cdd044daeb11dac1bc1ee03d41db02db27426a8cedfdd33a6675645
languageName: node
linkType: hard
@@ -20895,9 +20894,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
@@ -20943,7 +20942,7 @@ __metadata:
optional: true
bin:
vite: bin/vite.js
- checksum: 49a6529c5ae8d6e4926f2daa51d7e20c50d780d8d2ec8c08605e966983fe8d17ec69bc36a356c1a21141c5a630b7a4109f3690c5b33f579d3e2bf26f914a149d
+ checksum: ddeb36d29c053c6d6f0e70eb01939848db611135878d85e9497fc4b899667f58ce35ea4014acf01342ee1cf115879280fac809c0a806ad6432833cde87fe90dc
languageName: node
linkType: hard
From e71694db23a3249128c7ab678415606296b533f8 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Thu, 10 Apr 2025 09:20:46 -0500
Subject: [PATCH 21/33] 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 f964215b5f89..4bcaff55bf93 100644
--- a/package.json
+++ b/package.json
@@ -90,7 +90,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 57a027fca713..dbfcd81cac9d 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -6282,7 +6282,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
@@ -6446,7 +6446,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 d938588fa2294d8e64e78c01391f32099387bff3 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Thu, 10 Apr 2025 19:22:40 -0500
Subject: [PATCH 22/33] 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 48b8bfbf4e68..b41ff68c1177 100644
--- a/package.json
+++ b/package.json
@@ -90,7 +90,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 5b2de442a7bb..a4950b81e933 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -6282,7 +6282,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
@@ -6446,19 +6446,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 b27008479cfb6c5126e20cf0e45f830a6aa6ebf3 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Thu, 10 Apr 2025 20:27:20 -0500
Subject: [PATCH 23/33] Enable the new `vitest/prefer-describe-function-title`
rule
---
eslint.config.mjs | 1 +
packages/type-utils/tests/discriminateAnyType.test.ts | 2 +-
2 files changed, 2 insertions(+), 1 deletion(-)
diff --git a/eslint.config.mjs b/eslint.config.mjs
index 59ba2c20cfd6..f7beef6a7203 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',
diff --git a/packages/type-utils/tests/discriminateAnyType.test.ts b/packages/type-utils/tests/discriminateAnyType.test.ts
index 67a84298b057..bcadb32b7f81 100644
--- a/packages/type-utils/tests/discriminateAnyType.test.ts
+++ b/packages/type-utils/tests/discriminateAnyType.test.ts
@@ -8,7 +8,7 @@ import { expectToHaveParserServices } from './test-utils/expectToHaveParserServi
type GetNode = (ast: TSESTree.Program) => TSESTree.Node;
-describe('discriminateAnyType', () => {
+describe(discriminateAnyType, () => {
const rootDir = path.join(__dirname, 'fixtures');
function getDeclarationId(ast: TSESTree.Program): TSESTree.Node {
From 14f14e265af8db3855e78393a453c708057a701f Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Fri, 11 Apr 2025 00:47:14 -0500
Subject: [PATCH 24/33] 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 f7beef6a7203..f01204377f39 100644
--- a/eslint.config.mjs
+++ b/eslint.config.mjs
@@ -380,11 +380,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 60b6c6055e2309aa8ea290084a0fcb8eee4f879c Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Fri, 11 Apr 2025 17:36:33 -0500
Subject: [PATCH 25/33] 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 bddd2bea4215b93f435f4f452c709fb46e8c928f Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Fri, 11 Apr 2025 17:36:47 -0500
Subject: [PATCH 26/33] 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 d57f66bc79d38d96643db259cd598610ff26df35 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Fri, 11 Apr 2025 18:23:39 -0500
Subject: [PATCH 27/33] Fix `ast-spec:build`
---
packages/ast-spec/project.json | 9 +++------
1 file changed, 3 insertions(+), 6 deletions(-)
diff --git a/packages/ast-spec/project.json b/packages/ast-spec/project.json
index fcd5321b19f3..a46843d6def3 100644
--- a/packages/ast-spec/project.json
+++ b/packages/ast-spec/project.json
@@ -1,15 +1,12 @@
{
"name": "ast-spec",
"$schema": "../../node_modules/nx/schemas/project-schema.json",
- "type": "library",
+ "projectType": "library",
"implicitDependencies": ["!typescript-estree"],
+ "root": "packages/ast-spec",
+ "sourceRoot": "packages/ast-spec/src",
"targets": {
"build": {
- "executor": "nx:run-commands",
- "options": {
- "cwd": "packages/ast-spec",
- "commands": ["yarn build"]
- },
"outputs": ["{projectRoot}/dist/**/*.ts"]
},
"lint": {
From d4f77e92d64b4d45cabc16202ad7bd5428d1c3a4 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Fri, 11 Apr 2025 20:03:57 -0500
Subject: [PATCH 28/33] 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 7137af9390581c1b61ccd34acd1805a29e92c0b2 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Fri, 11 Apr 2025 20:24:06 -0500
Subject: [PATCH 29/33] 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 971aec3c271770e65b091cb84cd49efcf21425fa Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Fri, 11 Apr 2025 21:45:39 -0500
Subject: [PATCH 30/33] 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 b40e0374c8f2eb035c770c55f5d4e45b84e4b9d7 Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Fri, 11 Apr 2025 23:32:13 -0500
Subject: [PATCH 31/33] Set `testTimeout` to `10_000`
---
packages/type-utils/vitest.config.mts | 1 +
1 file changed, 1 insertion(+)
diff --git a/packages/type-utils/vitest.config.mts b/packages/type-utils/vitest.config.mts
index ddc038f86b56..674ea2ded3b5 100644
--- a/packages/type-utils/vitest.config.mts
+++ b/packages/type-utils/vitest.config.mts
@@ -14,6 +14,7 @@ const vitestConfig = mergeConfig(
dir: path.join(import.meta.dirname, 'tests'),
name: packageJson.name.replace('@typescript-eslint/', ''),
root: import.meta.dirname,
+ testTimeout: 10_000,
},
}),
);
From 7af2d6f83504d9bf46a6f9d707a71a0cc160001e Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Sat, 12 Apr 2025 00:18:40 -0500
Subject: [PATCH 32/33] Switch to `it.for`
---
.../tests/TypeOrValueSpecifier.test.ts | 86 +++++++++++--------
.../tests/containsAllTypesByName.test.ts | 39 ++++++---
.../tests/discriminateAnyType.test.ts | 53 +++++++-----
packages/type-utils/tests/getTypeName.test.ts | 10 ++-
.../tests/isSymbolFromDefaultLibrary.test.ts | 25 ++++--
.../type-utils/tests/typeFlagUtils.test.ts | 30 ++++---
6 files changed, 155 insertions(+), 88 deletions(-)
diff --git a/packages/type-utils/tests/TypeOrValueSpecifier.test.ts b/packages/type-utils/tests/TypeOrValueSpecifier.test.ts
index 40b9d76b4faf..70ae2bda9313 100644
--- a/packages/type-utils/tests/TypeOrValueSpecifier.test.ts
+++ b/packages/type-utils/tests/TypeOrValueSpecifier.test.ts
@@ -1,4 +1,5 @@
import type { TSESTree } from '@typescript-eslint/utils';
+import type { TestContext } from 'vitest';
import { parseForESLint } from '@typescript-eslint/parser';
import Ajv from 'ajv';
@@ -17,20 +18,26 @@ describe('TypeOrValueSpecifier', () => {
const ajv = new Ajv();
const validate = ajv.compile(typeOrValueSpecifiersSchema);
- function runTestPositive(typeOrValueSpecifier: unknown): void {
+ function runTestPositive(
+ [typeOrValueSpecifier]: readonly [typeOrValueSpecifier: unknown],
+ { expect }: TestContext,
+ ): void {
expect(validate([typeOrValueSpecifier])).toBe(true);
}
- function runTestNegative(typeOrValueSpecifier: unknown): void {
+ function runTestNegative(
+ [typeOrValueSpecifier]: readonly [typeOrValueSpecifier: unknown],
+ { expect }: TestContext,
+ ): void {
expect(validate([typeOrValueSpecifier])).toBe(false);
}
- it.each([['MyType'], ['myValue'], ['any'], ['void'], ['never']] as const)(
+ it.for([['MyType'], ['myValue'], ['any'], ['void'], ['never']] as const)(
'matches a simple string specifier %s',
runTestPositive,
);
- it.each([
+ it.for([
[42],
[false],
[null],
@@ -39,14 +46,14 @@ describe('TypeOrValueSpecifier', () => {
[(): void => {}],
] as const)("doesn't match any non-string basic type: %s", runTestNegative);
- it.each([
+ it.for([
[{ from: 'file', name: 'MyType' }],
[{ from: 'file', name: ['MyType', 'myValue'] }],
[{ from: 'file', name: 'MyType', path: './filename.js' }],
[{ from: 'file', name: ['MyType', 'myValue'], path: './filename.js' }],
] as const)('matches a file specifier: %s', runTestPositive);
- it.each([
+ it.for([
[{ from: 'file', name: 42 }],
[{ from: 'file', name: ['MyType', 42] }],
[{ from: 'file', name: ['MyType', 'MyType'] }],
@@ -68,12 +75,12 @@ describe('TypeOrValueSpecifier', () => {
runTestNegative,
);
- it.each([
+ it.for([
[{ from: 'lib', name: 'MyType' }],
[{ from: 'lib', name: ['MyType', 'myValue'] }],
] as const)('matches a lib specifier: %s', runTestPositive);
- it.each([
+ it.for([
[{ from: 'lib', name: 42 }],
[{ from: 'lib', name: ['MyType', 42] }],
[{ from: 'lib', name: ['MyType', 'MyType'] }],
@@ -82,7 +89,7 @@ describe('TypeOrValueSpecifier', () => {
[{ from: 'lib', name: 'MyType', unrelatedProperty: '' }],
] as const)("doesn't match a malformed lib specifier: %s", runTestNegative);
- it.each([
+ it.for([
[{ from: 'package', name: 'MyType', package: 'jquery' }],
[
{
@@ -93,7 +100,7 @@ describe('TypeOrValueSpecifier', () => {
],
] as const)('matches a package specifier: %s', runTestPositive);
- it.each([
+ it.for([
[{ from: 'package', name: 42, package: 'jquery' }],
[{ from: 'package', name: ['MyType', 42], package: 'jquery' }],
[
@@ -137,6 +144,7 @@ describe('TypeOrValueSpecifier', () => {
code: string,
specifier: TypeOrValueSpecifier,
expected: boolean,
+ expect: TestContext['expect'],
): void {
const rootDir = path.join(__dirname, 'fixtures');
const { ast, services } = parseForESLint(code, {
@@ -159,20 +167,30 @@ describe('TypeOrValueSpecifier', () => {
}
function runTestPositive(
- code: string,
- specifier: TypeOrValueSpecifier,
+ [code, specifier]: readonly [
+ code: string,
+ specifier: TypeOrValueSpecifier,
+ ],
+ testContext: Partial & Pick = {
+ expect,
+ },
): void {
- runTests(code, specifier, true);
+ runTests(code, specifier, true, testContext.expect);
}
function runTestNegative(
- code: string,
- specifier: TypeOrValueSpecifier,
+ [code, specifier]: readonly [
+ code: string,
+ specifier: TypeOrValueSpecifier,
+ ],
+ testContext: Partial & Pick = {
+ expect,
+ },
): void {
- runTests(code, specifier, false);
+ runTests(code, specifier, false, testContext.expect);
}
- it.each([
+ it.for([
['interface Foo {prop: string}; type Test = Foo;', 'Foo'],
['type Test = RegExp;', 'RegExp'],
] as const satisfies [string, TypeOrValueSpecifier][])(
@@ -180,7 +198,7 @@ describe('TypeOrValueSpecifier', () => {
runTestPositive,
);
- it.each([
+ it.for([
['interface Foo {prop: string}; type Test = Foo;', 'Bar'],
['interface Foo {prop: string}; type Test = Foo;', 'RegExp'],
['type Test = RegExp;', 'Foo'],
@@ -190,7 +208,7 @@ describe('TypeOrValueSpecifier', () => {
runTestNegative,
);
- it.each([
+ it.for([
[
'interface Foo {prop: string}; type Test = Foo;',
{ from: 'file', name: 'Foo' },
@@ -264,7 +282,7 @@ describe('TypeOrValueSpecifier', () => {
runTestPositive,
);
- it.each([
+ it.for([
[
'interface Foo {prop: string}; type Test = Foo;',
{ from: 'file', name: 'Bar' },
@@ -290,7 +308,7 @@ describe('TypeOrValueSpecifier', () => {
runTestNegative,
);
- it.each([
+ it.for([
['type Test = RegExp;', { from: 'lib', name: 'RegExp' }],
['type Test = RegExp;', { from: 'lib', name: ['RegExp', 'BigInt'] }],
] as const satisfies [string, TypeOrValueSpecifier][])(
@@ -298,7 +316,7 @@ describe('TypeOrValueSpecifier', () => {
runTestPositive,
);
- it.each([
+ it.for([
['type Test = RegExp;', { from: 'lib', name: 'BigInt' }],
['type Test = RegExp;', { from: 'lib', name: ['BigInt', 'Date'] }],
] as const satisfies [string, TypeOrValueSpecifier][])(
@@ -306,7 +324,7 @@ describe('TypeOrValueSpecifier', () => {
runTestNegative,
);
- it.each([
+ it.for([
['type Test = string;', { from: 'lib', name: 'string' }],
['type Test = string;', { from: 'lib', name: ['string', 'number'] }],
] as const satisfies [string, TypeOrValueSpecifier][])(
@@ -314,7 +332,7 @@ describe('TypeOrValueSpecifier', () => {
runTestPositive,
);
- it.each([
+ it.for([
['type Test = string;', { from: 'lib', name: 'number' }],
['type Test = string;', { from: 'lib', name: ['number', 'boolean'] }],
] as const satisfies [string, TypeOrValueSpecifier][])(
@@ -322,7 +340,7 @@ describe('TypeOrValueSpecifier', () => {
runTestNegative,
);
- it.each([
+ it.for([
[
'import type {Node} from "typescript"; type Test = Node;',
{ from: 'package', name: 'Node', package: 'typescript' },
@@ -407,7 +425,7 @@ describe('TypeOrValueSpecifier', () => {
runTestPositive,
);
- it.each([
+ it.for([
[
`
type Other = { __otherBrand: true };
@@ -430,7 +448,7 @@ describe('TypeOrValueSpecifier', () => {
runTestNegative,
);
- it.each([
+ it.for([
[
`
type SafePromise = Promise & { __safeBrand: string };
@@ -444,7 +462,7 @@ describe('TypeOrValueSpecifier', () => {
runTestPositive,
);
- it.each([
+ it.for([
[
`
declare module "node:test" {
@@ -469,7 +487,7 @@ describe('TypeOrValueSpecifier', () => {
runTestPositive,
);
- it.each([
+ it.for([
[
`
declare module "node:test" {
@@ -495,7 +513,7 @@ describe('TypeOrValueSpecifier', () => {
);
it("does not match a `declare global` with the 'global' package name", () => {
- runTestNegative(
+ runTestNegative([
`
declare global {
export type URL = {};
@@ -508,10 +526,10 @@ describe('TypeOrValueSpecifier', () => {
name: 'URL',
package: 'global',
},
- );
+ ]);
});
- it.each([
+ it.for([
[
'import type {Node} from "typescript"; type Test = Node;',
{ from: 'package', name: 'Symbol', package: 'typescript' },
@@ -541,7 +559,7 @@ describe('TypeOrValueSpecifier', () => {
runTestNegative,
);
- it.each([
+ it.for([
[
'interface Foo {prop: string}; type Test = Foo;',
{ from: 'lib', name: 'Foo' },
@@ -604,7 +622,7 @@ describe('TypeOrValueSpecifier', () => {
runTestNegative,
);
- it.each([
+ it.for([
['type Test = Foo;', { from: 'lib', name: 'Foo' }],
['type Test = Foo;', { from: 'lib', name: ['Foo', 'number'] }],
] as const satisfies [string, TypeOrValueSpecifier][])(
diff --git a/packages/type-utils/tests/containsAllTypesByName.test.ts b/packages/type-utils/tests/containsAllTypesByName.test.ts
index a3851417eeb7..351e5fb84c91 100644
--- a/packages/type-utils/tests/containsAllTypesByName.test.ts
+++ b/packages/type-utils/tests/containsAllTypesByName.test.ts
@@ -1,5 +1,6 @@
import type { TSESTree } from '@typescript-eslint/typescript-estree';
import type * as ts from 'typescript';
+import type { TestContext } from 'vitest';
import { parseForESLint } from '@typescript-eslint/parser';
import path from 'node:path';
@@ -27,6 +28,7 @@ describe(containsAllTypesByName, () => {
code: string,
allowAny: boolean,
expected: boolean,
+ { expect }: TestContext,
): void {
const type = getType(code);
const result = containsAllTypesByName(type, allowAny, new Set());
@@ -34,11 +36,14 @@ describe(containsAllTypesByName, () => {
}
describe('is true', () => {
- function runTest(code: string, expected: boolean): void {
- runTestForAliasDeclaration(code, true, expected);
+ function runTest(
+ [code, expected]: readonly [code: string, expected: boolean],
+ testContext: TestContext,
+ ): void {
+ runTestForAliasDeclaration(code, true, expected, testContext);
}
- it.each([
+ it.for([
['type Test = unknown;', false],
['type Test = any;', false],
['type Test = string;', false],
@@ -46,11 +51,14 @@ describe(containsAllTypesByName, () => {
});
describe('is false', () => {
- function runTest(code: string, expected: boolean): void {
- runTestForAliasDeclaration(code, false, expected);
+ function runTest(
+ [code, expected]: readonly [code: string, expected: boolean],
+ testContext: TestContext,
+ ): void {
+ runTestForAliasDeclaration(code, false, expected, testContext);
}
- it.each([
+ it.for([
['type Test = unknown;', true],
['type Test = any;', true],
['type Test = string;', false],
@@ -63,6 +71,7 @@ describe(containsAllTypesByName, () => {
code: string,
matchAnyInstead: boolean,
expected: boolean,
+ { expect }: TestContext,
): void {
const type = getType(code);
const result = containsAllTypesByName(
@@ -75,11 +84,14 @@ describe(containsAllTypesByName, () => {
}
describe('is true', () => {
- function runTest(code: string, expected: boolean): void {
- runTestForAliasDeclaration(code, true, expected);
+ function runTest(
+ [code, expected]: readonly [code: string, expected: boolean],
+ testContext: TestContext,
+ ): void {
+ runTestForAliasDeclaration(code, true, expected, testContext);
}
- it.each([
+ it.for([
[`type Test = Promise & string`, true],
['type Test = Promise | string', true],
['type Test = Promise | Object', true],
@@ -87,11 +99,14 @@ describe(containsAllTypesByName, () => {
});
describe('is false', () => {
- function runTest(code: string, expected: boolean): void {
- runTestForAliasDeclaration(code, false, expected);
+ function runTest(
+ [code, expected]: readonly [code: string, expected: boolean],
+ testContext: TestContext,
+ ): void {
+ runTestForAliasDeclaration(code, false, expected, testContext);
}
- it.each([
+ it.for([
['type Test = Promise & string', false],
['type Test = Promise | string', false],
['type Test = Promise | Object', true],
diff --git a/packages/type-utils/tests/discriminateAnyType.test.ts b/packages/type-utils/tests/discriminateAnyType.test.ts
index bcadb32b7f81..6b933322086e 100644
--- a/packages/type-utils/tests/discriminateAnyType.test.ts
+++ b/packages/type-utils/tests/discriminateAnyType.test.ts
@@ -1,4 +1,5 @@
import type { TSESTree } from '@typescript-eslint/typescript-estree';
+import type { TestContext } from 'vitest';
import { parseForESLint } from '@typescript-eslint/parser';
import path from 'node:path';
@@ -36,9 +37,12 @@ describe(discriminateAnyType, () => {
}
function runTest(
- code: string,
- expected: AnyType,
- getNode: GetNode = getDeclarationId,
+ [code, expected, getNode = getDeclarationId]: readonly [
+ code: string,
+ expected: AnyType,
+ getNode?: GetNode,
+ ],
+ { expect }: TestContext,
): void {
const { checker, program, tsNode, type } = getTypes(code, getNode);
const result = discriminateAnyType(type, checker, program, tsNode);
@@ -46,13 +50,13 @@ describe(discriminateAnyType, () => {
}
describe('returns Safe', () => {
- it.each([
+ it.for([
['const foo = "foo";', AnyType.Safe],
['const foo = 1;', AnyType.Safe],
['const foo = [1, 2];', AnyType.Safe],
- ])('when code is %s, returns %s', runTest);
+ ] as const)('when code is %s, returns %s', runTest);
- it('should returns Safe for a recursive thenable.', () => {
+ it('should returns Safe for a recursive thenable.', testContext => {
const code = `
class Foo {
foo() {
@@ -63,39 +67,46 @@ class Foo {
}
};
`;
- runTest(code, AnyType.Safe, ast => {
- const classDeclration = ast.body[0] as TSESTree.ClassDeclaration;
- const method = classDeclration.body
- .body[0] as TSESTree.MethodDefinition;
- const returnStatement = method.value.body?.body.at(
- -1,
- ) as TSESTree.ReturnStatement;
- return returnStatement.argument!;
- });
+ runTest(
+ [
+ code,
+ AnyType.Safe,
+ ast => {
+ const classDeclration = ast.body[0] as TSESTree.ClassDeclaration;
+ const method = classDeclration.body
+ .body[0] as TSESTree.MethodDefinition;
+ const returnStatement = method.value.body?.body.at(
+ -1,
+ ) as TSESTree.ReturnStatement;
+ return returnStatement.argument!;
+ },
+ ],
+ testContext,
+ );
});
});
describe('returns Any', () => {
- it.each([
+ it.for([
['const foo = 1 as any;', AnyType.Any],
['let foo;', AnyType.Any],
- ])('when code is %s, returns %s', runTest);
+ ] as const)('when code is %s, returns %s', runTest);
});
describe('returns PromiseAny', () => {
- it.each([
+ it.for([
['const foo = Promise.resolve({} as any);', AnyType.PromiseAny],
[
'const foo = Promise.resolve(Promise.resolve({} as any));',
AnyType.PromiseAny,
],
- ])('when code is %s, returns %s', runTest);
+ ] as const)('when code is %s, returns %s', runTest);
});
describe('returns AnyArray', () => {
- it.each([
+ it.for([
['const foo = [{} as any];', AnyType.AnyArray],
['const foo = [{} as any, 2];', AnyType.AnyArray],
- ])('when code is %s, returns %s', runTest);
+ ] as const)('when code is %s, returns %s', runTest);
});
});
diff --git a/packages/type-utils/tests/getTypeName.test.ts b/packages/type-utils/tests/getTypeName.test.ts
index fc6ca5efc8fb..92aa0140204b 100644
--- a/packages/type-utils/tests/getTypeName.test.ts
+++ b/packages/type-utils/tests/getTypeName.test.ts
@@ -1,5 +1,6 @@
import type { TSESTree } from '@typescript-eslint/typescript-estree';
import type * as ts from 'typescript';
+import type { TestContext } from 'vitest';
import { parseForESLint } from '@typescript-eslint/parser';
import path from 'node:path';
@@ -24,14 +25,17 @@ describe(getTypeName, () => {
return { checker, type: services.getTypeAtLocation(declaration.id) };
}
- function runTest(code: string, expected: string): void {
+ function runTest(
+ [code, expected]: readonly [code: string, expected: string],
+ { expect }: TestContext,
+ ): void {
const { checker, type } = getTypes(code);
const result = getTypeName(checker, type);
expect(result).toBe(expected);
}
describe('returns primitive type', () => {
- it.each([
+ it.for([
['type Test = string;', 'string'],
['type Test = "text";', 'string'],
['type Test = string | "text";', 'string'],
@@ -49,7 +53,7 @@ describe(getTypeName, () => {
});
describe('returns non-primitive type', () => {
- it.each([
+ it.for([
['type Test = 123;', '123'],
['type Test = true;', 'true'],
['type Test = false;', 'false'],
diff --git a/packages/type-utils/tests/isSymbolFromDefaultLibrary.test.ts b/packages/type-utils/tests/isSymbolFromDefaultLibrary.test.ts
index 3e1581b58bd4..eb4ecbf55b83 100644
--- a/packages/type-utils/tests/isSymbolFromDefaultLibrary.test.ts
+++ b/packages/type-utils/tests/isSymbolFromDefaultLibrary.test.ts
@@ -1,5 +1,6 @@
import type { TSESTree } from '@typescript-eslint/typescript-estree';
import type * as ts from 'typescript';
+import type { TestContext } from 'vitest';
import { parseForESLint } from '@typescript-eslint/parser';
import path from 'node:path';
@@ -26,18 +27,25 @@ describe(isSymbolFromDefaultLibrary, () => {
return { program: services.program, symbol: type.getSymbol() };
}
- function runTestForAliasDeclaration(code: string, expected: boolean): void {
+ function runTestForAliasDeclaration(
+ code: string,
+ expected: boolean,
+ expect: TestContext['expect'],
+ ): void {
const { program, symbol } = getTypes(code);
const result = isSymbolFromDefaultLibrary(program, symbol);
expect(result).toBe(expected);
}
describe('is symbol from default library', () => {
- function runTest(code: string): void {
- runTestForAliasDeclaration(code, true);
+ function runTest(
+ [code]: readonly [code: string],
+ { expect }: TestContext,
+ ): void {
+ runTestForAliasDeclaration(code, true, expect);
}
- it.each([
+ it.for([
['type Test = Array;'],
['type Test = Map;'],
['type Test = Promise'],
@@ -47,11 +55,14 @@ describe(isSymbolFromDefaultLibrary, () => {
});
describe('is not symbol from default library', () => {
- function runTest(code: string): void {
- runTestForAliasDeclaration(code, false);
+ function runTest(
+ [code]: readonly [code: string],
+ { expect }: TestContext,
+ ): void {
+ runTestForAliasDeclaration(code, false, expect);
}
- it.each([
+ it.for([
['const test: Array = [1,2,3];'],
['type Test = number;'],
['interface Test { bar: string; };'],
diff --git a/packages/type-utils/tests/typeFlagUtils.test.ts b/packages/type-utils/tests/typeFlagUtils.test.ts
index 03f1526343aa..c5d6fcc4f552 100644
--- a/packages/type-utils/tests/typeFlagUtils.test.ts
+++ b/packages/type-utils/tests/typeFlagUtils.test.ts
@@ -1,4 +1,5 @@
import type { TSESTree } from '@typescript-eslint/typescript-estree';
+import type { TestContext } from 'vitest';
import { parseForESLint } from '@typescript-eslint/parser';
import path from 'node:path';
@@ -25,15 +26,15 @@ describe('typeFlagUtils', () => {
describe(getTypeFlags, () => {
function runTestForAliasDeclaration(
- code: string,
- expected: ts.TypeFlags,
+ [code, expected]: readonly [code: string, expected: ts.TypeFlags],
+ { expect }: TestContext,
): void {
const type = getType(code);
const result = getTypeFlags(type);
expect(result).toBe(expected);
}
- it.each([
+ it.for([
['type Test = any;', 1],
['type Test = unknown;', 2],
['type Test = string;', 4],
@@ -56,6 +57,7 @@ describe('typeFlagUtils', () => {
code: string,
flagsToCheck: ts.TypeFlags,
expected: boolean,
+ { expect }: TestContext,
): void {
const type = getType(code);
const result = isTypeFlagSet(type, flagsToCheck);
@@ -64,13 +66,16 @@ describe('typeFlagUtils', () => {
describe('is type flags set', () => {
function runTestIsTypeFlagSet(
- code: string,
- flagsToCheck: ts.TypeFlags,
+ [code, flagsToCheck]: readonly [
+ code: string,
+ flagsToCheck: ts.TypeFlags,
+ ],
+ testContext: TestContext,
): void {
- runTestForAliasDeclaration(code, flagsToCheck, true);
+ runTestForAliasDeclaration(code, flagsToCheck, true, testContext);
}
- it.each([
+ it.for([
['type Test = any;', ts.TypeFlags.Any],
['type Test = string;', ts.TypeFlags.String],
['type Test = string | number;', ts.TypeFlags.String],
@@ -83,13 +88,16 @@ describe('typeFlagUtils', () => {
describe('is not type flags set', () => {
function runTestIsNotTypeFlagSet(
- code: string,
- flagsToCheck: ts.TypeFlags,
+ [code, flagsToCheck]: readonly [
+ code: string,
+ flagsToCheck: ts.TypeFlags,
+ ],
+ testContext: TestContext,
): void {
- runTestForAliasDeclaration(code, flagsToCheck, false);
+ runTestForAliasDeclaration(code, flagsToCheck, false, testContext);
}
- it.each([
+ it.for([
['type Test = string', ts.TypeFlags.Any],
['type Test = string | number;', ts.TypeFlags.Any],
['type Test = string & { foo: string }', ts.TypeFlags.String],
From 7d7d5b22a102b1b720a3c652036b01686251461f Mon Sep 17 00:00:00 2001
From: Arya Emami
Date: Sat, 12 Apr 2025 02:47:11 -0500
Subject: [PATCH 33/33] 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/10767.patch
Alternative Proxies:
Alternative Proxy
pFad Proxy
pFad v3 Proxy
pFad v4 Proxy