Next.js Release Notes

Last updated: Oct 29, 2025

  • Oct 29, 2025
    • Parsed from source:
      Oct 29, 2025
    • Detected by Releasebot:
      Oct 29, 2025
    • Modified by Releasebot:
      Nov 5, 2025

    Next.js by Vercel

    v16.0.1

    New release brings broad stability fixes across routing, server rendering, and Windows environments, plus updated docs and dev tool tweaks. Expect smoother prefetch, better image handling, and more reliable cache and middleware behavior.

    Core Changes

    • fix(static-paths): add depth tracking to parallel route param resolution: #85319
    • Fix types of @next/mdx: #82238
    • Ensure getServerInsertedHTML skips rendering correctly: #85394
    • Fix duplicate .next/types include on Windows: #85400
    • Exclude next-js condition from middleware, proxy, and instrumentation: #85321
    • remove unstable_forceStale prefetch option & restore prefetch={true} functionality: #85411
    • Upgrade React from 2bcbf254-20251020 to 6160773f-20251023 : #85277
    • fix(next/image): swap dependencies: #85419
    • Handle Origin: null headers: #85402
    • Generalize Segment Cache fallback implementation: #84652
    • fix: ensure req.query is writable: #81573
    • fix: Proxy not picked up on Windows: #85443
    • [test] Ensure we can toggle the DevTools menu while status indicators are active: #85456
    • Fix crash when suspending in Components using useActionQueue: #85459

    Misc Changes

    • docs: create-next-app react-compiler and new prompts: #85213
    • docs: cache components - introduction: #85196
    • docs: use cache feedback: #85169
    • docs: stabilize apis in docs: #85219
    • docs: revalidateTag immediate expiration in Route Handlers: #85223
    • Docs/use cache feedback 2: #85222
    • docs: added use cache: remote docs: #85145
    • docs: proxy runtime defaults to nodejs: #85204
    • chore: cache components feedback: #85241
    • docs: add a note that cache components is opt-in near the top: #85245
    • Docs/v16 feedback: #85259
    • Update command to install babel-plugin-react-compiler as a devDependen...

    Credits

    Huge thanks to @icyJoseph, @wyattjoh, @devjiwonchoi, @arnabsen, @remcohaszing, @denesbeck, @gaojude, @mhart, @eps1lon, @jesuistuan, @codr, @InfiniteCodeMonkeys, @gnoff, @ztanner, @wbinnssmith, @styfle, @acdlite, @ale-grosselle, and @mischnic for helping!

    Original source Report a problem
  • Oct 22, 2025
    • Parsed from source:
      Oct 22, 2025
    • Detected by Releasebot:
      Oct 22, 2025

    Next.js by Vercel

    v16.0.0

    Next.js release delivers wide dev and build improvements with multiple React upgrades, Turbopack optimizations, and config/CLI fixes. Expect performance boosts, fewer edge cases in development, and smoother builds with new defaults and improved error overlays.

    Tip

    Check out our Next v16 Blog Post to learn more about this release.

    Core Changes

    • Development: Don't import app-router / hot-reloader through next/link in application code: #83656
    • Remove clientParamParsing requirement from RDC for Navigations: #83661
    • Upgrade React from 6b70072c-20250909 to 886b3d36-20250910 : #83650
    • Turbopack: Use readFileSync / writeFileSync for manifest writing: #83694
    • Upgrade React from 886b3d36-20250910 to f3a80361-20250911 : #83696
    • Don't create client-side debug channel if the feature is disabled: #83699
    • fix: dev should produce the correct default fallback regex to match builds/Turbopack: #83701
    • [devtool] fix overlay styles are missing: #83721
    • Revert "Remove clientParamParsing requirement from RDC for Navigations": #83725
    • Only enable unhandledRejection filtering when opted in: #83726
    • Fix index data route for adapter build-complete: #83730
    • Remove leading underscore for unhandledRejection envvar: #83732
    • Upgrade React from f3a80361-20250911 to 93d7aa69-20250912 : #83729
    • Upgrade React from 93d7aa69-20250912 to 8a8e9a7e-20250912 : #83742
    • Fix reentrancy of unhandledRejection filtering: #83741
    • Fix type for unhandled rejection handler process.removeListener: #83748
    • [OTel] fix: Root span name should not include high cardinality URL: #75416
    • Turbopack: Remove matchers.reload() call on each request: #83720
    • [Breaking] Flat config as default in @next/eslint-plugin-next: #83763
    • fix: Rspack splitChunks.chunks regex: #83670
    • Revert "Turbopack: Remove matchers.reload() call on each request": #83819
    • fix: unstable_cache should perform blocking revalidation during ISR revalidation: #83820
    • fix(Rspack): resolve HMR unresponsiveness or unexpected full reload & update dev snapshot: #83480
    • Allow next.config.mts for Node.js native TS resolver: #83556
    • chore: Ensure Import Trace starts in a newline: #83638
    • Development: Remove matchers.reload() on each request: #83829
    • Upgrade React from 8a8e9a7e-20250912 to 5e0c951b-20250916 : #83850
    • Bump typescript 5.9.2: #83833
    • Allow headers, rewrites and redirects to be defined as sync functions: #83743
    • Turbopack: Optimize addedRoutes and removedRoutes calculation: #83840
    • [next-config-ts] Set Node.js native TS loader fallback flag to process.env: #83832
    • Development: Clarify TypescriptStatus in watcher: #83857
    • Upgrade sharp dependency to version ^0.34.4: #83892
    • Upgrade React from 5e0c951b-20250916 to 128abcfa-20250917 : #83906
    • Add native ts resolver docs link to transpile-config: #83914
    • OTel: use srcPage for templates when next.route is unavailable: #83911
    • Remove inline CSS sourcemaps from next-devtools: #83917
    • Development: Move all TypeScript related work in watcher together: #83912
    • [Cache Components] Allow sync IO inside console methods : #83843
    • Upgrade React from 128abcfa-20250917 to 84af9085-20250917 : #83959
    • Build: Add .next/trace-build with high level trace: #83949
    • Remove force writing **/*.mts to tsconfig: #83967
    • feat: Isolate dev build from prod: #83961
    • Remove JS size reporting from next build: #83815
    • Docs/workspace setup: #83490
    • Turbopack: support import ... with {type: "bytes"} : #83896
    • fix: error overlay not closing when backdrop clicked: #83981
    • Upgrade React from 84af9085-20250917 to d415fd3e-20250919 : #84003
    • fix: worker logs should still support color: #84024
    • Update font data: #84005
    • Allow passing port to next internal trace: #83907
    • Turbopack: error when importing Typescript in node_modules: #83990
    • Turbopack: Deterministic builds (prerender-manifest, .next/package.json, ./next/postcss.js): #84081
    • Turbopack: Fix babel-loader (allowing built-in or manual configuration): #82676
    • [Cache Components] allow using headers() in runtime prefetches: #83838
    • [Breaking] Remove deprecated publicRuntimeConfig and serverRuntimeConfig : #83944
    • Turbopack: mode to disable tracing: #83683
    • babel-loader: Fix a few issues with config caching: #83973
    • Turbopack: Merge babel-loader and react-compiler configuration logic to avoid running babel twice: #83502
    • [breaking]: enable router scroll optimization by default: #84102
    • Fix layout for ssgPageRoutes in the file tree: #84104
    • Turbopack: Remove useless 'default' built-in webpack loader condition: #84111
    • Fix: Client should auto reload after server restarts: #83971
    • trace-build: Add missing spans: #84080
    • Development: Remove TypeScript from the hot path during bootup: #84090
    • Guide users to experimental.cacheComponents config: #84121
    • Development: Only load webpack when used: #84123
    • Turbopack: Skip loading webpack plugin: #84125
    • Development: Only load createEnvDefinitions when used: #83935
    • BREAKING CHANGE!: bump default images.minimumCacheTTL from 1 min to 4 hours: #84105
    • Feat: Add Model Context Protocol (MCP) server to Next.js dev server: #84100
    • Upgrade React from d415fd3e-20250919 to 1eca9a27-20250922 : #84093
    • Turbopack: Remove the deprecated .turbo config object: #84109
    • Flag excess properties in Next.js config with TypeScript: #84069
    • docs: update Security section to direct disclosures : #84156
    • ci: Enable experimental.isolatedDevBuild for test-experimental-dev : #84099
    • [turbopack] Ensure React Compiler options are based dev vs prod: #84062
    • Enable anonymous function naming in React Compiler: #84070
    • Revert "[Breaking] Remove deprecated publicRuntimeConfig and serverRuntimeConfig (#83944)": #84167
    • Fix double comma in build manifest: #84131
    • [turbopack] set app dir only to true when no pages entries detected: #84144
    • Split code-frame into separate compiled package: #84174
    • refactor: separate forward browser logs utils: #84151
    • Upgrade React from 1eca9a27-20250922 to e2332183-20250924 : #84189
    • [Cache Components] default to filtering unhandledRejection after abort: #84192
    • fix: prevent URL mutation in router rewrites: #83963
    • fix(server): fix pages router resume router matching: #84158
    • Feat: get_errors MCP endpoint: #84161
    • Add internal environment variable for enabling React Compiler: #84176
    • [devtools] Disable React's default Transition indicator: #84202
    • Upgrade React from e2332183-20250924 to b0c1dc01-20250925 : #84248
    • Feat: get_page_metadata MCP endpoint: #84211
    • feat: capture logs into logging file during development: #84183
    • babel-loader: Avoid calling expensive isReactCompilerRequired check when we must run Babel anyways: #84103
    • [mcp] expose logging: #84226
    • Move config.turbopack.moduleIds to config.experimental.turbopackModuleIds: #84230
    • Show invalid default export errors during prerendering: #84242
    • fix: make sure caller exists in babel preset: #84154
    • [mcp] allow to enable mcp server through env var: #84278
    • fix(metadata): make formatDetection respect true/false properly: #83924
    • Upgrade React from b0c1dc01-20250925 to df38ac9a-20250926 : #84276
    • Add a --webpack flag and default --turbopack to true: #84216
    • fix: Update URL resolution logic to handle search parameters on root path /?foo=bar: #78262
    • [Breaking] Remove deprecated sync access to Dynamic APIs: #84179
    • Move config.turbopack.moduleIds to config.experimental.turbopackModuleIds: #84230
    • Show invalid default export errors during prerendering: #84242
    • fix: make sure caller exists in babel preset: #84154
    • [mcp] allow to enable mcp server through env var: #84278
    • fix(metadata): make formatDetection respect true/false properly: #83924
    • Upgrade React from b0c1dc01-20250925 to df38ac9a-20250926 : #84276
    • Add a --webpack flag and default --turbopack to true: #84216
    • fix: Update URL resolution logic to handle search parameters on root path /?foo=bar: #78262
    • [Breaking] Remove deprecated sync access to Dynamic APIs: #84179
    • Turbopack: only write merged manifests when they have been changed: #84261
    • Turbopack: add separate turbopackPersistentCachingForBuild/ForDev flags: #84215
    • Revert "Add a --webpack flag and default --turbopack to true (#84216)": #84348
    • Upgrade React from df38ac9a-20250926 to d15d7fd7-20250929 : #84347
    • Mark React Compiler integration as stable: #84220
    • [cna] Add reactCompiler option: #82251
    • Turbopack: remove canary version check for turbopackPersistentCachingForDev: #84277
    • [turbopack] Add support for debug_ids: #84319
    • Revert "Revert "Add a --webpack flag and default --turbopack to true (#84216)"": #84351
    • [Breaking] Remove AMP codemod: #84356
    • [Breaking] Remove deprecated built-in AMP: #84312
    • auto-enable clientParamParsing and clientSegmentCache w/ cacheComponents: #84250
    • [mcp] get server action tool: #84382
    • Revert "Revert "Revert "Add a --webpack flag and default --turbopack to true (#84216)"": #84389
    • Update otel test assertions and pages span_name: #84393
    • [Breaking] Bump minimum TypeScript version to 5.1.0: #84384
    • Upgrade React from d15d7fd7-20250929 to ef889445-20250930 : #84383
    • [Breaking] Remove deprecated unstable_rootParams : #84373
    • [metadata] remove falsy dynamicParams approach: #84405
    • fix: next rspack binding NextExternalsPlugin: #84303
    • Development: Skip route matching when there is an existing match: #84227
    • Revert "auto-enable clientParamParsing and clientSegmentCache w/ cacheComponents": #84419
    • Upgrade React from ef889445-20250930 to 548235db-20251001 : #84416
    • [Breaking] Update default browserslist config: #84401
    • Upgrade React from 548235db-20251001 to 1bd1f01f-20251001 : #84417
    • Allow metadataBase to be a string URL in addition to URL instance: #84297
    • Upgrade React from 1bd1f01f-20251001 to 86181134-20251001 : #84427
    • [mcp] logging file should be reset for each session: #84425
    • Revert "Revert "Revert "Revert "Add a --webpack flag and default --turbopack to true (#84216)""": #84394
    • Optimize isMetadataRoute function: #84409
      ...
    Original source Report a problem
  • Oct 21, 2025
    • Parsed from source:
      Oct 21, 2025
    • Detected by Releasebot:
      Oct 26, 2025

    Next.js by Vercel

    Next.js 16

    Next.js 16 launches with major DX, routing, and caching upgrades. Features include a stable Turbopack default, cache components with Partial Pre-Rendering, React Compiler support, and improved caching APIs for instant navigation. Expect breaking changes like async params and image defaults.

    Next.js 16 is now available with major improvements to developer experience, routing, and caching.

    Highlights include:

    • Cache Components: A new programming model leveraging Partial Pre-Rendering (PPR) and use cache for instant navigation.
    • Turbopack (stable): Default bundler for all apps
    • Turbopack File System Caching (beta): Even faster startup and compile times
    • React Compiler Support (stable): Built-in integration for automatic memoization
    • Enhanced Routing: Optimized navigation and prefetching
    • Build Adapters API (alpha): Create custom adapters to modify the build process
    • Improved Caching APIs: New updateTag(), refresh(), and refined revalidateTag()
    • React 19.2: View Transitions, useEffectEvent(),
    • Breaking Changes: Async params, image defaults, and more
    Original source Report a problem
  • Oct 17, 2025
    • Parsed from source:
      Oct 17, 2025
    • Detected by Releasebot:
      Oct 17, 2025

    Next.js by Vercel

    v15.5.6

    Note

    This release is backporting bug fixes. It does not include all pending features/changes on canary.

    Core Changes

    • Turbopack: don't define process.cwd() in node_modules (#83452)

    Credits

    Huge thanks to @mischnic for helping!

    Original source Report a problem
  • Oct 13, 2025
    • Parsed from source:
      Oct 13, 2025
    • Detected by Releasebot:
      Oct 13, 2025

    Next.js by Vercel

    v15.5.5

    Note

    This release is backporting bug fixes. It does not include all pending features/changes on canary.

    Core Changes

    • Split code-frame into separate compiled package (#84238)
    • Add deprecation warning to Runtime config (#84650)
    • fix: unstable_cache should perform blocking revalidation during ISR revalidation (#84716)
    • feat: experimental.middlewareClientMaxBodySize body cloning limit (#84722)
    • fix: missing next/link types with typedRoutes (#84779)

    Misc Changes

    • docs: early October improvements and fixes (#84334)

    Credits

    Huge thanks to @devjiwonchoi, @ztanner, and @icyJoseph for helping!

    Original source Report a problem
  • Oct 9, 2025
    • Parsed from source:
      Oct 9, 2025
    • Detected by Releasebot:
      Oct 26, 2025

    Next.js by Vercel

    Next.js 16 (beta)

    Next.js 16 beta delivers major DX and performance boosts with Turbopack as the default bundler, faster startup from File System Caching, React Compiler integration, enhanced routing, and a new Build Adapters API. It also introduces React 19.2 features and noted breaking changes.

    Next.js 16 beta

    Next.js 16 beta is now available with major improvements to developer experience, routing, and caching. Highlights include:

    Highlights

    • Turbopack (stable): Default bundler for all apps
    • Turbopack File System Caching (beta): Even faster startup and compile times
    • React Compiler Support (stable): Built-in integration for automatic memoization
    • Enhanced Routing: Optimized navigations and prefetching
    • Build Adapters API (alpha): Create custom adapters to modify the build process
    • Improved Caching APIs: New updateTag() and refined revalidation
    • React 19.2: View Transitions, useEffectEvent(),
    • Breaking Changes: Async params, image defaults, and more
    Original source Report a problem
  • Sep 21, 2025
    • Parsed from source:
      Sep 21, 2025
    • Detected by Releasebot:
      Oct 12, 2025

    Next.js by Vercel

    v14.2.33

    Note

    This release is backporting bug fixes. It does not include all pending features/changes on canary.

    Core Changes

    • omit searchParam data from FlightRouterState before transport (#80734)

    Credits

    Huge thanks to @ztanner for helping!

    Original source Report a problem
  • Sep 21, 2025
    • Parsed from source:
      Sep 21, 2025
    • Detected by Releasebot:
      Oct 12, 2025

    Next.js by Vercel

    v15.5.4

    Backport release with essential bug fixes across core and turbopack to boost stability. It tightens error handling, fixes devtools position and overlays, and improves symlink resolution, metadata routing, and large static metadata errors.

    Note

    This release is backporting bug fixes. It does not include all pending features/changes on canary.

    Core Changes

    • fix: ensure onRequestError is invoked when otel enabled (#83343)
    • fix: devtools initial position should be from next config (#83571)
    • [devtool] fix overlay styles are missing (#83721)
    • Turbopack: don't match dynamic pattern for node_modules packages (#83176)
    • Turbopack: don't treat metadata routes as RSC (#82911)
    • [turbopack] Improve handling of symlink resolution errors in track_glob and read_glob (#83357)
    • Turbopack: throw large static metadata error earlier (#82939)
    • fix: error overlay not closing when backdrop clicked (#83981)
    • Turbopack: flush Node.js worker IPC on error (#84077)

    Misc Changes

    • [CNA] use linter preference (#83194)
    • CI: use KV for test timing data (#83745)
    • docs: september improvements and fixes (#83997)

    Credits

    Huge thanks to @yiminghe, @huozhi, @devjiwonchoi, @mischnic, @lukesandberg, @ztanner, @icyJoseph, @leerob, @fufuShih, @dwrth, @aymericzip, @obendev, @molebox, @OoMNoO, @pontasan, @styfle, @HondaYt, @ryuapp, @lpalmes, and @ijjk for helping!

    Original source Report a problem
  • Aug 18, 2025
    • Parsed from source:
      Aug 18, 2025
    • Detected by Releasebot:
      Oct 26, 2025

    Next.js by Vercel

    Next.js 15.5

    Next.js 15.5

    Highlights for this release include:

    • Turbopack Builds (beta): Production turbopack builds (next build --turbopack) now in beta
    • Node.js Middleware (stable): Node.js runtime support for middleware is now stable
    • TypeScript Improvements: Typed routes, route export validation, and route types helpers
    • next lint: Deprecation of next lint command
    • Next.js 16: Deprecation warnings for Next.js 16
    Original source Report a problem
  • Jul 14, 2025
    • Parsed from source:
      Jul 14, 2025
    • Detected by Releasebot:
      Oct 26, 2025

    Next.js by Vercel

    Next.js 15.4

    Next.js 15.4 release highlights

    Next.js 15.4 includes updates to performance, stability, and Turbopack compatibility. Highlights for this release include:

    • Turbopack Builds: 100% integration test compatibility for next build --turbopack
    • Stability Improvements: Numerous stability and performance improvements to Next.js and Turbopack

    This blog post also includes an early preview of what's coming in Next.js 16, our next major release.

    Original source Report a problem

Related products