chore(deps): upgrade next 16.2.11 -> 16.2.12 - #6077
Conversation
16.2.12 is the current stable (published 2026-07-25) and its entire changelog is two PRs: a docs backport and vercel/next.js#95831, "Fixes to support TypeScript 7". That second one matters here. `apps/sim` declares `typescript: ^7.0.2` and the lockfile resolves 7.0.2, while 16.2.11 predates any TS7 handling — not even the actionable-error guard (#95837), which was never merged. The upstream symptom is `next build` dying with a silent SIGSEGV during its type-check step, because the legacy TypeScript JS API that Next called is gone in TS7. Builds pass today only because Next detects @typescript/native-preview as the compiler and takes a different path, so we are accidentally-working rather than supported. 16.2.12 adds the `experimental.useTypeScriptCli` backend that makes this configuration official. Zero build-performance content in the patch, so this is not a speed change. Bumps all eight pins in lockstep — next, @next/env and the four @next/swc-* binaries at the root, plus the three app/package copies. The swc binaries must move with next: they are platform-gated optionalDependencies, so a version skew or a gate exclusion leaves them out of bun.lock entirely and `bun install --frozen-lockfile` installs no compiler at all (the #5945 failure). Also re-dates the bunfig.toml gate note, which said to drop the next entries on 2026-07-28 — yesterday. 16.2.12 is inside the 7-day window until 2026-08-01, so following that instruction would have blocked this bump and re-triggered the missing-compiler failure. Re-date on future bumps rather than deleting the entries early.
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
PR SummaryLow Risk Overview The Reviewed by Cursor Bugbot for commit 974d324. Configure here. |
Greptile SummaryBumps Next.js and lockstep packages from 16.2.11 to 16.2.12 across the monorepo.
Confidence Score: 5/5Safe to merge; this is a consistent lockstep Next 16.2.12 pin with matching lockfile and age-gate excludes and no application code changes. All next-related package.json pins, root overrides, optional swc binaries, and bun.lock entries move together to 16.2.12, and bunfig still excludes those packages while the release is inside the 7-day minimumReleaseAge window.
|
| Filename | Overview |
|---|---|
| package.json | Root next/@next/env overrides and four swc optionalDependencies pinned to 16.2.12 in lockstep. |
| bun.lock | Lockfile records next, @next/env, and all four pinned swc platform packages at 16.2.12 with no leftover 16.2.11 pins. |
| bunfig.toml | Comment re-dated for 16.2.12 publish window; exclude list still covers next and the four swc binaries. |
| apps/sim/package.json | App next dependency bumped to 16.2.12. |
| apps/docs/package.json | Docs next dependency bumped to 16.2.12. |
| packages/emcn/package.json | EMCN next dependency bumped to 16.2.12. |
Reviews (1): Last reviewed commit: "chore(deps): upgrade next 16.2.11 -> 16...." | Re-trigger Greptile
Summary
16.2.12 is the current stable (published 2026-07-25). We were on 16.2.11. The entire changelog is two PRs — one docs backport and one that matters here.
Why this isn't just a routine bump
vercel/next.js#95831 — "Fixes to support TypeScript 7" — resolves #95801:
next builddying with a silent SIGSEGV/SIGABRT during its type-check step whentypescript@7is installed, because the legacy TypeScript JS API that Next called was removed in TS 7.That configuration is ours:
apps/sim/package.jsondeclarestypescript: ^7.0.2; the lockfile resolves 7.0.2apps/sim/next.config.ts:120setstypescript.ignoreBuildErrorsonly underDOCKER_BUILD, so the CI check build runs Next's type-check with TS7 presentBuilds pass today because Next detects
@typescript/native-previewas the compiler (visible in the Build App log: "Detected @typescript/native-preview as TypeScript compiler") and takes a different path. So we're accidentally working, not supported — a change in resolution order could surface a build crash with no useful error. 16.2.12 adds theexperimental.useTypeScriptClibackend that makes this official.No build-performance content in the patch. This is not a speed change, and I'm not claiming one.
All eight pins move in lockstep
next+@next/env+ four@next/swc-*at the root, plus the copies inapps/sim,apps/docs, andpackages/emcn.The swc binaries must move with
next. They are platform-gatedoptionalDependencies, so a version skew or gate exclusion leaves them absent frombun.lockentirely andbun install --frozen-lockfileinstalls no compiler at all — Next then tries to download one at build time, which fails in CI. That is exactly the #5945 failure. Verified all four are recorded at 16.2.12:bunfig.toml comment was a live trap
The gate note said to drop the
next/@next/*entries fromminimumReleaseAgeExcludeson 2026-07-28 — yesterday. 16.2.12 published 2026-07-25, so it's inside the 7-day window until 2026-08-01. Anyone following that instruction before this bump would have blocked it and re-triggered the missing-compiler failure. Re-dated the note and added an explicit "re-date on future bumps rather than deleting early."Type of Change
Testing
bun install --frozen-lockfileclean;next --version→ 16.2.12bun.lockat 16.2.12tsc --noEmit -p apps/sim/tsconfig.jsonexit 0biome checkcleanBuild Appcheck is the real gate — it exercisesnext buildincluding the TypeScript step this patch fixesDeliberately not paired with any config or perf change so that if a Next patch regresses something, this is a clean single-variable revert.