From a863345a57a5dfbae625a2676d217f7b7bbe3267 Mon Sep 17 00:00:00 2001 From: Brenley Dueck Date: Sun, 26 Oct 2025 20:51:04 -0500 Subject: [PATCH 1/8] fix static server functions --- .../src/staticFunctionMiddleware.ts | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/packages/start-static-server-functions/src/staticFunctionMiddleware.ts b/packages/start-static-server-functions/src/staticFunctionMiddleware.ts index 2a077de3e80..09939291fdb 100644 --- a/packages/start-static-server-functions/src/staticFunctionMiddleware.ts +++ b/packages/start-static-server-functions/src/staticFunctionMiddleware.ts @@ -1,5 +1,3 @@ -import fs from 'node:fs/promises' -import path from 'node:path' import { createMiddleware, getDefaultSerovalPlugins, @@ -53,11 +51,11 @@ const jsonToFilenameSafeString = (json: any) => { const sortedKeysReplacer = (key: string, value: any) => value && typeof value === 'object' && !Array.isArray(value) ? Object.keys(value) - .sort() - .reduce((acc: any, curr: string) => { - acc[curr] = value[curr] - return acc - }, {}) + .sort() + .reduce((acc: any, curr: string) => { + acc[curr] = value[curr] + return acc + }, {}) : value // Convert JSON to string with sorted keys @@ -82,6 +80,10 @@ async function addItemToCache({ response: StaticCachedResult }): Promise { { + // Dynamic imports to avoid bundling Node.js modules in the client + const fs = await import('node:fs/promises') + const path = await import('node:path') + const hash = jsonToFilenameSafeString(data) const url = await getStaticCacheUrl({ functionId, hash }) const clientUrl = process.env.TSS_CLIENT_OUTPUT_DIR! From 988f4886a73b9cb03c24a0b4037df2392ceeb84c Mon Sep 17 00:00:00 2001 From: Brenley Dueck Date: Sun, 26 Oct 2025 22:20:24 -0500 Subject: [PATCH 2/8] fix start static server functions --- packages/start-static-server-functions/package.json | 12 ++++++++++++ .../src/staticFunctionMiddleware.ts | 8 +++----- 2 files changed, 15 insertions(+), 5 deletions(-) diff --git a/packages/start-static-server-functions/package.json b/packages/start-static-server-functions/package.json index a62e4ccc372..9f5c2b776e0 100644 --- a/packages/start-static-server-functions/package.json +++ b/packages/start-static-server-functions/package.json @@ -61,5 +61,17 @@ "dependencies": { "@tanstack/start-client-core": "workspace:*", "seroval": "^1.3.2" + }, + "peerDependencies": { + "@tanstack/react-start": "workspace:*", + "@tanstack/solid-start": "workspace:*" + }, + "peerDependenciesMeta": { + "@tanstack/react-start": { + "optional": true + }, + "@tanstack/solid-start": { + "optional": true + } } } diff --git a/packages/start-static-server-functions/src/staticFunctionMiddleware.ts b/packages/start-static-server-functions/src/staticFunctionMiddleware.ts index 09939291fdb..53e2b09e7b1 100644 --- a/packages/start-static-server-functions/src/staticFunctionMiddleware.ts +++ b/packages/start-static-server-functions/src/staticFunctionMiddleware.ts @@ -1,3 +1,5 @@ +import fs from 'node:fs/promises' +import path from 'node:path' import { createMiddleware, getDefaultSerovalPlugins, @@ -80,10 +82,6 @@ async function addItemToCache({ response: StaticCachedResult }): Promise { { - // Dynamic imports to avoid bundling Node.js modules in the client - const fs = await import('node:fs/promises') - const path = await import('node:path') - const hash = jsonToFilenameSafeString(data) const url = await getStaticCacheUrl({ functionId, hash }) const clientUrl = process.env.TSS_CLIENT_OUTPUT_DIR! @@ -159,4 +157,4 @@ export const staticFunctionMiddleware = createMiddleware({ type: 'function' }) } return response - }) + }) \ No newline at end of file From 040e639b48916031e6b135c6851210827dde68ee Mon Sep 17 00:00:00 2001 From: Brenley Dueck Date: Sun, 26 Oct 2025 22:24:53 -0500 Subject: [PATCH 3/8] update lockfile --- pnpm-lock.yaml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index e368064e9d2..23b87f7a4f4 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -8432,6 +8432,12 @@ importers: packages/start-static-server-functions: dependencies: + '@tanstack/react-start': + specifier: workspace:* + version: link:../react-start + '@tanstack/solid-start': + specifier: workspace:* + version: link:../solid-start '@tanstack/start-client-core': specifier: workspace:* version: link:../start-client-core From 88d96cbbf9104d87b47fe9be7b399f58d733bb63 Mon Sep 17 00:00:00 2001 From: Brenley Dueck Date: Mon, 27 Oct 2025 16:41:06 -0500 Subject: [PATCH 4/8] Another try at fixing static-server-functions --- .../react/start-basic-static/package.json | 1 + .../react/start-basic-static/vite.config.ts | 2 + package.json | 1 + packages/react-start/src/plugin/vite.ts | 45 +++--- packages/solid-start/src/plugin/vite.ts | 12 +- pnpm-lock.yaml | 131 +++++++----------- 6 files changed, 82 insertions(+), 110 deletions(-) diff --git a/examples/react/start-basic-static/package.json b/examples/react/start-basic-static/package.json index ed4da42b351..91c52be9b79 100644 --- a/examples/react/start-basic-static/package.json +++ b/examples/react/start-basic-static/package.json @@ -13,6 +13,7 @@ "@tanstack/react-router-devtools": "^1.133.32", "@tanstack/react-start": "^1.133.32", "@tanstack/start-static-server-functions": "^1.133.28", + "@vitejs/plugin-react": "^5.1.0", "react": "^19.0.0", "react-dom": "^19.0.0", "redaxios": "^0.5.1", diff --git a/examples/react/start-basic-static/vite.config.ts b/examples/react/start-basic-static/vite.config.ts index 07451c7d66f..f8f38777676 100644 --- a/examples/react/start-basic-static/vite.config.ts +++ b/examples/react/start-basic-static/vite.config.ts @@ -1,6 +1,7 @@ import { tanstackStart } from '@tanstack/react-start/plugin/vite' import { defineConfig } from 'vite' import tsConfigPaths from 'vite-tsconfig-paths' +import viteReact from '@vitejs/plugin-react' export default defineConfig({ server: { @@ -24,5 +25,6 @@ export default defineConfig({ failOnError: false, }, }), + viteReact(), ], }) diff --git a/package.json b/package.json index 16fd83e3598..be91f10b4d5 100644 --- a/package.json +++ b/package.json @@ -71,6 +71,7 @@ }, "pnpm": { "overrides": { + "jiti": "2.6.1", "vite-plugin-dts": "4.0.3", "solid-js": "1.9.9", "react": "$react", diff --git a/packages/react-start/src/plugin/vite.ts b/packages/react-start/src/plugin/vite.ts index bb896b32b35..fb89edf4257 100644 --- a/packages/react-start/src/plugin/vite.ts +++ b/packages/react-start/src/plugin/vite.ts @@ -46,29 +46,30 @@ export function tanstackStart( }, optimizeDeps: environmentName === VITE_ENVIRONMENT_NAMES.client || - (environmentName === VITE_ENVIRONMENT_NAMES.server && - // This indicates that the server environment has opted in to dependency optimization - options.optimizeDeps?.noDiscovery === false) + (environmentName === VITE_ENVIRONMENT_NAMES.server && + // This indicates that the server environment has opted in to dependency optimization + options.optimizeDeps?.noDiscovery === false) ? { - // As `@tanstack/react-start` depends on `@tanstack/react-router`, we should exclude both. - exclude: [ - '@tanstack/react-start', - '@tanstack/react-router', - '@tanstack/react-router-devtools', - ], - include: [ - 'react', - 'react/jsx-runtime', - 'react/jsx-dev-runtime', - 'react-dom', - ...(environmentName === VITE_ENVIRONMENT_NAMES.client - ? ['react-dom/client'] - : ['react-dom/server']), - // `@tanstack/react-store` has a dependency on `use-sync-external-store`, which is CJS. - // It therefore needs to be included so that it is converted to ESM. - '@tanstack/react-router > @tanstack/react-store', - ], - } + // As `@tanstack/react-start` depends on `@tanstack/react-router`, we should exclude both. + exclude: [ + '@tanstack/react-start', + '@tanstack/react-router', + '@tanstack/react-router-devtools', + '@tanstack/start-static-server-functions' + ], + include: [ + 'react', + 'react/jsx-runtime', + 'react/jsx-dev-runtime', + 'react-dom', + ...(environmentName === VITE_ENVIRONMENT_NAMES.client + ? ['react-dom/client'] + : ['react-dom/server']), + // `@tanstack/react-store` has a dependency on `use-sync-external-store`, which is CJS. + // It therefore needs to be included so that it is converted to ESM. + '@tanstack/react-router > @tanstack/react-store', + ], + } : undefined, } }, diff --git a/packages/solid-start/src/plugin/vite.ts b/packages/solid-start/src/plugin/vite.ts index c1131dc8392..3f6f310b467 100644 --- a/packages/solid-start/src/plugin/vite.ts +++ b/packages/solid-start/src/plugin/vite.ts @@ -31,13 +31,13 @@ export function tanstackStart( return { optimizeDeps: environmentName === VITE_ENVIRONMENT_NAMES.client || - (environmentName === VITE_ENVIRONMENT_NAMES.server && - // This indicates that the server environment has opted in to dependency optimization - options.optimizeDeps?.noDiscovery === false) + (environmentName === VITE_ENVIRONMENT_NAMES.server && + // This indicates that the server environment has opted in to dependency optimization + options.optimizeDeps?.noDiscovery === false) ? { - // As `@tanstack/solid-start` depends on `@tanstack/solid-router`, we should exclude both. - exclude: ['@tanstack/solid-start', '@tanstack/solid-router'], - } + // As `@tanstack/solid-start` depends on `@tanstack/solid-router`, we should exclude both. + exclude: ['@tanstack/solid-start', '@tanstack/solid-router', '@tanstack/start-static-server-functions'], + } : undefined, } }, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 23b87f7a4f4..1fffaa2bee8 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -5,6 +5,7 @@ settings: excludeLinksFromLockfile: false overrides: + jiti: 2.6.1 vite-plugin-dts: 4.0.3 solid-js: 1.9.9 react: ^19.0.0 @@ -4821,7 +4822,7 @@ importers: version: 19.0.3(@types/react@19.0.8) '@vitejs/plugin-react': specifier: ^4.3.4 - version: 4.3.4(vite@7.1.7(@types/node@22.10.2)(jiti@1.21.7)(lightningcss@1.30.2)(terser@5.37.0)(tsx@4.20.3)(yaml@2.8.1)) + version: 4.3.4(vite@7.1.7(@types/node@22.10.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.37.0)(tsx@4.20.3)(yaml@2.8.1)) autoprefixer: specifier: ^10.4.20 version: 10.4.20(postcss@8.5.3) @@ -4836,10 +4837,10 @@ importers: version: 5.8.2 vite: specifier: ^7.1.7 - version: 7.1.7(@types/node@22.10.2)(jiti@1.21.7)(lightningcss@1.30.2)(terser@5.37.0)(tsx@4.20.3)(yaml@2.8.1) + version: 7.1.7(@types/node@22.10.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.37.0)(tsx@4.20.3)(yaml@2.8.1) vite-plugin-dts: specifier: 4.0.3 - version: 4.0.3(@types/node@22.10.2)(rollup@4.52.5)(typescript@5.8.2)(vite@7.1.7(@types/node@22.10.2)(jiti@1.21.7)(lightningcss@1.30.2)(terser@5.37.0)(tsx@4.20.3)(yaml@2.8.1)) + version: 4.0.3(@types/node@22.10.2)(rollup@4.52.5)(typescript@5.8.2)(vite@7.1.7(@types/node@22.10.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.37.0)(tsx@4.20.3)(yaml@2.8.1)) examples/react/router-monorepo-react-query/packages/post-feature: dependencies: @@ -5683,6 +5684,9 @@ importers: '@tanstack/start-static-server-functions': specifier: workspace:* version: link:../../../packages/start-static-server-functions + '@vitejs/plugin-react': + specifier: ^5.1.0 + version: 5.1.0(vite@7.1.7(@types/node@22.10.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.37.0)(tsx@4.20.3)(yaml@2.8.1)) react: specifier: ^19.0.0 version: 19.0.0 @@ -11537,6 +11541,9 @@ packages: '@rolldown/pluginutils@1.0.0-beta.40': resolution: {integrity: sha512-s3GeJKSQOwBlzdUrj4ISjJj5SfSh+aqn0wjOar4Bx95iV1ETI7F6S/5hLcfAxZ9kXDcyrAkxPlqmd1ZITttf+w==} + '@rolldown/pluginutils@1.0.0-beta.43': + resolution: {integrity: sha512-5Uxg7fQUCmfhax7FJke2+8B6cqgeUJUD9o2uXIKXhD+mG0mL6NObmVoi9wXEU1tY89mZKgAYA6fTbftx3q2ZPQ==} + '@rollup/plugin-alias@5.1.1': resolution: {integrity: sha512-PR9zDb+rOzkRb2VD+EuKB7UC41vU5DIwZ5qqCpk0KJudcWAyi8rvYOhS7+L5aZCspw1stTViLgN5v6FF1p5cgQ==} engines: {node: '>=14.0.0'} @@ -13215,6 +13222,12 @@ packages: peerDependencies: vite: ^7.1.7 + '@vitejs/plugin-react@5.1.0': + resolution: {integrity: sha512-4LuWrg7EKWgQaMJfnN+wcmbAW+VSsCmqGohftWjuct47bv8uE4n/nPpq4XjJPsxgq00GGG5J8dvBczp8uxScew==} + engines: {node: ^20.19.0 || >=22.12.0} + peerDependencies: + vite: ^7.1.7 + '@vitest/browser@3.0.6': resolution: {integrity: sha512-FqKwCAkALZfNzGNx4YvRJa6HCWM2USWTjOdNO2egI/s6+3WkIl4xAlYISOARLJLDAI3yCXcpTtuUUF39K8TQgw==} peerDependencies: @@ -14870,7 +14883,7 @@ packages: engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} hasBin: true peerDependencies: - jiti: '*' + jiti: 2.6.1 peerDependenciesMeta: jiti: optional: true @@ -15770,18 +15783,6 @@ packages: resolution: {integrity: sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==} engines: {node: '>= 10.13.0'} - jiti@1.21.7: - resolution: {integrity: sha512-/imKNG4EbWNrVjoNC/1H5/9GFy+tqjGBHCaSsN+P2RnPqjsLmv6UD3Ej+Kj8nBWaRAwyk7kK5ZUc+OEatnTR3A==} - hasBin: true - - jiti@2.4.2: - resolution: {integrity: sha512-rg9zJN+G4n2nfJl5MW3BMygZX56zKPNVEYYqq7adpmMh4Jn2QNEwhvQlFy6jPVdcod7txZtKHWnyZiA3a0zP7A==} - hasBin: true - - jiti@2.6.0: - resolution: {integrity: sha512-VXe6RjJkBPj0ohtqaO8vSWP3ZhAKo66fKrFNCll4BTcwljPLz03pCbaNKfzGP5MbrCYcbJ7v0nOYYwUzTEIdXQ==} - hasBin: true - jiti@2.6.1: resolution: {integrity: sha512-ekilCSN1jwRvIbgeg/57YFh8qQDNbwDb9xT/qu2DAHbFFZUicIl4ygVaAvzveMhMVr3LnpSKTNnwt8PoOfmKhQ==} hasBin: true @@ -17011,7 +17012,7 @@ packages: resolution: {integrity: sha512-oPtTM4oerL+UXmx+93ytZVN82RrlY/wPUV8IeDxFrzIjXOLF1pN+EmKPLbubvKHT2HC20xXsCAH2Z+CKV6Oz/g==} engines: {node: '>= 18'} peerDependencies: - jiti: '>=1.21.0' + jiti: 2.6.1 postcss: '>=8.0.9' tsx: ^4.8.1 yaml: ^2.4.2 @@ -17237,6 +17238,10 @@ packages: resolution: {integrity: sha512-z6F7K9bV85EfseRCp2bzrpyQ0Gkw1uLoCel9XBVWPg/TjRj94SkJzUTGfOa4bs7iJvBWtQG0Wq7wnI0syw3EBQ==} engines: {node: '>=0.10.0'} + react-refresh@0.18.0: + resolution: {integrity: sha512-QgT5//D3jfjJb6Gsjxv0Slpj23ip+HtOpnNgnb2S5zU3CB26G/IDPGoy4RJB42wzFE46DRsstbW6tKHoKbhAxw==} + engines: {node: '>=0.10.0'} + react-remove-scroll-bar@2.3.8: resolution: {integrity: sha512-9r+yi9+mgU33AKcj6IbT9oRCO78WriSj6t/cF8DWBZJ9aOGPOTEDvdUDz1FwKim7QXWwmHqtdHnRJfhAxEG46Q==} engines: {node: '>=10'} @@ -18592,7 +18597,7 @@ packages: hasBin: true peerDependencies: '@types/node': 22.10.2 - jiti: '>=1.21.0' + jiti: 2.6.1 less: ^4.0.0 lightningcss: ^1.21.0 sass: ^1.70.0 @@ -22313,6 +22318,8 @@ snapshots: '@rolldown/pluginutils@1.0.0-beta.40': {} + '@rolldown/pluginutils@1.0.0-beta.43': {} + '@rollup/plugin-alias@5.1.1(rollup@4.52.2)': optionalDependencies: rollup: 4.52.2 @@ -23072,7 +23079,7 @@ snapshots: dependencies: '@jridgewell/remapping': 2.3.5 enhanced-resolve: 5.18.3 - jiti: 2.6.0 + jiti: 2.6.1 lightningcss: 1.30.1 magic-string: 0.30.19 source-map-js: 1.2.1 @@ -23092,7 +23099,7 @@ snapshots: dependencies: '@ampproject/remapping': 2.3.0 enhanced-resolve: 5.18.1 - jiti: 2.4.2 + jiti: 2.6.1 lightningcss: 1.29.2 magic-string: 0.30.17 source-map-js: 1.2.1 @@ -24023,17 +24030,6 @@ snapshots: - rollup - supports-color - '@vitejs/plugin-react@4.3.4(vite@7.1.7(@types/node@22.10.2)(jiti@1.21.7)(lightningcss@1.30.2)(terser@5.37.0)(tsx@4.20.3)(yaml@2.8.1))': - dependencies: - '@babel/core': 7.27.4 - '@babel/plugin-transform-react-jsx-self': 7.25.9(@babel/core@7.27.4) - '@babel/plugin-transform-react-jsx-source': 7.25.9(@babel/core@7.27.4) - '@types/babel__core': 7.20.5 - react-refresh: 0.14.2 - vite: 7.1.7(@types/node@22.10.2)(jiti@1.21.7)(lightningcss@1.30.2)(terser@5.37.0)(tsx@4.20.3)(yaml@2.8.1) - transitivePeerDependencies: - - supports-color - '@vitejs/plugin-react@4.3.4(vite@7.1.7(@types/node@22.10.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.37.0)(tsx@4.20.3)(yaml@2.8.1))': dependencies: '@babel/core': 7.27.4 @@ -24081,6 +24077,18 @@ snapshots: transitivePeerDependencies: - supports-color + '@vitejs/plugin-react@5.1.0(vite@7.1.7(@types/node@22.10.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.37.0)(tsx@4.20.3)(yaml@2.8.1))': + dependencies: + '@babel/core': 7.28.4 + '@babel/plugin-transform-react-jsx-self': 7.27.1(@babel/core@7.28.4) + '@babel/plugin-transform-react-jsx-source': 7.27.1(@babel/core@7.28.4) + '@rolldown/pluginutils': 1.0.0-beta.43 + '@types/babel__core': 7.20.5 + react-refresh: 0.18.0 + vite: 7.1.7(@types/node@22.10.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.37.0)(tsx@4.20.3)(yaml@2.8.1) + transitivePeerDependencies: + - supports-color + '@vitest/browser@3.0.6(@types/node@22.10.2)(playwright@1.52.0)(typescript@5.9.2)(vite@7.1.7(@types/node@22.10.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.37.0)(tsx@4.20.3)(yaml@2.8.1))(vitest@3.2.4)': dependencies: '@testing-library/dom': 10.4.1 @@ -24823,7 +24831,7 @@ snapshots: dotenv: 17.2.2 exsolve: 1.0.7 giget: 2.0.0 - jiti: 2.6.0 + jiti: 2.6.1 ohash: 2.0.11 pathe: 2.0.3 perfect-debounce: 2.0.0 @@ -26968,12 +26976,6 @@ snapshots: merge-stream: 2.0.0 supports-color: 8.1.1 - jiti@1.21.7: {} - - jiti@2.4.2: {} - - jiti@2.6.0: {} - jiti@2.6.1: {} jju@1.4.0: {} @@ -27336,7 +27338,7 @@ snapshots: get-port-please: 3.2.0 h3: 1.15.4 http-shutdown: 1.2.2 - jiti: 2.6.0 + jiti: 2.6.1 mlly: 1.8.0 node-forge: 1.3.1 pathe: 1.1.2 @@ -27821,7 +27823,7 @@ snapshots: hookable: 5.5.3 httpxy: 0.1.7 ioredis: 5.8.0 - jiti: 2.6.0 + jiti: 2.6.1 klona: 2.0.6 knitwork: 1.2.0 listhen: 1.9.0 @@ -28298,11 +28300,11 @@ snapshots: camelcase-css: 2.0.1 postcss: 8.5.6 - postcss-load-config@6.0.1(jiti@1.21.7)(postcss@8.5.6)(tsx@4.20.3)(yaml@2.8.1): + postcss-load-config@6.0.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.20.3)(yaml@2.8.1): dependencies: lilconfig: 3.1.3 optionalDependencies: - jiti: 1.21.7 + jiti: 2.6.1 postcss: 8.5.6 tsx: 4.20.3 yaml: 2.8.1 @@ -28578,6 +28580,8 @@ snapshots: react-refresh@0.17.0: {} + react-refresh@0.18.0: {} + react-remove-scroll-bar@2.3.8(@types/react@19.0.8)(react@19.0.0): dependencies: react: 19.0.0 @@ -29367,7 +29371,7 @@ snapshots: fast-glob: 3.3.3 glob-parent: 6.0.2 is-glob: 4.0.3 - jiti: 1.21.7 + jiti: 2.6.1 lilconfig: 3.1.3 micromatch: 4.0.8 normalize-path: 3.0.0 @@ -29376,7 +29380,7 @@ snapshots: postcss: 8.5.6 postcss-import: 15.1.0(postcss@8.5.6) postcss-js: 4.1.0(postcss@8.5.6) - postcss-load-config: 6.0.1(jiti@1.21.7)(postcss@8.5.6)(tsx@4.20.3)(yaml@2.8.1) + postcss-load-config: 6.0.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.20.3)(yaml@2.8.1) postcss-nested: 6.2.0(postcss@8.5.6) postcss-selector-parser: 6.1.2 resolve: 1.22.10 @@ -29846,7 +29850,7 @@ snapshots: dependencies: citty: 0.1.6 defu: 6.1.4 - jiti: 2.6.0 + jiti: 2.6.1 knitwork: 1.2.0 scule: 1.3.0 @@ -29961,26 +29965,6 @@ snapshots: - tsx - yaml - vite-plugin-dts@4.0.3(@types/node@22.10.2)(rollup@4.52.5)(typescript@5.8.2)(vite@7.1.7(@types/node@22.10.2)(jiti@1.21.7)(lightningcss@1.30.2)(terser@5.37.0)(tsx@4.20.3)(yaml@2.8.1)): - dependencies: - '@microsoft/api-extractor': 7.47.4(@types/node@22.10.2) - '@rollup/pluginutils': 5.1.4(rollup@4.52.5) - '@volar/typescript': 2.4.11 - '@vue/language-core': 2.0.29(typescript@5.8.2) - compare-versions: 6.1.1 - debug: 4.4.3 - kolorist: 1.8.0 - local-pkg: 0.5.1 - magic-string: 0.30.19 - typescript: 5.8.2 - vue-tsc: 2.0.29(typescript@5.8.2) - optionalDependencies: - vite: 7.1.7(@types/node@22.10.2)(jiti@1.21.7)(lightningcss@1.30.2)(terser@5.37.0)(tsx@4.20.3)(yaml@2.8.1) - transitivePeerDependencies: - - '@types/node' - - rollup - - supports-color - vite-plugin-dts@4.0.3(@types/node@22.10.2)(rollup@4.52.5)(typescript@5.8.2)(vite@7.1.7(@types/node@22.10.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.37.0)(tsx@4.20.3)(yaml@2.8.1)): dependencies: '@microsoft/api-extractor': 7.47.4(@types/node@22.10.2) @@ -30073,23 +30057,6 @@ snapshots: - supports-color - typescript - vite@7.1.7(@types/node@22.10.2)(jiti@1.21.7)(lightningcss@1.30.2)(terser@5.37.0)(tsx@4.20.3)(yaml@2.8.1): - dependencies: - esbuild: 0.25.10 - fdir: 6.5.0(picomatch@4.0.3) - picomatch: 4.0.3 - postcss: 8.5.6 - rollup: 4.52.2 - tinyglobby: 0.2.15 - optionalDependencies: - '@types/node': 22.10.2 - fsevents: 2.3.3 - jiti: 1.21.7 - lightningcss: 1.30.2 - terser: 5.37.0 - tsx: 4.20.3 - yaml: 2.8.1 - vite@7.1.7(@types/node@22.10.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.37.0)(tsx@4.20.3)(yaml@2.8.1): dependencies: esbuild: 0.25.10 From ad0e70200cc52320d0c189d4f7c903c257e842a2 Mon Sep 17 00:00:00 2001 From: Brenley Dueck Date: Mon, 27 Oct 2025 16:43:17 -0500 Subject: [PATCH 5/8] trigger Build From 7ea9702d25d36a7c0af3f3398c164b51e010374b Mon Sep 17 00:00:00 2001 From: Brenley Dueck Date: Mon, 27 Oct 2025 17:50:35 -0500 Subject: [PATCH 6/8] remove jiti override --- package.json | 1 - 1 file changed, 1 deletion(-) diff --git a/package.json b/package.json index be91f10b4d5..16fd83e3598 100644 --- a/package.json +++ b/package.json @@ -71,7 +71,6 @@ }, "pnpm": { "overrides": { - "jiti": "2.6.1", "vite-plugin-dts": "4.0.3", "solid-js": "1.9.9", "react": "$react", From 95ba15644eea40794456bc16c6e18deb45271593 Mon Sep 17 00:00:00 2001 From: Brenley Dueck Date: Mon, 27 Oct 2025 17:51:18 -0500 Subject: [PATCH 7/8] update lockfile --- pnpm-lock.yaml | 75 ++++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 64 insertions(+), 11 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 1fffaa2bee8..b18e36685b3 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -5,7 +5,6 @@ settings: excludeLinksFromLockfile: false overrides: - jiti: 2.6.1 vite-plugin-dts: 4.0.3 solid-js: 1.9.9 react: ^19.0.0 @@ -4822,7 +4821,7 @@ importers: version: 19.0.3(@types/react@19.0.8) '@vitejs/plugin-react': specifier: ^4.3.4 - version: 4.3.4(vite@7.1.7(@types/node@22.10.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.37.0)(tsx@4.20.3)(yaml@2.8.1)) + version: 4.3.4(vite@7.1.7(@types/node@22.10.2)(jiti@1.21.7)(lightningcss@1.30.2)(terser@5.37.0)(tsx@4.20.3)(yaml@2.8.1)) autoprefixer: specifier: ^10.4.20 version: 10.4.20(postcss@8.5.3) @@ -4837,10 +4836,10 @@ importers: version: 5.8.2 vite: specifier: ^7.1.7 - version: 7.1.7(@types/node@22.10.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.37.0)(tsx@4.20.3)(yaml@2.8.1) + version: 7.1.7(@types/node@22.10.2)(jiti@1.21.7)(lightningcss@1.30.2)(terser@5.37.0)(tsx@4.20.3)(yaml@2.8.1) vite-plugin-dts: specifier: 4.0.3 - version: 4.0.3(@types/node@22.10.2)(rollup@4.52.5)(typescript@5.8.2)(vite@7.1.7(@types/node@22.10.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.37.0)(tsx@4.20.3)(yaml@2.8.1)) + version: 4.0.3(@types/node@22.10.2)(rollup@4.52.5)(typescript@5.8.2)(vite@7.1.7(@types/node@22.10.2)(jiti@1.21.7)(lightningcss@1.30.2)(terser@5.37.0)(tsx@4.20.3)(yaml@2.8.1)) examples/react/router-monorepo-react-query/packages/post-feature: dependencies: @@ -14883,7 +14882,7 @@ packages: engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} hasBin: true peerDependencies: - jiti: 2.6.1 + jiti: '*' peerDependenciesMeta: jiti: optional: true @@ -15783,6 +15782,10 @@ packages: resolution: {integrity: sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==} engines: {node: '>= 10.13.0'} + jiti@1.21.7: + resolution: {integrity: sha512-/imKNG4EbWNrVjoNC/1H5/9GFy+tqjGBHCaSsN+P2RnPqjsLmv6UD3Ej+Kj8nBWaRAwyk7kK5ZUc+OEatnTR3A==} + hasBin: true + jiti@2.6.1: resolution: {integrity: sha512-ekilCSN1jwRvIbgeg/57YFh8qQDNbwDb9xT/qu2DAHbFFZUicIl4ygVaAvzveMhMVr3LnpSKTNnwt8PoOfmKhQ==} hasBin: true @@ -17012,7 +17015,7 @@ packages: resolution: {integrity: sha512-oPtTM4oerL+UXmx+93ytZVN82RrlY/wPUV8IeDxFrzIjXOLF1pN+EmKPLbubvKHT2HC20xXsCAH2Z+CKV6Oz/g==} engines: {node: '>= 18'} peerDependencies: - jiti: 2.6.1 + jiti: '>=1.21.0' postcss: '>=8.0.9' tsx: ^4.8.1 yaml: ^2.4.2 @@ -18597,7 +18600,7 @@ packages: hasBin: true peerDependencies: '@types/node': 22.10.2 - jiti: 2.6.1 + jiti: '>=1.21.0' less: ^4.0.0 lightningcss: ^1.21.0 sass: ^1.70.0 @@ -24030,6 +24033,17 @@ snapshots: - rollup - supports-color + '@vitejs/plugin-react@4.3.4(vite@7.1.7(@types/node@22.10.2)(jiti@1.21.7)(lightningcss@1.30.2)(terser@5.37.0)(tsx@4.20.3)(yaml@2.8.1))': + dependencies: + '@babel/core': 7.27.4 + '@babel/plugin-transform-react-jsx-self': 7.25.9(@babel/core@7.27.4) + '@babel/plugin-transform-react-jsx-source': 7.25.9(@babel/core@7.27.4) + '@types/babel__core': 7.20.5 + react-refresh: 0.14.2 + vite: 7.1.7(@types/node@22.10.2)(jiti@1.21.7)(lightningcss@1.30.2)(terser@5.37.0)(tsx@4.20.3)(yaml@2.8.1) + transitivePeerDependencies: + - supports-color + '@vitejs/plugin-react@4.3.4(vite@7.1.7(@types/node@22.10.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.37.0)(tsx@4.20.3)(yaml@2.8.1))': dependencies: '@babel/core': 7.27.4 @@ -26976,6 +26990,8 @@ snapshots: merge-stream: 2.0.0 supports-color: 8.1.1 + jiti@1.21.7: {} + jiti@2.6.1: {} jju@1.4.0: {} @@ -28300,11 +28316,11 @@ snapshots: camelcase-css: 2.0.1 postcss: 8.5.6 - postcss-load-config@6.0.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.20.3)(yaml@2.8.1): + postcss-load-config@6.0.1(jiti@1.21.7)(postcss@8.5.6)(tsx@4.20.3)(yaml@2.8.1): dependencies: lilconfig: 3.1.3 optionalDependencies: - jiti: 2.6.1 + jiti: 1.21.7 postcss: 8.5.6 tsx: 4.20.3 yaml: 2.8.1 @@ -29371,7 +29387,7 @@ snapshots: fast-glob: 3.3.3 glob-parent: 6.0.2 is-glob: 4.0.3 - jiti: 2.6.1 + jiti: 1.21.7 lilconfig: 3.1.3 micromatch: 4.0.8 normalize-path: 3.0.0 @@ -29380,7 +29396,7 @@ snapshots: postcss: 8.5.6 postcss-import: 15.1.0(postcss@8.5.6) postcss-js: 4.1.0(postcss@8.5.6) - postcss-load-config: 6.0.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.20.3)(yaml@2.8.1) + postcss-load-config: 6.0.1(jiti@1.21.7)(postcss@8.5.6)(tsx@4.20.3)(yaml@2.8.1) postcss-nested: 6.2.0(postcss@8.5.6) postcss-selector-parser: 6.1.2 resolve: 1.22.10 @@ -29965,6 +29981,26 @@ snapshots: - tsx - yaml + vite-plugin-dts@4.0.3(@types/node@22.10.2)(rollup@4.52.5)(typescript@5.8.2)(vite@7.1.7(@types/node@22.10.2)(jiti@1.21.7)(lightningcss@1.30.2)(terser@5.37.0)(tsx@4.20.3)(yaml@2.8.1)): + dependencies: + '@microsoft/api-extractor': 7.47.4(@types/node@22.10.2) + '@rollup/pluginutils': 5.1.4(rollup@4.52.5) + '@volar/typescript': 2.4.11 + '@vue/language-core': 2.0.29(typescript@5.8.2) + compare-versions: 6.1.1 + debug: 4.4.3 + kolorist: 1.8.0 + local-pkg: 0.5.1 + magic-string: 0.30.19 + typescript: 5.8.2 + vue-tsc: 2.0.29(typescript@5.8.2) + optionalDependencies: + vite: 7.1.7(@types/node@22.10.2)(jiti@1.21.7)(lightningcss@1.30.2)(terser@5.37.0)(tsx@4.20.3)(yaml@2.8.1) + transitivePeerDependencies: + - '@types/node' + - rollup + - supports-color + vite-plugin-dts@4.0.3(@types/node@22.10.2)(rollup@4.52.5)(typescript@5.8.2)(vite@7.1.7(@types/node@22.10.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.37.0)(tsx@4.20.3)(yaml@2.8.1)): dependencies: '@microsoft/api-extractor': 7.47.4(@types/node@22.10.2) @@ -30057,6 +30093,23 @@ snapshots: - supports-color - typescript + vite@7.1.7(@types/node@22.10.2)(jiti@1.21.7)(lightningcss@1.30.2)(terser@5.37.0)(tsx@4.20.3)(yaml@2.8.1): + dependencies: + esbuild: 0.25.10 + fdir: 6.5.0(picomatch@4.0.3) + picomatch: 4.0.3 + postcss: 8.5.6 + rollup: 4.52.2 + tinyglobby: 0.2.15 + optionalDependencies: + '@types/node': 22.10.2 + fsevents: 2.3.3 + jiti: 1.21.7 + lightningcss: 1.30.2 + terser: 5.37.0 + tsx: 4.20.3 + yaml: 2.8.1 + vite@7.1.7(@types/node@22.10.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.37.0)(tsx@4.20.3)(yaml@2.8.1): dependencies: esbuild: 0.25.10 From 5632c0f3b5272852b21d75497afa6fa3c0a9a0ba Mon Sep 17 00:00:00 2001 From: Brenley Dueck Date: Mon, 27 Oct 2025 17:56:31 -0500 Subject: [PATCH 8/8] fix formatting --- packages/react-start/src/plugin/vite.ts | 46 +++++++++---------- packages/solid-start/src/plugin/vite.ts | 16 ++++--- .../src/staticFunctionMiddleware.ts | 12 ++--- 3 files changed, 39 insertions(+), 35 deletions(-) diff --git a/packages/react-start/src/plugin/vite.ts b/packages/react-start/src/plugin/vite.ts index fb89edf4257..4288e9dce02 100644 --- a/packages/react-start/src/plugin/vite.ts +++ b/packages/react-start/src/plugin/vite.ts @@ -46,30 +46,30 @@ export function tanstackStart( }, optimizeDeps: environmentName === VITE_ENVIRONMENT_NAMES.client || - (environmentName === VITE_ENVIRONMENT_NAMES.server && - // This indicates that the server environment has opted in to dependency optimization - options.optimizeDeps?.noDiscovery === false) + (environmentName === VITE_ENVIRONMENT_NAMES.server && + // This indicates that the server environment has opted in to dependency optimization + options.optimizeDeps?.noDiscovery === false) ? { - // As `@tanstack/react-start` depends on `@tanstack/react-router`, we should exclude both. - exclude: [ - '@tanstack/react-start', - '@tanstack/react-router', - '@tanstack/react-router-devtools', - '@tanstack/start-static-server-functions' - ], - include: [ - 'react', - 'react/jsx-runtime', - 'react/jsx-dev-runtime', - 'react-dom', - ...(environmentName === VITE_ENVIRONMENT_NAMES.client - ? ['react-dom/client'] - : ['react-dom/server']), - // `@tanstack/react-store` has a dependency on `use-sync-external-store`, which is CJS. - // It therefore needs to be included so that it is converted to ESM. - '@tanstack/react-router > @tanstack/react-store', - ], - } + // As `@tanstack/react-start` depends on `@tanstack/react-router`, we should exclude both. + exclude: [ + '@tanstack/react-start', + '@tanstack/react-router', + '@tanstack/react-router-devtools', + '@tanstack/start-static-server-functions', + ], + include: [ + 'react', + 'react/jsx-runtime', + 'react/jsx-dev-runtime', + 'react-dom', + ...(environmentName === VITE_ENVIRONMENT_NAMES.client + ? ['react-dom/client'] + : ['react-dom/server']), + // `@tanstack/react-store` has a dependency on `use-sync-external-store`, which is CJS. + // It therefore needs to be included so that it is converted to ESM. + '@tanstack/react-router > @tanstack/react-store', + ], + } : undefined, } }, diff --git a/packages/solid-start/src/plugin/vite.ts b/packages/solid-start/src/plugin/vite.ts index 3f6f310b467..d56ff2d5a24 100644 --- a/packages/solid-start/src/plugin/vite.ts +++ b/packages/solid-start/src/plugin/vite.ts @@ -31,13 +31,17 @@ export function tanstackStart( return { optimizeDeps: environmentName === VITE_ENVIRONMENT_NAMES.client || - (environmentName === VITE_ENVIRONMENT_NAMES.server && - // This indicates that the server environment has opted in to dependency optimization - options.optimizeDeps?.noDiscovery === false) + (environmentName === VITE_ENVIRONMENT_NAMES.server && + // This indicates that the server environment has opted in to dependency optimization + options.optimizeDeps?.noDiscovery === false) ? { - // As `@tanstack/solid-start` depends on `@tanstack/solid-router`, we should exclude both. - exclude: ['@tanstack/solid-start', '@tanstack/solid-router', '@tanstack/start-static-server-functions'], - } + // As `@tanstack/solid-start` depends on `@tanstack/solid-router`, we should exclude both. + exclude: [ + '@tanstack/solid-start', + '@tanstack/solid-router', + '@tanstack/start-static-server-functions', + ], + } : undefined, } }, diff --git a/packages/start-static-server-functions/src/staticFunctionMiddleware.ts b/packages/start-static-server-functions/src/staticFunctionMiddleware.ts index 53e2b09e7b1..2a077de3e80 100644 --- a/packages/start-static-server-functions/src/staticFunctionMiddleware.ts +++ b/packages/start-static-server-functions/src/staticFunctionMiddleware.ts @@ -53,11 +53,11 @@ const jsonToFilenameSafeString = (json: any) => { const sortedKeysReplacer = (key: string, value: any) => value && typeof value === 'object' && !Array.isArray(value) ? Object.keys(value) - .sort() - .reduce((acc: any, curr: string) => { - acc[curr] = value[curr] - return acc - }, {}) + .sort() + .reduce((acc: any, curr: string) => { + acc[curr] = value[curr] + return acc + }, {}) : value // Convert JSON to string with sorted keys @@ -157,4 +157,4 @@ export const staticFunctionMiddleware = createMiddleware({ type: 'function' }) } return response - }) \ No newline at end of file + })