From 70d4e1cadaf62bbfae58e81bf0fbe75b180fc4da Mon Sep 17 00:00:00 2001 From: "voidzero-guard[bot]" <278573678+voidzero-guard[bot]@users.noreply.github.com> Date: Mon, 13 Jul 2026 02:04:47 +0000 Subject: [PATCH 1/8] feat(deps): upgrade upstream dependencies - vite: 578ffb8 -> v8.1.4 (a477454) - tsdown: 0.22.4 -> 0.22.5 - @tsdown/css: 0.22.4 -> 0.22.5 - @tsdown/exe: 0.22.4 -> 0.22.5 Code changes: - packages/core/package.json: widen `typescript` peer range to `^5.0.0 || ^6.0.0 || ^7.0.0`; bump bundled `vite` 8.1.3 -> 8.1.4 and `tsdown` 0.22.4 -> 0.22.5 - pnpm-workspace.yaml: pin `postcss-modules` to 9.0.0 and register `vite/patches/postcss-modules@9.0.0.patch` so the still-shipped vite patch applies (^9.0.0 otherwise re-resolves to 9.0.1 and fails install) - pnpm-workspace.yaml: add `yuku-*`, `@yuku-parser/*`, `@yuku-codegen/*` to `minimumReleaseAgeExclude` - crates/vite_cli_snapshots/.../new_vite_monorepo{,_bun}/snapshots: refresh generated `typescript`/`@types/node` devDependency versions - crates/vite_cli_snapshots/.../command_env_which/snapshots: refresh install date --- .../snapshots/command_env_which.md | 2 +- .../snapshots/new_vite_monorepo.md | 5 +- .../snapshots/new_vite_monorepo_bun.md | 5 +- packages/core/package.json | 6 +- packages/tools/.upstream-versions.json | 2 +- pnpm-lock.yaml | 551 +++++++++++++----- pnpm-workspace.yaml | 16 +- 7 files changed, 413 insertions(+), 174 deletions(-) diff --git a/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/command_env_which/snapshots/command_env_which.md b/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/command_env_which/snapshots/command_env_which.md index 4618a3f6c9..d348ef7320 100644 --- a/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/command_env_which/snapshots/command_env_which.md +++ b/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/command_env_which/snapshots/command_env_which.md @@ -87,7 +87,7 @@ VITE+ - The Unified Toolchain for the Web Package: cowsay@1.6.0 Binaries: cowsay, cowthink Node: - Installed: 2026-07-10 + Installed: 2026-07-13 ``` ## `vp remove -g cowsay` diff --git a/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/new_vite_monorepo/snapshots/new_vite_monorepo.md b/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/new_vite_monorepo/snapshots/new_vite_monorepo.md index a611f3d79b..3f83c69dcb 100644 --- a/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/new_vite_monorepo/snapshots/new_vite_monorepo.md +++ b/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/new_vite_monorepo/snapshots/new_vite_monorepo.md @@ -239,10 +239,9 @@ check utils normalizes vite-plus to catalog: "prepublishOnly": "vp run build" }, "devDependencies": { - "@types/node": "^25.6.2", - "@typescript/native-preview": "7.0.0-dev.20260509.2", + "@types/node": "^26.1.1", "bumpp": "^11.1.0", - "typescript": "^6.0.3", + "typescript": "^7.0.2", "vite": "catalog:", "vite-plus": "catalog:" } diff --git a/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/new_vite_monorepo_bun/snapshots/new_vite_monorepo_bun.md b/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/new_vite_monorepo_bun/snapshots/new_vite_monorepo_bun.md index 0165f1a6c2..5d00cc8b14 100644 --- a/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/new_vite_monorepo_bun/snapshots/new_vite_monorepo_bun.md +++ b/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/new_vite_monorepo_bun/snapshots/new_vite_monorepo_bun.md @@ -155,10 +155,9 @@ check utils normalizes vite-plus to catalog: "prepublishOnly": "vp run build" }, "devDependencies": { - "@types/node": "^25.6.2", - "@typescript/native-preview": "7.0.0-dev.20260509.2", + "@types/node": "^26.1.1", "bumpp": "^11.1.0", - "typescript": "^6.0.3", + "typescript": "^7.0.2", "vite-plus": "catalog:" } } diff --git a/packages/core/package.json b/packages/core/package.json index ed74723ec1..25734c923e 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -149,7 +149,7 @@ "sugarss": "^5.0.0", "terser": "^5.16.0", "tsx": "^4.8.1", - "typescript": "^5.0.0 || ^6.0.0", + "typescript": "^5.0.0 || ^6.0.0 || ^7.0.0", "unplugin-unused": "^0.5.0", "unrun": "*", "yaml": "^2.4.2" @@ -214,8 +214,8 @@ "node": "^20.19.0 || ^22.18.0 || >=24.11.0" }, "bundledVersions": { - "vite": "8.1.3", + "vite": "8.1.4", "rolldown": "1.1.5", - "tsdown": "0.22.4" + "tsdown": "0.22.5" } } diff --git a/packages/tools/.upstream-versions.json b/packages/tools/.upstream-versions.json index cb5aa83ad4..c30e2ee734 100644 --- a/packages/tools/.upstream-versions.json +++ b/packages/tools/.upstream-versions.json @@ -7,6 +7,6 @@ "vite": { "repo": "https://github.com/vitejs/vite.git", "branch": "main", - "hash": "578ffb80d46940f3b99cd96ed609f8b3a0ac5ede" + "hash": "a477454442eff649b430f9e3c6caf2500fcb7183" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 76ae25d8df..77c0cc5b0b 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -52,11 +52,11 @@ catalogs: specifier: ^16.0.0 version: 16.0.3 '@tsdown/css': - specifier: ^0.22.4 - version: 0.22.4 + specifier: ^0.22.5 + version: 0.22.5 '@tsdown/exe': - specifier: ^0.22.4 - version: 0.22.4 + specifier: ^0.22.5 + version: 0.22.5 '@types/babel__core': specifier: 7.20.5 version: 7.20.5 @@ -268,8 +268,8 @@ catalogs: specifier: ^1.0.1 version: 1.2.4 tsdown: - specifier: ^0.22.4 - version: 0.22.4 + specifier: ^0.22.5 + version: 0.22.5 typescript: specifier: ^6.0.0 version: 6.0.2 @@ -299,16 +299,20 @@ overrides: rolldown: workspace:rolldown@* vite: workspace:@voidzero-dev/vite-plus-core@* vite-plus: workspace:vite-plus@* + postcss-modules: 9.0.0 packageExtensionsChecksum: sha256-Tldxs3DhJEw/FFBonUidqhCBqApA0zxQnop3Y+BTO3U= patchedDependencies: chokidar@3.6.0: - hash: 8a4f9e2b397e6034b91a0508faae3cecb97f222313faa129d7cb0eb71e9d0e84 + hash: e17269188c54412478078f7ac7877c1d5a475a2f2438328e3a7e725513ccbf1f path: vite/patches/chokidar@3.6.0.patch dotenv-expand@13.0.0: hash: 49330a663821151418e003e822a82a6a61d2f0f8a6e3cab00c1c94815a112889 path: vite/patches/dotenv-expand@13.0.0.patch + postcss-modules@9.0.0: + hash: 0c886ee83450c5fd20d2c88b3ba2cf5d3afbb9c440755757f311439897188056 + path: vite/patches/postcss-modules@9.0.0.patch sirv@3.0.2: hash: c07c56eb72faea34341d465cde2314e89db472106ed378181e3447893af6bf95 path: vite/patches/sirv@3.0.2.patch @@ -488,7 +492,7 @@ importers: version: 7.8.5 tsdown: specifier: 'catalog:' - version: 0.22.4(@arethetypeswrong/core@0.18.2)(@tsdown/css@0.22.4)(@tsdown/exe@0.22.4)(@typescript/native-preview@7.0.0-dev.20260605.1)(@vitejs/devtools@0.3.4(typescript@6.0.2)(vite@packages+core))(oxc-resolver@11.21.3)(publint@0.3.21)(tsx@4.22.4)(typescript@6.0.2)(unplugin-unused@0.5.6)(unrun@0.3.1) + version: 0.22.5(@arethetypeswrong/core@0.18.2)(@tsdown/css@0.22.5)(@tsdown/exe@0.22.5)(@typescript/native-preview@7.0.0-dev.20260605.1)(@vitejs/devtools@0.3.4(typescript@6.0.2)(vite@packages+core))(oxc-resolver@11.21.3)(publint@0.3.21)(tsx@4.23.0)(typescript@6.0.2)(unplugin-unused@0.5.6)(unrun@0.3.1) validate-npm-package-name: specifier: 'catalog:' version: 7.0.2 @@ -551,9 +555,9 @@ importers: version: 5.48.0 tsx: specifier: ^4.8.1 - version: 4.22.4 + version: 4.23.0 typescript: - specifier: ^5.0.0 || ^6.0.0 + specifier: ^5.0.0 || ^6.0.0 || ^7.0.0 version: 6.0.2 unplugin-unused: specifier: ^0.5.0 @@ -591,10 +595,10 @@ importers: version: 0.1.0 '@tsdown/css': specifier: 'catalog:' - version: 0.22.4(jiti@2.7.0)(postcss-import@16.1.1(postcss@8.5.16))(postcss-modules@6.0.1(postcss@8.5.16))(postcss@8.5.16)(sass-embedded@1.100.0(source-map-js@1.2.1))(sass@1.101.0)(tsdown@0.22.4)(tsx@4.22.4)(yaml@2.9.0) + version: 0.22.5(jiti@2.7.0)(postcss-import@16.1.1(postcss@8.5.16))(postcss-modules@9.0.0(patch_hash=0c886ee83450c5fd20d2c88b3ba2cf5d3afbb9c440755757f311439897188056)(postcss@8.5.16))(postcss@8.5.16)(sass-embedded@1.100.0(source-map-js@1.2.1))(sass@1.101.0)(tsdown@0.22.5)(tsx@4.23.0)(yaml@2.9.0) '@tsdown/exe': specifier: 'catalog:' - version: 0.22.4(tsdown@0.22.4) + version: 0.22.5(tsdown@0.22.5) '@vitejs/devtools': specifier: ^0.3.4 version: 0.3.4(typescript@6.0.2)(vite@packages+core) @@ -645,7 +649,7 @@ importers: version: 1.2.2 tsdown: specifier: 'catalog:' - version: 0.22.4(@arethetypeswrong/core@0.18.2)(@tsdown/css@0.22.4)(@tsdown/exe@0.22.4)(@typescript/native-preview@7.0.0-dev.20260605.1)(@vitejs/devtools@0.3.4(typescript@6.0.2)(vite@packages+core))(oxc-resolver@11.21.3)(publint@0.3.21)(tsx@4.22.4)(typescript@6.0.2)(unplugin-unused@0.5.6)(unrun@0.3.1) + version: 0.22.5(@arethetypeswrong/core@0.18.2)(@tsdown/css@0.22.5)(@tsdown/exe@0.22.5)(@typescript/native-preview@7.0.0-dev.20260605.1)(@vitejs/devtools@0.3.4(typescript@6.0.2)(vite@packages+core))(oxc-resolver@11.21.3)(publint@0.3.21)(tsx@4.23.0)(typescript@6.0.2)(unplugin-unused@0.5.6)(unrun@0.3.1) vite: specifier: workspace:@voidzero-dev/vite-plus-core@* version: 'link:' @@ -658,7 +662,7 @@ importers: dependencies: '@clack/core': specifier: ^1.0.0 - version: 1.4.2 + version: 1.4.3 picocolors: specifier: ^1.0.0 version: 1.1.1 @@ -677,7 +681,7 @@ importers: version: 1.3.0 tsdown: specifier: 'catalog:' - version: 0.22.4(@arethetypeswrong/core@0.18.2)(@tsdown/css@0.22.4)(@tsdown/exe@0.22.4)(@typescript/native-preview@7.0.0-dev.20260605.1)(@vitejs/devtools@0.3.4(typescript@6.0.2)(vite@packages+core))(oxc-resolver@11.21.3)(publint@0.3.21)(tsx@4.22.4)(typescript@6.0.2)(unplugin-unused@0.5.6)(unrun@0.3.1) + version: 0.22.5(@arethetypeswrong/core@0.18.2)(@tsdown/css@0.22.5)(@tsdown/exe@0.22.5)(@typescript/native-preview@7.0.0-dev.20260605.1)(@vitejs/devtools@0.3.4(typescript@6.0.2)(vite@packages+core))(oxc-resolver@11.21.3)(publint@0.3.21)(tsx@4.23.0)(typescript@6.0.2)(unplugin-unused@0.5.6)(unrun@0.3.1) packages/tools: devDependencies: @@ -1022,8 +1026,8 @@ importers: specifier: ^17.0.8 version: 17.0.8 oxfmt: - specifier: ^0.56.0 - version: 0.56.0(vite-plus@packages+cli) + specifier: ^0.57.0 + version: 0.57.0(vite-plus@packages+cli) picocolors: specifier: ^1.1.1 version: 1.1.1 @@ -1040,13 +1044,13 @@ importers: specifier: ^2.13.1 version: 2.13.1 tsx: - specifier: ^4.22.4 - version: 4.22.4 + specifier: ^4.23.0 + version: 4.23.0 typescript: specifier: ~6.0.2 version: 6.0.2 typescript-eslint: - specifier: ^8.62.0 + specifier: ^8.62.1 version: 8.62.1(eslint@9.39.4(jiti@2.7.0))(typescript@6.0.2) vite: specifier: workspace:@voidzero-dev/vite-plus-core@* @@ -1058,8 +1062,8 @@ importers: vite/packages/create-vite: devDependencies: '@clack/prompts': - specifier: ^1.6.0 - version: 1.6.0 + specifier: ^1.7.0 + version: 1.7.0 '@vercel/detect-agent': specifier: ^1.2.3 version: 1.2.3 @@ -1071,7 +1075,7 @@ importers: version: 1.2.0 tsdown: specifier: ^0.22.3 - version: 0.22.4(@arethetypeswrong/core@0.18.2)(@tsdown/css@0.22.4)(@tsdown/exe@0.22.4)(@typescript/native-preview@7.0.0-dev.20260605.1)(@vitejs/devtools@0.3.4(typescript@6.0.2)(vite@packages+core))(oxc-resolver@11.21.3)(publint@0.3.21)(tsx@4.22.4)(typescript@6.0.2)(unplugin-unused@0.5.6)(unrun@0.3.1) + version: 0.22.5(@arethetypeswrong/core@0.18.2)(@tsdown/css@0.22.5)(@tsdown/exe@0.22.5)(@typescript/native-preview@7.0.0-dev.20260605.1)(@vitejs/devtools@0.3.4(typescript@6.0.2)(vite@packages+core))(oxc-resolver@11.21.3)(publint@0.3.21)(tsx@4.23.0)(typescript@6.0.2)(unplugin-unused@0.5.6)(unrun@0.3.1) unrun: specifier: ^0.3.1 version: 0.3.1 @@ -1126,7 +1130,7 @@ importers: version: 1.1.1 tsdown: specifier: ^0.22.3 - version: 0.22.4(@arethetypeswrong/core@0.18.2)(@tsdown/css@0.22.4)(@tsdown/exe@0.22.4)(@typescript/native-preview@7.0.0-dev.20260605.1)(@vitejs/devtools@0.3.4(typescript@6.0.2)(vite@packages+core))(oxc-resolver@11.21.3)(publint@0.3.21)(tsx@4.22.4)(typescript@6.0.2)(unplugin-unused@0.5.6)(unrun@0.3.1) + version: 0.22.5(@arethetypeswrong/core@0.18.2)(@tsdown/css@0.22.5)(@tsdown/exe@0.22.5)(@typescript/native-preview@7.0.0-dev.20260605.1)(@vitejs/devtools@0.3.4(typescript@6.0.2)(vite@packages+core))(oxc-resolver@11.21.3)(publint@0.3.21)(tsx@4.23.0)(typescript@6.0.2)(unplugin-unused@0.5.6)(unrun@0.3.1) unrun: specifier: ^0.3.1 version: 0.3.1 @@ -1149,7 +1153,7 @@ importers: specifier: ^1.32.0 version: 1.32.0 picomatch: - specifier: ^4.0.4 + specifier: ^4.0.5 version: 4.0.5 postcss: specifier: ^8.5.16 @@ -1168,7 +1172,7 @@ importers: version: 0.2.17 tsx: specifier: ^4.8.1 - version: 4.22.4 + version: 4.23.0 yaml: specifier: ^2.4.2 version: 2.9.0 @@ -1204,7 +1208,7 @@ importers: specifier: ^1.2.3 version: 1.2.3 '@vitejs/devtools': - specifier: ^0.3.3 + specifier: ^0.3.4 version: 0.3.4(typescript@6.0.2)(vite@packages+core) '@vitest/utils': specifier: 4.1.9 @@ -1216,14 +1220,14 @@ importers: specifier: ^0.4.4 version: 0.4.4 baseline-browser-mapping: - specifier: ^2.10.40 - version: 2.10.40 + specifier: ^2.10.42 + version: 2.10.43 cac: specifier: ^7.0.0 version: 7.0.0 chokidar: specifier: ^3.6.0 - version: 3.6.0(patch_hash=8a4f9e2b397e6034b91a0508faae3cecb97f222313faa129d7cb0eb71e9d0e84) + version: 3.6.0(patch_hash=e17269188c54412478078f7ac7877c1d5a475a2f2438328e3a7e725513ccbf1f) connect: specifier: ^3.7.0 version: 3.7.0 @@ -1301,10 +1305,10 @@ importers: version: 16.1.1(postcss@8.5.16) postcss-load-config: specifier: ^6.0.1 - version: 6.0.1(jiti@2.7.0)(postcss@8.5.16)(tsx@4.22.4)(yaml@2.9.0) + version: 6.0.1(jiti@2.7.0)(postcss@8.5.16)(tsx@4.23.0)(yaml@2.9.0) postcss-modules: - specifier: ^6.0.1 - version: 6.0.1(postcss@8.5.16) + specifier: 9.0.0 + version: 9.0.0(patch_hash=0c886ee83450c5fd20d2c88b3ba2cf5d3afbb9c440755757f311439897188056)(postcss@8.5.16) premove: specifier: ^4.0.0 version: 4.0.0 @@ -1990,15 +1994,15 @@ packages: '@clack/core@0.5.0': resolution: {integrity: sha512-p3y0FIOwaYRUPRcMO7+dlmLh8PSRcrjuTndsiA0WAFbWES0mLZlrjVoBRZ9DzkPFJZG6KGkJmoEAY0ZcVWTkow==} - '@clack/core@1.4.2': - resolution: {integrity: sha512-0Ty/1Gfm+Kb07sXcuESjyKfwEhSy4Ns1AgeEisHb/bDY5fWme0tTeTkU14T1Gmcs17YIjB/teiDe4uaCghbYqQ==} + '@clack/core@1.4.3': + resolution: {integrity: sha512-/kr3UWNtdJfxZtPgDqUOmG2pvwlmcLGheex5yiZKdwbzZJxhV+HMNR9QNmyY5cGwTNV6LrR7Jtp+KjhUAP1qBQ==} engines: {node: '>= 20.12.0'} '@clack/prompts@0.11.0': resolution: {integrity: sha512-pMN5FcrEw9hUkZA4f+zLlzivQSeQf5dRGJjSUbvVYDLvpKCdQx5OaknvKzgbtXOizhP+SJJJjqEbOe55uKKfAw==} - '@clack/prompts@1.6.0': - resolution: {integrity: sha512-EYlRokl8szrP9Z25qT5aepMdBjzBvHF9ZEhzIiUBc9guz/T31EqRgvD0QSgZcpE93xiwrr+OkB4nz0BZyF6fSA==} + '@clack/prompts@1.7.0': + resolution: {integrity: sha512-y7/yvZ2TPAnR9+jnc00klvNNLkJiXFFrQA/hlLCcxA9a2A4zQIOimyFQ9XfwYKiGD1fb5GY8vbKIIgO8d5Tb2A==} engines: {node: '>= 20.12.0'} '@conventional-changelog/git-client@2.7.0': @@ -3672,8 +3676,8 @@ packages: cpu: [x64] os: [win32] - '@oxfmt/binding-android-arm-eabi@0.56.0': - resolution: {integrity: sha512-CSCxi7ovYojgfdPOdUb9T508HKeAdDIKeRGg7x8IZwVJrWz9gVgX7MbUnFqtQAE4QvoNo07mj2JlwnOzJw4qqA==} + '@oxfmt/binding-android-arm-eabi@0.57.0': + resolution: {integrity: sha512-qVBsEO+KugOsCmUHcO8iqNnqc65p7PCKpCs8M66mPZ+Ri+CWbcpoQOEJBg2OTu03+0qu++NK1jj6IzvQVs0Sig==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm] os: [android] @@ -3684,8 +3688,8 @@ packages: cpu: [arm] os: [android] - '@oxfmt/binding-android-arm64@0.56.0': - resolution: {integrity: sha512-HYJFnd+PkDwf6S9ZPGzXXtjNqvRWFnnhdbWaouh4mi/SxU8wmDuzlMn3xo/wDTGnr4Q1VA7ZzOaE/D4biW0W6A==} + '@oxfmt/binding-android-arm64@0.57.0': + resolution: {integrity: sha512-mp6PibWbao3aizijcheOeHQaYEhcUAt8pwLniYbtLfHxL/psFF0BykAwCj+s3c6qIpa8yN8keZICWrqtZ70w8g==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [android] @@ -3696,8 +3700,8 @@ packages: cpu: [arm64] os: [android] - '@oxfmt/binding-darwin-arm64@0.56.0': - resolution: {integrity: sha512-sftR/bEOr+t1gs+evwsHi/Xbq2FAPA2uU3VMr8n6ZU9PoK/IMSfnfu7+OEe/uy1+knhrFl4Wvy7Vkm3uo9mJ7g==} + '@oxfmt/binding-darwin-arm64@0.57.0': + resolution: {integrity: sha512-T+0stuCBqmUVY+aMIvrgXhzGhHO3sD5tNiiEcYqgSdPsnukskQqn2u5qOVD0sv1l7RLdFS5Z/f5Wi9Ktyjr3Eg==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [darwin] @@ -3708,8 +3712,8 @@ packages: cpu: [arm64] os: [darwin] - '@oxfmt/binding-darwin-x64@0.56.0': - resolution: {integrity: sha512-z66SdjLqa3MUPKvTp3Mbb5nSjKSbnYxJGeB+Wx987s8T5hPcIRiBMfnJ6zcPgYtQn3x5xjvdzNVkXrSeYH6ZFg==} + '@oxfmt/binding-darwin-x64@0.57.0': + resolution: {integrity: sha512-O+3JbqWs/mCI2oi4xfhRO2IVPFJNDDEBV8Odo+ZpmsUOeKJfjXoNH7nDmBEQcDgK7NfjDIyE7kRgYSZcTLDO0A==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [darwin] @@ -3720,8 +3724,8 @@ packages: cpu: [x64] os: [darwin] - '@oxfmt/binding-freebsd-x64@0.56.0': - resolution: {integrity: sha512-t2tkrV1vtZyaItSQ71dTi2ZVKZEI39b/LqLT12V5KMfIeXK6N32TUC1jhOXKVQmhECq9j2ZXMQV3JeT1kh9Vmg==} + '@oxfmt/binding-freebsd-x64@0.57.0': + resolution: {integrity: sha512-pxwhxVC+JkLX9twOQ/8C/vbuOQcMZyKIDmiRDZfO7yITuVcIdZCiLRqqf4QOxb2+8FWrRXzQpm+1DBKcMpHSSQ==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [freebsd] @@ -3732,8 +3736,8 @@ packages: cpu: [x64] os: [freebsd] - '@oxfmt/binding-linux-arm-gnueabihf@0.56.0': - resolution: {integrity: sha512-+gCy+Tp3RHeXQ9y/QrS76lXIpZkbziTyp6hIgjB2MssCwfMph3vG/GEfkhO34Rai1vhYIaUkvv8UT1BcDorJPw==} + '@oxfmt/binding-linux-arm-gnueabihf@0.57.0': + resolution: {integrity: sha512-pxBU4zH2imB/MDBfth2rOMeVxXUMjRQLCazagwLARIFH3hVlxZJBlM4nSnHXaIHJK4/qezoFCIORN6AY8Mra4A==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm] os: [linux] @@ -3744,8 +3748,8 @@ packages: cpu: [arm] os: [linux] - '@oxfmt/binding-linux-arm-musleabihf@0.56.0': - resolution: {integrity: sha512-0kKkVvQ2I+FJ2sxQyUu1zJ0yWP5kcWse/yVFnGQSFCXMwSSkfEaUGu0dW774O7nyy3jrcBGap7OSc8dZmU/CdA==} + '@oxfmt/binding-linux-arm-musleabihf@0.57.0': + resolution: {integrity: sha512-JAprOzt8tycYou36ZgEw14DlRHTiN8qdtKANdV3VZIRIvTI/lh/cX13c9pJ/EnDk2GT3FASH7KvCgQ2AufAifQ==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm] os: [linux] @@ -3756,8 +3760,8 @@ packages: cpu: [arm] os: [linux] - '@oxfmt/binding-linux-arm64-gnu@0.56.0': - resolution: {integrity: sha512-npkA2siMbyWRh+wEhi1aTAx4RirukGcGNt8V4Ch86pG+xU9aurqS1MZOnKYMu03ISwat3rB6zkQx51SsB9obNw==} + '@oxfmt/binding-linux-arm64-gnu@0.57.0': + resolution: {integrity: sha512-ajtjaxSaj9xl4BW7REt+Cef/ttzbAq00Bq4z7JUDZEfgFXdwSjH8K9bF+IcIJzZB9lKqMfQ4eHuSFOvvlvtqOg==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [linux] @@ -3770,8 +3774,8 @@ packages: os: [linux] libc: [glibc] - '@oxfmt/binding-linux-arm64-musl@0.56.0': - resolution: {integrity: sha512-UekqOjGkV4/MkqreCV9SPIB2jlR3/HbXrmhV1rVXJZ9wfDXMyCMriLtq3tHqLY4PkbVWNtfcm1kMojJ26KLSJw==} + '@oxfmt/binding-linux-arm64-musl@0.57.0': + resolution: {integrity: sha512-p4Y/+RYk9Bk5WO+zHSUXAClRmZ2fbJCejMuCAsU2HhyME4jqf6Ftt/mJYEwIah1wGCBDYOB7wEGV1x5bCEZ6hA==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [linux] @@ -3784,8 +3788,8 @@ packages: os: [linux] libc: [musl] - '@oxfmt/binding-linux-ppc64-gnu@0.56.0': - resolution: {integrity: sha512-XSzveSpeZMD5XJpew5lRFVtNnT04xd3rJxENXmk7wkZzN9oWzv2aFJyoNDhOtoz69BYaS/fg4SYl+CfEZRpB0Q==} + '@oxfmt/binding-linux-ppc64-gnu@0.57.0': + resolution: {integrity: sha512-By6tRALAZsno0F4zedmtG+wdMvJiJmJoXM4d3+A9zHE4HRXLqXITwRH8mgrlcXc5yJM2g2W3riRPwTYdgemZLQ==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [ppc64] os: [linux] @@ -3798,8 +3802,8 @@ packages: os: [linux] libc: [glibc] - '@oxfmt/binding-linux-riscv64-gnu@0.56.0': - resolution: {integrity: sha512-EkQ0nJa7k7HDDIVuPF7WY+k4k+bzdclLYtyIXNt7/OqVghfNiMym6YGppFBgx1XRIHW6QylxBz5OogumPjPJbQ==} + '@oxfmt/binding-linux-riscv64-gnu@0.57.0': + resolution: {integrity: sha512-skYeG+RgvyzspqVEBsEprL90OYYZfoVNqB3HcCNR6QDJyXKOzfDRT3zncnHmUaFluIlBHuY23mU1b5WGgR98hA==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [riscv64] os: [linux] @@ -3812,8 +3816,8 @@ packages: os: [linux] libc: [glibc] - '@oxfmt/binding-linux-riscv64-musl@0.56.0': - resolution: {integrity: sha512-dyjAGW8jKRge0ik6U/dgvQG0nVpA3iBlRskQTz5qJLvQWIrySxX5jpqzPetLBNIIZ231KA82fDdi1nLTk8ENCw==} + '@oxfmt/binding-linux-riscv64-musl@0.57.0': + resolution: {integrity: sha512-FFgACrZOXAXUh5KQh2mt1CDOVOZmn+QzHP71wM9QobNwyQvoFfyAeefVUltW83g3sm7LTiH3yfFqLLVUpA5ZFQ==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [riscv64] os: [linux] @@ -3826,8 +3830,8 @@ packages: os: [linux] libc: [musl] - '@oxfmt/binding-linux-s390x-gnu@0.56.0': - resolution: {integrity: sha512-60ZGH3LtfqlW8X6vcLdSFY4lvCQYINurttYBKaALnHCDVAUCYJ1LsUgS6p1XOzVlzEDx3yNUZvDF1Lvt59zoZw==} + '@oxfmt/binding-linux-s390x-gnu@0.57.0': + resolution: {integrity: sha512-Nm/BAOfQeFiiKd502mZn/GAVKJwtd0RdCg17G3Wz/WSOIQmDi3+7/SZH4BHn1Ye5KvTVH3ua8WvfwLLycNIuvA==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [s390x] os: [linux] @@ -3840,8 +3844,8 @@ packages: os: [linux] libc: [glibc] - '@oxfmt/binding-linux-x64-gnu@0.56.0': - resolution: {integrity: sha512-u1suj1tgJHK4ZqB7buCtdbNef2n8+d0lXTPJwLHNmtyK6p+DTpsaoDvmqhQrA56fgKYv4LuRxNtL8YooebKOew==} + '@oxfmt/binding-linux-x64-gnu@0.57.0': + resolution: {integrity: sha512-BiSy5Ku3mQqyxS6YIqAJgd403wEUWvI7kerfzPxc2l/txZVmZM0pSj7oDM+4bGBExowxOi7o73jEam1W0EDTZg==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [linux] @@ -3854,8 +3858,8 @@ packages: os: [linux] libc: [glibc] - '@oxfmt/binding-linux-x64-musl@0.56.0': - resolution: {integrity: sha512-aYGLvlQHt80y+qKEtfJY/Nm27G0125Lv+qyh9SJ4Cjc6lXnXjD+ndfhqQnbV24POpMi7rNRi0jvx/0d70FRpCQ==} + '@oxfmt/binding-linux-x64-musl@0.57.0': + resolution: {integrity: sha512-BCRkJiotz5s9afLYD2LuMvzAoDYx9H17E/YbDyu4xK7l4zHDPeny9ErSXL//i/nJyaOwRk08x4b8cgJC00+JDg==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [linux] @@ -3868,8 +3872,8 @@ packages: os: [linux] libc: [musl] - '@oxfmt/binding-openharmony-arm64@0.56.0': - resolution: {integrity: sha512-H/re/gO+7ysVc+kywHNuzY3C33EN9sQcZhg0kp1ZwOZl7y998ZE5mhnBiuGR/nYI0pqLL5xQfrHVUOJ/cIJsCA==} + '@oxfmt/binding-openharmony-arm64@0.57.0': + resolution: {integrity: sha512-4Oaxe1qrGgXfpCJ1C/ERJ2iCtV2rN1R79ga9fsfyVHfSQRu/hVW780u2KDqZWFZ/iGTHODJji0JemxqFZ63eIQ==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [openharmony] @@ -3880,8 +3884,8 @@ packages: cpu: [arm64] os: [openharmony] - '@oxfmt/binding-win32-arm64-msvc@0.56.0': - resolution: {integrity: sha512-6qLNXfXmtAs8jXDvYMkxk6Wec5SUJoew+ZX1uOZmqaR7ks0EJFbAohuOCELDyJMWyVlxotVG8Xf8m74Bfq0O2w==} + '@oxfmt/binding-win32-arm64-msvc@0.57.0': + resolution: {integrity: sha512-MYLAsDnhdNsSGheLYhWgbk0vfIrlS84iQYun/y21fX6u0jj8iBtYtbpZMdiqYeuf8U12eVPUjVY2xE2NrCfJ0g==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [win32] @@ -3892,8 +3896,8 @@ packages: cpu: [arm64] os: [win32] - '@oxfmt/binding-win32-ia32-msvc@0.56.0': - resolution: {integrity: sha512-UXEXuKphAe15bsob4AswNMArCw38XSmUIs3wk1s6e6MX9OWGW/IRWU95s1hZDiVg09STy1jHgyN2qkqbu1FT0w==} + '@oxfmt/binding-win32-ia32-msvc@0.57.0': + resolution: {integrity: sha512-PBwdzZALJY/jcCx2E6is0yu+cuVXeySTDmwuseD+9j0mHqlRNxwlKgsyRTBed/woPeqfVfuXfWjoq4Cx2Zt3Eg==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [ia32] os: [win32] @@ -3904,8 +3908,8 @@ packages: cpu: [ia32] os: [win32] - '@oxfmt/binding-win32-x64-msvc@0.56.0': - resolution: {integrity: sha512-HPyNDjky+NIOuaMvHZflR+kst3YWdUOH2JUQYkf99grqZ5mEBTQM6h9iGy501Z8Xt5xMScrwHOuVCOlqDrktRw==} + '@oxfmt/binding-win32-x64-msvc@0.57.0': + resolution: {integrity: sha512-bQJdH9i4RRfw55jm7+8/xS7GzHLLTbHx4huhrrDxQJaJtbSDbsyOnODvP1ftT7EG0KFKAYO2S+q6AcioXODx8w==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [win32] @@ -4419,16 +4423,16 @@ packages: '@tootallnate/quickjs-emscripten@0.23.0': resolution: {integrity: sha512-C5Mc6rdnsaJDjO3UpGW/CQTHtCKaYlScZTly4JIu97Jxo/odCiH0ITnDXSJPTOrEKk/ycSZ0AOgTmkDtkOsvIA==} - '@tsdown/css@0.22.4': - resolution: {integrity: sha512-bgmMvsDuTeRz5L7owzmU1o2AB66wTvfmH1MdCnWfwqRG25MejOHsGohyp6wy2TBmFiUV7mf9m9uq6JP5x9MBmw==} + '@tsdown/css@0.22.5': + resolution: {integrity: sha512-sTaQnd5+kTTmRZ48nSGeaMrbcV7kaUQaLcU7V2e/WfdyOFZXPNeF4qn6Fqef10qscfYIcx0/3tJ7iKOJY+p2Rg==} engines: {node: ^22.18.0 || >=24.11.0} peerDependencies: postcss: ^8.4.0 postcss-import: ^16.0.0 - postcss-modules: ^6.0.0 + postcss-modules: 9.0.0 sass: '*' sass-embedded: '*' - tsdown: 0.22.4 + tsdown: 0.22.5 peerDependenciesMeta: postcss: optional: true @@ -4441,11 +4445,11 @@ packages: sass-embedded: optional: true - '@tsdown/exe@0.22.4': - resolution: {integrity: sha512-nba1yn7ttgvAQp4pon+UBb8lcjfi63IG7Bl7VDFzpu031UKY/T1IVl20n41FZjhynnGvqBJVcndjj6/avsCxKQ==} + '@tsdown/exe@0.22.5': + resolution: {integrity: sha512-Q/gucpg6/yIkCKuI4DEH4hAuJY3j4/HA4vwL4Nqcza1cYcbey+A5lypqamLRe4pCpr2LiMgEtb9LW2p7Xz4ACg==} engines: {node: ^22.18.0 || >=24.11.0} peerDependencies: - tsdown: 0.22.4 + tsdown: 0.22.5 '@tybys/wasm-util@0.10.3': resolution: {integrity: sha512-F3fo1MYrRJYL3zER0OUOmkutjr1Vp23m7OsSgp7nq4SP6OqX6C/56XFIPAl5bt3zaBRjmW7SGz3u/6LwFpYcOg==} @@ -4961,123 +4965,245 @@ packages: cpu: [arm64] os: [darwin] + '@yuku-codegen/binding-darwin-arm64@0.6.1': + resolution: {integrity: sha512-LDJtpOKtcv9f3V0eDUwFmmy47t2VC+DAuN+gq80R1IA+fa0d408i6sHsVtt6n+g5rf8f86ySoPSAe94lHt6Ixw==} + cpu: [arm64] + os: [darwin] + '@yuku-codegen/binding-darwin-x64@0.5.44': resolution: {integrity: sha512-PCt776PnGtnQYimxk18IyvPf/BQ6CNU95W+6eaoQfeME8ra+7v3pNNoTAmLfSveUC9KZPaoajR9NqkKfEVjA2Q==} cpu: [x64] os: [darwin] + '@yuku-codegen/binding-darwin-x64@0.6.1': + resolution: {integrity: sha512-fBwpBOh33W7N87F94SVNExwm2KUV3ROhk51okr3Oy2ost1/JJuBWINVjcgwd2WPKZEFzUXgCzj/03UR/G+WIrQ==} + cpu: [x64] + os: [darwin] + '@yuku-codegen/binding-freebsd-x64@0.5.44': resolution: {integrity: sha512-5MNu1R4ysytPLMdl1UlGyjgAbUdT8fguW/QRo+pyEymbuWRN5n8JEHCFpm4AsWdP61fStagSpPDJcwN+mwC9Lg==} cpu: [x64] os: [freebsd] + '@yuku-codegen/binding-freebsd-x64@0.6.1': + resolution: {integrity: sha512-UpMkskQV3a5oPnJV+GFFupIqnLwSBD4ZsZAVUZuNVkrqct433FHKqTwuG+P5JhHZbmhf+++3Ie/V2sgduyXrAQ==} + cpu: [x64] + os: [freebsd] + '@yuku-codegen/binding-linux-arm-gnu@0.5.44': resolution: {integrity: sha512-xbP2qQ7/h6ZZKeckCiI2osB5SE5PBfLb4uzIfO1BSTX+9rlBKTqomxDaCib7aPf2X1CXMiIq+i7AK1EhBa5a7A==} cpu: [arm] os: [linux] libc: [glibc] + '@yuku-codegen/binding-linux-arm-gnu@0.6.1': + resolution: {integrity: sha512-HICjDelfEDeD6TD8OEz/Dvt8KHxJiETR+paI/Fr7eVTQbjMfRrXJz8O1qV1qGH5SHZUGl2SAw2Rp+MLtXOjCrQ==} + cpu: [arm] + os: [linux] + libc: [glibc] + '@yuku-codegen/binding-linux-arm-musl@0.5.44': resolution: {integrity: sha512-gmXKMCpgkUm5PllGMKBMoBmqgbTQkx+S85eE46LctuwTSKS/K7u65NE6t4zk6cLDvZpV67enycKXBORWn6q7xA==} cpu: [arm] os: [linux] libc: [musl] + '@yuku-codegen/binding-linux-arm-musl@0.6.1': + resolution: {integrity: sha512-pUswnwa+WOmtH2ZGOWL05kFLMNY7/TnEAryfIv1yVFzKQnmSy9TKYi3oIOxGZL3w+cdUKCZ6Q+jaD0oI10ztzA==} + cpu: [arm] + os: [linux] + libc: [musl] + '@yuku-codegen/binding-linux-arm64-gnu@0.5.44': resolution: {integrity: sha512-eOoejNUtnHs1/TMn4wryOAG/TarvlOqSZtRPeS56liBKp/GVQSirqTM9AITSGPLSdK1u7fZWMdj5IOEoJp3ruw==} cpu: [arm64] os: [linux] libc: [glibc] + '@yuku-codegen/binding-linux-arm64-gnu@0.6.1': + resolution: {integrity: sha512-Zro0FOu9clLCmqCnUKzEWHAu30tss0iEfhs+KDXm9Dpm1FkIHAKu43tF6FQU2hsTA7a8xd93NGddzc2EOJFKUg==} + cpu: [arm64] + os: [linux] + libc: [glibc] + '@yuku-codegen/binding-linux-arm64-musl@0.5.44': resolution: {integrity: sha512-xTzrhEMy1mdv5+SbJPPlwqlMrhXGPntE2f12TLi+dNPXhif4iXCGJpoh8pV9nwZFE/cq1ITuTnjIfTFj/PifzA==} cpu: [arm64] os: [linux] libc: [musl] + '@yuku-codegen/binding-linux-arm64-musl@0.6.1': + resolution: {integrity: sha512-NZaT+mp9toqWuFEA4MYW5HMRxgIa8DCqnTTnM5SrrojZgm4QoMI/mJfifVet1ZHgl/Dly5m6H6GPpq43uXVj8g==} + cpu: [arm64] + os: [linux] + libc: [musl] + '@yuku-codegen/binding-linux-x64-gnu@0.5.44': resolution: {integrity: sha512-2bvgIU4P+f4q18grdHoGnt9L6XlAciq/8GWpM06fmwj8qqruS8qwwwZXBk3/0U2+IHGv9pXRR8GtSXzl5n/blg==} cpu: [x64] os: [linux] libc: [glibc] + '@yuku-codegen/binding-linux-x64-gnu@0.6.1': + resolution: {integrity: sha512-M5macseSCBPvJ4yfKNyQpMc7nBQBtj39MNfMt0r+8UkTnR5qJE00JJx06puHgPxT5hnGxMAuAWZ+3a9H2ngqAw==} + cpu: [x64] + os: [linux] + libc: [glibc] + '@yuku-codegen/binding-linux-x64-musl@0.5.44': resolution: {integrity: sha512-EzX5hWK0MmU4fbqY9coc5PJ0y0LYjrBdAF7mjSyetdK/yWRGBfHi9nh0dUJ0lqb47653hxB8/r9byfYgg6ecbA==} cpu: [x64] os: [linux] libc: [musl] + '@yuku-codegen/binding-linux-x64-musl@0.6.1': + resolution: {integrity: sha512-liAyBZI5AbazZGeeNfWj0jCD/TE2L84hgVYh4KkjJA/N9bNzFQCDf4BvWP76nEO89r2tIGEUjbXdM4mM26riHg==} + cpu: [x64] + os: [linux] + libc: [musl] + '@yuku-codegen/binding-win32-arm64@0.5.44': resolution: {integrity: sha512-/ajGFWcOLGtmVUdxWKXDW6Ixtez68xxtmd2l95xNg8Lzs4aqbV2cy0Ns2Bzg9vjHsgDIooQlLXHpWh6HsHcy6w==} cpu: [arm64] os: [win32] + '@yuku-codegen/binding-win32-arm64@0.6.1': + resolution: {integrity: sha512-qItzfH3x6MYChPeGfvh22rHD92WLgXQRSuwvspRVSnLvpnubEfZd+9REPRQVT2l9fIuETDCEkDNRqkDROQTkgA==} + cpu: [arm64] + os: [win32] + '@yuku-codegen/binding-win32-x64@0.5.44': resolution: {integrity: sha512-geuJQ7FKI8YUtBgW8w72ChMfMvYy3gSytACxB4HOkylsoutrhH6lUNYHk1ny/p8u8t47NGxktpnzVJzI8IzJkA==} cpu: [x64] os: [win32] + '@yuku-codegen/binding-win32-x64@0.6.1': + resolution: {integrity: sha512-DFFkKROZ9ZAHmFMUFRtRTkosZds1KH8BOx5t3UpNULIjT3iuUmEx9V5pWR0xOi66sANY38Ap77nz1kOZraQxEg==} + cpu: [x64] + os: [win32] + '@yuku-parser/binding-darwin-arm64@0.5.44': resolution: {integrity: sha512-EXSW5w1YOIMyxu53MFxP43gTDeHlQueOjk8AEI9tuLF5976bDq3MXuIgzQvZKPVAirxGZu8+ANVXH1WcAH1G6A==} cpu: [arm64] os: [darwin] + '@yuku-parser/binding-darwin-arm64@0.6.1': + resolution: {integrity: sha512-jORysyRZg5zGDgVw15LGMsjZDh7jwjpUIJRBHgFt0ir15O5pEazfvuF2dnwvrJiTF0IT1EgHAVbTAYJWwQLCjg==} + cpu: [arm64] + os: [darwin] + '@yuku-parser/binding-darwin-x64@0.5.44': resolution: {integrity: sha512-pJBHsKxqR/nPwwaXgkkYTVo3G9dJ/AXhWsYyKyadU1zLg9gGfVwVTMehqwwutMCONDsLqOmEv/UqItmhpVsQJw==} cpu: [x64] os: [darwin] + '@yuku-parser/binding-darwin-x64@0.6.1': + resolution: {integrity: sha512-dTeYFkkFlbP/WCB2DtezXas3NApOPtFlXSdssB7wGtY9wpNp4HAkVo1KBwI5mcHK0e2joyUcqTSf44mFE+q7vg==} + cpu: [x64] + os: [darwin] + '@yuku-parser/binding-freebsd-x64@0.5.44': resolution: {integrity: sha512-fOqYX5BQML94uj9hd3a+LlBNz54OoDm6l+wgUIZ8UUkOBfPV+w2lux1jj9FKXT85wwjDOFhgZ/XQYSEDK/N9mA==} cpu: [x64] os: [freebsd] + '@yuku-parser/binding-freebsd-x64@0.6.1': + resolution: {integrity: sha512-GExDp3rebo28mt3EAjvKQs0ZC3gkznAErV0I9TUNDa9muuhvD35kft61Mpsc6+NWeE+BG+kUyKbm6iO5B6ZMMA==} + cpu: [x64] + os: [freebsd] + '@yuku-parser/binding-linux-arm-gnu@0.5.44': resolution: {integrity: sha512-kA2jRNh2cbbHDbhBN9IR8CnYI4UZHNQg0OVz6+V16Ph5VlLYpfv/6GdCmvQQoTGAnhFlbQiRoQys03ey91FTew==} cpu: [arm] os: [linux] libc: [glibc] + '@yuku-parser/binding-linux-arm-gnu@0.6.1': + resolution: {integrity: sha512-a9MjABj4J0VE3Z2oROGhmeddZZrhwwrnl4ZWZOuHUhD/smDtDiNtr0LpCbKB7rEYaQ29snopOPdZ/0T3YgLglQ==} + cpu: [arm] + os: [linux] + libc: [glibc] + '@yuku-parser/binding-linux-arm-musl@0.5.44': resolution: {integrity: sha512-TQ82L8c5Lxl3HBOmw0uGfCcsyw0mp7DVGwCuW24OdDWak6BKaumvB8/Ep1llPOvhk5xgSFB7fsqgh6sIwkNRew==} cpu: [arm] os: [linux] libc: [musl] + '@yuku-parser/binding-linux-arm-musl@0.6.1': + resolution: {integrity: sha512-ctuvXJgDRKKlmJfHxT4RsTvcAcHEFNJHTCsGbtt4rluQpVDc+ezk9JvQ534ehoIfZ9T0eIHSBgqYAZ4xCatNmQ==} + cpu: [arm] + os: [linux] + libc: [musl] + '@yuku-parser/binding-linux-arm64-gnu@0.5.44': resolution: {integrity: sha512-o6up+m/MsoMEtq6h4JTzmzKOvH9o3o41vK8oiok0LOZoPOFOqOSqC+N5V2ArD1O54m5LUq6ErghAbGWiPsMsqg==} cpu: [arm64] os: [linux] libc: [glibc] + '@yuku-parser/binding-linux-arm64-gnu@0.6.1': + resolution: {integrity: sha512-vRtyoTtT0Ltowuh9LWOl/ZNU9h79J89ilOz5SEGspcw0jfhoUt19i07VNitll4jjfg5p2EN00q+MqX0pAobrFw==} + cpu: [arm64] + os: [linux] + libc: [glibc] + '@yuku-parser/binding-linux-arm64-musl@0.5.44': resolution: {integrity: sha512-3XZoiHhtrjWKgk7CJC/sGzk1TE57SDPYzOFXUg6CZrigRZ+c0Q5ItzJpyAvhzlxv5ruNRYiuGvFbaRSIDnp2BA==} cpu: [arm64] os: [linux] libc: [musl] + '@yuku-parser/binding-linux-arm64-musl@0.6.1': + resolution: {integrity: sha512-vCsc3GOe1ylmRyfo/WLjIhjiCmaTtJbWNF4ZtgjNegDjpsRsFuCcP9duXB41QcfnJK38repKVFqFh0LR3l48FA==} + cpu: [arm64] + os: [linux] + libc: [musl] + '@yuku-parser/binding-linux-x64-gnu@0.5.44': resolution: {integrity: sha512-7KYCySZI6cjsdeiiIwvviDfJFd4Xj5gjNBzm9akUpwxRXNwaHHuEq2yGkVdGqj3BT6dJsiNhJIhtS6k7/HJdFA==} cpu: [x64] os: [linux] libc: [glibc] + '@yuku-parser/binding-linux-x64-gnu@0.6.1': + resolution: {integrity: sha512-gw3d81RdUHSYwjDW2IG6gEtm4VDoPP4ZOqpuC6Nc8+UBfos+4gTWOgzmuxIOVhkSV2fJCcUDpSJIlPzEU0FLZw==} + cpu: [x64] + os: [linux] + libc: [glibc] + '@yuku-parser/binding-linux-x64-musl@0.5.44': resolution: {integrity: sha512-SLU/nXwOjET2XlOiO984sAzCloiWw0+JdcWpGzXLz3JQWbdiblxWC9cIvB0fCtKdDhX1mIutKNEH+RRRJADYcQ==} cpu: [x64] os: [linux] libc: [musl] + '@yuku-parser/binding-linux-x64-musl@0.6.1': + resolution: {integrity: sha512-nzU+Doq9UgZvYYvald36lZJ2Neeyheije6WE/YpoFt/oJiNmnjArRgr2CMtb/7gWBl80YSMwcHK4Ju0E+7wfWg==} + cpu: [x64] + os: [linux] + libc: [musl] + '@yuku-parser/binding-win32-arm64@0.5.44': resolution: {integrity: sha512-LGmaJtB2mVqPD7Gu/RKAu9aIVxlaKPOgKB8RPHeFFD5Tf/apCiWZix1tkBjdOAo9cVEAoR9qnVHE6zJ+OG0drQ==} cpu: [arm64] os: [win32] + '@yuku-parser/binding-win32-arm64@0.6.1': + resolution: {integrity: sha512-r3tXFVDliWCPe7TL6DVxUkT4rkqnXyeFVSEDf+V9My6Gztq99/gIe3POQqFbshTRuSrpEYMGMbGxeFh+m+stxA==} + cpu: [arm64] + os: [win32] + '@yuku-parser/binding-win32-x64@0.5.44': resolution: {integrity: sha512-2i0FTklLuhBIgILvtEQ3IN3J4qaTMKlxptseWNrz4F5mimL9UpQFUniVju9OOInwP2O1vgLdZn8EBjEXGNCHmg==} cpu: [x64] os: [win32] + '@yuku-parser/binding-win32-x64@0.6.1': + resolution: {integrity: sha512-FqYMOqeCS2XTdn5yvaKlOhtSQ84mVO3aTXp6LGfMd9Zq8RsV4H8qLWv+sxJsgPCXfuBV64u8/f+CTr3uIwNLWA==} + cpu: [x64] + os: [win32] + '@yuku-toolchain/types@0.5.43': resolution: {integrity: sha512-kSpvPntnXw5+lYjO71ffBEnQ5ycQ74KGIYknh0TS4xeyCuBkOqxyJumxZkMhLBBUCLjDAbx2+Icnr3Zh4ftjpQ==} @@ -5296,8 +5422,8 @@ packages: base64-js@1.5.1: resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} - baseline-browser-mapping@2.10.40: - resolution: {integrity: sha512-BSSLZ9/Cjjv7Gtj5B68ZzXcXUg8iOf3fme+FCuh8rC/Go+Kmh8cox7M3A8dolou16s64QjLPOSdngh7GxXvkSw==} + baseline-browser-mapping@2.10.43: + resolution: {integrity: sha512-AjYpR78kDWAY3Efj+cDTFH9t9SCoL7OoTp1BOb0mQV7S+6CiLwnWM3FyxhJtdPufDFKzmCSFoUncKjWgJEZTCQ==} engines: {node: '>=6.0.0'} hasBin: true @@ -7108,8 +7234,8 @@ packages: resolution: {integrity: sha512-Sm7POE1WzSOwQnBXnC/iSpjCluH9Nbf+1zNfW4KQzxCm3uwkdebzgpIwdeufUnZK0vi/7JePkvt62LX8DZGJVw==} engines: {node: ^20.19.0 || >=22.12.0} - oxfmt@0.56.0: - resolution: {integrity: sha512-9Dv0wV3zKiyvhjD7bRKaInKmHQ1sPx3RGOjQkGFJbbdQ16576yf8qhMSO9Q9cvHcs+1NpBsRTkuDDYFFPTJ6gw==} + oxfmt@0.57.0: + resolution: {integrity: sha512-ZB7Bi+rGDSqmVIo9jwcLyFgjxXvQhDdU+jx+ZrVy6VRiVXK2+CHc4hO3J4dUQjHe7V0ymHB+MDuv5z+NhK07HA==} engines: {node: ^20.19.0 || >=22.12.0} hasBin: true peerDependencies: @@ -7359,8 +7485,9 @@ packages: peerDependencies: postcss: ^8.1.0 - postcss-modules@6.0.1: - resolution: {integrity: sha512-zyo2sAkVvuZFFy0gc2+4O+xar5dYlaVy/ebO24KT0ftk/iJevSNyPyQellsBLlnccwh7f6V6Y4GvuKRYToNgpQ==} + postcss-modules@9.0.0: + resolution: {integrity: sha512-nyZGaOkHFRvXy10ryKSE3yfh1EhwSrEX2mIhwZblTTdHbKOfH5fNhAC6eZmXB2uCy7x6Bb1Zib5KS2Yw6gSzHQ==} + engines: {node: '>=20.6'} peerDependencies: postcss: ^8.0.0 @@ -7607,8 +7734,8 @@ packages: vue-tsc: optional: true - rolldown-plugin-dts@0.27.2: - resolution: {integrity: sha512-BzyD3qqF4DAg12c8QTVia73dXReDcsMsYHPvKxxjCeBolDbVxtYIy+YanF6osBLn5WGp2F43McOSUhxplgEZuQ==} + rolldown-plugin-dts@0.27.7: + resolution: {integrity: sha512-wnfMsSsH++pwisTi2NHJYm0FD615C5bpvipcSAS/YP53itc1cm0Mm9mZOooKOVwARJbDIUNi+s6XSgAVD9SGBA==} engines: {node: ^22.18.0 || >=24.11.0} peerDependencies: '@ts-macro/tsc': ^0.3.6 @@ -8187,18 +8314,18 @@ packages: peerDependencies: typescript: '>=4.0.0' - tsdown@0.22.4: - resolution: {integrity: sha512-3a5FsNL2fH2jw3ozvFUuPMBgS0xXjX9wpZShHyB4klXelVhyaNw5Q5WA9TPCNeoGYpRZEc4OZdMx5wT4Fkma3A==} + tsdown@0.22.5: + resolution: {integrity: sha512-0iEpnuOVBGo7mPW+FlyglErHBExYOAlpLBlCl/QcTrRUJ+TF2prfzl6ipQS5VsjJejFXnmbkdh0Ta53B3stWxg==} engines: {node: ^22.18.0 || >=24.11.0} hasBin: true peerDependencies: '@arethetypeswrong/core': ^0.18.1 - '@tsdown/css': 0.22.4 - '@tsdown/exe': 0.22.4 + '@tsdown/css': 0.22.5 + '@tsdown/exe': 0.22.5 '@vitejs/devtools': '*' publint: ^0.3.8 tsx: '*' - typescript: ^5.0.0 || ^6.0.0 + typescript: ^5.0.0 || ^6.0.0 || ^7.0.0 unplugin-unused: ^0.5.0 unrun: '*' peerDependenciesMeta: @@ -8224,8 +8351,8 @@ packages: tslib@2.8.1: resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} - tsx@4.22.4: - resolution: {integrity: sha512-X8EX+XV4QR5xCsrgxaED954zTDfY8KqlDtskKEL0cHhyS/P8b4IFOvGDQpsC9Q1XnLq915wEfwwY/zzskCtmhg==} + tsx@4.23.0: + resolution: {integrity: sha512-eUdUIaCr963q2h5u3+QwvYp0+eqPvn+egeqZUm0hwERCqqx1E3kK5ehbGCvqSE5MQAULr67ww0cA3jKc3YkM1w==} engines: {node: '>=18.0.0'} hasBin: true @@ -8741,9 +8868,15 @@ packages: yuku-codegen@0.5.44: resolution: {integrity: sha512-0rhtgWGz+bR3Pe7xqJ5E4VqxI1vqNtkeJRkeXM0Qd3tgldYClQipxa9bRZyuNOOfk0Ri02scrjnkoAHM16/f2g==} + yuku-codegen@0.6.1: + resolution: {integrity: sha512-6RJqqON2xYhMEp/sZv5oOSI3uOpWwRwzAi2fc/rMcRFjcqedAC5Fyp4AD9Vn2b8SB7hf9ESqVW+YwbDs/KvyKA==} + yuku-parser@0.5.44: resolution: {integrity: sha512-mAhpQZ/bXjxZmKiGUqEWskC9mZTcTBv6/fdzVdzdjM6XuD1DP3IavdLVWdM39L9ewK9vS9OtJmaKNeWgRzpy0w==} + yuku-parser@0.6.1: + resolution: {integrity: sha512-dPE3/+H2VBw9LhjoIVeW/axKidYGd+XzNtrwGGseZ0325cQFl0Dpwyh0R74XWe/WqQn4M8CR5YApsv2KF2zN1A==} + zimmerframe@1.1.4: resolution: {integrity: sha512-B58NGBEoc8Y9MWWCQGl/gq9xBCe4IiKM0a2x7GZdQKOW5Exr8S1W24J6OgM1njK8xCRGvAJIL/MxXHf6SkmQKQ==} @@ -9565,7 +9698,7 @@ snapshots: picocolors: 1.1.1 sisteransi: 1.0.5 - '@clack/core@1.4.2': + '@clack/core@1.4.3': dependencies: fast-wrap-ansi: 0.2.0 sisteransi: 1.0.5 @@ -9576,9 +9709,9 @@ snapshots: picocolors: 1.1.1 sisteransi: 1.0.5 - '@clack/prompts@1.6.0': + '@clack/prompts@1.7.0': dependencies: - '@clack/core': 1.4.2 + '@clack/core': 1.4.3 fast-string-width: 3.0.2 fast-wrap-ansi: 0.2.0 sisteransi: 1.0.5 @@ -11004,115 +11137,115 @@ snapshots: '@oxc-transform/binding-win32-x64-msvc@0.139.0': optional: true - '@oxfmt/binding-android-arm-eabi@0.56.0': + '@oxfmt/binding-android-arm-eabi@0.57.0': optional: true '@oxfmt/binding-android-arm-eabi@0.58.0': optional: true - '@oxfmt/binding-android-arm64@0.56.0': + '@oxfmt/binding-android-arm64@0.57.0': optional: true '@oxfmt/binding-android-arm64@0.58.0': optional: true - '@oxfmt/binding-darwin-arm64@0.56.0': + '@oxfmt/binding-darwin-arm64@0.57.0': optional: true '@oxfmt/binding-darwin-arm64@0.58.0': optional: true - '@oxfmt/binding-darwin-x64@0.56.0': + '@oxfmt/binding-darwin-x64@0.57.0': optional: true '@oxfmt/binding-darwin-x64@0.58.0': optional: true - '@oxfmt/binding-freebsd-x64@0.56.0': + '@oxfmt/binding-freebsd-x64@0.57.0': optional: true '@oxfmt/binding-freebsd-x64@0.58.0': optional: true - '@oxfmt/binding-linux-arm-gnueabihf@0.56.0': + '@oxfmt/binding-linux-arm-gnueabihf@0.57.0': optional: true '@oxfmt/binding-linux-arm-gnueabihf@0.58.0': optional: true - '@oxfmt/binding-linux-arm-musleabihf@0.56.0': + '@oxfmt/binding-linux-arm-musleabihf@0.57.0': optional: true '@oxfmt/binding-linux-arm-musleabihf@0.58.0': optional: true - '@oxfmt/binding-linux-arm64-gnu@0.56.0': + '@oxfmt/binding-linux-arm64-gnu@0.57.0': optional: true '@oxfmt/binding-linux-arm64-gnu@0.58.0': optional: true - '@oxfmt/binding-linux-arm64-musl@0.56.0': + '@oxfmt/binding-linux-arm64-musl@0.57.0': optional: true '@oxfmt/binding-linux-arm64-musl@0.58.0': optional: true - '@oxfmt/binding-linux-ppc64-gnu@0.56.0': + '@oxfmt/binding-linux-ppc64-gnu@0.57.0': optional: true '@oxfmt/binding-linux-ppc64-gnu@0.58.0': optional: true - '@oxfmt/binding-linux-riscv64-gnu@0.56.0': + '@oxfmt/binding-linux-riscv64-gnu@0.57.0': optional: true '@oxfmt/binding-linux-riscv64-gnu@0.58.0': optional: true - '@oxfmt/binding-linux-riscv64-musl@0.56.0': + '@oxfmt/binding-linux-riscv64-musl@0.57.0': optional: true '@oxfmt/binding-linux-riscv64-musl@0.58.0': optional: true - '@oxfmt/binding-linux-s390x-gnu@0.56.0': + '@oxfmt/binding-linux-s390x-gnu@0.57.0': optional: true '@oxfmt/binding-linux-s390x-gnu@0.58.0': optional: true - '@oxfmt/binding-linux-x64-gnu@0.56.0': + '@oxfmt/binding-linux-x64-gnu@0.57.0': optional: true '@oxfmt/binding-linux-x64-gnu@0.58.0': optional: true - '@oxfmt/binding-linux-x64-musl@0.56.0': + '@oxfmt/binding-linux-x64-musl@0.57.0': optional: true '@oxfmt/binding-linux-x64-musl@0.58.0': optional: true - '@oxfmt/binding-openharmony-arm64@0.56.0': + '@oxfmt/binding-openharmony-arm64@0.57.0': optional: true '@oxfmt/binding-openharmony-arm64@0.58.0': optional: true - '@oxfmt/binding-win32-arm64-msvc@0.56.0': + '@oxfmt/binding-win32-arm64-msvc@0.57.0': optional: true '@oxfmt/binding-win32-arm64-msvc@0.58.0': optional: true - '@oxfmt/binding-win32-ia32-msvc@0.56.0': + '@oxfmt/binding-win32-ia32-msvc@0.57.0': optional: true '@oxfmt/binding-win32-ia32-msvc@0.58.0': optional: true - '@oxfmt/binding-win32-x64-msvc@0.56.0': + '@oxfmt/binding-win32-x64-msvc@0.57.0': optional: true '@oxfmt/binding-win32-x64-msvc@0.58.0': @@ -11450,16 +11583,16 @@ snapshots: '@tootallnate/quickjs-emscripten@0.23.0': {} - '@tsdown/css@0.22.4(jiti@2.7.0)(postcss-import@16.1.1(postcss@8.5.16))(postcss-modules@6.0.1(postcss@8.5.16))(postcss@8.5.16)(sass-embedded@1.100.0(source-map-js@1.2.1))(sass@1.101.0)(tsdown@0.22.4)(tsx@4.22.4)(yaml@2.9.0)': + '@tsdown/css@0.22.5(jiti@2.7.0)(postcss-import@16.1.1(postcss@8.5.16))(postcss-modules@9.0.0(patch_hash=0c886ee83450c5fd20d2c88b3ba2cf5d3afbb9c440755757f311439897188056)(postcss@8.5.16))(postcss@8.5.16)(sass-embedded@1.100.0(source-map-js@1.2.1))(sass@1.101.0)(tsdown@0.22.5)(tsx@4.23.0)(yaml@2.9.0)': dependencies: lightningcss: 1.32.0 - postcss-load-config: 6.0.1(jiti@2.7.0)(postcss@8.5.16)(tsx@4.22.4)(yaml@2.9.0) + postcss-load-config: 6.0.1(jiti@2.7.0)(postcss@8.5.16)(tsx@4.23.0)(yaml@2.9.0) rolldown: link:rolldown/packages/rolldown - tsdown: 0.22.4(@arethetypeswrong/core@0.18.2)(@tsdown/css@0.22.4)(@tsdown/exe@0.22.4)(@typescript/native-preview@7.0.0-dev.20260605.1)(@vitejs/devtools@0.3.4(typescript@6.0.2)(vite@packages+core))(oxc-resolver@11.21.3)(publint@0.3.21)(tsx@4.22.4)(typescript@6.0.2)(unplugin-unused@0.5.6)(unrun@0.3.1) + tsdown: 0.22.5(@arethetypeswrong/core@0.18.2)(@tsdown/css@0.22.5)(@tsdown/exe@0.22.5)(@typescript/native-preview@7.0.0-dev.20260605.1)(@vitejs/devtools@0.3.4(typescript@6.0.2)(vite@packages+core))(oxc-resolver@11.21.3)(publint@0.3.21)(tsx@4.23.0)(typescript@6.0.2)(unplugin-unused@0.5.6)(unrun@0.3.1) optionalDependencies: postcss: 8.5.16 postcss-import: 16.1.1(postcss@8.5.16) - postcss-modules: 6.0.1(postcss@8.5.16) + postcss-modules: 9.0.0(patch_hash=0c886ee83450c5fd20d2c88b3ba2cf5d3afbb9c440755757f311439897188056)(postcss@8.5.16) sass: 1.101.0 sass-embedded: 1.100.0(source-map-js@1.2.1) transitivePeerDependencies: @@ -11467,12 +11600,12 @@ snapshots: - tsx - yaml - '@tsdown/exe@0.22.4(tsdown@0.22.4)': + '@tsdown/exe@0.22.5(tsdown@0.22.5)': dependencies: obug: 2.1.3 semver: 7.8.5 tinyexec: 1.2.4 - tsdown: 0.22.4(@arethetypeswrong/core@0.18.2)(@tsdown/css@0.22.4)(@tsdown/exe@0.22.4)(@typescript/native-preview@7.0.0-dev.20260605.1)(@vitejs/devtools@0.3.4(typescript@6.0.2)(vite@packages+core))(oxc-resolver@11.21.3)(publint@0.3.21)(tsx@4.22.4)(typescript@6.0.2)(unplugin-unused@0.5.6)(unrun@0.3.1) + tsdown: 0.22.5(@arethetypeswrong/core@0.18.2)(@tsdown/css@0.22.5)(@tsdown/exe@0.22.5)(@typescript/native-preview@7.0.0-dev.20260605.1)(@vitejs/devtools@0.3.4(typescript@6.0.2)(vite@packages+core))(oxc-resolver@11.21.3)(publint@0.3.21)(tsx@4.23.0)(typescript@6.0.2)(unplugin-unused@0.5.6)(unrun@0.3.1) '@tybys/wasm-util@0.10.3': dependencies: @@ -12180,69 +12313,135 @@ snapshots: '@yuku-codegen/binding-darwin-arm64@0.5.44': optional: true + '@yuku-codegen/binding-darwin-arm64@0.6.1': + optional: true + '@yuku-codegen/binding-darwin-x64@0.5.44': optional: true + '@yuku-codegen/binding-darwin-x64@0.6.1': + optional: true + '@yuku-codegen/binding-freebsd-x64@0.5.44': optional: true + '@yuku-codegen/binding-freebsd-x64@0.6.1': + optional: true + '@yuku-codegen/binding-linux-arm-gnu@0.5.44': optional: true + '@yuku-codegen/binding-linux-arm-gnu@0.6.1': + optional: true + '@yuku-codegen/binding-linux-arm-musl@0.5.44': optional: true + '@yuku-codegen/binding-linux-arm-musl@0.6.1': + optional: true + '@yuku-codegen/binding-linux-arm64-gnu@0.5.44': optional: true + '@yuku-codegen/binding-linux-arm64-gnu@0.6.1': + optional: true + '@yuku-codegen/binding-linux-arm64-musl@0.5.44': optional: true + '@yuku-codegen/binding-linux-arm64-musl@0.6.1': + optional: true + '@yuku-codegen/binding-linux-x64-gnu@0.5.44': optional: true + '@yuku-codegen/binding-linux-x64-gnu@0.6.1': + optional: true + '@yuku-codegen/binding-linux-x64-musl@0.5.44': optional: true + '@yuku-codegen/binding-linux-x64-musl@0.6.1': + optional: true + '@yuku-codegen/binding-win32-arm64@0.5.44': optional: true + '@yuku-codegen/binding-win32-arm64@0.6.1': + optional: true + '@yuku-codegen/binding-win32-x64@0.5.44': optional: true + '@yuku-codegen/binding-win32-x64@0.6.1': + optional: true + '@yuku-parser/binding-darwin-arm64@0.5.44': optional: true + '@yuku-parser/binding-darwin-arm64@0.6.1': + optional: true + '@yuku-parser/binding-darwin-x64@0.5.44': optional: true + '@yuku-parser/binding-darwin-x64@0.6.1': + optional: true + '@yuku-parser/binding-freebsd-x64@0.5.44': optional: true + '@yuku-parser/binding-freebsd-x64@0.6.1': + optional: true + '@yuku-parser/binding-linux-arm-gnu@0.5.44': optional: true + '@yuku-parser/binding-linux-arm-gnu@0.6.1': + optional: true + '@yuku-parser/binding-linux-arm-musl@0.5.44': optional: true + '@yuku-parser/binding-linux-arm-musl@0.6.1': + optional: true + '@yuku-parser/binding-linux-arm64-gnu@0.5.44': optional: true + '@yuku-parser/binding-linux-arm64-gnu@0.6.1': + optional: true + '@yuku-parser/binding-linux-arm64-musl@0.5.44': optional: true + '@yuku-parser/binding-linux-arm64-musl@0.6.1': + optional: true + '@yuku-parser/binding-linux-x64-gnu@0.5.44': optional: true + '@yuku-parser/binding-linux-x64-gnu@0.6.1': + optional: true + '@yuku-parser/binding-linux-x64-musl@0.5.44': optional: true + '@yuku-parser/binding-linux-x64-musl@0.6.1': + optional: true + '@yuku-parser/binding-win32-arm64@0.5.44': optional: true + '@yuku-parser/binding-win32-arm64@0.6.1': + optional: true + '@yuku-parser/binding-win32-x64@0.5.44': optional: true + '@yuku-parser/binding-win32-x64@0.6.1': + optional: true + '@yuku-toolchain/types@0.5.43': {} '@zip.js/zip.js@2.8.11': {} @@ -12447,7 +12646,7 @@ snapshots: base64-js@1.5.1: {} - baseline-browser-mapping@2.10.40: {} + baseline-browser-mapping@2.10.43: {} basic-ftp@5.0.5: {} @@ -12528,7 +12727,7 @@ snapshots: browserslist@4.28.4: dependencies: - baseline-browser-mapping: 2.10.40 + baseline-browser-mapping: 2.10.43 caniuse-lite: 1.0.30001799 electron-to-chromium: 1.5.381 node-releases: 2.0.50 @@ -12611,7 +12810,7 @@ snapshots: undici: 7.16.0 whatwg-mimetype: 4.0.0 - chokidar@3.6.0(patch_hash=8a4f9e2b397e6034b91a0508faae3cecb97f222313faa129d7cb0eb71e9d0e84): + chokidar@3.6.0(patch_hash=e17269188c54412478078f7ac7877c1d5a475a2f2438328e3a7e725513ccbf1f): dependencies: anymatch: 3.1.3 braces: 3.0.3 @@ -14382,29 +14581,29 @@ snapshots: '@oxc-transform/binding-win32-ia32-msvc': 0.139.0 '@oxc-transform/binding-win32-x64-msvc': 0.139.0 - oxfmt@0.56.0(vite-plus@packages+cli): + oxfmt@0.57.0(vite-plus@packages+cli): dependencies: tinypool: 2.1.0 optionalDependencies: - '@oxfmt/binding-android-arm-eabi': 0.56.0 - '@oxfmt/binding-android-arm64': 0.56.0 - '@oxfmt/binding-darwin-arm64': 0.56.0 - '@oxfmt/binding-darwin-x64': 0.56.0 - '@oxfmt/binding-freebsd-x64': 0.56.0 - '@oxfmt/binding-linux-arm-gnueabihf': 0.56.0 - '@oxfmt/binding-linux-arm-musleabihf': 0.56.0 - '@oxfmt/binding-linux-arm64-gnu': 0.56.0 - '@oxfmt/binding-linux-arm64-musl': 0.56.0 - '@oxfmt/binding-linux-ppc64-gnu': 0.56.0 - '@oxfmt/binding-linux-riscv64-gnu': 0.56.0 - '@oxfmt/binding-linux-riscv64-musl': 0.56.0 - '@oxfmt/binding-linux-s390x-gnu': 0.56.0 - '@oxfmt/binding-linux-x64-gnu': 0.56.0 - '@oxfmt/binding-linux-x64-musl': 0.56.0 - '@oxfmt/binding-openharmony-arm64': 0.56.0 - '@oxfmt/binding-win32-arm64-msvc': 0.56.0 - '@oxfmt/binding-win32-ia32-msvc': 0.56.0 - '@oxfmt/binding-win32-x64-msvc': 0.56.0 + '@oxfmt/binding-android-arm-eabi': 0.57.0 + '@oxfmt/binding-android-arm64': 0.57.0 + '@oxfmt/binding-darwin-arm64': 0.57.0 + '@oxfmt/binding-darwin-x64': 0.57.0 + '@oxfmt/binding-freebsd-x64': 0.57.0 + '@oxfmt/binding-linux-arm-gnueabihf': 0.57.0 + '@oxfmt/binding-linux-arm-musleabihf': 0.57.0 + '@oxfmt/binding-linux-arm64-gnu': 0.57.0 + '@oxfmt/binding-linux-arm64-musl': 0.57.0 + '@oxfmt/binding-linux-ppc64-gnu': 0.57.0 + '@oxfmt/binding-linux-riscv64-gnu': 0.57.0 + '@oxfmt/binding-linux-riscv64-musl': 0.57.0 + '@oxfmt/binding-linux-s390x-gnu': 0.57.0 + '@oxfmt/binding-linux-x64-gnu': 0.57.0 + '@oxfmt/binding-linux-x64-musl': 0.57.0 + '@oxfmt/binding-openharmony-arm64': 0.57.0 + '@oxfmt/binding-win32-arm64-msvc': 0.57.0 + '@oxfmt/binding-win32-ia32-msvc': 0.57.0 + '@oxfmt/binding-win32-x64-msvc': 0.57.0 vite-plus: link:packages/cli oxfmt@0.58.0(vite-plus@packages+cli): @@ -14623,13 +14822,13 @@ snapshots: read-cache: 1.0.0 resolve: 1.22.11 - postcss-load-config@6.0.1(jiti@2.7.0)(postcss@8.5.16)(tsx@4.22.4)(yaml@2.9.0): + postcss-load-config@6.0.1(jiti@2.7.0)(postcss@8.5.16)(tsx@4.23.0)(yaml@2.9.0): dependencies: lilconfig: 3.1.3 optionalDependencies: jiti: 2.7.0 postcss: 8.5.16 - tsx: 4.22.4 + tsx: 4.23.0 yaml: 2.9.0 postcss-modules-extract-imports@3.1.0(postcss@8.5.16): @@ -14653,7 +14852,7 @@ snapshots: icss-utils: 5.1.0(postcss@8.5.16) postcss: 8.5.16 - postcss-modules@6.0.1(postcss@8.5.16): + postcss-modules@9.0.0(patch_hash=0c886ee83450c5fd20d2c88b3ba2cf5d3afbb9c440755757f311439897188056)(postcss@8.5.16): dependencies: generic-names: 4.0.0 icss-utils: 5.1.0(postcss@8.5.16) @@ -14914,15 +15113,15 @@ snapshots: transitivePeerDependencies: - oxc-resolver - rolldown-plugin-dts@0.27.2(@typescript/native-preview@7.0.0-dev.20260605.1)(oxc-resolver@11.21.3)(rolldown@rolldown+packages+rolldown)(typescript@6.0.2): + rolldown-plugin-dts@0.27.7(@typescript/native-preview@7.0.0-dev.20260605.1)(oxc-resolver@11.21.3)(rolldown@rolldown+packages+rolldown)(typescript@6.0.2): dependencies: dts-resolver: 3.0.0(oxc-resolver@11.21.3) get-tsconfig: 5.0.0-beta.5 obug: 2.1.3 rolldown: link:rolldown/packages/rolldown yuku-ast: 0.1.7 - yuku-codegen: 0.5.44 - yuku-parser: 0.5.44 + yuku-codegen: 0.6.1 + yuku-parser: 0.6.1 optionalDependencies: '@typescript/native-preview': 7.0.0-dev.20260605.1 typescript: 6.0.2 @@ -15484,7 +15683,7 @@ snapshots: typescript: 6.0.2 optional: true - tsdown@0.22.4(@arethetypeswrong/core@0.18.2)(@tsdown/css@0.22.4)(@tsdown/exe@0.22.4)(@typescript/native-preview@7.0.0-dev.20260605.1)(@vitejs/devtools@0.3.4(typescript@6.0.2)(vite@packages+core))(oxc-resolver@11.21.3)(publint@0.3.21)(tsx@4.22.4)(typescript@6.0.2)(unplugin-unused@0.5.6)(unrun@0.3.1): + tsdown@0.22.5(@arethetypeswrong/core@0.18.2)(@tsdown/css@0.22.5)(@tsdown/exe@0.22.5)(@typescript/native-preview@7.0.0-dev.20260605.1)(@vitejs/devtools@0.3.4(typescript@6.0.2)(vite@packages+core))(oxc-resolver@11.21.3)(publint@0.3.21)(tsx@4.23.0)(typescript@6.0.2)(unplugin-unused@0.5.6)(unrun@0.3.1): dependencies: ansis: 4.3.1 cac: 7.0.0 @@ -15495,7 +15694,7 @@ snapshots: obug: 2.1.3 picomatch: 4.0.5 rolldown: link:rolldown/packages/rolldown - rolldown-plugin-dts: 0.27.2(@typescript/native-preview@7.0.0-dev.20260605.1)(oxc-resolver@11.21.3)(rolldown@rolldown+packages+rolldown)(typescript@6.0.2) + rolldown-plugin-dts: 0.27.7(@typescript/native-preview@7.0.0-dev.20260605.1)(oxc-resolver@11.21.3)(rolldown@rolldown+packages+rolldown)(typescript@6.0.2) semver: 7.8.5 tinyexec: 1.2.4 tinyglobby: 0.2.17 @@ -15503,11 +15702,11 @@ snapshots: unconfig-core: 7.5.0 optionalDependencies: '@arethetypeswrong/core': 0.18.2 - '@tsdown/css': 0.22.4(jiti@2.7.0)(postcss-import@16.1.1(postcss@8.5.16))(postcss-modules@6.0.1(postcss@8.5.16))(postcss@8.5.16)(sass-embedded@1.100.0(source-map-js@1.2.1))(sass@1.101.0)(tsdown@0.22.4)(tsx@4.22.4)(yaml@2.9.0) - '@tsdown/exe': 0.22.4(tsdown@0.22.4) + '@tsdown/css': 0.22.5(jiti@2.7.0)(postcss-import@16.1.1(postcss@8.5.16))(postcss-modules@9.0.0(patch_hash=0c886ee83450c5fd20d2c88b3ba2cf5d3afbb9c440755757f311439897188056)(postcss@8.5.16))(postcss@8.5.16)(sass-embedded@1.100.0(source-map-js@1.2.1))(sass@1.101.0)(tsdown@0.22.5)(tsx@4.23.0)(yaml@2.9.0) + '@tsdown/exe': 0.22.5(tsdown@0.22.5) '@vitejs/devtools': 0.3.4(typescript@6.0.2)(vite@packages+core) publint: 0.3.21 - tsx: 4.22.4 + tsx: 4.23.0 typescript: 6.0.2 unplugin-unused: 0.5.6 unrun: 0.3.1 @@ -15519,7 +15718,7 @@ snapshots: tslib@2.8.1: {} - tsx@4.22.4: + tsx@4.23.0: dependencies: esbuild: 0.28.1 optionalDependencies: @@ -16041,6 +16240,22 @@ snapshots: '@yuku-codegen/binding-win32-arm64': 0.5.44 '@yuku-codegen/binding-win32-x64': 0.5.44 + yuku-codegen@0.6.1: + dependencies: + '@yuku-toolchain/types': 0.5.43 + optionalDependencies: + '@yuku-codegen/binding-darwin-arm64': 0.6.1 + '@yuku-codegen/binding-darwin-x64': 0.6.1 + '@yuku-codegen/binding-freebsd-x64': 0.6.1 + '@yuku-codegen/binding-linux-arm-gnu': 0.6.1 + '@yuku-codegen/binding-linux-arm-musl': 0.6.1 + '@yuku-codegen/binding-linux-arm64-gnu': 0.6.1 + '@yuku-codegen/binding-linux-arm64-musl': 0.6.1 + '@yuku-codegen/binding-linux-x64-gnu': 0.6.1 + '@yuku-codegen/binding-linux-x64-musl': 0.6.1 + '@yuku-codegen/binding-win32-arm64': 0.6.1 + '@yuku-codegen/binding-win32-x64': 0.6.1 + yuku-parser@0.5.44: dependencies: '@yuku-toolchain/types': 0.5.43 @@ -16057,6 +16272,22 @@ snapshots: '@yuku-parser/binding-win32-arm64': 0.5.44 '@yuku-parser/binding-win32-x64': 0.5.44 + yuku-parser@0.6.1: + dependencies: + '@yuku-toolchain/types': 0.5.43 + optionalDependencies: + '@yuku-parser/binding-darwin-arm64': 0.6.1 + '@yuku-parser/binding-darwin-x64': 0.6.1 + '@yuku-parser/binding-freebsd-x64': 0.6.1 + '@yuku-parser/binding-linux-arm-gnu': 0.6.1 + '@yuku-parser/binding-linux-arm-musl': 0.6.1 + '@yuku-parser/binding-linux-arm64-gnu': 0.6.1 + '@yuku-parser/binding-linux-arm64-musl': 0.6.1 + '@yuku-parser/binding-linux-x64-gnu': 0.6.1 + '@yuku-parser/binding-linux-x64-musl': 0.6.1 + '@yuku-parser/binding-win32-arm64': 0.6.1 + '@yuku-parser/binding-win32-x64': 0.6.1 + zimmerframe@1.1.4: {} zip-stream@6.0.1: diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 619c592bdf..7451c29185 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -23,8 +23,8 @@ catalog: '@rollup/plugin-commonjs': ^29.0.0 '@rollup/plugin-json': ^6.1.0 '@rollup/plugin-node-resolve': ^16.0.0 - '@tsdown/css': ^0.22.4 - '@tsdown/exe': ^0.22.4 + '@tsdown/css': ^0.22.5 + '@tsdown/exe': ^0.22.5 '@types/babel__core': 7.20.5 '@types/connect': ^3.4.38 '@types/cross-spawn': ^6.0.6 @@ -117,7 +117,7 @@ catalog: terser: ^5.44.1 tinybench: ^6.0.0 tinyexec: ^1.0.1 - tsdown: ^0.22.4 + tsdown: ^0.22.5 tsx: ^4.22.0 typescript: ^6.0.0 unified: ^11.0.5 @@ -185,6 +185,9 @@ minimumReleaseAgeExclude: - vitepress - vitest - vue-virtual-scroller + - yuku-* + - '@yuku-parser/*' + - '@yuku-codegen/*' - lodash-es@4.18.1 - '@emnapi/core@1.11.1' - '@emnapi/runtime@1.11.1' @@ -198,6 +201,12 @@ overrides: rolldown: workspace:rolldown@* vite: workspace:@voidzero-dev/vite-plus-core@* vite-plus: workspace:vite-plus@* + # Vite ships a patch keyed to postcss-modules@9.0.0 (removes an obsolete + # `declare module "postcss-modules/loader"`). 9.0.1 already dropped that line + # upstream, so `^9.0.0` re-resolves to 9.0.1 and the patch goes unused, failing + # install. Pin to 9.0.0 so the still-shipped vite patch applies; functionally + # identical to 9.0.1. + postcss-modules: 9.0.0 packageExtensions: '@rollup/plugin-dynamic-import-vars': dependencies: @@ -212,6 +221,7 @@ patchedDependencies: chokidar@3.6.0: vite/patches/chokidar@3.6.0.patch dotenv-expand@13.0.0: vite/patches/dotenv-expand@13.0.0.patch sirv@3.0.2: vite/patches/sirv@3.0.2.patch + postcss-modules@9.0.0: vite/patches/postcss-modules@9.0.0.patch peerDependencyRules: allowAny: - vite From 548f811ad8e9a933decc60f3aacfca8802843f34 Mon Sep 17 00:00:00 2001 From: wan9chi Date: Mon, 13 Jul 2026 12:54:33 +0800 Subject: [PATCH 2/8] fix(create): align monorepo TypeScript versions --- .../snapshots/new_vite_monorepo.md | 2 +- .../snapshots/new_vite_monorepo_bun.md | 2 +- .../cli/src/create/__tests__/monorepo.spec.ts | 79 +++++++++++++++---- packages/cli/src/create/templates/monorepo.ts | 41 ++++++++++ 4 files changed, 108 insertions(+), 16 deletions(-) diff --git a/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/new_vite_monorepo/snapshots/new_vite_monorepo.md b/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/new_vite_monorepo/snapshots/new_vite_monorepo.md index 3f83c69dcb..ae5451c295 100644 --- a/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/new_vite_monorepo/snapshots/new_vite_monorepo.md +++ b/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/new_vite_monorepo/snapshots/new_vite_monorepo.md @@ -241,7 +241,7 @@ check utils normalizes vite-plus to catalog: "devDependencies": { "@types/node": "^26.1.1", "bumpp": "^11.1.0", - "typescript": "^7.0.2", + "typescript": "~6.0.2", "vite": "catalog:", "vite-plus": "catalog:" } diff --git a/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/new_vite_monorepo_bun/snapshots/new_vite_monorepo_bun.md b/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/new_vite_monorepo_bun/snapshots/new_vite_monorepo_bun.md index 5d00cc8b14..5010ddf400 100644 --- a/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/new_vite_monorepo_bun/snapshots/new_vite_monorepo_bun.md +++ b/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/new_vite_monorepo_bun/snapshots/new_vite_monorepo_bun.md @@ -157,7 +157,7 @@ check utils normalizes vite-plus to catalog: "devDependencies": { "@types/node": "^26.1.1", "bumpp": "^11.1.0", - "typescript": "^7.0.2", + "typescript": "~6.0.2", "vite-plus": "catalog:" } } diff --git a/packages/cli/src/create/__tests__/monorepo.spec.ts b/packages/cli/src/create/__tests__/monorepo.spec.ts index ceb747d649..c560dce8b0 100644 --- a/packages/cli/src/create/__tests__/monorepo.spec.ts +++ b/packages/cli/src/create/__tests__/monorepo.spec.ts @@ -5,7 +5,68 @@ import path from 'node:path'; import { afterEach, beforeEach, describe, expect, it } from 'vitest'; import { PackageManager } from '../../types/index.js'; -import { dropAliasedRuntimeDevDeps } from '../templates/monorepo.js'; +import { + alignMonorepoTypeScriptVersion, + dropAliasedRuntimeDevDeps, +} from '../templates/monorepo.js'; + +function writePackageJson(directory: string, devDependencies: Record): void { + fs.writeFileSync( + path.join(directory, 'package.json'), + JSON.stringify({ private: true, devDependencies }, null, 2), + ); +} + +function readDevDependencies(directory: string): Record { + const pkg = JSON.parse(fs.readFileSync(path.join(directory, 'package.json'), 'utf8')) as { + devDependencies?: Record; + }; + return pkg.devDependencies ?? {}; +} + +describe('alignMonorepoTypeScriptVersion', () => { + let tmpDir: string; + let appDir: string; + let libraryDir: string; + + beforeEach(() => { + tmpDir = fs.mkdtempSync(path.join(os.tmpdir(), 'vp-monorepo-typescript-')); + appDir = path.join(tmpDir, 'apps', 'website'); + libraryDir = path.join(tmpDir, 'packages', 'utils'); + fs.mkdirSync(appDir, { recursive: true }); + fs.mkdirSync(libraryDir, { recursive: true }); + }); + + afterEach(() => { + fs.rmSync(tmpDir, { recursive: true, force: true }); + }); + + it('aligns the library with the app TypeScript range', () => { + writePackageJson(appDir, { typescript: '~6.0.2', 'vite-plus': 'catalog:' }); + writePackageJson(libraryDir, { + typescript: '^7.0.2', + '@types/node': '^26.1.1', + 'vite-plus': 'catalog:', + }); + + alignMonorepoTypeScriptVersion(appDir, libraryDir); + + expect(readDevDependencies(libraryDir)).toEqual({ + typescript: '~6.0.2', + '@types/node': '^26.1.1', + 'vite-plus': 'catalog:', + }); + }); + + it('leaves the library unchanged when the app has no TypeScript dependency', () => { + writePackageJson(appDir, { 'vite-plus': 'catalog:' }); + writePackageJson(libraryDir, { typescript: '^7.0.2', 'vite-plus': 'catalog:' }); + + alignMonorepoTypeScriptVersion(appDir, libraryDir); + + expect(readDevDependencies(libraryDir).typescript).toBe('^7.0.2'); + }); +}); describe('dropAliasedRuntimeDevDeps', () => { let tmpDir: string; @@ -19,17 +80,7 @@ describe('dropAliasedRuntimeDevDeps', () => { }); function writeWebsitePackageJson(devDependencies: Record): void { - fs.writeFileSync( - path.join(tmpDir, 'package.json'), - JSON.stringify({ name: 'website', private: true, devDependencies }, null, 2), - ); - } - - function readDevDependencies(): Record { - const pkg = JSON.parse(fs.readFileSync(path.join(tmpDir, 'package.json'), 'utf8')) as { - devDependencies?: Record; - }; - return pkg.devDependencies ?? {}; + writePackageJson(tmpDir, devDependencies); } // Regression test for "vp why vite reports the override as ineffective" in a @@ -48,7 +99,7 @@ describe('dropAliasedRuntimeDevDeps', () => { dropAliasedRuntimeDevDeps(tmpDir, PackageManager.pnpm); - const devDependencies = readDevDependencies(); + const devDependencies = readDevDependencies(tmpDir); expect(devDependencies.vite).toBe('catalog:'); expect(devDependencies.vitest).toBe('catalog:'); expect(devDependencies['vite-plus']).toBe('catalog:'); @@ -68,7 +119,7 @@ describe('dropAliasedRuntimeDevDeps', () => { dropAliasedRuntimeDevDeps(tmpDir, packageManager); - const devDependencies = readDevDependencies(); + const devDependencies = readDevDependencies(tmpDir); expect(devDependencies.vite).toBeUndefined(); expect(devDependencies.vitest).toBeUndefined(); expect(devDependencies['vite-plus']).toBe('latest'); diff --git a/packages/cli/src/create/templates/monorepo.ts b/packages/cli/src/create/templates/monorepo.ts index 3c9856ed83..502842206a 100644 --- a/packages/cli/src/create/templates/monorepo.ts +++ b/packages/cli/src/create/templates/monorepo.ts @@ -158,9 +158,50 @@ export async function executeMonorepoTemplate( options?.silent ?? false, ); + alignMonorepoTypeScriptVersion(appProjectPath, libraryProjectPath); + return { exitCode: 0, projectDir: templateInfo.targetDir }; } +/** + * Keep the built-in app and library on the same TypeScript version. + * + * The two projects come from independently updated remote templates. If their + * TypeScript majors drift apart, package managers either create separate + * vite-plus peer contexts (pnpm) or hoist a compiler that the bundled tsdown + * resolver cannot use for the other workspace (npm/Yarn). The app template is + * the compatibility baseline for the generated workspace, so the library + * adopts its TypeScript range. + */ +export function alignMonorepoTypeScriptVersion( + appProjectPath: string, + libraryProjectPath: string, +): void { + const appPackage = JSON.parse( + fs.readFileSync(path.join(appProjectPath, 'package.json'), 'utf8'), + ) as { + devDependencies?: Record; + }; + const typescriptVersion = appPackage.devDependencies?.typescript; + if (!typescriptVersion) { + return; + } + + editJsonFile<{ devDependencies?: Record }>( + path.join(libraryProjectPath, 'package.json'), + (pkg) => { + if ( + !pkg.devDependencies?.typescript || + pkg.devDependencies.typescript === typescriptVersion + ) { + return undefined; + } + pkg.devDependencies.typescript = typescriptVersion; + return pkg; + }, + ); +} + /** * Drop the aliased `vite` / `vitest` devDeps that `create-vite` leaves on a * scaffolded sub-package. After migration its scripts already use `vp ...` and From 9f6d49c248f210da32564cff7fc754e415ed44bd Mon Sep 17 00:00:00 2001 From: wan9chi Date: Mon, 13 Jul 2026 13:00:40 +0800 Subject: [PATCH 3/8] fix(create): preserve TS7 compiler alias --- .../snapshots/new_vite_monorepo.md | 1 + .../snapshots/new_vite_monorepo_bun.md | 1 + .../cli/src/create/__tests__/monorepo.spec.ts | 18 +++++++++++++ packages/cli/src/create/templates/monorepo.ts | 25 +++++++++++++++---- 4 files changed, 40 insertions(+), 5 deletions(-) diff --git a/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/new_vite_monorepo/snapshots/new_vite_monorepo.md b/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/new_vite_monorepo/snapshots/new_vite_monorepo.md index ae5451c295..20d79eb14f 100644 --- a/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/new_vite_monorepo/snapshots/new_vite_monorepo.md +++ b/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/new_vite_monorepo/snapshots/new_vite_monorepo.md @@ -240,6 +240,7 @@ check utils normalizes vite-plus to catalog: }, "devDependencies": { "@types/node": "^26.1.1", + "@typescript/native-preview": "npm:typescript@^7.0.2", "bumpp": "^11.1.0", "typescript": "~6.0.2", "vite": "catalog:", diff --git a/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/new_vite_monorepo_bun/snapshots/new_vite_monorepo_bun.md b/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/new_vite_monorepo_bun/snapshots/new_vite_monorepo_bun.md index 5010ddf400..fe7fe792f8 100644 --- a/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/new_vite_monorepo_bun/snapshots/new_vite_monorepo_bun.md +++ b/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/new_vite_monorepo_bun/snapshots/new_vite_monorepo_bun.md @@ -156,6 +156,7 @@ check utils normalizes vite-plus to catalog: }, "devDependencies": { "@types/node": "^26.1.1", + "@typescript/native-preview": "npm:typescript@^7.0.2", "bumpp": "^11.1.0", "typescript": "~6.0.2", "vite-plus": "catalog:" diff --git a/packages/cli/src/create/__tests__/monorepo.spec.ts b/packages/cli/src/create/__tests__/monorepo.spec.ts index c560dce8b0..7ed09bf0b7 100644 --- a/packages/cli/src/create/__tests__/monorepo.spec.ts +++ b/packages/cli/src/create/__tests__/monorepo.spec.ts @@ -54,6 +54,24 @@ describe('alignMonorepoTypeScriptVersion', () => { expect(readDevDependencies(libraryDir)).toEqual({ typescript: '~6.0.2', '@types/node': '^26.1.1', + '@typescript/native-preview': 'npm:typescript@^7.0.2', + 'vite-plus': 'catalog:', + }); + }); + + it('preserves an existing native-preview dependency when aligning TypeScript', () => { + writePackageJson(appDir, { typescript: '~6.0.2', 'vite-plus': 'catalog:' }); + writePackageJson(libraryDir, { + typescript: '^7.0.2', + '@typescript/native-preview': '7.0.0-dev.20260509.2', + 'vite-plus': 'catalog:', + }); + + alignMonorepoTypeScriptVersion(appDir, libraryDir); + + expect(readDevDependencies(libraryDir)).toEqual({ + typescript: '~6.0.2', + '@typescript/native-preview': '7.0.0-dev.20260509.2', 'vite-plus': 'catalog:', }); }); diff --git a/packages/cli/src/create/templates/monorepo.ts b/packages/cli/src/create/templates/monorepo.ts index 502842206a..704b9d0653 100644 --- a/packages/cli/src/create/templates/monorepo.ts +++ b/packages/cli/src/create/templates/monorepo.ts @@ -3,6 +3,7 @@ import fs from 'node:fs'; import path from 'node:path'; import * as prompts from '@voidzero-dev/vite-plus-prompts'; +import semver from 'semver'; import { rewriteMonorepoProject } from '../../migration/migrator.ts'; import { PackageManager, type WorkspaceInfo } from '../../types/index.ts'; @@ -171,7 +172,9 @@ export async function executeMonorepoTemplate( * vite-plus peer contexts (pnpm) or hoist a compiler that the bundled tsdown * resolver cannot use for the other workspace (npm/Yarn). The app template is * the compatibility baseline for the generated workspace, so the library - * adopts its TypeScript range. + * adopts its TypeScript range. When that down-aligns a TS7 library, preserve + * its native compiler under the compatibility alias expected by tsdown's + * bundled declaration generator. */ export function alignMonorepoTypeScriptVersion( appProjectPath: string, @@ -190,13 +193,25 @@ export function alignMonorepoTypeScriptVersion( editJsonFile<{ devDependencies?: Record }>( path.join(libraryProjectPath, 'package.json'), (pkg) => { + const { devDependencies } = pkg; + const libraryTypeScriptVersion = devDependencies?.typescript; + if (!libraryTypeScriptVersion || libraryTypeScriptVersion === typescriptVersion) { + return undefined; + } + + const appTypeScriptMajor = semver.minVersion(typescriptVersion)?.major; + const libraryTypeScriptMajor = semver.minVersion(libraryTypeScriptVersion)?.major; if ( - !pkg.devDependencies?.typescript || - pkg.devDependencies.typescript === typescriptVersion + libraryTypeScriptMajor != null && + libraryTypeScriptMajor >= 7 && + appTypeScriptMajor != null && + appTypeScriptMajor < 7 && + !devDependencies['@typescript/native-preview'] ) { - return undefined; + devDependencies['@typescript/native-preview'] = + `npm:typescript@${libraryTypeScriptVersion}`; } - pkg.devDependencies.typescript = typescriptVersion; + devDependencies.typescript = typescriptVersion; return pkg; }, ); From 9b47619630242bb12c8a196a0ffc514ca0863b3e Mon Sep 17 00:00:00 2001 From: wan9chi Date: Mon, 13 Jul 2026 13:07:38 +0800 Subject: [PATCH 4/8] fix(core): ship native TypeScript compiler --- .../snapshots/new_vite_monorepo.md | 1 - .../snapshots/new_vite_monorepo_bun.md | 1 - .../cli/src/create/__tests__/monorepo.spec.ts | 18 ------------- packages/cli/src/create/templates/monorepo.ts | 25 ++++--------------- packages/core/package.json | 1 + pnpm-lock.yaml | 3 +++ 6 files changed, 9 insertions(+), 40 deletions(-) diff --git a/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/new_vite_monorepo/snapshots/new_vite_monorepo.md b/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/new_vite_monorepo/snapshots/new_vite_monorepo.md index 20d79eb14f..ae5451c295 100644 --- a/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/new_vite_monorepo/snapshots/new_vite_monorepo.md +++ b/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/new_vite_monorepo/snapshots/new_vite_monorepo.md @@ -240,7 +240,6 @@ check utils normalizes vite-plus to catalog: }, "devDependencies": { "@types/node": "^26.1.1", - "@typescript/native-preview": "npm:typescript@^7.0.2", "bumpp": "^11.1.0", "typescript": "~6.0.2", "vite": "catalog:", diff --git a/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/new_vite_monorepo_bun/snapshots/new_vite_monorepo_bun.md b/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/new_vite_monorepo_bun/snapshots/new_vite_monorepo_bun.md index fe7fe792f8..5010ddf400 100644 --- a/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/new_vite_monorepo_bun/snapshots/new_vite_monorepo_bun.md +++ b/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/new_vite_monorepo_bun/snapshots/new_vite_monorepo_bun.md @@ -156,7 +156,6 @@ check utils normalizes vite-plus to catalog: }, "devDependencies": { "@types/node": "^26.1.1", - "@typescript/native-preview": "npm:typescript@^7.0.2", "bumpp": "^11.1.0", "typescript": "~6.0.2", "vite-plus": "catalog:" diff --git a/packages/cli/src/create/__tests__/monorepo.spec.ts b/packages/cli/src/create/__tests__/monorepo.spec.ts index 7ed09bf0b7..c560dce8b0 100644 --- a/packages/cli/src/create/__tests__/monorepo.spec.ts +++ b/packages/cli/src/create/__tests__/monorepo.spec.ts @@ -54,24 +54,6 @@ describe('alignMonorepoTypeScriptVersion', () => { expect(readDevDependencies(libraryDir)).toEqual({ typescript: '~6.0.2', '@types/node': '^26.1.1', - '@typescript/native-preview': 'npm:typescript@^7.0.2', - 'vite-plus': 'catalog:', - }); - }); - - it('preserves an existing native-preview dependency when aligning TypeScript', () => { - writePackageJson(appDir, { typescript: '~6.0.2', 'vite-plus': 'catalog:' }); - writePackageJson(libraryDir, { - typescript: '^7.0.2', - '@typescript/native-preview': '7.0.0-dev.20260509.2', - 'vite-plus': 'catalog:', - }); - - alignMonorepoTypeScriptVersion(appDir, libraryDir); - - expect(readDevDependencies(libraryDir)).toEqual({ - typescript: '~6.0.2', - '@typescript/native-preview': '7.0.0-dev.20260509.2', 'vite-plus': 'catalog:', }); }); diff --git a/packages/cli/src/create/templates/monorepo.ts b/packages/cli/src/create/templates/monorepo.ts index 704b9d0653..502842206a 100644 --- a/packages/cli/src/create/templates/monorepo.ts +++ b/packages/cli/src/create/templates/monorepo.ts @@ -3,7 +3,6 @@ import fs from 'node:fs'; import path from 'node:path'; import * as prompts from '@voidzero-dev/vite-plus-prompts'; -import semver from 'semver'; import { rewriteMonorepoProject } from '../../migration/migrator.ts'; import { PackageManager, type WorkspaceInfo } from '../../types/index.ts'; @@ -172,9 +171,7 @@ export async function executeMonorepoTemplate( * vite-plus peer contexts (pnpm) or hoist a compiler that the bundled tsdown * resolver cannot use for the other workspace (npm/Yarn). The app template is * the compatibility baseline for the generated workspace, so the library - * adopts its TypeScript range. When that down-aligns a TS7 library, preserve - * its native compiler under the compatibility alias expected by tsdown's - * bundled declaration generator. + * adopts its TypeScript range. */ export function alignMonorepoTypeScriptVersion( appProjectPath: string, @@ -193,25 +190,13 @@ export function alignMonorepoTypeScriptVersion( editJsonFile<{ devDependencies?: Record }>( path.join(libraryProjectPath, 'package.json'), (pkg) => { - const { devDependencies } = pkg; - const libraryTypeScriptVersion = devDependencies?.typescript; - if (!libraryTypeScriptVersion || libraryTypeScriptVersion === typescriptVersion) { - return undefined; - } - - const appTypeScriptMajor = semver.minVersion(typescriptVersion)?.major; - const libraryTypeScriptMajor = semver.minVersion(libraryTypeScriptVersion)?.major; if ( - libraryTypeScriptMajor != null && - libraryTypeScriptMajor >= 7 && - appTypeScriptMajor != null && - appTypeScriptMajor < 7 && - !devDependencies['@typescript/native-preview'] + !pkg.devDependencies?.typescript || + pkg.devDependencies.typescript === typescriptVersion ) { - devDependencies['@typescript/native-preview'] = - `npm:typescript@${libraryTypeScriptVersion}`; + return undefined; } - devDependencies.typescript = typescriptVersion; + pkg.devDependencies.typescript = typescriptVersion; return pkg; }, ); diff --git a/packages/core/package.json b/packages/core/package.json index 25734c923e..5d2860e73a 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -102,6 +102,7 @@ "dependencies": { "@oxc-project/runtime": "catalog:", "@oxc-project/types": "catalog:", + "@typescript/native-preview": "catalog:", "lightningcss": "catalog:", "postcss": "^8.5.6", "yuku-codegen": "^0.5.44", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 77c0cc5b0b..474d3cf09a 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -517,6 +517,9 @@ importers: '@oxc-project/types': specifier: 'catalog:' version: 0.139.0 + '@typescript/native-preview': + specifier: 'catalog:' + version: 7.0.0-dev.20260605.1 '@types/node': specifier: ^20.19.0 || >=22.12.0 version: 24.13.2 From 5b898a1e0b6f8389e1acf1fdedad3a34467adc5f Mon Sep 17 00:00:00 2001 From: wan9chi Date: Tue, 14 Jul 2026 00:39:50 +0800 Subject: [PATCH 5/8] fix(pack): use TypeScript 7 native compiler --- .../snapshots/command_env_which.md | 2 +- .../snapshots/new_vite_monorepo.md | 4 +- .../snapshots/new_vite_monorepo_bun.md | 4 +- .../tests/cli_snapshots/redact.rs | 7 ++ .../vite_cli_snapshots/tests/redact_unit.rs | 9 ++ .../cli/src/__tests__/typescript-dts.spec.ts | 101 ++++++++++++++++++ .../cli/src/create/__tests__/monorepo.spec.ts | 11 +- packages/cli/src/create/templates/monorepo.ts | 15 +-- packages/cli/src/pack-bin.ts | 4 + packages/cli/src/utils/typescript-dts.ts | 94 ++++++++++++++++ packages/core/package.json | 1 - pnpm-lock.yaml | 3 - 12 files changed, 233 insertions(+), 22 deletions(-) create mode 100644 packages/cli/src/__tests__/typescript-dts.spec.ts create mode 100644 packages/cli/src/utils/typescript-dts.ts diff --git a/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/command_env_which/snapshots/command_env_which.md b/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/command_env_which/snapshots/command_env_which.md index d348ef7320..461da946a5 100644 --- a/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/command_env_which/snapshots/command_env_which.md +++ b/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/command_env_which/snapshots/command_env_which.md @@ -87,7 +87,7 @@ VITE+ - The Unified Toolchain for the Web Package: cowsay@1.6.0 Binaries: cowsay, cowthink Node: - Installed: 2026-07-13 + Installed: ``` ## `vp remove -g cowsay` diff --git a/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/new_vite_monorepo/snapshots/new_vite_monorepo.md b/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/new_vite_monorepo/snapshots/new_vite_monorepo.md index ae5451c295..a28d6e3d1a 100644 --- a/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/new_vite_monorepo/snapshots/new_vite_monorepo.md +++ b/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/new_vite_monorepo/snapshots/new_vite_monorepo.md @@ -194,7 +194,7 @@ check website keeps aliased vite for pnpm (workspace override stays effective) "preview": "vp preview" }, "devDependencies": { - "typescript": "~6.0.2", + "typescript": "^7.0.2", "vite": "catalog:", "vite-plus": "catalog:" } @@ -241,7 +241,7 @@ check utils normalizes vite-plus to catalog: "devDependencies": { "@types/node": "^26.1.1", "bumpp": "^11.1.0", - "typescript": "~6.0.2", + "typescript": "^7.0.2", "vite": "catalog:", "vite-plus": "catalog:" } diff --git a/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/new_vite_monorepo_bun/snapshots/new_vite_monorepo_bun.md b/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/new_vite_monorepo_bun/snapshots/new_vite_monorepo_bun.md index 5010ddf400..bd6bf4c8ca 100644 --- a/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/new_vite_monorepo_bun/snapshots/new_vite_monorepo_bun.md +++ b/crates/vite_cli_snapshots/tests/cli_snapshots/fixtures/new_vite_monorepo_bun/snapshots/new_vite_monorepo_bun.md @@ -111,7 +111,7 @@ check website uses catalog: "preview": "vp preview" }, "devDependencies": { - "typescript": "~6.0.2", + "typescript": "^7.0.2", "vite-plus": "catalog:" } } @@ -157,7 +157,7 @@ check utils normalizes vite-plus to catalog: "devDependencies": { "@types/node": "^26.1.1", "bumpp": "^11.1.0", - "typescript": "~6.0.2", + "typescript": "^7.0.2", "vite-plus": "catalog:" } } diff --git a/crates/vite_cli_snapshots/tests/cli_snapshots/redact.rs b/crates/vite_cli_snapshots/tests/cli_snapshots/redact.rs index f4a3cbbfd9..54ec7236b5 100644 --- a/crates/vite_cli_snapshots/tests/cli_snapshots/redact.rs +++ b/crates/vite_cli_snapshots/tests/cli_snapshots/redact.rs @@ -117,6 +117,10 @@ static MANAGED_TEST_VERSION_RE: LazyLock = LazyLock::new(|| { static WHICH_NODE_VERSION_RE: LazyLock = LazyLock::new(|| { regex::Regex::new(r#"(Node:\s+|"nodeVersion":\s*")\d+\.\d+\.\d+(?:-[0-9A-Za-z.-]+)?"#).unwrap() }); +// `vp env which` reports the wall-clock day on which a managed runtime was +// installed. The date describes the runner cache, not fixture behavior. +static WHICH_INSTALLED_DATE_RE: LazyLock = + LazyLock::new(|| regex::Regex::new(r"(Installed:\s+)\d{4}-\d{2}-\d{2}").unwrap()); // Output bytes differ across OSes (line endings, embedded paths), so byte // sizes and content-derived asset hashes can never be part of a shared // snapshot. The unit is kept (" kB"): it only changes when content @@ -386,6 +390,9 @@ pub fn redact_output( // context (see WHICH_NODE_VERSION_RE). output = WHICH_NODE_VERSION_RE.replace_all(&output, "${1}").into_owned(); + // Redact the managed runtime's environment-specific installation date. + output = WHICH_INSTALLED_DATE_RE.replace_all(&output, "${1}").into_owned(); + // Redact thread counts like "16 threads" to " threads" output = THREAD_RE.replace_all(&output, " threads").into_owned(); diff --git a/crates/vite_cli_snapshots/tests/redact_unit.rs b/crates/vite_cli_snapshots/tests/redact_unit.rs index 46d881ddba..7cd1f5d31e 100644 --- a/crates/vite_cli_snapshots/tests/redact_unit.rs +++ b/crates/vite_cli_snapshots/tests/redact_unit.rs @@ -67,6 +67,15 @@ fn masks_bare_runtime_tool_versions_by_name_context() { ); } +#[test] +fn masks_managed_runtime_install_date_by_label_context() { + let input = " Installed: 2026-07-13\n Created: fixture-value\n".to_owned(); + assert_eq!( + redact_output(input, &[], true), + " Installed: \n Created: fixture-value\n" + ); +} + #[test] fn masks_vite_plus_version_by_context_only() { // The workspace vite-plus/core version bumps every release and is masked by diff --git a/packages/cli/src/__tests__/typescript-dts.spec.ts b/packages/cli/src/__tests__/typescript-dts.spec.ts new file mode 100644 index 0000000000..3c5c976c30 --- /dev/null +++ b/packages/cli/src/__tests__/typescript-dts.spec.ts @@ -0,0 +1,101 @@ +import fs from 'node:fs'; +import os from 'node:os'; +import path from 'node:path'; + +import type { ResolvedConfig } from '@voidzero-dev/vite-plus-core/pack'; +import { afterEach, beforeEach, describe, expect, it } from 'vitest'; + +import { configureTypeScript7Dts } from '../utils/typescript-dts.js'; + +function writeJson(file: string, value: unknown): void { + fs.mkdirSync(path.dirname(file), { recursive: true }); + fs.writeFileSync(file, JSON.stringify(value)); +} + +describe('configureTypeScript7Dts', () => { + let cwd: string; + + beforeEach(() => { + cwd = fs.mkdtempSync(path.join(os.tmpdir(), 'vp-typescript-dts-')); + fs.writeFileSync(path.join(cwd, 'package.json'), '{}'); + }); + + afterEach(() => { + fs.rmSync(cwd, { recursive: true, force: true }); + }); + + function installTypeScript(version: string, includeCompiler = true): string { + writeJson(path.join(cwd, 'node_modules/typescript/package.json'), { + name: 'typescript', + version, + exports: { './package.json': './package.json' }, + }); + + const platformPackage = `typescript-${process.platform}-${process.arch}`; + const platformRoot = path.join(cwd, 'node_modules/@typescript', platformPackage); + if (includeCompiler) { + writeJson(path.join(platformRoot, 'package.json'), { + name: `@typescript/${platformPackage}`, + version, + exports: { './package.json': './package.json' }, + }); + const executable = path.join( + platformRoot, + 'lib', + process.platform === 'win32' ? 'tsc.exe' : 'tsc', + ); + fs.mkdirSync(path.dirname(executable), { recursive: true }); + fs.writeFileSync(executable, ''); + return executable; + } + return path.join(platformRoot, 'lib', 'tsc'); + } + + function config(dts: ResolvedConfig['dts']): ResolvedConfig { + return { cwd, dts } as ResolvedConfig; + } + + it('uses the native compiler shipped with TypeScript 7', () => { + const executable = installTypeScript('7.0.2'); + const resolved = config({}); + + configureTypeScript7Dts(resolved); + + expect(resolved.dts && resolved.dts.tsgo).toEqual({ path: fs.realpathSync(executable) }); + }); + + it('preserves a custom native compiler path', () => { + installTypeScript('7.0.2', false); + const resolved = config({ tsgo: { path: '/custom/tsc' } }); + + configureTypeScript7Dts(resolved); + + expect(resolved.dts && resolved.dts.tsgo).toEqual({ path: '/custom/tsc' }); + }); + + it('leaves the Oxc declaration pipeline unchanged', () => { + installTypeScript('7.0.2', false); + const resolved = config({ oxc: true }); + + configureTypeScript7Dts(resolved); + + expect(resolved.dts).toEqual({ oxc: true }); + }); + + it('rejects an explicitly disabled native declaration pipeline', () => { + installTypeScript('7.0.2', false); + + expect(() => configureTypeScript7Dts(config({ tsgo: false }))).toThrow( + 'TypeScript 7 declaration generation requires', + ); + }); + + it('keeps the legacy pipeline for TypeScript 6', () => { + installTypeScript('6.0.2', false); + const resolved = config({}); + + configureTypeScript7Dts(resolved); + + expect(resolved.dts).toEqual({}); + }); +}); diff --git a/packages/cli/src/create/__tests__/monorepo.spec.ts b/packages/cli/src/create/__tests__/monorepo.spec.ts index c560dce8b0..babc5b304e 100644 --- a/packages/cli/src/create/__tests__/monorepo.spec.ts +++ b/packages/cli/src/create/__tests__/monorepo.spec.ts @@ -41,7 +41,7 @@ describe('alignMonorepoTypeScriptVersion', () => { fs.rmSync(tmpDir, { recursive: true, force: true }); }); - it('aligns the library with the app TypeScript range', () => { + it('aligns the app with the library TypeScript range', () => { writePackageJson(appDir, { typescript: '~6.0.2', 'vite-plus': 'catalog:' }); writePackageJson(libraryDir, { typescript: '^7.0.2', @@ -51,20 +51,19 @@ describe('alignMonorepoTypeScriptVersion', () => { alignMonorepoTypeScriptVersion(appDir, libraryDir); - expect(readDevDependencies(libraryDir)).toEqual({ - typescript: '~6.0.2', - '@types/node': '^26.1.1', + expect(readDevDependencies(appDir)).toEqual({ + typescript: '^7.0.2', 'vite-plus': 'catalog:', }); }); - it('leaves the library unchanged when the app has no TypeScript dependency', () => { + it('leaves the app unchanged when it has no TypeScript dependency', () => { writePackageJson(appDir, { 'vite-plus': 'catalog:' }); writePackageJson(libraryDir, { typescript: '^7.0.2', 'vite-plus': 'catalog:' }); alignMonorepoTypeScriptVersion(appDir, libraryDir); - expect(readDevDependencies(libraryDir).typescript).toBe('^7.0.2'); + expect(readDevDependencies(appDir).typescript).toBeUndefined(); }); }); diff --git a/packages/cli/src/create/templates/monorepo.ts b/packages/cli/src/create/templates/monorepo.ts index 502842206a..737cc07d13 100644 --- a/packages/cli/src/create/templates/monorepo.ts +++ b/packages/cli/src/create/templates/monorepo.ts @@ -169,26 +169,27 @@ export async function executeMonorepoTemplate( * The two projects come from independently updated remote templates. If their * TypeScript majors drift apart, package managers either create separate * vite-plus peer contexts (pnpm) or hoist a compiler that the bundled tsdown - * resolver cannot use for the other workspace (npm/Yarn). The app template is - * the compatibility baseline for the generated workspace, so the library - * adopts its TypeScript range. + * resolver cannot use for the other workspace (npm/Yarn). The library + * template is the compatibility baseline because its declaration build may + * require a newer compiler, so the app adopts its TypeScript range instead of + * silently downgrading the library. */ export function alignMonorepoTypeScriptVersion( appProjectPath: string, libraryProjectPath: string, ): void { - const appPackage = JSON.parse( - fs.readFileSync(path.join(appProjectPath, 'package.json'), 'utf8'), + const libraryPackage = JSON.parse( + fs.readFileSync(path.join(libraryProjectPath, 'package.json'), 'utf8'), ) as { devDependencies?: Record; }; - const typescriptVersion = appPackage.devDependencies?.typescript; + const typescriptVersion = libraryPackage.devDependencies?.typescript; if (!typescriptVersion) { return; } editJsonFile<{ devDependencies?: Record }>( - path.join(libraryProjectPath, 'package.json'), + path.join(appProjectPath, 'package.json'), (pkg) => { if ( !pkg.devDependencies?.typescript || diff --git a/packages/cli/src/pack-bin.ts b/packages/cli/src/pack-bin.ts index 03c2e8f56c..e4d311c6de 100644 --- a/packages/cli/src/pack-bin.ts +++ b/packages/cli/src/pack-bin.ts @@ -12,6 +12,7 @@ import { import { cac } from 'cac'; import { resolveViteConfig } from './resolve-vite-config.ts'; +import { configureTypeScript7Dts } from './utils/typescript-dts.ts'; // Matches a `.d.ts` / `.d.mts` / `.d.cts` importer. const RE_DTS = /\.d\.[cm]?ts$/; @@ -166,6 +167,9 @@ cli merged.plugins = [...existingPlugins, externalDtsTypeOnlyPlugin()]; } const resolvedConfig = await resolveUserConfig(merged, flags, configDeps); + for (const config of resolvedConfig) { + configureTypeScript7Dts(config); + } configs.push(...resolvedConfig); } diff --git a/packages/cli/src/utils/typescript-dts.ts b/packages/cli/src/utils/typescript-dts.ts new file mode 100644 index 0000000000..84bb2a8f0f --- /dev/null +++ b/packages/cli/src/utils/typescript-dts.ts @@ -0,0 +1,94 @@ +import fs from 'node:fs'; +import { createRequire } from 'node:module'; +import path from 'node:path'; + +import type { ResolvedConfig } from '@voidzero-dev/vite-plus-core/pack'; +import semver from 'semver'; + +interface TypeScriptPackageJson { + version?: string; +} + +function resolveTypeScriptPackage(cwd: string): { + packageJsonPath: string; + version: string; +} | null { + const projectRequire = createRequire(path.join(cwd, 'package.json')); + let packageJsonPath: string; + try { + packageJsonPath = projectRequire.resolve('typescript/package.json'); + } catch { + return null; + } + + const packageJson = JSON.parse(fs.readFileSync(packageJsonPath, 'utf8')) as TypeScriptPackageJson; + return packageJson.version ? { packageJsonPath, version: packageJson.version } : null; +} + +function resolveTypeScript7Compiler(packageJsonPath: string): string { + const platformPackage = `@typescript/typescript-${process.platform}-${process.arch}`; + const typescriptRequire = createRequire(packageJsonPath); + let platformPackageJsonPath: string; + try { + platformPackageJsonPath = typescriptRequire.resolve(`${platformPackage}/package.json`); + } catch { + throw new Error( + `Unable to resolve the TypeScript 7 compiler package ${platformPackage}. ` + + 'Reinstall TypeScript without omitting optional dependencies.', + ); + } + + const executable = path.join( + path.dirname(platformPackageJsonPath), + 'lib', + process.platform === 'win32' ? 'tsc.exe' : 'tsc', + ); + if (!fs.existsSync(executable)) { + throw new Error(`TypeScript 7 compiler executable not found: ${executable}`); + } + return executable; +} + +/** + * TypeScript 7's package root only exposes the new API, while the default DTS + * pipeline consumes the legacy TypeScript compiler API. Route declaration + * generation through the native compiler that TypeScript 7 installs for the + * current platform instead. + */ +export function configureTypeScript7Dts(config: ResolvedConfig): void { + if (!config.dts) { + return; + } + + const typescript = resolveTypeScriptPackage(config.cwd ?? process.cwd()); + if (!typescript || !semver.satisfies(typescript.version, '^7.0.0')) { + return; + } + + const { dts } = config; + if (dts.oxc) { + return; + } + + const tsgo = dts.tsgo; + if (typeof tsgo === 'object' && tsgo.path) { + return; + } + if (tsgo === false || (typeof tsgo === 'object' && tsgo.enabled === false)) { + throw new Error( + 'TypeScript 7 declaration generation requires `pack.dts.tsgo` or `pack.dts.oxc`. ' + + 'Remove `tsgo: false`, enable the Oxc declaration generator, or use TypeScript 6.', + ); + } + if (dts.vue || dts.tsMacro) { + throw new Error( + 'TypeScript 7 declaration generation does not support the legacy `vue` or `tsMacro` ' + + 'pipeline. Use TypeScript 6 for this pack configuration.', + ); + } + + dts.tsgo = { + ...(typeof tsgo === 'object' ? tsgo : {}), + path: resolveTypeScript7Compiler(typescript.packageJsonPath), + }; +} diff --git a/packages/core/package.json b/packages/core/package.json index 5d2860e73a..25734c923e 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -102,7 +102,6 @@ "dependencies": { "@oxc-project/runtime": "catalog:", "@oxc-project/types": "catalog:", - "@typescript/native-preview": "catalog:", "lightningcss": "catalog:", "postcss": "^8.5.6", "yuku-codegen": "^0.5.44", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 474d3cf09a..77c0cc5b0b 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -517,9 +517,6 @@ importers: '@oxc-project/types': specifier: 'catalog:' version: 0.139.0 - '@typescript/native-preview': - specifier: 'catalog:' - version: 7.0.0-dev.20260605.1 '@types/node': specifier: ^20.19.0 || >=22.12.0 version: 24.13.2 From 6a9ad82c8d5b1c21070dadf9455f3042bd50867e Mon Sep 17 00:00:00 2001 From: wan9chi Date: Tue, 14 Jul 2026 00:45:01 +0800 Subject: [PATCH 6/8] fix(pack): match tsgo config types --- packages/cli/src/utils/typescript-dts.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/cli/src/utils/typescript-dts.ts b/packages/cli/src/utils/typescript-dts.ts index 84bb2a8f0f..8c55aa0c26 100644 --- a/packages/cli/src/utils/typescript-dts.ts +++ b/packages/cli/src/utils/typescript-dts.ts @@ -74,7 +74,7 @@ export function configureTypeScript7Dts(config: ResolvedConfig): void { if (typeof tsgo === 'object' && tsgo.path) { return; } - if (tsgo === false || (typeof tsgo === 'object' && tsgo.enabled === false)) { + if (tsgo === false) { throw new Error( 'TypeScript 7 declaration generation requires `pack.dts.tsgo` or `pack.dts.oxc`. ' + 'Remove `tsgo: false`, enable the Oxc declaration generator, or use TypeScript 6.', From 51c6812764e129977432acc045ca8403457124d8 Mon Sep 17 00:00:00 2001 From: wan9chi Date: Tue, 14 Jul 2026 08:13:54 +0800 Subject: [PATCH 7/8] fix(deps): use postcss-modules 9.0.1 --- .../src/__tests__/sync-remote-deps.spec.ts | 35 +++++++++++++++++++ packages/tools/src/sync-remote-deps.ts | 18 ++++++++++ pnpm-lock.yaml | 25 ++++++------- pnpm-workspace.yaml | 9 ++--- 4 files changed, 66 insertions(+), 21 deletions(-) diff --git a/packages/tools/src/__tests__/sync-remote-deps.spec.ts b/packages/tools/src/__tests__/sync-remote-deps.spec.ts index 9c0ce531ad..0a01c1f2a3 100644 --- a/packages/tools/src/__tests__/sync-remote-deps.spec.ts +++ b/packages/tools/src/__tests__/sync-remote-deps.spec.ts @@ -3,6 +3,41 @@ import { describe, expect, test } from 'vitest'; import { mergePnpmWorkspaces, syncCargoOxcVersions } from '../sync-remote-deps.ts'; +describe('mergePnpmWorkspaces() patchedDependencies', () => { + test('drops an upstream patch superseded by an exact root override', () => { + const main = { + overrides: { 'postcss-modules': '9.0.1' }, + patchedDependencies: { 'root-only@1.0.0': 'patches/root-only.patch' }, + }; + const vite = { + patchedDependencies: { + 'postcss-modules@9.0.0': 'patches/postcss-modules@9.0.0.patch', + 'sirv@3.0.2': './patches/sirv@3.0.2.patch', + }, + }; + + const result = mergePnpmWorkspaces(main, {}, vite, semver); + + expect(result.patchedDependencies).toEqual({ + 'root-only@1.0.0': 'patches/root-only.patch', + 'sirv@3.0.2': './vite/patches/sirv@3.0.2.patch', + }); + }); + + test('keeps an upstream patch when the exact override still targets it', () => { + const main = { overrides: { '@scope/pkg': '1.2.3' } }; + const vite = { + patchedDependencies: { '@scope/pkg@1.2.3': 'patches/scope-pkg.patch' }, + }; + + const result = mergePnpmWorkspaces(main, {}, vite, semver); + + expect(result.patchedDependencies).toEqual({ + '@scope/pkg@1.2.3': 'vite/patches/scope-pkg.patch', + }); + }); +}); + describe('mergePnpmWorkspaces() minimumReleaseAgeExclude', () => { test('drops versioned upstream entries already covered by a glob or bare pattern', () => { // The main workspace already excludes whole namespaces via globs diff --git a/packages/tools/src/sync-remote-deps.ts b/packages/tools/src/sync-remote-deps.ts index c61d0dcd83..afb923be52 100755 --- a/packages/tools/src/sync-remote-deps.ts +++ b/packages/tools/src/sync-remote-deps.ts @@ -528,6 +528,21 @@ function parseExcludeEntry(entry: string): { name: string; version?: string } { return { name: entry }; } +// An exact root override to a different version makes an upstream versioned +// patch impossible to apply. Do not copy that patch into the merged workspace, +// otherwise pnpm rejects the install because its target is no longer resolved. +function isPatchSupersededByOverride( + dependency: string, + overrides: Record | undefined, + semver: typeof import('semver'), +): boolean { + const { name, version } = parseExcludeEntry(dependency); + const override = overrides?.[name]; + const patchVersion = version && semver.valid(version); + const overrideVersion = override && semver.valid(override); + return Boolean(patchVersion && overrideVersion && !semver.eq(patchVersion, overrideVersion)); +} + // Build a matcher for a version-less name pattern. The exclude list only ever // uses the `*` wildcard, so a tiny *-only glob (escape regex specials, `*` -> // `.*`, anchored) is enough and keeps `minimatch` out of this module: it is @@ -632,6 +647,9 @@ export function mergePnpmWorkspaces( if (main.patchedDependencies || rolldownVite.patchedDependencies) { result.patchedDependencies = { ...main.patchedDependencies }; for (const [dep, patchPath] of Object.entries(rolldownVite.patchedDependencies ?? {})) { + if (isPatchSupersededByOverride(dep, main.overrides, semver)) { + continue; + } // Prepend vite directory to patch paths result.patchedDependencies[dep] = patchPath.startsWith('./') ? `./${VITE_DIR}/${patchPath.slice(2)}` diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 77c0cc5b0b..1f3c403e5b 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -299,7 +299,7 @@ overrides: rolldown: workspace:rolldown@* vite: workspace:@voidzero-dev/vite-plus-core@* vite-plus: workspace:vite-plus@* - postcss-modules: 9.0.0 + postcss-modules: 9.0.1 packageExtensionsChecksum: sha256-Tldxs3DhJEw/FFBonUidqhCBqApA0zxQnop3Y+BTO3U= @@ -310,9 +310,6 @@ patchedDependencies: dotenv-expand@13.0.0: hash: 49330a663821151418e003e822a82a6a61d2f0f8a6e3cab00c1c94815a112889 path: vite/patches/dotenv-expand@13.0.0.patch - postcss-modules@9.0.0: - hash: 0c886ee83450c5fd20d2c88b3ba2cf5d3afbb9c440755757f311439897188056 - path: vite/patches/postcss-modules@9.0.0.patch sirv@3.0.2: hash: c07c56eb72faea34341d465cde2314e89db472106ed378181e3447893af6bf95 path: vite/patches/sirv@3.0.2.patch @@ -595,7 +592,7 @@ importers: version: 0.1.0 '@tsdown/css': specifier: 'catalog:' - version: 0.22.5(jiti@2.7.0)(postcss-import@16.1.1(postcss@8.5.16))(postcss-modules@9.0.0(patch_hash=0c886ee83450c5fd20d2c88b3ba2cf5d3afbb9c440755757f311439897188056)(postcss@8.5.16))(postcss@8.5.16)(sass-embedded@1.100.0(source-map-js@1.2.1))(sass@1.101.0)(tsdown@0.22.5)(tsx@4.23.0)(yaml@2.9.0) + version: 0.22.5(jiti@2.7.0)(postcss-import@16.1.1(postcss@8.5.16))(postcss-modules@9.0.1(postcss@8.5.16))(postcss@8.5.16)(sass-embedded@1.100.0(source-map-js@1.2.1))(sass@1.101.0)(tsdown@0.22.5)(tsx@4.23.0)(yaml@2.9.0) '@tsdown/exe': specifier: 'catalog:' version: 0.22.5(tsdown@0.22.5) @@ -1307,8 +1304,8 @@ importers: specifier: ^6.0.1 version: 6.0.1(jiti@2.7.0)(postcss@8.5.16)(tsx@4.23.0)(yaml@2.9.0) postcss-modules: - specifier: 9.0.0 - version: 9.0.0(patch_hash=0c886ee83450c5fd20d2c88b3ba2cf5d3afbb9c440755757f311439897188056)(postcss@8.5.16) + specifier: 9.0.1 + version: 9.0.1(postcss@8.5.16) premove: specifier: ^4.0.0 version: 4.0.0 @@ -4429,7 +4426,7 @@ packages: peerDependencies: postcss: ^8.4.0 postcss-import: ^16.0.0 - postcss-modules: 9.0.0 + postcss-modules: 9.0.1 sass: '*' sass-embedded: '*' tsdown: 0.22.5 @@ -7485,8 +7482,8 @@ packages: peerDependencies: postcss: ^8.1.0 - postcss-modules@9.0.0: - resolution: {integrity: sha512-nyZGaOkHFRvXy10ryKSE3yfh1EhwSrEX2mIhwZblTTdHbKOfH5fNhAC6eZmXB2uCy7x6Bb1Zib5KS2Yw6gSzHQ==} + postcss-modules@9.0.1: + resolution: {integrity: sha512-BrSXxWSls23TzqMuplpeMRL5VHnDOLh2H9EiHNTMIdLBFumJcurDIi47TBuvkn9GsoTLAoPjv2wLzAt1wdQ2aQ==} engines: {node: '>=20.6'} peerDependencies: postcss: ^8.0.0 @@ -11583,7 +11580,7 @@ snapshots: '@tootallnate/quickjs-emscripten@0.23.0': {} - '@tsdown/css@0.22.5(jiti@2.7.0)(postcss-import@16.1.1(postcss@8.5.16))(postcss-modules@9.0.0(patch_hash=0c886ee83450c5fd20d2c88b3ba2cf5d3afbb9c440755757f311439897188056)(postcss@8.5.16))(postcss@8.5.16)(sass-embedded@1.100.0(source-map-js@1.2.1))(sass@1.101.0)(tsdown@0.22.5)(tsx@4.23.0)(yaml@2.9.0)': + '@tsdown/css@0.22.5(jiti@2.7.0)(postcss-import@16.1.1(postcss@8.5.16))(postcss-modules@9.0.1(postcss@8.5.16))(postcss@8.5.16)(sass-embedded@1.100.0(source-map-js@1.2.1))(sass@1.101.0)(tsdown@0.22.5)(tsx@4.23.0)(yaml@2.9.0)': dependencies: lightningcss: 1.32.0 postcss-load-config: 6.0.1(jiti@2.7.0)(postcss@8.5.16)(tsx@4.23.0)(yaml@2.9.0) @@ -11592,7 +11589,7 @@ snapshots: optionalDependencies: postcss: 8.5.16 postcss-import: 16.1.1(postcss@8.5.16) - postcss-modules: 9.0.0(patch_hash=0c886ee83450c5fd20d2c88b3ba2cf5d3afbb9c440755757f311439897188056)(postcss@8.5.16) + postcss-modules: 9.0.1(postcss@8.5.16) sass: 1.101.0 sass-embedded: 1.100.0(source-map-js@1.2.1) transitivePeerDependencies: @@ -14852,7 +14849,7 @@ snapshots: icss-utils: 5.1.0(postcss@8.5.16) postcss: 8.5.16 - postcss-modules@9.0.0(patch_hash=0c886ee83450c5fd20d2c88b3ba2cf5d3afbb9c440755757f311439897188056)(postcss@8.5.16): + postcss-modules@9.0.1(postcss@8.5.16): dependencies: generic-names: 4.0.0 icss-utils: 5.1.0(postcss@8.5.16) @@ -15702,7 +15699,7 @@ snapshots: unconfig-core: 7.5.0 optionalDependencies: '@arethetypeswrong/core': 0.18.2 - '@tsdown/css': 0.22.5(jiti@2.7.0)(postcss-import@16.1.1(postcss@8.5.16))(postcss-modules@9.0.0(patch_hash=0c886ee83450c5fd20d2c88b3ba2cf5d3afbb9c440755757f311439897188056)(postcss@8.5.16))(postcss@8.5.16)(sass-embedded@1.100.0(source-map-js@1.2.1))(sass@1.101.0)(tsdown@0.22.5)(tsx@4.23.0)(yaml@2.9.0) + '@tsdown/css': 0.22.5(jiti@2.7.0)(postcss-import@16.1.1(postcss@8.5.16))(postcss-modules@9.0.1(postcss@8.5.16))(postcss@8.5.16)(sass-embedded@1.100.0(source-map-js@1.2.1))(sass@1.101.0)(tsdown@0.22.5)(tsx@4.23.0)(yaml@2.9.0) '@tsdown/exe': 0.22.5(tsdown@0.22.5) '@vitejs/devtools': 0.3.4(typescript@6.0.2)(vite@packages+core) publint: 0.3.21 diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 7451c29185..c77567d8c4 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -201,12 +201,8 @@ overrides: rolldown: workspace:rolldown@* vite: workspace:@voidzero-dev/vite-plus-core@* vite-plus: workspace:vite-plus@* - # Vite ships a patch keyed to postcss-modules@9.0.0 (removes an obsolete - # `declare module "postcss-modules/loader"`). 9.0.1 already dropped that line - # upstream, so `^9.0.0` re-resolves to 9.0.1 and the patch goes unused, failing - # install. Pin to 9.0.0 so the still-shipped vite patch applies; functionally - # identical to 9.0.1. - postcss-modules: 9.0.0 + # Includes the loader type fix carried by Vite's postcss-modules@9.0.0 patch. + postcss-modules: 9.0.1 packageExtensions: '@rollup/plugin-dynamic-import-vars': dependencies: @@ -221,7 +217,6 @@ patchedDependencies: chokidar@3.6.0: vite/patches/chokidar@3.6.0.patch dotenv-expand@13.0.0: vite/patches/dotenv-expand@13.0.0.patch sirv@3.0.2: vite/patches/sirv@3.0.2.patch - postcss-modules@9.0.0: vite/patches/postcss-modules@9.0.0.patch peerDependencyRules: allowAny: - vite From 66aa2fbd952ca334a5e7d75311253cf8519a90eb Mon Sep 17 00:00:00 2001 From: wan9chi Date: Tue, 14 Jul 2026 08:29:47 +0800 Subject: [PATCH 8/8] Revert "fix(deps): use postcss-modules 9.0.1" This reverts commit 51c6812764e129977432acc045ca8403457124d8. --- .../src/__tests__/sync-remote-deps.spec.ts | 35 ------------------- packages/tools/src/sync-remote-deps.ts | 18 ---------- pnpm-lock.yaml | 25 +++++++------ pnpm-workspace.yaml | 9 +++-- 4 files changed, 21 insertions(+), 66 deletions(-) diff --git a/packages/tools/src/__tests__/sync-remote-deps.spec.ts b/packages/tools/src/__tests__/sync-remote-deps.spec.ts index 0a01c1f2a3..9c0ce531ad 100644 --- a/packages/tools/src/__tests__/sync-remote-deps.spec.ts +++ b/packages/tools/src/__tests__/sync-remote-deps.spec.ts @@ -3,41 +3,6 @@ import { describe, expect, test } from 'vitest'; import { mergePnpmWorkspaces, syncCargoOxcVersions } from '../sync-remote-deps.ts'; -describe('mergePnpmWorkspaces() patchedDependencies', () => { - test('drops an upstream patch superseded by an exact root override', () => { - const main = { - overrides: { 'postcss-modules': '9.0.1' }, - patchedDependencies: { 'root-only@1.0.0': 'patches/root-only.patch' }, - }; - const vite = { - patchedDependencies: { - 'postcss-modules@9.0.0': 'patches/postcss-modules@9.0.0.patch', - 'sirv@3.0.2': './patches/sirv@3.0.2.patch', - }, - }; - - const result = mergePnpmWorkspaces(main, {}, vite, semver); - - expect(result.patchedDependencies).toEqual({ - 'root-only@1.0.0': 'patches/root-only.patch', - 'sirv@3.0.2': './vite/patches/sirv@3.0.2.patch', - }); - }); - - test('keeps an upstream patch when the exact override still targets it', () => { - const main = { overrides: { '@scope/pkg': '1.2.3' } }; - const vite = { - patchedDependencies: { '@scope/pkg@1.2.3': 'patches/scope-pkg.patch' }, - }; - - const result = mergePnpmWorkspaces(main, {}, vite, semver); - - expect(result.patchedDependencies).toEqual({ - '@scope/pkg@1.2.3': 'vite/patches/scope-pkg.patch', - }); - }); -}); - describe('mergePnpmWorkspaces() minimumReleaseAgeExclude', () => { test('drops versioned upstream entries already covered by a glob or bare pattern', () => { // The main workspace already excludes whole namespaces via globs diff --git a/packages/tools/src/sync-remote-deps.ts b/packages/tools/src/sync-remote-deps.ts index afb923be52..c61d0dcd83 100755 --- a/packages/tools/src/sync-remote-deps.ts +++ b/packages/tools/src/sync-remote-deps.ts @@ -528,21 +528,6 @@ function parseExcludeEntry(entry: string): { name: string; version?: string } { return { name: entry }; } -// An exact root override to a different version makes an upstream versioned -// patch impossible to apply. Do not copy that patch into the merged workspace, -// otherwise pnpm rejects the install because its target is no longer resolved. -function isPatchSupersededByOverride( - dependency: string, - overrides: Record | undefined, - semver: typeof import('semver'), -): boolean { - const { name, version } = parseExcludeEntry(dependency); - const override = overrides?.[name]; - const patchVersion = version && semver.valid(version); - const overrideVersion = override && semver.valid(override); - return Boolean(patchVersion && overrideVersion && !semver.eq(patchVersion, overrideVersion)); -} - // Build a matcher for a version-less name pattern. The exclude list only ever // uses the `*` wildcard, so a tiny *-only glob (escape regex specials, `*` -> // `.*`, anchored) is enough and keeps `minimatch` out of this module: it is @@ -647,9 +632,6 @@ export function mergePnpmWorkspaces( if (main.patchedDependencies || rolldownVite.patchedDependencies) { result.patchedDependencies = { ...main.patchedDependencies }; for (const [dep, patchPath] of Object.entries(rolldownVite.patchedDependencies ?? {})) { - if (isPatchSupersededByOverride(dep, main.overrides, semver)) { - continue; - } // Prepend vite directory to patch paths result.patchedDependencies[dep] = patchPath.startsWith('./') ? `./${VITE_DIR}/${patchPath.slice(2)}` diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 1f3c403e5b..77c0cc5b0b 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -299,7 +299,7 @@ overrides: rolldown: workspace:rolldown@* vite: workspace:@voidzero-dev/vite-plus-core@* vite-plus: workspace:vite-plus@* - postcss-modules: 9.0.1 + postcss-modules: 9.0.0 packageExtensionsChecksum: sha256-Tldxs3DhJEw/FFBonUidqhCBqApA0zxQnop3Y+BTO3U= @@ -310,6 +310,9 @@ patchedDependencies: dotenv-expand@13.0.0: hash: 49330a663821151418e003e822a82a6a61d2f0f8a6e3cab00c1c94815a112889 path: vite/patches/dotenv-expand@13.0.0.patch + postcss-modules@9.0.0: + hash: 0c886ee83450c5fd20d2c88b3ba2cf5d3afbb9c440755757f311439897188056 + path: vite/patches/postcss-modules@9.0.0.patch sirv@3.0.2: hash: c07c56eb72faea34341d465cde2314e89db472106ed378181e3447893af6bf95 path: vite/patches/sirv@3.0.2.patch @@ -592,7 +595,7 @@ importers: version: 0.1.0 '@tsdown/css': specifier: 'catalog:' - version: 0.22.5(jiti@2.7.0)(postcss-import@16.1.1(postcss@8.5.16))(postcss-modules@9.0.1(postcss@8.5.16))(postcss@8.5.16)(sass-embedded@1.100.0(source-map-js@1.2.1))(sass@1.101.0)(tsdown@0.22.5)(tsx@4.23.0)(yaml@2.9.0) + version: 0.22.5(jiti@2.7.0)(postcss-import@16.1.1(postcss@8.5.16))(postcss-modules@9.0.0(patch_hash=0c886ee83450c5fd20d2c88b3ba2cf5d3afbb9c440755757f311439897188056)(postcss@8.5.16))(postcss@8.5.16)(sass-embedded@1.100.0(source-map-js@1.2.1))(sass@1.101.0)(tsdown@0.22.5)(tsx@4.23.0)(yaml@2.9.0) '@tsdown/exe': specifier: 'catalog:' version: 0.22.5(tsdown@0.22.5) @@ -1304,8 +1307,8 @@ importers: specifier: ^6.0.1 version: 6.0.1(jiti@2.7.0)(postcss@8.5.16)(tsx@4.23.0)(yaml@2.9.0) postcss-modules: - specifier: 9.0.1 - version: 9.0.1(postcss@8.5.16) + specifier: 9.0.0 + version: 9.0.0(patch_hash=0c886ee83450c5fd20d2c88b3ba2cf5d3afbb9c440755757f311439897188056)(postcss@8.5.16) premove: specifier: ^4.0.0 version: 4.0.0 @@ -4426,7 +4429,7 @@ packages: peerDependencies: postcss: ^8.4.0 postcss-import: ^16.0.0 - postcss-modules: 9.0.1 + postcss-modules: 9.0.0 sass: '*' sass-embedded: '*' tsdown: 0.22.5 @@ -7482,8 +7485,8 @@ packages: peerDependencies: postcss: ^8.1.0 - postcss-modules@9.0.1: - resolution: {integrity: sha512-BrSXxWSls23TzqMuplpeMRL5VHnDOLh2H9EiHNTMIdLBFumJcurDIi47TBuvkn9GsoTLAoPjv2wLzAt1wdQ2aQ==} + postcss-modules@9.0.0: + resolution: {integrity: sha512-nyZGaOkHFRvXy10ryKSE3yfh1EhwSrEX2mIhwZblTTdHbKOfH5fNhAC6eZmXB2uCy7x6Bb1Zib5KS2Yw6gSzHQ==} engines: {node: '>=20.6'} peerDependencies: postcss: ^8.0.0 @@ -11580,7 +11583,7 @@ snapshots: '@tootallnate/quickjs-emscripten@0.23.0': {} - '@tsdown/css@0.22.5(jiti@2.7.0)(postcss-import@16.1.1(postcss@8.5.16))(postcss-modules@9.0.1(postcss@8.5.16))(postcss@8.5.16)(sass-embedded@1.100.0(source-map-js@1.2.1))(sass@1.101.0)(tsdown@0.22.5)(tsx@4.23.0)(yaml@2.9.0)': + '@tsdown/css@0.22.5(jiti@2.7.0)(postcss-import@16.1.1(postcss@8.5.16))(postcss-modules@9.0.0(patch_hash=0c886ee83450c5fd20d2c88b3ba2cf5d3afbb9c440755757f311439897188056)(postcss@8.5.16))(postcss@8.5.16)(sass-embedded@1.100.0(source-map-js@1.2.1))(sass@1.101.0)(tsdown@0.22.5)(tsx@4.23.0)(yaml@2.9.0)': dependencies: lightningcss: 1.32.0 postcss-load-config: 6.0.1(jiti@2.7.0)(postcss@8.5.16)(tsx@4.23.0)(yaml@2.9.0) @@ -11589,7 +11592,7 @@ snapshots: optionalDependencies: postcss: 8.5.16 postcss-import: 16.1.1(postcss@8.5.16) - postcss-modules: 9.0.1(postcss@8.5.16) + postcss-modules: 9.0.0(patch_hash=0c886ee83450c5fd20d2c88b3ba2cf5d3afbb9c440755757f311439897188056)(postcss@8.5.16) sass: 1.101.0 sass-embedded: 1.100.0(source-map-js@1.2.1) transitivePeerDependencies: @@ -14849,7 +14852,7 @@ snapshots: icss-utils: 5.1.0(postcss@8.5.16) postcss: 8.5.16 - postcss-modules@9.0.1(postcss@8.5.16): + postcss-modules@9.0.0(patch_hash=0c886ee83450c5fd20d2c88b3ba2cf5d3afbb9c440755757f311439897188056)(postcss@8.5.16): dependencies: generic-names: 4.0.0 icss-utils: 5.1.0(postcss@8.5.16) @@ -15699,7 +15702,7 @@ snapshots: unconfig-core: 7.5.0 optionalDependencies: '@arethetypeswrong/core': 0.18.2 - '@tsdown/css': 0.22.5(jiti@2.7.0)(postcss-import@16.1.1(postcss@8.5.16))(postcss-modules@9.0.1(postcss@8.5.16))(postcss@8.5.16)(sass-embedded@1.100.0(source-map-js@1.2.1))(sass@1.101.0)(tsdown@0.22.5)(tsx@4.23.0)(yaml@2.9.0) + '@tsdown/css': 0.22.5(jiti@2.7.0)(postcss-import@16.1.1(postcss@8.5.16))(postcss-modules@9.0.0(patch_hash=0c886ee83450c5fd20d2c88b3ba2cf5d3afbb9c440755757f311439897188056)(postcss@8.5.16))(postcss@8.5.16)(sass-embedded@1.100.0(source-map-js@1.2.1))(sass@1.101.0)(tsdown@0.22.5)(tsx@4.23.0)(yaml@2.9.0) '@tsdown/exe': 0.22.5(tsdown@0.22.5) '@vitejs/devtools': 0.3.4(typescript@6.0.2)(vite@packages+core) publint: 0.3.21 diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index c77567d8c4..7451c29185 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -201,8 +201,12 @@ overrides: rolldown: workspace:rolldown@* vite: workspace:@voidzero-dev/vite-plus-core@* vite-plus: workspace:vite-plus@* - # Includes the loader type fix carried by Vite's postcss-modules@9.0.0 patch. - postcss-modules: 9.0.1 + # Vite ships a patch keyed to postcss-modules@9.0.0 (removes an obsolete + # `declare module "postcss-modules/loader"`). 9.0.1 already dropped that line + # upstream, so `^9.0.0` re-resolves to 9.0.1 and the patch goes unused, failing + # install. Pin to 9.0.0 so the still-shipped vite patch applies; functionally + # identical to 9.0.1. + postcss-modules: 9.0.0 packageExtensions: '@rollup/plugin-dynamic-import-vars': dependencies: @@ -217,6 +221,7 @@ patchedDependencies: chokidar@3.6.0: vite/patches/chokidar@3.6.0.patch dotenv-expand@13.0.0: vite/patches/dotenv-expand@13.0.0.patch sirv@3.0.2: vite/patches/sirv@3.0.2.patch + postcss-modules@9.0.0: vite/patches/postcss-modules@9.0.0.patch peerDependencyRules: allowAny: - vite