From 5f574b4c13b47caff9ef6cd2d0dd7b2136343de5 Mon Sep 17 00:00:00 2001 From: Eli <88557639+lishaduck@users.noreply.github.com> Date: Mon, 27 Oct 2025 19:47:54 -0500 Subject: [PATCH 1/2] fix: vite versions Life would be soooo much easier if Vitepress would just release Vite>5. --- packages/wxt/package.json | 2 +- pnpm-lock.yaml | 221 +++++++++++++------------------------- 2 files changed, 74 insertions(+), 149 deletions(-) diff --git a/packages/wxt/package.json b/packages/wxt/package.json index e7e1ce7d2..5e4b917e5 100644 --- a/packages/wxt/package.json +++ b/packages/wxt/package.json @@ -79,7 +79,7 @@ "publint": "^0.3.12", "typescript": "^5.9.2", "unbuild": "^3.6.1", - "vite": "^6.3.5", + "vite": "^7.1.12", "vitest": "^3.2.4", "vitest-plugin-random-seed": "^1.1.1" }, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 79147189b..da90b4a60 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -96,7 +96,7 @@ importers: version: 0.4.1(vitepress@1.6.4(@algolia/client-search@5.37.0)(@types/node@20.19.13)(postcss@8.5.6)(sass@1.92.0)(search-insights@2.17.3)(typescript@5.9.2)) vitepress-plugin-group-icons: specifier: ^1.6.3 - version: 1.6.3(markdown-it@14.1.0)(vite@7.1.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)) + version: 1.6.3(markdown-it@14.1.0)(vite@7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)) vitest-mock-extended: specifier: ^3.1.0 version: 3.1.0(typescript@5.9.2)(vitest@3.2.4(@types/debug@4.1.12)(@types/node@20.19.13)(happy-dom@18.0.1)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)) @@ -118,7 +118,7 @@ importers: devDependencies: '@aklinker1/check': specifier: ^2.1.0 - version: 2.1.0 + version: 2.1.2 '@types/ua-parser-js': specifier: ^0.7.39 version: 0.7.39 @@ -149,7 +149,7 @@ importers: devDependencies: '@aklinker1/check': specifier: ^2.1.0 - version: 2.1.0 + version: 2.1.2 oxlint: specifier: ^1.14.0 version: 1.14.0 @@ -211,7 +211,7 @@ importers: devDependencies: '@aklinker1/check': specifier: ^2.1.0 - version: 2.1.0 + version: 2.1.2 '@types/node': specifier: ^20.17.6 version: 20.19.13 @@ -232,7 +232,7 @@ importers: version: 3.2.4(@types/debug@4.1.12)(@types/node@20.19.13)(happy-dom@18.0.1)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1) vitest-plugin-random-seed: specifier: ^1.1.1 - version: 1.1.1(vite@7.1.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)) + version: 1.1.1(vite@7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)) wxt: specifier: workspace:* version: link:../wxt @@ -241,11 +241,11 @@ importers: dependencies: '@vitejs/plugin-react': specifier: ^4.4.1 || ^5.0.0 - version: 5.0.2(vite@7.1.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)) + version: 5.0.2(vite@7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)) devDependencies: '@aklinker1/check': specifier: ^2.1.0 - version: 2.1.0 + version: 2.1.2 '@types/react': specifier: ^19.1.12 version: 19.1.12 @@ -275,11 +275,11 @@ importers: dependencies: vite-plugin-solid: specifier: ^2.11.8 - version: 2.11.8(solid-js@1.9.9)(vite@7.1.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)) + version: 2.11.8(solid-js@1.9.9)(vite@7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)) devDependencies: '@aklinker1/check': specifier: ^2.1.0 - version: 2.1.0 + version: 2.1.2 publint: specifier: ^0.3.12 version: 0.3.12 @@ -300,14 +300,14 @@ importers: dependencies: '@sveltejs/vite-plugin-svelte': specifier: ^4.0.0 || ^5.0.0 || ^6.0.0 - version: 6.1.4(svelte@5.38.7)(vite@7.1.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)) + version: 6.1.4(svelte@5.38.7)(vite@7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)) svelte: specifier: '>=5' version: 5.38.7 devDependencies: '@aklinker1/check': specifier: ^2.1.0 - version: 2.1.0 + version: 2.1.2 publint: specifier: ^0.3.12 version: 0.3.12 @@ -325,11 +325,11 @@ importers: dependencies: '@vitejs/plugin-vue': specifier: ^5.2.3 || ^6.0.0 - version: 6.0.1(vite@7.1.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1))(vue@3.5.21(typescript@5.9.2)) + version: 6.0.1(vite@7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1))(vue@3.5.21(typescript@5.9.2)) devDependencies: '@aklinker1/check': specifier: ^2.1.0 - version: 2.1.0 + version: 2.1.2 publint: specifier: ^0.3.12 version: 0.3.12 @@ -347,7 +347,7 @@ importers: devDependencies: '@aklinker1/check': specifier: ^2.1.0 - version: 2.1.0 + version: 2.1.2 oxlint: specifier: ^1.14.0 version: 1.14.0 @@ -381,7 +381,7 @@ importers: devDependencies: '@aklinker1/check': specifier: ^2.1.0 - version: 2.1.0 + version: 2.1.2 '@webext-core/fake-browser': specifier: ^1.3.2 version: 1.3.2 @@ -412,7 +412,7 @@ importers: devDependencies: '@aklinker1/check': specifier: ^2.1.0 - version: 2.1.0 + version: 2.1.2 oxlint: specifier: ^1.14.0 version: 1.14.0 @@ -427,7 +427,7 @@ importers: version: 3.6.1(sass@1.92.0)(typescript@5.9.2)(vue@3.5.21(typescript@5.9.2)) unocss: specifier: ^0.64.0 || ^0.65.0 || ^65.0.0 || ^66.0.0 - version: 66.5.0(postcss@8.5.6)(vite@7.1.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)) + version: 66.5.0(postcss@8.5.6)(vite@7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)) wxt: specifier: workspace:* version: link:../wxt @@ -436,7 +436,7 @@ importers: devDependencies: '@aklinker1/check': specifier: ^2.1.0 - version: 2.1.0 + version: 2.1.2 '@types/webextension-polyfill': specifier: ^0.12.3 version: 0.12.3 @@ -593,7 +593,7 @@ importers: devDependencies: '@aklinker1/check': specifier: ^2.1.0 - version: 2.1.0 + version: 2.1.2 '@faker-js/faker': specifier: ^10.0.0 version: 10.0.0 @@ -634,14 +634,14 @@ importers: specifier: ^3.6.1 version: 3.6.1(sass@1.92.0)(typescript@5.9.2)(vue@3.5.21(typescript@5.9.2)) vite: - specifier: ^6.3.5 - version: 6.4.1(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1) + specifier: ^7.1.12 + version: 7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1) vitest: specifier: ^3.2.4 version: 3.2.4(@types/debug@4.1.12)(@types/node@20.19.13)(happy-dom@18.0.1)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1) vitest-plugin-random-seed: specifier: ^1.1.1 - version: 1.1.1(vite@6.4.1(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)) + version: 1.1.1(vite@7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)) packages/wxt-demo: dependencies: @@ -675,13 +675,13 @@ importers: version: 5.9.2 unocss: specifier: ^0.64.0 || ^0.65.0 || ^65.0.0 || ^66.0.0 - version: 66.5.0(postcss@8.5.6)(vite@7.1.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)) + version: 66.5.0(postcss@8.5.6)(vite@7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)) vitest: specifier: ^3.2.4 version: 3.2.4(@types/debug@4.1.12)(@types/node@20.19.13)(happy-dom@18.0.1)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1) vitest-plugin-random-seed: specifier: ^1.1.1 - version: 1.1.1(vite@7.1.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)) + version: 1.1.1(vite@7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)) wxt: specifier: workspace:* version: link:../wxt @@ -695,10 +695,6 @@ packages: resolution: {integrity: sha512-SL8NBNwOiTiCKjQnpOxTA4WfoeiTNhiVy1J6Ztk28xTbZQ7IL0zHbKODnEJAjuy8bfnxlChQT1ZMzjG7kBU4aw==} hasBin: true - '@aklinker1/check@2.1.0': - resolution: {integrity: sha512-x+0vxb0vHV+6ZskcLYobI6FCAFG1jwVGgKuH9pTfHLW3vlzbGSGUKcxbCuMI3Q51WZS8oE4UfB+4v5M2+0uz1g==} - hasBin: true - '@aklinker1/check@2.1.2': resolution: {integrity: sha512-mOWpH57s6379L/rOSmK21G2Dq/xznUjGVGs+VIrAC3LuRCej5urNuCwOeFUNYy9P2D44KL2dqfZZmi42LsDNVA==} hasBin: true @@ -796,9 +792,6 @@ packages: '@antfu/install-pkg@1.1.0': resolution: {integrity: sha512-MGQsmw10ZyI+EJo45CdSER4zEb+p31LpDAFp2Z3gkSd1yqVZGi0Ebx++YTEMonJy4oChEMLsxZ64j8FH6sSqtQ==} - '@antfu/utils@0.7.10': - resolution: {integrity: sha512-+562v9k4aI80m1+VuMHehNJWLOFjBnXn3tdOitzD0il5b7smkSBal4+a3oKiQTbrwMmN/TBUMDvbdoWDehgOww==} - '@antfu/utils@9.2.0': resolution: {integrity: sha512-Oq1d9BGZakE/FyoEtcNeSwM7MpDO2vUBi11RWBZXf75zPsbUVWmUs03EqkRFrcgbXyKTas0BdZWC1wcuSoqSAw==} @@ -4413,8 +4406,8 @@ packages: tinyexec@1.0.1: resolution: {integrity: sha512-5uC6DDlmeqiOwCPmK9jMSdOuZTh8bU39Ys6yidB+UTt5hfZUPGAypSgFRiEp+jbi9qH40BLDvy85jIU88wKSqw==} - tinyglobby@0.2.14: - resolution: {integrity: sha512-tX5e7OM1HnYr2+a2C/4V0htOcSQcoSTH9KgJnVvNm5zm/cyEWKJ7j7YutsH9CxMdtOkkLFy2AHrMci9IM8IPZQ==} + tinyglobby@0.2.15: + resolution: {integrity: sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==} engines: {node: '>=12.0.0'} tinypool@1.1.1: @@ -4649,48 +4642,8 @@ packages: terser: optional: true - vite@6.4.1: - resolution: {integrity: sha512-+Oxm7q9hDoLMyJOYfUYBuHQo+dkAloi33apOPP56pzj+vsdJDzr+j1NISE5pyaAuKL4A3UD34qd0lx5+kfKp2g==} - engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} - hasBin: true - peerDependencies: - '@types/node': ^18.0.0 || ^20.0.0 || >=22.0.0 - jiti: '>=1.21.0' - less: '*' - lightningcss: ^1.21.0 - sass: '*' - sass-embedded: '*' - stylus: '*' - sugarss: '*' - terser: ^5.16.0 - tsx: ^4.8.1 - yaml: ^2.4.2 - peerDependenciesMeta: - '@types/node': - optional: true - jiti: - optional: true - less: - optional: true - lightningcss: - optional: true - sass: - optional: true - sass-embedded: - optional: true - stylus: - optional: true - sugarss: - optional: true - terser: - optional: true - tsx: - optional: true - yaml: - optional: true - - vite@7.1.4: - resolution: {integrity: sha512-X5QFK4SGynAeeIt+A7ZWnApdUyHYm+pzv/8/A57LqSGcI88U6R6ipOs3uCesdc6yl7nl+zNO0t8LmqAdXcQihw==} + vite@7.1.12: + resolution: {integrity: sha512-ZWyE8YXEXqJrrSLvYgrRP7p62OziLW7xI5HYGWFzOvupfAlrLvURSzv/FyGyy0eidogEM3ujU+kUG1zuHgb6Ug==} engines: {node: ^20.19.0 || >=22.12.0} hasBin: true peerDependencies: @@ -4961,12 +4914,6 @@ snapshots: proper-lockfile: 4.1.2 yaml: 2.8.1 - '@aklinker1/check@2.1.0': - dependencies: - '@antfu/utils': 0.7.10 - ci-info: 4.3.0 - citty: 0.1.6 - '@aklinker1/check@2.1.2': dependencies: ci-info: 4.3.0 @@ -5102,8 +5049,6 @@ snapshots: package-manager-detector: 1.3.0 tinyexec: 1.0.1 - '@antfu/utils@0.7.10': {} - '@antfu/utils@9.2.0': {} '@babel/code-frame@7.27.1': @@ -5220,7 +5165,7 @@ snapshots: dependencies: '@babel/code-frame': 7.27.1 '@babel/generator': 7.28.3 - '@babel/parser': 7.27.7 + '@babel/parser': 7.28.3 '@babel/template': 7.27.2 '@babel/types': 7.28.2 debug: 4.4.1 @@ -5878,24 +5823,24 @@ snapshots: dependencies: acorn: 8.15.0 - '@sveltejs/vite-plugin-svelte-inspector@5.0.1(@sveltejs/vite-plugin-svelte@6.1.4(svelte@5.38.7)(vite@7.1.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)))(svelte@5.38.7)(vite@7.1.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1))': + '@sveltejs/vite-plugin-svelte-inspector@5.0.1(@sveltejs/vite-plugin-svelte@6.1.4(svelte@5.38.7)(vite@7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)))(svelte@5.38.7)(vite@7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1))': dependencies: - '@sveltejs/vite-plugin-svelte': 6.1.4(svelte@5.38.7)(vite@7.1.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)) + '@sveltejs/vite-plugin-svelte': 6.1.4(svelte@5.38.7)(vite@7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)) debug: 4.4.1 svelte: 5.38.7 - vite: 7.1.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1) + vite: 7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1) transitivePeerDependencies: - supports-color - '@sveltejs/vite-plugin-svelte@6.1.4(svelte@5.38.7)(vite@7.1.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1))': + '@sveltejs/vite-plugin-svelte@6.1.4(svelte@5.38.7)(vite@7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1))': dependencies: - '@sveltejs/vite-plugin-svelte-inspector': 5.0.1(@sveltejs/vite-plugin-svelte@6.1.4(svelte@5.38.7)(vite@7.1.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)))(svelte@5.38.7)(vite@7.1.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)) + '@sveltejs/vite-plugin-svelte-inspector': 5.0.1(@sveltejs/vite-plugin-svelte@6.1.4(svelte@5.38.7)(vite@7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)))(svelte@5.38.7)(vite@7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)) debug: 4.4.1 deepmerge: 4.3.1 magic-string: 0.30.18 svelte: 5.38.7 - vite: 7.1.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1) - vitefu: 1.1.1(vite@7.1.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)) + vite: 7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1) + vitefu: 1.1.1(vite@7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)) transitivePeerDependencies: - supports-color @@ -6029,13 +5974,13 @@ snapshots: '@ungap/structured-clone@1.3.0': {} - '@unocss/astro@66.5.0(vite@7.1.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1))': + '@unocss/astro@66.5.0(vite@7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1))': dependencies: '@unocss/core': 66.5.0 '@unocss/reset': 66.5.0 - '@unocss/vite': 66.5.0(vite@7.1.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)) + '@unocss/vite': 66.5.0(vite@7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)) optionalDependencies: - vite: 7.1.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1) + vite: 7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1) '@unocss/cli@66.5.0': dependencies: @@ -6050,7 +5995,7 @@ snapshots: magic-string: 0.30.18 pathe: 2.0.3 perfect-debounce: 1.0.0 - tinyglobby: 0.2.14 + tinyglobby: 0.2.15 unplugin-utils: 0.3.0 '@unocss/config@66.5.0': @@ -6080,7 +6025,7 @@ snapshots: '@unocss/rule-utils': 66.5.0 css-tree: 3.1.0 postcss: 8.5.6 - tinyglobby: 0.2.14 + tinyglobby: 0.2.15 '@unocss/preset-attributify@66.5.0': dependencies: @@ -6165,7 +6110,7 @@ snapshots: dependencies: '@unocss/core': 66.5.0 - '@unocss/vite@66.5.0(vite@7.1.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1))': + '@unocss/vite@66.5.0(vite@7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1))': dependencies: '@jridgewell/remapping': 2.3.5 '@unocss/config': 66.5.0 @@ -6174,11 +6119,11 @@ snapshots: chokidar: 3.6.0 magic-string: 0.30.18 pathe: 2.0.3 - tinyglobby: 0.2.14 + tinyglobby: 0.2.15 unplugin-utils: 0.3.0 - vite: 7.1.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1) + vite: 7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1) - '@vitejs/plugin-react@5.0.2(vite@7.1.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1))': + '@vitejs/plugin-react@5.0.2(vite@7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1))': dependencies: '@babel/core': 7.28.3 '@babel/plugin-transform-react-jsx-self': 7.27.1(@babel/core@7.28.3) @@ -6186,7 +6131,7 @@ snapshots: '@rolldown/pluginutils': 1.0.0-beta.34 '@types/babel__core': 7.20.5 react-refresh: 0.17.0 - vite: 7.1.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1) + vite: 7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1) transitivePeerDependencies: - supports-color @@ -6195,10 +6140,10 @@ snapshots: vite: 5.4.19(@types/node@20.19.13)(sass@1.92.0) vue: 3.5.21(typescript@5.9.2) - '@vitejs/plugin-vue@6.0.1(vite@7.1.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1))(vue@3.5.21(typescript@5.9.2))': + '@vitejs/plugin-vue@6.0.1(vite@7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1))(vue@3.5.21(typescript@5.9.2))': dependencies: '@rolldown/pluginutils': 1.0.0-beta.29 - vite: 7.1.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1) + vite: 7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1) vue: 3.5.21(typescript@5.9.2) '@vitest/coverage-v8@3.2.4(vitest@3.2.4(@types/debug@4.1.12)(@types/node@20.19.13)(happy-dom@18.0.1)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1))': @@ -6228,13 +6173,13 @@ snapshots: chai: 5.3.3 tinyrainbow: 2.0.0 - '@vitest/mocker@3.2.4(vite@7.1.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1))': + '@vitest/mocker@3.2.4(vite@7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1))': dependencies: '@vitest/spy': 3.2.4 estree-walker: 3.0.3 magic-string: 0.30.18 optionalDependencies: - vite: 7.1.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1) + vite: 7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1) '@vitest/pretty-format@3.2.4': dependencies: @@ -7886,7 +7831,7 @@ snapshots: postcss: 8.5.6 postcss-nested: 7.0.2(postcss@8.5.6) semver: 7.7.2 - tinyglobby: 0.2.14 + tinyglobby: 0.2.15 optionalDependencies: sass: 1.92.0 typescript: 5.9.2 @@ -8846,7 +8791,7 @@ snapshots: tinyexec@1.0.1: {} - tinyglobby@0.2.14: + tinyglobby@0.2.15: dependencies: fdir: 6.5.0(picomatch@4.0.3) picomatch: 4.0.3 @@ -8941,7 +8886,7 @@ snapshots: rollup: 4.50.0 rollup-plugin-dts: 6.2.3(rollup@4.50.0)(typescript@5.9.2) scule: 1.3.0 - tinyglobby: 0.2.14 + tinyglobby: 0.2.15 untyped: 2.0.0 optionalDependencies: typescript: 5.9.2 @@ -8973,7 +8918,7 @@ snapshots: pkg-types: 2.3.0 scule: 1.3.0 strip-literal: 3.0.0 - tinyglobby: 0.2.14 + tinyglobby: 0.2.15 unplugin: 2.3.10 unplugin-utils: 0.2.5 @@ -9002,9 +8947,9 @@ snapshots: universalify@2.0.1: {} - unocss@66.5.0(postcss@8.5.6)(vite@7.1.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)): + unocss@66.5.0(postcss@8.5.6)(vite@7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)): dependencies: - '@unocss/astro': 66.5.0(vite@7.1.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)) + '@unocss/astro': 66.5.0(vite@7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)) '@unocss/cli': 66.5.0 '@unocss/core': 66.5.0 '@unocss/postcss': 66.5.0(postcss@8.5.6) @@ -9022,9 +8967,9 @@ snapshots: '@unocss/transformer-compile-class': 66.5.0 '@unocss/transformer-directives': 66.5.0 '@unocss/transformer-variant-group': 66.5.0 - '@unocss/vite': 66.5.0(vite@7.1.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)) + '@unocss/vite': 66.5.0(vite@7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)) optionalDependencies: - vite: 7.1.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1) + vite: 7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1) transitivePeerDependencies: - postcss - supports-color @@ -9095,7 +9040,7 @@ snapshots: debug: 4.4.1 es-module-lexer: 1.7.0 pathe: 2.0.3 - vite: 6.4.1(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1) + vite: 7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1) transitivePeerDependencies: - '@types/node' - jiti @@ -9110,7 +9055,7 @@ snapshots: - tsx - yaml - vite-plugin-solid@2.11.8(solid-js@1.9.9)(vite@7.1.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)): + vite-plugin-solid@2.11.8(solid-js@1.9.9)(vite@7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)): dependencies: '@babel/core': 7.28.3 '@types/babel__core': 7.20.5 @@ -9118,8 +9063,8 @@ snapshots: merge-anything: 5.1.7 solid-js: 1.9.9 solid-refresh: 0.6.3(solid-js@1.9.9) - vite: 7.1.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1) - vitefu: 1.1.1(vite@7.1.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)) + vite: 7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1) + vitefu: 1.1.1(vite@7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)) transitivePeerDependencies: - supports-color @@ -9133,14 +9078,14 @@ snapshots: fsevents: 2.3.3 sass: 1.92.0 - vite@6.4.1(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1): + vite@7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1): dependencies: esbuild: 0.25.9 fdir: 6.5.0(picomatch@4.0.3) picomatch: 4.0.3 postcss: 8.5.6 rollup: 4.50.0 - tinyglobby: 0.2.14 + tinyglobby: 0.2.15 optionalDependencies: '@types/node': 20.19.13 fsevents: 2.3.3 @@ -9149,25 +9094,9 @@ snapshots: tsx: 4.20.5 yaml: 2.8.1 - vite@7.1.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1): - dependencies: - esbuild: 0.25.9 - fdir: 6.5.0(picomatch@4.0.3) - picomatch: 4.0.3 - postcss: 8.5.6 - rollup: 4.50.0 - tinyglobby: 0.2.14 + vitefu@1.1.1(vite@7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)): optionalDependencies: - '@types/node': 20.19.13 - fsevents: 2.3.3 - jiti: 2.5.1 - sass: 1.92.0 - tsx: 4.20.5 - yaml: 2.8.1 - - vitefu@1.1.1(vite@7.1.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)): - optionalDependencies: - vite: 7.1.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1) + vite: 7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1) vitepress-knowledge@0.4.1(vitepress@1.6.4(@algolia/client-search@5.37.0)(@types/node@20.19.13)(postcss@8.5.6)(sass@1.92.0)(search-insights@2.17.3)(typescript@5.9.2)): dependencies: @@ -9179,13 +9108,13 @@ snapshots: transitivePeerDependencies: - canvas - vitepress-plugin-group-icons@1.6.3(markdown-it@14.1.0)(vite@7.1.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)): + vitepress-plugin-group-icons@1.6.3(markdown-it@14.1.0)(vite@7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)): dependencies: '@iconify-json/logos': 1.2.9 '@iconify-json/vscode-icons': 1.2.30 '@iconify/utils': 3.0.1 markdown-it: 14.1.0 - vite: 7.1.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1) + vite: 7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1) transitivePeerDependencies: - supports-color @@ -9244,19 +9173,15 @@ snapshots: typescript: 5.9.2 vitest: 3.2.4(@types/debug@4.1.12)(@types/node@20.19.13)(happy-dom@18.0.1)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1) - vitest-plugin-random-seed@1.1.1(vite@6.4.1(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)): - dependencies: - vite: 6.4.1(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1) - - vitest-plugin-random-seed@1.1.1(vite@7.1.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)): + vitest-plugin-random-seed@1.1.1(vite@7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)): dependencies: - vite: 7.1.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1) + vite: 7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1) vitest@3.2.4(@types/debug@4.1.12)(@types/node@20.19.13)(happy-dom@18.0.1)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1): dependencies: '@types/chai': 5.2.2 '@vitest/expect': 3.2.4 - '@vitest/mocker': 3.2.4(vite@7.1.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)) + '@vitest/mocker': 3.2.4(vite@7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1)) '@vitest/pretty-format': 3.2.4 '@vitest/runner': 3.2.4 '@vitest/snapshot': 3.2.4 @@ -9271,10 +9196,10 @@ snapshots: std-env: 3.9.0 tinybench: 2.9.0 tinyexec: 0.3.2 - tinyglobby: 0.2.14 + tinyglobby: 0.2.15 tinypool: 1.1.1 tinyrainbow: 2.0.0 - vite: 7.1.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1) + vite: 7.1.12(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1) vite-node: 3.2.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1) why-is-node-running: 2.3.0 optionalDependencies: From 42a8693fa039af6376faa90b00712e93881f0975 Mon Sep 17 00:00:00 2001 From: Eli <88557639+lishaduck@users.noreply.github.com> Date: Tue, 21 Oct 2025 22:58:30 -0500 Subject: [PATCH 2/2] refactor: move to module runner Related: #1214. Related: #1044. --- packages/wxt/package.json | 3 +- packages/wxt/src/core/builders/vite/index.ts | 117 ++++++++++-------- .../plugins/removeEntrypointMainFunction.ts | 2 +- packages/wxt/src/types.ts | 2 +- pnpm-lock.yaml | 3 - 5 files changed, 69 insertions(+), 58 deletions(-) diff --git a/packages/wxt/package.json b/packages/wxt/package.json index 5e4b917e5..724f27e3f 100644 --- a/packages/wxt/package.json +++ b/packages/wxt/package.json @@ -58,11 +58,10 @@ "publish-browser-extension": "^2.3.0 || ^3.0.2", "scule": "^1.3.0", "unimport": "^3.13.1 || ^4.0.0 || ^5.0.0", - "vite-node": "^2.1.4 || ^3.1.2", "web-ext-run": "^0.2.4" }, "peerDependencies": { - "vite": "^5.4.19 || ^6.3.4 || ^7.0.0" + "vite": "^6.3.4 || ^7.0.0" }, "devDependencies": { "@aklinker1/check": "^2.1.0", diff --git a/packages/wxt/src/core/builders/vite/index.ts b/packages/wxt/src/core/builders/vite/index.ts index c798749da..57c9df06b 100644 --- a/packages/wxt/src/core/builders/vite/index.ts +++ b/packages/wxt/src/core/builders/vite/index.ts @@ -21,9 +21,6 @@ import { import { Hookable } from 'hookable'; import { toArray } from '../../utils/arrays'; import { safeVarName } from '../../utils/strings'; -import { ViteNodeServer } from 'vite-node/server'; -import { ViteNodeRunner } from 'vite-node/client'; -import { installSourcemapsSupport } from 'vite-node/source-map'; import { createExtensionEnvironment } from '../../utils/environments'; import { dirname, extname, join, relative } from 'node:path'; import fs from 'fs-extra'; @@ -71,7 +68,6 @@ export async function createViteBuilder( // TODO: Remove once https://github.com/wxt-dev/wxt/pull/1411 is merged config.legacy ??= {}; - // @ts-ignore: Untyped option: config.legacy.skipWebSocketTokenCheck = true; const server = getWxtDevServer?.(); @@ -90,8 +86,9 @@ export async function createViteBuilder( wxtPlugins.resolveAppConfig(wxtConfig), ); if ( + // TODO: Should this be migrated to use perEnvironmentState? wxtConfig.analysis.enabled && - // If included, vite-node entrypoint loader will increment the + // If included, entrypoint loader will increment the // bundleAnalysis's internal build index tracker, which we don't want !baseConfigOptions?.excludeAnalysisPlugin ) { @@ -224,8 +221,7 @@ export async function createViteBuilder( }, }; }; - - const createViteNodeImporter = async (paths: string[]) => { + const createImporterEnvironment = async (paths: string[]) => { const baseConfig = await getBaseConfig({ excludeAnalysisPlugin: true, }); @@ -238,33 +234,47 @@ export async function createViteBuilder( wxtPlugins.removeEntrypointMainFunction(wxtConfig, path), ), }; - const config = vite.mergeConfig(baseConfig, envConfig); - const server = await vite.createServer(config); - await server.pluginContainer.buildStart({}); - const node = new ViteNodeServer( - // @ts-ignore: Some weird type error... - server, + const importerConfig = vite.mergeConfig(baseConfig, envConfig); + + const config = await vite.resolveConfig( + vite.mergeConfig(importerConfig || {}, { + configFile: false, + envDir: false, + cacheDir: process.cwd(), + environments: { + inline: { + consumer: 'server', + dev: { + moduleRunnerTransform: true, + }, + resolve: { + external: true, + mainFields: [], + conditions: ['node'], + }, + }, + }, + } satisfies vite.InlineConfig), + 'serve', ); - installSourcemapsSupport({ - getSourceMap: (source) => node.getSourceMap(source), - }); - const runner = new ViteNodeRunner({ - root: server.config.root, - base: server.config.base, - // when having the server and runner in a different context, - // you will need to handle the communication between them - // and pass to this function - fetchModule(id) { - return node.fetchModule(id); - }, - resolveId(id, importer) { - return node.resolveId(id, importer); + + const environment = vite.createRunnableDevEnvironment('inline', config, { + runnerOptions: { + hmr: { + logger: false, + }, }, + hot: false, }); - return { runner, server }; + await environment.init(); + + return environment; }; - const requireDefaultExport = (path: string, mod: any) => { + function requireDefaultExport( + path: string, + mod: any, + ): asserts mod is { default: unknown } { const relativePath = relative(wxtConfig.root, path); if (mod?.default == null) { const defineFn = relativePath.includes('.content') @@ -277,36 +287,37 @@ export async function createViteBuilder( `${relativePath}: Default export not found, did you forget to call "export default ${defineFn}(...)"?`, ); } - }; + } return { name: 'Vite', version: vite.version, async importEntrypoint(path) { - const env = createExtensionEnvironment(); - const { runner, server } = await createViteNodeImporter([path]); - const res = await env.run(() => runner.executeFile(path)); - await server.close(); - requireDefaultExport(path, res); - return res.default; + const [module] = await this.importEntrypoints([path]); + + return module as any; }, async importEntrypoints(paths) { - const env = createExtensionEnvironment(); - const { runner, server } = await createViteNodeImporter(paths); - const res = await env.run(() => - Promise.all( - paths.map(async (path) => { - const mod = await runner.executeFile(path); - requireDefaultExport(path, mod); - return mod.default; - }), - ), - ); - await server.close(); - return res; + const context = createExtensionEnvironment(); + const environment = await createImporterEnvironment(paths); + + try { + return await context.run( + async () => + await Promise.all( + paths.map(async (path) => { + const module = await environment.runner.import(path); + requireDefaultExport(path, module); + return module.default as any; + }), + ), + ); + } finally { + await environment.close(); + } }, async build(group) { - let entryConfig; + let entryConfig: vite.InlineConfig; if (Array.isArray(group)) entryConfig = getMultiPageConfig(group); else if ( group.type === 'content-script-style' || @@ -315,12 +326,16 @@ export async function createViteBuilder( entryConfig = getCssConfig(group); else entryConfig = getLibModeConfig(group); - const buildConfig = vite.mergeConfig(await getBaseConfig(), entryConfig); + const buildConfig: vite.InlineConfig = vite.mergeConfig( + await getBaseConfig(), + entryConfig, + ); await hooks.callHook( 'vite:build:extendConfig', toArray(group), buildConfig, ); + const result = await vite.build(buildConfig); const chunks = getBuildOutputChunks(result); return { diff --git a/packages/wxt/src/core/builders/vite/plugins/removeEntrypointMainFunction.ts b/packages/wxt/src/core/builders/vite/plugins/removeEntrypointMainFunction.ts index 91cc0b995..419431d45 100644 --- a/packages/wxt/src/core/builders/vite/plugins/removeEntrypointMainFunction.ts +++ b/packages/wxt/src/core/builders/vite/plugins/removeEntrypointMainFunction.ts @@ -19,7 +19,7 @@ export function removeEntrypointMainFunction( handler(code, id) { if (id === absPath) { const newCode = removeMainFunctionCode(code); - config.logger.debug('vite-node transformed entrypoint', path); + config.logger.debug('transformed entrypoint', path); config.logger.debug(`Original:\n---\n${code}\n---`); config.logger.debug(`Transformed:\n---\n${newCode.code}\n---`); return newCode; diff --git a/packages/wxt/src/types.ts b/packages/wxt/src/types.ts index b1ef253bd..0caeb1099 100644 --- a/packages/wxt/src/types.ts +++ b/packages/wxt/src/types.ts @@ -1029,7 +1029,7 @@ export interface WxtBuilder { /** * Import a JS entrypoint file, returning the default export containing the options. */ - importEntrypoint(path: string): Promise; + importEntrypoint(this: WxtBuilder, path: string): Promise; /** * Import a list of JS entrypoint files, returning their options. */ diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index da90b4a60..43a9b4478 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -584,9 +584,6 @@ importers: unimport: specifier: ^3.13.1 || ^4.0.0 || ^5.0.0 version: 5.2.0 - vite-node: - specifier: ^2.1.4 || ^3.1.2 - version: 3.2.4(@types/node@20.19.13)(jiti@2.5.1)(sass@1.92.0)(tsx@4.20.5)(yaml@2.8.1) web-ext-run: specifier: ^0.2.4 version: 0.2.4