chore: upgrade dependencies#433
Conversation
⚡ Flight Protocol BenchmarkCommit: Serialization (
|
| Scenario | @lazarv/rsc | webpack | vs webpack |
|---|---|---|---|
| react: minimal element | 220.6K | 34.4K | 🟢 +541.2% |
| react: shallow wide (1000) | 2.3K | 349 | 🟢 +562.7% |
| react: deep nested (100) | 17.6K | 5.9K | 🟢 +198.3% |
| react: product list (50) | 6.7K | 2.1K | 🟢 +222.8% |
| react: large table (500x10) | 272 | 96 | 🟢 +183.4% |
| data: primitives | 175.3K | 46.0K | 🟢 +281.4% |
| data: large string (100KB) | 7.1K | 6.5K | 🟢 +9.9% |
| data: nested objects (20) | 60.1K | 27.3K | 🟢 +120.0% |
| data: large array (10K) | 127 | 115 | 🟢 +10.2% |
| data: Map & Set | 12.1K | 6.3K | 🟢 +92.0% |
| data: Date/BigInt/Symbol | 161.7K | 42.1K | 🟢 +283.8% |
| data: typed arrays | 38.8K | 13.0K | 🟢 +197.6% |
| data: mixed payload | 9.4K | 4.4K | 🟢 +112.7% |
Prerender (prerender)
| Scenario | @lazarv/rsc ops/s | mean |
|---|---|---|
| react: minimal element | 225.0K | 4.4 µs |
| react: shallow wide (1000) | 2.0K | 498.0 µs |
| react: deep nested (100) | 16.3K | 61.5 µs |
| react: product list (50) | 6.2K | 161.4 µs |
| react: large table (500x10) | 268 | 3.73 ms |
| data: primitives | 186.2K | 5.4 µs |
| data: large string (100KB) | 648 | 1.54 ms |
| data: nested objects (20) | 62.0K | 16.1 µs |
| data: large array (10K) | 123 | 8.11 ms |
| data: Map & Set | 12.4K | 80.3 µs |
| data: Date/BigInt/Symbol | 179.9K | 5.6 µs |
| data: typed arrays | 641 | 1.56 ms |
| data: mixed payload | 8.4K | 118.7 µs |
Deserialization (createFromReadableStream)
| Scenario | @lazarv/rsc | webpack | vs webpack |
|---|---|---|---|
| react: minimal element | 163.7K | 145.0K | 🟢 +12.9% |
| react: shallow wide (1000) | 22.0K | 2.1K | 🟢 +955.8% |
| react: deep nested (100) | 96.9K | 20.3K | 🟢 +377.6% |
| react: product list (50) | 49.9K | 15.2K | 🟢 +229.0% |
| react: large table (500x10) | 3.8K | 2.0K | 🟢 +87.6% |
| data: primitives | 133.1K | 134.2K | ⚪ -0.8% |
| data: large string (100KB) | 41.2K | 36.7K | 🟢 +12.4% |
| data: nested objects (20) | 82.5K | 71.1K | 🟢 +16.0% |
| data: large array (10K) | 266 | 238 | 🟢 +11.7% |
| data: Map & Set | 16.2K | 14.9K | 🟢 +8.5% |
| data: Date/BigInt/Symbol | 139.7K | 125.0K | 🟢 +11.8% |
| data: typed arrays | 60.0K | 45.9K | 🟢 +30.7% |
| data: mixed payload | 25.2K | 15.1K | 🟢 +66.6% |
Roundtrip (serialize + deserialize)
| Scenario | @lazarv/rsc | webpack | vs webpack |
|---|---|---|---|
| react: minimal element | 114.5K | 26.2K | 🟢 +337.0% |
| react: shallow wide (1000) | 1.8K | 290 | 🟢 +505.3% |
| react: deep nested (100) | 15.1K | 4.4K | 🟢 +243.3% |
| react: product list (50) | 5.8K | 1.7K | 🟢 +230.4% |
| react: large table (500x10) | 251 | 83 | 🟢 +203.3% |
| data: primitives | 93.7K | 35.3K | 🟢 +165.6% |
| data: large string (100KB) | 6.1K | 6.4K | 🔴 -4.8% |
| data: nested objects (20) | 37.6K | 19.9K | 🟢 +88.3% |
| data: large array (10K) | 69 | 80 | 🔴 -13.7% |
| data: Map & Set | 6.4K | 4.2K | 🟢 +50.1% |
| data: Date/BigInt/Symbol | 89.5K | 32.4K | 🟢 +176.1% |
| data: typed arrays | 27.4K | 12.0K | 🟢 +129.0% |
| data: mixed payload | 6.6K | 3.4K | 🟢 +94.9% |
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.
❌ 6 Tests Failed:
View the top 3 failed test(s) by shortest run time
To view more test analytics, go to the Test Analytics Dashboard |
⚡ 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. |
Upgrade dependencies.
Adds
chokidarcompatibility layer to be able to watch a pattern.