unstale

npm / @solidjs/start

@solidjs/start

What changed in @solidjs/start 1 to 2, from its official release notes, upgrade guides and advisories. Sources checked 2026-10-24.

9 breaking4 new APIs and options3 performance8 behavior and defaults1 tooling12 fixes and other

See which of these apply to your code, ranked, in your agent:

npx @unstale/cli init

@unstale/cli 0.2.6 on npm

@solidjs/start 234 changes

Breaking changes 9

  • Server function responses default to no-store, while a function's own Cache-Control is preserved and 304 responses are excluded.

    2.0.6release notes

  • Server function requests are allowed only from the same origin or same site; cross-site requests receive 403. Use an API route with explicit CORS for separate origins.

    2.0.6release notes

  • A "use server" function that reads an enclosing function variable now fails the build instead of compiling into broken output.

    2.0.6release notes

  • A "use server" directive in an object or class method now fails the build instead of shipping the method body and its imports to the browser.

    2.0.6release notes

  • A server function request with Origin: null and no Sec-Fetch-Site is now refused with 403; requests carrying neither header remain allowed.

    2.0.6release notes

  • Projects must use seroval and seroval-plugins 1.6.8 or newer.

    2.0.6release notes

  • Chunk headers are checked strictly, and the server rejects client-sent chunks over 64MB.

    2.0.6release notes

  • When a body ends or fails, promises waiting on later frames reject and open streams error; unawaited decoded promises no longer report unhandled rejections.

    2.0.6release notes

  • A "use server" string that is not the first statement of a module or function body now logs a warning and has no effect.

    2.0.6release notes

New APIs and options 3

  • This option sends page assets as 103 Early Hints, or as Link headers on non-Node runtimes; it is off by default and applies only to production builds.

    2.1.0release notes

  • In production, a route code load failure during client-side navigation reloads the page once at the destination; set this option to false to disable it.

    1.4.0, 2.1.0release notesrelease notes

  • The data-only mode renders on the client without hydration while running route preloads on the server and streaming their query results with the HTML shell.

    1.4.0, 2.1.0release notesrelease notes

Performance 3

  • The dev toolbar's CSS is dropped from production builds because the toolbar is dead code there.

    2.1.0release notes

  • Server function and lazy transforms do less parsing, and modules with many server functions compile about four times faster.

    2.1.0release notes

  • Large payloads arriving in many small pieces are read in linear time, substantially reducing read time.

    2.0.6release notes

Behavior and default changes 7

  • Vite's base can be a full URL for serving assets from a CDN; server functions post to the app's mount path rather than the asset base.

    2.1.0release notes

  • A clientOnly loader can resolve directly to a component, allowing named exports without wrapping them in { default }.

    1.4.0, 2.1.0release notesrelease notes

  • Changes to entry-server or middleware now reload the browser in development instead of leaving previously rendered output visible.

    2.1.0release notes

  • When form data exceeds the flash cookie size, the data is omitted from the cookie while the result and error still come through; the server logs a warning.

    2.1.0release notes

  • solid-js is now a peer dependency, so SolidStart uses the app's copy and unsupported versions produce an install-time peer dependency warning.

    2.1.0release notes

  • Ids are built from the names a function is nested under, so adding another server function no longer changes an id and same-named functions are distinguished by their surrounding names.

    2.0.6release notes

  • Exports a "use server" module cannot serve now produce a warning naming the export; they remain excluded from the client build.

    2.0.6release notes

Tooling 1

  • Server functions are now compiled in .mts and .cts files.

    2.0.6release notes

Fixes and other changes 11

  • This server API is exported from @solidjs/start/server in SPA mode so apps using it build.

    2.1.0release notes

  • This server API is exported from @solidjs/start/server in SPA mode so apps using it build.

    2.1.0release notes

  • This server API is exported from @solidjs/start/server in SPA mode so apps using it build.

    2.1.0release notes

  • If the browser's path or query changes before hydration starts, rendering falls back to the client to prevent hydration mismatches and stale server data.

    2.1.0release notes

  • A module with a server function no longer fails to compile because of an unused for-of or for-in loop variable or a chain of unused declarations.

    2.1.0release notes

  • In SPA mode, a route that exports both a page and an API handler is served as a page rather than treated as API-only.

    2.1.0release notes

  • A "use server" module can now export an anonymous default function using either supported function syntax.

    2.0.6release notes

  • Lazily imported client components that use client-only no longer cause the server build to fail.

    2.0.6release notes

  • POSTs without the client runtime and with an empty body or non-form content type now return the normal redirect; flash-cookie handling can no longer take down the error path.

    2.0.6release notes

  • Malformed later chunks are logged rather than causing an unhandled rejection, and chunks that cannot be read or parsed cancel the stream.

    2.0.6release notes

  • The build check for unsupported "use server" functions now covers this and arguments in arrow functions, super, and private class members.

    2.0.6release notes

@solidjs/start 13 changes

New APIs and options 1

  • Enables sending page assets as 103 Early Hints so browsers can begin downloading while the server renders; off by default and only applies to production builds.

    1.4.0release notes

Behavior and default changes 1

  • Pages are served in SPA mode (ssr: false) when a route file exports both a page and an API handler.

    1.4.0release notes

Fixes and other changes 1

  • On Node, the signal aborts when the client disconnects, allowing API routes to stop running after the client goes away.

    1.4.0release notes