Skip to content

[workflow] Bump Vite#1827

Merged
mknichel merged 90 commits intomainfrom
karthik/bump-vite
Apr 22, 2026
Merged

[workflow] Bump Vite#1827
mknichel merged 90 commits intomainfrom
karthik/bump-vite

Conversation

@karthikscale3
Copy link
Copy Markdown
Contributor

No description provided.

@karthikscale3 karthikscale3 marked this pull request as ready for review April 22, 2026 19:45
@vercel
Copy link
Copy Markdown
Contributor

vercel Bot commented Apr 22, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
example-nextjs-workflow-turbopack Ready Ready Preview, Comment Apr 22, 2026 7:50pm
example-nextjs-workflow-webpack Ready Ready Preview, Comment Apr 22, 2026 7:50pm
example-workflow Ready Ready Preview, Comment Apr 22, 2026 7:50pm
workbench-astro-workflow Ready Ready Preview, Comment Apr 22, 2026 7:50pm
workbench-express-workflow Ready Ready Preview, Comment Apr 22, 2026 7:50pm
workbench-fastify-workflow Ready Ready Preview, Comment Apr 22, 2026 7:50pm
workbench-hono-workflow Ready Ready Preview, Comment Apr 22, 2026 7:50pm
workbench-nitro-workflow Ready Ready Preview, Comment Apr 22, 2026 7:50pm
workbench-nuxt-workflow Ready Ready Preview, Comment Apr 22, 2026 7:50pm
workbench-sveltekit-workflow Ready Ready Preview, Comment Apr 22, 2026 7:50pm
workbench-vite-workflow Ready Ready Preview, Comment Apr 22, 2026 7:50pm
workflow-docs Ready Ready Preview, Comment, Open in v0 Apr 22, 2026 7:50pm
workflow-swc-playground Ready Ready Preview, Comment Apr 22, 2026 7:50pm
workflow-web Ready Ready Preview, Comment Apr 22, 2026 7:50pm

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Apr 22, 2026

📊 Benchmark Results

📈 Comparing against baseline from main branch. Green 🟢 = faster, Red 🔺 = slower.

workflow with no steps

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
💻 Local 🥇 Nitro 0.042s (-3.5%) 1.004s (~) 0.963s 10 1.00x
💻 Local Express 0.042s (-4.7%) 1.006s (~) 0.964s 10 1.01x
💻 Local Next.js (Turbopack) 0.046s 1.006s 0.959s 10 1.12x
🐘 Postgres Next.js (Turbopack) 0.056s 1.009s 0.953s 10 1.36x
🐘 Postgres Express 0.059s (+0.9%) 1.009s (~) 0.951s 10 1.41x
🐘 Postgres Nitro 0.060s (-36.8% 🟢) 1.011s (-3.1%) 0.951s 10 1.45x
workflow with 1 step

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
💻 Local 🥇 Next.js (Turbopack) 1.118s 2.007s 0.889s 10 1.00x
💻 Local Nitro 1.133s (~) 2.007s (~) 0.874s 10 1.01x
💻 Local Express 1.135s (+0.8%) 2.005s (~) 0.871s 10 1.02x
🐘 Postgres Next.js (Turbopack) 1.135s 2.009s 0.874s 10 1.02x
🐘 Postgres Express 1.143s (~) 2.010s (~) 0.867s 10 1.02x
🐘 Postgres Nitro 1.148s (+0.7%) 2.010s (~) 0.862s 10 1.03x
workflow with 10 sequential steps

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
💻 Local 🥇 Next.js (Turbopack) 10.848s 11.023s 0.175s 3 1.00x
🐘 Postgres Express 10.851s (-1.0%) 11.019s (~) 0.168s 3 1.00x
🐘 Postgres Nitro 10.882s (~) 11.021s (~) 0.139s 3 1.00x
🐘 Postgres Next.js (Turbopack) 10.909s 11.021s 0.111s 3 1.01x
💻 Local Nitro 10.970s (~) 11.023s (~) 0.052s 3 1.01x
💻 Local Express 10.976s (~) 11.024s (~) 0.048s 3 1.01x
workflow with 25 sequential steps

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Express 14.488s (-0.7%) 15.021s (~) 0.533s 4 1.00x
🐘 Postgres Nitro 14.566s (~) 15.025s (~) 0.459s 4 1.01x
🐘 Postgres Next.js (Turbopack) 14.575s 15.019s 0.445s 4 1.01x
💻 Local Next.js (Turbopack) 14.605s 15.030s 0.425s 4 1.01x
💻 Local Nitro 14.985s (-0.5%) 15.279s (-4.7%) 0.294s 4 1.03x
💻 Local Express 15.079s (+0.7%) 16.033s (+6.7% 🔺) 0.953s 4 1.04x
workflow with 50 sequential steps

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Express 13.745s (-1.9%) 14.020s (-3.9%) 0.275s 7 1.00x
🐘 Postgres Nitro 13.987s (~) 14.310s (~) 0.323s 7 1.02x
🐘 Postgres Next.js (Turbopack) 14.082s 14.592s 0.510s 7 1.02x
💻 Local Next.js (Turbopack) 16.202s 17.031s 0.829s 6 1.18x
💻 Local Nitro 16.481s (-1.8%) 17.032s (~) 0.551s 6 1.20x
💻 Local Express 16.890s (+1.7%) 17.198s (+1.0%) 0.308s 6 1.23x
Promise.all with 10 concurrent steps

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Next.js (Turbopack) 1.241s 2.010s 0.769s 15 1.00x
🐘 Postgres Express 1.265s (~) 2.008s (~) 0.744s 15 1.02x
🐘 Postgres Nitro 1.267s (-0.6%) 2.010s (~) 0.743s 15 1.02x
💻 Local Nitro 1.494s (-8.5% 🟢) 2.005s (-3.3%) 0.512s 15 1.20x
💻 Local Express 1.527s (+2.6%) 2.006s (~) 0.479s 15 1.23x
💻 Local Next.js (Turbopack) 1.620s 2.073s 0.453s 15 1.30x
Promise.all with 25 concurrent steps

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Nitro 2.352s (~) 3.010s (~) 0.658s 10 1.00x
🐘 Postgres Express 2.353s (~) 3.008s (~) 0.655s 10 1.00x
🐘 Postgres Next.js (Turbopack) 2.386s 3.009s 0.623s 10 1.01x
💻 Local Nitro 2.816s (-10.4% 🟢) 3.009s (-22.6% 🟢) 0.193s 10 1.20x
💻 Local Next.js (Turbopack) 3.019s 3.885s 0.866s 8 1.28x
💻 Local Express 3.147s (+6.6% 🔺) 4.012s (+16.2% 🔺) 0.865s 8 1.34x
Promise.all with 50 concurrent steps

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Express 3.451s (-1.0%) 4.010s (~) 0.558s 8 1.00x
🐘 Postgres Nitro 3.483s (~) 4.012s (~) 0.529s 8 1.01x
🐘 Postgres Next.js (Turbopack) 3.672s 4.010s 0.338s 8 1.06x
💻 Local Nitro 7.410s (-11.2% 🟢) 8.020s (-11.1% 🟢) 0.609s 4 2.15x
💻 Local Next.js (Turbopack) 7.745s 8.269s 0.524s 4 2.24x
💻 Local Express 8.611s (+3.3%) 9.275s (+2.8%) 0.663s 4 2.50x
Promise.race with 10 concurrent steps

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Next.js (Turbopack) 1.219s 2.010s 0.790s 15 1.00x
🐘 Postgres Nitro 1.253s (~) 2.007s (~) 0.754s 15 1.03x
🐘 Postgres Express 1.258s (~) 2.008s (~) 0.750s 15 1.03x
💻 Local Next.js (Turbopack) 1.504s 2.005s 0.501s 15 1.23x
💻 Local Nitro 1.524s (-18.3% 🟢) 2.005s (-14.3% 🟢) 0.481s 15 1.25x
💻 Local Express 1.600s (-15.5% 🟢) 2.006s (-15.1% 🟢) 0.407s 15 1.31x
Promise.race with 25 concurrent steps

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Express 2.311s (-1.3%) 3.009s (~) 0.699s 10 1.00x
🐘 Postgres Nitro 2.325s (-0.6%) 3.010s (~) 0.684s 10 1.01x
🐘 Postgres Next.js (Turbopack) 2.448s 3.008s 0.561s 10 1.06x
💻 Local Next.js (Turbopack) 2.894s 3.564s 0.670s 9 1.25x
💻 Local Nitro 2.926s (-4.5%) 3.564s (-8.3% 🟢) 0.639s 9 1.27x
💻 Local Express 3.075s (-1.8%) 3.884s (+3.2%) 0.809s 8 1.33x
Promise.race with 50 concurrent steps

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Nitro 3.470s (~) 4.010s (~) 0.540s 8 1.00x
🐘 Postgres Express 3.494s (~) 4.010s (~) 0.516s 8 1.01x
🐘 Postgres Next.js (Turbopack) 3.633s 4.013s 0.379s 8 1.05x
💻 Local Nitro 8.354s (-8.6% 🟢) 9.023s (-10.0% 🟢) 0.669s 4 2.41x
💻 Local Next.js (Turbopack) 8.373s 8.769s 0.396s 4 2.41x
💻 Local Express 9.018s (+2.5%) 9.528s (+2.8%) 0.511s 4 2.60x
workflow with 10 sequential data payload steps (10KB)

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Next.js (Turbopack) 0.776s 1.023s 0.247s 59 1.00x
🐘 Postgres Express 0.796s (-5.2% 🟢) 1.022s (~) 0.227s 59 1.03x
🐘 Postgres Nitro 0.819s (~) 1.006s (~) 0.187s 60 1.06x
💻 Local Next.js (Turbopack) 0.862s 1.022s 0.160s 59 1.11x
💻 Local Express 1.010s (+2.6%) 1.627s (+51.2% 🔺) 0.618s 37 1.30x
💻 Local Nitro 1.015s (+3.5%) 1.771s (+61.9% 🔺) 0.756s 34 1.31x
workflow with 25 sequential data payload steps (10KB)

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Express 1.920s (-2.9%) 2.174s (-3.7%) 0.254s 42 1.00x
🐘 Postgres Next.js (Turbopack) 1.931s 2.150s 0.219s 42 1.01x
🐘 Postgres Nitro 1.951s (+1.2%) 2.203s (+4.9%) 0.252s 41 1.02x
💻 Local Next.js (Turbopack) 2.707s 3.008s 0.301s 30 1.41x
💻 Local Nitro 3.029s (~) 3.649s (-2.9%) 0.620s 25 1.58x
💻 Local Express 3.070s (+1.8%) 3.843s (+7.2% 🔺) 0.774s 24 1.60x
workflow with 50 sequential data payload steps (10KB)

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Express 3.833s (-3.9%) 4.042s (-7.5% 🟢) 0.209s 30 1.00x
🐘 Postgres Next.js (Turbopack) 3.887s 4.110s 0.223s 30 1.01x
🐘 Postgres Nitro 3.971s (-3.2%) 4.454s (-3.3%) 0.483s 27 1.04x
💻 Local Next.js (Turbopack) 8.809s 9.089s 0.280s 14 2.30x
💻 Local Nitro 8.971s (-3.5%) 9.324s (-6.9% 🟢) 0.353s 13 2.34x
💻 Local Express 9.215s (~) 10.019s (~) 0.804s 12 2.40x
workflow with 10 concurrent data payload steps (10KB)

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Next.js (Turbopack) 0.252s 1.007s 0.755s 60 1.00x
🐘 Postgres Nitro 0.283s (~) 1.008s (~) 0.724s 60 1.13x
🐘 Postgres Express 0.283s (~) 1.007s (~) 0.723s 60 1.13x
💻 Local Next.js (Turbopack) 0.569s 1.005s 0.435s 60 2.26x
💻 Local Express 0.574s (+2.4%) 1.005s (~) 0.431s 60 2.28x
💻 Local Nitro 0.575s (-4.9%) 1.004s (-1.7%) 0.429s 60 2.28x
workflow with 25 concurrent data payload steps (10KB)

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Next.js (Turbopack) 0.472s 1.006s 0.534s 90 1.00x
🐘 Postgres Nitro 0.486s (-2.1%) 1.006s (~) 0.521s 90 1.03x
🐘 Postgres Express 0.489s (-4.2%) 1.006s (~) 0.518s 90 1.03x
💻 Local Nitro 2.385s (-6.0% 🟢) 3.008s (~) 0.623s 30 5.05x
💻 Local Express 2.556s (+1.7%) 3.009s (~) 0.453s 30 5.41x
💻 Local Next.js (Turbopack) 2.657s 3.009s 0.352s 30 5.63x
workflow with 50 concurrent data payload steps (10KB)

💻 Local Development

World Framework Workflow Time Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Next.js (Turbopack) 0.763s 1.006s 0.243s 120 1.00x
🐘 Postgres Express 0.767s (-6.4% 🟢) 1.007s (-1.1%) 0.240s 120 1.00x
🐘 Postgres Nitro 0.801s (+1.4%) 1.008s (~) 0.207s 119 1.05x
💻 Local Nitro 10.369s (-7.3% 🟢) 11.029s (-5.4% 🟢) 0.660s 11 13.58x
💻 Local Next.js (Turbopack) 11.053s 11.572s 0.518s 11 14.48x
💻 Local Express 11.088s (-0.9%) 11.668s (-2.3%) 0.580s 11 14.52x
Stream Benchmarks (includes TTFB metrics)
workflow with stream

💻 Local Development

World Framework Workflow Time TTFB Slurp Wall Time Overhead Samples vs Fastest
💻 Local 🥇 Next.js (Turbopack) 0.173s 1.003s 0.012s 1.018s 0.845s 10 1.00x
🐘 Postgres Express 0.203s (-1.1%) 0.996s (~) 0.001s (-31.3% 🟢) 1.008s (~) 0.805s 10 1.17x
💻 Local Express 0.206s (+3.4%) 1.004s (~) 0.012s (+1.7%) 1.019s (~) 0.813s 10 1.19x
💻 Local Nitro 0.207s (-3.2%) 1.004s (~) 0.010s (-17.6% 🟢) 1.016s (~) 0.809s 10 1.19x
🐘 Postgres Next.js (Turbopack) 0.209s 1.001s 0.001s 1.010s 0.801s 10 1.21x
🐘 Postgres Nitro 0.216s (+5.4% 🔺) 0.996s (~) 0.002s (~) 1.010s (~) 0.794s 10 1.25x
stream pipeline with 5 transform steps (1MB)

💻 Local Development

World Framework Workflow Time TTFB Slurp Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Express 0.595s (-5.6% 🟢) 1.003s (~) 0.005s (+22.6% 🔺) 1.024s (~) 0.430s 59 1.00x
🐘 Postgres Next.js (Turbopack) 0.609s 1.009s 0.004s 1.021s 0.413s 59 1.02x
🐘 Postgres Nitro 0.633s (+1.4%) 1.022s (+1.5%) 0.004s (-6.6% 🟢) 1.040s (+1.7%) 0.407s 58 1.06x
💻 Local Nitro 0.761s (-9.3% 🟢) 1.012s (~) 0.009s (-6.3% 🟢) 1.023s (-8.3% 🟢) 0.262s 59 1.28x
💻 Local Next.js (Turbopack) 0.768s 1.011s 0.010s 1.117s 0.349s 54 1.29x
💻 Local Express 0.854s (+12.7% 🔺) 1.013s (-1.6%) 0.010s (+2.1%) 1.117s (+7.4% 🔺) 0.263s 54 1.44x
10 parallel streams (1MB each)

💻 Local Development

World Framework Workflow Time TTFB Slurp Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Next.js (Turbopack) 0.923s 1.092s 0.000s 1.098s 0.176s 55 1.00x
🐘 Postgres Express 0.942s (-1.9%) 1.144s (-10.5% 🟢) 0.000s (-56.6% 🟢) 1.158s (-11.3% 🟢) 0.216s 53 1.02x
🐘 Postgres Nitro 0.973s (~) 1.196s (-4.2%) 0.000s (+92.0% 🔺) 1.208s (-3.9%) 0.235s 50 1.05x
💻 Local Nitro 1.221s (~) 2.021s (~) 0.000s (+166.7% 🔺) 2.023s (~) 0.802s 30 1.32x
💻 Local Express 1.242s (+1.4%) 2.022s (~) 0.001s (+60.0% 🔺) 2.024s (~) 0.781s 30 1.35x
💻 Local Next.js (Turbopack) 1.286s 2.021s 0.000s 2.024s 0.738s 30 1.39x
fan-out fan-in 10 streams (1MB each)

💻 Local Development

World Framework Workflow Time TTFB Slurp Wall Time Overhead Samples vs Fastest
🐘 Postgres 🥇 Express 1.740s (-1.8%) 2.099s (-3.6%) 0.000s (+Infinity% 🔺) 2.112s (-3.9%) 0.372s 29 1.00x
🐘 Postgres Nitro 1.782s (-0.5%) 2.141s (~) 0.000s (-100.0% 🟢) 2.152s (-1.0%) 0.370s 28 1.02x
🐘 Postgres Next.js (Turbopack) 1.805s 2.106s 0.000s 2.113s 0.308s 29 1.04x
💻 Local Nitro 3.462s (+2.2%) 4.036s (~) 0.001s (+25.0% 🔺) 4.039s (~) 0.576s 15 1.99x
💻 Local Express 3.485s (+0.5%) 4.034s (~) 0.001s (-33.3% 🟢) 4.037s (~) 0.551s 15 2.00x
💻 Local Next.js (Turbopack) 3.640s 4.166s 0.000s 4.170s 0.530s 15 2.09x

Summary

Fastest Framework by World

Winner determined by most benchmark wins

World 🥇 Fastest Framework Wins
💻 Local Next.js (Turbopack) 11/21
🐘 Postgres Express 10/21
Fastest World by Framework

Winner determined by most benchmark wins

Framework 🥇 Fastest World Wins
Express 🐘 Postgres 19/21
Next.js (Turbopack) 🐘 Postgres 17/21
Nitro 🐘 Postgres 18/21
Column Definitions
  • Workflow Time: Runtime reported by workflow (completedAt - createdAt) - primary metric
  • TTFB: Time to First Byte - time from workflow start until first stream byte received (stream benchmarks only)
  • Slurp: Time from first byte to complete stream consumption (stream benchmarks only)
  • Wall Time: Total testbench time (trigger workflow + poll for result)
  • Overhead: Testbench overhead (Wall Time - Workflow Time)
  • Samples: Number of benchmark iterations run
  • vs Fastest: How much slower compared to the fastest configuration for this benchmark

Worlds:

  • 💻 Local: In-memory filesystem world (local development)
  • 🐘 Postgres: PostgreSQL database world (local development)
  • ▲ Vercel: Vercel production/preview deployment
  • 🌐 Turso: Community world (local development)
  • 🌐 MongoDB: Community world (local development)
  • 🌐 Redis: Community world (local development)
  • 🌐 Jazz: Community world (local development)

📋 View full workflow run


Some benchmark jobs failed:

  • Local: success
  • Postgres: success
  • Vercel: failure

Check the workflow run for details.

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Apr 22, 2026

🧪 E2E Test Results

All tests passed

Summary

Passed Failed Skipped Total
✅ 🪟 Windows 95 0 0 95
Total 95 0 0 95

Details by Category

✅ 🪟 Windows
App Passed Failed Skipped
✅ nextjs-turbopack 95 0 0

📋 View full workflow run


Some E2E test jobs failed:

  • Vercel Prod: failure
  • Local Dev: skipped
  • Local Prod: skipped
  • Local Postgres: skipped
  • Windows: success

Check the workflow run for details.

@karthikscale3 karthikscale3 changed the title [workflow] Bump vite [workflow] Bump Vite Apr 22, 2026
Copy link
Copy Markdown
Member

@VaguelySerious VaguelySerious left a comment

Choose a reason for hiding this comment

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

LGTM, I expect vercel tests to fail due to auth. We'll presumably not release any packages until we fix auth and double check main CI so that's fine

@karthikscale3 karthikscale3 added the backport-stable Cherry-pick this PR to the stable branch when merged label Apr 22, 2026
@mknichel mknichel merged commit 56ba32f into main Apr 22, 2026
53 of 84 checks passed
@mknichel mknichel deleted the karthik/bump-vite branch April 22, 2026 21:05
TooTallNate added a commit that referenced this pull request Apr 28, 2026
* test: enable step source-map assertions for vite local dev

Vite ^7.3.2 (bumped in #1827) preserves step bundle source maps in
dev mode, so stack traces now contain original file paths. Update
hasStepSourceMaps() so vite returns true in local dev and stays false
only in local prod, fixing the consistently failing 'basic step error'
and 'cross-file step error' e2e tests.

* chore: drop body from empty changeset

* address review: drop redundant vite local-prod guard

The default `!DEV_TEST_CONFIG` fall-through already returns false for
vite local prod, so the vite-specific guard is dead code. Just remove
the vite block entirely now that vite local dev matches the default
'has source maps' behavior.
ijjk pushed a commit that referenced this pull request Apr 28, 2026
* test: enable step source-map assertions for vite local dev

Vite ^7.3.2 (bumped in #1827) preserves step bundle source maps in
dev mode, so stack traces now contain original file paths. Update
hasStepSourceMaps() so vite returns true in local dev and stays false
only in local prod, fixing the consistently failing 'basic step error'
and 'cross-file step error' e2e tests.

* chore: drop body from empty changeset

* address review: drop redundant vite local-prod guard

The default `!DEV_TEST_CONFIG` fall-through already returns false for
vite local prod, so the vite-specific guard is dead code. Just remove
the vite block entirely now that vite local dev matches the default
'has source maps' behavior.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backport-stable Cherry-pick this PR to the stable branch when merged

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants