Skip to content

[codex] support React Router 8 compatibility#67

Draft
ScriptedAlchemy wants to merge 8 commits into
codex/prewarm-route-workersfrom
codex/react-router-8-compat
Draft

[codex] support React Router 8 compatibility#67
ScriptedAlchemy wants to merge 8 commits into
codex/prewarm-route-workersfrom
codex/react-router-8-compat

Conversation

@ScriptedAlchemy

@ScriptedAlchemy ScriptedAlchemy commented Jun 28, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Add examples/react-router-8 as a direct copy of React Router’s integration/helpers/vite-8-template, with the Vite config/scripts swapped for this Rsbuild plugin.
  • Add Playwright dev and production e2e coverage for the copied React Router 8 default template, including browser console/page-error/request-failure checks.
  • Resolve RR8 hydration/runtime compatibility by using React Router’s installed UNSAFE_* route wrapper helpers and aliasing react-router package imports to the app install.
  • Include the RR8 example in the repo e2e example filter and document it in the examples table.
  • Remove the stale packed version-matrix script/command and consolidate duplicate changesets into one RR8 compatibility changeset.

Validation

  • pnpm prettier --write package.json README.md src/index.ts src/plugin-utils.ts src/route-component-transform.ts tests/index.test.ts tests/plugin-utils.test.ts examples/react-router-8/package.json examples/react-router-8/README.md examples/react-router-8/app/root.tsx examples/react-router-8/app/routes.ts examples/react-router-8/app/routes/_index.tsx examples/react-router-8/env.d.ts examples/react-router-8/playwright.config.ts examples/react-router-8/react-router.config.ts examples/react-router-8/rsbuild.config.ts examples/react-router-8/tests/e2e/react-router-8.test.ts examples/react-router-8/tsconfig.json
  • pnpm prettier --write package.json .changeset/react-router-8-default-template.md
  • git diff --check
  • pnpm test:core -- tests/plugin-utils.test.ts tests/index.test.ts
  • pnpm test:core -- tests/plugin-utils.test.ts tests/index.test.ts tests/prerender.test.ts tests/react-router-config.test.ts tests/modify-browser-manifest.test.ts
  • pnpm --filter react-router-8-default-template typecheck
  • pnpm build
  • pnpm --filter react-router-8-default-template test:e2e
  • pnpm test:package-interop

TraceDecay was used for changed-file impact context; latest diff context mapped the plugin changes to route transform/dev runtime coverage and affected tests.

Note: this PR is stacked on codex/prewarm-route-workers because the worktree started from that branch. Against that base, this branch contains the React Router 8 compatibility/example work.

@ScriptedAlchemy ScriptedAlchemy changed the base branch from main to codex/prewarm-route-workers June 28, 2026 23:13
@github-actions

github-actions Bot commented Jun 28, 2026

Copy link
Copy Markdown
Contributor

Benchmark Results

Compared PR head a8cb0f2 against base 6c6000b.

Total median wall time: 9.79s -> 9.72s (-0.7%, 1.01x speedup)
Compiler ready median: 9.79s -> 9.72s (-0.7%)
Route load median: 2.01s -> 1.97s (-2.0%)

Benchmark Base total Head total Delta Head ready Head routes Speedup Head RSS p95
large-355-ssr-esm 9.79s 9.72s -0.7% 9.72s 1.97s 1.01x -

Profile: large; mode: dev; iterations: 10; warmup: 0.
Workflow run

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant