@tanstack/solid-start@2.0.0-rc.4
Pre-release
TanStack/router@tanstack/solid-start@2.0.0-rc.4Aug 29, 2026by github-actions[bot]
AI Summary
This patch release fixes critical SSR build issues and introduces support for AbortSignals in server functions, leveraging the new invocation channel in Solid 2.0.0-rc.4.
Key Highlights
- Fixes 'Client-only API called on the server side' crashes by patching rsbuild plugin loader options
- Enables per-call AbortSignal support for Solid server functions
- Updates server function ID resolution to use URL pathname instead of headers
New Features
- Support for AbortSignals in server functions
Full Release Notes
### Patch Changes
- [#8189](https://github.com/TanStack/router/pull/8189) [`22fd367`](https://github.com/TanStack/router/commit/22fd367d8103edd0150acf3be75af9aa03eec6c3) - Bump solid-js and @solidjs/web to ^2.0.0-rc.4 and @solidjs/vite-plugin to ^3.0.0-next.35 across the monorepo.
- [#8189](https://github.com/TanStack/router/pull/8189) [`22fd367`](https://github.com/TanStack/router/commit/22fd367d8103edd0150acf3be75af9aa03eec6c3) - Patch @rsbuild/plugin-solid's native `solid` loader options for SSR builds. Since 2.0.0-beta.1 the plugin compiles through its own loader (native compiler by default) instead of registering babel-preset-solid, so the babel preset patch never fired and node-target bundles were compiled in dom mode, crashing at import with "Client-only API called on the server side". The rsbuild start plugin now patches the loader's `solid` options (`generate: 'ssr'` on node targets, `hydratable: true`) alongside the legacy babel preset patch.
- [#8189](https://github.com/TanStack/router/pull/8189) [`22fd367`](https://github.com/TanStack/router/commit/22fd367d8103edd0150acf3be75af9aa03eec6c3) - Support per-call AbortSignals for Solid server functions. solid-js 2.0.0-rc.4 added the per-call invocation channel (`invoke(fn, { signal }, ...args)`) and moved server function id resolution from the `X-Server-Function` header to the request url pathname; the client rpc now rides that channel when a `signal` is passed to a server function, and the server handler resolves/normalizes ids via the url. The previously skipped abort e2e tests are re-enabled.
- Updated dependencies \[[`22fd367`](https://github.com/TanStack/router/commit/22fd367d8103edd0150acf3be75af9aa03eec6c3)]:
- @tanstack/solid-router@2.0.0-rc.4
- @tanstack/solid-start-client@2.0.0-rc.4
- @tanstack/solid-start-server@2.0.0-rc.4