chore: upgrade Vitest 5.0.0-beta.1#407
Conversation
❌ 3 Tests Failed:
View the top 3 failed test(s) by shortest run time
To view more test analytics, go to the Test Analytics Dashboard |
⚡ Flight Protocol BenchmarkCommit: Serialization (
|
| Scenario | @lazarv/rsc | webpack | vs webpack |
|---|---|---|---|
| react: minimal element | 226.5K | 29.1K | 🟢 +678.4% |
| react: shallow wide (1000) | 2.2K | 353 | 🟢 +521.5% |
| react: deep nested (100) | 17.4K | 6.2K | 🟢 +183.2% |
| react: product list (50) | 6.2K | 1.9K | 🟢 +218.2% |
| react: large table (500x10) | 287 | 96 | 🟢 +199.4% |
| data: primitives | 177.3K | 38.3K | 🟢 +363.0% |
| data: large string (100KB) | 7.6K | 7.1K | 🟢 +7.8% |
| data: nested objects (20) | 57.5K | 26.4K | 🟢 +117.8% |
| data: large array (10K) | 115 | 112 | 🟢 +2.4% |
| data: Map & Set | 11.1K | 5.6K | 🟢 +95.8% |
| data: Date/BigInt/Symbol | 164.4K | 35.5K | 🟢 +363.7% |
| data: typed arrays | 35.1K | 13.1K | 🟢 +168.0% |
| data: mixed payload | 8.1K | 4.1K | 🟢 +97.0% |
Prerender (prerender)
| Scenario | @lazarv/rsc ops/s | mean |
|---|---|---|
| react: minimal element | 258.6K | 3.9 µs |
| react: shallow wide (1000) | 2.0K | 504.6 µs |
| react: deep nested (100) | 15.8K | 63.3 µs |
| react: product list (50) | 5.8K | 173.3 µs |
| react: large table (500x10) | 271 | 3.69 ms |
| data: primitives | 195.3K | 5.1 µs |
| data: large string (100KB) | 689 | 1.45 ms |
| data: nested objects (20) | 57.7K | 17.3 µs |
| data: large array (10K) | 116 | 8.63 ms |
| data: Map & Set | 11.3K | 88.8 µs |
| data: Date/BigInt/Symbol | 185.3K | 5.4 µs |
| data: typed arrays | 676 | 1.48 ms |
| data: mixed payload | 7.6K | 131.0 µs |
Deserialization (createFromReadableStream)
| Scenario | @lazarv/rsc | webpack | vs webpack |
|---|---|---|---|
| react: minimal element | 173.6K | 141.9K | 🟢 +22.4% |
| react: shallow wide (1000) | 24.1K | 2.0K | 🟢 +1134.4% |
| react: deep nested (100) | 103.0K | 19.4K | 🟢 +431.3% |
| react: product list (50) | 53.0K | 14.8K | 🟢 +257.8% |
| react: large table (500x10) | 4.3K | 2.1K | 🟢 +101.9% |
| data: primitives | 145.0K | 131.4K | 🟢 +10.3% |
| data: large string (100KB) | 38.5K | 31.6K | 🟢 +21.8% |
| data: nested objects (20) | 86.1K | 71.0K | 🟢 +21.3% |
| data: large array (10K) | 286 | 262 | 🟢 +9.2% |
| data: Map & Set | 17.0K | 14.5K | 🟢 +17.3% |
| data: Date/BigInt/Symbol | 140.4K | 111.4K | 🟢 +26.1% |
| data: typed arrays | 59.6K | 46.0K | 🟢 +29.7% |
| data: mixed payload | 26.3K | 14.6K | 🟢 +80.9% |
Roundtrip (serialize + deserialize)
| Scenario | @lazarv/rsc | webpack | vs webpack |
|---|---|---|---|
| react: minimal element | 106.8K | 22.0K | 🟢 +385.2% |
| react: shallow wide (1000) | 1.7K | 294 | 🟢 +491.0% |
| react: deep nested (100) | 14.5K | 4.3K | 🟢 +236.7% |
| react: product list (50) | 5.3K | 1.6K | 🟢 +222.1% |
| react: large table (500x10) | 271 | 84 | 🟢 +224.8% |
| data: primitives | 84.8K | 30.4K | 🟢 +179.1% |
| data: large string (100KB) | 6.7K | 6.5K | 🟢 +2.5% |
| data: nested objects (20) | 34.2K | 18.6K | 🟢 +84.0% |
| data: large array (10K) | 85 | 78 | 🟢 +8.5% |
| data: Map & Set | 6.2K | 3.9K | 🟢 +58.7% |
| data: Date/BigInt/Symbol | 73.7K | 24.3K | 🟢 +203.1% |
| data: typed arrays | 26.3K | 11.9K | 🟢 +121.4% |
| data: mixed payload | 6.0K | 3.0K | 🟢 +97.8% |
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.
⚡ Benchmark Results
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. |
Automated daily upgrade of Vite, Rolldown, and/or Vitest to the latest available versions.
Vitest:
4.1.5→5.0.0-beta.1Updated locations
packages/react-server/package.json—vite,rolldowntest/package.json—vite,rolldown,vitest,@vitest/uipackages/rsc/package.json—vitest,@vitest/*packages/create-react-server/test/package.json—vitestpackage.json— allpnpm.overridesfor Vitepnpm-lock.yamlSmoke test
hello worldtest passed ✅hello worldtest passed ✅