From b426bbdaac62311d94d855ae63e05b50cc453409 Mon Sep 17 00:00:00 2001 From: Dulmandakh Date: Wed, 25 Feb 2026 21:35:34 +0800 Subject: [PATCH 1/3] chore: bump vitest to 4.0 (#29227) ## Summary by CodeRabbit * **Chores** * Upgraded development test tooling to v4.0.18 in several test packages. * Removed the test framework declaration from multiple package dev configs to consolidate dev tooling. * Added per-package test configurations to exclude build artifacts (dist) from test runs. * Adjusted internal test mocks; no changes to runtime behavior or public APIs. --------- Co-authored-by: jacek-prisma --- package.json | 4 +- packages/client-generator-js/package.json | 3 +- .../client-generator-registry/package.json | 3 - packages/client-generator-ts/package.json | 3 +- .../__snapshots__/generator.test.ts.snap | 41 - .../tests/e2e/browser-bundle/package.json | 2 +- .../package.json | 2 +- .../e2e/prisma-version-json/package.json | 2 +- .../prisma-config/package.json | 2 +- packages/config/package.json | 3 +- packages/credentials-store/package.json | 3 +- packages/dmmf/package.json | 3 - packages/engines/package.json | 3 +- packages/generator/package.json | 3 +- packages/get-platform/package.json | 3 +- packages/query-plan-executor/package.json | 1 - .../src/logic/adapter.test.ts | 2 +- pnpm-lock.yaml | 723 +++++------------- vitest.config.ts | 7 + 19 files changed, 216 insertions(+), 597 deletions(-) delete mode 100644 packages/client-generator-ts/tests/__snapshots__/generator.test.ts.snap create mode 100644 vitest.config.ts diff --git a/package.json b/package.json index dc126109f55e..42c5398f8e9c 100644 --- a/package.json +++ b/package.json @@ -52,7 +52,7 @@ "@typescript-eslint/eslint-plugin": "7.15.0", "@typescript-eslint/parser": "7.15.0", "@typescript-eslint/utils": "7.15.0", - "@vitest/coverage-v8": "3.2.4", + "@vitest/coverage-v8": "4.0.18", "arg": "5.0.2", "batching-toposort": "1.2.0", "buffer": "6.0.3", @@ -97,7 +97,7 @@ "tsx": "4.19.3", "turbo": "2.5.6", "typescript": "5.4.5", - "vitest": "3.2.4", + "vitest": "4.0.18", "wrangler": "3.114.15", "zx": "8.4.1" }, diff --git a/packages/client-generator-js/package.json b/packages/client-generator-js/package.json index cfbfb23cbc2e..ab2b05eec8eb 100644 --- a/packages/client-generator-js/package.json +++ b/packages/client-generator-js/package.json @@ -43,8 +43,7 @@ "ts-pattern": "5.6.2" }, "devDependencies": { - "@types/pluralize": "0.0.33", - "vitest": "3.2.4" + "@types/pluralize": "0.0.33" }, "scripts": { "dev": "DEV=true tsx helpers/build.ts", diff --git a/packages/client-generator-registry/package.json b/packages/client-generator-registry/package.json index aebe99245d93..90bde08caf55 100644 --- a/packages/client-generator-registry/package.json +++ b/packages/client-generator-registry/package.json @@ -29,9 +29,6 @@ "@prisma/generator": "workspace:*", "@prisma/internals": "workspace:*" }, - "devDependencies": { - "vitest": "3.2.4" - }, "scripts": { "dev": "DEV=true tsx helpers/build.ts", "build": "tsx helpers/build.ts", diff --git a/packages/client-generator-ts/package.json b/packages/client-generator-ts/package.json index 8efd644362f4..8bba740e8bb1 100644 --- a/packages/client-generator-ts/package.json +++ b/packages/client-generator-ts/package.json @@ -44,8 +44,7 @@ "ts-pattern": "5.6.2" }, "devDependencies": { - "@types/pluralize": "0.0.33", - "vitest": "3.2.4" + "@types/pluralize": "0.0.33" }, "scripts": { "dev": "DEV=true tsx helpers/build.ts", diff --git a/packages/client-generator-ts/tests/__snapshots__/generator.test.ts.snap b/packages/client-generator-ts/tests/__snapshots__/generator.test.ts.snap deleted file mode 100644 index a1227d67e4c5..000000000000 --- a/packages/client-generator-ts/tests/__snapshots__/generator.test.ts.snap +++ /dev/null @@ -1,41 +0,0 @@ -// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html - -exports[`generator > enum generation 1`] = ` -" -/* !!! This is code generated by Prisma. Do not edit directly. !!! */ -/* eslint-disable */ -// biome-ignore-all lint: generated file -// @ts-nocheck -/* -* This file exports all enum related types from the schema. -* -* 🟢 You can import this file directly. -*/ - -export const UserRole = { - ADMIN: 'ADMIN', - USER: 'USER', - GUEST: 'GUEST' -} as const - -export type UserRole = (typeof UserRole)[keyof typeof UserRole] - - -export const UserRoleMapped = { - ADMIN: 'UserRole/ADMIN', - USER: 'UserRole/USER', - GUEST: 'GUEST' -} as const - -export type UserRoleMapped = (typeof UserRoleMapped)[keyof typeof UserRoleMapped] - - -export const Status = { - ACTIVE: 'ACTIVE', - INACTIVE: 'INACTIVE', - PENDING: 'PENDING' -} as const - -export type Status = (typeof Status)[keyof typeof Status] -" -`; diff --git a/packages/client/tests/e2e/browser-bundle/package.json b/packages/client/tests/e2e/browser-bundle/package.json index 95533f6b8854..4ed2f0f7d54e 100644 --- a/packages/client/tests/e2e/browser-bundle/package.json +++ b/packages/client/tests/e2e/browser-bundle/package.json @@ -10,6 +10,6 @@ "devDependencies": { "@types/node": "~20.19.0", "prisma": "/tmp/prisma-0.0.0.tgz", - "vitest": "3.2.4" + "vitest": "4.0.18" } } diff --git a/packages/client/tests/e2e/issues/16418-slow-compilation-big-schema/package.json b/packages/client/tests/e2e/issues/16418-slow-compilation-big-schema/package.json index e37ad946e1fc..d7d792e7e8cd 100644 --- a/packages/client/tests/e2e/issues/16418-slow-compilation-big-schema/package.json +++ b/packages/client/tests/e2e/issues/16418-slow-compilation-big-schema/package.json @@ -11,6 +11,6 @@ "@types/jest": "29.5.12", "@types/node": "~20.19.0", "prisma": "/tmp/prisma-0.0.0.tgz", - "vitest": "3.2.4" + "vitest": "4.0.18" } } diff --git a/packages/client/tests/e2e/prisma-version-json/package.json b/packages/client/tests/e2e/prisma-version-json/package.json index 69b0ae73d60e..4e8ad783b7bc 100644 --- a/packages/client/tests/e2e/prisma-version-json/package.json +++ b/packages/client/tests/e2e/prisma-version-json/package.json @@ -11,6 +11,6 @@ "@types/node": "~20.19.0", "prisma": "/tmp/prisma-0.0.0.tgz", "typescript": "5.9.3", - "vitest": "3.2.4" + "vitest": "4.0.18" } } diff --git a/packages/client/tests/e2e/structured-output/prisma-config/package.json b/packages/client/tests/e2e/structured-output/prisma-config/package.json index e3c9cb3df5f6..7f121f6bde8f 100644 --- a/packages/client/tests/e2e/structured-output/prisma-config/package.json +++ b/packages/client/tests/e2e/structured-output/prisma-config/package.json @@ -10,6 +10,6 @@ "devDependencies": { "@types/node": "~20.19.0", "prisma": "/tmp/prisma-0.0.0.tgz", - "vitest": "3.2.4" + "vitest": "4.0.18" } } diff --git a/packages/config/package.json b/packages/config/package.json index 0b4468ba1997..6d5926408ae8 100644 --- a/packages/config/package.json +++ b/packages/config/package.json @@ -20,8 +20,7 @@ "devDependencies": { "@prisma/debug": "workspace:*", "@prisma/get-platform": "workspace:*", - "dotenv": "17.2.3", - "vitest": "3.2.4" + "dotenv": "17.2.3" }, "scripts": { "dev": "DEV=true tsx helpers/build.ts", diff --git a/packages/credentials-store/package.json b/packages/credentials-store/package.json index 74a41a79a54c..cf1d4d4d052f 100644 --- a/packages/credentials-store/package.json +++ b/packages/credentials-store/package.json @@ -27,8 +27,7 @@ "xdg-app-paths": "8.3.0" }, "devDependencies": { - "tempy": "1.0.1", - "vitest": "3.2.4" + "tempy": "1.0.1" }, "scripts": { "dev": "DEV=true tsx helpers/build.ts", diff --git a/packages/dmmf/package.json b/packages/dmmf/package.json index f351867e50e8..b0b255f524d2 100644 --- a/packages/dmmf/package.json +++ b/packages/dmmf/package.json @@ -23,9 +23,6 @@ "directory": "packages/dmmf" }, "license": "Apache-2.0", - "devDependencies": { - "vitest": "3.2.4" - }, "scripts": { "dev": "DEV=true tsx helpers/build.ts", "build": "tsx helpers/build.ts", diff --git a/packages/engines/package.json b/packages/engines/package.json index abba84777d10..fdf1ff58dab6 100644 --- a/packages/engines/package.json +++ b/packages/engines/package.json @@ -17,8 +17,7 @@ "@types/jest": "29.5.14", "@types/node": "~20.19.24", "execa": "5.1.1", - "typescript": "5.4.5", - "vitest": "3.2.4" + "typescript": "5.4.5" }, "dependencies": { "@prisma/debug": "workspace:*", diff --git a/packages/generator/package.json b/packages/generator/package.json index bcabab355415..3cfe19c928a9 100644 --- a/packages/generator/package.json +++ b/packages/generator/package.json @@ -24,8 +24,7 @@ }, "license": "Apache-2.0", "devDependencies": { - "@prisma/dmmf": "workspace:*", - "vitest": "3.2.4" + "@prisma/dmmf": "workspace:*" }, "scripts": { "dev": "DEV=true tsx helpers/build.ts", diff --git a/packages/get-platform/package.json b/packages/get-platform/package.json index c13decec569b..d6844eb1c3d7 100644 --- a/packages/get-platform/package.json +++ b/packages/get-platform/package.json @@ -29,8 +29,7 @@ "tempy": "1.0.1", "terminal-link": "4.0.0", "ts-pattern": "5.6.2", - "typescript": "5.4.5", - "vitest": "3.2.4" + "typescript": "5.4.5" }, "dependencies": { "@prisma/debug": "workspace:*" diff --git a/packages/query-plan-executor/package.json b/packages/query-plan-executor/package.json index 2ad7cd5cd157..a9bf983342df 100644 --- a/packages/query-plan-executor/package.json +++ b/packages/query-plan-executor/package.json @@ -23,7 +23,6 @@ "@prisma/driver-adapter-utils": "workspace:*", "hono": "4.11.7", "temporal-polyfill": "0.3.0", - "vitest": "3.2.4", "zod": "4.1.3" }, "scripts": { diff --git a/packages/query-plan-executor/src/logic/adapter.test.ts b/packages/query-plan-executor/src/logic/adapter.test.ts index 800ffedf6b71..4e92e619cf44 100644 --- a/packages/query-plan-executor/src/logic/adapter.test.ts +++ b/packages/query-plan-executor/src/logic/adapter.test.ts @@ -13,7 +13,7 @@ import { createAdapter } from './adapter' vi.mock('@prisma/adapter-pg', () => { return { - PrismaPg: vi.fn().mockImplementation(() => { + PrismaPg: vi.fn().mockImplementation(function () { return { adapterName: '@prisma/adapter-pg' } }), } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index e511639f2f1c..b8a844acf299 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -73,8 +73,8 @@ importers: specifier: 7.15.0 version: 7.15.0(eslint@9.22.0(jiti@2.4.2))(typescript@5.4.5) '@vitest/coverage-v8': - specifier: 3.2.4 - version: 3.2.4(vitest@3.2.4(@types/debug@4.1.12)(@types/node@20.19.25)(jiti@2.4.2)(terser@5.27.0)(tsx@4.19.3)(yaml@2.7.0)) + specifier: 4.0.18 + version: 4.0.18(vitest@4.0.18(@opentelemetry/api@1.9.0)(@types/node@20.19.25)(jiti@2.4.2)(terser@5.27.0)(tsx@4.19.3)(yaml@2.7.0)) arg: specifier: 5.0.2 version: 5.0.2 @@ -208,8 +208,8 @@ importers: specifier: 5.4.5 version: 5.4.5 vitest: - specifier: 3.2.4 - version: 3.2.4(@types/debug@4.1.12)(@types/node@20.19.25)(jiti@2.4.2)(terser@5.27.0)(tsx@4.19.3)(yaml@2.7.0) + specifier: 4.0.18 + version: 4.0.18(@opentelemetry/api@1.9.0)(@types/node@20.19.25)(jiti@2.4.2)(terser@5.27.0)(tsx@4.19.3)(yaml@2.7.0) wrangler: specifier: 3.114.15 version: 3.114.15(@cloudflare/workers-types@4.20251117.0) @@ -1052,9 +1052,6 @@ importers: '@types/pluralize': specifier: 0.0.33 version: 0.0.33 - vitest: - specifier: 3.2.4 - version: 3.2.4(@types/debug@4.1.12)(@types/node@24.3.0)(jiti@2.4.2)(terser@5.27.0)(tsx@4.19.3)(yaml@2.7.0) packages/client-generator-registry: dependencies: @@ -1070,10 +1067,6 @@ importers: '@prisma/internals': specifier: workspace:* version: link:../internals - devDependencies: - vitest: - specifier: 3.2.4 - version: 3.2.4(@types/debug@4.1.12)(@types/node@24.3.0)(jiti@2.4.2)(terser@5.27.0)(tsx@4.19.3)(yaml@2.7.0) packages/client-generator-ts: dependencies: @@ -1135,9 +1128,6 @@ importers: '@types/pluralize': specifier: 0.0.33 version: 0.0.33 - vitest: - specifier: 3.2.4 - version: 3.2.4(@types/debug@4.1.12)(@types/node@24.3.0)(jiti@2.4.2)(terser@5.27.0)(tsx@4.19.3)(yaml@2.7.0) packages/client-runtime-utils: devDependencies: @@ -1152,7 +1142,7 @@ importers: dependencies: c12: specifier: 3.1.0 - version: 3.1.0(magicast@0.3.5) + version: 3.1.0 deepmerge-ts: specifier: 7.1.5 version: 7.1.5 @@ -1172,9 +1162,6 @@ importers: dotenv: specifier: 17.2.3 version: 17.2.3 - vitest: - specifier: 3.2.4 - version: 3.2.4(@types/debug@4.1.12)(@types/node@24.3.0)(jiti@2.4.2)(terser@5.27.0)(tsx@4.19.3)(yaml@2.7.0) packages/credentials-store: dependencies: @@ -1185,9 +1172,6 @@ importers: tempy: specifier: 1.0.1 version: 1.0.1 - vitest: - specifier: 3.2.4 - version: 3.2.4(@types/debug@4.1.12)(@types/node@24.3.0)(jiti@2.4.2)(terser@5.27.0)(tsx@4.19.3)(yaml@2.7.0) packages/debug: devDependencies: @@ -1210,11 +1194,7 @@ importers: specifier: 5.4.5 version: 5.4.5 - packages/dmmf: - devDependencies: - vitest: - specifier: 3.2.4 - version: 3.2.4(@types/debug@4.1.12)(@types/node@24.3.0)(jiti@2.4.2)(terser@5.27.0)(tsx@4.19.3)(yaml@2.7.0) + packages/dmmf: {} packages/driver-adapter-utils: dependencies: @@ -1255,9 +1235,6 @@ importers: typescript: specifier: 5.4.5 version: 5.4.5 - vitest: - specifier: 3.2.4 - version: 3.2.4(@types/debug@4.1.12)(@types/node@20.19.25)(jiti@2.4.2)(terser@5.27.0)(tsx@4.19.3)(yaml@2.7.0) packages/fetch-engine: dependencies: @@ -1334,9 +1311,6 @@ importers: '@prisma/dmmf': specifier: workspace:* version: link:../dmmf - vitest: - specifier: 3.2.4 - version: 3.2.4(@types/debug@4.1.12)(@types/node@24.3.0)(jiti@2.4.2)(terser@5.27.0)(tsx@4.19.3)(yaml@2.7.0) packages/generator-helper: dependencies: @@ -1423,9 +1397,6 @@ importers: typescript: specifier: 5.4.5 version: 5.4.5 - vitest: - specifier: 3.2.4 - version: 3.2.4(@types/debug@4.1.12)(@types/node@20.19.25)(jiti@2.4.2)(terser@5.27.0)(tsx@4.19.3)(yaml@2.7.0) packages/instrumentation: dependencies: @@ -1868,9 +1839,6 @@ importers: temporal-polyfill: specifier: 0.3.0 version: 0.3.0 - vitest: - specifier: 3.2.4 - version: 3.2.4(@types/debug@4.1.12)(@types/node@24.3.0)(jiti@2.4.2)(terser@5.27.0)(tsx@4.19.3)(yaml@2.7.0) zod: specifier: 4.1.3 version: 4.1.3 @@ -1935,10 +1903,6 @@ packages: resolution: {integrity: sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==} engines: {node: '>=6.0.0'} - '@ampproject/remapping@2.3.0': - resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} - engines: {node: '>=6.0.0'} - '@antfu/ni@0.21.12': resolution: {integrity: sha512-2aDL3WUv8hMJb2L3r/PIQWsTLyq7RQr3v9xD16fiz6O8ys1xEyLhhTOv8gxtZvJiTzjTF5pHoArvRdesGL1DMQ==} hasBin: true @@ -2076,18 +2040,18 @@ packages: resolution: {integrity: sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==} engines: {node: '>=6.9.0'} - '@babel/helper-string-parser@7.21.5': - resolution: {integrity: sha512-5pTUx3hAJaZIdW99sJ6ZUUgWq/Y+Hja7TowEnLNMm1VivRgZQL3vpBY3qUACVsvw+yQU6+YgfBVmcbLaZtrA1w==} - engines: {node: '>=6.9.0'} - - '@babel/helper-string-parser@7.25.9': - resolution: {integrity: sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==} + '@babel/helper-string-parser@7.27.1': + resolution: {integrity: sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==} engines: {node: '>=6.9.0'} '@babel/helper-validator-identifier@7.25.9': resolution: {integrity: sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==} engines: {node: '>=6.9.0'} + '@babel/helper-validator-identifier@7.28.5': + resolution: {integrity: sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==} + engines: {node: '>=6.9.0'} + '@babel/helper-validator-option@7.21.0': resolution: {integrity: sha512-rmL/B8/f0mKS2baE9ZpyTcTavvEuWhTTW8amjzXNvYG4AwBsqTLikfXsEofsJEfKHf+HQVQbFOHy6o+4cnC/fQ==} engines: {node: '>=6.9.0'} @@ -2100,13 +2064,8 @@ packages: resolution: {integrity: sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==} engines: {node: '>=6.9.0'} - '@babel/parser@7.21.8': - resolution: {integrity: sha512-6zavDGdzG3gUqAdWvlLFfk+36RilI+Pwyuuh7HItyeScCWP3k6i8vKclAQ0bM/0y/Kz/xiwvxhMv9MgTJP5gmA==} - engines: {node: '>=6.0.0'} - hasBin: true - - '@babel/parser@7.26.5': - resolution: {integrity: sha512-SRJ4jYmXRqV1/Xc+TIVG84WjHBXKlxO9sHQnA2Pf12QQEAp1LOh6kDzNHXcUnbH1QI0FDoPPVOt+vyUDucxpaw==} + '@babel/parser@7.29.0': + resolution: {integrity: sha512-IyDgFV5GeDUVX4YdF/3CPULtVGSXXMLh1xVIgdCgxApktqnQV0r7/8Nqthg+8YLGaAtdyIlo2qIdZrbCv4+7ww==} engines: {node: '>=6.0.0'} hasBin: true @@ -2195,12 +2154,8 @@ packages: resolution: {integrity: sha512-rkOSPOw+AXbgtwUga3U4u8RpoK9FEFWBNAlTpcnkLFjL5CT+oyHNuUUC/xx6XefEJ16r38r8Bc/lfp6rYuHeJQ==} engines: {node: '>=6.9.0'} - '@babel/types@7.21.5': - resolution: {integrity: sha512-m4AfNvVF2mVC/F7fDEdH2El3HzUg9It/XsCxZiOTTA3m3qYfcSVSbTfM6Q9xG+hYDniZssYhlXKKUMD5m8tF4Q==} - engines: {node: '>=6.9.0'} - - '@babel/types@7.26.5': - resolution: {integrity: sha512-L6mZmwFDK6Cjh1nRCLXpa6no13ZIioJDz7mdkzHv399pThrTa/k0nUlNaenOeh2kWu/iaOQYElEpKPUswUa9Vg==} + '@babel/types@7.29.0': + resolution: {integrity: sha512-LwdZHpScM4Qz8Xw2iKSzS+cfglZzJGvofQICy7W7v4caru4EaAmyUuO6BGrbyQ2mYV11W0U8j5mBhd14dd3B0A==} engines: {node: '>=6.9.0'} '@bcoe/v8-coverage@0.2.3': @@ -3148,10 +3103,6 @@ packages: resolution: {integrity: sha512-ZT55BDLV0yv0RBm2czMiZ+SqCGO7AvmOM3G/w2xhVPH+te0aKgFjmBvGlL1dH+ql2tgGO3MVrbb3jCKyvpgnxA==} engines: {node: 20 || >=22} - '@isaacs/cliui@8.0.2': - resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} - engines: {node: '>=12'} - '@istanbuljs/load-nyc-config@1.1.0': resolution: {integrity: sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==} engines: {node: '>=8'} @@ -3264,12 +3215,18 @@ packages: '@jridgewell/sourcemap-codec@1.5.0': resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==} + '@jridgewell/sourcemap-codec@1.5.5': + resolution: {integrity: sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==} + '@jridgewell/trace-mapping@0.3.22': resolution: {integrity: sha512-Wf963MzWtA2sjrNt+g18IAln9lKnlRp+K2eH4jjIoF1wYeq3aMREpG09xhlhdzS0EjwU7qmUJYangWa+151vZw==} '@jridgewell/trace-mapping@0.3.30': resolution: {integrity: sha512-GQ7Nw5G2lTu/BtHTKfXhKHok2WGetd4XYcVKGx00SjAk8GMwgJM3zr6zORiPGuOE+/vkc90KtTosSSvaCjKb2Q==} + '@jridgewell/trace-mapping@0.3.31': + resolution: {integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==} + '@jridgewell/trace-mapping@0.3.9': resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} @@ -3620,10 +3577,6 @@ packages: '@paralleldrive/cuid2@2.2.2': resolution: {integrity: sha512-ZOBkgDwEdoYVlSeRbYYXs0S9MejQofiVYoTbKzy/6GQa39/q5tQU2IX46+shYnUkpEl3wc+J6wRlar7r2EK2xA==} - '@pkgjs/parseargs@0.11.0': - resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} - engines: {node: '>=14'} - '@pkgr/core@0.2.9': resolution: {integrity: sha512-QNqXyfVS2wm9hweSYD2O7F0G06uurj9kZ96TRQE5Y9hU7+tgdZwIkbAKc5Ocy1HxEY2kuDQa6cQ1WRs/O5LFKA==} engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} @@ -4233,43 +4186,43 @@ packages: peerDependencies: typescript: '*' - '@vitest/coverage-v8@3.2.4': - resolution: {integrity: sha512-EyF9SXU6kS5Ku/U82E259WSnvg6c8KTjppUncuNdm5QHpe17mwREHnjDzozC8x9MZ0xfBUFSaLkRv4TMA75ALQ==} + '@vitest/coverage-v8@4.0.18': + resolution: {integrity: sha512-7i+N2i0+ME+2JFZhfuz7Tg/FqKtilHjGyGvoHYQ6iLV0zahbsJ9sljC9OcFcPDbhYKCet+sG8SsVqlyGvPflZg==} peerDependencies: - '@vitest/browser': 3.2.4 - vitest: 3.2.4 + '@vitest/browser': 4.0.18 + vitest: 4.0.18 peerDependenciesMeta: '@vitest/browser': optional: true - '@vitest/expect@3.2.4': - resolution: {integrity: sha512-Io0yyORnB6sikFlt8QW5K7slY4OjqNX9jmJQ02QDda8lyM6B5oNgVWoSoKPac8/kgnCUzuHQKrSLtu/uOqqrig==} + '@vitest/expect@4.0.18': + resolution: {integrity: sha512-8sCWUyckXXYvx4opfzVY03EOiYVxyNrHS5QxX3DAIi5dpJAAkyJezHCP77VMX4HKA2LDT/Jpfo8i2r5BE3GnQQ==} - '@vitest/mocker@3.2.4': - resolution: {integrity: sha512-46ryTE9RZO/rfDd7pEqFl7etuyzekzEhUbTW3BvmeO/BcCMEgq59BKhek3dXDWgAj4oMK6OZi+vRr1wPW6qjEQ==} + '@vitest/mocker@4.0.18': + resolution: {integrity: sha512-HhVd0MDnzzsgevnOWCBj5Otnzobjy5wLBe4EdeeFGv8luMsGcYqDuFRMcttKWZA5vVO8RFjexVovXvAM4JoJDQ==} peerDependencies: msw: ^2.4.9 - vite: ^5.0.0 || ^6.0.0 || ^7.0.0-0 + vite: ^6.0.0 || ^7.0.0-0 peerDependenciesMeta: msw: optional: true vite: optional: true - '@vitest/pretty-format@3.2.4': - resolution: {integrity: sha512-IVNZik8IVRJRTr9fxlitMKeJeXFFFN0JaB9PHPGQ8NKQbGpfjlTx9zO4RefN8gp7eqjNy8nyK3NZmBzOPeIxtA==} + '@vitest/pretty-format@4.0.18': + resolution: {integrity: sha512-P24GK3GulZWC5tz87ux0m8OADrQIUVDPIjjj65vBXYG17ZeU3qD7r+MNZ1RNv4l8CGU2vtTRqixrOi9fYk/yKw==} - '@vitest/runner@3.2.4': - resolution: {integrity: sha512-oukfKT9Mk41LreEW09vt45f8wx7DordoWUZMYdY/cyAk7w5TWkTRCNZYF7sX7n2wB7jyGAl74OxgwhPgKaqDMQ==} + '@vitest/runner@4.0.18': + resolution: {integrity: sha512-rpk9y12PGa22Jg6g5M3UVVnTS7+zycIGk9ZNGN+m6tZHKQb7jrP7/77WfZy13Y/EUDd52NDsLRQhYKtv7XfPQw==} - '@vitest/snapshot@3.2.4': - resolution: {integrity: sha512-dEYtS7qQP2CjU27QBC5oUOxLE/v5eLkGqPE0ZKEIDGMs4vKWe7IjgLOeauHsR0D5YuuycGRO5oSRXnwnmA78fQ==} + '@vitest/snapshot@4.0.18': + resolution: {integrity: sha512-PCiV0rcl7jKQjbgYqjtakly6T1uwv/5BQ9SwBLekVg/EaYeQFPiXcgrC2Y7vDMA8dM1SUEAEV82kgSQIlXNMvA==} - '@vitest/spy@3.2.4': - resolution: {integrity: sha512-vAfasCOe6AIK70iP5UD11Ac4siNUNJ9i/9PZ3NKx07sG6sUxeag1LWdNrMWeKKYBLlzuK+Gn65Yd5nyL6ds+nw==} + '@vitest/spy@4.0.18': + resolution: {integrity: sha512-cbQt3PTSD7P2OARdVW3qWER5EGq7PHlvE+QfzSC0lbwO+xnt7+XH06ZzFjFRgzUX//JmpxrCu92VdwvEPlWSNw==} - '@vitest/utils@3.2.4': - resolution: {integrity: sha512-fB2V0JFrQSMsCo9HiSq3Ezpdv4iYaXRG1Sx8edX3MwxfyNn83mKiGzOcH+Fkxt4MHxr3y42fQi1oeAInqgX2QA==} + '@vitest/utils@4.0.18': + resolution: {integrity: sha512-msMRKLMVLWygpK3u2Hybgi4MNjcYJvwTb0Ru09+fOyCXIgT5raYP041DRRdiJiI3k/2U6SEbAETB3YtBrUkCFA==} '@webassemblyjs/ast@1.12.1': resolution: {integrity: sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==} @@ -4485,12 +4438,8 @@ packages: resolution: {integrity: sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==} engines: {node: '>=0.8'} - assertion-error@2.0.1: - resolution: {integrity: sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==} - engines: {node: '>=12'} - - ast-v8-to-istanbul@0.3.5: - resolution: {integrity: sha512-9SdXjNheSiE8bALAQCQQuT6fgQaoxJh7IRYrRGZ8/9nv8WhJeC1aXAwN8TbaOssGOukUvyvnkgD9+Yuykvl1aA==} + ast-v8-to-istanbul@0.3.11: + resolution: {integrity: sha512-Qya9fkoofMjCBNVdWINMjB5KZvkYfaO9/anwkWnjxibpWUxo5iHl2sOdP7/uAqaRuUYuoo8rDwnbaaKVFxoUvw==} async-listen@3.1.0: resolution: {integrity: sha512-TkOhqze98lP+6e7SPbrBpyhTpfvqqX8VYKGn4uckrgPan4WQIHnTaUD2zZzZS18eVVDj4rHPcIZa1PGgvo1DfA==} @@ -4668,10 +4617,6 @@ packages: magicast: optional: true - cac@6.7.14: - resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==} - engines: {node: '>=8'} - cacache@15.3.0: resolution: {integrity: sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ==} engines: {node: '>= 10'} @@ -4703,9 +4648,9 @@ packages: caniuse-lite@1.0.30001579: resolution: {integrity: sha512-u5AUVkixruKHJjw/pj9wISlcMpgFWzSrczLZbrqBSxukQixmg0SJ5sZTpvaFvxU0HoQKd4yoyAogyrAz9pzJnA==} - chai@5.2.0: - resolution: {integrity: sha512-mCuXncKXk5iCLhfhwTc0izo0gtEmpz5CtG2y8GiOINBlMVS6v8TMRc5TaLWKS6692m9+dVVfzgeVxR5UxWHTYw==} - engines: {node: '>=12'} + chai@6.2.2: + resolution: {integrity: sha512-NUPRluOfOiTKBKvWPtSD4PhFvWCqOi0BGStNWs57X9js7XGTprSmFoz5F0tWhR4WPjNeR9jXqdC7/UpSJTnlRg==} + engines: {node: '>=18'} chalk@2.4.2: resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} @@ -4729,10 +4674,6 @@ packages: chardet@0.7.0: resolution: {integrity: sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==} - check-error@2.1.1: - resolution: {integrity: sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw==} - engines: {node: '>= 16'} - checkpoint-client@1.1.33: resolution: {integrity: sha512-kiG9G/2K2lDkwd5q7TrzxN4IVqBSdwItLWXw6H+7+2N5jopjHRjD434OWvg/anuRvAnRlr5tflOuwbetsHQoZQ==} @@ -4982,10 +4923,6 @@ packages: babel-plugin-macros: optional: true - deep-eql@5.0.2: - resolution: {integrity: sha512-h5k/5U50IJJFpzfL6nO9jaaumfjO/f2NjK/oYB2Djzm4p9L+3T9qWpZqZ2hAbLPuuYq9wrU08WQyBTL5GbPk5Q==} - engines: {node: '>=6'} - deep-extend@0.6.0: resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==} engines: {node: '>=4.0.0'} @@ -5082,9 +5019,6 @@ packages: resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==} engines: {node: '>= 0.4'} - eastasianwidth@0.2.0: - resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} - ecdsa-sig-formatter@1.0.11: resolution: {integrity: sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==} @@ -5107,9 +5041,6 @@ packages: emoji-regex@8.0.0: resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} - emoji-regex@9.2.2: - resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} - empathic@2.0.0: resolution: {integrity: sha512-i6UzDscO/XfAcNYD75CfICkmfLedpyPDdozrLMmQc5ORaQcdMoc21OnlEylMIqI7U8eniKrPMxxtj8k0vhmJhA==} engines: {node: '>=14'} @@ -5462,8 +5393,9 @@ packages: picomatch: optional: true - fdir@6.4.4: - resolution: {integrity: sha512-1NZP+GK4GfuAv3PqKvxQRDMjdSRZjnkq7KfhlNrCNNlZ0ygQFpebfrnfnq/W7fpUnAv9aGWmY1zKx7FYL3gwhg==} + fdir@6.5.0: + resolution: {integrity: sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==} + engines: {node: '>=12.0.0'} peerDependencies: picomatch: ^3 || ^4 peerDependenciesMeta: @@ -5659,11 +5591,6 @@ packages: glob-to-regexp@0.4.1: resolution: {integrity: sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==} - glob@10.4.5: - resolution: {integrity: sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==} - deprecated: Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me - hasBin: true - glob@7.2.3: resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} deprecated: Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me @@ -6050,17 +5977,10 @@ packages: resolution: {integrity: sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==} engines: {node: '>=10'} - istanbul-lib-source-maps@5.0.6: - resolution: {integrity: sha512-yg2d+Em4KizZC5niWhQaIomgf5WlL4vOOjZ5xGCmF8SnPE/mDWWXgvRExdcpCgh9lLRRa1/fSYp2ymmbJ1pI+A==} - engines: {node: '>=10'} - istanbul-reports@3.2.0: resolution: {integrity: sha512-HGYWWS/ehqTV3xN10i23tkPkpH46MLCIMFNCaaKNavAXTF1RkqxawEPtnjnGZ6XKSInBKkiOA5BKS+aZiY3AvA==} engines: {node: '>=8'} - jackspeak@3.4.3: - resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==} - jest-changed-files@29.7.0: resolution: {integrity: sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} @@ -6228,12 +6148,12 @@ packages: js-md4@0.3.2: resolution: {integrity: sha512-/GDnfQYsltsjRswQhN9fhv3EMw2sCpUdrdxyWDOUK7eyD++r3gRhzgiQgc/x4MAv2i1iuQ4lxO5mvqM3vj4bwA==} + js-tokens@10.0.0: + resolution: {integrity: sha512-lM/UBzQmfJRo9ABXbPWemivdCW8V2G8FHaHdypQaIy523snUjog0W71ayWXTjiR+ixeMyVHN2XcpnTd/liPg/Q==} + js-tokens@4.0.0: resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} - js-tokens@9.0.1: - resolution: {integrity: sha512-mxa9E9ITFOt0ban3j6L5MpjwegGz6lBQmM1IJkWeBZGcMxto50+eWdjC/52xDbS2vy0k7vIMK0Fe2wfL9OQSpQ==} - js-yaml@3.14.1: resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==} hasBin: true @@ -6424,9 +6344,6 @@ packages: long@5.3.2: resolution: {integrity: sha512-mNAgZ1GmyNhD7AuqnTG3/VQ26o760+ZYBPKjPvugO8+nLbYfX6TVpJPseBvopbdY+qpZ/lKUnmEc1LeZYS3QAA==} - loupe@3.1.4: - resolution: {integrity: sha512-wJzkKwJrheKtknCOKNEtDK4iqg/MxmZheEMtSTYvnzRdEYaZzmgH976nenp8WdJRdx5Vc1X/9MO0Oszl6ezeXg==} - lru-cache@10.4.3: resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==} @@ -6448,11 +6365,11 @@ packages: magic-string@0.25.9: resolution: {integrity: sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==} - magic-string@0.30.17: - resolution: {integrity: sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==} + magic-string@0.30.21: + resolution: {integrity: sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==} - magicast@0.3.5: - resolution: {integrity: sha512-L0WhttDl+2BOsybvEOLK7fW3UA0OQ0IQ2d6Zl2x/a6vVRs3bAY0ECOSHHeL5jD+SbOpOCUEi0y1DgHEn9Qn1AQ==} + magicast@0.5.2: + resolution: {integrity: sha512-E3ZJh4J3S9KfwdjZhe2afj6R9lGIN5Pher1pF39UGrXRqq/VDaGVIGN13BjHd2u8B61hArAGOnso7nBOouW3TQ==} make-dir@4.0.0: resolution: {integrity: sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==} @@ -6630,10 +6547,6 @@ packages: resolution: {integrity: sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==} engines: {node: '>=8'} - minipass@7.1.2: - resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==} - engines: {node: '>=16 || 14 >=14.17'} - minizlib@2.1.2: resolution: {integrity: sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==} engines: {node: '>= 8'} @@ -6861,6 +6774,9 @@ packages: obuf@1.1.2: resolution: {integrity: sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==} + obug@2.1.1: + resolution: {integrity: sha512-uTqF9MuPraAQ+IsnPf366RG4cP9RtUi7MLO1N3KEc+wb0a6yKpeL0lmk2IB1jY5KHPAlTc6T/JRdC/YqxHNwkQ==} + ohash@2.0.11: resolution: {integrity: sha512-RdR9FQrFwNBNXAr4GixM8YaRZRJ5PUWbKYbE5eOsrwAjJW0q2REGcf79oYPsLyskQCZG1PLN+S/K1V00joZAoQ==} @@ -6973,9 +6889,6 @@ packages: resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} engines: {node: '>=6'} - package-json-from-dist@1.0.1: - resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==} - package-up@5.0.0: resolution: {integrity: sha512-MQEgDUvXCa3sGvqHg3pzHO8e9gqTCMPVrWUko3vPQGntwegmFo52mZb2abIVTjFnUcW0BcPz0D93jV5Cas1DWA==} engines: {node: '>=18'} @@ -7019,10 +6932,6 @@ packages: path-parse@1.0.7: resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} - path-scurry@1.11.1: - resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==} - engines: {node: '>=16 || 14 >=14.18'} - path-to-regexp@6.3.0: resolution: {integrity: sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==} @@ -7037,10 +6946,6 @@ packages: pathe@2.0.3: resolution: {integrity: sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==} - pathval@2.0.0: - resolution: {integrity: sha512-vE7JKRyES09KiunauX7nd2Q9/L7lhok4smP9RZTDeD4MVs72Dp2qNFVz39Nz5a0FVEW0BJR6C0DYrq6unoziZA==} - engines: {node: '>= 14.16'} - perfect-debounce@1.0.0: resolution: {integrity: sha512-xCy9V055GLEqoFaHoC1SoLIaLmWctgCUaBaWxDZ7/Zx4CTyX7cJQLJOok/orfjZAh9kEYpjJa4d0KcJmCbctZA==} @@ -7126,6 +7031,10 @@ packages: resolution: {integrity: sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==} engines: {node: '>=12'} + picomatch@4.0.3: + resolution: {integrity: sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==} + engines: {node: '>=12'} + pidtree@0.6.0: resolution: {integrity: sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==} engines: {node: '>=0.10'} @@ -7700,9 +7609,6 @@ packages: std-env@3.10.0: resolution: {integrity: sha512-5GS12FdOZNliM5mAOxFRg7Ir0pWz8MdpYm6AY6VPkGpbA7ZzmbzNcBJQ0GPvvyWgcY7QAhCgf9Uy89I03faLkg==} - std-env@3.9.0: - resolution: {integrity: sha512-UGvjygr6F6tpH7o2qyqR6QYpwraIjKSdtzyBdyytFOHmPZY917kwdwLG0RbOjWOnKmnm3PeHjaoLLMie7kPLQw==} - stdin-discarder@0.2.2: resolution: {integrity: sha512-UhDfHmA92YAlNnCfhmq0VeNL5bDbiZGg7sZ2IvPsXubGkiNa9EC+tUTsjBRsYUAz87btI6/1wf4XoVvQ3uRnmQ==} engines: {node: '>=18'} @@ -7732,10 +7638,6 @@ packages: resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} engines: {node: '>=8'} - string-width@5.1.2: - resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} - engines: {node: '>=12'} - string-width@7.2.0: resolution: {integrity: sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==} engines: {node: '>=18'} @@ -7779,9 +7681,6 @@ packages: resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} engines: {node: '>=8'} - strip-literal@3.0.0: - resolution: {integrity: sha512-TcccoMhJOM3OebGhSBEmp3UZ2SfDMZUEBdRA/9ynfLi8yYajyWX3JiXArcJt4Umh4vISpspkQIY8ZZoCqjbviA==} - supports-color@10.2.2: resolution: {integrity: sha512-SS+jx45GF1QjgEXQx4NJZV9ImqmO2NPz5FNsIHrsDjh2YsHnawpan7SNQ1o8NuhrbHZy9AZhIoCUiCeaW/C80g==} engines: {node: '>=18'} @@ -7892,10 +7791,6 @@ packages: resolution: {integrity: sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==} engines: {node: '>=8'} - test-exclude@7.0.1: - resolution: {integrity: sha512-pFYqmTw68LXVjeWJMST4+borgQP2AyMNbg1BpZh9LbyhUeNkeaPF9gzfPGUAnSMV3qPYdWUwDIjjCLiSDOl7vg==} - engines: {node: '>=18'} - text-decoder@1.2.3: resolution: {integrity: sha512-3/o9z3X0X0fTupwsYvR03pJ/DjWuqqrfwBgTQzdWDiQSm9KitAyz/9WqsT2JQW7KV2m+bC2ol/zqpW37NHxLaA==} @@ -7918,24 +7813,20 @@ packages: tinyexec@0.3.2: resolution: {integrity: sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA==} + tinyexec@1.0.2: + resolution: {integrity: sha512-W/KYk+NFhkmsYpuHq5JykngiOCnxeVL8v8dFnqxSD8qEEdRfXk1SDM6JzNqcERbcGYj9tMrDQBYV9cjgnunFIg==} + engines: {node: '>=18'} + tinyglobby@0.2.12: resolution: {integrity: sha512-qkf4trmKSIiMTs/E63cxH+ojC2unam7rJ0WrauAzpT3ECNTxGRMlaXxVbfxMUC/w0LaYk6jQ4y/nGR9uBO3tww==} engines: {node: '>=12.0.0'} - tinyglobby@0.2.14: - resolution: {integrity: sha512-tX5e7OM1HnYr2+a2C/4V0htOcSQcoSTH9KgJnVvNm5zm/cyEWKJ7j7YutsH9CxMdtOkkLFy2AHrMci9IM8IPZQ==} + tinyglobby@0.2.15: + resolution: {integrity: sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==} engines: {node: '>=12.0.0'} - tinypool@1.1.1: - resolution: {integrity: sha512-Zba82s87IFq9A9XmjiX5uZA/ARWDrB03OHlq+Vw1fSdt0I+4/Kutwy8BP4Y/y/aORMo61FQ0vIb5j44vSo5Pkg==} - engines: {node: ^18.0.0 || >=20.0.0} - - tinyrainbow@2.0.0: - resolution: {integrity: sha512-op4nsTR47R6p0vMUUoYl/a+ljLFVtlfaXkLQmqfLR1qHma1h/ysYk4hEXZ880bf2CYgTskvTa/e196Vd5dDQXw==} - engines: {node: '>=14.0.0'} - - tinyspy@4.0.3: - resolution: {integrity: sha512-t2T/WLB2WRgZ9EpE4jgPJ9w+i66UZfDc8wHh0xrwiRNN+UwH98GIJkTeZqX9rg0i0ptwzqW+uYeIF0T4F8LR7A==} + tinyrainbow@3.0.3: + resolution: {integrity: sha512-PSkbLUoxOFRzJYjjxHJt9xro7D+iilgMX/C9lawzVuYiIdcihh9DXmVibBe8lmcFrRi/VzlPjBxbN7rH24q8/Q==} engines: {node: '>=14.0.0'} tmp@0.0.33: @@ -7949,10 +7840,6 @@ packages: tmpl@1.0.5: resolution: {integrity: sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==} - to-fast-properties@2.0.0: - resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} - engines: {node: '>=4'} - to-regex-range@5.0.1: resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} engines: {node: '>=8.0'} @@ -8241,11 +8128,6 @@ packages: resolution: {integrity: sha512-veufcmxri4e3XSrT0xwfUR7kguIkaxBeosDg00yDWhk49wdwkSUrvvsm7nc75e1PUyvIeZj6nS8VQRYz2/S4Xg==} engines: {node: '>=0.6.0'} - vite-node@3.2.4: - resolution: {integrity: sha512-EbKSKh+bh1E1IFxeO0pg1n4dvoOTt0UDiXMd/qn++r98+jPO1xtJilvXldeuQ8giIB5IkpjCgMleHMNEsGH6pg==} - engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} - hasBin: true - vite@6.2.2: resolution: {integrity: sha512-yW7PeMM+LkDzc7CgJuRLMW2Jz0FxMOsVJ8Lv3gpgW9WLcb9cTW+121UEr1hvmfR7w3SegR5ItvYyzVz1vxNJgQ==} engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} @@ -8286,26 +8168,32 @@ packages: yaml: optional: true - vitest@3.2.4: - resolution: {integrity: sha512-LUCP5ev3GURDysTWiP47wRRUpLKMOfPh+yKTx3kVIEiu5KOMeqzpnYNsKyOoVrULivR8tLcks4+lga33Whn90A==} - engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} + vitest@4.0.18: + resolution: {integrity: sha512-hOQuK7h0FGKgBAas7v0mSAsnvrIgAvWmRFjmzpJ7SwFHH3g1k2u37JtYwOwmEKhK6ZO3v9ggDBBm0La1LCK4uQ==} + engines: {node: ^20.0.0 || ^22.0.0 || >=24.0.0} hasBin: true peerDependencies: '@edge-runtime/vm': '*' - '@types/debug': ^4.1.12 - '@types/node': ^18.0.0 || ^20.0.0 || >=22.0.0 - '@vitest/browser': 3.2.4 - '@vitest/ui': 3.2.4 + '@opentelemetry/api': ^1.9.0 + '@types/node': ^20.0.0 || ^22.0.0 || >=24.0.0 + '@vitest/browser-playwright': 4.0.18 + '@vitest/browser-preview': 4.0.18 + '@vitest/browser-webdriverio': 4.0.18 + '@vitest/ui': 4.0.18 happy-dom: '*' jsdom: '*' peerDependenciesMeta: '@edge-runtime/vm': optional: true - '@types/debug': + '@opentelemetry/api': optional: true '@types/node': optional: true - '@vitest/browser': + '@vitest/browser-playwright': + optional: true + '@vitest/browser-preview': + optional: true + '@vitest/browser-webdriverio': optional: true '@vitest/ui': optional: true @@ -8412,10 +8300,6 @@ packages: resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} engines: {node: '>=10'} - wrap-ansi@8.1.0: - resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} - engines: {node: '>=12'} - wrap-ansi@9.0.0: resolution: {integrity: sha512-G8ura3S+3Z2G+mkgNRq8dqaFZAuxfsxpBB8OCTGRTCtp+l/v9nbFNmCUP1BZMts3G1142MsZfn6eeUKrr4PD1Q==} engines: {node: '>=18'} @@ -8559,11 +8443,6 @@ snapshots: '@jridgewell/gen-mapping': 0.1.1 '@jridgewell/trace-mapping': 0.3.30 - '@ampproject/remapping@2.3.0': - dependencies: - '@jridgewell/gen-mapping': 0.3.8 - '@jridgewell/trace-mapping': 0.3.30 - '@antfu/ni@0.21.12': {} '@ark/attest@0.48.2(typescript@5.4.5)': @@ -8726,10 +8605,10 @@ snapshots: '@babel/helper-compilation-targets': 7.21.5(@babel/core@7.21.8) '@babel/helper-module-transforms': 7.21.5 '@babel/helpers': 7.21.5 - '@babel/parser': 7.21.8 + '@babel/parser': 7.29.0 '@babel/template': 7.20.7 '@babel/traverse': 7.26.5 - '@babel/types': 7.21.5 + '@babel/types': 7.29.0 convert-source-map: 1.9.0 debug: 4.4.1 gensync: 1.0.0-beta.2 @@ -8740,15 +8619,15 @@ snapshots: '@babel/generator@7.21.5': dependencies: - '@babel/types': 7.21.5 + '@babel/types': 7.29.0 '@jridgewell/gen-mapping': 0.3.2 '@jridgewell/trace-mapping': 0.3.22 jsesc: 2.5.2 '@babel/generator@7.26.5': dependencies: - '@babel/parser': 7.26.5 - '@babel/types': 7.26.5 + '@babel/parser': 7.29.0 + '@babel/types': 7.29.0 '@jridgewell/gen-mapping': 0.3.8 '@jridgewell/trace-mapping': 0.3.30 jsesc: 3.1.0 @@ -8766,7 +8645,7 @@ snapshots: '@babel/helper-module-imports@7.21.4': dependencies: - '@babel/types': 7.26.5 + '@babel/types': 7.29.0 '@babel/helper-module-transforms@7.21.5': dependencies: @@ -8777,7 +8656,7 @@ snapshots: '@babel/helper-validator-identifier': 7.25.9 '@babel/template': 7.20.7 '@babel/traverse': 7.26.5 - '@babel/types': 7.21.5 + '@babel/types': 7.29.0 transitivePeerDependencies: - supports-color @@ -8785,25 +8664,25 @@ snapshots: '@babel/helper-simple-access@7.21.5': dependencies: - '@babel/types': 7.26.5 + '@babel/types': 7.29.0 '@babel/helper-split-export-declaration@7.18.6': dependencies: - '@babel/types': 7.26.5 + '@babel/types': 7.29.0 - '@babel/helper-string-parser@7.21.5': {} - - '@babel/helper-string-parser@7.25.9': {} + '@babel/helper-string-parser@7.27.1': {} '@babel/helper-validator-identifier@7.25.9': {} + '@babel/helper-validator-identifier@7.28.5': {} + '@babel/helper-validator-option@7.21.0': {} '@babel/helpers@7.21.5': dependencies: '@babel/template': 7.20.7 '@babel/traverse': 7.26.5 - '@babel/types': 7.21.5 + '@babel/types': 7.29.0 transitivePeerDependencies: - supports-color @@ -8813,13 +8692,9 @@ snapshots: chalk: 2.4.2 js-tokens: 4.0.0 - '@babel/parser@7.21.8': + '@babel/parser@7.29.0': dependencies: - '@babel/types': 7.21.5 - - '@babel/parser@7.26.5': - dependencies: - '@babel/types': 7.26.5 + '@babel/types': 7.29.0 '@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.21.8)': dependencies: @@ -8894,37 +8769,31 @@ snapshots: '@babel/template@7.20.7': dependencies: '@babel/code-frame': 7.26.2 - '@babel/parser': 7.21.8 - '@babel/types': 7.21.5 + '@babel/parser': 7.29.0 + '@babel/types': 7.29.0 '@babel/template@7.25.9': dependencies: '@babel/code-frame': 7.26.2 - '@babel/parser': 7.26.5 - '@babel/types': 7.26.5 + '@babel/parser': 7.29.0 + '@babel/types': 7.29.0 '@babel/traverse@7.26.5': dependencies: '@babel/code-frame': 7.26.2 '@babel/generator': 7.26.5 - '@babel/parser': 7.26.5 + '@babel/parser': 7.29.0 '@babel/template': 7.25.9 - '@babel/types': 7.26.5 + '@babel/types': 7.29.0 debug: 4.4.1 globals: 11.12.0 transitivePeerDependencies: - supports-color - '@babel/types@7.21.5': - dependencies: - '@babel/helper-string-parser': 7.21.5 - '@babel/helper-validator-identifier': 7.25.9 - to-fast-properties: 2.0.0 - - '@babel/types@7.26.5': + '@babel/types@7.29.0': dependencies: - '@babel/helper-string-parser': 7.25.9 - '@babel/helper-validator-identifier': 7.25.9 + '@babel/helper-string-parser': 7.27.1 + '@babel/helper-validator-identifier': 7.28.5 '@bcoe/v8-coverage@0.2.3': {} @@ -9571,15 +9440,6 @@ snapshots: dependencies: '@isaacs/balanced-match': 4.0.1 - '@isaacs/cliui@8.0.2': - dependencies: - string-width: 5.1.2 - string-width-cjs: string-width@4.2.3 - strip-ansi: 7.1.0 - strip-ansi-cjs: strip-ansi@6.0.1 - wrap-ansi: 8.1.0 - wrap-ansi-cjs: wrap-ansi@7.0.0 - '@istanbuljs/load-nyc-config@1.1.0': dependencies: camelcase: 5.3.1 @@ -9788,6 +9648,8 @@ snapshots: '@jridgewell/sourcemap-codec@1.5.0': {} + '@jridgewell/sourcemap-codec@1.5.5': {} + '@jridgewell/trace-mapping@0.3.22': dependencies: '@jridgewell/resolve-uri': 3.1.0 @@ -9798,6 +9660,11 @@ snapshots: '@jridgewell/resolve-uri': 3.1.0 '@jridgewell/sourcemap-codec': 1.5.0 + '@jridgewell/trace-mapping@0.3.31': + dependencies: + '@jridgewell/resolve-uri': 3.1.2 + '@jridgewell/sourcemap-codec': 1.5.5 + '@jridgewell/trace-mapping@0.3.9': dependencies: '@jridgewell/resolve-uri': 3.1.2 @@ -10185,9 +10052,6 @@ snapshots: dependencies: '@noble/hashes': 1.7.1 - '@pkgjs/parseargs@0.11.0': - optional: true - '@pkgr/core@0.2.9': {} '@planetscale/database@1.19.0': {} @@ -10541,26 +10405,26 @@ snapshots: '@types/babel__core@7.1.19': dependencies: - '@babel/parser': 7.26.5 - '@babel/types': 7.26.5 + '@babel/parser': 7.29.0 + '@babel/types': 7.29.0 '@types/babel__generator': 7.6.4 '@types/babel__template': 7.4.1 '@types/babel__traverse': 7.18.2 '@types/babel__generator@7.6.4': dependencies: - '@babel/types': 7.26.5 + '@babel/types': 7.29.0 '@types/babel__helper-validator-identifier@7.15.2': {} '@types/babel__template@7.4.1': dependencies: - '@babel/parser': 7.26.5 - '@babel/types': 7.26.5 + '@babel/parser': 7.29.0 + '@babel/types': 7.29.0 '@types/babel__traverse@7.18.2': dependencies: - '@babel/types': 7.26.5 + '@babel/types': 7.29.0 '@types/benchmark@2.1.5': {} @@ -10852,74 +10716,58 @@ snapshots: transitivePeerDependencies: - supports-color - '@vitest/coverage-v8@3.2.4(vitest@3.2.4(@types/debug@4.1.12)(@types/node@20.19.25)(jiti@2.4.2)(terser@5.27.0)(tsx@4.19.3)(yaml@2.7.0))': + '@vitest/coverage-v8@4.0.18(vitest@4.0.18(@opentelemetry/api@1.9.0)(@types/node@20.19.25)(jiti@2.4.2)(terser@5.27.0)(tsx@4.19.3)(yaml@2.7.0))': dependencies: - '@ampproject/remapping': 2.3.0 '@bcoe/v8-coverage': 1.0.2 - ast-v8-to-istanbul: 0.3.5 - debug: 4.4.1 + '@vitest/utils': 4.0.18 + ast-v8-to-istanbul: 0.3.11 istanbul-lib-coverage: 3.2.2 istanbul-lib-report: 3.0.1 - istanbul-lib-source-maps: 5.0.6 istanbul-reports: 3.2.0 - magic-string: 0.30.17 - magicast: 0.3.5 - std-env: 3.9.0 - test-exclude: 7.0.1 - tinyrainbow: 2.0.0 - vitest: 3.2.4(@types/debug@4.1.12)(@types/node@20.19.25)(jiti@2.4.2)(terser@5.27.0)(tsx@4.19.3)(yaml@2.7.0) - transitivePeerDependencies: - - supports-color + magicast: 0.5.2 + obug: 2.1.1 + std-env: 3.10.0 + tinyrainbow: 3.0.3 + vitest: 4.0.18(@opentelemetry/api@1.9.0)(@types/node@20.19.25)(jiti@2.4.2)(terser@5.27.0)(tsx@4.19.3)(yaml@2.7.0) - '@vitest/expect@3.2.4': + '@vitest/expect@4.0.18': dependencies: + '@standard-schema/spec': 1.0.0 '@types/chai': 5.2.2 - '@vitest/spy': 3.2.4 - '@vitest/utils': 3.2.4 - chai: 5.2.0 - tinyrainbow: 2.0.0 + '@vitest/spy': 4.0.18 + '@vitest/utils': 4.0.18 + chai: 6.2.2 + tinyrainbow: 3.0.3 - '@vitest/mocker@3.2.4(vite@6.2.2(@types/node@20.19.25)(jiti@2.4.2)(terser@5.27.0)(tsx@4.19.3)(yaml@2.7.0))': + '@vitest/mocker@4.0.18(vite@6.2.2(@types/node@20.19.25)(jiti@2.4.2)(terser@5.27.0)(tsx@4.19.3)(yaml@2.7.0))': dependencies: - '@vitest/spy': 3.2.4 + '@vitest/spy': 4.0.18 estree-walker: 3.0.3 - magic-string: 0.30.17 + magic-string: 0.30.21 optionalDependencies: vite: 6.2.2(@types/node@20.19.25)(jiti@2.4.2)(terser@5.27.0)(tsx@4.19.3)(yaml@2.7.0) - '@vitest/mocker@3.2.4(vite@6.2.2(@types/node@24.3.0)(jiti@2.4.2)(terser@5.27.0)(tsx@4.19.3)(yaml@2.7.0))': + '@vitest/pretty-format@4.0.18': dependencies: - '@vitest/spy': 3.2.4 - estree-walker: 3.0.3 - magic-string: 0.30.17 - optionalDependencies: - vite: 6.2.2(@types/node@24.3.0)(jiti@2.4.2)(terser@5.27.0)(tsx@4.19.3)(yaml@2.7.0) - - '@vitest/pretty-format@3.2.4': - dependencies: - tinyrainbow: 2.0.0 + tinyrainbow: 3.0.3 - '@vitest/runner@3.2.4': + '@vitest/runner@4.0.18': dependencies: - '@vitest/utils': 3.2.4 + '@vitest/utils': 4.0.18 pathe: 2.0.3 - strip-literal: 3.0.0 - '@vitest/snapshot@3.2.4': + '@vitest/snapshot@4.0.18': dependencies: - '@vitest/pretty-format': 3.2.4 - magic-string: 0.30.17 + '@vitest/pretty-format': 4.0.18 + magic-string: 0.30.21 pathe: 2.0.3 - '@vitest/spy@3.2.4': - dependencies: - tinyspy: 4.0.3 + '@vitest/spy@4.0.18': {} - '@vitest/utils@3.2.4': + '@vitest/utils@4.0.18': dependencies: - '@vitest/pretty-format': 3.2.4 - loupe: 3.1.4 - tinyrainbow: 2.0.0 + '@vitest/pretty-format': 4.0.18 + tinyrainbow: 3.0.3 '@webassemblyjs/ast@1.12.1': dependencies: @@ -11159,13 +11007,11 @@ snapshots: assert-plus@1.0.0: {} - assertion-error@2.0.1: {} - - ast-v8-to-istanbul@0.3.5: + ast-v8-to-istanbul@0.3.11: dependencies: - '@jridgewell/trace-mapping': 0.3.30 + '@jridgewell/trace-mapping': 0.3.31 estree-walker: 3.0.3 - js-tokens: 9.0.1 + js-tokens: 10.0.0 async-listen@3.1.0: {} @@ -11221,7 +11067,7 @@ snapshots: babel-plugin-jest-hoist@29.6.3: dependencies: '@babel/template': 7.25.9 - '@babel/types': 7.26.5 + '@babel/types': 7.29.0 '@types/babel__core': 7.1.19 '@types/babel__traverse': 7.18.2 @@ -11389,7 +11235,7 @@ snapshots: bytes@3.1.2: {} - c12@3.1.0(magicast@0.3.5): + c12@3.1.0: dependencies: chokidar: 4.0.3 confbox: 0.2.2 @@ -11403,10 +11249,6 @@ snapshots: perfect-debounce: 1.0.0 pkg-types: 2.2.0 rc9: 2.1.2 - optionalDependencies: - magicast: 0.3.5 - - cac@6.7.14: {} cacache@15.3.0: dependencies: @@ -11456,13 +11298,7 @@ snapshots: caniuse-lite@1.0.30001579: {} - chai@5.2.0: - dependencies: - assertion-error: 2.0.1 - check-error: 2.1.1 - deep-eql: 5.0.2 - loupe: 3.1.4 - pathval: 2.0.0 + chai@6.2.2: {} chalk@2.4.2: dependencies: @@ -11483,8 +11319,6 @@ snapshots: chardet@0.7.0: {} - check-error@2.1.1: {} - checkpoint-client@1.1.33(encoding@0.1.13): dependencies: ci-info: 4.0.0 @@ -11701,8 +11535,6 @@ snapshots: dedent@1.5.1: {} - deep-eql@5.0.2: {} - deep-extend@0.6.0: {} deep-is@0.1.4: {} @@ -11777,8 +11609,6 @@ snapshots: es-errors: 1.3.0 gopd: 1.2.0 - eastasianwidth@0.2.0: {} - ecdsa-sig-formatter@1.0.11: dependencies: safe-buffer: 5.2.1 @@ -11798,8 +11628,6 @@ snapshots: emoji-regex@8.0.0: {} - emoji-regex@9.2.2: {} - empathic@2.0.0: {} encodeurl@2.0.0: {} @@ -12265,9 +12093,9 @@ snapshots: optionalDependencies: picomatch: 4.0.2 - fdir@6.4.4(picomatch@4.0.2): + fdir@6.5.0(picomatch@4.0.3): optionalDependencies: - picomatch: 4.0.2 + picomatch: 4.0.3 fetch-blob@3.2.0: dependencies: @@ -12467,15 +12295,6 @@ snapshots: glob-to-regexp@0.4.1: {} - glob@10.4.5: - dependencies: - foreground-child: 3.3.1 - jackspeak: 3.4.3 - minimatch: 9.0.5 - minipass: 7.1.2 - package-json-from-dist: 1.0.1 - path-scurry: 1.11.1 - glob@7.2.3: dependencies: fs.realpath: 1.0.0 @@ -12792,7 +12611,7 @@ snapshots: istanbul-lib-instrument@5.2.1: dependencies: '@babel/core': 7.21.8 - '@babel/parser': 7.26.5 + '@babel/parser': 7.29.0 '@istanbuljs/schema': 0.1.3 istanbul-lib-coverage: 3.2.0 semver: 6.3.1 @@ -12802,7 +12621,7 @@ snapshots: istanbul-lib-instrument@6.0.0: dependencies: '@babel/core': 7.21.8 - '@babel/parser': 7.26.5 + '@babel/parser': 7.29.0 '@istanbuljs/schema': 0.1.3 istanbul-lib-coverage: 3.2.2 semver: 7.7.0 @@ -12823,25 +12642,11 @@ snapshots: transitivePeerDependencies: - supports-color - istanbul-lib-source-maps@5.0.6: - dependencies: - '@jridgewell/trace-mapping': 0.3.30 - debug: 4.4.1 - istanbul-lib-coverage: 3.2.2 - transitivePeerDependencies: - - supports-color - istanbul-reports@3.2.0: dependencies: html-escaper: 2.0.2 istanbul-lib-report: 3.0.1 - jackspeak@3.4.3: - dependencies: - '@isaacs/cliui': 8.0.2 - optionalDependencies: - '@pkgjs/parseargs': 0.11.0 - jest-changed-files@29.7.0: dependencies: execa: 5.1.1 @@ -13102,7 +12907,7 @@ snapshots: '@babel/generator': 7.21.5 '@babel/plugin-syntax-jsx': 7.18.6(@babel/core@7.21.8) '@babel/plugin-syntax-typescript': 7.18.6(@babel/core@7.21.8) - '@babel/types': 7.21.5 + '@babel/types': 7.29.0 '@jest/expect-utils': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 @@ -13185,9 +12990,9 @@ snapshots: js-md4@0.3.2: {} - js-tokens@4.0.0: {} + js-tokens@10.0.0: {} - js-tokens@9.0.1: {} + js-tokens@4.0.0: {} js-yaml@3.14.1: dependencies: @@ -13388,8 +13193,6 @@ snapshots: long@5.3.2: {} - loupe@3.1.4: {} - lru-cache@10.4.3: {} lru-cache@5.1.1: @@ -13408,14 +13211,14 @@ snapshots: dependencies: sourcemap-codec: 1.4.8 - magic-string@0.30.17: + magic-string@0.30.21: dependencies: - '@jridgewell/sourcemap-codec': 1.5.0 + '@jridgewell/sourcemap-codec': 1.5.5 - magicast@0.3.5: + magicast@0.5.2: dependencies: - '@babel/parser': 7.26.5 - '@babel/types': 7.26.5 + '@babel/parser': 7.29.0 + '@babel/types': 7.29.0 source-map-js: 1.2.1 make-dir@4.0.0: @@ -13635,8 +13438,6 @@ snapshots: minipass@5.0.0: {} - minipass@7.1.2: {} - minizlib@2.1.2: dependencies: minipass: 3.3.6 @@ -13865,6 +13666,8 @@ snapshots: obuf@1.1.2: {} + obug@2.1.1: {} + ohash@2.0.11: {} on-finished@2.4.1: @@ -14002,8 +13805,6 @@ snapshots: p-try@2.2.0: {} - package-json-from-dist@1.0.1: {} - package-up@5.0.0: dependencies: find-up-simple: 1.0.1 @@ -14039,11 +13840,6 @@ snapshots: path-parse@1.0.7: {} - path-scurry@1.11.1: - dependencies: - lru-cache: 10.4.3 - minipass: 7.1.2 - path-to-regexp@6.3.0: {} path-to-regexp@8.2.0: {} @@ -14052,8 +13848,6 @@ snapshots: pathe@2.0.3: {} - pathval@2.0.0: {} - perfect-debounce@1.0.0: {} pg-cloudflare@1.1.1: @@ -14134,6 +13928,8 @@ snapshots: picomatch@4.0.2: {} + picomatch@4.0.3: {} + pidtree@0.6.0: {} pirates@4.0.6: {} @@ -14753,8 +14549,6 @@ snapshots: std-env@3.10.0: {} - std-env@3.9.0: {} - stdin-discarder@0.2.2: {} stoppable@1.1.0: {} @@ -14788,12 +14582,6 @@ snapshots: is-fullwidth-code-point: 3.0.0 strip-ansi: 6.0.1 - string-width@5.1.2: - dependencies: - eastasianwidth: 0.2.0 - emoji-regex: 9.2.2 - strip-ansi: 7.1.0 - string-width@7.2.0: dependencies: emoji-regex: 10.4.0 @@ -14830,10 +14618,6 @@ snapshots: strip-json-comments@3.1.1: {} - strip-literal@3.0.0: - dependencies: - js-tokens: 9.0.1 - supports-color@10.2.2: {} supports-color@5.5.0: @@ -14978,12 +14762,6 @@ snapshots: glob: 7.2.3 minimatch: 3.1.2 - test-exclude@7.0.1: - dependencies: - '@istanbuljs/schema': 0.1.3 - glob: 10.4.5 - minimatch: 9.0.5 - text-decoder@1.2.3: dependencies: b4a: 1.6.4 @@ -15003,21 +14781,19 @@ snapshots: tinyexec@0.3.2: {} + tinyexec@1.0.2: {} + tinyglobby@0.2.12: dependencies: fdir: 6.4.3(picomatch@4.0.2) picomatch: 4.0.2 - tinyglobby@0.2.14: + tinyglobby@0.2.15: dependencies: - fdir: 6.4.4(picomatch@4.0.2) - picomatch: 4.0.2 - - tinypool@1.1.1: {} - - tinyrainbow@2.0.0: {} + fdir: 6.5.0(picomatch@4.0.3) + picomatch: 4.0.3 - tinyspy@4.0.3: {} + tinyrainbow@3.0.3: {} tmp@0.0.33: dependencies: @@ -15027,8 +14803,6 @@ snapshots: tmpl@1.0.5: {} - to-fast-properties@2.0.0: {} - to-regex-range@5.0.1: dependencies: is-number: 7.0.0 @@ -15272,48 +15046,6 @@ snapshots: core-util-is: 1.0.2 extsprintf: 1.4.1 - vite-node@3.2.4(@types/node@20.19.25)(jiti@2.4.2)(terser@5.27.0)(tsx@4.19.3)(yaml@2.7.0): - dependencies: - cac: 6.7.14 - debug: 4.4.1 - es-module-lexer: 1.7.0 - pathe: 2.0.3 - vite: 6.2.2(@types/node@20.19.25)(jiti@2.4.2)(terser@5.27.0)(tsx@4.19.3)(yaml@2.7.0) - transitivePeerDependencies: - - '@types/node' - - jiti - - less - - lightningcss - - sass - - sass-embedded - - stylus - - sugarss - - supports-color - - terser - - tsx - - yaml - - vite-node@3.2.4(@types/node@24.3.0)(jiti@2.4.2)(terser@5.27.0)(tsx@4.19.3)(yaml@2.7.0): - dependencies: - cac: 6.7.14 - debug: 4.4.1 - es-module-lexer: 1.7.0 - pathe: 2.0.3 - vite: 6.2.2(@types/node@24.3.0)(jiti@2.4.2)(terser@5.27.0)(tsx@4.19.3)(yaml@2.7.0) - transitivePeerDependencies: - - '@types/node' - - jiti - - less - - lightningcss - - sass - - sass-embedded - - stylus - - sugarss - - supports-color - - terser - - tsx - - yaml - vite@6.2.2(@types/node@20.19.25)(jiti@2.4.2)(terser@5.27.0)(tsx@4.19.3)(yaml@2.7.0): dependencies: esbuild: 0.25.5 @@ -15327,46 +15059,30 @@ snapshots: tsx: 4.19.3 yaml: 2.7.0 - vite@6.2.2(@types/node@24.3.0)(jiti@2.4.2)(terser@5.27.0)(tsx@4.19.3)(yaml@2.7.0): - dependencies: - esbuild: 0.25.5 - postcss: 8.5.3 - rollup: 4.36.0 - optionalDependencies: - '@types/node': 24.3.0 - fsevents: 2.3.3 - jiti: 2.4.2 - terser: 5.27.0 - tsx: 4.19.3 - yaml: 2.7.0 - - vitest@3.2.4(@types/debug@4.1.12)(@types/node@20.19.25)(jiti@2.4.2)(terser@5.27.0)(tsx@4.19.3)(yaml@2.7.0): + vitest@4.0.18(@opentelemetry/api@1.9.0)(@types/node@20.19.25)(jiti@2.4.2)(terser@5.27.0)(tsx@4.19.3)(yaml@2.7.0): dependencies: - '@types/chai': 5.2.2 - '@vitest/expect': 3.2.4 - '@vitest/mocker': 3.2.4(vite@6.2.2(@types/node@20.19.25)(jiti@2.4.2)(terser@5.27.0)(tsx@4.19.3)(yaml@2.7.0)) - '@vitest/pretty-format': 3.2.4 - '@vitest/runner': 3.2.4 - '@vitest/snapshot': 3.2.4 - '@vitest/spy': 3.2.4 - '@vitest/utils': 3.2.4 - chai: 5.2.0 - debug: 4.4.1 + '@vitest/expect': 4.0.18 + '@vitest/mocker': 4.0.18(vite@6.2.2(@types/node@20.19.25)(jiti@2.4.2)(terser@5.27.0)(tsx@4.19.3)(yaml@2.7.0)) + '@vitest/pretty-format': 4.0.18 + '@vitest/runner': 4.0.18 + '@vitest/snapshot': 4.0.18 + '@vitest/spy': 4.0.18 + '@vitest/utils': 4.0.18 + es-module-lexer: 1.7.0 expect-type: 1.2.2 - magic-string: 0.30.17 + magic-string: 0.30.21 + obug: 2.1.1 pathe: 2.0.3 - picomatch: 4.0.2 + picomatch: 4.0.3 std-env: 3.10.0 tinybench: 2.9.0 - tinyexec: 0.3.2 - tinyglobby: 0.2.14 - tinypool: 1.1.1 - tinyrainbow: 2.0.0 + tinyexec: 1.0.2 + tinyglobby: 0.2.15 + tinyrainbow: 3.0.3 vite: 6.2.2(@types/node@20.19.25)(jiti@2.4.2)(terser@5.27.0)(tsx@4.19.3)(yaml@2.7.0) - vite-node: 3.2.4(@types/node@20.19.25)(jiti@2.4.2)(terser@5.27.0)(tsx@4.19.3)(yaml@2.7.0) why-is-node-running: 2.3.0 optionalDependencies: - '@types/debug': 4.1.12 + '@opentelemetry/api': 1.9.0 '@types/node': 20.19.25 transitivePeerDependencies: - jiti @@ -15377,49 +15093,6 @@ snapshots: - sass-embedded - stylus - sugarss - - supports-color - - terser - - tsx - - yaml - - vitest@3.2.4(@types/debug@4.1.12)(@types/node@24.3.0)(jiti@2.4.2)(terser@5.27.0)(tsx@4.19.3)(yaml@2.7.0): - dependencies: - '@types/chai': 5.2.2 - '@vitest/expect': 3.2.4 - '@vitest/mocker': 3.2.4(vite@6.2.2(@types/node@24.3.0)(jiti@2.4.2)(terser@5.27.0)(tsx@4.19.3)(yaml@2.7.0)) - '@vitest/pretty-format': 3.2.4 - '@vitest/runner': 3.2.4 - '@vitest/snapshot': 3.2.4 - '@vitest/spy': 3.2.4 - '@vitest/utils': 3.2.4 - chai: 5.2.0 - debug: 4.4.1 - expect-type: 1.2.2 - magic-string: 0.30.17 - pathe: 2.0.3 - picomatch: 4.0.2 - std-env: 3.10.0 - tinybench: 2.9.0 - tinyexec: 0.3.2 - tinyglobby: 0.2.14 - tinypool: 1.1.1 - tinyrainbow: 2.0.0 - vite: 6.2.2(@types/node@24.3.0)(jiti@2.4.2)(terser@5.27.0)(tsx@4.19.3)(yaml@2.7.0) - vite-node: 3.2.4(@types/node@24.3.0)(jiti@2.4.2)(terser@5.27.0)(tsx@4.19.3)(yaml@2.7.0) - why-is-node-running: 2.3.0 - optionalDependencies: - '@types/debug': 4.1.12 - '@types/node': 24.3.0 - transitivePeerDependencies: - - jiti - - less - - lightningcss - - msw - - sass - - sass-embedded - - stylus - - sugarss - - supports-color - terser - tsx - yaml @@ -15567,12 +15240,6 @@ snapshots: string-width: 4.2.3 strip-ansi: 6.0.1 - wrap-ansi@8.1.0: - dependencies: - ansi-styles: 6.2.1 - string-width: 5.1.2 - strip-ansi: 7.1.0 - wrap-ansi@9.0.0: dependencies: ansi-styles: 6.2.1 diff --git a/vitest.config.ts b/vitest.config.ts new file mode 100644 index 000000000000..b23c14dc3deb --- /dev/null +++ b/vitest.config.ts @@ -0,0 +1,7 @@ +import { configDefaults, defineConfig } from 'vitest/config' + +export default defineConfig({ + test: { + exclude: [...configDefaults.exclude, '**/dist/**'], + }, +}) From c33e8f81706b49b0a786d951105eec5cacaa99fd Mon Sep 17 00:00:00 2001 From: jacek-prisma Date: Wed, 25 Feb 2026 13:52:01 +0000 Subject: [PATCH 2/3] fix: correct mariadb relationJoins check (#29246) [TML-1934](https://linear.app/prisma-company/issue/TML-1934/fix-broken-relationjoins-check-in-the-mariadb-adapter) Fixes https://github.com/prisma/prisma/issues/29235 ## Summary by CodeRabbit * **Tests** * Extended test matrix with MariaDB versions 8.1.0, 8.4.5, and 8.4.13. * **Bug Fixes** * Improved relation-joins compatibility detection for better MariaDB 8.x version support. --- packages/adapter-mariadb/src/mariadb.test.ts | 3 +++ packages/adapter-mariadb/src/mariadb.ts | 4 ++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/packages/adapter-mariadb/src/mariadb.test.ts b/packages/adapter-mariadb/src/mariadb.test.ts index 7c5e8559d022..1503729cc5e4 100644 --- a/packages/adapter-mariadb/src/mariadb.test.ts +++ b/packages/adapter-mariadb/src/mariadb.test.ts @@ -5,6 +5,9 @@ import { inferCapabilities, PrismaMariaDbAdapterFactory, rewriteConnectionString describe.each([ ['8.0.12', { supportsRelationJoins: false }], ['8.0.13', { supportsRelationJoins: true }], + ['8.1.0', { supportsRelationJoins: true }], + ['8.4.5', { supportsRelationJoins: true }], + ['8.4.13', { supportsRelationJoins: true }], ['11.4.7-MariaDB-ubu2404', { supportsRelationJoins: false }], ])('infer capabilities for %s', (version, capabilities) => { test(`inferCapabilities(${version})`, () => { diff --git a/packages/adapter-mariadb/src/mariadb.ts b/packages/adapter-mariadb/src/mariadb.ts index 3bacca68c47a..92ef04b232a7 100644 --- a/packages/adapter-mariadb/src/mariadb.ts +++ b/packages/adapter-mariadb/src/mariadb.ts @@ -255,8 +255,8 @@ export function inferCapabilities(version: unknown): Capabilities { // No relation-joins support for mysql < 8.0.13 or mariadb. const isMariaDB = suffix?.toLowerCase()?.includes('mariadb') ?? false - const supportsRelationJoins = !isMariaDB && (major > 8 || (major === 8 && minor >= 0 && patch >= 13)) - + const supportsRelationJoins = + !isMariaDB && (major > 8 || (major === 8 && (minor > 0 || (minor === 0 && patch >= 13)))) return { supportsRelationJoins } } From 4a48eccbc98e5e7845239b0c19af9f4ed0770013 Mon Sep 17 00:00:00 2001 From: Dulmandakh Date: Wed, 25 Feb 2026 22:59:22 +0800 Subject: [PATCH 3/3] chore: migrate debug to vitest (#29250) ## Summary by CodeRabbit * **Chores** * Migrated testing framework from Jest to Vitest * Removed Jest dependencies and configuration files * Updated test execution method --- packages/debug/.prettierignore | 1 - packages/debug/.prettierrc.yml | 5 -- packages/debug/jest.config.js | 4 -- packages/debug/package.json | 5 +- packages/debug/src/__tests__/basic.test.ts | 2 + .../src/__tests__/debug.extended.test.ts | 46 +++++++++---------- .../src/__tests__/debug.original.test.ts | 1 + .../debug/src/__tests__/env-disabled.test.ts | 2 + .../debug/src/__tests__/env-enabled.test.ts | 2 + pnpm-lock.yaml | 11 +---- 10 files changed, 32 insertions(+), 47 deletions(-) delete mode 100644 packages/debug/.prettierignore delete mode 100644 packages/debug/.prettierrc.yml delete mode 100644 packages/debug/jest.config.js diff --git a/packages/debug/.prettierignore b/packages/debug/.prettierignore deleted file mode 100644 index 53c37a16608c..000000000000 --- a/packages/debug/.prettierignore +++ /dev/null @@ -1 +0,0 @@ -dist \ No newline at end of file diff --git a/packages/debug/.prettierrc.yml b/packages/debug/.prettierrc.yml deleted file mode 100644 index f0beb50a2167..000000000000 --- a/packages/debug/.prettierrc.yml +++ /dev/null @@ -1,5 +0,0 @@ -tabWidth: 2 -trailingComma: all -singleQuote: true -semi: false -printWidth: 120 diff --git a/packages/debug/jest.config.js b/packages/debug/jest.config.js deleted file mode 100644 index a1a5fa911c5b..000000000000 --- a/packages/debug/jest.config.js +++ /dev/null @@ -1,4 +0,0 @@ -module.exports = { - preset: '../../helpers/test/presets/default.js', - prettierPath: '../../node_modules/prettier2', -} diff --git a/packages/debug/package.json b/packages/debug/package.json index a5087d1f66e1..822a71d7d7a8 100644 --- a/packages/debug/package.json +++ b/packages/debug/package.json @@ -27,17 +27,14 @@ }, "bugs": "https://github.com/prisma/prisma/issues", "devDependencies": { - "@types/jest": "29.5.14", "@types/node": "~20.19.24", - "jest": "29.7.0", - "jest-junit": "16.0.0", "kleur": "4.1.5", "typescript": "5.4.5" }, "scripts": { "dev": "DEV=true tsx helpers/build.ts", "build": "tsx helpers/build.ts", - "test": "jest", + "test": "vitest run", "prepublishOnly": "pnpm run build" }, "files": [ diff --git a/packages/debug/src/__tests__/basic.test.ts b/packages/debug/src/__tests__/basic.test.ts index 2ccc5b4b8373..7fcaaf7d8079 100644 --- a/packages/debug/src/__tests__/basic.test.ts +++ b/packages/debug/src/__tests__/basic.test.ts @@ -1,5 +1,7 @@ import { stripVTControlCharacters } from 'node:util' +import { describe, expect, test } from 'vitest' + import { Debug, getLogs } from '../index' import { removeISODate, sanitizeTestLogs } from '../util' diff --git a/packages/debug/src/__tests__/debug.extended.test.ts b/packages/debug/src/__tests__/debug.extended.test.ts index 9d2b8ebdaf94..af7d63102032 100644 --- a/packages/debug/src/__tests__/debug.extended.test.ts +++ b/packages/debug/src/__tests__/debug.extended.test.ts @@ -1,12 +1,13 @@ +import { afterEach, beforeEach, expect, test, vi } from 'vitest' + import * as useDebugImport from '../index' let Debug: typeof useDebugImport.default -const importDebug = async () => - await jest.isolateModulesAsync(async () => { - const mod = await import('../index') - Debug = mod.default - }) +const importDebug = async () => { + const mod = await import('../index') + Debug = mod.default +} beforeEach(() => { delete process.env.DEBUG @@ -18,12 +19,11 @@ beforeEach(() => { }) afterEach(() => { - jest.resetModules() - jest.restoreAllMocks() + vi.resetModules() }) test('with a namespace', async () => { - const consoleWarn = jest.spyOn(console, 'warn').mockImplementation() + const consoleWarn = vi.spyOn(console, 'warn') process.env.DEBUG = 'test' process.env.DEBUG_COLORS = 'false' @@ -37,7 +37,7 @@ test('with a namespace', async () => { }) test('with colors', async () => { - const consoleWarn = jest.spyOn(console, 'warn').mockImplementation() + const consoleWarn = vi.spyOn(console, 'warn') process.env.DEBUG = 'test2' process.env.FORCE_COLOR = 'true' @@ -48,12 +48,12 @@ test('with colors', async () => { debug('hello world') const consoleWarnParams = consoleWarn.mock.calls.map(mapper) - expect(consoleWarnParams[0][0]).toMatchInlineSnapshot(`"test2 hello world"`) + expect(consoleWarnParams[0][0]).toMatchInlineSnapshot(`"test2 hello world"`) expect(consoleWarnParams.length).toBe(1) }) test('with multiple wild cards', async () => { - const consoleWarn = jest.spyOn(console, 'warn').mockImplementation() + const consoleWarn = vi.spyOn(console, 'warn') process.env.DEBUG = 'test3:*:*:*' process.env.DEBUG_COLORS = 'false' @@ -67,7 +67,7 @@ test('with multiple wild cards', async () => { }) test('with multiple wild cards and filter', async () => { - const consoleWarn = jest.spyOn(console, 'warn').mockImplementation() + const consoleWarn = vi.spyOn(console, 'warn') process.env.DEBUG = 'test4:*:query-engine:*' process.env.DEBUG_COLORS = 'false' @@ -83,7 +83,7 @@ test('with multiple wild cards and filter', async () => { }) test('with trailing wild cards', async () => { - const consoleWarn = jest.spyOn(console, 'warn').mockImplementation() + const consoleWarn = vi.spyOn(console, 'warn') process.env.DEBUG = 'test5:*:*' process.env.DEBUG_COLORS = 'false' @@ -100,7 +100,7 @@ test('with trailing wild cards', async () => { }) test('with trailing wild cards and filter', async () => { - const consoleWarn = jest.spyOn(console, 'warn').mockImplementation() + const consoleWarn = vi.spyOn(console, 'warn') process.env.DEBUG = 'test6:client:*' process.env.DEBUG_COLORS = 'false' @@ -116,7 +116,7 @@ test('with trailing wild cards and filter', async () => { }) test('with multiple wild cards and exclusion filter', async () => { - const consoleWarn = jest.spyOn(console, 'warn').mockImplementation() + const consoleWarn = vi.spyOn(console, 'warn') process.env.DEBUG = 'test7:*:*,-test7:*:*:init' process.env.DEBUG_COLORS = 'false' @@ -132,7 +132,7 @@ test('with multiple wild cards and exclusion filter', async () => { }) test('with multiple wild cards and multiple exclusion filters', async () => { - const consoleWarn = jest.spyOn(console, 'warn').mockImplementation() + const consoleWarn = vi.spyOn(console, 'warn') process.env.DEBUG = 'test8:*:*,-test8:*:*:init,-test8:pool:*' process.env.DEBUG_COLORS = 'false' @@ -147,7 +147,7 @@ test('with multiple wild cards and multiple exclusion filters', async () => { }) test('truncation when no wildcard is used', async () => { - const consoleWarn = jest.spyOn(console, 'warn').mockImplementation() + const consoleWarn = vi.spyOn(console, 'warn') process.env.DEBUG = 'test9:client' process.env.DEBUG_COLORS = 'false' @@ -163,7 +163,7 @@ test('truncation when no wildcard is used', async () => { }) test('object serialization', async () => { - const consoleWarn = jest.spyOn(console, 'warn').mockImplementation() + const consoleWarn = vi.spyOn(console, 'warn') process.env.DEBUG = 'test10:client' process.env.DEBUG_COLORS = 'false' @@ -189,7 +189,7 @@ test('object serialization', async () => { }) test('millisecond timestamps', async () => { - const consoleWarn = jest.spyOn(console, 'warn').mockImplementation() + const consoleWarn = vi.spyOn(console, 'warn') process.env.DEBUG = 'test11:client' process.env.DEBUG_COLORS = 'false' @@ -204,7 +204,7 @@ test('millisecond timestamps', async () => { }) test('wildcard can be used like a regex at the end', async () => { - const consoleWarn = jest.spyOn(console, 'warn').mockImplementation() + const consoleWarn = vi.spyOn(console, 'warn') process.env.DEBUG = 'test12:client*' process.env.DEBUG_COLORS = 'false' @@ -222,7 +222,7 @@ test('wildcard can be used like a regex at the end', async () => { }) test('wildcard can be used like a regex in the middle', async () => { - const consoleWarn = jest.spyOn(console, 'warn').mockImplementation() + const consoleWarn = vi.spyOn(console, 'warn') process.env.DEBUG = 'test13:client*init' process.env.DEBUG_COLORS = 'false' @@ -238,7 +238,7 @@ test('wildcard can be used like a regex in the middle', async () => { }) test('can manage complex inclusions and exclusions', async () => { - const consoleWarn = jest.spyOn(console, 'warn').mockImplementation() + const consoleWarn = vi.spyOn(console, 'warn') // Accepted alternatives: // - Anything that starts with 'test14:', followed by any number of characters, then ':query-engine:', @@ -265,7 +265,7 @@ test('can manage complex inclusions and exclusions', async () => { }) test('regex characters do not mess with matching', async () => { - const consoleWarn = jest.spyOn(console, 'warn').mockImplementation() + const consoleWarn = vi.spyOn(console, 'warn') process.env.DEBUG = 'test15:\\w+' process.env.DEBUG_COLORS = 'false' diff --git a/packages/debug/src/__tests__/debug.original.test.ts b/packages/debug/src/__tests__/debug.original.test.ts index 364b84f9d257..debefd7556df 100644 --- a/packages/debug/src/__tests__/debug.original.test.ts +++ b/packages/debug/src/__tests__/debug.original.test.ts @@ -1,4 +1,5 @@ // copied from the original debug tests +import { describe, it } from 'vitest' import Debug from '../index' diff --git a/packages/debug/src/__tests__/env-disabled.test.ts b/packages/debug/src/__tests__/env-disabled.test.ts index 9dcf740ceeef..6bfe740f9e2c 100644 --- a/packages/debug/src/__tests__/env-disabled.test.ts +++ b/packages/debug/src/__tests__/env-disabled.test.ts @@ -1,5 +1,7 @@ import { stripVTControlCharacters } from 'node:util' +import { describe, expect, test } from 'vitest' + import { sanitizeTestLogs } from '../util' describe('debug', () => { diff --git a/packages/debug/src/__tests__/env-enabled.test.ts b/packages/debug/src/__tests__/env-enabled.test.ts index 37f0718f0948..87a40d45df93 100644 --- a/packages/debug/src/__tests__/env-enabled.test.ts +++ b/packages/debug/src/__tests__/env-enabled.test.ts @@ -1,5 +1,7 @@ import { stripVTControlCharacters } from 'node:util' +import { describe, expect, test } from 'vitest' + import { removeISODate, sanitizeTestLogs } from '../util' describe('debug', () => { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index b8a844acf299..1455db5521d1 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1175,18 +1175,9 @@ importers: packages/debug: devDependencies: - '@types/jest': - specifier: 29.5.14 - version: 29.5.14 '@types/node': specifier: ~20.19.24 version: 20.19.25 - jest: - specifier: 29.7.0 - version: 29.7.0(@types/node@20.19.25)(ts-node@10.9.2(@swc/core@1.11.5)(@types/node@20.19.25)(typescript@5.4.5)) - jest-junit: - specifier: 16.0.0 - version: 16.0.0 kleur: specifier: 4.1.5 version: 4.1.5 @@ -7726,7 +7717,7 @@ packages: tar@6.1.14: resolution: {integrity: sha512-piERznXu0U7/pW7cdSn7hjqySIVTYT6F76icmFk7ptU7dDYlXTm5r9A6K04R2vU3olYgoKeo1Cg3eeu5nhftAw==} engines: {node: '>=10'} - deprecated: Old versions of tar are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exhorbitant rates) by contacting i@izs.me + deprecated: Old versions of tar are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me tarn@3.0.2: resolution: {integrity: sha512-51LAVKUSZSVfI05vjPESNc5vwqqZpbXCsU+/+wxlOrUjk2SnFTt97v9ZgQrD4YmxYW1Px6w2KjaDitCfkvgxMQ==}