test(workspace): upgrade to vitest v3 (#1009)

* test(workspace): upgrade to vitest v3

Fixes #1007

* chore(standard-validator): add vitest type to `tsconfig.json`

* chore: update `yarn.lock`

* chore(zod-openapi): bump `typescript`

* chore(typia-validator): make it ESM

* ci(bun-transpiler): fix Bun to v1.1.32

---------

Co-authored-by: Yusuke Wada <yusuke@kamawada.com>
pull/1013/head
Jonathan Haines 2025-03-12 14:52:15 +11:00 committed by GitHub
parent 44efa2a048
commit 4d67af162f
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
68 changed files with 880 additions and 1363 deletions

View File

@ -18,6 +18,8 @@ jobs:
steps: steps:
- uses: actions/checkout@v4 - uses: actions/checkout@v4
- uses: oven-sh/setup-bun@v1 - uses: oven-sh/setup-bun@v1
with:
bun-version: 1.1.32
- run: yarn install --frozen-lockfile - run: yarn install --frozen-lockfile
- run: yarn build - run: yarn build
- run: yarn test - run: yarn test

View File

@ -59,13 +59,14 @@
"@changesets/changelog-github": "^0.4.8", "@changesets/changelog-github": "^0.4.8",
"@changesets/cli": "^2.26.0", "@changesets/cli": "^2.26.0",
"@cloudflare/workers-types": "^4.20230307.0", "@cloudflare/workers-types": "^4.20230307.0",
"@types/node": "^20.10.4", "@types/node": "^20.14.8",
"@typescript-eslint/eslint-plugin": "^8.7.0", "@typescript-eslint/eslint-plugin": "^8.7.0",
"@typescript-eslint/parser": "^8.7.0", "@typescript-eslint/parser": "^8.7.0",
"eslint": "^9.17.0", "eslint": "^9.17.0",
"npm-run-all2": "^6.2.2", "npm-run-all2": "^6.2.2",
"prettier": "^2.7.1", "prettier": "^2.7.1",
"typescript": "^5.2.2" "typescript": "^5.2.2",
"vitest": "^3.0.8"
}, },
"packageManager": "yarn@4.0.2" "packageManager": "yarn@4.0.2"
} }

View File

@ -44,6 +44,6 @@
"ajv": ">=8.12.0", "ajv": ">=8.12.0",
"hono": "^4.4.12", "hono": "^4.4.12",
"tsup": "^8.1.0", "tsup": "^8.1.0",
"vitest": "^1.6.0" "vitest": "^3.0.8"
} }
} }

View File

@ -1,7 +1,6 @@
/// <reference types="vitest" /> import { defineProject } from 'vitest/config'
import { defineConfig } from 'vitest/config'
export default defineConfig({ export default defineProject({
test: { test: {
globals: true, globals: true,
}, },

View File

@ -38,6 +38,6 @@
"arktype": "^2.0.0-dev.14", "arktype": "^2.0.0-dev.14",
"hono": "^3.11.7", "hono": "^3.11.7",
"tsup": "^8.0.1", "tsup": "^8.0.1",
"vitest": "^1.0.4" "vitest": "^3.0.8"
} }
} }

View File

@ -1,7 +1,6 @@
/// <reference types="vitest" /> import { defineProject } from 'vitest/config'
import { defineConfig } from 'vitest/config'
export default defineConfig({ export default defineProject({
test: { test: {
globals: true, globals: true,
}, },

View File

@ -63,7 +63,7 @@
"react": "^18.2.0", "react": "^18.2.0",
"tsup": "^8.0.1", "tsup": "^8.0.1",
"typescript": "^5.3.3", "typescript": "^5.3.3",
"vitest": "^1.0.4" "vitest": "^3.0.8"
}, },
"engines": { "engines": {
"node": ">=18.4.0" "node": ">=18.4.0"

View File

@ -1,8 +0,0 @@
/// <reference types="vitest" />
import { defineConfig } from 'vitest/config'
export default defineConfig({
test: {
globals: true
},
})

View File

@ -0,0 +1,7 @@
import { defineProject } from 'vitest/config'
export default defineProject({
test: {
globals: true,
},
})

View File

@ -37,8 +37,7 @@
"devDependencies": { "devDependencies": {
"@types/bun": "^1.0.0", "@types/bun": "^1.0.0",
"hono": "^3.11.7", "hono": "^3.11.7",
"tsup": "^8.0.1", "tsup": "^8.0.1"
"vitest": "^1.0.4"
}, },
"engines": { "engines": {
"node": ">=18.14.1" "node": ">=18.14.1"

View File

@ -56,6 +56,6 @@
"hono": "^4.5.11", "hono": "^4.5.11",
"tsup": "^8.1.0", "tsup": "^8.1.0",
"typescript": "^5.5.3", "typescript": "^5.5.3",
"vitest": "^2.0.1" "vitest": "^3.0.8"
} }
} }

View File

@ -1,8 +1,10 @@
/// <reference types="vitest" /> import { defineProject } from 'vitest/config'
import { defineConfig } from 'vitest/config'
export default defineConfig({ export default defineProject({
test: { test: {
globals: true, globals: true,
// See https://github.com/vitest-dev/vitest/issues/5277
pool: 'forks',
setupFiles: ['./vitest.setup.ts'],
}, },
}) })

View File

@ -0,0 +1 @@
process.chdir(import.meta.dirname)

View File

@ -37,7 +37,7 @@
"rimraf": "^5.0.5", "rimraf": "^5.0.5",
"tsup": "^8.3.5", "tsup": "^8.3.5",
"typescript": "^5.3.3", "typescript": "^5.3.3",
"vitest": "^1.4.0" "vitest": "^3.0.8"
}, },
"dependencies": { "dependencies": {
"class-transformer": "^0.5.1", "class-transformer": "^0.5.1",

View File

@ -1,6 +1,6 @@
import { defineConfig } from 'vitest/config' import { defineProject } from 'vitest/config'
export default defineConfig({ export default defineProject({
test: { test: {
globals: true, globals: true,
typecheck: { typecheck: {

View File

@ -48,7 +48,7 @@
"node-fetch-native": "^1.4.0", "node-fetch-native": "^1.4.0",
"react": "^18.2.0", "react": "^18.2.0",
"tsup": "^8.0.1", "tsup": "^8.0.1",
"vitest": "^2.1.8" "vitest": "^3.0.8"
}, },
"engines": { "engines": {
"node": ">=16.x.x" "node": ">=16.x.x"

View File

@ -1,6 +1,6 @@
import { defineConfig } from 'vitest/config' import { defineProject } from 'vitest/config'
export default defineConfig({ export default defineProject({
test: { test: {
globals: true, globals: true,
restoreMocks: true, restoreMocks: true,

View File

@ -42,6 +42,6 @@
"devDependencies": { "devDependencies": {
"hono": "^4.4.12", "hono": "^4.4.12",
"tsup": "^8.1.0", "tsup": "^8.1.0",
"vitest": "^1.6.0" "vitest": "^3.0.8"
} }
} }

View File

@ -1,7 +1,6 @@
/// <reference types="vitest" /> import { defineProject } from 'vitest/config'
import { defineConfig } from 'vitest/config'
export default defineConfig({ export default defineProject({
test: { test: {
globals: true, globals: true,
}, },

View File

@ -49,7 +49,7 @@
"hono": "^4.5.1", "hono": "^4.5.1",
"tsup": "^8.2.3", "tsup": "^8.2.3",
"valibot": "^0.36.0", "valibot": "^0.36.0",
"vitest": "^2.0.4", "vitest": "^3.0.8",
"yup": "^1.4.0", "yup": "^1.4.0",
"zod": "^3.23.8" "zod": "^3.23.8"
} }

View File

@ -1,7 +1,6 @@
/// <reference types="vitest" /> import { defineProject } from 'vitest/config'
import { defineConfig } from 'vitest/config'
export default defineConfig({ export default defineProject({
test: { test: {
globals: true, globals: true,
}, },

View File

@ -46,6 +46,6 @@
"hono": "^4.4.13", "hono": "^4.4.13",
"tsup": "^8.1.0", "tsup": "^8.1.0",
"typescript": "^5.5.3", "typescript": "^5.5.3",
"vitest": "^2.0.1" "vitest": "^3.0.8"
} }
} }

View File

@ -1,7 +1,6 @@
/// <reference types="vitest" /> import { defineProject } from 'vitest/config'
import { defineConfig } from 'vitest/config'
export default defineConfig({ export default defineProject({
test: { test: {
globals: true, globals: true,
}, },

View File

@ -58,7 +58,7 @@
"esbuild-wasm": "^0.19.5", "esbuild-wasm": "^0.19.5",
"hono": "^3.11.7", "hono": "^3.11.7",
"tsup": "^8.0.1", "tsup": "^8.0.1",
"vitest": "^2.1.8" "vitest": "^3.0.8"
}, },
"engines": { "engines": {
"node": ">=18.14.1" "node": ">=18.14.1"

View File

@ -38,7 +38,7 @@
"devDependencies": { "devDependencies": {
"hono": "^4.3.6", "hono": "^4.3.6",
"tsup": "^8.0.1", "tsup": "^8.0.1",
"vitest": "^1.6.0" "vitest": "^3.0.8"
}, },
"engines": { "engines": {
"node": ">=16.0.0" "node": ">=16.0.0"

View File

@ -1,7 +1,6 @@
/// <reference types="vitest" /> import { defineProject } from 'vitest/config'
import { defineConfig } from 'vitest/config'
export default defineConfig({ export default defineProject({
test: { test: {
globals: true, globals: true,
}, },

View File

@ -55,6 +55,6 @@
"prettier": "^3.2.5", "prettier": "^3.2.5",
"tsup": "^8.0.2", "tsup": "^8.0.2",
"typescript": "^5.3.3", "typescript": "^5.3.3",
"vitest": "^1.5.0" "vitest": "^3.0.8"
} }
} }

View File

@ -0,0 +1,7 @@
import { defineProject } from 'vitest/config'
export default defineProject({
test: {
globals: true,
},
})

View File

@ -45,7 +45,7 @@
"prettier": "^2.7.1", "prettier": "^2.7.1",
"rimraf": "^3.0.2", "rimraf": "^3.0.2",
"typescript": "^4.7.4", "typescript": "^4.7.4",
"vitest": "^2.1.8" "vitest": "^3.0.8"
}, },
"engines": { "engines": {
"node": ">=16.0.0" "node": ">=16.0.0"

View File

@ -1,6 +1,6 @@
import { defaultExclude, defineConfig } from 'vitest/config' import { defaultExclude, defineProject } from 'vitest/config'
export default defineConfig({ export default defineProject({
test: { test: {
exclude: [...defaultExclude, 'bun_test'], exclude: [...defaultExclude, 'bun_test'],
globals: true, globals: true,

View File

@ -42,6 +42,6 @@
"devDependencies": { "devDependencies": {
"hono": "^4.4.12", "hono": "^4.4.12",
"tsup": "^8.1.0", "tsup": "^8.1.0",
"vitest": "^1.6.0" "vitest": "^3.0.8"
} }
} }

View File

@ -1,7 +1,6 @@
/// <reference types="vitest" /> import { defineProject } from 'vitest/config'
import { defineConfig } from 'vitest/config'
export default defineConfig({ export default defineProject({
test: { test: {
globals: true, globals: true,
}, },

View File

@ -29,7 +29,7 @@
"devDependencies": { "devDependencies": {
"hono": "^3.11.7", "hono": "^3.11.7",
"rimraf": "^5.0.5", "rimraf": "^5.0.5",
"vitest": "^2.1.8" "vitest": "^3.0.8"
}, },
"dependencies": { "dependencies": {
"@medley/router": "^0.2.1" "@medley/router": "^0.2.1"

View File

@ -1,6 +1,6 @@
import { defineConfig } from 'vitest/config' import { defineProject } from 'vitest/config'
export default defineConfig({ export default defineProject({
test: { test: {
globals: true, globals: true,
}, },

View File

@ -36,7 +36,7 @@
"@types/ws": "^8", "@types/ws": "^8",
"hono": "^4.6.0", "hono": "^4.6.0",
"tsup": "^8.0.1", "tsup": "^8.0.1",
"vitest": "^1.0.4" "vitest": "^3.0.8"
}, },
"dependencies": { "dependencies": {
"ws": "^8.17.0" "ws": "^8.17.0"

View File

@ -1,7 +1,6 @@
/// <reference types="vitest" /> import { defineProject } from 'vitest/config'
import { defineConfig } from 'vitest/config'
export default defineConfig({ export default defineProject({
test: { test: {
globals: true, globals: true,
}, },

View File

@ -118,7 +118,7 @@
"publint": "^0.2.6", "publint": "^0.2.6",
"tsup": "^8.0.0", "tsup": "^8.0.0",
"typescript": "^5.2.2", "typescript": "^5.2.2",
"vitest": "^2.1.8" "vitest": "^3.0.8"
}, },
"engines": { "engines": {
"node": ">=18.4.0" "node": ">=18.4.0"

View File

@ -1,6 +1,6 @@
import { defineConfig } from 'vitest/config' import { defineProject } from 'vitest/config'
export default defineConfig({ export default defineProject({
test: { test: {
globals: true, globals: true,
}, },

View File

@ -37,12 +37,12 @@
}, },
"devDependencies": { "devDependencies": {
"@types/jsonwebtoken": "^9.0.5", "@types/jsonwebtoken": "^9.0.5",
"@vitest/coverage-v8": "^2.1.8", "@vitest/coverage-v8": "^3.0.8",
"hono": "^4.0.1", "hono": "^4.0.1",
"jsonwebtoken": "^9.0.2", "jsonwebtoken": "^9.0.2",
"tsup": "^8.0.1", "tsup": "^8.0.1",
"typescript": "^5.3.3", "typescript": "^5.3.3",
"vitest": "^2.1.8" "vitest": "^3.0.8"
}, },
"dependencies": { "dependencies": {
"oauth4webapi": "^2.6.0" "oauth4webapi": "^2.6.0"

View File

@ -1,6 +1,6 @@
import { defineConfig } from 'vitest/config' import { defineProject } from 'vitest/config'
export default defineConfig({ export default defineProject({
test: { test: {
globals: true, globals: true,
restoreMocks: true, restoreMocks: true,

View File

@ -39,6 +39,6 @@
"hono": "^4.2.7", "hono": "^4.2.7",
"prom-client": "^15.0.0", "prom-client": "^15.0.0",
"tsup": "^8.0.1", "tsup": "^8.0.1",
"vitest": "^1.0.4" "vitest": "^3.0.8"
} }
} }

View File

@ -1,7 +1,6 @@
/// <reference types="vitest" /> import { defineProject } from 'vitest/config'
import { defineConfig } from 'vitest/config'
export default defineConfig({ export default defineProject({
test: { test: {
globals: true, globals: true,
}, },

View File

@ -35,7 +35,7 @@
"hono": "*" "hono": "*"
}, },
"devDependencies": { "devDependencies": {
"@cloudflare/vitest-pool-workers": "^0.1.2", "@cloudflare/vitest-pool-workers": "^0.7.6",
"@types/react": "^18", "@types/react": "^18",
"@types/react-dom": "^18.2.17", "@types/react-dom": "^18.2.17",
"esbuild": "^0.20.2", "esbuild": "^0.20.2",
@ -43,7 +43,7 @@
"react": "^18.2.0", "react": "^18.2.0",
"react-dom": "^18.2.0", "react-dom": "^18.2.0",
"tsup": "^8.0.1", "tsup": "^8.0.1",
"vitest": "1.3.0" "vitest": "^3.0.8"
}, },
"engines": { "engines": {
"node": ">=18" "node": ">=18"

View File

@ -55,6 +55,6 @@
"publint": "^0.2.7", "publint": "^0.2.7",
"tsup": "^8.0.2", "tsup": "^8.0.2",
"typescript": "^4.7.4", "typescript": "^4.7.4",
"vitest": "^2.1.8" "vitest": "^3.0.8"
} }
} }

View File

@ -1,6 +1,6 @@
import { defineConfig } from 'vitest/config' import { defineProject } from 'vitest/config'
export default defineConfig({ export default defineProject({
test: { test: {
globals: true, globals: true,
restoreMocks: true, restoreMocks: true,

View File

@ -45,7 +45,7 @@
"tsup": "^8.1.0", "tsup": "^8.1.0",
"typescript": "^5.7.3", "typescript": "^5.7.3",
"valibot": "^1.0.0-beta.9", "valibot": "^1.0.0-beta.9",
"vitest": "^1.4.0", "vitest": "^3.0.8",
"zod": "^3.24.0" "zod": "^3.24.0"
} }
} }

View File

@ -2,6 +2,9 @@
"extends": "../../tsconfig.json", "extends": "../../tsconfig.json",
"compilerOptions": { "compilerOptions": {
"rootDir": "./", "rootDir": "./",
"types": [
"vitest/globals"
]
}, },
"include": [ "include": [
"src/**/*.ts", "src/**/*.ts",

View File

@ -1,7 +1,6 @@
/// <reference types="vitest" /> import { defineProject } from 'vitest/config'
import { defineConfig } from 'vitest/config'
export default defineConfig({ export default defineProject({
test: { test: {
globals: true, globals: true,
}, },

View File

@ -43,6 +43,6 @@
"devDependencies": { "devDependencies": {
"hono": "^3.11.7", "hono": "^3.11.7",
"tsup": "^7.2.0", "tsup": "^7.2.0",
"vitest": "^2.1.8" "vitest": "^3.0.8"
} }
} }

View File

@ -1,7 +1,6 @@
/// <reference types="vitest" /> import { defineProject } from 'vitest/config'
import { defineConfig } from 'vitest/config'
export default defineConfig({ export default defineProject({
test: { test: {
globals: true, globals: true,
}, },

View File

@ -46,6 +46,6 @@
"publint": "^0.2.2", "publint": "^0.2.2",
"tsup": "^7.2.0", "tsup": "^7.2.0",
"vite": "^4.4.9", "vite": "^4.4.9",
"vitest": "^2.1.8" "vitest": "^3.0.8"
} }
} }

View File

@ -1,6 +1,6 @@
import { defineConfig } from 'vite' import { defineProject } from 'vitest/config'
export default defineConfig({ export default defineProject({
test: { test: {
globals: true, globals: true,
}, },

View File

@ -34,7 +34,7 @@
"@trpc/server": "^10.10.0 || >11.0.0-rc", "@trpc/server": "^10.10.0 || >11.0.0-rc",
"hono": "^4.3.6", "hono": "^4.3.6",
"rimraf": "^5.0.5", "rimraf": "^5.0.5",
"vitest": "^2.1.8", "vitest": "^3.0.8",
"zod": "^3.20.2" "zod": "^3.20.2"
}, },
"engines": { "engines": {

View File

@ -1,6 +1,6 @@
import { defineConfig } from 'vitest/config' import { defineProject } from 'vitest/config'
export default defineConfig({ export default defineProject({
test: { test: {
globals: true, globals: true,
}, },

View File

@ -46,6 +46,6 @@
"reflect-metadata": "^0.2.2", "reflect-metadata": "^0.2.2",
"tsup": "^8.1.0", "tsup": "^8.1.0",
"tsyringe": "^4.8.0", "tsyringe": "^4.8.0",
"vitest": "^1.6.0" "vitest": "^3.0.8"
} }
} }

View File

@ -1,7 +1,6 @@
/// <reference types="vitest" /> import { defineProject } from 'vitest/config'
import { defineConfig } from 'vitest/config'
export default defineConfig({ export default defineProject({
test: { test: {
globals: true, globals: true,
}, },

View File

@ -37,6 +37,6 @@
"@sinclair/typebox": "^0.31.15", "@sinclair/typebox": "^0.31.15",
"hono": "^3.11.7", "hono": "^3.11.7",
"rimraf": "^5.0.5", "rimraf": "^5.0.5",
"vitest": "^2.1.8" "vitest": "^3.0.8"
} }
} }

View File

@ -1,6 +1,6 @@
import { defineConfig } from 'vitest/config' import { defineProject } from 'vitest/config'
export default defineConfig({ export default defineProject({
test: { test: {
globals: true, globals: true,
}, },

View File

@ -2,6 +2,7 @@
"name": "@hono/typia-validator", "name": "@hono/typia-validator",
"version": "0.1.0", "version": "0.1.0",
"description": "Validator middleware using Typia", "description": "Validator middleware using Typia",
"type": "module",
"main": "dist/cjs/index.js", "main": "dist/cjs/index.js",
"module": "dist/esm/index.js", "module": "dist/esm/index.js",
"types": "dist/esm/index.d.ts", "types": "dist/esm/index.d.ts",
@ -50,6 +51,6 @@
"rimraf": "^5.0.5", "rimraf": "^5.0.5",
"typescript": "^5.4.0", "typescript": "^5.4.0",
"typia": "^7.3.0", "typia": "^7.3.0",
"vitest": "^2.1.8" "vitest": "^3.0.8"
} }
} }

View File

@ -1,7 +1,7 @@
import UnpluginTypia from '@ryoppippi/unplugin-typia/vite' import UnpluginTypia from '@ryoppippi/unplugin-typia/vite'
import { defineConfig } from 'vitest/config' import { defineProject } from 'vitest/config'
export default defineConfig({ export default defineProject({
plugins: [ plugins: [
UnpluginTypia({ UnpluginTypia({
tsconfig: './tsconfig.json', tsconfig: './tsconfig.json',

View File

@ -38,6 +38,6 @@
"hono": "^4.5.1", "hono": "^4.5.1",
"tsup": "^8.3.0", "tsup": "^8.3.0",
"valibot": "^1.0.0-beta.5", "valibot": "^1.0.0-beta.5",
"vitest": "^2.1.8" "vitest": "^3.0.8"
} }
} }

View File

@ -1,6 +1,6 @@
import { defineConfig } from 'vitest/config' import { defineProject } from 'vitest/config'
export default defineConfig({ export default defineProject({
test: { test: {
globals: true, globals: true,
}, },

View File

@ -44,8 +44,8 @@
"@cloudflare/workers-types": "^4.20240117.0", "@cloudflare/workers-types": "^4.20240117.0",
"hono": "^4.6.10", "hono": "^4.6.10",
"tsup": "^8.0.1", "tsup": "^8.0.1",
"typescript": "^5.4.4", "typescript": "^5.8.2",
"vitest": "^1.4.0", "vitest": "^3.0.8",
"yaml": "^2.4.3", "yaml": "^2.4.3",
"zod": "^3.22.1" "zod": "^3.22.1"
}, },

View File

@ -1,6 +1,6 @@
import { defineConfig } from 'vitest/config' import { defineProject } from 'vitest/config'
export default defineConfig({ export default defineProject({
test: { test: {
globals: true, globals: true,
typecheck: { typecheck: {

View File

@ -41,7 +41,7 @@
"publint": "^0.2.7", "publint": "^0.2.7",
"tsup": "^8.1.0", "tsup": "^8.1.0",
"typescript": "^5.3.3", "typescript": "^5.3.3",
"vitest": "^1.4.0", "vitest": "^3.0.8",
"zod": "^3.22.4" "zod": "^3.22.4"
} }
} }

View File

@ -1,7 +1,6 @@
/// <reference types="vitest" /> import { defineProject } from 'vitest/config'
import { defineConfig } from 'vitest/config'
export default defineConfig({ export default defineProject({
test: { test: {
globals: true, globals: true,
}, },

View File

@ -0,0 +1 @@
export default ['packages/*', '!packages/bun-transpiler']

2012
yarn.lock

File diff suppressed because it is too large Load Diff