Next.js v15.2.0stable Released Feb 26, 2025
Impact Score: 5/10

Next.js v15.2.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-02.

Compatibility not verified β€” check source notes
$ npm install --save-exact [email protected]
πŸ“„ .MD
⚑ Executive Summary (TL;DR)

Next.js v15.2.0. Source highlight: Fix `unstable_allowDynamic` when used with pnpm: #73732

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.

✨ New Features & Capabilities (6)

  • feat: error code: #73332
  • [Segment Cache] Add PPR header to segment prefetch: #73756
  • Add additional error classes and error codes: #73862
  • Add feature flag for new dev overlay: #73977
  • Add SRI support for Node.js Runtime : #73891
  • [Segment Cache] Add CacheStatus.Empty: #73667

⚑ Performance & Enhancements (6)

  • chore(next/image): improve imgopt api bypass detection for unsupported images: #73909
  • Safely retrieve router, improve page reload logic: #74209
  • [DevOverlay] Improve Storybook Structure: #74764
  • perf(lint): cache the returned regex result: #74827
  • [Turbopack] improve task optimization: #74837
  • types: improve types in app-index: #75045

πŸ”§ Bug Fixes & Patches (6)

  • Fix `unstable_allowDynamic` when used with pnpm: #73732
  • Fix receiveExpiredTags not always called: #73759
  • fix: path escaping issue on windows: #73843
  • fix(next@15): use the asset prefix when loading a CSS in App Router: #72095
  • Fix error code check in windows: #73981
  • fix: skip rendering dynamic root segment routes: #74039
πŸ“„ View Raw Release Notes (Original Developer Log)
### Core Changes - Fix `unstable_allowDynamic` when used with pnpm: #73732 - [dynamicIO] use new heuristic to track whether server render is dynamic: #73751 - Fix receiveExpiredTags not always called: #73759 - error-overlay: Rename "Error" to "Issue": #72817 - remove redundant segment collection call: #73773 - Metadata resolvers can be fetched synchronously: #73771 - Turbopack: migrate client references to single-graph-traversal: #73322 - next-codemod: update gitignore file for parity for yarn recommendations: #71963 - feat: error code: #73332 - Detach next-error-code-swc-plugin from workspace: #73806 - [CI] Prominent error message for check_error_codes: #73807 - [Segment Cache] Add PPR header to segment prefetch: #73756 - fix: path escaping issue on windows: #73843 - Rename variables in LayoutRouter for clarity: #73826 - [Segment Cache] Skip prefetched segments on server: #73626 - [Segment Cache] No data on tree prefetch if no PPR: #73767 - Remove segmentPath from RSC payload: #73827 - build: better error if fetching AMP validator fails: #73851 - Escape the '.' in '.json' when making static data routes.: #73850 - fix(next@15): use the asset prefix when loading a CSS in App Router: #72095 - Exclude `.test.` files from using error code plugin: #73868 - Refactor telemetry API: #73865 - Add additional error classes and error codes: #73862 - refactor: collectAppPageSegments: #73908 - cleanup unnecessary map in dev server: #73745 - Retry manifest file loading only in dev mode: #73900 - Turbopack: ignore empty NEXT_TURBOPACK_TRACING var: #73903 - Ignore RSC fetch errors after hard navigation: #73975 - Fix error code check in windows: #73981 - Separate viewport and metadata in rsc and cache: #73867 - Add feature flag for new dev overlay: #73977 - Restore RSC fetch error handling after navigating back: #73985 - refactor: make locales array immutable: #74037 - fix: skip rendering dynamic root segment routes: #74039 - refactor: cache lowercasing all the locales: #74038 - Add SRI support for Node.js Runtime : #73891 - Separate bots detection utils: #74000 - docs: remove a duplicated word in redirect code comment: #74043 - examples: update gitignore files for parity for yarn recommendations: #71956 - chore: update turbopack document path in the warning message: #72597 - Clean up `react-dev-overlay` before fork: #74016 - chore(next/image): improve imgopt api bypass detection for unsupported images: #73909 - [Segment Cache] Add CacheStatus.Empty: #73667 - chore: move static paths utils into own folder: #73928 - Delete unused `GroupedStackFrames.tsx`: #74028 - [Segment Cache] Move cache key creation to client : #73853 - feat: added partial shell generation using root params: #73816 - feat: added error when there's missing root params in generateStaticParams: #73933 - Remove parentRendered argument: #73877 - Generate per-segment responses for any static page: #73945 - feat: added fallback route params to prerender manifest: #74004 - refactor(turbopack): Make various types directly or indirectly included in `State<T>` types into OperationValues and/or NonLocalValues: #74008 - Fork `react-dev-overlay` for new UI: #74017 - fix: added fallback source route to prerender manifest: #74052 - Add storybook for UI testing: #74032 - [Segment Cache] Support for non-PPR projects/pages: #73960 - exclude `.stories.` and `.test.` files from taskfile watch and error plugin: #74064 - Upgrade React from `7283a213-20241206` to `372ec00c-20241209`: #73749 - fix: aria attribute typo for error overlay: #74074 - fix: set x-deployment-id to every middleware prefetch request: #71193 - Add middleware handler for error code telemetry: #74088 - Create ErrorOverlay component: #74073 - fix(typed-routes): Fix route type fallback: #73271 - Rename `root-layout-missing-tags-error.tsx` to pascal case: #74089 - Turbopack: next/dynamic use transitions instead of AST analysis: #73627 - [Turbopack] fix root and project path usages in a monorepo: #73552 - support `bun.lock` as package manager lockfile: #74056 - Stop sourcemapping function names: #74085 - Move ErrorIndicator to separate file: #74090 - Upgrade React from `372ec00c-20241209` to `518d06d2-20241219`: #74155 - used shared worker for lint & typecheck steps: #74154 - chore(turbopack): Ignore no-vc-struct lint in trybuild proc macro tests: #74110 - Use provided waitUntil for pending revalidates: #74164 - Port ErrorPagination: #74097 - Port LeftIcon RightIcon from ErrorPagination: #74098 - Port ToolButtonsGroup: #74099 - [Turbopack] fix import.meta.url in monorepo: #72612 - refactor: rename the react client error callbacks module: #74192 - Use ErrorOverlayLayout in Errors component: #74107 - refactor: remove internal queries, move to request metadata: #74100 - Fix accessing headers in progressively enhanced form actions: #74196 - Use Geist font in Dev Overlay: #74160 - [metadata] Align prefetch head type with head: #74161 - refactor: error boundary rendering in app-render: #74259 - [metadata] Merge the metadata resolve apis into one api: #74191 - [DevOverlay] fix: restore pagination style: #74296 - fix: update broken links in config-shared.d.ts: #74122 - fix: fix typos in errors.json & create-component-tree.tsx: #74471 - Safely retrieve router, improve page reload logic: #74209 - docs: bump year: #74475 - [DevOverlay] Remove Dialog Banner: #74464 - [DevOverlay] Add color palette script: #74465 - Fix: Preserve intentional percent encoding in search param for client nav: #74473 - [DevOverlay] Implement New Overlay Layout with Bottom Stacks: #74466 - [DevOverlay] Add error overlay footer and feedback: #74472 - [DevOverlay] Remove temporary header children: #74490 - fix: server functions x-forwarded-host possible multiple values: #73701 - [DevOverlay] Pass footer message from error containers: #74493 - feat(rsc): allow host or forwarded: #74199 - [DevOverlay] Adjust border style for header and footer: #74480 - feat(next/image): add support for `images.qualities` in next.config: #74257 - Upgrade React from `518d06d2-20241219` to `3b009b4c-20250102`: #74492 - fix: add node internals stack frames to ignored list: #73698 - chore: break calls to forEach into for loops: #74523 - [DevOverlay] Add error message: #74541 - [DevOverlay] Add error type label: #74543 - feat: connect error rating buttons to telemetry API: #74496 - [metadata] Move metadata rendering adjacent to page component: #74262 - Delete set-cache-busting-search-param.test.ts: #74561 - fix: enhance a11y, prevent double firing in error rating: #74563 - fix: add aria-hidden to error overlay voting icons: #74568 - Update font data: #74572 - Upgrade React from `3b009b4c-20250102` to `3ce77d55-20250106`: #74557 - [metadata] Change the array head to single node in flight data: #74299 - [DevOverlay] Add Toolbar: #74555 - restore deleted comment in next-app-loader: #74597 - Turbopack dev: Remove client to server websocket ping event: #74584 - Fix prerender tags when notFound is called: #74577 - fix: add prerender abort errors to unstable rethrow: #74556 - Upgrade React from `3ce77d55-20250106` to `7b402084-20250107`: #74599 - fix: handle optional catchall parameters properly when deployed: #74562 - refactor: generic dev build indicator: #74615 - ensure custom cache handlers are preloaded: #74622 - feat: dev build indicator for App Router: #74618 - fix fetch lock not being consistently released: #74623 - Ensure global cache handlers are used properly: #74626 - Ensure custom Suspense boundaries in layouts resolve if they contain the page: #74552 - test: exclude the ts testing files from tsconfig during local dev in nextjs repo: #74647 - Remove unused dependencyFactory plugin code: #74661 - test: do not log the changes for local dev tsconfig: #74674 - [metadata] initial support of streaming metadata: #74619 - Remove PPR feature check from Segment Cache client: #74669 - [Segment Cache] Add act-inspired internal router testing helper: #74668 - [Segment Cache] Background segment revalidation: #74057 - Upgrade React from `7b402084-20250107` to `42687267-20250108`: #74649 - Indicate boolean value for configured experimental features on startup: #74691 - Implement encryption key into turbopack as hash salt: #72933 - Show numerical values for configured experimental features: #74692 - Upgrade React from `42687267-20250108` to `74ea0c73-20250109`: #74693 - feat: DevToolsIndicator: #74679 - Fix presentation when onerror receives an event without error: #74643 - refactor: move the global client error code: #74699 - fix: ts language server rule metadata should allow null: #74704 - [DevTools] create error state for indicator: #74717 - [DevOverlay] Add Basic Stories for Error Containers: #74697 - Add experimental flag for View Transitions: #74659 - [DevOverlay] Floating Header and Bottom Stacks: #74581 - [DevOverlay] Add Pagination: #74583 - Fix @vercel/og license SPDX expression: #74745 - [DevOverlay] Add Next.js version staleness indicator: #74601 - Write errors.json fully formatted: #74753 - [DevOverlay] Fix style details and correctly pass version info: #74606 - [DevOverlay] Decouple Dialog component from Error Overlay: #74638 - [DevOverlay] Apply Turbopack Styling: #74636 - [DevOverlay] Add Call Stack: #74658 - [DevOverlay] Add Runtime Error CodeFrame: #74682 - Do not warn during build for supported modules in the Edge runtime: #74752 - Ensure metadata doesn't break scroll-to-top on navigation: #74748 - [Segment Cache] Fix stale time unit conversion: #74759 - [metadata] add option of configuring ua of async metadata: #74594 - SingleModuleGraph: yield edge weights during traversal: #74620 - refactor(turbopack/next-api): Implement NonLocalValue for TracedDiGraph and SingleModuleGraph: #74506 - Always display version indicator: #74774 - Update font data: #74777 - Upgrade React from `74ea0c73-20250109` to `056073de-20250109`: #74754 - [DevOverlay] Improve Storybook Structure: #74764 - fix: always show indicator in app router: #74758 - Upgrade React from `056073de-20250109` to `540efebc-20250112`: #74805 - [DevOverlay] Fix Style Regression: #74768 - Fix output files warning by Turborepo: #74811 - perf(lint): cache the returned regex result: #74827 - Upgrade React from `540efebc-20250112` to `cabd8a0e-20250113`: #74828 - feat: added rewrite headers after user-supplied rewrites: #74776 - Add partial support for `"use cache"` in metadata route handlers: #74835 - [DevOverlay] Hydration Error Code Frame: #74822 - fix: when metadatabase is set we should not warn: #74840 - [DevOverlay] Sync Terminal component with CodeFrame for Build Error: #74831 - feat: animated dev build/render indicator: #74833 - Fix mojibake in server action inputs (fixes #74843): #74845 - [DevOverlay] Add Turbopack story for Error Containers: #74834 - Add pagination SEO link tags: #74737 - chore: fix local development warnings inside next monorepo: #74863 - fix: eslint rule of using img in metadata routes: #74864 - Upgrade React from `cabd8a0e-20250113` to `b3a95caf-20250113`: #74868 - [Segment Cache] Support `<Link prefetch={true}>`: #74172 - Remove unnecessary re render on link reveal: #74670 - [Segment Cache] Cancel prefetch on viewport exit: #74671 - [Segment Cache] Prioritize hovered links: #74672 - Refine NextLogo Accessibility and Styling: #74869 - Disable failed scroll restoration warning: #74875 - Polish UI for dev indicator popover: #74872 - [DevTools] Add `CMD + .` keyboard shortcut to show/hide: #74878 - [DevOverlay] use buttons for interactive indicator row options: #74887 - [DevOverlay] close popover/overlay on Esc: #74889 - Skip client reference manifests for static metadata route handlers: #74876 - Upgrade React from `b3a95caf-20250113` to `f0edf41e-20250115`: #74890 - fix: moved down segment path handling after cache headers are set: #74893 - [Turbopack] improve task optimization: #74837 - Ensure client reference manifest is traced for global not found page: #74919 - Polish error feedback row: #74880 - fix: static indicator for new overlay decoupled from appIsrStatus: #74933 - [test] Avoid hydration errors in react-compiler tests: #74928 - feat: write the segment path data out from the incremental cache: #74892 - Track dynamic IO feature usage: #74942 - Upgrade React from `f0edf41e-20250115` to `b158439a-20250115`: #74936 - Turbopack: chunk_group_multiple: #74859 - [DevOverlay] Fix floating header invisble on small screen: #74886 - rest errors queue after passing to handler: #74982 - [DevOverlay] Keep pagination on Build Error: #74905 - [Segment Cache] Evict client cache on revalidate: #74874 - Upgrade React from `b158439a-20250115` to `5b51a2b9-20250116`: #74993 - [DevOverlay] Gather Feedback per Error: #74908 - Fix dev server ignores ENOENT error when loading page: #65213 - refactor: updated route regexp handling to simplify: #74996 - [DevOverlay] Rename file names to kebab: #75000 - Fix dhat support for turbo dev: #67166 - Fix missing revalidate with notFound(): #75009 - fix: always ensure element before set to weakmap: #75012 - Fix ping event being sent unintentionally for Pages Router with Turbopack: #75030 - fix: don't memory-leak promises passed to `waitUntil`: #75041 - refactor: include new option for including prefixes: #75015 - Disable `colormin` feature from `cssnano`: #53393 - types: improve types in app-index: #75045 - feature(error): capture ssr error in overlay during dev: #74983 - [DevOverlay] Polish new Error Overlay badge: #74975 - [DevOverlay]: hook up issue click handlers in NextLogo: #75069 - error when output: export is used with intercepting routes: #75058 - Display global-error along dev overlay during development: #75101 - [DevOverlay] Decouple Error Overlay with DevTools Indicator: #74999 - [DevOverlay] Open Error Overlay when DevTools Indicator clicked: #75025 - fix: be more defensive in useMergedRef: #75088 - [Dev Badge] Focus states and fluid transitioning between states: #75141 - polish indicator loading behaviour for new dev overlay: #75149 - clean unused stop: #75156 - [Segment Cache] Remove segment access tokens: #75157 - [Segment Cache] Minimize special root key handling: #75159 - [next:dev] fix: console error conflicting public file: #75140 - [Turbopack] allow to disable source maps: #75136 - Allow disabling HTTP request logs in dev server: #74349 - [metadata] Fix streaming metadata was missing in ssr: #75155 - fix(turbopack/napi): Flush optional task cache hit statistics upon completion of build: #75122 - add hostname to default error boundary message: #75151 - [Segment Cache] Predictable fallback param encoding: #75166 - misc: remove authors section in the readme: #75184 - Track `use cache` usage: #75007 - Upgrade React from `5b51a2b9-20250116` to `9b62ee71-20250122`: #75187 - fix `after` export in next-types-plugin: #75190 - fix: Merge `link` header from middleware with the ones from React: #73431 - Restore and enhance error handling for hanging inputs in `"use cache"`: #74652 - Error handling for hanging promises in `"use cache"` closures: #74750 - Fix source mapping of generated cache wrapper calls: #74987 - [Turbopack] use new backend by default: #72434 - eslint: allow ts extensions for config: #75222 - Split entrypoint/route handling into separate dev and prod versions: #75169 - [Segment Cache] Prioritize route trees over segments: #75213 - Remove `internal_disableSyncDynamicAPIWarnings` flag: #75231 - router.prefetch should not trigger a React update: #75238 - [DevOverlay] Enable reactOwnerStack when newDevOverlay is enabled: #75199 - fix: typeof msg should compare to object: #75221 - [DevOverlay] Align old and new overlay: #74935 - Introduce standalone `experimental.useCache` flag: #75240 - [metadata] keep blocking metadata rendered in head: #75227 - Upgrade React from `9b62ee71-20250122` to `ae9017ce-20250122`: #75233 - Update React types: #75245 - docs: `opengraph-image` files work with the node.js runtime: #75274 - Upgrade vercel/og: #75247 - Turbopack: migrate global module ids to single-graph: #73752 - Emit build error when `useCache` is enabled and Edge runtime is used: #75279 - Fix `use server` diagnostics for type exports: #74256 - Turbopack: don't hardcode `edge-instrumentation.js`: #75289 - Upgrade React from `ae9017ce-20250122` to `de1eaa26-20250124`: #75286 - Update bundler for pre-bundling runtime: #75294 - Ensure mangling is disabled for dev runtime builds: #75297 - Configure correct app dir when building `/_error` fallback in dev: #75354 - Upgrade React from `de1eaa26-20250124` to `9eabb373-20250124`: #75367 - tweak static generation retry wait time: #75381 - [Dev Badge] Accessibility improvements to dropdown menu: #75268 - Gate `captureOwnerStack` access on `experimental.reactOwnerStack`: #75241 - [DevOverlay] Remove unused props from `errors.tsx` and its story: #75392 - feat: slow module detection for webpack: #75368 - UI polish: dev overlay feedback button: #75400 - [DevOverlay] fix: shadow host element affects parent's display: #70676 - [DevOverlay] Display Correct Number of Errors on Indicator: #75395 - [dev-overlay] fix: do not open error overlay when click indicator: #75404 - fix: handle optional catchalls correctly: #75377 - [dev-overlay] do not close overlay when click indicator elements: #75406 - fix: add parser metadata for eslint 9 cache: #74791 - Fixed `null is not an object (evaluating 't.parallelRoutes.get')`: #75360 - Turbopack: Move build to separate file: #75390 - Upgrade React from `9eabb373-20250124` to `37906d4d-20250127`: #75398 - Turbopack: Implement build worker: #75391 - Revert changing bundler for runtime bundle but keep externals fix: #75412 - Revert "fix: handle optional catchalls correctly": #75442 - [Turbopack] allow to manually mark tasks as root: #75436 - [Turbopack] disable dependency tracking when running build without persistent caching: #75243 - [DevOverlay] fix total error count: #75500 - [DevOverlay] fix total error count: #75500 - fix: incoming requests should use plural: #75582 - Don't warn about Turbopack config if disabled: #75618 - Unfork stack frame utils: #75532 - [use-cache] Exclude warmup render when dynamicIO is off: #75527 - add additional x-middleware-set-cookie filtering: #75561 - [use-cache] use computed size of the ReadableStream for LRU evicting: #75607 - Include HMR refresh hash in `"use cache"` cache keys: #75474 - [DevOverlay] cleanup hydration error UI: #75499 - [metadata] Remove deadcode and extract separate test suite: #75528 - refactor: decouple getOriginalStackFrame from endpoint: #75553 - fix: dev overlay style to add wrap + adjust bg width: #75485 - fix: preserve custom Vary headers: #75536 - Clean-up: remove unused errorMessage param in stack frames: #75554 - Upgrade React from `37906d4d-20250127` to `c492f975-20250128`: #75434 - Fix console replaying and `React.cache` usage in `"use cache"` functions: #75520 - Upgrade React from `c492f975-20250128` to `a4b2d0d5-20250203`: #75649 - DX: Reduce devtools clutter by batching stack frame requests: #75557 - Add nodejs runtime support for middleware: #75624 - polish hydration errors: #75632 - feat: added support for prefetch segments when deployed: #75202 - [Turbopack] await shutdown before ending pool: #75545 - [Error Overlay] Comprehensive refinement: #75471 - Upgrade React from `a4b2d0d5-20250203` to `0a82580b-20250203`: #75660 - Ensure src/middleware handles correctly: #75702 - Unused `searchParams` in `"use cache"` page should not cause dynamic: #75662 - `rootParams()` is now a plain Proimse (not exotic): #75717 - Invalidator: don’t call invalidate at all if there’s nothing to invalidate: #75706 - add script for quickly updating error codes: #75690 - [dev-overlay] fix: color contrast for terminal: #75736 - fix: enable new overlay properly when env var is set: #75747 - fix: work around setTimeout memory leak, improve wrappers: #75727 - [DevOverlay] fix style regression: #75756 - [dev-overlay] fix: proceed to get runtime error when fails to fetch original stack frames: #75743 - [dev-overlay] add and apply merge class names util: #75758 - docs: Update README for experimental testmode: #75722 - fix: middleware not applied to _next/image: #75729 - fix: ensure lint worker errors aren't silenced: #75766 - Ensure node middleware is handled with standalone: #75765 - Fix incorrect error count : #75759 - Upgrade React from `0a82580b-20250203` to `d85cf3e5-20250205`: #75698 - Only disable Prettier for original Turbopack source: #75716 - [dev-overlay] fix: pagination focus ring was invisible: #75790 - test: Exclude `turbo-tasks-macro` from `test-cargo-unit`: #75776 - Send formatted error to frontend if sourcemapping fails: #75712 - Upgrade React from `d85cf3e5-20250205` to `ff628334-20250205`: #75757 - [dev-overlay] fix link styling on hydration errors: #75792 - Only reference published `@types/react-dom` versions: #75606 - Dedupe cached data from `"use cache"` functions in RSC payload: #75786 - Allow `"use cache"` with `output: 'export'`: #75794 - [metadata] new metadata insertion API and support PPR: #75366 - Handle invalid sourcemaps: #75713 - [error overlay] fix missing html error is not displayed: #75831 - docs: improve JSDocs for `metadata` and `<Link>`: #75576 - [error overlay] missing html tags error should be blocking: #75839 - Upgrade React from `ff628334-20250205` to `8759c5c8-20250207`: #75796 - Use TypeScript to check if a default case is required in `switch`: #75854 - Revert "[metadata] new metadata insertion API and support PPR": #75858 - [Error Overlay] Fix bottom stack animation: #75867 - [Error Overlay] New design: #75679 - Upgrade React from `8759c5c8-20250207` to `93b58361-20250209`: #75868 - [dev-overlay] HOTFIX: clicking nav escapes the overlay: #75876 - dev error overlay: async boundary for original stack frame call: #75718 - fix(turbopack): Always console.log the "done in" message after receiving a BUILT event: #75730 - Add test to verify that inner caches are excluded from Resume Data Cache: #75883 - Respect `no-store` request header for `"use cache"` entries in dev mode: #75754 - Reland "[metadata] new metadata insertion API and support PPR #75366": #75873 - [metadata] do not rethrow postpone when streaming metadata is not enabled: #75887 - refactor(webpack-config): Pass through jsConfigPath: #75886 - refactor(webpack-config): Disable some options based on bundler version: #75888 - Improve hydration diff view: #75799 - [dev-overlay] Introduce motion to surface new errors: #75734 - Upgrade React from `93b58361-20250209` to `cd90a4d8-20250210`: #75914 - [DevOverlay]: render indicator in pages router: #75918 - error code should preserve after stitching: #75929 - [error overlay] display different error info individually: #75916 - refactor: minor cleanups in webpack actions code: #75912 - [DevOverlay]: fix missing Error context for build-time errors: #75932 - [error overlay] align data attributes between 2 UIs: #75937 - fix: typos in documentation files: #75816 - [error overlay] fix highlighted lines: #75940 - [error overlay] hornor the original erroring order: #75934 - Restore `--no-mangling` CLI option for `next build`: #75921 - Turbopack: make tracing easier: #75958 - Upgrade React from `cd90a4d8-20250210` to `f83903bf-20250212`: #75967 - Use `compilation.{emitAsset,updateAsset}` api rather than mutating `assets` object: #75927 - Use resource to detect feature usage in telemetry: #75917 - Create unique source URLs between Client and Server in Pages dir: #75878 - cleanup: remove unused NEXT_RSC_ERR_* error parsing code: #75982 - [error overlay] fix infinite loop when frames are failed to fetch: #75988 - [dev-overlay] fix: call stack silently fails to open editor with 204: #75785 - Cleanup webpack sourcemap middleware source URL handling: #75879 - Upgrade React from `f83903bf-20250212` to `cbbe8666-20250213`: #76010 - [dev-overlay] sync style diffs with new design: #75949 - [dev-overlay] update overlay toolbar icons: #75998 - webpack: Sourcemap externals when replayed in the browser: #75863 - [DevOverlay]: enable by default: #75882 - [dev-overlay] style: version info staleness click text to learn more: #75768 - [ppr] Improve experimental debugging: #76016 - [metadata] set bypass ua regex string for ppr routes: #75977 - fix: handle parsing destination with patterns in hostname: #75973 - Fix: Build error causes infinite loop on new dev overlay in Turbopack: #75984 - [metadata] disable streaming metadata for ppr deployment: #75978 - [dev-overlay] fix: hydration error style: #76049 - Remove `experimental.reactOwnerStack` flag: #76021 - [dev-overlay] style: improve version staleness indicator version unknown: #76061 - [dev-overlay] add aria to disabled docs button: #76055 - [dev-overlay] fix: terminal symbols are longer than text: #76059 - Disallow `rootParams()` in `cache` scope: #75801 - Remove tracestate header from fetch cache key: #76041 - [dev-overlay] remove hide dev tools shortcut: #76066 - [dev-overlay] hide dev overlay when printing: #73489 - Create valid URLs in source map sources with Turbopack: #76075 - [metadata] fix ppr deployment by not disabling ppr: #76087 - [dev-overlay] add error env name label: #76003 - [dev-overlay] deprecate `devIndicators` options `appIsrStatus` and `buildActivity`: #76067 - [dev-overlay] deprecate `devIndicators.buildActivityPosition` and rename to `position`: #76069 - Fix runtime error in `writeConfigurationDefaults`: #76106 - [dev-overlay] change dev indicator position by next config option: #76077 - perf: Do not run react compiler needlessly: #75676 - Handle more known protocols in stackframe locations: #76086 - Bump webpack to 5.98.0: #75847 - fix(edge): run after() if request is cancelled mid-streaming: #76013 - Clean module path if Fast Refresh full reload was caused by files outside project: #76108 - Revalidate `"use cache"` caches during on-demand revalidation: #76100 - Fix cache kind validation: #76064 - [dev-overlay] add false option to disable dev indicator: #76079 - Fix on-demand revalidation with `"use cache"` in dev mode: #76122 - [dev-overlay] handle ssrd nextjs internal errors in overlay: #76124 - [dev-overlay] fix: overlay is located relatively low when long content: #76113 - [dev-overlay] Fix off-by-one column sourcemapping in Webpack: #76152 - [metadata] handle navigation API in streaming metadata: #76156 - [dev-overlay] refactor to group the middleware response utils: #76199 - [dev-overlay] fix geist font woff2 name: #76201 - [dev-overlay] rename `readyErrors` to `runtimeErrors`: #76208 - [dev-overlay] do not allow dismissing build error for dev indicator: #76209 - [dev-overlay] use stop icon for hide devtools button: #76212 - Add basic profiling plugin for alternative bundler: #76030 - [dev-overlay] font style backward compat with react 18: #76225 - Implement foundations for additional bundler option: #75981 - Remove hmr socket code from prod build: #76232 - fix: overlapping query and param names should not conflict: #76177 - Built-in app loader plugin for additional bundler: #76017 - Built-in flight plugin for additional bundler: #76014 - Built-in swc loader plugin for additional bundler - misc: remove vendored node-fetch usages: #75741 - Consolidate `next/link` error tests: #76214 - fix: NextConfig.rewrites type for fallback: #75784 - [dev-overlay] use absolute font src url: #76229 - [dev-overlay]: remove old CollapseIcon: #76239 - fix: add appDir path to middleware output path: #75923 - [Turbopack] pass inner modules to chunking to match chunking types: #76227 - [dev-overlay] Remove old Dev Overlay: #76256 - [dev-overlay]: make open in editor button a separate click region: #76243 - [dev-overlay] dead code elimination: #76276 - [dev-overlay] use unique font name: #76230 - [dev-overlay] align border color: #76288 - Add canary warning for node middleware: #76292 - fix: top level await in node middleware: #76012 - docs(errors): add failed-to-find-server-action error page: #75678 - Ensure middleware layer is applied for node: #76293 - [metadata] fix streaming metadata triggering error boundaries: #76280 - [errors]: default export error should distinguish between layout/page: #76294 - Remove unused nccd node-fetch: #76241 - [dev-overlay] expandable error message container: #76297 - feat: option to disable next types plugin: #76300 - [dev-overlay] pick up build error message: #76290 - [dev-overlay] fix: line number handling for cursor editor: #76151 - [dev-overlay] restructure dev-overlay project: #76291 - Upgrade React from `32b0cad8-20250213` to `662957cc-20250221`: #76333 - Revert null check in mountLinkInstance: #76289 - [dev-overlay] Isolate overlay from user space Components: #76277 - [global-error] fallback to default error when user one fails: #76339 - [misc]: remove unused render worker code: #76345 - [dev-overlay] do not attach hydration info to non hydration errors: #76349 - [dev-overlay] adjust Next.js logo stroke color during dev builds: #76351 - [dev-overlay] fix: restore the missing Cursor editor case in dev-overlay : #76371 - [dev-overlay] remove the experiment config for overlay: #76356 - [dev-overlay] minify css: #76370 - [dev-overlay] remove unused base styles: #76372 - [dev-overlay] use css var for `<a>` tag focus ring: #76374 - [dev-overlay] fix: fallback to local machine's Geist Font if applicable: #76377 - [dev-overlay] fix: bottom stack count: #76375 - [next] use `tsconfig.build.json` for production build: #76373 - [metadata] only blocking render for html bots in ppr pages: #76379 - [metadata] enable streaming metadata by default: #76221 - [dev-overlay] toggle overlay when clicking `N issues` section: #76398 - [dev-overlay]: hiding devtools shouldn't hide errors: #76399 - [dev-overlay] docs: add readme: #76396 - Add test to assert on current build output tree view: #76342 - Flight loader: use `normalModule.type` to determine module type: #76338 - update type for next/dynamic `loading` option to accept `ReactNode`: #76402 - [dev-overlay] Link to section explaining opt-in error feedback: #76424 - [dev-overlay] polish component stack mask css: #76434 - [dev-overlay] Disable error feedback in UI if `NEXT_TELEMETRY_DISABLED` is set: #76423 - [metadata] promote streaming metadata configs to stable: #76344 - [metadata] update metadat docs for streaming metadata: #76282 - [app] Send errors not handled by explicit error boundaries through `reportError`: #76101 - Upgrade React from `662957cc-20250221` to `25677265-20250224`: #76437 - [Testing] Update middleware/next-config tests to include search params: #76354 - Add node middleware handling for turbopack: #76360 - Upgrade React from `25677265-20250224` to `22e39ea7-20250225`: #76481 - [app i18n]: warn about i18n configuration deprecation in app router: #76346 - [dev-overlay] style: improve error label background color contrast: #76490 - Fork Form implementation for Pages and App Router: #76498 - Webpack: handle file:// urls when finding sourcemaps: #76443 - Ensure middleware layer is bundled: #76466 - [dev-overlay] do not force hide scrollbar: #76504 - [Segment Cache] Hard nav when root layout changes: #76163 - [metadata] clarify the default list behavior: #76450 - [dev-overlay]: generalize ISR status functions for pages/app: #76457 - [dev-overlay]: wire up ISR status for pages router: #76458 - [dev-overlay]: fix inline docs to show correct info for given router: #76461 - [dev-overlay] add title for the dev indicator menu items: #76510 - [dev-overlay] sync suffix `N` of `--size-N` with `px` value of base font `16px`: #76384 - Add event for webpack plugin customization: #76477 - [dev-overlay] use `rem` for sizes and `px` for spacings: #76385 - [dev-overlay] hide dev indicator for server session or 1 day: #76430 - [dev-overlay] customize scrollbar styling: #76509 - [dev-overlay] Add indicator when sourcemapping fails: #76516 - refactor: clean up forked Form implementations: #76495 - [dev-overlay]: fix invalid font in info panels: #76519 - [dev-overlay] upgrade `[email protected]`: #76511 - [dev-overlay]: add preference panel: #76522 - [dev-overlay]: remove background on custom select: #76526 - [dev-overlay]: tweak system icon: #76527 - fix: remove initial-scale=1 from viewport when set to false: #76397 - [dev-overlay] control scrollbar by selected theme: #76553 - [dev-overlay] misc: `Ignored-listed` -> `Ignore-listed`: #76554 - [dev-overlay] add disabled backround-color for toolbar buttons: #76555 - [dev-overlay]: update docs for devIndicators & outdated screenshot: #76463 - [dev-overlay] improve color contrast for terminal: #76525 - [dev-overlay]: use proper labels for preferences: #76558 - Handle duplex automatically for NextRequest: #76531 - [Segment Cache] Implement scroll-to-new-page: #76170 - Do not pass an empty string tag into `receiveExpiredTags`: #76561 - [Segment Cache] Re-prefetch links on navigation: #76060 - [dev-overlay] fix: svg icon ids are not unique: #76566 - [dev-overlay] change button to lowercase except leading letter: #76565 - Remove rewrite query params from request URL when deployed to Vercel: #76548 - exclude AppDevOverlayErrorBoundary from prod build: #76568 - [dev-overlay] rephrase docs button title as link to related docs: #76571 - [dev-overlay]: allow disabled state to be dismissable: #76572 ### Example Changes - chore(docs): add missing `search: ''` on `remotePatterns`: #73925 - examples: remove `with-tailwindcss` example: #73919 - examples: update `next-config-js` document path: #73774 - examples: convert @next/third-parties examples from JS to TS: #73602 - updated with-orbit-components example to utilize the App Router.: #73266 - examples: update `with-styled-components` README: #73729 - examples: update `with-orbit-components` README: #74011 - examples: update `with-mdx-remote` example to utilize the App Router: #74067 - Removed duplicated cn function declaration from lib dir: #74065 - Fix linting between lint-check and lint-staged: #74503 - chore(examples): update React in reproduction templates to stable 19: #74499 - chore(examples): updated the example of with-react-jss to utlize the App router: #74440 - chore(examples): updated the example of with-styled-components-rtl to utlize the App router: #74180 - examples: remove `app-dir` and `with` prefix in the `mdx` directory name: #73458 - examples: add StackBlitz preview to README.md: #73546 - examples: improve DX while copying command to create new project: #73463 - examples: fix `with-zones` repository name in the deploy link: #74852 - with-mux-video: recommend environment variables instead of secrets: #74879 - with-mux-video: updates for next 15 compat: #74881 - Update readme for with-mux-video: #74966 - docs: recommend webp over avif: #75966 - examples: fix search usage: #75972 - example: add next config to hello-world app: #76022 - Fix cms-plasmic example: #75750 - examples: Fix prettier issue: #76027 - Update with urql example: #76485 - Updated remove-console example to utilize the app router.: #76543 - Fix createclient: #76567 ### Misc Changes - Add NEXT_PRIVATE_SKIP_CANARY_CHECK env for bench job: #73763 - refactor(turbopack): Add `NonLocalValue` derives to types deriving TraceRawVcs: #73714 - Turbopack: support module workers: #72614 - docs: add versions to connection API: #73798 - Increase test retries from 1 to 2: #73795 - refactor(turbo-tasks): Implement `NonLocalValue` for *all* `ResolvedVc`s and `OperationVc`s: #73764 - docs: supporting after for providers: #73743 - [E2E] Fix config file conflict: #73818 - feat: Update `swc_core` to `v9.0.0`: #73696 - Turbopack: resolve some to-resolved-in-loop: #73794 - Bump Rust version: #73169 - fix(turbopack): Enable `explicit_resource_management` transform: #73802 - docs: fix code block extension on `after` and `error handling`: #73844 - Revert "feat: Update `swc_core` to `v9.0.0`": #73866 - refactor(turbo-tasks): Derive NonLocalValue by default in value/value_trait macros: #73766 - refactor(turbo-tasks): Implement `NonLocalValue` for `State<T>` where `T: NonLocalValue`: #73770 - chore(github): fix typo in close-issue-message: #73878 - Docs: Remove `unstable_expirePath` and `unstable_expireTag` docs: #73856 - Docs: Create `Examples` section: #73858 - Docs clean up: Merge and delete content from `routing/index.mdx`: #73859 - Docs clean up: delete `defining-routes.mdx` and `pages.mdx`: #73863 - Turbopack: store ChunkingType in single-module-graph: #73837 - chore(turbopack-browser): Pedantically fix minor typos in comments about TraitRef: #73772 - chore(docs): update version history of `next/image`: #73923 - docs: update `WebVitals` component: #73869 - Correct typo in Update 04-images-and-fonts.mdx: #73790 - chore(github): add issue_wrong_template workflow: #73882 - docs(mdx): add a dynamic imports section for App Router: #73466 - chore: increase test sharding: #73852 - fix(turbo): sassOptions `silenceDeprecations` was not overwritten with user options: #73937 - Docs: fix typo in `examples` page: #73907 - docs: add `next.config.ts` code switcher to Redirecting docs: #73848 - docs: add tsx switcher to `linking and navigation`: #73846 - docs: update file structure on contribution guide: #73778 - docs: add `next-intlayer` into i18n solution list: #73750 - docs: minor typos and fixes: #73955 - docs: fix sitemap changelog table formatting: #73760 - fix(docs): vitest manual setup: #73754 - docs: fix file extension and missing export: #73842 - docs: update `tailwind.config.ts` to use `satisfies` operator: #73924 - docs: Fix MDX syntax error: #73970 - chore(next-custom-transforms): Mark fixture outputs as generated: #73918 - docs(use-cache): add missing jsx switcher example and types: #73473 - docs(internalization): add typescript examples and fix params as promise: #73240 - docs: add missing quotation marks in exmaple code: #73720 - chore(turbo-tasks-macros): Remove use of associated items for NativeFunction construction: #73929 - refactor(turbo-tasks-macros): Strip (already hidden) doc attributes from inline function signatures: #73931 - chore(github): fix wrong-issue-template body: #74003 - chore(turbopack): Fix build error when CI environment variable is not supplied: #74041 - Make `ChunkItem`s reference only `OutputAssets`: #73824 - Install Vercel CLI at start of E2E deploy tests: #74047 - Fixed small typo in the doc: #73971 - docs: fixed regex for parsing base64String, and updated subscribeToPush function.: #73940 - exclude some modules from auto-import: #74020 - [Docs]: Clarify redirects in next.config to negate potential infinite redirects: #74019 - Update Turbopack development test manifest: #74013 - Turbopack: use old client reference collection implementation: #74029 - Create Jest project for Turbopack: #73769 - [Turbopack] move git version info to top-level crate to fix caching issues: #74015 - docs(redirect): add typescript example and fix params as promise: #73963 - docs: Fix filename for Turbopack traces: #74066 - Fix flakey deploy test assertion: #74060 - Specify PPR test dimension via environment variable only: #74031 - Name default Jest project according to used env variables: #74084 - test: assert that app exited without signal: #74087 - sync-react: Handle version bumps across SemVer minors and release channels: #74091 - Turbopack: change COMMON_CHUNKING_TYPE: #74080 - Turbopack: only inherit visited modules from parent layouts: #74072 - fix: improve types in turbopack runtime: #74119 - Fix merge conflicts: #74157 - refactor(turbopack/next-core): Migrate app_page_loader_tree structs to ResolvedVc: #74114 - refactor(turbo-tasks): Remove public OperationVc constructor, introduce a macro annotation for creating OperationVc types: #72871 - refactor(turbo-tasks): Make State require OperationValue: #73876 - chore(turbopack): Remove or improve a few uses of `.to_resolved().await` inside a loop: #74112 - refactor(turbopack): Rewrite CollectiblesSource callsites to use OperationVc (part 1/3): #74051 - chore(turbopack): Delete to-resolved-in-loop lint (too low signal): #74113 - Allow usage of `this` and `arguments` in nested function expression: #74179 - docs: update ISR self-hosting example code: #74211 - ci: use consistent playwright-chromium version: #74251 - Fixed typo in documentation: #74254 - docs: fix typo in self-host after() details: #74243 - chore(github): update comments stale period: #74291 - Fix typo in generateViewport docs: #74288 - docs: remove catch-all for opengraph-image: #74338 - docs(generate-static-params): add typescript example and missing jsx switcher: #73962 - docs(fetching-data-and-streaming): add missing types to example: #74081 - docs(use-cache): add missing `switcher` code blocks and types in examples: #74083 - refactor(next-core): Remove local annotations from structs in next-core/src/app_structure.rs: #74200 - test: add missing await for hydration test: #74542 - Getting Started Docs: Add `Mutating Data` page: #74018 - Getting Started docs: Add `Error Handling` page: #74069 - test: update test for async client component with snapshot: #74550 - test utils: Include origin of failed `browser.*` in stack: #74553 - fix react being incorrectly mentioned as extending fetch API: #74278 - docs: pin react version to 18 in Next.js 14 upgrade guide: #74222 - chore(github): update issue_stale token to release bot token: #74575 - chore(ci): Ensure all 6 shards are used equally in deploy tests: #74574 - fix: force module format for virtual client-proxy file: #74162 - [Turbopack] fix shadow-rs build caching: #74579 - Relocate `SingleModuleGraph` to `turbopack-core`: #74571 - misc: add `.stories.tsx` to vscode file nesting: #74593 - ci(eslint): remove unecessary react/self-closing-comp: #74120 - docs(images): update distinction between priority and fetchPriority: #74650 - docs: SPAs: #74605 - docs: fix typo: #74657 - Use prefer offline flag for CI: #74663 - perf(rcstr): Support inline string: #74482 - refactor(turbopack-ecmascript) Use ResolvedVc in EsmExport type: #74508 - test: assert the logs has updated after revaluate js value: #74686 - Recommend styled-components VSCode extension to get CSS autocomplete in Dev Overlay: #74688 - fix(turbopack): Stop analyzer if IIFE is recursive: #74628 - refactor(turbo-tasks): Add NonLocalValue marker trait implementation for TransientState: #74509 - build(scripts/pack-next): Add support for compressing debuginfo with zlib: #74662 - refactor(turbopack-core): Use ResolvedVc in IntrospectableChildren: #74510 - refactor(turbopack-core): Use ResolvedVc in ProcessResult and ModuleResolveResultItem: #74511 - Update lightningcss: #74695 - refactor(turbopack-core): Use ResolvedVc for IntrospectableModule and IntrospectableSource: #74512 - Turbopack: add flag to switch between envs: #74135 - Upgrade Turborepo to v2.3.3: #74736 - build: Update `swc_core` to `v10.1.0`: #74580 - Improve memory usage of the new backend: #74740 - test: add feature of overriding files: #74716 - Update 09-error-handling.mdx: #74656 - misc: add `.cursorignore`: #74763 - chore(github): update how we handle stale issues: #73488 - chore(github): ignore PRs in for stale issue bot: #74767 - Turbopack chunking: use ChunkableModules in `chunk_content`, not ChunkItems: #74040 - chore(turbopack): Delete some dead code that was using unresolved Vcs: #74705 - refactor(turbopack-core): Remove remaining "local" value type opt-outs in turbopack-core: #74706 - refactor(turbopack-dev-server): Remove unresolved Vc from DevHtmlEntry, use a named struct: #74707 - Update incorrect comment: #74687 - Typo in nextjs-compiler.mdx: #74645 - Fix small bug in getting started docs: #74744 - docs update: Remove public access modifier from resetRequestCache method in CacheHandler class, it's not available in js file (only in typescript): #74788 - docs: unstable_cache clarify usage: #74802 - fix: unauthorized.mdx: #74799 - [Turbopack] make the single module graph a root task: #74778 - docs: mark app router dynamic example as client component: #74806 - docs: disclaimer for only canary version available for ppr: #74813 - refactor(turbopack-dev-server): Use ResolvedVc/NonLocalValue in RewriteType, remove all "local" opt-outs from structs: #74708 - refactor(turbopack-ecmascript): Use ResolvedVc in CodeGen type: #74709 - refactor(turbopack/next-core): Use ResolvedVc in VisitClientReferenceNodeState: #74710 - refactor(turbopack-core): Use ResolvedVc in ContextCondition: #74711 - refactor(turbopack/next-core): Use ResolvedVc in PackagesGlobs: #74712 - docs: mention special case for trailing slash: #74839 - refactor(turbopack): Remove last known (non-test) usages of unresolved vcs in turbo_tasks::value (!!!): #74713 - docs: fix typos in 08-mutating-data.mdx: #74856 - [Turbopack] add count method to storage: #74830 - [Turbopack] add tracing to task execution: #74770 - [Turbopack] improve task aggregation update: #74771 - [Turbopack] add active_counter to keep tasks active: #74772 - Update CI config for Windows runner: #74850 - fix(turbopack): Fix tree shaking with `import * as R`: #74725 - ci: ensure fnm is installed in build_reusable: #74891 - feat(turbopack): Add a compile-time feature to turbopack to enable tokio-console support: #74675 - [Turbopack] fix task optimization by removing children count: #74907 - fix(turbopack-swc-utils): Don't panic if issues aren't emitted, use `#[must_use]` annotation: #74906 - Create synchronous snapshots of recursive AvailableModuleInfo struct: #74894 - fix persisent caching restore bug: #74917 - Fix missing `await` of `params` when metadata with an image file pt2: #74193 - Turbopack: capture all references in module graph: #74873 - Add reference library that supports React Server and uses React Compiler: #74923 - [Turbopack] refactor to pass ModuleGraph to chunk_group: #74937 - [Turbopack] fix unemit collectible: #74932 - refactor(turbo-tasks): Convert local Vcs to non-local Vcs when returning from task functions: #74714 - perf(turbo-tasks): Add a synchronous try_sidecast method to ResolvedVc: #74844 - perf(turbopack): Reduce size of `ConstantValue`: #74965 - Turbopack: singular EcmascriptClientReferenceModule: #74946 - refactor(turbopack): Merge `Atom` and `JsWord` variant of `ConstantString`: #74967 - Turbopack: add server actions loader to module graph: #74951 - perf(turbopack): Box `ConstantValue::Regex`: #74968 - perf(turbopack): Reduce size of `Effect`: #74969 - test: temporarily disable after deploy test: #74989 - test: add turbopack hmr flaky test: #74995 - Turbopack error logging: check NEXT_TEST_CI to use verbose behavior: #75001 - Turbopack: compute chunk group info: #74947 - build: Update `swc_core` to `v10.2.5`: #75002 - Re-enable app-dir logging test: #75003 - chore(github): use Issue Types: #75006 - chore(github): remove documentation label from area dropdown: #75008 - refactor(turbopack/next-api): Make VcArc use OperationVc: #74479 - Add `next-custom-transforms` tests to verify source maps: #75005 - build: Update `swc_core` to `v10.3.0`: #75018 - put dirty task tracing behind a feature flag: #75022 - Turbopack: fix layout segment optimization: #75026 - fix layout segment optimization: #75035 - Turbopack: don't search for layout segments in routes: #73847 - Turbopack: resolve arguments to `EsmAssetReference::new`: #75040 - perf(turbo-tasks): Optionally schedule ResolveNative/ResolveTrait tasks as local tasks: #69126 - hopefully fix infinite recursion in optimize: #75043 - [Turbopack] implement chunking based on the module graph: #74979 - [Turbopack] avoid crashing on e.g. .DS_Store: #75050 - perf(turbo-tasks): Use the type information we already have for all ResolvedVc casts, expose synchronous versions of functions: #75055 - docs: update Next.js 15 versions in upgrade guide: #74960 - [Turbopack] Production Chunking: #75010 - Include CI runner labels in Turborepo hashes: #75099 - [Turbopack] try to avoid too small chunks size when optimizing for production: #75048 - perf(turbopack): Reduce size of `EffectArg`: #74973 - build: Update `swc_core` to `v10.5.0`: #75098 - perf(turbopack): Use `u32` for the total node count: #75100 - test: add dynamic api usage test case for streaming metadata: #75109 - Turbopack: optimize NftJsonAsset: #75105 - [Turbopack] Low hanging fixes and improvement on module graph: #75106 - Turbopack: don't create span for parallel chunking type: #75094 - refactor(turbopack): Only perform strongly consistent reads/resolves on VcOperation: #75016 - fix: remove unnecessary parentheses in draft mode API: #75153 - perf(turbo-tasks): Turn on `local_resolution` feature by default: #75051 - [Turbopack] allocation improvements for SingleModuleGraph: #75145 - [Turbopack] pass sourceMap flag to webpack loaders and postcss: #75144 - Update 06-data-fetching-and-streaming.mdx (Removed duplicate word): #74810 - add test case for intercepting route + catchall + generateStaticParams: #75167 - [Turbopack] remove verbose new backend tracing: #75165 - optimize read matches to reduce FileSystemPath calls: #75164 - chore(turbo-tasks): Remove the ability to opt-out of NonLocalValue for VcValueType and VcValueTrait: #75053 - chore(turbopack): Mark `ResolvedVc::resolve` as deprecated to prevent resolving an already-resolved ResolvedVc: #75168 - Turbopack: don't generate CSS for Node.js: #75117 - chore(tests): Remove linguist-generated git attribute from test snapshot data/fixtures: #75194 - chore(github): remove Developer Experience area: #75198 - [Turbopack] fix invalidation and counting with collectibles: #75195 - chore(github): add CSS area/label: #75201 - Remove `endpoint.write_to_disk()` in favor of standardized `endpoint.output()`: #75059 - perf(turbopack): Use `Cow::into_owned` instead of `.to_string()`: #75216 - [Turbopack] Memory improvements: #75210 - docs: Update `robots` for `generateMetadata` spec: #75229 - refactor(turbo-tasks): Use Return Position Impl Traits (RPIT) to reimplement GraphTraversal: #74896 - chore(turbo-tasks): Delete `non_local_return` support from `#[turbo_tasks::function]`: #75209 - perf(turbopack): Update SWC plugins (`styled-jsx`, `emotion`): #75236 - refactor(turbopack): Remove `ReadRawVcFuture.turbo_task`: #75217 - test: Move `should not cause error when removing loading.js` to flaky manifest: #75239 - test: skip dev/deploy testing for `test/e2e/app-dir/segment-cache/revalidation/segment-cache-revalidation.test.ts`: #75249 - misc: add Rauno to CI approved: #75269 - [Turbopack] include async loaders in chunking instead of separating it: #75052 - perf(turbopack): Use `Pass` API for `styled-jsx` SWC plugin: #75271 - perf(turbopack): Reduce needless allocations for SWC plugins: #75275 - Add test fixtures demonstrating export statement validation bugs: #75277 - Fix export statement validations for app router pages: #75278 - change turbopack-cli to new backend: #75242 - chore(turbo-tasks): Remove argument resolution from backends, only allow local-task-based argument resolution: #75214 - refactor(turbo-tasks): Merge dynamic_call/native_call with dynamic_this_call/native_this_call: #75253 - chore(turbo-tasks): Clean up consistency/untracked APIs around local outputs and cells: #75171 - fix(turbo-tasks): Implement `is_transient` on `OperationVc`: #75291 - [Turbopack] box InnerStorage to avoid overallocation: #75287 - [Turbopack] Inline commonly used storages: #75284 - perf(turbo-tasks): Add a 'local' option to `#[turbo_tasks::function(..)]`: #75259 - [Turbopack] avoid some allocations: #75285 - chore(turbo-tasks): Loosen some type bounds on ShrinkToFit for IndexMap, update indexmap crate: #75193 - perf: Update SWC plugins: #75324 - Getting Started docs: Consistent casing and naming: #74637 - Turbopack: CLI / perf improvements: #75373 - docs: fixed typo to auth.ts: #75345 - fix(create-next-app): use web standard error check for URL: #71473 - docs: remove infinite looping redirect: #75376 - chore(github): update more labels: #75382 - docs: let searchParams be Promise in `<Form>` example.: #75386 - [Turbopack] cleanup tracing spans and names: #75385 - Convert remaining sync (search)params access: #75389 - Turbopack: use type alias: #75300 - [cna] upgrade templates tailwind to v4: #75407 - chore(github): update more labels: #75409 - create-next-app: default to ESLint disabled: #73864 - Turbopack: Use from_utf8_unchecked for minify output: #75422 - docs: add optimizations for navigating between App/Pages router: #75427 - Add temporary CI workflows for testing: #75432 - [Turbopack] fix is_empty implementation: #75426 - docs: specify encryption for custom actions key: #75425 - chore(github): update more labels: #75444 - [Turbopack] only the first task read need to be strongly consistent: #75435 - perf(turbo-tasks): Filter out and do not cache unused arguments: #75261 - build: Update `swc_core` to `v12.0.0`: #75327 - chore(github): update github labels: #75452 - fix rustflags for musl targets: #75599 - Fix rewrite-headers test: #75602 - Turbopack CI: Update test results artifact: #75429 - Add package.json script for building turbopack-cli: #75031 - [Turbopack] update event_listener to fix hanging bug: #75481 - Turbopack: add dedicated TracedAsset: #75510 - Turbopack: generate shorter variable idents: #75611 - [Turbopack] connect children in a batch when task is about to finish: #74773 - Update test-junit-report path: #75612 - [Turbopack] add more options for production chunking: #75544 - Turbopack: Skip Traced chunking type in module graph: #75608 - fix(turbo-tasks): Fix building with --features=turbo-tasks/hanging_detection: #75584 - Turbopack: Disable react_refresh code in production: #75535 - chore: remove global-error in hello-world example: #75509 - [Turbopack] limit the number of concurrent fs operations: #75480 - Fix rustflags in *-musl builds: #75614 - Update test-junit-report path: #75612 - [Turbopack] add more options for production chunking: #75544 - Turbopack: Skip Traced chunking type in module graph: #75608 - fix(turbo-tasks): Fix building with --features=turbo-tasks/hanging_detection: #75584 - Turbopack: Disable react_refresh code in production: #75535 - chore: remove global-error in hello-world example: #75509 - [Turbopack] limit the number of concurrent fs operations: #75480 - Fix rustflags in *-musl builds: #75614 - Ensure junit-report is uploaded: #75615 - refactor(turbo-tasks): Port task statistics to the new backend: #75303 - Bring back rust bindings path: #75620 - Turbopack: short module ids in cli: #75357 - perf(turbo-rcstr): Fix the fast codepath for RcStr::into_owned(): #75504 - Fix corepack keys in deploy e2e tests: #75622 - chore(turbo-tasks): Add test for argument filtering: #75585 - perf: Make `next-page-static-info` use `Atom` instead of `String`: #75587 - refactor(turbo-tasks): Codemod/migrate all ResolvedVc casting callsites to use the new synchronous APIs: #75547 - perf: Make `cjs_optimizer` use `Atom` instead of `String`: #75588 - perf(turbo-tasks-fs): Call shrink_to_fit when building an immutable Rope: #75505 - chore(turbopack): Remove unmaintained fxhash crate, use rustc-hash instead: #75530 - chore(github): add conditional to triage workflow: #75524 - chore(github): update stale bot: #75630 - perf(turbopack): Update rustc-hash from 1.1.0 to 2.1.0: #75531 - perf(next-custom-transforms): Replace non-`Sync` `Rc<DashMap<_, _>>` usage with `Rc<RefCell<FxHashMap<_, _>>>`: #75534 - refactor(turbopack): Define and use an FxDashMap alias everywhere: #75538 - perf(turbopack): Migrate as many data structures to FxHash as possible: #75546 - Disable `rewrite-headers` tests that are dependent on Vercel site config: #75647 - docs: remove unused imports: #75653 - Run build-nextjs for Turbopack test runs on metal machines instead of GitHub hosted runner: #75654 - perf: Make `next_ssg` use `Atom` instead of `String`: #75591 - Remove github runner specific step: #75655 - [Turbopack] fix dependencies on own task: #75658 - Turbopack: `OutputAsset::path()`: #75659 - [Turbopack] use Timestamp type, allow spans less than 1Β΅s: #75479 - Turbopack: generate less JS before minification: #75358 - [Turbopack] correctly apply defines: #75643 - Turbopack: don't cell CodeGen-s: #75513 - perf: Make barrel optimizer use `Atom` instead of `String`: #75592 - perf: Make RSC pass use `Atom` instead of `String`: #75593 - perf: Make server action pass use `Atom` instead of `String`: #75594 - [Turbopack] sort spans by start date in tracing: #75642 - [Turbopack] setup aggregation number before connecting children: #74910 - perf: Make page exports stripper use `Atom` instead of `String`: #75595 - perf: Make page static info use `Atom` instead of `String`: #75596 - [Turbopack] reduce the number of spans created in task completion: #75437 - [Turbopack] wait for output instead of waiting for task completion: #75438 - perf: Remove needless `Arc`: #75601 - Turbopack: make IssueSource a TaskInput: #75542 - Unflake `cookies/headers/draftMode in "use cache"` test: #75675 - Turbopack: don't watch output FS: #75680 - Turbopack: uncell RequireContextValue: #75683 - Turbopack: cache variables in linker: #75440 - Turbopack: disambiguate `TaskInput::resolve`: #75661 - Turbopack: remove last stray lint ignore comments: #75519 - Update `swc_core` to `v13.0.4`: #75684 - test: fix eslint plugin test: #75687 - Add regression test for previously hanging compilation with Turbopack: #75507 - chore(turbo-tasks): Remove support for local_cells (a specific mode of local tasks we ended up not using): #75672 - docs: fix example for multiple tags in cacheTag usage: #75693 - Turbopack: lazily evaluate `obj` for member replacements: #75453 - Fix lint for cacheTag doc: #75703 - [Turbopack] disable dependency tracking for next build: #75704 - Add test to verify which pages are prerendered in `use-cache` test suite: #75681 - chore(next-swc-napi): Remove unused(?) rlib target: #75707 - Turbopack: add test for local tasks in traits: #75708 - Revert "chore(next-swc-napi): Remove unused(?) rlib target": #75745 - [Turbopack] use new backend in next-build-test: #75724 - [Turbopack] Reduce memory: #75723 - Report build-and-deploy failures: #75749 - Turbopack: uncell AstPath: #75695 - Turbopack: switch some deps back to upstream: #75752 - Turbopack: less tasks in `with_modules`: #75700 - chore(turbopack): Remove legacy next.js HMR compat code: #75725 - Turbopack: make `ModulePart` a `TaskInput`: #75364 - Turbopack: remove SWC CSS sourcemap variant: #75753 - docs: follow up fix: #75760 - chore(github): add labels-to-add-when-unstale label -> not stale: #75721 - docs(route-segment-config): remove line in force-dynamic mentioning it's like getServerSideProps: #75773 - Return `null` if Redbox has no component stack: #75744 - unsupported should be supported in docs: #75772 - build: Update `swc_core` to `v13.1.0`: #75771 - chore(github): skip nissuer when Documentation issue template is used: #75802 - refactor: Use `shrink-to-fit` crate instead: #75777 - Delete expirePath and expireTag pages (again): #75691 - docs: add Chrome debugging port configuration steps: #75845 - [test] More accurate stack assertions in terminal: #75355 - refactor(tests): Refactor environment reload HMR test: #75875 - [Turbopack] fix recompute invalidation: #75850 - [Turbopack] allow to configure last successful parse cache state: #75851 - [Turbopack] remove asset context and layer from static files: #75892 - [Turbopack] fix hanging bug caused by incorrect active counter handling on stale tasks: #75732 - [Turbopack] prefer to use the node.js process where we invested the most time: #75894 - Turbopack: remove unused code: #75897 - [Turbopack] allow to disable active tracking in turbo-tasks: #75899 - [Turbopack] add fast path for increase active count: #75900 - test: align existing testing util: #75844 - [Turbopack] Add `final_read_hint` API and change `clone_value` to `owned`: #75852 - Turbopack: use result instead of panic: #75903 - fix(turbopack): Update Cargo.toml/package.json license field for turbopack-related crates: #75889 - Turbopack: source locations as u32: #75705 - test: Write files before install: #75906 - docs(css-in-js): update warning about using css-in-js with server components: #75931 - docs: update CRA guide: #75939 - docs: fix typo in `use-cache.mdx`: #75848 - Update 01-installation.mdx: #75788 - fix typo in 07-updating-data.mdx: #75711 - docs: fixed wrong import for `unauthorized`: #75420 - docs: incorrect anchor on searchParams link: #75266 - Fixed link to stale-while-revalidate article: #74949 - Stop using deprecated `TURBO_REMOTE_ONLY`: #75832 - Turbopack: store serialized sourcemaps instead: #75791 - Add test for missing sourcemap loader support of `ignoreList`: #75907 - Update sourcemap tests due to recent Turbopack changes: #75954 - [Turbopack] scale down process pool when module graph is finished: #75896 - Fix flaky error-recovery test: #75948 - [Turbopack] disable session dependent tasks when dependency tracking is disabled: #75965 - docs: fix `use` pattern: #75529 - docs: fix prettier error: #75968 - Add (failing) test for module based feature telemetry in App Router: #75952 - [docs] update tailwind installation instruction to v4: #75739 - fix: compiler error when next/cache is used in a client module: #75979 - Update toolchain to nightly-2025-02-12: #75983 - fix(CI): Initialize non-existent bundler manifests: #75987 - [Turbopack] improve race condition handling of scheduling: #75748 - Check for visibility not just existence of Redbox: #75846 - ci: fix version-staleness test: #76020 - fix(turbopack CI): Pin corepack version for production tests manifest update action: #75986 - Fix unisolated tests: #76018 - [Turbopack] fix hanging and flaky issues: #76032 - [Turbopack] only invalidate fs writes with a different content: #75936 - [Turbopack] fix tree shake ident on code generation: #75970 - [Turbopack] avoid allocating on AggregationUpdateQueue::new: #76034 - [Turbopack] add tracing to turbopack-tests: #76033 - [Turbopack] avoid creating many ModuleOptions: #76035 - fix recomputation when reading gc'ed cells from in progress tasks: #75969 - [Turbopack] try to avoid cloning AST during code generation, pass final_read_hint: #75853 - [Turbopack] make `make_chunks` a non-turbo-tasks-function: #76042 - Turbopack: less CodeGenerateable for references: #75963 - Turbopack: refactor how EsmAssetReferences are added: #76011 - Turbopack: codegen EsmAssetReference without turbo tasks: #76024 - Fix stale snapshots: #76116 - Turbopack: Fix static generation test: #76125 - Cleanup `experimental.reactOwnerStack`: #76123 - Turbopack: Fix middleware test: #76126 - Current behavior for `reportError`: #76115 - test: replace explicit `padding-bottom` with `devIndicators: false` for scroll position testing: #76105 - Turbopack: less turbo tasks for `chunk_item.id()`: #76110 - Turbopack: Add passing test to manifest: #76143 - Improve server actions sourcemap test: #76129 - build: Update `swc_core` to `v14.0.0`: #76135 - refactor(turbopack): Simplify `minify()`: #76139 - feat(turboyet): Upload test data for both bundlers: #76090 - chore(github): add Error Overlay area: #76167 - Put flaky `use-cache-unknown-cache-kind` dev tests in sandboxes: #76171 - Turbopack: compute async info from module graph: #76118 - Report tests to Datadog from Job that executed them: #73180 - Align Redbox test helpers: #76213 - Fix stale snapshots: #76237 - Ensure datadog upload is skipped for forks: #76238 - docs: Fix link on UPGRADING.md: #75761 - [Turbopack] add many pages bench: #76244 - [Turbopack] remove ChunkingType::Passthrough: #76217 - [Turbopack] add concept of ChunkGroups: #76218 - [Turbopack] increase hash length to avoid hash conflict: #76245 - [Turbopack] add ChunkingType::Shared: #76228 - Turbopack: Fix 500 handling in edge with pages router: #76155 - Turbopack: Update app-dir tests: #76145 - Turbopack panic handler: link to bug report issue template: #76226 - Disable turbo daemon by default: #76248 - Unflake `ppr-full` tests: #76271 - docs(errors): minor update to failed-to-find-server-action error page: #76296 - docs(cookies): update good-to-know for cookie.delete: #76303 - Turbopack: ignore invalid sourcemaps for now: #76215 - Update outdated snapshots: #76318 - [Turbopack] smarter merging of small chunks in production chunking: #76319 - [ci]: skip use-cache deployment test: #76334 - [Turbopack] merged chunks need to have min overlap of 2 merge remainers into chunk: #76320 - test: disable metadata streaming deployment tests: #76335 - [Turbopack] allow to merge into big enough chunk candidate when 100% overlap: #76321 - [Turbopack] compute expected benefit of merging chunks and use that as factor: #76331 - Update datadog job to use pnpm dlx: #76337 - docs: add Logto auth library: #75176 - [test] Use new Redbox matchers in pages/ hydration-error test: #76350 - test: update snapshot for component stack: #76359 - Update error-recovery test snapshots for alternative bundler: #76299 - Turbopack: ChunkGroupType for graph entries: #76235 - Turbopack: accept ChunkGroup in chunking context: #76242 - [test] Use new Redbox matchers in pages/ error-recovery test: #76348 - [test] Use new Redbox matchers in pages/ ReactRefreshLogBox-builtins: #76392 - [test] Use new Redbox matchers in pages/ ReactRefreshLogBox: #76391 - [test] Use new Redbox matchers in app/ ReactRefreshLogBox-builtins: #76394 - docs: update `building.md` to contain descriptive build process: #76393 - fix(turbopack): Fix pure span check in advanced tree shaking: #76406 - Turbopack: fix graph chunk groups: #76383 - `toDisplayRedbox()` matcher: trim line endings: #76404 - Turbopack: rename reverse topological to postorder topological, fix async referenced modules: #76429 - Turbopack: handle removed assets similar to non-existing assets: #76420 - Turbopack: fix duplicate modules due to import context: #76432 - typechecking inputs/outputs in action transform tests: #75935 - [test] Use new Redbox matchers in app/ ReactRefreshLogBox: #76431 - [test] fix client navigation error count in react 18: #76442 - docs: add note to language and filename section: #74239 - docs: fix duplicate "scroll" parameter in Link component documentation: #74820 - refactor(CI): Convert daily turbopack (areweturboyet) integration tests into reusable workflows: #76251 - fix: workaround for TS bug in Object.defineProperty: #75944 - [docs]: add --api option information: #76493 - refactor(CI): Extend areweturboyet integration test jobs for all bundlers: #76361 - [repo] misc: rename `.cursorignore` to `.cursorindexingignore`: #76494 - [ci]: PPR tests should run on development/acceptance-app: #76505 - chore(CI): Only update areweturboyet datasets for other bundlers from canary branch results: #76449 - docs: fix typo in route-segment-config: #74403 - Docs: Fix minor typo in `api-reference/functions/cookies.mdx`: #76376 - Correcting typo: #76440 - Update error-recovery test snapshots for alternative bundler [3/n]: #76446 - refactor(CI): Assign tests to groups round-robin instead of sequentially when we don't have timings: #76462 - Update Turbopack development test manifest: #76471 - Update Turbopack production test manifest: #76472 - Move known failed test back into `failed` set in Turbopack manifest: #76542 - Run React 18 tests for automated update PRs: #76544 - Skip globally installing turbo CLI: #76532 - docs(errors): update suppressHydrationWarning section: #76521 ### Credits Huge thanks to @ijjk, @unstubbable, @bgw, @gnoff, @eps1lon, @ztanner, @mischnic, @Marukome0743, @leerob, @gaojude, @lubieowoce, @acdlite, @kdy1, @JamBalaya56562, @creationix, @noreiller, @samcx, @delbaoliveira, @styfle, @abdonrd, @ollyw, @wyattjoh, @devjiwonchoi, @aymericzip, @davidhu2000, @attilarepka, @devpla, @dydals3440, @huozhi, @wbinnssmith, @suu3, @PapatMayuri, @Sahil4883, @abyii, @molebox, @sokra, @maciej-ka, @abvthecity, @damiensedgwick, @alitas, @RiskyMH, @ytreister, @sommeeeer, @n1ckoates, @yongholeeme, @spidersouris, @gurkerl83, @cassiossantos, @Netail, @tknickman, @eur00t, @cseas, @nnnnoel, @timneutkens, @Manoj-M-S, @lfades, @sebmarkbage, @matmannion, @mikeboensel, @nphmuller, @apostolos, @k15a, @pavelee, @locothedev, @vexcat, @Zach-Jaensch, @decepulis, @gadcam, @lukahartwig, @jsanford8, @RobinMalfait, @raunofreiberg, @mohsen1, @skushagra, @feedthejim, @amannn, @HQidea, @jrandolf, @smit-err, @littledivy, @k35o, @martinsione, @CvX, @msereniti, @Timer, @Iftee97, @chibicode, @RobPruzan, @padmaia, @PlagueFPS, @bjunix, @maximevtush, @michaelven, @sedlukha, @johannpinson, @AxelUser, @Nayeem-XTREME, @IcaroG, @blurrah, @lachlanjc, @ashi009, @conico974, @raphaelcosta, @dulmandakh, @khuezy, @Knoa0405, @wangsijie, @stefanprobst, @wentsul, @loopy-lim, @bratvanov, @hedgeday, @cassian-goode, @artemszelenov, and @saltcod for helping!
← Older Version First Tracked Release