TanStack Start `prerender` errors without sitemap enabled
Which project does this relate to?
Start
Describe the bug
The prerender option without a sitemap throws this error:
error during build:
Error: Sitemap is not enabled
at buildSitemap (file:///Users/jan/code/privat/tests/prerender-no-sitemap/node_modules/@tanstack/start-plugin-core/dist/esm/build-sitemap.js:75:11)
at postServerBuild (file:///Users/jan/code/privat/tests/prerender-no-sitemap/node_modules/@tanstack/start-plugin-core/dist/esm/post-server-build.js:46:5)
at async Object.buildApp (file:///Users/jan/code/privat/tests/prerender-no-sitemap/node_modules/@tanstack/start-plugin-core/dist/esm/plugin.js:245:15)
at async Object.buildApp (file:///Users/jan/code/privat/tests/prerender-no-sitemap/node_modules/vite/dist/node/chunks/dep-Chhhsdoe.js:34251:38)
at async CAC.<anonymous> (file:///Users/jan/code/privat/tests/prerender-no-sitemap/node_modules/vite/dist/node/cli.js:641:3)
Config:
tanstackStart({
prerender: {
enabled: true,
crawlLinks: false,
},
pages: [{path: "/"}],
sitemap: {
enabled: false,
}
}),
Your Example Website or App
https://github.com/checkerschaf/tanstack-start-prerender-no-sitemap
Steps to Reproduce the Bug or Issue
- Install reproduction repo
-
npm install -
npm run build
See the build fail.
Expected behavior
Build should work without errors. Static HTML should be output but no sitemap.xml file.
Screenshots or Videos
No response
Platform
- Router / Start Version: 1.132.51
- OS: macOS
- Bundler: Vite and Rolldown, same behaviour
Additional context
No response
+1
tanstack start 1.134.6, seem like it doesn't respect prerender setting in vite.config.ts vite.config.ts
tanstackStart({
prerender: {
enabled: false,
},
spa: {
enabled: true,
prerender: {
// ?? must enable this to get loader context working??
enabled: false,
},
},
sitemap: {
enabled: false,
},
}),
nitro({
config: {
preset: 'node-server',
compatibilityDate: 'latest',
},
})
vite build output:
[prerender] Prerendering pages...
[prerender] Concurrency: 8
[prerender] Crawling: /
[prerender] Prerendered 1 pages:
[prerender] - /
error during build:
Error: Sitemap is not enabled
at buildSitemap
+1
Same thing for:
"@tanstack/solid-router": "1.139.3",
"@tanstack/solid-start": "1.139.3",
My config:
tanstackStart({
prerender: {
enabled: false,
},
sitemap: {
host: "http://localhost:3000",
},
spa: {
enabled: true,
prerender: {
enabled: false,
},
},
}),
Result config used during the build:
{
srcDirectory: 'src',
start: {},
router: {
target: 'solid',
routeFileIgnorePrefix: '-',
routesDirectory: '...',
quoteStyle: 'single',
semicolons: false,
disableLogging: false,
routeTreeFileHeader: [
'/* eslint-disable */',
'// @ts-nocheck',
'// noinspection JSUnusedGlobalSymbols'
],
indexToken: 'index',
routeToken: 'route',
generatedRouteTree: '...',
disableTypes: false,
addExtensions: false,
enableRouteTreeFormatting: true,
tmpDir: '...',
importRoutesUsingAbsolutePaths: false,
basepath: ''
},
client: { base: '/_build' },
server: {},
serverFns: { base: '/_serverFn' },
pages: [ { path: '/', prerender: [Object], sitemap: [Object] } ],
sitemap: {
enabled: true,
host: 'http://localhost:3000',
outputPath: 'sitemap.xml'
},
prerender: { enabled: true },
spa: {
enabled: true,
maskPath: '/',
prerender: {
outputPath: '/_shell',
crawlLinks: false,
retryCount: 0,
enabled: true
}
}
}
Why? It's different?
commented enabled: true - it worked
Still the result is SSR, no HTML file in dist folder.