Skip to content

chore: upgrade Vitest 5.0.0-beta.1#412

Closed
react-server-bot[bot] wants to merge 1 commit into
mainfrom
chore/upgrade-vite-rolldown
Closed

chore: upgrade Vitest 5.0.0-beta.1#412
react-server-bot[bot] wants to merge 1 commit into
mainfrom
chore/upgrade-vite-rolldown

Conversation

@react-server-bot
Copy link
Copy Markdown
Contributor

Automated daily upgrade of Vite, Rolldown, and/or Vitest to the latest available versions.

Vitest: 4.1.55.0.0-beta.1

Updated locations

  • packages/react-server/package.jsonvite, rolldown
  • test/package.jsonvite, rolldown, vitest, @vitest/ui
  • packages/rsc/package.jsonvitest, @vitest/*
  • packages/create-react-server/test/package.jsonvitest
  • package.json — all pnpm.overrides for Vite
  • pnpm-lock.yaml

Smoke test

  • Dev mode — hello world test passed ✅
  • Build+start mode — hello world test passed ✅

@github-actions
Copy link
Copy Markdown

⚡ Flight Protocol Benchmark

Commit: aa451cb

Serialization (renderToReadableStream)

Scenario @lazarv/rsc webpack vs webpack
react: minimal element 198.9K 36.3K 🟢 +447.5%
react: shallow wide (1000) 2.1K 337 🟢 +537.7%
react: deep nested (100) 17.2K 6.4K 🟢 +167.2%
react: product list (50) 6.7K 2.0K 🟢 +239.4%
react: large table (500x10) 272 92 🟢 +196.5%
data: primitives 177.6K 42.3K 🟢 +320.1%
data: large string (100KB) 7.6K 7.1K 🟢 +7.3%
data: nested objects (20) 62.5K 33.1K 🟢 +89.0%
data: large array (10K) 127 116 🟢 +9.1%
data: Map & Set 12.2K 6.2K 🟢 +95.5%
data: Date/BigInt/Symbol 145.1K 46.0K 🟢 +215.2%
data: typed arrays 35.3K 12.8K 🟢 +176.8%
data: mixed payload 9.4K 4.4K 🟢 +112.9%

Prerender (prerender)

Scenario @lazarv/rsc ops/s mean
react: minimal element 250.1K 4.0 µs
react: shallow wide (1000) 2.0K 490.6 µs
react: deep nested (100) 16.0K 62.5 µs
react: product list (50) 6.2K 160.4 µs
react: large table (500x10) 264 3.78 ms
data: primitives 190.6K 5.2 µs
data: large string (100KB) 663 1.51 ms
data: nested objects (20) 62.6K 16.0 µs
data: large array (10K) 124 8.09 ms
data: Map & Set 12.4K 80.4 µs
data: Date/BigInt/Symbol 186.7K 5.4 µs
data: typed arrays 666 1.50 ms
data: mixed payload 8.4K 119.5 µs

Deserialization (createFromReadableStream)

Scenario @lazarv/rsc webpack vs webpack
react: minimal element 171.6K 146.5K 🟢 +17.1%
react: shallow wide (1000) 20.8K 2.0K 🟢 +927.6%
react: deep nested (100) 96.0K 19.8K 🟢 +384.7%
react: product list (50) 50.7K 14.8K 🟢 +241.7%
react: large table (500x10) 3.9K 2.0K 🟢 +93.5%
data: primitives 137.3K 132.6K 🟢 +3.5%
data: large string (100KB) 42.3K 37.1K 🟢 +13.9%
data: nested objects (20) 81.1K 72.2K 🟢 +12.3%
data: large array (10K) 267 255 🟢 +4.8%
data: Map & Set 16.8K 15.1K 🟢 +11.0%
data: Date/BigInt/Symbol 140.1K 120.9K 🟢 +15.9%
data: typed arrays 64.6K 36.8K 🟢 +75.6%
data: mixed payload 25.0K 14.8K 🟢 +68.4%

Roundtrip (serialize + deserialize)

Scenario @lazarv/rsc webpack vs webpack
react: minimal element 117.3K 30.6K 🟢 +283.8%
react: shallow wide (1000) 1.8K 291 🟢 +528.1%
react: deep nested (100) 15.1K 4.8K 🟢 +213.2%
react: product list (50) 5.8K 1.7K 🟢 +234.9%
react: large table (500x10) 259 85 🟢 +204.5%
data: primitives 93.2K 37.7K 🟢 +147.0%
data: large string (100KB) 6.0K 6.9K 🔴 -13.1%
data: nested objects (20) 38.5K 21.5K 🟢 +79.2%
data: large array (10K) 85 85 ⚪ -0.3%
data: Map & Set 6.8K 3.9K 🟢 +75.5%
data: Date/BigInt/Symbol 89.5K 32.3K 🟢 +177.0%
data: typed arrays 30.0K 12.6K 🟢 +137.7%
data: mixed payload 6.8K 3.4K 🟢 +103.3%
Legend & methodology

Indicators: 🟢 > 1% faster | 🔴 > 1% slower | ⚪ within noise margin

vs webpack: compares @lazarv/rsc against react-server-dom-webpack within the same run.
vs baseline: compares @lazarv/rsc against the previous main branch run.

Values shown are operations/second (higher is better). Each scenario runs for at least 100 iterations with warmup.

Benchmarks run on GitHub Actions runners (shared infrastructure) — expect ~5% variance between runs. Consistent directional changes across multiple scenarios are more meaningful than any single number.

@github-actions
Copy link
Copy Markdown

⚡ Benchmark Results

PR ab9112c main 19706b5
Config 50 connections, 10s/test 50 connections, 10s/test
Benchmark Req/s vs main Avg Latency vs main P99 Latency Throughput
minimal 1147 🔴 -9.0% 42.94 ms 🔴 +10.0% 88 ms 0.8 MB/s
small 1199 🔴 -8.6% 41.09 ms 🔴 +9.7% 69 ms 1.2 MB/s
medium 376 🔴 -2.0% 131.2 ms 🔴 +2.0% 185 ms 5.6 MB/s
large 45 🔴 -2.0% 1062.54 ms 🔴 +6.6% 2123 ms 4.6 MB/s
deep 860 🔴 -3.0% 57.34 ms 🔴 +3.2% 92 ms 3.0 MB/s
wide 67 🔴 -6.6% 715.67 ms 🔴 +4.3% 1351 ms 3.7 MB/s
cached 3355 🔴 -5.6% 14.4 ms 🔴 +6.8% 30 ms 49.5 MB/s
client-min 438 🔴 -3.6% 112.18 ms 🔴 +3.3% 174 ms 1.9 MB/s
client-small 449 🔴 -4.9% 110.34 ms 🔴 +5.7% 167 ms 2.1 MB/s
client-med 335 🔴 -8.2% 147 ms 🔴 +8.6% 220 ms 6.2 MB/s
client-large 80 🔴 -3.3% 604.98 ms 🔴 +3.7% 1189 ms 8.4 MB/s
client-deep 414 🔴 -8.9% 119.16 ms 🔴 +9.3% 173 ms 3.0 MB/s
client-wide 130 🔴 -11.7% 375.39 ms 🔴 +11.9% 675 ms 7.6 MB/s
rsc-client-large 1031 🔴 -5.7% 47.83 ms 🔴 +6.1% 66 ms 2.7 MB/s
rsc-client-wide 1050 🔴 -5.7% 46.96 ms 🔴 +6.2% 69 ms 2.7 MB/s
static-json 7093 🔴 -6.7% 6.57 ms 🔴 +6.8% 17 ms 3.0 MB/s
static-js 7212 🔴 -1.3% 6.38 ms ⚪ -0.9% 17 ms 4.3 MB/s
404-miss 4572 🔴 -9.2% 10.47 ms 🔴 +9.7% 23 ms 0.6 MB/s
hybrid-min 446 🔴 -3.7% 111.1 ms 🔴 +4.3% 169 ms 2.2 MB/s
hybrid-small 423 🔴 -8.0% 116.91 ms 🔴 +8.9% 174 ms 2.5 MB/s
hybrid-medium 230 🔴 -4.3% 214.37 ms 🔴 +5.1% 305 ms 9.8 MB/s
hybrid-large 41 🔴 -8.4% 1133.68 ms 🔴 +5.6% 2048 ms 13.2 MB/s
hybrid-deep 350 🔴 -5.5% 141.67 ms 🔴 +6.3% 198 ms 4.8 MB/s
hybrid-wide 59 🔴 -8.1% 825.63 ms 🔴 +7.7% 1412 ms 11.5 MB/s
hybrid-cached 2866 🔴 -7.5% 16.86 ms 🔴 +8.5% 32 ms 122.2 MB/s
hybrid-client-min 452 🔴 -8.4% 109.15 ms 🔴 +9.0% 164 ms 2.0 MB/s
hybrid-client-small 446 🔴 -10.0% 110.76 ms 🔴 +10.9% 170 ms 2.2 MB/s
hybrid-client-medium 340 🔴 -5.4% 144.35 ms 🔴 +5.3% 213 ms 6.3 MB/s
hybrid-client-large 80 🔴 -8.7% 604.29 ms 🔴 +7.0% 985 ms 8.4 MB/s
hybrid-client-deep 424 🔴 -5.8% 116.39 ms 🔴 +5.6% 167 ms 3.1 MB/s
hybrid-client-wide 130 🔴 -6.8% 373.83 ms 🔴 +7.5% 692 ms 7.6 MB/s
Legend

🟢 > 1% improvement | 🔴 > 1% regression | ⚪ within noise margin

Benchmarks run on GitHub Actions runners (shared infrastructure) — expect ~5% variance between runs. Consistent directional changes across multiple routes are more meaningful than any single number.

@codecov-commenter
Copy link
Copy Markdown

codecov-commenter commented Apr 29, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
⚠️ Please upload report for BASE (main@19706b5). Learn more about missing BASE report.
✅ All tests successful. No failed tests found.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #412   +/-   ##
=======================================
  Coverage        ?   91.97%           
=======================================
  Files           ?        3           
  Lines           ?     3590           
  Branches        ?     1173           
=======================================
  Hits            ?     3302           
  Misses          ?      288           
  Partials        ?        0           
Flag Coverage Δ
rsc 91.97% <ø> (?)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@lazarv lazarv closed this Apr 30, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants