The Wire · Showcase
VERCEL SHRINKS TURBOPACK MEMORY FOOTPRINT BY HUNDREDS OF MEGABYTES
By RepoJournal · Filed · About Vercel
Next.js just cut RawVc in half and CellId by a third, removing massive chunks of peak RAM from large apps.
The turbo-tasks optimization [1] hand-packs RawVc from 16 bytes down to 8 and CellId from 6 bytes to 4, targeting the type-erased representations that live in huge numbers across cache keys and task storage. This isn't theoretical: on real, large applications, the reduction removes hundreds of megabytes of peak RSS. The change lands alongside arena-allocated Effects [11] as part of a systematic push to make Turbopack leaner. On the CLI side, Vercel shipped cleanup across three fronts: removal of the never-released Functions Beta flag infrastructure [3], [2], fixture updates to align with the API's deprecation of public deployments [4], and critical fixes to blob store commands that were hanging agents in non-interactive mode [5]. Next.js itself is moving faster on the Rspack 2.0 upgrade [6], now building locally with synced Rust bindings, and experimental React compiler support just landed in Turbopack [7] to run the compiler directly on swc AST without gen-and-reparse overhead. Workflow 4.5.0 replaces the problematic `hook.hasConflict` promise property with `hook.getConflict()` method [8], and incoming traces now use linked-trace mode instead of mega-traces [9], [10] to keep observability readable and bounded per invocation.
Action items
- → Test Turbopack memory behavior in large apps after the RawVc/CellId optimization lands vercel/next.js [plan]
- → Update workflow hook usage from hasConflict property to getConflict() method vercel/workflow [plan]
- → Remove --functions-beta flags from any custom deployment pipelines vercel/vercel [monitor]
- → Audit fixture and test configs for deprecated 'public' field in deployments vercel/vercel [plan]
References
- [1] [turbo-tasks] Shrink RawVc to 8 bytes and CellId to 4 bytes ↗ vercel/next.js
- [2] [cli] Remove --functions-beta deploy flags and size-limit hint ↗ vercel/vercel
- [3] [cli] Remove --functions-beta deploy flags and size-limit hint (#16615) vercel/vercel
- [4] fix(test): remove deprecated public field from deployment fixtures (#16675) vercel/vercel
- [5] [cli] Make `vercel blob` store commands work for agents ↗ vercel/vercel
- [6] chore: upgrade next-rspack to rspack 2.0 ↗ vercel/next.js
- [7] Turbopack: add experimental React compiler support ↗ vercel/next.js
- [8] [email protected] ↗ vercel/workflow
- [9] otel: explicit traceparent injection + linked-trace mode for bounded per-invocation traces (#2363) vercel/workflow
- [10] otel: explicit traceparent injection + linked-trace mode for bounded per-invocation traces ↗ vercel/workflow
- [11] [turbopack] Allocate `Effect`s in an arena ↗ vercel/next.js
FAQ
- What changed in Vercel on June 16, 2026?
- Next.js just cut RawVc in half and CellId by a third, removing massive chunks of peak RAM from large apps.
- What should Vercel teams do about it?
- Test Turbopack memory behavior in large apps after the RawVc/CellId optimization lands • Update workflow hook usage from hasConflict property to getConflict() method • Remove --functions-beta flags from any custom deployment pipelines
- Which Vercel repositories shipped on June 16, 2026?
- vercel/next.js, vercel/vercel, vercel/workflow