Skip to content

chore: migrate benchmarks to Vite 8#6986

Merged
Sheraff merged 2 commits intomainfrom
chore/benchmarks-vite-8
Mar 19, 2026
Merged

chore: migrate benchmarks to Vite 8#6986
Sheraff merged 2 commits intomainfrom
chore/benchmarks-vite-8

Conversation

@Sheraff
Copy link
Contributor

@Sheraff Sheraff commented Mar 19, 2026

Summary

  • align all benchmark packages with the repo's Vite 8 toolchain by upgrading their Vite plugins and removing the temporary Vite 7 overrides from the root workspace config
  • refresh pnpm-lock.yaml so the benchmark importers resolve to Vite 8 and drop the old Vite 7-only transitive entries
  • verify the benchmark suites still run after the migration across bundle-size, client-nav, and SSR targets

Testing

  • pnpm install
  • CI=1 NX_DAEMON=false pnpm nx run @benchmarks/bundle-size:build --outputStyle=stream --skipRemoteCache
  • CI=1 NX_DAEMON=false pnpm nx run @benchmarks/client-nav:test:perf --outputStyle=stream --skipRemoteCache
  • CI=1 NX_DAEMON=false pnpm nx run @benchmarks/ssr:test:perf --outputStyle=stream --skipRemoteCache
  • CI=1 NX_DAEMON=false pnpm test:eslint
  • CI=1 NX_DAEMON=false pnpm test:types
  • CI=1 NX_DAEMON=false pnpm test:unit

Summary by CodeRabbit

  • Chores
    • Upgraded build tool and related plugin dependencies across benchmark packages to newer versions
    • Removed version override constraints from root package configuration

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Mar 19, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 95cf2754-70a8-4957-a0e5-dd9c6d276e99

📥 Commits

Reviewing files that changed from the base of the PR and between 5accb6f and 25e057f.

⛔ Files ignored due to path filters (1)
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
📒 Files selected for processing (4)
  • benchmarks/bundle-size/package.json
  • benchmarks/client-nav/package.json
  • benchmarks/ssr/package.json
  • package.json
💤 Files with no reviewable changes (1)
  • package.json

📝 Walkthrough

Walkthrough

Vite and related plugin dependencies are upgraded across benchmark package configurations, with version overrides removed from the root pnpm configuration. Updates include Vite from 7.3.1 to 8.0.0, @vitejs/plugin-react to 6.0.1, @vitejs/plugin-vue to 6.0.5, @vitejs/plugin-vue-jsx to 5.1.5, and vite-plugin-solid to 2.11.11.

Changes

Cohort / File(s) Summary
Benchmark Vite Dependencies
benchmarks/bundle-size/package.json, benchmarks/client-nav/package.json, benchmarks/ssr/package.json
Updated Vite devDependencies: @vitejs/plugin-react (^4.3.4 → ^6.0.1), @vitejs/plugin-vue (^5.2.3 → ^6.0.5), @vitejs/plugin-vue-jsx (^4.1.2 → ^5.1.5), vite (^7.3.1 → ^8.0.0), and vite-plugin-solid (^2.11.10 → ^2.11.11).
Root pnpm Configuration
package.json
Removed three vite version override entries from pnpm.overrides section: @benchmarks/bundle-size>vite, @benchmarks/client-nav>vite, and @benchmarks/ssr>vite (previously pinned to ^7.3.1).

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

Poem

🐰 Vite bounds upward, from seven to eight,
Plugins follow suit with versions so great,
Overrides discarded, the path now runs free,
Faster builds await, as they're meant to be!
~A hoppy developer's delight

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title 'chore: migrate benchmarks to Vite 8' directly summarizes the main change: upgrading benchmark packages from Vite 7 to Vite 8.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch chore/benchmarks-vite-8
📝 Coding Plan
  • Generate coding plan for human review comments

Comment @coderabbitai help to get the list of available commands and usage tips.

@nx-cloud
Copy link

nx-cloud bot commented Mar 19, 2026

View your CI Pipeline Execution ↗ for commit 34d1a58

Command Status Duration Result
nx affected --targets=test:eslint,test:unit,tes... ✅ Succeeded 9m 14s View ↗
nx run-many --target=build --exclude=examples/*... ✅ Succeeded 27s View ↗

☁️ Nx Cloud last updated this comment at 2026-03-19 18:19:56 UTC

@github-actions
Copy link
Contributor

github-actions bot commented Mar 19, 2026

🚀 Changeset Version Preview

1 package(s) bumped directly, 3 bumped as dependents.

🟩 Patch bumps

Package Version Reason
@tanstack/start-plugin-core 1.167.1 → 1.167.2 Changeset
@tanstack/react-start 1.166.17 → 1.166.18 Dependent
@tanstack/solid-start 1.166.17 → 1.166.18 Dependent
@tanstack/vue-start 1.166.17 → 1.166.18 Dependent

@Sheraff Sheraff requested a review from birkskyum March 19, 2026 17:46
@github-actions
Copy link
Contributor

github-actions bot commented Mar 19, 2026

Bundle Size Benchmarks

  • Commit: 0f585d5289c8
  • Measured at: 2026-03-19T18:11:27.742Z
  • Baseline source: history:0f585d5289c8
  • Dashboard: bundle-size history
Scenario Current (gzip) Delta vs baseline Raw Brotli Trend
react-router.minimal 87.61 KiB 0 B (0.00%) 276.07 KiB 76.12 KiB ▁▁▁▁███████
react-router.full 90.65 KiB 0 B (0.00%) 286.28 KiB 78.68 KiB ▁▁▁▁███████
solid-router.minimal 37.14 KiB 0 B (0.00%) 111.38 KiB 33.29 KiB ▁▁▁▁███████
solid-router.full 41.36 KiB 0 B (0.00%) 124.18 KiB 37.12 KiB ▁▁▁▁███████
vue-router.minimal 52.99 KiB 0 B (0.00%) 151.41 KiB 47.65 KiB ▁▁▁▁███████
vue-router.full 57.69 KiB 0 B (0.00%) 166.34 KiB 51.60 KiB ▁▁▁▁███████
react-start.minimal 101.99 KiB 0 B (0.00%) 324.08 KiB 88.20 KiB ▁▁▁▁███████
react-start.full 105.33 KiB 0 B (0.00%) 333.89 KiB 91.02 KiB ▁▁▁▁███████
solid-start.minimal 51.24 KiB 0 B (0.00%) 157.82 KiB 45.28 KiB ▁▁▁▁███████
solid-start.full 56.53 KiB 0 B (0.00%) 173.32 KiB 49.72 KiB ▁▁▁▁███████

Trend sparkline is historical gzip bytes ending with this PR measurement; lower is better.

@pkg-pr-new
Copy link

pkg-pr-new bot commented Mar 19, 2026

More templates

@tanstack/arktype-adapter

npm i https://pkg.pr.new/@tanstack/arktype-adapter@6986

@tanstack/eslint-plugin-router

npm i https://pkg.pr.new/@tanstack/eslint-plugin-router@6986

@tanstack/history

npm i https://pkg.pr.new/@tanstack/history@6986

@tanstack/nitro-v2-vite-plugin

npm i https://pkg.pr.new/@tanstack/nitro-v2-vite-plugin@6986

@tanstack/react-router

npm i https://pkg.pr.new/@tanstack/react-router@6986

@tanstack/react-router-devtools

npm i https://pkg.pr.new/@tanstack/react-router-devtools@6986

@tanstack/react-router-ssr-query

npm i https://pkg.pr.new/@tanstack/react-router-ssr-query@6986

@tanstack/react-start

npm i https://pkg.pr.new/@tanstack/react-start@6986

@tanstack/react-start-client

npm i https://pkg.pr.new/@tanstack/react-start-client@6986

@tanstack/react-start-server

npm i https://pkg.pr.new/@tanstack/react-start-server@6986

@tanstack/router-cli

npm i https://pkg.pr.new/@tanstack/router-cli@6986

@tanstack/router-core

npm i https://pkg.pr.new/@tanstack/router-core@6986

@tanstack/router-devtools

npm i https://pkg.pr.new/@tanstack/router-devtools@6986

@tanstack/router-devtools-core

npm i https://pkg.pr.new/@tanstack/router-devtools-core@6986

@tanstack/router-generator

npm i https://pkg.pr.new/@tanstack/router-generator@6986

@tanstack/router-plugin

npm i https://pkg.pr.new/@tanstack/router-plugin@6986

@tanstack/router-ssr-query-core

npm i https://pkg.pr.new/@tanstack/router-ssr-query-core@6986

@tanstack/router-utils

npm i https://pkg.pr.new/@tanstack/router-utils@6986

@tanstack/router-vite-plugin

npm i https://pkg.pr.new/@tanstack/router-vite-plugin@6986

@tanstack/solid-router

npm i https://pkg.pr.new/@tanstack/solid-router@6986

@tanstack/solid-router-devtools

npm i https://pkg.pr.new/@tanstack/solid-router-devtools@6986

@tanstack/solid-router-ssr-query

npm i https://pkg.pr.new/@tanstack/solid-router-ssr-query@6986

@tanstack/solid-start

npm i https://pkg.pr.new/@tanstack/solid-start@6986

@tanstack/solid-start-client

npm i https://pkg.pr.new/@tanstack/solid-start-client@6986

@tanstack/solid-start-server

npm i https://pkg.pr.new/@tanstack/solid-start-server@6986

@tanstack/start-client-core

npm i https://pkg.pr.new/@tanstack/start-client-core@6986

@tanstack/start-fn-stubs

npm i https://pkg.pr.new/@tanstack/start-fn-stubs@6986

@tanstack/start-plugin-core

npm i https://pkg.pr.new/@tanstack/start-plugin-core@6986

@tanstack/start-server-core

npm i https://pkg.pr.new/@tanstack/start-server-core@6986

@tanstack/start-static-server-functions

npm i https://pkg.pr.new/@tanstack/start-static-server-functions@6986

@tanstack/start-storage-context

npm i https://pkg.pr.new/@tanstack/start-storage-context@6986

@tanstack/valibot-adapter

npm i https://pkg.pr.new/@tanstack/valibot-adapter@6986

@tanstack/virtual-file-routes

npm i https://pkg.pr.new/@tanstack/virtual-file-routes@6986

@tanstack/vue-router

npm i https://pkg.pr.new/@tanstack/vue-router@6986

@tanstack/vue-router-devtools

npm i https://pkg.pr.new/@tanstack/vue-router-devtools@6986

@tanstack/vue-router-ssr-query

npm i https://pkg.pr.new/@tanstack/vue-router-ssr-query@6986

@tanstack/vue-start

npm i https://pkg.pr.new/@tanstack/vue-start@6986

@tanstack/vue-start-client

npm i https://pkg.pr.new/@tanstack/vue-start-client@6986

@tanstack/vue-start-server

npm i https://pkg.pr.new/@tanstack/vue-start-server@6986

@tanstack/zod-adapter

npm i https://pkg.pr.new/@tanstack/zod-adapter@6986

commit: 34d1a58

Copy link

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 25e057fdeb

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

"typescript": "^5.7.2",
"vite": "^7.3.1",
"vite-plugin-solid": "^2.11.10"
"vite": "^8.0.0",

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Reset bundle-size history when switching fixtures to Vite 8

If the existing benchmarks/bundle-size dashboard/history is kept, this changes the benchmarked bundler from Vite 7/Rollup to Vite 8/Rolldown. The bundle-size pipeline still publishes under the unchanged Bundle Size (gzip) series and scenario IDs (scripts/benchmarks/bundle-size/measure.mjs, .github/workflows/bundle-size.yml), so the first post-migration PR/main runs will compare Rolldown output against old Rollup data and report synthetic regressions/improvements unrelated to router changes.

Useful? React with 👍 / 👎.

@codspeed-hq
Copy link

codspeed-hq bot commented Mar 19, 2026

Merging this PR will degrade performance by 13.55%

❌ 1 (👁 1) regressed benchmark
✅ 5 untouched benchmarks

Performance Changes

Benchmark BASE HEAD Efficiency
👁 client-side navigation loop (react) 68.9 ms 79.7 ms -13.55%

Comparing chore/benchmarks-vite-8 (34d1a58) with main (e5d23ec)

Open in CodSpeed

@Sheraff Sheraff merged commit 7f38aac into main Mar 19, 2026
17 checks passed
@Sheraff Sheraff deleted the chore/benchmarks-vite-8 branch March 19, 2026 19:03
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