fix(deps): update nextjs monorepo to v15.4.2 #460

Open
kjuulh wants to merge 1 commits from renovate/nextjs-monorepo into main
Owner

This PR contains the following updates:

Package Type Update Change
eslint-config-next (source) devDependencies minor 15.2.1 -> 15.4.2
next (source) dependencies minor 15.2.1 -> 15.4.2

⚠️ Warning

Some dependencies could not be looked up. Check the Dependency Dashboard for more information.


Release Notes

vercel/next.js (eslint-config-next)

v15.4.2

Compare Source

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

Core Changes
  • pages router metadata bugs with React 19 (#​81733)
  • [metadata] replace for initial body icon case (#​81688)
  • Ensure custom NextServer config is honored (#​81681)
Credits

Huge thanks to @​huozhi, @​ijjk, and @​ztanner for helping!

v15.4.1

Compare Source

[!TIP]
Check out our Next v15.4 Blog Post to learn more about this release.

Core Changes
  • [next-server] fix params duplicate in query after rewrite: #​77939
  • [next-server] preserve rsc query for rsc redirects: #​77963
  • Turbopack: fix a bug where marking a task a completed causes a panic when reading the output: #​77922
  • Turbopack warning spelling fix: #​77999
  • Allow URL schemes that include +, - or .: #​77932
  • [dev-overlay] Remove unused hydration error related code: #​77929
  • [dev-overlay] Unify error deduplication logic: #​78017
  • fix: use the match result after matching using the matched path header: #​77994
  • Upgrade React from 3fbfb9ba-20250409 to c44e4a25-20250409: #​78031
  • Move unhandled rejection handling to shared path: #​77997
  • fix: ensure app router not found works when deployed with pages i18n config: #​77905
  • Uninstall existing uncaughtException listeners to prevent the process from crashing: #​78042
  • Experimental bfcache: Restore state w/ : #​77992
  • Add graceful error fallback for bots requests: #​77916
  • Upgrade React from c44e4a25-20250409 to 1d6c8168-20250411: #​78067
  • [next-server] remove unnecessary query shallow copy: #​78003
  • [dev-overlay] disable copy button when clipboard is not available: #​78101
  • [dev-overlay] Stop stashing React error details on error instances: #​77975
  • [dynamicIO] Model invalid dynamic on empty shells: #​77270
  • fix: bump image-size@1.2.1: #​78149
  • Handle graceful fallback for custom error boundaries: #​78121
  • [dev-overlay] Stop squashing hydration related errors in App Router: #​78140
  • [test] Enable strictNullChecks in test utils: #​78142
  • Document Turbopack trace viewer: #​78184
  • [dev-overlay] Fix error dialog resizing logic: #​78144
  • Include types in published eslint-plugin-next: #​78109
  • [dev-overlay] Stop appending wrong Owner Stacks to SSR-only shell errors: #​77302
  • [dev-overlay] Add dedicated label for recoverable errors: #​78186
  • [chore] remove unused __NEXT_PRIVATE_RUNTIME_TYPE: #​78230
  • Preserve slashes when custom URL schemes are used in redirects: #​78176
  • ignore-list published sources if they have a sourcemap: #​78242
  • Upgrade React from 1d6c8168-20250411 to 39cad7af-20250411: #​78152
  • Turbopack: add test case for persistent caching: #​77030
  • Upgrade React from 39cad7af-20250411 to b04254fd-20250415: #​78253
  • fix: alternate bundler support for dropping client pages in AMP: #​77601
  • [errors] refactor default global-error into a separate file: #​78182
  • [metadata] render streaming metadata on the top level: #​77620
  • [metadata] skip head cache in default slot: #​78206
  • chore: Backport SWC-based RC optimization (#​78260)
  • fix: bump image-size@1.2.1 (#​78164)
  • @next/mdx: Use stable turbopack config options: #​78261
  • Upgrade React from b04254fd-20250415 to 4a36d3ea-20250416: #​78297
  • Add graceful error boundary for bots requests: #​78298
  • make sure eslint-plugin-next is built when running 'pnpm dev': #​78305
  • Migrate pages API routes to handler interface: #​78166
  • Update middleware public/static matching: #​78325
  • Fix dynamic route param encoding: #​78326
  • [Turbopack] refactor persistent caching from log based to cow approach: #​76234
  • Add onInvalidate option to router.prefetch: #​77880
  • Reserve bandwidth for most recently hovered link : #​78362
  • fix: handle incremental PPR with client segment cache: #​78387
  • fix: amphtml-validator WASM errors (for real): #​78379
  • Turbopack: Remove next start --turbopack: #​78384
  • Upgrade React from 4a36d3ea-20250416 to bc6184dd-20250417: #​78322
  • [chore] remove dead code missing required error: #​78403
  • [ts-next-plugin] remove typescript vfs and related metadata plugin: #​78237
  • [ts-next-plugin] auto import metadata type: #​78258
  • [ts-next-plugin] warn to add correct type for metadata exports: #​78254
  • [ts-next-plugin] fix: validate metadata node before checking type: #​78414
  • [errors] fix edge server initial error is not sent via hmr: #​78415
  • misc: use correct capitals for React terms: #​78445
  • Skip empty prefetch request for dynamic routes: #​78436
  • Turbopack: don’t warn about webpack being configured when experimental.turbo is set: #​77998
  • Upgrade React from bc6184dd-20250417 to 914319ae-20250423: #​78468
  • Update turbopack to syn2: #​78385
  • [next-server] ensure prepare is done before preloading entry: #​78454
  • Upgrade React from 914319ae-20250423 to 197d6a04-20250424: #​78516
  • [dev-overlay] Move error.name to label: #​78198
  • [ts-next-plugin] update log for utils: #​78538
  • [ppr] Route Cardinality Updates: #​78476
  • Turbopack: support ignore comments for NFT fs access tracing: #​78460
  • Externalize manifest loading in pages-api: #​78358
  • Update font data: #​78525
  • refactor: skip the prospective render when there's a more specific route to be rendered: #​78555
  • fix: bodySizeLimit error responses + limit for non-multipart actions: #​77746
  • [dynamicIO] Do not skip dynamic validation when metadata is dynamic: #​78574
  • [dynamicIO] log dynamic validation errors consistently in dev: #​78575
  • [ts-next-plugin] clean up unused proxy: #​78539
  • [dynamicIO] Disallow only dynamic metadata: #​78576
  • fix: make webpack handle "use cache" in node_modules : #​78606
  • Use React's prerender function for "use cache" with Dynamic IO: #​78382
  • Use node: prefixed in ESM emit of standalone server.js: #​78624
  • feat: add ravendb library to server-external-packages.json: #​78319
  • docs: fix typo in ppr.ts: #​78590
  • Pre-compile busboy dependency: #​78634
  • Pages API handler interface follow-ups: #​78638
  • Repeat fix in #​78387 for routes without params: #​78568
  • [dev-tools] Fix width transition logic: #​78635
  • [ts-next-plugin] fix: warn only if no type: #​78628
  • [ts-next-plugin] fix: warn only if no type for separate export: #​78629
  • chore: Drop @swc/counter: #​78674
  • Turbopack: use small thread local collector that flushes to global collector: #​78343
  • Upgrade React from 197d6a04-20250424 to 5dc00d6b-20250428: #​78640
  • Fix bad decoding for x-matched-path header: #​78677
  • Fix pages API rewrite case: #​78644
  • chore: update rspack to 1.3.8: #​78485
  • Always apply render preparations after running an action: #​77898
  • Exclude config package from bundling: #​78671
  • Upgrade builtin babel packages: #​78673
  • Upgrade loader-utils v2 to latest patch: #​78707
  • [Link] Add prefetch="auto" option: #​78689
  • [build-sourcemaps] Ensure errors during prerender can be sourcemapped: #​78709
  • Upgrade React from 5dc00d6b-20250428 to 408d055a-20250430: #​78715
  • build: Fix minifier options for webpack builds: #​78717
  • refactor(next-swc): Do not amend minifier options from Rust code: #​78719
  • Change stylistic ESLint TypeScript defaults: #​78679
  • fix: replace original request body after middleware execution: #​77662
  • remove draft.isEnabled setter from exotic draftMode wrappers: #​77972
  • Turbopack: limit compaction merging by size instead of count: #​78669
  • [build-sourcemaps] Include codeframes in prod when sourcemaps are enabled: #​78710
  • feat: build lifecycle hooks - afterProductionCompile: #​77345
  • fix: make sure that the patched fetch cache set promise is properly awaited: #​75971
  • [dev-overlay] Make badge draggable: #​78716
  • Turbopack: fix ESM project in standalone mode: #​78774
  • Revert "[Link] Add prefetch="auto" option": #​78820
  • Downgrade React from 408d055a-20250430 to 197d6a04-20250424: #​78834
  • Reland "[Link] Add prefetch="auto" option": #​78821
  • build: Update @swc/core npm package to v1.11.24: #​77668
  • Turbopack: Implement regex support for matching webpack loaders: #​78733
  • Turbopack: Add support for extension regex in @next/mdx: #​78734
  • backport: fix(turbopack): Store persistence of wrapped task on RawVc::LocalOutput (#​78488) (#​78883)
  • @​next/mdx: Use stable turbopack config options (#​78880)
  • Fix react-compiler: Fix detection of interest (#​78879)
  • Fix turbopack: Backport sourcemap bugfix (#​78881)
  • [next-server] preserve rsc query for rsc redirects (#​78876)
  • Update middleware public/static matching (#​78875)
  • [dev-overlay] Polish mobile view: #​78863
  • [dev-overlay] Consider scrollbar width for drag positioning: #​78865
  • Add handling for setting deployment id via cookie: #​78841
  • Run export child process with runtime's default max-old-space-size: #​78712
  • [dynamicIO] cache tracking for import(): #​74152
  • [dev-overlay] solidate the line number parsing: #​78868
  • Update send to v0.18.0: #​78816
  • Scope runInCleanSnapshot to Work Store: #​78930
  • Removes onNavigate from transition scope: #​78605
  • Add nonce handling from CSP in pages router: #​78936
  • Ensure manual nonce on Script works as expected: #​78939
  • Treat _debugInfo as a wellknown property for sync request data access purposes: #​78942
  • chore(CI): Run rspack tests in build_and_test.yml: #​78757
  • bugfix: Fix a bug that caused conflicting assets when adding a child compiler: #​78011
  • [Fix] Inverse prefetch segment for Pages routes: #​78932
  • Fix tracing of server actions imported by client components: #​78968
  • Revert "fix: alternate bundler support for dropping client page": #​78974
  • Fix --no-mangling for "use cache" functions: #​78993
  • chore: update rspack to 1.3.9: #​78984
  • [not-found] Add global-not-found convention: #​78783
  • [not-found] support metadata exports of global-not-found: #​78961
  • Prevent "use cache" timeout errors from being caught in userland code: #​78998
  • patch react via recast instead of string replacements: #​78916
  • [link] Avoid inlining of LinkProps in emitted declarations: #​78773
  • [next-config-ts] fix: read tsconfig file using TypeScript API: #​79055
  • Replace node:url usage in server-utils: #​79094
  • [build-sourcemaps] Remove unused static workers: #​79107
  • fix: cli test failed when using rspack: #​79081
  • [build-sourcemaps] Allow inspecting prerender worker: #​79098
  • Add initial modifyConfig hook: #​79162
  • Re-land updated bundler for pre-bundling: #​79164
  • [dynamicIO] model pathname access in metadata as async : #​79136
  • Update font data: #​79179
  • bugfix (pages): assetPrefix should not cause hard nav in development: #​79176
  • Reland "Ensure mangling is disabled for dev runtime builds (#​75297)": #​79201
  • docs: add graceful error boundary example: #​77781
  • turbo-tasks: Encode location information into panics: #​78945
  • feat(turbopack): Add basic compilation event support: #​78785
  • chore(dev-overlay): Minor cleanups to useDelayedRender hook: #​79119
  • Update font data: #​79227
  • Rename define-env-plugin.ts to define-env.ts: #​79224
  • Always pass implicit/soft tags into the CacheHandler.get method: #​79213
  • fix(dev-overlay): Ignore right clicks on the indicator draggable: #​79120
  • Fix dangling promise in unstable-cache: #​79248
  • Revert "Partial Fallback Prerendering Route Shells (#​69282)": #​79258
  • [devtool] initial support for segment explorer: #​78858
  • Client router should discard stale prefetch entries for static pages: #​79309
  • [dynamicIO] fix: do not apply import tracking transform in edge: #​79284
  • Turbopack build: Fix type: module with output: standalone: #​79292
  • [TypeScript Plugin] Moved the diagnostics' positions to the prop's type instead of the value for client-boundary warnings: #​79193
  • Use onPostpone to determine if segment prefetch is partial: #​79299
  • Enable ppr when dynamicIO is enabled: #​79302
  • fix: replaceIdentifiersInAst takes an expression, not a string: #​79196
  • Remove DIO w/o PPR branch from app-render.tsx: #​79303
  • Remove prospective fallback prerenders: #​79304
  • Fixed rewrite param parsing for interception routes in Vercel deployments: #​79204
  • [build-sourcemaps] Sourcemap errors during prerender if experimental.enablePrerenderSourceMaps is enabled: #​79109
  • [release] use @changesets/changelog-github for changelog format: #​79040
  • next.config.ts: Implement compiler.defineServer for server-only constants: #​79225
  • Always show warning if fetch cache limit hit: #​79384
  • feat(turbopack) Added sending events to log how long writing entrypoints to disk takes.: #​79256
  • [release] use @changesets/changelog-github for changelog format: #​79040
  • next.config.ts: Implement compiler.defineServer for server-only constants: #​79225
  • Always show warning if fetch cache limit hit: #​79384
  • feat(turbopack) Added sending events to log how long writing entrypoints to disk takes.: #​79256
  • Only share incremental cache for edge in next start (#​79389)
  • [TypeScript Plugin] Match method signature (someFunc(): void) type for client boundary warnings: #​79144
  • Only share incremental cache for edge in next start: #​79386
  • fix: rspack framework and lib cacheGroups: #​79172
  • Make sure bundle analyzer does not trigger warning with turbopack: #​79399
  • [dynamicIO] Avoid timeout errors with dynamic params in "use cache": #​78882
  • Implement initial handler interface for pages routes: #​79260
  • [Segment Cache] Fix: Ensure server references can be prerendered: #​79448
  • [dynamicIO] Avoid timeout errors with dynamic params in "use cache": #​78882
  • Implement initial handler interface for pages routes: #​79260
  • [Segment Cache] Fix: Ensure server references can be prerendered: #​79448
  • [Segment Cache] Fix: Skew during dynamic prefetch: #​79416
  • [dynamicIO] reimplement dynamicIO validation on prerender: #​79414
  • fix: remove redundant performance.measure usage: #​79475
  • [devtools] Add a very minimal API for restarting the dev server: #​79265
  • Model prerender store as separate server and client scopes: #​79429
  • fix: Merge link header from middleware with the ones from React (#​73431)
  • fix(edge): run after() if request is cancelled mid-streaming (#​76013)
  • gate segmentCache branch in base-server (#​79505)
  • Model prerender store as separate server and client scopes: #​79429
  • Use metadata for cache entry status code: #​79512
  • fix(dev-overlay): Better handle edge-case file paths in launchEditor: #​79526
  • [build-sourcemaps] Increase stacktrace limit during prerender: #​79498
  • fix: Rspack not skip .d.ts file: #​79285
  • Revert "[next-server] skip setting vary header for basic routes": #​79426
  • [ppr] Narrow condition for fallback shell generation at runtime: #​79565
  • Turbopack: derive de/serialize for loader config: #​79581
  • Update font data: #​79642
  • Avoid bundling dev overlay in page template: #​79641
  • Enable preview builds for forks: #​79648
  • misc: remove leftover clientInstrumentationHook type: #​79701
  • cleanup(turbopack): Embed Global vs Specific channel type in the Rust type system: #​79291
  • [dev-overlay] Show error overlay on any thrown value in /app: #​79658
  • [dev-overlay] Move error handlers into dispatcher in /app: #​79660
  • Verify cache-busting param during segment prefetch: #​79563
  • update(turbopack): Update the messaging UX for timing writing files to disk: #​79469
  • [dev-overlay] Move Redbox open/close into dispatcher: #​79698
  • chore: update rspack to 1.3.12: #​79428
  • Enable repeated tsc runs in packages/next without having to build first: #​79782
  • Run tsc in watch mode during pnpm dev: #​79785
  • Reinstate vary (#​79939)
  • fix(next-swc): Fix interestingness detection for React Compiler (#​79558)
  • fix(next-swc): Fix react compiler usefulness detector (#​79480)
  • fix(dev-overlay): Better handle edge-case file paths in launchEditor (#​79526)
  • Client router should discard stale prefetch entries for static pages (#​79362)
  • fix: preload fonts in template.js: #​79417
  • feat: using eval source map plugin for Rspack: #​79199
  • feat: using builtin CssChunkingPlugin for rspack: #​79762
  • fix(napi): Update generated types, add alias for RcStr: #​79915
  • [dev-overlay] Fix highlighted line cut off on scroll: #​79930
  • fix(next/font): allow custom font-family in declarations: #​76274
  • Remove subissues from Issue: #​79988
  • [devtools] Add a query parameter to restart endpoint to invalidate the persistent cache: #​79425
  • Implement handler interface for app-page: #​79568
  • Migrate app route to handler interface: #​80008
  • Turbopack Build: Fix underscore path tests: #​79778
  • Fix watchmode for taskr tasks: #​80020
  • Update font data: #​80036
  • Fix defunct ESLint overrides: #​80053
  • [devtools] Add an endpoint to poll for server status: #​80005
  • [dynamicIO] Only report client sync IO errors if they are above a Suspense boundary: #​80026
  • [dev-overlay] Parse stacks in reducer not during dispatch: #​79788
  • Remove obsolete @ts-expect-error: #​80065
  • [dev-tools] Navigation header replaces close button: #​80097
  • [dev-overlay] Inject get*Stack implementation: #​79789
  • [dev-overlay] Fix dark‐mode styling for <option> in Preferences dropdowns: #​80025
  • Use relative sources in require() instead of next/dist/ if possible: #​80054
  • [dev-overlay] Inject isRecoverableError implementation: #​80003
  • [devtool] fix explorer flag consuming and style: #​80110
  • [dev-tools] add restart dev server button to error overlay: #​80060
  • [dev-tools] add restart dev server button on dev-tools indicator preferences: #​80072
  • [chore] remove legacy useEarlyImport flag: #​80112
  • [testmode] Fix types of wrapRequestHandler: #​80055
  • Extend bot list with googleweblight, Storebot-Google, Google-Inspecti…: #​77728
  • [dev-overlay] Inject getSquashedHydrationErrorDetails implementation: #​80046
  • [dev-tools] better description for restart server button: #​80118
  • [dev-tools] style: preferences section title: #​80120
  • [metadata] refactor to remove async metadata: #​78495
  • [dynamicIO] Document client component remediations for sync IO: #​79787
  • [dynamicIO] prioritize preprocessing RSC rows when prerendering: #​80125
  • [dev-overlay] Remove unused onError in /pages: #​79982
  • Remove unused vendored server-inserted-metadata module: #​80143
  • Webpack Build: Use name-contenthash instead of name-chunkhash for dynamic imports: #​80153
  • [dev-overlay] Remove unnecessary code from /pages dev error boundary: #​79983
  • Turbopack Build: Implement helpful error for missing sass package: #​80155
  • [global-not-found] fix shared css imports not being picked: #​80151
  • Add experimental flag for RSC request validation: #​80157
  • [dev-overlay] Remove indirection in app dev error boundary : #​79984
  • Docs: preload entries impact on memory consumption: #​80098
  • [dev-overlay] Move building indicator into Dev Overlay state: #​79985
  • [metadata] only render one metadata outlet: #​80146
  • Add a regions property to the Functions Config Manifest file: #​80104
  • [metadata] fix nonce prop for hoist script: #​80174
  • docs: fix grammar in Code of Conduct section ('them' → 'it') : #​80181
  • [error-overlay] remove footer message: #​80169
  • Turbopack: Log persistent cache store time: #​80149
  • fix(turbopack): Next.js package not found panics in Turbopack: #​79572
  • [turbopack] Compute Import Traces for Issues: #​79351
  • Typecheck require() calls: #​80056
  • Revert "[turbopack] Compute Import Traces for Issues": #​80215
  • remove unique metadata prop from initial RSC payload #​79388
  • Replay redirect if RSC parameter is missing: #​80180
  • [devtool] style the segment explorer as nested view: #​80212
  • Prerender with streaming metadata during revalidation: #​80245
  • fix: invalid middleware configs should fail the build: #​80221
  • [dev-overlay] Render /app Dev Overlay with a separate React instance: #​79699
  • [devtool] display segment explorer as tree view: #​80261
  • [dev-overlay] Use same bundle for Pages and App Router: #​80019
  • Revert "Revert "[turbopack] Compute Import Traces for Issues"": #​80220
  • [dev-overlay] Publish as production bundle: #​80295
  • [metadata] only serve block streaming metadata for html bots: #​80272
  • Update font data: #​80301
  • Update font data: #​80340
  • [dev-overlay] fix duplicate re-render of errors: #​80322
  • [build-sourcemaps] Only compute codeframe once: #​80326
  • [test] Fix Dev Overlay Storybook: #​80288
  • [test] Fix crashes in Dev Overlay Stories: #​80292
  • [metadata] use https protocol for schema urls: #​80356
  • [dev-overlay] Remove positive tab-index: #​80289
  • [devtools] Implement default /.well-known/appspecific/com.chrome.devtools.json endpoint in dev: #​80260
  • [dev-overlay] Fix outstanding a11y issues reported by Axe: #​80290
  • provide declarations for server-only/client-only: #​80361
  • [test] Stop opening browser by default in local Dev Overlay Storybook: #​80291
  • [dev-overlay] Move hot reloader client code out of react-dev-overlay: #​80278
  • [dev-overlay] Remove unused code: #​80279
  • [dev-overlay] Move app/pages related features closers together: #​80280
  • Discard Infinity expiration for implicit tags: #​80387
  • fix(next-swc-wasm): Only enable turbo-rcstr's napi feature when building the next-swc-napi crate/package: #​80390
  • Add response handling inside handlers: #​80189
  • feat(turbopack): Add simple tree shaker: #​78286
  • Fix a couple typos: #​80080
  • [dev-overlay] Move code into new top-level folder in src/next-devtools: #​80281
  • Ensure we normalize .rsc/.prefetch.rsc: #​80409
  • Turbopack Build: Fix /index/index handling: #​80413
  • [segment-explorer] optimize tree view: #​80392
  • Upgrade @​playwright/test and cleanup internal APIs: #​80334
  • Backport config.allowedDevOrigins (#​80410) (Learn More)
  • [segment-explorer] Signal updates to React: #​80316
  • [segment explorer] fix soft navigation case: #​80443
  • Update the warning text for when multiple lockfiles are found: #​80214
  • feat: in Rspack using native fn implemented by us using SWC to replace load module: #​80342
  • chore: fix link to good first issue: #​80478
  • Disable fetch cache size limit for implicit caching during build: #​80480
  • [dynamicIO] Split up static generation into two phases: #​79629
  • fix(turbopack): Fix config caching for turbopack + React Compiler: #​80498
  • [dynamicIO] Use filled Resume Data Cache for final-phase prerenders: #​79743
  • fix: Rspack dev gets stuck after removing a page: #​80555
  • Ensure custom relative distDir resolves properly: #​80569
  • fix: mark file system incremental cache as external so it's memory is shared: #​80586
  • [fix] clone the config module to avoid mutation: #​80573
  • Improve Incremental Cache Locking Algorithm: #​80497
  • [devtools] add feature flag for new panel ui: #​80251
  • [devtools] fork devtools-indicator: #​80456
  • [devtools] fork next-logo: #​80457
  • guarantee cache busting param correctness: #​80381
  • Normalize filepaths when parsing patterns from js values: #​80511
  • [metadata] render streaming metadata on the top level (#​80566)
  • [fix] clone the config module to avoid mutation (#​80573)
  • feat: rspack use swc to warn for edge runtime: #​80485
  • Avoid timeout error when transformed params are passed to "use cache": #​80463
  • Respond with 404 for unknown server actions: #​80613
  • [segment explorer] single row layout segment: #​80576
  • Fix: Rules of Hooks violation in AppRouter: #​80623
  • fix: Add Chrome-ligthouse to htmlLimitedBots: #​80656
  • Turn on clientSegmentCache during PPR CI runs: #​80581
  • [devtools] port overlay backdrop out of overlay: #​80460
  • Revert "(E2E) Log which config file is used for next start": #​80666
  • fix(turbopack): Fix static immutability analysis: #​80646
  • [devtools] add panel ui placeholder under feature flag: #​80354
  • [devtools] add dialog behavior to panel ui: #​80355
  • Add --debug-prerender option for next build: #​80667
  • [devtools] port devtools-indicator position to dispatcher: #​80536
  • fix: mark the shared cache controls as external so it's memory is shared: #​80588
  • [devtools] apply draggable to panel ui: #​80517
  • Apply normalizers for init URL used for handlers: #​80694
  • overwrite redirect SSG meta.status to 200 for RSC requests: #​80391
  • [devtools] panel ui header: #​80509
  • [development-server] Display pid of already-running process that is using port: #​80069
  • [devtools] panel ui footer: #​80515
  • Fix Next DevTools Storybook in recent Node.js versions: #​80713
  • [devtools] set up panel ui tab infra: #​80535
  • [devtools] port devtools scale to dispatcher: #​80537
  • [devtools] panel ui settings tab: #​80538
  • Upgrade React from 197d6a04-20250424 to 79d9aed7-20250620: #​79477
  • fix: rspack code analyzer should only handle javascript module: #​80711
  • [devtools] port call stack: #​80550
  • [devtools] port runtime error handling to hook: #​80567
  • Upgrade React from 79d9aed7-20250620 to 06e89951-20250620: #​80730
  • chore(swc-wasm): Fix and clean up various issues with swc-wasm tests: #​80471
  • Add onBuildComplete adapter hook: #​80446
  • [ppr] RDC for RSCs: #​79638
  • docs: add csp and content disposition type: #​80735
  • omit searchParam data from FlightRouterState before transport: #​80734
  • feat(turbopack): Print a warning about performance when starting with an invalidated cache: #​80631
  • perf(next-swc): Remove needless JSON conversion: #​80671
  • [devtools] Fix Turbopack indicator: #​80753
  • Downgrade React from 79d9aed7-20250620 to 197d6a04-20250424: #​80762
  • devtools: couple restart dev server UI with persistent cache flag: #​80751
  • [devtools] panel ui responsiveness: #​80732
  • [turbopack] Update Napi CLI to the latest 2x release: #​80697
  • Revert "[ppr] RDC for RSCs": #​80794
  • [segment explorer] handle edge and pages router: #​80668
  • [segment explorer] handle builtin not-found: #​80607
  • [devtools] fix: adjust width for responsiveness: #​80777
  • [build] remove obsolete module field alias for barrel optimized pkg: #​80769
  • [segment explorer] handle custom global-error segment: #​80685
  • [devtools] storybook: port utils to be reusable: #​80726
  • [segment explorer] display navigation error boundaries: #​80691
  • [devtools] set up panel ui issues tab infra: #​80727
  • [devtools] add correct scrollbar to dialog body: #​80776
  • [devtools] panel ui issues tab sidebar: #​80728
  • [devtools] panel ui issues tab content: #​80729
  • [devtools] add fullscreen mode: #​80788
  • [devtools] proper draggable for header and footer only: #​80792
  • [segment explorer] handle display loading: #​80698
  • [segment explorer] handle custom error boundary: #​80714
  • [segment explorer] display default page in segment explorer: #​80716
  • Add htmlrewriter to default server externals: #​80819
  • fix to use https urls in meta data images when using experimental-https: #​80276
  • Add a fallback for the mdx-components file: #​59693
  • Revert "Respond with 404 for unknown server actions (#​80613)": #​80662
  • [devtools] segment explorer tab: #​80805
  • [devtools] fix: error overlay closes when footer is clicked: #​80513
  • fix: respond with 404 for unrecognized action ids: #​77012
  • [turbopack] Enable debug assertions in CI: #​80739
  • Turbopack Build: Implement browserslist for CSS / JS: #​80603
  • Fix fallback: true cache-control: #​80865
  • Turbopack: scope hoisting: #​79459
  • [devtools] refactor segment explorer styles: #​80848
  • Turbopack: CSS Global Import Validation for Pages: #​80585
  • [devtools] overlay backdrop visibility hidden when not fullscreen: #​80844
  • Allow intercepting dynamic routes to be partially prerendered: #​80851
  • Turbopack: fix chunking context caching: #​80862
  • [devtools] replace the old error overlay with the issues tab view: #​80814
  • [devtools] fullscreen mode should not be draggable: #​80845
  • Turbopack: add task execution reason to tracing: #​80861
  • [devtools] Allow opting out of environment feature flags: #​80897
  • [devtools] fix: build error should share the issue content layout: #​80850
  • [devtools] increase max-width/height limit: #​80846
  • [devtools] memorize tab in session storage: #​80900
  • Check cache busting search params on all RSC requests: #​80669
  • Perf: Use canonicalUrl from prefetch for dynamic RSC requests: #​80817
  • Fix PPR no fallback case: #​80908
  • Add comment explaining staticPathKey vs ssgCacheKey: #​80911
  • add turbo tasks fuzzing: #​79372
  • [devtools] fix style of issue count label: #​80854
  • [devtools] Remove unused footer buttons: #​80864
  • [devtools] Hide issue count on empty state: #​80898
  • [turbopack] Add user friendly names to trace labels: #​80388
  • Upgrade React from 197d6a04-20250424 to fa3feba6-20250623: #​80804
  • [segment explorer] open in editor: #​80856
  • Roll out validateRSCRequestHeaders: #​80954
  • [refactor] group the built-in conventions: #​80957
  • fix: webpack config context when using rspack: #​80921
  • Turbopack: pass current Node.js version from JS side instead of invoking node: #​80949
  • Turbopack/Webpack Build: Remove dead code: #​80938
  • Upgrade React from fa3feba6-20250623 to cee7939b-20250625: #​80904
  • [segment explorer] hover state for open-in-editor color: #​80950
  • Upgrade React from cee7939b-20250625 to 4db4b21c-20250626: #​80959
  • [devtools] polish icon and label color: #​80976
  • Use proper reexports in entry-base.ts: #​80988
  • [segment-explorer] display the builtin conventions: #​80961
  • [segment explorer] builtin slots style: #​80972
  • [segment explorer] trigger boundary initial support: #​80948
  • [devtools]: width/height adjustments: #​81072
  • [test] fix browser chunk test failure: #​81074
  • [segment explorer] show current route: #​81003
  • [devtools]: move RestartServerButton to panel footer: #​81082
  • Update font data: #​81093
  • Upgrade React from 4db4b21c-20250626 to 65c4decb-20250630: #​81077
  • [node-webstreams] Remove unused App externals from next-server bundler config: #​81039
  • Turbopack: apply browserslist config in dev: #​81075
  • [build] remove the default imports for error boundary: #​81000
  • Turbopack: also inline env vars with undefined value: #​80990
  • [devtools]: default to issues tab when error overlay is programmatically toggled: #​81091
  • [devtool] merge segment explorer flag into panel ui flag: #​81085
  • Revert "[devtool] merge segment explorer flag into panel ui flag (#​81085)": #​81131
  • [segment explorer] reset error and not-found boundary: #​81115
  • [devtool] enable segment explorer when new panel present by default: #​81152
  • [dynamicIO] Don't abort on sync request data access: #​81162
  • [dynamicIO] recognize prerender interrupted errors as well known: #​81160
  • Fix resolvedPathname for middleware rewrite: #​81144
  • [node-webstreams] Exhaustive React aliases in App Router: #​81040
  • [node-webstreams] Use React builds for Node.js: #​81048
  • Upgrade React from 65c4decb-20250630 to 7216c0f0-20250630: #​81133
  • Turbopack: fix and finish immutable tasks: #​80996
  • [segment explorer] custom tooltip: #​80974
  • [segment explorer] refactor boundary trigger with ui primitives: #​81147
  • Migrate usage of web-server in edge-ssr: #​80915
  • Upgrade React from 7216c0f0-20250630 to 73aa744b-20250702: #​81192
  • [segment explorer] fix route path in top navbar: #​81195
  • Reuse resolvedPathname from prepare: #​81194
  • Turbopack: exclude resolve-rewrites if possible: #​80939
  • [devtool] styling fixes: #​81228
  • [devtools] Omit line/col numbers for anonymous sources: #​81223
  • Fix NEXT_CPU_PROF during development: #​81248
  • Turbopack: list assert/strict as external (#​80884)
  • omit searchParam data from FlightRouterState before transport (#​80734)
  • bugfix: propagate staleTime to seeded prefetch entry (#​81263)
  • [Segment Cache] Support third-party redirects in output: "export" mode: #​81247
  • [devtool] css imports and share css variables: #​81236
  • Update matching query and route param handling: #​81209
  • bugfix: propagate staleTime to seeded prefetch entry: #​81263
  • Ensure resolvedPathname normalizes trailing slash: #​81265
  • [sourcemaps] ignore-list Webpack runtime: #​81229
  • Allow pnpm build to be run when offline: #​81273
  • [sourcemaps] Ignore-list sources whose sourcemaps ignore-list everything: #​81231
  • [dynamicIO] Use owner stacks for dynamic validation errors: #​81277
  • [dynamicIO] Don't abort prospective render on sync access during SSR: #​81258
  • [refactor] Move sourcemapping logic to dedicated file: #​81310
  • [sourcemaps] Improve ignore-listing performance: #​81311
  • [devtool] handle click outscope child element: #​81296
  • [build] remove devtool from client chunks in prod: #​81376
  • chore: align css loader in storybook: #​81403
  • feat: make typed routes output deterministic: #​80432
  • [dev-tools] Custom keyboard shortcut to toggle visibility: #​81064
  • chore: update rspack to 1.4.5: #​81216
  • [use-cache] track cache read earlier when encrypting bound args: #​81427
  • Upgrade React from 5d87cd22-20250704 to a7a11657-20250708: #​81428
  • [segment explorer] capture defined boundaries: #​81232
  • [segment explorer] trigger the actual same level boundary: #​81268
  • feat: forward browser errors/logs to terminal: #​80909
  • fix: referencing unavailable __dirname: #​81436
  • Upgrade vercel og to 0.7.2: #​81447
  • [build-sourcemaps] Default experimental.enablePrerenderSourceMaps to experimental.dynamicIO: #​81449
  • Upgrade React from a7a11657-20250708 to 60b5271a-20250709: #​81463
  • Support Uint8Array bodies when generating cache keys for POST requests: #​81465
  • [devtool] dynamically import segment explorer when enabled: #​81473
  • Add @​sparticuz/chromium-min to default server externals: #​81309
  • [devtool] patch base-ui and migrate segment explorer inline styles: #​81474
  • Pass filterStackFrame everywhere: #​81516
  • Upgrade React from 60b5271a-20250709 to 96c61b7f-20250709: #​81505
  • [segment explorer] redesign file pills and boundary trigger: #​81302
  • Update eslint and restore .eslintrc.cli.json being used for CLI/CI-based linting: #​81553
  • [sourcemaps] Properly devirtualize rsc: URLs: #​81554
  • Upgrade React from 96c61b7f-20250709 to 97cdd5d3-20250710: #​81551
  • fix: update useEffect closure when menu is truly mounted: #​81531
  • rename handleSmoothScroll util: #​81546
  • add flag to opt into smooth scroll detection & add warning: #​81563
  • fix: revert focus trap dependency change: #​81571
  • Hide stackframes if sandwiched between two ignore-listed frames: #​81067
  • Dim console logs from prospective prerender in dev: #​81515
  • Augment React types internally instead of overwriting them: #​81561
  • [sourcemaps] Don't check for vendor chunks when Node.js 18 is used: #​81619
  • [Segment Cache] Fix isHeadPartial logic: #​81566
  • [segment explorer] fix route url is missing cases: #​81622
  • [segment explorer] fix boundary trigger state: #​81623
  • fix(next/image): bump sharp to 0.34.3: #​81556
Example Changes
  • [test] Use React 19.1 everywhere: #​77895
  • chore(examples): replace uuid dependency with crypto.randomUUID: #​77901
  • examples: fix readmes: #​78483
  • chore: Update the with-supabase example to use the Supabase Auth block: #​78913
  • refactor(napi): Implement napi traits for RcStr: #​79806
  • remove with-fauna example: #​80440
  • chore: fix typos in rust files: #​81113
  • Add Biome example: #​81334
Misc Changes
  • Turbopack: use correct env var for uploading test results: #​77988
  • chore(cna): use short tailwind classname of font-family: #​77271
  • Fix CSS Data URL test on Turbopack: #​77970
  • Turbopack: fix dynamic request lookup with only a single match: #​77986
  • Update Turbopack production test manifest: #​78007
  • Update Turbopack development test manifest: #​78008
  • [test] Assert on all errors in Redbox matchers: #​77907
  • Turbopack: check css requests in test: #​77285
  • 15.3 Docs: Turbopack for build: #​77730
  • [test] Stop asserting on internal stackframes when features are working as intended: #​78015
  • Turbopack: asset ident instead of chunk item ID in CSS: #​78018
  • fix(turbopack): Consider scoping of var declarations: #​77954
  • [test] Remove global styled-components install : #​77782
  • Cleanup config.experimental.reactOwnerstack: #​78021
  • Docs: Improve "use cache" and cacheLife API references: #​78024
  • Docs: Update useLinkStatus API reference: #​78022
  • Turbopack: add debug assertion to check for duplicate modules: #​78025
  • Turbopack: bundle only new Worker with new URL: #​78010
  • Turbopack: use hashbrown HashMaps instead of now-removed std raw entry api: #​78032
  • Turbopack: proper error message for swcPlugins: #​77990
  • Update Rust toolchain to nightly-2025-04-10: #​78039
  • [test] separate rsc-basic tests: #​78038
  • chore(github): remove redundant markdown body: #​76187
  • chore(CI): Mention Rspack explicitly, use arewerspackyet.com domain: #​77995
  • Update Turbopack production test manifest: #​78053
  • Turbopack: support for CSS Modules in Data URLs: #​78040
  • test: adjust default timeouts for [waitFor]elementByCss: #​78026
  • Revert Rust upgrade to nightly-2025-04-10: #​78062
  • Update Rspack development test manifest: #​78049
  • Update Rspack production test manifest: #​78050
  • chore(CI): Add lukesandberg to turbopack team: #​78074
  • [test] Activity has types and supports react-server: #​78066
  • refactor(turbo-tasks): Check for transient tasks called from persistent tasks in more places: #​77760
  • [font] prefix leading numeric google-font name with underscore: #​78127
  • build: Update swc_core to v22.3.1: #​78129
  • Update Turbopack production test manifest: #​78124
  • [test] isolate parallel metadata test: #​78134
  • Update Turbopack development test manifest: #​78125
  • Update Rspack production test manifest: #​78123
  • [test] Add dedicated tsconfig for test utils: #​78141
  • Turbopack: load chunks only once: #​75143
  • Reenable a few more Turbopack tests: #​78153
  • test: remove "@​testing-library/jest-dom" from default jest setup: #​78157
  • Turbopack: Update toolchain to 2025-04-14 (Reapply #​78062): #​78167
  • [test] Assert on all errors in app/ hydration-error suite: #​78132
  • Skip failing test via manifest instead: #​78161
  • Update Turbopack development test manifest: #​78179
  • Correct require.context relative import keys to match Webpack: #​78148
  • Getting Started Docs: Clean up docs/app and docs/pages pages: #​78151
  • Update Rspack production test manifest: #​78177
  • Update Turbopack production test manifest: #​78180
  • Update Rspack development test manifest: #​78178
  • Turbopack: fix duplicate facade module: #​78191
  • Added @​types/jest in installtion commands.: #​78090
  • Update turbopack.mdx: #​78082
  • docs: improve wording around NextRequest and query params: #​77923
  • Docs IA 2.0: Move version upgrade docs under Guides: #​78189
  • Docs IA 2.0: Move SPA docs under Guides: #​78195
  • Docs IA 2.0: Move migration docs under Guides: #​78193
  • Docs Papercuts: #​78200
  • feat(turbo-tasks): Generate a trace of transient tasks when panicking: #​77600
  • Turbopack: fix duplicate module from internal ref: #​78194
  • Fix externals doc validation: #​78208
  • [docs] Update 03-fonts.mdx: #​77965
  • Turbopack Persistent Caching: Use SmallVec to avoid allocations for small values written to DB: #​78136
  • Turbopack: wait for tracing to be written before exiting: #​78210
  • refactor(turbopack): Prepare removal of fake AST in tree-shaking: #​78172
  • Turbopack: more module ident collisions: #​78207
  • fix(turbo-tasks-fs): Update notify-rs, handle recursive symlinks in realpath implementation, add an e2e test for symlinked files: #​78220
  • Update Turbopack production test manifest: #​78224
  • Update Turbopack development test manifest: #​78225
  • Turbopack: normalize ref type for external tracing: #​78226
  • Update Rspack production test manifest: #​78222
  • Getting Started Docs: Add deploying page: #​77720
  • Docs IA 2.0: Move multi-zones docs to Guides: #​78238
  • Turbopack: Do multiple unit test runs: #​78212
  • Turbopack: fix cell not found bug: #​78246
  • Prevent typescript errors in IDE for newly generated tests: #​78247
  • Turbopack: Support ECMAScript styleregex with negative lookahead in require.context calls: #​78251
  • Docs IA 2.0: Move Production Checklist under Guides: #​78240
  • Docs: Fix nav item lettercasing for multi-zones: #​78250
  • [docs] fix function signature of og image: #​78277
  • Turbopack: dedupe additional traced references: #​78241
  • Update Turbopack development test manifest: #​78274
  • [test] Improve coverage for fetch errors in Edge runtime: #​78257
  • Update Turbopack production test manifest: #​78273
  • Turbopack: fix duplicate unsupported edge import modules: #​78236
  • Turbopack: Include Next.js version in panic handler report: #​78263
  • fix(turbopack): Fix duplicate modules when tree shaking: true: #​78203
  • test: try to fix flakiness in amphtml util: #​78304
  • remove BrowserInterface: #​78308
  • fix(turbo-tasks-fs): Handle filesystem watcher rescan events: #​78045
  • docs: improve userAgent device.type example in userAgent.mdx: #​78368
  • fix(turbo-tasks): Make vc types use repr(transparent): #​78327
  • refactor(turbopack): Remove needless code: #​78331
  • Update Turbopack production test manifest: #​78371
  • fix(turbo-persistence): Fix verify_sst_content feature, improve unit test performance: #​78388
  • Turbopack: Use content for async loader digests, not availability info: #​78386
  • refactor(turbo-tasks): Use ResolvedVc for CollectiblesSource: #​78392
  • Turbopack: add random_change test case to test persistent caching changes: #​78211
  • Update Turbopack development test manifest: #​78399
  • Update Turbopack production test manifest: #​78400
  • Docs IA 2.0: Move Static Exports to guides, create Self-hosting guide: #​78244
  • docs(turbo-tasks): Lots of minor fixes, tweaks, and updates to the docs: #​78329
  • Docs IA 2.0: Move CI build caching page under guides, and create equivalent /app guide: #​78416
  • Docs IA 2.0: Move authentication page under guides: #​78412
  • docs: fix the path of the program attribute in debugging page: #​78268
  • test: log html output for a flaky test to debug it: #​78424
  • fix bad next.browser() arguments in socket.io test: #​78309
  • docs: update React Compiler docs: #​78427
  • [ts-next-plugin] test: add metadata and generateMetadata fixtures: #​78409
  • Turbopack: fix data-url CSS Module client references: #​78428
  • Update Turbopack production test manifest: #​78441
  • Turbopack: Use single write to loader ipc socket: #​78423
  • Update Turbopack development test manifest: #​78442
  • test: flake debugging - avoid logs being eaten by jest: #​78449
  • test: ignore streaming metadata in toBeEmpty assertions: #​78456
  • build: Update mdxjs-rs to v1: #​78469
  • fix(turbopack): Fix sourcemap path on windows: #​78453
  • fix(turbo-tasks): Add a few more transient-from-persistent task assertions: #​78301
  • fix(CI): Reduce Rspack test retries from 2 to 0 to reduce timeouts: #​78390
  • test: attempt to de-flake graceful shutdown test: #​78464
  • Fix potential race condition in createRouterAct: #​78473
  • feat(turbopack): Implement side-effect optimization: #​78047
  • Docs IA 2.0: Move testing guides: #​78418
  • Update Turbopack production test manifest: #​78491
  • Turbopack: add app-dir alias for next/* subpackages: #​78447
  • Docs IA 2.0: Move pages from Config section into guides: #​78496
  • Docs IA 2.0: Move src folder page to API reference: #​78499
  • Docs: fix reference to experimental.turbo: #​78507
  • docs: added a few legacy version tags: #​78506
  • Turbopack: Add react refresh runtime stubs to workers: #​78433
  • Docs IA 2.0: Move optimizing pages to guides: #​78500
  • Docs IA 2.0: Delete config page in app docs: #​78521
  • fix(turbo-tasks): Store persistence of wrapped task on RawVc::LocalOutput: #​78488
  • docs: update redirected link: #​78527
  • Docs IA 2.0: Create public folder API reference: #​78531
  • Update Turbopack development test manifest: #​78535
  • Docs IA 2.0: Move Sass and CSS-in-JS pages to guides: #​78536
  • Turbopack: prevent hanging due to content hashing: #​78545
  • Docs IA 2.0: Move caching page to deep dive: #​78537
  • Batch ipc info messages to improve performance.: #​78522
  • docs: remove Vercel mentions and improve deployment page: #​78557
  • Clarify documentation on to_resolved. s/strongly/statically/: #​78560
  • Updating to AWS Amplify Hosting: #​78564
  • docs: add better-auth auth provider: #​74075
  • Turbopack: handle webpack loader event backpressure: #​78462
  • Turbopack: parallel search_index in trace server: #​78357
  • Update Turbopack development test manifest: #​78614
  • Update Turbopack production test manifest: #​78613
  • Turbopack: fix unused import on mac: #​78341
  • Update MDX documentation to use next-mdx-remote-client: #​78347
  • perf(turbopack): Remove ImportBinding fragments: #​78470
  • Turbopack: fix search_index merging in trace server: #​78625
  • docs: Add missing deprecation notice for legacyBehavior in Link component: #​78405
  • Turbopack: don't resolve traced references in dev: #​78623
  • Turbopack: Support passing binary data to Webpack loaders: #​75056
  • docs: link the Cloudflare adapter for Workers: #​78610
  • perf(turbo-tasks): Filter out self arguments: #​78554
  • refactor(turbo-tasks): Tighten up id factory overflow checks, tweak API to make construction easier: #​78486
  • refactor(turbo-tasks): Use an execution id instead of the parent task id to prevent local Vc escapes: #​78487
  • refactor(turbo-tasks): Remove task id from RawVc::LocalOutput: #​78561
  • Turbopack: avoid compation on initial write: #​78342
  • Turbopack: Extract EsRegex into turbo-esregex crate: #​78639
  • nit(turbo-tasks): Reorder the fields in RawVc::LocalOutput, add more documentation: #​78562
  • Update Turbopack development test manifest: #​78660
  • Turbopack: write a LOG file for the database: #​78650
  • Turbopack: Fix sizes=any with icon.svg metadata file: #​78663
  • Turbopack: commit compaction only when there are updates: #​78651
  • docs: improve "use server" inline example: #​78653
  • Update Nissuer to alert for vulnerability reports: #​78417
  • Enable prettier for turbopack: #​78559
  • fix: broken deploy test from #​77898: #​78692
  • Fix timings data for deploy tests: #​78681
  • Turbopack: refactor codegen of module fragments: #​78642
  • Update Turbopack development test manifest: #​78698
  • Update Turbopack production test manifest: #​78697
  • test: migrate svgo webpack test: #​78704
  • fix(turbopack): Provide full path to SWC Wasm plugins: #​78637
  • Revert "[next-lint] test: remove eslint config snapshot testing": #​77824
  • Turbopack: initially shard SST files: #​78652
  • Turbopack: reduce max coverage for compaction: #​78649
  • chore(turbopack): Bump rustc-hash from 2.1.0 to 2.1.1: #​78721
  • Turbopack: make_task_dirty only needs meta data: #​78699
  • chore(CI): Line-wrap afterBuild blocks in build_and_test.yml: #​78718
  • chore(CI): Re-run pnpm install after pnpm build in build_reusable.yml: #​78720
  • Update authentication.mdx: #​78738
  • chore(CI): Use TEST_CONCURRENCY by default in run-tests.js: #​78731
  • Update test new tests for deploy mode: #​78737
  • Update Turbopack development test manifest: #​78741
  • Turbopack: assign a high aggregation number to session dependent tasks: #​78668
  • Turbopack: Use separate meta and data modified flags: #​78724
  • Turbopack: add concurrency limit to effects: #​78725
  • Turbopack: refactor codegen: #​78685
  • Turbopack: correctly reference injected variable for Wasm on Edge: #​78771
  • Docs IA 2.0: Improve landing page, add intro to Getting Started page: #​78765
  • Stabilize back-forward-cache test cases: #​78735
  • De-dupe build_and_deploy run for PRs: #​78792
  • Revert "De-dupe build_and_deploy run for PRs": #​78809
  • Update flakey app-action test: #​78797
  • Update anyhow to 1.0.98: #​78827
  • Update Turbopack production test manifest: #​78830
  • [test] Repro for dropped ignoreList by Turbopack in browser sourcemaps: #​78822
  • Update multi-zones.mdx: #​78812
  • chore(CI): Remove unused environment variables from build_and_test.yml: #​78732
  • Turbopack: avoid tracking a modification when adding an already existing item: #​78726
  • Turbopack: reduce the amount of task modifications caused by recomputation: #​78728
  • Turbopack: avoid depending on the Project: #​78730
  • Turbopack: use unstable sort for better performance: #​78764
  • chore(CI): Break pages-dir client-navigation dev tests into smaller parallelizable files/suites: #​78787
  • Turbopack: avoid storing task data and task cache concurrenctly: #​78775
  • Add a new fs method to track a glob.: #​78686
  • Add tests for normalize_path: #​78840
  • Turbopack: flush key spaces when done with them: #​78776
  • fix: error build if fixture typechecking fails: #​78839
  • doc: add build lifecycle hooks documentation: #​78842
  • Share logic across our two transforms: #​78680
  • Turbopack: add tracing to turbo-persistence: #​78777
  • Turbopack: fix task data category: #​78873
  • fix(react-compiler): Fix detection of interest: #​78874
  • Update Turbopack production test manifest: #​78900
  • Update Turbopack development test manifest: #​78901
  • Docs IA 2.0: Fonts: #​78899
  • Docs IA 2.0: Metadata: #​78905
  • Docs IA 2.0: Create tailwind guide: #​78908
  • feat(next-swc): Add a fast path to RC detector: #​78920
  • Turbopack: defer sourcemaps processing to codegen: #​78855
  • build: Update swc_core to v23.2.0: #​78885
  • Turbopack: create smaller initial files to reduce memory usage: #​78778
  • fix CSP docs: #​78937
  • Revert "build: Update swc_core to v23.2.0": #​78935
  • fix(CI): Remove e2e test timeout overrides from rspack & turbopack suites: #​78934
  • Update Turbopack development test manifest: #​78953
  • Turbopack: ChunkingType::Parallel with hoisted bool: #​78922
  • Update Turbopack production test manifest: #​78952
  • fix(CI): Avoid rebuilding native code in jobs that don't depend on native code: #​78944
  • Docs IA 2.0: Images: #​78769
  • chore(test/e2e): Remove stale TODO comment from webpack persistent caching test: #​78946
  • Docs: Fix headings in Getting Started: #​78965
  • Docs IA 2.0: Delete empty optimizing folder: #​78966
  • chore(CI): Split trailing-slashes suite cases into smaller suites, port to more modern e2e framework: #​78890
  • Turbopack: properly replace __dirname and __filename: #​78843
  • perf(turbopack): Remove needless clone of sourcemap: #​78972
  • build: Update swc_core to v23.1.0 again with macos build fix: #​78940
  • Turbopack: cache directory creation: #​78729
  • Update Turbopack production test manifest: #​78988
  • Update Turbopack development test manifest: #​78989
  • fix(CI): Wait for lock when running apt-get: #​78979
  • chore(CI): Add a few more turbopack paths to labeler config: #​78980
  • chore(CI): Add Rspack labeler config: #​79004
  • perf(turbopack): Remove needless clone of SWC AST: #​79007
  • chore(CI): Split next-form tests into smaller suites/files that can be run more-in-parallel: #​78891
  • fix(CI): Remove comments from labeler config: #​79015
  • Turbopack next/font: Use a custom enum instead of Result for failed local font files: #​78941
  • Update middleware prefetch test: #​79025
  • Docs IA 2.0: CSS: #​78996
  • Update Rspack production test manifest: #​79072
  • docs: Fix grammar on Update static-exports.mdx: #​79091
  • Update Rspack development test manifest: #​79071
  • perf(turbopack): Update modularize_imports: #​79012
  • build: Update swc_core to v24.0.0: #​79092
  • Revert "build: Update swc_core to v24.0.0": #​79102
  • chore(CI): Add back test retries (again) to arewerspackyet tests: #​79014
  • Turbopack: hash next/font filename to shorten it: #​79089
  • Upgrade lightningcss: #​79096
  • Turbopack: refactor into traverse_edges_fixed_point: #​79078
  • [test] Move test selectors as close to the actual value as possible: #​78931
  • test: split basic HMR test into multiple files: #​79064
  • test: split full reload HMR test into multiple files: #​79065
  • Update rust toolchain to 2025-05-12: #​79099
  • Rust: Update safe crates to 2024 Edition: #​79104
  • build(next-swc): Drop swc_bundler: #​79113
  • chore(CI): Split basepath test suite into smaller and more parallel test suites: #​78892
  • test: split error recovery HMR test into multiple files: #​79066
  • test: split hot module reload HMR test into multiple files: #​79067
  • test: remove unnecessary conditionals in error recovery tests: #​73625
  • Revert toolchain update to 2025-05-12: #​79117
  • test: replace duplicate test utils to next instance: #​73624
  • chore(CI): Split i18n-data-fetching-redirect test suite into smaller and more parallel test suites: #​78893
  • fix: pnp test cases failed when using rspack: #​79084
  • Turbopack: Make turbopack-core Rust 2024: #​79131
  • Docs: Add PPR page to getting started section: #​79076
  • Update Turbopack production test manifest: #​79139
  • Update Turbopack development test manifest: #​79140
  • Update Rspack production test manifest: #​79138
  • Fix false-positive "use cache" misplacement error: #​79151
  • docs: use single quote for 'use client' directive: #​79114
  • docs: improve 'use client' directive and client components: #​79115
  • Turbopack: remove unused EcmascriptInputTransform::CommonJs: #​79148
  • [test] Add debug-brk package script: #​79097
  • perf(turbopack): Optimize next_page_static_info: #​79009
  • Reference the workUnitStore when determining bailout to CSR: #​79118
  • Revert "Fix false-positive "use cache" misplacement error": #​79160
  • build: Update swc_core to v24.0.0: #​79103
  • docs: Fix grammar in vitest.mdx (How to set up Vitest with Next.js): #​78654
  • [release] enable changesets: #​79035
  • Remove uses of read_glob from node_native_bindings: #​79154
  • chore(turbopack): Add a span for sourcemap generation: #​79170
  • Add rustc-ice files to gitignore: #​79167
  • Update Rspack development test manifest: #​79174
  • Update Rspack production test manifest: #​79185
  • Update Turbopack production test manifest: #​79186
  • Update Rspack development test manifest: #​79184
  • Docs: Change mjs codeblocks to js : #​79163
  • chore: Update DevEx team changes in labeler: #​79191
  • Docs: Visual nits: #​79198
  • Docs IA 2.0: Move Edge Runtime information to API reference: #​79152
  • Prettier ignore changeset's format: #​79203
  • perf(turbopack): Do not inline synthesized content for sourcemaps: #​79173
  • Revert "Update mappings in launch.json to improve debugging in VSCode (#​76559)": #​79206
  • perf(turbopack): Use Byte::from_static when possible: #​79215
  • Add recent Turbopack reformats to blame-ignore: #​79187
  • perf(turbopack): Drop AST node before generating source maps: #​79219
  • [turbopack] Delete the read_glob function: #​79166
  • [ts-next-plugin] test: add client-boundary test: #​79194
  • Reland: Fix false-positive "use cache" misplacement error: #​79222
  • Turbopack: Allow fully dynamic import() in node_modules: #​79153
  • Update Turbopack development test manifest: #​79233
  • Docs: Fix page order in Getting Started: #​79240
  • Docs IA 2.0: Server and Client Components: #​79143
  • Docs IA 2.0: Delete rendering section: #​79244
  • Docs: Fix syntax highlighting, add missing js code blocks: #​79246
  • perf(turbopack): Implement ShrinkToFit for AutoMap: #​79218
  • docs: add missing links and imports to cacheLife and cacheTag for prerender-missing-suspense error: #​79247
  • test: fix snapshots in failing tests: #​79254
  • fix(turbopack): prepend a question mark in AssetIdent display: #​78977
  • Update Turbopack development test manifest: #​79278
  • Update Turbopack production test manifest: #​79277
  • Update Rspack production test manifest: #​79275
  • Turbopack: remove dead code: #​79280
  • perf(turbopack): Use rayon threadpool for minify(): #​79261
  • Revert "perf(turbopack): Use rayon threadpool for minify()": #​79296
  • perf(turbopack): Update sourcemap to make flatten() faster: #​79297
  • docs: streaming responses with pages API routes: #​79269
  • feat: --rspack flag for create next app: #​79077
  • Do not run CI for modifying changeset related files: #​79315
  • build(next-swc): Update swc_core to v25.0.0: #​79319
  • Disable dynamicIO in global default cache handler test: #​79300
  • Enable PPR in Dynamic IO tests: #​79301
  • Turbopack build: Add test skip that is also skipped for dev: #​79241
  • Add missing / to deploying link
  • [test] Use unique error messages in server-source-maps: #​79108
  • refactor(turbopack-resolver): rename filed plugins to after_resolve_plugins: #​79286
  • Update Rspack development test manifest: #​79356
  • Update Rspack production test manifest: #​79357
  • Docs: Experimental taint option in next.config.js: #​79293
  • docs: --verbose option in dev mode is not yet supported: #​79366
  • Update Turbopack development test manifest: #​79358
  • docs: Fix flag for taint: #​79370
  • test: fix more Runtime/Recoverable Error flakiness in HMR: #​79371
  • Remove obsolete ppr configs from Dynamic IO tests: #​79305
  • Turbopack: don't emit unnecessary block: #​79361
  • perf(turbopack): Spawn only one thread for one write file effect: #​79318
  • [release] add new ci to use changesets/action for stable release: #​79037
  • fix(doc): fix typo: #​79369
  • [release] couple next and @next/swc versions: #​79036
  • [release] use changesets/action for canary release: #​79038
  • [release] create empty changeset for next when no changeset found during canary release: #​79049
  • [release] couple next and @next/swc versions: #​79036
  • [release] use changesets/action for canary release: #​79038
  • [release] create empty changeset for next when no changeset found during canary release: #​79049
  • Unroll recursion in RuleCondition::matches This trades allocations due to Box::pin calls during recursion for an explicit stack and a tiny interpreter loop.: #​79310
  • Update Turbopack production test manifest: #​79359
  • Update Rspack development test manifest: #​79392
  • Update Rspack production test manifest: #​79393
  • Update Turbopack production test manifest: #​79395
  • Update Turbopack development test manifest: #​79396
  • Turbopack Build: Fix next/dynamic test: #​79407
  • [release] fix: use correct step id when publishing: #​79408
  • Turbopack build: Fix NODE_ENV test: #​79377
  • Turbopack build: Fix production-browser-sourcemaps test: #​79374
  • Fork the globset strategy for turbopack: #​79333
  • build: Update swc_core to v26.0.0: #​79411
  • docs: fix spacing in installation instructions: #​79257
  • Turbopack build: Skip test that is not relevant for Turbopack: #​79376
  • Update test E2E deploy workflow to accept version: #​79420
  • Turbopack Build: Add comment explaining reason for skipped test: #​79418
  • Docs IA 2.0: Move ISR page to guides: #​79283
  • Update Turbopack production test manifest: #​79435
  • Update Turbopack development test manifest: #​79436
  • Turbopack build: Skip test that is not relevant for Turbopack: #​79376
  • Update test E2E deploy workflow to accept version: #​79420
  • Turbopack Build: Add comment explaining reason for skipped test: #​79418
  • Docs IA 2.0: Move ISR page to guides: #​79283
  • Update Turbopack production test manifest: #​79435
  • Update Turbopack development test manifest: #​79436
  • Turbopack Build: Fix css-modules test: #​79441
  • docs: htmlLimitedBots config value should be a RegExp: #​79454
  • Docs IA 2.0: Review fetching page and move examples: #​79200
  • Docs IA 2.0: Add i18n guides: #​79391
  • Docs: Fix broken link: #​79456
  • Turbopack: add webpack scope-hoisting tests: #​79457
  • [test] Use NEXT_TEST_CI when forking test in CI: #​79354
  • Docs: Remove non breaking space: #​79468
  • [sync-react] Base PR on target ref of workflow: #​79466
  • disallow unstable_rootParams in client components: #​79471
  • Update Rspack production test manifest: #​79432
  • Turbopack: avoid negative uppers and follower and use retry loop instead: #​79451
  • build: Update swc_core to v26.0.1 and styled-jsx: #​79464
  • fix(next-swc): Fix react compiler usefulness detector: #​79479
  • fix(test/e2e): Increase timeout of flaky basepath test: #​79481
  • build: Update swc_core to v26.0.1 and styled-jsx: #​79464
  • fix(next-swc): Fix react compiler usefulness detector: #​79479
  • fix(test/e2e): Increase timeout of flaky basepath test: #​79481
  • Docs IA 2.0: Reorder PPR page and fix some nits: #​79282
  • Docs: Align with react docs server functions: #​79442
  • Turbopack Build: Fix _error loading test: #​79455
  • Turbopack Build: Fix dynamic-missing-gsp test: #​79472
  • Turbopack: remove unused ModuleWithDirection from Node runtime: #​79458
  • Turbopack Build: Fix next/font test: #​79502
  • perf(turbopack): Use sourcemap with perf patches: #​79501
  • [turbopack] Fix a buggy serializer: #​79520
  • chore(turbopack): Remove unused macro definition: #​79521
  • Update Rspack production test manifest: #​79484
  • Update Rspack development test manifest: #​79485
  • Update Turbopack production test manifest: #​79487
  • Update Turbopack development test manifest: #​79488
  • docs: Rename CSS snippet to blog.module.css: #​79507
  • add feature flag to verify aggregation graph: #​78964
  • Turbopack: leave chunks in rscModuleMapping empty: #​79511
  • [release] use changesets/action for release-candidate: #​79039
  • [release] notify release status via slack: #​79409
  • refactor(turbopack): Refactor usage of visitors: #​79525
  • [turbopack] Fix the stubbed out implementation of signature so that it works in a web worker.: #​79509
  • fix(next-swc): Fix interestingness detection for React Compiler: #​79499
  • perf(turbopack): Remove extra indirection: #​79553
  • refactor(turbopack): Remove PassFactory: #​79555
  • Fix build and deploy workflow: #​79569
  • Add final build job to validate: #​79570
  • de-flake ReactRefreshLogBox (app): #​79573
  • Disable "use cache" deploy tests: #​79586
  • report build-and-deploy failures only after retries: #​79574
  • [release-legacy] fix: set stable dist tag for backport releases instead of latest: #​79596
  • docs (data fetching): fix typo in startTransition call: #​79578
  • Fix --tag argument in publish-release: #​79599
  • Ensure scripts are included in root tsconfig: #​79600
  • [release] fix: GITHUB_TOKEN is needed to open release pr: #​79609
  • [release-old] use backport NPM dist tag instead of stable for backports: #​79612
  • Turbopack: use unsigned values for follower and upper edges: #​79489
  • [release] fix: correctly set tag during publish: #​79548
  • [release] use backport NPM dist tag for backports: #​79538
  • [release-new] fix: release pr commit contains (#number) at last: #​79611
  • Unflake Undefined default export test: #​79632
  • [release-new] move "add label to pr" workflow from publish to trigger: #​79619
  • chore(turbo-tasks): Remove old and unused turbo-tasks-memory backend: #​79560
  • Update Turbopack development test manifest: #​79603
  • Enforce consistency between packages in preview builds: #​79610
  • Turbopack: improve error handling when DB read/deserialization fails: #​79545
  • Docs IA 2.0: Create Forms guide: #​79288
  • Docs IA 2.0: Create intercepting and parallel routes API reference: #​79405
  • Docs IA 2.0: Add examples to layout.js: #​79453
  • Docs IA 2.0: Update template.js API reference: #​79490
  • Docs IA 2.0: Create Dynamic Segments API reference, add example to getting started. : #​79439
  • Turbopack: avoid panics due to eventual consistency: #​79242
  • Next IA 2.0: Create Route Groups API reference, simplifying wording: #​79444
  • Update Turbopack production test manifest: #​79647
  • Docs IA 2.0: Move Redirects page to guides: #​79447
  • Docs IA 2.0: Add Caching and Revalidating page: #​79493
  • Docs: scrub html in ld+json script: #​79627
  • Turbopack Build: Fix edge _document test: #​79628
  • Turbopack Build: Fix conflicting page error: #​79634
  • Turbopack Build: Fix runtime value test: #​79654
  • Docs IA 2.0: Delete Error Handling page: #​79495
  • Turbopack Build: Skip edge stacktrace test: #​79661
  • Fix name tracking for closures in server actions transform: #​79657
  • Turbopack Build: Fix middleware rewrite test: #​79697
  • Update flakey empty-project test: #​79734
  • Update Rspack production test manifest: #​79645
  • Update Turbopack development test manifest: #​79646
  • Update Rspack development test manifest: #​79644
  • perf(turbopack): Remove indent in intermediate string: #​79754
  • fix(turbopack): Use comments instead of AST nodes for unreachables: #​79703
  • Docs: Fix headings: #​79777
  • Turbopack Build: Fix metadata test: #​79776
  • chore(turbopack): Update swc_core to v26.2.2: #​79756
  • re-enable vary header deploy test: #​79753
  • refactor(turbopack): Preserve indents in dev mode codegen: #​79786
  • Docs: force-static w/ revalidate, revalidatePath, and revalidateTag: #​79780
  • Turbopack: split meta data and AQMF into separate files: #​79659
  • Update script location used in pnpm unpack-next: #​79626
  • chore(ci): Configure automated benchmark for turbopack: #​79791
  • [turbopack] Reduce the size of module graph datastructures: #​79706
  • chore(ci): Add large benchmark: #​79793
  • Update Turbopack development test manifest: #​79774
  • Update Turbopack production test manifest: #​79773
  • fix(next-swc): Fix specificity issue of styled-jsx in lightningcss mode: #​79802
  • Update Rspack development test manifest: #​79772
  • chore(turbo-tasks-backend): Fix build with --features turbo-tasks-backend/lmdb: #​79530
  • Turbopack: persist and compare errors and panics: #​77935
  • Turbopack: add test for reexport cycles: #​79792
  • [release-new] fix: slack notification only if is a publish workflow: #​79933
  • Update Rspack production test manifest: #​79923
  • chore(ci): Configure small benchmark for builds: #​79796
  • [turbopack] Fix URL fragment and query handling in Turbopack: #​79993
  • chore(turbopack): Cleanup benchmark code: #​79943
  • chore(ci): Run turbopack benchmark from custom runners: #​79979
  • fix: update rspack production build output snapshot: #​79766
  • [turbopack] Create a macro rcstr! for constructing RcStr from string literals.: #​79759
  • Turbopack: add print_cache_item_size feature flag to print cache size per task: #​80043
  • Turbopack: remove verbose output: #​80044
  • docs: Reference to statically imported images: #​80048
  • Docs: Drop innacurate override information for dynamicParams: #​79966
  • chore: Use same function references in useReportWebVitals examples: #​79963
  • refactor(turbopack): Do not use Result for Rope#read: #​80004
  • Turbopack Build: Fix next-font test: #​80049
  • chore(ci): Disable flaky turbopack benchmarks: #​80058
  • Turbopack Build: Implement locale:false middleware matcher: #​80057
  • [turbopack] Simplify the definition of AssetIdent: #​79805
  • Update Rspack production test manifest: #​80038
  • Update Turbopack production test manifest: #​80040
  • Update Rspack development test manifest: #​80039
  • chore(turbopack): Update rust-sourcemap to v9.2.2: #​80066
  • chore(turbopack): Remove Lightningcss prefix for CSS types: #​80067
  • build(turbopack): Update swc_core to v26.3.3: #​80059
  • perf(turbopack): Use owned instance of Code for minify(): #​79991
  • Update Turbopack development test manifest: #​80041
  • docs: Manual calls to action should we wrapped in startTransition: #​80101
  • [dev-tools] Re-focus previous item after closing sub menu: #​80099
  • perf(turbopack/rcstr): Precompute hash for equality bailout: #​78943
  • perf(turbopack/rcstr): Use precomputed hash: #​80074
  • Docs: Improve Turbopack webpack loader documentation: #​79523
  • fix(turbopack): Allow google font fetch errors to propagate when in production: #​79999
  • chore(turbopack): Fix building local crates with --all-features: #​80117
  • fix React 18 test failures: #​80119
  • chore(turbopack): Remove unused dependencies reported by cargo-shear: #​80121
  • [turbopack] Eliminate many calls to into and from and cell involving RcStr: #​80076
  • fix(turbo-persistence): Atomically mark old versioned directories for deletion before deleting them: #​80082
  • Turbopack: Improve errors when opening SST files: #​80106
  • chore(turbopack): Use label for large benchmark: #​80114
  • [test] add custom timeout for start server: #​80160
  • Turbopack: Fix sst filter handling and order for meta files: #​80147
  • Turbopack Build: Fix metadata dynamic force-dynamic: #​80167
  • [turbopack] Remove turbo_tasks::value attribute from NativeFunction
  • Turbopack: add tool to print DB structure: #​80148
  • Update Rspack production test manifest: #​80136
  • small typo fix: #​80171
  • build(turbopack): Update swc_core to v26.4.4: #​80161
  • [turbopack] Remove uses of Value<ClientContextType> by making ClientContextType a TaskInput: #​80127
  • Update Turbopack development test manifest: #​80196
  • Update Rspack production test manifest: #​80192
  • Update Rspack development test manifest: #​80193
  • Update Turbopack production test manifest: #​80195
  • [turbopack] Remove uses of Value<ReferenceType> by making ReferenceType a TaskInput: #​80130
  • Upgrade rust version to 2025-06-04: #​80200
  • Fix race condition in types-and-precompiled: #​80162
  • Turbopack: ignore module ids config in dev: #​80204
  • Remove forks to switch back to upstream crates: #​80198
  • Add a test to show that 'use cache' works in generateMetadata: #​80172
  • [test] Add test for dev rendering indicator: #​80205
  • docs: add Docker development performance guidance for Mac/Windows: #​80002
  • [test] fix flaky test of basepath navigation: #​80213
  • [turbopack] Remove Value::new wrapper for Availabilityinfo parameters: #​80132
  • [turbopack] Remove Value::new wrapper for ServerContextType parameters: #​80133
  • Turbopack: fix export collection: #​80203
  • Docs: Linking and Navigating Page: #​80103
  • Turbopack Build: docs for unsupported composes handling: #​80238
  • Turbopack Build: Update manifest for #​80238: #​80244
  • [test] More robust extraction off CSS sources in Flight chunks: #​80243
  • [turbopack] Replace uses of Value<Pattern> with just Pattern
  • [test] Unflake back-forward-cache test: #​80250
  • perf(turbopack): Decode sourcemap partially: #​80177
  • [turbopack] Replace uses of Value<ExecutionEnvironment> with just ExecutionEnvironment: #​80135
  • [turbopack] Replace uses of Value<ContentSourceData> with just ContentSourceData: #​80140
  • Revert "[test] fix flaky test of basepath navigation": #​80259
  • Turbopack: really fix export collection: #​80240
  • fix typo: #​80282
  • [turbopack] Remove uses of Value<..> instead make the payloads impl Taskinput: #​80141
  • [turbopack] Remove uses of Value<..> instead make the payloads impl Taskinput
  • [turbopack] Remove the final uses of Value<..> and delete the type: #​80144
  • [turbopack] Remove the _for_input options from turbo_tasks::value and the TypedForInput trait.: #​80185
  • Docs: Add rspack community collab: #​80217
  • chore(turbopack/ci): Make codspeed stable: #​80323
  • [test] separate tracing error test from action test suite: #​80324
  • chore(next-swc-napi): Update tracing-chrome crate to 0.7.2: #​80331
  • [turbopack] optimize the TurboMalloc threadlocals: #​80265
  • [test] Only run build_and_deploy once for PRs from upstream: #​80329
  • chore(turbo-tasks-fetch): Port tests from httpmock to mockito: #​80341
  • feat(turbopack): Invalidate the persistent cache upon panic: #​80225
  • perf(turbopack): Optimize Rope correctly: #​80335
  • fix(turbopack): Restore sources field in the source map: #​80337
  • Update Rspack development test manifest: #​80349
  • Update Rspack production test manifest: #​80348
  • Update Turbopack development test manifest: #​80351
  • Update Turbopack production test manifest: #​80350
  • docs: Incremental cache is not used for cache-control: no-cache requests: #​80352
  • Docs: Add Data Security Guide: #​80249
  • Docs IA 2.0: Move examples to route.js API reference: #​80360
  • Docs IA 2.0: Move examples to middleware.js API reference: #​80363
  • Docs: Add prefetching guide: #​80152
  • [test] add rspack flaky test to build manifest: #​80366
  • Docs: broken links in caching: #​80369
  • docs: Middleware fetching is not cached: #​80378
  • Turbopack: include obsolete entries in computation: #​80362
  • build(turbopack): Update swc_core to v27.0.1: #​80338
  • Docs: Clarify how intercepting routes work and update example: #​80145
  • Require that turbo_tasks::value_trait items be annotated with turbo-tasks::function: #​79178
  • Update Turbopack production test manifest: #​80400
  • Update Rspack production test manifest: #​80398
  • Update Rspack development test manifest: #​80397
  • Update Turbopack development test manifest: #​80399
  • Use new browserWithResponse() method in empty-fallback-shells tests: #​80406
  • [test] unflake turbopack dev navigation test case: #​80407
  • Docs: Getting Started feedback: #​80401
  • docs: server-only/client-only in Next.js: #​80408
  • Docs: Polish Getting Started section: #​80402
  • build(turbopack): Update swc_core to v27.0.2: #​80412
  • refactor(turbopack): remove lazy_static dependency: #​80226
  • [test] Move test selectors as close to the actual value as possible (Part 2): #​80416
  • Turbopack: fix persistent caching bit number typo: #​80431
  • chore: Remove useActionState from auto wrapping list: #​80420
  • Update Turbopack development test manifest: #​80437
  • Update Rspack development test manifest: #​80435
  • test(turbopack): Configure HMR benchmark: #​80219
  • refactor(turbopack): Make invalidator flag explicit: #​80414
  • fix(next-swc): Update styled-jsx SWC plugin: #​80459
  • test(turbopack): Remove flaky benchmark: #​80465
  • Revert "refactor(turbopack): Make invalidator flag explicit": #​80466
  • fix(turbopack): Improve error message for PURE selector error: #​80068
  • build(turbopack): Update swc_core to v27.0.4: #​80467
  • Rename empty-fallback-shells test suite to just fallback-shells: #​80461
  • Turbopack: don't revisit nodes: #​80455
  • Update Turbopack development test manifest: #​80476
  • Update Rspack development test manifest: #​80474
  • Update Rspack production test manifest: #​80473
  • Update Turbopack production test manifest: #​80475
  • Update from-create-react-app.mdx: #​80451
  • Fix variable assignment in docs example: #​80418
  • perf(turbopack): Remove needless alloc for AQMF: #​80468
  • [turbopack] Allow value_trait items to not be annotated with turbo_tasks::function: #​79217
  • refactor(turbopack): Make invalidator flag explicit: #​80487
  • test(turbopack): Make HMR benchmark less flaky: #​80488
  • perf(turbopack): Introduce static analysis for immutable tasks: #​80415
  • docs: fix typo: #​80549
  • Fix small grammar error in searchParams section: #​80548
  • docs: fix a typo in static-exports.mdx: #​80541
  • docs: fix typos: #​80503
  • docs: fix typo: #​80500
  • docs: fix typo: #​80501
  • Docs IA 2.0: Delete routing section, add BFF guide, polish getting started: #​80365
  • Turbopack Build: Refactor browserslist CSS test to not use .next folder: #​80571
  • Explain how to use searchParams prop: #​80579
  • Update Turbopack development test manifest: #​80563
  • [turbopack] Simplify Request::parse(Pattern) the recursive portion doesn't need to be async: #​80510
  • Update Rspack development test manifest: #​80560
  • Update Rspack production test manifest: #​80561
  • Update Turbopack production test manifest: #​80562
  • perf(turbopack): Introduce runtime analysis for immutable tasks: #​80422
  • perf(turbopack): Do not allocate vectors if we are not going to use it: #​80504
  • test: fix failures caused by format discrepancies between rspack and other bundlers: #​80314
  • perf(turbopack): Detect more immutable tasks: #​80423
  • docs: streaming metadata, dynamic pages and generateMetadata: #​80453
  • Turbopack: correct export usage in EcmascriptModulePartReference: #​80526
  • Turbopack: make another callback return a result: #​80608
  • Remove turbo_tasks::function from AssetContext::layer: #​80592
  • build(turbopack): Update swc_core to v27.0.6: #​80626
  • Update Rspack production test manifest: #​80598
  • Update Turbopack production test manifest: #​80600
  • Update Turbopack development test manifest: #​80599
  • Update Rspack development test manifest: #​80597
  • Turbopack: resolve sourceMap.file: #​80625
  • perf(turbopack): Mark async fns without await as non-async: #​80628
  • [turbopack] Merge identical match cases: #​80630
  • perf(turbopack): Load is_immutable flag dynamically: #​80506
  • chore(turbo-tasks): Remove unused deprecated methods from manager: #​80594
  • chore(turbopack): Dedupe rustls dependencies by updating reqwest: #​80632
  • Add test cases without generateStaticParams to fallback-shells suite: #​80462
  • feat(turbopack): externalType support global: #​80542
  • Docs: Remove reference to deleted experimental turbotrace feature: #​80572
  • Docs: Update code snippets in linking and navigating guide: #​80652
  • Update Turbopack development test manifest: #​80647
  • Update Rspack development test manifest: #​80644
  • Prevent typescript errors in IDE for newly generated tests (part 2): #​80664
  • Update Turbopack development test manifest: #​80679
  • Show string values for configured experimental features: #​80686
  • fix: server actions should fetch from the router canonicalUrl: #​80690
  • test: improve action test reliability: #​80587
  • [turbopack] Simplify the implementations of TaskOutput::try_from_raw_vc: #​80689
  • refactor(turbopack): Refactor turbo-tasks-fs to take &self instead: #​80633
  • [test] Reduce flakiness of instrumentation-order: #​80712
  • [test] Add repro for SSR bug when large chunks are deferred in Flight: #​80661
  • add git merge driver for errors.json: #​80722
  • Update Rspack development test manifest: #​80705
  • Update Rspack production test manifest: #​80704
  • Update Turbopack development test manifest: #​80707
  • Update Turbopack production test manifest: #​80706
  • Turbopack: Allow distdir in project directory, outside of the application: #​80683
  • [turbopack] Reduce indirection in turbo-tasks dispatching: #​80695
  • [turbopack] Reorganize the fields in LocalTaskType to avoid an allocation: #​80738
  • fix(turbopack): Do not run inject_helpers pass multiple times: #​80755
  • fix: fixed merge driver output, does not expect debugging messages to output on stdout: #​80736
  • Update Turbopack production test manifest: #​80785
  • Update Turbopack development test manifest: #​80786
  • Turbopack: Don't convert script to module when using preset-env: #​80724
  • [segment-explorer] Fix segment alignment: #​80797
  • chore: Dynamic error does not change dynamicParams: #​80796
  • fix(turbopack): Fix usage of HELPERS of SWC: #​80791
  • Turbopack: use correct mark for swc: #​80789
  • build(turbopack): Update swc_core to v29.1.2: #​80659
  • Update Turbopack production test manifest: #​80836
  • Turbopack Build: Fix metadata-edge test: #​80842
  • [test] separate hmr env test: #​80802
  • Turbopack Build: Fix edge-config-validation test: #​80847
  • [turbopack] Delete FunctionId: #​80809
  • Turbopack Build: Update manifest: #​80859
  • build(turbopack): Update swc_core to 29.1.4: #​80872
  • perf(turbopack): Mark more async fns without await as sync: #​80642
  • Switch back to upstream lightningcss: #​80863
  • Turbopack: list assert/strict as external: #​80884
  • Update Turbopack production test manifest: #​80888
  • Update Turbopack development test manifest: #​80887
  • Fix preview builds for forks: #​80833
  • [test] Account for React's usage of eval in dev: #​80857
  • Turbopack: fix this when accessing named properties of namespace: #​80896
  • docs: add explanation of --disable-git command: #​80882
  • refactor(turbo-tasks-backend): Use ringmap crate instead of custom DequeSet type for aggregation updates: #​80867
  • fix(test/integration): Check the right thing when resetting the server-side-dev-errors tests: #​80873
  • Update Rspack production test manifest: #​80886
  • Update Rspack development test manifest: #​80885
  • fix(turbo-tasks): Temporarily disable immutable task optimizations: #​80914
  • Turbopack Build: Implement outputFileTracingIgnores and outputFileTracingIncludes: #​80890
  • test(turbopack): Use mimalloc for codspeed to make it realistic: #​80877
  • [turbopack] Add execution tests to demonstrate a bug: #​80918
  • build(turbopack): Update swc_core to v29.2.0: #​80919
  • test(codspeed): Make codspeed concurrent on canary branch: #​80928
  • Turbopack: respect PURE comments for minification: #​80893
  • Update Turbopack production test manifest: #​80932
  • Update Turbopack development test manifest: #​80933
  • Turbopack: slightly more correct ModuleId type: #​80605
  • docs: Use phosphor icons import perf optimization: #​80811
  • docs: Add a link to what opts into dynamic rendering: #​80910
  • Docs/fetching data deduping: #​80806
  • Turbopack: Improve unreachable code error message: #​80934
  • chore: add self to labelers: #​80924
  • cleanup(turbopack): Added documentation comments and small optimizations to CSS import validations: #​80901
  • Reenable debug assertions for dependencies in dev: #​80958
  • docs: link api reference pages/app router divergence: #​80955
  • Docs/feedback june batch: #​80651
  • Update backend-for-frontend.mdx: #​80942
  • fix(turbopack): Fix a panic when the generated hash is too short when radix formatting a string.: #​80966
  • [tests]: add failing deploy test to manifest: #​80973
  • [tubopack] Compile time replace top level this expressions to fix a subtle esm bug and simplify the client side runtime: #​80925
  • chore(turbopack): Add swc_ecma_minifier to turbopack trace target: #​80977
  • chore(turbopack): Add instrumentation to Code::generate_source_map: #​80978
  • perf(turbopack): Remove needless allocation: #​80980
  • perf(turbopack): Apply small-vector optimization for TaskIds: #​80830
  • Turbopack: improve unit tests: #​80940
  • [Segment Cache] Enable deploy tests: #​80947
  • Turbopack: Add PURE comments for FreeVarReference::EcmaScriptModule: #​80902
  • Turbopack: fix codegen of directives : #​80895
  • Use snapshots to verify error stack traces for dynamic validation errors: #​80946
  • Turbopack: fix sourcemaps of scopehoisted comments: #​80987
  • Use snapshots to verify dynamic validation errors in dev mode: #​80992
  • Don't start next server unnecessarily to assert build output: #​80994
  • [tests]: fix failing searchparams test: #​81013
  • feat(turbopack): externalType support script: #​80768
  • Ignore JSON.parse <anonymous> (0:0) stack frames in test snapshots: #​81044
  • Stop installing test apps that are skipped anyways: #​81043
  • chore(turbopack): Fix typo: #​80983
  • refactor(turbopack): Make create_visitor rustfmt-able: #​81053
  • Turbopack: move tests to backend: #​80995
  • Turbopack: @​next/mdx extension option is supported: #​81058
  • docs(fetch): update wording on conflicting cache and revalidate options: #​80591
  • perf(turbopack): Drop tokio::fs usages: #​80674
  • perf(turbopack/rcstr): Add serialization-time optimization: #​78645
  • refactor(turbopack): Use FileSystemPath instead of Vc<T>: #​80634
  • [test] Add case for import conditions in Pages Router API routes: #​81036
  • chore: .ts ext is most commonly used for middleware and routes: #​81059
  • Turbopack: correctly apply generate_source_map with scope hoisting: #​81060
  • Turbopack: inline typeof window in node_modules for server: #​80945
  • [turbopack[ Fix a bug in top level this analysis: #​81076
  • Turbopack: cleanup NextConfig derives: #​81071
  • Turbopack: fix exposed modules in scope hoisting: #​81073
  • [turbopack] Make internal functions private and use rcstr! macro: #​81041
  • build(turbopack): Update swc_core to v29.4.0: #​81092
  • Turbopack: Improve compaction in Persistent Caching: #​80860
  • Turbopack: guard against more eventual consistency: #​81080
  • Turbopack: instrument scope hoisting with tracing spans: #​81078
  • [node-webstreams] Remove unused PagesApi matching condition when setting react-server: #​81037
  • docs: fix grammatical error in upgrading to v15 guide: #​81038
  • perf(turbopack): Disable concurrent of the SWC minifier.: #​80981
  • Revert "perf(turbopack/rcstr): Add serialization-time optimization (#​78645)": #​81112
  • Docs: paper cuts July 1st : #​81109
  • Turbopack: scope hoist tree shaking modules as well: #​80527
  • Fix flakey devtools test: #​81127
  • [turbopack] Defend against json cyles in our execution tests: #​81079
  • [turbopack] Implement Issue::source on more Issue subtypes: #​80874
  • Fix flakey devtools test: #​81127
  • [turbopack] Defend against json cyles in our execution tests: #​81079
  • [turbopack] Implement Issue::source on more Issue subtypes: #​80874
  • Update workflows for nextjs-bot: #​81134
  • Update nextjs-bot config: #​81138
  • [turbopack] Remove some unnecessary awaits now that FileSystemPath is synchronously available.: #​81090
  • Run front-sync after deployment tests finish : #​81023
  • Docs: moved table for Unsupported Metadata to the correct location: #​80979
  • fix(next-swc): Apply SWC minifier bugfixes: #​81098
  • Update Rspack development test manifest: #​81103
  • Update Rspack production test manifest: #​81102
  • Update Turbopack production test manifest: #​81105
  • Update Turbopack development test manifest: #​81104
  • Add more test cases to the dynamicIO sync IO access test suite: #​81045
  • chore(turbo-tasks-backend): Remove unused support for nested database operations: #​80816
  • Turbopack: simplify ReducedGraphs and find_server_entries: #​81118
  • [turbopack] Remove an unnecessary clone: #​81153
  • [turbopack] Move static type ID variables into getters: #​81150
  • refactor(turbo-tasks-backend): Remove ExecuteContextImpl::lower_read_transaction: #​80822
  • refactor(turbopack): Implement BackingStorage for Either, replace NextTurboTasks with a type alias: #​80823
  • Remove unneccesary step that's making workflow fail: #​81164
  • Update caching.mdx: #​81129
  • build(turbopack): Update swc_core to v30.0.1: #​81179
  • Turbopack: rename simple tree shaking: #​81181
  • Disable Turbopack manifest: #​81170
  • perf(turbopack): let some Clone be conditional in insert_alias_option: #​81175
  • [turbopack] Move global names onto the NativeFunction object: #​81143
  • Turbopack: Rewrite IntervalMap using a BTreeMap: #​81095
  • Bump lightningcss to not include browserslist-rs twice: #​81184
  • Turbopack: lazily create syntax contexts for scope hoisting: #​81193
  • feat(turbopack): turbo-esregex support captures method: #​81119
  • cleanup(turbopack) Show users an error message when Webpack loaders have a glob in only the extension: #​81084
  • Only retry deploy tests for canary: #​81207
  • Skip alert as well for non-canary e2e deploy: #​81210
  • Fix if condition in retry workflow: #​81211
  • Format Turbopack NFT tests: #​81199
  • Turbopack: add EcmascriptExports::Unknown: #​81214
  • Sync NFT test suite from upstream: #​81189
  • docs: Getting started pages and search params: #​80616
  • Fix future Rust warnings: #​81217
  • Turbopack: fix source map panic: #​81212
  • chore(turbopack): Remove unused dependencies reported by cargo-shear: #​81221
  • Docs/after function mdx fix: #​81174
  • Docs: include effect in docs for default optimized libraries: #​81203
  • Update caching.mdx: #​81185
  • perf(next-napi): optimize output assets collection using flat_map: #​81222
  • [turbopack] Add FileSystemPath.has_extension and optimize module graph operations: #​81205
  • Turbopack: move write_version feature to env var: #​81250
  • document turbopack trace viewer (#​78184)
  • Turbopack: codegen modules without module graph: #​81238
  • Turbopack: delete module_context.remove_unused_exports: #​81239
  • Ensure default run name is correct for deploy tests: #​81255
  • Turbopack: prevent ParseResult recomputation: #​81244
  • [turbopack] Remove a vec clone from primary_chunkable_referenced_modules : #​81206
  • Update Rspack development test manifest: #​81219
  • [turbopack] Remove unused no_move_vec code: #​81141
  • Add regression test for conflicting search and route params: #​81249
  • build: Update swc_core to v30.1.1: #​81276
  • [test] Keep Playwright stackframes out of tests: #​81240
  • perf(turbopack): Make File => json faster: #​81279
  • Turbopack: sourceMappingURL for Node.js runtime chunk: #​81300
  • Turbopack: fix instrumentation-edge layer name: #​81304
  • Current behavior for module evaluation sourcemapping: #​73737
  • fix typo: #​81336
  • fix(docs): correct section count from 4 to 3 in intro: #​81323
  • Remove incorrect PostCSS config type: #​81338
  • Remove duplicate CSS properties: #​81333
  • [test] Dedicate suite for React's Server Request performance track: #​81312
  • reverts test copy change in dynamicIO tests: #​81358
  • fix(CI): Update llvm when building native musl targets: #​81392
  • fix(turbopack): external script should under async module: #​81362
  • Update Rspack production test manifest: #​81364
  • Turbopack: don't emit blurDataURL: null: #​81387
  • Turbopack: fix incorrect graph state bug: #​81202
  • [test] Avoid flaky assertions due to dynamic metadata: #​81373
  • fix(turbopack) Adjust tree loader to respect parent module overrides: #​81139
  • Turbopack: remove unused code: #​81411
  • Turbopack: improve var names, add some unit tests: #​81412
  • Fix auth preflight check when triggering Front sync: #​81166
  • [turbopack] Install late loaded script and link tags at the end of the head instead of the end of the body: #​81425
  • refactor(turbopack/napi): Add a NextTurbopackContext type, rename VcArc to DetachedVc: #​80881
  • [test] Skip flaky cdn-cache-busting test: #​81429
  • Unflake segment cache (CDN cache busting) redirect test: #​80967
  • Check if target workflow is enabled before triggering front sync: #​81432
  • Revert "[test] Skip flaky cdn-cache-busting test": #​81433
  • refactor(turbopack): Rewrite EsRegex::captures to return an iterator, use None for unmatched capture groups: #​81200
  • update: add nebrelbug to labeler.json: #​81437
  • Update Rspack development test manifest: #​81398
  • Turbopack: fix hanging problem due to stale tasks: #​81413
  • Turbopack: filter NftJsonAsset entries earlier: #​81446
  • Allow server functions to be used as client component props in 'use cache': #​81431
  • Turbopack: fix duplicate externals modules: #​81306
  • Turbopack: fix unused export removal with mixed reexport and locals: #​81422
  • Turbopack: handle all side effects and improve pattern: #​81455
  • Fail task if one of the parallel ones fails: #​81464
  • Consolidate dynamic IO errors test suites into a single fixture: #​81451
  • Update image.mdx: #​81454
  • Turbopack: reduce temp allocation during compute_blocks: #​81459
  • fix(CI): On musl/alpine builds, pin llvm to llvm20, add llvm bin directory to path: #​81519
  • Turbopack: refactor ReadRef deref + clone to the intended pattern: #​81537
  • Turbopack: remove clone_value again: #​81539
  • docs: root layout + opengraph-image + cna-eslit vs next lint bootstrap: #​81542
  • Turbopack: add module cost benchmark: #​81530
  • Turbopack: fix @opentelemetry/api resolve fallback: #​81541
  • [test] Use same pnpm in temporary repo directory: #​81540
  • Turbopack: only emit *.single.css chunks in dev: #​81490
  • Update rust-cache action to v1.0.9: #​81555
  • docs: update Page example to use Promise-based params in 05-server-and-client-components.mdx: #​81557
  • Temporarily disable failing fallback-shells deploy test: #​81593
  • Update help link for inlined use server in client components: #​81495
  • Turbopack: fix hanging problem with reexport cycles: #​81620
  • [test] improve segment explorer tests snapshot: #​81616
  • 15.4 Docs: Minor feature updates: #​81618
  • docs: onInvalidate router.prefetch: #​81609
  • Turbopack: Fix turbopack-swc-ast-explorer with multi-line inputs: #​81635
  • Turbopack: Clean up some of the logic in visit_assign_expr: #​81636
  • [turbopack] Rename traverse_edges_from_entries_topological to traverse_edges_from_entries_dfs: #​81481
Credits

Huge thanks to @​sokra, @​huozhi, @​Marukome0743, @​mischnic, @​wbinnssmith, @​eps1lon, @​razzeee, @​delbaoliveira, @​kdy1, @​wyattjoh, @​acdlite, @​ztanner, @​bgw, @​jantimon, @​lubieowoce, @​Fonger, @​ospira, @​gnoff, @​styfle, @​Cy-Tek, @​timneutkens, @​raunofreiberg, @​devchaudhary24k, @​Neschadin, @​OreQr, @​drewlong314, @​ijjk, @​praizjosh, @​unstubbable, @​lukesandberg, @​ScriptedAlchemy, @​sqidermad, @​Juneezee, @​devjiwonchoi, @​Kamitenshi, @​feedthejim, @​leerob, @​mauerbac, @​miki-tebe, @​gaearon, @​mrbadri, @​luwes, @​lucacasonato, @​M4xymm, @​jirihofman, @​vicb, @​jackwilson323, @​SyMind, @​kevva, @​xyf7, @​gaojude, @​dario-piotrowicz, @​mastoj, @​nicole0707, @​lourd, @​Karibash, @​chipit24, @​icyJoseph, @​xusd320, @​fireairforce, @​GenhaoLi, @​igas, @​Macw07, @​amannn, @​bcdipesh, @​r34son, @​ivasilov, @​lpalmes, @​imskyleen, @​teamleaderleo, @​vitaliemiron, @​agadzik, @​chdeskur, @​nakanoh, @​luiscobot, @​GameRoMan, @​dferber90, @​maurobonfietti, @​navandstokes, @​sajadtorkamani, @​bobziroll, @​lumirlumir, @​KkOoSsTtAa, @​msabramo, @​sommeeeer, @​schoenwaldnils, @​remcohaszing, @​HerringtonDarkholme, @​nebrelbug, @​RobPruzan, @​lmammino, @​MohammedYehia, @​extoci, @​padmaia, @​aacosta11, @​vercel-release-bot, @​maral, @​ethanniser, @​MichalMoravik, @​rajrawat37, @​kidonng, @​dnhn, @​kristian240, @​rachnac-emeritus, @​rortan134, and @​nick20name17 for helping!

v15.4.0

Compare Source

v15.3.5

Compare Source

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

Core Changes
  • Turbopack: list assert/strict as external (#​80884)
  • omit searchParam data from FlightRouterState before transport (#​80734)
  • bugfix: propagate staleTime to seeded prefetch entry (#​81263)
Misc Changes
  • document turbopack trace viewer (#​78184)
Credits

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

v15.3.4

Compare Source

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

Core Changes
  • [metadata] render streaming metadata on the top level (#​80566)
  • [fix] clone the config module to avoid mutation (#​80573)
Credits

Huge thanks to @​huozhi for helping!

v15.3.3

Compare Source

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

Core Changes
  • Reinstate vary (#​79939)
  • fix(next-swc): Fix interestingness detection for React Compiler (#​79558)
  • fix(next-swc): Fix react compiler usefulness detector (#​79480)
  • fix(dev-overlay): Better handle edge-case file paths in launchEditor (#​79526)
  • Client router should discard stale prefetch entries for static pages (#​79362)
Credits

Huge thanks to @​gaojude, @​kdy1, @​bgw, and @​unstubbable for helping!

v15.3.2

Compare Source

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

Core Changes
  • backport: fix(turbopack): Store persistence of wrapped task on RawVc::LocalOutput (#​78488) (#​78883)
  • @​next/mdx: Use stable turbopack config options (#​78880)
  • Fix react-compiler: Fix detection of interest (#​78879)
  • Fix turbopack: Backport sourcemap bugfix (#​78881)
  • [next-server] preserve rsc query for rsc redirects (#​78876)
  • Update middleware public/static matching (#​78875)
Credits

Huge thanks to @​ijjk, @​huozhi, @​kdy1, @​wbinnssmith, and @​bgw for helping!

v15.3.1

Compare Source

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

Core Changes
  • chore: Backport SWC-based RC optimization (#​78260)
  • fix: bump image-size@1.2.1 (#​78164)
Credits

Huge thanks to @​kdy1 and @​styfle for helping!

v15.3.0

Compare Source

Core Changes
  • [dev-overlay] Customize <select> styling for consistency: #​76973
  • Upgrade React from 029e8bd6-20250306 to 0ca3deeb-20250311: #​76989
  • [metadata]: add pinterest meta tag: #​76988
  • [dev-overlay] ensure stripping overlay bundle in prod build: #​76976
  • Apply env inlining during generate build mode: #​76990
  • Turbopack: Implement deploymentId: #​76904
  • track persistent caching usage: #​76996
  • [metadata] re-insert icons to head for streamed metadata: #​76915
  • Upgrade React from 0ca3deeb-20250311 to 6aa8254b-20250312: #​77033
  • Move static-env imports: #​77035
  • [dev-overlay] Add size setting to preferences: #​77027
  • Add config for only generating static env: #​77038
  • chore(HMR clients): Clean up and share code between app and pages router: #​76960
  • Add dev warning for cross-origin and stabilize allowedDevOrigins: #​77044
  • unify allowed origin detection handling: #​77053
  • Handle hash change in all files for static env: #​77058
  • [dev-overlay] highlight errored code line for runtime errors: #​77078
  • NFT: Ignore all of Webpack: #​77081
  • Add experimental build mode flag for env: #​77089
  • (feat) support client-side instrumentation: #​76916
  • Fix JSDoc comment for 'seconds' cache life profile: #​77084
  • refactor(HMR clients): Encapsulate some of the turbopack state tracking into a shared TurbopackHmr class: #​76994
  • Slightly improve error handling for unknown server actions: #​77135
  • Fix output standalone for alternative bundler: #​76971
  • Add alternate bundler plugin information to next info: #​77059
  • [metadata] remove the default segement check for metadata rendering: #​77119
  • [dev-overlay] Fix stacking order of highlighted line: #​77189
  • Upgrade React from 6aa8254b-20250312 to 5398b711-20250314: #​77129
  • fix(styled-jsx): Pass useLightningcss option to styled-jsx correctly: #​77008
  • log the instrumentation-client execution time: #​77121
  • Turbopack: canary-gate production builds: #​77146
  • [dev-overlay] remove special handling for missing tag error : #​77147
  • chore(react-dev-overlay): Remove confusingly underscored variables in useErrorOverlayReducer: #​77205
  • Update middleware request header: #​77201
  • Update default allowed origins list: #​77212
  • Ensure deploymentId is used for CSS preloads: #​77210
  • chore(HMR clients): Fix a bunch of typescript errors by including the appropriate webpack type declarations: #​77207
  • Update cache handler interface: #​76687
  • Turbopack: don't include AMP optimizer in NFT: #​77242
  • Server actions should not read stale data after calling revalidate*: #​76885
  • [dev-overlay] Blur fader for scrollable container: #​77196
  • Make revalidate* work when followed by a redirect in a route handler: #​77090
  • feat: onNavigate for link: #​77209
  • fix: pass telemetry plugin rspack tests: #​77257
  • feat(eslint-plugin): add minimal built-in flat presets: #​73873
  • [perf] skip loading client manifest for static metadata routes: #​77260
  • Upgrade React from 5398b711-20250314 to c69a5fc5-20250318: #​77249
  • [ppr] Handle failed resume data cache entries: #​77258
  • Bypass "use cache" caches when Draft Mode is enabled: #​77141
  • chore(HMR clients): Clean up tryApplyUpdates, reduce differences between app/pages versions: #​77219
  • Upgrade React from c69a5fc5-20250318 to db7dfe05-20250319: #​77295
  • Turbopack: layout segment optimization for Pages: #​74815
  • [dev-overlay] Make footer sticky without side effects: #​77327
  • Alternate bundler: show state in app info message: #​77259
  • Revert "Turbopack: layout segment optimization for Pages": #​77339
  • [metadata] add Yeti to html limited bots: #​77335
  • [dev-overlay] Remove unused code from pages: #​77325
  • [metadata] remove dead code of metadata routes handling: #​77336
  • Alternate bundler: pass more tests and update to 1.3.0-beta: #​77269
  • [metadata] fix the metadata route like pages and refactor utils: #​77264
  • fix: absolute assetPrefix url with path: #​77256
  • clean up useReducer code re dev indicator: #​77354
  • test: ensure that router identity stays stable when navigating: #​77356
  • [dev-overlay] Remove unused fields from hydration error state: #​77332
  • Turbopack: implement optimized css production chunking: #​77284
  • only log when instrumentation client takes too long: #​77378
  • switch development origin verification to be opt-in rather than opt-out: #​77395
  • remove direct ip/port bypass in dev origin check: #​77414
  • ensure /__next middleware URLs are included in the origin check: #​77416
  • exclude images and static media from dev origin check: #​77417
  • Refactor metadata and viewport preloading: #​77400
  • [dev-overlay] Remove unused fields from unhandled error action event: #​77333
  • Turbopack: Add --turbopack for next start: #​77442
  • Update README: #​77464
  • Remove unnecessary indirections around dispatch-related methods: #​77423
  • Lift public router instance to module level : #​77426
  • directly import param resolver in metadata: #​77401
  • [metadata] always serve streaming metadata in build: #​77437
  • directly import search param resolver in metadata: #​77402
  • Remove forwardRef from Link in App Router: #​77471
  • Match subrequest handling for edge and node: #​77474
  • Add deprecation warning for legacyBehavior prop: #​77473
  • feat: useLinkStatus: #​77300
  • [dynamicIO] Avoid memory leak warning for hanging promises: #​77480
  • [dev-overlay] Remove "Unhandled Runtime Error" label: #​77484
  • Upgrade React from db7dfe05-20250319 to 740a4f7a-20250325: #​77507
  • Upgrade React from 740a4f7a-20250325 to 313332d1-20250326: #​77527
  • Do not call expireTags/getExpiration unnecessarily: #​77570
  • fix(jest): stricter regex for 'server-only' in default config: #​77588
  • Fix: RESTORE_ACTION should not be thenable: #​77582
  • Use NEXT_PRIVATE_DEBUG_CACHE env variable for cache handler debug logs: #​77585
  • fix: make sure body can be read using nodejs runtime in middleware: #​77553
  • Update alternate bundler and pass more tests : #​77579
  • Refactor build scripts and rewrite pack-next in TypeScript: #​77536
  • fix isCsrfOriginAllowed handling for localhost: #​77594
  • Turbopack build: fix deterministic build test: #​77618
  • Turbopack build: Fix urlencoding test: #​77622
  • [og] fix vercel og build issue on windows: #​77650
  • [Segment Cache] Add "client-only" option: #​77655
  • Remove useSyncExternalStore from useIsDevRendering: #​77651
  • Track navigation timestamp on CacheNode: #​77251
  • Upgrade @​playwright/test and cleanup internal APIs: #​77659
  • Refactor: move "use cache" revalidation logic out of incremental cache: #​77577
  • Remove obsolete update of implicit tags expiration after server action: #​77595
  • Revert "Remove useSyncExternalStore from useIsDevRendering (#​77651)": #​77672
  • Upgrade React from 313332d1-20250326 to 63779030-20250328: #​77643
  • Turbopack build: Add marker for when a build used Turbopack: #​77674
  • feat(images): use experimental isrFlushToDisk option to prevent writing optimized images to cache: #​70645
  • doc: instrumentation-client: #​77649
  • Alternate bundler: use equivalent native plugins for built-in plugins: #​77355
  • Resolve Viewport separately from Metadata: #​77427
  • fix(turbopack): Suppress logging for short no-op turbopack HMRs: #​76924
  • Turbopack build: Fix node-file-trace test: #​77641
  • Turbopack build: Implement error when using next start without --turbopack: #​77678
  • legacyBehavior deprecation error should only trigger once: #​77687
  • Pass only required props to NonIndex: #​77685
  • Revert "fix: make sure body can be read using nodejs runtime in middleware": #​77690
  • [dev-overlay] Harden types when handling hydration mismatches: #​77334
  • [dev-overlay] Fix ref warning when Pages Router with React 18 is used: #​77726
  • add support for cssmodules-pure-no-check to allow global CSS features like View Transitions: #​77321
  • [dev-overlay] Only warn once per invalid sourcemap: #​77444
  • [dynamicIO] only abort once per prerender: #​77747
  • Turbopack build: Move Turbopack marker to SERVER_FILES_MANIFEST: #​77711
  • Reapply "Turbopack: layout segment optimization for Pages" (#​77339): #​77696
  • feat(next/image): support new URL() for images.remotePatterns: #​77692
  • [dev-overlay] remove text wrap for terminal: #​76953
  • Upgrade React from 63779030-20250328 to 040f8286-20250402: #​77742
  • Optimize server runtime bundles: #​77723
  • Turbopack Build: Remove cases of process.env.TURBOPACK: #​77757
  • [dev-overlay] Fix unactionable useLayoutEffect warning if React 18 is used: #​77737
  • [dev-tools] Fix flashing of disabled state on indicator: #​77727
  • Webpack build: Add compiled in x seconds in missing places: #​77751
  • Ignore an existing HMR refresh hash cookie with next start: #​77714
  • Turbopack build: Replace process.env.TURBOPACK usage: #​77783
  • Client instrumentation: onRouterTransitionStart: #​77791
  • Turbopack: log telemetry events when TurbopackInternalErrors occur: #​77660
  • Rename alternate bundler package name: #​77793
  • Turbopack: fix sideEffects matching for non-relative globs: #​77693
  • Revert "Upgrade @​playwright/test and cleanup internal APIs": #​77814
  • [next-ts-plugin] fix: language service crashes / metadata plugin not working: #​77213
  • [dev-overlay] always display bundler name on version info: #​77739
  • [dev-overlay] sync horizontal scrollbar style: #​77769
  • [dev-overlay] Read issueCount from non-async errors array: #​77821
  • [dev-overlay] Fix error dialog resizing logic: #​77830
  • Turbopack Build: Optimize instrumentation hook generation: #​77832
  • [next-server] skip setting vary header for basic routes: #​77797
  • Lazily call refreshTags and getExpiration: #​77779
  • Add debug logging to default cache handler and "use cache" wrapper: #​77827
  • [ts-next-plugin] fix: properly exit when failed to initialize: #​77842
  • Alternate bundler: correctly inject react refresh loader: #​77713
  • [dynamicIO] Fix dev warmup: #​77829
  • fix: don't reset the prefetch segment data routes on loop: #​77845
  • Ensure searchParams access in "use cache" triggers error when caught: #​77838
  • Revert "[dev-overlay] Fix error dialog resizing logic": #​77849
  • fix: add cache tags to segment prefetch responses: #​77846
  • Avoid microtaskiness when lazily fetching from cache handlers: #​77843
  • [Experiment] : #​77866
  • [dev-overlay] disable font ligatures: #​77865
  • Enable process.env.TURBOPACK when process.env.IS_TURBOPACK_TEST is set: #​77894
  • [ts-next-plugin] fix: use getSourceFile instead of fileExists to check file existence: #​77863
  • fix: only set request phase to "action" when actually running an action: #​76993
  • Alternate bundler: fix react refresh and adjust sourcemap: #​77875
  • Upgrade React from 040f8286-20250402 to 33661467-20250407: #​77899
  • refactor: rename isAction to isPossibleServerAction: #​77011
  • [logging] improve logging of port retry: #​77868
  • Remove canary-gate and add experimental warning for alternate bundler: #​77806
  • fix(next/image): bump sharp@0.34.1: #​77839
  • Turbopack builds: Remove canary-gate and add experimental warning: #​77808
  • feat: Disable char frequency analysis for mangler: #​77887
  • Set Turbopack env var for internal modules: #​77902
  • Don't externalize various new next/* entrypoints: #​77844
  • Revert "Fix: RESTORE_ACTION should not be thenable": #​77909
  • Fix resolve alternate bundler in monorepo: #​77913
  • Output server.mjs for standalone with type: module: #​77944
Example Changes
  • with-polyfills example: only link to specific browsers: #​77211
  • Add example for alternate bundler: #​77057
  • chore(examples): remove examples that can be v0'd: #​77349
  • Alternate bundler example: use canary version: #​77754
  • Fix Wasm example: #​77924
Misc Changes
  • [test] consolidate hmr test for react 18.3: #​76975
  • docs: update API example: #​76987
  • docs: add Pinterest Rich Pins metadata example: #​77025
  • fix(CI): Correctly call test/update-bundler-manifest.js script: #​77000
  • Update bundler development test manifest: #​77040
  • Update bundler production test manifest: #​77043
  • Update Turbopack development test manifest: #​77041
  • chore(github): remove /examples from contribution guidelines, remove examples issue template: #​77050
  • Turbopack: when reading a non yet existing cell from a in progress tasks, wait for the computation to finish: #​77029
  • Turbopack: wait before reading cells when the task is scheduled: #​77031
  • Turbopack: don't call individual() again: #​77048
  • Turbopack: create module graph strongly consistent: #​77051
  • Turbopack: Vc stability of ModuleGraph: #​77052
  • Turbopack: fix corrected time calcuation for trace server: #​77080
  • Turbopack: fewer manifests for static metadata: #​77087
  • Update Turbopack development test manifest: #​77071
  • Update bundler production test manifest: #​77069
  • Update bundler development test manifest: #​77068
  • Revert "Update rust toolchain to 2025-03-12": #​77103
  • perf(turbopack): Merge nodes with same starting point: #​76938
  • refactor(actions): Remove turbopack magic comments: #​77063
  • Update Turbopack development test manifest: #​77108
  • Turbopack: move must_use to actually have an effect: #​77111
  • Turbopack: align chunking with graph entries: #​76441
  • Turbopack: ChunkGroup in evaluated_chunk_group: #​76593
  • Turbopack: charset=utf-8 in data-url source maps: #​77112
  • Update bundler production test manifest: #​77107
  • Update bundler development test manifest: #​77106
  • Update Turbopack production test manifest: #​77109
  • docs(scripts): update Script -> beforeInteractive docs: #​77136
  • Add doc for instrumentation client hook: #​77134
  • docs(scripts): missing 'soon': #​77137
  • doc: diff between instrumentation vs instrumentation-client: #​77143
  • Alternate bundler: add index.d.ts types to plugin: #​77144
  • Alternate bundler: Add react-refresh as a dependency of plugin: #​77142
  • build: Update swc_core to v16.6.0: #​77155
  • Allow building node-pty in tests: #​77187
  • Don't mark ppr-errors Turbopack dev tests as failed: #​76951
  • Bump lightningcss: #​77132
  • Update Turbopack production test manifest: #​77183
  • Turbopack: fix graph layout segment optimization: #​77094
  • Turbopack: split up server actions modules for better treeshaking: #​76877
  • Turbopack: conditional parse in apply_module_type: #​77191
  • build: Update swc_core to v16.6.2: #​77194
  • Turbopack: more tracing: #​75351
  • Update bundler development test manifest: #​77180
  • Better failure tracking for middleware-custom-matchers-i18n: #​76974
  • Update bundler production test manifest: #​77179
  • fix(test/e2e/prerender): Remove race condition in test: #​77222
  • Update Turbopack production test manifest: #​77228
  • Update Turbopack development test manifest: #​77227
  • [Turbopack] basic production chunking for CSS: #​75049
  • docs: optimizing local dev: #​77140
  • Update bundler production test manifest: #​77225
  • devlow-bench: wait for complete ready for server startup event: #​77217
  • fix(CI): Re-enable retries for bundler integration tests: #​77265
  • Turbopack: handle non chunkable modules in module batches: #​77282
  • Update Turbopack development test manifest: #​77276
  • Update Turbopack production test manifest: #​77275
  • Turbopack: avoid single css chunks when there is only a single chunk item: #​77283
  • Update bundler development test manifest: #​77272
  • Update bundler production test manifest: #​77273
  • Turbopack: compute ordered entries in module batches: #​77294
  • Update Turbopack production test manifest: #​77316
  • Update Turbopack development test manifest: #​77317
  • Update bundler production test manifest: #​77314
  • fix(turbopack): Call .minify() of lightningcss StyleSheet: #​77313
  • fix(CI build_and_deploy): Use a larger fetch-depth for build-native job: #​77307
  • chore(turbopack): Fix a few syntactic nits: #​77310
  • Update bundler development test manifest: #​77315
  • Turbopack: refactor CssEmbed to avoid creating a chunk item: #​77303
  • fix: Update swc_core and use rayon instead of chili: #​77338
  • Fix chakra link: #​77280
  • Update Turbopack production test manifest: #​77366
  • Update Turbopack development test manifest: #​77365
  • Turbopack: ignore static asset imports for Edge: #​77382
  • Update bundler development test manifest: #​77364
  • docs: clarify middleware use cases: #​77438
  • fix(turbopack-bench): Limit copy_dir concurrency to avoid running out of file descriptors: #​77468
  • docs: fix typo: #​77483
  • Update swc_core to v16.10.0: #​77489
  • fix(turbopack): Use strongly consistent reads for sourcemaps in napi FFI boundary: #​77511
  • Update mappings in launch.json to improve debugging in VSCode: #​76559
  • chore(ci): Configure codspeed: #​76884
  • Update bundler production test manifest: #​77602
  • Update bundler development test manifest: #​77603
  • Update Turbopack development test manifest: #​77605
  • Update Turbopack production test manifest: #​77604
  • Turbopack build: Fix symbolic-file-links test: #​77615
  • Update pnpm swc-build-native's file path: #​77623
  • fix: Use standard PostCSS configuration in create-next-app format for ecosystem compatibility: #​77376
  • Turbopack build: Fix basepath test: #​77630
  • Turbopack: disable pages dir css test cases: #​77380
  • Update bundler development test manifest: #​77627
  • Update Turbopack development test manifest: #​77628
  • Update bundler production test manifest: #​77626
  • refactor(turbo-tasks): Make TraceRawVcs a supertrait of TaskInput: #​77397
  • refactor(turbo-tasks): Make TraceRawVcs a supertrait of MagicAny: #​77596
  • fix(turbopack): Recognize urls starting with // as external: #​77526
  • Update CI build caching docs to include bun and other package manager: #​77633
  • fix(turbopack): Fix panic while tree shaking optimization: #​77492
  • fix(turbopack): Prevent duplicate in tree shaking: #​77491
  • Turbopack: Skip ssr processing when next/dynamic ssr: false: #​77636
  • Turbopack Build: CSR bailout test skip check for file path: #​77639
  • Turbopack: fix side effects optimization bug: #​77640
  • Turbopack: add tracing for fetch calls: #​77673
  • [test] Update stale snapshots: #​77680
  • Turbopack: fix bug in handling of module batches: #​77638
  • pack-next: use default --js-build as option instead of --no-js-build: #​77686
  • Turbopack: Allow overriding tsconfig path via next-config: #​77563
  • Scripts: migrate unpack-next to TypeScript: #​77538
  • chore(turbopack): Make TaskInputs use ResolvedVc: #​77700
  • Getting Started Docs: Add Metadata and OG images page: #​74077
  • Getting Started Docs: Add Upgrade page: #​77717
  • Docs IA 2.0: Rename Examples to Guides: #​77722
  • build: Update swc_core to v19.0.0: #​77669
  • Add Josh to Turbopack team for created-by label: #​77738
  • Turbopack: use better ident for worker chunk group: #​77731
  • chore(turbo-tasks): Remove redundant ast-grep lint rule: #​77701
  • fix(docs): update error type in notFound function description: #​77503
  • Update bundler development test manifest: #​77706
  • Update Turbopack production test manifest: #​77709
  • Turbopack: refactor resolve_url_reference to avoid chunk_path: #​77732
  • Update Turbopack development test manifest: #​77708
  • Port "app-document" test to e2e: #​77748
  • [ci]: skip build-windows job for docs only change: #​77743
  • Update bundler production test manifest: #​77707
  • chore(turbo-tasks): Audit all remaining uses of Vc in a struct: #​77756
  • docs: instrumentation-client follow up: #​77752
  • [test] Get rid of unrelated "Invalid hook call" error from tests using styled-components: #​77736
  • Turbopack: keep side-effect-full imports: #​76545
  • Docs: Recommend inline use server and update examples: #​77770
  • Revert "Docs: Recommend inline use server and update examples": #​77771
  • doc: useLinkStatus: #​77648
  • Update Turbopack production test manifest: #​77767
  • Update bundler development test manifest: #​77765
  • [docs] fix lint issue in use link status doc: #​77785
  • doc: onNavigate: #​77647
  • Update bundler production test manifest: #​77764
  • doc: useLinkStatus doc follow-up: #​77790
  • Update Turbopack development test manifest: #​77766
  • [ci] remove needs build-native for lint job: #​77787
  • test(examples): update turbopack manifest: #​75092
  • [test] fix bad test fixuture for perf test: #​77804
  • [test] fix react 19.1 related tests: #​77809
  • doc: onNavigate follow-up: #​77805
  • fix(turbopack): Apply hygiene if mangling is disabled: #​77815
  • Turbopack: omit empty source map when code starts with a new line: #​77734
  • [next-lint] test: remove eslint config snapshot testing: #​77818
  • Turbopack: avoid deriving css source map path from generated code path: #​77735
  • Turbopack: pass asset to chunk_path to allow to use content hash later: #​77772
  • Docs IA 2.0: Add Deep Dive section placeholder: #​77724
  • Turbopack: use document.currentScript instead of chunk path literal: #​77773
  • Turbopack: don't include client-fs assets in NFT: #​77799
  • Turbopack: enable content hashing in production: #​77775
  • Turbopack: correctly track await import("path") in static analysis: #​77811
  • fix(turbopack-cli): Make turbopack_cli::dev::source a persistent (non-transient) task: #​77798
  • [test] temporarily disable flaky test for react 18: #​77848
  • Update Turbopack production test manifest: #​77872
  • Rename process.env.TURBOPACK to process.env.IS_TURBOPACK_TEST for tests: #​77892
  • [test] consolidate missing tag dev test: #​77896
  • fix(Turbopack): Intermittent CapacityExceeded Error in Persistent Caching: #​77691
  • fix: flaky test detection needs to use new turbopack flag: #​77908
  • fix: apply Geist fonts correctly on default cna template: #​77237
  • Update bundler development test manifest: #​77884
  • Update bundler production test manifest: #​77885
  • Update Turbopack development test manifest: #​77886
  • Update bundler production test manifest: #​77914
  • Update bundler development test manifest: #​77915
  • fix(turbopack): Apply import_map option of swc_emotion correctly: #​71776
  • Turbopack: handle removed routes: #​77890
  • build: Update swc_core to v21.0.1: #​77918
  • IA 2.0: Review Getting Started Section: #​77921
  • test: attempt to de-flake rsc-basic: #​77934
  • docs: revert image 15.3 change until live: #​77941
  • Turbopack: remove CSS comments when minifying: #​77940
Credits

Huge thanks to @​raunofreiberg, @​huozhi, @​ijjk, @​timneutkens, @​gaojude, @​leerob, @​mezotv, @​bgw, @​samcx, @​ztanner, @​sokra, @​mischnic, @​wbinnssmith, @​kdy1, @​unstubbable, @​ahabhgk, @​ScriptedAlchemy, @​SukkaW, @​wyattjoh, @​eps1lon, @​Amirroid, @​Netail, @​lubieowoce, @​gnoff, @​jackwilson323, @​acdlite, @​sbougerel, @​kevva, @​kasperpeulen, @​Cy-Tek, @​dvoytenko, @​husseinraoouf, @​isBatak, @​iamkd, @​delbaoliveira, @​jantimon, @​padmaia, @​Bernardoow, @​styfle, @​devjiwonchoi, @​JamBalaya56562, and @​Marukome0743 for helping!

v15.2.5

Compare Source

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

Core Changes
  • Update swc_core and use rayon instead of chili (#​77338)
  • Update swc_core to v16.6.2 (#​77194)
  • Update swc_core to v16.6.0 (#​77155)
  • [og] fix vercel og build issue on windows (#​77650)
  • clean up useReducer code re dev indicator (#​77354)
  • [dev-overlay] ensure stripping overlay bundle in prod build (#​76976)
Credits

Huge thanks to @​huozhi, @​gaojude and @​kdy1 for helping!

v15.2.4

Compare Source

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

Core Changes
  • Match subrequest handling for edge and node (#​77474)
  • exclude images and static media from dev origin check (#​77417)
  • ensure /__next middleware URLs are included in the origin check (#​77416)
  • remove direct ip/port bypass in dev origin check (#​77414)
  • switch development origin verification to be opt-in rather than opt-out (#​77395)
Credits

Huge thanks to @​ijjk and @​ztanner for helping!

v15.2.3

Compare Source

[!NOTE]
This release is backporting bug fixes. It does not include all pending features/changes on canary.
This release contains a security patch for CVE-2025-29927.

Core Changes
  • Update default allowed origins list (#​77212)
  • unify allowed origin detection handling (#​77053)
  • Add dev warning for cross-origin and stabilize allowedDevOrigins (#​77044)
  • Ensure deploymentId is used for CSS preloads (#​77210)
  • Update middleware request header (#​77201)
  • [metadata] remove the default segement check for metadata rendering (#​77119)
  • [ts-hint] fix vscode type hint plugin enabling (#​77099)
  • [metadata] re-insert icons to head for streamed metadata (#​76915)
Credits

Huge thanks to @​ijjk, @​ztanner, and @​huozhi for helping!

v15.2.2

Compare Source

Core Changes
  • [dev-overlay] fix styling on overflow error messages, add button hover state: #​76771
  • Fix: respond 405 status code on OPTIONS request to SSG page: #​76767
  • [dev-overlay] Always show relative paths: #​76742
  • [metadata] remove the duplicate metadata in the error boundary: #​76791
  • Upgrade React from d55cc79b-20250228 to 443b7ff2-20250303: #​76804
  • [dev-overlay] Ignore animations on page load: #​76834
  • fix: remove useless set-cookie in action-handler: #​76839
  • Turbopack: handle task cancelation: #​76831
  • Upgrade React from 443b7ff2-20250303 to e03ac20f-20250305: #​76842
  • add types for __next_app__ module loading functions: #​74566
  • fix duplicated noindex when server action is triggered: #​76847
  • fix: don't drop queued actions when navigating: #​75362
  • [dev-overlay]: remove dependency on platform for focus trapping: #​76849
  • Turbopack: Add turbopack_load_by_url: #​76814
  • Add handling of origin in dev mode: #​76880
  • [dev-overlay] Stop grouping callstack frames into ignored vs. not ignored: #​76861
  • Upgrade React from e03ac20f-20250305 to 029e8bd6-20250306: #​76870
  • [dev-overlay] Increase padding if no x button present: #​76898
  • fix: prevent incorrect searchParams being applied on certain navs: #​76914
  • [dev-overlay] Dim ignore-listed callstack frames when shown: #​76862
Example Changes
  • chore(cna): update tailwind styles to be closer to non-tw cna: #​76647
Misc Changes
  • Fix canary only warning for devlow-bench: #​76772
  • [test] Add special placeholder if stackframes point into dist dir: #​76741
  • [test] Use new Redbox matchers in pages/ service-side-dev-errors: #​76779
  • [test] Use new Redbox matchers in app/ dynamic-error-trace: #​76783
  • [test] Use new Redbox matchers in app/ owner-stack-invalid-element-type: #​76786
  • [test] Use new Redbox matchers in app/ hook-functuon-names: #​76785
  • [test] Use new Redbox matchers in app/ undefined-default-export: #​76781
  • [test] Use new Redbox matchers in server-navigation-error: #​76787
  • [test] Fix flaky error-recovery test: #​76789
  • [test] Use new Redbox matchers in pages/ gssp-ssr-change-reloading: #​76788
  • [docs] update Tailwind CSS installation and configuration instructions: #​76259
  • docs: Tailwind v4: #​76801
  • chore(docs): update minimumCacheTTL example to 31 days: #​76796
  • Turbopack: improve sectioned source maps: #​76627
  • [test] Use new Redbox matchers in pages/ middleware-errors: #​76797
  • doc: use redirect in client components: #​76332
  • [docs] document experimental viewTransition flag: #​76832
  • docs(errors): remove confusing good-to-know since global-errors.tsx also show in dev as of 15.2: #​76825
  • Turbopack: don't use HashMap in manifests: #​76833
  • Update labeler.json: #​76828
  • Fix missing turbo command for rust-check: #​76851
  • fix(turbopack): Use correct SyntaxContext for __turbopack_esm__: #​73544
  • Cleanup pure span handling: #​76846
  • Turbopack: remove unused IncludeModulesModule: #​76868
  • Update test snapshots for alternative bundler [5/n]: #​76617
  • Update test snapshots for alternative bundler [6/n]: #​76768
  • [test] Use next.browser instead of webdriver in pages/ client-navigation: #​76867
  • fix(turbopack): Use vergen-git2 instead of shadow-rs for napi and next-api crates to fix stale git lock files: #​76773
  • Revert "fix(turbopack): Use vergen-git2 instead of shadow-rs for napi and next-api crates to fix stale git lock files": #​76879
  • build: Update swc_core to v16.4.0: #​76596
  • docs: update Turbopack docs: #​76799
  • build: Update lightningcss to v1.0.0-alpha.64: #​76856
  • build: Fix warning: #​76890
  • Turbopack: fix __dirname: #​76902
  • Turbopack: deterministic server action order: #​76905
  • docs: reword the docs of veiw transition flag: #​76841
  • fix(turbopack): Use vergen-gitcl instead of shadow-rs (or vergen-git2) for napi and next-api crates to fix stale git lock files: #​76889
  • Turbopack: ensure default layout is provided in default not-found entrypoint: #​76912
  • chore(github): add moar labels: #​76922
  • [test] Use new Redbox matchers in pages/ client-navigation/rendering: #​76798
  • docs: fix create-next-app cli title: #​76908
Credits

Huge thanks to @​pranathip, @​gaojude, @​ijjk, @​eps1lon, @​Nayeem-XTREME, @​leerob, @​styfle, @​samcx, @​sokra, @​huozhi, @​raunofreiberg, @​mischnic, @​lubieowoce, @​unstubbable, @​ztanner, @​kdy1, @​timneutkens, @​wbinnssmith, @​bgw, and @​oscr for helping!


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about these updates again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [eslint-config-next](https://nextjs.org/docs/app/api-reference/config/eslint) ([source](https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next)) | devDependencies | minor | [`15.2.1` -> `15.4.2`](https://renovatebot.com/diffs/npm/eslint-config-next/15.2.1/15.4.2) | | [next](https://nextjs.org) ([source](https://github.com/vercel/next.js)) | dependencies | minor | [`15.2.1` -> `15.4.2`](https://renovatebot.com/diffs/npm/next/15.2.1/15.4.2) | --- > ⚠️ **Warning** > > Some dependencies could not be looked up. Check the Dependency Dashboard for more information. --- ### Release Notes <details> <summary>vercel/next.js (eslint-config-next)</summary> ### [`v15.4.2`](https://github.com/vercel/next.js/releases/tag/v15.4.2) [Compare Source](https://github.com/vercel/next.js/compare/v15.4.1...v15.4.2) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - pages router metadata bugs with React 19 ([#&#8203;81733](https://github.com/vercel/next.js/issues/81733)) - \[metadata] replace for initial body icon case ([#&#8203;81688](https://github.com/vercel/next.js/issues/81688)) - Ensure custom NextServer config is honored ([#&#8203;81681](https://github.com/vercel/next.js/issues/81681)) ##### Credits Huge thanks to [@&#8203;huozhi](https://github.com/huozhi), [@&#8203;ijjk](https://github.com/ijjk), and [@&#8203;ztanner](https://github.com/ztanner) for helping! ### [`v15.4.1`](https://github.com/vercel/next.js/releases/tag/v15.4.1) [Compare Source](https://github.com/vercel/next.js/compare/v15.4.0...v15.4.1) > \[!TIP]\ > **Check out our Next v15.4 [Blog Post](https://nextjs.org/blog/next-15-4) to learn more about this release.** ##### Core Changes - \[next-server] fix params duplicate in query after rewrite: [#&#8203;77939](https://github.com/vercel/next.js/issues/77939) - \[next-server] preserve rsc query for rsc redirects: [#&#8203;77963](https://github.com/vercel/next.js/issues/77963) - Turbopack: fix a bug where marking a task a completed causes a panic when reading the output: [#&#8203;77922](https://github.com/vercel/next.js/issues/77922) - Turbopack warning spelling fix: [#&#8203;77999](https://github.com/vercel/next.js/issues/77999) - Allow URL schemes that include `+`, `-` or `.`: [#&#8203;77932](https://github.com/vercel/next.js/issues/77932) - \[dev-overlay] Remove unused hydration error related code: [#&#8203;77929](https://github.com/vercel/next.js/issues/77929) - \[dev-overlay] Unify error deduplication logic: [#&#8203;78017](https://github.com/vercel/next.js/issues/78017) - fix: use the match result after matching using the matched path header: [#&#8203;77994](https://github.com/vercel/next.js/issues/77994) - Upgrade React from `3fbfb9ba-20250409` to `c44e4a25-20250409`: [#&#8203;78031](https://github.com/vercel/next.js/issues/78031) - Move unhandled rejection handling to shared path: [#&#8203;77997](https://github.com/vercel/next.js/issues/77997) - fix: ensure app router not found works when deployed with pages i18n config: [#&#8203;77905](https://github.com/vercel/next.js/issues/77905) - Uninstall existing uncaughtException listeners to prevent the process from crashing: [#&#8203;78042](https://github.com/vercel/next.js/issues/78042) - Experimental bfcache: Restore state w/ <Activity>: [#&#8203;77992](https://github.com/vercel/next.js/issues/77992) - Add graceful error fallback for bots requests: [#&#8203;77916](https://github.com/vercel/next.js/issues/77916) - Upgrade React from `c44e4a25-20250409` to `1d6c8168-20250411`: [#&#8203;78067](https://github.com/vercel/next.js/issues/78067) - \[next-server] remove unnecessary query shallow copy: [#&#8203;78003](https://github.com/vercel/next.js/issues/78003) - \[dev-overlay] disable copy button when clipboard is not available: [#&#8203;78101](https://github.com/vercel/next.js/issues/78101) - \[dev-overlay] Stop stashing React error details on error instances: [#&#8203;77975](https://github.com/vercel/next.js/issues/77975) - \[dynamicIO] Model invalid dynamic on empty shells: [#&#8203;77270](https://github.com/vercel/next.js/issues/77270) - fix: bump `image-size@1.2.1`: [#&#8203;78149](https://github.com/vercel/next.js/issues/78149) - Handle graceful fallback for custom error boundaries: [#&#8203;78121](https://github.com/vercel/next.js/issues/78121) - \[dev-overlay] Stop squashing hydration related errors in App Router: [#&#8203;78140](https://github.com/vercel/next.js/issues/78140) - \[test] Enable `strictNullChecks` in test utils: [#&#8203;78142](https://github.com/vercel/next.js/issues/78142) - Document Turbopack trace viewer: [#&#8203;78184](https://github.com/vercel/next.js/issues/78184) - \[dev-overlay] Fix error dialog resizing logic: [#&#8203;78144](https://github.com/vercel/next.js/issues/78144) - Include types in published `eslint-plugin-next`: [#&#8203;78109](https://github.com/vercel/next.js/issues/78109) - \[dev-overlay] Stop appending wrong Owner Stacks to SSR-only shell errors: [#&#8203;77302](https://github.com/vercel/next.js/issues/77302) - \[dev-overlay] Add dedicated label for recoverable errors: [#&#8203;78186](https://github.com/vercel/next.js/issues/78186) - \[chore] remove unused \__NEXT_PRIVATE_RUNTIME_TYPE: [#&#8203;78230](https://github.com/vercel/next.js/issues/78230) - Preserve slashes when custom URL schemes are used in redirects: [#&#8203;78176](https://github.com/vercel/next.js/issues/78176) - ignore-list published sources if they have a sourcemap: [#&#8203;78242](https://github.com/vercel/next.js/issues/78242) - Upgrade React from `1d6c8168-20250411` to `39cad7af-20250411`: [#&#8203;78152](https://github.com/vercel/next.js/issues/78152) - Turbopack: add test case for persistent caching: [#&#8203;77030](https://github.com/vercel/next.js/issues/77030) - Upgrade React from ` 39cad7af-20250411 ` to `b04254fd-20250415`: [#&#8203;78253](https://github.com/vercel/next.js/issues/78253) - fix: alternate bundler support for dropping client pages in AMP: [#&#8203;77601](https://github.com/vercel/next.js/issues/77601) - \[errors] refactor default global-error into a separate file: [#&#8203;78182](https://github.com/vercel/next.js/issues/78182) - \[metadata] render streaming metadata on the top level: [#&#8203;77620](https://github.com/vercel/next.js/issues/77620) - \[metadata] skip head cache in default slot: [#&#8203;78206](https://github.com/vercel/next.js/issues/78206) - chore: Backport SWC-based RC optimization ([#&#8203;78260](https://github.com/vercel/next.js/issues/78260)) - fix: bump image-size@1.2.1 ([#&#8203;78164](https://github.com/vercel/next.js/issues/78164)) - `@next/mdx`: Use stable turbopack config options: [#&#8203;78261](https://github.com/vercel/next.js/issues/78261) - Upgrade React from `b04254fd-20250415` to `4a36d3ea-20250416`: [#&#8203;78297](https://github.com/vercel/next.js/issues/78297) - Add graceful error boundary for bots requests: [#&#8203;78298](https://github.com/vercel/next.js/issues/78298) - make sure eslint-plugin-next is built when running 'pnpm dev': [#&#8203;78305](https://github.com/vercel/next.js/issues/78305) - Migrate pages API routes to handler interface: [#&#8203;78166](https://github.com/vercel/next.js/issues/78166) - Update middleware public/static matching: [#&#8203;78325](https://github.com/vercel/next.js/issues/78325) - Fix dynamic route param encoding: [#&#8203;78326](https://github.com/vercel/next.js/issues/78326) - \[Turbopack] refactor persistent caching from log based to cow approach: [#&#8203;76234](https://github.com/vercel/next.js/issues/76234) - Add onInvalidate option to router.prefetch: [#&#8203;77880](https://github.com/vercel/next.js/issues/77880) - Reserve bandwidth for most recently hovered link : [#&#8203;78362](https://github.com/vercel/next.js/issues/78362) - fix: handle incremental PPR with client segment cache: [#&#8203;78387](https://github.com/vercel/next.js/issues/78387) - fix: amphtml-validator WASM errors (for real): [#&#8203;78379](https://github.com/vercel/next.js/issues/78379) - Turbopack: Remove `next start --turbopack`: [#&#8203;78384](https://github.com/vercel/next.js/issues/78384) - Upgrade React from `4a36d3ea-20250416` to `bc6184dd-20250417`: [#&#8203;78322](https://github.com/vercel/next.js/issues/78322) - \[chore] remove dead code missing required error: [#&#8203;78403](https://github.com/vercel/next.js/issues/78403) - \[ts-next-plugin] remove typescript vfs and related metadata plugin: [#&#8203;78237](https://github.com/vercel/next.js/issues/78237) - \[ts-next-plugin] auto import metadata type: [#&#8203;78258](https://github.com/vercel/next.js/issues/78258) - \[ts-next-plugin] warn to add correct type for metadata exports: [#&#8203;78254](https://github.com/vercel/next.js/issues/78254) - \[ts-next-plugin] fix: validate metadata node before checking type: [#&#8203;78414](https://github.com/vercel/next.js/issues/78414) - \[errors] fix edge server initial error is not sent via hmr: [#&#8203;78415](https://github.com/vercel/next.js/issues/78415) - misc: use correct capitals for React terms: [#&#8203;78445](https://github.com/vercel/next.js/issues/78445) - Skip empty prefetch request for dynamic routes: [#&#8203;78436](https://github.com/vercel/next.js/issues/78436) - Turbopack: don’t warn about webpack being configured when `experimental.turbo` is set: [#&#8203;77998](https://github.com/vercel/next.js/issues/77998) - Upgrade React from `bc6184dd-20250417` to `914319ae-20250423`: [#&#8203;78468](https://github.com/vercel/next.js/issues/78468) - Update turbopack to syn2: [#&#8203;78385](https://github.com/vercel/next.js/issues/78385) - \[next-server] ensure prepare is done before preloading entry: [#&#8203;78454](https://github.com/vercel/next.js/issues/78454) - Upgrade React from `914319ae-20250423` to `197d6a04-20250424`: [#&#8203;78516](https://github.com/vercel/next.js/issues/78516) - \[dev-overlay] Move `error.name` to label: [#&#8203;78198](https://github.com/vercel/next.js/issues/78198) - \[ts-next-plugin] update log for utils: [#&#8203;78538](https://github.com/vercel/next.js/issues/78538) - \[ppr] Route Cardinality Updates: [#&#8203;78476](https://github.com/vercel/next.js/issues/78476) - Turbopack: support ignore comments for NFT fs access tracing: [#&#8203;78460](https://github.com/vercel/next.js/issues/78460) - Externalize manifest loading in pages-api: [#&#8203;78358](https://github.com/vercel/next.js/issues/78358) - Update font data: [#&#8203;78525](https://github.com/vercel/next.js/issues/78525) - refactor: skip the prospective render when there's a more specific route to be rendered: [#&#8203;78555](https://github.com/vercel/next.js/issues/78555) - fix: bodySizeLimit error responses + limit for non-multipart actions: [#&#8203;77746](https://github.com/vercel/next.js/issues/77746) - \[dynamicIO] Do not skip dynamic validation when metadata is dynamic: [#&#8203;78574](https://github.com/vercel/next.js/issues/78574) - \[dynamicIO] log dynamic validation errors consistently in dev: [#&#8203;78575](https://github.com/vercel/next.js/issues/78575) - \[ts-next-plugin] clean up unused proxy: [#&#8203;78539](https://github.com/vercel/next.js/issues/78539) - \[dynamicIO] Disallow only dynamic metadata: [#&#8203;78576](https://github.com/vercel/next.js/issues/78576) - fix: make webpack handle "use cache" in node_modules : [#&#8203;78606](https://github.com/vercel/next.js/issues/78606) - Use React's `prerender` function for `"use cache"` with Dynamic IO: [#&#8203;78382](https://github.com/vercel/next.js/issues/78382) - Use `node:` prefixed in ESM emit of standalone server.js: [#&#8203;78624](https://github.com/vercel/next.js/issues/78624) - feat: add ravendb library to server-external-packages.json: [#&#8203;78319](https://github.com/vercel/next.js/issues/78319) - docs: fix typo in ppr.ts: [#&#8203;78590](https://github.com/vercel/next.js/issues/78590) - Pre-compile busboy dependency: [#&#8203;78634](https://github.com/vercel/next.js/issues/78634) - Pages API handler interface follow-ups: [#&#8203;78638](https://github.com/vercel/next.js/issues/78638) - Repeat fix in [#&#8203;78387](https://github.com/vercel/next.js/issues/78387) for routes without params: [#&#8203;78568](https://github.com/vercel/next.js/issues/78568) - \[dev-tools] Fix `width` transition logic: [#&#8203;78635](https://github.com/vercel/next.js/issues/78635) - \[ts-next-plugin] fix: warn only if no type: [#&#8203;78628](https://github.com/vercel/next.js/issues/78628) - \[ts-next-plugin] fix: warn only if no type for separate export: [#&#8203;78629](https://github.com/vercel/next.js/issues/78629) - chore: Drop `@swc/counter`: [#&#8203;78674](https://github.com/vercel/next.js/issues/78674) - Turbopack: use small thread local collector that flushes to global collector: [#&#8203;78343](https://github.com/vercel/next.js/issues/78343) - Upgrade React from `197d6a04-20250424` to `5dc00d6b-20250428`: [#&#8203;78640](https://github.com/vercel/next.js/issues/78640) - Fix bad decoding for x-matched-path header: [#&#8203;78677](https://github.com/vercel/next.js/issues/78677) - Fix pages API rewrite case: [#&#8203;78644](https://github.com/vercel/next.js/issues/78644) - chore: update rspack to 1.3.8: [#&#8203;78485](https://github.com/vercel/next.js/issues/78485) - Always apply render preparations after running an action: [#&#8203;77898](https://github.com/vercel/next.js/issues/77898) - Exclude config package from bundling: [#&#8203;78671](https://github.com/vercel/next.js/issues/78671) - Upgrade builtin babel packages: [#&#8203;78673](https://github.com/vercel/next.js/issues/78673) - Upgrade loader-utils v2 to latest patch: [#&#8203;78707](https://github.com/vercel/next.js/issues/78707) - \[Link] Add prefetch="auto" option: [#&#8203;78689](https://github.com/vercel/next.js/issues/78689) - \[build-sourcemaps] Ensure errors during prerender can be sourcemapped: [#&#8203;78709](https://github.com/vercel/next.js/issues/78709) - Upgrade React from `5dc00d6b-20250428` to `408d055a-20250430`: [#&#8203;78715](https://github.com/vercel/next.js/issues/78715) - build: Fix minifier options for webpack builds: [#&#8203;78717](https://github.com/vercel/next.js/issues/78717) - refactor(next-swc): Do not amend minifier options from Rust code: [#&#8203;78719](https://github.com/vercel/next.js/issues/78719) - Change stylistic ESLint TypeScript defaults: [#&#8203;78679](https://github.com/vercel/next.js/issues/78679) - fix: replace original request body after middleware execution: [#&#8203;77662](https://github.com/vercel/next.js/issues/77662) - remove `draft.isEnabled` setter from exotic draftMode wrappers: [#&#8203;77972](https://github.com/vercel/next.js/issues/77972) - Turbopack: limit compaction merging by size instead of count: [#&#8203;78669](https://github.com/vercel/next.js/issues/78669) - \[build-sourcemaps] Include codeframes in prod when sourcemaps are enabled: [#&#8203;78710](https://github.com/vercel/next.js/issues/78710) - feat: build lifecycle hooks - afterProductionCompile: [#&#8203;77345](https://github.com/vercel/next.js/issues/77345) - fix: make sure that the patched fetch cache set promise is properly awaited: [#&#8203;75971](https://github.com/vercel/next.js/issues/75971) - \[dev-overlay] Make badge draggable: [#&#8203;78716](https://github.com/vercel/next.js/issues/78716) - Turbopack: fix ESM project in standalone mode: [#&#8203;78774](https://github.com/vercel/next.js/issues/78774) - Revert "\[Link] Add prefetch="auto" option": [#&#8203;78820](https://github.com/vercel/next.js/issues/78820) - Downgrade React from `408d055a-20250430` to `197d6a04-20250424`: [#&#8203;78834](https://github.com/vercel/next.js/issues/78834) - Reland "\[Link] Add prefetch="auto" option": [#&#8203;78821](https://github.com/vercel/next.js/issues/78821) - build: Update `@swc/core` npm package to `v1.11.24`: [#&#8203;77668](https://github.com/vercel/next.js/issues/77668) - Turbopack: Implement regex support for matching webpack loaders: [#&#8203;78733](https://github.com/vercel/next.js/issues/78733) - Turbopack: Add support for `extension` regex in `@next/mdx`: [#&#8203;78734](https://github.com/vercel/next.js/issues/78734) - backport: fix(turbopack): Store persistence of wrapped task on RawVc::LocalOutput ([#&#8203;78488](https://github.com/vercel/next.js/issues/78488)) ([#&#8203;78883](https://github.com/vercel/next.js/issues/78883)) - [@&#8203;next/mdx](https://github.com/next/mdx): Use stable turbopack config options ([#&#8203;78880](https://github.com/vercel/next.js/issues/78880)) - Fix react-compiler: Fix detection of interest ([#&#8203;78879](https://github.com/vercel/next.js/issues/78879)) - Fix turbopack: Backport sourcemap bugfix ([#&#8203;78881](https://github.com/vercel/next.js/issues/78881)) - \[next-server] preserve rsc query for rsc redirects ([#&#8203;78876](https://github.com/vercel/next.js/issues/78876)) - Update middleware public/static matching ([#&#8203;78875](https://github.com/vercel/next.js/issues/78875)) - \[dev-overlay] Polish mobile view: [#&#8203;78863](https://github.com/vercel/next.js/issues/78863) - \[dev-overlay] Consider scrollbar width for drag positioning: [#&#8203;78865](https://github.com/vercel/next.js/issues/78865) - Add handling for setting deployment id via cookie: [#&#8203;78841](https://github.com/vercel/next.js/issues/78841) - Run export child process with runtime's default `max-old-space-size`: [#&#8203;78712](https://github.com/vercel/next.js/issues/78712) - \[dynamicIO] cache tracking for import(): [#&#8203;74152](https://github.com/vercel/next.js/issues/74152) - \[dev-overlay] solidate the line number parsing: [#&#8203;78868](https://github.com/vercel/next.js/issues/78868) - Update send to v0.18.0: [#&#8203;78816](https://github.com/vercel/next.js/issues/78816) - Scope `runInCleanSnapshot` to Work Store: [#&#8203;78930](https://github.com/vercel/next.js/issues/78930) - Removes onNavigate from transition scope: [#&#8203;78605](https://github.com/vercel/next.js/issues/78605) - Add nonce handling from CSP in pages router: [#&#8203;78936](https://github.com/vercel/next.js/issues/78936) - Ensure manual nonce on Script works as expected: [#&#8203;78939](https://github.com/vercel/next.js/issues/78939) - Treat \_debugInfo as a wellknown property for sync request data access purposes: [#&#8203;78942](https://github.com/vercel/next.js/issues/78942) - chore(CI): Run rspack tests in build_and_test.yml: [#&#8203;78757](https://github.com/vercel/next.js/issues/78757) - bugfix: Fix a bug that caused conflicting assets when adding a child compiler: [#&#8203;78011](https://github.com/vercel/next.js/issues/78011) - \[Fix] Inverse prefetch segment for Pages routes: [#&#8203;78932](https://github.com/vercel/next.js/issues/78932) - Fix tracing of server actions imported by client components: [#&#8203;78968](https://github.com/vercel/next.js/issues/78968) - Revert "fix: alternate bundler support for dropping client page": [#&#8203;78974](https://github.com/vercel/next.js/issues/78974) - Fix `--no-mangling` for `"use cache"` functions: [#&#8203;78993](https://github.com/vercel/next.js/issues/78993) - chore: update rspack to 1.3.9: [#&#8203;78984](https://github.com/vercel/next.js/issues/78984) - \[not-found] Add global-not-found convention: [#&#8203;78783](https://github.com/vercel/next.js/issues/78783) - \[not-found] support metadata exports of global-not-found: [#&#8203;78961](https://github.com/vercel/next.js/issues/78961) - Prevent `"use cache"` timeout errors from being caught in userland code: [#&#8203;78998](https://github.com/vercel/next.js/issues/78998) - patch react via recast instead of string replacements: [#&#8203;78916](https://github.com/vercel/next.js/issues/78916) - \[link] Avoid inlining of `LinkProps` in emitted declarations: [#&#8203;78773](https://github.com/vercel/next.js/issues/78773) - \[next-config-ts] fix: read tsconfig file using TypeScript API: [#&#8203;79055](https://github.com/vercel/next.js/issues/79055) - Replace node:url usage in server-utils: [#&#8203;79094](https://github.com/vercel/next.js/issues/79094) - \[build-sourcemaps] Remove unused static workers: [#&#8203;79107](https://github.com/vercel/next.js/issues/79107) - fix: cli test failed when using rspack: [#&#8203;79081](https://github.com/vercel/next.js/issues/79081) - \[build-sourcemaps] Allow inspecting prerender worker: [#&#8203;79098](https://github.com/vercel/next.js/issues/79098) - Add initial modifyConfig hook: [#&#8203;79162](https://github.com/vercel/next.js/issues/79162) - Re-land updated bundler for pre-bundling: [#&#8203;79164](https://github.com/vercel/next.js/issues/79164) - \[dynamicIO] model pathname access in metadata as async : [#&#8203;79136](https://github.com/vercel/next.js/issues/79136) - Update font data: [#&#8203;79179](https://github.com/vercel/next.js/issues/79179) - bugfix (pages): assetPrefix should not cause hard nav in development: [#&#8203;79176](https://github.com/vercel/next.js/issues/79176) - Reland "Ensure mangling is disabled for dev runtime builds ([#&#8203;75297](https://github.com/vercel/next.js/issues/75297))": [#&#8203;79201](https://github.com/vercel/next.js/issues/79201) - docs: add graceful error boundary example: [#&#8203;77781](https://github.com/vercel/next.js/issues/77781) - turbo-tasks: Encode location information into panics: [#&#8203;78945](https://github.com/vercel/next.js/issues/78945) - feat(turbopack): Add basic compilation event support: [#&#8203;78785](https://github.com/vercel/next.js/issues/78785) - chore(dev-overlay): Minor cleanups to useDelayedRender hook: [#&#8203;79119](https://github.com/vercel/next.js/issues/79119) - Update font data: [#&#8203;79227](https://github.com/vercel/next.js/issues/79227) - Rename `define-env-plugin.ts` to `define-env.ts`: [#&#8203;79224](https://github.com/vercel/next.js/issues/79224) - Always pass implicit/soft tags into the `CacheHandler.get` method: [#&#8203;79213](https://github.com/vercel/next.js/issues/79213) - fix(dev-overlay): Ignore right clicks on the indicator draggable: [#&#8203;79120](https://github.com/vercel/next.js/issues/79120) - Fix dangling promise in unstable-cache: [#&#8203;79248](https://github.com/vercel/next.js/issues/79248) - Revert "Partial Fallback Prerendering Route Shells ([#&#8203;69282](https://github.com/vercel/next.js/issues/69282))": [#&#8203;79258](https://github.com/vercel/next.js/issues/79258) - \[devtool] initial support for segment explorer: [#&#8203;78858](https://github.com/vercel/next.js/issues/78858) - Client router should discard stale prefetch entries for static pages: [#&#8203;79309](https://github.com/vercel/next.js/issues/79309) - \[dynamicIO] fix: do not apply import tracking transform in edge: [#&#8203;79284](https://github.com/vercel/next.js/issues/79284) - Turbopack build: Fix type: module with output: standalone: [#&#8203;79292](https://github.com/vercel/next.js/issues/79292) - \[TypeScript Plugin] Moved the diagnostics' positions to the prop's type instead of the value for client-boundary warnings: [#&#8203;79193](https://github.com/vercel/next.js/issues/79193) - Use `onPostpone` to determine if segment prefetch is partial: [#&#8203;79299](https://github.com/vercel/next.js/issues/79299) - Enable `ppr` when `dynamicIO` is enabled: [#&#8203;79302](https://github.com/vercel/next.js/issues/79302) - fix: replaceIdentifiersInAst takes an expression, not a string: [#&#8203;79196](https://github.com/vercel/next.js/issues/79196) - Remove DIO w/o PPR branch from `app-render.tsx`: [#&#8203;79303](https://github.com/vercel/next.js/issues/79303) - Remove prospective fallback prerenders: [#&#8203;79304](https://github.com/vercel/next.js/issues/79304) - Fixed rewrite param parsing for interception routes in Vercel deployments: [#&#8203;79204](https://github.com/vercel/next.js/issues/79204) - \[build-sourcemaps] Sourcemap errors during prerender if `experimental.enablePrerenderSourceMaps` is enabled: [#&#8203;79109](https://github.com/vercel/next.js/issues/79109) - \[release] use `@changesets/changelog-github` for changelog format: [#&#8203;79040](https://github.com/vercel/next.js/issues/79040) - next.config.ts: Implement `compiler.defineServer` for server-only constants: [#&#8203;79225](https://github.com/vercel/next.js/issues/79225) - Always show warning if fetch cache limit hit: [#&#8203;79384](https://github.com/vercel/next.js/issues/79384) - feat(turbopack) Added sending events to log how long writing entrypoints to disk takes.: [#&#8203;79256](https://github.com/vercel/next.js/issues/79256) - \[release] use `@changesets/changelog-github` for changelog format: [#&#8203;79040](https://github.com/vercel/next.js/issues/79040) - next.config.ts: Implement `compiler.defineServer` for server-only constants: [#&#8203;79225](https://github.com/vercel/next.js/issues/79225) - Always show warning if fetch cache limit hit: [#&#8203;79384](https://github.com/vercel/next.js/issues/79384) - feat(turbopack) Added sending events to log how long writing entrypoints to disk takes.: [#&#8203;79256](https://github.com/vercel/next.js/issues/79256) - Only share incremental cache for edge in next start ([#&#8203;79389](https://github.com/vercel/next.js/issues/79389)) - \[TypeScript Plugin] Match method signature (`someFunc(): void`) type for client boundary warnings: [#&#8203;79144](https://github.com/vercel/next.js/issues/79144) - Only share incremental cache for edge in next start: [#&#8203;79386](https://github.com/vercel/next.js/issues/79386) - fix: rspack framework and lib cacheGroups: [#&#8203;79172](https://github.com/vercel/next.js/issues/79172) - Make sure bundle analyzer does not trigger warning with turbopack: [#&#8203;79399](https://github.com/vercel/next.js/issues/79399) - \[dynamicIO] Avoid timeout errors with dynamic params in `"use cache"`: [#&#8203;78882](https://github.com/vercel/next.js/issues/78882) - Implement initial handler interface for pages routes: [#&#8203;79260](https://github.com/vercel/next.js/issues/79260) - \[Segment Cache] Fix: Ensure server references can be prerendered: [#&#8203;79448](https://github.com/vercel/next.js/issues/79448) - \[dynamicIO] Avoid timeout errors with dynamic params in `"use cache"`: [#&#8203;78882](https://github.com/vercel/next.js/issues/78882) - Implement initial handler interface for pages routes: [#&#8203;79260](https://github.com/vercel/next.js/issues/79260) - \[Segment Cache] Fix: Ensure server references can be prerendered: [#&#8203;79448](https://github.com/vercel/next.js/issues/79448) - \[Segment Cache] Fix: Skew during dynamic prefetch: [#&#8203;79416](https://github.com/vercel/next.js/issues/79416) - \[dynamicIO] reimplement dynamicIO validation on prerender: [#&#8203;79414](https://github.com/vercel/next.js/issues/79414) - fix: remove redundant performance.measure usage: [#&#8203;79475](https://github.com/vercel/next.js/issues/79475) - \[devtools] Add a very minimal API for restarting the dev server: [#&#8203;79265](https://github.com/vercel/next.js/issues/79265) - Model prerender store as separate server and client scopes: [#&#8203;79429](https://github.com/vercel/next.js/issues/79429) - fix: Merge link header from middleware with the ones from React ([#&#8203;73431](https://github.com/vercel/next.js/issues/73431)) - fix(edge): run after() if request is cancelled mid-streaming ([#&#8203;76013](https://github.com/vercel/next.js/issues/76013)) - gate segmentCache branch in base-server ([#&#8203;79505](https://github.com/vercel/next.js/issues/79505)) - Model prerender store as separate server and client scopes: [#&#8203;79429](https://github.com/vercel/next.js/issues/79429) - Use metadata for cache entry status code: [#&#8203;79512](https://github.com/vercel/next.js/issues/79512) - fix(dev-overlay): Better handle edge-case file paths in launchEditor: [#&#8203;79526](https://github.com/vercel/next.js/issues/79526) - \[build-sourcemaps] Increase stacktrace limit during prerender: [#&#8203;79498](https://github.com/vercel/next.js/issues/79498) - fix: Rspack not skip .d.ts file: [#&#8203;79285](https://github.com/vercel/next.js/issues/79285) - Revert "\[next-server] skip setting vary header for basic routes": [#&#8203;79426](https://github.com/vercel/next.js/issues/79426) - \[ppr] Narrow condition for fallback shell generation at runtime: [#&#8203;79565](https://github.com/vercel/next.js/issues/79565) - Turbopack: derive de/serialize for loader config: [#&#8203;79581](https://github.com/vercel/next.js/issues/79581) - Update font data: [#&#8203;79642](https://github.com/vercel/next.js/issues/79642) - Avoid bundling dev overlay in page template: [#&#8203;79641](https://github.com/vercel/next.js/issues/79641) - Enable preview builds for forks: [#&#8203;79648](https://github.com/vercel/next.js/issues/79648) - misc: remove leftover `clientInstrumentationHook` type: [#&#8203;79701](https://github.com/vercel/next.js/issues/79701) - cleanup(turbopack): Embed Global vs Specific channel type in the Rust type system: [#&#8203;79291](https://github.com/vercel/next.js/issues/79291) - \[dev-overlay] Show error overlay on any thrown value in /app: [#&#8203;79658](https://github.com/vercel/next.js/issues/79658) - \[dev-overlay] Move error handlers into dispatcher in /app: [#&#8203;79660](https://github.com/vercel/next.js/issues/79660) - Verify cache-busting param during segment prefetch: [#&#8203;79563](https://github.com/vercel/next.js/issues/79563) - update(turbopack): Update the messaging UX for timing writing files to disk: [#&#8203;79469](https://github.com/vercel/next.js/issues/79469) - \[dev-overlay] Move Redbox open/close into dispatcher: [#&#8203;79698](https://github.com/vercel/next.js/issues/79698) - chore: update rspack to 1.3.12: [#&#8203;79428](https://github.com/vercel/next.js/issues/79428) - Enable repeated `tsc` runs in `packages/next` without having to build first: [#&#8203;79782](https://github.com/vercel/next.js/issues/79782) - Run `tsc` in watch mode during `pnpm dev`: [#&#8203;79785](https://github.com/vercel/next.js/issues/79785) - Reinstate `vary` ([#&#8203;79939](https://github.com/vercel/next.js/issues/79939)) - fix(next-swc): Fix interestingness detection for React Compiler ([#&#8203;79558](https://github.com/vercel/next.js/issues/79558)) - fix(next-swc): Fix react compiler usefulness detector ([#&#8203;79480](https://github.com/vercel/next.js/issues/79480)) - fix(dev-overlay): Better handle edge-case file paths in launchEditor ([#&#8203;79526](https://github.com/vercel/next.js/issues/79526)) - Client router should discard stale prefetch entries for static pages ([#&#8203;79362](https://github.com/vercel/next.js/issues/79362)) - fix: preload fonts in template.js: [#&#8203;79417](https://github.com/vercel/next.js/issues/79417) - feat: using eval source map plugin for Rspack: [#&#8203;79199](https://github.com/vercel/next.js/issues/79199) - feat: using builtin CssChunkingPlugin for rspack: [#&#8203;79762](https://github.com/vercel/next.js/issues/79762) - fix(napi): Update generated types, add alias for RcStr: [#&#8203;79915](https://github.com/vercel/next.js/issues/79915) - \[dev-overlay] Fix highlighted line cut off on scroll: [#&#8203;79930](https://github.com/vercel/next.js/issues/79930) - fix(next/font): allow custom font-family in declarations: [#&#8203;76274](https://github.com/vercel/next.js/issues/76274) - Remove `subissues` from `Issue`: [#&#8203;79988](https://github.com/vercel/next.js/issues/79988) - \[devtools] Add a query parameter to restart endpoint to invalidate the persistent cache: [#&#8203;79425](https://github.com/vercel/next.js/issues/79425) - Implement handler interface for app-page: [#&#8203;79568](https://github.com/vercel/next.js/issues/79568) - Migrate app route to handler interface: [#&#8203;80008](https://github.com/vercel/next.js/issues/80008) - Turbopack Build: Fix underscore path tests: [#&#8203;79778](https://github.com/vercel/next.js/issues/79778) - Fix watchmode for `taskr` tasks: [#&#8203;80020](https://github.com/vercel/next.js/issues/80020) - Update font data: [#&#8203;80036](https://github.com/vercel/next.js/issues/80036) - Fix defunct ESLint overrides: [#&#8203;80053](https://github.com/vercel/next.js/issues/80053) - \[devtools] Add an endpoint to poll for server status: [#&#8203;80005](https://github.com/vercel/next.js/issues/80005) - \[dynamicIO] Only report client sync IO errors if they are above a Suspense boundary: [#&#8203;80026](https://github.com/vercel/next.js/issues/80026) - \[dev-overlay] Parse stacks in reducer not during dispatch: [#&#8203;79788](https://github.com/vercel/next.js/issues/79788) - Remove obsolete `@ts-expect-error`: [#&#8203;80065](https://github.com/vercel/next.js/issues/80065) - \[dev-tools] Navigation header replaces close button: [#&#8203;80097](https://github.com/vercel/next.js/issues/80097) - \[dev-overlay] Inject `get*Stack` implementation: [#&#8203;79789](https://github.com/vercel/next.js/issues/79789) - \[dev-overlay] Fix dark‐mode styling for `<option>` in Preferences dropdowns: [#&#8203;80025](https://github.com/vercel/next.js/issues/80025) - Use relative sources in `require()` instead of `next/dist/` if possible: [#&#8203;80054](https://github.com/vercel/next.js/issues/80054) - \[dev-overlay] Inject `isRecoverableError` implementation: [#&#8203;80003](https://github.com/vercel/next.js/issues/80003) - \[devtool] fix explorer flag consuming and style: [#&#8203;80110](https://github.com/vercel/next.js/issues/80110) - \[dev-tools] add restart dev server button to error overlay: [#&#8203;80060](https://github.com/vercel/next.js/issues/80060) - \[dev-tools] add restart dev server button on dev-tools indicator preferences: [#&#8203;80072](https://github.com/vercel/next.js/issues/80072) - \[chore] remove legacy useEarlyImport flag: [#&#8203;80112](https://github.com/vercel/next.js/issues/80112) - \[testmode] Fix types of `wrapRequestHandler`: [#&#8203;80055](https://github.com/vercel/next.js/issues/80055) - Extend bot list with googleweblight, Storebot-Google, Google-Inspecti…: [#&#8203;77728](https://github.com/vercel/next.js/issues/77728) - \[dev-overlay] Inject `getSquashedHydrationErrorDetails` implementation: [#&#8203;80046](https://github.com/vercel/next.js/issues/80046) - \[dev-tools] better description for restart server button: [#&#8203;80118](https://github.com/vercel/next.js/issues/80118) - \[dev-tools] style: preferences section title: [#&#8203;80120](https://github.com/vercel/next.js/issues/80120) - \[metadata] refactor to remove async metadata: [#&#8203;78495](https://github.com/vercel/next.js/issues/78495) - \[dynamicIO] Document client component remediations for sync IO: [#&#8203;79787](https://github.com/vercel/next.js/issues/79787) - \[dynamicIO] prioritize preprocessing RSC rows when prerendering: [#&#8203;80125](https://github.com/vercel/next.js/issues/80125) - \[dev-overlay] Remove unused `onError` in /pages: [#&#8203;79982](https://github.com/vercel/next.js/issues/79982) - Remove unused vendored `server-inserted-metadata` module: [#&#8203;80143](https://github.com/vercel/next.js/issues/80143) - Webpack Build: Use name-contenthash instead of name-chunkhash for dynamic imports: [#&#8203;80153](https://github.com/vercel/next.js/issues/80153) - \[dev-overlay] Remove unnecessary code from /pages dev error boundary: [#&#8203;79983](https://github.com/vercel/next.js/issues/79983) - Turbopack Build: Implement helpful error for missing sass package: [#&#8203;80155](https://github.com/vercel/next.js/issues/80155) - \[global-not-found] fix shared css imports not being picked: [#&#8203;80151](https://github.com/vercel/next.js/issues/80151) - Add experimental flag for RSC request validation: [#&#8203;80157](https://github.com/vercel/next.js/issues/80157) - \[dev-overlay] Remove indirection in app dev error boundary : [#&#8203;79984](https://github.com/vercel/next.js/issues/79984) - Docs: preload entries impact on memory consumption: [#&#8203;80098](https://github.com/vercel/next.js/issues/80098) - \[dev-overlay] Move building indicator into Dev Overlay state: [#&#8203;79985](https://github.com/vercel/next.js/issues/79985) - \[metadata] only render one metadata outlet: [#&#8203;80146](https://github.com/vercel/next.js/issues/80146) - Add a `regions` property to the Functions Config Manifest file: [#&#8203;80104](https://github.com/vercel/next.js/issues/80104) - \[metadata] fix nonce prop for hoist script: [#&#8203;80174](https://github.com/vercel/next.js/issues/80174) - docs: fix grammar in Code of Conduct section ('them' → 'it') : [#&#8203;80181](https://github.com/vercel/next.js/issues/80181) - \[error-overlay] remove footer message: [#&#8203;80169](https://github.com/vercel/next.js/issues/80169) - Turbopack: Log persistent cache store time: [#&#8203;80149](https://github.com/vercel/next.js/issues/80149) - fix(turbopack): Next.js package not found panics in Turbopack: [#&#8203;79572](https://github.com/vercel/next.js/issues/79572) - \[turbopack] Compute Import Traces for Issues: [#&#8203;79351](https://github.com/vercel/next.js/issues/79351) - Typecheck `require()` calls: [#&#8203;80056](https://github.com/vercel/next.js/issues/80056) - Revert "\[turbopack] Compute Import Traces for Issues": [#&#8203;80215](https://github.com/vercel/next.js/issues/80215) - remove unique metadata prop from initial RSC payload [#&#8203;79388](https://github.com/vercel/next.js/issues/79388) - Replay redirect if RSC parameter is missing: [#&#8203;80180](https://github.com/vercel/next.js/issues/80180) - \[devtool] style the segment explorer as nested view: [#&#8203;80212](https://github.com/vercel/next.js/issues/80212) - Prerender with streaming metadata during revalidation: [#&#8203;80245](https://github.com/vercel/next.js/issues/80245) - fix: invalid middleware configs should fail the build: [#&#8203;80221](https://github.com/vercel/next.js/issues/80221) - \[dev-overlay] Render /app Dev Overlay with a separate React instance: [#&#8203;79699](https://github.com/vercel/next.js/issues/79699) - \[devtool] display segment explorer as tree view: [#&#8203;80261](https://github.com/vercel/next.js/issues/80261) - \[dev-overlay] Use same bundle for Pages and App Router: [#&#8203;80019](https://github.com/vercel/next.js/issues/80019) - Revert "Revert "\[turbopack] Compute Import Traces for Issues"": [#&#8203;80220](https://github.com/vercel/next.js/issues/80220) - \[dev-overlay] Publish as production bundle: [#&#8203;80295](https://github.com/vercel/next.js/issues/80295) - \[metadata] only serve block streaming metadata for html bots: [#&#8203;80272](https://github.com/vercel/next.js/issues/80272) - Update font data: [#&#8203;80301](https://github.com/vercel/next.js/issues/80301) - Update font data: [#&#8203;80340](https://github.com/vercel/next.js/issues/80340) - \[dev-overlay] fix duplicate re-render of errors: [#&#8203;80322](https://github.com/vercel/next.js/issues/80322) - \[build-sourcemaps] Only compute codeframe once: [#&#8203;80326](https://github.com/vercel/next.js/issues/80326) - \[test] Fix Dev Overlay Storybook: [#&#8203;80288](https://github.com/vercel/next.js/issues/80288) - \[test] Fix crashes in Dev Overlay Stories: [#&#8203;80292](https://github.com/vercel/next.js/issues/80292) - \[metadata] use https protocol for schema urls: [#&#8203;80356](https://github.com/vercel/next.js/issues/80356) - \[dev-overlay] Remove positive tab-index: [#&#8203;80289](https://github.com/vercel/next.js/issues/80289) - \[devtools] Implement default `/.well-known/appspecific/com.chrome.devtools.json` endpoint in dev: [#&#8203;80260](https://github.com/vercel/next.js/issues/80260) - \[dev-overlay] Fix outstanding a11y issues reported by Axe: [#&#8203;80290](https://github.com/vercel/next.js/issues/80290) - provide declarations for server-only/client-only: [#&#8203;80361](https://github.com/vercel/next.js/issues/80361) - \[test] Stop opening browser by default in local Dev Overlay Storybook: [#&#8203;80291](https://github.com/vercel/next.js/issues/80291) - \[dev-overlay] Move hot reloader client code out of react-dev-overlay: [#&#8203;80278](https://github.com/vercel/next.js/issues/80278) - \[dev-overlay] Remove unused code: [#&#8203;80279](https://github.com/vercel/next.js/issues/80279) - \[dev-overlay] Move app/pages related features closers together: [#&#8203;80280](https://github.com/vercel/next.js/issues/80280) - Discard `Infinity` expiration for implicit tags: [#&#8203;80387](https://github.com/vercel/next.js/issues/80387) - fix(next-swc-wasm): Only enable turbo-rcstr's napi feature when building the next-swc-napi crate/package: [#&#8203;80390](https://github.com/vercel/next.js/issues/80390) - Add response handling inside handlers: [#&#8203;80189](https://github.com/vercel/next.js/issues/80189) - feat(turbopack): Add simple tree shaker: [#&#8203;78286](https://github.com/vercel/next.js/issues/78286) - Fix a couple typos: [#&#8203;80080](https://github.com/vercel/next.js/issues/80080) - \[dev-overlay] Move code into new top-level folder in src/next-devtools: [#&#8203;80281](https://github.com/vercel/next.js/issues/80281) - Ensure we normalize .rsc/.prefetch.rsc: [#&#8203;80409](https://github.com/vercel/next.js/issues/80409) - Turbopack Build: Fix /index/index handling: [#&#8203;80413](https://github.com/vercel/next.js/issues/80413) - \[segment-explorer] optimize tree view: [#&#8203;80392](https://github.com/vercel/next.js/issues/80392) - Upgrade [@&#8203;playwright/test](https://github.com/playwright/test) and cleanup internal APIs: [#&#8203;80334](https://github.com/vercel/next.js/issues/80334) - Backport `config.allowedDevOrigins` ([#&#8203;80410](https://github.com/vercel/next.js/issues/80410)) ([Learn More](https://nextjs.org/docs/app/api-reference/config/next-config-js/allowedDevOrigins)) - \[segment-explorer] Signal updates to React: [#&#8203;80316](https://github.com/vercel/next.js/issues/80316) - \[segment explorer] fix soft navigation case: [#&#8203;80443](https://github.com/vercel/next.js/issues/80443) - Update the warning text for when multiple lockfiles are found: [#&#8203;80214](https://github.com/vercel/next.js/issues/80214) - feat: in Rspack using native fn implemented by us using SWC to replace load module: [#&#8203;80342](https://github.com/vercel/next.js/issues/80342) - chore: fix link to good first issue: [#&#8203;80478](https://github.com/vercel/next.js/issues/80478) - Disable fetch cache size limit for implicit caching during build: [#&#8203;80480](https://github.com/vercel/next.js/issues/80480) - \[dynamicIO] Split up static generation into two phases: [#&#8203;79629](https://github.com/vercel/next.js/issues/79629) - fix(turbopack): Fix config caching for turbopack + React Compiler: [#&#8203;80498](https://github.com/vercel/next.js/issues/80498) - \[dynamicIO] Use filled Resume Data Cache for final-phase prerenders: [#&#8203;79743](https://github.com/vercel/next.js/issues/79743) - fix: Rspack dev gets stuck after removing a page: [#&#8203;80555](https://github.com/vercel/next.js/issues/80555) - Ensure custom relative distDir resolves properly: [#&#8203;80569](https://github.com/vercel/next.js/issues/80569) - fix: mark file system incremental cache as external so it's memory is shared: [#&#8203;80586](https://github.com/vercel/next.js/issues/80586) - \[fix] clone the config module to avoid mutation: [#&#8203;80573](https://github.com/vercel/next.js/issues/80573) - Improve Incremental Cache Locking Algorithm: [#&#8203;80497](https://github.com/vercel/next.js/issues/80497) - \[devtools] add feature flag for new panel ui: [#&#8203;80251](https://github.com/vercel/next.js/issues/80251) - \[devtools] fork devtools-indicator: [#&#8203;80456](https://github.com/vercel/next.js/issues/80456) - \[devtools] fork next-logo: [#&#8203;80457](https://github.com/vercel/next.js/issues/80457) - guarantee cache busting param correctness: [#&#8203;80381](https://github.com/vercel/next.js/issues/80381) - Normalize filepaths when parsing patterns from js values: [#&#8203;80511](https://github.com/vercel/next.js/issues/80511) - \[metadata] render streaming metadata on the top level ([#&#8203;80566](https://github.com/vercel/next.js/issues/80566)) - \[fix] clone the config module to avoid mutation ([#&#8203;80573](https://github.com/vercel/next.js/issues/80573)) - feat: rspack use swc to warn for edge runtime: [#&#8203;80485](https://github.com/vercel/next.js/issues/80485) - Avoid timeout error when transformed params are passed to `"use cache"`: [#&#8203;80463](https://github.com/vercel/next.js/issues/80463) - Respond with `404` for unknown server actions: [#&#8203;80613](https://github.com/vercel/next.js/issues/80613) - \[segment explorer] single row layout segment: [#&#8203;80576](https://github.com/vercel/next.js/issues/80576) - Fix: Rules of Hooks violation in AppRouter: [#&#8203;80623](https://github.com/vercel/next.js/issues/80623) - fix: Add Chrome-ligthouse to htmlLimitedBots: [#&#8203;80656](https://github.com/vercel/next.js/issues/80656) - Turn on clientSegmentCache during PPR CI runs: [#&#8203;80581](https://github.com/vercel/next.js/issues/80581) - \[devtools] port overlay backdrop out of overlay: [#&#8203;80460](https://github.com/vercel/next.js/issues/80460) - Revert "(E2E) Log which config file is used for `next start`": [#&#8203;80666](https://github.com/vercel/next.js/issues/80666) - fix(turbopack): Fix static immutability analysis: [#&#8203;80646](https://github.com/vercel/next.js/issues/80646) - \[devtools] add panel ui placeholder under feature flag: [#&#8203;80354](https://github.com/vercel/next.js/issues/80354) - \[devtools] add dialog behavior to panel ui: [#&#8203;80355](https://github.com/vercel/next.js/issues/80355) - Add `--debug-prerender` option for `next build`: [#&#8203;80667](https://github.com/vercel/next.js/issues/80667) - \[devtools] port devtools-indicator position to dispatcher: [#&#8203;80536](https://github.com/vercel/next.js/issues/80536) - fix: mark the shared cache controls as external so it's memory is shared: [#&#8203;80588](https://github.com/vercel/next.js/issues/80588) - \[devtools] apply draggable to panel ui: [#&#8203;80517](https://github.com/vercel/next.js/issues/80517) - Apply normalizers for init URL used for handlers: [#&#8203;80694](https://github.com/vercel/next.js/issues/80694) - overwrite redirect SSG meta.status to 200 for RSC requests: [#&#8203;80391](https://github.com/vercel/next.js/issues/80391) - \[devtools] panel ui header: [#&#8203;80509](https://github.com/vercel/next.js/issues/80509) - \[development-server] Display pid of already-running process that is using port: [#&#8203;80069](https://github.com/vercel/next.js/issues/80069) - \[devtools] panel ui footer: [#&#8203;80515](https://github.com/vercel/next.js/issues/80515) - Fix Next DevTools Storybook in recent Node.js versions: [#&#8203;80713](https://github.com/vercel/next.js/issues/80713) - \[devtools] set up panel ui tab infra: [#&#8203;80535](https://github.com/vercel/next.js/issues/80535) - \[devtools] port devtools scale to dispatcher: [#&#8203;80537](https://github.com/vercel/next.js/issues/80537) - \[devtools] panel ui settings tab: [#&#8203;80538](https://github.com/vercel/next.js/issues/80538) - Upgrade React from `197d6a04-20250424` to `79d9aed7-20250620`: [#&#8203;79477](https://github.com/vercel/next.js/issues/79477) - fix: rspack code analyzer should only handle javascript module: [#&#8203;80711](https://github.com/vercel/next.js/issues/80711) - \[devtools] port call stack: [#&#8203;80550](https://github.com/vercel/next.js/issues/80550) - \[devtools] port runtime error handling to hook: [#&#8203;80567](https://github.com/vercel/next.js/issues/80567) - Upgrade React from `79d9aed7-20250620` to `06e89951-20250620`: [#&#8203;80730](https://github.com/vercel/next.js/issues/80730) - chore(swc-wasm): Fix and clean up various issues with swc-wasm tests: [#&#8203;80471](https://github.com/vercel/next.js/issues/80471) - Add onBuildComplete adapter hook: [#&#8203;80446](https://github.com/vercel/next.js/issues/80446) - \[ppr] RDC for RSCs: [#&#8203;79638](https://github.com/vercel/next.js/issues/79638) - docs: add csp and content disposition type: [#&#8203;80735](https://github.com/vercel/next.js/issues/80735) - omit searchParam data from FlightRouterState before transport: [#&#8203;80734](https://github.com/vercel/next.js/issues/80734) - feat(turbopack): Print a warning about performance when starting with an invalidated cache: [#&#8203;80631](https://github.com/vercel/next.js/issues/80631) - perf(next-swc): Remove needless JSON conversion: [#&#8203;80671](https://github.com/vercel/next.js/issues/80671) - \[devtools] Fix Turbopack indicator: [#&#8203;80753](https://github.com/vercel/next.js/issues/80753) - Downgrade React from `79d9aed7-20250620` to `197d6a04-20250424`: [#&#8203;80762](https://github.com/vercel/next.js/issues/80762) - devtools: couple restart dev server UI with persistent cache flag: [#&#8203;80751](https://github.com/vercel/next.js/issues/80751) - \[devtools] panel ui responsiveness: [#&#8203;80732](https://github.com/vercel/next.js/issues/80732) - \[turbopack] Update Napi CLI to the latest 2x release: [#&#8203;80697](https://github.com/vercel/next.js/issues/80697) - Revert "\[ppr] RDC for RSCs": [#&#8203;80794](https://github.com/vercel/next.js/issues/80794) - \[segment explorer] handle edge and pages router: [#&#8203;80668](https://github.com/vercel/next.js/issues/80668) - \[segment explorer] handle builtin not-found: [#&#8203;80607](https://github.com/vercel/next.js/issues/80607) - \[devtools] fix: adjust width for responsiveness: [#&#8203;80777](https://github.com/vercel/next.js/issues/80777) - \[build] remove obsolete module field alias for barrel optimized pkg: [#&#8203;80769](https://github.com/vercel/next.js/issues/80769) - \[segment explorer] handle custom global-error segment: [#&#8203;80685](https://github.com/vercel/next.js/issues/80685) - \[devtools] storybook: port utils to be reusable: [#&#8203;80726](https://github.com/vercel/next.js/issues/80726) - \[segment explorer] display navigation error boundaries: [#&#8203;80691](https://github.com/vercel/next.js/issues/80691) - \[devtools] set up panel ui issues tab infra: [#&#8203;80727](https://github.com/vercel/next.js/issues/80727) - \[devtools] add correct scrollbar to dialog body: [#&#8203;80776](https://github.com/vercel/next.js/issues/80776) - \[devtools] panel ui issues tab sidebar: [#&#8203;80728](https://github.com/vercel/next.js/issues/80728) - \[devtools] panel ui issues tab content: [#&#8203;80729](https://github.com/vercel/next.js/issues/80729) - \[devtools] add fullscreen mode: [#&#8203;80788](https://github.com/vercel/next.js/issues/80788) - \[devtools] proper draggable for header and footer only: [#&#8203;80792](https://github.com/vercel/next.js/issues/80792) - \[segment explorer] handle display loading: [#&#8203;80698](https://github.com/vercel/next.js/issues/80698) - \[segment explorer] handle custom error boundary: [#&#8203;80714](https://github.com/vercel/next.js/issues/80714) - \[segment explorer] display default page in segment explorer: [#&#8203;80716](https://github.com/vercel/next.js/issues/80716) - Add htmlrewriter to default server externals: [#&#8203;80819](https://github.com/vercel/next.js/issues/80819) - fix to use https urls in meta data images when using experimental-https: [#&#8203;80276](https://github.com/vercel/next.js/issues/80276) - Add a fallback for the mdx-components file: [#&#8203;59693](https://github.com/vercel/next.js/issues/59693) - Revert "Respond with `404` for unknown server actions ([#&#8203;80613](https://github.com/vercel/next.js/issues/80613))": [#&#8203;80662](https://github.com/vercel/next.js/issues/80662) - \[devtools] segment explorer tab: [#&#8203;80805](https://github.com/vercel/next.js/issues/80805) - \[devtools] fix: error overlay closes when footer is clicked: [#&#8203;80513](https://github.com/vercel/next.js/issues/80513) - fix: respond with 404 for unrecognized action ids: [#&#8203;77012](https://github.com/vercel/next.js/issues/77012) - \[turbopack] Enable debug assertions in CI: [#&#8203;80739](https://github.com/vercel/next.js/issues/80739) - Turbopack Build: Implement browserslist for CSS / JS: [#&#8203;80603](https://github.com/vercel/next.js/issues/80603) - Fix fallback: true cache-control: [#&#8203;80865](https://github.com/vercel/next.js/issues/80865) - Turbopack: scope hoisting: [#&#8203;79459](https://github.com/vercel/next.js/issues/79459) - \[devtools] refactor segment explorer styles: [#&#8203;80848](https://github.com/vercel/next.js/issues/80848) - Turbopack: CSS Global Import Validation for Pages: [#&#8203;80585](https://github.com/vercel/next.js/issues/80585) - \[devtools] overlay backdrop visibility hidden when not fullscreen: [#&#8203;80844](https://github.com/vercel/next.js/issues/80844) - Allow intercepting dynamic routes to be partially prerendered: [#&#8203;80851](https://github.com/vercel/next.js/issues/80851) - Turbopack: fix chunking context caching: [#&#8203;80862](https://github.com/vercel/next.js/issues/80862) - \[devtools] replace the old error overlay with the issues tab view: [#&#8203;80814](https://github.com/vercel/next.js/issues/80814) - \[devtools] fullscreen mode should not be draggable: [#&#8203;80845](https://github.com/vercel/next.js/issues/80845) - Turbopack: add task execution reason to tracing: [#&#8203;80861](https://github.com/vercel/next.js/issues/80861) - \[devtools] Allow opting out of environment feature flags: [#&#8203;80897](https://github.com/vercel/next.js/issues/80897) - \[devtools] fix: build error should share the issue content layout: [#&#8203;80850](https://github.com/vercel/next.js/issues/80850) - \[devtools] increase max-width/height limit: [#&#8203;80846](https://github.com/vercel/next.js/issues/80846) - \[devtools] memorize tab in session storage: [#&#8203;80900](https://github.com/vercel/next.js/issues/80900) - Check cache busting search params on all RSC requests: [#&#8203;80669](https://github.com/vercel/next.js/issues/80669) - Perf: Use canonicalUrl from prefetch for dynamic RSC requests: [#&#8203;80817](https://github.com/vercel/next.js/issues/80817) - Fix PPR no fallback case: [#&#8203;80908](https://github.com/vercel/next.js/issues/80908) - Add comment explaining staticPathKey vs ssgCacheKey: [#&#8203;80911](https://github.com/vercel/next.js/issues/80911) - add turbo tasks fuzzing: [#&#8203;79372](https://github.com/vercel/next.js/issues/79372) - \[devtools] fix style of issue count label: [#&#8203;80854](https://github.com/vercel/next.js/issues/80854) - \[devtools] Remove unused footer buttons: [#&#8203;80864](https://github.com/vercel/next.js/issues/80864) - \[devtools] Hide issue count on empty state: [#&#8203;80898](https://github.com/vercel/next.js/issues/80898) - \[turbopack] Add user friendly names to trace labels: [#&#8203;80388](https://github.com/vercel/next.js/issues/80388) - Upgrade React from `197d6a04-20250424` to `fa3feba6-20250623`: [#&#8203;80804](https://github.com/vercel/next.js/issues/80804) - \[segment explorer] open in editor: [#&#8203;80856](https://github.com/vercel/next.js/issues/80856) - Roll out validateRSCRequestHeaders: [#&#8203;80954](https://github.com/vercel/next.js/issues/80954) - \[refactor] group the built-in conventions: [#&#8203;80957](https://github.com/vercel/next.js/issues/80957) - fix: webpack config context when using rspack: [#&#8203;80921](https://github.com/vercel/next.js/issues/80921) - Turbopack: pass current Node.js version from JS side instead of invoking node: [#&#8203;80949](https://github.com/vercel/next.js/issues/80949) - Turbopack/Webpack Build: Remove dead code: [#&#8203;80938](https://github.com/vercel/next.js/issues/80938) - Upgrade React from `fa3feba6-20250623` to `cee7939b-20250625`: [#&#8203;80904](https://github.com/vercel/next.js/issues/80904) - \[segment explorer] hover state for open-in-editor color: [#&#8203;80950](https://github.com/vercel/next.js/issues/80950) - Upgrade React from `cee7939b-20250625` to `4db4b21c-20250626`: [#&#8203;80959](https://github.com/vercel/next.js/issues/80959) - \[devtools] polish icon and label color: [#&#8203;80976](https://github.com/vercel/next.js/issues/80976) - Use proper reexports in entry-base.ts: [#&#8203;80988](https://github.com/vercel/next.js/issues/80988) - \[segment-explorer] display the builtin conventions: [#&#8203;80961](https://github.com/vercel/next.js/issues/80961) - \[segment explorer] builtin slots style: [#&#8203;80972](https://github.com/vercel/next.js/issues/80972) - \[segment explorer] trigger boundary initial support: [#&#8203;80948](https://github.com/vercel/next.js/issues/80948) - \[devtools]: width/height adjustments: [#&#8203;81072](https://github.com/vercel/next.js/issues/81072) - \[test] fix browser chunk test failure: [#&#8203;81074](https://github.com/vercel/next.js/issues/81074) - \[segment explorer] show current route: [#&#8203;81003](https://github.com/vercel/next.js/issues/81003) - \[devtools]: move RestartServerButton to panel footer: [#&#8203;81082](https://github.com/vercel/next.js/issues/81082) - Update font data: [#&#8203;81093](https://github.com/vercel/next.js/issues/81093) - Upgrade React from `4db4b21c-20250626` to `65c4decb-20250630`: [#&#8203;81077](https://github.com/vercel/next.js/issues/81077) - \[node-webstreams] Remove unused App externals from next-server bundler config: [#&#8203;81039](https://github.com/vercel/next.js/issues/81039) - Turbopack: apply browserslist config in dev: [#&#8203;81075](https://github.com/vercel/next.js/issues/81075) - \[build] remove the default imports for error boundary: [#&#8203;81000](https://github.com/vercel/next.js/issues/81000) - Turbopack: also inline env vars with undefined value: [#&#8203;80990](https://github.com/vercel/next.js/issues/80990) - \[devtools]: default to issues tab when error overlay is programmatically toggled: [#&#8203;81091](https://github.com/vercel/next.js/issues/81091) - \[devtool] merge segment explorer flag into panel ui flag: [#&#8203;81085](https://github.com/vercel/next.js/issues/81085) - Revert "\[devtool] merge segment explorer flag into panel ui flag ([#&#8203;81085](https://github.com/vercel/next.js/issues/81085))": [#&#8203;81131](https://github.com/vercel/next.js/issues/81131) - \[segment explorer] reset error and not-found boundary: [#&#8203;81115](https://github.com/vercel/next.js/issues/81115) - \[devtool] enable segment explorer when new panel present by default: [#&#8203;81152](https://github.com/vercel/next.js/issues/81152) - \[dynamicIO] Don't abort on sync request data access: [#&#8203;81162](https://github.com/vercel/next.js/issues/81162) - \[dynamicIO] recognize prerender interrupted errors as well known: [#&#8203;81160](https://github.com/vercel/next.js/issues/81160) - Fix resolvedPathname for middleware rewrite: [#&#8203;81144](https://github.com/vercel/next.js/issues/81144) - \[node-webstreams] Exhaustive React aliases in App Router: [#&#8203;81040](https://github.com/vercel/next.js/issues/81040) - \[node-webstreams] Use React builds for Node.js: [#&#8203;81048](https://github.com/vercel/next.js/issues/81048) - Upgrade React from `65c4decb-20250630` to `7216c0f0-20250630`: [#&#8203;81133](https://github.com/vercel/next.js/issues/81133) - Turbopack: fix and finish immutable tasks: [#&#8203;80996](https://github.com/vercel/next.js/issues/80996) - \[segment explorer] custom tooltip: [#&#8203;80974](https://github.com/vercel/next.js/issues/80974) - \[segment explorer] refactor boundary trigger with ui primitives: [#&#8203;81147](https://github.com/vercel/next.js/issues/81147) - Migrate usage of web-server in edge-ssr: [#&#8203;80915](https://github.com/vercel/next.js/issues/80915) - Upgrade React from `7216c0f0-20250630` to `73aa744b-20250702`: [#&#8203;81192](https://github.com/vercel/next.js/issues/81192) - \[segment explorer] fix route path in top navbar: [#&#8203;81195](https://github.com/vercel/next.js/issues/81195) - Reuse resolvedPathname from prepare: [#&#8203;81194](https://github.com/vercel/next.js/issues/81194) - Turbopack: exclude resolve-rewrites if possible: [#&#8203;80939](https://github.com/vercel/next.js/issues/80939) - \[devtool] styling fixes: [#&#8203;81228](https://github.com/vercel/next.js/issues/81228) - \[devtools] Omit line/col numbers for anonymous sources: [#&#8203;81223](https://github.com/vercel/next.js/issues/81223) - Fix NEXT_CPU_PROF during development: [#&#8203;81248](https://github.com/vercel/next.js/issues/81248) - Turbopack: list assert/strict as external ([#&#8203;80884](https://github.com/vercel/next.js/issues/80884)) - omit searchParam data from FlightRouterState before transport ([#&#8203;80734](https://github.com/vercel/next.js/issues/80734)) - bugfix: propagate staleTime to seeded prefetch entry ([#&#8203;81263](https://github.com/vercel/next.js/issues/81263)) - \[Segment Cache] Support third-party redirects in output: "export" mode: [#&#8203;81247](https://github.com/vercel/next.js/issues/81247) - \[devtool] css imports and share css variables: [#&#8203;81236](https://github.com/vercel/next.js/issues/81236) - Update matching query and route param handling: [#&#8203;81209](https://github.com/vercel/next.js/issues/81209) - bugfix: propagate staleTime to seeded prefetch entry: [#&#8203;81263](https://github.com/vercel/next.js/issues/81263) - Ensure resolvedPathname normalizes trailing slash: [#&#8203;81265](https://github.com/vercel/next.js/issues/81265) - \[sourcemaps] ignore-list Webpack runtime: [#&#8203;81229](https://github.com/vercel/next.js/issues/81229) - Allow `pnpm build` to be run when offline: [#&#8203;81273](https://github.com/vercel/next.js/issues/81273) - \[sourcemaps] Ignore-list sources whose sourcemaps ignore-list everything: [#&#8203;81231](https://github.com/vercel/next.js/issues/81231) - \[dynamicIO] Use owner stacks for dynamic validation errors: [#&#8203;81277](https://github.com/vercel/next.js/issues/81277) - \[dynamicIO] Don't abort prospective render on sync access during SSR: [#&#8203;81258](https://github.com/vercel/next.js/issues/81258) - \[refactor] Move sourcemapping logic to dedicated file: [#&#8203;81310](https://github.com/vercel/next.js/issues/81310) - \[sourcemaps] Improve ignore-listing performance: [#&#8203;81311](https://github.com/vercel/next.js/issues/81311) - \[devtool] handle click outscope child element: [#&#8203;81296](https://github.com/vercel/next.js/issues/81296) - \[build] remove devtool from client chunks in prod: [#&#8203;81376](https://github.com/vercel/next.js/issues/81376) - chore: align css loader in storybook: [#&#8203;81403](https://github.com/vercel/next.js/issues/81403) - feat: make typed routes output deterministic: [#&#8203;80432](https://github.com/vercel/next.js/issues/80432) - \[dev-tools] Custom keyboard shortcut to toggle visibility: [#&#8203;81064](https://github.com/vercel/next.js/issues/81064) - chore: update rspack to 1.4.5: [#&#8203;81216](https://github.com/vercel/next.js/issues/81216) - \[use-cache] track cache read earlier when encrypting bound args: [#&#8203;81427](https://github.com/vercel/next.js/issues/81427) - Upgrade React from `5d87cd22-20250704` to `a7a11657-20250708`: [#&#8203;81428](https://github.com/vercel/next.js/issues/81428) - \[segment explorer] capture defined boundaries: [#&#8203;81232](https://github.com/vercel/next.js/issues/81232) - \[segment explorer] trigger the actual same level boundary: [#&#8203;81268](https://github.com/vercel/next.js/issues/81268) - feat: forward browser errors/logs to terminal: [#&#8203;80909](https://github.com/vercel/next.js/issues/80909) - fix: referencing unavailable \__dirname: [#&#8203;81436](https://github.com/vercel/next.js/issues/81436) - Upgrade vercel og to 0.7.2: [#&#8203;81447](https://github.com/vercel/next.js/issues/81447) - \[build-sourcemaps] Default `experimental.enablePrerenderSourceMaps` to `experimental.dynamicIO`: [#&#8203;81449](https://github.com/vercel/next.js/issues/81449) - Upgrade React from `a7a11657-20250708` to `60b5271a-20250709`: [#&#8203;81463](https://github.com/vercel/next.js/issues/81463) - Support `Uint8Array` bodies when generating cache keys for POST requests: [#&#8203;81465](https://github.com/vercel/next.js/issues/81465) - \[devtool] dynamically import segment explorer when enabled: [#&#8203;81473](https://github.com/vercel/next.js/issues/81473) - Add [@&#8203;sparticuz/chromium-min](https://github.com/sparticuz/chromium-min) to default server externals: [#&#8203;81309](https://github.com/vercel/next.js/issues/81309) - \[devtool] patch base-ui and migrate segment explorer inline styles: [#&#8203;81474](https://github.com/vercel/next.js/issues/81474) - Pass `filterStackFrame` everywhere: [#&#8203;81516](https://github.com/vercel/next.js/issues/81516) - Upgrade React from `60b5271a-20250709` to `96c61b7f-20250709`: [#&#8203;81505](https://github.com/vercel/next.js/issues/81505) - \[segment explorer] redesign file pills and boundary trigger: [#&#8203;81302](https://github.com/vercel/next.js/issues/81302) - Update eslint and restore `.eslintrc.cli.json` being used for CLI/CI-based linting: [#&#8203;81553](https://github.com/vercel/next.js/issues/81553) - \[sourcemaps] Properly devirtualize `rsc:` URLs: [#&#8203;81554](https://github.com/vercel/next.js/issues/81554) - Upgrade React from `96c61b7f-20250709` to `97cdd5d3-20250710`: [#&#8203;81551](https://github.com/vercel/next.js/issues/81551) - fix: update useEffect closure when menu is truly mounted: [#&#8203;81531](https://github.com/vercel/next.js/issues/81531) - rename `handleSmoothScroll` util: [#&#8203;81546](https://github.com/vercel/next.js/issues/81546) - add flag to opt into smooth scroll detection & add warning: [#&#8203;81563](https://github.com/vercel/next.js/issues/81563) - fix: revert focus trap dependency change: [#&#8203;81571](https://github.com/vercel/next.js/issues/81571) - Hide <anonymous> stackframes if sandwiched between two ignore-listed frames: [#&#8203;81067](https://github.com/vercel/next.js/issues/81067) - Dim console logs from prospective prerender in dev: [#&#8203;81515](https://github.com/vercel/next.js/issues/81515) - Augment React types internally instead of overwriting them: [#&#8203;81561](https://github.com/vercel/next.js/issues/81561) - \[sourcemaps] Don't check for vendor chunks when Node.js 18 is used: [#&#8203;81619](https://github.com/vercel/next.js/issues/81619) - \[Segment Cache] Fix isHeadPartial logic: [#&#8203;81566](https://github.com/vercel/next.js/issues/81566) - \[segment explorer] fix route url is missing cases: [#&#8203;81622](https://github.com/vercel/next.js/issues/81622) - \[segment explorer] fix boundary trigger state: [#&#8203;81623](https://github.com/vercel/next.js/issues/81623) - fix(next/image): bump sharp to 0.34.3: [#&#8203;81556](https://github.com/vercel/next.js/issues/81556) ##### Example Changes - \[test] Use React 19.1 everywhere: [#&#8203;77895](https://github.com/vercel/next.js/issues/77895) - chore(examples): replace uuid dependency with crypto.randomUUID: [#&#8203;77901](https://github.com/vercel/next.js/issues/77901) - examples: fix readmes: [#&#8203;78483](https://github.com/vercel/next.js/issues/78483) - chore: Update the `with-supabase` example to use the Supabase Auth block: [#&#8203;78913](https://github.com/vercel/next.js/issues/78913) - refactor(napi): Implement napi traits for RcStr: [#&#8203;79806](https://github.com/vercel/next.js/issues/79806) - remove with-fauna example: [#&#8203;80440](https://github.com/vercel/next.js/issues/80440) - chore: fix typos in rust files: [#&#8203;81113](https://github.com/vercel/next.js/issues/81113) - Add Biome example: [#&#8203;81334](https://github.com/vercel/next.js/issues/81334) ##### Misc Changes - Turbopack: use correct env var for uploading test results: [#&#8203;77988](https://github.com/vercel/next.js/issues/77988) - chore(cna): use short tailwind classname of font-family: [#&#8203;77271](https://github.com/vercel/next.js/issues/77271) - Fix CSS Data URL test on Turbopack: [#&#8203;77970](https://github.com/vercel/next.js/issues/77970) - Turbopack: fix dynamic request lookup with only a single match: [#&#8203;77986](https://github.com/vercel/next.js/issues/77986) - Update Turbopack production test manifest: [#&#8203;78007](https://github.com/vercel/next.js/issues/78007) - Update Turbopack development test manifest: [#&#8203;78008](https://github.com/vercel/next.js/issues/78008) - \[test] Assert on all errors in Redbox matchers: [#&#8203;77907](https://github.com/vercel/next.js/issues/77907) - Turbopack: check css requests in test: [#&#8203;77285](https://github.com/vercel/next.js/issues/77285) - 15.3 Docs: Turbopack for `build`: [#&#8203;77730](https://github.com/vercel/next.js/issues/77730) - \[test] Stop asserting on internal stackframes when features are working as intended: [#&#8203;78015](https://github.com/vercel/next.js/issues/78015) - Turbopack: asset ident instead of chunk item ID in CSS: [#&#8203;78018](https://github.com/vercel/next.js/issues/78018) - fix(turbopack): Consider scoping of `var` declarations: [#&#8203;77954](https://github.com/vercel/next.js/issues/77954) - \[test] Remove global styled-components install : [#&#8203;77782](https://github.com/vercel/next.js/issues/77782) - Cleanup `config.experimental.reactOwnerstack`: [#&#8203;78021](https://github.com/vercel/next.js/issues/78021) - Docs: Improve `"use cache"` and `cacheLife` API references: [#&#8203;78024](https://github.com/vercel/next.js/issues/78024) - Docs: Update `useLinkStatus` API reference: [#&#8203;78022](https://github.com/vercel/next.js/issues/78022) - Turbopack: add debug assertion to check for duplicate modules: [#&#8203;78025](https://github.com/vercel/next.js/issues/78025) - Turbopack: bundle only `new Worker` with `new URL`: [#&#8203;78010](https://github.com/vercel/next.js/issues/78010) - Turbopack: use hashbrown HashMaps instead of now-removed std raw entry api: [#&#8203;78032](https://github.com/vercel/next.js/issues/78032) - Turbopack: proper error message for swcPlugins: [#&#8203;77990](https://github.com/vercel/next.js/issues/77990) - Update Rust toolchain to nightly-2025-04-10: [#&#8203;78039](https://github.com/vercel/next.js/issues/78039) - \[test] separate rsc-basic tests: [#&#8203;78038](https://github.com/vercel/next.js/issues/78038) - chore(github): remove redundant markdown body: [#&#8203;76187](https://github.com/vercel/next.js/issues/76187) - chore(CI): Mention Rspack explicitly, use arewerspackyet.com domain: [#&#8203;77995](https://github.com/vercel/next.js/issues/77995) - Update Turbopack production test manifest: [#&#8203;78053](https://github.com/vercel/next.js/issues/78053) - Turbopack: support for CSS Modules in Data URLs: [#&#8203;78040](https://github.com/vercel/next.js/issues/78040) - test: adjust default timeouts for \[waitFor]elementByCss: [#&#8203;78026](https://github.com/vercel/next.js/issues/78026) - Revert Rust upgrade to nightly-2025-04-10: [#&#8203;78062](https://github.com/vercel/next.js/issues/78062) - Update Rspack development test manifest: [#&#8203;78049](https://github.com/vercel/next.js/issues/78049) - Update Rspack production test manifest: [#&#8203;78050](https://github.com/vercel/next.js/issues/78050) - chore(CI): Add lukesandberg to turbopack team: [#&#8203;78074](https://github.com/vercel/next.js/issues/78074) - \[test] Activity has types and supports react-server: [#&#8203;78066](https://github.com/vercel/next.js/issues/78066) - refactor(turbo-tasks): Check for transient tasks called from persistent tasks in more places: [#&#8203;77760](https://github.com/vercel/next.js/issues/77760) - \[font] prefix leading numeric google-font name with underscore: [#&#8203;78127](https://github.com/vercel/next.js/issues/78127) - build: Update `swc_core` to `v22.3.1`: [#&#8203;78129](https://github.com/vercel/next.js/issues/78129) - Update Turbopack production test manifest: [#&#8203;78124](https://github.com/vercel/next.js/issues/78124) - \[test] isolate parallel metadata test: [#&#8203;78134](https://github.com/vercel/next.js/issues/78134) - Update Turbopack development test manifest: [#&#8203;78125](https://github.com/vercel/next.js/issues/78125) - Update Rspack production test manifest: [#&#8203;78123](https://github.com/vercel/next.js/issues/78123) - \[test] Add dedicated tsconfig for test utils: [#&#8203;78141](https://github.com/vercel/next.js/issues/78141) - Turbopack: load chunks only once: [#&#8203;75143](https://github.com/vercel/next.js/issues/75143) - Reenable a few more Turbopack tests: [#&#8203;78153](https://github.com/vercel/next.js/issues/78153) - test: remove "[@&#8203;testing-library/jest-dom](https://github.com/testing-library/jest-dom)" from default jest setup: [#&#8203;78157](https://github.com/vercel/next.js/issues/78157) - Turbopack: Update toolchain to 2025-04-14 (Reapply [#&#8203;78062](https://github.com/vercel/next.js/issues/78062)): [#&#8203;78167](https://github.com/vercel/next.js/issues/78167) - \[test] Assert on all errors in app/ hydration-error suite: [#&#8203;78132](https://github.com/vercel/next.js/issues/78132) - Skip failing test via manifest instead: [#&#8203;78161](https://github.com/vercel/next.js/issues/78161) - Update Turbopack development test manifest: [#&#8203;78179](https://github.com/vercel/next.js/issues/78179) - Correct require.context relative import keys to match Webpack: [#&#8203;78148](https://github.com/vercel/next.js/issues/78148) - Getting Started Docs: Clean up `docs/app` and `docs/pages` pages: [#&#8203;78151](https://github.com/vercel/next.js/issues/78151) - Update Rspack production test manifest: [#&#8203;78177](https://github.com/vercel/next.js/issues/78177) - Update Turbopack production test manifest: [#&#8203;78180](https://github.com/vercel/next.js/issues/78180) - Update Rspack development test manifest: [#&#8203;78178](https://github.com/vercel/next.js/issues/78178) - Turbopack: fix duplicate facade module: [#&#8203;78191](https://github.com/vercel/next.js/issues/78191) - Added [@&#8203;types/jest](https://github.com/types/jest) in installtion commands.: [#&#8203;78090](https://github.com/vercel/next.js/issues/78090) - Update turbopack.mdx: [#&#8203;78082](https://github.com/vercel/next.js/issues/78082) - docs: improve wording around NextRequest and query params: [#&#8203;77923](https://github.com/vercel/next.js/issues/77923) - Docs IA 2.0: Move version upgrade docs under `Guides`: [#&#8203;78189](https://github.com/vercel/next.js/issues/78189) - Docs IA 2.0: Move SPA docs under `Guides`: [#&#8203;78195](https://github.com/vercel/next.js/issues/78195) - Docs IA 2.0: Move migration docs under `Guides`: [#&#8203;78193](https://github.com/vercel/next.js/issues/78193) - Docs Papercuts: [#&#8203;78200](https://github.com/vercel/next.js/issues/78200) - feat(turbo-tasks): Generate a trace of transient tasks when panicking: [#&#8203;77600](https://github.com/vercel/next.js/issues/77600) - Turbopack: fix duplicate module from internal ref: [#&#8203;78194](https://github.com/vercel/next.js/issues/78194) - Fix externals doc validation: [#&#8203;78208](https://github.com/vercel/next.js/issues/78208) - \[docs] Update 03-fonts.mdx: [#&#8203;77965](https://github.com/vercel/next.js/issues/77965) - Turbopack Persistent Caching: Use SmallVec to avoid allocations for small values written to DB: [#&#8203;78136](https://github.com/vercel/next.js/issues/78136) - Turbopack: wait for tracing to be written before exiting: [#&#8203;78210](https://github.com/vercel/next.js/issues/78210) - refactor(turbopack): Prepare removal of fake AST in tree-shaking: [#&#8203;78172](https://github.com/vercel/next.js/issues/78172) - Turbopack: more module ident collisions: [#&#8203;78207](https://github.com/vercel/next.js/issues/78207) - fix(turbo-tasks-fs): Update notify-rs, handle recursive symlinks in realpath implementation, add an e2e test for symlinked files: [#&#8203;78220](https://github.com/vercel/next.js/issues/78220) - Update Turbopack production test manifest: [#&#8203;78224](https://github.com/vercel/next.js/issues/78224) - Update Turbopack development test manifest: [#&#8203;78225](https://github.com/vercel/next.js/issues/78225) - Turbopack: normalize ref type for external tracing: [#&#8203;78226](https://github.com/vercel/next.js/issues/78226) - Update Rspack production test manifest: [#&#8203;78222](https://github.com/vercel/next.js/issues/78222) - Getting Started Docs: Add `deploying` page: [#&#8203;77720](https://github.com/vercel/next.js/issues/77720) - Docs IA 2.0: Move multi-zones docs to `Guides`: [#&#8203;78238](https://github.com/vercel/next.js/issues/78238) - Turbopack: Do multiple unit test runs: [#&#8203;78212](https://github.com/vercel/next.js/issues/78212) - Turbopack: fix cell not found bug: [#&#8203;78246](https://github.com/vercel/next.js/issues/78246) - Prevent typescript errors in IDE for newly generated tests: [#&#8203;78247](https://github.com/vercel/next.js/issues/78247) - Turbopack: Support ECMAScript styleregex with negative lookahead in `require.context` calls: [#&#8203;78251](https://github.com/vercel/next.js/issues/78251) - Docs IA 2.0: Move Production Checklist under `Guides`: [#&#8203;78240](https://github.com/vercel/next.js/issues/78240) - Docs: Fix nav item lettercasing for multi-zones: [#&#8203;78250](https://github.com/vercel/next.js/issues/78250) - \[docs] fix function signature of og image: [#&#8203;78277](https://github.com/vercel/next.js/issues/78277) - Turbopack: dedupe additional traced references: [#&#8203;78241](https://github.com/vercel/next.js/issues/78241) - Update Turbopack development test manifest: [#&#8203;78274](https://github.com/vercel/next.js/issues/78274) - \[test] Improve coverage for fetch errors in Edge runtime: [#&#8203;78257](https://github.com/vercel/next.js/issues/78257) - Update Turbopack production test manifest: [#&#8203;78273](https://github.com/vercel/next.js/issues/78273) - Turbopack: fix duplicate unsupported edge import modules: [#&#8203;78236](https://github.com/vercel/next.js/issues/78236) - Turbopack: Include Next.js version in panic handler report: [#&#8203;78263](https://github.com/vercel/next.js/issues/78263) - fix(turbopack): Fix duplicate modules when tree shaking: true: [#&#8203;78203](https://github.com/vercel/next.js/issues/78203) - test: try to fix flakiness in amphtml util: [#&#8203;78304](https://github.com/vercel/next.js/issues/78304) - remove BrowserInterface: [#&#8203;78308](https://github.com/vercel/next.js/issues/78308) - fix(turbo-tasks-fs): Handle filesystem watcher rescan events: [#&#8203;78045](https://github.com/vercel/next.js/issues/78045) - docs: improve userAgent device.type example in userAgent.mdx: [#&#8203;78368](https://github.com/vercel/next.js/issues/78368) - fix(turbo-tasks): Make vc types use repr(transparent): [#&#8203;78327](https://github.com/vercel/next.js/issues/78327) - - refactor(turbopack): Remove needless code: [#&#8203;78331](https://github.com/vercel/next.js/issues/78331) - Update Turbopack production test manifest: [#&#8203;78371](https://github.com/vercel/next.js/issues/78371) - fix(turbo-persistence): Fix `verify_sst_content` feature, improve unit test performance: [#&#8203;78388](https://github.com/vercel/next.js/issues/78388) - Turbopack: Use content for async loader digests, not availability info: [#&#8203;78386](https://github.com/vercel/next.js/issues/78386) - refactor(turbo-tasks): Use ResolvedVc for CollectiblesSource: [#&#8203;78392](https://github.com/vercel/next.js/issues/78392) - Turbopack: add random_change test case to test persistent caching changes: [#&#8203;78211](https://github.com/vercel/next.js/issues/78211) - Update Turbopack development test manifest: [#&#8203;78399](https://github.com/vercel/next.js/issues/78399) - Update Turbopack production test manifest: [#&#8203;78400](https://github.com/vercel/next.js/issues/78400) - Docs IA 2.0: Move `Static Exports` to guides, create `Self-hosting` guide: [#&#8203;78244](https://github.com/vercel/next.js/issues/78244) - docs(turbo-tasks): Lots of minor fixes, tweaks, and updates to the docs: [#&#8203;78329](https://github.com/vercel/next.js/issues/78329) - Docs IA 2.0: Move CI build caching page under guides, and create equivalent `/app` guide: [#&#8203;78416](https://github.com/vercel/next.js/issues/78416) - Docs IA 2.0: Move authentication page under `guides`: [#&#8203;78412](https://github.com/vercel/next.js/issues/78412) - docs: fix the path of the program attribute in debugging page: [#&#8203;78268](https://github.com/vercel/next.js/issues/78268) - test: log html output for a flaky test to debug it: [#&#8203;78424](https://github.com/vercel/next.js/issues/78424) - fix bad next.browser() arguments in socket.io test: [#&#8203;78309](https://github.com/vercel/next.js/issues/78309) - docs: update React Compiler docs: [#&#8203;78427](https://github.com/vercel/next.js/issues/78427) - \[ts-next-plugin] test: add `metadata` and `generateMetadata` fixtures: [#&#8203;78409](https://github.com/vercel/next.js/issues/78409) - Turbopack: fix data-url CSS Module client references: [#&#8203;78428](https://github.com/vercel/next.js/issues/78428) - Update Turbopack production test manifest: [#&#8203;78441](https://github.com/vercel/next.js/issues/78441) - Turbopack: Use single write to loader ipc socket: [#&#8203;78423](https://github.com/vercel/next.js/issues/78423) - Update Turbopack development test manifest: [#&#8203;78442](https://github.com/vercel/next.js/issues/78442) - test: flake debugging - avoid logs being eaten by jest: [#&#8203;78449](https://github.com/vercel/next.js/issues/78449) - test: ignore streaming metadata in toBeEmpty assertions: [#&#8203;78456](https://github.com/vercel/next.js/issues/78456) - build: Update `mdxjs-rs` to `v1`: [#&#8203;78469](https://github.com/vercel/next.js/issues/78469) - fix(turbopack): Fix sourcemap path on windows: [#&#8203;78453](https://github.com/vercel/next.js/issues/78453) - fix(turbo-tasks): Add a few more transient-from-persistent task assertions: [#&#8203;78301](https://github.com/vercel/next.js/issues/78301) - fix(CI): Reduce Rspack test retries from 2 to 0 to reduce timeouts: [#&#8203;78390](https://github.com/vercel/next.js/issues/78390) - test: attempt to de-flake graceful shutdown test: [#&#8203;78464](https://github.com/vercel/next.js/issues/78464) - Fix potential race condition in createRouterAct: [#&#8203;78473](https://github.com/vercel/next.js/issues/78473) - feat(turbopack): Implement side-effect optimization: [#&#8203;78047](https://github.com/vercel/next.js/issues/78047) - Docs IA 2.0: Move testing guides: [#&#8203;78418](https://github.com/vercel/next.js/issues/78418) - Update Turbopack production test manifest: [#&#8203;78491](https://github.com/vercel/next.js/issues/78491) - Turbopack: add app-dir alias for `next/*` subpackages: [#&#8203;78447](https://github.com/vercel/next.js/issues/78447) - Docs IA 2.0: Move pages from Config section into guides: [#&#8203;78496](https://github.com/vercel/next.js/issues/78496) - Docs IA 2.0: Move `src` folder page to API reference: [#&#8203;78499](https://github.com/vercel/next.js/issues/78499) - Docs: fix reference to `experimental.turbo`: [#&#8203;78507](https://github.com/vercel/next.js/issues/78507) - docs: added a few legacy version tags: [#&#8203;78506](https://github.com/vercel/next.js/issues/78506) - Turbopack: Add react refresh runtime stubs to workers: [#&#8203;78433](https://github.com/vercel/next.js/issues/78433) - Docs IA 2.0: Move optimizing pages to guides: [#&#8203;78500](https://github.com/vercel/next.js/issues/78500) - Docs IA 2.0: Delete config page in app docs: [#&#8203;78521](https://github.com/vercel/next.js/issues/78521) - fix(turbo-tasks): Store persistence of wrapped task on RawVc::LocalOutput: [#&#8203;78488](https://github.com/vercel/next.js/issues/78488) - docs: update redirected link: [#&#8203;78527](https://github.com/vercel/next.js/issues/78527) - Docs IA 2.0: Create `public` folder API reference: [#&#8203;78531](https://github.com/vercel/next.js/issues/78531) - Update Turbopack development test manifest: [#&#8203;78535](https://github.com/vercel/next.js/issues/78535) - Docs IA 2.0: Move Sass and CSS-in-JS pages to guides: [#&#8203;78536](https://github.com/vercel/next.js/issues/78536) - Turbopack: prevent hanging due to content hashing: [#&#8203;78545](https://github.com/vercel/next.js/issues/78545) - Docs IA 2.0: Move caching page to deep dive: [#&#8203;78537](https://github.com/vercel/next.js/issues/78537) - Batch ipc info messages to improve performance.: [#&#8203;78522](https://github.com/vercel/next.js/issues/78522) - docs: remove Vercel mentions and improve deployment page: [#&#8203;78557](https://github.com/vercel/next.js/issues/78557) - Clarify documentation on `to_resolved`. s/strongly/statically/: [#&#8203;78560](https://github.com/vercel/next.js/issues/78560) - Updating to AWS Amplify Hosting: [#&#8203;78564](https://github.com/vercel/next.js/issues/78564) - docs: add better-auth auth provider: [#&#8203;74075](https://github.com/vercel/next.js/issues/74075) - Turbopack: handle webpack loader event backpressure: [#&#8203;78462](https://github.com/vercel/next.js/issues/78462) - Turbopack: parallel search_index in trace server: [#&#8203;78357](https://github.com/vercel/next.js/issues/78357) - Update Turbopack development test manifest: [#&#8203;78614](https://github.com/vercel/next.js/issues/78614) - Update Turbopack production test manifest: [#&#8203;78613](https://github.com/vercel/next.js/issues/78613) - Turbopack: fix unused import on mac: [#&#8203;78341](https://github.com/vercel/next.js/issues/78341) - Update MDX documentation to use next-mdx-remote-client: [#&#8203;78347](https://github.com/vercel/next.js/issues/78347) - perf(turbopack): Remove `ImportBinding` fragments: [#&#8203;78470](https://github.com/vercel/next.js/issues/78470) - Turbopack: fix search_index merging in trace server: [#&#8203;78625](https://github.com/vercel/next.js/issues/78625) - docs: Add missing deprecation notice for legacyBehavior in Link component: [#&#8203;78405](https://github.com/vercel/next.js/issues/78405) - Turbopack: don't resolve traced references in dev: [#&#8203;78623](https://github.com/vercel/next.js/issues/78623) - Turbopack: Support passing binary data to Webpack loaders: [#&#8203;75056](https://github.com/vercel/next.js/issues/75056) - docs: link the Cloudflare adapter for Workers: [#&#8203;78610](https://github.com/vercel/next.js/issues/78610) - perf(turbo-tasks): Filter out `self` arguments: [#&#8203;78554](https://github.com/vercel/next.js/issues/78554) - refactor(turbo-tasks): Tighten up id factory overflow checks, tweak API to make construction easier: [#&#8203;78486](https://github.com/vercel/next.js/issues/78486) - refactor(turbo-tasks): Use an execution id instead of the parent task id to prevent local Vc escapes: [#&#8203;78487](https://github.com/vercel/next.js/issues/78487) - refactor(turbo-tasks): Remove task id from RawVc::LocalOutput: [#&#8203;78561](https://github.com/vercel/next.js/issues/78561) - Turbopack: avoid compation on initial write: [#&#8203;78342](https://github.com/vercel/next.js/issues/78342) - Turbopack: Extract `EsRegex` into `turbo-esregex` crate: [#&#8203;78639](https://github.com/vercel/next.js/issues/78639) - nit(turbo-tasks): Reorder the fields in RawVc::LocalOutput, add more documentation: [#&#8203;78562](https://github.com/vercel/next.js/issues/78562) - Update Turbopack development test manifest: [#&#8203;78660](https://github.com/vercel/next.js/issues/78660) - Turbopack: write a LOG file for the database: [#&#8203;78650](https://github.com/vercel/next.js/issues/78650) - Turbopack: Fix sizes=any with icon.svg metadata file: [#&#8203;78663](https://github.com/vercel/next.js/issues/78663) - Turbopack: commit compaction only when there are updates: [#&#8203;78651](https://github.com/vercel/next.js/issues/78651) - docs: improve `"use server"` inline example: [#&#8203;78653](https://github.com/vercel/next.js/issues/78653) - Update Nissuer to alert for vulnerability reports: [#&#8203;78417](https://github.com/vercel/next.js/issues/78417) - Enable prettier for turbopack: [#&#8203;78559](https://github.com/vercel/next.js/issues/78559) - fix: broken deploy test from [#&#8203;77898](https://github.com/vercel/next.js/issues/77898): [#&#8203;78692](https://github.com/vercel/next.js/issues/78692) - Fix timings data for deploy tests: [#&#8203;78681](https://github.com/vercel/next.js/issues/78681) - Turbopack: refactor codegen of module fragments: [#&#8203;78642](https://github.com/vercel/next.js/issues/78642) - Update Turbopack development test manifest: [#&#8203;78698](https://github.com/vercel/next.js/issues/78698) - Update Turbopack production test manifest: [#&#8203;78697](https://github.com/vercel/next.js/issues/78697) - test: migrate svgo webpack test: [#&#8203;78704](https://github.com/vercel/next.js/issues/78704) - fix(turbopack): Provide full path to SWC Wasm plugins: [#&#8203;78637](https://github.com/vercel/next.js/issues/78637) - Revert "\[next-lint] test: remove eslint config snapshot testing": [#&#8203;77824](https://github.com/vercel/next.js/issues/77824) - Turbopack: initially shard SST files: [#&#8203;78652](https://github.com/vercel/next.js/issues/78652) - Turbopack: reduce max coverage for compaction: [#&#8203;78649](https://github.com/vercel/next.js/issues/78649) - chore(turbopack): Bump rustc-hash from 2.1.0 to 2.1.1: [#&#8203;78721](https://github.com/vercel/next.js/issues/78721) - Turbopack: make_task_dirty only needs meta data: [#&#8203;78699](https://github.com/vercel/next.js/issues/78699) - chore(CI): Line-wrap afterBuild blocks in build_and_test.yml: [#&#8203;78718](https://github.com/vercel/next.js/issues/78718) - chore(CI): Re-run `pnpm install` after `pnpm build` in `build_reusable.yml`: [#&#8203;78720](https://github.com/vercel/next.js/issues/78720) - Update authentication.mdx: [#&#8203;78738](https://github.com/vercel/next.js/issues/78738) - chore(CI): Use `TEST_CONCURRENCY` by default in `run-tests.js`: [#&#8203;78731](https://github.com/vercel/next.js/issues/78731) - Update test new tests for deploy mode: [#&#8203;78737](https://github.com/vercel/next.js/issues/78737) - Update Turbopack development test manifest: [#&#8203;78741](https://github.com/vercel/next.js/issues/78741) - Turbopack: assign a high aggregation number to session dependent tasks: [#&#8203;78668](https://github.com/vercel/next.js/issues/78668) - Turbopack: Use separate meta and data modified flags: [#&#8203;78724](https://github.com/vercel/next.js/issues/78724) - Turbopack: add concurrency limit to effects: [#&#8203;78725](https://github.com/vercel/next.js/issues/78725) - Turbopack: refactor codegen: [#&#8203;78685](https://github.com/vercel/next.js/issues/78685) - Turbopack: correctly reference injected variable for Wasm on Edge: [#&#8203;78771](https://github.com/vercel/next.js/issues/78771) - Docs IA 2.0: Improve landing page, add intro to Getting Started page: [#&#8203;78765](https://github.com/vercel/next.js/issues/78765) - Stabilize back-forward-cache test cases: [#&#8203;78735](https://github.com/vercel/next.js/issues/78735) - De-dupe build_and_deploy run for PRs: [#&#8203;78792](https://github.com/vercel/next.js/issues/78792) - Revert "De-dupe build_and_deploy run for PRs": [#&#8203;78809](https://github.com/vercel/next.js/issues/78809) - Update flakey app-action test: [#&#8203;78797](https://github.com/vercel/next.js/issues/78797) - Update anyhow to 1.0.98: [#&#8203;78827](https://github.com/vercel/next.js/issues/78827) - Update Turbopack production test manifest: [#&#8203;78830](https://github.com/vercel/next.js/issues/78830) - \[test] Repro for dropped `ignoreList` by Turbopack in browser sourcemaps: [#&#8203;78822](https://github.com/vercel/next.js/issues/78822) - Update multi-zones.mdx: [#&#8203;78812](https://github.com/vercel/next.js/issues/78812) - chore(CI): Remove unused environment variables from `build_and_test.yml`: [#&#8203;78732](https://github.com/vercel/next.js/issues/78732) - Turbopack: avoid tracking a modification when adding an already existing item: [#&#8203;78726](https://github.com/vercel/next.js/issues/78726) - Turbopack: reduce the amount of task modifications caused by recomputation: [#&#8203;78728](https://github.com/vercel/next.js/issues/78728) - Turbopack: avoid depending on the Project: [#&#8203;78730](https://github.com/vercel/next.js/issues/78730) - Turbopack: use unstable sort for better performance: [#&#8203;78764](https://github.com/vercel/next.js/issues/78764) - chore(CI): Break pages-dir client-navigation dev tests into smaller parallelizable files/suites: [#&#8203;78787](https://github.com/vercel/next.js/issues/78787) - Turbopack: avoid storing task data and task cache concurrenctly: [#&#8203;78775](https://github.com/vercel/next.js/issues/78775) - Add a new `fs` method to track a glob.: [#&#8203;78686](https://github.com/vercel/next.js/issues/78686) - Add tests for normalize_path: [#&#8203;78840](https://github.com/vercel/next.js/issues/78840) - Turbopack: flush key spaces when done with them: [#&#8203;78776](https://github.com/vercel/next.js/issues/78776) - fix: error build if fixture typechecking fails: [#&#8203;78839](https://github.com/vercel/next.js/issues/78839) - doc: add build lifecycle hooks documentation: [#&#8203;78842](https://github.com/vercel/next.js/issues/78842) - Share logic across our two transforms: [#&#8203;78680](https://github.com/vercel/next.js/issues/78680) - Turbopack: add tracing to turbo-persistence: [#&#8203;78777](https://github.com/vercel/next.js/issues/78777) - Turbopack: fix task data category: [#&#8203;78873](https://github.com/vercel/next.js/issues/78873) - fix(react-compiler): Fix detection of interest: [#&#8203;78874](https://github.com/vercel/next.js/issues/78874) - Update Turbopack production test manifest: [#&#8203;78900](https://github.com/vercel/next.js/issues/78900) - Update Turbopack development test manifest: [#&#8203;78901](https://github.com/vercel/next.js/issues/78901) - Docs IA 2.0: Fonts: [#&#8203;78899](https://github.com/vercel/next.js/issues/78899) - Docs IA 2.0: Metadata: [#&#8203;78905](https://github.com/vercel/next.js/issues/78905) - Docs IA 2.0: Create tailwind guide: [#&#8203;78908](https://github.com/vercel/next.js/issues/78908) - feat(next-swc): Add a fast path to RC detector: [#&#8203;78920](https://github.com/vercel/next.js/issues/78920) - Turbopack: defer sourcemaps processing to codegen: [#&#8203;78855](https://github.com/vercel/next.js/issues/78855) - build: Update `swc_core` to `v23.2.0`: [#&#8203;78885](https://github.com/vercel/next.js/issues/78885) - Turbopack: create smaller initial files to reduce memory usage: [#&#8203;78778](https://github.com/vercel/next.js/issues/78778) - fix CSP docs: [#&#8203;78937](https://github.com/vercel/next.js/issues/78937) - Revert "build: Update `swc_core` to `v23.2.0`": [#&#8203;78935](https://github.com/vercel/next.js/issues/78935) - fix(CI): Remove e2e test timeout overrides from rspack & turbopack suites: [#&#8203;78934](https://github.com/vercel/next.js/issues/78934) - Update Turbopack development test manifest: [#&#8203;78953](https://github.com/vercel/next.js/issues/78953) - Turbopack: `ChunkingType::Parallel` with `hoisted` bool: [#&#8203;78922](https://github.com/vercel/next.js/issues/78922) - Update Turbopack production test manifest: [#&#8203;78952](https://github.com/vercel/next.js/issues/78952) - fix(CI): Avoid rebuilding native code in jobs that don't depend on native code: [#&#8203;78944](https://github.com/vercel/next.js/issues/78944) - Docs IA 2.0: Images: [#&#8203;78769](https://github.com/vercel/next.js/issues/78769) - chore(test/e2e): Remove stale TODO comment from webpack persistent caching test: [#&#8203;78946](https://github.com/vercel/next.js/issues/78946) - Docs: Fix headings in Getting Started: [#&#8203;78965](https://github.com/vercel/next.js/issues/78965) - Docs IA 2.0: Delete empty optimizing folder: [#&#8203;78966](https://github.com/vercel/next.js/issues/78966) - chore(CI): Split trailing-slashes suite cases into smaller suites, port to more modern e2e framework: [#&#8203;78890](https://github.com/vercel/next.js/issues/78890) - Turbopack: properly replace `__dirname` and `__filename`: [#&#8203;78843](https://github.com/vercel/next.js/issues/78843) - perf(turbopack): Remove needless clone of sourcemap: [#&#8203;78972](https://github.com/vercel/next.js/issues/78972) - build: Update `swc_core` to `v23.1.0` again with macos build fix: [#&#8203;78940](https://github.com/vercel/next.js/issues/78940) - Turbopack: cache directory creation: [#&#8203;78729](https://github.com/vercel/next.js/issues/78729) - Update Turbopack production test manifest: [#&#8203;78988](https://github.com/vercel/next.js/issues/78988) - Update Turbopack development test manifest: [#&#8203;78989](https://github.com/vercel/next.js/issues/78989) - fix(CI): Wait for lock when running apt-get: [#&#8203;78979](https://github.com/vercel/next.js/issues/78979) - chore(CI): Add a few more turbopack paths to labeler config: [#&#8203;78980](https://github.com/vercel/next.js/issues/78980) - chore(CI): Add Rspack labeler config: [#&#8203;79004](https://github.com/vercel/next.js/issues/79004) - perf(turbopack): Remove needless clone of SWC AST: [#&#8203;79007](https://github.com/vercel/next.js/issues/79007) - chore(CI): Split next-form tests into smaller suites/files that can be run more-in-parallel: [#&#8203;78891](https://github.com/vercel/next.js/issues/78891) - fix(CI): Remove comments from labeler config: [#&#8203;79015](https://github.com/vercel/next.js/issues/79015) - Turbopack next/font: Use a custom enum instead of `Result` for failed local font files: [#&#8203;78941](https://github.com/vercel/next.js/issues/78941) - Update middleware prefetch test: [#&#8203;79025](https://github.com/vercel/next.js/issues/79025) - Docs IA 2.0: CSS: [#&#8203;78996](https://github.com/vercel/next.js/issues/78996) - Update Rspack production test manifest: [#&#8203;79072](https://github.com/vercel/next.js/issues/79072) - docs: Fix grammar on `Update static-exports.mdx`: [#&#8203;79091](https://github.com/vercel/next.js/issues/79091) - Update Rspack development test manifest: [#&#8203;79071](https://github.com/vercel/next.js/issues/79071) - perf(turbopack): Update `modularize_imports`: [#&#8203;79012](https://github.com/vercel/next.js/issues/79012) - build: Update `swc_core` to `v24.0.0`: [#&#8203;79092](https://github.com/vercel/next.js/issues/79092) - Revert "build: Update `swc_core` to `v24.0.0`": [#&#8203;79102](https://github.com/vercel/next.js/issues/79102) - chore(CI): Add back test retries (again) to arewerspackyet tests: [#&#8203;79014](https://github.com/vercel/next.js/issues/79014) - Turbopack: hash next/font filename to shorten it: [#&#8203;79089](https://github.com/vercel/next.js/issues/79089) - Upgrade lightningcss: [#&#8203;79096](https://github.com/vercel/next.js/issues/79096) - Turbopack: refactor into `traverse_edges_fixed_point`: [#&#8203;79078](https://github.com/vercel/next.js/issues/79078) - \[test] Move test selectors as close to the actual value as possible: [#&#8203;78931](https://github.com/vercel/next.js/issues/78931) - test: split basic HMR test into multiple files: [#&#8203;79064](https://github.com/vercel/next.js/issues/79064) - test: split full reload HMR test into multiple files: [#&#8203;79065](https://github.com/vercel/next.js/issues/79065) - Update rust toolchain to 2025-05-12: [#&#8203;79099](https://github.com/vercel/next.js/issues/79099) - Rust: Update safe crates to 2024 Edition: [#&#8203;79104](https://github.com/vercel/next.js/issues/79104) - build(next-swc): Drop `swc_bundler`: [#&#8203;79113](https://github.com/vercel/next.js/issues/79113) - chore(CI): Split basepath test suite into smaller and more parallel test suites: [#&#8203;78892](https://github.com/vercel/next.js/issues/78892) - test: split error recovery HMR test into multiple files: [#&#8203;79066](https://github.com/vercel/next.js/issues/79066) - test: split hot module reload HMR test into multiple files: [#&#8203;79067](https://github.com/vercel/next.js/issues/79067) - test: remove unnecessary conditionals in error recovery tests: [#&#8203;73625](https://github.com/vercel/next.js/issues/73625) - Revert toolchain update to 2025-05-12: [#&#8203;79117](https://github.com/vercel/next.js/issues/79117) - test: replace duplicate test utils to next instance: [#&#8203;73624](https://github.com/vercel/next.js/issues/73624) - chore(CI): Split i18n-data-fetching-redirect test suite into smaller and more parallel test suites: [#&#8203;78893](https://github.com/vercel/next.js/issues/78893) - fix: pnp test cases failed when using rspack: [#&#8203;79084](https://github.com/vercel/next.js/issues/79084) - Turbopack: Make `turbopack-core` Rust 2024: [#&#8203;79131](https://github.com/vercel/next.js/issues/79131) - Docs: Add PPR page to getting started section: [#&#8203;79076](https://github.com/vercel/next.js/issues/79076) - Update Turbopack production test manifest: [#&#8203;79139](https://github.com/vercel/next.js/issues/79139) - Update Turbopack development test manifest: [#&#8203;79140](https://github.com/vercel/next.js/issues/79140) - Update Rspack production test manifest: [#&#8203;79138](https://github.com/vercel/next.js/issues/79138) - Fix false-positive `"use cache"` misplacement error: [#&#8203;79151](https://github.com/vercel/next.js/issues/79151) - docs: use single quote for `'use client'` directive: [#&#8203;79114](https://github.com/vercel/next.js/issues/79114) - docs: improve `'use client'` directive and client components: [#&#8203;79115](https://github.com/vercel/next.js/issues/79115) - Turbopack: remove unused `EcmascriptInputTransform::CommonJs`: [#&#8203;79148](https://github.com/vercel/next.js/issues/79148) - \[test] Add `debug-brk` package script: [#&#8203;79097](https://github.com/vercel/next.js/issues/79097) - perf(turbopack): Optimize `next_page_static_info`: [#&#8203;79009](https://github.com/vercel/next.js/issues/79009) - Reference the workUnitStore when determining bailout to CSR: [#&#8203;79118](https://github.com/vercel/next.js/issues/79118) - Revert "Fix false-positive `"use cache"` misplacement error": [#&#8203;79160](https://github.com/vercel/next.js/issues/79160) - build: Update `swc_core` to `v24.0.0`: [#&#8203;79103](https://github.com/vercel/next.js/issues/79103) - docs: Fix grammar in `vitest.mdx` (How to set up Vitest with Next.js): [#&#8203;78654](https://github.com/vercel/next.js/issues/78654) - \[release] enable changesets: [#&#8203;79035](https://github.com/vercel/next.js/issues/79035) - Remove uses of `read_glob` from `node_native_bindings`: [#&#8203;79154](https://github.com/vercel/next.js/issues/79154) - chore(turbopack): Add a span for sourcemap generation: [#&#8203;79170](https://github.com/vercel/next.js/issues/79170) - Add `rustc-ice` files to gitignore: [#&#8203;79167](https://github.com/vercel/next.js/issues/79167) - Update Rspack development test manifest: [#&#8203;79174](https://github.com/vercel/next.js/issues/79174) - Update Rspack production test manifest: [#&#8203;79185](https://github.com/vercel/next.js/issues/79185) - Update Turbopack production test manifest: [#&#8203;79186](https://github.com/vercel/next.js/issues/79186) - Update Rspack development test manifest: [#&#8203;79184](https://github.com/vercel/next.js/issues/79184) - Docs: Change `mjs` codeblocks to `js` : [#&#8203;79163](https://github.com/vercel/next.js/issues/79163) - chore: Update DevEx team changes in labeler: [#&#8203;79191](https://github.com/vercel/next.js/issues/79191) - Docs: Visual nits: [#&#8203;79198](https://github.com/vercel/next.js/issues/79198) - Docs IA 2.0: Move Edge Runtime information to API reference: [#&#8203;79152](https://github.com/vercel/next.js/issues/79152) - Prettier ignore changeset's format: [#&#8203;79203](https://github.com/vercel/next.js/issues/79203) - perf(turbopack): Do not inline synthesized content for sourcemaps: [#&#8203;79173](https://github.com/vercel/next.js/issues/79173) - Revert "Update mappings in `launch.json` to improve debugging in VSCode ([#&#8203;76559](https://github.com/vercel/next.js/issues/76559))": [#&#8203;79206](https://github.com/vercel/next.js/issues/79206) - perf(turbopack): Use `Byte::from_static` when possible: [#&#8203;79215](https://github.com/vercel/next.js/issues/79215) - Add recent Turbopack reformats to blame-ignore: [#&#8203;79187](https://github.com/vercel/next.js/issues/79187) - perf(turbopack): Drop AST node before generating source maps: [#&#8203;79219](https://github.com/vercel/next.js/issues/79219) - \[turbopack] Delete the `read_glob` function: [#&#8203;79166](https://github.com/vercel/next.js/issues/79166) - \[ts-next-plugin] test: add client-boundary test: [#&#8203;79194](https://github.com/vercel/next.js/issues/79194) - Reland: Fix false-positive `"use cache"` misplacement error: [#&#8203;79222](https://github.com/vercel/next.js/issues/79222) - Turbopack: Allow fully dynamic import() in node_modules: [#&#8203;79153](https://github.com/vercel/next.js/issues/79153) - Update Turbopack development test manifest: [#&#8203;79233](https://github.com/vercel/next.js/issues/79233) - Docs: Fix page order in Getting Started: [#&#8203;79240](https://github.com/vercel/next.js/issues/79240) - Docs IA 2.0: Server and Client Components: [#&#8203;79143](https://github.com/vercel/next.js/issues/79143) - Docs IA 2.0: Delete rendering section: [#&#8203;79244](https://github.com/vercel/next.js/issues/79244) - Docs: Fix syntax highlighting, add missing js code blocks: [#&#8203;79246](https://github.com/vercel/next.js/issues/79246) - perf(turbopack): Implement `ShrinkToFit` for `AutoMap`: [#&#8203;79218](https://github.com/vercel/next.js/issues/79218) - docs: add missing links and imports to `cacheLife` and `cacheTag` for prerender-missing-suspense error: [#&#8203;79247](https://github.com/vercel/next.js/issues/79247) - test: fix snapshots in failing tests: [#&#8203;79254](https://github.com/vercel/next.js/issues/79254) - fix(turbopack): prepend a question mark in AssetIdent display: [#&#8203;78977](https://github.com/vercel/next.js/issues/78977) - Update Turbopack development test manifest: [#&#8203;79278](https://github.com/vercel/next.js/issues/79278) - Update Turbopack production test manifest: [#&#8203;79277](https://github.com/vercel/next.js/issues/79277) - Update Rspack production test manifest: [#&#8203;79275](https://github.com/vercel/next.js/issues/79275) - Turbopack: remove dead code: [#&#8203;79280](https://github.com/vercel/next.js/issues/79280) - perf(turbopack): Use rayon threadpool for `minify()`: [#&#8203;79261](https://github.com/vercel/next.js/issues/79261) - Revert "perf(turbopack): Use rayon threadpool for `minify()`": [#&#8203;79296](https://github.com/vercel/next.js/issues/79296) - perf(turbopack): Update `sourcemap` to make `flatten()` faster: [#&#8203;79297](https://github.com/vercel/next.js/issues/79297) - docs: streaming responses with pages API routes: [#&#8203;79269](https://github.com/vercel/next.js/issues/79269) - feat: `--rspack` flag for create next app: [#&#8203;79077](https://github.com/vercel/next.js/issues/79077) - Do not run CI for modifying changeset related files: [#&#8203;79315](https://github.com/vercel/next.js/issues/79315) - build(next-swc): Update `swc_core` to `v25.0.0`: [#&#8203;79319](https://github.com/vercel/next.js/issues/79319) - Disable `dynamicIO` in global default cache handler test: [#&#8203;79300](https://github.com/vercel/next.js/issues/79300) - Enable PPR in Dynamic IO tests: [#&#8203;79301](https://github.com/vercel/next.js/issues/79301) - Turbopack build: Add test skip that is also skipped for dev: [#&#8203;79241](https://github.com/vercel/next.js/issues/79241) - Add missing / to deploying link - \[test] Use unique error messages in `server-source-maps`: [#&#8203;79108](https://github.com/vercel/next.js/issues/79108) - refactor(turbopack-resolver): rename filed plugins to after_resolve_plugins: [#&#8203;79286](https://github.com/vercel/next.js/issues/79286) - Update Rspack development test manifest: [#&#8203;79356](https://github.com/vercel/next.js/issues/79356) - Update Rspack production test manifest: [#&#8203;79357](https://github.com/vercel/next.js/issues/79357) - Docs: Experimental taint option in next.config.js: [#&#8203;79293](https://github.com/vercel/next.js/issues/79293) - docs: --verbose option in dev mode is not yet supported: [#&#8203;79366](https://github.com/vercel/next.js/issues/79366) - Update Turbopack development test manifest: [#&#8203;79358](https://github.com/vercel/next.js/issues/79358) - docs: Fix flag for taint: [#&#8203;79370](https://github.com/vercel/next.js/issues/79370) - test: fix more Runtime/Recoverable Error flakiness in HMR: [#&#8203;79371](https://github.com/vercel/next.js/issues/79371) - Remove obsolete `ppr` configs from Dynamic IO tests: [#&#8203;79305](https://github.com/vercel/next.js/issues/79305) - Turbopack: don't emit unnecessary block: [#&#8203;79361](https://github.com/vercel/next.js/issues/79361) - perf(turbopack): Spawn only one thread for one `write file` effect: [#&#8203;79318](https://github.com/vercel/next.js/issues/79318) - \[release] add new ci to use changesets/action for stable release: [#&#8203;79037](https://github.com/vercel/next.js/issues/79037) - fix(doc): fix typo: [#&#8203;79369](https://github.com/vercel/next.js/issues/79369) - \[release] couple `next` and `@next/swc` versions: [#&#8203;79036](https://github.com/vercel/next.js/issues/79036) - \[release] use changesets/action for canary release: [#&#8203;79038](https://github.com/vercel/next.js/issues/79038) - \[release] create empty changeset for next when no changeset found during canary release: [#&#8203;79049](https://github.com/vercel/next.js/issues/79049) - \[release] couple `next` and `@next/swc` versions: [#&#8203;79036](https://github.com/vercel/next.js/issues/79036) - \[release] use changesets/action for canary release: [#&#8203;79038](https://github.com/vercel/next.js/issues/79038) - \[release] create empty changeset for next when no changeset found during canary release: [#&#8203;79049](https://github.com/vercel/next.js/issues/79049) - Unroll recursion in `RuleCondition::matches` This trades allocations due to `Box::pin` calls during recursion for an explicit stack and a tiny interpreter loop.: [#&#8203;79310](https://github.com/vercel/next.js/issues/79310) - Update Turbopack production test manifest: [#&#8203;79359](https://github.com/vercel/next.js/issues/79359) - Update Rspack development test manifest: [#&#8203;79392](https://github.com/vercel/next.js/issues/79392) - Update Rspack production test manifest: [#&#8203;79393](https://github.com/vercel/next.js/issues/79393) - Update Turbopack production test manifest: [#&#8203;79395](https://github.com/vercel/next.js/issues/79395) - Update Turbopack development test manifest: [#&#8203;79396](https://github.com/vercel/next.js/issues/79396) - Turbopack Build: Fix next/dynamic test: [#&#8203;79407](https://github.com/vercel/next.js/issues/79407) - \[release] fix: use correct step id when publishing: [#&#8203;79408](https://github.com/vercel/next.js/issues/79408) - Turbopack build: Fix NODE_ENV test: [#&#8203;79377](https://github.com/vercel/next.js/issues/79377) - Turbopack build: Fix production-browser-sourcemaps test: [#&#8203;79374](https://github.com/vercel/next.js/issues/79374) - Fork the globset strategy for turbopack: [#&#8203;79333](https://github.com/vercel/next.js/issues/79333) - build: Update `swc_core` to `v26.0.0`: [#&#8203;79411](https://github.com/vercel/next.js/issues/79411) - docs: fix spacing in installation instructions: [#&#8203;79257](https://github.com/vercel/next.js/issues/79257) - Turbopack build: Skip test that is not relevant for Turbopack: [#&#8203;79376](https://github.com/vercel/next.js/issues/79376) - Update test E2E deploy workflow to accept version: [#&#8203;79420](https://github.com/vercel/next.js/issues/79420) - Turbopack Build: Add comment explaining reason for skipped test: [#&#8203;79418](https://github.com/vercel/next.js/issues/79418) - Docs IA 2.0: Move ISR page to guides: [#&#8203;79283](https://github.com/vercel/next.js/issues/79283) - Update Turbopack production test manifest: [#&#8203;79435](https://github.com/vercel/next.js/issues/79435) - Update Turbopack development test manifest: [#&#8203;79436](https://github.com/vercel/next.js/issues/79436) - Turbopack build: Skip test that is not relevant for Turbopack: [#&#8203;79376](https://github.com/vercel/next.js/issues/79376) - Update test E2E deploy workflow to accept version: [#&#8203;79420](https://github.com/vercel/next.js/issues/79420) - Turbopack Build: Add comment explaining reason for skipped test: [#&#8203;79418](https://github.com/vercel/next.js/issues/79418) - Docs IA 2.0: Move ISR page to guides: [#&#8203;79283](https://github.com/vercel/next.js/issues/79283) - Update Turbopack production test manifest: [#&#8203;79435](https://github.com/vercel/next.js/issues/79435) - Update Turbopack development test manifest: [#&#8203;79436](https://github.com/vercel/next.js/issues/79436) - Turbopack Build: Fix css-modules test: [#&#8203;79441](https://github.com/vercel/next.js/issues/79441) - docs: `htmlLimitedBots` config value should be a RegExp: [#&#8203;79454](https://github.com/vercel/next.js/issues/79454) - Docs IA 2.0: Review fetching page and move examples: [#&#8203;79200](https://github.com/vercel/next.js/issues/79200) - Docs IA 2.0: Add i18n guides: [#&#8203;79391](https://github.com/vercel/next.js/issues/79391) - Docs: Fix broken link: [#&#8203;79456](https://github.com/vercel/next.js/issues/79456) - Turbopack: add webpack scope-hoisting tests: [#&#8203;79457](https://github.com/vercel/next.js/issues/79457) - \[test] Use NEXT_TEST_CI when forking test in CI: [#&#8203;79354](https://github.com/vercel/next.js/issues/79354) - Docs: Remove non breaking space: [#&#8203;79468](https://github.com/vercel/next.js/issues/79468) - \[sync-react] Base PR on target ref of workflow: [#&#8203;79466](https://github.com/vercel/next.js/issues/79466) - disallow unstable_rootParams in client components: [#&#8203;79471](https://github.com/vercel/next.js/issues/79471) - Update Rspack production test manifest: [#&#8203;79432](https://github.com/vercel/next.js/issues/79432) - Turbopack: avoid negative uppers and follower and use retry loop instead: [#&#8203;79451](https://github.com/vercel/next.js/issues/79451) - build: Update `swc_core` to `v26.0.1` and `styled-jsx`: [#&#8203;79464](https://github.com/vercel/next.js/issues/79464) - fix(next-swc): Fix react compiler usefulness detector: [#&#8203;79479](https://github.com/vercel/next.js/issues/79479) - fix(test/e2e): Increase timeout of flaky basepath test: [#&#8203;79481](https://github.com/vercel/next.js/issues/79481) - build: Update `swc_core` to `v26.0.1` and `styled-jsx`: [#&#8203;79464](https://github.com/vercel/next.js/issues/79464) - fix(next-swc): Fix react compiler usefulness detector: [#&#8203;79479](https://github.com/vercel/next.js/issues/79479) - fix(test/e2e): Increase timeout of flaky basepath test: [#&#8203;79481](https://github.com/vercel/next.js/issues/79481) - Docs IA 2.0: Reorder PPR page and fix some nits: [#&#8203;79282](https://github.com/vercel/next.js/issues/79282) - Docs: Align with react docs server functions: [#&#8203;79442](https://github.com/vercel/next.js/issues/79442) - Turbopack Build: Fix \_error loading test: [#&#8203;79455](https://github.com/vercel/next.js/issues/79455) - Turbopack Build: Fix dynamic-missing-gsp test: [#&#8203;79472](https://github.com/vercel/next.js/issues/79472) - Turbopack: remove unused ModuleWithDirection from Node runtime: [#&#8203;79458](https://github.com/vercel/next.js/issues/79458) - Turbopack Build: Fix next/font test: [#&#8203;79502](https://github.com/vercel/next.js/issues/79502) - perf(turbopack): Use sourcemap with perf patches: [#&#8203;79501](https://github.com/vercel/next.js/issues/79501) - \[turbopack] Fix a buggy serializer: [#&#8203;79520](https://github.com/vercel/next.js/issues/79520) - chore(turbopack): Remove unused macro definition: [#&#8203;79521](https://github.com/vercel/next.js/issues/79521) - Update Rspack production test manifest: [#&#8203;79484](https://github.com/vercel/next.js/issues/79484) - Update Rspack development test manifest: [#&#8203;79485](https://github.com/vercel/next.js/issues/79485) - Update Turbopack production test manifest: [#&#8203;79487](https://github.com/vercel/next.js/issues/79487) - Update Turbopack development test manifest: [#&#8203;79488](https://github.com/vercel/next.js/issues/79488) - docs: Rename CSS snippet to blog.module.css: [#&#8203;79507](https://github.com/vercel/next.js/issues/79507) - add feature flag to verify aggregation graph: [#&#8203;78964](https://github.com/vercel/next.js/issues/78964) - Turbopack: leave `chunks` in `rscModuleMapping` empty: [#&#8203;79511](https://github.com/vercel/next.js/issues/79511) - \[release] use changesets/action for release-candidate: [#&#8203;79039](https://github.com/vercel/next.js/issues/79039) - \[release] notify release status via slack: [#&#8203;79409](https://github.com/vercel/next.js/issues/79409) - refactor(turbopack): Refactor usage of visitors: [#&#8203;79525](https://github.com/vercel/next.js/issues/79525) - \[turbopack] Fix the stubbed out implementation of `signature` so that it works in a web worker.: [#&#8203;79509](https://github.com/vercel/next.js/issues/79509) - fix(next-swc): Fix interestingness detection for React Compiler: [#&#8203;79499](https://github.com/vercel/next.js/issues/79499) - perf(turbopack): Remove extra indirection: [#&#8203;79553](https://github.com/vercel/next.js/issues/79553) - refactor(turbopack): Remove `PassFactory`: [#&#8203;79555](https://github.com/vercel/next.js/issues/79555) - Fix build and deploy workflow: [#&#8203;79569](https://github.com/vercel/next.js/issues/79569) - Add final build job to validate: [#&#8203;79570](https://github.com/vercel/next.js/issues/79570) - de-flake ReactRefreshLogBox (app): [#&#8203;79573](https://github.com/vercel/next.js/issues/79573) - Disable `"use cache"` deploy tests: [#&#8203;79586](https://github.com/vercel/next.js/issues/79586) - report build-and-deploy failures only after retries: [#&#8203;79574](https://github.com/vercel/next.js/issues/79574) - \[release-legacy] fix: set `stable` dist tag for backport releases instead of `latest`: [#&#8203;79596](https://github.com/vercel/next.js/issues/79596) - docs (data fetching): fix typo in startTransition call: [#&#8203;79578](https://github.com/vercel/next.js/issues/79578) - Fix --tag argument in publish-release: [#&#8203;79599](https://github.com/vercel/next.js/issues/79599) - Ensure scripts are included in root tsconfig: [#&#8203;79600](https://github.com/vercel/next.js/issues/79600) - \[release] fix: `GITHUB_TOKEN` is needed to open release pr: [#&#8203;79609](https://github.com/vercel/next.js/issues/79609) - \[release-old] use `backport` NPM dist tag instead of `stable` for backports: [#&#8203;79612](https://github.com/vercel/next.js/issues/79612) - Turbopack: use unsigned values for follower and upper edges: [#&#8203;79489](https://github.com/vercel/next.js/issues/79489) - \[release] fix: correctly set tag during publish: [#&#8203;79548](https://github.com/vercel/next.js/issues/79548) - \[release] use `backport` NPM dist tag for backports: [#&#8203;79538](https://github.com/vercel/next.js/issues/79538) - \[release-new] fix: release pr commit contains `(#number)` at last: [#&#8203;79611](https://github.com/vercel/next.js/issues/79611) - Unflake `Undefined default export` test: [#&#8203;79632](https://github.com/vercel/next.js/issues/79632) - \[release-new] move "add label to pr" workflow from publish to trigger: [#&#8203;79619](https://github.com/vercel/next.js/issues/79619) - chore(turbo-tasks): Remove old and unused `turbo-tasks-memory` backend: [#&#8203;79560](https://github.com/vercel/next.js/issues/79560) - Update Turbopack development test manifest: [#&#8203;79603](https://github.com/vercel/next.js/issues/79603) - Enforce consistency between packages in preview builds: [#&#8203;79610](https://github.com/vercel/next.js/issues/79610) - Turbopack: improve error handling when DB read/deserialization fails: [#&#8203;79545](https://github.com/vercel/next.js/issues/79545) - Docs IA 2.0: Create Forms guide: [#&#8203;79288](https://github.com/vercel/next.js/issues/79288) - Docs IA 2.0: Create intercepting and parallel routes API reference: [#&#8203;79405](https://github.com/vercel/next.js/issues/79405) - Docs IA 2.0: Add examples to layout.js: [#&#8203;79453](https://github.com/vercel/next.js/issues/79453) - Docs IA 2.0: Update template.js API reference: [#&#8203;79490](https://github.com/vercel/next.js/issues/79490) - Docs IA 2.0: Create Dynamic Segments API reference, add example to getting started. : [#&#8203;79439](https://github.com/vercel/next.js/issues/79439) - Turbopack: avoid panics due to eventual consistency: [#&#8203;79242](https://github.com/vercel/next.js/issues/79242) - Next IA 2.0: Create Route Groups API reference, simplifying wording: [#&#8203;79444](https://github.com/vercel/next.js/issues/79444) - Update Turbopack production test manifest: [#&#8203;79647](https://github.com/vercel/next.js/issues/79647) - Docs IA 2.0: Move Redirects page to guides: [#&#8203;79447](https://github.com/vercel/next.js/issues/79447) - Docs IA 2.0: Add `Caching and Revalidating` page: [#&#8203;79493](https://github.com/vercel/next.js/issues/79493) - Docs: scrub html in `ld+json` script: [#&#8203;79627](https://github.com/vercel/next.js/issues/79627) - Turbopack Build: Fix edge \_document test: [#&#8203;79628](https://github.com/vercel/next.js/issues/79628) - Turbopack Build: Fix conflicting page error: [#&#8203;79634](https://github.com/vercel/next.js/issues/79634) - Turbopack Build: Fix runtime value test: [#&#8203;79654](https://github.com/vercel/next.js/issues/79654) - Docs IA 2.0: Delete Error Handling page: [#&#8203;79495](https://github.com/vercel/next.js/issues/79495) - Turbopack Build: Skip edge stacktrace test: [#&#8203;79661](https://github.com/vercel/next.js/issues/79661) - Fix name tracking for closures in server actions transform: [#&#8203;79657](https://github.com/vercel/next.js/issues/79657) - Turbopack Build: Fix middleware rewrite test: [#&#8203;79697](https://github.com/vercel/next.js/issues/79697) - Update flakey empty-project test: [#&#8203;79734](https://github.com/vercel/next.js/issues/79734) - Update Rspack production test manifest: [#&#8203;79645](https://github.com/vercel/next.js/issues/79645) - Update Turbopack development test manifest: [#&#8203;79646](https://github.com/vercel/next.js/issues/79646) - Update Rspack development test manifest: [#&#8203;79644](https://github.com/vercel/next.js/issues/79644) - perf(turbopack): Remove indent in intermediate string: [#&#8203;79754](https://github.com/vercel/next.js/issues/79754) - fix(turbopack): Use comments instead of AST nodes for unreachables: [#&#8203;79703](https://github.com/vercel/next.js/issues/79703) - Docs: Fix headings: [#&#8203;79777](https://github.com/vercel/next.js/issues/79777) - Turbopack Build: Fix metadata test: [#&#8203;79776](https://github.com/vercel/next.js/issues/79776) - chore(turbopack): Update `swc_core` to `v26.2.2`: [#&#8203;79756](https://github.com/vercel/next.js/issues/79756) - re-enable vary header deploy test: [#&#8203;79753](https://github.com/vercel/next.js/issues/79753) - refactor(turbopack): Preserve indents in dev mode codegen: [#&#8203;79786](https://github.com/vercel/next.js/issues/79786) - Docs: `force-static` w/ revalidate, revalidatePath, and revalidateTag: [#&#8203;79780](https://github.com/vercel/next.js/issues/79780) - Turbopack: split meta data and AQMF into separate files: [#&#8203;79659](https://github.com/vercel/next.js/issues/79659) - Update script location used in `pnpm unpack-next`: [#&#8203;79626](https://github.com/vercel/next.js/issues/79626) - chore(ci): Configure automated benchmark for turbopack: [#&#8203;79791](https://github.com/vercel/next.js/issues/79791) - \[turbopack] Reduce the size of module graph datastructures: [#&#8203;79706](https://github.com/vercel/next.js/issues/79706) - chore(ci): Add large benchmark: [#&#8203;79793](https://github.com/vercel/next.js/issues/79793) - Update Turbopack development test manifest: [#&#8203;79774](https://github.com/vercel/next.js/issues/79774) - Update Turbopack production test manifest: [#&#8203;79773](https://github.com/vercel/next.js/issues/79773) - fix(next-swc): Fix specificity issue of `styled-jsx` in lightningcss mode: [#&#8203;79802](https://github.com/vercel/next.js/issues/79802) - Update Rspack development test manifest: [#&#8203;79772](https://github.com/vercel/next.js/issues/79772) - chore(turbo-tasks-backend): Fix build with `--features turbo-tasks-backend/lmdb`: [#&#8203;79530](https://github.com/vercel/next.js/issues/79530) - Turbopack: persist and compare errors and panics: [#&#8203;77935](https://github.com/vercel/next.js/issues/77935) - Turbopack: add test for reexport cycles: [#&#8203;79792](https://github.com/vercel/next.js/issues/79792) - \[release-new] fix: slack notification only if is a publish workflow: [#&#8203;79933](https://github.com/vercel/next.js/issues/79933) - Update Rspack production test manifest: [#&#8203;79923](https://github.com/vercel/next.js/issues/79923) - chore(ci): Configure small benchmark for builds: [#&#8203;79796](https://github.com/vercel/next.js/issues/79796) - \[turbopack] Fix URL fragment and query handling in Turbopack: [#&#8203;79993](https://github.com/vercel/next.js/issues/79993) - chore(turbopack): Cleanup benchmark code: [#&#8203;79943](https://github.com/vercel/next.js/issues/79943) - chore(ci): Run turbopack benchmark from custom runners: [#&#8203;79979](https://github.com/vercel/next.js/issues/79979) - fix: update rspack production build output snapshot: [#&#8203;79766](https://github.com/vercel/next.js/issues/79766) - \[turbopack] Create a macro rcstr! for constructing RcStr from string literals.: [#&#8203;79759](https://github.com/vercel/next.js/issues/79759) - Turbopack: add print_cache_item_size feature flag to print cache size per task: [#&#8203;80043](https://github.com/vercel/next.js/issues/80043) - Turbopack: remove verbose output: [#&#8203;80044](https://github.com/vercel/next.js/issues/80044) - docs: Reference to statically imported images: [#&#8203;80048](https://github.com/vercel/next.js/issues/80048) - Docs: Drop innacurate override information for dynamicParams: [#&#8203;79966](https://github.com/vercel/next.js/issues/79966) - chore: Use same function references in useReportWebVitals examples: [#&#8203;79963](https://github.com/vercel/next.js/issues/79963) - refactor(turbopack): Do not use `Result` for `Rope#read`: [#&#8203;80004](https://github.com/vercel/next.js/issues/80004) - Turbopack Build: Fix next-font test: [#&#8203;80049](https://github.com/vercel/next.js/issues/80049) - chore(ci): Disable flaky turbopack benchmarks: [#&#8203;80058](https://github.com/vercel/next.js/issues/80058) - Turbopack Build: Implement locale:false middleware matcher: [#&#8203;80057](https://github.com/vercel/next.js/issues/80057) - \[turbopack] Simplify the definition of AssetIdent: [#&#8203;79805](https://github.com/vercel/next.js/issues/79805) - Update Rspack production test manifest: [#&#8203;80038](https://github.com/vercel/next.js/issues/80038) - Update Turbopack production test manifest: [#&#8203;80040](https://github.com/vercel/next.js/issues/80040) - Update Rspack development test manifest: [#&#8203;80039](https://github.com/vercel/next.js/issues/80039) - chore(turbopack): Update `rust-sourcemap` to `v9.2.2`: [#&#8203;80066](https://github.com/vercel/next.js/issues/80066) - chore(turbopack): Remove `Lightningcss` prefix for CSS types: [#&#8203;80067](https://github.com/vercel/next.js/issues/80067) - build(turbopack): Update `swc_core` to `v26.3.3`: [#&#8203;80059](https://github.com/vercel/next.js/issues/80059) - perf(turbopack): Use owned instance of `Code` for `minify()`: [#&#8203;79991](https://github.com/vercel/next.js/issues/79991) - Update Turbopack development test manifest: [#&#8203;80041](https://github.com/vercel/next.js/issues/80041) - docs: Manual calls to action should we wrapped in startTransition: [#&#8203;80101](https://github.com/vercel/next.js/issues/80101) - \[dev-tools] Re-focus previous item after closing sub menu: [#&#8203;80099](https://github.com/vercel/next.js/issues/80099) - perf(turbopack/rcstr): Precompute hash for equality bailout: [#&#8203;78943](https://github.com/vercel/next.js/issues/78943) - perf(turbopack/rcstr): Use precomputed hash: [#&#8203;80074](https://github.com/vercel/next.js/issues/80074) - Docs: Improve Turbopack webpack loader documentation: [#&#8203;79523](https://github.com/vercel/next.js/issues/79523) - fix(turbopack): Allow google font fetch errors to propagate when in production: [#&#8203;79999](https://github.com/vercel/next.js/issues/79999) - chore(turbopack): Fix building local crates with `--all-features`: [#&#8203;80117](https://github.com/vercel/next.js/issues/80117) - fix React 18 test failures: [#&#8203;80119](https://github.com/vercel/next.js/issues/80119) - chore(turbopack): Remove unused dependencies reported by cargo-shear: [#&#8203;80121](https://github.com/vercel/next.js/issues/80121) - \[turbopack] Eliminate many calls to `into` and from and cell involving RcStr: [#&#8203;80076](https://github.com/vercel/next.js/issues/80076) - fix(turbo-persistence): Atomically mark old versioned directories for deletion before deleting them: [#&#8203;80082](https://github.com/vercel/next.js/issues/80082) - Turbopack: Improve errors when opening SST files: [#&#8203;80106](https://github.com/vercel/next.js/issues/80106) - chore(turbopack): Use label for large benchmark: [#&#8203;80114](https://github.com/vercel/next.js/issues/80114) - \[test] add custom timeout for start server: [#&#8203;80160](https://github.com/vercel/next.js/issues/80160) - Turbopack: Fix sst filter handling and order for meta files: [#&#8203;80147](https://github.com/vercel/next.js/issues/80147) - Turbopack Build: Fix metadata dynamic force-dynamic: [#&#8203;80167](https://github.com/vercel/next.js/issues/80167) - \[turbopack] Remove turbo_tasks::value attribute from NativeFunction - Turbopack: add tool to print DB structure: [#&#8203;80148](https://github.com/vercel/next.js/issues/80148) - Update Rspack production test manifest: [#&#8203;80136](https://github.com/vercel/next.js/issues/80136) - small typo fix: [#&#8203;80171](https://github.com/vercel/next.js/issues/80171) - build(turbopack): Update `swc_core` to `v26.4.4`: [#&#8203;80161](https://github.com/vercel/next.js/issues/80161) - \[turbopack] Remove uses of `Value<ClientContextType>` by making `ClientContextType` a TaskInput: [#&#8203;80127](https://github.com/vercel/next.js/issues/80127) - Update Turbopack development test manifest: [#&#8203;80196](https://github.com/vercel/next.js/issues/80196) - Update Rspack production test manifest: [#&#8203;80192](https://github.com/vercel/next.js/issues/80192) - Update Rspack development test manifest: [#&#8203;80193](https://github.com/vercel/next.js/issues/80193) - Update Turbopack production test manifest: [#&#8203;80195](https://github.com/vercel/next.js/issues/80195) - \[turbopack] Remove uses of `Value<ReferenceType>` by making `ReferenceType` a TaskInput: [#&#8203;80130](https://github.com/vercel/next.js/issues/80130) - Upgrade rust version to 2025-06-04: [#&#8203;80200](https://github.com/vercel/next.js/issues/80200) - Fix race condition in `types-and-precompiled`: [#&#8203;80162](https://github.com/vercel/next.js/issues/80162) - Turbopack: ignore module ids config in dev: [#&#8203;80204](https://github.com/vercel/next.js/issues/80204) - Remove forks to switch back to upstream crates: [#&#8203;80198](https://github.com/vercel/next.js/issues/80198) - Add a test to show that `'use cache'` works in `generateMetadata`: [#&#8203;80172](https://github.com/vercel/next.js/issues/80172) - \[test] Add test for dev rendering indicator: [#&#8203;80205](https://github.com/vercel/next.js/issues/80205) - docs: add Docker development performance guidance for Mac/Windows: [#&#8203;80002](https://github.com/vercel/next.js/issues/80002) - \[test] fix flaky test of basepath navigation: [#&#8203;80213](https://github.com/vercel/next.js/issues/80213) - \[turbopack] Remove Value::new wrapper for Availabilityinfo parameters: [#&#8203;80132](https://github.com/vercel/next.js/issues/80132) - \[turbopack] Remove Value::new wrapper for ServerContextType parameters: [#&#8203;80133](https://github.com/vercel/next.js/issues/80133) - Turbopack: fix export collection: [#&#8203;80203](https://github.com/vercel/next.js/issues/80203) - Docs: Linking and Navigating Page: [#&#8203;80103](https://github.com/vercel/next.js/issues/80103) - Turbopack Build: docs for unsupported composes handling: [#&#8203;80238](https://github.com/vercel/next.js/issues/80238) - Turbopack Build: Update manifest for [#&#8203;80238](https://github.com/vercel/next.js/issues/80238): [#&#8203;80244](https://github.com/vercel/next.js/issues/80244) - \[test] More robust extraction off CSS sources in Flight chunks: [#&#8203;80243](https://github.com/vercel/next.js/issues/80243) - \[turbopack] Replace uses of `Value<Pattern>` with just `Pattern` - \[test] Unflake back-forward-cache test: [#&#8203;80250](https://github.com/vercel/next.js/issues/80250) - perf(turbopack): Decode sourcemap partially: [#&#8203;80177](https://github.com/vercel/next.js/issues/80177) - \[turbopack] Replace uses of `Value<ExecutionEnvironment>` with just `ExecutionEnvironment`: [#&#8203;80135](https://github.com/vercel/next.js/issues/80135) - \[turbopack] Replace uses of `Value<ContentSourceData>` with just `ContentSourceData`: [#&#8203;80140](https://github.com/vercel/next.js/issues/80140) - Revert "\[test] fix flaky test of basepath navigation": [#&#8203;80259](https://github.com/vercel/next.js/issues/80259) - Turbopack: really fix export collection: [#&#8203;80240](https://github.com/vercel/next.js/issues/80240) - fix typo: [#&#8203;80282](https://github.com/vercel/next.js/issues/80282) - \[turbopack] Remove uses of `Value<..>` instead make the payloads impl Taskinput: [#&#8203;80141](https://github.com/vercel/next.js/issues/80141) - \[turbopack] Remove uses of `Value<..>` instead make the payloads impl Taskinput - \[turbopack] Remove the final uses of `Value<..>` and delete the type: [#&#8203;80144](https://github.com/vercel/next.js/issues/80144) - \[turbopack] Remove the `_for_input` options from `turbo_tasks::value` and the `TypedForInput` trait.: [#&#8203;80185](https://github.com/vercel/next.js/issues/80185) - Docs: Add rspack community collab: [#&#8203;80217](https://github.com/vercel/next.js/issues/80217) - chore(turbopack/ci): Make codspeed stable: [#&#8203;80323](https://github.com/vercel/next.js/issues/80323) - \[test] separate tracing error test from action test suite: [#&#8203;80324](https://github.com/vercel/next.js/issues/80324) - chore(next-swc-napi): Update tracing-chrome crate to 0.7.2: [#&#8203;80331](https://github.com/vercel/next.js/issues/80331) - \[turbopack] optimize the TurboMalloc threadlocals: [#&#8203;80265](https://github.com/vercel/next.js/issues/80265) - \[test] Only run build_and_deploy once for PRs from upstream: [#&#8203;80329](https://github.com/vercel/next.js/issues/80329) - chore(turbo-tasks-fetch): Port tests from httpmock to mockito: [#&#8203;80341](https://github.com/vercel/next.js/issues/80341) - feat(turbopack): Invalidate the persistent cache upon panic: [#&#8203;80225](https://github.com/vercel/next.js/issues/80225) - perf(turbopack): Optimize `Rope` correctly: [#&#8203;80335](https://github.com/vercel/next.js/issues/80335) - fix(turbopack): Restore `sources` field in the source map: [#&#8203;80337](https://github.com/vercel/next.js/issues/80337) - Update Rspack development test manifest: [#&#8203;80349](https://github.com/vercel/next.js/issues/80349) - Update Rspack production test manifest: [#&#8203;80348](https://github.com/vercel/next.js/issues/80348) - Update Turbopack development test manifest: [#&#8203;80351](https://github.com/vercel/next.js/issues/80351) - Update Turbopack production test manifest: [#&#8203;80350](https://github.com/vercel/next.js/issues/80350) - docs: Incremental cache is not used for cache-control: no-cache requests: [#&#8203;80352](https://github.com/vercel/next.js/issues/80352) - Docs: Add Data Security Guide: [#&#8203;80249](https://github.com/vercel/next.js/issues/80249) - Docs IA 2.0: Move examples to route.js API reference: [#&#8203;80360](https://github.com/vercel/next.js/issues/80360) - Docs IA 2.0: Move examples to middleware.js API reference: [#&#8203;80363](https://github.com/vercel/next.js/issues/80363) - Docs: Add prefetching guide: [#&#8203;80152](https://github.com/vercel/next.js/issues/80152) - \[test] add rspack flaky test to build manifest: [#&#8203;80366](https://github.com/vercel/next.js/issues/80366) - Docs: broken links in caching: [#&#8203;80369](https://github.com/vercel/next.js/issues/80369) - docs: Middleware fetching is not cached: [#&#8203;80378](https://github.com/vercel/next.js/issues/80378) - Turbopack: include obsolete entries in computation: [#&#8203;80362](https://github.com/vercel/next.js/issues/80362) - build(turbopack): Update `swc_core` to `v27.0.1`: [#&#8203;80338](https://github.com/vercel/next.js/issues/80338) - Docs: Clarify how intercepting routes work and update example: [#&#8203;80145](https://github.com/vercel/next.js/issues/80145) - Require that `turbo_tasks::value_trait` items be annotated with `turbo-tasks::function`: [#&#8203;79178](https://github.com/vercel/next.js/issues/79178) - Update Turbopack production test manifest: [#&#8203;80400](https://github.com/vercel/next.js/issues/80400) - Update Rspack production test manifest: [#&#8203;80398](https://github.com/vercel/next.js/issues/80398) - Update Rspack development test manifest: [#&#8203;80397](https://github.com/vercel/next.js/issues/80397) - Update Turbopack development test manifest: [#&#8203;80399](https://github.com/vercel/next.js/issues/80399) - Use new `browserWithResponse()` method in `empty-fallback-shells` tests: [#&#8203;80406](https://github.com/vercel/next.js/issues/80406) - \[test] unflake turbopack dev navigation test case: [#&#8203;80407](https://github.com/vercel/next.js/issues/80407) - Docs: Getting Started feedback: [#&#8203;80401](https://github.com/vercel/next.js/issues/80401) - docs: server-only/client-only in Next.js: [#&#8203;80408](https://github.com/vercel/next.js/issues/80408) - Docs: Polish Getting Started section: [#&#8203;80402](https://github.com/vercel/next.js/issues/80402) - build(turbopack): Update `swc_core` to `v27.0.2`: [#&#8203;80412](https://github.com/vercel/next.js/issues/80412) - refactor(turbopack): remove lazy_static dependency: [#&#8203;80226](https://github.com/vercel/next.js/issues/80226) - \[test] Move test selectors as close to the actual value as possible (Part 2): [#&#8203;80416](https://github.com/vercel/next.js/issues/80416) - Turbopack: fix persistent caching bit number typo: [#&#8203;80431](https://github.com/vercel/next.js/issues/80431) - chore: Remove useActionState from auto wrapping list: [#&#8203;80420](https://github.com/vercel/next.js/issues/80420) - Update Turbopack development test manifest: [#&#8203;80437](https://github.com/vercel/next.js/issues/80437) - Update Rspack development test manifest: [#&#8203;80435](https://github.com/vercel/next.js/issues/80435) - test(turbopack): Configure HMR benchmark: [#&#8203;80219](https://github.com/vercel/next.js/issues/80219) - refactor(turbopack): Make invalidator flag explicit: [#&#8203;80414](https://github.com/vercel/next.js/issues/80414) - fix(next-swc): Update `styled-jsx` SWC plugin: [#&#8203;80459](https://github.com/vercel/next.js/issues/80459) - test(turbopack): Remove flaky benchmark: [#&#8203;80465](https://github.com/vercel/next.js/issues/80465) - Revert "refactor(turbopack): Make invalidator flag explicit": [#&#8203;80466](https://github.com/vercel/next.js/issues/80466) - fix(turbopack): Improve error message for PURE selector error: [#&#8203;80068](https://github.com/vercel/next.js/issues/80068) - build(turbopack): Update `swc_core` to `v27.0.4`: [#&#8203;80467](https://github.com/vercel/next.js/issues/80467) - Rename `empty-fallback-shells` test suite to just `fallback-shells`: [#&#8203;80461](https://github.com/vercel/next.js/issues/80461) - Turbopack: don't revisit nodes: [#&#8203;80455](https://github.com/vercel/next.js/issues/80455) - Update Turbopack development test manifest: [#&#8203;80476](https://github.com/vercel/next.js/issues/80476) - Update Rspack development test manifest: [#&#8203;80474](https://github.com/vercel/next.js/issues/80474) - Update Rspack production test manifest: [#&#8203;80473](https://github.com/vercel/next.js/issues/80473) - Update Turbopack production test manifest: [#&#8203;80475](https://github.com/vercel/next.js/issues/80475) - Update from-create-react-app.mdx: [#&#8203;80451](https://github.com/vercel/next.js/issues/80451) - Fix variable assignment in docs example: [#&#8203;80418](https://github.com/vercel/next.js/issues/80418) - perf(turbopack): Remove needless alloc for AQMF: [#&#8203;80468](https://github.com/vercel/next.js/issues/80468) - \[turbopack] Allow `value_trait` items to not be annotated with `turbo_tasks::function`: [#&#8203;79217](https://github.com/vercel/next.js/issues/79217) - refactor(turbopack): Make invalidator flag explicit: [#&#8203;80487](https://github.com/vercel/next.js/issues/80487) - test(turbopack): Make HMR benchmark less flaky: [#&#8203;80488](https://github.com/vercel/next.js/issues/80488) - perf(turbopack): Introduce static analysis for immutable tasks: [#&#8203;80415](https://github.com/vercel/next.js/issues/80415) - docs: fix typo: [#&#8203;80549](https://github.com/vercel/next.js/issues/80549) - Fix small grammar error in searchParams section: [#&#8203;80548](https://github.com/vercel/next.js/issues/80548) - docs: fix a typo in `static-exports.mdx`: [#&#8203;80541](https://github.com/vercel/next.js/issues/80541) - docs: fix typos: [#&#8203;80503](https://github.com/vercel/next.js/issues/80503) - docs: fix typo: [#&#8203;80500](https://github.com/vercel/next.js/issues/80500) - docs: fix typo: [#&#8203;80501](https://github.com/vercel/next.js/issues/80501) - Docs IA 2.0: Delete routing section, add BFF guide, polish getting started: [#&#8203;80365](https://github.com/vercel/next.js/issues/80365) - Turbopack Build: Refactor browserslist CSS test to not use .next folder: [#&#8203;80571](https://github.com/vercel/next.js/issues/80571) - Explain how to use searchParams prop: [#&#8203;80579](https://github.com/vercel/next.js/issues/80579) - Update Turbopack development test manifest: [#&#8203;80563](https://github.com/vercel/next.js/issues/80563) - \[turbopack] Simplify `Request::parse(Pattern)` the recursive portion doesn't need to be async: [#&#8203;80510](https://github.com/vercel/next.js/issues/80510) - Update Rspack development test manifest: [#&#8203;80560](https://github.com/vercel/next.js/issues/80560) - Update Rspack production test manifest: [#&#8203;80561](https://github.com/vercel/next.js/issues/80561) - Update Turbopack production test manifest: [#&#8203;80562](https://github.com/vercel/next.js/issues/80562) - perf(turbopack): Introduce runtime analysis for immutable tasks: [#&#8203;80422](https://github.com/vercel/next.js/issues/80422) - perf(turbopack): Do not allocate vectors if we are not going to use it: [#&#8203;80504](https://github.com/vercel/next.js/issues/80504) - test: fix failures caused by format discrepancies between rspack and other bundlers: [#&#8203;80314](https://github.com/vercel/next.js/issues/80314) - perf(turbopack): Detect more immutable tasks: [#&#8203;80423](https://github.com/vercel/next.js/issues/80423) - docs: streaming metadata, dynamic pages and generateMetadata: [#&#8203;80453](https://github.com/vercel/next.js/issues/80453) - Turbopack: correct export usage in EcmascriptModulePartReference: [#&#8203;80526](https://github.com/vercel/next.js/issues/80526) - Turbopack: make another callback return a result: [#&#8203;80608](https://github.com/vercel/next.js/issues/80608) - Remove `turbo_tasks::function` from `AssetContext::layer`: [#&#8203;80592](https://github.com/vercel/next.js/issues/80592) - build(turbopack): Update `swc_core` to `v27.0.6`: [#&#8203;80626](https://github.com/vercel/next.js/issues/80626) - Update Rspack production test manifest: [#&#8203;80598](https://github.com/vercel/next.js/issues/80598) - Update Turbopack production test manifest: [#&#8203;80600](https://github.com/vercel/next.js/issues/80600) - Update Turbopack development test manifest: [#&#8203;80599](https://github.com/vercel/next.js/issues/80599) - Update Rspack development test manifest: [#&#8203;80597](https://github.com/vercel/next.js/issues/80597) - Turbopack: resolve `sourceMap.file`: [#&#8203;80625](https://github.com/vercel/next.js/issues/80625) - perf(turbopack): Mark async fns without `await` as non-async: [#&#8203;80628](https://github.com/vercel/next.js/issues/80628) - \[turbopack] Merge identical match cases: [#&#8203;80630](https://github.com/vercel/next.js/issues/80630) - perf(turbopack): Load `is_immutable` flag dynamically: [#&#8203;80506](https://github.com/vercel/next.js/issues/80506) - chore(turbo-tasks): Remove unused deprecated methods from manager: [#&#8203;80594](https://github.com/vercel/next.js/issues/80594) - chore(turbopack): Dedupe rustls dependencies by updating reqwest: [#&#8203;80632](https://github.com/vercel/next.js/issues/80632) - Add test cases without `generateStaticParams` to `fallback-shells` suite: [#&#8203;80462](https://github.com/vercel/next.js/issues/80462) - feat(turbopack): externalType support global: [#&#8203;80542](https://github.com/vercel/next.js/issues/80542) - Docs: Remove reference to deleted experimental `turbotrace` feature: [#&#8203;80572](https://github.com/vercel/next.js/issues/80572) - Docs: Update code snippets in linking and navigating guide: [#&#8203;80652](https://github.com/vercel/next.js/issues/80652) - Update Turbopack development test manifest: [#&#8203;80647](https://github.com/vercel/next.js/issues/80647) - Update Rspack development test manifest: [#&#8203;80644](https://github.com/vercel/next.js/issues/80644) - Prevent typescript errors in IDE for newly generated tests (part 2): [#&#8203;80664](https://github.com/vercel/next.js/issues/80664) - Update Turbopack development test manifest: [#&#8203;80679](https://github.com/vercel/next.js/issues/80679) - Show string values for configured experimental features: [#&#8203;80686](https://github.com/vercel/next.js/issues/80686) - fix: server actions should fetch from the router canonicalUrl: [#&#8203;80690](https://github.com/vercel/next.js/issues/80690) - test: improve action test reliability: [#&#8203;80587](https://github.com/vercel/next.js/issues/80587) - \[turbopack] Simplify the implementations of TaskOutput::try_from_raw_vc: [#&#8203;80689](https://github.com/vercel/next.js/issues/80689) - refactor(turbopack): Refactor `turbo-tasks-fs` to take `&self` instead: [#&#8203;80633](https://github.com/vercel/next.js/issues/80633) - \[test] Reduce flakiness of instrumentation-order: [#&#8203;80712](https://github.com/vercel/next.js/issues/80712) - \[test] Add repro for SSR bug when large chunks are deferred in Flight: [#&#8203;80661](https://github.com/vercel/next.js/issues/80661) - add git merge driver for errors.json: [#&#8203;80722](https://github.com/vercel/next.js/issues/80722) - Update Rspack development test manifest: [#&#8203;80705](https://github.com/vercel/next.js/issues/80705) - Update Rspack production test manifest: [#&#8203;80704](https://github.com/vercel/next.js/issues/80704) - Update Turbopack development test manifest: [#&#8203;80707](https://github.com/vercel/next.js/issues/80707) - Update Turbopack production test manifest: [#&#8203;80706](https://github.com/vercel/next.js/issues/80706) - Turbopack: Allow distdir in project directory, outside of the application: [#&#8203;80683](https://github.com/vercel/next.js/issues/80683) - \[turbopack] Reduce indirection in turbo-tasks dispatching: [#&#8203;80695](https://github.com/vercel/next.js/issues/80695) - \[turbopack] Reorganize the fields in LocalTaskType to avoid an allocation: [#&#8203;80738](https://github.com/vercel/next.js/issues/80738) - fix(turbopack): Do not run `inject_helpers` pass multiple times: [#&#8203;80755](https://github.com/vercel/next.js/issues/80755) - fix: fixed merge driver output, does not expect debugging messages to output on stdout: [#&#8203;80736](https://github.com/vercel/next.js/issues/80736) - Update Turbopack production test manifest: [#&#8203;80785](https://github.com/vercel/next.js/issues/80785) - Update Turbopack development test manifest: [#&#8203;80786](https://github.com/vercel/next.js/issues/80786) - Turbopack: Don't convert script to module when using preset-env: [#&#8203;80724](https://github.com/vercel/next.js/issues/80724) - \[segment-explorer] Fix segment alignment: [#&#8203;80797](https://github.com/vercel/next.js/issues/80797) - chore: Dynamic error does not change dynamicParams: [#&#8203;80796](https://github.com/vercel/next.js/issues/80796) - fix(turbopack): Fix usage of `HELPERS` of SWC: [#&#8203;80791](https://github.com/vercel/next.js/issues/80791) - Turbopack: use correct mark for swc: [#&#8203;80789](https://github.com/vercel/next.js/issues/80789) - build(turbopack): Update `swc_core` to `v29.1.2`: [#&#8203;80659](https://github.com/vercel/next.js/issues/80659) - Update Turbopack production test manifest: [#&#8203;80836](https://github.com/vercel/next.js/issues/80836) - Turbopack Build: Fix metadata-edge test: [#&#8203;80842](https://github.com/vercel/next.js/issues/80842) - \[test] separate hmr env test: [#&#8203;80802](https://github.com/vercel/next.js/issues/80802) - Turbopack Build: Fix edge-config-validation test: [#&#8203;80847](https://github.com/vercel/next.js/issues/80847) - \[turbopack] Delete `FunctionId`: [#&#8203;80809](https://github.com/vercel/next.js/issues/80809) - Turbopack Build: Update manifest: [#&#8203;80859](https://github.com/vercel/next.js/issues/80859) - build(turbopack): Update `swc_core` to `29.1.4`: [#&#8203;80872](https://github.com/vercel/next.js/issues/80872) - perf(turbopack): Mark more async fns without await as sync: [#&#8203;80642](https://github.com/vercel/next.js/issues/80642) - Switch back to upstream lightningcss: [#&#8203;80863](https://github.com/vercel/next.js/issues/80863) - Turbopack: list `assert/strict` as external: [#&#8203;80884](https://github.com/vercel/next.js/issues/80884) - Update Turbopack production test manifest: [#&#8203;80888](https://github.com/vercel/next.js/issues/80888) - Update Turbopack development test manifest: [#&#8203;80887](https://github.com/vercel/next.js/issues/80887) - Fix preview builds for forks: [#&#8203;80833](https://github.com/vercel/next.js/issues/80833) - \[test] Account for React's usage of `eval` in dev: [#&#8203;80857](https://github.com/vercel/next.js/issues/80857) - Turbopack: fix `this` when accessing named properties of namespace: [#&#8203;80896](https://github.com/vercel/next.js/issues/80896) - docs: add explanation of --disable-git command: [#&#8203;80882](https://github.com/vercel/next.js/issues/80882) - refactor(turbo-tasks-backend): Use ringmap crate instead of custom DequeSet type for aggregation updates: [#&#8203;80867](https://github.com/vercel/next.js/issues/80867) - fix(test/integration): Check the right thing when resetting the server-side-dev-errors tests: [#&#8203;80873](https://github.com/vercel/next.js/issues/80873) - Update Rspack production test manifest: [#&#8203;80886](https://github.com/vercel/next.js/issues/80886) - Update Rspack development test manifest: [#&#8203;80885](https://github.com/vercel/next.js/issues/80885) - fix(turbo-tasks): Temporarily disable immutable task optimizations: [#&#8203;80914](https://github.com/vercel/next.js/issues/80914) - Turbopack Build: Implement outputFileTracingIgnores and outputFileTracingIncludes: [#&#8203;80890](https://github.com/vercel/next.js/issues/80890) - test(turbopack): Use `mimalloc` for codspeed to make it realistic: [#&#8203;80877](https://github.com/vercel/next.js/issues/80877) - \[turbopack] Add execution tests to demonstrate a bug: [#&#8203;80918](https://github.com/vercel/next.js/issues/80918) - build(turbopack): Update `swc_core` to `v29.2.0`: [#&#8203;80919](https://github.com/vercel/next.js/issues/80919) - test(codspeed): Make codspeed concurrent on `canary` branch: [#&#8203;80928](https://github.com/vercel/next.js/issues/80928) - Turbopack: respect PURE comments for minification: [#&#8203;80893](https://github.com/vercel/next.js/issues/80893) - Update Turbopack production test manifest: [#&#8203;80932](https://github.com/vercel/next.js/issues/80932) - Update Turbopack development test manifest: [#&#8203;80933](https://github.com/vercel/next.js/issues/80933) - Turbopack: slightly more correct `ModuleId` type: [#&#8203;80605](https://github.com/vercel/next.js/issues/80605) - docs: Use phosphor icons import perf optimization: [#&#8203;80811](https://github.com/vercel/next.js/issues/80811) - docs: Add a link to what opts into dynamic rendering: [#&#8203;80910](https://github.com/vercel/next.js/issues/80910) - Docs/fetching data deduping: [#&#8203;80806](https://github.com/vercel/next.js/issues/80806) - Turbopack: Improve unreachable code error message: [#&#8203;80934](https://github.com/vercel/next.js/issues/80934) - chore: add self to labelers: [#&#8203;80924](https://github.com/vercel/next.js/issues/80924) - cleanup(turbopack): Added documentation comments and small optimizations to CSS import validations: [#&#8203;80901](https://github.com/vercel/next.js/issues/80901) - Reenable debug assertions for dependencies in dev: [#&#8203;80958](https://github.com/vercel/next.js/issues/80958) - docs: link api reference pages/app router divergence: [#&#8203;80955](https://github.com/vercel/next.js/issues/80955) - Docs/feedback june batch: [#&#8203;80651](https://github.com/vercel/next.js/issues/80651) - Update backend-for-frontend.mdx: [#&#8203;80942](https://github.com/vercel/next.js/issues/80942) - fix(turbopack): Fix a panic when the generated hash is too short when radix formatting a string.: [#&#8203;80966](https://github.com/vercel/next.js/issues/80966) - \[tests]: add failing deploy test to manifest: [#&#8203;80973](https://github.com/vercel/next.js/issues/80973) - \[tubopack] Compile time replace top level `this` expressions to fix a subtle esm bug and simplify the client side runtime: [#&#8203;80925](https://github.com/vercel/next.js/issues/80925) - chore(turbopack): Add `swc_ecma_minifier` to turbopack trace target: [#&#8203;80977](https://github.com/vercel/next.js/issues/80977) - chore(turbopack): Add instrumentation to `Code::generate_source_map`: [#&#8203;80978](https://github.com/vercel/next.js/issues/80978) - perf(turbopack): Remove needless allocation: [#&#8203;80980](https://github.com/vercel/next.js/issues/80980) - perf(turbopack): Apply small-vector optimization for `TaskId`s: [#&#8203;80830](https://github.com/vercel/next.js/issues/80830) - Turbopack: improve unit tests: [#&#8203;80940](https://github.com/vercel/next.js/issues/80940) - \[Segment Cache] Enable deploy tests: [#&#8203;80947](https://github.com/vercel/next.js/issues/80947) - Turbopack: Add PURE comments for FreeVarReference::EcmaScriptModule: [#&#8203;80902](https://github.com/vercel/next.js/issues/80902) - Turbopack: fix codegen of directives : [#&#8203;80895](https://github.com/vercel/next.js/issues/80895) - Use snapshots to verify error stack traces for dynamic validation errors: [#&#8203;80946](https://github.com/vercel/next.js/issues/80946) - Turbopack: fix sourcemaps of scopehoisted comments: [#&#8203;80987](https://github.com/vercel/next.js/issues/80987) - Use snapshots to verify dynamic validation errors in dev mode: [#&#8203;80992](https://github.com/vercel/next.js/issues/80992) - Don't start next server unnecessarily to assert build output: [#&#8203;80994](https://github.com/vercel/next.js/issues/80994) - \[tests]: fix failing searchparams test: [#&#8203;81013](https://github.com/vercel/next.js/issues/81013) - feat(turbopack): externalType support script: [#&#8203;80768](https://github.com/vercel/next.js/issues/80768) - Ignore `JSON.parse <anonymous> (0:0)` stack frames in test snapshots: [#&#8203;81044](https://github.com/vercel/next.js/issues/81044) - Stop installing test apps that are skipped anyways: [#&#8203;81043](https://github.com/vercel/next.js/issues/81043) - chore(turbopack): Fix typo: [#&#8203;80983](https://github.com/vercel/next.js/issues/80983) - refactor(turbopack): Make `create_visitor` rustfmt-able: [#&#8203;81053](https://github.com/vercel/next.js/issues/81053) - Turbopack: move tests to backend: [#&#8203;80995](https://github.com/vercel/next.js/issues/80995) - Turbopack: [@&#8203;next/mdx](https://github.com/next/mdx) extension option is supported: [#&#8203;81058](https://github.com/vercel/next.js/issues/81058) - docs(fetch): update wording on conflicting cache and revalidate options: [#&#8203;80591](https://github.com/vercel/next.js/issues/80591) - perf(turbopack): Drop `tokio::fs` usages: [#&#8203;80674](https://github.com/vercel/next.js/issues/80674) - perf(turbopack/rcstr): Add serialization-time optimization: [#&#8203;78645](https://github.com/vercel/next.js/issues/78645) - refactor(turbopack): Use `FileSystemPath` instead of `Vc<T>`: [#&#8203;80634](https://github.com/vercel/next.js/issues/80634) - \[test] Add case for import conditions in Pages Router API routes: [#&#8203;81036](https://github.com/vercel/next.js/issues/81036) - chore: `.ts` ext is most commonly used for middleware and routes: [#&#8203;81059](https://github.com/vercel/next.js/issues/81059) - Turbopack: correctly apply generate_source_map with scope hoisting: [#&#8203;81060](https://github.com/vercel/next.js/issues/81060) - Turbopack: inline `typeof window` in node_modules for server: [#&#8203;80945](https://github.com/vercel/next.js/issues/80945) - \[turbopack\[ Fix a bug in top level `this` analysis: [#&#8203;81076](https://github.com/vercel/next.js/issues/81076) - Turbopack: cleanup NextConfig derives: [#&#8203;81071](https://github.com/vercel/next.js/issues/81071) - Turbopack: fix exposed modules in scope hoisting: [#&#8203;81073](https://github.com/vercel/next.js/issues/81073) - \[turbopack] Make internal functions private and use rcstr! macro: [#&#8203;81041](https://github.com/vercel/next.js/issues/81041) - build(turbopack): Update `swc_core` to `v29.4.0`: [#&#8203;81092](https://github.com/vercel/next.js/issues/81092) - Turbopack: Improve compaction in Persistent Caching: [#&#8203;80860](https://github.com/vercel/next.js/issues/80860) - Turbopack: guard against more eventual consistency: [#&#8203;81080](https://github.com/vercel/next.js/issues/81080) - Turbopack: instrument scope hoisting with tracing spans: [#&#8203;81078](https://github.com/vercel/next.js/issues/81078) - \[node-webstreams] Remove unused PagesApi matching condition when setting react-server: [#&#8203;81037](https://github.com/vercel/next.js/issues/81037) - docs: fix grammatical error in upgrading to v15 guide: [#&#8203;81038](https://github.com/vercel/next.js/issues/81038) - perf(turbopack): Disable `concurrent` of the SWC minifier.: [#&#8203;80981](https://github.com/vercel/next.js/issues/80981) - Revert "perf(turbopack/rcstr): Add serialization-time optimization ([#&#8203;78645](https://github.com/vercel/next.js/issues/78645))": [#&#8203;81112](https://github.com/vercel/next.js/issues/81112) - Docs: paper cuts July 1st : [#&#8203;81109](https://github.com/vercel/next.js/issues/81109) - Turbopack: scope hoist tree shaking modules as well: [#&#8203;80527](https://github.com/vercel/next.js/issues/80527) - Fix flakey devtools test: [#&#8203;81127](https://github.com/vercel/next.js/issues/81127) - \[turbopack] Defend against json cyles in our execution tests: [#&#8203;81079](https://github.com/vercel/next.js/issues/81079) - \[turbopack] Implement `Issue::source` on more Issue subtypes: [#&#8203;80874](https://github.com/vercel/next.js/issues/80874) - Fix flakey devtools test: [#&#8203;81127](https://github.com/vercel/next.js/issues/81127) - \[turbopack] Defend against json cyles in our execution tests: [#&#8203;81079](https://github.com/vercel/next.js/issues/81079) - \[turbopack] Implement `Issue::source` on more Issue subtypes: [#&#8203;80874](https://github.com/vercel/next.js/issues/80874) - Update workflows for nextjs-bot: [#&#8203;81134](https://github.com/vercel/next.js/issues/81134) - Update nextjs-bot config: [#&#8203;81138](https://github.com/vercel/next.js/issues/81138) - \[turbopack] Remove some unnecessary awaits now that FileSystemPath is synchronously available.: [#&#8203;81090](https://github.com/vercel/next.js/issues/81090) - Run front-sync after deployment tests finish : [#&#8203;81023](https://github.com/vercel/next.js/issues/81023) - Docs: moved table for Unsupported Metadata to the correct location: [#&#8203;80979](https://github.com/vercel/next.js/issues/80979) - fix(next-swc): Apply SWC minifier bugfixes: [#&#8203;81098](https://github.com/vercel/next.js/issues/81098) - Update Rspack development test manifest: [#&#8203;81103](https://github.com/vercel/next.js/issues/81103) - Update Rspack production test manifest: [#&#8203;81102](https://github.com/vercel/next.js/issues/81102) - Update Turbopack production test manifest: [#&#8203;81105](https://github.com/vercel/next.js/issues/81105) - Update Turbopack development test manifest: [#&#8203;81104](https://github.com/vercel/next.js/issues/81104) - Add more test cases to the `dynamicIO` sync IO access test suite: [#&#8203;81045](https://github.com/vercel/next.js/issues/81045) - chore(turbo-tasks-backend): Remove unused support for nested database operations: [#&#8203;80816](https://github.com/vercel/next.js/issues/80816) - Turbopack: simplify `ReducedGraphs` and `find_server_entries`: [#&#8203;81118](https://github.com/vercel/next.js/issues/81118) - \[turbopack] Remove an unnecessary clone: [#&#8203;81153](https://github.com/vercel/next.js/issues/81153) - \[turbopack] Move static type ID variables into getters: [#&#8203;81150](https://github.com/vercel/next.js/issues/81150) - refactor(turbo-tasks-backend): Remove `ExecuteContextImpl::lower_read_transaction`: [#&#8203;80822](https://github.com/vercel/next.js/issues/80822) - refactor(turbopack): Implement `BackingStorage` for `Either`, replace `NextTurboTasks` with a type alias: [#&#8203;80823](https://github.com/vercel/next.js/issues/80823) - Remove unneccesary step that's making workflow fail: [#&#8203;81164](https://github.com/vercel/next.js/issues/81164) - Update caching.mdx: [#&#8203;81129](https://github.com/vercel/next.js/issues/81129) - build(turbopack): Update `swc_core` to `v30.0.1`: [#&#8203;81179](https://github.com/vercel/next.js/issues/81179) - Turbopack: rename simple tree shaking: [#&#8203;81181](https://github.com/vercel/next.js/issues/81181) - Disable Turbopack manifest: [#&#8203;81170](https://github.com/vercel/next.js/issues/81170) - perf(turbopack): let some Clone be conditional in insert_alias_option: [#&#8203;81175](https://github.com/vercel/next.js/issues/81175) - \[turbopack] Move global names onto the NativeFunction object: [#&#8203;81143](https://github.com/vercel/next.js/issues/81143) - Turbopack: Rewrite IntervalMap using a BTreeMap: [#&#8203;81095](https://github.com/vercel/next.js/issues/81095) - Bump lightningcss to not include browserslist-rs twice: [#&#8203;81184](https://github.com/vercel/next.js/issues/81184) - Turbopack: lazily create syntax contexts for scope hoisting: [#&#8203;81193](https://github.com/vercel/next.js/issues/81193) - feat(turbopack): turbo-esregex support captures method: [#&#8203;81119](https://github.com/vercel/next.js/issues/81119) - cleanup(turbopack) Show users an error message when Webpack loaders have a glob in only the extension: [#&#8203;81084](https://github.com/vercel/next.js/issues/81084) - Only retry deploy tests for canary: [#&#8203;81207](https://github.com/vercel/next.js/issues/81207) - Skip alert as well for non-canary e2e deploy: [#&#8203;81210](https://github.com/vercel/next.js/issues/81210) - Fix if condition in retry workflow: [#&#8203;81211](https://github.com/vercel/next.js/issues/81211) - Format Turbopack NFT tests: [#&#8203;81199](https://github.com/vercel/next.js/issues/81199) - Turbopack: add `EcmascriptExports::Unknown`: [#&#8203;81214](https://github.com/vercel/next.js/issues/81214) - Sync NFT test suite from upstream: [#&#8203;81189](https://github.com/vercel/next.js/issues/81189) - docs: Getting started pages and search params: [#&#8203;80616](https://github.com/vercel/next.js/issues/80616) - Fix future Rust warnings: [#&#8203;81217](https://github.com/vercel/next.js/issues/81217) - Turbopack: fix source map panic: [#&#8203;81212](https://github.com/vercel/next.js/issues/81212) - chore(turbopack): Remove unused dependencies reported by cargo-shear: [#&#8203;81221](https://github.com/vercel/next.js/issues/81221) - Docs/after function mdx fix: [#&#8203;81174](https://github.com/vercel/next.js/issues/81174) - Docs: include effect in docs for default optimized libraries: [#&#8203;81203](https://github.com/vercel/next.js/issues/81203) - Update caching.mdx: [#&#8203;81185](https://github.com/vercel/next.js/issues/81185) - perf(next-napi): optimize output assets collection using flat_map: [#&#8203;81222](https://github.com/vercel/next.js/issues/81222) - \[turbopack] Add FileSystemPath.has_extension and optimize module graph operations: [#&#8203;81205](https://github.com/vercel/next.js/issues/81205) - Turbopack: move write_version feature to env var: [#&#8203;81250](https://github.com/vercel/next.js/issues/81250) - document turbopack trace viewer ([#&#8203;78184](https://github.com/vercel/next.js/issues/78184)) - Turbopack: codegen modules without module graph: [#&#8203;81238](https://github.com/vercel/next.js/issues/81238) - Turbopack: delete module_context.remove_unused_exports: [#&#8203;81239](https://github.com/vercel/next.js/issues/81239) - Ensure default run name is correct for deploy tests: [#&#8203;81255](https://github.com/vercel/next.js/issues/81255) - Turbopack: prevent ParseResult recomputation: [#&#8203;81244](https://github.com/vercel/next.js/issues/81244) - \[turbopack] Remove a vec clone from `primary_chunkable_referenced_modules` : [#&#8203;81206](https://github.com/vercel/next.js/issues/81206) - Update Rspack development test manifest: [#&#8203;81219](https://github.com/vercel/next.js/issues/81219) - \[turbopack] Remove unused no_move_vec code: [#&#8203;81141](https://github.com/vercel/next.js/issues/81141) - Add regression test for conflicting search and route params: [#&#8203;81249](https://github.com/vercel/next.js/issues/81249) - build: Update `swc_core` to `v30.1.1`: [#&#8203;81276](https://github.com/vercel/next.js/issues/81276) - \[test] Keep Playwright stackframes out of tests: [#&#8203;81240](https://github.com/vercel/next.js/issues/81240) - perf(turbopack): Make `File` => json faster: [#&#8203;81279](https://github.com/vercel/next.js/issues/81279) - Turbopack: sourceMappingURL for Node.js runtime chunk: [#&#8203;81300](https://github.com/vercel/next.js/issues/81300) - Turbopack: fix instrumentation-edge layer name: [#&#8203;81304](https://github.com/vercel/next.js/issues/81304) - Current behavior for module evaluation sourcemapping: [#&#8203;73737](https://github.com/vercel/next.js/issues/73737) - fix typo: [#&#8203;81336](https://github.com/vercel/next.js/issues/81336) - fix(docs): correct section count from 4 to 3 in intro: [#&#8203;81323](https://github.com/vercel/next.js/issues/81323) - Remove incorrect PostCSS config type: [#&#8203;81338](https://github.com/vercel/next.js/issues/81338) - Remove duplicate CSS properties: [#&#8203;81333](https://github.com/vercel/next.js/issues/81333) - \[test] Dedicate suite for React's Server Request performance track: [#&#8203;81312](https://github.com/vercel/next.js/issues/81312) - reverts test copy change in dynamicIO tests: [#&#8203;81358](https://github.com/vercel/next.js/issues/81358) - fix(CI): Update llvm when building native musl targets: [#&#8203;81392](https://github.com/vercel/next.js/issues/81392) - fix(turbopack): external script should under async module: [#&#8203;81362](https://github.com/vercel/next.js/issues/81362) - Update Rspack production test manifest: [#&#8203;81364](https://github.com/vercel/next.js/issues/81364) - Turbopack: don't emit `blurDataURL: null`: [#&#8203;81387](https://github.com/vercel/next.js/issues/81387) - Turbopack: fix incorrect graph state bug: [#&#8203;81202](https://github.com/vercel/next.js/issues/81202) - \[test] Avoid flaky assertions due to dynamic metadata: [#&#8203;81373](https://github.com/vercel/next.js/issues/81373) - fix(turbopack) Adjust tree loader to respect parent module overrides: [#&#8203;81139](https://github.com/vercel/next.js/issues/81139) - Turbopack: remove unused code: [#&#8203;81411](https://github.com/vercel/next.js/issues/81411) - Turbopack: improve var names, add some unit tests: [#&#8203;81412](https://github.com/vercel/next.js/issues/81412) - Fix auth preflight check when triggering Front sync: [#&#8203;81166](https://github.com/vercel/next.js/issues/81166) - \[turbopack] Install late loaded script and link tags at the end of the `head` instead of the end of the `body`: [#&#8203;81425](https://github.com/vercel/next.js/issues/81425) - refactor(turbopack/napi): Add a NextTurbopackContext type, rename VcArc to DetachedVc: [#&#8203;80881](https://github.com/vercel/next.js/issues/80881) - \[test] Skip flaky cdn-cache-busting test: [#&#8203;81429](https://github.com/vercel/next.js/issues/81429) - Unflake `segment cache (CDN cache busting)` redirect test: [#&#8203;80967](https://github.com/vercel/next.js/issues/80967) - Check if target workflow is enabled before triggering front sync: [#&#8203;81432](https://github.com/vercel/next.js/issues/81432) - Revert "\[test] Skip flaky cdn-cache-busting test": [#&#8203;81433](https://github.com/vercel/next.js/issues/81433) - refactor(turbopack): Rewrite `EsRegex::captures` to return an iterator, use `None` for unmatched capture groups: [#&#8203;81200](https://github.com/vercel/next.js/issues/81200) - update: add nebrelbug to labeler.json: [#&#8203;81437](https://github.com/vercel/next.js/issues/81437) - Update Rspack development test manifest: [#&#8203;81398](https://github.com/vercel/next.js/issues/81398) - Turbopack: fix hanging problem due to stale tasks: [#&#8203;81413](https://github.com/vercel/next.js/issues/81413) - Turbopack: filter NftJsonAsset entries earlier: [#&#8203;81446](https://github.com/vercel/next.js/issues/81446) - Allow server functions to be used as client component props in `'use cache'`: [#&#8203;81431](https://github.com/vercel/next.js/issues/81431) - Turbopack: fix duplicate externals modules: [#&#8203;81306](https://github.com/vercel/next.js/issues/81306) - Turbopack: fix unused export removal with mixed reexport and locals: [#&#8203;81422](https://github.com/vercel/next.js/issues/81422) - Turbopack: handle all side effects and improve pattern: [#&#8203;81455](https://github.com/vercel/next.js/issues/81455) - Fail task if one of the parallel ones fails: [#&#8203;81464](https://github.com/vercel/next.js/issues/81464) - Consolidate dynamic IO errors test suites into a single fixture: [#&#8203;81451](https://github.com/vercel/next.js/issues/81451) - Update image.mdx: [#&#8203;81454](https://github.com/vercel/next.js/issues/81454) - Turbopack: reduce temp allocation during compute_blocks: [#&#8203;81459](https://github.com/vercel/next.js/issues/81459) - fix(CI): On musl/alpine builds, pin llvm to llvm20, add llvm bin directory to path: [#&#8203;81519](https://github.com/vercel/next.js/issues/81519) - Turbopack: refactor ReadRef deref + clone to the intended pattern: [#&#8203;81537](https://github.com/vercel/next.js/issues/81537) - Turbopack: remove `clone_value` again: [#&#8203;81539](https://github.com/vercel/next.js/issues/81539) - docs: root layout + opengraph-image + cna-eslit vs next lint bootstrap: [#&#8203;81542](https://github.com/vercel/next.js/issues/81542) - Turbopack: add module cost benchmark: [#&#8203;81530](https://github.com/vercel/next.js/issues/81530) - Turbopack: fix `@opentelemetry/api` resolve fallback: [#&#8203;81541](https://github.com/vercel/next.js/issues/81541) - \[test] Use same pnpm in temporary repo directory: [#&#8203;81540](https://github.com/vercel/next.js/issues/81540) - Turbopack: only emit `*.single.css` chunks in dev: [#&#8203;81490](https://github.com/vercel/next.js/issues/81490) - Update rust-cache action to v1.0.9: [#&#8203;81555](https://github.com/vercel/next.js/issues/81555) - docs: update Page example to use Promise-based params in 05-server-and-client-components.mdx: [#&#8203;81557](https://github.com/vercel/next.js/issues/81557) - Temporarily disable failing `fallback-shells` deploy test: [#&#8203;81593](https://github.com/vercel/next.js/issues/81593) - Update help link for inlined use server in client components: [#&#8203;81495](https://github.com/vercel/next.js/issues/81495) - Turbopack: fix hanging problem with reexport cycles: [#&#8203;81620](https://github.com/vercel/next.js/issues/81620) - \[test] improve segment explorer tests snapshot: [#&#8203;81616](https://github.com/vercel/next.js/issues/81616) - 15.4 Docs: Minor feature updates: [#&#8203;81618](https://github.com/vercel/next.js/issues/81618) - docs: onInvalidate router.prefetch: [#&#8203;81609](https://github.com/vercel/next.js/issues/81609) - Turbopack: Fix turbopack-swc-ast-explorer with multi-line inputs: [#&#8203;81635](https://github.com/vercel/next.js/issues/81635) - Turbopack: Clean up some of the logic in visit_assign_expr: [#&#8203;81636](https://github.com/vercel/next.js/issues/81636) - \[turbopack] Rename `traverse_edges_from_entries_topological` to `traverse_edges_from_entries_dfs`: [#&#8203;81481](https://github.com/vercel/next.js/issues/81481) ##### Credits Huge thanks to [@&#8203;sokra](https://github.com/sokra), [@&#8203;huozhi](https://github.com/huozhi), [@&#8203;Marukome0743](https://github.com/Marukome0743), [@&#8203;mischnic](https://github.com/mischnic), [@&#8203;wbinnssmith](https://github.com/wbinnssmith), [@&#8203;eps1lon](https://github.com/eps1lon), [@&#8203;razzeee](https://github.com/razzeee), [@&#8203;delbaoliveira](https://github.com/delbaoliveira), [@&#8203;kdy1](https://github.com/kdy1), [@&#8203;wyattjoh](https://github.com/wyattjoh), [@&#8203;acdlite](https://github.com/acdlite), [@&#8203;ztanner](https://github.com/ztanner), [@&#8203;bgw](https://github.com/bgw), [@&#8203;jantimon](https://github.com/jantimon), [@&#8203;lubieowoce](https://github.com/lubieowoce), [@&#8203;Fonger](https://github.com/Fonger), [@&#8203;ospira](https://github.com/ospira), [@&#8203;gnoff](https://github.com/gnoff), [@&#8203;styfle](https://github.com/styfle), [@&#8203;Cy-Tek](https://github.com/Cy-Tek), [@&#8203;timneutkens](https://github.com/timneutkens), [@&#8203;raunofreiberg](https://github.com/raunofreiberg), [@&#8203;devchaudhary24k](https://github.com/devchaudhary24k), [@&#8203;Neschadin](https://github.com/Neschadin), [@&#8203;OreQr](https://github.com/OreQr), [@&#8203;drewlong314](https://github.com/drewlong314), [@&#8203;ijjk](https://github.com/ijjk), [@&#8203;praizjosh](https://github.com/praizjosh), [@&#8203;unstubbable](https://github.com/unstubbable), [@&#8203;lukesandberg](https://github.com/lukesandberg), [@&#8203;ScriptedAlchemy](https://github.com/ScriptedAlchemy), [@&#8203;sqidermad](https://github.com/sqidermad), [@&#8203;Juneezee](https://github.com/Juneezee), [@&#8203;devjiwonchoi](https://github.com/devjiwonchoi), [@&#8203;Kamitenshi](https://github.com/Kamitenshi), [@&#8203;feedthejim](https://github.com/feedthejim), [@&#8203;leerob](https://github.com/leerob), [@&#8203;mauerbac](https://github.com/mauerbac), [@&#8203;miki-tebe](https://github.com/miki-tebe), [@&#8203;gaearon](https://github.com/gaearon), [@&#8203;mrbadri](https://github.com/mrbadri), [@&#8203;luwes](https://github.com/luwes), [@&#8203;lucacasonato](https://github.com/lucacasonato), [@&#8203;M4xymm](https://github.com/M4xymm), [@&#8203;jirihofman](https://github.com/jirihofman), [@&#8203;vicb](https://github.com/vicb), [@&#8203;jackwilson323](https://github.com/jackwilson323), [@&#8203;SyMind](https://github.com/SyMind), [@&#8203;kevva](https://github.com/kevva), [@&#8203;xyf7](https://github.com/xyf7), [@&#8203;gaojude](https://github.com/gaojude), [@&#8203;dario-piotrowicz](https://github.com/dario-piotrowicz), [@&#8203;mastoj](https://github.com/mastoj), [@&#8203;nicole0707](https://github.com/nicole0707), [@&#8203;lourd](https://github.com/lourd), [@&#8203;Karibash](https://github.com/Karibash), [@&#8203;chipit24](https://github.com/chipit24), [@&#8203;icyJoseph](https://github.com/icyJoseph), [@&#8203;xusd320](https://github.com/xusd320), [@&#8203;fireairforce](https://github.com/fireairforce), [@&#8203;GenhaoLi](https://github.com/GenhaoLi), [@&#8203;igas](https://github.com/igas), [@&#8203;Macw07](https://github.com/Macw07), [@&#8203;amannn](https://github.com/amannn), [@&#8203;bcdipesh](https://github.com/bcdipesh), [@&#8203;r34son](https://github.com/r34son), [@&#8203;ivasilov](https://github.com/ivasilov), [@&#8203;lpalmes](https://github.com/lpalmes), [@&#8203;imskyleen](https://github.com/imskyleen), [@&#8203;teamleaderleo](https://github.com/teamleaderleo), [@&#8203;vitaliemiron](https://github.com/vitaliemiron), [@&#8203;agadzik](https://github.com/agadzik), [@&#8203;chdeskur](https://github.com/chdeskur), [@&#8203;nakanoh](https://github.com/nakanoh), [@&#8203;luiscobot](https://github.com/luiscobot), [@&#8203;GameRoMan](https://github.com/GameRoMan), [@&#8203;dferber90](https://github.com/dferber90), [@&#8203;maurobonfietti](https://github.com/maurobonfietti), [@&#8203;navandstokes](https://github.com/navandstokes), [@&#8203;sajadtorkamani](https://github.com/sajadtorkamani), [@&#8203;bobziroll](https://github.com/bobziroll), [@&#8203;lumirlumir](https://github.com/lumirlumir), [@&#8203;KkOoSsTtAa](https://github.com/KkOoSsTtAa), [@&#8203;msabramo](https://github.com/msabramo), [@&#8203;sommeeeer](https://github.com/sommeeeer), [@&#8203;schoenwaldnils](https://github.com/schoenwaldnils), [@&#8203;remcohaszing](https://github.com/remcohaszing), [@&#8203;HerringtonDarkholme](https://github.com/HerringtonDarkholme), [@&#8203;nebrelbug](https://github.com/nebrelbug), [@&#8203;RobPruzan](https://github.com/RobPruzan), [@&#8203;lmammino](https://github.com/lmammino), [@&#8203;MohammedYehia](https://github.com/MohammedYehia), [@&#8203;extoci](https://github.com/extoci), [@&#8203;padmaia](https://github.com/padmaia), [@&#8203;aacosta11](https://github.com/aacosta11), [@&#8203;vercel-release-bot](https://github.com/vercel-release-bot), [@&#8203;maral](https://github.com/maral), [@&#8203;ethanniser](https://github.com/ethanniser), [@&#8203;MichalMoravik](https://github.com/MichalMoravik), [@&#8203;rajrawat37](https://github.com/rajrawat37), [@&#8203;kidonng](https://github.com/kidonng), [@&#8203;dnhn](https://github.com/dnhn), [@&#8203;kristian240](https://github.com/kristian240), [@&#8203;rachnac-emeritus](https://github.com/rachnac-emeritus), [@&#8203;rortan134](https://github.com/rortan134), and [@&#8203;nick20name17](https://github.com/nick20name17) for helping! ### [`v15.4.0`](https://github.com/vercel/next.js/compare/v15.3.5...v15.4.0) [Compare Source](https://github.com/vercel/next.js/compare/v15.3.5...v15.4.0) ### [`v15.3.5`](https://github.com/vercel/next.js/releases/tag/v15.3.5) [Compare Source](https://github.com/vercel/next.js/compare/v15.3.4...v15.3.5) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - Turbopack: list assert/strict as external ([#&#8203;80884](https://github.com/vercel/next.js/issues/80884)) - omit searchParam data from FlightRouterState before transport ([#&#8203;80734](https://github.com/vercel/next.js/issues/80734)) - bugfix: propagate staleTime to seeded prefetch entry ([#&#8203;81263](https://github.com/vercel/next.js/issues/81263)) ##### Misc Changes - document turbopack trace viewer ([#&#8203;78184](https://github.com/vercel/next.js/issues/78184)) ##### Credits Huge thanks to [@&#8203;ztanner](https://github.com/ztanner), [@&#8203;mischnic](https://github.com/mischnic), and [@&#8203;bgw](https://github.com/bgw) for helping! ### [`v15.3.4`](https://github.com/vercel/next.js/releases/tag/v15.3.4) [Compare Source](https://github.com/vercel/next.js/compare/v15.3.3...v15.3.4) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - \[metadata] render streaming metadata on the top level ([#&#8203;80566](https://github.com/vercel/next.js/issues/80566)) - \[fix] clone the config module to avoid mutation ([#&#8203;80573](https://github.com/vercel/next.js/issues/80573)) ##### Credits Huge thanks to [@&#8203;huozhi](https://github.com/huozhi) for helping! ### [`v15.3.3`](https://github.com/vercel/next.js/releases/tag/v15.3.3) [Compare Source](https://github.com/vercel/next.js/compare/v15.3.2...v15.3.3) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - Reinstate `vary` ([#&#8203;79939](https://github.com/vercel/next.js/issues/79939)) - fix(next-swc): Fix interestingness detection for React Compiler ([#&#8203;79558](https://github.com/vercel/next.js/issues/79558)) - fix(next-swc): Fix react compiler usefulness detector ([#&#8203;79480](https://github.com/vercel/next.js/issues/79480)) - fix(dev-overlay): Better handle edge-case file paths in launchEditor ([#&#8203;79526](https://github.com/vercel/next.js/issues/79526)) - Client router should discard stale prefetch entries for static pages ([#&#8203;79362](https://github.com/vercel/next.js/issues/79362)) ##### Credits Huge thanks to [@&#8203;gaojude](https://github.com/gaojude), [@&#8203;kdy1](https://github.com/kdy1), [@&#8203;bgw](https://github.com/bgw), and [@&#8203;unstubbable](https://github.com/unstubbable) for helping! ### [`v15.3.2`](https://github.com/vercel/next.js/releases/tag/v15.3.2) [Compare Source](https://github.com/vercel/next.js/compare/v15.3.1...v15.3.2) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - backport: fix(turbopack): Store persistence of wrapped task on RawVc::LocalOutput ([#&#8203;78488](https://github.com/vercel/next.js/issues/78488)) ([#&#8203;78883](https://github.com/vercel/next.js/issues/78883)) - [@&#8203;next/mdx](https://github.com/next/mdx): Use stable turbopack config options ([#&#8203;78880](https://github.com/vercel/next.js/issues/78880)) - Fix react-compiler: Fix detection of interest ([#&#8203;78879](https://github.com/vercel/next.js/issues/78879)) - Fix turbopack: Backport sourcemap bugfix ([#&#8203;78881](https://github.com/vercel/next.js/issues/78881)) - \[next-server] preserve rsc query for rsc redirects ([#&#8203;78876](https://github.com/vercel/next.js/issues/78876)) - Update middleware public/static matching ([#&#8203;78875](https://github.com/vercel/next.js/issues/78875)) ##### Credits Huge thanks to [@&#8203;ijjk](https://github.com/ijjk), [@&#8203;huozhi](https://github.com/huozhi), [@&#8203;kdy1](https://github.com/kdy1), [@&#8203;wbinnssmith](https://github.com/wbinnssmith), and [@&#8203;bgw](https://github.com/bgw) for helping! ### [`v15.3.1`](https://github.com/vercel/next.js/releases/tag/v15.3.1) [Compare Source](https://github.com/vercel/next.js/compare/v15.3.0...v15.3.1) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - chore: Backport SWC-based RC optimization ([#&#8203;78260](https://github.com/vercel/next.js/issues/78260)) - fix: bump image-size@1.2.1 ([#&#8203;78164](https://github.com/vercel/next.js/issues/78164)) ##### Credits Huge thanks to [@&#8203;kdy1](https://github.com/kdy1) and [@&#8203;styfle](https://github.com/styfle) for helping! ### [`v15.3.0`](https://github.com/vercel/next.js/releases/tag/v15.3.0) [Compare Source](https://github.com/vercel/next.js/compare/v15.2.5...v15.3.0) ##### Core Changes - \[dev-overlay] Customize `<select>` styling for consistency: [#&#8203;76973](https://github.com/vercel/next.js/issues/76973) - Upgrade React from `029e8bd6-20250306` to `0ca3deeb-20250311`: [#&#8203;76989](https://github.com/vercel/next.js/issues/76989) - \[metadata]: add pinterest meta tag: [#&#8203;76988](https://github.com/vercel/next.js/issues/76988) - \[dev-overlay] ensure stripping overlay bundle in prod build: [#&#8203;76976](https://github.com/vercel/next.js/issues/76976) - Apply env inlining during generate build mode: [#&#8203;76990](https://github.com/vercel/next.js/issues/76990) - Turbopack: Implement deploymentId: [#&#8203;76904](https://github.com/vercel/next.js/issues/76904) - track persistent caching usage: [#&#8203;76996](https://github.com/vercel/next.js/issues/76996) - \[metadata] re-insert icons to head for streamed metadata: [#&#8203;76915](https://github.com/vercel/next.js/issues/76915) - Upgrade React from `0ca3deeb-20250311` to `6aa8254b-20250312`: [#&#8203;77033](https://github.com/vercel/next.js/issues/77033) - Move static-env imports: [#&#8203;77035](https://github.com/vercel/next.js/issues/77035) - \[dev-overlay] Add `size` setting to preferences: [#&#8203;77027](https://github.com/vercel/next.js/issues/77027) - Add config for only generating static env: [#&#8203;77038](https://github.com/vercel/next.js/issues/77038) - chore(HMR clients): Clean up and share code between app and pages router: [#&#8203;76960](https://github.com/vercel/next.js/issues/76960) - Add dev warning for cross-origin and stabilize allowedDevOrigins: [#&#8203;77044](https://github.com/vercel/next.js/issues/77044) - unify allowed origin detection handling: [#&#8203;77053](https://github.com/vercel/next.js/issues/77053) - Handle hash change in all files for static env: [#&#8203;77058](https://github.com/vercel/next.js/issues/77058) - \[dev-overlay] highlight errored code line for runtime errors: [#&#8203;77078](https://github.com/vercel/next.js/issues/77078) - NFT: Ignore all of Webpack: [#&#8203;77081](https://github.com/vercel/next.js/issues/77081) - Add experimental build mode flag for env: [#&#8203;77089](https://github.com/vercel/next.js/issues/77089) - (feat) support client-side instrumentation: [#&#8203;76916](https://github.com/vercel/next.js/issues/76916) - Fix JSDoc comment for `'seconds'` cache life profile: [#&#8203;77084](https://github.com/vercel/next.js/issues/77084) - refactor(HMR clients): Encapsulate some of the turbopack state tracking into a shared TurbopackHmr class: [#&#8203;76994](https://github.com/vercel/next.js/issues/76994) - Slightly improve error handling for unknown server actions: [#&#8203;77135](https://github.com/vercel/next.js/issues/77135) - Fix output standalone for alternative bundler: [#&#8203;76971](https://github.com/vercel/next.js/issues/76971) - Add alternate bundler plugin information to `next info`: [#&#8203;77059](https://github.com/vercel/next.js/issues/77059) - \[metadata] remove the default segement check for metadata rendering: [#&#8203;77119](https://github.com/vercel/next.js/issues/77119) - \[dev-overlay] Fix stacking order of highlighted line: [#&#8203;77189](https://github.com/vercel/next.js/issues/77189) - Upgrade React from `6aa8254b-20250312` to `5398b711-20250314`: [#&#8203;77129](https://github.com/vercel/next.js/issues/77129) - fix(styled-jsx): Pass `useLightningcss` option to `styled-jsx` correctly: [#&#8203;77008](https://github.com/vercel/next.js/issues/77008) - log the instrumentation-client execution time: [#&#8203;77121](https://github.com/vercel/next.js/issues/77121) - Turbopack: canary-gate production builds: [#&#8203;77146](https://github.com/vercel/next.js/issues/77146) - \[dev-overlay] remove special handling for missing tag error : [#&#8203;77147](https://github.com/vercel/next.js/issues/77147) - chore(react-dev-overlay): Remove confusingly underscored variables in `useErrorOverlayReducer`: [#&#8203;77205](https://github.com/vercel/next.js/issues/77205) - Update middleware request header: [#&#8203;77201](https://github.com/vercel/next.js/issues/77201) - Update default allowed origins list: [#&#8203;77212](https://github.com/vercel/next.js/issues/77212) - Ensure deploymentId is used for CSS preloads: [#&#8203;77210](https://github.com/vercel/next.js/issues/77210) - chore(HMR clients): Fix a bunch of typescript errors by including the appropriate webpack type declarations: [#&#8203;77207](https://github.com/vercel/next.js/issues/77207) - Update cache handler interface: [#&#8203;76687](https://github.com/vercel/next.js/issues/76687) - Turbopack: don't include AMP optimizer in NFT: [#&#8203;77242](https://github.com/vercel/next.js/issues/77242) - Server actions should not read stale data after calling `revalidate*`: [#&#8203;76885](https://github.com/vercel/next.js/issues/76885) - \[dev-overlay] Blur fader for scrollable container: [#&#8203;77196](https://github.com/vercel/next.js/issues/77196) - Make `revalidate*` work when followed by a redirect in a route handler: [#&#8203;77090](https://github.com/vercel/next.js/issues/77090) - feat: onNavigate for link: [#&#8203;77209](https://github.com/vercel/next.js/issues/77209) - fix: pass telemetry plugin rspack tests: [#&#8203;77257](https://github.com/vercel/next.js/issues/77257) - feat(eslint-plugin): add minimal built-in flat presets: [#&#8203;73873](https://github.com/vercel/next.js/issues/73873) - \[perf] skip loading client manifest for static metadata routes: [#&#8203;77260](https://github.com/vercel/next.js/issues/77260) - Upgrade React from `5398b711-20250314` to `c69a5fc5-20250318`: [#&#8203;77249](https://github.com/vercel/next.js/issues/77249) - \[ppr] Handle failed resume data cache entries: [#&#8203;77258](https://github.com/vercel/next.js/issues/77258) - Bypass `"use cache"` caches when Draft Mode is enabled: [#&#8203;77141](https://github.com/vercel/next.js/issues/77141) - chore(HMR clients): Clean up tryApplyUpdates, reduce differences between app/pages versions: [#&#8203;77219](https://github.com/vercel/next.js/issues/77219) - Upgrade React from `c69a5fc5-20250318` to `db7dfe05-20250319`: [#&#8203;77295](https://github.com/vercel/next.js/issues/77295) - Turbopack: layout segment optimization for Pages: [#&#8203;74815](https://github.com/vercel/next.js/issues/74815) - \[dev-overlay] Make footer sticky without side effects: [#&#8203;77327](https://github.com/vercel/next.js/issues/77327) - Alternate bundler: show state in app info message: [#&#8203;77259](https://github.com/vercel/next.js/issues/77259) - Revert "Turbopack: layout segment optimization for Pages": [#&#8203;77339](https://github.com/vercel/next.js/issues/77339) - \[metadata] add Yeti to html limited bots: [#&#8203;77335](https://github.com/vercel/next.js/issues/77335) - \[dev-overlay] Remove unused code from pages: [#&#8203;77325](https://github.com/vercel/next.js/issues/77325) - \[metadata] remove dead code of metadata routes handling: [#&#8203;77336](https://github.com/vercel/next.js/issues/77336) - Alternate bundler: pass more tests and update to 1.3.0-beta: [#&#8203;77269](https://github.com/vercel/next.js/issues/77269) - \[metadata] fix the metadata route like pages and refactor utils: [#&#8203;77264](https://github.com/vercel/next.js/issues/77264) - fix: absolute assetPrefix url with path: [#&#8203;77256](https://github.com/vercel/next.js/issues/77256) - clean up useReducer code re dev indicator: [#&#8203;77354](https://github.com/vercel/next.js/issues/77354) - test: ensure that router identity stays stable when navigating: [#&#8203;77356](https://github.com/vercel/next.js/issues/77356) - \[dev-overlay] Remove unused fields from hydration error state: [#&#8203;77332](https://github.com/vercel/next.js/issues/77332) - Turbopack: implement optimized css production chunking: [#&#8203;77284](https://github.com/vercel/next.js/issues/77284) - only log when instrumentation client takes too long: [#&#8203;77378](https://github.com/vercel/next.js/issues/77378) - switch development origin verification to be opt-in rather than opt-out: [#&#8203;77395](https://github.com/vercel/next.js/issues/77395) - remove direct ip/port bypass in dev origin check: [#&#8203;77414](https://github.com/vercel/next.js/issues/77414) - ensure /\__next middleware URLs are included in the origin check: [#&#8203;77416](https://github.com/vercel/next.js/issues/77416) - exclude images and static media from dev origin check: [#&#8203;77417](https://github.com/vercel/next.js/issues/77417) - Refactor metadata and viewport preloading: [#&#8203;77400](https://github.com/vercel/next.js/issues/77400) - \[dev-overlay] Remove unused fields from unhandled error action event: [#&#8203;77333](https://github.com/vercel/next.js/issues/77333) - Turbopack: Add --turbopack for next start: [#&#8203;77442](https://github.com/vercel/next.js/issues/77442) - Update README: [#&#8203;77464](https://github.com/vercel/next.js/issues/77464) - Remove unnecessary indirections around dispatch-related methods: [#&#8203;77423](https://github.com/vercel/next.js/issues/77423) - Lift public router instance to module level : [#&#8203;77426](https://github.com/vercel/next.js/issues/77426) - directly import param resolver in metadata: [#&#8203;77401](https://github.com/vercel/next.js/issues/77401) - \[metadata] always serve streaming metadata in build: [#&#8203;77437](https://github.com/vercel/next.js/issues/77437) - directly import search param resolver in metadata: [#&#8203;77402](https://github.com/vercel/next.js/issues/77402) - Remove forwardRef from Link in App Router: [#&#8203;77471](https://github.com/vercel/next.js/issues/77471) - Match subrequest handling for edge and node: [#&#8203;77474](https://github.com/vercel/next.js/issues/77474) - Add deprecation warning for legacyBehavior prop: [#&#8203;77473](https://github.com/vercel/next.js/issues/77473) - feat: useLinkStatus: [#&#8203;77300](https://github.com/vercel/next.js/issues/77300) - \[dynamicIO] Avoid memory leak warning for hanging promises: [#&#8203;77480](https://github.com/vercel/next.js/issues/77480) - \[dev-overlay] Remove "Unhandled Runtime Error" label: [#&#8203;77484](https://github.com/vercel/next.js/issues/77484) - Upgrade React from `db7dfe05-20250319` to `740a4f7a-20250325`: [#&#8203;77507](https://github.com/vercel/next.js/issues/77507) - Upgrade React from `740a4f7a-20250325` to `313332d1-20250326`: [#&#8203;77527](https://github.com/vercel/next.js/issues/77527) - Do not call `expireTags`/`getExpiration` unnecessarily: [#&#8203;77570](https://github.com/vercel/next.js/issues/77570) - fix(jest): stricter regex for 'server-only' in default config: [#&#8203;77588](https://github.com/vercel/next.js/issues/77588) - Fix: RESTORE_ACTION should not be thenable: [#&#8203;77582](https://github.com/vercel/next.js/issues/77582) - Use `NEXT_PRIVATE_DEBUG_CACHE` env variable for cache handler debug logs: [#&#8203;77585](https://github.com/vercel/next.js/issues/77585) - fix: make sure body can be read using `nodejs` runtime in middleware: [#&#8203;77553](https://github.com/vercel/next.js/issues/77553) - Update alternate bundler and pass more tests : [#&#8203;77579](https://github.com/vercel/next.js/issues/77579) - Refactor build scripts and rewrite pack-next in TypeScript: [#&#8203;77536](https://github.com/vercel/next.js/issues/77536) - fix isCsrfOriginAllowed handling for localhost: [#&#8203;77594](https://github.com/vercel/next.js/issues/77594) - Turbopack build: fix deterministic build test: [#&#8203;77618](https://github.com/vercel/next.js/issues/77618) - Turbopack build: Fix urlencoding test: [#&#8203;77622](https://github.com/vercel/next.js/issues/77622) - \[og] fix vercel og build issue on windows: [#&#8203;77650](https://github.com/vercel/next.js/issues/77650) - \[Segment Cache] Add "client-only" option: [#&#8203;77655](https://github.com/vercel/next.js/issues/77655) - Remove useSyncExternalStore from useIsDevRendering: [#&#8203;77651](https://github.com/vercel/next.js/issues/77651) - Track navigation timestamp on CacheNode: [#&#8203;77251](https://github.com/vercel/next.js/issues/77251) - Upgrade [@&#8203;playwright/test](https://github.com/playwright/test) and cleanup internal APIs: [#&#8203;77659](https://github.com/vercel/next.js/issues/77659) - Refactor: move `"use cache"` revalidation logic out of incremental cache: [#&#8203;77577](https://github.com/vercel/next.js/issues/77577) - Remove obsolete update of implicit tags expiration after server action: [#&#8203;77595](https://github.com/vercel/next.js/issues/77595) - Revert "Remove useSyncExternalStore from useIsDevRendering ([#&#8203;77651](https://github.com/vercel/next.js/issues/77651))": [#&#8203;77672](https://github.com/vercel/next.js/issues/77672) - Upgrade React from `313332d1-20250326` to `63779030-20250328`: [#&#8203;77643](https://github.com/vercel/next.js/issues/77643) - Turbopack build: Add marker for when a build used Turbopack: [#&#8203;77674](https://github.com/vercel/next.js/issues/77674) - feat(images): use experimental `isrFlushToDisk` option to prevent writing optimized images to cache: [#&#8203;70645](https://github.com/vercel/next.js/issues/70645) - doc: instrumentation-client: [#&#8203;77649](https://github.com/vercel/next.js/issues/77649) - Alternate bundler: use equivalent native plugins for built-in plugins: [#&#8203;77355](https://github.com/vercel/next.js/issues/77355) - Resolve Viewport separately from Metadata: [#&#8203;77427](https://github.com/vercel/next.js/issues/77427) - fix(turbopack): Suppress logging for short no-op turbopack HMRs: [#&#8203;76924](https://github.com/vercel/next.js/issues/76924) - Turbopack build: Fix node-file-trace test: [#&#8203;77641](https://github.com/vercel/next.js/issues/77641) - Turbopack build: Implement error when using next start without --turbopack: [#&#8203;77678](https://github.com/vercel/next.js/issues/77678) - legacyBehavior deprecation error should only trigger once: [#&#8203;77687](https://github.com/vercel/next.js/issues/77687) - Pass only required props to NonIndex: [#&#8203;77685](https://github.com/vercel/next.js/issues/77685) - Revert "fix: make sure body can be read using `nodejs` runtime in middleware": [#&#8203;77690](https://github.com/vercel/next.js/issues/77690) - \[dev-overlay] Harden types when handling hydration mismatches: [#&#8203;77334](https://github.com/vercel/next.js/issues/77334) - \[dev-overlay] Fix ref warning when Pages Router with React 18 is used: [#&#8203;77726](https://github.com/vercel/next.js/issues/77726) - add support for cssmodules-pure-no-check to allow global CSS features like View Transitions: [#&#8203;77321](https://github.com/vercel/next.js/issues/77321) - \[dev-overlay] Only warn once per invalid sourcemap: [#&#8203;77444](https://github.com/vercel/next.js/issues/77444) - \[dynamicIO] only abort once per prerender: [#&#8203;77747](https://github.com/vercel/next.js/issues/77747) - Turbopack build: Move Turbopack marker to SERVER_FILES_MANIFEST: [#&#8203;77711](https://github.com/vercel/next.js/issues/77711) - Reapply "Turbopack: layout segment optimization for Pages" ([#&#8203;77339](https://github.com/vercel/next.js/issues/77339)): [#&#8203;77696](https://github.com/vercel/next.js/issues/77696) - feat(next/image): support `new URL()` for `images.remotePatterns`: [#&#8203;77692](https://github.com/vercel/next.js/issues/77692) - \[dev-overlay] remove text wrap for terminal: [#&#8203;76953](https://github.com/vercel/next.js/issues/76953) - Upgrade React from `63779030-20250328` to `040f8286-20250402`: [#&#8203;77742](https://github.com/vercel/next.js/issues/77742) - Optimize server runtime bundles: [#&#8203;77723](https://github.com/vercel/next.js/issues/77723) - Turbopack Build: Remove cases of process.env.TURBOPACK: [#&#8203;77757](https://github.com/vercel/next.js/issues/77757) - \[dev-overlay] Fix unactionable `useLayoutEffect` warning if React 18 is used: [#&#8203;77737](https://github.com/vercel/next.js/issues/77737) - \[dev-tools] Fix flashing of disabled state on indicator: [#&#8203;77727](https://github.com/vercel/next.js/issues/77727) - Webpack build: Add compiled in x seconds in missing places: [#&#8203;77751](https://github.com/vercel/next.js/issues/77751) - Ignore an existing HMR refresh hash cookie with `next start`: [#&#8203;77714](https://github.com/vercel/next.js/issues/77714) - Turbopack build: Replace process.env.TURBOPACK usage: [#&#8203;77783](https://github.com/vercel/next.js/issues/77783) - Client instrumentation: onRouterTransitionStart: [#&#8203;77791](https://github.com/vercel/next.js/issues/77791) - Turbopack: log telemetry events when `TurbopackInternalError`s occur: [#&#8203;77660](https://github.com/vercel/next.js/issues/77660) - Rename alternate bundler package name: [#&#8203;77793](https://github.com/vercel/next.js/issues/77793) - Turbopack: fix `sideEffects` matching for non-relative globs: [#&#8203;77693](https://github.com/vercel/next.js/issues/77693) - Revert "Upgrade [@&#8203;playwright/test](https://github.com/playwright/test) and cleanup internal APIs": [#&#8203;77814](https://github.com/vercel/next.js/issues/77814) - \[next-ts-plugin] fix: language service crashes / metadata plugin not working: [#&#8203;77213](https://github.com/vercel/next.js/issues/77213) - \[dev-overlay] always display bundler name on version info: [#&#8203;77739](https://github.com/vercel/next.js/issues/77739) - \[dev-overlay] sync horizontal scrollbar style: [#&#8203;77769](https://github.com/vercel/next.js/issues/77769) - \[dev-overlay] Read `issueCount` from non-async `errors` array: [#&#8203;77821](https://github.com/vercel/next.js/issues/77821) - \[dev-overlay] Fix error dialog resizing logic: [#&#8203;77830](https://github.com/vercel/next.js/issues/77830) - Turbopack Build: Optimize instrumentation hook generation: [#&#8203;77832](https://github.com/vercel/next.js/issues/77832) - \[next-server] skip setting vary header for basic routes: [#&#8203;77797](https://github.com/vercel/next.js/issues/77797) - Lazily call `refreshTags` and `getExpiration`: [#&#8203;77779](https://github.com/vercel/next.js/issues/77779) - Add debug logging to default cache handler and `"use cache"` wrapper: [#&#8203;77827](https://github.com/vercel/next.js/issues/77827) - \[ts-next-plugin] fix: properly exit when failed to initialize: [#&#8203;77842](https://github.com/vercel/next.js/issues/77842) - Alternate bundler: correctly inject react refresh loader: [#&#8203;77713](https://github.com/vercel/next.js/issues/77713) - \[dynamicIO] Fix dev warmup: [#&#8203;77829](https://github.com/vercel/next.js/issues/77829) - fix: don't reset the prefetch segment data routes on loop: [#&#8203;77845](https://github.com/vercel/next.js/issues/77845) - Ensure `searchParams` access in `"use cache"` triggers error when caught: [#&#8203;77838](https://github.com/vercel/next.js/issues/77838) - Revert "\[dev-overlay] Fix error dialog resizing logic": [#&#8203;77849](https://github.com/vercel/next.js/issues/77849) - fix: add cache tags to segment prefetch responses: [#&#8203;77846](https://github.com/vercel/next.js/issues/77846) - Avoid microtaskiness when lazily fetching from cache handlers: [#&#8203;77843](https://github.com/vercel/next.js/issues/77843) - \[Experiment] <Link unstable_dynamicOnHover>: [#&#8203;77866](https://github.com/vercel/next.js/issues/77866) - \[dev-overlay] disable font ligatures: [#&#8203;77865](https://github.com/vercel/next.js/issues/77865) - Enable process.env.TURBOPACK when process.env.IS_TURBOPACK_TEST is set: [#&#8203;77894](https://github.com/vercel/next.js/issues/77894) - \[ts-next-plugin] fix: use `getSourceFile` instead of `fileExists` to check file existence: [#&#8203;77863](https://github.com/vercel/next.js/issues/77863) - fix: only set request phase to "action" when actually running an action: [#&#8203;76993](https://github.com/vercel/next.js/issues/76993) - Alternate bundler: fix react refresh and adjust sourcemap: [#&#8203;77875](https://github.com/vercel/next.js/issues/77875) - Upgrade React from `040f8286-20250402` to `33661467-20250407`: [#&#8203;77899](https://github.com/vercel/next.js/issues/77899) - refactor: rename isAction to isPossibleServerAction: [#&#8203;77011](https://github.com/vercel/next.js/issues/77011) - \[logging] improve logging of port retry: [#&#8203;77868](https://github.com/vercel/next.js/issues/77868) - Remove canary-gate and add experimental warning for alternate bundler: [#&#8203;77806](https://github.com/vercel/next.js/issues/77806) - fix(next/image): bump sharp@0.34.1: [#&#8203;77839](https://github.com/vercel/next.js/issues/77839) - Turbopack builds: Remove canary-gate and add experimental warning: [#&#8203;77808](https://github.com/vercel/next.js/issues/77808) - feat: Disable char frequency analysis for mangler: [#&#8203;77887](https://github.com/vercel/next.js/issues/77887) - Set Turbopack env var for internal modules: [#&#8203;77902](https://github.com/vercel/next.js/issues/77902) - Don't externalize various new `next/*` entrypoints: [#&#8203;77844](https://github.com/vercel/next.js/issues/77844) - Revert "Fix: RESTORE_ACTION should not be thenable": [#&#8203;77909](https://github.com/vercel/next.js/issues/77909) - Fix resolve alternate bundler in monorepo: [#&#8203;77913](https://github.com/vercel/next.js/issues/77913) - Output server.mjs for standalone with type: module: [#&#8203;77944](https://github.com/vercel/next.js/issues/77944) ##### Example Changes - with-polyfills example: only link to specific browsers: [#&#8203;77211](https://github.com/vercel/next.js/issues/77211) - Add example for alternate bundler: [#&#8203;77057](https://github.com/vercel/next.js/issues/77057) - chore(examples): remove examples that can be v0'd: [#&#8203;77349](https://github.com/vercel/next.js/issues/77349) - Alternate bundler example: use `canary` version: [#&#8203;77754](https://github.com/vercel/next.js/issues/77754) - Fix Wasm example: [#&#8203;77924](https://github.com/vercel/next.js/issues/77924) ##### Misc Changes - \[test] consolidate hmr test for react 18.3: [#&#8203;76975](https://github.com/vercel/next.js/issues/76975) - docs: update API example: [#&#8203;76987](https://github.com/vercel/next.js/issues/76987) - docs: add Pinterest Rich Pins metadata example: [#&#8203;77025](https://github.com/vercel/next.js/issues/77025) - fix(CI): Correctly call test/update-bundler-manifest.js script: [#&#8203;77000](https://github.com/vercel/next.js/issues/77000) - Update bundler development test manifest: [#&#8203;77040](https://github.com/vercel/next.js/issues/77040) - Update bundler production test manifest: [#&#8203;77043](https://github.com/vercel/next.js/issues/77043) - Update Turbopack development test manifest: [#&#8203;77041](https://github.com/vercel/next.js/issues/77041) - chore(github): remove /examples from contribution guidelines, remove examples issue template: [#&#8203;77050](https://github.com/vercel/next.js/issues/77050) - Turbopack: when reading a non yet existing cell from a in progress tasks, wait for the computation to finish: [#&#8203;77029](https://github.com/vercel/next.js/issues/77029) - Turbopack: wait before reading cells when the task is scheduled: [#&#8203;77031](https://github.com/vercel/next.js/issues/77031) - Turbopack: don't call individual() again: [#&#8203;77048](https://github.com/vercel/next.js/issues/77048) - Turbopack: create module graph strongly consistent: [#&#8203;77051](https://github.com/vercel/next.js/issues/77051) - Turbopack: Vc stability of ModuleGraph: [#&#8203;77052](https://github.com/vercel/next.js/issues/77052) - Turbopack: fix corrected time calcuation for trace server: [#&#8203;77080](https://github.com/vercel/next.js/issues/77080) - Turbopack: fewer manifests for static metadata: [#&#8203;77087](https://github.com/vercel/next.js/issues/77087) - Update Turbopack development test manifest: [#&#8203;77071](https://github.com/vercel/next.js/issues/77071) - Update bundler production test manifest: [#&#8203;77069](https://github.com/vercel/next.js/issues/77069) - Update bundler development test manifest: [#&#8203;77068](https://github.com/vercel/next.js/issues/77068) - Revert "Update rust toolchain to 2025-03-12": [#&#8203;77103](https://github.com/vercel/next.js/issues/77103) - perf(turbopack): Merge nodes with same starting point: [#&#8203;76938](https://github.com/vercel/next.js/issues/76938) - refactor(actions): Remove turbopack magic comments: [#&#8203;77063](https://github.com/vercel/next.js/issues/77063) - Update Turbopack development test manifest: [#&#8203;77108](https://github.com/vercel/next.js/issues/77108) - Turbopack: move must_use to actually have an effect: [#&#8203;77111](https://github.com/vercel/next.js/issues/77111) - Turbopack: align chunking with graph entries: [#&#8203;76441](https://github.com/vercel/next.js/issues/76441) - Turbopack: ChunkGroup in evaluated_chunk_group: [#&#8203;76593](https://github.com/vercel/next.js/issues/76593) - Turbopack: `charset=utf-8` in data-url source maps: [#&#8203;77112](https://github.com/vercel/next.js/issues/77112) - Update bundler production test manifest: [#&#8203;77107](https://github.com/vercel/next.js/issues/77107) - Update bundler development test manifest: [#&#8203;77106](https://github.com/vercel/next.js/issues/77106) - Update Turbopack production test manifest: [#&#8203;77109](https://github.com/vercel/next.js/issues/77109) - docs(scripts): update Script -> beforeInteractive docs: [#&#8203;77136](https://github.com/vercel/next.js/issues/77136) - Add doc for instrumentation client hook: [#&#8203;77134](https://github.com/vercel/next.js/issues/77134) - docs(scripts): missing 'soon': [#&#8203;77137](https://github.com/vercel/next.js/issues/77137) - doc: diff between instrumentation vs instrumentation-client: [#&#8203;77143](https://github.com/vercel/next.js/issues/77143) - Alternate bundler: add index.d.ts types to plugin: [#&#8203;77144](https://github.com/vercel/next.js/issues/77144) - Alternate bundler: Add `react-refresh` as a dependency of plugin: [#&#8203;77142](https://github.com/vercel/next.js/issues/77142) - build: Update `swc_core` to `v16.6.0`: [#&#8203;77155](https://github.com/vercel/next.js/issues/77155) - Allow building node-pty in tests: [#&#8203;77187](https://github.com/vercel/next.js/issues/77187) - Don't mark ppr-errors Turbopack dev tests as failed: [#&#8203;76951](https://github.com/vercel/next.js/issues/76951) - Bump lightningcss: [#&#8203;77132](https://github.com/vercel/next.js/issues/77132) - Update Turbopack production test manifest: [#&#8203;77183](https://github.com/vercel/next.js/issues/77183) - Turbopack: fix graph layout segment optimization: [#&#8203;77094](https://github.com/vercel/next.js/issues/77094) - Turbopack: split up server actions modules for better treeshaking: [#&#8203;76877](https://github.com/vercel/next.js/issues/76877) - Turbopack: conditional parse in apply_module_type: [#&#8203;77191](https://github.com/vercel/next.js/issues/77191) - build: Update `swc_core` to `v16.6.2`: [#&#8203;77194](https://github.com/vercel/next.js/issues/77194) - Turbopack: more tracing: [#&#8203;75351](https://github.com/vercel/next.js/issues/75351) - Update bundler development test manifest: [#&#8203;77180](https://github.com/vercel/next.js/issues/77180) - Better failure tracking for middleware-custom-matchers-i18n: [#&#8203;76974](https://github.com/vercel/next.js/issues/76974) - Update bundler production test manifest: [#&#8203;77179](https://github.com/vercel/next.js/issues/77179) - fix(test/e2e/prerender): Remove race condition in test: [#&#8203;77222](https://github.com/vercel/next.js/issues/77222) - Update Turbopack production test manifest: [#&#8203;77228](https://github.com/vercel/next.js/issues/77228) - Update Turbopack development test manifest: [#&#8203;77227](https://github.com/vercel/next.js/issues/77227) - \[Turbopack] basic production chunking for CSS: [#&#8203;75049](https://github.com/vercel/next.js/issues/75049) - docs: optimizing local dev: [#&#8203;77140](https://github.com/vercel/next.js/issues/77140) - Update bundler production test manifest: [#&#8203;77225](https://github.com/vercel/next.js/issues/77225) - devlow-bench: wait for complete ready for server startup event: [#&#8203;77217](https://github.com/vercel/next.js/issues/77217) - fix(CI): Re-enable retries for bundler integration tests: [#&#8203;77265](https://github.com/vercel/next.js/issues/77265) - Turbopack: handle non chunkable modules in module batches: [#&#8203;77282](https://github.com/vercel/next.js/issues/77282) - Update Turbopack development test manifest: [#&#8203;77276](https://github.com/vercel/next.js/issues/77276) - Update Turbopack production test manifest: [#&#8203;77275](https://github.com/vercel/next.js/issues/77275) - Turbopack: avoid single css chunks when there is only a single chunk item: [#&#8203;77283](https://github.com/vercel/next.js/issues/77283) - Update bundler development test manifest: [#&#8203;77272](https://github.com/vercel/next.js/issues/77272) - Update bundler production test manifest: [#&#8203;77273](https://github.com/vercel/next.js/issues/77273) - Turbopack: compute ordered entries in module batches: [#&#8203;77294](https://github.com/vercel/next.js/issues/77294) - Update Turbopack production test manifest: [#&#8203;77316](https://github.com/vercel/next.js/issues/77316) - Update Turbopack development test manifest: [#&#8203;77317](https://github.com/vercel/next.js/issues/77317) - Update bundler production test manifest: [#&#8203;77314](https://github.com/vercel/next.js/issues/77314) - fix(turbopack): Call `.minify()` of lightningcss `StyleSheet`: [#&#8203;77313](https://github.com/vercel/next.js/issues/77313) - fix(CI build_and_deploy): Use a larger fetch-depth for build-native job: [#&#8203;77307](https://github.com/vercel/next.js/issues/77307) - chore(turbopack): Fix a few syntactic nits: [#&#8203;77310](https://github.com/vercel/next.js/issues/77310) - Update bundler development test manifest: [#&#8203;77315](https://github.com/vercel/next.js/issues/77315) - Turbopack: refactor CssEmbed to avoid creating a chunk item: [#&#8203;77303](https://github.com/vercel/next.js/issues/77303) - fix: Update `swc_core` and use `rayon` instead of `chili`: [#&#8203;77338](https://github.com/vercel/next.js/issues/77338) - Fix chakra link: [#&#8203;77280](https://github.com/vercel/next.js/issues/77280) - Update Turbopack production test manifest: [#&#8203;77366](https://github.com/vercel/next.js/issues/77366) - Update Turbopack development test manifest: [#&#8203;77365](https://github.com/vercel/next.js/issues/77365) - Turbopack: ignore static asset imports for Edge: [#&#8203;77382](https://github.com/vercel/next.js/issues/77382) - Update bundler development test manifest: [#&#8203;77364](https://github.com/vercel/next.js/issues/77364) - docs: clarify middleware use cases: [#&#8203;77438](https://github.com/vercel/next.js/issues/77438) - fix(turbopack-bench): Limit `copy_dir` concurrency to avoid running out of file descriptors: [#&#8203;77468](https://github.com/vercel/next.js/issues/77468) - docs: fix typo: [#&#8203;77483](https://github.com/vercel/next.js/issues/77483) - Update `swc_core` to `v16.10.0`: [#&#8203;77489](https://github.com/vercel/next.js/issues/77489) - fix(turbopack): Use strongly consistent reads for sourcemaps in napi FFI boundary: [#&#8203;77511](https://github.com/vercel/next.js/issues/77511) - Update mappings in `launch.json` to improve debugging in VSCode: [#&#8203;76559](https://github.com/vercel/next.js/issues/76559) - chore(ci): Configure codspeed: [#&#8203;76884](https://github.com/vercel/next.js/issues/76884) - Update bundler production test manifest: [#&#8203;77602](https://github.com/vercel/next.js/issues/77602) - Update bundler development test manifest: [#&#8203;77603](https://github.com/vercel/next.js/issues/77603) - Update Turbopack development test manifest: [#&#8203;77605](https://github.com/vercel/next.js/issues/77605) - Update Turbopack production test manifest: [#&#8203;77604](https://github.com/vercel/next.js/issues/77604) - Turbopack build: Fix symbolic-file-links test: [#&#8203;77615](https://github.com/vercel/next.js/issues/77615) - Update pnpm swc-build-native's file path: [#&#8203;77623](https://github.com/vercel/next.js/issues/77623) - fix: Use standard PostCSS configuration in create-next-app format for ecosystem compatibility: [#&#8203;77376](https://github.com/vercel/next.js/issues/77376) - Turbopack build: Fix basepath test: [#&#8203;77630](https://github.com/vercel/next.js/issues/77630) - Turbopack: disable pages dir css test cases: [#&#8203;77380](https://github.com/vercel/next.js/issues/77380) - Update bundler development test manifest: [#&#8203;77627](https://github.com/vercel/next.js/issues/77627) - Update Turbopack development test manifest: [#&#8203;77628](https://github.com/vercel/next.js/issues/77628) - Update bundler production test manifest: [#&#8203;77626](https://github.com/vercel/next.js/issues/77626) - refactor(turbo-tasks): Make TraceRawVcs a supertrait of TaskInput: [#&#8203;77397](https://github.com/vercel/next.js/issues/77397) - refactor(turbo-tasks): Make TraceRawVcs a supertrait of MagicAny: [#&#8203;77596](https://github.com/vercel/next.js/issues/77596) - fix(turbopack): Recognize urls starting with // as external: [#&#8203;77526](https://github.com/vercel/next.js/issues/77526) - Update CI build caching docs to include `bun` and other package manager: [#&#8203;77633](https://github.com/vercel/next.js/issues/77633) - fix(turbopack): Fix panic while tree shaking optimization: [#&#8203;77492](https://github.com/vercel/next.js/issues/77492) - fix(turbopack): Prevent duplicate in tree shaking: [#&#8203;77491](https://github.com/vercel/next.js/issues/77491) - Turbopack: Skip ssr processing when next/dynamic ssr: false: [#&#8203;77636](https://github.com/vercel/next.js/issues/77636) - Turbopack Build: CSR bailout test skip check for file path: [#&#8203;77639](https://github.com/vercel/next.js/issues/77639) - Turbopack: fix side effects optimization bug: [#&#8203;77640](https://github.com/vercel/next.js/issues/77640) - Turbopack: add tracing for fetch calls: [#&#8203;77673](https://github.com/vercel/next.js/issues/77673) - \[test] Update stale snapshots: [#&#8203;77680](https://github.com/vercel/next.js/issues/77680) - Turbopack: fix bug in handling of module batches: [#&#8203;77638](https://github.com/vercel/next.js/issues/77638) - pack-next: use default `--js-build` as option instead of `--no-js-build`: [#&#8203;77686](https://github.com/vercel/next.js/issues/77686) - Turbopack: Allow overriding tsconfig path via next-config: [#&#8203;77563](https://github.com/vercel/next.js/issues/77563) - Scripts: migrate unpack-next to TypeScript: [#&#8203;77538](https://github.com/vercel/next.js/issues/77538) - chore(turbopack): Make TaskInputs use ResolvedVc: [#&#8203;77700](https://github.com/vercel/next.js/issues/77700) - Getting Started Docs: Add `Metadata and OG images` page: [#&#8203;74077](https://github.com/vercel/next.js/issues/74077) - Getting Started Docs: Add `Upgrade` page: [#&#8203;77717](https://github.com/vercel/next.js/issues/77717) - Docs IA 2.0: Rename `Examples` to `Guides`: [#&#8203;77722](https://github.com/vercel/next.js/issues/77722) - build: Update `swc_core` to `v19.0.0`: [#&#8203;77669](https://github.com/vercel/next.js/issues/77669) - Add Josh to Turbopack team for created-by label: [#&#8203;77738](https://github.com/vercel/next.js/issues/77738) - Turbopack: use better ident for worker chunk group: [#&#8203;77731](https://github.com/vercel/next.js/issues/77731) - chore(turbo-tasks): Remove redundant ast-grep lint rule: [#&#8203;77701](https://github.com/vercel/next.js/issues/77701) - fix(docs): update error type in notFound function description: [#&#8203;77503](https://github.com/vercel/next.js/issues/77503) - Update bundler development test manifest: [#&#8203;77706](https://github.com/vercel/next.js/issues/77706) - Update Turbopack production test manifest: [#&#8203;77709](https://github.com/vercel/next.js/issues/77709) - Turbopack: refactor resolve_url_reference to avoid chunk_path: [#&#8203;77732](https://github.com/vercel/next.js/issues/77732) - Update Turbopack development test manifest: [#&#8203;77708](https://github.com/vercel/next.js/issues/77708) - Port "app-document" test to e2e: [#&#8203;77748](https://github.com/vercel/next.js/issues/77748) - \[ci]: skip build-windows job for docs only change: [#&#8203;77743](https://github.com/vercel/next.js/issues/77743) - Update bundler production test manifest: [#&#8203;77707](https://github.com/vercel/next.js/issues/77707) - chore(turbo-tasks): Audit all remaining uses of `Vc` in a struct: [#&#8203;77756](https://github.com/vercel/next.js/issues/77756) - docs: `instrumentation-client` follow up: [#&#8203;77752](https://github.com/vercel/next.js/issues/77752) - \[test] Get rid of unrelated "Invalid hook call" error from tests using `styled-components`: [#&#8203;77736](https://github.com/vercel/next.js/issues/77736) - Turbopack: keep side-effect-full imports: [#&#8203;76545](https://github.com/vercel/next.js/issues/76545) - Docs: Recommend inline `use server` and update examples: [#&#8203;77770](https://github.com/vercel/next.js/issues/77770) - Revert "Docs: Recommend inline `use server` and update examples": [#&#8203;77771](https://github.com/vercel/next.js/issues/77771) - doc: useLinkStatus: [#&#8203;77648](https://github.com/vercel/next.js/issues/77648) - Update Turbopack production test manifest: [#&#8203;77767](https://github.com/vercel/next.js/issues/77767) - Update bundler development test manifest: [#&#8203;77765](https://github.com/vercel/next.js/issues/77765) - \[docs] fix lint issue in use link status doc: [#&#8203;77785](https://github.com/vercel/next.js/issues/77785) - doc: onNavigate: [#&#8203;77647](https://github.com/vercel/next.js/issues/77647) - Update bundler production test manifest: [#&#8203;77764](https://github.com/vercel/next.js/issues/77764) - doc: useLinkStatus doc follow-up: [#&#8203;77790](https://github.com/vercel/next.js/issues/77790) - Update Turbopack development test manifest: [#&#8203;77766](https://github.com/vercel/next.js/issues/77766) - \[ci] remove needs build-native for lint job: [#&#8203;77787](https://github.com/vercel/next.js/issues/77787) - test(examples): update turbopack manifest: [#&#8203;75092](https://github.com/vercel/next.js/issues/75092) - \[test] fix bad test fixuture for perf test: [#&#8203;77804](https://github.com/vercel/next.js/issues/77804) - \[test] fix react 19.1 related tests: [#&#8203;77809](https://github.com/vercel/next.js/issues/77809) - doc: onNavigate follow-up: [#&#8203;77805](https://github.com/vercel/next.js/issues/77805) - fix(turbopack): Apply `hygiene` if mangling is disabled: [#&#8203;77815](https://github.com/vercel/next.js/issues/77815) - Turbopack: omit empty source map when code starts with a new line: [#&#8203;77734](https://github.com/vercel/next.js/issues/77734) - \[next-lint] test: remove eslint config snapshot testing: [#&#8203;77818](https://github.com/vercel/next.js/issues/77818) - Turbopack: avoid deriving css source map path from generated code path: [#&#8203;77735](https://github.com/vercel/next.js/issues/77735) - Turbopack: pass asset to chunk_path to allow to use content hash later: [#&#8203;77772](https://github.com/vercel/next.js/issues/77772) - Docs IA 2.0: Add `Deep Dive` section placeholder: [#&#8203;77724](https://github.com/vercel/next.js/issues/77724) - Turbopack: use document.currentScript instead of chunk path literal: [#&#8203;77773](https://github.com/vercel/next.js/issues/77773) - Turbopack: don't include client-fs assets in NFT: [#&#8203;77799](https://github.com/vercel/next.js/issues/77799) - Turbopack: enable content hashing in production: [#&#8203;77775](https://github.com/vercel/next.js/issues/77775) - Turbopack: correctly track `await import("path")` in static analysis: [#&#8203;77811](https://github.com/vercel/next.js/issues/77811) - fix(turbopack-cli): Make turbopack_cli::dev::source a persistent (non-transient) task: [#&#8203;77798](https://github.com/vercel/next.js/issues/77798) - \[test] temporarily disable flaky test for react 18: [#&#8203;77848](https://github.com/vercel/next.js/issues/77848) - Update Turbopack production test manifest: [#&#8203;77872](https://github.com/vercel/next.js/issues/77872) - Rename process.env.TURBOPACK to process.env.IS_TURBOPACK_TEST for tests: [#&#8203;77892](https://github.com/vercel/next.js/issues/77892) - \[test] consolidate missing tag dev test: [#&#8203;77896](https://github.com/vercel/next.js/issues/77896) - fix(Turbopack): Intermittent CapacityExceeded Error in Persistent Caching: [#&#8203;77691](https://github.com/vercel/next.js/issues/77691) - fix: flaky test detection needs to use new turbopack flag: [#&#8203;77908](https://github.com/vercel/next.js/issues/77908) - fix: apply Geist fonts correctly on default cna template: [#&#8203;77237](https://github.com/vercel/next.js/issues/77237) - Update bundler development test manifest: [#&#8203;77884](https://github.com/vercel/next.js/issues/77884) - Update bundler production test manifest: [#&#8203;77885](https://github.com/vercel/next.js/issues/77885) - Update Turbopack development test manifest: [#&#8203;77886](https://github.com/vercel/next.js/issues/77886) - Update bundler production test manifest: [#&#8203;77914](https://github.com/vercel/next.js/issues/77914) - Update bundler development test manifest: [#&#8203;77915](https://github.com/vercel/next.js/issues/77915) - fix(turbopack): Apply `import_map` option of `swc_emotion` correctly: [#&#8203;71776](https://github.com/vercel/next.js/issues/71776) - Turbopack: handle removed routes: [#&#8203;77890](https://github.com/vercel/next.js/issues/77890) - build: Update `swc_core` to `v21.0.1`: [#&#8203;77918](https://github.com/vercel/next.js/issues/77918) - IA 2.0: Review `Getting Started` Section: [#&#8203;77921](https://github.com/vercel/next.js/issues/77921) - test: attempt to de-flake rsc-basic: [#&#8203;77934](https://github.com/vercel/next.js/issues/77934) - docs: revert image 15.3 change until live: [#&#8203;77941](https://github.com/vercel/next.js/issues/77941) - Turbopack: remove CSS comments when minifying: [#&#8203;77940](https://github.com/vercel/next.js/issues/77940) ##### Credits Huge thanks to [@&#8203;raunofreiberg](https://github.com/raunofreiberg), [@&#8203;huozhi](https://github.com/huozhi), [@&#8203;ijjk](https://github.com/ijjk), [@&#8203;timneutkens](https://github.com/timneutkens), [@&#8203;gaojude](https://github.com/gaojude), [@&#8203;leerob](https://github.com/leerob), [@&#8203;mezotv](https://github.com/mezotv), [@&#8203;bgw](https://github.com/bgw), [@&#8203;samcx](https://github.com/samcx), [@&#8203;ztanner](https://github.com/ztanner), [@&#8203;sokra](https://github.com/sokra), [@&#8203;mischnic](https://github.com/mischnic), [@&#8203;wbinnssmith](https://github.com/wbinnssmith), [@&#8203;kdy1](https://github.com/kdy1), [@&#8203;unstubbable](https://github.com/unstubbable), [@&#8203;ahabhgk](https://github.com/ahabhgk), [@&#8203;ScriptedAlchemy](https://github.com/ScriptedAlchemy), [@&#8203;SukkaW](https://github.com/SukkaW), [@&#8203;wyattjoh](https://github.com/wyattjoh), [@&#8203;eps1lon](https://github.com/eps1lon), [@&#8203;Amirroid](https://github.com/Amirroid), [@&#8203;Netail](https://github.com/Netail), [@&#8203;lubieowoce](https://github.com/lubieowoce), [@&#8203;gnoff](https://github.com/gnoff), [@&#8203;jackwilson323](https://github.com/jackwilson323), [@&#8203;acdlite](https://github.com/acdlite), [@&#8203;sbougerel](https://github.com/sbougerel), [@&#8203;kevva](https://github.com/kevva), [@&#8203;kasperpeulen](https://github.com/kasperpeulen), [@&#8203;Cy-Tek](https://github.com/Cy-Tek), [@&#8203;dvoytenko](https://github.com/dvoytenko), [@&#8203;husseinraoouf](https://github.com/husseinraoouf), [@&#8203;isBatak](https://github.com/isBatak), [@&#8203;iamkd](https://github.com/iamkd), [@&#8203;delbaoliveira](https://github.com/delbaoliveira), [@&#8203;jantimon](https://github.com/jantimon), [@&#8203;padmaia](https://github.com/padmaia), [@&#8203;Bernardoow](https://github.com/Bernardoow), [@&#8203;styfle](https://github.com/styfle), [@&#8203;devjiwonchoi](https://github.com/devjiwonchoi), [@&#8203;JamBalaya56562](https://github.com/JamBalaya56562), and [@&#8203;Marukome0743](https://github.com/Marukome0743) for helping! ### [`v15.2.5`](https://github.com/vercel/next.js/releases/tag/v15.2.5) [Compare Source](https://github.com/vercel/next.js/compare/v15.2.4...v15.2.5) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - Update swc_core and use rayon instead of chili ([#&#8203;77338](https://github.com/vercel/next.js/issues/77338)) - Update swc_core to v16.6.2 ([#&#8203;77194](https://github.com/vercel/next.js/issues/77194)) - Update swc_core to v16.6.0 ([#&#8203;77155](https://github.com/vercel/next.js/issues/77155)) - \[og] fix vercel og build issue on windows ([#&#8203;77650](https://github.com/vercel/next.js/issues/77650)) - clean up useReducer code re dev indicator ([#&#8203;77354](https://github.com/vercel/next.js/issues/77354)) - \[dev-overlay] ensure stripping overlay bundle in prod build ([#&#8203;76976](https://github.com/vercel/next.js/issues/76976)) ##### Credits Huge thanks to [@&#8203;huozhi](https://github.com/huozhi), [@&#8203;gaojude](https://github.com/gaojude) and [@&#8203;kdy1](https://github.com/kdy1) for helping! ### [`v15.2.4`](https://github.com/vercel/next.js/releases/tag/v15.2.4) [Compare Source](https://github.com/vercel/next.js/compare/v15.2.3...v15.2.4) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - Match subrequest handling for edge and node ([#&#8203;77474](https://github.com/vercel/next.js/issues/77474)) - exclude images and static media from dev origin check ([#&#8203;77417](https://github.com/vercel/next.js/issues/77417)) - ensure /\__next middleware URLs are included in the origin check ([#&#8203;77416](https://github.com/vercel/next.js/issues/77416)) - remove direct ip/port bypass in dev origin check ([#&#8203;77414](https://github.com/vercel/next.js/issues/77414)) - switch development origin verification to be opt-in rather than opt-out ([#&#8203;77395](https://github.com/vercel/next.js/issues/77395)) ##### Credits Huge thanks to [@&#8203;ijjk](https://github.com/ijjk) and [@&#8203;ztanner](https://github.com/ztanner) for helping! ### [`v15.2.3`](https://github.com/vercel/next.js/releases/tag/v15.2.3) [Compare Source](https://github.com/vercel/next.js/compare/v15.2.2...v15.2.3) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. > This release contains a security patch for [CVE-2025-29927](https://github.com/vercel/next.js/security/advisories/GHSA-f82v-jwr5-mffw). ##### Core Changes - Update default allowed origins list ([#&#8203;77212](https://github.com/vercel/next.js/issues/77212)) - unify allowed origin detection handling ([#&#8203;77053](https://github.com/vercel/next.js/issues/77053)) - Add dev warning for cross-origin and stabilize allowedDevOrigins ([#&#8203;77044](https://github.com/vercel/next.js/issues/77044)) - Ensure deploymentId is used for CSS preloads ([#&#8203;77210](https://github.com/vercel/next.js/issues/77210)) - Update middleware request header ([#&#8203;77201](https://github.com/vercel/next.js/issues/77201)) - \[metadata] remove the default segement check for metadata rendering ([#&#8203;77119](https://github.com/vercel/next.js/issues/77119)) - \[ts-hint] fix vscode type hint plugin enabling ([#&#8203;77099](https://github.com/vercel/next.js/issues/77099)) - \[metadata] re-insert icons to head for streamed metadata ([#&#8203;76915](https://github.com/vercel/next.js/issues/76915)) ##### Credits Huge thanks to [@&#8203;ijjk](https://github.com/ijjk), [@&#8203;ztanner](https://github.com/ztanner), and [@&#8203;huozhi](https://github.com/huozhi) for helping! ### [`v15.2.2`](https://github.com/vercel/next.js/releases/tag/v15.2.2) [Compare Source](https://github.com/vercel/next.js/compare/v15.2.1...v15.2.2) ##### Core Changes - \[dev-overlay] fix styling on overflow error messages, add button hover state: [#&#8203;76771](https://github.com/vercel/next.js/issues/76771) - Fix: respond 405 status code on OPTIONS request to SSG page: [#&#8203;76767](https://github.com/vercel/next.js/issues/76767) - \[dev-overlay] Always show relative paths: [#&#8203;76742](https://github.com/vercel/next.js/issues/76742) - \[metadata] remove the duplicate metadata in the error boundary: [#&#8203;76791](https://github.com/vercel/next.js/issues/76791) - Upgrade React from `d55cc79b-20250228` to `443b7ff2-20250303`: [#&#8203;76804](https://github.com/vercel/next.js/issues/76804) - \[dev-overlay] Ignore animations on page load: [#&#8203;76834](https://github.com/vercel/next.js/issues/76834) - fix: remove useless set-cookie in action-handler: [#&#8203;76839](https://github.com/vercel/next.js/issues/76839) - Turbopack: handle task cancelation: [#&#8203;76831](https://github.com/vercel/next.js/issues/76831) - Upgrade React from `443b7ff2-20250303` to `e03ac20f-20250305`: [#&#8203;76842](https://github.com/vercel/next.js/issues/76842) - add types for `__next_app__` module loading functions: [#&#8203;74566](https://github.com/vercel/next.js/issues/74566) - fix duplicated noindex when server action is triggered: [#&#8203;76847](https://github.com/vercel/next.js/issues/76847) - fix: don't drop queued actions when navigating: [#&#8203;75362](https://github.com/vercel/next.js/issues/75362) - \[dev-overlay]: remove dependency on platform for focus trapping: [#&#8203;76849](https://github.com/vercel/next.js/issues/76849) - Turbopack: Add **turbopack_load_by_url**: [#&#8203;76814](https://github.com/vercel/next.js/issues/76814) - Add handling of origin in dev mode: [#&#8203;76880](https://github.com/vercel/next.js/issues/76880) - \[dev-overlay] Stop grouping callstack frames into ignored vs. not ignored: [#&#8203;76861](https://github.com/vercel/next.js/issues/76861) - Upgrade React from `e03ac20f-20250305` to `029e8bd6-20250306`: [#&#8203;76870](https://github.com/vercel/next.js/issues/76870) - \[dev-overlay] Increase padding if no `x` button present: [#&#8203;76898](https://github.com/vercel/next.js/issues/76898) - fix: prevent incorrect searchParams being applied on certain navs: [#&#8203;76914](https://github.com/vercel/next.js/issues/76914) - \[dev-overlay] Dim ignore-listed callstack frames when shown: [#&#8203;76862](https://github.com/vercel/next.js/issues/76862) ##### Example Changes - chore(cna): update tailwind styles to be closer to non-tw cna: [#&#8203;76647](https://github.com/vercel/next.js/issues/76647) ##### Misc Changes - Fix canary only warning for devlow-bench: [#&#8203;76772](https://github.com/vercel/next.js/issues/76772) - \[test] Add special placeholder if stackframes point into dist dir: [#&#8203;76741](https://github.com/vercel/next.js/issues/76741) - \[test] Use new Redbox matchers in pages/ service-side-dev-errors: [#&#8203;76779](https://github.com/vercel/next.js/issues/76779) - \[test] Use new Redbox matchers in app/ dynamic-error-trace: [#&#8203;76783](https://github.com/vercel/next.js/issues/76783) - \[test] Use new Redbox matchers in app/ owner-stack-invalid-element-type: [#&#8203;76786](https://github.com/vercel/next.js/issues/76786) - \[test] Use new Redbox matchers in app/ hook-functuon-names: [#&#8203;76785](https://github.com/vercel/next.js/issues/76785) - \[test] Use new Redbox matchers in app/ undefined-default-export: [#&#8203;76781](https://github.com/vercel/next.js/issues/76781) - \[test] Use new Redbox matchers in server-navigation-error: [#&#8203;76787](https://github.com/vercel/next.js/issues/76787) - \[test] Fix flaky error-recovery test: [#&#8203;76789](https://github.com/vercel/next.js/issues/76789) - \[test] Use new Redbox matchers in pages/ gssp-ssr-change-reloading: [#&#8203;76788](https://github.com/vercel/next.js/issues/76788) - \[docs] update Tailwind CSS installation and configuration instructions: [#&#8203;76259](https://github.com/vercel/next.js/issues/76259) - docs: Tailwind v4: [#&#8203;76801](https://github.com/vercel/next.js/issues/76801) - chore(docs): update minimumCacheTTL example to 31 days: [#&#8203;76796](https://github.com/vercel/next.js/issues/76796) - Turbopack: improve sectioned source maps: [#&#8203;76627](https://github.com/vercel/next.js/issues/76627) - \[test] Use new Redbox matchers in pages/ middleware-errors: [#&#8203;76797](https://github.com/vercel/next.js/issues/76797) - doc: use `redirect` in client components: [#&#8203;76332](https://github.com/vercel/next.js/issues/76332) - \[docs] document experimental viewTransition flag: [#&#8203;76832](https://github.com/vercel/next.js/issues/76832) - docs(errors): remove confusing good-to-know since global-errors.tsx also show in dev as of 15.2: [#&#8203;76825](https://github.com/vercel/next.js/issues/76825) - Turbopack: don't use HashMap in manifests: [#&#8203;76833](https://github.com/vercel/next.js/issues/76833) - Update `labeler.json`: [#&#8203;76828](https://github.com/vercel/next.js/issues/76828) - Fix missing turbo command for rust-check: [#&#8203;76851](https://github.com/vercel/next.js/issues/76851) - fix(turbopack): Use correct `SyntaxContext` for `__turbopack_esm__`: [#&#8203;73544](https://github.com/vercel/next.js/issues/73544) - Cleanup pure span handling: [#&#8203;76846](https://github.com/vercel/next.js/issues/76846) - Turbopack: remove unused IncludeModulesModule: [#&#8203;76868](https://github.com/vercel/next.js/issues/76868) - Update test snapshots for alternative bundler \[5/n]: [#&#8203;76617](https://github.com/vercel/next.js/issues/76617) - Update test snapshots for alternative bundler \[6/n]: [#&#8203;76768](https://github.com/vercel/next.js/issues/76768) - \[test] Use `next.browser` instead of `webdriver` in pages/ client-navigation: [#&#8203;76867](https://github.com/vercel/next.js/issues/76867) - fix(turbopack): Use vergen-git2 instead of shadow-rs for napi and next-api crates to fix stale git lock files: [#&#8203;76773](https://github.com/vercel/next.js/issues/76773) - Revert "fix(turbopack): Use vergen-git2 instead of shadow-rs for napi and next-api crates to fix stale git lock files": [#&#8203;76879](https://github.com/vercel/next.js/issues/76879) - build: Update `swc_core` to `v16.4.0`: [#&#8203;76596](https://github.com/vercel/next.js/issues/76596) - docs: update Turbopack docs: [#&#8203;76799](https://github.com/vercel/next.js/issues/76799) - build: Update lightningcss to `v1.0.0-alpha.64`: [#&#8203;76856](https://github.com/vercel/next.js/issues/76856) - build: Fix warning: [#&#8203;76890](https://github.com/vercel/next.js/issues/76890) - Turbopack: fix `__dirname`: [#&#8203;76902](https://github.com/vercel/next.js/issues/76902) - Turbopack: deterministic server action order: [#&#8203;76905](https://github.com/vercel/next.js/issues/76905) - docs: reword the docs of veiw transition flag: [#&#8203;76841](https://github.com/vercel/next.js/issues/76841) - fix(turbopack): Use vergen-gitcl instead of shadow-rs (or vergen-git2) for napi and next-api crates to fix stale git lock files: [#&#8203;76889](https://github.com/vercel/next.js/issues/76889) - Turbopack: ensure default layout is provided in default not-found entrypoint: [#&#8203;76912](https://github.com/vercel/next.js/issues/76912) - chore(github): add moar labels: [#&#8203;76922](https://github.com/vercel/next.js/issues/76922) - \[test] Use new Redbox matchers in pages/ client-navigation/rendering: [#&#8203;76798](https://github.com/vercel/next.js/issues/76798) - docs: fix create-next-app cli title: [#&#8203;76908](https://github.com/vercel/next.js/issues/76908) ##### Credits Huge thanks to [@&#8203;pranathip](https://github.com/pranathip), [@&#8203;gaojude](https://github.com/gaojude), [@&#8203;ijjk](https://github.com/ijjk), [@&#8203;eps1lon](https://github.com/eps1lon), [@&#8203;Nayeem-XTREME](https://github.com/Nayeem-XTREME), [@&#8203;leerob](https://github.com/leerob), [@&#8203;styfle](https://github.com/styfle), [@&#8203;samcx](https://github.com/samcx), [@&#8203;sokra](https://github.com/sokra), [@&#8203;huozhi](https://github.com/huozhi), [@&#8203;raunofreiberg](https://github.com/raunofreiberg), [@&#8203;mischnic](https://github.com/mischnic), [@&#8203;lubieowoce](https://github.com/lubieowoce), [@&#8203;unstubbable](https://github.com/unstubbable), [@&#8203;ztanner](https://github.com/ztanner), [@&#8203;kdy1](https://github.com/kdy1), [@&#8203;timneutkens](https://github.com/timneutkens), [@&#8203;wbinnssmith](https://github.com/wbinnssmith), [@&#8203;bgw](https://github.com/bgw), and [@&#8203;oscr](https://github.com/oscr) for helping! </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about these updates again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yMTYuMSIsInVwZGF0ZWRJblZlciI6IjM5LjI2NC4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
kjuulh added 1 commit 2025-03-26 01:32:29 +01:00
kjuulh changed title from fix(deps): update nextjs monorepo to v15.2.4 to fix(deps): update nextjs monorepo to v15.2.5 2025-04-09 02:48:31 +02:00
kjuulh force-pushed renovate/nextjs-monorepo from 66d83187a0 to e08fb81d4e 2025-04-09 02:48:33 +02:00 Compare
kjuulh changed title from fix(deps): update nextjs monorepo to v15.2.5 to fix(deps): update nextjs monorepo to v15.3.0 2025-04-10 02:50:17 +02:00
kjuulh force-pushed renovate/nextjs-monorepo from e08fb81d4e to 6ba3d7b33f 2025-04-10 02:50:17 +02:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 6ba3d7b33f to 2563174382 2025-04-18 02:48:22 +02:00 Compare
kjuulh changed title from fix(deps): update nextjs monorepo to v15.3.0 to fix(deps): update nextjs monorepo to v15.3.1 2025-04-18 02:48:23 +02:00
kjuulh force-pushed renovate/nextjs-monorepo from 2563174382 to 863ad81a16 2025-05-07 02:51:19 +02:00 Compare
kjuulh changed title from fix(deps): update nextjs monorepo to v15.3.1 to fix(deps): update nextjs monorepo to v15.3.2 2025-05-07 02:51:19 +02:00
kjuulh force-pushed renovate/nextjs-monorepo from 863ad81a16 to f2ab9f7d8d 2025-05-30 02:51:01 +02:00 Compare
kjuulh changed title from fix(deps): update nextjs monorepo to v15.3.2 to fix(deps): update nextjs monorepo to v15.3.3 2025-05-30 02:51:01 +02:00
kjuulh changed title from fix(deps): update nextjs monorepo to v15.3.3 to fix(deps): update nextjs monorepo to v15.3.4 2025-06-19 02:49:33 +02:00
kjuulh force-pushed renovate/nextjs-monorepo from f2ab9f7d8d to 3918f6a71b 2025-06-19 02:49:34 +02:00 Compare
kjuulh changed title from fix(deps): update nextjs monorepo to v15.3.4 to fix(deps): update nextjs monorepo to v15.3.5 2025-07-04 02:50:35 +02:00
kjuulh force-pushed renovate/nextjs-monorepo from 3918f6a71b to e4ea7677ed 2025-07-04 02:50:36 +02:00 Compare
kjuulh changed title from fix(deps): update nextjs monorepo to v15.3.5 to fix(deps): update nextjs monorepo to v15.4.1 2025-07-15 02:50:57 +02:00
kjuulh force-pushed renovate/nextjs-monorepo from e4ea7677ed to 5937619a00 2025-07-15 02:50:57 +02:00 Compare
kjuulh changed title from fix(deps): update nextjs monorepo to v15.4.1 to fix(deps): update nextjs monorepo to v15.4.2 2025-07-19 02:57:49 +02:00
kjuulh force-pushed renovate/nextjs-monorepo from 5937619a00 to fef2e45910 2025-07-19 02:57:49 +02:00 Compare
This pull request can be merged automatically.
You are not authorized to merge this pull request.

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin renovate/nextjs-monorepo:renovate/nextjs-monorepo
git checkout renovate/nextjs-monorepo
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: kjuulh/todo#460
No description provided.