Next.js v16.1.0stable Released Dec 18, 2025
⚠️ Breaking Change Impact Score: 7/10

Next.js v16.1.0 β€” Release Notes & Engineering Impact

Source available β€” automated, not human-reviewed

Component: nextjs Β· Channel: stable. Automated analysis, not a compatibility certification. How this works.

Analysis updated: 2026-11-01.

Breaking-change evidence from the source

  • - Revert "feat(breaking): Hard Deprecate PPR Configuration (#84280)"
Read the original context β†—
Source flags breaking changes β€” review applicability
$ npm install --save-exact [email protected]
πŸ“„ .MD
⚑ Executive Summary (TL;DR)

Next.js v16.1.0. Source highlight: **Check out our Next v16.1 Blog Post to learn more about this release.**

Who Does This Impact? (Role-Based Analysis)

πŸ’» Software Engineers & Devs

Check the source notes against the package and APIs you use before upgrading.

πŸ“Š Product & Engineering Leads

Use the documented changes to assess relevance to your product; release frequency alone is not a quality measure.

βš™οΈ DevOps & Security

Verify the target version, runtime requirements and rollback procedure in the official documentation.

⚠️ Breaking Changes & Deprecations (1)

  • - Revert "feat(breaking): Hard Deprecate PPR Configuration (#84280)"

✨ New Features & Capabilities (6)

  • Add build-time validation to detect ambiguous app routes: #85834
  • Turbopack: Add bundle analyzer UI to next build --experimental-analyze: #85788
  • Introduce `next analyze`: a built-in bundle analyzer for Turbopack: #85915
  • Turbopack: add `experimental.turbopackClient/ServerSideNestedAsyncChunking`: #85827
  • [next-upgrade] Add `next upgrade`: #86120
  • Turbopack: add experimental.turbopackInputSourceMaps and respect serverSourceMaps: #86340

⚑ Performance & Enhancements (6)

  • Eslint: Improve Google Tag manager third parties message: #51903
  • improve segment cache lru typesafety: #87129
  • Turbopack: Improve the description on InvalidLoaderRuleConditionIssue: #87008
  • [ci] Improve change detection logic in `run-for-change` script: #85619
  • Turbopack: remove the streaming hack for improved stability: #85858
  • perf: revert to use the light safe stringify for is-error: #86053

πŸ”§ Bug Fixes & Patches (6)

  • fix: Rspack throw error when using ForceCompleteRuntimePlugin: #85221
  • fix: build CLI output not displaying Proxy (Middleware) when nodejs runtime: #85403
  • fix: staleTimes.static should consistently enforce a 30s minimum: #85479
  • [turbopack] fix build of empty entries of pages: #84873
  • fix: redirect should always return updated router state: #85533
  • [codemod] fix: next-lint-to-eslint-cli did not handle `'next'` plugin: #85749
πŸ“„ View Raw Release Notes (Original Developer Log)
> [!TIP] > **Check out our Next v16.1 [Blog Post](https://nextjs.org/blog/next-16-1) to learn more about this release.** ### Core Changes - fix: Rspack throw error when using ForceCompleteRuntimePlugin: #85221 - fix: build CLI output not displaying Proxy (Middleware) when nodejs runtime: #85403 - fix: staleTimes.static should consistently enforce a 30s minimum: #85479 - [turbopack] fix build of empty entries of pages: #84873 - Cache the head separately from the route tree: #84724 - Allow inspecting dev server on default port with `next dev --inspect`: #85037 - Avoid proxying React modules through workUnitStore: #85486 - fix: redirect should always return updated router state: #85533 - Upgrade React from `b4455a6e-20251027` to `4f931700-20251029`: #85518 - [turbopack] Move generation of `cacheLife` types out of the webpack plugin and into the dev bundler directly: #85539 - Ensure user-space stack frame for `'use cache'` in page/layout component: #85519 - Update parallel routes in build-complete: #85546 - fully remove clientSegmentCache flag: #85541 - [turbopack] Support relative paths in turbopack source maps.: #85146 - Release unnecessary memory on hydration finish: #84967 - Preserve interception markers in parameter types: #85526 - move segment cache entries to top level segment-cache dir: #85542 - Upgrade React from `4f931700-20251029` to `561ee24d-20251101`: #85670 - [devtools] Remove title from preferences: #85698 - Update font data: #85708 - Don't invalidate hot reloader excessively during dev server boot: #85732 - [codemod] fix: next-lint-to-eslint-cli did not handle `'next'` plugin: #85749 - Upgrade React from `561ee24d-20251101` to `67f7d47a-20251103`: #85762 - Tracing: Fix memory leak in span map: #85529 - Fix documentation typo in refresh function: #85696 - fix: eslint-config-next types was exporting to dist/src: #85768 - Upgrade React from `67f7d47a-20251103` to `f646e8ff-20251104`: #85772 - remove unused RSC payload property: #85746 - [runtime prefetching]: fix runtime prefetching when deployed: #85595 - Turbopack: next build --analyze: #85197 - Build: Log amount of workers during static generation: #85706 - Upgrade React from `f646e8ff-20251104` to `dd048c3b-20251105`: #85819 - Sync devFallbackParams when generateStaticParams change: #85741 - chore: upgrade rspack 1.6.0: #84210 - [mcp] get_routes mcp tool: #85773 - Split each path param into a separate cache key : #85758 - [turbopack] change server source maps in production to use relative paths: #85576 - fix: skip collecting metadata for app-error in webpack: #85892 - fix: support root span attributes with a custom server: #85521 - fix isDynamicRSC condition when deployed: #85919 - [turbopack] Make it possible to synchronously access native bindings: #85787 - Upgrade React from `dd048c3b-20251105` to `fa50caf5-20251107`: #85906 - Fix telemetry event loss on build failures and server shutdown: #85867 - Remove one stack frame from `'use cache'` call stacks: #85966 - Upgrade React from `fa50caf5-20251107` to `52684925-20251110`: #85980 - Deployment adapter: fix metadata for "/" route: #85820 - Enable React's default Transition indicator behind a flag: #86000 - update routes-manifest to include whether app has pages routes: #86051 - Fix 404 responses for interception routes with missing children slots: #85779 - Build: Share StaticWorker between static check and static generation: #85860 - [devtool] highlight all link in error message: #86084 - fix(nodejs-middleware): await for body cloning to be properly finalized: #85418 - Add build-time validation to detect ambiguous app routes: #85834 - Don't use inspector frontend URLs from other processes: #86082 - Upgrade React from `52684925-20251110` to `93fc5740-20251113`: #86103 - [next-upgrade] Force install of dev dependencies: #86119 - Fix telemetry event race condition in webpack worker for @vercel/og detection: #86145 - Turbopack: Add bundle analyzer UI to next build --experimental-analyze: #85788 - Upgrade React from `93fc5740-20251113` to `fb2177c1-20251114`: #86155 - fix: cacheMaxMemorySize should not disable dev HMR cache: #86164 - Fix streaming server actions: #86148 - Allow attaching a debugger when `next dev` is already running: #86083 - Introduce `next analyze`: a built-in bundle analyzer for Turbopack: #85915 - Turbopack: add `experimental.turbopackClient/ServerSideNestedAsyncChunking`: #85827 - next analyze: annotate polyfill modules in UI: #86062 - Stop adding additional padding to Next.js logs: #86139 - [next-upgrade] Add `next upgrade`: #86120 - Fix prerendering of interception routes with generateStaticParams: #85835 - [Segment Cache] Re-implement refresh reducer: #84426 - Upgrade React from `fb2177c1-20251114` to `0972e239-20251118`: #86263 - `next analyze`: Make ipv6 server links valid and normalize localhost: #86219 - fix: prevent fetch abort errors propagating to user error boundaries: #86277 - chore(turbopack-node): remove some outdated codes: #86111 - [devtools] Ensure Chrome DevTools workspace can connect with proxy rewrites: #86289 - Fix log log alignment in spinners: #86298 - fix: Rename proxy.js to middleware.js in NFT file: #86214 - Turbopack: allow trace level tracing: #86255 - Allow SSR to finish microtasky work before flushing: #86311 - Turbopack: fix passing project options from napi: #86256 - [Cache Components] Atomic setTimeouts: #86093 - Turbopack: add experimental.turbopackInputSourceMaps and respect serverSourceMaps: #86340 - [Cache Components] Discriminate static shell validation errors by type: #85747 - Turbopack: add NEXT_TURBOPACK_WRITE_ROUTES_HASHES_MANIFEST to write hashes into manifest: #86257 - Add reasons for some server-external-packages: #86254 - Send dynamic validation errors to browser via WebSocket: #85818 - Delete un-used prefetch outputs with PPR: #86100 - Revert "Turbopack: add bundle-analyzer to versioning and add dependen…: #86394 - Turbopack: add bundle-analyzer to versioning and add dependency: #86355 - fix issue - #86365: #86366 - Turbopack: fix import chain by determining depth locally per route: #86350 - Use JSONC for default server-external-packages: #86252 - add debug logs to onSegmentPrerenderError: #86358 - Skip request if "full" prefetch is already pending: #86405 - fix: Rename proxy.js to middleware.js in NFT file (#86214) - fix: prevent fetch abort errors propagating to user error boundaries (#86277) - Turbopack: fix passing project options from napi (#86256) - Eslint: Improve Google Tag manager third parties message: #51903 - [ts-plugin] keep showing the types in the function body: #86273 - [turbopack] Enable the filesystem cache for dev in canary builds: #85940 - docs: fix typos in packages: #82508 - Turbopack: Expose an environment variable for exposing the `detail` field of issues: #86518 - Turbopack: inner graph tree shaking: #85973 - [next-upgrade] Fall back to `npx` if `yarn dlx` is not available: #86384 - Update font data: #86521 - Convert any export from a `'use cache'` module to a cache function: #86014 - fix(nodejs-middleware): await for body cloning to be properly finalized (#85418) - Fix stale dev types causing build failure after route deletion: #86489 - bump the browserslist version to silence a warning in CI (#86625) - add bundle analyzer as dev dependency to next: #86497 - Remove obsolete `setReferenceManifestsSingleton` call: #86574 - Add flag to show ignore listed frames: #86285 - Add alinea to server-external-packages.json: #55006 - Fix error logging for `'use cache'` runtime errors in production: #86500 - Upgrade React from `8ac5f4eb-20251119` to `fd524fe0-20251121`: #86473 - Add "@zenstackhq/runtime" to server-external-packages.json: #54829 - [Cache Components] Ensure cache misses always cause a restart in dev: #86583 - bump the browserslist version to silence a warning in CI: #86625 - Turbopack: import to `char` not replaced: #86573 - Revert "add bundle analyzer as dev dependency to next (#86497)": #86672 - Handle cross-page client reference contamination in development: #86591 - Match behavior of baseline-browser-mapping with caniuse-lite: #86653 - Turbopack: don't generateBuildId in dev: #86581 - [devtool] unify the bundler field: #86514 - Turbopack: normalize distDir separators: #86697 - Cover org package external in externals-transitive test: #86691 - [turbopack] Enable filesystem cache by default for development: #85975 - Log generate params duration in dev: #86726 - [CC] Fix hanging dynamic promise when abandoning render: #86690 - Convert Windows paths as well when reading sourcemap: #86723 - Deterministic functions-config-manifest.json: #86736 - Abstract deployment id access into module: #86727 - Deterministically order pages in the `MappedPages` structure: #86744 - [turbopack] move edge entry wrapper to build template: #86699 - Properly type ComponentMod: #86765 - Properly type edge handler fn: #86766 - Remove unused Server.responseCache: #86768 - [Cache Components] Fast setImmediate: #86018 - [devtool] make the draggable content selective: #86816 - Create server module map proxy only once: #86750 - fix(next/image): add `?dpl` query string for local images (without static import): #86485 - fix(next/image): handle `?dpl` for src without protocol: #86836 - Upgrade React from `7dc903cd-20251203` to `66ae640b-20251204`: #86843 - Upgrade React from `66ae640b-20251204` to `378973b3-20251205`: #86852 - Turbopack: remove pages router double template: #86842 - Introduce NextConfigRuntime: #86812 - Generate required-server-files before prerendering: #86830 - Update react version in cna templates (#86950) - Include nextConfig in edge runtime via separate manifest: #86769 - Fix required-server-files: #86875 - Add pino-related packages to server-external-packages: #86884 - Fix validateTurboNextConfig running for next start: #86886 - Add experimental.runtimeServerDeploymentId: #86865 - [turbopack] Mark packages as side effect free when local analysis determines that they are.: #86398 - Fix: Missing null check in LRU cleanup: #87124 - improve segment cache lru typesafety: #87129 - [Segment Cache] Detect third-party redirect + static export w/ HEAD request: #85910 - Fix: External redirect swallowed by Next.js: #87121 - Fix error propagation and teardown in Server Action request decoding: #87193 - Fix interception routes with trailing slash configuration: #86787 - [ci] Stop building when creating release: #87178 - fix: otel error spans from streamed responses: #86955 - Refactor: Unify history traversal with other nav types: #87128 - Create initial tree using same function as navigations: #87147 - Re-implement hmr-refresh in terms of refresh: #87135 - Delete old navigation response handling implementation: #87149 - Reflect runtime type of `resHeaders` in static types: #87145 - [turbopack] Flag `turbopackInferModuleSideEffects` so it is only enabled in canary builds: #87215 - [turbopack] update warning message in the bundle analyzer: #87255 - chore: update rspack 1.6.5: #86853 - Update font data: #87259 - bundle-analyzer: make running the web server default: #87258 - bundle analyzer: remove custom output option: #87267 - Ensure constructor for `useSearchParams` can be imported for `instanceof` checks: #87269 - Upgrade React from `b45bb335-20251211` to `f93b9fd4-20251217`: #87281 - feat: use Rspack persistent cache by default: #81399 - Move next-env.d.ts to dist dir: #86752 - Revert "Move next-env.d.ts to dist dir": #87311 ### Example Changes - Chore: Update with-supabase example to Next.js 16: #86105 - docs: add example for enabling both AVIF and WebP image formats for better image optimization: #86191 - examples: fix typos: #82506 - chore(examples): remove `with-windicss` example: #81846 - examples: fix typos in cms-agilitycms: #82504 - Turbopack: Improve the description on InvalidLoaderRuleConditionIssue: #87008 ### Misc Changes - chore: Add `opt-level = s` for not frequently used crates: #85426 - [test] Deflake cache-components-allow-otel-spans: #85466 - [test] Move remaining `experimental.cacheLife`: #85467 - Turbopack: chore: Remove mopa dependency in turbo-tasks (2nd attempt): #85286 - Update Proxy docs: #85439 - [CNA] Do not prompt for Turbopack: #85404 - Clean up new release process: #85458 - Update E2E tests workflow: #85485 - Update E2E deploy tests manifest: #85483 - docs: example are incorrect async function exports only: #85453 - [test] Handle CLI assertions where no "Compiling..." log is present: #85499 - [test] Speed up refresh test: #85505 - [test] Add test cases for dynamic caches without suspense boundaries: #85500 - docs: Routes are wrapped w/ Activity in Cache Components: #85309 - docs: GET handler behavior under cache components: #85389 - [test] Avoid needless start/stop from using `createSandbox`: #85507 - [test] Use `--debug-build-paths` instead of `NEXT_PRIVATE_APP_PATHS`: #85504 - docs: revalidateTag requires second argument: #85284 - Refactor GTM implementation to support google tag gateway: #81011 - Update Rspack production test manifest: #85494 - Update Rspack development test manifest: #85495 - [docs] Fix a typo: #85492 - [test] Regenerate tsconfig.json files: #85515 - [Turbopack] clean up `completion.rs` a bit: #84863 - [test] Remove `maxRetries` and `hardError` parameters: #85536 - Turbopack: remove the .into() alias to .cell(): #85516 - [test] Consolidate identical snapshots across different bundlers: #85532 - [turbopack] Change where `cell`s are created in `resolve_raw` to make cell allocation order deterministic.: #85525 - Turbopack: Make tasks deterministic: #85524 - [test] Separate act and assertions: #85508 - [test] `assert*` -> `waitFor*` when the util is not instant: #85450 - Turbopack: move whole_app_module_graphs to top level: #84897 - [test] Bail on sending requests to Next.js instance if it's no longer available: #85557 - [test] Deflake tests comparing two random numbers: #85571 - [test] Disallow custom `RegExp`-like implementations in `check`: #85537 - [test] Deflake prerender suite: #85563 - Turbopack: chore: Remove some dead MagicAny serialization code from turbo_tasks::value: #85577 - [test]: fix broken scroll restoration test: #85599 - [test] Deflake nested `after()` tests: #85566 - [test] Stop installing unused dependencies: #85569 - [test] Consider `test/integration/` in flake detection tests: #85590 - Turbopack: more checks on verify_serialization: #84952 - Turbopack: add track_caller to improve panics: #85565 - Turbopack: add verify_determinism feature to check if tasks are deterministic: #85559 - docs: cache life rework: #85224 - Turbopack: fix hanging dev server and builds with fs cache: #85606 - Turbopack: Fix compound assignment expression evaluation (#85478): #85593 - Turbopack: fix Scope holding Arc too long: #85611 - [ci] Improve change detection logic in `run-for-change` script: #85619 - [test] Ignore in deploy tests if a child process isn't available: #85636 - Turbopack: add size_hint and len for Chunk iterator: #85622 - [test]: move resume-data-cache to e2e test: #85647 - Update Rspack development test manifest: #85662 - Update Rspack production test manifest: #85661 - Update Rspack production test manifest: #85688 - Update Rspack development test manifest: #85689 - [test] Deflake root-optional-revalidate: #85584 - docs: fix generateImageMetadata example to use normal params object: #85658 - Turbopack: Upgrade image crate: #85084 - docs: update multi sitemap argumenmt type: #85701 - [test] Move all files to .ts (6/6): #85641 - Turbopack: add a batch add method to the storage: #84270 - docs: recommend reverse-proxy when self-hosting: #85650 - [test] Deflake prefetching.stale-times: #85733 - [test] Deflake custom cache handler test: #85610 - [test] Allow CLI integration test to be retryable: #85586 - docs: update docs to mention ESLint as default: #85740 - docs(next.config): this docs should remove ".mts" is not supported.: #85716 - Turbopack: cleanup StyleSheetLike: #85718 - Turbopack: disable tree shaking for tracing: #85722 - [test] Move all files to .ts (3/6): #85638 - [test] Move all files to .ts (2/6): #85637 - [test] Move all files to .ts (1/6): #85634 - docs: generateSitemap passes id as promise: #85767 - [test] Move all files to .ts (4/6): #85639 - docs: disclosure on path-to-regexp: #85629 - chore: update rspack binding to 1.6.0: #85717 - Turbopack: trace worker_threads worker entry: #85734 - Update Rspack development test manifest: #85761 - Turbopack: chore: Remove `extern crate` and `macro_use` syntax: #85778 - [turbopack] Drop duration and allocation tracking from CaptureFuture: #85534 - Turbopack: chore: Remove dead RouteMatcher stuff: #85784 - docs: fresh up getting started 00: #85736 - Turbopack: chore: Remove the serde_regex dependency, which wasn't very heavily used: #85578 - Turbopack: use batch add in connect children: #85623 - [test] Move all files to .ts (5/6): #85640 - [test] Deflake legacy-link-behavior: #85805 - Resolve request ID confusion: #85809 - Turbopack: use batch add to add initial followers: #85624 - Turbopack: chore: Remove dead experimental.ppr struct field: #85792 - Turbopack: chore: Avoid string clones in Glob::parse by using RcStr: #85579 - Update Rspack production test manifest: #85795 - docs: getting started updates 01: #85750 - chore: Update patricia_tree dependency, remove manual serde impls: #85785 - docs: keywords in system reqs and add browserslist: #85838 - Honour `NEXT_TEST_PREFER_OFFLINE` in `install-native.mjs`: #85850 - Turbopack: chore: Update anyhow, remove old backtrace feature: #85844 - Turbopack: Remove some dead (or useless) code from `next-core/src/next_client_reference/visit_client_reference.rs`: #85843 - sort dependencies for smaller diffs: #82291 - Update Rspack development test manifest: #85846 - Turbopack: Remove `non_operation_vc_strongly_consistent` feature usage from next-api: #85874 - Turbopack: remove the streaming hack for improved stability: #85858 - test: Port clean-distdir integration test to the modern e2e test framework: #85828 - Update font data: #85920 - Update deploy manifest: #85924 - Turbopack: chore: Merge `turbo-tasks-macros-shared` crate into `turbo-tasks-macros`: #85917 - Turbopack: Fix IO concurrency for MacOS: #85861 - Add Appwrite Sites to supported adapters: #85830 - [turbopack] Remove LocalTaskType::Native, it is dead: #85480 - [test] Increase response timeout in `next.browserWithResponse()`: #85911 - Hoist inner `'use cache'` functions to reduce function allocations: #85904 - docs: eslint config update: #85969 - Fix Turbopack local font `font-family` declaration: #85913 - switch to slice in createRuntimePrefetchTransformStream: #85822 - Update authentication.mdx: Fix `Auth0` Link: #85953 - Turbopack: remove unused function: #85974 - docs: cacheHandlers: #85311 - docs: Feedback item on proxy default: #86004 - [test] Add missing test fixtures for `cacheLife` & `cacheTag` in client: #85872 - Fix false-positive build error for `cacheLife` & `cacheTag`: #85875 - [cna] For pnpm ignore postinstall from `sharp` and `unrs-resolver`: #83168 - Turbopack: refactor `evaluate` to take module_graph: #85971 - Turbopack: remove duplicate traversal implementations: #85853 - Omit unused `encryptActionBoundArgs`/`decryptActionBoundArgs` imports: #86015 - Turbopack: cleanup db log and add verbose option: #85965 - [ci]: fix retry_deploy_test workflow: #85981 - Fix typo in documentation: #86054 - perf: revert to use the light safe stringify for is-error: #86053 - Turbopack: expose used export info in tests: #86037 - Docs: Mention npm link with Turbopack root: #86075 - script: align the commits group logic with the origin script: #86079 - Update cookies.mdx: #86094 - Remove redundant example code for cacheLife docs: #86043 - test: improve router prefetch test reliability: #86098 - Add postpone handling in app-page handler: #86101 - Turbopack: remove global_information struct: #86089 - Turbopack: add task_id_details feature: #84970 - Turbopack: Refactor output assets to allow to lazy compute output assets: #85753 - Un-skip tests in prefetch-runtime.test.ts: #86097 - Turbopack: add flags to AvailabilityInfo: #85771 - Turbopack: apply side effects false removal on all module types: #86133 - [build] Remove `layers` experiment flag from next-runtime webpack config: #86126 - Turbopack: only enable nested async availability in production: #85728 - [turbopack] Remove `Clone` from `Effect`: #86110 - Turbopack: mark more modules as side effect free: #86136 - [test] Use `next-data-api-endpoint` for Middleware HTTP method tests: #86157 - fix broken extend implementation on DynamicStorage: #86204 - Turbopack: avoid creating another async chunk loader where there is already one available: #85817 - Fix typo on 03-layouts-and-pages.mdx: #86186 - Update 14-metadata-and-og-images.mdx: #86198 - [turbopack] Model `||`, `&&`, and `??` as control flow operators: #85837 - chore: remove empty docs folder: #86216 - docs: cacheHandlers use object instead of class: #86022 - docs: follow up to getting started CC and use-cache API ref: #85582 - Turbopack: use batch insert to make dependencies outdated: #85625 - Update Rspack production test manifest: #86233 - [test] Update snapshots: #86288 - [test] Add failing test for `useActionState` with `'use cache'`: #86292 - [test] Disable flaky prefetching.stale-times test: #86299 - Update Rspack production test manifest: #86283 - Replace tuples with better suited data structures for server references: #86294 - create-next-app: Add `ignoreScripts` for `unrs-resolver` on bun: #86324 - Turbopack: bundle-analyzer need to avoid using the local next.js build: #86258 - Turbopack: remove unused method: #86259 - Turbopack: disable input source maps for analyze: #86341 - Turbopack: perf: Fix unused argument filtering optimization in turbo-tasks for `self` arguments: #86231 - Turbopack: Remove dead `turbo_tasks::persisted_graph` module: #86329 - [turbopack] Refactor the analyzer to fix a few issues and prepare to split it up: #86265 - next-analyze: improve network error visuals: #86222 - Turbopack: test if unused self arguments are filtered: #86353 - Upgrade React from `0972e239-20251118` to `8ac5f4eb-20251119`: #86351 - Update Rspack development test manifest: #86332 - Turbopack: refactor tuple variant into struct: #86374 - Migrate to VisitMut: #86347 - Turbopack: decode url encoding and relative paths in source maps: #86342 - Turbopack: remove Asset supertrait from Module trait. Modules don't have content: #86339 - docs: csr-bailout debugging: #86359 - docs: serverless deploy feedback: #86357 - Bump swc to 48: #86240 - docs: cacheLife feedback: #86128 - Update Next.js auth docs examples: #86361 - Update Rspack production test manifest: #86369 - Revert "Turbopack: remove Asset supertrait from Module trait. Modules don't have content": #86415 - Revert "[turbopack] Model `||`, `&&`, and `??` as control flow operators (#85837)": #86432 - Turbopack: avoid embedding deployment ID into the turbopack runtime: #86370 - Revert "Turbopack: JsAnalyzer parse AssignExpr (#83962)": #86420 - [test] Let pending test finish on abort: #86307 - Fix compilation of exported server functions: #86296 - docs: fix getInitialProps execution behavior during navigation: #86387 - Turbopack: bail instead of panic: #86470 - Update Rspack production test manifest: #86457 - Fix typed routes test expectations: #86487 - Add test for external middleware rewrite with changed headers: #49606 - Fix grammar and typos in typescript doc: #86513 - Skip filesystem-cache.test.ts test with Webpack: #86506 - Migrate required-server-files-ssr-404 to be isolated: #86515 - Turbopack: fixup route hashes generation: #86502 - Bump swc: #86496 - Try to improve typed-routes test flakyness: #86512 - Use retry in tests instead of requesting page: #86535 - Turbopack: Use `Debug` instead of `Display` for `ValueDebugFormat` impl on `RcStr`: #86522 - [test] Add test fixture for runtime error in `'use cache'`: #86499 - Migrate app-dir-export test to be isolated: #86534 - Turbopack: write symlinks to access transitive `serverExternalPackages` - Fix no-double-tailwind-execution flake: #86549 - Update Rspack development test manifest: #86531 - Turbopack: slightly fewer turbo tasks calls during resolving: #86542 - Turbopack: remove OptionStringifiedSourceMap: #86547 - Turbopack: Simplify the return type of `FileSystemPath::try_join`: #86523 - Turbopack: remove into() which cells internally: #86548 - docs: fix cache component doc grammar: #86563 - fix(turbopack): Disable ES3 transforms from preset-env: #86532 - Don't run bundle-analyzer dev script with turborepo: #86586 - [turbopack] Support traversing the graph in reverse order: #86427 - Update Rspack development test manifest: #86657 - Update Rspack production test manifest: #86658 - [test] Deflake `use-cache-router-handler-only` in deploy tests: #86678 - Allow exporting object and array literals in `'use cache'` files again: #86655 - Turbopack: use tracing context for config watching: #86576 - Turbopack: align chunk loading error name: #86593 - docs: update prefix two-digit number in routing section: #77758 - [bundle-analyzer] Disable revalidateOnFocus and revalidateOnReconnect: #86688 - Turbopack: improve eventual consistency: #86682 - [test] Enable Playwright traces in deploy tests: #86683 - [test] Deflake `app-dir-prevent-304-caching`: #86693 - Bump to swc 49: #86689 - Turbopack: process.env.TURBOPACK should be a string: #86680 - Turbopack: arrange empty space in trace viewer correctly: #86612 - [turbopack] Remove the docs on the bundle size gap: #86707 - [test] Improve app-basepath assertion error: #86725 - fix(next-custom-transforms): preserve all declarators in multi-declarator export statements: #86552 - Turbopack: avoid snapshotting while continuously idle, fix spans : #86611 - Turbopack: fix fuzz command: #86732 - [test] Ensure CI uses configured Node.js version: #86720 - Turbopack: improve eventual consistency: #86724 - Update Rspack development test manifest: #86715 - Update Rspack production test manifest: #86716 - Turbopack: don't read binding_usage in dev: #86722 - [test] app-basepath less agressive request reading: #86740 - Stop apps/bundle-analyzer/next-env.d.ts from changing: #86743 - [turbopack] Move turbo-tasks-testing to dev-dependencies: #86745 - Turbopack: chore: Remove re-exports from turbopack crate: #85791 - Turbopack: Split Dirty into Dirtyness and CleanInSession: #86070 - Turbopack: remove DirtyContainerCount from dirty_container_update: #86071 - Turbopack: fix double deployment id in web workers: #86754 - Turbopack: Split AggregatedDirtyContainer: #86606 - Turbopack: Split AggregatedDirtyContainerCount: #86072 - Turbopack: Avoid that session-dependent tasks write to DB on every build: #86068 - Turbopack: Use TransientCellData for non-serializable cells: #86069 - Fix typo in fetching data documentation: #86758 - Upgrade React from `fd524fe0-20251121` to `7dc903cd-20251203`: #86771 - Turbopack: use match consistently in macro: #86767 - setup release branch - Revert "feat(breaking): Hard Deprecate PPR Configuration (#84280)" - Update React Version - update tag - update version script - docs: cookie clear and has alignment: #86788 - [test] fix missing nft file: #86817 - Remove unused `vitest` from dependency tree: #86821 - Update installed Next.js: #86822 - Remove Vercel mention from Next.js docs: #86801 - Remove unused `vite` from dependency tree: #86824 - Update Rspack development test manifest: #86802 - Turbopack: bincode: Add crate with bincode serialization helpers: #85878 - Turbopack: perf: Avoid clones in RopeReader: #86708 - Add Firebase App Hosting to the deployment guide: #86832 - Turbopack: bincode: Add custom bincode reader/writer implementations: #86632 - Turbopack: bincode: Add traits for types that require `TurboBincodeEncoder` or `TurboBincodeDecoder`: #86633 - Turbopack: bincode: Implement bincode Encode/Decode traits on all turbo task values: #85580 - Turbopack: bincode: Add bincode encode/decode wrappers for `serde_json::Value` when stored in a cell: #86749 - Turbopack: bincode: Use bincode to store the contents of value cells: #86338 - [test] Fix external rewrite target URL origin: #86863 - Turbopack: correctly overwrite existing symlinks: #86808 - Turbopack: fix race condition when invalidating: #86859 - Turbopack: handle non-serializable cell content for cell update operation: #86861 - Turbopack: bincode: Migrate TaskInput serialization to bincode: #86631 - Add gitignore note for next-env.d.ts: #86809 - docs: fix broken examples link: #86916 - chore: update rspack binding to 1.6.7: #87058 - Update Rspack production test manifest: #87051 - docs: dynamic routes w/ gsP: #86402 - Update self-hosting.mdx: #87109 - Turbopack: Add a custom serde_self_describing Serializer/Deserializer: #86885 - Turbopack: bincode: Remove automatic serde derives from `#[turbo_tasks::value]` macro: #86634 - Turbopack: Add `turbo-frozenmap` crate with `FrozenMap` and `FrozenSet` implementations: #87042 - [turbopack] Rename is_marked_as_side_effect_free to side_effects and return ModuleSideEffects enum: #87102 - Turbopack: Switch RequestKey's `conditions` field from BTreeMap to FrozenMap: #87099 - Turbopack: Remove remaining dead implementations of serde traits: #86910 - [turbopack[ Use a frozenset in ImportUsage: #87118 - [turbopack] Rename graph traversal algorithms: #87119 - Turbopack: Inline uses of the SliceMap type alias: #87122 - [ci] Bump Lerna to 5.x: #87180 - [ci] Downgrade Lerna to 4.0.0: #87187 - [ci] Bump Lerna to latest: #87188 - [ci] Ensure build-and-deploy runs on pushes: #87207 - [ci] Fix build-and-deploy - [ci] Stop running build_and_deploy on tag pushes: #87176 - [ci] Ensure build-and-deploy run on path-like branches - [ci] Cancel in-progress pull_request_stats with native concurrency features: #87190 - [ci] Cancel in-progress build_and_deploy for PRs: #87191 - [ci] Ensure runners use configured Node.js version: #87183 - chore: update next-rspack rust toolchain: #87220 - bundle-analyzer: Show compressed sizes: #87093 - chore: update @next/rspack-binding version: #87223 - [ci] Stop running explicit build when creating release: #87212 - [ci] Stop using restore-keys for package manager stores: #87209 - chore(turbo-tasks-fs): remove duplicated value_to_string of FileSystemPath: #87227 - [ci] Fix releaseStats in build-and-deploy: #87235 - Update turbopack team members: #87231 - [ci] Only install Playwright dependencies for used browser: #87002 - [turbopack] Break ties using a counter instead of node index: #87252 - bundle-analyzer: use <Select> and multiselect for top bar: #87254 - [test] Don't use `request.allHeaders()` in sync `page.on()` callbacks: #86751 - test: fix actions deployment tests: #87279 - bundle analyzer: prevent flashes and stuck empty canvases on resize: #87289 - Cross link to the demo from the bundle analyzer: #87290 - bundle analyzer: remove geist font in favor of system ui fonts: #87292 ### Credits Huge thanks to @kdy1, @eps1lon, @SyMind, @bgw, @swarnava, @devjiwonchoi, @ztanner, @ijjk, @huozhi, @icyJoseph, @acdlite, @unstubbable, @gnoff, @gusfune, @vercel-release-bot, @lukesandberg, @sokra, @hayes, @shuding, @wyattjoh, @marjan-ahmed, @timneutkens, @ajstrongdev, @zigang93, @mischnic, @Nayeem-XTREME, @hamirmahal, @eli0shin, @tessamero, @gaojude, @jamesdaniels, @georgesfarah, @timeyoutakeit, @sequencerr, @Strernd, @lucasadrianof, @wbinnssmith, @hamidreza-nateghi, @jokokoloko, @dijonmusters, @H01001000, @xusd320, @lubieowoce, @KaziMahbuburRahman, @zhiyanzhaijie, @feedthejim, @that-one-arab, @JamBalaya56562, @shrink, @florianliebig, @allenzhou101, @benmerckx, @ymc9, @Marukome0743, @pyrytakala, @danpeleg4, @gaearon, @styfle, @jhuleatt, @muhammadsyaddad, @roelvan, and @SukkaW for helping!