Skip to content

Releases: vercel/next.js

v16.2.1-canary.30

09 Apr 23:35

Choose a tag to compare

v16.2.1-canary.30 Pre-release
Pre-release

Core Changes

  • Add next internal upload-trace: #92191
  • Perf: Add fast path to isAbsoluteUrl: #91389
  • Perf: Don't require watchpack in production: #91387
  • Request logging: Fix generate-params time being included in next.js time: #91386
  • Perf: Use charCodeAt in removeTrailingSlash: #91384
  • Perf: Cache regex in shouldServeStreamingMetadata: #91388
  • fix: scope "Pages Router only" comment to default export in next/error: #92566
  • Turbopack Build: Remove dev fouc from production bundle: #80935
  • fix(hmr): reconnect WebSocket after sleep/wake: #91416
  • Handle target option in React Compiler for Pages + React 18: #91500
  • [turbopack] Rust dependency caching via sccache: #91873
  • trace: detect rage restarts and deleted .next dirs: #92489

Misc Changes

  • turbo-tasks-backend: prevent duplicate task restores with restoring bits: #92389
  • docs: update details about unstable_retry() behavior: #91827
  • docs: link updateTag from cacheTag reference: #92379
  • [test] Stop using deprecated target: "es5" TypeScript compiler option: #92458
  • Docs: Instant docs updates: #92515
  • Turbopack: Improve unable to resolve next error: #91394
  • [test] Ensure incomplete minimum release age isn't propagated to fixture installs: #92568
  • test: skip .next and other build artifacts in writeFiles filter: #92578
  • Replace wasmer with wasmtime for SWC plugin WASM engine: #91533
  • docs: native db drivers with sync queries: #92572
  • turbopack: fix incremental build when module factories are restored from persistent cache: #92569
  • CI: Another attempt to fix pnpm versions for next-stats-action on canary: #92550
  • [turbopack] fix a debug_assert failure: #92581

Credits

Huge thanks to @sokra, @timneutkens, @devjiwonchoi, @aurorascharff, @eps1lon, @lukesandberg, @icyJoseph, @bgw, @mmastrac, and @wbinnssmith for helping!

v16.2.3

08 Apr 18:53

Choose a tag to compare

Note

This release is backporting security and bug fixes. For more information about the fixed security vulnerability, please see https://vercel.com/changelog/summary-of-cve-2026-23869. The release does not include all pending features/changes on canary.

Core Changes

  • Ensure app-page reports stale ISR revalidation errors via onRequestError (#92282)
  • Fix [Bug]: manifest.ts breaks HMR in Next.js 16.2 (#91981 through #92273)
  • Deduplicate output assets and detect content conflicts on emit (#92292)
  • Fix styled-jsx race condition: styles lost due to concurrent rendering (#92459)
  • turbo-tasks-backend: stability fixes for task cancellation and error handling (#92254)

Credits

Huge thanks to @icyJoseph, @sokra, @wbinnssmith, @eps1lon and @ztanner for helping!

v16.2.1-canary.29

08 Apr 23:35

Choose a tag to compare

v16.2.1-canary.29 Pre-release
Pre-release

Core Changes

  • Turbopack: switch from immutable token to path prefix: #92164
  • [build info]: distinguish between PPR and fully static routes in gSP: #92518
  • [build info]: omit symbol from top level gSP route: #92525

Misc Changes

  • CI: Fix issue with conflicting 'engines.pnpm' field in next-stats-action: #92533
  • Exclude use tests from react18 testing: #92542
  • Fix React18 tests for unstable_io: #92543

Credits

Huge thanks to @bgw, @mischnic, @gnoff, and @ztanner for helping!

v16.2.1-canary.27

08 Apr 19:46

Choose a tag to compare

v16.2.1-canary.27 Pre-release
Pre-release

Core Changes

  • fix: mention params and searchParams in blocking-route error messages: #92360
  • CPU prof: Write profiles to .next-profiles instead of .next/cpu-profiles: #92078
  • feat: generate root params types: #91019
  • fix: resolve function configs in unstable_getResponseFromNextConfig: #92501
  • Bundle skills/ directory into next/dist/skills: #92493
  • Node.js streams: Fork points: #92252
  • fix: replace docs/canary links with stable docs paths in error messages: #92528

Misc Changes

  • CI: Remove unused dependencies from next-stats-action dockerfile: #92485
  • docs: add note on React canary version to View transitions guide: #92315
  • docs: note PPR default in cacheComponents reference: #92378
  • Upgrade swc_core 57 -> 58, swc_sourcemap 9 -> 10, swc_plugin_runner 24 -> 25: #91532
  • docs: instant-navs draft, samples for build validation: #91850
  • docs: add middleware.mdx deprecation stub for discoverability: #92281
  • docs: improve blocking-route error page for params discoverability: #92359
  • docs: clarify cacheLife() cannot be called at module scope: #92326
  • perf: use whole_app_module_graph for get_compilation_issues MCP tool: #92473
  • Turbopack: Write trace file to .next-profiles: #92189
  • Update Rspack development test manifest: #92502
  • Update Rspack production test manifest: #92503
  • CI: Use pnpm lockfile for next-stats-action: #92488
  • docs: add note on installing server-only in data security guide: #92445
  • CI: Use minimumReleaseAge in pnpm workspace files: #92480

Credits

Huge thanks to @bgw, @aurorascharff, @lukesandberg, @icyJoseph, @timneutkens, @sokra, @vercel-release-bot, @abhishekmardiya, @bgub, @TooTallNate, and @gaojude for helping!

v15.5.15

08 Apr 19:07

Choose a tag to compare

Please refer the following changelogs for more information about this security release:

https://vercel.com/changelog/summary-of-cve-2026-23869

v16.2.1-canary.26

07 Apr 23:34

Choose a tag to compare

v16.2.1-canary.26 Pre-release
Pre-release

Core Changes

  • next-routing: middleware matching and app request URL normalization: #91859
  • docs: clarify serverless runtime behavior for use cache: #92232

Misc Changes

  • Adding more system info to the 'initialize project' trace: #92427
  • CI: Update and cleanup next-stats-action, force using pnpm 10.33.0: #92475
  • turbo-persistence: Use AtomicBool for is_empty() to avoid lock contention: #92481

Credits

Huge thanks to @ijjk, @andrewimm, @bgw, @wwenrr, and @lukesandberg for helping!

v16.2.1-canary.25

07 Apr 18:52

Choose a tag to compare

v16.2.1-canary.25 Pre-release
Pre-release

Core Changes

  • Include more context in macOS Rosetta 2 warning message: #92436
  • change the process name of builds: #92411
  • Fix styled-jsx race condition: styles lost due to concurrent rendering: #92459
  • turbo-tasks: fix hashed cell mode crash on task error (re-land #91576): #92108
  • Optimize how we track data for persistence: #89370
  • Route Handlers: Fix devRequestTimingInternalsEnd and Turbopack server HMR: #92271

Misc Changes

  • turbo-persistence: skip BlockCache for uncompressed (mmap-backed) blocks: #92390
  • docs: clarify that proxy/middleware matches static assets by default: #92441
  • turbo-persistence: pin referenced BlockCache entries to prevent eviction: #92361
  • [test] Skip flaky client-cache.parallel-routes in production and deploy: #92195
  • Fix sst inspect tool to respect CURRENT and stale sst files: #92414
  • [turbopack] add family name to many spans: #92415
  • scripts/pr-status: add reply-and-resolve-thread command: #92450
  • [test] Regenerate checked-in tsconfig.json files: #92455

Credits

Huge thanks to @sokra, @bgw, @lukesandberg, @icyJoseph, @eps1lon, and @wbinnssmith for helping!

v16.2.1-canary.24

07 Apr 04:18

Choose a tag to compare

v16.2.1-canary.24 Pre-release
Pre-release

Core Changes

  • chore: Upgrade to pnpm 10.x: #92283
  • fix(server-hmr): metadata routes overwrite page runtime HMR handler: #92273
  • Turbopack: Add a check for node version before allowing workerThreads: #91614

Misc Changes

  • turbo-persistence: optimize file syncing: #90542
  • Bump turborepo from 2.8.11 to 2.9.4: #92425
  • Turbopack: Remove turbo_tasks::apply_effects, use Effects::apply instead: #91858

Credits

Huge thanks to @bgw, @wbinnssmith, and @lukesandberg for helping!

v16.2.1-canary.23

06 Apr 23:33

Choose a tag to compare

v16.2.1-canary.23 Pre-release
Pre-release

Core Changes

  • Allow for parsing app route strings with and without slot names.: #92327

Misc Changes

  • use sorted inserts to improve builder performance: #91553
  • [tests]: remove unnecessary skipDeployment flags: #92423

Credits

Huge thanks to @lukesandberg, @ztanner, and @gnoff for helping!

v16.2.1-canary.22

06 Apr 18:00

Choose a tag to compare

v16.2.1-canary.22 Pre-release
Pre-release

Core Changes

  • Handle edge runtime in places that import node:stream: #92354
  • fix: add AGENTS.md at package root for agent discovery: #92376
  • Fix fallback route params case in app-page handler: #91737

Credits

Huge thanks to @timneutkens, @aurorascharff, and @ijjk for helping!