From efb68f9a675e234524a85103d1339e975ffbc5af Mon Sep 17 00:00:00 2001 From: MK Date: Thu, 15 Jan 2026 22:05:39 +0800 Subject: [PATCH 01/33] chore: use vite+ --- .oxfmtrc.json | 18 - .oxlintrc.json | 128 --- CLAUDE.md | 53 ++ package.json | 32 +- pnpm-lock.yaml | 746 ++++++++++++------ ...pClient.connect.rejectUnauthorized.test.ts | 2 +- test/HttpClient.events.test.ts | 2 +- test/HttpClient.test.ts | 2 +- test/diagnostics_channel.test.ts | 2 +- ...etch-head-request-should-keepalive.test.ts | 2 +- test/fetch.test.ts | 2 +- test/formData-with-BufferStream.test.ts | 2 +- test/head-request-should-keepalive.test.ts | 2 +- test/index.test.ts | 2 +- test/keep-alive-header.test.ts | 2 +- test/non-ascii-request-header.test.ts | 2 +- test/options.auth.test.ts | 2 +- test/options.compressed.test.ts | 2 +- test/options.content.test.ts | 2 +- test/options.data.test.ts | 2 +- test/options.dataType.test.ts | 2 +- test/options.digestAuth.test.ts | 2 +- test/options.dispatcher.test.ts | 2 +- test/options.files.test.ts | 2 +- test/options.fixJSONCtlChars.test.ts | 2 +- test/options.followRedirect.test.ts | 2 +- test/options.gzip.test.ts | 2 +- test/options.headers.test.ts | 2 +- test/options.method.test.ts | 2 +- test/options.opaque.test.ts | 2 +- test/options.reset.test.ts | 2 +- test/options.retry.test.ts | 2 +- test/options.signal.test.ts | 2 +- test/options.socketErrorRetry.test.ts | 2 +- test/options.socketPath.test.ts | 2 +- test/options.stream.test.ts | 2 +- test/options.streaming.test.ts | 2 +- test/options.timeout.test.ts | 2 +- test/options.timing.test.ts | 2 +- test/options.type.test.ts | 2 +- test/options.writeStream.test.ts | 2 +- test/response-charset-gbk.test.ts | 2 +- test/urllib.bench.ts | 2 +- test/urllib.options.allowH2.test.ts | 2 +- ...b.options.rejectUnauthorized-false.test.ts | 2 +- test/user-agent.test.ts | 2 +- test/utils.test.ts | 2 +- vite.config.ts | 148 +++- 48 files changed, 749 insertions(+), 460 deletions(-) delete mode 100644 .oxfmtrc.json delete mode 100644 .oxlintrc.json diff --git a/.oxfmtrc.json b/.oxfmtrc.json deleted file mode 100644 index 6685a6be..00000000 --- a/.oxfmtrc.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "$schema": "./node_modules/oxfmt/configuration_schema.json", - "printWidth": 120, - "singleQuote": true, - "ignorePatterns": ["CHANGELOG.md", "pnpm-lock.yaml"], - "experimentalSortImports": { - "groups": [ - ["type-import"], - ["type-builtin", "value-builtin"], - ["type-external", "value-external", "type-internal", "value-internal"], - ["type-parent", "type-sibling", "type-index", "value-parent", "value-sibling", "value-index"], - ["ts-equals-import"], - ["unknown"] - ], - "newlinesBetween": true, - "order": "asc" - } -} diff --git a/.oxlintrc.json b/.oxlintrc.json deleted file mode 100644 index 346b294e..00000000 --- a/.oxlintrc.json +++ /dev/null @@ -1,128 +0,0 @@ -{ - "$schema": "./node_modules/oxlint/configuration_schema.json", - "env": { - "node": true - }, - "extends": ["./node_modules/@eggjs/oxlint-config/.oxlintrc.json"], - "categories": { - "correctness": "allow", - "suspicious": "allow", - "pedantic": "allow", - "style": "allow", - "nursery": "allow", - "restriction": "allow", - "perf": "allow" - }, - "rules": { - "no-extend-native": "warn", - // Disable TypeScript rules - "typescript/explicit-function-return-type": "allow", - "typescript/consistent-type-imports": "allow", - "typescript/consistent-type-definitions": "allow", - "typescript/consistent-indexed-object-style": "allow", - "typescript/no-inferrable-types": "allow", - "typescript/array-type": "allow", - "typescript/no-non-null-assertion": "allow", - "typescript/no-explicit-any": "allow", - "typescript/no-import-type-side-effects": "allow", - "typescript/no-dynamic-delete": "allow", - "typescript/prefer-ts-expect-error": "allow", - "typescript/ban-ts-comment": "allow", - "typescript/prefer-enum-initializers": "allow", - "typescript/explicit-module-boundary-types": "allow", - // Disable import rules - "import/exports-last": "allow", - "import/max-dependencies": "allow", - "import/no-cycle": "allow", - "import/no-anonymous-default-export": "allow", - "import/no-namespace": "allow", - "import/named": "allow", - "import/export": "allow", - "import/no-default-export": "allow", - "import/unambiguous": "allow", - "import/group-exports": "allow", - "import/extensions": "allow", - "import/consistent-type-specifier-style": "allow", - "import/prefer-default-export": "allow", - "import/no-named-as-default-member": "allow", - // Disable unicorn rules - "unicorn/error-message": "allow", - "unicorn/no-null": "allow", - "unicorn/filename-case": "allow", - "unicorn/prefer-structured-clone": "allow", - "unicorn/prefer-logical-operator-over-ternary": "allow", - "unicorn/prefer-number-properties": "allow", - "unicorn/prefer-array-some": "allow", - "unicorn/prefer-string-slice": "allow", - "unicorn/throw-new-error": "allow", - "unicorn/catch-error-name": "allow", - "unicorn/prefer-spread": "allow", - "unicorn/numeric-separators-style": "allow", - "unicorn/prefer-string-raw": "allow", - "unicorn/text-encoding-identifier-case": "allow", - "unicorn/no-array-for-each": "allow", - "unicorn/explicit-length-check": "allow", - "unicorn/no-lonely-if": "allow", - "unicorn/no-useless-undefined": "allow", - "unicorn/prefer-date-now": "allow", - "unicorn/no-static-only-class": "allow", - "unicorn/no-typeof-undefined": "allow", - "unicorn/prefer-negative-index": "allow", - "unicorn/no-anonymous-default-export": "allow", - "unicorn/consistent-assert": "allow", - // Disable promise rules - "promise/no-return-wrap": "allow", - "promise/param-names": "allow", - "promise/prefer-await-to-callbacks": "allow", - "promise/prefer-await-to-then": "allow", - "promise/prefer-catch": "allow", - "promise/no-return-in-finally": "allow", - "promise/avoid-new": "allow", - // Disable other ESLint rules - "constructor-super": "allow", - "getter-return": "allow", - "no-undef": "allow", - "no-unreachable": "allow", - "no-var": "allow", - "no-eq-null": "allow", - "no-await-in-loop": "allow", - "eqeqeq": "allow", - "init-declarations": "allow", - "curly": "allow", - "no-ternary": "allow", - "max-params": "allow", - "no-await-expression-member": "allow", - "no-continue": "allow", - "guard-for-in": "allow", - "func-style": "allow", - "sort-imports": "allow", - "yoda": "allow", - "sort-keys": "allow", - "no-magic-numbers": "allow", - "no-duplicate-imports": "allow", - "no-multi-assign": "allow", - "func-names": "allow", - "default-param-last": "allow", - "prefer-object-spread": "allow", - "no-undefined": "allow", - "no-plusplus": "allow", - "no-console": "allow", - "no-extraneous-class": "allow", - "no-empty-function": "allow", - "max-depth": "allow", - "max-lines-per-function": "allow", - "no-lonely-if": "allow", - "max-lines": "allow", - "require-await": "allow", - "max-nested-callbacks": "allow", - "max-classes-per-file": "allow", - "radix": "allow", - "no-negated-condition": "allow", - "no-else-return": "allow", - "no-throw-literal": "allow", - "id-length": "allow", - "arrow-body-style": "allow", - "prefer-destructuring": "allow" - }, - "ignorePatterns": ["test/fixtures/ts*"] -} diff --git a/CLAUDE.md b/CLAUDE.md index 474c2f10..5267d89f 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -82,3 +82,56 @@ Tests use Vitest with: - Request/response events published via `diagnostics_channel` (`urllib:request`, `urllib:response`) - Streaming requests disable retry/redirect functionality - User-Agent header: `node-urllib/{version} Node.js/{version} ({platform}; {arch})` + + +# Using Vite+, the Unified Toolchain for the Web + +This project is using Vite+, a modern toolchain built on top of Vite, Rolldown, Vitest, tsdown, Oxlint, and Oxfmt. Vite+ wraps these tools and package manager commands in a single, global CLI called `vite`. Vite+ is distinct from Vite, but it invokes Vite through `vite dev` and `vite build`. + +## Vite+ Workflow + +`vite` is a global binary that handles the full development lifecycle. Run `vite help` to print a list of commands and `vite --help` for information about a specific command. + +### Vite+ Commands + +- dev - Run the development server +- build - Build for production +- lint - Lint code +- test - Run tests +- fmt - Format code +- lib - Build library +- new - Create a new monorepo package (in-project) or a new project (global) +- run - Run tasks from `package.json` scripts + +These commands map to their corresponding tools. For example, `vite dev --port 3000` runs Vite's dev server and works the same as Vite. `vite test` runs JavaScript tests through the bundled Vitest. The versions of individual tools can be checked using `vite --version`. For example, `vite lint --version` prints the bundled Oxlint version, and `vite test --version` prints the bundled Vitest version. This is useful when researching documentation, features, and bugs. + +### Package Manager Commands + +Vite+ automatically detects and wraps the underlying package manager such as pnpm, npm, or Yarn through the `packageManager` field in `package.json` or package manager-specific lockfiles. + +- install - Install all dependencies, or add packages if package names are provided +- add - Add packages to dependencies +- remove - Remove packages from dependencies +- dlx - Execute a package binary without installing it as a dependency +- info - View package information from the registry, including latest versions +- link - Link packages for local development +- outdated - Check for outdated packages +- pm - Forward a command to the package manager +- unlink - Unlink packages +- update - Update packages to their latest versions +- why - Show why a package is installed + +## Common Pitfalls + +- **Using the package manager directly:** Do not use pnpm, npm, or Yarn directly. Vite+ can handle all package manager operations. +- **Always use Vite commands to run tools:** Don't attempt to run `vite vitest` or `vite oxlint`. They do not exist. Use `vite test` and `vite lint` instead. +- **Running scripts:** Vite+ commands take precedence over `package.json` scripts. If there is a `test` script defined in `scripts` that conflicts with the built-in `vite test` command, run it using `vite run test`. +- **Do not install Vitest, Oxlint, Oxfmt, or tsdown directly:** Vite+ wraps these tools. They must not be installed directly. You cannot upgrade these tools by installing their latest versions. Always use Vite+ commands. +- **Import JavaScript modules from `vite-plus`:** Instead of importing from `vite` or `vitest`, all modules should be imported from the project's `vite-plus` dependency. For example, `import { defineConfig } from 'vite-plus';` or `import { expect, test, vi } from 'vite-plus/test';`. You must not install `vitest` to import test utilities. +- **Type-Aware Linting:** There is no need to install `oxlint-tsgolint`, `vite lint --type-aware` works out of the box. + +## Review Checklist for Agents + +- [ ] Run `vite install` after pulling remote changes and before getting started. +- [ ] Run `vite lint`, `vite fmt`, and `vite test` to validate changes. + diff --git a/package.json b/package.json index 633f5893..b1cef16a 100644 --- a/package.json +++ b/package.json @@ -45,10 +45,10 @@ "tag": "latest" }, "scripts": { - "lint": "oxlint src test --type-aware --type-check", - "fmt": "oxfmt", + "lint": "vite lint src test --type-aware --type-check", + "fmt": "vite fmt", "typecheck": "tsc --noEmit && tsgo --noEmit", - "fmtcheck": "oxfmt --check .", + "fmtcheck": "vite fmt --check .", "prebuild": "npm run clean", "build": "tsc --version && tshy && tshy-after && npm run build:version", "postbuild": "rm -rf *.tsbuildinfo", @@ -61,13 +61,13 @@ "test-tsc:cjs": "cd test/fixtures/ts && rm -rf node_modules && npm link ../../.. && npm run build", "test-tsc:cjs:es2021": "cd test/fixtures/ts-cjs-es2021 && rm -rf node_modules && npm link ../../.. && npm run build", "test-tsc:esm": "cd test/fixtures/ts-esm && rm -rf node_modules && npm link ../../.. && npm run build", - "test": "npm run lint -- --fix && vitest run --reporter=dot", - "bench": "vitest bench", - "test-keepalive": "cross-env TEST_KEEPALIVE_COUNT=50 vitest run --reporter=dot --test-timeout 180000 keep-alive-header.test.ts", + "test": "vite run lint -- --fix && vite test run --reporter=dot", + "bench": "vite test bench", + "test-keepalive": "cross-env TEST_KEEPALIVE_COUNT=50 vite test run --reporter=dot --test-timeout 180000 keep-alive-header.test.ts", "test-node16": "node examples/httpclient.cjs && node examples/search_github.cjs && node examples/timing.cjs", - "cov": "vitest run --reporter=dot --coverage", + "cov": "vite test run --reporter=dot --coverage", "ci": "npm run cov && npm run prepublishOnly && npm pack && attw --pack", - "ci:node16": "cross-env NODE_OPTIONS=\"--require ./test/patch-for-node16-18.cjs\" vitest run --reporter=dot && npm run prepublishOnly && npm pack && attw --pack", + "ci:node16": "cross-env NODE_OPTIONS=\"--require ./test/patch-for-node16-18.cjs\" vite test run --reporter=dot && npm run prepublishOnly && npm pack && attw --pack", "clean": "rm -rf dist && tsc -b --clean", "prepublishOnly": "npm run build", "prepare": "husky" @@ -101,9 +101,6 @@ "husky": "^9.1.7", "iconv-lite": "^0.6.3", "lint-staged": "^16.2.7", - "oxfmt": "^0.24.0", - "oxlint": "^1.35.0", - "oxlint-tsgolint": "^0.11.0", "proxy": "^1.0.2", "selfsigned": "^3.0.1", "string.prototype.towellformed": "^1.0.2", @@ -111,12 +108,13 @@ "tshy": "^3.1.0", "tshy-after": "^1.4.1", "typescript": "^5.9.3", - "vitest": "^4.0.17" + "vitest": "npm:@voidzero-dev/vite-plus-test@latest", + "vite-plus": "latest" }, "lint-staged": { "*": [ "npm run lint -- --fix", - "oxfmt" + "vite fmt" ] }, "tshy": { @@ -128,5 +126,11 @@ "engines": { "node": ">= 18.19.0" }, - "packageManager": "pnpm@10.28.0" + "packageManager": "pnpm@10.28.0", + "pnpm": { + "overrides": { + "vite": "npm:@voidzero-dev/vite-plus-core@latest", + "vitest": "npm:@voidzero-dev/vite-plus-test@latest" + } + } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 5c774515..e3cc8c2f 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -4,6 +4,10 @@ settings: autoInstallPeers: true excludeLinksFromLockfile: false +overrides: + vite: npm:@voidzero-dev/vite-plus-core@latest + vitest: npm:@voidzero-dev/vite-plus-test@latest + importers: .: @@ -35,7 +39,7 @@ importers: version: 0.18.2 '@codspeed/vitest-plugin': specifier: ^5.0.1 - version: 5.0.1(tinybench@2.9.0)(vite@7.3.0(@types/node@22.19.6)(yaml@2.8.2))(vitest@4.0.17(@types/node@22.19.6)(yaml@2.8.2)) + version: 5.0.1(@voidzero-dev/vite-plus-test@0.0.0-ab0b0858cb619f270f5e0a698fea3d6f5622a761(@arethetypeswrong/core@0.18.2)(@types/node@22.19.6)(typescript@5.9.3)(yaml@2.8.2))(tinybench@2.9.0)(vite@7.3.0(@types/node@22.19.6)(lightningcss@1.30.2)(yaml@2.8.2)) '@eggjs/oxlint-config': specifier: ^1.0.0 version: 1.0.0 @@ -71,7 +75,7 @@ importers: version: 1.3.0 '@vitest/coverage-v8': specifier: ^4.0.17 - version: 4.0.17(vitest@4.0.17(@types/node@22.19.6)(yaml@2.8.2)) + version: 4.0.17(@voidzero-dev/vite-plus-test@0.0.0-ab0b0858cb619f270f5e0a698fea3d6f5622a761(@arethetypeswrong/core@0.18.2)(@types/node@22.19.6)(typescript@5.9.3)(yaml@2.8.2)) busboy: specifier: ^1.6.0 version: 1.6.0 @@ -87,15 +91,6 @@ importers: lint-staged: specifier: ^16.2.7 version: 16.2.7 - oxfmt: - specifier: ^0.24.0 - version: 0.24.0 - oxlint: - specifier: ^1.35.0 - version: 1.39.0(oxlint-tsgolint@0.11.0) - oxlint-tsgolint: - specifier: ^0.11.0 - version: 0.11.0 proxy: specifier: ^1.0.2 version: 1.0.2 @@ -117,9 +112,12 @@ importers: typescript: specifier: ^5.9.3 version: 5.9.3 + vite-plus: + specifier: latest + version: 0.0.0-ab0b0858cb619f270f5e0a698fea3d6f5622a761(@arethetypeswrong/core@0.18.2)(@types/node@22.19.6)(typescript@5.9.3)(yaml@2.8.2) vitest: - specifier: ^4.0.17 - version: 4.0.17(@types/node@22.19.6)(yaml@2.8.2) + specifier: npm:@voidzero-dev/vite-plus-test@latest + version: '@voidzero-dev/vite-plus-test@0.0.0-ab0b0858cb619f270f5e0a698fea3d6f5622a761(@arethetypeswrong/core@0.18.2)(@types/node@22.19.6)(typescript@5.9.3)(yaml@2.8.2)' packages: @@ -360,77 +358,84 @@ packages: '@loaderkit/resolve@1.0.4': resolution: {integrity: sha512-rJzYKVcV4dxJv+vW6jlvagF8zvGxHJ2+HTr1e2qOejfmGhAApgJHl8Aog4mMszxceTRiKTTbnpgmTO1bEZHV/A==} - '@oxfmt/darwin-arm64@0.24.0': - resolution: {integrity: sha512-aYXuGf/yq8nsyEcHindGhiz9I+GEqLkVq8CfPbd+6VE259CpPEH+CaGHEO1j6vIOmNr8KHRq+IAjeRO2uJpb8A==} + '@oxc-project/runtime@0.108.0': + resolution: {integrity: sha512-J1cESY4anMO4i9KtCPmCfQAzAR00Uw4SWsDPFP10CIwDMugkh34UrTKByuYKuPaHy0XAk8LlJiZJq2OLMfbuIQ==} + engines: {node: ^20.19.0 || >=22.12.0} + + '@oxc-project/types@0.108.0': + resolution: {integrity: sha512-7lf13b2IA/kZO6xgnIZA88sq3vwrxWk+2vxf6cc+omwYCRTiA5e63Beqf3fz/v8jEviChWWmFYBwzfSeyrsj7Q==} + + '@oxfmt/darwin-arm64@0.16.0': + resolution: {integrity: sha512-I+Unj7wePcUTK7p/YKtgbm4yer6dw7dTlmCJa0UilFZyge5uD4rwCSfSDx3A+a6Z3A60/SqXMbNR2UyidWF4Cg==} cpu: [arm64] os: [darwin] - '@oxfmt/darwin-x64@0.24.0': - resolution: {integrity: sha512-vs3b8Bs53hbiNvcNeBilzE/+IhDTWKjSBB3v/ztr664nZk65j0xr+5IHMBNz3CFppmX7o/aBta2PxY+t+4KoPg==} + '@oxfmt/darwin-x64@0.16.0': + resolution: {integrity: sha512-EfiXFKEOV5gXgEatFK89OOoSmd8E9Xq83TcjPLWQNFBO4cgaQsfKmctpgJmJjQnoUwD7nQsm0ruj3ae7Gva8QA==} cpu: [x64] os: [darwin] - '@oxfmt/linux-arm64-gnu@0.24.0': - resolution: {integrity: sha512-ItPDOPoQ0wLj/s8osc5ch57uUcA1Wk8r0YdO8vLRpXA3UNg7KPOm1vdbkIZRRiSUphZcuX5ioOEetEK8H7RlTw==} + '@oxfmt/linux-arm64-gnu@0.16.0': + resolution: {integrity: sha512-ydcNY9Fn/8TjVswANhdSh+zdgD3tiikNQA68bgXbENHuV3RyYql1qoOM1eGv5xeIVJfkPJme17MKQz3OwMFS4A==} cpu: [arm64] os: [linux] libc: [glibc] - '@oxfmt/linux-arm64-musl@0.24.0': - resolution: {integrity: sha512-JkQO3WnQjQTJONx8nxdgVBfl6BBFfpp9bKhChYhWeakwJdr7QPOAWJ/v3FGZfr0TbqINwnNR74aVZayDDRyXEA==} + '@oxfmt/linux-arm64-musl@0.16.0': + resolution: {integrity: sha512-I9WeYe1/YnrfXgXVaKkZITZzil0G0g9IknS2KJbq1lOnpTw3dwViXZ7XMa2cq6Mv7S+4SoDImb7fLQ59AfVX/w==} cpu: [arm64] os: [linux] libc: [musl] - '@oxfmt/linux-x64-gnu@0.24.0': - resolution: {integrity: sha512-N/SXlFO+2kak5gMt0oxApi0WXQDhwA0PShR0UbkY0PwtHjfSiDqJSOumyNqgQVoroKr1GNnoRmUqjZIz6DKIcw==} + '@oxfmt/linux-x64-gnu@0.16.0': + resolution: {integrity: sha512-Szg9lJtZdN5FoCnNbl3N/2pJv8d056NUmk51m60E2tZV7rvwRTrNC8HPc2sVdb1Ti5ogsicpZDYSWA3cwIrJIQ==} cpu: [x64] os: [linux] libc: [glibc] - '@oxfmt/linux-x64-musl@0.24.0': - resolution: {integrity: sha512-WM0pek5YDCQf50XQ7GLCE9sMBCMPW/NPAEPH/Hx6Qyir37lEsP4rUmSECo/QFNTU6KBc9NnsviAyJruWPpCMXw==} + '@oxfmt/linux-x64-musl@0.16.0': + resolution: {integrity: sha512-5koN8nl21ZxOADaMxXHT+mt3YjfXe1nsa23Fanf9aY7B0hcQ6rXYCZ7r5vmpoTtzW/US3aaVcRFZE1cyof+lKw==} cpu: [x64] os: [linux] libc: [musl] - '@oxfmt/win32-arm64@0.24.0': - resolution: {integrity: sha512-vFCseli1KWtwdHrVlT/jWfZ8jP8oYpnPPEjI23mPLW8K/6GEJmmvy0PZP5NpWUFNTzX0lqie58XnrATJYAe9Xw==} + '@oxfmt/win32-arm64@0.16.0': + resolution: {integrity: sha512-Jaesn+FYn+MudSmWJMPGBAa0PhQXo52Z0ZYeNfzbQP7v2GFbZBI3Cb87+K0aHGlpqK3VEJKXeIaASaTWlkgO1Q==} cpu: [arm64] os: [win32] - '@oxfmt/win32-x64@0.24.0': - resolution: {integrity: sha512-0tmlNzcyewAnauNeBCq0xmAkmiKzl+H09p0IdHy+QKrTQdtixtf+AOjDAADbRfihkS+heF15Pjc4IyJMdAAJjw==} + '@oxfmt/win32-x64@0.16.0': + resolution: {integrity: sha512-1obVSlb5blwBKgSsE1mNxvcq1pK9I6aXpZDy5d6jjGdrru33dHrH1ASChrcxwCukkToH2SxwYmnzAto0xeuZlw==} cpu: [x64] os: [win32] - '@oxlint-tsgolint/darwin-arm64@0.11.0': - resolution: {integrity: sha512-F67T8dXgYIrgv6wpd52fKQFdmieSOHaxBkscgso64YdtEHrV3s52ASiZGNzw62TKihn9Ox9ek3PYx9XsxIJDUw==} + '@oxlint-tsgolint/darwin-arm64@0.8.6': + resolution: {integrity: sha512-khvQiNpPVNkyz6vmN50v5j1X6r9anRDXy3htDBpObx4V5bp33BK94onh46e91GTEbBevmeUG/Zm/U3+np4gehw==} cpu: [arm64] os: [darwin] - '@oxlint-tsgolint/darwin-x64@0.11.0': - resolution: {integrity: sha512-z44LO7+3z2mtcBxA9T66yEy/otp/2r5ypbkx7EYlPwbEqBAIDRt/8hqQ9/BUC//1qE549P1cBU6NjhgeyuXjYQ==} + '@oxlint-tsgolint/darwin-x64@0.8.6': + resolution: {integrity: sha512-AardvXBLB0m05BGcubXTqWSpNv2aD68QyY7BB/u2AqKzMoEtvzSB710FL06vOTPpaVpl3GvSVHCFw2juo35lTQ==} cpu: [x64] os: [darwin] - '@oxlint-tsgolint/linux-arm64@0.11.0': - resolution: {integrity: sha512-IeIjmpPi2j2Dn1CRizGikysyLp9B0q3jqiAalv9ewRyb8hqQW5YeMlsswo8pHd0Hz3KyFfone0NkvBt77Ex2pg==} + '@oxlint-tsgolint/linux-arm64@0.8.6': + resolution: {integrity: sha512-oSgMIilQBUVSOGdWIm4/5GJV4QmqwBQYpsGtRUpTAd3BZTWVuo40//n/ogJFnlCVd+i4yhsGLtwexd/7YlJ9sw==} cpu: [arm64] os: [linux] - '@oxlint-tsgolint/linux-x64@0.11.0': - resolution: {integrity: sha512-fpYGYU2pXjaXYnKgWrihFXE8zJiTRjYKSHAaBaVI056oqKjKGEoU2BfFbddpBrKgz9TmSOX/NGftrJnyMn1wXQ==} + '@oxlint-tsgolint/linux-x64@0.8.6': + resolution: {integrity: sha512-EhR2TejCW5gBPEs6ASgfFFgdveHvpKOHQC2zbO3HoFT/xNU0DvYbEsScKM8SUDWFMQlHU67A7bynNGRY2kFSSg==} cpu: [x64] os: [linux] - '@oxlint-tsgolint/win32-arm64@0.11.0': - resolution: {integrity: sha512-37nzks9eqBt7NYE6okquu51vaqMruF5voX475L16Y8asJVCGpO/2VSy3ulYAXhZ+5Kdc8ZgrljVViJOjfPEPaA==} + '@oxlint-tsgolint/win32-arm64@0.8.6': + resolution: {integrity: sha512-PQeV8YitT2HR/uJV8ugERIpA4WHDem7i5TuPtgYrp7wvKS98G9ILpnPgATrOup/VdBMIzCDl02c23z4+I5NSTw==} cpu: [arm64] os: [win32] - '@oxlint-tsgolint/win32-x64@0.11.0': - resolution: {integrity: sha512-TsK4C61+mjmbkUJ3Q3E9Ev3VFbeI6prPEAm9FAOq8VsfUGEiIUBBjrZ8ysGoQXNiU3dCKpmu012ptVUZTk5/eg==} + '@oxlint-tsgolint/win32-x64@0.8.6': + resolution: {integrity: sha512-JDlyJSOnJXahee9xL55gT02kmQGSP0hR/5OP5asXvr7q6dj9t4skltcwYiA+D4HthF04oaW1F0+6pJnNTfDE0w==} cpu: [x64] os: [win32] @@ -478,6 +483,9 @@ packages: cpu: [x64] os: [win32] + '@polka/url@1.0.0-next.29': + resolution: {integrity: sha512-wwQAWhWSuHaag8c4q/KN/vCoeOJYshAIvMQwD4GpSb3OiZklFfvAgmj0VCBBImRpuF/aFgIRzllXlVX93Jevww==} + '@rollup/rollup-android-arm-eabi@4.54.0': resolution: {integrity: sha512-OywsdRHrFvCdvsewAInDKCNyR3laPA2mc9bRYJ6LBp5IyvF3fvXbbNR0bSzHlZVFtn6E0xw2oZlyjg4rKCVcng==} cpu: [arm] @@ -603,9 +611,6 @@ packages: resolution: {integrity: sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==} engines: {node: '>=10'} - '@standard-schema/spec@1.1.0': - resolution: {integrity: sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==} - '@types/busboy@1.5.4': resolution: {integrity: sha512-kG7WrUuAKK0NoyxfQHsVE6j1m01s6kMma64E+OZenQABMQyTJop1DumUWcLwAQ2JzpefU7PDYoRDKl8uZosFjw==} @@ -688,34 +693,118 @@ packages: '@vitest/browser': optional: true - '@vitest/expect@4.0.17': - resolution: {integrity: sha512-mEoqP3RqhKlbmUmntNDDCJeTDavDR+fVYkSOw8qRwJFaW/0/5zA9zFeTrHqNtcmwh6j26yMmwx2PqUDPzt5ZAQ==} + '@vitest/pretty-format@4.0.17': + resolution: {integrity: sha512-Ah3VAYmjcEdHg6+MwFE17qyLqBHZ+ni2ScKCiW2XrlSBV4H3Z7vYfPfz7CWQ33gyu76oc0Ai36+kgLU3rfF4nw==} + + '@vitest/utils@4.0.17': + resolution: {integrity: sha512-RG6iy+IzQpa9SB8HAFHJ9Y+pTzI+h8553MrciN9eC6TFBErqrQaTas4vG+MVj8S4uKk8uTT2p0vgZPnTdxd96w==} - '@vitest/mocker@4.0.17': - resolution: {integrity: sha512-+ZtQhLA3lDh1tI2wxe3yMsGzbp7uuJSWBM1iTIKCbppWTSBN09PUC+L+fyNlQApQoR+Ps8twt2pbSSXg2fQVEQ==} + '@voidzero-dev/vite-plus-core@0.0.0-ab0b0858cb619f270f5e0a698fea3d6f5622a761': + resolution: {integrity: sha512-cRVakC7WFEpenonyCWNz0FAidYYDvuL7sTCWx4RYYB6oqWkn1Gsb3vRPM0QOlZWDTw6BGKVhdkVRV8Hgt9sj3Q==} + engines: {node: ^20.19.0 || >=22.12.0} peerDependencies: - msw: ^2.4.9 - vite: ^6.0.0 || ^7.0.0-0 + '@arethetypeswrong/core': ^0.18.1 + '@types/node': ^20.19.0 || >=22.12.0 + '@vitejs/devtools': '*' + esbuild: ^0.25.0 + jiti: '>=1.21.0' + less: ^4.0.0 + publint: ^0.3.0 + sass: ^1.70.0 + sass-embedded: ^1.70.0 + stylus: '>=0.54.8' + sugarss: ^5.0.0 + terser: ^5.16.0 + tsx: ^4.8.1 + typescript: ^5.0.0 + unplugin-lightningcss: ^0.4.0 + unplugin-unused: ^0.5.0 + yaml: ^2.4.2 peerDependenciesMeta: - msw: + '@arethetypeswrong/core': + optional: true + '@types/node': + optional: true + '@vitejs/devtools': + optional: true + esbuild: + optional: true + jiti: + optional: true + less: + optional: true + publint: + optional: true + sass: + optional: true + sass-embedded: + optional: true + stylus: + optional: true + sugarss: + optional: true + terser: + optional: true + tsx: optional: true - vite: + typescript: + optional: true + unplugin-lightningcss: + optional: true + unplugin-unused: + optional: true + yaml: optional: true - '@vitest/pretty-format@4.0.17': - resolution: {integrity: sha512-Ah3VAYmjcEdHg6+MwFE17qyLqBHZ+ni2ScKCiW2XrlSBV4H3Z7vYfPfz7CWQ33gyu76oc0Ai36+kgLU3rfF4nw==} + '@voidzero-dev/vite-plus-darwin-arm64@0.0.0-ab0b0858cb619f270f5e0a698fea3d6f5622a761': + resolution: {integrity: sha512-0hD92eezm2g7dTeXFgdENVkiIFMTQ1o1lK6GQuFnzg+RVETlVRO4DT8bkI3aiuQQY/QkfRpdiDkgdCkH6g2nPQ==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [darwin] - '@vitest/runner@4.0.17': - resolution: {integrity: sha512-JmuQyf8aMWoo/LmNFppdpkfRVHJcsgzkbCA+/Bk7VfNH7RE6Ut2qxegeyx2j3ojtJtKIbIGy3h+KxGfYfk28YQ==} + '@voidzero-dev/vite-plus-linux-arm64-gnu@0.0.0-ab0b0858cb619f270f5e0a698fea3d6f5622a761': + resolution: {integrity: sha512-k3VA3AvfRSszHXTgL5kDxuJ++rdcKikIhiTKUnX7+AMk1fW+nP3Gm3VXBFbj7lcAMj8VG2g9KRuX3yWOJLm0xw==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [linux] + libc: [glibc] - '@vitest/snapshot@4.0.17': - resolution: {integrity: sha512-npPelD7oyL+YQM2gbIYvlavlMVWUfNNGZPcu0aEUQXt7FXTuqhmgiYupPnAanhKvyP6Srs2pIbWo30K0RbDtRQ==} + '@voidzero-dev/vite-plus-linux-x64-gnu@0.0.0-ab0b0858cb619f270f5e0a698fea3d6f5622a761': + resolution: {integrity: sha512-lokxNOOJkKpls9mPI2y8b6t1dIlEmDA7lNNysT6NSrZ3vt/Rl4hAsCQ5DSvriDXd64nWfm21Up2PNIJSD0exhg==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [linux] + libc: [glibc] - '@vitest/spy@4.0.17': - resolution: {integrity: sha512-I1bQo8QaP6tZlTomQNWKJE6ym4SHf3oLS7ceNjozxxgzavRAgZDc06T7kD8gb9bXKEgcLNt00Z+kZO6KaJ62Ew==} + '@voidzero-dev/vite-plus-test@0.0.0-ab0b0858cb619f270f5e0a698fea3d6f5622a761': + resolution: {integrity: sha512-HukJSLPOM0hHksdYnJhx57BFHU49cdANLNea73x1r1Ccm3C89wpEqCTksBUIw1EtxY/wyBapkCiGanJTuMVqbw==} + engines: {node: ^20.0.0 || ^22.0.0 || >=24.0.0} + peerDependencies: + '@edge-runtime/vm': '*' + '@opentelemetry/api': ^1.9.0 + '@types/node': ^20.0.0 || ^22.0.0 || >=24.0.0 + '@vitest/ui': 4.0.16 + happy-dom: '*' + jsdom: '*' + peerDependenciesMeta: + '@edge-runtime/vm': + optional: true + '@opentelemetry/api': + optional: true + '@types/node': + optional: true + '@vitest/ui': + optional: true + happy-dom: + optional: true + jsdom: + optional: true - '@vitest/utils@4.0.17': - resolution: {integrity: sha512-RG6iy+IzQpa9SB8HAFHJ9Y+pTzI+h8553MrciN9eC6TFBErqrQaTas4vG+MVj8S4uKk8uTT2p0vgZPnTdxd96w==} + '@voidzero-dev/vite-plus-win32-x64-msvc@0.0.0-ab0b0858cb619f270f5e0a698fea3d6f5622a761': + resolution: {integrity: sha512-LSHwFNt5xUBDMjEzoDS85fix+Wk6h+bHAFFG8aNv/b500uTH+zOjbDSX+OeElbuQ3PNpki+cD8E4DQDmxymSEA==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [win32] ansi-escapes@7.2.0: resolution: {integrity: sha512-g6LhBsl+GBPRWGWsBtutpzBYuIIdBkLEvad5C/va/74Db018+5TZiyA26cZJAr3Rft5lprVqOIPxf5Vid6tqAw==} @@ -797,6 +886,10 @@ packages: resolution: {integrity: sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==} engines: {node: '>=10.16.0'} + cac@6.7.14: + resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==} + engines: {node: '>=8'} + call-bind-apply-helpers@1.0.2: resolution: {integrity: sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==} engines: {node: '>= 0.4'} @@ -813,10 +906,6 @@ packages: resolution: {integrity: sha512-faqwZqnWxbxn+F1d399ygeamQNy3lPp/H9H6rNrqYh4FSVCtcY+3cub1MxA8o9mDd55mM8Aghuu/kuyYA6VTsA==} engines: {node: '>=6'} - 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==} engines: {node: '>=4'} @@ -934,6 +1023,10 @@ packages: resolution: {integrity: sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==} engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16} + detect-libc@2.1.2: + resolution: {integrity: sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==} + engines: {node: '>=8'} + dunder-proto@1.0.1: resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==} engines: {node: '>= 0.4'} @@ -1000,10 +1093,6 @@ packages: eventemitter3@5.0.1: resolution: {integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==} - expect-type@1.3.0: - resolution: {integrity: sha512-knvyeauYhqjOYvQ66MznSMs83wmHrCycNEN6Ao+2AeYEfxUIkuiVxdEa1qlGEPK+We3n0THiDciYSsCcgW/DoA==} - engines: {node: '>=12.0.0'} - fdir@6.5.0: resolution: {integrity: sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==} engines: {node: '>=12.0.0'} @@ -1279,6 +1368,80 @@ packages: resolution: {integrity: sha512-nvVPLpIHUxCUoRLrFqTgSxXJ614d8AgQoWl7zPe/2VadE8+1dpU3LBhowRuBAcuwruWtOdD8oYC9jDNJjXDPyA==} engines: {node: '>=0.10.0'} + lightningcss-android-arm64@1.30.2: + resolution: {integrity: sha512-BH9sEdOCahSgmkVhBLeU7Hc9DWeZ1Eb6wNS6Da8igvUwAe0sqROHddIlvU06q3WyXVEOYDZ6ykBZQnjTbmo4+A==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [android] + + lightningcss-darwin-arm64@1.30.2: + resolution: {integrity: sha512-ylTcDJBN3Hp21TdhRT5zBOIi73P6/W0qwvlFEk22fkdXchtNTOU4Qc37SkzV+EKYxLouZ6M4LG9NfZ1qkhhBWA==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [darwin] + + lightningcss-darwin-x64@1.30.2: + resolution: {integrity: sha512-oBZgKchomuDYxr7ilwLcyms6BCyLn0z8J0+ZZmfpjwg9fRVZIR5/GMXd7r9RH94iDhld3UmSjBM6nXWM2TfZTQ==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [darwin] + + lightningcss-freebsd-x64@1.30.2: + resolution: {integrity: sha512-c2bH6xTrf4BDpK8MoGG4Bd6zAMZDAXS569UxCAGcA7IKbHNMlhGQ89eRmvpIUGfKWNVdbhSbkQaWhEoMGmGslA==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [freebsd] + + lightningcss-linux-arm-gnueabihf@1.30.2: + resolution: {integrity: sha512-eVdpxh4wYcm0PofJIZVuYuLiqBIakQ9uFZmipf6LF/HRj5Bgm0eb3qL/mr1smyXIS1twwOxNWndd8z0E374hiA==} + engines: {node: '>= 12.0.0'} + cpu: [arm] + os: [linux] + + lightningcss-linux-arm64-gnu@1.30.2: + resolution: {integrity: sha512-UK65WJAbwIJbiBFXpxrbTNArtfuznvxAJw4Q2ZGlU8kPeDIWEX1dg3rn2veBVUylA2Ezg89ktszWbaQnxD/e3A==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [linux] + libc: [glibc] + + lightningcss-linux-arm64-musl@1.30.2: + resolution: {integrity: sha512-5Vh9dGeblpTxWHpOx8iauV02popZDsCYMPIgiuw97OJ5uaDsL86cnqSFs5LZkG3ghHoX5isLgWzMs+eD1YzrnA==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [linux] + libc: [musl] + + lightningcss-linux-x64-gnu@1.30.2: + resolution: {integrity: sha512-Cfd46gdmj1vQ+lR6VRTTadNHu6ALuw2pKR9lYq4FnhvgBc4zWY1EtZcAc6EffShbb1MFrIPfLDXD6Xprbnni4w==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [linux] + libc: [glibc] + + lightningcss-linux-x64-musl@1.30.2: + resolution: {integrity: sha512-XJaLUUFXb6/QG2lGIW6aIk6jKdtjtcffUT0NKvIqhSBY3hh9Ch+1LCeH80dR9q9LBjG3ewbDjnumefsLsP6aiA==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [linux] + libc: [musl] + + lightningcss-win32-arm64-msvc@1.30.2: + resolution: {integrity: sha512-FZn+vaj7zLv//D/192WFFVA0RgHawIcHqLX9xuWiQt7P0PtdFEVaxgF9rjM/IRYHQXNnk61/H/gb2Ei+kUQ4xQ==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [win32] + + lightningcss-win32-x64-msvc@1.30.2: + resolution: {integrity: sha512-5g1yc73p+iAkid5phb4oVFMB45417DkRevRbt/El/gKXJk4jid+vPFF/AXbxn05Aky8PapwzZrdJShv5C0avjw==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [win32] + + lightningcss@1.30.2: + resolution: {integrity: sha512-utfs7Pr5uJyyvDETitgsaqSyjCb2qNRAtuqUeWIAKztsOYdcACf2KtARYXg2pSvhkt+9NfoaNY7fxjl6nuMjIQ==} + engines: {node: '>= 12.0.0'} + lint-staged@16.2.7: resolution: {integrity: sha512-lDIj4RnYmK7/kXMya+qJsmkRFkGolciXjrsZ6PC25GdTfWOAWetR0ZbsNXRAj1EHHImRSalc+whZFg56F5DVow==} engines: {node: '>=20.17'} @@ -1300,9 +1463,6 @@ packages: resolution: {integrity: sha512-B5Y16Jr9LB9dHVkh6ZevG+vAbOsNOYCX+sXvFWFu7B3Iz5mijW3zdbMyhsh8ANd2mSWBYdJgnqi+mL7/LrOPYg==} engines: {node: 20 || >=22} - magic-string@0.30.21: - resolution: {integrity: sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==} - magicast@0.5.1: resolution: {integrity: sha512-xrHS24IxaLrvuo613F719wvOIv9xPHFWQHuvGUBmPnCA/3MQxKI3b+r7n1jAoDHmsbC5bRhTZYR77invLAxVnw==} @@ -1363,6 +1523,10 @@ packages: resolution: {integrity: sha512-6y7IjGPm8AzlvoUrwAaw1tLnUBudaS3752vcd8JtrpGGQn+rXIe63LFVHm/YMwtqAuh+LJPCFdlLYPWM1nYn6w==} engines: {node: '>=4'} + mrmime@2.0.1: + resolution: {integrity: sha512-Y3wQdFg2Va6etvQ5I82yUhGdsKrcYox6p7FfL1LbK2J4V01F9TGlepTIhnK24t7koZibmg82KGglhA1XK5IsLQ==} + engines: {node: '>=10'} + ms@2.1.3: resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} @@ -1424,13 +1588,13 @@ packages: resolution: {integrity: sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==} engines: {node: '>= 0.4'} - oxfmt@0.24.0: - resolution: {integrity: sha512-UjeM3Peez8Tl7IJ9s5UwAoZSiDRMww7BEc21gDYxLq3S3/KqJnM3mjNxsoSHgmBvSeX6RBhoVc2MfC/+96RdSw==} + oxfmt@0.16.0: + resolution: {integrity: sha512-uRnnBAN0zH07FXSfvSKbIw+Jrohv4Px2RwNiZOGI4/pvns4sx0+k4WSt+tqwd7bDeoWaXiGmhZgnbK63hi6hVQ==} engines: {node: ^20.19.0 || >=22.12.0} hasBin: true - oxlint-tsgolint@0.11.0: - resolution: {integrity: sha512-fGYb7z/cljC0Rjtbxh7mIe8vtF/M9TShLvniwc2rdcqNG3Z9g3nM01cr2kWRb1DZdbY4/kItvIsrV4uhaMifyQ==} + oxlint-tsgolint@0.8.6: + resolution: {integrity: sha512-DC9rqwFyEb5RlxOjvXdqaqxM5PwK01002oh/fcdC05mNPiI04d6CPWtReHqX6Ig1dc5LYuVeh3wuPrrp6WTjtw==} hasBin: true oxlint@1.39.0: @@ -1475,9 +1639,6 @@ packages: resolution: {integrity: sha512-oWyT4gICAu+kaA7QWk/jvCHWarMKNs6pXOGWKDTr7cw4IGcUbW+PeTfbaQiLGheFRpjo6O9J0PmyMfQPjH71oA==} engines: {node: 20 || >=22} - pathe@2.0.3: - resolution: {integrity: sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==} - pause-stream@0.0.11: resolution: {integrity: sha512-e3FBlXLmN/D1S+zHzanP4E/4Z60oFAa3O051qt1pxa7DEJWKAyil6upYVXCWadEnuoqa4Pkc9oUx9zsxYeRv8A==} @@ -1497,6 +1658,14 @@ packages: engines: {node: '>=0.10'} hasBin: true + pixelmatch@7.1.0: + resolution: {integrity: sha512-1wrVzJ2STrpmONHKBy228LM1b84msXDUoAzVEl0R8Mz4Ce6EPr+IVtxm8+yvrqLYMHswREkjYFaMxnyGnaY3Ng==} + hasBin: true + + pngjs@7.0.0: + resolution: {integrity: sha512-LKWqWJRhstyYo9pGvgor/ivk2w94eSjE3RGVuzLGlr3NmD8bf7RcYGze1mNdEHRP6TRP6rMuDHk5t44hnTRyow==} + engines: {node: '>=14.19.0'} + polite-json@5.0.0: resolution: {integrity: sha512-OLS/0XeUAcE8a2fdwemNja+udKgXNnY6yKVIXqAD2zVRx1KvY6Ato/rZ2vdzbxqYwPW0u6SCNC/bAMPNzpzxbw==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -1624,13 +1793,14 @@ packages: resolution: {integrity: sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==} engines: {node: '>= 0.4'} - siginfo@2.0.0: - resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==} - signal-exit@4.1.0: resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} engines: {node: '>=14'} + sirv@3.0.2: + resolution: {integrity: sha512-2wcC/oGxHis/BoHkkPwldgiPSYcpZK3JU28WoMVv55yHJgcZ8rlXvuG9iZggz+sU1d4bRgIGASwyWqjxu3FM0g==} + engines: {node: '>=18'} + skin-tone@2.0.0: resolution: {integrity: sha512-kUMbT1oBJCpgrnKoSr0o6wPtvRWT9W9UKvGLwfJYO2WuahZRHOpEyL1ckyMGgMWh0UdpmaoFqKKD29WTomNEGA==} engines: {node: '>=8'} @@ -1643,9 +1813,6 @@ packages: resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} engines: {node: '>=0.10.0'} - stackback@0.0.2: - resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==} - std-env@3.10.0: resolution: {integrity: sha512-5GS12FdOZNliM5mAOxFRg7Ir0pWz8MdpYm6AY6VPkGpbA7ZzmbzNcBJQ0GPvvyWgcY7QAhCgf9Uy89I03faLkg==} @@ -1742,10 +1909,6 @@ packages: resolution: {integrity: sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==} engines: {node: '>=12.0.0'} - tinypool@2.0.0: - resolution: {integrity: sha512-/RX9RzeH2xU5ADE7n2Ykvmi9ED3FBGPAjw9u3zucrNNaEBIO0HPSYgL0NT7+3p147ojeSdaVu08F6hjpv31HJg==} - engines: {node: ^20.0.0 || >=22.0.0} - tinyrainbow@3.0.3: resolution: {integrity: sha512-PSkbLUoxOFRzJYjjxHJt9xro7D+iilgMX/C9lawzVuYiIdcihh9DXmVibBe8lmcFrRi/VzlPjBxbN7rH24q8/Q==} engines: {node: '>=14.0.0'} @@ -1754,6 +1917,10 @@ packages: resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} engines: {node: '>=8.0'} + totalist@3.0.1: + resolution: {integrity: sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==} + engines: {node: '>=6'} + tshy-after@1.4.1: resolution: {integrity: sha512-EVUiYSR59AGOy8I8eElVYKlR5bK/7ufAOv3H190HNu3sc9f3CP6Dn5QQfPIYzvg3kCt88NkTwx7n+xR8AQCCmw==} hasBin: true @@ -1815,6 +1982,11 @@ packages: resolution: {integrity: sha512-OljLrQ9SQdOUqTaQxqL5dEfZWrXExyyWsozYlAWFawPVNuD83igl7uJD2RTkNMbniIYgt8l81eCJGIdQF7avLQ==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + vite-plus@0.0.0-ab0b0858cb619f270f5e0a698fea3d6f5622a761: + resolution: {integrity: sha512-XyYAeAsjbFokjBJtkr3o/3AEgcFglnFBK4M6jgITicEvnbAbO9+zH0ds6VJy+xM4h9D922zI6UOZHiNtVcO9xQ==} + engines: {node: ^20.19.0 || >=22.12.0} + hasBin: true + vite@7.3.0: resolution: {integrity: sha512-dZwN5L1VlUBewiP6H9s2+B3e3Jg96D0vzN+Ry73sOefebhYr9f94wwkMNN/9ouoU8pV1BqA1d1zGk8928cx0rg==} engines: {node: ^20.19.0 || >=22.12.0} @@ -1855,40 +2027,6 @@ packages: yaml: optional: true - vitest@4.0.17: - resolution: {integrity: sha512-FQMeF0DJdWY0iOnbv466n/0BudNdKj1l5jYgl5JVTwjSsZSlqyXFt/9+1sEyhR6CLowbZpV7O1sCHrzBhucKKg==} - engines: {node: ^20.0.0 || ^22.0.0 || >=24.0.0} - hasBin: true - peerDependencies: - '@edge-runtime/vm': '*' - '@opentelemetry/api': ^1.9.0 - '@types/node': ^20.0.0 || ^22.0.0 || >=24.0.0 - '@vitest/browser-playwright': 4.0.17 - '@vitest/browser-preview': 4.0.17 - '@vitest/browser-webdriverio': 4.0.17 - '@vitest/ui': 4.0.17 - happy-dom: '*' - jsdom: '*' - peerDependenciesMeta: - '@edge-runtime/vm': - optional: true - '@opentelemetry/api': - optional: true - '@types/node': - optional: true - '@vitest/browser-playwright': - optional: true - '@vitest/browser-preview': - optional: true - '@vitest/browser-webdriverio': - optional: true - '@vitest/ui': - optional: true - happy-dom: - optional: true - jsdom: - optional: true - walk-up-path@4.0.0: resolution: {integrity: sha512-3hu+tD8YzSLGuFYtPRb48vdhKMi0KQV5sn+uWr8+7dMEq/2G/dtLrdDinkLjqq5TIbIBjYJ4Ax/n3YiaW7QM8A==} engines: {node: 20 || >=22} @@ -1914,11 +2052,6 @@ packages: engines: {node: '>= 8'} hasBin: true - why-is-node-running@2.3.0: - resolution: {integrity: sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w==} - engines: {node: '>=8'} - hasBin: true - wrap-ansi@7.0.0: resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} engines: {node: '>=10'} @@ -1930,6 +2063,18 @@ packages: wrappy@1.0.2: resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} + ws@8.19.0: + resolution: {integrity: sha512-blAT2mjOEIi0ZzruJfIhb3nps74PRWTCz1IjglWEEpQl5XS/UNama6u2/rjFkDDouqr4L67ry+1aGIALViWjDg==} + engines: {node: '>=10.0.0'} + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: '>=5.0.2' + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + y18n@5.0.8: resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} engines: {node: '>=10'} @@ -2006,12 +2151,12 @@ snapshots: transitivePeerDependencies: - debug - '@codspeed/vitest-plugin@5.0.1(tinybench@2.9.0)(vite@7.3.0(@types/node@22.19.6)(yaml@2.8.2))(vitest@4.0.17(@types/node@22.19.6)(yaml@2.8.2))': + '@codspeed/vitest-plugin@5.0.1(@voidzero-dev/vite-plus-test@0.0.0-ab0b0858cb619f270f5e0a698fea3d6f5622a761(@arethetypeswrong/core@0.18.2)(@types/node@22.19.6)(typescript@5.9.3)(yaml@2.8.2))(tinybench@2.9.0)(vite@7.3.0(@types/node@22.19.6)(lightningcss@1.30.2)(yaml@2.8.2))': dependencies: '@codspeed/core': 5.0.1 tinybench: 2.9.0 - vite: 7.3.0(@types/node@22.19.6)(yaml@2.8.2) - vitest: 4.0.17(@types/node@22.19.6)(yaml@2.8.2) + vite: 7.3.0(@types/node@22.19.6)(lightningcss@1.30.2)(yaml@2.8.2) + vitest: '@voidzero-dev/vite-plus-test@0.0.0-ab0b0858cb619f270f5e0a698fea3d6f5622a761(@arethetypeswrong/core@0.18.2)(@types/node@22.19.6)(typescript@5.9.3)(yaml@2.8.2)' transitivePeerDependencies: - debug @@ -2121,46 +2266,50 @@ snapshots: dependencies: '@braidai/lang': 1.1.2 - '@oxfmt/darwin-arm64@0.24.0': + '@oxc-project/runtime@0.108.0': {} + + '@oxc-project/types@0.108.0': {} + + '@oxfmt/darwin-arm64@0.16.0': optional: true - '@oxfmt/darwin-x64@0.24.0': + '@oxfmt/darwin-x64@0.16.0': optional: true - '@oxfmt/linux-arm64-gnu@0.24.0': + '@oxfmt/linux-arm64-gnu@0.16.0': optional: true - '@oxfmt/linux-arm64-musl@0.24.0': + '@oxfmt/linux-arm64-musl@0.16.0': optional: true - '@oxfmt/linux-x64-gnu@0.24.0': + '@oxfmt/linux-x64-gnu@0.16.0': optional: true - '@oxfmt/linux-x64-musl@0.24.0': + '@oxfmt/linux-x64-musl@0.16.0': optional: true - '@oxfmt/win32-arm64@0.24.0': + '@oxfmt/win32-arm64@0.16.0': optional: true - '@oxfmt/win32-x64@0.24.0': + '@oxfmt/win32-x64@0.16.0': optional: true - '@oxlint-tsgolint/darwin-arm64@0.11.0': + '@oxlint-tsgolint/darwin-arm64@0.8.6': optional: true - '@oxlint-tsgolint/darwin-x64@0.11.0': + '@oxlint-tsgolint/darwin-x64@0.8.6': optional: true - '@oxlint-tsgolint/linux-arm64@0.11.0': + '@oxlint-tsgolint/linux-arm64@0.8.6': optional: true - '@oxlint-tsgolint/linux-x64@0.11.0': + '@oxlint-tsgolint/linux-x64@0.8.6': optional: true - '@oxlint-tsgolint/win32-arm64@0.11.0': + '@oxlint-tsgolint/win32-arm64@0.8.6': optional: true - '@oxlint-tsgolint/win32-x64@0.11.0': + '@oxlint-tsgolint/win32-x64@0.8.6': optional: true '@oxlint/darwin-arm64@1.39.0': @@ -2187,6 +2336,8 @@ snapshots: '@oxlint/win32-x64@1.39.0': optional: true + '@polka/url@1.0.0-next.29': {} + '@rollup/rollup-android-arm-eabi@4.54.0': optional: true @@ -2255,8 +2406,6 @@ snapshots: '@sindresorhus/is@4.6.0': {} - '@standard-schema/spec@1.1.0': {} - '@types/busboy@1.5.4': dependencies: '@types/node': 22.19.6 @@ -2323,7 +2472,7 @@ snapshots: '@ungap/structured-clone@1.3.0': {} - '@vitest/coverage-v8@4.0.17(vitest@4.0.17(@types/node@22.19.6)(yaml@2.8.2))': + '@vitest/coverage-v8@4.0.17(@voidzero-dev/vite-plus-test@0.0.0-ab0b0858cb619f270f5e0a698fea3d6f5622a761(@arethetypeswrong/core@0.18.2)(@types/node@22.19.6)(typescript@5.9.3)(yaml@2.8.2))': dependencies: '@bcoe/v8-coverage': 1.0.2 '@vitest/utils': 4.0.17 @@ -2335,46 +2484,77 @@ snapshots: obug: 2.1.1 std-env: 3.10.0 tinyrainbow: 3.0.3 - vitest: 4.0.17(@types/node@22.19.6)(yaml@2.8.2) + vitest: '@voidzero-dev/vite-plus-test@0.0.0-ab0b0858cb619f270f5e0a698fea3d6f5622a761(@arethetypeswrong/core@0.18.2)(@types/node@22.19.6)(typescript@5.9.3)(yaml@2.8.2)' - '@vitest/expect@4.0.17': + '@vitest/pretty-format@4.0.17': dependencies: - '@standard-schema/spec': 1.1.0 - '@types/chai': 5.2.3 - '@vitest/spy': 4.0.17 - '@vitest/utils': 4.0.17 - chai: 6.2.2 tinyrainbow: 3.0.3 - '@vitest/mocker@4.0.17(vite@7.3.0(@types/node@22.19.6)(yaml@2.8.2))': - dependencies: - '@vitest/spy': 4.0.17 - estree-walker: 3.0.3 - magic-string: 0.30.21 - optionalDependencies: - vite: 7.3.0(@types/node@22.19.6)(yaml@2.8.2) - - '@vitest/pretty-format@4.0.17': + '@vitest/utils@4.0.17': dependencies: + '@vitest/pretty-format': 4.0.17 tinyrainbow: 3.0.3 - '@vitest/runner@4.0.17': + '@voidzero-dev/vite-plus-core@0.0.0-ab0b0858cb619f270f5e0a698fea3d6f5622a761(@arethetypeswrong/core@0.18.2)(@types/node@22.19.6)(typescript@5.9.3)(yaml@2.8.2)': dependencies: - '@vitest/utils': 4.0.17 - pathe: 2.0.3 + '@oxc-project/runtime': 0.108.0 + '@oxc-project/types': 0.108.0 + lightningcss: 1.30.2 + postcss: 8.5.6 + optionalDependencies: + '@arethetypeswrong/core': 0.18.2 + '@types/node': 22.19.6 + fsevents: 2.3.3 + typescript: 5.9.3 + yaml: 2.8.2 - '@vitest/snapshot@4.0.17': - dependencies: - '@vitest/pretty-format': 4.0.17 - magic-string: 0.30.21 - pathe: 2.0.3 + '@voidzero-dev/vite-plus-darwin-arm64@0.0.0-ab0b0858cb619f270f5e0a698fea3d6f5622a761': + optional: true - '@vitest/spy@4.0.17': {} + '@voidzero-dev/vite-plus-linux-arm64-gnu@0.0.0-ab0b0858cb619f270f5e0a698fea3d6f5622a761': + optional: true - '@vitest/utils@4.0.17': + '@voidzero-dev/vite-plus-linux-x64-gnu@0.0.0-ab0b0858cb619f270f5e0a698fea3d6f5622a761': + optional: true + + '@voidzero-dev/vite-plus-test@0.0.0-ab0b0858cb619f270f5e0a698fea3d6f5622a761(@arethetypeswrong/core@0.18.2)(@types/node@22.19.6)(typescript@5.9.3)(yaml@2.8.2)': dependencies: - '@vitest/pretty-format': 4.0.17 - tinyrainbow: 3.0.3 + '@types/chai': 5.2.3 + '@voidzero-dev/vite-plus-core': 0.0.0-ab0b0858cb619f270f5e0a698fea3d6f5622a761(@arethetypeswrong/core@0.18.2)(@types/node@22.19.6)(typescript@5.9.3)(yaml@2.8.2) + es-module-lexer: 1.7.0 + obug: 2.1.1 + pixelmatch: 7.1.0 + pngjs: 7.0.0 + sirv: 3.0.2 + std-env: 3.10.0 + tinybench: 2.9.0 + tinyexec: 1.0.2 + tinyglobby: 0.2.15 + ws: 8.19.0 + optionalDependencies: + '@types/node': 22.19.6 + transitivePeerDependencies: + - '@arethetypeswrong/core' + - '@vitejs/devtools' + - bufferutil + - esbuild + - jiti + - less + - publint + - sass + - sass-embedded + - stylus + - sugarss + - terser + - tsx + - typescript + - unplugin-lightningcss + - unplugin-unused + - utf-8-validate + - yaml + + '@voidzero-dev/vite-plus-win32-x64-msvc@0.0.0-ab0b0858cb619f270f5e0a698fea3d6f5622a761': + optional: true ansi-escapes@7.2.0: dependencies: @@ -2465,6 +2645,8 @@ snapshots: dependencies: streamsearch: 1.1.0 + cac@6.7.14: {} + call-bind-apply-helpers@1.0.2: dependencies: es-errors: 1.3.0 @@ -2484,8 +2666,6 @@ snapshots: camelcase@5.0.0: {} - chai@6.2.2: {} - chalk@2.4.2: dependencies: ansi-styles: 3.2.1 @@ -2608,6 +2788,8 @@ snapshots: destroy@1.2.0: {} + detect-libc@2.1.2: {} + dunder-proto@1.0.1: dependencies: call-bind-apply-helpers: 1.0.2 @@ -2745,8 +2927,6 @@ snapshots: eventemitter3@5.0.1: {} - expect-type@1.3.0: {} - fdir@6.5.0(picomatch@4.0.3): optionalDependencies: picomatch: 4.0.3 @@ -3018,6 +3198,55 @@ snapshots: leven@2.1.0: {} + lightningcss-android-arm64@1.30.2: + optional: true + + lightningcss-darwin-arm64@1.30.2: + optional: true + + lightningcss-darwin-x64@1.30.2: + optional: true + + lightningcss-freebsd-x64@1.30.2: + optional: true + + lightningcss-linux-arm-gnueabihf@1.30.2: + optional: true + + lightningcss-linux-arm64-gnu@1.30.2: + optional: true + + lightningcss-linux-arm64-musl@1.30.2: + optional: true + + lightningcss-linux-x64-gnu@1.30.2: + optional: true + + lightningcss-linux-x64-musl@1.30.2: + optional: true + + lightningcss-win32-arm64-msvc@1.30.2: + optional: true + + lightningcss-win32-x64-msvc@1.30.2: + optional: true + + lightningcss@1.30.2: + dependencies: + detect-libc: 2.1.2 + optionalDependencies: + lightningcss-android-arm64: 1.30.2 + lightningcss-darwin-arm64: 1.30.2 + lightningcss-darwin-x64: 1.30.2 + lightningcss-freebsd-x64: 1.30.2 + lightningcss-linux-arm-gnueabihf: 1.30.2 + lightningcss-linux-arm64-gnu: 1.30.2 + lightningcss-linux-arm64-musl: 1.30.2 + lightningcss-linux-x64-gnu: 1.30.2 + lightningcss-linux-x64-musl: 1.30.2 + lightningcss-win32-arm64-msvc: 1.30.2 + lightningcss-win32-x64-msvc: 1.30.2 + lint-staged@16.2.7: dependencies: commander: 14.0.2 @@ -3051,10 +3280,6 @@ snapshots: lru-cache@11.2.4: {} - magic-string@0.30.21: - dependencies: - '@jridgewell/sourcemap-codec': 1.5.5 - magicast@0.5.1: dependencies: '@babel/parser': 7.28.5 @@ -3105,6 +3330,8 @@ snapshots: mri@1.1.4: {} + mrmime@2.0.1: {} + ms@2.1.3: {} mz@2.7.0: @@ -3161,29 +3388,27 @@ snapshots: object-keys: 1.1.1 safe-push-apply: 1.0.0 - oxfmt@0.24.0: - dependencies: - tinypool: 2.0.0 + oxfmt@0.16.0: optionalDependencies: - '@oxfmt/darwin-arm64': 0.24.0 - '@oxfmt/darwin-x64': 0.24.0 - '@oxfmt/linux-arm64-gnu': 0.24.0 - '@oxfmt/linux-arm64-musl': 0.24.0 - '@oxfmt/linux-x64-gnu': 0.24.0 - '@oxfmt/linux-x64-musl': 0.24.0 - '@oxfmt/win32-arm64': 0.24.0 - '@oxfmt/win32-x64': 0.24.0 - - oxlint-tsgolint@0.11.0: + '@oxfmt/darwin-arm64': 0.16.0 + '@oxfmt/darwin-x64': 0.16.0 + '@oxfmt/linux-arm64-gnu': 0.16.0 + '@oxfmt/linux-arm64-musl': 0.16.0 + '@oxfmt/linux-x64-gnu': 0.16.0 + '@oxfmt/linux-x64-musl': 0.16.0 + '@oxfmt/win32-arm64': 0.16.0 + '@oxfmt/win32-x64': 0.16.0 + + oxlint-tsgolint@0.8.6: optionalDependencies: - '@oxlint-tsgolint/darwin-arm64': 0.11.0 - '@oxlint-tsgolint/darwin-x64': 0.11.0 - '@oxlint-tsgolint/linux-arm64': 0.11.0 - '@oxlint-tsgolint/linux-x64': 0.11.0 - '@oxlint-tsgolint/win32-arm64': 0.11.0 - '@oxlint-tsgolint/win32-x64': 0.11.0 - - oxlint@1.39.0(oxlint-tsgolint@0.11.0): + '@oxlint-tsgolint/darwin-arm64': 0.8.6 + '@oxlint-tsgolint/darwin-x64': 0.8.6 + '@oxlint-tsgolint/linux-arm64': 0.8.6 + '@oxlint-tsgolint/linux-x64': 0.8.6 + '@oxlint-tsgolint/win32-arm64': 0.8.6 + '@oxlint-tsgolint/win32-x64': 0.8.6 + + oxlint@1.39.0(oxlint-tsgolint@0.8.6): optionalDependencies: '@oxlint/darwin-arm64': 1.39.0 '@oxlint/darwin-x64': 1.39.0 @@ -3193,7 +3418,7 @@ snapshots: '@oxlint/linux-x64-musl': 1.39.0 '@oxlint/win32-arm64': 1.39.0 '@oxlint/win32-x64': 1.39.0 - oxlint-tsgolint: 0.11.0 + oxlint-tsgolint: 0.8.6 p-limit@4.0.0: dependencies: @@ -3222,8 +3447,6 @@ snapshots: lru-cache: 11.2.4 minipass: 7.1.2 - pathe@2.0.3: {} - pause-stream@0.0.11: dependencies: through: 2.3.8 @@ -3236,6 +3459,12 @@ snapshots: pidtree@0.6.0: {} + pixelmatch@7.1.0: + dependencies: + pngjs: 7.0.0 + + pngjs@7.0.0: {} + polite-json@5.0.0: {} possible-typed-array-names@1.1.0: {} @@ -3420,10 +3649,14 @@ snapshots: side-channel-map: 1.0.1 side-channel-weakmap: 1.0.2 - siginfo@2.0.0: {} - signal-exit@4.1.0: {} + sirv@3.0.2: + dependencies: + '@polka/url': 1.0.0-next.29 + mrmime: 2.0.1 + totalist: 3.0.1 + skin-tone@2.0.0: dependencies: unicode-emoji-modifier-base: 1.0.0 @@ -3435,8 +3668,6 @@ snapshots: source-map-js@1.2.1: {} - stackback@0.0.2: {} - std-env@3.10.0: {} stop-iteration-iterator@1.1.0: @@ -3555,14 +3786,14 @@ snapshots: fdir: 6.5.0(picomatch@4.0.3) picomatch: 4.0.3 - tinypool@2.0.0: {} - tinyrainbow@3.0.3: {} to-regex-range@5.0.1: dependencies: is-number: 7.0.0 + totalist@3.0.1: {} + tshy-after@1.4.1: {} tshy@3.1.0: @@ -3635,56 +3866,60 @@ snapshots: validate-npm-package-name@5.0.1: {} - vite@7.3.0(@types/node@22.19.6)(yaml@2.8.2): + vite-plus@0.0.0-ab0b0858cb619f270f5e0a698fea3d6f5622a761(@arethetypeswrong/core@0.18.2)(@types/node@22.19.6)(typescript@5.9.3)(yaml@2.8.2): dependencies: - esbuild: 0.27.2 - fdir: 6.5.0(picomatch@4.0.3) - picomatch: 4.0.3 - postcss: 8.5.6 - rollup: 4.54.0 - tinyglobby: 0.2.15 + '@oxc-project/types': 0.108.0 + '@voidzero-dev/vite-plus-core': 0.0.0-ab0b0858cb619f270f5e0a698fea3d6f5622a761(@arethetypeswrong/core@0.18.2)(@types/node@22.19.6)(typescript@5.9.3)(yaml@2.8.2) + '@voidzero-dev/vite-plus-test': 0.0.0-ab0b0858cb619f270f5e0a698fea3d6f5622a761(@arethetypeswrong/core@0.18.2)(@types/node@22.19.6)(typescript@5.9.3)(yaml@2.8.2) + cac: 6.7.14 + oxfmt: 0.16.0 + oxlint: 1.39.0(oxlint-tsgolint@0.8.6) + oxlint-tsgolint: 0.8.6 optionalDependencies: - '@types/node': 22.19.6 - fsevents: 2.3.3 - yaml: 2.8.2 - - vitest@4.0.17(@types/node@22.19.6)(yaml@2.8.2): - dependencies: - '@vitest/expect': 4.0.17 - '@vitest/mocker': 4.0.17(vite@7.3.0(@types/node@22.19.6)(yaml@2.8.2)) - '@vitest/pretty-format': 4.0.17 - '@vitest/runner': 4.0.17 - '@vitest/snapshot': 4.0.17 - '@vitest/spy': 4.0.17 - '@vitest/utils': 4.0.17 - es-module-lexer: 1.7.0 - expect-type: 1.3.0 - magic-string: 0.30.21 - obug: 2.1.1 - pathe: 2.0.3 - picomatch: 4.0.3 - std-env: 3.10.0 - tinybench: 2.9.0 - tinyexec: 1.0.2 - tinyglobby: 0.2.15 - tinyrainbow: 3.0.3 - vite: 7.3.0(@types/node@22.19.6)(yaml@2.8.2) - why-is-node-running: 2.3.0 - optionalDependencies: - '@types/node': 22.19.6 + '@voidzero-dev/vite-plus-darwin-arm64': 0.0.0-ab0b0858cb619f270f5e0a698fea3d6f5622a761 + '@voidzero-dev/vite-plus-linux-arm64-gnu': 0.0.0-ab0b0858cb619f270f5e0a698fea3d6f5622a761 + '@voidzero-dev/vite-plus-linux-x64-gnu': 0.0.0-ab0b0858cb619f270f5e0a698fea3d6f5622a761 + '@voidzero-dev/vite-plus-win32-x64-msvc': 0.0.0-ab0b0858cb619f270f5e0a698fea3d6f5622a761 transitivePeerDependencies: + - '@arethetypeswrong/core' + - '@edge-runtime/vm' + - '@opentelemetry/api' + - '@types/node' + - '@vitejs/devtools' + - '@vitest/ui' + - bufferutil + - esbuild + - happy-dom - jiti + - jsdom - less - - lightningcss - - msw + - publint - sass - sass-embedded - stylus - sugarss - terser - tsx + - typescript + - unplugin-lightningcss + - unplugin-unused + - utf-8-validate - yaml + vite@7.3.0(@types/node@22.19.6)(lightningcss@1.30.2)(yaml@2.8.2): + dependencies: + esbuild: 0.27.2 + fdir: 6.5.0(picomatch@4.0.3) + picomatch: 4.0.3 + postcss: 8.5.6 + rollup: 4.54.0 + tinyglobby: 0.2.15 + optionalDependencies: + '@types/node': 22.19.6 + fsevents: 2.3.3 + lightningcss: 1.30.2 + yaml: 2.8.2 + walk-up-path@4.0.0: {} which-boxed-primitive@1.1.1: @@ -3732,11 +3967,6 @@ snapshots: dependencies: isexe: 2.0.0 - why-is-node-running@2.3.0: - dependencies: - siginfo: 2.0.0 - stackback: 0.0.2 - wrap-ansi@7.0.0: dependencies: ansi-styles: 4.3.0 @@ -3751,6 +3981,8 @@ snapshots: wrappy@1.0.2: {} + ws@8.19.0: {} + y18n@5.0.8: {} yaml@2.8.2: {} diff --git a/test/HttpClient.connect.rejectUnauthorized.test.ts b/test/HttpClient.connect.rejectUnauthorized.test.ts index 116abdcb..06ada04f 100644 --- a/test/HttpClient.connect.rejectUnauthorized.test.ts +++ b/test/HttpClient.connect.rejectUnauthorized.test.ts @@ -1,6 +1,6 @@ import { strict as assert } from 'node:assert'; -import { describe, it, beforeAll, afterAll } from 'vitest'; +import { describe, it, beforeAll, afterAll } from 'vite-plus/test'; import { HttpClient } from '../src/index.js'; import { startServer } from './fixtures/server.js'; diff --git a/test/HttpClient.events.test.ts b/test/HttpClient.events.test.ts index 1adba3c4..0c6c1f7e 100644 --- a/test/HttpClient.events.test.ts +++ b/test/HttpClient.events.test.ts @@ -1,6 +1,6 @@ import { strict as assert } from 'node:assert'; -import { describe, it, beforeAll, afterAll } from 'vitest'; +import { describe, it, beforeAll, afterAll } from 'vite-plus/test'; import { HttpClient } from '../src/index.js'; import { startServer } from './fixtures/server.js'; diff --git a/test/HttpClient.test.ts b/test/HttpClient.test.ts index 4b6e4c91..39cef5a9 100644 --- a/test/HttpClient.test.ts +++ b/test/HttpClient.test.ts @@ -7,7 +7,7 @@ import { PerformanceObserver } from 'node:perf_hooks'; import { setTimeout as sleep } from 'node:timers/promises'; import selfsigned from 'selfsigned'; -import { describe, it, beforeAll, afterAll } from 'vitest'; +import { describe, it, beforeAll, afterAll } from 'vite-plus/test'; import { HttpClient, getGlobalDispatcher } from '../src/index.js'; import type { RawResponseWithMeta } from '../src/index.js'; diff --git a/test/diagnostics_channel.test.ts b/test/diagnostics_channel.test.ts index 7dd0fa6a..623f6a34 100644 --- a/test/diagnostics_channel.test.ts +++ b/test/diagnostics_channel.test.ts @@ -6,7 +6,7 @@ import type { AddressInfo } from 'node:net'; import { setTimeout as sleep } from 'node:timers/promises'; import selfsigned from 'selfsigned'; -import { describe, it, beforeEach, afterEach } from 'vitest'; +import { describe, it, beforeEach, afterEach } from 'vite-plus/test'; import urllib, { HttpClient } from '../src/index.js'; import type { RequestDiagnosticsMessage, ResponseDiagnosticsMessage } from '../src/index.js'; diff --git a/test/fetch-head-request-should-keepalive.test.ts b/test/fetch-head-request-should-keepalive.test.ts index 1e477987..f62f7f0d 100644 --- a/test/fetch-head-request-should-keepalive.test.ts +++ b/test/fetch-head-request-should-keepalive.test.ts @@ -1,7 +1,7 @@ import { strict as assert } from 'node:assert'; import { scheduler } from 'node:timers/promises'; -import { describe, it, beforeAll, afterAll } from 'vitest'; +import { describe, it, beforeAll, afterAll } from 'vite-plus/test'; import { fetch } from '../src/index.js'; import { startServer } from './fixtures/server.js'; diff --git a/test/fetch.test.ts b/test/fetch.test.ts index 411f789a..e39a1207 100644 --- a/test/fetch.test.ts +++ b/test/fetch.test.ts @@ -3,7 +3,7 @@ import diagnosticsChannel from 'node:diagnostics_channel'; import { setTimeout as sleep } from 'node:timers/promises'; import { Request } from 'undici'; -import { describe, it, beforeAll, afterAll } from 'vitest'; +import { describe, it, beforeAll, afterAll } from 'vite-plus/test'; import { fetch, FetchFactory } from '../src/fetch.js'; import type { FetchDiagnosticsMessage, FetchResponseDiagnosticsMessage } from '../src/fetch.js'; diff --git a/test/formData-with-BufferStream.test.ts b/test/formData-with-BufferStream.test.ts index b52819e9..cb3bbc59 100644 --- a/test/formData-with-BufferStream.test.ts +++ b/test/formData-with-BufferStream.test.ts @@ -2,7 +2,7 @@ import { strict as assert } from 'node:assert'; import { createReadStream } from 'node:fs'; import { basename } from 'node:path'; -import { describe, it, beforeAll, afterAll } from 'vitest'; +import { describe, it, beforeAll, afterAll } from 'vite-plus/test'; import { HttpClient, WebFormData } from '../src/index.js'; import { BufferStream } from './fixtures/BufferStream.js'; diff --git a/test/head-request-should-keepalive.test.ts b/test/head-request-should-keepalive.test.ts index 77c82475..323c25a6 100644 --- a/test/head-request-should-keepalive.test.ts +++ b/test/head-request-should-keepalive.test.ts @@ -1,7 +1,7 @@ import { strict as assert } from 'node:assert'; import { scheduler } from 'node:timers/promises'; -import { describe, it, beforeAll, afterAll } from 'vitest'; +import { describe, it, beforeAll, afterAll } from 'vite-plus/test'; import { HttpClient } from '../src/index.js'; import { startServer } from './fixtures/server.js'; diff --git a/test/index.test.ts b/test/index.test.ts index c347811c..3c392e67 100644 --- a/test/index.test.ts +++ b/test/index.test.ts @@ -2,7 +2,7 @@ import { strict as assert } from 'node:assert'; import { readFileSync } from 'node:fs'; import { parse as urlparse } from 'node:url'; -import { describe, it, beforeAll, afterAll, afterEach, beforeEach } from 'vitest'; +import { describe, it, beforeAll, afterAll, afterEach, beforeEach } from 'vite-plus/test'; import urllib, { HttpClient, diff --git a/test/keep-alive-header.test.ts b/test/keep-alive-header.test.ts index bb0b9e34..9386dc31 100644 --- a/test/keep-alive-header.test.ts +++ b/test/keep-alive-header.test.ts @@ -1,7 +1,7 @@ import { strict as assert } from 'node:assert'; import { setTimeout as sleep } from 'node:timers/promises'; -import { describe, it, beforeAll, afterAll } from 'vitest'; +import { describe, it, beforeAll, afterAll } from 'vite-plus/test'; import { HttpClient } from '../src/index.js'; import { startServer } from './fixtures/server.js'; diff --git a/test/non-ascii-request-header.test.ts b/test/non-ascii-request-header.test.ts index 9307e5ed..9ee8b6ea 100644 --- a/test/non-ascii-request-header.test.ts +++ b/test/non-ascii-request-header.test.ts @@ -1,6 +1,6 @@ import { strict as assert } from 'node:assert'; -import { describe, it, beforeAll, afterAll } from 'vitest'; +import { describe, it, beforeAll, afterAll } from 'vite-plus/test'; import urllib from '../src/index.js'; import { startServer } from './fixtures/server.js'; diff --git a/test/options.auth.test.ts b/test/options.auth.test.ts index a2080bac..b6018346 100644 --- a/test/options.auth.test.ts +++ b/test/options.auth.test.ts @@ -1,6 +1,6 @@ import { strict as assert } from 'node:assert'; -import { describe, it, beforeAll, afterAll } from 'vitest'; +import { describe, it, beforeAll, afterAll } from 'vite-plus/test'; import urllib from '../src/index.js'; import { startServer } from './fixtures/server.js'; diff --git a/test/options.compressed.test.ts b/test/options.compressed.test.ts index 7b3e81e4..003e13fc 100644 --- a/test/options.compressed.test.ts +++ b/test/options.compressed.test.ts @@ -1,7 +1,7 @@ import { strict as assert } from 'node:assert'; import { createWriteStream, createReadStream } from 'node:fs'; -import { describe, it, beforeAll, afterAll, beforeEach, afterEach } from 'vitest'; +import { describe, it, beforeAll, afterAll, beforeEach, afterEach } from 'vite-plus/test'; import urllib from '../src/index.js'; import { startServer } from './fixtures/server.js'; diff --git a/test/options.content.test.ts b/test/options.content.test.ts index 84a46db7..5fe75dd1 100644 --- a/test/options.content.test.ts +++ b/test/options.content.test.ts @@ -2,7 +2,7 @@ import { strict as assert } from 'node:assert'; import { createReadStream } from 'node:fs'; import fs from 'node:fs/promises'; -import { describe, it, beforeAll, afterAll } from 'vitest'; +import { describe, it, beforeAll, afterAll } from 'vite-plus/test'; import urllib from '../src/index.js'; import { startServer } from './fixtures/server.js'; diff --git a/test/options.data.test.ts b/test/options.data.test.ts index 475267cf..422e1407 100644 --- a/test/options.data.test.ts +++ b/test/options.data.test.ts @@ -3,7 +3,7 @@ import { createReadStream } from 'node:fs'; import { Readable } from 'node:stream'; import qs from 'qs'; -import { describe, it, beforeAll, afterAll } from 'vitest'; +import { describe, it, beforeAll, afterAll } from 'vite-plus/test'; import urllib from '../src/index.js'; import { startServer } from './fixtures/server.js'; diff --git a/test/options.dataType.test.ts b/test/options.dataType.test.ts index b2e0b1c9..520fc33c 100644 --- a/test/options.dataType.test.ts +++ b/test/options.dataType.test.ts @@ -1,6 +1,6 @@ import { strict as assert } from 'node:assert'; -import { describe, it, beforeAll, afterAll } from 'vitest'; +import { describe, it, beforeAll, afterAll } from 'vite-plus/test'; import urllib from '../src/index.js'; import { startServer } from './fixtures/server.js'; diff --git a/test/options.digestAuth.test.ts b/test/options.digestAuth.test.ts index 58aebabe..442ed790 100644 --- a/test/options.digestAuth.test.ts +++ b/test/options.digestAuth.test.ts @@ -1,6 +1,6 @@ import { strict as assert } from 'node:assert'; -import { describe, it, beforeAll, afterAll } from 'vitest'; +import { describe, it, beforeAll, afterAll } from 'vite-plus/test'; import urllib from '../src/index.js'; import { startServer } from './fixtures/server.js'; diff --git a/test/options.dispatcher.test.ts b/test/options.dispatcher.test.ts index 16442492..e737afc0 100644 --- a/test/options.dispatcher.test.ts +++ b/test/options.dispatcher.test.ts @@ -1,7 +1,7 @@ import { strict as assert } from 'node:assert'; import setup from 'proxy'; -import { describe, it, beforeAll, afterAll } from 'vitest'; +import { describe, it, beforeAll, afterAll } from 'vite-plus/test'; import { request, ProxyAgent, getGlobalDispatcher, setGlobalDispatcher, Agent } from '../src/index.js'; import { startServer } from './fixtures/server.js'; diff --git a/test/options.files.test.ts b/test/options.files.test.ts index 9280093e..240bba6f 100644 --- a/test/options.files.test.ts +++ b/test/options.files.test.ts @@ -4,7 +4,7 @@ import fs from 'node:fs/promises'; import path from 'node:path'; import { Readable } from 'node:stream'; -import { describe, it, beforeAll, afterAll } from 'vitest'; +import { describe, it, beforeAll, afterAll } from 'vite-plus/test'; import urllib from '../src/index.js'; import { startServer } from './fixtures/server.js'; diff --git a/test/options.fixJSONCtlChars.test.ts b/test/options.fixJSONCtlChars.test.ts index 00b9b34d..cd8f6b29 100644 --- a/test/options.fixJSONCtlChars.test.ts +++ b/test/options.fixJSONCtlChars.test.ts @@ -1,6 +1,6 @@ import { strict as assert } from 'node:assert'; -import { describe, it, beforeAll, afterAll } from 'vitest'; +import { describe, it, beforeAll, afterAll } from 'vite-plus/test'; import urllib from '../src/index.js'; import { startServer } from './fixtures/server.js'; diff --git a/test/options.followRedirect.test.ts b/test/options.followRedirect.test.ts index 323b9319..c03683fb 100644 --- a/test/options.followRedirect.test.ts +++ b/test/options.followRedirect.test.ts @@ -1,7 +1,7 @@ import { strict as assert } from 'node:assert'; import { createWriteStream } from 'node:fs'; -import { describe, it, beforeAll, afterAll } from 'vitest'; +import { describe, it, beforeAll, afterAll } from 'vite-plus/test'; import urllib from '../src/index.js'; import { HttpClient } from '../src/index.js'; diff --git a/test/options.gzip.test.ts b/test/options.gzip.test.ts index f1091504..ac1866d5 100644 --- a/test/options.gzip.test.ts +++ b/test/options.gzip.test.ts @@ -1,6 +1,6 @@ import { strict as assert } from 'node:assert'; -import { describe, it, beforeAll, afterAll } from 'vitest'; +import { describe, it, beforeAll, afterAll } from 'vite-plus/test'; import urllib from '../src/index.js'; import { startServer } from './fixtures/server.js'; diff --git a/test/options.headers.test.ts b/test/options.headers.test.ts index 64a94b42..b5df20dc 100644 --- a/test/options.headers.test.ts +++ b/test/options.headers.test.ts @@ -1,6 +1,6 @@ import { strict as assert } from 'node:assert'; -import { describe, it, beforeAll, afterAll } from 'vitest'; +import { describe, it, beforeAll, afterAll } from 'vite-plus/test'; import urllib from '../src/index.js'; import { startServer } from './fixtures/server.js'; diff --git a/test/options.method.test.ts b/test/options.method.test.ts index 532250b0..bf92e6dc 100644 --- a/test/options.method.test.ts +++ b/test/options.method.test.ts @@ -1,6 +1,6 @@ import { strict as assert } from 'node:assert'; -import { describe, it, beforeAll, afterAll } from 'vitest'; +import { describe, it, beforeAll, afterAll } from 'vite-plus/test'; import urllib from '../src/index.js'; import { startServer } from './fixtures/server.js'; diff --git a/test/options.opaque.test.ts b/test/options.opaque.test.ts index 36da4e01..50aec6af 100644 --- a/test/options.opaque.test.ts +++ b/test/options.opaque.test.ts @@ -1,6 +1,6 @@ import { strict as assert } from 'node:assert'; -import { describe, it, beforeAll, afterAll } from 'vitest'; +import { describe, it, beforeAll, afterAll } from 'vite-plus/test'; import urllib from '../src/index.js'; import { startServer } from './fixtures/server.js'; diff --git a/test/options.reset.test.ts b/test/options.reset.test.ts index 15f2dfeb..51e993c4 100644 --- a/test/options.reset.test.ts +++ b/test/options.reset.test.ts @@ -1,6 +1,6 @@ import { strict as assert } from 'node:assert'; -import { describe, it, beforeAll, afterAll } from 'vitest'; +import { describe, it, beforeAll, afterAll } from 'vite-plus/test'; import urllib from '../src/index.js'; import { startServer } from './fixtures/server.js'; diff --git a/test/options.retry.test.ts b/test/options.retry.test.ts index c8195947..a00c8176 100644 --- a/test/options.retry.test.ts +++ b/test/options.retry.test.ts @@ -1,7 +1,7 @@ import { strict as assert } from 'node:assert'; import { createWriteStream, createReadStream } from 'node:fs'; -import { describe, it, beforeAll, afterAll, beforeEach, afterEach } from 'vitest'; +import { describe, it, beforeAll, afterAll, beforeEach, afterEach } from 'vite-plus/test'; import urllib from '../src/index.js'; import { startServer } from './fixtures/server.js'; diff --git a/test/options.signal.test.ts b/test/options.signal.test.ts index cd779971..d83c1a47 100644 --- a/test/options.signal.test.ts +++ b/test/options.signal.test.ts @@ -2,7 +2,7 @@ import { strict as assert } from 'node:assert'; import { EventEmitter } from 'node:events'; import { setTimeout as sleep } from 'node:timers/promises'; -import { describe, it, beforeAll, afterAll } from 'vitest'; +import { describe, it, beforeAll, afterAll } from 'vite-plus/test'; import urllib from '../src/index.js'; import { startServer } from './fixtures/server.js'; diff --git a/test/options.socketErrorRetry.test.ts b/test/options.socketErrorRetry.test.ts index 8564c25d..cf845b8f 100644 --- a/test/options.socketErrorRetry.test.ts +++ b/test/options.socketErrorRetry.test.ts @@ -1,7 +1,7 @@ import { strict as assert } from 'node:assert'; import { createWriteStream, createReadStream } from 'node:fs'; -import { describe, it, beforeAll, afterAll, beforeEach, afterEach } from 'vitest'; +import { describe, it, beforeAll, afterAll, beforeEach, afterEach } from 'vite-plus/test'; import urllib from '../src/index.js'; import { startServer } from './fixtures/server.js'; diff --git a/test/options.socketPath.test.ts b/test/options.socketPath.test.ts index bb89727c..64da8494 100644 --- a/test/options.socketPath.test.ts +++ b/test/options.socketPath.test.ts @@ -1,6 +1,6 @@ import { strict as assert } from 'node:assert'; -import { describe, it, beforeAll, afterAll } from 'vitest'; +import { describe, it, beforeAll, afterAll } from 'vite-plus/test'; import urllib from '../src/index.js'; import { startServer } from './fixtures/socket_server.js'; diff --git a/test/options.stream.test.ts b/test/options.stream.test.ts index f7260011..a9e79109 100644 --- a/test/options.stream.test.ts +++ b/test/options.stream.test.ts @@ -7,7 +7,7 @@ import { createGunzip } from 'node:zlib'; import FormStream from 'formstream'; import tar from 'tar-stream'; -import { describe, it, beforeAll, afterAll, beforeEach, afterEach } from 'vitest'; +import { describe, it, beforeAll, afterAll, beforeEach, afterEach } from 'vite-plus/test'; import urllib from '../src/index.js'; import { isReadable } from '../src/utils.js'; diff --git a/test/options.streaming.test.ts b/test/options.streaming.test.ts index d25d37d2..3698bf3d 100644 --- a/test/options.streaming.test.ts +++ b/test/options.streaming.test.ts @@ -2,7 +2,7 @@ import { strict as assert } from 'node:assert'; import { pipeline } from 'node:stream'; import { createBrotliDecompress } from 'node:zlib'; -import { describe, it, beforeEach, afterEach } from 'vitest'; +import { describe, it, beforeEach, afterEach } from 'vite-plus/test'; import urllib from '../src/index.js'; import { isReadable } from '../src/utils.js'; diff --git a/test/options.timeout.test.ts b/test/options.timeout.test.ts index 551f82ba..4cefec6c 100644 --- a/test/options.timeout.test.ts +++ b/test/options.timeout.test.ts @@ -4,7 +4,7 @@ import { createSecureServer } from 'node:http2'; import type { AddressInfo } from 'node:net'; import selfsigned from 'selfsigned'; -import { describe, it, beforeAll, afterAll } from 'vitest'; +import { describe, it, beforeAll, afterAll } from 'vite-plus/test'; import urllib, { HttpClientRequestTimeoutError, HttpClient } from '../src/index.js'; import { startServer } from './fixtures/server.js'; diff --git a/test/options.timing.test.ts b/test/options.timing.test.ts index 9a92399d..f99e5817 100644 --- a/test/options.timing.test.ts +++ b/test/options.timing.test.ts @@ -1,7 +1,7 @@ import { strict as assert } from 'node:assert'; import { setTimeout as sleep } from 'node:timers/promises'; -import { describe, it, beforeAll, afterAll } from 'vitest'; +import { describe, it, beforeAll, afterAll } from 'vite-plus/test'; import urllib from '../src/index.js'; import type { RawResponseWithMeta } from '../src/index.js'; diff --git a/test/options.type.test.ts b/test/options.type.test.ts index bc39a8bb..43d974f1 100644 --- a/test/options.type.test.ts +++ b/test/options.type.test.ts @@ -1,6 +1,6 @@ import { strict as assert } from 'node:assert'; -import { describe, it, beforeAll, afterAll } from 'vitest'; +import { describe, it, beforeAll, afterAll } from 'vite-plus/test'; import urllib from '../src/index.js'; import { startServer } from './fixtures/server.js'; diff --git a/test/options.writeStream.test.ts b/test/options.writeStream.test.ts index 20f34f96..35b333f6 100644 --- a/test/options.writeStream.test.ts +++ b/test/options.writeStream.test.ts @@ -5,7 +5,7 @@ import { join } from 'node:path'; import { setTimeout as sleep } from 'node:timers/promises'; import { gunzipSync } from 'node:zlib'; -import { describe, it, beforeAll, afterAll, beforeEach, afterEach } from 'vitest'; +import { describe, it, beforeAll, afterAll, beforeEach, afterEach } from 'vite-plus/test'; import urllib from '../src/index.js'; import { startServer } from './fixtures/server.js'; diff --git a/test/response-charset-gbk.test.ts b/test/response-charset-gbk.test.ts index 47a07d89..ce320013 100644 --- a/test/response-charset-gbk.test.ts +++ b/test/response-charset-gbk.test.ts @@ -1,6 +1,6 @@ import { strict as assert } from 'node:assert'; -import { describe, it, beforeAll, afterAll } from 'vitest'; +import { describe, it, beforeAll, afterAll } from 'vite-plus/test'; import urllib from '../src/index.js'; import { startServer } from './fixtures/server.js'; diff --git a/test/urllib.bench.ts b/test/urllib.bench.ts index b2b90417..23e385cf 100644 --- a/test/urllib.bench.ts +++ b/test/urllib.bench.ts @@ -1,4 +1,4 @@ -import { bench, describe } from 'vitest'; +import { bench, describe } from 'vite-plus/test'; import { HttpClient } from '../src/index.js'; import { parseJSON, digestAuthHeader, globalId, performanceTime } from '../src/utils.js'; diff --git a/test/urllib.options.allowH2.test.ts b/test/urllib.options.allowH2.test.ts index b0174026..52be0ca4 100644 --- a/test/urllib.options.allowH2.test.ts +++ b/test/urllib.options.allowH2.test.ts @@ -1,6 +1,6 @@ import { strict as assert } from 'node:assert'; -import { describe, it } from 'vitest'; +import { describe, it } from 'vite-plus/test'; import urllib from '../src/index.js'; diff --git a/test/urllib.options.rejectUnauthorized-false.test.ts b/test/urllib.options.rejectUnauthorized-false.test.ts index 62cb2547..65b71053 100644 --- a/test/urllib.options.rejectUnauthorized-false.test.ts +++ b/test/urllib.options.rejectUnauthorized-false.test.ts @@ -4,7 +4,7 @@ import { createSecureServer } from 'node:http2'; import type { AddressInfo } from 'node:net'; import selfsigned from 'selfsigned'; -import { describe, it, beforeAll, afterAll } from 'vitest'; +import { describe, it, beforeAll, afterAll } from 'vite-plus/test'; import urllib, { HttpClient } from '../src/index.js'; import { startServer } from './fixtures/server.js'; diff --git a/test/user-agent.test.ts b/test/user-agent.test.ts index 2bfa8aba..97504882 100644 --- a/test/user-agent.test.ts +++ b/test/user-agent.test.ts @@ -1,6 +1,6 @@ import { strict as assert } from 'node:assert'; -import { describe, it, beforeAll, afterAll } from 'vitest'; +import { describe, it, beforeAll, afterAll } from 'vite-plus/test'; import urllib from '../src/index.js'; import { startServer } from './fixtures/server.js'; diff --git a/test/utils.test.ts b/test/utils.test.ts index a88fcee5..08a0f59e 100644 --- a/test/utils.test.ts +++ b/test/utils.test.ts @@ -1,6 +1,6 @@ import { strict as assert } from 'node:assert'; -import { describe, it } from 'vitest'; +import { describe, it } from 'vite-plus/test'; import { globalId } from '../src/utils.js'; diff --git a/vite.config.ts b/vite.config.ts index 804a4ad5..57aba22e 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -1,7 +1,153 @@ import codspeedPlugin from '@codspeed/vitest-plugin'; -import { defineConfig } from 'vitest/config'; +import { defineConfig } from 'vite-plus'; export default defineConfig({ + fmt: { + $schema: './node_modules/oxfmt/configuration_schema.json', + printWidth: 120, + singleQuote: true, + ignorePatterns: ['CHANGELOG.md', 'pnpm-lock.yaml'], + experimentalSortImports: { + groups: [ + ['type-import'], + ['type-builtin', 'value-builtin'], + ['type-external', 'value-external', 'type-internal', 'value-internal'], + ['type-parent', 'type-sibling', 'type-index', 'value-parent', 'value-sibling', 'value-index'], + ['ts-equals-import'], + ['unknown'], + ], + newlinesBetween: true, + order: 'asc', + }, + }, + lint: { + $schema: './node_modules/oxlint/configuration_schema.json', + env: { + node: true, + }, + extends: ['../../@eggjs/oxlint-config/.oxlintrc.json'], + categories: { + correctness: 'allow', + suspicious: 'allow', + pedantic: 'allow', + style: 'allow', + nursery: 'allow', + restriction: 'allow', + perf: 'allow', + }, + rules: { + 'no-extend-native': 'warn', + // Disable TypeScript rules + 'typescript/explicit-function-return-type': 'allow', + 'typescript/consistent-type-imports': 'allow', + 'typescript/consistent-type-definitions': 'allow', + 'typescript/consistent-indexed-object-style': 'allow', + 'typescript/no-inferrable-types': 'allow', + 'typescript/array-type': 'allow', + 'typescript/no-non-null-assertion': 'allow', + 'typescript/no-explicit-any': 'allow', + 'typescript/no-import-type-side-effects': 'allow', + 'typescript/no-dynamic-delete': 'allow', + 'typescript/prefer-ts-expect-error': 'allow', + 'typescript/ban-ts-comment': 'allow', + 'typescript/prefer-enum-initializers': 'allow', + 'typescript/explicit-module-boundary-types': 'allow', + // Disable import rules + 'import/exports-last': 'allow', + 'import/max-dependencies': 'allow', + 'import/no-cycle': 'allow', + 'import/no-anonymous-default-export': 'allow', + 'import/no-namespace': 'allow', + 'import/named': 'allow', + 'import/export': 'allow', + 'import/no-default-export': 'allow', + 'import/unambiguous': 'allow', + 'import/group-exports': 'allow', + 'import/extensions': 'allow', + 'import/consistent-type-specifier-style': 'allow', + 'import/prefer-default-export': 'allow', + 'import/no-named-as-default-member': 'allow', + // Disable unicorn rules + 'unicorn/error-message': 'allow', + 'unicorn/no-null': 'allow', + 'unicorn/filename-case': 'allow', + 'unicorn/prefer-structured-clone': 'allow', + 'unicorn/prefer-logical-operator-over-ternary': 'allow', + 'unicorn/prefer-number-properties': 'allow', + 'unicorn/prefer-array-some': 'allow', + 'unicorn/prefer-string-slice': 'allow', + 'unicorn/throw-new-error': 'allow', + 'unicorn/catch-error-name': 'allow', + 'unicorn/prefer-spread': 'allow', + 'unicorn/numeric-separators-style': 'allow', + 'unicorn/prefer-string-raw': 'allow', + 'unicorn/text-encoding-identifier-case': 'allow', + 'unicorn/no-array-for-each': 'allow', + 'unicorn/explicit-length-check': 'allow', + 'unicorn/no-lonely-if': 'allow', + 'unicorn/no-useless-undefined': 'allow', + 'unicorn/prefer-date-now': 'allow', + 'unicorn/no-static-only-class': 'allow', + 'unicorn/no-typeof-undefined': 'allow', + 'unicorn/prefer-negative-index': 'allow', + 'unicorn/no-anonymous-default-export': 'allow', + 'unicorn/consistent-assert': 'allow', + // Disable promise rules + 'promise/no-return-wrap': 'allow', + 'promise/param-names': 'allow', + 'promise/prefer-await-to-callbacks': 'allow', + 'promise/prefer-await-to-then': 'allow', + 'promise/prefer-catch': 'allow', + 'promise/no-return-in-finally': 'allow', + 'promise/avoid-new': 'allow', + // Disable other ESLint rules + 'constructor-super': 'allow', + 'getter-return': 'allow', + 'no-undef': 'allow', + 'no-unreachable': 'allow', + 'no-var': 'allow', + 'no-eq-null': 'allow', + 'no-await-in-loop': 'allow', + eqeqeq: 'allow', + 'init-declarations': 'allow', + curly: 'allow', + 'no-ternary': 'allow', + 'max-params': 'allow', + 'no-await-expression-member': 'allow', + 'no-continue': 'allow', + 'guard-for-in': 'allow', + 'func-style': 'allow', + 'sort-imports': 'allow', + yoda: 'allow', + 'sort-keys': 'allow', + 'no-magic-numbers': 'allow', + 'no-duplicate-imports': 'allow', + 'no-multi-assign': 'allow', + 'func-names': 'allow', + 'default-param-last': 'allow', + 'prefer-object-spread': 'allow', + 'no-undefined': 'allow', + 'no-plusplus': 'allow', + 'no-console': 'allow', + 'no-extraneous-class': 'allow', + 'no-empty-function': 'allow', + 'max-depth': 'allow', + 'max-lines-per-function': 'allow', + 'no-lonely-if': 'allow', + 'max-lines': 'allow', + 'require-await': 'allow', + 'max-nested-callbacks': 'allow', + 'max-classes-per-file': 'allow', + radix: 'allow', + 'no-negated-condition': 'allow', + 'no-else-return': 'allow', + 'no-throw-literal': 'allow', + 'id-length': 'allow', + 'arrow-body-style': 'allow', + 'prefer-destructuring': 'allow', + }, + ignorePatterns: ['test/fixtures/ts*'], + }, plugins: [codspeedPlugin()], test: { include: ['test/**/*.{test,spec}.{js,mjs,cjs,ts,mts,cts,jsx,tsx}'], From 6669a9808bc3765277fd223aa77aa99ac1d2a715 Mon Sep 17 00:00:00 2001 From: MK Date: Thu, 15 Jan 2026 22:14:39 +0800 Subject: [PATCH 02/33] FIXUP --- package.json | 19 ++--- pnpm-lock.yaml | 210 +++++++++++++++++++++++++++++++++++++++++++------ 2 files changed, 194 insertions(+), 35 deletions(-) diff --git a/package.json b/package.json index b1cef16a..9fde1b32 100644 --- a/package.json +++ b/package.json @@ -49,7 +49,7 @@ "fmt": "vite fmt", "typecheck": "tsc --noEmit && tsgo --noEmit", "fmtcheck": "vite fmt --check .", - "prebuild": "npm run clean", + "prebuild": "vite run clean", "build": "tsc --version && tshy && tshy-after && npm run build:version", "postbuild": "rm -rf *.tsbuildinfo", "build:version": "node ./scripts/replace_urllib_version.js", @@ -66,10 +66,10 @@ "test-keepalive": "cross-env TEST_KEEPALIVE_COUNT=50 vite test run --reporter=dot --test-timeout 180000 keep-alive-header.test.ts", "test-node16": "node examples/httpclient.cjs && node examples/search_github.cjs && node examples/timing.cjs", "cov": "vite test run --reporter=dot --coverage", - "ci": "npm run cov && npm run prepublishOnly && npm pack && attw --pack", + "ci": "vite run cov && vite run prepublishOnly && npm pack && attw --pack", "ci:node16": "cross-env NODE_OPTIONS=\"--require ./test/patch-for-node16-18.cjs\" vite test run --reporter=dot && npm run prepublishOnly && npm pack && attw --pack", "clean": "rm -rf dist && tsc -b --clean", - "prepublishOnly": "npm run build", + "prepublishOnly": "vite run build", "prepare": "husky" }, "dependencies": { @@ -108,13 +108,12 @@ "tshy": "^3.1.0", "tshy-after": "^1.4.1", "typescript": "^5.9.3", - "vitest": "npm:@voidzero-dev/vite-plus-test@latest", "vite-plus": "latest" }, "lint-staged": { "*": [ - "npm run lint -- --fix", - "vite fmt" + "vite run lint --fix", + "vite run fmt ." ] }, "tshy": { @@ -126,11 +125,5 @@ "engines": { "node": ">= 18.19.0" }, - "packageManager": "pnpm@10.28.0", - "pnpm": { - "overrides": { - "vite": "npm:@voidzero-dev/vite-plus-core@latest", - "vitest": "npm:@voidzero-dev/vite-plus-test@latest" - } - } + "packageManager": "pnpm@10.28.0" } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index e3cc8c2f..2c5360e3 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -4,10 +4,6 @@ settings: autoInstallPeers: true excludeLinksFromLockfile: false -overrides: - vite: npm:@voidzero-dev/vite-plus-core@latest - vitest: npm:@voidzero-dev/vite-plus-test@latest - importers: .: @@ -39,7 +35,7 @@ importers: version: 0.18.2 '@codspeed/vitest-plugin': specifier: ^5.0.1 - version: 5.0.1(@voidzero-dev/vite-plus-test@0.0.0-ab0b0858cb619f270f5e0a698fea3d6f5622a761(@arethetypeswrong/core@0.18.2)(@types/node@22.19.6)(typescript@5.9.3)(yaml@2.8.2))(tinybench@2.9.0)(vite@7.3.0(@types/node@22.19.6)(lightningcss@1.30.2)(yaml@2.8.2)) + version: 5.0.1(tinybench@2.9.0)(vite@7.3.0(@types/node@22.19.6)(lightningcss@1.30.2)(yaml@2.8.2))(vitest@4.0.17(@types/node@22.19.6)(lightningcss@1.30.2)(yaml@2.8.2)) '@eggjs/oxlint-config': specifier: ^1.0.0 version: 1.0.0 @@ -75,7 +71,7 @@ importers: version: 1.3.0 '@vitest/coverage-v8': specifier: ^4.0.17 - version: 4.0.17(@voidzero-dev/vite-plus-test@0.0.0-ab0b0858cb619f270f5e0a698fea3d6f5622a761(@arethetypeswrong/core@0.18.2)(@types/node@22.19.6)(typescript@5.9.3)(yaml@2.8.2)) + version: 4.0.17(vitest@4.0.17(@types/node@22.19.6)(lightningcss@1.30.2)(yaml@2.8.2)) busboy: specifier: ^1.6.0 version: 1.6.0 @@ -115,9 +111,6 @@ importers: vite-plus: specifier: latest version: 0.0.0-ab0b0858cb619f270f5e0a698fea3d6f5622a761(@arethetypeswrong/core@0.18.2)(@types/node@22.19.6)(typescript@5.9.3)(yaml@2.8.2) - vitest: - specifier: npm:@voidzero-dev/vite-plus-test@latest - version: '@voidzero-dev/vite-plus-test@0.0.0-ab0b0858cb619f270f5e0a698fea3d6f5622a761(@arethetypeswrong/core@0.18.2)(@types/node@22.19.6)(typescript@5.9.3)(yaml@2.8.2)' packages: @@ -141,13 +134,13 @@ packages: resolution: {integrity: sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==} engines: {node: '>=6.9.0'} - '@babel/parser@7.28.5': - resolution: {integrity: sha512-KKBU1VGYR7ORr3At5HAtUQ+TV3SzRCXmA/8OdDZiLDBIZxVyzXuztPjfLd3BV1PRAQGCMWWSHYhL0F8d5uHBDQ==} + '@babel/parser@7.28.6': + resolution: {integrity: sha512-TeR9zWR18BvbfPmGbLampPMW+uW1NZnJlRuuHso8i87QZNq2JRF9i6RgxRqtEq+wQGsS19NNTWr2duhnE49mfQ==} engines: {node: '>=6.0.0'} hasBin: true - '@babel/types@7.28.5': - resolution: {integrity: sha512-qQ5m48eI/MFLQ5PxQj4PFaprjyCTLI37ElWMmNs0K8Lk3dVeOdNpB3ks8jc7yM5CDmVC73eMVk/trk3fgmrUpA==} + '@babel/types@7.28.6': + resolution: {integrity: sha512-0ZrskXVEHSWIqZM/sQZ4EV3jZJXRkio/WCxaqKZP1g//CEWEPSfeZFcms4XeKBCHU0ZKnIkdJeU/kF+eRp5lBg==} engines: {node: '>=6.9.0'} '@bcoe/v8-coverage@1.0.2': @@ -611,6 +604,9 @@ packages: resolution: {integrity: sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==} engines: {node: '>=10'} + '@standard-schema/spec@1.1.0': + resolution: {integrity: sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==} + '@types/busboy@1.5.4': resolution: {integrity: sha512-kG7WrUuAKK0NoyxfQHsVE6j1m01s6kMma64E+OZenQABMQyTJop1DumUWcLwAQ2JzpefU7PDYoRDKl8uZosFjw==} @@ -693,9 +689,32 @@ packages: '@vitest/browser': optional: true + '@vitest/expect@4.0.17': + resolution: {integrity: sha512-mEoqP3RqhKlbmUmntNDDCJeTDavDR+fVYkSOw8qRwJFaW/0/5zA9zFeTrHqNtcmwh6j26yMmwx2PqUDPzt5ZAQ==} + + '@vitest/mocker@4.0.17': + resolution: {integrity: sha512-+ZtQhLA3lDh1tI2wxe3yMsGzbp7uuJSWBM1iTIKCbppWTSBN09PUC+L+fyNlQApQoR+Ps8twt2pbSSXg2fQVEQ==} + peerDependencies: + msw: ^2.4.9 + vite: ^6.0.0 || ^7.0.0-0 + peerDependenciesMeta: + msw: + optional: true + vite: + optional: true + '@vitest/pretty-format@4.0.17': resolution: {integrity: sha512-Ah3VAYmjcEdHg6+MwFE17qyLqBHZ+ni2ScKCiW2XrlSBV4H3Z7vYfPfz7CWQ33gyu76oc0Ai36+kgLU3rfF4nw==} + '@vitest/runner@4.0.17': + resolution: {integrity: sha512-JmuQyf8aMWoo/LmNFppdpkfRVHJcsgzkbCA+/Bk7VfNH7RE6Ut2qxegeyx2j3ojtJtKIbIGy3h+KxGfYfk28YQ==} + + '@vitest/snapshot@4.0.17': + resolution: {integrity: sha512-npPelD7oyL+YQM2gbIYvlavlMVWUfNNGZPcu0aEUQXt7FXTuqhmgiYupPnAanhKvyP6Srs2pIbWo30K0RbDtRQ==} + + '@vitest/spy@4.0.17': + resolution: {integrity: sha512-I1bQo8QaP6tZlTomQNWKJE6ym4SHf3oLS7ceNjozxxgzavRAgZDc06T7kD8gb9bXKEgcLNt00Z+kZO6KaJ62Ew==} + '@vitest/utils@4.0.17': resolution: {integrity: sha512-RG6iy+IzQpa9SB8HAFHJ9Y+pTzI+h8553MrciN9eC6TFBErqrQaTas4vG+MVj8S4uKk8uTT2p0vgZPnTdxd96w==} @@ -906,6 +925,10 @@ packages: resolution: {integrity: sha512-faqwZqnWxbxn+F1d399ygeamQNy3lPp/H9H6rNrqYh4FSVCtcY+3cub1MxA8o9mDd55mM8Aghuu/kuyYA6VTsA==} engines: {node: '>=6'} + 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==} engines: {node: '>=4'} @@ -1093,6 +1116,10 @@ packages: eventemitter3@5.0.1: resolution: {integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==} + expect-type@1.3.0: + resolution: {integrity: sha512-knvyeauYhqjOYvQ66MznSMs83wmHrCycNEN6Ao+2AeYEfxUIkuiVxdEa1qlGEPK+We3n0THiDciYSsCcgW/DoA==} + engines: {node: '>=12.0.0'} + fdir@6.5.0: resolution: {integrity: sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==} engines: {node: '>=12.0.0'} @@ -1463,6 +1490,9 @@ packages: resolution: {integrity: sha512-B5Y16Jr9LB9dHVkh6ZevG+vAbOsNOYCX+sXvFWFu7B3Iz5mijW3zdbMyhsh8ANd2mSWBYdJgnqi+mL7/LrOPYg==} engines: {node: 20 || >=22} + magic-string@0.30.21: + resolution: {integrity: sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==} + magicast@0.5.1: resolution: {integrity: sha512-xrHS24IxaLrvuo613F719wvOIv9xPHFWQHuvGUBmPnCA/3MQxKI3b+r7n1jAoDHmsbC5bRhTZYR77invLAxVnw==} @@ -1639,6 +1669,9 @@ packages: resolution: {integrity: sha512-oWyT4gICAu+kaA7QWk/jvCHWarMKNs6pXOGWKDTr7cw4IGcUbW+PeTfbaQiLGheFRpjo6O9J0PmyMfQPjH71oA==} engines: {node: 20 || >=22} + pathe@2.0.3: + resolution: {integrity: sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==} + pause-stream@0.0.11: resolution: {integrity: sha512-e3FBlXLmN/D1S+zHzanP4E/4Z60oFAa3O051qt1pxa7DEJWKAyil6upYVXCWadEnuoqa4Pkc9oUx9zsxYeRv8A==} @@ -1793,6 +1826,9 @@ packages: resolution: {integrity: sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==} engines: {node: '>= 0.4'} + siginfo@2.0.0: + resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==} + signal-exit@4.1.0: resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} engines: {node: '>=14'} @@ -1813,6 +1849,9 @@ packages: resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} engines: {node: '>=0.10.0'} + stackback@0.0.2: + resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==} + std-env@3.10.0: resolution: {integrity: sha512-5GS12FdOZNliM5mAOxFRg7Ir0pWz8MdpYm6AY6VPkGpbA7ZzmbzNcBJQ0GPvvyWgcY7QAhCgf9Uy89I03faLkg==} @@ -2027,6 +2066,40 @@ packages: yaml: optional: true + vitest@4.0.17: + resolution: {integrity: sha512-FQMeF0DJdWY0iOnbv466n/0BudNdKj1l5jYgl5JVTwjSsZSlqyXFt/9+1sEyhR6CLowbZpV7O1sCHrzBhucKKg==} + engines: {node: ^20.0.0 || ^22.0.0 || >=24.0.0} + hasBin: true + peerDependencies: + '@edge-runtime/vm': '*' + '@opentelemetry/api': ^1.9.0 + '@types/node': ^20.0.0 || ^22.0.0 || >=24.0.0 + '@vitest/browser-playwright': 4.0.17 + '@vitest/browser-preview': 4.0.17 + '@vitest/browser-webdriverio': 4.0.17 + '@vitest/ui': 4.0.17 + happy-dom: '*' + jsdom: '*' + peerDependenciesMeta: + '@edge-runtime/vm': + optional: true + '@opentelemetry/api': + optional: true + '@types/node': + optional: true + '@vitest/browser-playwright': + optional: true + '@vitest/browser-preview': + optional: true + '@vitest/browser-webdriverio': + optional: true + '@vitest/ui': + optional: true + happy-dom: + optional: true + jsdom: + optional: true + walk-up-path@4.0.0: resolution: {integrity: sha512-3hu+tD8YzSLGuFYtPRb48vdhKMi0KQV5sn+uWr8+7dMEq/2G/dtLrdDinkLjqq5TIbIBjYJ4Ax/n3YiaW7QM8A==} engines: {node: 20 || >=22} @@ -2052,6 +2125,11 @@ packages: engines: {node: '>= 8'} hasBin: true + why-is-node-running@2.3.0: + resolution: {integrity: sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w==} + engines: {node: '>=8'} + hasBin: true + wrap-ansi@7.0.0: resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} engines: {node: '>=10'} @@ -2129,11 +2207,11 @@ snapshots: '@babel/helper-validator-identifier@7.28.5': {} - '@babel/parser@7.28.5': + '@babel/parser@7.28.6': dependencies: - '@babel/types': 7.28.5 + '@babel/types': 7.28.6 - '@babel/types@7.28.5': + '@babel/types@7.28.6': dependencies: '@babel/helper-string-parser': 7.27.1 '@babel/helper-validator-identifier': 7.28.5 @@ -2151,12 +2229,12 @@ snapshots: transitivePeerDependencies: - debug - '@codspeed/vitest-plugin@5.0.1(@voidzero-dev/vite-plus-test@0.0.0-ab0b0858cb619f270f5e0a698fea3d6f5622a761(@arethetypeswrong/core@0.18.2)(@types/node@22.19.6)(typescript@5.9.3)(yaml@2.8.2))(tinybench@2.9.0)(vite@7.3.0(@types/node@22.19.6)(lightningcss@1.30.2)(yaml@2.8.2))': + '@codspeed/vitest-plugin@5.0.1(tinybench@2.9.0)(vite@7.3.0(@types/node@22.19.6)(lightningcss@1.30.2)(yaml@2.8.2))(vitest@4.0.17(@types/node@22.19.6)(lightningcss@1.30.2)(yaml@2.8.2))': dependencies: '@codspeed/core': 5.0.1 tinybench: 2.9.0 vite: 7.3.0(@types/node@22.19.6)(lightningcss@1.30.2)(yaml@2.8.2) - vitest: '@voidzero-dev/vite-plus-test@0.0.0-ab0b0858cb619f270f5e0a698fea3d6f5622a761(@arethetypeswrong/core@0.18.2)(@types/node@22.19.6)(typescript@5.9.3)(yaml@2.8.2)' + vitest: 4.0.17(@types/node@22.19.6)(lightningcss@1.30.2)(yaml@2.8.2) transitivePeerDependencies: - debug @@ -2406,6 +2484,8 @@ snapshots: '@sindresorhus/is@4.6.0': {} + '@standard-schema/spec@1.1.0': {} + '@types/busboy@1.5.4': dependencies: '@types/node': 22.19.6 @@ -2472,7 +2552,7 @@ snapshots: '@ungap/structured-clone@1.3.0': {} - '@vitest/coverage-v8@4.0.17(@voidzero-dev/vite-plus-test@0.0.0-ab0b0858cb619f270f5e0a698fea3d6f5622a761(@arethetypeswrong/core@0.18.2)(@types/node@22.19.6)(typescript@5.9.3)(yaml@2.8.2))': + '@vitest/coverage-v8@4.0.17(vitest@4.0.17(@types/node@22.19.6)(lightningcss@1.30.2)(yaml@2.8.2))': dependencies: '@bcoe/v8-coverage': 1.0.2 '@vitest/utils': 4.0.17 @@ -2484,12 +2564,42 @@ snapshots: obug: 2.1.1 std-env: 3.10.0 tinyrainbow: 3.0.3 - vitest: '@voidzero-dev/vite-plus-test@0.0.0-ab0b0858cb619f270f5e0a698fea3d6f5622a761(@arethetypeswrong/core@0.18.2)(@types/node@22.19.6)(typescript@5.9.3)(yaml@2.8.2)' + vitest: 4.0.17(@types/node@22.19.6)(lightningcss@1.30.2)(yaml@2.8.2) + + '@vitest/expect@4.0.17': + dependencies: + '@standard-schema/spec': 1.1.0 + '@types/chai': 5.2.3 + '@vitest/spy': 4.0.17 + '@vitest/utils': 4.0.17 + chai: 6.2.2 + tinyrainbow: 3.0.3 + + '@vitest/mocker@4.0.17(vite@7.3.0(@types/node@22.19.6)(lightningcss@1.30.2)(yaml@2.8.2))': + dependencies: + '@vitest/spy': 4.0.17 + estree-walker: 3.0.3 + magic-string: 0.30.21 + optionalDependencies: + vite: 7.3.0(@types/node@22.19.6)(lightningcss@1.30.2)(yaml@2.8.2) '@vitest/pretty-format@4.0.17': dependencies: tinyrainbow: 3.0.3 + '@vitest/runner@4.0.17': + dependencies: + '@vitest/utils': 4.0.17 + pathe: 2.0.3 + + '@vitest/snapshot@4.0.17': + dependencies: + '@vitest/pretty-format': 4.0.17 + magic-string: 0.30.21 + pathe: 2.0.3 + + '@vitest/spy@4.0.17': {} + '@vitest/utils@4.0.17': dependencies: '@vitest/pretty-format': 4.0.17 @@ -2666,6 +2776,8 @@ snapshots: camelcase@5.0.0: {} + chai@6.2.2: {} + chalk@2.4.2: dependencies: ansi-styles: 3.2.1 @@ -2927,6 +3039,8 @@ snapshots: eventemitter3@5.0.1: {} + expect-type@1.3.0: {} + fdir@6.5.0(picomatch@4.0.3): optionalDependencies: picomatch: 4.0.3 @@ -3280,10 +3394,14 @@ snapshots: lru-cache@11.2.4: {} + magic-string@0.30.21: + dependencies: + '@jridgewell/sourcemap-codec': 1.5.5 + magicast@0.5.1: dependencies: - '@babel/parser': 7.28.5 - '@babel/types': 7.28.5 + '@babel/parser': 7.28.6 + '@babel/types': 7.28.6 source-map-js: 1.2.1 make-dir@4.0.0: @@ -3447,6 +3565,8 @@ snapshots: lru-cache: 11.2.4 minipass: 7.1.2 + pathe@2.0.3: {} + pause-stream@0.0.11: dependencies: through: 2.3.8 @@ -3649,6 +3769,8 @@ snapshots: side-channel-map: 1.0.1 side-channel-weakmap: 1.0.2 + siginfo@2.0.0: {} + signal-exit@4.1.0: {} sirv@3.0.2: @@ -3668,6 +3790,8 @@ snapshots: source-map-js@1.2.1: {} + stackback@0.0.2: {} + std-env@3.10.0: {} stop-iteration-iterator@1.1.0: @@ -3920,6 +4044,43 @@ snapshots: lightningcss: 1.30.2 yaml: 2.8.2 + vitest@4.0.17(@types/node@22.19.6)(lightningcss@1.30.2)(yaml@2.8.2): + dependencies: + '@vitest/expect': 4.0.17 + '@vitest/mocker': 4.0.17(vite@7.3.0(@types/node@22.19.6)(lightningcss@1.30.2)(yaml@2.8.2)) + '@vitest/pretty-format': 4.0.17 + '@vitest/runner': 4.0.17 + '@vitest/snapshot': 4.0.17 + '@vitest/spy': 4.0.17 + '@vitest/utils': 4.0.17 + es-module-lexer: 1.7.0 + expect-type: 1.3.0 + magic-string: 0.30.21 + obug: 2.1.1 + pathe: 2.0.3 + picomatch: 4.0.3 + std-env: 3.10.0 + tinybench: 2.9.0 + tinyexec: 1.0.2 + tinyglobby: 0.2.15 + tinyrainbow: 3.0.3 + vite: 7.3.0(@types/node@22.19.6)(lightningcss@1.30.2)(yaml@2.8.2) + why-is-node-running: 2.3.0 + optionalDependencies: + '@types/node': 22.19.6 + transitivePeerDependencies: + - jiti + - less + - lightningcss + - msw + - sass + - sass-embedded + - stylus + - sugarss + - terser + - tsx + - yaml + walk-up-path@4.0.0: {} which-boxed-primitive@1.1.1: @@ -3967,6 +4128,11 @@ snapshots: dependencies: isexe: 2.0.0 + why-is-node-running@2.3.0: + dependencies: + siginfo: 2.0.0 + stackback: 0.0.2 + wrap-ansi@7.0.0: dependencies: ansi-styles: 4.3.0 From 84508f2750b52c4d87a7ae65bc95270bf348abcf Mon Sep 17 00:00:00 2001 From: MK Date: Thu, 15 Jan 2026 22:19:35 +0800 Subject: [PATCH 03/33] FIXUP --- package.json | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/package.json b/package.json index 9fde1b32..26e75a5f 100644 --- a/package.json +++ b/package.json @@ -50,24 +50,23 @@ "typecheck": "tsc --noEmit && tsgo --noEmit", "fmtcheck": "vite fmt --check .", "prebuild": "vite run clean", - "build": "tsc --version && tshy && tshy-after && npm run build:version", - "postbuild": "rm -rf *.tsbuildinfo", + "build": "tsc --version && tshy && tshy-after && vite run build:version && rm -rf *.tsbuildinfo", "build:version": "node ./scripts/replace_urllib_version.js", "build:cjs:test": "cd test/cjs && rm -rf node_modules && npm link ../.. && node index.js", "build:esm:test": "cd test/esm && rm -rf node_modules && npm link ../.. && node index.js", "build:mts:test": "cd test/mts && rm -rf node_modules && npm link ../.. && tsc", - "build:test": "npm run build && npm run build:cjs:test && npm run build:esm:test && npm run build:mts:test && npm run test-tsc", - "test-tsc": "npm run test-tsc:cjs:es2021 && npm run test-tsc:cjs && npm run test-tsc:esm", - "test-tsc:cjs": "cd test/fixtures/ts && rm -rf node_modules && npm link ../../.. && npm run build", - "test-tsc:cjs:es2021": "cd test/fixtures/ts-cjs-es2021 && rm -rf node_modules && npm link ../../.. && npm run build", - "test-tsc:esm": "cd test/fixtures/ts-esm && rm -rf node_modules && npm link ../../.. && npm run build", + "build:test": "vite run build && vite run build:cjs:test && vite run build:esm:test && vite run build:mts:test && vite run test-tsc", + "test-tsc": "vite run test-tsc:cjs:es2021 && vite run test-tsc:cjs && vite run test-tsc:esm", + "test-tsc:cjs": "cd test/fixtures/ts && rm -rf node_modules && npm link ../../.. && vite run build", + "test-tsc:cjs:es2021": "cd test/fixtures/ts-cjs-es2021 && rm -rf node_modules && npm link ../../.. && vite run build", + "test-tsc:esm": "cd test/fixtures/ts-esm && rm -rf node_modules && npm link ../../.. && vite run build", "test": "vite run lint -- --fix && vite test run --reporter=dot", "bench": "vite test bench", "test-keepalive": "cross-env TEST_KEEPALIVE_COUNT=50 vite test run --reporter=dot --test-timeout 180000 keep-alive-header.test.ts", "test-node16": "node examples/httpclient.cjs && node examples/search_github.cjs && node examples/timing.cjs", "cov": "vite test run --reporter=dot --coverage", "ci": "vite run cov && vite run prepublishOnly && npm pack && attw --pack", - "ci:node16": "cross-env NODE_OPTIONS=\"--require ./test/patch-for-node16-18.cjs\" vite test run --reporter=dot && npm run prepublishOnly && npm pack && attw --pack", + "ci:node16": "cross-env NODE_OPTIONS=\"--require ./test/patch-for-node16-18.cjs\" vite test run --reporter=dot && vite run prepublishOnly && npm pack && attw --pack", "clean": "rm -rf dist && tsc -b --clean", "prepublishOnly": "vite run build", "prepare": "husky" From fba5a32639f84a6f50fc50aa75deebbe89419305 Mon Sep 17 00:00:00 2001 From: MK Date: Thu, 15 Jan 2026 22:34:24 +0800 Subject: [PATCH 04/33] FIXUP --- .github/workflows/nodejs-16.yml | 7 +++++-- package.json | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/.github/workflows/nodejs-16.yml b/.github/workflows/nodejs-16.yml index 48bc9647..2cafbdb7 100644 --- a/.github/workflows/nodejs-16.yml +++ b/.github/workflows/nodejs-16.yml @@ -22,7 +22,10 @@ jobs: - run: npm install - name: Downgrade vitest for Node 16 run: npm install vitest@3 @vitest/coverage-v8@3 --save-dev --ignore-scripts - - run: npm run ci:node16 - - run: npm run prepublishOnly + - name: Patch vitest imports and run tests + run: | + for f in test/*.test.ts; do [ -e "$f" ] || exit 0; sed --version >/dev/null 2>&1 && sed -i "s@'vite-plus/test'@'vitest'@g" "$f" || sed -i '' "s@'vite-plus/test'@'vitest'@g" "$f"; done + NODE_OPTIONS="--require ./test/patch-for-node16-18.cjs" npx vitest --reporter=dot && npm run build && npm pack && npx attw --pack + - run: npm run build - run: node -v - run: npm run test-node16 diff --git a/package.json b/package.json index 26e75a5f..b0245241 100644 --- a/package.json +++ b/package.json @@ -49,7 +49,7 @@ "fmt": "vite fmt", "typecheck": "tsc --noEmit && tsgo --noEmit", "fmtcheck": "vite fmt --check .", - "prebuild": "vite run clean", + "prebuild": "npm run clean", "build": "tsc --version && tshy && tshy-after && vite run build:version && rm -rf *.tsbuildinfo", "build:version": "node ./scripts/replace_urllib_version.js", "build:cjs:test": "cd test/cjs && rm -rf node_modules && npm link ../.. && node index.js", From 928555f08a4cd00bcb5504a7f9327d96ae5d878c Mon Sep 17 00:00:00 2001 From: MK Date: Thu, 15 Jan 2026 22:41:51 +0800 Subject: [PATCH 05/33] FIXUP --- package.json | 12 +++++++++++- vite.config.ts | 4 ++-- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index b0245241..bddffe73 100644 --- a/package.json +++ b/package.json @@ -124,5 +124,15 @@ "engines": { "node": ">= 18.19.0" }, - "packageManager": "pnpm@10.28.0" + "packageManager": "pnpm@10.28.0", + "pnpm": { + "overrides": { + "vite": "npm:@voidzero-dev/vite-plus-core@latest", + "vitest": "npm:@voidzero-dev/vite-plus-test@latest" + } + }, + "overrides": { + "vite": "npm:@voidzero-dev/vite-plus-core@latest", + "vitest": "npm:@voidzero-dev/vite-plus-test@latest" + } } diff --git a/vite.config.ts b/vite.config.ts index 57aba22e..845c17ea 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -1,4 +1,4 @@ -import codspeedPlugin from '@codspeed/vitest-plugin'; +// import codspeedPlugin from '@codspeed/vitest-plugin'; import { defineConfig } from 'vite-plus'; export default defineConfig({ @@ -148,7 +148,7 @@ export default defineConfig({ }, ignorePatterns: ['test/fixtures/ts*'], }, - plugins: [codspeedPlugin()], + // plugins: [codspeedPlugin()], test: { include: ['test/**/*.{test,spec}.{js,mjs,cjs,ts,mts,cts,jsx,tsx}'], testTimeout: 60000, From 717eca93321696080fcfea370cb7f6b700eacbab Mon Sep 17 00:00:00 2001 From: MK Date: Thu, 15 Jan 2026 22:42:31 +0800 Subject: [PATCH 06/33] FIXUP --- pnpm-lock.yaml | 34 ++++++++++++++++++++++------------ 1 file changed, 22 insertions(+), 12 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 2c5360e3..12d502d8 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -4,6 +4,10 @@ settings: autoInstallPeers: true excludeLinksFromLockfile: false +overrides: + vite: npm:@voidzero-dev/vite-plus-core@latest + vitest: npm:@voidzero-dev/vite-plus-test@latest + importers: .: @@ -35,7 +39,7 @@ importers: version: 0.18.2 '@codspeed/vitest-plugin': specifier: ^5.0.1 - version: 5.0.1(tinybench@2.9.0)(vite@7.3.0(@types/node@22.19.6)(lightningcss@1.30.2)(yaml@2.8.2))(vitest@4.0.17(@types/node@22.19.6)(lightningcss@1.30.2)(yaml@2.8.2)) + version: 5.0.1(tinybench@2.9.0)(vite@7.3.0(@types/node@22.19.6)(lightningcss@1.30.2)(yaml@2.8.2))(vitest@4.0.17(@arethetypeswrong/core@0.18.2)(@types/node@22.19.6)(typescript@5.9.3)(yaml@2.8.2)) '@eggjs/oxlint-config': specifier: ^1.0.0 version: 1.0.0 @@ -71,7 +75,7 @@ importers: version: 1.3.0 '@vitest/coverage-v8': specifier: ^4.0.17 - version: 4.0.17(vitest@4.0.17(@types/node@22.19.6)(lightningcss@1.30.2)(yaml@2.8.2)) + version: 4.0.17(vitest@4.0.17(@arethetypeswrong/core@0.18.2)(@types/node@22.19.6)(typescript@5.9.3)(yaml@2.8.2)) busboy: specifier: ^1.6.0 version: 1.6.0 @@ -2229,12 +2233,12 @@ snapshots: transitivePeerDependencies: - debug - '@codspeed/vitest-plugin@5.0.1(tinybench@2.9.0)(vite@7.3.0(@types/node@22.19.6)(lightningcss@1.30.2)(yaml@2.8.2))(vitest@4.0.17(@types/node@22.19.6)(lightningcss@1.30.2)(yaml@2.8.2))': + '@codspeed/vitest-plugin@5.0.1(tinybench@2.9.0)(vite@7.3.0(@types/node@22.19.6)(lightningcss@1.30.2)(yaml@2.8.2))(vitest@4.0.17(@arethetypeswrong/core@0.18.2)(@types/node@22.19.6)(typescript@5.9.3)(yaml@2.8.2))': dependencies: '@codspeed/core': 5.0.1 tinybench: 2.9.0 vite: 7.3.0(@types/node@22.19.6)(lightningcss@1.30.2)(yaml@2.8.2) - vitest: 4.0.17(@types/node@22.19.6)(lightningcss@1.30.2)(yaml@2.8.2) + vitest: 4.0.17(@arethetypeswrong/core@0.18.2)(@types/node@22.19.6)(typescript@5.9.3)(yaml@2.8.2) transitivePeerDependencies: - debug @@ -2552,7 +2556,7 @@ snapshots: '@ungap/structured-clone@1.3.0': {} - '@vitest/coverage-v8@4.0.17(vitest@4.0.17(@types/node@22.19.6)(lightningcss@1.30.2)(yaml@2.8.2))': + '@vitest/coverage-v8@4.0.17(vitest@4.0.17(@arethetypeswrong/core@0.18.2)(@types/node@22.19.6)(typescript@5.9.3)(yaml@2.8.2))': dependencies: '@bcoe/v8-coverage': 1.0.2 '@vitest/utils': 4.0.17 @@ -2564,7 +2568,7 @@ snapshots: obug: 2.1.1 std-env: 3.10.0 tinyrainbow: 3.0.3 - vitest: 4.0.17(@types/node@22.19.6)(lightningcss@1.30.2)(yaml@2.8.2) + vitest: 4.0.17(@arethetypeswrong/core@0.18.2)(@types/node@22.19.6)(typescript@5.9.3)(yaml@2.8.2) '@vitest/expect@4.0.17': dependencies: @@ -2575,13 +2579,13 @@ snapshots: chai: 6.2.2 tinyrainbow: 3.0.3 - '@vitest/mocker@4.0.17(vite@7.3.0(@types/node@22.19.6)(lightningcss@1.30.2)(yaml@2.8.2))': + '@vitest/mocker@4.0.17(@voidzero-dev/vite-plus-core@0.0.0-ab0b0858cb619f270f5e0a698fea3d6f5622a761(@arethetypeswrong/core@0.18.2)(@types/node@22.19.6)(typescript@5.9.3)(yaml@2.8.2))': dependencies: '@vitest/spy': 4.0.17 estree-walker: 3.0.3 magic-string: 0.30.21 optionalDependencies: - vite: 7.3.0(@types/node@22.19.6)(lightningcss@1.30.2)(yaml@2.8.2) + vite: '@voidzero-dev/vite-plus-core@0.0.0-ab0b0858cb619f270f5e0a698fea3d6f5622a761(@arethetypeswrong/core@0.18.2)(@types/node@22.19.6)(typescript@5.9.3)(yaml@2.8.2)' '@vitest/pretty-format@4.0.17': dependencies: @@ -4044,10 +4048,10 @@ snapshots: lightningcss: 1.30.2 yaml: 2.8.2 - vitest@4.0.17(@types/node@22.19.6)(lightningcss@1.30.2)(yaml@2.8.2): + vitest@4.0.17(@arethetypeswrong/core@0.18.2)(@types/node@22.19.6)(typescript@5.9.3)(yaml@2.8.2): dependencies: '@vitest/expect': 4.0.17 - '@vitest/mocker': 4.0.17(vite@7.3.0(@types/node@22.19.6)(lightningcss@1.30.2)(yaml@2.8.2)) + '@vitest/mocker': 4.0.17(@voidzero-dev/vite-plus-core@0.0.0-ab0b0858cb619f270f5e0a698fea3d6f5622a761(@arethetypeswrong/core@0.18.2)(@types/node@22.19.6)(typescript@5.9.3)(yaml@2.8.2)) '@vitest/pretty-format': 4.0.17 '@vitest/runner': 4.0.17 '@vitest/snapshot': 4.0.17 @@ -4064,21 +4068,27 @@ snapshots: tinyexec: 1.0.2 tinyglobby: 0.2.15 tinyrainbow: 3.0.3 - vite: 7.3.0(@types/node@22.19.6)(lightningcss@1.30.2)(yaml@2.8.2) + vite: '@voidzero-dev/vite-plus-core@0.0.0-ab0b0858cb619f270f5e0a698fea3d6f5622a761(@arethetypeswrong/core@0.18.2)(@types/node@22.19.6)(typescript@5.9.3)(yaml@2.8.2)' why-is-node-running: 2.3.0 optionalDependencies: '@types/node': 22.19.6 transitivePeerDependencies: + - '@arethetypeswrong/core' + - '@vitejs/devtools' + - esbuild - jiti - less - - lightningcss - msw + - publint - sass - sass-embedded - stylus - sugarss - terser - tsx + - typescript + - unplugin-lightningcss + - unplugin-unused - yaml walk-up-path@4.0.0: {} From e1749d600d8ad09b1bea86f4c27c6fea632dc2dd Mon Sep 17 00:00:00 2001 From: MK Date: Thu, 15 Jan 2026 22:54:26 +0800 Subject: [PATCH 07/33] FIXUP --- package.json | 1 - pnpm-lock.yaml | 651 ------------------------------------------------- 2 files changed, 652 deletions(-) diff --git a/package.json b/package.json index bddffe73..502604a8 100644 --- a/package.json +++ b/package.json @@ -82,7 +82,6 @@ }, "devDependencies": { "@arethetypeswrong/cli": "^0.18.2", - "@codspeed/vitest-plugin": "^5.0.1", "@eggjs/oxlint-config": "^1.0.0", "@eggjs/tsconfig": "^2.0.0", "@types/busboy": "^1.5.4", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 12d502d8..6ca91523 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -37,9 +37,6 @@ importers: '@arethetypeswrong/cli': specifier: ^0.18.2 version: 0.18.2 - '@codspeed/vitest-plugin': - specifier: ^5.0.1 - version: 5.0.1(tinybench@2.9.0)(vite@7.3.0(@types/node@22.19.6)(lightningcss@1.30.2)(yaml@2.8.2))(vitest@4.0.17(@arethetypeswrong/core@0.18.2)(@types/node@22.19.6)(typescript@5.9.3)(yaml@2.8.2)) '@eggjs/oxlint-config': specifier: ^1.0.0 version: 1.0.0 @@ -154,16 +151,6 @@ packages: '@braidai/lang@1.1.2': resolution: {integrity: sha512-qBcknbBufNHlui137Hft8xauQMTZDKdophmLFv05r2eNmdIv/MlPuP4TdUknHG68UdWLgVZwgxVe735HzJNIwA==} - '@codspeed/core@5.0.1': - resolution: {integrity: sha512-4g5ZyFAin8QywK4+0FK1uXG3GLRPu0oc3xbP+7OUhhFxbwpzFuaJtKmnTofMqLy9/pHH6Bl/7H0/DTVH3cpFkA==} - - '@codspeed/vitest-plugin@5.0.1': - resolution: {integrity: sha512-RQLy8AGI16oTtmTyBIS2iKzD4AQQzJP7waurrYkUlnOlCa5Yp/7KXVZuZVzhqwYmPcH984xzFtsC2CENYbpRHQ==} - peerDependencies: - tinybench: '>=2.9.0' - vite: ^4.2.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 - vitest: '>=3.2' - '@colors/colors@1.5.0': resolution: {integrity: sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==} engines: {node: '>=0.1.90'} @@ -178,162 +165,6 @@ packages: '@epic-web/invariant@1.0.0': resolution: {integrity: sha512-lrTPqgvfFQtR/eY/qkIzp98OGdNJu0m5ji3q/nJI8v3SXkRKEnWiOxMmbvcSoAIzv/cGiuvRy57k4suKQSAdwA==} - '@esbuild/aix-ppc64@0.27.2': - resolution: {integrity: sha512-GZMB+a0mOMZs4MpDbj8RJp4cw+w1WV5NYD6xzgvzUJ5Ek2jerwfO2eADyI6ExDSUED+1X8aMbegahsJi+8mgpw==} - engines: {node: '>=18'} - cpu: [ppc64] - os: [aix] - - '@esbuild/android-arm64@0.27.2': - resolution: {integrity: sha512-pvz8ZZ7ot/RBphf8fv60ljmaoydPU12VuXHImtAs0XhLLw+EXBi2BLe3OYSBslR4rryHvweW5gmkKFwTiFy6KA==} - engines: {node: '>=18'} - cpu: [arm64] - os: [android] - - '@esbuild/android-arm@0.27.2': - resolution: {integrity: sha512-DVNI8jlPa7Ujbr1yjU2PfUSRtAUZPG9I1RwW4F4xFB1Imiu2on0ADiI/c3td+KmDtVKNbi+nffGDQMfcIMkwIA==} - engines: {node: '>=18'} - cpu: [arm] - os: [android] - - '@esbuild/android-x64@0.27.2': - resolution: {integrity: sha512-z8Ank4Byh4TJJOh4wpz8g2vDy75zFL0TlZlkUkEwYXuPSgX8yzep596n6mT7905kA9uHZsf/o2OJZubl2l3M7A==} - engines: {node: '>=18'} - cpu: [x64] - os: [android] - - '@esbuild/darwin-arm64@0.27.2': - resolution: {integrity: sha512-davCD2Zc80nzDVRwXTcQP/28fiJbcOwvdolL0sOiOsbwBa72kegmVU0Wrh1MYrbuCL98Omp5dVhQFWRKR2ZAlg==} - engines: {node: '>=18'} - cpu: [arm64] - os: [darwin] - - '@esbuild/darwin-x64@0.27.2': - resolution: {integrity: sha512-ZxtijOmlQCBWGwbVmwOF/UCzuGIbUkqB1faQRf5akQmxRJ1ujusWsb3CVfk/9iZKr2L5SMU5wPBi1UWbvL+VQA==} - engines: {node: '>=18'} - cpu: [x64] - os: [darwin] - - '@esbuild/freebsd-arm64@0.27.2': - resolution: {integrity: sha512-lS/9CN+rgqQ9czogxlMcBMGd+l8Q3Nj1MFQwBZJyoEKI50XGxwuzznYdwcav6lpOGv5BqaZXqvBSiB/kJ5op+g==} - engines: {node: '>=18'} - cpu: [arm64] - os: [freebsd] - - '@esbuild/freebsd-x64@0.27.2': - resolution: {integrity: sha512-tAfqtNYb4YgPnJlEFu4c212HYjQWSO/w/h/lQaBK7RbwGIkBOuNKQI9tqWzx7Wtp7bTPaGC6MJvWI608P3wXYA==} - engines: {node: '>=18'} - cpu: [x64] - os: [freebsd] - - '@esbuild/linux-arm64@0.27.2': - resolution: {integrity: sha512-hYxN8pr66NsCCiRFkHUAsxylNOcAQaxSSkHMMjcpx0si13t1LHFphxJZUiGwojB1a/Hd5OiPIqDdXONia6bhTw==} - engines: {node: '>=18'} - cpu: [arm64] - os: [linux] - - '@esbuild/linux-arm@0.27.2': - resolution: {integrity: sha512-vWfq4GaIMP9AIe4yj1ZUW18RDhx6EPQKjwe7n8BbIecFtCQG4CfHGaHuh7fdfq+y3LIA2vGS/o9ZBGVxIDi9hw==} - engines: {node: '>=18'} - cpu: [arm] - os: [linux] - - '@esbuild/linux-ia32@0.27.2': - resolution: {integrity: sha512-MJt5BRRSScPDwG2hLelYhAAKh9imjHK5+NE/tvnRLbIqUWa+0E9N4WNMjmp/kXXPHZGqPLxggwVhz7QP8CTR8w==} - engines: {node: '>=18'} - cpu: [ia32] - os: [linux] - - '@esbuild/linux-loong64@0.27.2': - resolution: {integrity: sha512-lugyF1atnAT463aO6KPshVCJK5NgRnU4yb3FUumyVz+cGvZbontBgzeGFO1nF+dPueHD367a2ZXe1NtUkAjOtg==} - engines: {node: '>=18'} - cpu: [loong64] - os: [linux] - - '@esbuild/linux-mips64el@0.27.2': - resolution: {integrity: sha512-nlP2I6ArEBewvJ2gjrrkESEZkB5mIoaTswuqNFRv/WYd+ATtUpe9Y09RnJvgvdag7he0OWgEZWhviS1OTOKixw==} - engines: {node: '>=18'} - cpu: [mips64el] - os: [linux] - - '@esbuild/linux-ppc64@0.27.2': - resolution: {integrity: sha512-C92gnpey7tUQONqg1n6dKVbx3vphKtTHJaNG2Ok9lGwbZil6DrfyecMsp9CrmXGQJmZ7iiVXvvZH6Ml5hL6XdQ==} - engines: {node: '>=18'} - cpu: [ppc64] - os: [linux] - - '@esbuild/linux-riscv64@0.27.2': - resolution: {integrity: sha512-B5BOmojNtUyN8AXlK0QJyvjEZkWwy/FKvakkTDCziX95AowLZKR6aCDhG7LeF7uMCXEJqwa8Bejz5LTPYm8AvA==} - engines: {node: '>=18'} - cpu: [riscv64] - os: [linux] - - '@esbuild/linux-s390x@0.27.2': - resolution: {integrity: sha512-p4bm9+wsPwup5Z8f4EpfN63qNagQ47Ua2znaqGH6bqLlmJ4bx97Y9JdqxgGZ6Y8xVTixUnEkoKSHcpRlDnNr5w==} - engines: {node: '>=18'} - cpu: [s390x] - os: [linux] - - '@esbuild/linux-x64@0.27.2': - resolution: {integrity: sha512-uwp2Tip5aPmH+NRUwTcfLb+W32WXjpFejTIOWZFw/v7/KnpCDKG66u4DLcurQpiYTiYwQ9B7KOeMJvLCu/OvbA==} - engines: {node: '>=18'} - cpu: [x64] - os: [linux] - - '@esbuild/netbsd-arm64@0.27.2': - resolution: {integrity: sha512-Kj6DiBlwXrPsCRDeRvGAUb/LNrBASrfqAIok+xB0LxK8CHqxZ037viF13ugfsIpePH93mX7xfJp97cyDuTZ3cw==} - engines: {node: '>=18'} - cpu: [arm64] - os: [netbsd] - - '@esbuild/netbsd-x64@0.27.2': - resolution: {integrity: sha512-HwGDZ0VLVBY3Y+Nw0JexZy9o/nUAWq9MlV7cahpaXKW6TOzfVno3y3/M8Ga8u8Yr7GldLOov27xiCnqRZf0tCA==} - engines: {node: '>=18'} - cpu: [x64] - os: [netbsd] - - '@esbuild/openbsd-arm64@0.27.2': - resolution: {integrity: sha512-DNIHH2BPQ5551A7oSHD0CKbwIA/Ox7+78/AWkbS5QoRzaqlev2uFayfSxq68EkonB+IKjiuxBFoV8ESJy8bOHA==} - engines: {node: '>=18'} - cpu: [arm64] - os: [openbsd] - - '@esbuild/openbsd-x64@0.27.2': - resolution: {integrity: sha512-/it7w9Nb7+0KFIzjalNJVR5bOzA9Vay+yIPLVHfIQYG/j+j9VTH84aNB8ExGKPU4AzfaEvN9/V4HV+F+vo8OEg==} - engines: {node: '>=18'} - cpu: [x64] - os: [openbsd] - - '@esbuild/openharmony-arm64@0.27.2': - resolution: {integrity: sha512-LRBbCmiU51IXfeXk59csuX/aSaToeG7w48nMwA6049Y4J4+VbWALAuXcs+qcD04rHDuSCSRKdmY63sruDS5qag==} - engines: {node: '>=18'} - cpu: [arm64] - os: [openharmony] - - '@esbuild/sunos-x64@0.27.2': - resolution: {integrity: sha512-kMtx1yqJHTmqaqHPAzKCAkDaKsffmXkPHThSfRwZGyuqyIeBvf08KSsYXl+abf5HDAPMJIPnbBfXvP2ZC2TfHg==} - engines: {node: '>=18'} - cpu: [x64] - os: [sunos] - - '@esbuild/win32-arm64@0.27.2': - resolution: {integrity: sha512-Yaf78O/B3Kkh+nKABUF++bvJv5Ijoy9AN1ww904rOXZFLWVc5OLOfL56W+C8F9xn5JQZa3UX6m+IktJnIb1Jjg==} - engines: {node: '>=18'} - cpu: [arm64] - os: [win32] - - '@esbuild/win32-ia32@0.27.2': - resolution: {integrity: sha512-Iuws0kxo4yusk7sw70Xa2E2imZU5HoixzxfGCdxwBdhiDgt9vX9VUCBhqcwY7/uh//78A1hMkkROMJq9l27oLQ==} - engines: {node: '>=18'} - cpu: [ia32] - os: [win32] - - '@esbuild/win32-x64@0.27.2': - resolution: {integrity: sha512-sRdU18mcKf7F+YgheI/zGf5alZatMUTKj/jNS6l744f9u3WFu4v7twcUI9vu4mknF4Y9aDlblIie0IM+5xxaqQ==} - engines: {node: '>=18'} - cpu: [x64] - os: [win32] - '@isaacs/balanced-match@4.0.1': resolution: {integrity: sha512-yzMTt9lEb8Gv7zRioUilSglI0c0smZ9k5D65677DLWLtWJaXIS3CqcGyUFByYKlnUj6TkjLVs54fBl6+TiGQDQ==} engines: {node: 20 || >=22} @@ -483,127 +314,6 @@ packages: '@polka/url@1.0.0-next.29': resolution: {integrity: sha512-wwQAWhWSuHaag8c4q/KN/vCoeOJYshAIvMQwD4GpSb3OiZklFfvAgmj0VCBBImRpuF/aFgIRzllXlVX93Jevww==} - '@rollup/rollup-android-arm-eabi@4.54.0': - resolution: {integrity: sha512-OywsdRHrFvCdvsewAInDKCNyR3laPA2mc9bRYJ6LBp5IyvF3fvXbbNR0bSzHlZVFtn6E0xw2oZlyjg4rKCVcng==} - cpu: [arm] - os: [android] - - '@rollup/rollup-android-arm64@4.54.0': - resolution: {integrity: sha512-Skx39Uv+u7H224Af+bDgNinitlmHyQX1K/atIA32JP3JQw6hVODX5tkbi2zof/E69M1qH2UoN3Xdxgs90mmNYw==} - cpu: [arm64] - os: [android] - - '@rollup/rollup-darwin-arm64@4.54.0': - resolution: {integrity: sha512-k43D4qta/+6Fq+nCDhhv9yP2HdeKeP56QrUUTW7E6PhZP1US6NDqpJj4MY0jBHlJivVJD5P8NxrjuobZBJTCRw==} - cpu: [arm64] - os: [darwin] - - '@rollup/rollup-darwin-x64@4.54.0': - resolution: {integrity: sha512-cOo7biqwkpawslEfox5Vs8/qj83M/aZCSSNIWpVzfU2CYHa2G3P1UN5WF01RdTHSgCkri7XOlTdtk17BezlV3A==} - cpu: [x64] - os: [darwin] - - '@rollup/rollup-freebsd-arm64@4.54.0': - resolution: {integrity: sha512-miSvuFkmvFbgJ1BevMa4CPCFt5MPGw094knM64W9I0giUIMMmRYcGW/JWZDriaw/k1kOBtsWh1z6nIFV1vPNtA==} - cpu: [arm64] - os: [freebsd] - - '@rollup/rollup-freebsd-x64@4.54.0': - resolution: {integrity: sha512-KGXIs55+b/ZfZsq9aR026tmr/+7tq6VG6MsnrvF4H8VhwflTIuYh+LFUlIsRdQSgrgmtM3fVATzEAj4hBQlaqQ==} - cpu: [x64] - os: [freebsd] - - '@rollup/rollup-linux-arm-gnueabihf@4.54.0': - resolution: {integrity: sha512-EHMUcDwhtdRGlXZsGSIuXSYwD5kOT9NVnx9sqzYiwAc91wfYOE1g1djOEDseZJKKqtHAHGwnGPQu3kytmfaXLQ==} - cpu: [arm] - os: [linux] - libc: [glibc] - - '@rollup/rollup-linux-arm-musleabihf@4.54.0': - resolution: {integrity: sha512-+pBrqEjaakN2ySv5RVrj/qLytYhPKEUwk+e3SFU5jTLHIcAtqh2rLrd/OkbNuHJpsBgxsD8ccJt5ga/SeG0JmA==} - cpu: [arm] - os: [linux] - libc: [musl] - - '@rollup/rollup-linux-arm64-gnu@4.54.0': - resolution: {integrity: sha512-NSqc7rE9wuUaRBsBp5ckQ5CVz5aIRKCwsoa6WMF7G01sX3/qHUw/z4pv+D+ahL1EIKy6Enpcnz1RY8pf7bjwng==} - cpu: [arm64] - os: [linux] - libc: [glibc] - - '@rollup/rollup-linux-arm64-musl@4.54.0': - resolution: {integrity: sha512-gr5vDbg3Bakga5kbdpqx81m2n9IX8M6gIMlQQIXiLTNeQW6CucvuInJ91EuCJ/JYvc+rcLLsDFcfAD1K7fMofg==} - cpu: [arm64] - os: [linux] - libc: [musl] - - '@rollup/rollup-linux-loong64-gnu@4.54.0': - resolution: {integrity: sha512-gsrtB1NA3ZYj2vq0Rzkylo9ylCtW/PhpLEivlgWe0bpgtX5+9j9EZa0wtZiCjgu6zmSeZWyI/e2YRX1URozpIw==} - cpu: [loong64] - os: [linux] - libc: [glibc] - - '@rollup/rollup-linux-ppc64-gnu@4.54.0': - resolution: {integrity: sha512-y3qNOfTBStmFNq+t4s7Tmc9hW2ENtPg8FeUD/VShI7rKxNW7O4fFeaYbMsd3tpFlIg1Q8IapFgy7Q9i2BqeBvA==} - cpu: [ppc64] - os: [linux] - libc: [glibc] - - '@rollup/rollup-linux-riscv64-gnu@4.54.0': - resolution: {integrity: sha512-89sepv7h2lIVPsFma8iwmccN7Yjjtgz0Rj/Ou6fEqg3HDhpCa+Et+YSufy27i6b0Wav69Qv4WBNl3Rs6pwhebQ==} - cpu: [riscv64] - os: [linux] - libc: [glibc] - - '@rollup/rollup-linux-riscv64-musl@4.54.0': - resolution: {integrity: sha512-ZcU77ieh0M2Q8Ur7D5X7KvK+UxbXeDHwiOt/CPSBTI1fBmeDMivW0dPkdqkT4rOgDjrDDBUed9x4EgraIKoR2A==} - cpu: [riscv64] - os: [linux] - libc: [musl] - - '@rollup/rollup-linux-s390x-gnu@4.54.0': - resolution: {integrity: sha512-2AdWy5RdDF5+4YfG/YesGDDtbyJlC9LHmL6rZw6FurBJ5n4vFGupsOBGfwMRjBYH7qRQowT8D/U4LoSvVwOhSQ==} - cpu: [s390x] - os: [linux] - libc: [glibc] - - '@rollup/rollup-linux-x64-gnu@4.54.0': - resolution: {integrity: sha512-WGt5J8Ij/rvyqpFexxk3ffKqqbLf9AqrTBbWDk7ApGUzaIs6V+s2s84kAxklFwmMF/vBNGrVdYgbblCOFFezMQ==} - cpu: [x64] - os: [linux] - libc: [glibc] - - '@rollup/rollup-linux-x64-musl@4.54.0': - resolution: {integrity: sha512-JzQmb38ATzHjxlPHuTH6tE7ojnMKM2kYNzt44LO/jJi8BpceEC8QuXYA908n8r3CNuG/B3BV8VR3Hi1rYtmPiw==} - cpu: [x64] - os: [linux] - libc: [musl] - - '@rollup/rollup-openharmony-arm64@4.54.0': - resolution: {integrity: sha512-huT3fd0iC7jigGh7n3q/+lfPcXxBi+om/Rs3yiFxjvSxbSB6aohDFXbWvlspaqjeOh+hx7DDHS+5Es5qRkWkZg==} - cpu: [arm64] - os: [openharmony] - - '@rollup/rollup-win32-arm64-msvc@4.54.0': - resolution: {integrity: sha512-c2V0W1bsKIKfbLMBu/WGBz6Yci8nJ/ZJdheE0EwB73N3MvHYKiKGs3mVilX4Gs70eGeDaMqEob25Tw2Gb9Nqyw==} - cpu: [arm64] - os: [win32] - - '@rollup/rollup-win32-ia32-msvc@4.54.0': - resolution: {integrity: sha512-woEHgqQqDCkAzrDhvDipnSirm5vxUXtSKDYTVpZG3nUdW/VVB5VdCYA2iReSj/u3yCZzXID4kuKG7OynPnB3WQ==} - cpu: [ia32] - os: [win32] - - '@rollup/rollup-win32-x64-gnu@4.54.0': - resolution: {integrity: sha512-dzAc53LOuFvHwbCEOS0rPbXp6SIhAf2txMP5p6mGyOXXw5mWY8NGGbPMPrs4P1WItkfApDathBj/NzMLUZ9rtQ==} - cpu: [x64] - os: [win32] - - '@rollup/rollup-win32-x64-msvc@4.54.0': - resolution: {integrity: sha512-hYT5d3YNdSh3mbCU1gwQyPgQd3T2ne0A3KG8KSBdav5TiBg6eInVmV+TeR5uHufiIgSFg0XsOWGW5/RhNcSvPg==} - cpu: [x64] - os: [win32] - '@sindresorhus/is@4.6.0': resolution: {integrity: sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==} engines: {node: '>=10'} @@ -886,9 +596,6 @@ packages: resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==} engines: {node: '>= 0.4'} - axios@1.13.2: - resolution: {integrity: sha512-VPk9ebNqPcy5lRGuSlKx752IlDatOjT9paPlm8A7yOuW2Fbvp4X3JznJtT4f0GzGLLiWE9W8onz51SqLYwzGaA==} - base64-js@1.5.1: resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} @@ -1101,11 +808,6 @@ packages: resolution: {integrity: sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==} engines: {node: '>= 0.4'} - esbuild@0.27.2: - resolution: {integrity: sha512-HyNQImnsOC7X9PMNaCIeAm4ISCQXs5a5YasTXVliKv4uuBo1dKrG0A+uQS8M5eXjVMnLg3WgXaKvprHlFJQffw==} - engines: {node: '>=18'} - hasBin: true - escalade@3.2.0: resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} engines: {node: '>=6'} @@ -1140,19 +842,6 @@ packages: resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} engines: {node: '>=8'} - find-up@6.3.0: - resolution: {integrity: sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - - follow-redirects@1.15.11: - resolution: {integrity: sha512-deG2P0JfjrTxl50XGCDyfI97ZGVCxIpfKYmfyrQ54n5FO/0gfIES8C/Psl6kWVDolizcaaxZJnTS0QSMxvnsBQ==} - engines: {node: '>=4.0'} - peerDependencies: - debug: '*' - peerDependenciesMeta: - debug: - optional: true - for-each@0.3.5: resolution: {integrity: sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==} engines: {node: '>= 0.4'} @@ -1482,10 +1171,6 @@ packages: resolution: {integrity: sha512-ME4Fb83LgEgwNw96RKNvKV4VTLuXfoKudAmm2lP8Kk87KaMK0/Xrx/aAkMWmT8mDb+3MlFDspfbCs7adjRxA2g==} engines: {node: '>=20.0.0'} - locate-path@7.2.0: - resolution: {integrity: sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - log-update@6.1.0: resolution: {integrity: sha512-9ie8ItPR6tjY5uYJh8K/Zrv/RMZ5VOlOWvtZdEHYSTFKZfIBPQa9tOAEeAWhd+AnIneLJ22w5fjOYtoutpWq5w==} engines: {node: '>=18'} @@ -1584,10 +1269,6 @@ packages: resolution: {integrity: sha512-rLvcdSyRCyouf6jcOIPe/BgwG/d7hKjzMKOas33/pHEr6gbq18IK9zV7DiPvzsz0oBJPme6qr6H6kGZuI9/DZg==} engines: {node: '>= 6.13.0'} - node-gyp-build@4.8.4: - resolution: {integrity: sha512-LA4ZjwlnUblHVgq0oBF3Jl/6h/Nvs5fzBLwdEF4nuxnFdsfajde4WfxtJr3CaiH+F6ewcIB/q4jQ4UzPyid+CQ==} - hasBin: true - node-hex@1.0.1: resolution: {integrity: sha512-iwpZdvW6Umz12ICmu9IYPRxg0tOLGmU3Tq2tKetejCj3oZd7b2nUXwP3a7QA5M9glWy8wlPS1G3RwM/CdsUbdQ==} engines: {node: '>=8.0.0'} @@ -1641,14 +1322,6 @@ packages: oxlint-tsgolint: optional: true - p-limit@4.0.0: - resolution: {integrity: sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - - p-locate@6.0.0: - resolution: {integrity: sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - package-json-from-dist@1.0.1: resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==} @@ -1661,10 +1334,6 @@ packages: parse5@6.0.1: resolution: {integrity: sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==} - path-exists@5.0.0: - resolution: {integrity: sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - path-key@3.1.1: resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} engines: {node: '>=8'} @@ -1715,9 +1384,6 @@ packages: resolution: {integrity: sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==} engines: {node: ^10 || ^12 || >=14} - proxy-from-env@1.1.0: - resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} - proxy@1.0.2: resolution: {integrity: sha512-KNac2ueWRpjbUh77OAFPZuNdfEqNynm9DD4xHT14CccGpW8wKZwEkN0yjlb7X9G9Z9F55N0Q+1z+WfgAhwYdzQ==} hasBin: true @@ -1762,11 +1428,6 @@ packages: engines: {node: 20 || >=22} hasBin: true - rollup@4.54.0: - resolution: {integrity: sha512-3nk8Y3a9Ea8szgKhinMlGMhGMw89mqule3KWczxhIzqudyHdCIOHw8WJlj/r329fACjKLEh13ZSk7oE22kyeIw==} - engines: {node: '>=18.0.0', npm: '>=8.0.0'} - hasBin: true - safe-array-concat@1.1.3: resolution: {integrity: sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==} engines: {node: '>=0.4'} @@ -2030,46 +1691,6 @@ packages: engines: {node: ^20.19.0 || >=22.12.0} hasBin: true - vite@7.3.0: - resolution: {integrity: sha512-dZwN5L1VlUBewiP6H9s2+B3e3Jg96D0vzN+Ry73sOefebhYr9f94wwkMNN/9ouoU8pV1BqA1d1zGk8928cx0rg==} - engines: {node: ^20.19.0 || >=22.12.0} - hasBin: true - peerDependencies: - '@types/node': ^20.19.0 || >=22.12.0 - jiti: '>=1.21.0' - less: ^4.0.0 - lightningcss: ^1.21.0 - sass: ^1.70.0 - sass-embedded: ^1.70.0 - stylus: '>=0.54.8' - sugarss: ^5.0.0 - terser: ^5.16.0 - tsx: ^4.8.1 - yaml: ^2.4.2 - 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 - vitest@4.0.17: resolution: {integrity: sha512-FQMeF0DJdWY0iOnbv466n/0BudNdKj1l5jYgl5JVTwjSsZSlqyXFt/9+1sEyhR6CLowbZpV7O1sCHrzBhucKKg==} engines: {node: ^20.0.0 || ^22.0.0 || >=24.0.0} @@ -2178,10 +1799,6 @@ packages: resolution: {integrity: sha512-T6hTrKcr9lKeUG0MQ/tO72D3UGptWVohgzpHG8ljU1jeBt2RCjcWxvsTPD8ZzUq1t1FvwROAw1kxg2euvg/THg==} engines: {node: '>= 18.19.0'} - yocto-queue@1.2.2: - resolution: {integrity: sha512-4LCcse/U2MHZ63HAJVE+v71o7yOdIe4cZ70Wpf8D/IyjDKYQLV5GD46B+hSTjJsvV5PztjvHoU580EftxjDZFQ==} - engines: {node: '>=12.20'} - snapshots: '@andrewbranch/untar.js@1.0.3': {} @@ -2224,24 +1841,6 @@ snapshots: '@braidai/lang@1.1.2': {} - '@codspeed/core@5.0.1': - dependencies: - axios: 1.13.2 - find-up: 6.3.0 - form-data: 4.0.5 - node-gyp-build: 4.8.4 - transitivePeerDependencies: - - debug - - '@codspeed/vitest-plugin@5.0.1(tinybench@2.9.0)(vite@7.3.0(@types/node@22.19.6)(lightningcss@1.30.2)(yaml@2.8.2))(vitest@4.0.17(@arethetypeswrong/core@0.18.2)(@types/node@22.19.6)(typescript@5.9.3)(yaml@2.8.2))': - dependencies: - '@codspeed/core': 5.0.1 - tinybench: 2.9.0 - vite: 7.3.0(@types/node@22.19.6)(lightningcss@1.30.2)(yaml@2.8.2) - vitest: 4.0.17(@arethetypeswrong/core@0.18.2)(@types/node@22.19.6)(typescript@5.9.3)(yaml@2.8.2) - transitivePeerDependencies: - - debug - '@colors/colors@1.5.0': optional: true @@ -2251,84 +1850,6 @@ snapshots: '@epic-web/invariant@1.0.0': {} - '@esbuild/aix-ppc64@0.27.2': - optional: true - - '@esbuild/android-arm64@0.27.2': - optional: true - - '@esbuild/android-arm@0.27.2': - optional: true - - '@esbuild/android-x64@0.27.2': - optional: true - - '@esbuild/darwin-arm64@0.27.2': - optional: true - - '@esbuild/darwin-x64@0.27.2': - optional: true - - '@esbuild/freebsd-arm64@0.27.2': - optional: true - - '@esbuild/freebsd-x64@0.27.2': - optional: true - - '@esbuild/linux-arm64@0.27.2': - optional: true - - '@esbuild/linux-arm@0.27.2': - optional: true - - '@esbuild/linux-ia32@0.27.2': - optional: true - - '@esbuild/linux-loong64@0.27.2': - optional: true - - '@esbuild/linux-mips64el@0.27.2': - optional: true - - '@esbuild/linux-ppc64@0.27.2': - optional: true - - '@esbuild/linux-riscv64@0.27.2': - optional: true - - '@esbuild/linux-s390x@0.27.2': - optional: true - - '@esbuild/linux-x64@0.27.2': - optional: true - - '@esbuild/netbsd-arm64@0.27.2': - optional: true - - '@esbuild/netbsd-x64@0.27.2': - optional: true - - '@esbuild/openbsd-arm64@0.27.2': - optional: true - - '@esbuild/openbsd-x64@0.27.2': - optional: true - - '@esbuild/openharmony-arm64@0.27.2': - optional: true - - '@esbuild/sunos-x64@0.27.2': - optional: true - - '@esbuild/win32-arm64@0.27.2': - optional: true - - '@esbuild/win32-ia32@0.27.2': - optional: true - - '@esbuild/win32-x64@0.27.2': - optional: true - '@isaacs/balanced-match@4.0.1': {} '@isaacs/brace-expansion@5.0.0': @@ -2420,72 +1941,6 @@ snapshots: '@polka/url@1.0.0-next.29': {} - '@rollup/rollup-android-arm-eabi@4.54.0': - optional: true - - '@rollup/rollup-android-arm64@4.54.0': - optional: true - - '@rollup/rollup-darwin-arm64@4.54.0': - optional: true - - '@rollup/rollup-darwin-x64@4.54.0': - optional: true - - '@rollup/rollup-freebsd-arm64@4.54.0': - optional: true - - '@rollup/rollup-freebsd-x64@4.54.0': - optional: true - - '@rollup/rollup-linux-arm-gnueabihf@4.54.0': - optional: true - - '@rollup/rollup-linux-arm-musleabihf@4.54.0': - optional: true - - '@rollup/rollup-linux-arm64-gnu@4.54.0': - optional: true - - '@rollup/rollup-linux-arm64-musl@4.54.0': - optional: true - - '@rollup/rollup-linux-loong64-gnu@4.54.0': - optional: true - - '@rollup/rollup-linux-ppc64-gnu@4.54.0': - optional: true - - '@rollup/rollup-linux-riscv64-gnu@4.54.0': - optional: true - - '@rollup/rollup-linux-riscv64-musl@4.54.0': - optional: true - - '@rollup/rollup-linux-s390x-gnu@4.54.0': - optional: true - - '@rollup/rollup-linux-x64-gnu@4.54.0': - optional: true - - '@rollup/rollup-linux-x64-musl@4.54.0': - optional: true - - '@rollup/rollup-openharmony-arm64@4.54.0': - optional: true - - '@rollup/rollup-win32-arm64-msvc@4.54.0': - optional: true - - '@rollup/rollup-win32-ia32-msvc@4.54.0': - optional: true - - '@rollup/rollup-win32-x64-gnu@4.54.0': - optional: true - - '@rollup/rollup-win32-x64-msvc@4.54.0': - optional: true - '@sindresorhus/is@4.6.0': {} '@standard-schema/spec@1.1.0': {} @@ -2728,14 +2183,6 @@ snapshots: dependencies: possible-typed-array-names: 1.1.0 - axios@1.13.2: - dependencies: - follow-redirects: 1.15.11 - form-data: 4.0.5 - proxy-from-env: 1.1.0 - transitivePeerDependencies: - - debug - base64-js@1.5.1: {} basic-auth-parser@0.0.2: {} @@ -3004,35 +2451,6 @@ snapshots: is-date-object: 1.1.0 is-symbol: 1.1.1 - esbuild@0.27.2: - optionalDependencies: - '@esbuild/aix-ppc64': 0.27.2 - '@esbuild/android-arm': 0.27.2 - '@esbuild/android-arm64': 0.27.2 - '@esbuild/android-x64': 0.27.2 - '@esbuild/darwin-arm64': 0.27.2 - '@esbuild/darwin-x64': 0.27.2 - '@esbuild/freebsd-arm64': 0.27.2 - '@esbuild/freebsd-x64': 0.27.2 - '@esbuild/linux-arm': 0.27.2 - '@esbuild/linux-arm64': 0.27.2 - '@esbuild/linux-ia32': 0.27.2 - '@esbuild/linux-loong64': 0.27.2 - '@esbuild/linux-mips64el': 0.27.2 - '@esbuild/linux-ppc64': 0.27.2 - '@esbuild/linux-riscv64': 0.27.2 - '@esbuild/linux-s390x': 0.27.2 - '@esbuild/linux-x64': 0.27.2 - '@esbuild/netbsd-arm64': 0.27.2 - '@esbuild/netbsd-x64': 0.27.2 - '@esbuild/openbsd-arm64': 0.27.2 - '@esbuild/openbsd-x64': 0.27.2 - '@esbuild/openharmony-arm64': 0.27.2 - '@esbuild/sunos-x64': 0.27.2 - '@esbuild/win32-arm64': 0.27.2 - '@esbuild/win32-ia32': 0.27.2 - '@esbuild/win32-x64': 0.27.2 - escalade@3.2.0: {} escape-string-regexp@1.0.5: {} @@ -3055,13 +2473,6 @@ snapshots: dependencies: to-regex-range: 5.0.1 - find-up@6.3.0: - dependencies: - locate-path: 7.2.0 - path-exists: 5.0.0 - - follow-redirects@1.15.11: {} - for-each@0.3.5: dependencies: is-callable: 1.2.7 @@ -3384,10 +2795,6 @@ snapshots: rfdc: 1.4.1 wrap-ansi: 9.0.2 - locate-path@7.2.0: - dependencies: - p-locate: 6.0.0 - log-update@6.1.0: dependencies: ansi-escapes: 7.2.0 @@ -3475,8 +2882,6 @@ snapshots: node-forge@1.3.3: {} - node-gyp-build@4.8.4: {} - node-hex@1.0.1: {} object-assign@4.1.1: {} @@ -3542,14 +2947,6 @@ snapshots: '@oxlint/win32-x64': 1.39.0 oxlint-tsgolint: 0.8.6 - p-limit@4.0.0: - dependencies: - yocto-queue: 1.2.2 - - p-locate@6.0.0: - dependencies: - p-limit: 4.0.0 - package-json-from-dist@1.0.1: {} parse5-htmlparser2-tree-adapter@6.0.1: @@ -3560,8 +2957,6 @@ snapshots: parse5@6.0.1: {} - path-exists@5.0.0: {} - path-key@3.1.1: {} path-scurry@2.0.1: @@ -3599,8 +2994,6 @@ snapshots: picocolors: 1.1.1 source-map-js: 1.2.1 - proxy-from-env@1.1.0: {} - proxy@1.0.2: dependencies: args: 5.0.1 @@ -3660,34 +3053,6 @@ snapshots: glob: 13.0.0 package-json-from-dist: 1.0.1 - rollup@4.54.0: - dependencies: - '@types/estree': 1.0.8 - optionalDependencies: - '@rollup/rollup-android-arm-eabi': 4.54.0 - '@rollup/rollup-android-arm64': 4.54.0 - '@rollup/rollup-darwin-arm64': 4.54.0 - '@rollup/rollup-darwin-x64': 4.54.0 - '@rollup/rollup-freebsd-arm64': 4.54.0 - '@rollup/rollup-freebsd-x64': 4.54.0 - '@rollup/rollup-linux-arm-gnueabihf': 4.54.0 - '@rollup/rollup-linux-arm-musleabihf': 4.54.0 - '@rollup/rollup-linux-arm64-gnu': 4.54.0 - '@rollup/rollup-linux-arm64-musl': 4.54.0 - '@rollup/rollup-linux-loong64-gnu': 4.54.0 - '@rollup/rollup-linux-ppc64-gnu': 4.54.0 - '@rollup/rollup-linux-riscv64-gnu': 4.54.0 - '@rollup/rollup-linux-riscv64-musl': 4.54.0 - '@rollup/rollup-linux-s390x-gnu': 4.54.0 - '@rollup/rollup-linux-x64-gnu': 4.54.0 - '@rollup/rollup-linux-x64-musl': 4.54.0 - '@rollup/rollup-openharmony-arm64': 4.54.0 - '@rollup/rollup-win32-arm64-msvc': 4.54.0 - '@rollup/rollup-win32-ia32-msvc': 4.54.0 - '@rollup/rollup-win32-x64-gnu': 4.54.0 - '@rollup/rollup-win32-x64-msvc': 4.54.0 - fsevents: 2.3.3 - safe-array-concat@1.1.3: dependencies: call-bind: 1.0.8 @@ -4034,20 +3399,6 @@ snapshots: - utf-8-validate - yaml - vite@7.3.0(@types/node@22.19.6)(lightningcss@1.30.2)(yaml@2.8.2): - dependencies: - esbuild: 0.27.2 - fdir: 6.5.0(picomatch@4.0.3) - picomatch: 4.0.3 - postcss: 8.5.6 - rollup: 4.54.0 - tinyglobby: 0.2.15 - optionalDependencies: - '@types/node': 22.19.6 - fsevents: 2.3.3 - lightningcss: 1.30.2 - yaml: 2.8.2 - vitest@4.0.17(@arethetypeswrong/core@0.18.2)(@types/node@22.19.6)(typescript@5.9.3)(yaml@2.8.2): dependencies: '@vitest/expect': 4.0.17 @@ -4176,5 +3527,3 @@ snapshots: yargs-parser: 20.2.9 ylru@2.0.0: {} - - yocto-queue@1.2.2: {} From a8b92fc447b17f58a495eeb17566f7a833c9cae0 Mon Sep 17 00:00:00 2001 From: MK Date: Thu, 15 Jan 2026 23:01:53 +0800 Subject: [PATCH 08/33] FIXUP --- .github/workflows/nodejs-16.yml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/workflows/nodejs-16.yml b/.github/workflows/nodejs-16.yml index 2cafbdb7..d98b87c2 100644 --- a/.github/workflows/nodejs-16.yml +++ b/.github/workflows/nodejs-16.yml @@ -20,12 +20,10 @@ jobs: with: node-version: 16 - run: npm install - - name: Downgrade vitest for Node 16 - run: npm install vitest@3 @vitest/coverage-v8@3 --save-dev --ignore-scripts - name: Patch vitest imports and run tests run: | for f in test/*.test.ts; do [ -e "$f" ] || exit 0; sed --version >/dev/null 2>&1 && sed -i "s@'vite-plus/test'@'vitest'@g" "$f" || sed -i '' "s@'vite-plus/test'@'vitest'@g" "$f"; done - NODE_OPTIONS="--require ./test/patch-for-node16-18.cjs" npx vitest --reporter=dot && npm run build && npm pack && npx attw --pack + NODE_OPTIONS="--require ./test/patch-for-node16-18.cjs" npx vitest@3 --reporter=dot && npm run build && npm pack && npx attw --pack - run: npm run build - run: node -v - run: npm run test-node16 From 0fb6055b2c9ec99ba3fc425f6321dd61fe934fc5 Mon Sep 17 00:00:00 2001 From: MK Date: Thu, 15 Jan 2026 23:03:52 +0800 Subject: [PATCH 09/33] FIXUP --- .github/workflows/nodejs-16.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/nodejs-16.yml b/.github/workflows/nodejs-16.yml index d98b87c2..f94042fe 100644 --- a/.github/workflows/nodejs-16.yml +++ b/.github/workflows/nodejs-16.yml @@ -23,7 +23,7 @@ jobs: - name: Patch vitest imports and run tests run: | for f in test/*.test.ts; do [ -e "$f" ] || exit 0; sed --version >/dev/null 2>&1 && sed -i "s@'vite-plus/test'@'vitest'@g" "$f" || sed -i '' "s@'vite-plus/test'@'vitest'@g" "$f"; done - NODE_OPTIONS="--require ./test/patch-for-node16-18.cjs" npx vitest@3 --reporter=dot && npm run build && npm pack && npx attw --pack + NODE_OPTIONS="--require ./test/patch-for-node16-18.cjs" npx -f vitest@3 --reporter=dot && npm run build && npm pack && npx attw --pack - run: npm run build - run: node -v - run: npm run test-node16 From 679eceb6dddcaaf46655572c8a4cfed4e71a672e Mon Sep 17 00:00:00 2001 From: MK Date: Thu, 15 Jan 2026 23:05:12 +0800 Subject: [PATCH 10/33] FIXUP --- .github/workflows/pkg.pr.new.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/pkg.pr.new.yml b/.github/workflows/pkg.pr.new.yml index 51cfcaf9..5d8cd478 100644 --- a/.github/workflows/pkg.pr.new.yml +++ b/.github/workflows/pkg.pr.new.yml @@ -3,6 +3,9 @@ on: [push, pull_request] jobs: build: + concurrency: + group: pkg-pr-new-${{ github.workflow }}-#${{ github.event.pull_request.number || github.head_ref || github.ref }} + cancel-in-progress: true runs-on: ubuntu-latest steps: From cb38bb9cff0c7f04dc4d5036fb5fb081010a6d8b Mon Sep 17 00:00:00 2001 From: MK Date: Thu, 15 Jan 2026 23:06:12 +0800 Subject: [PATCH 11/33] FIXUP --- .github/workflows/nodejs-16.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/nodejs-16.yml b/.github/workflows/nodejs-16.yml index f94042fe..bcb86698 100644 --- a/.github/workflows/nodejs-16.yml +++ b/.github/workflows/nodejs-16.yml @@ -23,7 +23,7 @@ jobs: - name: Patch vitest imports and run tests run: | for f in test/*.test.ts; do [ -e "$f" ] || exit 0; sed --version >/dev/null 2>&1 && sed -i "s@'vite-plus/test'@'vitest'@g" "$f" || sed -i '' "s@'vite-plus/test'@'vitest'@g" "$f"; done - NODE_OPTIONS="--require ./test/patch-for-node16-18.cjs" npx -f vitest@3 --reporter=dot && npm run build && npm pack && npx attw --pack + NODE_OPTIONS="--require ./test/patch-for-node16-18.cjs" npx -f vitest@3 run --reporter=dot && npm run build && npm pack && npx attw --pack - run: npm run build - run: node -v - run: npm run test-node16 From 45497a31fd1913466963def52b82adb68c3832eb Mon Sep 17 00:00:00 2001 From: MK Date: Thu, 15 Jan 2026 23:08:08 +0800 Subject: [PATCH 12/33] FIXUP --- .github/workflows/nodejs-16.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/nodejs-16.yml b/.github/workflows/nodejs-16.yml index bcb86698..e1f5599b 100644 --- a/.github/workflows/nodejs-16.yml +++ b/.github/workflows/nodejs-16.yml @@ -23,7 +23,7 @@ jobs: - name: Patch vitest imports and run tests run: | for f in test/*.test.ts; do [ -e "$f" ] || exit 0; sed --version >/dev/null 2>&1 && sed -i "s@'vite-plus/test'@'vitest'@g" "$f" || sed -i '' "s@'vite-plus/test'@'vitest'@g" "$f"; done - NODE_OPTIONS="--require ./test/patch-for-node16-18.cjs" npx -f vitest@3 run --reporter=dot && npm run build && npm pack && npx attw --pack + NODE_OPTIONS="--require ./test/patch-for-node16-18.cjs" npx -f vitest@3 && npm run build && npm pack && npx attw --pack - run: npm run build - run: node -v - run: npm run test-node16 From 7f7b2057889102e3cab2d7bc7ab8e07d6b9c9561 Mon Sep 17 00:00:00 2001 From: MK Date: Thu, 15 Jan 2026 23:10:39 +0800 Subject: [PATCH 13/33] FIXUP --- .github/workflows/nodejs-16.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/nodejs-16.yml b/.github/workflows/nodejs-16.yml index e1f5599b..9272ee9c 100644 --- a/.github/workflows/nodejs-16.yml +++ b/.github/workflows/nodejs-16.yml @@ -23,7 +23,7 @@ jobs: - name: Patch vitest imports and run tests run: | for f in test/*.test.ts; do [ -e "$f" ] || exit 0; sed --version >/dev/null 2>&1 && sed -i "s@'vite-plus/test'@'vitest'@g" "$f" || sed -i '' "s@'vite-plus/test'@'vitest'@g" "$f"; done - NODE_OPTIONS="--require ./test/patch-for-node16-18.cjs" npx -f vitest@3 && npm run build && npm pack && npx attw --pack + NODE_OPTIONS="--require ./test/patch-for-node16-18.cjs" npx vitest@3 && npm run build && npm pack && npx attw --pack - run: npm run build - run: node -v - run: npm run test-node16 From ee2dbb2f82c377ba02442e1c076619b72cf31f0b Mon Sep 17 00:00:00 2001 From: MK Date: Thu, 15 Jan 2026 23:13:11 +0800 Subject: [PATCH 14/33] FIXUP --- .github/workflows/nodejs-16.yml | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/.github/workflows/nodejs-16.yml b/.github/workflows/nodejs-16.yml index 9272ee9c..7aaea721 100644 --- a/.github/workflows/nodejs-16.yml +++ b/.github/workflows/nodejs-16.yml @@ -20,10 +20,9 @@ jobs: with: node-version: 16 - run: npm install - - name: Patch vitest imports and run tests - run: | - for f in test/*.test.ts; do [ -e "$f" ] || exit 0; sed --version >/dev/null 2>&1 && sed -i "s@'vite-plus/test'@'vitest'@g" "$f" || sed -i '' "s@'vite-plus/test'@'vitest'@g" "$f"; done - NODE_OPTIONS="--require ./test/patch-for-node16-18.cjs" npx vitest@3 && npm run build && npm pack && npx attw --pack + - name: Patch vitest imports + run: for f in test/*.test.ts; do [ -e "$f" ] || exit 0; sed --version >/dev/null 2>&1 && sed -i "s@'vite-plus/test'@'vitest'@g" "$f" || sed -i '' "s@'vite-plus/test'@'vitest'@g" "$f"; done + - run: NODE_OPTIONS="--require ./test/patch-for-node16-18.cjs" npx vitest@3 && npm run build && npm pack && npx attw --pack - run: npm run build - run: node -v - run: npm run test-node16 From f10bc97e4fba88df4e2039e148ee9055beea6139 Mon Sep 17 00:00:00 2001 From: MK Date: Thu, 15 Jan 2026 23:17:36 +0800 Subject: [PATCH 15/33] FIXUP --- .github/workflows/nodejs-16.yml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/.github/workflows/nodejs-16.yml b/.github/workflows/nodejs-16.yml index 7aaea721..6ea8a793 100644 --- a/.github/workflows/nodejs-16.yml +++ b/.github/workflows/nodejs-16.yml @@ -21,8 +21,11 @@ jobs: node-version: 16 - run: npm install - name: Patch vitest imports - run: for f in test/*.test.ts; do [ -e "$f" ] || exit 0; sed --version >/dev/null 2>&1 && sed -i "s@'vite-plus/test'@'vitest'@g" "$f" || sed -i '' "s@'vite-plus/test'@'vitest'@g" "$f"; done - - run: NODE_OPTIONS="--require ./test/patch-for-node16-18.cjs" npx vitest@3 && npm run build && npm pack && npx attw --pack + run: | + for f in test/*.test.ts; do [ -e "$f" ] || exit 0; sed --version >/dev/null 2>&1 && sed -i "s@'vite-plus/test'@'vitest'@g" "$f" || sed -i '' "s@'vite-plus/test'@'vitest'@g" "$f"; done + jq 'del(.overrides)' package.json > package.json.tmp && mv package.json.tmp package.json + npm install -D vitest@3 + - run: NODE_OPTIONS="--require ./test/patch-for-node16-18.cjs" npx vitest && npm run build && npm pack && npx attw --pack - run: npm run build - run: node -v - run: npm run test-node16 From ad05ba18b65a2ccbfa98e8d3b6f0824babf202ac Mon Sep 17 00:00:00 2001 From: MK Date: Thu, 15 Jan 2026 23:19:36 +0800 Subject: [PATCH 16/33] FIXUP --- .github/workflows/nodejs-16.yml | 1 - package.json | 6 ++---- pnpm-lock.yaml | 1 - 3 files changed, 2 insertions(+), 6 deletions(-) diff --git a/.github/workflows/nodejs-16.yml b/.github/workflows/nodejs-16.yml index 6ea8a793..c708b815 100644 --- a/.github/workflows/nodejs-16.yml +++ b/.github/workflows/nodejs-16.yml @@ -23,7 +23,6 @@ jobs: - name: Patch vitest imports run: | for f in test/*.test.ts; do [ -e "$f" ] || exit 0; sed --version >/dev/null 2>&1 && sed -i "s@'vite-plus/test'@'vitest'@g" "$f" || sed -i '' "s@'vite-plus/test'@'vitest'@g" "$f"; done - jq 'del(.overrides)' package.json > package.json.tmp && mv package.json.tmp package.json npm install -D vitest@3 - run: NODE_OPTIONS="--require ./test/patch-for-node16-18.cjs" npx vitest && npm run build && npm pack && npx attw --pack - run: npm run build diff --git a/package.json b/package.json index 502604a8..32fbd003 100644 --- a/package.json +++ b/package.json @@ -126,12 +126,10 @@ "packageManager": "pnpm@10.28.0", "pnpm": { "overrides": { - "vite": "npm:@voidzero-dev/vite-plus-core@latest", - "vitest": "npm:@voidzero-dev/vite-plus-test@latest" + "vite": "npm:@voidzero-dev/vite-plus-core@latest" } }, "overrides": { - "vite": "npm:@voidzero-dev/vite-plus-core@latest", - "vitest": "npm:@voidzero-dev/vite-plus-test@latest" + "vite": "npm:@voidzero-dev/vite-plus-core@latest" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 6ca91523..a7123b1e 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -6,7 +6,6 @@ settings: overrides: vite: npm:@voidzero-dev/vite-plus-core@latest - vitest: npm:@voidzero-dev/vite-plus-test@latest importers: From 8f54533626e892a34dd347a658fe6a3fb90adb9b Mon Sep 17 00:00:00 2001 From: MK Date: Thu, 15 Jan 2026 23:20:19 +0800 Subject: [PATCH 17/33] FIXUP --- .github/workflows/nodejs-16.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/nodejs-16.yml b/.github/workflows/nodejs-16.yml index c708b815..6c63c62a 100644 --- a/.github/workflows/nodejs-16.yml +++ b/.github/workflows/nodejs-16.yml @@ -24,6 +24,7 @@ jobs: run: | for f in test/*.test.ts; do [ -e "$f" ] || exit 0; sed --version >/dev/null 2>&1 && sed -i "s@'vite-plus/test'@'vitest'@g" "$f" || sed -i '' "s@'vite-plus/test'@'vitest'@g" "$f"; done npm install -D vitest@3 + rm -rf vite.config.ts - run: NODE_OPTIONS="--require ./test/patch-for-node16-18.cjs" npx vitest && npm run build && npm pack && npx attw --pack - run: npm run build - run: node -v From ac550ac310ac6acbce0b9d3a248174d79b59a838 Mon Sep 17 00:00:00 2001 From: MK Date: Thu, 15 Jan 2026 23:22:02 +0800 Subject: [PATCH 18/33] FIXUP --- .github/workflows/nodejs-16.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/nodejs-16.yml b/.github/workflows/nodejs-16.yml index 6c63c62a..d7590d2c 100644 --- a/.github/workflows/nodejs-16.yml +++ b/.github/workflows/nodejs-16.yml @@ -23,7 +23,8 @@ jobs: - name: Patch vitest imports run: | for f in test/*.test.ts; do [ -e "$f" ] || exit 0; sed --version >/dev/null 2>&1 && sed -i "s@'vite-plus/test'@'vitest'@g" "$f" || sed -i '' "s@'vite-plus/test'@'vitest'@g" "$f"; done - npm install -D vitest@3 + jq 'del(.overrides)' package.json > package.json.tmp && mv package.json.tmp package.json + npm install -D vitest@3 vite@7 rm -rf vite.config.ts - run: NODE_OPTIONS="--require ./test/patch-for-node16-18.cjs" npx vitest && npm run build && npm pack && npx attw --pack - run: npm run build From 490e86d97dc8f4cf5098b6f0594fde21b0032054 Mon Sep 17 00:00:00 2001 From: MK Date: Thu, 15 Jan 2026 23:26:45 +0800 Subject: [PATCH 19/33] FIXUP --- .github/workflows/nodejs-16.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/nodejs-16.yml b/.github/workflows/nodejs-16.yml index d7590d2c..11e5cbac 100644 --- a/.github/workflows/nodejs-16.yml +++ b/.github/workflows/nodejs-16.yml @@ -26,7 +26,7 @@ jobs: jq 'del(.overrides)' package.json > package.json.tmp && mv package.json.tmp package.json npm install -D vitest@3 vite@7 rm -rf vite.config.ts - - run: NODE_OPTIONS="--require ./test/patch-for-node16-18.cjs" npx vitest && npm run build && npm pack && npx attw --pack + - run: NODE_OPTIONS="--require ./test/patch-for-node16-18.cjs" npx vitest --setupFiles=./test/setup.ts && npm run build && npm pack && npx attw --pack - run: npm run build - run: node -v - run: npm run test-node16 From 6bd9b5a551a9fc3535f3a8d1646d03e95304d700 Mon Sep 17 00:00:00 2001 From: MK Date: Thu, 15 Jan 2026 23:30:57 +0800 Subject: [PATCH 20/33] FIXUP --- .github/workflows/nodejs-16.yml | 2 +- tsconfig.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/nodejs-16.yml b/.github/workflows/nodejs-16.yml index 11e5cbac..db4c94a7 100644 --- a/.github/workflows/nodejs-16.yml +++ b/.github/workflows/nodejs-16.yml @@ -26,7 +26,7 @@ jobs: jq 'del(.overrides)' package.json > package.json.tmp && mv package.json.tmp package.json npm install -D vitest@3 vite@7 rm -rf vite.config.ts - - run: NODE_OPTIONS="--require ./test/patch-for-node16-18.cjs" npx vitest --setupFiles=./test/setup.ts && npm run build && npm pack && npx attw --pack + - run: NODE_OPTIONS="--require ./test/patch-for-node16-18.cjs" npx vitest -- -c vitest-for-node16.config.ts && npm run build && npm pack && npx attw --pack - run: npm run build - run: node -v - run: npm run test-node16 diff --git a/tsconfig.json b/tsconfig.json index ffc6a8dc..624aa4dc 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -11,5 +11,5 @@ // verbatimModuleSyntax is incompatible with multi-dialect builds // "verbatimModuleSyntax": true }, - "exclude": ["test/fixtures/ts*", "vite.config.ts"] + "exclude": ["test/fixtures/ts*", "*.config.ts"] } From 9a26e4571c7f2260d503c3335bbe8283a1e04854 Mon Sep 17 00:00:00 2001 From: MK Date: Thu, 15 Jan 2026 23:32:27 +0800 Subject: [PATCH 21/33] FIXUP --- .github/workflows/nodejs-16.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/nodejs-16.yml b/.github/workflows/nodejs-16.yml index db4c94a7..8c0316bb 100644 --- a/.github/workflows/nodejs-16.yml +++ b/.github/workflows/nodejs-16.yml @@ -26,7 +26,7 @@ jobs: jq 'del(.overrides)' package.json > package.json.tmp && mv package.json.tmp package.json npm install -D vitest@3 vite@7 rm -rf vite.config.ts - - run: NODE_OPTIONS="--require ./test/patch-for-node16-18.cjs" npx vitest -- -c vitest-for-node16.config.ts && npm run build && npm pack && npx attw --pack + - run: NODE_OPTIONS="--require ./test/patch-for-node16-18.cjs" npx vitest --config ./vitest-for-node16.config.ts && npm run build && npm pack && npx attw --pack - run: npm run build - run: node -v - run: npm run test-node16 From fbca0e3d9fabca2373212c6c771de0a3cbb97435 Mon Sep 17 00:00:00 2001 From: MK Date: Thu, 15 Jan 2026 23:34:42 +0800 Subject: [PATCH 22/33] FIXUP --- .github/workflows/nodejs-16.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/nodejs-16.yml b/.github/workflows/nodejs-16.yml index 8c0316bb..f1f3df02 100644 --- a/.github/workflows/nodejs-16.yml +++ b/.github/workflows/nodejs-16.yml @@ -26,7 +26,7 @@ jobs: jq 'del(.overrides)' package.json > package.json.tmp && mv package.json.tmp package.json npm install -D vitest@3 vite@7 rm -rf vite.config.ts - - run: NODE_OPTIONS="--require ./test/patch-for-node16-18.cjs" npx vitest --config ./vitest-for-node16.config.ts && npm run build && npm pack && npx attw --pack + - run: NODE_OPTIONS="--require ./test/patch-for-node16-18.cjs" npx vitest --config ./vitest-for-node16.config.cjs && npm run build && npm pack && npx attw --pack - run: npm run build - run: node -v - run: npm run test-node16 From 8fd64421a21217761b954947c9c81eb9d57697c9 Mon Sep 17 00:00:00 2001 From: MK Date: Sat, 17 Jan 2026 14:43:28 +0800 Subject: [PATCH 23/33] FIXUP --- .github/workflows/nodejs-16.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/nodejs-16.yml b/.github/workflows/nodejs-16.yml index f1f3df02..c3f3250e 100644 --- a/.github/workflows/nodejs-16.yml +++ b/.github/workflows/nodejs-16.yml @@ -23,10 +23,10 @@ jobs: - name: Patch vitest imports run: | for f in test/*.test.ts; do [ -e "$f" ] || exit 0; sed --version >/dev/null 2>&1 && sed -i "s@'vite-plus/test'@'vitest'@g" "$f" || sed -i '' "s@'vite-plus/test'@'vitest'@g" "$f"; done + sed --version >/dev/null 2>&1 && sed -i "s@'vite-plus'@'vitest'@g" vite.config.ts || sed -i '' "s@'vite-plus'@'vitest'@g" vite.config.ts jq 'del(.overrides)' package.json > package.json.tmp && mv package.json.tmp package.json npm install -D vitest@3 vite@7 - rm -rf vite.config.ts - - run: NODE_OPTIONS="--require ./test/patch-for-node16-18.cjs" npx vitest --config ./vitest-for-node16.config.cjs && npm run build && npm pack && npx attw --pack + - run: NODE_OPTIONS="--require ./test/patch-for-node16-18.cjs" npx vitest && npm run build && npm pack && npx attw --pack - run: npm run build - run: node -v - run: npm run test-node16 From c25eed9564c2bc3b593f52e9f3b5dc5784187167 Mon Sep 17 00:00:00 2001 From: MK Date: Sat, 17 Jan 2026 14:46:33 +0800 Subject: [PATCH 24/33] FIXUP --- .github/workflows/nodejs-16.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/nodejs-16.yml b/.github/workflows/nodejs-16.yml index c3f3250e..edf13884 100644 --- a/.github/workflows/nodejs-16.yml +++ b/.github/workflows/nodejs-16.yml @@ -23,7 +23,7 @@ jobs: - name: Patch vitest imports run: | for f in test/*.test.ts; do [ -e "$f" ] || exit 0; sed --version >/dev/null 2>&1 && sed -i "s@'vite-plus/test'@'vitest'@g" "$f" || sed -i '' "s@'vite-plus/test'@'vitest'@g" "$f"; done - sed --version >/dev/null 2>&1 && sed -i "s@'vite-plus'@'vitest'@g" vite.config.ts || sed -i '' "s@'vite-plus'@'vitest'@g" vite.config.ts + sed --version >/dev/null 2>&1 && sed -i "s@'vite-plus'@'vite'@g" vite.config.ts || sed -i '' "s@'vite-plus'@'vite'@g" vite.config.ts jq 'del(.overrides)' package.json > package.json.tmp && mv package.json.tmp package.json npm install -D vitest@3 vite@7 - run: NODE_OPTIONS="--require ./test/patch-for-node16-18.cjs" npx vitest && npm run build && npm pack && npx attw --pack From 1a00a404733d23e77622cd9b0c67fff2dbe59427 Mon Sep 17 00:00:00 2001 From: MK Date: Sat, 17 Jan 2026 14:49:19 +0800 Subject: [PATCH 25/33] FIXUP --- .github/workflows/nodejs-16.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/nodejs-16.yml b/.github/workflows/nodejs-16.yml index edf13884..e62a4715 100644 --- a/.github/workflows/nodejs-16.yml +++ b/.github/workflows/nodejs-16.yml @@ -26,7 +26,7 @@ jobs: sed --version >/dev/null 2>&1 && sed -i "s@'vite-plus'@'vite'@g" vite.config.ts || sed -i '' "s@'vite-plus'@'vite'@g" vite.config.ts jq 'del(.overrides)' package.json > package.json.tmp && mv package.json.tmp package.json npm install -D vitest@3 vite@7 - - run: NODE_OPTIONS="--require ./test/patch-for-node16-18.cjs" npx vitest && npm run build && npm pack && npx attw --pack - - run: npm run build - - run: node -v + - run: npx vitest && npm run build && npm pack && npx attw --pack + env: + NODE_OPTIONS: --require ./test/patch-for-node16-18.cjs - run: npm run test-node16 From 74dc0861949456ecc62136f79608ca139aff561e Mon Sep 17 00:00:00 2001 From: MK Date: Sat, 17 Jan 2026 14:53:09 +0800 Subject: [PATCH 26/33] FIXUP --- .github/workflows/nodejs-16.yml | 2 +- package.json | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/nodejs-16.yml b/.github/workflows/nodejs-16.yml index e62a4715..635dd268 100644 --- a/.github/workflows/nodejs-16.yml +++ b/.github/workflows/nodejs-16.yml @@ -26,7 +26,7 @@ jobs: sed --version >/dev/null 2>&1 && sed -i "s@'vite-plus'@'vite'@g" vite.config.ts || sed -i '' "s@'vite-plus'@'vite'@g" vite.config.ts jq 'del(.overrides)' package.json > package.json.tmp && mv package.json.tmp package.json npm install -D vitest@3 vite@7 - - run: npx vitest && npm run build && npm pack && npx attw --pack + - run: npx vitest && npm run build:ts && npm run build:version && npm pack && npx attw --pack env: NODE_OPTIONS: --require ./test/patch-for-node16-18.cjs - run: npm run test-node16 diff --git a/package.json b/package.json index 32fbd003..ce22a319 100644 --- a/package.json +++ b/package.json @@ -50,7 +50,8 @@ "typecheck": "tsc --noEmit && tsgo --noEmit", "fmtcheck": "vite fmt --check .", "prebuild": "npm run clean", - "build": "tsc --version && tshy && tshy-after && vite run build:version && rm -rf *.tsbuildinfo", + "build": "vite run build:ts && vite run build:version && rm -rf *.tsbuildinfo", + "build:ts": "tsc --version && tshy && tshy-after", "build:version": "node ./scripts/replace_urllib_version.js", "build:cjs:test": "cd test/cjs && rm -rf node_modules && npm link ../.. && node index.js", "build:esm:test": "cd test/esm && rm -rf node_modules && npm link ../.. && node index.js", From 4e9e3993e5886ffef06de173162173966b754653 Mon Sep 17 00:00:00 2001 From: MK Date: Sat, 17 Jan 2026 14:57:10 +0800 Subject: [PATCH 27/33] FIXUP --- .github/workflows/nodejs-16.yml | 6 +++++- .github/workflows/nodejs.yml | 6 +----- package.json | 1 - 3 files changed, 6 insertions(+), 7 deletions(-) diff --git a/.github/workflows/nodejs-16.yml b/.github/workflows/nodejs-16.yml index 635dd268..d6d10e37 100644 --- a/.github/workflows/nodejs-16.yml +++ b/.github/workflows/nodejs-16.yml @@ -12,13 +12,17 @@ jobs: concurrency: group: typecheck-${{ github.workflow }}-#${{ github.event.pull_request.number || github.head_ref || github.ref }} cancel-in-progress: true + strategy: + fail-fast: false + matrix: + node: ['16', '18'] steps: - uses: actions/checkout@v6 - name: Use Node.js uses: actions/setup-node@v6 with: - node-version: 16 + node-version: ${{ matrix.node }} - run: npm install - name: Patch vitest imports run: | diff --git a/.github/workflows/nodejs.yml b/.github/workflows/nodejs.yml index aba2a591..60567a83 100644 --- a/.github/workflows/nodejs.yml +++ b/.github/workflows/nodejs.yml @@ -49,7 +49,7 @@ jobs: fail-fast: false matrix: os: ['ubuntu-latest', 'macos-latest', 'windows-latest'] - node: ['18', '20', '22', '24'] + node: ['20', '22', '24', '25'] name: Test (${{ matrix.os }}, ${{ matrix.node }}) runs-on: ${{ matrix.os }} @@ -77,10 +77,6 @@ jobs: - name: Install dependencies run: pnpm install --frozen-lockfile - - name: Downgrade vitest for Node 18 - if: matrix.node == '18' - run: pnpm add vitest@3 @vitest/coverage-v8@3 --save-dev --ignore-scripts - - name: Run tests run: pnpm run ci diff --git a/package.json b/package.json index ce22a319..9f120167 100644 --- a/package.json +++ b/package.json @@ -67,7 +67,6 @@ "test-node16": "node examples/httpclient.cjs && node examples/search_github.cjs && node examples/timing.cjs", "cov": "vite test run --reporter=dot --coverage", "ci": "vite run cov && vite run prepublishOnly && npm pack && attw --pack", - "ci:node16": "cross-env NODE_OPTIONS=\"--require ./test/patch-for-node16-18.cjs\" vite test run --reporter=dot && vite run prepublishOnly && npm pack && attw --pack", "clean": "rm -rf dist && tsc -b --clean", "prepublishOnly": "vite run build", "prepare": "husky" From 2e3b7a1f52b3e6304f3915c4a10d331de9fbbcff Mon Sep 17 00:00:00 2001 From: MK Date: Sat, 17 Jan 2026 14:58:49 +0800 Subject: [PATCH 28/33] FIXUP --- .github/workflows/{nodejs-16.yml => nodejs-old-versions.yml} | 2 +- package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) rename .github/workflows/{nodejs-16.yml => nodejs-old-versions.yml} (97%) diff --git a/.github/workflows/nodejs-16.yml b/.github/workflows/nodejs-old-versions.yml similarity index 97% rename from .github/workflows/nodejs-16.yml rename to .github/workflows/nodejs-old-versions.yml index d6d10e37..418d6ada 100644 --- a/.github/workflows/nodejs-16.yml +++ b/.github/workflows/nodejs-old-versions.yml @@ -1,4 +1,4 @@ -name: Node.js 16 CI +name: Node.js old versions CI on: push: diff --git a/package.json b/package.json index 9f120167..7526c87d 100644 --- a/package.json +++ b/package.json @@ -50,7 +50,7 @@ "typecheck": "tsc --noEmit && tsgo --noEmit", "fmtcheck": "vite fmt --check .", "prebuild": "npm run clean", - "build": "vite run build:ts && vite run build:version && rm -rf *.tsbuildinfo", + "build": "vite run build:ts && vite run build:version", "build:ts": "tsc --version && tshy && tshy-after", "build:version": "node ./scripts/replace_urllib_version.js", "build:cjs:test": "cd test/cjs && rm -rf node_modules && npm link ../.. && node index.js", From ecb3686d09c3b191f740898314961943a5a47135 Mon Sep 17 00:00:00 2001 From: MK Date: Sat, 17 Jan 2026 15:01:12 +0800 Subject: [PATCH 29/33] FIXUP --- .github/workflows/nodejs-old-versions.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/nodejs-old-versions.yml b/.github/workflows/nodejs-old-versions.yml index 418d6ada..8e80a22a 100644 --- a/.github/workflows/nodejs-old-versions.yml +++ b/.github/workflows/nodejs-old-versions.yml @@ -10,7 +10,7 @@ jobs: test: runs-on: ubuntu-latest concurrency: - group: typecheck-${{ github.workflow }}-#${{ github.event.pull_request.number || github.head_ref || github.ref }} + group: nodejs-old-versions-test-${{ github.workflow }}-#${{ github.event.pull_request.number || github.head_ref || github.ref }}-(${{ matrix.node }}) cancel-in-progress: true strategy: fail-fast: false From 795511f70289af2841e0f70cf79d09995dbb0769 Mon Sep 17 00:00:00 2001 From: MK Date: Sat, 17 Jan 2026 15:04:53 +0800 Subject: [PATCH 30/33] FIXUP --- .github/workflows/pkg.pr.new.yml | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/.github/workflows/pkg.pr.new.yml b/.github/workflows/pkg.pr.new.yml index 5d8cd478..d69f1fdf 100644 --- a/.github/workflows/pkg.pr.new.yml +++ b/.github/workflows/pkg.pr.new.yml @@ -15,12 +15,15 @@ jobs: - run: corepack enable - uses: actions/setup-node@v6 with: - node-version: 20 + node-version: 22 - - name: Install dependencies - run: npm install + - name: Setup Vite+ + uses: voidzero-dev/setup-vite-plus-action@v1 + with: + cache: true + run-install: true - name: Build - run: npm run prepublishOnly + run: vite run build - - run: npx pkg-pr-new publish + - run: vite dlx pkg-pr-new publish From bc80b674c0b10ed4d97b9561b11554068131c721 Mon Sep 17 00:00:00 2001 From: MK Date: Sat, 17 Jan 2026 15:09:34 +0800 Subject: [PATCH 31/33] FIXUP --- README.md | 1 + vite.config.ts | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index d9782643..eb56e5e9 100644 --- a/README.md +++ b/README.md @@ -8,6 +8,7 @@ [![Node.js Version](https://img.shields.io/node/v/urllib.svg?style=flat)](https://nodejs.org/en/download/) [![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](https://makeapullrequest.com) ![CodeRabbit Pull Request Reviews](https://img.shields.io/coderabbit/prs/github/node-modules/urllib) +[![pkg.pr.new](https://pkg.pr.new/badge/node-modules/urllib)](https://pkg.pr.new/~/node-modules/urllib) [npm-image]: https://img.shields.io/npm/v/urllib.svg?style=flat-square [npm-url]: https://npmjs.org/package/urllib diff --git a/vite.config.ts b/vite.config.ts index 845c17ea..61dc008f 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -155,7 +155,8 @@ export default defineConfig({ coverage: { include: ['src'], }, - pool: 'threads', + // https://vitest.dev/guide/common-errors.html#failed-to-terminate-worker + pool: 'forks', setupFiles: ['test/setup.ts'], }, }); From fd1f1ce31151d94c498040d83b0e978ecda2e36d Mon Sep 17 00:00:00 2001 From: MK Date: Sat, 17 Jan 2026 15:18:12 +0800 Subject: [PATCH 32/33] FIXUP --- .github/workflows/nodejs.yml | 36 +++++++++++++++++------------------- vite.config.ts | 1 + 2 files changed, 18 insertions(+), 19 deletions(-) diff --git a/.github/workflows/nodejs.yml b/.github/workflows/nodejs.yml index 60567a83..a8c41c3c 100644 --- a/.github/workflows/nodejs.yml +++ b/.github/workflows/nodejs.yml @@ -17,32 +17,31 @@ jobs: - name: Checkout repository uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6 - - name: Install pnpm - uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4 - - name: Set up Node.js uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6 with: node-version: '24' - cache: 'pnpm' - - name: Install dependencies - run: pnpm install --frozen-lockfile + - name: Setup Vite+ + uses: voidzero-dev/setup-vite-plus-action@v1 + with: + cache: true + run-install: true - name: Run lint - run: pnpm run lint + run: vite run lint - name: Check dedupe - run: pnpm dedupe --check + run: vite dedupe --check - name: Run typecheck - run: pnpm run typecheck + run: vite run typecheck - name: Run format check - run: pnpm run fmtcheck + run: vite run fmtcheck - - name: Run build - run: pnpm run build + - name: Run build check + run: vite run build test: strategy: @@ -65,20 +64,19 @@ jobs: - name: Checkout repository uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6 - - name: Install pnpm - uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4 - - name: Set up Node.js uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6 with: node-version: ${{ matrix.node }} - cache: 'pnpm' - - name: Install dependencies - run: pnpm install --frozen-lockfile + - name: Setup Vite+ + uses: voidzero-dev/setup-vite-plus-action@v1 + with: + cache: true + run-install: true - name: Run tests - run: pnpm run ci + run: vite run ci - name: Code Coverage uses: codecov/codecov-action@671740ac38dd9b0130fbe1cec585b89eea48d3de # v5 diff --git a/vite.config.ts b/vite.config.ts index 61dc008f..3617c411 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -25,6 +25,7 @@ export default defineConfig({ env: { node: true, }, + // FIXME: wait for vite-plus to fix lint extends path resolution extends: ['../../@eggjs/oxlint-config/.oxlintrc.json'], categories: { correctness: 'allow', From 5840c75b2395179e176a9f6a8939f2ab326b18d8 Mon Sep 17 00:00:00 2001 From: MK Date: Sat, 17 Jan 2026 15:31:45 +0800 Subject: [PATCH 33/33] FIXUP --- package.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index 7526c87d..99db8f9c 100644 --- a/package.json +++ b/package.json @@ -46,10 +46,10 @@ }, "scripts": { "lint": "vite lint src test --type-aware --type-check", - "fmt": "vite fmt", "typecheck": "tsc --noEmit && tsgo --noEmit", - "fmtcheck": "vite fmt --check .", - "prebuild": "npm run clean", + "fmt": "vite fmt", + "fmtcheck": "vite fmt --check", + "prebuild": "vite run clean", "build": "vite run build:ts && vite run build:version", "build:ts": "tsc --version && tshy && tshy-after", "build:version": "node ./scripts/replace_urllib_version.js",