Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
84 commits
Select commit Hold shift + click to select a range
4bd516e
solid v2 override
birkskyum Feb 21, 2026
91f8a59
override vite-plugin-solid
birkskyum Feb 21, 2026
b4b1b56
port router to v2
birkskyum Feb 21, 2026
9732166
transitioner
birkskyum Feb 21, 2026
74ac183
catchboundary
birkskyum Feb 21, 2026
39690d1
match and asset
birkskyum Feb 21, 2026
6b3b923
awaited
birkskyum Feb 21, 2026
eb81b3c
install @solidjs/web
birkskyum Feb 21, 2026
b6d2a12
use @solidjs/web
birkskyum Feb 21, 2026
42189fb
update vite config
birkskyum Feb 21, 2026
5a1d70c
match, link, catchboundary
birkskyum Feb 21, 2026
868d2bf
feat: upgrade outer-devtools-core to Solid 2.0
brenelz Feb 21, 2026
83dbc2f
lock
birkskyum Feb 21, 2026
5595537
import dynamic
birkskyum Feb 21, 2026
1021e6c
fix: build
brenelz Feb 21, 2026
5901753
fix: work on solid v2 upgrade
brenelz Feb 21, 2026
32b9dfb
chore: more fixes
brenelz Feb 21, 2026
d026877
fix: e2e tests
brenelz Feb 21, 2026
39f102c
fixes
brenelz Feb 21, 2026
187cc84
fix: solid-start basic e2e
brenelz Feb 21, 2026
faa3280
fix: down to one failure
brenelz Feb 22, 2026
60fa942
Pasisng tests
brenelz Feb 22, 2026
0dc0cd0
fix: test
brenelz Feb 24, 2026
82e6d42
fix: more tweaks
brenelz Feb 24, 2026
7c54da8
fix some more e2e
brenelz Feb 25, 2026
b36f08b
upgrade solid js version
brenelz Feb 25, 2026
f515a74
fixes
brenelz Feb 25, 2026
d5eae32
fix e2e
brenelz Feb 27, 2026
e1baada
add comment
brenelz Feb 27, 2026
2194e1a
reduce warnings
brenelz Feb 27, 2026
491d3cd
reduce warnings more
brenelz Feb 27, 2026
f215f35
ssr fixes
brenelz Feb 28, 2026
d4204b2
more ssr fixes
brenelz Mar 2, 2026
fe22729
remove any links to local solidjs
brenelz Mar 3, 2026
5bf9d3e
fix
brenelz Mar 3, 2026
3cb366f
upgrade to solid 2.0 beta
brenelz Mar 4, 2026
90dbcaa
Merge remote-tracking branch 'origin/main' into solid-v2
birkskyum Mar 4, 2026
0641971
fix lock
birkskyum Mar 4, 2026
f92d010
use routerContext
birkskyum Mar 4, 2026
c2dca9e
fix unit test
birkskyum Mar 4, 2026
fc3e0e5
Fix one hydration mismatch
brenelz Mar 4, 2026
dec73e3
fix more e2e tests
brenelz Mar 4, 2026
fdb026f
Upgrade to solid beta.1
brenelz Mar 6, 2026
993c540
Fix benchmark build
brenelz Mar 7, 2026
290a549
Skip some e2e tests for now
brenelz Mar 7, 2026
5c3e3c0
fix eslint warnings
brenelz Mar 7, 2026
57a0d0b
fixes
brenelz Mar 7, 2026
cb89d1f
e2e fixes
brenelz Mar 7, 2026
8932354
comment out some failed e2e
brenelz Mar 7, 2026
c88a693
Merge branch 'main' into solid-v2
brenelz Mar 7, 2026
112e974
update lockfile
brenelz Mar 7, 2026
7de55df
fix
brenelz Mar 7, 2026
5fef0ef
Updte examples
brenelz Mar 7, 2026
d76270c
Fixing build
brenelz Mar 7, 2026
ae9d82f
Fix build
brenelz Mar 7, 2026
a5a5be4
inline solid-store dep
brenelz Mar 7, 2026
09e30ee
Devtools fixes
brenelz Mar 7, 2026
6245732
fix lint
brenelz Mar 7, 2026
d6509e2
Trigger ci
brenelz Mar 8, 2026
dff1caa
trigger ci
brenelz Mar 9, 2026
1f31bfa
Test fix
brenelz Mar 9, 2026
16311ad
skip test
brenelz Mar 9, 2026
9f2bfa7
Exclude error component test
brenelz Mar 9, 2026
7a6bf76
ci: apply automated fixes
autofix-ci[bot] Mar 9, 2026
ec4b803
reset router-devtools-core
birkskyum Mar 11, 2026
26d51c7
reset examples/react/start-bun/src/routes/__root.tsx
birkskyum Mar 11, 2026
c3a6cad
reset react change
birkskyum Mar 11, 2026
3801147
reset router-devtools-core
birkskyum Mar 11, 2026
9def57a
remove duplicate import of @solidjs/web
birkskyum Mar 11, 2026
c693474
2.0.0-beta.2
birkskyum Mar 11, 2026
dcb9ed4
fixes
brenelz Mar 11, 2026
fdc5346
Down the 3 failing tests
brenelz Mar 11, 2026
3d130d5
Fix tests
brenelz Mar 11, 2026
033ea00
Merge branch 'main' into solid-v2
brenelz Mar 12, 2026
5bfd39b
Fix router tests
brenelz Mar 12, 2026
5b5c57e
ci: apply automated fixes
autofix-ci[bot] Mar 12, 2026
9385220
Work on getting build to pass
brenelz Mar 12, 2026
c5caa6c
Fix e2e test
brenelz Mar 12, 2026
9058b8c
enter alpha rperelease phase
birkskyum Mar 12, 2026
a0191af
pre-release: solid-router/start 2.0.0-alpha.0 (#6904)
birkskyum Mar 12, 2026
c818bf6
ci: changeset release
github-actions[bot] Mar 12, 2026
5a3f094
publish prerelease correct
birkskyum Mar 12, 2026
4c5bb71
release: 2.0.0-alpha.1
birkskyum Mar 12, 2026
cde6e61
ci: changeset release
github-actions[bot] Mar 12, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
47 changes: 47 additions & 0 deletions .changeset/pre.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
{
"mode": "pre",
"tag": "alpha",
"initialVersions": {
"@tanstack/arktype-adapter": "1.166.7",
"@tanstack/eslint-plugin-router": "1.161.4",
"@tanstack/history": "1.161.4",
"@tanstack/nitro-v2-vite-plugin": "1.154.7",
"@tanstack/react-router": "1.166.7",
"@tanstack/react-router-devtools": "1.166.7",
"@tanstack/react-router-ssr-query": "1.166.7",
"@tanstack/react-start": "1.166.8",
"@tanstack/react-start-client": "1.166.7",
"@tanstack/react-start-server": "1.166.7",
"@tanstack/router-cli": "1.166.7",
"@tanstack/router-core": "1.166.7",
"@tanstack/router-devtools": "1.166.7",
"@tanstack/router-devtools-core": "1.166.7",
"@tanstack/router-generator": "1.166.7",
"@tanstack/router-plugin": "1.166.7",
"@tanstack/router-ssr-query-core": "1.166.7",
"@tanstack/router-utils": "1.161.4",
"@tanstack/router-vite-plugin": "1.166.7",
"@tanstack/solid-router": "1.166.7",
"@tanstack/solid-router-devtools": "1.166.7",
"@tanstack/solid-router-ssr-query": "1.166.7",
"@tanstack/solid-start": "1.166.8",
"@tanstack/solid-start-client": "1.166.7",
"@tanstack/solid-start-server": "1.166.7",
"@tanstack/start-client-core": "1.166.7",
"@tanstack/start-fn-stubs": "1.161.4",
"@tanstack/start-plugin-core": "1.166.8",
"@tanstack/start-server-core": "1.166.7",
"@tanstack/start-static-server-functions": "1.166.8",
"@tanstack/start-storage-context": "1.166.7",
"@tanstack/valibot-adapter": "1.166.7",
"@tanstack/virtual-file-routes": "1.161.4",
"@tanstack/vue-router": "1.166.7",
"@tanstack/vue-router-devtools": "1.166.7",
"@tanstack/vue-router-ssr-query": "1.166.7",
"@tanstack/vue-start": "1.166.8",
"@tanstack/vue-start-client": "1.166.7",
"@tanstack/vue-start-server": "1.166.7",
"@tanstack/zod-adapter": "1.166.7"
},
"changesets": ["social-mails-sort", "three-carrots-return"]
}
10 changes: 10 additions & 0 deletions .changeset/social-mails-sort.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
'@tanstack/solid-router-ssr-query': major
'@tanstack/solid-router-devtools': major
'@tanstack/solid-start-client': major
'@tanstack/solid-start-server': major
'@tanstack/solid-router': major
'@tanstack/solid-start': major
---

solid v2 pre-release for solid-router and start
10 changes: 10 additions & 0 deletions .changeset/three-carrots-return.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
'@tanstack/solid-router-ssr-query': patch
'@tanstack/solid-router-devtools': patch
'@tanstack/solid-start-client': patch
'@tanstack/solid-start-server': patch
'@tanstack/solid-router': patch
'@tanstack/solid-start': patch
---

bump to alpha.1
4 changes: 2 additions & 2 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ jobs:
run: |
BRANCH="${GITHUB_REF_NAME}"
if [[ "$BRANCH" == *-pre ]]; then
echo "tag=next" >> "$GITHUB_OUTPUT"
echo "prerelease=true" >> "$GITHUB_OUTPUT"
elif [[ "$BRANCH" == *-maint ]]; then
echo "tag=maint" >> "$GITHUB_OUTPUT"
fi
Expand All @@ -67,7 +67,7 @@ jobs:
run: pnpm run changeset:publish ${{ steps.dist-tag.outputs.tag && format('--tag {0}', steps.dist-tag.outputs.tag) }}
- name: Create GitHub Release
if: steps.commit.outputs.committed == 'true'
run: node scripts/create-github-release.mjs ${{ steps.dist-tag.outputs.tag == 'next' && '--prerelease' }}
run: node scripts/create-github-release.mjs ${{ steps.dist-tag.outputs.prerelease == 'true' && '--prerelease' }}
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
5 changes: 3 additions & 2 deletions benchmarks/bundle-size/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,8 @@
"@tanstack/solid-start": "workspace:^",
"react": "^19.0.0",
"react-dom": "^19.0.0",
"solid-js": "^1.9.10",
"solid-js": "2.0.0-beta.2",
"@solidjs/web": "2.0.0-beta.2",
"vue": "^3.5.16"
},
"devDependencies": {
Expand All @@ -25,6 +26,6 @@
"@vitejs/plugin-vue-jsx": "^4.1.2",
"typescript": "^5.7.2",
"vite": "^7.3.1",
"vite-plugin-solid": "^2.11.10"
"vite-plugin-solid": "3.0.0-next.2"
}
}
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { render } from 'solid-js/web'
import { render } from '@solidjs/web'
import { RouterProvider, createRouter } from '@tanstack/solid-router'
import { routeTree } from './routeTree.gen'

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { render } from 'solid-js/web'
import { render } from '@solidjs/web'
import { RouterProvider, createRouter } from '@tanstack/solid-router'
import { routeTree } from './routeTree.gen'

Expand Down
5 changes: 3 additions & 2 deletions benchmarks/client-nav/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,8 @@
"@tanstack/vue-router": "workspace:^",
"react": "^19.0.0",
"react-dom": "^19.0.0",
"solid-js": "^1.9.10",
"solid-js": "2.0.0-beta.2",
"@solidjs/web": "2.0.0-beta.2",
"vue": "^3.5.16"
},
"devDependencies": {
Expand All @@ -38,7 +39,7 @@
"@types/jsdom": "28.0.0",
"typescript": "^5.7.2",
"vite": "^7.3.1",
"vite-plugin-solid": "^2.11.10",
"vite-plugin-solid": "3.0.0-next.2",
"vitest": "^4.0.17"
},
"nx": {
Expand Down
16 changes: 9 additions & 7 deletions benchmarks/client-nav/solid/app.tsx
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { For, createEffect } from 'solid-js'
import { render } from 'solid-js/web'
import { render } from '@solidjs/web'
import {
Link,
Outlet,
Expand Down Expand Up @@ -30,9 +30,10 @@ function Params() {
select: (params) => runPerfSelectorComputation(Number(params.id ?? 0)),
})

createEffect(() => {
void params()
})
createEffect(
() => params(),
() => {},
)

return null
}
Expand All @@ -43,9 +44,10 @@ function Search() {
select: (search) => runPerfSelectorComputation(Number(search.id ?? 0)),
})

createEffect(() => {
void search()
})
createEffect(
() => search(),
() => {},
)

return null
}
Expand Down
5 changes: 3 additions & 2 deletions benchmarks/ssr/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,8 @@
"@tanstack/vue-start": "workspace:^",
"react": "^19.0.0",
"react-dom": "^19.0.0",
"solid-js": "^1.9.10",
"solid-js": "2.0.0-beta.2",
"@solidjs/web": "2.0.0-beta.2",
"vue": "^3.5.16"
},
"devDependencies": {
Expand All @@ -33,7 +34,7 @@
"@vitejs/plugin-vue-jsx": "^4.1.2",
"typescript": "^5.7.2",
"vite": "^7.3.1",
"vite-plugin-solid": "^2.11.10",
"vite-plugin-solid": "3.0.0-next.2",
"vitest": "^4.0.17"
},
"nx": {
Expand Down
20 changes: 11 additions & 9 deletions benchmarks/ssr/solid/src/workload.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -29,9 +29,10 @@ function ParamsProbe(props: { salt: number }) {
),
})

createEffect(() => {
void params()
})
createEffect(
() => params(),
() => {},
)

return null
}
Expand All @@ -43,9 +44,10 @@ function SearchProbe(props: { salt: number }) {
runSelectorWork(String(nextSearch.q ?? ''), props.salt),
})

createEffect(() => {
void search()
})
createEffect(
() => search(),
() => {},
)

return null
}
Expand Down Expand Up @@ -73,9 +75,9 @@ function LinkProbe(props: { salt: number }) {
export function RouteWorkload() {
return (
<>
<For each={probes}>{(probe) => <ParamsProbe salt={probe + 1} />}</For>
<For each={probes}>{(probe) => <SearchProbe salt={probe + 11} />}</For>
<For each={probes}>{(probe) => <LinkProbe salt={probe + 21} />}</For>
<For each={probes}>{(probe) => <ParamsProbe salt={probe() + 1} />}</For>
<For each={probes}>{(probe) => <SearchProbe salt={probe() + 11} />}</For>
<For each={probes}>{(probe) => <LinkProbe salt={probe() + 21} />}</For>
</>
)
}
2 changes: 1 addition & 1 deletion docs/router/guide/ssr.md
Original file line number Diff line number Diff line change
Expand Up @@ -234,7 +234,7 @@ hydrateRoot(document, <RouterClient router={router} />)
# Solid

```tsx title="src/entry-client.tsx"
import { hydrate } from 'solid-js/web'
import { hydrate } from '@solidjs/web'
import { RouterClient } from '@tanstack/solid-router/ssr/client'
import { createRouter } from './router'

Expand Down
4 changes: 2 additions & 2 deletions docs/router/installation/manual.md
Original file line number Diff line number Diff line change
Expand Up @@ -204,7 +204,7 @@ function About() {

```tsx title="src/main.tsx"
/* @refresh reload */
import { render } from 'solid-js/web'
import { render } from '@solidjs/web'
import { RouterProvider, createRouter } from '@tanstack/solid-router'

// Import the generated route tree
Expand Down Expand Up @@ -319,7 +319,7 @@ if (!rootElement.innerHTML) {

```tsx
/* @refresh reload */
import { render } from 'solid-js/web'
import { render } from '@solidjs/web'
import {
Outlet,
RouterProvider,
Expand Down
2 changes: 1 addition & 1 deletion docs/start/framework/solid/build-from-scratch.md
Original file line number Diff line number Diff line change
Expand Up @@ -163,7 +163,7 @@ import {
HeadContent,
Scripts,
} from '@tanstack/solid-router'
import { HydrationScript } from 'solid-js/web'
import { HydrationScript } from '@solidjs/web'

export const Route = createRootRoute({
head: () => ({
Expand Down
6 changes: 3 additions & 3 deletions docs/start/framework/solid/guide/client-entry-point.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ Getting our html to the client is only half the battle. Once there, we need to h

```tsx
// src/client.tsx
import { hydrate } from 'solid-js/web'
import { hydrate } from '@solidjs/web'
import { StartClient, hydrateStart } from '@tanstack/solid-start/client'

hydrateStart().then((router) => {
Expand All @@ -29,7 +29,7 @@ You can wrap your client entry point with error boundaries to handle client-side
```tsx
// src/client.tsx
import { StartClient } from '@tanstack/solid-start/client'
import { hydrate } from 'solid-js/web'
import { hydrate } from '@solidjs/web'
import { ErrorBoundary } from './components/ErrorBoundary'

hydrate(
Expand All @@ -49,7 +49,7 @@ You may want different behavior in development vs production:
```tsx
// src/client.tsx
import { StartClient } from '@tanstack/solid-start/client'
import { hydrate } from 'solid-js/web'
import { hydrate } from '@solidjs/web'

const App = (
<>
Expand Down
2 changes: 1 addition & 1 deletion docs/start/framework/solid/guide/hydration-errors.md
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,7 @@ function SetTimeZoneCookie() {

```tsx
import { ClientOnly } from '@tanstack/solid-router'
import { NoHydration } from 'solid-js/web'
import { NoHydration } from '@solidjs/web'

<ClientOnly fallback={<span>—</span>}>
<RelativeTime ts={someTs} />
Expand Down
5 changes: 3 additions & 2 deletions e2e/solid-router/basepath-file-based/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -14,12 +14,13 @@
"@tanstack/solid-router": "workspace:^",
"@tanstack/solid-router-devtools": "workspace:^",
"@tanstack/router-plugin": "workspace:^",
"solid-js": "^1.9.10"
"solid-js": "2.0.0-beta.2",
"@solidjs/web": "2.0.0-beta.2"
},
"devDependencies": {
"@playwright/test": "^1.50.1",
"@tanstack/router-e2e-utils": "workspace:^",
"vite-plugin-solid": "^2.11.10",
"vite-plugin-solid": "3.0.0-next.2",
"vite": "^7.3.1"
}
}
2 changes: 1 addition & 1 deletion e2e/solid-router/basepath-file-based/src/main.tsx
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { RouterProvider, createRouter } from '@tanstack/solid-router'
import { render } from 'solid-js/web'
import { render } from '@solidjs/web'
import { routeTree } from './routeTree.gen'

// Set up a Router instance
Expand Down
9 changes: 5 additions & 4 deletions e2e/solid-router/basic-esbuild-file-based/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,9 @@
"private": true,
"type": "module",
"scripts": {
"dev": "esbuild src/main.tsx --jsx=preserve --jsx-import-source=solid-js --serve=5601 --bundle --outfile=dist/main.js --watch --servedir=.",
"build": "esbuild src/main.tsx --jsx=preserve --jsx-import-source=solid-js --bundle --outfile=dist/main.js && tsc --noEmit",
"serve": "esbuild src/main.tsx --jsx=preserve --jsx-import-source=solid-js --bundle --outfile=dist/main.js --servedir=.",
"dev": "esbuild src/main.tsx --jsx=preserve --jsx-import-source=solid-js --conditions=solid --serve=5601 --bundle --outfile=dist/main.js --watch --servedir=.",
"build": "esbuild src/main.tsx --jsx=preserve --jsx-import-source=solid-js --conditions=solid --bundle --outfile=dist/main.js && tsc --noEmit",
"serve": "esbuild src/main.tsx --jsx=preserve --jsx-import-source=solid-js --conditions=solid --bundle --outfile=dist/main.js --servedir=.",
"start": "dev",
"test:e2e": "rm -rf port*.txt; playwright test --project=chromium"
},
Expand All @@ -15,7 +15,8 @@
"@tanstack/solid-router-devtools": "workspace:^",
"@tanstack/zod-adapter": "workspace:^",
"redaxios": "^0.5.1",
"solid-js": "^1.9.10",
"solid-js": "2.0.0-beta.2",
"@solidjs/web": "2.0.0-beta.2",
"zod": "^3.24.2"
},
"devDependencies": {
Expand Down
2 changes: 1 addition & 1 deletion e2e/solid-router/basic-esbuild-file-based/src/main.tsx
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { render } from 'solid-js/web'
import { render } from '@solidjs/web'
import { RouterProvider, createRouter } from '@tanstack/solid-router'
import { routeTree } from './routeTree.gen'

Expand Down
5 changes: 3 additions & 2 deletions e2e/solid-router/basic-file-based-code-splitting/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,14 +17,15 @@
"@tanstack/router-plugin": "workspace:^",
"@tanstack/solid-router": "workspace:^",
"@tanstack/solid-router-devtools": "workspace:^",
"solid-js": "^1.9.10",
"solid-js": "2.0.0-beta.2",
"@solidjs/web": "2.0.0-beta.2",
"tailwindcss": "^4.1.18",
"zod": "^3.24.2"
},
"devDependencies": {
"@playwright/test": "^1.50.1",
"@tanstack/router-e2e-utils": "workspace:^",
"vite": "^7.3.1",
"vite-plugin-solid": "^2.11.10"
"vite-plugin-solid": "3.0.0-next.2"
}
}
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { render } from 'solid-js/web'
import { render } from '@solidjs/web'
import { RouterProvider, createRouter } from '@tanstack/solid-router'
import { routeTree } from './routeTree.gen'
import './styles.css'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -171,7 +171,7 @@ declare module '@tanstack/solid-router' {
'/_layout': {
id: '/_layout'
path: ''
fullPath: ''
fullPath: '/'
preLoaderRoute: typeof LayoutRouteImport
parentRoute: typeof rootRouteImport
}
Expand Down Expand Up @@ -199,7 +199,7 @@ declare module '@tanstack/solid-router' {
'/_layout/_layout-2': {
id: '/_layout/_layout-2'
path: ''
fullPath: ''
fullPath: '/'
preLoaderRoute: typeof LayoutLayout2RouteImport
parentRoute: typeof LayoutRoute
}
Expand Down
Loading
Loading