Update dependency next to v16 #94

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

This PR contains the following updates:

Package Type Update Change
next (source) dependencies major 13.4.2 -> 16.0.7

⚠️ Warning

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


Release Notes

vercel/next.js (next)

v16.0.7

Compare Source

Please see CVE-2025-66478 for additional details about this release.

v16.0.6

Compare Source

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

Core Changes
  • bump the browserslist version to silence a warning in CI (#​86625)
Credits

Huge thanks to @​lukesandberg for helping!

v16.0.5

Compare Source

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

Core Changes
  • fix(nodejs-middleware): await for body cloning to be properly finalized (#​85418)
Credits

Huge thanks to @​lucasadrianof for helping!

v16.0.4

Compare Source

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

Core Changes
  • fix: Rename proxy.js to middleware.js in NFT file (#​86214)
  • fix: prevent fetch abort errors propagating to user error boundaries (#​86277)
  • Turbopack: fix passing project options from napi (#​86256)
Credits

Huge thanks to @​devjiwonchoi, @​sokra and @​ztanner for helping!

v16.0.3

Compare Source

Core Changes
  • fix: Rspack throw error when using ForceCompleteRuntimePlugin: #​85221
  • fix: build CLI output not displaying Proxy (Middleware) when nodejs runtime: #​85403
  • fix: staleTimes.static should consistently enforce a 30s minimum: #​85479
  • [turbopack] fix build of empty entries of pages: #​84873
  • Cache the head separately from the route tree: #​84724
  • Allow inspecting dev server on default port with next dev --inspect: #​85037
  • Avoid proxying React modules through workUnitStore: #​85486
  • fix: redirect should always return updated router state: #​85533
  • Upgrade React from b4455a6e-20251027 to 4f931700-20251029: #​85518
  • [turbopack] Move generation of cacheLife types out of the webpack plugin and into the dev bundler directly: #​85539
  • Ensure user-space stack frame for 'use cache' in page/layout component: #​85519
  • Update parallel routes in build-complete: #​85546
  • fully remove clientSegmentCache flag: #​85541
  • [turbopack] Support relative paths in turbopack source maps.: #​85146
  • Release unnecessary memory on hydration finish: #​84967
  • Preserve interception markers in parameter types: #​85526
  • move segment cache entries to top level segment-cache dir: #​85542
  • Upgrade React from 4f931700-20251029 to 561ee24d-20251101: #​85670
  • [devtools] Remove title from preferences: #​85698
  • Update font data: #​85708
  • Don't invalidate hot reloader excessively during dev server boot: #​85732
  • [codemod] fix: next-lint-to-eslint-cli did not handle 'next' plugin: #​85749
  • Upgrade React from 561ee24d-20251101 to 67f7d47a-20251103: #​85762
  • Tracing: Fix memory leak in span map: #​85529
  • Fix documentation typo in refresh function: #​85696
  • fix: eslint-config-next types was exporting to dist/src: #​85768
  • Upgrade React from 67f7d47a-20251103 to f646e8ff-20251104: #​85772
  • remove unused RSC payload property: #​85746
  • [runtime prefetching]: fix runtime prefetching when deployed: #​85595
  • Turbopack: next build --analyze: #​85197
  • Build: Log amount of workers during static generation: #​85706
  • Upgrade React from f646e8ff-20251104 to dd048c3b-20251105: #​85819
  • Sync devFallbackParams when generateStaticParams change: #​85741
  • chore: upgrade rspack 1.6.0: #​84210
  • [mcp] get_routes mcp tool: #​85773
  • Split each path param into a separate cache key : #​85758
  • [turbopack] change server source maps in production to use relative paths: #​85576
  • fix: skip collecting metadata for app-error in webpack: #​85892
  • fix: support root span attributes with a custom server: #​85521
  • fix isDynamicRSC condition when deployed: #​85919
  • [turbopack] Make it possible to synchronously access native bindings: #​85787
  • Upgrade React from dd048c3b-20251105 to fa50caf5-20251107: #​85906
  • Fix telemetry event loss on build failures and server shutdown: #​85867
  • Remove one stack frame from 'use cache' call stacks: #​85966
  • Upgrade React from fa50caf5-20251107 to 52684925-20251110: #​85980
  • Deployment adapter: fix metadata for "/" route: #​85820
  • Enable React's default Transition indicator behind a flag: #​86000
  • update routes-manifest to include whether app has pages routes: #​86051
Misc Changes
  • chore: Add opt-level = s for not frequently used crates: #​85426
  • [test] Deflake cache-components-allow-otel-spans: #​85466
  • [test] Move remaining experimental.cacheLife: #​85467
  • Turbopack: chore: Remove mopa dependency in turbo-tasks (2nd attempt): #​85286
  • Update Proxy docs: #​85439
  • [CNA] Do not prompt for Turbopack: #​85404
  • Clean up new release process: #​85458
  • Update E2E tests workflow: #​85485
  • Update E2E deploy tests manifest: #​85483
  • docs: example are incorrect async function exports only: #​85453
  • [test] Handle CLI assertions where no "Compiling..." log is present: #​85499
  • [test] Speed up refresh test: #​85505
  • [test] Add test cases for dynamic caches without suspense boundaries: #​85500
  • docs: Routes are wrapped w/ Activity in Cache Components: #​85309
  • docs: GET handler behavior under cache components: #​85389
  • [test] Avoid needless start/stop from using createSandbox: #​85507
  • [test] Use --debug-build-paths instead of NEXT_PRIVATE_APP_PATHS: #​85504
  • docs: revalidateTag requires second argument: #​85284
  • Refactor GTM implementation to support google tag gateway: #​81011
  • Update Rspack production test manifest: #​85494
  • Update Rspack development test manifest: #​85495
  • [docs] Fix a typo: #​85492
  • [test] Regenerate tsconfig.json files: #​85515
  • [Turbopack] clean up completion.rs a bit: #​84863
  • [test] Remove maxRetries and hardError parameters: #​85536
  • Turbopack: remove the .into() alias to .cell(): #​85516
  • [test] Consolidate identical snapshots across different bundlers: #​85532
  • [turbopack] Change where cells are created in resolve_raw to make cell allocation order deterministic.: #​85525
  • Turbopack: Make tasks deterministic: #​85524
  • [test] Separate act and assertions: #​85508
  • [test] assert* -> waitFor* when the util is not instant: #​85450
  • Turbopack: move whole_app_module_graphs to top level: #​84897
  • [test] Bail on sending requests to Next.js instance if it's no longer available: #​85557
  • [test] Deflake tests comparing two random numbers: #​85571
  • [test] Disallow custom RegExp-like implementations in check: #​85537
  • [test] Deflake prerender suite: #​85563
  • Turbopack: chore: Remove some dead MagicAny serialization code from turbo_tasks::value: #​85577
  • [test]: fix broken scroll restoration test: #​85599
  • [test] Deflake nested after() tests: #​85566
  • [test] Stop installing unused dependencies: #​85569
  • [test] Consider test/integration/ in flake detection tests: #​85590
  • Turbopack: more checks on verify_serialization: #​84952
  • Turbopack: add track_caller to improve panics: #​85565
  • Turbopack: add verify_determinism feature to check if tasks are deterministic: #​85559
  • docs: cache life rework: #​85224
  • Turbopack: fix hanging dev server and builds with fs cache: #​85606
  • Turbopack: Fix compound assignment expression evaluation (#​85478): #​85593
  • Turbopack: fix Scope holding Arc too long: #​85611
  • [ci] Improve change detection logic in run-for-change script: #​85619
  • [test] Ignore in deploy tests if a child process isn't available: #​85636
  • Turbopack: add size_hint and len for Chunk iterator: #​85622
  • [test]: move resume-data-cache to e2e test: #​85647
  • Update Rspack development test manifest: #​85662
  • Update Rspack production test manifest: #​85661
  • Update Rspack production test manifest: #​85688
  • Update Rspack development test manifest: #​85689
  • [test] Deflake root-optional-revalidate: #​85584
  • docs: fix generateImageMetadata example to use normal params object: #​85658
  • Turbopack: Upgrade image crate: #​85084
  • docs: update multi sitemap argumenmt type: #​85701
  • [test] Move all files to .ts (6/6): #​85641
  • Turbopack: add a batch add method to the storage: #​84270
  • docs: recommend reverse-proxy when self-hosting: #​85650
  • [test] Deflake prefetching.stale-times: #​85733
  • [test] Deflake custom cache handler test: #​85610
  • [test] Allow CLI integration test to be retryable: #​85586
  • docs: update docs to mention ESLint as default: #​85740
  • docs(next.config): this docs should remove ".mts" is not supported.: #​85716
  • Turbopack: cleanup StyleSheetLike: #​85718
  • Turbopack: disable tree shaking for tracing: #​85722
  • [test] Move all files to .ts (3/6): #​85638
  • [test] Move all files to .ts (2/6): #​85637
  • [test] Move all files to .ts (1/6): #​85634
  • docs: generateSitemap passes id as promise: #​85767
  • [test] Move all files to .ts (4/6): #​85639
  • docs: disclosure on path-to-regexp: #​85629
  • chore: update rspack binding to 1.6.0: #​85717
  • Turbopack: trace worker_threads worker entry: #​85734
  • Update Rspack development test manifest: #​85761
  • Turbopack: chore: Remove extern crate and macro_use syntax: #​85778
  • [turbopack] Drop duration and allocation tracking from CaptureFuture: #​85534
  • Turbopack: chore: Remove dead RouteMatcher stuff: #​85784
  • docs: fresh up getting started 00: #​85736
  • Turbopack: chore: Remove the serde_regex dependency, which wasn't very heavily used: #​85578
  • Turbopack: use batch add in connect children: #​85623
  • [test] Move all files to .ts (5/6): #​85640
  • [test] Deflake legacy-link-behavior: #​85805
  • Resolve request ID confusion: #​85809
  • Turbopack: use batch add to add initial followers: #​85624
  • Turbopack: chore: Remove dead experimental.ppr struct field: #​85792
  • Turbopack: chore: Avoid string clones in Glob::parse by using RcStr: #​85579
  • Update Rspack production test manifest: #​85795
  • docs: getting started updates 01: #​85750
  • chore: Update patricia_tree dependency, remove manual serde impls: #​85785
  • docs: keywords in system reqs and add browserslist: #​85838
  • Honour NEXT_TEST_PREFER_OFFLINE in install-native.mjs: #​85850
  • Turbopack: chore: Update anyhow, remove old backtrace feature: #​85844
  • Turbopack: Remove some dead (or useless) code from next-core/src/next_client_reference/visit_client_reference.rs: #​85843
  • sort dependencies for smaller diffs: #​82291
  • Update Rspack development test manifest: #​85846
  • Turbopack: Remove non_operation_vc_strongly_consistent feature usage from next-api: #​85874
  • Turbopack: remove the streaming hack for improved stability: #​85858
  • test: Port clean-distdir integration test to the modern e2e test framework: #​85828
  • Update font data: #​85920
  • Update deploy manifest: #​85924
  • Turbopack: chore: Merge turbo-tasks-macros-shared crate into turbo-tasks-macros: #​85917
  • Turbopack: Fix IO concurrency for MacOS: #​85861
  • Add Appwrite Sites to supported adapters: #​85830
  • [turbopack] Remove LocalTaskType::Native, it is dead: #​85480
  • [test] Increase response timeout in next.browserWithResponse(): #​85911
  • Hoist inner 'use cache' functions to reduce function allocations: #​85904
  • docs: eslint config update: #​85969
  • Fix Turbopack local font font-family declaration: #​85913
  • switch to slice in createRuntimePrefetchTransformStream: #​85822
  • Update authentication.mdx: Fix Auth0 Link: #​85953
  • Turbopack: remove unused function: #​85974
  • docs: cacheHandlers: #​85311
  • docs: Feedback item on proxy default: #​86004
  • [test] Add missing test fixtures for cacheLife & cacheTag in client: #​85872
  • Fix false-positive build error for cacheLife & cacheTag: #​85875
  • [cna] For pnpm ignore postinstall from sharp and unrs-resolver: #​83168
  • Turbopack: refactor evaluate to take module_graph: #​85971
  • Turbopack: remove duplicate traversal implementations: #​85853
  • Omit unused encryptActionBoundArgs/decryptActionBoundArgs imports: #​86015
  • Turbopack: cleanup db log and add verbose option: #​85965
  • [ci]: fix retry_deploy_test workflow: #​85981
  • Fix typo in documentation: #​86054
Credits

Huge thanks to @​kdy1, @​eps1lon, @​SyMind, @​bgw, @​swarnava, @​devjiwonchoi, @​ztanner, @​ijjk, @​huozhi, @​icyJoseph, @​acdlite, @​unstubbable, @​gnoff, @​gusfune, @​vercel-release-bot, @​lukesandberg, @​sokra, @​hayes, @​shuding, @​wyattjoh, @​marjan-ahmed, @​timneutkens, @​ajstrongdev, @​zigang93, @​mischnic, @​Nayeem-XTREME, @​hamirmahal, @​eli0shin, @​tessamero, @​gaojude, @​jamesdaniels, @​georgesfarah, and @​timeyoutakeit for helping!

v16.0.2

Compare Source

[!NOTE]
This version includes no code or feature changes. To get the latest change, please look for the next patch release v16.0.3 or next@latest

v16.0.1

Compare Source

Core Changes
  • fix(static-paths): add depth tracking to parallel route param resolution: #​85319
  • Fix types of @​next/mdx: #​82238
  • Ensure getServerInsertedHTML skips rendering correctly: #​85394
  • Fix duplicate .next/types include on Windows: #​85400
  • Exclude next-js condition from middleware, proxy, and instrumentation: #​85321
  • remove unstable_forceStale prefetch option & restore prefetch={true} functionality: #​85411
  • Upgrade React from 2bcbf254-20251020 to 6160773f-20251023: #​85277
  • fix(next/image): swap dependencies: #​85419
  • Handle Origin: null headers: #​85402
  • Generalize Segment Cache fallback implementation: #​84652
  • fix: ensure req.query is writable: #​81573
  • fix: Proxy not picked up on Windows: #​85443
  • [test] Ensure we can toggle the DevTools menu while status indicators are active: #​85456
  • Fix crash when suspending in Components using useActionQueue: #​85459
Misc Changes
  • docs: create-next-app react-compiler and new prompts: #​85213
  • docs: cache components - introduction: #​85196
  • docs: use cache feedback: #​85169
  • docs: stabilize apis in docs: #​85219
  • docs: revalidateTag immediate expiration in Route Handlers: #​85223
  • Docs/use cache feedback 2: #​85222
  • docs: added use cache: remote docs: #​85145
  • docs: proxy runtime defaults to nodejs: #​85204
  • chore: cache components feedback: #​85241
  • docs: add a note that cache components is opt-in near the top: #​85245
  • Docs/v16 feedback: #​85259
  • Update command to install babel-plugin-react-compiler as a devDependency: #​85235
  • docs: typegen next-env.d.ts feedback: #​85273
  • docs: link to MCP guide from upgrade: #​85308
  • docs: regexp removed from middleware config: #​85343
  • docs: simplify MCP guide to focus on next-devtools-mcp: #​85353
  • docs: fix proxy matcher overflow: #​85337
  • docs: point out diff in serialization types for arguments and return values: #​85338
  • [test] Update snapshots: #​85407
  • docs: Fix typo in SEO section of loading.mdx: #​85301
  • Fix typo in Fast Refresh documentation: #​85352
  • Fix grammatical errors in updating data documentation: #​85067
  • [test] Skip devlow benchmarks on PRs: #​85408
  • [test] Unflake typed-env suite: #​85410
  • Update rust toolchain to 2025-10-27: #​85409
  • [test] Speed up prefetching suite: #​85417
  • docs: remove inaccuracies from use cache: private: #​85425
  • [test] Exclude Next.js internal stack frames from cache-component-error CLI output assertions: #​85421
  • [test] Exclude likely Next.js internal Components from component stacks in Redbox assertions: #​85420
  • Turbopack: correctly trace files with npm: #​85323
Credits

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

v16.0.0

Compare Source

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

Core Changes
  • Development: Don't import app-router / hot-reloader through next/link in application code: #​83656
  • Remove clientParamParsing requirement from RDC for Navigations: #​83661
  • Upgrade React from 6b70072c-20250909 to 886b3d36-20250910: #​83650
  • Turbopack: Use readFileSync / writeFileSync for manifest writing: #​83694
  • Upgrade React from 886b3d36-20250910 to f3a80361-20250911: #​83696
  • Don't create client-side debug channel if the feature is disabled: #​83699
  • fix: dev should produce the correct default fallback regex to match builds/Turbopack: #​83701
  • [devtool] fix overlay styles are missing: #​83721
  • Revert "Remove clientParamParsing requirement from RDC for Navigations": #​83725
  • Only enable unhandledRejection filtering when opted in: #​83726
  • Fix index data route for adapter build-complete: #​83730
  • Remove leading underscore for unhandledRejection envvar: #​83732
  • Upgrade React from f3a80361-20250911 to 93d7aa69-20250912: #​83729
  • Upgrade React from 93d7aa69-20250912 to 8a8e9a7e-20250912: #​83742
  • Fix reentrancy of unhandledRejection filtering: #​83741
  • Fix type for unhandled rejection handler process.removeListener: #​83748
  • [OTel] fix: Root span name should not include high cardinality URL: #​75416
  • Turbopack: Remove matchers.reload() call on each request: #​83720
  • [Breaking] Flat config as default in @next/eslint-plugin-next: #​83763
  • fix: Rspack splitChunks.chunks regex: #​83670
  • Revert "Turbopack: Remove matchers.reload() call on each request": #​83819
  • fix: unstable_cache should perform blocking revalidation during ISR revalidation: #​83820
  • fix(Rspack): resolve HMR unresponsiveness or unexpected full reload & update dev snapshot: #​83480
  • Allow next.config.mts for Node.js native TS resolver: #​83556
  • chore: Ensure Import Trace starts in a newline: #​83638
  • Development: Remove matchers.reload() on each request: #​83829
  • Upgrade React from 8a8e9a7e-20250912 to 5e0c951b-20250916: #​83850
  • Bump typescript 5.9.2: #​83833
  • Allow headers, rewrites and redirects to be defined as sync functions: #​83743
  • Turbopack: Optimize addedRoutes and removedRoutes calculation: #​83840
  • [next-config-ts] Set Node.js native TS loader fallback flag to process.env: #​83832
  • Development: Clarify TypescriptStatus in watcher: #​83857
  • Upgrade sharp dependency to version ^0.34.4: #​83892
  • Upgrade React from 5e0c951b-20250916 to 128abcfa-20250917: #​83906
  • Add native ts resolver docs link to transpile-config: #​83914
  • OTel: use srcPage for templates when next.route is unavailable: #​83911
  • Remove inline CSS sourcemaps from next-devtools: #​83917
  • Development: Move all TypeScript related work in watcher together: #​83912
  • [Cache Components] Allow sync IO inside console methods : #​83843
  • Upgrade React from 128abcfa-20250917 to 84af9085-20250917: #​83959
  • Build: Add .next/trace-build with high level trace: #​83949
  • Remove force writing **/*.mts to tsconfig: #​83967
  • feat: Isolate dev build from prod: #​83961
  • Remove JS size reporting from next build: #​83815
  • Docs/workspace setup: #​83490
  • Turbopack: support import ... with {type: "bytes"}: #​83896
  • fix: error overlay not closing when backdrop clicked: #​83981
  • Upgrade React from 84af9085-20250917 to d415fd3e-20250919: #​84003
  • fix: worker logs should still support color: #​84024
  • Update font data: #​84005
  • Allow passing port to next internal trace: #​83907
  • Turbopack: error when importing Typescript in node_modules: #​83990
  • Turbopack: Deterministic builds (prerender-manifest, .next/package.json, ./next/postcss.js): #​84081
  • Turbopack: Fix babel-loader (allowing built-in or manual configuration): #​82676
  • [Cache Components] allow using headers() in runtime prefetches: #​83838
  • [Breaking] Remove deprecated publicRuntimeConfig and serverRuntimeConfig: #​83944
  • Turbopack: mode to disable tracing: #​83683
  • babel-loader: Fix a few issues with config caching: #​83973
  • Turbopack: Merge babel-loader and react-compiler configuration logic to avoid running babel twice: #​83502
  • [breaking]: enable router scroll optimization by default: #​84102
  • Fix layout for ssgPageRoutes in the file tree: #​84104
  • Turbopack: Remove useless 'default' built-in webpack loader condition: #​84111
  • Fix: Client should auto reload after server restarts: #​83971
  • trace-build: Add missing spans: #​84080
  • Development: Remove TypeScript from the hot path during bootup: #​84090
  • Guide users to experimental.cacheComponents config: #​84121
  • Development: Only load webpack when used: #​84123
  • Turbopack: Skip loading webpack plugin: #​84125
  • Development: Only load createEnvDefinitions when used: #​83935
  • BREAKING CHANGE!: bump default images.minimumCacheTTL from 1 min to 4 hours: #​84105
  • Feat: Add Model Context Protocol (MCP) server to Next.js dev server: #​84100
  • Upgrade React from d415fd3e-20250919 to 1eca9a27-20250922: #​84093
  • Turbopack: Remove the deprecated .turbo config object: #​84109
  • Flag excess properties in Next.js config with TypeScript: #​84069
  • docs: update Security section to direct disclosures : #​84156
  • ci: Enable experimental.isolatedDevBuild for test-experimental-dev: #​84099
  • [turbopack] Ensure React Compiler options are based dev vs prod: #​84062
  • Enable anonymous function naming in React Compiler: #​84070
  • Revert "[Breaking] Remove deprecated publicRuntimeConfig and serverRuntimeConfig (#​83944)": #​84167
  • Fix double comma in build manifest: #​84131
  • [turbopack] set app dir only to true when no pages entries detected: #​84144
  • Split code-frame into separate compiled package: #​84174
  • refactor: separate forward browser logs utils: #​84151
  • Upgrade React from 1eca9a27-20250922 to e2332183-20250924: #​84189
  • [Cache Components] default to filtering unhandledRejection after abort: #​84192
  • fix: prevent URL mutation in router rewrites: #​83963
  • fix(server): fix pages router resume router matching: #​84158
  • Feat: get_errors MCP endpoint: #​84161
  • Add internal environment variable for enabling React Compiler: #​84176
  • [devtools] Disable React's default Transition indicator: #​84202
  • Upgrade React from e2332183-20250924 to b0c1dc01-20250925: #​84248
  • Feat: get_page_metadata MCP endpoint: #​84211
  • feat: capture logs into logging file during development: #​84183
  • babel-loader: Avoid calling expensive isReactCompilerRequired check when we must run Babel anyways: #​84103
  • [mcp] expose logging: #​84226
  • Move config.turbopack.moduleIds to config.experimental.turbopackModuleIds: #​84230
  • Show invalid default export errors during prerendering: #​84242
  • fix: make sure caller exists in babel preset: #​84154
  • [mcp] allow to enable mcp server through env var: #​84278
  • fix(metadata): make formatDetection respect true/false properly: #​83924
  • Upgrade React from b0c1dc01-20250925 to df38ac9a-20250926: #​84276
  • Add a --webpack flag and default --turbopack to true: #​84216
  • fix: Update URL resolution logic to handle search parameters on root path /?foo=bar: #​78262
  • [Breaking] Remove deprecated sync access to Dynamic APIs: #​84179
  • Move config.turbopack.moduleIds to config.experimental.turbopackModuleIds: #​84230
  • Show invalid default export errors during prerendering: #​84242
  • fix: make sure caller exists in babel preset: #​84154
  • [mcp] allow to enable mcp server through env var: #​84278
  • fix(metadata): make formatDetection respect true/false properly: #​83924
  • Upgrade React from b0c1dc01-20250925 to df38ac9a-20250926: #​84276
  • Add a --webpack flag and default --turbopack to true: #​84216
  • fix: Update URL resolution logic to handle search parameters on root path /?foo=bar: #​78262
  • [Breaking] Remove deprecated sync access to Dynamic APIs: #​84179
  • Turbopack: only write merged manifests when they have been changed: #​84261
  • Turbopack: add separate turbopackPersistentCachingForBuild/ForDev flags: #​84215
  • Revert "Add a --webpack flag and default --turbopack to true (#​84216)": #​84348
  • Upgrade React from df38ac9a-20250926 to d15d7fd7-20250929: #​84347
  • Mark React Compiler integration as stable: #​84220
  • [cna] Add reactCompiler option: #​82251
  • Turbopack: remove canary version check for turbopackPersistentCachingForDev: #​84277
  • [turbopack] Add support for debug_ids: #​84319
  • Revert "Revert "Add a --webpack flag and default --turbopack to true (#​84216)"": #​84351
  • [Breaking] Remove AMP codemod: #​84356
  • [Breaking] Remove deprecated built-in AMP: #​84312
  • auto-enable clientParamParsing and clientSegmentCache w/ cacheComponents: #​84250
  • [mcp] get server action tool: #​84382
  • Revert "Revert "Revert "Add a --webpack flag and default --turbopack to true (#​84216)""": #​84389
  • Update otel test assertions and pages span_name: #​84393
  • [Breaking] Bump minimum TypeScript version to 5.1.0: #​84384
  • Upgrade React from d15d7fd7-20250929 to ef889445-20250930: #​84383
  • [Breaking] Remove deprecated unstable_rootParams: #​84373
  • [metadata] remove falsy dynamicParams approach: #​84405
  • fix: next rspack binding NextExternalsPlugin: #​84303
  • Development: Skip route matching when there is an existing match: #​84227
  • Revert "auto-enable clientParamParsing and clientSegmentCache w/ cacheComponents": #​84419
  • Upgrade React from ef889445-20250930 to 548235db-20251001: #​84416
  • [Breaking] Update default browserslist config: #​84401
  • Upgrade React from 548235db-20251001 to 1bd1f01f-20251001: #​84417
  • Allow metadataBase to be a string URL in addition to URL instance: #​84297
  • Upgrade React from 1bd1f01f-20251001 to 86181134-20251001: #​84427
  • [mcp] logging file should be reset for each session: #​84425
  • Revert "Revert "Revert "Revert "Add a --webpack flag and default --turbopack to true (#​84216)"""": #​84394
  • Optimize isMetadataRoute function: #​84409
  • [ci]: split clientSegmentCache test runners off from experimental: #​84440
  • [Cache Components] Fix caching in generateMetadata/generateViewport: #​84228
  • Upgrade React from 86181134-20251001 to a757cb76-20251002: #​84463
  • [segment cache]: fix trailingSlash handling with output: export: #​84465
  • perf: Use a more aggressive retry loop for recursiveDelete: #​84444
  • [Cache Components] Dim logs after prerender aborts: #​84153
  • telemetry track mcp server usage: #​84471
  • simplify the way we check for turbopack config to ensure we support an empty turbopack object: #​84494
  • perf: Use synchronous IO when cleaning distDir in next dev and next build: #​84472
  • Make turbopack the default bundler for custom servers: #​84281
  • [segment cache]: fix interception route handling: #​84497
  • Upgrade React from a757cb76-20251002 to 85c427d8-20251003: #​84496
  • [segment cache]: collectSegmentData should respect experimental.staleTime config: #​84520
  • Fix potential race condition with request ID in dev mode: #​84532
  • [test] Enable reactDebugChannel for experimental test shards: #​84533
  • Simplify Metadata components: #​84527
  • Implement the updated prerender API shape: #​84254
  • Upgrade React from 85c427d8-20251003 to 4fdf7cf2-20251003: #​84499
  • Upgrade React from 4fdf7cf2-20251003 to c7862584-20251006: #​84573
  • fix(Turbopack): Add better error messaging for when we can't determine Next.js root: #​83918
  • Allow silencing unhandled rejection filter warnings and improve debugging: #​84572
  • [MCP] Fix: Do not dedup by URL for MCP get_page_metadata: #​84564
  • Guard createDebugChannel import by feature flag: #​84604
  • Build: Add time to logline of every step: #​84602
  • Upgrade React from c7862584-20251006 to a4eb2dfa-20251006: #​84589
  • [Cache Components] Schedule work on timeouts: #​84344
  • [dev] Define request ID for RSC requests on the client: #​84605
  • fix(cache-tags): add /index to implicit tags and adjust revalidatePath(): #​84586
  • Build: Highlight TypeScript and ESLint being run clearer: #​84606
  • [Breaking] Bump sass-loader to v16: #​84387
  • Update cases for build complete with adapters: #​84361
  • Turbopack: delete .next folder before throwing due to "pages/app directory must be in the same folder": #​84553
  • [mcp] change get-project-path to get-project-metadata: #​84619
  • feat(next/image)!: deprecate and warn on images.domains config: #​84625
  • feat(next/legacy/image)!: deprecate and warn on next/legacy/image usage: #​84622
  • Turbopack: improve errors/warnings for turbopack messages: #​84552
  • Turbopack: rename turbopackPersistentCachingForXXX to turbopackFileSystemCacheForXXX: #​84632
  • [Segment Cache] Add refresh URL to reused default segments: #​84627
  • [Segment Cache] Fix tests related to optimistic loading state reuse: #​84498
  • Upgrade React from a4eb2dfa-20251006 to 3025aa39-20251007: #​84613
  • [breaking]: enable clientSegmentCache by default: #​84643
  • feat: Acquire a lockfile on distDir in next dev and next build: #​84428
  • Add deprecation warning to Runtime config: #​84168
  • [middleware]: add upper bound to cloneBodyStream: #​84539
  • Remove automatic linting from build: #​83136
  • Re-enable legacyBehavior and passHref on Link: #​84500
  • [cna] Use stable React Compiler: #​84660
  • Add codemod for middleware to proxy: #​84127
  • Fix dynamic catchall parameter interpolation in parallel routes: #​84279
  • feat(breaking): Hard Deprecate PPR Configuration: #​84280
  • Deprecate middleware and recommend proxy: #​84119
  • Put native TS resolver for next config under --experimental-next-config-strip-types flag: #​84675
  • Fix interception route rewrites for nested dynamic routes: #​84413
  • fix: strip NEXTSEP from interpolated pathnames: #​84430
  • chore: Remove useless symlink resolution logic in recursive-delete.js: #​84582
  • breaking(next/image)!: remove 16px from default images.imageSizes config: #​84647
  • add Statsig Node Core package to Server External Packages: #​84157
  • Remove bailed out SSG routes from the list of SSG: #​83861
  • Revert "[Breaking] Skip Next.js internal routes /_next in middleware": #​84697
  • Bump eslint-plugin-react-hooks to v7: #​84669
  • Add refresh API to next/cache: #​84666
  • [Breaking] Require images.localPatterns for query in Image src: #​84406
  • [Breaking] feat(next/image)!: add support for images.dangerouslyAllowLocalIP and images.maximumRedirects: #​84676
  • Add new updateTag API and new signature for revalidateTag: #​83822
  • Add validation for missing default.js in parallel routes: #​84702
  • misc: allow beta to be triggered: #​84713
  • Fix tags check for expired/stale: #​84717
  • tweak middlewareClientMaxBodySize handling: #​84712
  • docs: Add more details to useLightningcss docs: #​84581
  • Version gate migration docs link: #​84740
  • [Cache Components] Allow hiding logs after abort: #​84579
  • Log Compiled proxy in ...: #​84746
  • Upgrade React from 3025aa39-20251007 to 9724e3e6-20251008: #​84642
  • Remove unused eslint-disable directives: #​84797
  • Use ESLint Flat Config: #​84800
  • fix missing flight-router-state-tree header normalization: #​84718
  • Write .next/dev/types/**/*.d.ts to default tsconfig: #​84747
  • Upgrade React from 9724e3e6-20251008 to ead92181-20251010: #​84793
  • [mcp] capture next config schema errors: #​84832
  • feat: using @​next/rspack-core: #​84221
  • Upgrade React from ead92181-20251010 to d7215b49-20251013: #​84850
  • Turbopack build: Switch to using workerthreads for process: #​84818
  • [Cache Components] Dev - restart render on cache miss: #​84088
  • Update font data: #​84785
  • Fix build compile mode if pages dir does not exist in Next.js 16: #​84783
  • improve next config schema validation errors: #​84847
  • Upgrade React from d7215b49-20251013 to 56e84692-20251014: #​84860
  • warnOnce for Middleware deprecation: #​84862
  • Add codemod for Middleware API to Proxy API: #​84824
  • Deprecate Middleware API and add Proxy API: #​84764
  • remove clientParamParsing configuration & bundle it with cacheComponents: #​84763
  • remove dynamicIO flag: #​84872
  • Bump eslint-plugin-react to 7.37.0: #​84876
  • Add nextjs condition when cacheComponents is enabled: #​84843
  • remove rdcForNavigations configuration & bundle with cacheComponents: #​84870
  • Convert eslint-config-next project to TypeScript: #​84839
  • [eslint-config] [Breaking] Use Flat config by default: #​84874
  • [Cache Components] Remove unstable prefix from unstable_cacheLife: #​84877
  • fix: always use the safe stable stringify: #​84909
  • [Cache Components] Fix cacheSignal in dev render: #​84846
  • [dev-overlay] Never dedupe errors with different names or messages: #​84908
  • Remove deprecated experimental_ppr route-level configuration: #​84871
  • Include server latency in debug info: #​84580
  • Fix parallel routes ignoring generateStaticParams from primary route: #​84889
  • Revert "Include server latency in debug info": #​84932
  • Development: Use process.hrtime for request time calculation: #​84905
  • Use correct JSX runtime for library-owned JSX in React Server: #​84869
  • Development: Implement request log time details: #​84906
  • [Cache Components] Remove unstable prefix from unstable_cacheTag: #​84880
  • [Cache Components] separate runtime stage in dev render: #​84644
  • Reland "Include server latency in debug info": #​84950
  • Update codemod ESLint template to Flat config: #​84919
  • Upgrade React from 56e84692-20251014 to 93f85932-20251016: #​84963
  • [dev] Fix Middleware and Proxy file conflict: #​84965
  • stabilize experimental.enablePrerenderSourcemaps: #​84916
  • Stop manually setting stacktrace limit: #​84968
  • Turbopack: respect --profile CLI param: #​84920
  • Relax default.tsx validation for parallel routes leaf segments: #​84767
  • Add codemod for removing unstable_ prefix: #​84974
  • Interception routes match from nested route navigation: #​84898
  • [Cache Components] Allow unstable prefix for cacheLife and cacheTag: #​84934
  • Relax default.tsx validation for parallel routes leaf segments: #​84767
  • Add codemod for removing unstable_ prefix: #​84974
  • Interception routes match from nested route navigation: #​84898
  • [Cache Components] Allow unstable prefix for cacheLife and cacheTag: #​84934
  • Add codemod for removing experimental_ppr: #​84979
  • fix: throw error during build when invalid export for Proxy: #​84886
  • [cache components]: prevent expired entries from being served: #​84975
  • Delete old prefetch cache related code: #​84977
  • docs: Deprecation of Middleware: #​84710
  • Add rendered search to router state: #​84983
  • [segment cache]: delay revalidation prefetch pings 300ms: #​84981
  • Show relative path from cwd for Proxy Middleware file conflict error: #​84993
  • [Cache Components] fix docs for cacheLife("seconds"): #​85004
  • Rename MiddlewareMatcher to ProxyMatcher: #​85005
  • [Breaking] Rename instrumentation onRequestError context.routeType from middleware to proxy: #​85006
  • [turbopack] Prevent accidental access to .next: #​84714
  • fix: incorrect canonicalUrl set when using output: export: #​85019
  • Add Activity name to route layouts and pages: #​85011
  • Update next-lint-to-eslint-cli to support FlatCompat.config: #​85026
  • [cache components]: move flag out of experimental: #​85035
  • [Cache Components] When caches are disabled in dev skip the cache warmup: #​85014
  • [Cache Components] Use canary React when only Cache Components is enabled: #​85042
  • Turbopack: Remove unneeded warning for telemetry: #​85039
  • [cache components] stabilize cacheLife profiles: #​85050
  • [cache components] show when cache components is enabled in the CLI: #​85047
  • [cache components]: show cache components enabled in DevTools: #​85048
  • [Cache Components] correctly label IO promises in devtools: #​84928
  • Plumbing for cache indicator: #​84955
  • Upgrade React from 93f85932-20251016 to 1324e1bb-20251016: #​84999
  • enable mcp server by default: #​85058
  • Add comment that we expect the function passed to bind to be anonymous: #​85070
  • Development: Addres comments on request log PR: #​84945
  • Development: Implement request time for Pages Router: #​85012
  • [cache components] add cache components indicator to dev start: #​85069
  • cli: build partial entries --debug-build-paths arg: #​85052
  • Turbopack: Better error for sassOptions.functions as it's unsupported: #​85073
  • Upgrade React from 58bdc0bb-20251019 to f6a48828-20251019: #​85081
  • [devtools]: instrument client navigation hooks for suspense devtools: #​85007
  • Remove Segment from CacheNodeSeedData: #​85080
  • label as Prefetch/Prefetchable depending on prefetch config: #​85076
  • [cache components]: add 'bypass' cache indicator status: #​85082
  • Upgrade React from f6a48828-20251019 to 2bcbf254-20251020: #​85112
  • [cache components]: guard against setCacheStatus since its conditionally defined: #​85125
  • warn: add deprecation warning of eslint config: #​85122
  • add new devtools indicator loading state: #​85083
  • Await initial Flight response before hydrating: #​85124
  • fix(experimental.lockDistDir): Acquire the lock in dev earlier: #​85116
  • telemetry: mcp tool call: #​85120
  • [Turbopack] dedupe build errors: #​85062
  • Fix subtree layout alignment for route summary in next build: #​85137
  • [codemod] Remove runtime config when running middleware-to-proxy: #​85075
  • [turbopack] Improve the multiple bundler flags messge to note that perhaps your package.json is the problem: #​85118
  • Add Learn more docs to Middleware deprecation warning: #​84711
  • [BF Cache]: skip lazyData fetch logic for inactive segments: #​85142
  • Pass startTime to initial RSC payload stream: #​85144
  • guard navigation use hooks for React 18: #​85151
  • [turbopack] Don't warn on the lightning css experimental option: #​84913
  • Turbopack: Remove redundant log line, increase delay for compiling log message: #​85133
  • Make params and searchParams new Promises: #​85158
  • Name "cache" streams for React DevTools: #​85159
  • Use cacheMaxMemorySize config in default cache handler: #​85153
  • Omit params to from client segments: #​84883
  • enable experimental.routerBfCache behind cacheComponents: #​84923
  • [Cache Components] Allow stale longer than expire in cacheLife: #​85115
  • Update Activity names given to routes: #​85155
  • use port zero for --inspect when forking, if used by parent: #​85128
  • Update blocking prerender error message: #​85087
  • Fix: CSS asset URLs broken with experimental.inlineCss: #​85140
  • Update routes generation for build-complete: #​85017
  • [cache components] move experimental.cacheHandlers out of experimental: #​85157
  • Don't assign displayName to the internal Promises: #​85178
  • Assign name to hydration stream: #​85179
  • fix: add backwards compat for middleware → proxy field renames: #​85183
  • [turbopack] Implement improved deobfuscation for free calls and module identifiers.: #​85060
  • Improve Proxy invalid export error message: #​84887
  • Fix Activity boundary names: #​85185
  • [codemod] Install ESLint v9 if version under for next-lint-to-eslint-cli: #​85182
  • [upgrade] Version gate adding --turbopack flag: #​85180
  • Tweaks to blocking route error message: #​85191
  • Remove layout-router sticky/fixed debug warning: #​85193
  • [cache components] persist cache bypass UI until it's disabled: #​85190
  • Only allow node runtime in proxy: #​85139
  • logger: skip logging full element: #​85194
  • Fix: CSS asset URLs broken with experimental.inlineCss: #​85140
  • Update routes generation for build-complete: #​85017
  • [cache components] move experimental.cacheHandlers out of experimental: #​85157
  • Don't assign displayName to the internal Promises: #​85178
  • Assign name to hydration stream: #​85179
  • fix: add backwards compat for middleware → proxy field renames: #​85183
  • [turbopack] Implement improved deobfuscation for free calls and module identifiers.: #​85060
  • Improve Proxy invalid export error message: #​84887
  • Fix Activity boundary names: #​85185
  • [codemod] Install ESLint v9 if version under for next-lint-to-eslint-cli: #​85182
  • [upgrade] Version gate adding --turbopack flag: #​85180
  • Tweaks to blocking route error message: #​85191
  • Remove layout-router sticky/fixed debug warning: #​85193
  • [cache components] persist cache bypass UI until it's disabled: #​85190
  • Only allow node runtime in proxy: #​85139
  • logger: skip logging full element: #​85194
Example Changes
  • docs: Convert relative imports to @​ aliases in examples: #​83813
  • chore: add example with oxlint: #​83842
  • fix: correct typo 'incomming' to 'incoming' in with-mqtt-js example: #​83887
  • chore: improve oxlint example: #​83898
  • docs: update Dockerfile to use node:lts-alpine instead of node:18-alpine: #​84229
  • Use Array.from to avoid @​ts-ignore when copying i18n.locales: #​82148
  • examples: Remove AMP example: #​84355
  • [docs] fix(with-supabase): Update README env variables: #​84745
Misc Changes
  • Turbopack: remove css_environment from Environment: #​83487
  • Turbopack: Don't add client_runtime_entries to Route Handler compilation: #​83655
  • Turbopack: Only load capsize-font-metrics once: #​83654
  • [CI] Fix GitHub Actions matrix configuration for React versions: #​83677
  • fix(Turbopack): Enable scope hoisting for large files or module counts: #​83399
  • [turbopack] Lazily construct resolved::Requests for EsmAssetReference: #​83662
  • Update content-security-policy.mdx, fix development environment error: #​83665
  • tests: disable flaky deployment test while investigating upstream: #​83705
  • [test] Update snapshots for Rspack + React 18: #​83712
  • Docs/sep paper cuts: #​83689
  • [Turbopack] Remove ssr-data module context: #​83626
  • CI: use KV for test timing data: #​83745
  • Emit build error when 'use cache' directive is misspelled: #​83756
  • docs(metadata): align default function export name with file name: #​83796
  • [turbopack] Remove the should_track_children parameter of the turbo tasks backend: #​83258
  • docs(data-security): add bun package manager example: #​83735
  • Update next-intlayer reference in i18n doc: #​83761
  • Update Rspack production test manifest: #​83790
  • Update Rspack development test manifest: #​83791
  • Turbopack: chunking debugging utilities: #​83801
  • Removed link to maintain text consistency: #​83644
  • Turbopack: rename some fields in fs: #​83808
  • Turbopack: validate CSS without computing all paths: #​83810
  • [test] Disable flaky navigation test: #​83828
  • docs: Type narrowing using LayoutProps, PageProps: #​83692
  • docs: implications of mutating cookies in server actions: #​83691
  • Only retry if canary fails on required jobs: #​83851
  • docs: Fix self-referential link to Middleware in middleware.mdx: #​83854
  • Update Rspack production test manifest: #​83826
  • Update generate-metadata.mdx: #​81853
  • Turbopack: remove lazy invalidated tasks: #​83845
  • Turbopack: remove Backend TaskState: #​83846
  • Turbopack: don't recompute empty parse results: #​83883
  • Turbopack: delete broken hmr benchmark: #​83882
  • Turbopack: only generate error string in error case: #​83884
  • docs: the as prop is still available in Pages Router: #​83864
  • Turbopack: map_module_batch: #​83885
  • Turbopack: Change run once signature to avoid exposing TaskId: #​83844
  • docs: Update command to use npx for tracing files: #​83903
  • Turbopack: ModuleGraphRef: #​83890
  • Update Rspack development test manifest: #​83876
  • Turbopack: make graph traversal sync: #​83891
  • chore: Fix test snapshot: #​83901
  • Update Rspack production test manifest: #​83877
  • docs: add next.config.ts Node.js native resolver: #​83561
  • Turbopack: add turbo_tasks::run to run in turbo tasks scope without a task: #​83847
  • Turbopack: fix double codegen of some merged modules: #​83886
  • Turbopack: add traces to merged module computation: #​83908
  • Turbopack: RuleCondition support resourceQuery contains: #​83468
  • fix: add the missing comma in the document example: #​83932
  • Turbopack: Document the reasons for the current design of parse_segment_config_from_source: #​83919
  • Turbopack: extract parse_source_map_comment: #​83938
  • Turbopack: enable nodelay for node.js pool socket: #​83942
  • feat: next-rspack-binding: #​82811
  • Only send notification if canary fails on required jobs: #​83953
  • Turbopack: allow to read State from turbo_tasks::run: #​83955
  • Fix conclusion check for retry_test workflow: #​83960
  • Add Descope to Auth libraries list: #​83968
  • [turbopack] Track task durations in the task_statistics file: #​83522
  • [turbopack] Remove the issue_path feature and related functionality: #​83920
  • Turbopack: use turbo_tasks::run in next.js to avoid task memory leak: #​83848
  • Update Rspack production test manifest: #​83934
  • Update Rspack development test manifest: #​83933
  • Turbopack: add test case that checks memory leak: #​83849
  • Turbopack: read project strongly consistent in project_update: #​83974
  • Fix output comparison when checking conclusion of required jobs: #​83986
  • Turbopack: JsAnalyzer parse AssignExpr: #​83962
  • Turbopack: less eager manifest generation: #​83736
  • Turbopack: use depth as priority for merged module info: #​83909
  • Turbopack: "connect" tasks in turbo_tasks::run too: #​83975
  • Update Rspack production test manifest: #​83979
  • Update Rspack development test manifest: #​83980
  • Turbopack: Make transient tasks root tasks too when called in turbo_tasks::run: #​83976
  • Turbopack: trace state changes: #​83977
  • [turbopack] cleanup analyzer: #​83983
  • [Turbopack] Fix AST traversal for this in function default parameters: #​83746
  • [turbopack] Consolodate logic for visiting functions to simplify state management: #​82763
  • [turbopack] Track the scope in which variables are assigned: #​82845
  • [turbopack] Set liveness of exports based on assignment analysis: #​82802
  • Turbopack: trace all state changes: #​84053
  • docs: We have dropped the CORS example linked: #​84065
  • docs: add pageExtensions note to Middleware and clarify default filename: #​84045
  • Fix TypeScript type error in example code: #​84041
  • Turbopack: fix test case and update project_update to turbo_tasks::run too: #​83978
  • Turbopack: run tests with multiple threads: #​84074
  • Turbopack: flush Node.js worker IPC on error: #​84077
  • Turbopack: parallelize scope hoisting computation: #​83904
  • Add test for JS resource size on navigation: #​83731
  • Update Rspack development test manifest: #​84061
  • Update Rspack production test manifest: #​84060
  • Turbopack: Document automatic Babel config support: #​84002
  • docs: Fix the title/path of the turbopack page on pages router: #​84001
  • Turbopack: remove references from ChunkData: #​84076
  • Turbopack: include availability hash in the ident of evaluated chunks groups: #​84082
  • [turbopack] s/analyse/analyze/g: #​84112
  • [Turbopack] avoid attaching referenced output assets to chunks: #​75933
  • fix(docs): Fix links in UPGRADING.md: #​84114
  • docs: improve dynamic routes example in project structure page: #​84086
  • docs: onRequestError request header type: #​83988
  • Turbopack: Improve persistent caching test case: #​83205
  • Turbopack: add more details to the graph panic: #​84126
  • docs: Cookies store access is async: #​83987
  • Bump Rust to nightly-2025-09-21: #​83415
  • Upgrade CodSpeed action and add analyzer benchmarks: #​84135
  • Turbopack: fix run_once when returning error: #​84142
  • [turbopack] Conditionally collect affecting sources: #​83921
  • Turbopack: slightly improve resolve_source_map_sources: #​84147
  • Turbopack: RawEcmascriptModule: #​81806
  • Turbopack: add more details to the graph panic: #​84143
  • test: split app-middleware test per describe: #​84130
  • Update Rspack development test manifest: #​84117
  • script: improve release log generation: #​83686
  • Turbopack: split task_execution_completed into multiple methods: #​84170
  • Turbopack: only generate field if spans are enabled: #​84184
  • Turbopack: support more dynamic request with import map: #​84178
  • [turbopack] defer a value_to_string operation until we need it: #​84188
  • Update Rspack production test manifest: #​84165
  • Revert "[turbopack] Set liveness of exports based on assignment ana…: #​84207
  • Turbopack: increase retry duration, reduce busy looping when there is other work: #​84171
  • Turbopack: Try to avoid block_in_place in scope: #​84172
  • [turbopack] Remove some bitmap clones: #​84193
  • Turbopack: lazier manifests, part deux: #​84191
  • Turbopack: avoid panic on updating output when a task was cancelled: #​84214
  • docs: nav_title for long unbroken words: #​84233
  • Turbopack: Use RawValue for mappings inside SourceMapJson: #​84208
  • Update Rspack development test manifest: #​84218
  • Turbopack: fix NFT of readFileSync of relative path: #​84155
  • Turbopack: improve references benchmark: #​84223
  • Update Rspack production test manifest: #​84217
  • Turbopack: drop ASTs when only tracing: #​84185
  • docs: Include more detailed instructions on excluding from common AV solutions, including macOS Gatekeeper: #​84206
  • Turbopack: trace fs-extra calls: #​84246
  • [test] Overhaul Undefined default export test suite: #​84235
  • Turbopack: Scope with work queue: #​84225
  • [test] Make Undefined default export an e2e test suite: #​84240
  • [turbopack] Conditionally create pages router data endpoints.: #​84194
  • Turbopack: parallel connect children: #​84173
  • Turbopack: count turbo_tasks::run as foreground tasks to avoid being idle: #​84245
  • Turbopack: make persistent caching log line more clear: #​84262
  • Turbopack: make tracing nicer: #​84263
  • docs:Small improvement on the contribution guide for clarity: #​84200
  • Turbopack: Remove not-very-useful "Finished writing to disk in" log line: #​84244
  • Turbopack: follow up changes from parallel children: #​84219
  • [turbopack] Simplify take_issues and peek issues: #​84199
  • Update Rspack development test manifest: #​84260
  • Update Rspack production test manifest: #​84259
  • Turbopack: Scope with work queue: #​84225
  • [test] Make Undefined default export an e2e test suite: #​84240
  • [turbopack] Conditionally create pages router data endpoints.: #​84194
  • Turbopack: parallel connect children: #​84173
  • Turbopack: count turbo_tasks::run as foreground tasks to avoid being idle: #​84245
  • Turbopack: make persistent caching log line more clear: #​84262
  • Turbopack: make tracing nicer: #​84263
  • docs:Small improvement on the contribution guide for clarity: #​84200
  • Turbopack: Remove not-very-useful "Finished writing to disk in" log line: #​84244
  • Turbopack: follow up changes from parallel children: #​84219
  • [turbopack] Simplify take_issues and peek issues: #​84199
  • Update Rspack development test manifest: #​84260
  • Update Rspack production test manifest: #​84259
  • [test] Ignore pnpm update notifier: #​84328
  • [test] Stop downloading unused test browsers when generating PR stats: #​84329
  • docs: remove repeated to: #​84325
  • Turbopack: Use more robust logic for absolute and percent-encoded URLs in source maps received from loaders: #​84255
  • Turbopack: only replace edge dynamic calls in dev: #​84354
  • [turbopack] Remove a bunch of dead code from the source map implementation: #​84318
  • Turbopack: prevent duplicate NFT modules: #​84369
  • docs: Remove AMP docs: #​84357
  • docs: Type helpers don't need to be imported: #​84265
  • Turbopack: Add docs for debugIds option: #​84375
  • Remove references to size metrics in next build from our docs: #​83823
  • Bump to swc v42: #​83477
  • Turbopack: skip invalidating a task on cell/output change when the dependency is outdated: #​84376
  • Turbopack: trace module.createRequire: #​84335
  • Update failing e2e deploy tests: #​84395
  • Turbopack: Webpack loader this.fs.readFile: #​83313
  • Improve tests: #​84374
  • Revamp Next.js boilerplate: #​81945
  • Add test for twoslash: #​84267
  • Docs/project structure polish: #​84386
  • Bump to swc v44: #​84420
  • Turbopack: don't fail for parse errors in tracing: #​84408
  • Update Rspack development test manifest: #​84365
  • Update Rspack production test manifest: #​84366
  • [ci]: remove PPR-specific CI jobs: #​84439
  • docs: Verbose troubleshooting for unconfigured hosts: #​84271
  • Update Rspack production test manifest: #​84398
  • Add gt-next to i18n list: #​84396
  • [ci]: fix build-output-prerender to support segment cache env: #​84467
  • [ci]: fix app-static snapshots with clientSegmentCache: #​84468
  • Turbopack: Only benchmark file IO on next dev: #​84474
  • Turbopack: improve incremental build performance when deployment id changes: #​84460
  • fix: Missing link in Lazy Loading docs: #​84473
  • docs: simplify streaming metadata: #​84253
  • make withRspack idempotent: #​84482
  • Turbopack: Use strongly consistent reads in random_change unit test: #​84505
  • Update Rspack development test manifest: #​84480
  • Update Rspack production test manifest: #​84481
  • [ci]: remove test from segment cache manifest: #​84507
  • [ci]: de-flake client cache test: #​84517
  • Revert "Turbopack: skip invalidating a task on cell/output change when the dependency is outdated": #​84526
  • next mcp router
  • Revert "next mcp router"
  • test: Use nextTestSetup in scss tests: #​84501
  • [turbopack[ Use the configured hasher to implementh Hash for AutoMap and AutoSet: #​84542
  • Turbopack: debug ids for server chunks: #​84557
  • CI: Enable experimental.isolatedDevBuild for test-unit: #​84559
  • [test]: convert prefetching tests to be segmentCache compatible: #​84521
  • CI: Enable experimental.isolatedDevBuild for test-prod: #​84556
  • Add .next/dev/types to CNA templates tsconfig include: #​84566
  • CI: Enable experimental.isolatedDevBuild for test-integration: #​84558
  • Update Rspack development test manifest: #​84548
  • Add a webpack flag to create next app. Ensure that if you set it or decline turbopack we set the --webpack flag on the generated project: #​84476
  • Update Rspack production test manifest: #​84549
  • CI: Enable experimental.isolatedDevBuild for test-dev: #​84562
  • [test] Unflake static image test: #​84535
  • Turbopack: Lower the IO concurrency limit in CI tests: #​84508
  • Add documentation for experimental adapters handling: #​83737
  • Turbopack: improve next/dynamic eventual consistentcy: #​84560
  • fix hidden errors in router-act: #​84603
  • fix(cna): use correct postcss plugins syntax: #​79949
  • Turbopack: absolute requests in webpack loader: #​84575
  • Update Rspack development test manifest: #​84592
  • Update Rspack production test manifest: #​84593
  • Turbopack: Remove workaround in hyper for rustc miscompilation bug on macos intel: #​84578
  • Turbopack: add manual worker count override: #​84454
  • Turbopack: don't ignore TS parse errors: #​84597
  • Add middleware to routes order doc: #​84618
  • [create-next-app]: prompt to use recommended options: #​84570
  • Update labeler: #​84623
  • Turbopack: use mmap advise to help the OS preloading: #​84379
  • Turbopack: skip invalidating a task on cell/output change when the dependency is outdated: #​84551
  • Turbopack: follow-up changes from untracked tracing: #​84629
  • Turbopack: sourcemaps for JSON modules: #​84611
  • Turbopack: avoid race condition when updating cells: #​84598
  • docs: update core documentation for Turbopack as default bundler: #​84282
  • Update Rspack development test manifest: #​84631
  • [turbopack] Only send the filesystem caching timing messages for slow events: #​84646
  • docs: experimental.isolatedDevBuild: #​84656
  • docs: add note clarifying project root in monorepo: #​84628
  • Fix flakey overlay feedback test: #​84662
  • [ci]: update flake detection to only run in Turbopack: #​84659
  • [ci]: move router-act to top level testing utils: #​84653
  • [tests]: de-flake client-cache.parallel-routes.test.ts: #​84655
  • [create-next-app]: add eslint to default template: #​84661
  • Update Rspack production test manifest: #​84630
  • [test] Assert on stable error codes: #​84671
  • Turbopack: convert HashMap to IndexMap for deterministic tasks: #​84641
  • Add note about $ACTION_ properties, remove reference to .entries(): #​84459
  • Fix typo on welcome page: #​84715
  • Rspack: Fix lockfile test on rspack: #​84707
  • [turbopack] Emit a warning when there are too many matches from a FileSourceReference: #​84701
  • Update beta tag: #​84725
  • [next-codemod] fix: Set codemod version to the first introduced version: #​84726
  • [next-upgrade] misc: update comment: #​84727
  • Turbopack: use vector instead of hash map: #​84696
  • Revert "docs: nav_title for long unbroken words (#​84233)": #​84346
  • [turbopack] tweak the doc on the inner graph optimization: #​84752
  • [turbopack] Fix a few references to caching configuration as it is no longer canary guarded: #​84761
  • Add 16.0.0-beta.0 to next/third-parties peerDeps: #​84741
  • [eslint-plugin] Remove eslint-v8 testing: #​84721
  • Update Rspack production test manifest: #​84729
  • Update Rspack development test manifest: #​84730
  • fix: release next-rspack ci: #​84673
  • [cna] Preserve existing config option when enabling React Compiler: #​84663
  • Prevent failing types-and-precompiled from corrupting terminal output: #​84799
  • Update test/CNA templates React version to 19.2.0: #​84736
  • Turbopack: use the same serialization method for lookup as for storing: #​84765
  • Turbopack: update petgraph: #​84757
  • [turbopack] Issue 'too many matches' warning for DirAssets also: #​84768
  • Revert "Fix flakey overlay feedback test": #​84819
  • [test]: de-flake client-cache.original.test.ts: #​84831
  • [ci]: set NEXT_TEST_VERSION to release tag for deploy tests: #​84840
  • docs: soft 404's, Suspense and loading.tsx: #​83867
  • [turbopack] Discuss Core Web vitals in our bundle size gap docs: #​84837
  • [turbopack] document missing webpack loader features: #​84849
  • [turbopack] fix typo in docs: #​84868
  • [turbopack] Remove the implementation of TaskInput from AutoSet: #​84867
  • Update turborepo env in workflows: #​84879
  • Turbopack: take task cache log before starting snapshot: #​84755
  • Turbopack: allow gzip compression on trace files: #​84685
  • Turbopack: process task result as part of the task completion: #​84638
  • Add test for eslint-config-next: #​84838
  • Turbopack: lower level drop collectibles: #​84895
  • docs: next/dynamic headings: #​84492
  • Turbopack: expose client static assets correctly: #​84695
  • Turbopack: better errors for strip_prefix_len: #​84882
  • Turbopack: improve missing factory message: #​84881
  • CNA: Update template to use ESLint Flat config: #​84917
  • fix: process.env.TURBOPACK maybe undefined: #​84885
  • Turbopack: fix spacing on EcmascriptModuleAssetType: #​84915
  • Update Rspack development test manifest: #​84890
  • Update Rspack production test manifest: #​84891
  • Fix url-imports test: #​84922
  • Turbopack: fix pageExtensions precedence: #​84926
  • Turbopack: fix client reference order for shared references: #​84760
  • Turbopack: turn panic into bail: #​84927
  • Docs/sync with new features 0: #​84861
  • Turbopack: transpile runtime with swc: #​84931
  • docs: x-nextjs-stale-time header: #​84901
  • docs: Templates on navigation: #​84493
  • Docs/sync with new features 0: #​84861
  • Turbopack: transpile runtime with swc: #​84931
  • docs: x-nextjs-stale-time header: #​84901
  • docs: Templates on navigation: #​84493
  • chore: Attempt to fix ppr-partial-hydration flakiness: #​84672
  • Update Rspack production test manifest: #​84939
  • Turbopack: rename Persistent Caching: #​84896
  • Turbopack: Add ChunkedVec test case: #​84756
  • docs: Add missing codemod docs: #​84980
  • Update prefetching.mdx providing more clarity on the usage of router.prefetch(): #​84903
  • docs: getting started installation and next lint removal: #​84781
  • docs: Split "Get Started: Route Handlers and Middleware" to Route Handlers and Proxy: #​84708
  • docs: Replace Middleware docs to Proxy: #​84709
  • chore: Remove redundant copy of rust reqwest crate: #​84982
  • [turbopack] Allow withRspack to work even if you already have NEXT_RSPACK set: #​84987
  • Turbopack: Track errored tasks as dependency when using untracked(): #​84914
  • Turbopack: shard amount need to grow quadratic to cpu count to keep propability of conflicts constant: #​84921
  • Turbopack: fix race condition when adding dependencies: #​84946
  • Turbopack: make tracing warning not fail build: #​85032
  • [ci]: increase number of runners for test jobs: #​85049
  • add a message about Turbopack tracing: #​85044
  • Turbopack: Implement next/font/local declarations option: #​85051
  • docs: experimentalClientMaxBodySize: #​85105
  • Docs: Add --debug-build-paths next build option: #​85097
  • Docs: Add note on tag limits for cacheTag: #​85106
  • docs: no switcher for TS only examples: #​85109
  • fix: Handle non-directory files in cache folder when performing cleanup: #​84930
  • Turbopack: Suggest using system certs when a TLS error occurs: #​85009
  • [turbopack] Try to fix v8 crashes on github actions: #​85114
  • docs: Update to Zod v4 syntax: #​84807
  • Docs: Add version history for next lint deprecation and update error message: #​85100
  • Turbopack: improve module evaluation name: #​84633
  • [test] Current behavior of dynamic APIs integration with React DevTools: #​85111
  • [Cache Components] fix env labels in perf track test: #​85132
  • Turbopack: Disable LightningCSS MediaRangeSyntax feature: #​85086
  • Don't expliclitly set the --turbopack flag in Create Next App, it is no longer necessary: #​85117
  • [turbopack] Remove the canary icon from the cache components docs: #​85149
  • Bump swc to v45: #​85143
  • [test] Fix test-dev with --projects: #​85167
  • [test] Update snapshots: #​85171
  • docs: mcp: #​85010
  • Docs: Explain Sass tilde import difference: #​85041
  • Turbopack: don't fail on export type in use server: #​85054
  • Turbopack: speedup module merging: #​85043
  • docs: remove experimental_ppr route segment config: #​85188
  • Rename "blocking route" error docs page: #​85189
  • docs: upgrade from 15 to 16: #​85176
  • Docs: Explain Sass tilde import difference: #​85041
  • Turbopack: don't fail on export type in use server: #​85054
  • Turbopack: speedup module merging: #​85043
  • docs: remove experimental_ppr route segment config: #​85188
  • Rename "blocking route" error docs page: #​85189
  • docs: upgrade from 15 to 16: #​85176
Credits

Huge thanks to @​mischnic, @​timneutkens, @​unstubbable, @​wyattjoh, @​Cy-Tek, @​lukesandberg, @​OoMNoO, @​ztanner, @​icyJoseph, @​huozhi, @​gnoff, @​ijjk, @​povilasv, @​dwrth, @​obendev, @​aymericzip, @​devjiwonchoi, @​SyMind, @​vercel-release-bot, @​Shireee, @​eps1lon, @​dharun36, @​kachkaev, @​bgw, @​yousefdawood7, @​TheAlexLichter, @​sokra, @​ericx0099, @​leerob, @​Copilot, @​fireairforce, @​fufuShih, @​anvibanga, @​hayes, @​Milancen123, @​martinfrancois, @​lubieowoce, @​gaojude, @​lachlanjc, @​liketiger, @​styfle, @​aaronbrown-vercel, @​Samii2383, @​FelipeChicaiza, @​kevva, @​m1abdullahh, @​F7b5, @​Anshuman71, @​RobertFent, @​poteto, @​chloe-yan, @​sireesha-siri, @​brian-lou, @​joao4xz, @​stefanprobst, @​samselikoff, @​acdlite, @​gwkline, @​bgub, @​brock-statsig, @​karlhorky, @​feedthejim, @​CarloQuick, @​greguintow, @​hallucinogenizer, @​sebmarkbage, @​delbaoliveira, @​makandrr, @​seeplusplus, and @​serhalp for helping!

v15.5.7

Compare Source

Please see CVE-2025-66478 for additional details about this release.

v15.5.6

Compare Source

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

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

Huge thanks to @​mischnic for helping!

v15.5.5

Compare Source

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

Core Changes
  • Split code-frame into separate compiled package (#​84238)
  • Add deprecation warning to Runtime config (#​84650)
  • fix: unstable_cache should perform blocking revalidation during ISR revalidation (#​84716)
  • feat: experimental.middlewareClientMaxBodySize body cloning limit (#​84722)
  • fix: missing next/link types with typedRoutes (#​84779)
Misc Changes
  • docs: early October improvements and fixes (#​84334)
Credits

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

v15.5.4

Compare Source

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

Core Changes
  • fix: ensure onRequestError is invoked when otel enabled (#​83343)
  • fix: devtools initial position should be from next config (#​83571)
  • [devtool] fix overlay styles are missing (#​83721)
  • Turbopack: don't match dynamic pattern for node_modules packages (#​83176)
  • Turbopack: don't treat metadata routes as RSC (#​82911)
  • [turbopack] Improve handling of symlink resolution errors in track_glob and read_glob (#​83357)
  • Turbopack: throw large static metadata error earlier (#​82939)
  • fix: error overlay not closing when backdrop clicked (#​83981)
  • Turbopack: flush Node.js worker IPC on error (#​84077)
Misc Changes
  • [CNA] use linter preference (#​83194)
  • CI: use KV for test timing data (#​83745)
  • docs: september improvements and fixes (#​83997)
Credits

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

v15.5.3

Compare Source

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

Core Changes
  • fix: validation return types of pages API routes (#​83069)
  • fix: relative paths in dev in validator.ts (#​83073)
  • fix: remove satisfies keyword from type validation to preserve old TS compatibility (#​83071)
Credits

Huge thanks to @​bgub for helping!

v15.5.2

Compare Source

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

Core Changes
  • fix: disable unknownatrules lint rule entirely (#​83059)
  • revert: add ?dpl to fonts in /_next/static/media (#​83062)
Credits

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

v15.5.1

Compare Source

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

Core Changes
  • fix: aliased navigations should apply scroll handling (#​82900)
  • Turbopack: fix invalid NFT entry with file behind symlink (#​82887)
  • fix: typesafe linking to route handlers and pages API routes (#​82858)
  • fix: change "noUnknownAtRules" to "warn" for Biome (#​82974)
  • fix: add path normalization to getRelativePath for Windows (#​82918)
  • feat: add typesafety with config.typedRoutes to redirect() and permanentRedirect() (#​82860)
  • fix: avoid importing types that will be unused (#​82856)
  • fix: update the config.api.responseLimit type (#​82852)
  • fix: update validation return types (#​82854)
Credits

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

v15.5.0

Compare Source

Core Changes
  • Use and enforce exhaustive switch statements for work unit store: #​81577
  • Enable @typescript-eslint/switch-exhaustiveness-check rule: #​81583
  • [dynamicIO] use RSC dynamicness to control partial vs complete PPR result: #​81627
  • [dynamicIO] Do not use React.unstable_postpone(): #​81652
  • feat: new detachable panel UI: #​81483
  • Turbopack: content-hash PageLoaderAsset: #​81450
  • [segment explorer] fix content overflow styling: #​81649
  • Improve reliability of owner stacks for async I/O errors: #​81501
  • fix(router): Prevent redirect loop on root data requests with basePath: #​81096
  • Ensure custom NextServer config is honored: #​81681
  • Fix before interactive incorrectly render css: #​81146
  • perf: memorize exclude function in webpack config: #​81525
  • Also enforce experimental features when there's no next config file: #​81679
  • feat(next/image): warn when images.qualities is undefined: #​81690
  • feat(build): optimize filterUniqueParamsCombinations to generate sub-combinations: #​81321
  • Update NextAdapter type and re-export: #​81692
  • upgrade to path-to-regexp@6.3.0: #​80123
  • [metadata] replace for initial body icon case: #​81688
  • [segment explorer] remove dev panel ui flag: #​81670
  • Simplify running test apps locally with ppr or dynamicIO enabled: #​81668
  • [turbopack] Return cached Promise from __turbopack_load_by_url__ : #​81663
  • Upgrade React from 97cdd5d3-20250710 to 2f0e7e57-20250715: #​81678
  • Delete unused renderToString function: #​81707
  • Discard prerendered route handler data from FS cache after revalidation: #​81611
  • Upgrade React from 2f0e7e57-20250715 to d85ec5f5-20250716: #​81708
  • Ignore pending revalidations during prerendering: #​81621
  • [turbopack] Clear chunk cache on HMR instead of creating new next-server VM: #​81664
  • fix: rootParams should throw in client when fallbackParams are not present: #​81711
  • perf(build): optimize buildAppStaticPaths performance and add helper function: #​81386
  • Turbopack: Support string without options for @​next/mdx: #​81713
  • [Segment Cache] Support dynamic head prefetching: #​81677
  • [sourcemaps] Consistent cursor columns: #​81375
  • fix: revert client segment route changes for sub shell generation: #​81731
  • fix: pages router metadata bugs with React 19: #​81733
  • Improve error handling for headers/cookies/draftMode in 'use cache': #​81716
  • [devtool] fix duplicate rendered indicator on server: #​81729
  • [devtool] enable segment explorer by default: #​81737
  • [turbopack] Stop exposing globals from Turbopack runtime: #​81727
  • Remove unnecessary await: #​81761
  • [chore] bump zod to latest v3: #​81757
  • feat(turbopack): Log anonymized internal error (panic) information to telemetry: #​81272
  • fix: revert client segment route changes for sub shell generation: #​81740
  • bugfix: static resources staleTime should be renewed once refetched: #​81771
  • [devtool] move font styling to global.css: #​81782
  • [devtool] copy decoded info of error details: #​81735
  • fix(build): add sourcePage context for PPR dynamic route lambda creation: #​81781
  • refactor: rename experimental.dynamicIO to experimental.cacheComponents: #​81562
  • Properly handle hanging promise rejections during prerendering: #​81754
  • Upgrade React from d85ec5f5-20250716 to dffacc7b-20250717: #​81767
  • Refactor: Get rid of overly generic getExpectedRequestStore function: #​81791
  • [devtool] migrate css reset to global.css: #​81783
  • [dev-tools] Robust shortcut detection: #​81756
  • [segment explorer] hide for pages router: #​81813
  • [devtool] fix scrollbar styling: #​81814
  • fix(ppr): ensure fallback route params trigger dynamic resume: #​81812
  • [devtools] restart server pending state: #​80858
  • Turbopack: fix dist dir on Windows: #​81758
  • fix: remove boundary sentinel from RSC responses: #​81857
  • [sourcemaps] Try VM for retrieving source maps first: #​81869
  • [devtools] save user config inside .next/cache: #​81807
  • Server: Remove unused code: #​81886
  • refactor: encapsulate content type within RenderResult: #​81861
  • refactor: handle null RenderResult responses gracefully: #​81895
  • Upgrade React from dffacc7b-20250717 to e9638c33-20250721: #​81899
  • chore(devtools): sync todos to linear: #​81901
  • Introduce 'use cache: private': #​81816
  • chore(deps): update browserslist: #​81851
  • Remove web-server from edge-ssr-app: #​81389
  • Stabilize node middleware support: #​81907
  • Add run-turbopack-compiler trace span: #​81917
  • fix: support calling onClose multiple times in edge-ssr-app: #​81911
  • fix: logging the correct process for listened port: #​81903
  • Build: Include rewrites in manifest generation: #​81894
  • Routing: Clean up some code: #​81932
  • [sourcemaps] Ensure codeframe when calling Client Functions from Server: #​81918
  • [segment explorer] missing file suggestion: #​81617
  • [turbopack] Always print trace labels in headers: #​81728
  • Revert "[metadata] use https protocol for schema urls": #​81934
  • Upgrade React from e9638c33-20250721 to 7513996f-20250722: #​81940
  • Upgrade to swc v33: #​81750
  • Remove extra base-server code: #​81944
  • Turbopack: flatten sourceInfo to avoid objects, reorder args, compress node.js entry: #​81545
  • Fix dynamicParams false layout case in dev: #​81990
  • Initial MCP implementation: #​81770
  • Fix: Unresolved param in x-nextjs-rewritten-query: #​81991
  • Turbopack: Add an option to use system TLS certificates (fixes #​79060, fixes #​79059): #​81818
  • Turbopack: Remove unused proxy option in turbo-tasks-fetch, lightly document HTTP_PROXY/HTTPS_PROXY environment variables: #​81905
  • Upgrade React from 7513996f-20250722 to edac0dde-20250723: #​81984
  • [devtools] Cleanup folder structure: #​82012
  • [devtools] Fix "open in editor" for locations in stackframes: #​82013
  • [Segment Cache] Fix: Key by rewritten search: #​81986
  • Upgrade vercel og and remove yoga type patching: #​81937
  • [perf] cache load config results: #​80570
  • Turbopack: use prototype for turbopack context for better runtime performance: #​81547
  • [reactcompiler] Test with latest RC: #​82002
  • [devtools] Fix various exhaustive-deps violations: #​82010
  • [devtools] Apply React Compiler to Next.js DevTools source: #​82004
  • Upgrade React from edac0dde-20250723 to 3d14fcf0-20250724: #​82020
  • Adjusted the warning message to be more descriptive: #​82054
  • Track fallback params on workUnitStore: #​82003
  • Fix API stripping JSON incorrectly: #​82061
  • Upgrade React from 3d14fcf0-20250724 to 19baee81-20250725: #​82063
  • use FetchStrategy to control prefetching behavior everywhere: #​82032
  • [Segment Cache] set fetchStrategy on segments from a dynamic request: #​82059
  • Revert "Upgrade vercel og and remove yoga type patching (#​81937)": #​82066
  • Optimize segment data routes: #​82033
  • Turbopack: write tasks doesn't need to be session dependent, as effects will restore: #​78727
  • [sourcemaps] Fully sourcemap stacks on the Server: #​81904
  • fix(Rspack): use loaderContext.utils.contextify to replace ModuleFilenameHelpers.createFilename: #​82104
  • next/root-params: #​80255
  • fix(next/image): fix image-optimizer.ts headers: #​82114
  • Upgrade React from 19baee81-20250725 to eaee5308-20250728: #​82120
  • Fix validateRSCRequestHeaders incorrect redirect: #​82119
  • fix(next/image): improve and simplify detect-content-type: #​82118
  • [CacheComponents] Use fallback params when validating dynamic routes in dev: #​82069
  • Extract getDynamicParam to a shared module: #​82137
  • Fix i18n fallback: false collision: #​82136
  • [segment explorer] normalize path when running inside monorepo: #​82146
  • [segment explorer] windows compatibility: #​82147
  • Upgrade React from eaee5308-20250728 to 9be531cd-20250729: #​82159
  • Ensure setAssetPrefix updates config instance: #​82160
  • Revert "Fix tracing of server actions imported by client components (#​78968): #​82161
  • Remove useMDXComponents argument: #​80871
  • Fix RSC hash validation for middleware external rewrites: #​82176
  • @next/codemod: update docs url in README: #​82135
  • @next/codemod: Add experimental.turbo to turbopack codemod for Next.js configs: #​82134
  • refactor: lowercase app router header values: #​82169
  • Strip internals from NextRequest types: #​82172
  • allow root params access in private caches: #​82125
  • [devtool] bump base-ui to 1.0.0-beta.2: #​82206
  • Upgrade @​vercel og: #​82201
  • Upgrade React from 9be531cd-20250729 to 9784cb37-20250730: #​82207
  • Fix: the unexpected clearing of symbolic link directories: #​82191
  • [next-dev] Set TURBOPACK env before loading config: #​82162
  • fix: display multiple lockfile warn if neither outputFileTracingRoot or turbopack.root option is provided: #​82164
  • Revert "Initial MCP implementation (#​81770)": #​82217
  • Revert "Upgrade @​vercel og (#​82201)": #​82219
  • Fix: Don't bail out of prefetch if head is missing: #​82216
  • Upgrade React from 9784cb37-20250730 to c260b38d-20250731: #​82247
  • [Cache Components] Runtime prefetching: #​81088
  • Parse dynamic params on the client: #​82185
  • Mark bun builtin modules as external (fixes #​75220): #​77616
  • Turbopack: Compact only at the end for short sessions: #​82224
  • feat: add fallback root params support for prefetch segment data routes: #​82282
  • feat: add route context to prerender error messages: #​82283
  • feat: automatically generate route types: #​81396
  • [Cache Components] Reset PrerenderStore after generating RSC payload: #​82286
  • Include eslint-plugin-react-hooks in React sync: #​82294
  • [devtools] Remove unnecessary cascading update: #​82295
  • Turbopack: name the module factory function: #​73553
  • Update font data: #​82292
  • fix: next/root-params erroring when rerendering after action: #​82326
  • Remove params from segment path: #​82249
  • Upgrade React from c260b38d-20250731 to be11cb5c-20250804: #​82339
  • fix: OTel root span should indicate error status on exceptions: #​82212
  • [Cache Components] Allow span creation while prerendering: #​82350
  • feat(turbopack): improve compile-time define value to support more data types and expr evaluation: #​81042
  • [Pages] fix: _error page's req.url can be overwritten to dynamic param on minimal mode: #​82347
  • [Pages] fix: use asPath for query-only navigation with useRouter: #​82236
  • loader tree: add special segment name to virtual parallel route segments: #​82383
  • fix: add ?dpl to fonts in /_next/static/media: #​82384
  • Upgrade React from be11cb5c-20250804 to 7deda941-20250804: #​82373
  • [devtools] Make state read-only in types: #​82396
  • Add experimental clientParamParsing feature flag: #​82393
  • add unstable_isUnrecognizedActionError: #​78933
  • [Cache Components] give the "seconds" profile a 30s staleTime: #​82332
  • Represent "virtual" segments like route groups: #​82422
  • [Segment Cache]: fix infinite prefetching when staleTime is 0: #​82388
  • Remove param values from static route tree: #​82376
  • [Cache Components] Only validate the shell on SSR render: #​82381
  • fix: static not-found missing in prerender manifest: #​82199
  • Turbopack: Share entrypoint template logic between Turbopack/webpack: #​82385
  • Add path to Image documentation: #​82329
  • [errors] revamp graceful degrade error boundary: #​82474
  • Fix: Do not force BLOCKING_STATIC_RENDER for DOM bots: #​82427
  • Update build-complete for adapter API: #​82452
  • fix: swc tracing: #​82470
  • Upgrade React from 7deda941-20250804 to 3958d5d8-20250807: #​82447
  • Delete abandoned segment parsing code: #​82458
  • Upgrade React from 3958d5d8-20250807 to f1e70b5e-20250811: #​82534
  • Upgrade React from f1e70b5e-20250811 to ac7820a9-20250811: #​82543
  • fix(next/image): use image-size pkg as additional format detector: #​82538
  • fix: add ?dpl to fonts in /_next/static/media part 2: #​82488
  • Fix: Disambiguate Mediapartners-Google user agent: #​82536
  • Fix: Allow dynamic rendering when root layout is wrapped in Suspense: #​82378
  • wrap devtools stories in context providers: #​82345
  • [devtools] Remove unused componentStackFrames field: #​82395
  • [Deprecation Warnings]: add amp deprecation warning: #​82551
  • fix(next/image): handle empty buffer and experimental flag for skipMetadata: #​82569
  • fix: amp deprecation warning should assert on user config: #​82572
  • fix: Prevent duplicate file entries in modulesCode: #​82550
  • feat: Turbopack typed links: #​81528
  • Upgrade React from ac7820a9-20250811 to 1dc3bdea-20250812: #​82575
  • [Runtime prefetch] resolve runtime APIs in a separate task: #​82475
  • Clean up unused code in restart server button: #​82409
  • chore: Update babel types and do some light cleanup of babel loader: #​82486
  • [Cache Components] Avoid cache misses when resuming a cached page: #​82578
  • chore: Remove unused Map support from next/dynamic transform: #​82487
  • [Deprecation Warnings]: add unstable_rootParams deprecation warning: #​82582
  • Turbopack: set window.next.turbopack instead: #​82580
  • fix router handling when setting a location response header: #​82588
  • Fix: Resolve <Head> PPR resume mismatch by search params: #​82587
  • Upgrade React from 1dc3bdea-20250812 to f1222f76-20250812: #​82595
  • [devtools] Move ShadowRoot into context: #​82296
  • Remove React 17 logic from Pages Router static generation: #​82604
  • [Segment Cache] Optimistic prefetch for search params: #​82586
  • Handle badged console calls when dimming console output: #​81889
  • run config deprecation checks only on user-provided configuration: #​82613
  • [devtools] Remove unused code: #​82299
  • [turbopack] Update Turbopack build warning message : #​82591
  • [Cache Components] Disallow sync access of cookies & headers at runtime: #​82564
  • feat: type guard file generation: #​81400
  • fix: find root dir on fs root: #​82590
  • fix: use in operator to check dev indicator option when its obj: #​82629
  • Upgrade React from f1222f76-20250812 to 379a083b-20250813: #​82642
  • feat(next/image): warn when images.localPatterns is undefined and src has query: #​82627
  • Turbopack: add turbo_tasks::spawn: #​82634
  • Fix fetch logging after revalidation via server action: #​82643
  • Fix request type in typed route validator: #​82644
  • fix: use .js extension for relative imports: #​82669
  • feat: add RouteContext type for app router route handlers: #​82670
  • Add additional handling for build-complete: #​82671
  • fix: Combine the hrtime tuple to get a better seconds representation: #​82687
  • test: migrate manifest tests to snapshot testing with normalizeManifest utility: #​82675
  • perf(router): replace LRU cache with optimized doubly-linked list implementation: #​82633
  • Turbopack: use a source content regexp for the react compiler: #​82631
  • Upgrade React from 379a083b-20250813 to a96a0f39-20250815: #​82691
  • fix: memory leak from cloneResponse: #​82678
  • Turbopack: Fix logic in HMR logging code that could emit a NaN build time: #​82389
  • fix: use turbopack.root value for outputFileTracingRoot to have consistent tracing root: #​82653
  • fix: return plain text 404 for invalid static asset paths: #​75111
  • Turbopack: show timing event for database compaction: #​82369
  • chore(test): update sharp api test: #​82740
  • [type] dynamic skip generating unused types: #​82755
Example Changes
  • Add Prisma ORM example to Next.js examples: #​75290
  • chore: Update with-supabase example to use getClaims(): #​81383
  • docs: Improve Content Security Policy documentation: #​80580
Misc Changes
  • Update Rspack development test manifest: #​81603
  • Allow beforePageLoad to be async: #​81650
  • Docs: POC: #​81419
  • chore(bot): update comment: #​81672
  • Fix build-native.ts on Windows: #​81673
  • Update Rspack development test manifest: #​81660
  • Update Rspack production test manifest: #​81661
  • Add create release branch workflow: #​81687
  • fix patch-next by adding missing script: #​81430
  • Turbopack: Generalize ImportedBinding effect creation to avoid as much special-casing of SimpleAssignTarget: #​81653
  • docs: Update redirects i18n documentation for App Router: #​81347
  • Include use-cache test suite in the Cache Components tests: #​81610
  • Improve error message for sync server functions: #​81705
  • [lint] keep lint-stage use faster linting: #​81710
  • [test] Fix app-static deploy test: #​81712
  • Fix: createRouterAct "reject" config: #​81720
  • Update Rspack development test manifest: #​81702
  • Update Rspack production test manifest: #​81701
  • Add an e2e test for the css serving issue: #​81683
  • chore: update username from 'nebrelbug' to 'bgub': #​81734
  • Turbopack: consistently name runtime chunk: #​81769
  • Turbopack: include more details in panic: #​81773
  • fix(turbopack) Adjust the way catchall routes are handled when a more specific parallel route exists: #​81634
  • Add trigger for v0 sync workflow: #​81645
  • Update Rspack production test manifest: #​81746
  • Update Rspack development test manifest: #​81747
  • Turbopack: Split DynamicEqHash trait into smaller traits in a separate re-usable crate: #​81741
  • [turbopack] Reuse shared Promise for loaded chunks: #​81755
  • Add VSCode tasks to show TypeScript compilation errors in problems view: #​81799
  • Turbopack: remove unneeded manifests for API routes: #​81536
  • [turbopack] use require to load chunks in our node runtime: #​81738
  • Turbopack: fix unhelpful error message when deleting folder fails: #​81718
  • Remove experimental.strictNextHead: #​81882
  • Remove some random commas: #​81875
  • Turbopack: Add cache for reqwest clients: #​81742
  • Update Rspack development test manifest: #​81878
  • Update Rspack production test manifest: #​81879
  • Turbopack: Track variable usage inside of visit_assign_target_pat: #​81654
  • Turbopack: Replace current_value set/restore mutation pattern with a safer with_pat_value helper: #​81696
  • Docs: Document global-not-found: #​81803
  • [router-act] Fixes related to segment inlining: #​81896
  • [test] Add dedicated test for error when client functions are called from server components: #​81930
  • Fix an issue in how css references are collected under next build --turbopack: #​81704
  • Turbopack: Update notify-rs crate, remove workaround for fixed bug: #​81909
  • Update Rspack development test manifest: #​81913
  • Update Rspack production test manifest: #​81914
  • Turbopack: Use workaround for rustc miscompilation bug on macos intel: #​81950
  • [test] workaround test that needs stylus: #​81965
  • Bump to swc_sourcemap 9.3.3: #​81971
  • fix(Turbopack): Remove the duplicate SlowFilesystem warning: #​81972
  • CI: add workflow_branch data to deploy test failure message: #​81949
  • Update Rspack production test manifest: #​81961
  • Update Rspack development test manifest: #​81960
  • [turbopack] Rename ClientReferenceSet: #​81942
  • Turbopack: fix scope hoisting variable renaming bug: #​81640
  • Revert "[test] workaround test that needs stylus": #​81981
  • [docs] fix rewrites example wording: #​81985
  • Turbopack: improve named spans in tracing: #​81458
  • Turbopack: update mimalloc: #​81993
  • Turbopack: Update bundled webpki-roots: #​81906
  • Allow specifying CLI version for e2e deploy: #​81998
  • Turbopack: Move fs watcher anyhow::Context import inline to fix compilation warnings: #​81997
  • Add link to manually trigger preview builds: #​81977
  • Update Rspack production test manifest: #​82007
  • Update Rspack development test manifest: #​82008
  • Turbopack: Make turbo-tasks-fetch a bit more OOP-like: #​81995
  • Update Rspack development test manifest: #​82038
  • [test] Allow running lint-eslint on a specific directory: #​82009
  • Adjusted the warning message to be more descriptive: #​82052
  • Update Rspack production test manifest: #​82039
  • [turbopack] mark rcstr! allocated Rcstr values as 'static' and stop refcounting them: #​81994
  • Turbopack: only schedule tasks when task becomes active on active counter increase: #​81414
  • docs: Update styling example links : #​82111
  • [turbopack] Documentation fixes for rcstr! and a tiny improvement to hash: #​82084
  • [turbopack] Improve our const compatible hash routine performance: #​82088
  • Update Rspack production test manifest: #​82139
  • Turbopack: Fix accidental doctest in globset module license: #​82127
  • [turbopack] tweak the ui of the module-cost benchmark: #​81817
  • [test] revert config change in hello-world test: #​82173
  • docs: cookies.set encode option is not supported: #​82154
  • docs: change Dashboard component to async for session verification: #​81880
  • Update create-release-branch to disable test-new-tests: #​82182
  • docs: update cacheTag.mdx: #​82051
  • Turbopack: Make the "non-recursive" logic for the fs watcher a runtime flag instead of a build-time one: #​82031
  • Turbopack: Add a flag to the fs watch fuzzer to print missing but expected invalidations: #​82131
  • docs: fix typo in docs: #​82186
  • docs: Add more links to app docs root: #​82126
  • docs: App Router's React version: #​82180
  • Turbopack: Use Path/PathBuf for all of the invalidation logic: #​82132
  • Turbopack: Use a BTreeMap in InvalidatorMap to avoid many O(n) traversals when finding child paths: #​82133
  • Turbopack: Watch the root and every parent directory in non-recursive mode: #​82129
  • Turbopack: Remove unused ignored_subpaths feature from DiskWatcher: #​82210
  • Grammar fix on forms.mdx: #​82209
  • Update Rspack production test manifest: #​82108
  • Update Rspack development test manifest: #​82192
  • Turbopack: implement shutdown for backing storage correct: #​82220
  • Update Rspack development test manifest: #​82227
  • fix: turbopack loader ipc field mapping: #​82112
  • Turbopack: fix dev test manifest: #​82241
  • fix(Turbopack): Fix duplicated layout rendering in edge cases: #​81948
  • [turbopack] Adopt rcstr! more consistently: #​80552
  • Turbopack: use mimalloc v3: #​82221
  • Turbopack: no need to avoid allocations anymore: #​82222
  • Turbopack: ensure max merge segments is respected accros families: #​82223
  • docs: to indicate that redirect can be used in both server and client…: #​82092
  • Turbopack: improve compression dictionary generation: #​80061
  • test: reduce artificial timeouts in runtime prefetch tests: #​82276
  • Turbopack: fix glob with empty alternative branch: #​82275
  • [turbopack] Optimize ESM exports: #​82214
  • [turbopack] Fix a snapshot test: #​82281
  • [turbopack] Avoid calling find_server_entries in the whole_app_module_graph case: #​81943
  • docs: Add Tolgee to app router localization resources: #​81366
  • Update Rspack development test manifest: #​82268
  • Update Rspack production test manifest: #​82267
  • Turbopack: Remove the lazy-regex dependency: #​82288
  • Turbopack: move block offsets from header to footer: #​82047
  • Turbopack: Streaming write of SST files: #​82048
  • [turbopack] Use Arrays instead of objects to bootstrap chunks: #​81877
  • Turbopack: set env in tracing context: #​75254
  • [test] Update snapshots: #​82327
  • chore: fix eslint-typechecked-require with template: #​82328
  • docs: add React Developer Tools section for debugging: #​82320
  • docs: Clarify revalidatePath : #​82142
  • Turbopack: Update jsonc-parser, dedupe with SWC: #​82343
  • [turbopack] vibecode a benchmark runner for module-cost: #​82287
  • Documentation: Removed reference to treeShaking in 08-turbopack.mdx: #​82352
  • Turbopack: run styled-jsx after typescript transform: #​82359
  • Turbopack: pass is_development to next_page_config: #​82363
  • refactor(turbo-tasks-fs): change FS to_sys_path to be synchronous: #​82341
  • Turbopack: clean up some old TODOs: #​82364
  • Docs: Updating guides on PPR and ISR: #​81307
  • fix(Turbopack): Address duplicated metadata image modules when they are impored: #​82367
  • Bump swc to 35: #​82237
  • docs: CSP with SRI corrections: #​82365
  • fix: implications of global-not-found skipping 'normal' rendering: #​82399
  • update rspack-dev-tests-manifest for failing tests: #​82414
  • Docs: Add more info about TW and TW 3 option: #​82203
  • Update Rspack production test manifest: #​82397
  • fix(turbopack): external module shouldn't wrap by esm when type as global: #​82374
  • docs: polyfills usage in app router: #​80447
  • global-error, revalidatePath and PWA headings: #​82408
  • chore(Next.js sync): open draft PRs immediately: #​82424
  • Turbopack: improve loop breaks: #​77964
  • Update Rspack development test manifest: #​82433
  • Turbopack: remove a few clones: #​82435
  • Update Rspack production test manifest: #​82432
  • Update to run rspack tests on release: #​82453
  • Docs/polyfills fix pages only: #​82462
  • Turbopack: enable side effects optimization by default in all test cases: #​82463
  • Turbopack: split basic side effects optimization test: #​82464
  • Turbopack: add more side effects test cases: #​82465
  • Turbopack: refactor side effects optimization: #​82466
  • Devcontainer: Replace Dockerfile with prebuilt image+features: #​82450
  • Update Rspack development test manifest: #​82461
  • docs: update revalidatePath, revalidateTag docs to be more consistent + highlight res.revalidate case: #​82479
  • use correct workflow id for v0: #​82484
  • Turbopack: increase time before persisting: #​82403
  • [turbopack] Fix a small issue in the analyzer where we wouldn't skip assignments to free vars that were just identifiers: #​82392
  • [turbopack] Promote exports and module to factory parameters for cjs: #​82285
  • [turbopack] Fix the build under --features=tokio_tracing: #​81979
  • Turbopack: Restore watchers for children when using non-recursive FS watcher: #​82130
  • Turbopack: fix CSS module references, take 2: #​82448
  • Turbopack: respect productionBrowserSourceMaps: #​78014
  • chore: Ignore compiled folder in ripgrep/ast-grep/ag/etc: #​82482
  • Update Rspack development test manifest: #​82526
  • Update Rspack production test manifest: #​82525
  • Test that there are no server-side CSS chunks: #​82471
  • docs: experimental config browserDebugInfoInTerminal: #​82532
  • Turbopack: Rework watcher data structures, store watched list and watcher behind the same RwLock: #​82258
  • Bump React types: #​82541
  • Turbopack: fix postcss in RSC CSS: #​82554
  • Turbopack: improve Lightning CSS error handling: #​82561
  • [turbopack] Handle relative paths before matching in node file traces: #​82539
  • Turbopack: symlinks and parent globs in outputFileTracingIncludes: #​82528
  • Turbopack: fix module rules for .module.scss: #​82570
  • Turbopack: Watch parent directories before watching children in non_recursive_helpers::start_watching_dir_and_parents: #​82454
  • feat(turbo-tasks-hash): update twox-hash: #​82518
  • Update Rspack development test manifest: #​82558
  • Update Rspack production test manifest: #​82557
  • [turbopack] Fix a crash under turbopackPersistentCaching: #​82592
  • Turbopack: don't block on parsing traced modules: #​82602
  • Docs/feedback round aug: #​82549
  • Turbopack: avoid using rayon in favor of tokio tasks: #​82256
  • Turbopack: support requests with dynamic part in module name: #​82401
  • Cleanup shouldRunTurboDevTest usage: #​82603
  • Update Rspack production test manifest: #​82601
  • Update Rspack development test manifest: #​82600
  • Fix generate-metadata.mdx typo: #​82624
  • docs: fix typos: #​82503
  • Turbopack: fix edge function name: #​82617
  • Turbopack: avoid REEXPORTED_OBJECTS property on Module object: #​82622
  • Turbopack: patch sourcemap crate: #​82641
  • Turbopack: do not run a compaction when opening the db: #​82635
  • Revert "Turbopack: avoid using rayon in favor of tokio tasks (#​82256)": #​82658
  • [turbopack] Fix a bug where our global rewrite could introduce a TDZ issue: #​82659
  • chore: Bump Turborepo: #​82652
  • test: improve tests for typed route validation: #​82660
  • docs: add experimental.typedEnv: #​82647
  • Turbopack: use published sourcemap crate: #​82646
  • chore: set Turborepo version correctly: #​82680
  • Turbopack: run snapshot in normal task instead of blocking task: #​82636
  • docs: fix typo in vitest.mdx: #​82690
  • Update Rspack production test manifest: #​82681
  • Update Rspack development test manifest: #​82682
  • Remove stability disclamer on Node runtime in middleware: #​82181
  • Add metadata to server reference manifest: #​82695
  • Turbopack: refactor idle process queue and fix bugs and race conditions: #​82630
  • Turbopack: Stop persisting background task correctly on stop: #​82727
  • Turbopack: fix race condition in test case: #​82728
  • [turbopack] Remove a debug assertions in client references endpoint: #​82725
  • Turbopack: use bail instead of panic: #​82745
  • Update Rspack production test manifest: #​82732
  • fix(turbopack): webpack-loaders failed to resolve relative path: #​82720
  • create-next-app: use Turbopack for both dev and build: #​82753
  • fix: make sure validator.ts uses relative paths for imports: #​82761
Credits

Huge thanks to @​unstubbable, @​gnoff, @​RobPruzan, @​mischnic, @​huozhi, @​delbaoliveira, @​styfle, @​ankur-arch, @​skt-t1-byungi, @​ijjk, @​Han5991, @​SyMind, @​Anas-github-acc, @​hf, @​bgw, @​wyattjoh, @​ztanner, @​prateekkish, @​eps1lon, @​lubieowoce, @​timneutkens, @​acdlite, @​lukesandberg, @​bgub, @​Cy-Tek, @​padmaia, @​raunofreiberg, @​devjiwonchoi, @​sokra, @​MidnightDesign, @​stephenliang, @​allenzhou101, @​icyJoseph, @​gaojude, @​remcohaszing, @​wesjune, @​wbinnssmith, @​m1abdullahh, @​Sayakie, @​startracex, @​chadfennell, @​dlehmhus, @​Jarred-Sumner, @​candymask0712, @​stepan662, @​PuppyOne, @​huperniketes, @​xusd320, @​MichalMoravik, @​fireairforce, @​kitfoster, @​feedthejim, @​r34son, @​guoci, @​JamBalaya56562, @​adkile, @​snyamathi, and @​kachkaev for helping!

v15.4.8

Compare Source

Please see CVE-2025-66478 for additional details about this release.

v15.4.7

Compare Source

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

Core Changes
  • fix router handling when setting a location response header #​82588
Credits

Huge thanks to @​ztanner for helping!

v15.4.6

Compare Source

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

Core Changes
  • fix: _error page's req.url can be overwritten to dynamic param on minimal mode (#​82347)
  • fix: add ?dpl to fonts in /_next/static/media (#​82384)
Credits

Huge thanks to @​devjiwonchoi, @​ijjk, and @​styfle for helping!

v15.4.5

Compare Source

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

Core Changes
  • Fix API stripping JSON incorrectly (#​82062)
  • Fix i18n fallback: false collision (#​82158)
  • Revert "Fix tracing of server actions imported by client components (#​82167)
  • Ensure setAssetPrefix updates config instance (#​82165)
  • Turbopack: update mimalloc (#​82166)
  • fix(next/image): fix image-optimizer.ts headers (#​82175)
  • fix(next/image): improve and simplify detect-content-type (#​82174)
Credits

Huge thanks to @​ijjk, @​sokra, and @​styfle for helping!

v15.4.4

Compare Source

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

Core Changes
  • Fix dynamicParams false layout case in dev (#​82026)
  • Turbopack: fix scope hoisting variable renaming bug (#​81640)
  • Upgrade to swc v33 (#​81750)
  • Revert "[metadata] use https protocol for schema urls" (#​81934)
Credits

Huge thanks to @​bgw @​mischnic @​huozhi @​lukesandberg and @​ijjk for helping!

v15.4.3

Compare Source

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

Core Changes
  • Turbopack: fix dist dir on Windows (#​81758)
Credits

Huge thanks to @​mischnic for helping!

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.6

Compare Source

Please see CVE-2025-66478 for additional details about this release.

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.6

Compare Source

Please see CVE-2025-66478 for additional details about this release.

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!

v15.2.1

Compare Source

Core Changes
  • Unify Link and Form prefetching: #​76184
  • Turbopack: Ensure server actions sourcemaps tests pass: #​76157
  • [dev-overlay] control dark theme in one place: #​76528
  • [dev-overlay] change css var for terminal: #​76590
  • [dev-overlay] Discriminate stack frame settled typed: #​76517
  • Remove obsolete sourcePackage references: #​76550
  • refactor: remove unused variable in externals handling: #​76599
  • fix: Add popular embedding libraries to serverExternalPackages: #​76574
  • [Segment Cache] Implement hash-only navigations: #​76179
  • Webpack: abstract away getting compilation spans: #​76579
  • report compiler duration for webpack and improve numbers: #​76665
  • [dev-overlay] fix dark theme missing close bracket: #​76672
  • Remove revalidate property from incremental cache ctx for FETCH kind: #​76500
  • [dev-overlay] fix: env name label style was out of sync with error type label: #​76668
  • Turbopack: avoid celling source maps before minify: #​76626
  • refactor(CI): Merge all four bundler test manifest scripts into one: #​76652
  • [metadata] fix duplicate metadata for parallel routes: #​76669
  • [Segment Cache] Omit from bundle if flag disabled: #​76622
  • [Segment Cache] Support output: "export" mode: #​75671
  • [Segment Cache] Refresh on same-page navigation: #​76223
  • [metadata] re-enable streaming metadata with PPR: #​76119
  • [Segment Cache] Search param fallback handling: #​75990
  • [Segment Cache] Fix: canonicalURL omits origin: #​76444
  • fix metadata basePath for manifest: #​76681
  • Propagate expire time to cache-control header and prerender manifest: #​76207
  • Show revalidate/expire columns in build output: #​76343
  • Gate alternate bundler behind canary only: #​76634
  • [dynamicIO] routes with dynamic segments should be able to be static in dev: #​76691
  • [repo] upgrade ts 5.8.2: #​76709
  • [metadata]: ensure metadata boundary is only rendered once on client nav: #​76692
  • [metadata] clean up redudant options: #​76712
  • Fix uniqueness detection for generateStaticParams: #​76713
  • Upgrade React from 22e39ea7-20250225 to d55cc79b-20250228: #​76680
  • [Turbopack] Compute module batches and use them for chunking: #​76133
  • [Dev Tools] Improve keyboard interactions for menu & overlays: #​76754
  • Keep server code out of browser chunks: #​76660
  • Turbopack: inline minify into code generation and make it a plain function instead of a turbo tasks function: #​76628
  • fix edge runtime asset fetch in pages api: #​76750
  • Update use-cache-unknown-cache-kind.test.ts snapshot for alternate bundler: #​76682
Example Changes
  • docs: fix reading params code blocks: #​76705
Misc Changes
  • fix(rustdoc): Fix rustdoc warnings, block on rustdoc failures in CI: #​76448
  • Update more global turbo CLI usage: #​76576
  • docs: Node.js runtime support for Middleware: #​76556
  • build: Update swc_core to v16.0.0: #​76414
  • Turbopack: prevent panic in swc issue emitter: #​76595
  • Unflake parallel-routes-revalidation test: #​76600
  • Fix octokit.rest.issues.addLabels call: #​76601
  • [test] Use new Redbox matchers in app/ error-recovery: #​76552
  • [test] Use new Redbox matchers in pages/ ReactRefreshLogBox-app-doc: #​76551
  • Run nightly bundler integration tests also with React 18: #​76606
  • 15.2: Add version history for devIndicators and note on deprecated options: #​76611
  • 15.2 docs: document missing htmlLimitedBots option: #​76616
  • Update bundler production test manifest: #​76584
  • Update bundler development test manifest: #​76585
  • Fix test after CI switched to pnpm 10: #​76615
  • chore(cna): fix theme extend for tailwind v4: #​76583
  • [test] Use new Redbox matchers in app/ ReactRefreshLogBoxMisc: #​76563
  • Don’t use native built-ins for additional bundler: #​76577
  • Revert "Run nightly bundler integration tests also with React 18": #​76640
  • Update bundler production test manifest: #​76643
  • Update bundler development test manifest: #​76644
  • Turbopack: dedupe middleware-manifest entries: #​76621
  • Turbopack: Improve edge tests: #​76607
  • Turbopack: add test test for css order: #​76675
  • Turbopack: fix order of chunk items in cycles: #​76676
  • [ci] Fix test-turbopack-integration not having any shards : #​76355
  • Update Turbopack development test manifest: #​76658
  • Update Turbopack production test manifest: #​76659
  • fix(CI): Upload to areweturboyet immediately after a manifest is updated, not only on a fixed cron schedule: #​76688
  • Update test snapshots for alternative bundler [4/n]: #​76578
  • fix(turbopack): Fix analysis of private properties: #​76654
  • Turbopack: Simplify emitDecoratorMetadata test: #​76678
  • [test] Use new Redbox matchers in pages/ ReactRefreshRegression: #​76743
  • [test] Remove describeVariants helper: #​76631
  • [test] Fix flaky error-recovery test: #​76753
  • [test] Use new Redbox matchers in app/ dynamic-error: #​76744
  • [test] Use new Redbox matchers in app/ rsc-runtime-errors: #​76745
  • Turbopack: avoid panic in module batches: #​76757
  • Revert "test: temporarily disable after deploy test": #​74990
  • toDisplayRedbox(): replace all occurrences of testDir: #​76618
  • Fix: missing close brace in demo code: #​76549
  • Disable flaky Turbopack tests: #​76760
  • feat(CI): Revalidate vercel data cache on areweturboyet after uploading data to KV store: #​76693
  • chore(github): move top prs and feature requests to different Slack channel: #​76764
  • Fix flaky Bun test: #​76763
Credits

Huge thanks to @​acdlite, @​bgw, @​ijjk, @​molebox, @​kdy1, @​timneutkens, @​devjiwonchoi, @​mischnic, @​unstubbable, @​eps1lon, @​huozhi, @​philipithomas, @​delbaoliveira, @​samcx, @​wbinnssmith, @​sokra, @​gnoff, @​leerob, @​ztanner, @​raunofreiberg, @​lubieowoce, and @​LihaoWang for helping!

v15.2.0

Compare Source

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

Huge thanks to @​ijjk, @​unstubbable, @​bgw, @​gnoff, @​eps1lon, @​ztanner, @​mischnic, @​Marukome0743, @​leerob, @​gaojude, @​lubieowoce, @​acdlite, @​kdy1, @​JamBalaya56562, @​creationix, @​noreiller, @​samcx, @​delbaoliveira, @​styfle, @​abdonrd, @​ollyw, @​wyattjoh, @​devjiwonchoi, @​aymericzip, @​davidhu2000, @​attilarepka, @​devpla, @​dydals3440, @​huozhi, @​wbinnssmith, @​suu3, @​PapatMayuri, @​Sahil4883, @​abyii, @​molebox, @​sokra, @​maciej-ka, @​abvthecity, @​damiensedgwick, @​alitas, @​RiskyMH, @​ytreister, @​sommeeeer, @​n1ckoates, @​yongholeeme, @​spidersouris, @​gurkerl83, @​cassiossantos, @​Netail, @​tknickman, @​eur00t, @​cseas, @​nnnnoel, @​timneutkens, @​Manoj-M-S, @​lfades, @​sebmarkbage, @​matmannion, @​mikeboensel, @​nphmuller, @​apostolos, @​k15a, @​pavelee, @​locothedev, @​vexcat, @​Zach-Jaensch, @​decepulis, @​gadcam, @​lukahartwig, @​jsanford8, @​RobinMalfait, @​raunofreiberg, @​mohsen1, @​skushagra, @​feedthejim, @​amannn, @​HQidea, @​jrandolf, @​smit-err, @​littledivy, @​k35o, @​martinsione, @​CvX, @​msereniti, @​Timer, @​Iftee97, @​chibicode, @​RobPruzan, @​padmaia, @​PlagueFPS, @​bjunix, @​maximevtush, @​michaelven, @​sedlukha, @​johannpinson, @​AxelUser, @​Nayeem-XTREME, @​IcaroG, @​blurrah, @​lachlanjc, @​ashi009, @​conico974, @​raphaelcosta, @​dulmandakh, @​khuezy, @​Knoa0405, @​wangsijie, @​stefanprobst, @​wentsul, @​loopy-lim, @​bratvanov, @​hedgeday, @​cassian-goode, @​artemszelenov, and @​saltcod for helping!

v15.1.9

Compare Source

Please see CVE-2025-66478 for additional details about this release.

v15.1.8

Compare Source

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

Core Changes
  • 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)
Credits

Huge thanks to @​amannn, @​lubieowoce, and @​ztanner for helping!

v15.1.7

Compare Source

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

Core Changes
  • fix: work around setTimeout memory leak, improve wrappers (#​75727)
  • add additional x-middleware-set-cookie filtering (#​75869)
  • fix: ensure lint worker errors aren't silenced (#​75766)
Credits

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

v15.1.6

Compare Source

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

Core Changes
  • fix: don't memory-leak promises passed to waitUntil (#​75041)
  • backport: fix prerender issue with intercepting routes + generateStaticParams (#​75170)
Credits

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

v15.1.5

Compare Source

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

Core Changes
  • Fix missing revalidate with notFound() (#​75009)
  • fix: when metadatabase is set we should not warn (#​74840)
  • Fix @​vercel/og license SPDX expression (#​74745)
  • fix: ts language server rule metadata should allow null (#​74704)
  • fix: eslint rule of using img in metadata routes (#​74864)
  • Fix presentation when onerror receives an event without error (#​74643)
  • fix fetch lock not being consistently released #​74623 (#​75028)
Credits

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

v15.1.4

Compare Source

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

Core Changes
  • backport: force module format for virtual client-proxy (#​74608)
  • Fix prerender tags when notFound is called (#​74607)
  • Use provided waitUntil for pending revalidates (#​74604)
  • Feature: next/image: add support for images.qualities in next.config (#​74588)
  • Chore: docs: add missing search: '' on remotePatterns (#​74587)
  • Chore: docs: update version history of next/image (#​73923) (#​74570)
  • Chore: next/image: improve imgopt api bypass detection for unsupported images (#​74569)
Credits

Huge thanks to @​ and @​ for helping!

v15.1.3

Compare Source

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

Core Changes
  • Retry manifest file loading only in dev mode: #​73900
  • Use shared worker for lint & typecheck steps: #​74154
Credits

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

v15.1.2

Compare Source

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

Core Changes
Credits

Huge thanks to @​ztanner for helping!

v15.1.1

Compare Source

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

Core Changes
Credits

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

v15.1.0

Compare Source

Core Changes
  • fix: decrypt bound args before generating a cache key: #​72463
  • Fix the path to the next/experimental/testing/server export: #​72527
  • Expand server-source-maps scenarios to cover Edge runtime: #​72288
  • Ensure logged errors in Edge runtime include the stack: #​72394
  • fix: added cache control headers for static app routes: #​72521
  • capture console issues as console errors: #​72468
  • Add expireTag and expirePath APIs: #​72485
  • fix: try/catch access to localStorage within __NEXT_APP_ISR_INDICATOR useEffect: #​72362
  • Move client build ID to a global variable: #​72592
  • refactor(turbopack): Remove swc_css: #​72602
  • Bypass source map dev middleware for client chunks: #​72581
  • chore: remove rc from URL: #​72599
  • improve no-img-element lint error message: #​72410
  • Combine bound "use cache" closure args into a single parameter: #​72587
  • [Turbopack] add BackendOptions and allow to disable dependencies, children and storage: #​72426
  • Omit unused args when calling "use cache" functions: #​72506
  • Add experimental clientSegmentCache flag: #​72626
  • Add compiler.define option: #​71802
  • Fix static indicator with dynamicIO: #​72631
  • Allow usage of Node.js prereleases: #​72635
  • improved network url in (dev) cli: #​72634
  • chore: update getting-started/react-essentials path: #​72250
  • Fix static indicator for pure IO case: #​72639
  • Bump the monorepo packages TypeScript to 5.6.3: #​72625
  • Bump @capsizecss/metrics to 3.4.0 for Geist Google Font: #​72746
  • refactor: remove unused asNotFound property: #​72585
  • Remove unused enabled config from server actions transforms: #​72755
  • Ensure Next.js is ignore-listed when used as external: #​72498
  • Bump eslint-plugin-react to 7.37.0: #​72759
  • upgrade amphtml-validator to 1.0.38: #​72645
  • fix multi-level redirect in server actions: #​72770
  • refactor: rename error boundary not-found to http-error-fallback: #​72586
  • Upgrade React from 5c56b873-20241107 to 7ac8e612-20241113: #​72768
  • Re-use randomly selected dev server port for automatic restarts: #​72771
  • Emit build error when "use cache" is used without dynamicIO enabled: #​72781
  • fix: not found bounary prop: #​72784
  • silence sass legacy-js-api warning: #​72632
  • [Segment Prefetch] Move access token to route tree: #​72775
  • Add internal affordances to show ignore-listed stackframes in terminal: #​72763
  • chore(turbopack): Centralize reqwest TLS feature configs in turbo-tasks-fetch: #​72526
  • Upgrade React from 7ac8e612-20241113 to 380f5d67-20241113: #​72819
  • Shorten unsourcemapped absolute locations in terminal stacktraces: #​72764
  • codemod: replace revalidate(Tag|Path) to expire(Tag|Path): #​72826
  • "Fix": Lift type check out of loop: #​72840
  • hide stack trace in CanaryOnlyError: #​72859
  • Allow missing CacheNodeSeedData during prefetch: #​72857
  • Add Segment Cache feature check to prefetch API: #​72861
  • Extract shared fetchFromServerResponse logic to separate functions: #​72865
  • [Segment Cache] Implement behavior on cache miss : #​72841
  • Emit build error for unknown cache kinds: #​72832
  • Resolve mdx plugins string format: #​72802
  • MDX: Only set experimental.turbo if enabled: #​72856
  • [Turbopack] change persistent caching option to a boolean: #​72458
  • refactor: generalize next route error helpers: #​72774
  • Ensure host is in allowed headers: #​72867
  • refactor: types for collected cache info in route modules: #​71434
  • feat(turbopack): Enable tree shaking for modules with dynamic imports: #​71692
  • Fix unhandled rejection in proxy-request: #​72530
  • chore(build): remove injecting fast refresh to custom loader logs: #​72870
  • ensure webpack worker exits bubble to parent process: #​72921
  • Fix sourcemaps for internal client boundaries: #​72922
  • Turbopack: thread tracing through to resolve results: #​72314
  • Upgrade vercel og: #​72954
  • Turbopack NFT: trace manifests and externals: #​72316
  • Turbopack: NFT followups: #​72517
  • Support custom servers with minimal node modules: #​72966
  • Add support for ignore-listing sources in index maps: #​72913
  • Turbopack: fix loading of externals on Edge: #​72349
  • Bump SWC used for transpiling Next.js sources: #​72993
  • fix: ensure HTML validity for the next-size-adjust meta tag: #​72994
  • Revert "Support custom servers with minimal node modules": #​73003
  • Allow CacheNode.loading to be a promise: #​72872
  • Properly encode dynamic access in segment prefetch: #​72874
  • [Segment Cache] Send <head> during route prefetch: #​72890
  • fix(next/image): improve svg heuristic for unoptimized: #​72970
  • [Segment Cache] Initial implementation: #​72875
  • Turbopack: Change edge wrapper to proxy exports : #​72502
  • experimental: css inlining: #​72195
  • Display where the env was loaded from when enabled typedEnv: #​70951
  • create forked impl for Link component: #​73019
  • remove unnecessary handling in forked Link components: #​73020
  • Pass down ignored field to error overlay: #​72925
  • remove locale from app link: #​73052
  • fix: server action redirects between multiple root layouts: #​73063
  • Add forbidden and unauthorized APIs: #​72785
  • chore: rename modules for better meaning and searching: #​73067
  • fix(next/image): reduce avif sharp effort from 4 to 3 for faster encoding: #​73030
  • (E2E) Log which config file is used for next start: #​73105
  • Remove extra space in envionment log: #​73108
  • remove inheritance from NextCustomServer: #​73005
  • Align navigation digest with message: #​73074
  • refactor: move redirect helpers into separate module: #​73118
  • Update font data: #​73115
  • Current behavior for fallbacks with async metadata and prefetching: #​73106
  • Revert "ensure webpack worker exits bubble to parent process (#​72921)": #​73136
  • Reapply "ensure webpack worker exits bubble to parent process (#​72921)": #​73138
  • Upgrade React from 380f5d6-20241113 to b01722d-20241114: #​73107
  • Implement metadata types support for exactOptionalPropertyTypes: #​72936
  • Reenable otel test for Turbopack: #​73093
  • Omit unnecessary cache wrapper import: #​73160
  • Increase max cache tags to 128: #​73124
  • Do not inline CSS in RSC payload for dynamic client nav: #​73182
  • fix(next/image): dpl query string should only be used for local images, not remote images: #​73184
  • feat(after): unflag unstable_after internals: #​73190
  • feat(after): allow using unstable_after in generateStaticParams: #​73217
  • Error on navigation API usage in pages router and middleware: #​73100
  • Undeprecate revalidate APIs and rename expire APIs: #​73193
  • Revert "codemod: replace revalidate(Tag|Path) to expire(Tag|Path)": #​73269
  • feat(after): wait for after-callbacks before server shutdown: #​72590
  • Fixed interception on a catch-all route: #​72902
  • add option to disable experimental CssChunkingPlugin: #​73286
  • rename cssChunkPlugin experimental options: #​73291
  • Replace the group frames with button for ignored frames: #​72964
  • handle pages router ignored frames: #​73280
  • fix(after): no request APIs in force-static: #​73321
  • fix(after): allow reading draftMode status in after: #​73324
  • [Turbopack] reland refactor filesystem writes to an effect based system: #​73294
  • fix(pages): dynamic css missing style after client navigation: #​72959
  • Make notFound() work in "use cache" page: #​73210
  • refactor(after): remove unnecessary conditionals: #​73447
  • Bump @swc/core to 1.9.3: #​73420
  • fix: running cleanup before server is initialized: #​73476
  • [edge-runtime] drop node16: #​73432
  • feat(after): allow request APIs in after (actions/handlers): #​73345
  • Sourcemap errors logged in Edge runtime: #​73438
  • refactor: rename ALS instances to prevent bad auto imports: #​73480
  • Show a proper error if a server function's bound args cannot be serialized: #​73471
  • remove unnecessary internal middleware header from response: #​73482
  • Ensure Issue Overlay sourcemaps externals in Turbopack: #​73439
  • Fix missing error message in terminal for bound args serialization error: #​73508
  • fix: memory leak from warnOnce(): #​73483
  • Upgrade React from b01722d5-20241114 to 1b1283ad-20241203: #​73506
  • Fix: Importing an ESM file from next/dist/client/.js fails: #​73485
  • fix: fixed dedupe response cloning: #​73274
  • Upgrade React from 1b1283ad-20241203 to de68d2f4-20241204: #​73525
  • fix(after): improve error message if promise arg rejects: #​73524
  • feat: added compression to resume data cache using deflate: #​73227
  • Use React 19 stable in Pages Router: #​73562
  • Use stable @types/react: #​73563
  • Cache the bound args encryption result for inline server functions: #​73521
  • chore: remove non-existent hash fragments from URLs: #​73165
  • next-upgrade: Ensure highest versions are used not latest: #​73566
  • Upgrade React from de68d2f4-20241204 to 1c9b1387-20241204: #​73565
  • Use consistent error formatting in terminal: #​71909
  • [Segment Cache] Interception routes: #​73434
  • Upgrade to typescript 5.7: #​73594
  • [Segment Cache] Use LRU to manage cache data : #​73486
  • [Segment Cache] Add isPartial to segment prefetch : #​73528
  • Fix missing client reference manifest error when using route groups: #​73606
  • feat(after): stabilize unstable_after: #​73605
  • [Segment Cache] Add isHeadPartial: #​73530
  • fix: do not add suffix for sitemap under group routes: #​73570
  • Dynamic IO: Improve error handling: #​73607
  • fix: Update @​swc/helpers: #​73666
  • Upgrade React from 1c9b1387-20241204 to 7283a213-20241206: #​73608
  • next-codemod(upgrade): handle absence of scripts in package.json: #​73688
  • Add inlineCss trade-offs/gotchas and remove canary check: #​73609
  • Ignore-list stack frames in node_modules even if not explicitly ignore-listed by their sourcemaps: #​73689
  • Remove ignore for anonymous stack frame: #​73610
  • test: move HMR Error Recovery test to a separate file: #​73592
  • test: move HMR basic test to a separate file: #​73612
  • fixes webpack persistent caching in development and add test case for persistent caching: #​73697
  • fix: empty generateStaticParams should still create an ISR route: #​73358
  • Limit the number of concurrently open file watchers on macos: #​73741
  • fix: warnOnce() lru: #​73742
  • [Segment Cache] Respond with 204 on cache miss: #​73649
  • [Segment Cache] Skip dynamic request if possible: #​73540
Example Changes
  • example: add more files to playwright .gitignore: #​72447
  • examples: update app-dir-i18n-routing to v15: #​72636
  • chore(example): add example for image optimization with secure compute: #​72641
  • examples: update app-dir-i18n-routing to v15: #​72642
  • examples: polish some README.md: #​72117
  • examples(with-supabase): fix action type error: #​72783
  • use explicit resource management for sandbox: #​72780
  • update: remove unnecessary in Dockerfile: #​72534
  • Fix Mongoose example failed build due to env variable not found: #​72918
  • (example) using await params when dynamic routing: #​72896
  • Updated the example of with-styled-jsx-scss to utilize the App Router.: #​70567
  • Updated the example of with-styled-jsx-plugins to utilize the App Router: #​70663
  • Updated the example of with-unstated to utilize the App Router.: #​73211
  • updated with-react-foundation example to utilize the App router.: #​73243
  • updated with-plausible example to utilize the app router.: #​73255
  • updated with-cssed example to utilize the app router.: #​73348
  • updated with-babel-macros example to utilize the app router.: #​73347
  • updated image-legacy-component example to utilize the app router.: #​73344
  • updated with-styletron example to utilize the app router.: #​73252
  • updated with-context-api example to utilize the App Router.: #​73316
  • updated with-mqtt-js example to utilize the App Router.: #​73303
  • chore(examples): update api-routes-cors: #​73408
  • chore: release turbopack npm packages: #​73443
  • examples: remove app-dir in i18n-routing directory name: #​73453
  • examples: move Postgres example: #​73531
  • Bump examples/** Eslint to v9: #​73560
  • Update with next sass example: #​73548
  • examples: remove next-env.d.ts files: #​73673
  • examples: update with-sass README.md: #​73668
  • examples: remove next-offline example: #​73675
  • examples: remove the old files from with-postgres: #​73587
  • examples: remove with-emotion-* directories: #​73674
  • updated with-ionic-typescript example to utilize the App Router.: #​73418
  • examples: update with-styletron README.md: #​73411
  • examples: update with-babel-macros README.md: #​73410
  • examples: update with-plausible README: #​73305
  • examples: unify related CMS examples in README: #​73247
  • examples: fix view source pathname at image-legacy-component: #​73414
  • examples: remove with-styled-components-babel: #​73229
  • examples: replaced GTM component with GA in Google Analytics example: #​73597
  • examples: introduce LaunchPad in strapi: #​73244
  • examples: remove with-storybook-styled-jsx-scss: #​73228
Misc Changes
  • Revert "[Turbopack] add rocksdb": #​72505
  • [Docs]: Remove try catch and link to error handling docs: #​72500
  • [Turbopack] improve performance of the trace server: #​71661
  • Docs: Move next.config.js API pages under a config folder, fix headings in TS and ESLint config pages: #​72465
  • Skip canary checks during internal development with VSCode: #​72504
  • Devlow snowflake backend: use milliseconds instead of seconds for event time: #​72490
  • [Turbopack] add TODO comment: #​72510
  • docs: unify the header deps by removing #: #​72451
  • fix: remove unnecessary fragment: #​72492
  • Fix grammatical error: remove unnecessary 'a' in 03-server-actions-and-mutations.mdx: #​72496
  • docs: fix broken link: #​72169
  • codemod(turbopack): Replace return Err(anyhow!()) with anyhow::bail!(): #​72487
  • Upgrade React from 66855b96-20241106 to 5c56b873-20241107: #​72469
  • fix(turbopack): Remove self-references from tree shaking results: #​72567
  • Turbopack: Don't run PostCSS on internal assets: #​72579
  • Update swc_core to v5.0.4 from v5.0.1: #​72604
  • (e2e) module-level patchFileDelay flag: #​72439
  • docs: remove unstable_after from Dynamic APIs: #​72595
  • chore: release turbopack npm packages: #​72491
  • Include bound args param in server reference information byte arg mask: #​72588
  • [Turbopack] fix bug where task was not recomputed when stale: #​72509
  • CNA: prompt enable turbopack value to true: #​72616
  • docs(use-cache): add missing function to page component examples: #​72620
  • docs(data-fetching): fix static params as promise examples : #​72565
  • Re-enable fetch logging test - HMR: #​72640
  • [Turbopack] migrate benchmark to new backend: #​72457
  • test: add wait for the error page navigation: #​72760
  • CNA: use eslint 9: #​72762
  • CNA: replace geist font from local to google: #​72618
  • fix(turbopack): Depend on side effect from import binding: #​72601
  • chore: keep create-next-app messages and docs the same: #​72444
  • ci: flake detection should run in both bundlers: #​72773
  • [Turbopack] reduce nesting: #​72747
  • docs: update file structure: #​72748
  • chore(cna): switch to .mjs tailwind config: #​72124
  • [Turbopack] fix collectibles counting and aggregation: #​72609
  • [Turbopack] implement dispose root task: #​72611
  • feat(turbopack): Merge single-pointer nodes in reverse direction: #​72571
  • test: fix hydration error on not-found test texture: #​72818
  • docs(turbo-tasks): Improve RcStr docs: #​72825
  • fix(turbopack): type error when "dynamic_embed_contents" is on: #​72828
  • [Turbopack] make issue ordering stable: #​72751
  • refactor(turbopack): Use ResolvedVc for turbopack crate: #​72791
  • refactor(turbo-tasks): Simplify most type bounds on Vc and related types: #​72823
  • fix(turbopack): Fix CSS Module renaming behavior for @container: #​72607
  • refactor(turbopack): Cleanup tree shaking graph logic: #​72836
  • [Turbopack] fix hanging waiting on in progress cells: #​72758
  • [Turbopack] avoid writing manifests in data/rsc variant of page: #​72767
  • Consolidate server actions transform errors into emit_error function: #​72811
  • refactor(turbo-rcstr): Move turbo_tasks::RcStr into it's own crate: #​72858
  • Add explicit section about type overriding for v15: #​72866
  • refactor(turbopack): Use ResolvedVc for turbopack-ecmascript: #​72564
  • refactor(turbopack): Use graph for server action workaround: #​72812
  • [Turbopack] refactor filesystem writes to an effect based system: #​72847
  • Fix sourcemaps for async Turbopack chunks: #​72827
  • docs(turbopack): Document build dependency on clang for rocksdb: #​72493
  • Clarify how MDX plugins are supported in Turbopack: #​72917
  • Turbopack: Don't replace constant conditions with sideeffects: #​72608
  • [Turbopack] fix effects tracing: #​72928
  • docs: fix code block language in redirecting docs: #​72944
  • docs: fix code block language in error pages: #​72943
  • docs: update "Migrate to async Dynamic APIs" docs: #​72852
  • Fix broken link to the rootDir doc: #​72893
  • docs: use relative urls: #​72941
  • docs: add the section titles to error page: #​72942
  • simplify vapid key generation docs: #​72916
  • docs: add and unify notes to error pages: #​72838
  • feat(turbopack): Implement module walking for side effect optimization: #​71241
  • docs: remove deprecated frameborder, adjust allowFullScreen and update the demo: #​72644
  • docs: fix code block language: #​72839
  • Docs: Changing information about data fetching cache: #​72301
  • Turbopack: apply effects in tests: #​72952
  • doc: remove internal customServer flag from custom server docs: #​72962
  • codemod(turbopack): Some more script-generated migrations to ResolvedVc: #​72889
  • Consolidate FnExpr and FnDecl server function transforms: #​72960
  • Allow method properties to be server functions: #​72969
  • Include debug script in test directories: #​72992
  • docs(sitemap): remove extra 's': #​73023
  • chore(turbopack-core): Delete dead all_modules_and_affecting_sources helper function: #​73016
  • [Turbopack] concurrent write batches and little endian encoding: #​72929
  • Remove unused retry around browser.eval: #​72999
  • [Turbopack] Invalidation and Persisting fixes: #​72950
  • docs: missing await when using params: #​73044
  • docs: incorrect params.id: #​73045
  • Remove hardcoded timeouts in Redbox test helpers: #​73000
  • perf(turbopack): Enable merging of export fragments: #​72813
  • Turbopack build: Add bench for Turbopack cache: #​73040
  • 🍪 Understanding Cookie Behavior in Server Components: #​73001
  • docs: add Fleek's Next.js template: #​72988
  • docs(fetch): clarify default fetch behavior: #​72982
  • docs: update staleTimes.mdx: #​72967
  • docs: Redirecting fix route handler path: #​72617
  • Rename waitForAndOpenRuntimeError to openRedbox: #​72996
  • Revert "docs: add Fleek's Next.js template": #​73054
  • fix benchmark directory: #​73057
  • hmr-test waits for compile signal: #​73064
  • docs(next-config): add experimental inline css docs: #​73070
  • docs: update tags when upgrading from 13 to 14: #​73071
  • docs: fix static params as promise examples: #​72553
  • fix: missing await, missing type Promise: #​73088
  • Disallow multiple server directives at the same level (file or function): #​73018
  • Docs: Add canary tags to expirePath and expireTag: #​73096
  • docs: update pages automatic static optimization rendering page: #​72545
  • docs(authentication): fix typescript code example: #​72533
  • docs: add details on React Compiler annotations with "use memo": #​73053
  • docs: fix code block language on redirecting docs: #​73073
  • docs(routing): update params type to be async (v15): #​73111
  • docs: clarify Switching to Dynamic Rendering section: #​73113
  • Method/function props of exported objects are not server functions: #​73058
  • Forbid this and arguments in server functions: #​73059
  • port turbopack-swc-utils to ResolvedVc: #​73086
  • port turbopack-mdx to use ResolvedVc: #​73080
  • feat: Update lightningcss to v1.0.0-alpha.61: #​73161
  • port turbopack-resolve to ResolvedVc: #​73083
  • move turbopack-image to ResolvedVc: #​73079
  • Turbopack: more tracing spans: #​73010
  • Handle server function directives in class methods: #​73060
  • 15.1 docs: forbidden, unauthorized, and authInterrupts: #​73039
  • Enable another Turbopack build test: #​73166
  • CNA: replace .eslintrc.json with eslint.config.mjs: #​73162
  • Turbopack: don't compute all paths for builds: #​73036
  • perf(turbopack): Use ResolvedVc for turbopack-css: #​73172
  • Revert change to ReactRefreshRequire test: #​73186
  • chore(CI): Remove sysroot override for macos arm64: #​73188
  • docs: Improve Accuracy and Type Safety on Data Fetching Examples: #​73122
  • docs: eslint flat config: #​73167
  • perf(turbopack): Use ResolvedVc for turbopack-core: #​73065
  • perf(turbopack): Use ResolvedVc for turbopack, turbopack-tests, turbopack-wasm: #​73196
  • perf(turbopack): Use ResolvedVc for turbopack-nodejs: #​73200
  • perf(turbopack): Use ResolvedVc for turbopack-env: #​73202
  • Getting Started Docs: Add new "Layouts and Pages" page: #​73049
  • Docs: forbidden and unauthorized nits: #​73213
  • Turbopack: make client references actual references: #​73174
  • Docs: Update turbopack API Reference: #​73215
  • Update authentication docs to use useActionState: #​72503
  • Don't hoist a server function if a compile error was emitted: #​73189
  • Forbid super in static class methods with server function directives: #​73061
  • port turbopack-node to ResolvedVc: #​73082
  • port turbopack-static to ResolvedVc: #​73084
  • perf(turbopack): Use ResolvedVc for next-api, part 1: #​73234
  • Pin undici in tests: #​73263
  • Turbopack: use try_join instead of future::try_join_all: #​73261
  • docs(server-actions): add missing formData type: #​73257
  • perf(turbopack): Use ResolvedVc for next-api, part 2: #​73235
  • docs: update static-tweet to react-tweet: #​73253
  • docs(fetching): params to await params: #​73254
  • convert let keyword to const keyword to data fetching and caching example: #​73251
  • [Turbopack] instead of depending on all env vars, track them via Proxy in webpack loaders: #​73112
  • docs: update the demo link of kontent.ai: #​73250
  • Docs: Fix headings in Layouts and Pages: #​73268
  • remove ResolvedVc from trait functions: #​73270
  • perf(turbopack): Use ResolvedVc for next-api, part 3: #​73236
  • [Turbopack] Revert "refactor filesystem writes to an effect based system": #​73287
  • Devlow: exit with non-zero code on failure: #​73276
  • perf(turbopack): Use ResolvedVc for next-api, part 4: #​73237
  • perf(turbopack): Use ResolvedVc for turbopack-browser: #​73198
  • perf(turbopack): Use ResolvedVc for next-core: #​73177
  • perf(turbopack): Use ResolvedVc for next-api, part 5: #​73238
  • test: reduce number of rendering loop causing flakiness: #​73277
  • Turbopack build: Fix css-minify test: #​72990
  • chore(turbo-tasks): Add a lint for Vc<T> in turbo-tasks types: #​73298
  • docs: add await before headers() and cookies() calls: #​73315
  • port turbopack-ecmascript to ResolvedVc: #​73226
  • test: fix canary test with 18.3.1: #​73327
  • Pin version of nwsapi (revert later): #​73351
  • fix Turbopack devlow bench: #​73278
  • Revert "Pin version of nwsapi (revert later)": #​73353
  • [Turbopack] Performance improvements for Persistent Caching: #​73265
  • refactor(turbopack): Use ResolvedVc<T> for struct fields in next-core: #​73310
  • refactor(turbopack): Use ResolvedVc<T> for struct fields in turbopack-ecmascript: #​73302
  • refactor(turbopack): Use ResolvedVc<T> for struct fields in turbopack-css: #​73300
  • refactor(turbopack): Use ResolvedVc<T> for struct fields in next-api, part 1: #​73366
  • docs: add missing default to page component examples: #​73233
  • Documentation Fix: Typo and URL Correction: #​73397
  • [Turbopack] Custom persistence layer: #​73029
  • chore(cna): add .pnpm-debug.log* to all cna gitignore: #​73446
  • cna: update .gitignore to ignore all .env files: #​73415
  • chore(turbo-tasks): improve ast-grep lint time: #​73440
  • [Turbopack] fix mmap advise on windows: #​73462
  • Getting Started docs: Images and Fonts: #​73340
  • Add mention of changing debugWithEdge to debugWithChrome.: #​73409
  • docs: Add note about remove of the swcMinify flag: #​73281
  • docs(typo): fix typos in file conventions, functions, and errors: #​73376
  • add more ResolvedVc best-practices lints: #​73331
  • docs: sort and update CMS examples: #​73295
  • Allow passing a nonce to google tag manager related script: #​73370
  • Getting Started Docs: CSS: #​73341
  • Getting Started docs: Fetching and Streaming: #​73352
  • Getting Started Docs: Images and Fonts feedback: #​73470
  • prevent accidentally re-creating ResolvedVc via deref by using a deprecated fn: #​73428
  • refactor(turbopack): Disable tree shaking by default: #​73421
  • [Turbopack] fix race condition in database compaction: #​73495
  • fix unnecessary to_resolved calls in test cases: #​73501
  • [Turbopack] small minor performance improvements for dirtyness tracking and scheduling: #​73494
  • turbopack-cli: Use correct fs and env for builds: #​73487
  • fix some trivial cases of to_resolved being used in a loop: #​73435
  • refactor(turbopack): Use ResolvedVc<T> for struct fields in turbopack-core: #​73301
  • refactor(turbopack): Use ResolvedVc<T> for struct fields in turbo-tasks: #​73371
  • refactor(turbopack): Use ResolvedVc<T> for trivial struct fields: #​73372
  • test: Enable tree shaking tests: #​73541
  • [Turbopack] fix incorrect task access for Persistent Caching: #​73549
  • [Turbopack] more debugging options for Persistent Cache: #​73550
  • sync-react: Add affordance to stop syncing Pages Router: #​73533
  • Remove unused React 17 install: #​73534
  • create-next-app: Use stable React 19 types: #​73569
  • Fix PostCSS dependency message handling: #​73529
  • docs: update the outdated generate sitemaps doc with versioned changes: #​73547
  • [Turbopack] add telemetry for persistent caching usage: #​73554
  • docs: fix forbidden file paths: #​73575
  • docs(composition-patterns): add missing React.ReactNode type in layout.tsx example: #​73577
  • test: replace check to retry in hmr.test.ts: #​73590
  • chore(docs): mention uses for unoptimized: #​73604
  • test: fix next-sass test: #​73633
  • refactor(turbopack): Use ResolvedVc<T> for struct fields in extra crates: #​73451
  • refactor(turbopack): Use ResolvedVc<T> for struct fields in next-api, final part: #​73367
  • docs: Fix image component API reference parsing: #​73658
  • docs: fix code block language in images-and-fonts docs: #​73492
  • fix(turbopack): Fix deprecation warnings from unnecessary .to_resolved() calls: #​73631
  • [Turbopack] replace EnvLayer with a faster filter: #​73614
  • [Turbopack] fix invalid source maps on HMR: #​72328
  • [Turbopack] include task name in dirty cause of output change: #​72574
  • 15.1 docs: React 19: #​73510
  • Docs: Add canary page to upgrade guides: #​73518
  • [Turbopack] change emit collectible to require ResolvedVc: #​73684
  • Fix failing tests: #​73707
  • test: move HMR Full Reload test to a separate file: #​73591
  • test: change with-next-sass to with-sass: #​73670
  • test: move HMR main test to a separate file: #​73611
  • [Turbopack] Introduce OperationVc that wraps operations: #​70242
  • chore(github): update stale issue periods: #​73709
  • test: update turbopack-dev-examples-manifest: #​73230
  • [Turbopack] use thread local trace collecting: #​73615
  • Skip build_and_deploy on docs-only changes: #​73659
  • 15.1 docs: request APIs in after: #​73692
  • [Turbopack] fix lmdb feature: #​73728
  • [Turbopack] cleanup and documentation: #​73496
  • Turbopack: Single-graph-traversal and migrate next/dynamic: #​73222
  • Docs: Getting Started Nits: #​73596
  • 15.1 docs: Add experimental tags to forbidden and unauthorized APIs: #​73513
  • 15.1 docs: stable after: #​73038
  • Turbopack: migrate server actions to single-graph-traversal: #​73260
  • re-enable middleware deploy tests: #​73744
  • docs(turbopack): Better document the Vc type, with references to ResolvedVc and VcOperation: #​72524
  • test: fix type error in segment-cache-basic test: #​73755
Credits

Huge thanks to @​sokra, @​molebox, @​delbaoliveira, @​eps1lon, @​wbinnssmith, @​JamBalaya56562, @​hyungjikim, @​adrian-faustino, @​mottox2, @​lubieowoce, @​bgw, @​mknichel, @​wyattjoh, @​huozhi, @​kdy1, @​mischnic, @​ijjk, @​icyJoseph, @​acdlite, @​unstubbable, @​gaojude, @​devjiwonchoi, @​cena-ko, @​lforst, @​devpla, @​samcx, @​styfle, @​ztanner, @​Marukome0743, @​timneutkens, @​JeremieDoctrine, @​ductnn, @​karlhorky, @​reynaldichernando, @​chogyejin, @​y-yagi, @​philparzer, @​alfawal, @​Rhynden, @​arlyon, @​MJez29, @​Goodosky, @​themattmayfield, @​tobySolutions, @​kevinmitch14, @​leerob, @​emmanuelgautier, @​mrhrifat, @​lid0a, @​boar-is, @​nisabmohd, @​PapatMayuri, @​ovogmap, @​Reflex2468, @​LioRael, @​betterthanhajin, @​HerringtonDarkholme, @​bpb54321, @​ahmoin, @​Kikobeats, @​abdelrahmanAbouelkheir, @​lumirlumir, @​yeeed711, @​petter, and @​suu3 for helping!

v15.0.5

Compare Source

Please see CVE-2025-66478 for additional details about this release.

v15.0.4

Compare Source

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

Core Changes
Credits

Huge thanks to @​eps1lon

v15.0.3

Compare Source

Core Changes
  • Read page name from work store in server module map proxy: #​71669
  • codemod: should not transform when param is not used: #​71664
  • [dynamicIO] complete refactor to prerender: #​71687
  • fix: metadata image route normalize path posix for windows: #​71673
  • next-codemod(upgrade): optional catch when missing dev script: #​71598
  • Avoid server action function indirection in Turbopack: #​71628
  • fix: exclude basePath in findSourceMapURL: #​71719
  • fix: stack frame text color in dark mode: #​71656
  • Fix: revert the bad node binary handling: #​71723
  • next-codemod: add empty pnpm-workspace.yaml to test fixtures to bypass PNPM workspace checks: #​71726
  • warn on sync access if dynamicIO is not enabled: #​71696
  • Update React from 69d4b800-20241021 to 45804af1-20241021: #​71718
  • next-upgrade: do not add --turbopack flag when --turbo exists in next dev: #​71730
  • feat: stitch errors with react owner stack: #​70393
  • [dynamicIO] update data access error and documentation: #​71738
  • Test cached form action with revalidate: #​71591
  • Upgrade React from 45804af1-20241021 to 28668d39-20241023: #​71745
  • Fix race condition when setting client reference manifests: #​71741
  • Fix fetch with no-store inside of use cache: #​71754
  • Remove the bottom collapse button in dev overlay: #​71658
  • [dynamicIO] unify cache filling and lazy-module warming: #​71749
  • Don't filter out source location frames through RSC: #​71752
  • fix undefined default export error msg: #​71762
  • Upgrade React from 28668d39-20241023 to 1631855f-20241023: #​71769
  • Enable owner stack in experimental build: #​71716
  • feat: add experiment for sharpjs cpu flags: #​71733
  • fix: handle server component replay error in error overlay: #​71772
  • Don't error asking for prebuilt bundles: #​71778
  • Replace turbopack://[project]/... sourcemap uris with file://... in development: #​71489
  • misc: update source map paths for bundled Next.js runtime: #​71779
  • [dynamicIO] refine error message and docs: #​71781
  • next-upgrade: change --turbo to --turbopack if applicable: #​71737
  • Show all diff when uncollapse: #​71792
  • Sourcemap errors in terminal by default : #​71444
  • Fully enable custom error callbacks for app router: #​71794
  • Simplify Server Action Webpack plugin: #​71721
  • ensure DIO development segment errors are cleared after correcting: #​71811
  • Include sourceframe in errors logged in the terminal during development: #​71803
  • [dynamicIO] update prerender cache scoping and cache warming for validation: #​71822
  • only force stack frame color in tty: #​71860
  • Add test for fetch with auth in use cache: #​71768
  • Fix race with hot-reloader-client clearing overlay errors: #​71771
  • Fix dynamic tracking in dev: #​71867
  • Revert "Sourcemap errors in terminal by default (#​71444)": #​71868
  • Fix fetch caching inside of "use cache": #​71793
  • Trace upload: only send traces for current session: #​71838
  • Reland "Sourcemap errors in terminal by default": #​71877
  • Implement information byte in Server Reference ID and other optimizations: #​71463
  • fix: webpack build error on Windows: #​71943
  • Run with --enable-source-maps by default in next dev: #​71820
  • fix global-error styles: #​71914
  • Use registerClientReference for ESM client component modules: #​71968
  • Fix missing await of params when metadata is used with an image file: #​71871
  • Upgrade React from 1631855f-20241023 to 02c0e824-20241028: #​71979
  • Populate sourcemap ignoreList when Webpack is used: #​71821
  • [dynamicIO] unify server and client prerender for non-ppr pathway: #​71764
  • codemod: add separator to the parenthenese expr: #​71993
  • Respect sourcemap's ignore list when printing errors in the terminal: #​71908
  • fix console color to be compatible in chrome devtools: #​71939
  • Delete obsolete codemod next-dynamic-access-named-export: #​72016
  • fix: log the error instance modified extra location info: #​71930
  • Compare error stack to dedupe error: #​71798
Example Changes
  • experimental.instrumentationHook is not necessary anymore: #​71808
  • Add Jude to nextjs team: #​71936
Misc Changes
  • docs: fix broken link in Architecture/Turbopack documentation: #​71412
  • test: migrate rest async api usage in tests: #​71663
  • fix: docs for dynamic routing in next 15: #​71531
  • Remove the 'new' keyword from the GET function sample code.: #​71671
  • chore: fix wrong path of comments: #​71682
  • docs(next-config): remove mention of appIsrStatus is on canary: #​71695
  • react-sync: Ignore update notices from npm: #​71717
  • Docs: Update default marker for fetch cache option: #​71728
  • [docs] Fix page.tsx parameter types: #​71680
  • [docs] Fix table.js containing TS code: #​71677
  • docs(ppr): update note about ppr: #​71697
  • docs lint: #​71748
  • fixes error message asserts and lints: #​71747
  • Fix docs for configuring Turbopack: #​71755
  • docs(turbo): add experimental icon to turbo config section: #​71761
  • feat(turbopack): Add __turbopack_original__ while tree shaking: #​71547
  • test: re-enable test with note: #​71789
  • Docs: Remove beta marker from Turbopack docs: #​71796
  • Update docs 1: #​71812
  • docs lint fixes: #​71813
  • docs: remove "use cache" on before code snippet: #​71815
  • Next docs broken links: #​71823
  • [Turbopack] add optimization based on upper count: #​71606
  • chore(turbo-tasks-backend): Use let instead of match for macro bindings: #​71756
  • chore(turbo-tasks-backend): Remove collapsible-if lints: #​71758
  • removing extra reference: #​71853
  • codemod(turbopack): Rewrite Vc fields in structs as ResolvedVc (part 3): #​71665
  • Update sync-dynamic-apis.mdx: #​71907
  • codemod(turbopack): Rewrite Vc fields in structs as ResolvedVc (part 4): #​71804
  • test: remove duplicated flaky test: #​71967
  • docs: Fix typo in cacheLife configs in use-cache docs: #​71921
  • Fix use cache example line highlights: #​71883
  • Allow breakpoints to be set in packages/next/src/compiled: #​71986
  • updated upgrade to v15 command in docs: #​71643
  • codemod(turbopack): Rewrite Vc fields in structs as ResolvedVc (part 5): #​71861
  • Clarify that streaming is blocked on generateMetadata for initial load: #​71985
  • Docs: Add legacy tags: #​71964
  • Docs: Fix broken link: #​72021
  • (docs) use cache: Add text code formatting: #​71999
  • docs: update file structure: #​71951
  • Documentation Fix: Correct cacheTag Function Usage: #​71912
  • correct expire calc & and Nested usage import in use-cache docs: #​71899
  • Docs: Address internal use cache comments : #​71981
  • Fix swc version mismatch when checking out an older version: #​71978
Credits

Huge thanks to @​ytori, @​unstubbable, @​huozhi, @​SebassNoob, @​tatsuteb, @​Marukome0743, @​gnoff, @​samcx, @​devjiwonchoi, @​imprakharshukla, @​migueldamota, @​eps1lon, @​ztanner, @​timneutkens, @​cantemizyurek, @​sebmarkbage, @​padmaia, @​ijjk, @​styfle, @​wbinnssmith, @​feedthejim, @​kdy1, @​shuding, @​molebox, @​ismaelrumzan, @​sokra, @​bgw, @​timeyoutakeit, @​AdonisAgelis, @​chicoxyzzy, @​gaojude, @​elitalpa, @​t3dotgg, @​gaearon, @​nisabmohd, @​gadcam, @​delbaoliveira, @​bennettdams, @​wiscaksono, and @​Developerayo for helping!

v15.0.2

Compare Source

Core Changes
  • Read page name from work store in server module map proxy: #​71669
  • codemod: should not transform when param is not used: #​71664
  • [dynamicIO] complete refactor to prerender: #​71687
  • fix: metadata image route normalize path posix for windows: #​71673
  • next-codemod(upgrade): optional catch when missing dev script: #​71598
  • Avoid server action function indirection in Turbopack: #​71628
  • fix: exclude basePath in findSourceMapURL: #​71719
  • fix: stack frame text color in dark mode: #​71656
  • Fix: revert the bad node binary handling: #​71723
  • next-codemod: add empty pnpm-workspace.yaml to test fixtures to bypass PNPM workspace checks: #​71726
  • warn on sync access if dynamicIO is not enabled: #​71696
  • Update React from 69d4b800-20241021 to 45804af1-20241021: #​71718
  • next-upgrade: do not add --turbopack flag when --turbo exists in next dev: #​71730
  • feat: stitch errors with react owner stack: #​70393
  • [dynamicIO] update data access error and documentation: #​71738
  • Test cached form action with revalidate: #​71591
  • Upgrade React from 45804af1-20241021 to 28668d39-20241023: #​71745
  • Fix race condition when setting client reference manifests: #​71741
  • Fix fetch with no-store inside of use cache: #​71754
  • Remove the bottom collapse button in dev overlay: #​71658
  • [dynamicIO] unify cache filling and lazy-module warming: #​71749
  • Don't filter out source location frames through RSC: #​71752
  • fix undefined default export error msg: #​71762
  • Upgrade React from 28668d39-20241023 to 1631855f-20241023: #​71769
  • Enable owner stack in experimental build: #​71716
  • feat: add experiment for sharpjs cpu flags: #​71733
  • fix: handle server component replay error in error overlay: #​71772
  • Don't error asking for prebuilt bundles: #​71778
  • Replace turbopack://[project]/... sourcemap uris with file://... in development: #​71489
  • misc: update source map paths for bundled Next.js runtime: #​71779
  • [dynamicIO] refine error message and docs: #​71781
  • next-upgrade: change --turbo to --turbopack if applicable: #​71737
  • Show all diff when uncollapse: #​71792
  • Sourcemap errors in terminal by default : #​71444
  • Fully enable custom error callbacks for app router: #​71794
  • Simplify Server Action Webpack plugin: #​71721
  • ensure DIO development segment errors are cleared after correcting: #​71811
  • Include sourceframe in errors logged in the terminal during development: #​71803
  • [dynamicIO] update prerender cache scoping and cache warming for validation: #​71822
  • only force stack frame color in tty: #​71860
  • Add test for fetch with auth in use cache: #​71768
  • Fix race with hot-reloader-client clearing overlay errors: #​71771
  • Fix dynamic tracking in dev: #​71867
  • Revert "Sourcemap errors in terminal by default (#​71444)": #​71868
  • Fix fetch caching inside of "use cache": #​71793
  • Trace upload: only send traces for current session: #​71838
  • Reland "Sourcemap errors in terminal by default": #​71877
  • Implement information byte in Server Reference ID and other optimizations: #​71463
  • fix: webpack build error on Windows: #​71943
  • Run with --enable-source-maps by default in next dev: #​71820
  • fix global-error styles: #​71914
  • Use registerClientReference for ESM client component modules: #​71968
  • Fix missing await of params when metadata is used with an image file: #​71871
  • Upgrade React from 1631855f-20241023 to 02c0e824-20241028: #​71979
  • Populate sourcemap ignoreList when Webpack is used: #​71821
  • [dynamicIO] unify server and client prerender for non-ppr pathway: #​71764
  • codemod: add separator to the parenthenese expr: #​71993
  • Respect sourcemap's ignore list when printing errors in the terminal: #​71908
  • fix console color to be compatible in chrome devtools: #​71939
  • Delete obsolete codemod next-dynamic-access-named-export: #​72016
  • fix: log the error instance modified extra location info: #​71930
  • Compare error stack to dedupe error: #​71798
Example Changes
  • experimental.instrumentationHook is not necessary anymore: #​71808
  • Add Jude to nextjs team: #​71936
Misc Changes
  • docs: fix broken link in Architecture/Turbopack documentation: #​71412
  • test: migrate rest async api usage in tests: #​71663
  • fix: docs for dynamic routing in next 15: #​71531
  • Remove the 'new' keyword from the GET function sample code.: #​71671
  • chore: fix wrong path of comments: #​71682
  • docs(next-config): remove mention of appIsrStatus is on canary: #​71695
  • react-sync: Ignore update notices from npm: #​71717
  • Docs: Update default marker for fetch cache option: #​71728
  • [docs] Fix page.tsx parameter types: #​71680
  • [docs] Fix table.js containing TS code: #​71677
  • docs(ppr): update note about ppr: #​71697
  • docs lint: #​71748
  • fixes error message asserts and lints: #​71747
  • Fix docs for configuring Turbopack: #​71755
  • docs(turbo): add experimental icon to turbo config section: #​71761
  • feat(turbopack): Add __turbopack_original__ while tree shaking: #​71547
  • test: re-enable test with note: #​71789
  • Docs: Remove beta marker from Turbopack docs: #​71796
  • Update docs 1: #​71812
  • docs lint fixes: #​71813
  • docs: remove "use cache" on before code snippet: #​71815
  • Next docs broken links: #​71823
  • [Turbopack] add optimization based on upper count: #​71606
  • chore(turbo-tasks-backend): Use let instead of match for macro bindings: #​71756
  • chore(turbo-tasks-backend): Remove collapsible-if lints: #​71758
  • removing extra reference: #​71853
  • codemod(turbopack): Rewrite Vc fields in structs as ResolvedVc (part 3): #​71665
  • Update sync-dynamic-apis.mdx: #​71907
  • codemod(turbopack): Rewrite Vc fields in structs as ResolvedVc (part 4): #​71804
  • test: remove duplicated flaky test: #​71967
  • docs: Fix typo in cacheLife configs in use-cache docs: #​71921
  • Fix use cache example line highlights: #​71883
  • Allow breakpoints to be set in packages/next/src/compiled: #​71986
  • updated upgrade to v15 command in docs: #​71643
  • codemod(turbopack): Rewrite Vc fields in structs as ResolvedVc (part 5): #​71861
  • Clarify that streaming is blocked on generateMetadata for initial load: #​71985
  • Docs: Add legacy tags: #​71964
  • Docs: Fix broken link: #​72021
  • (docs) use cache: Add text code formatting: #​71999
  • docs: update file structure: #​71951
  • Documentation Fix: Correct cacheTag Function Usage: #​71912
  • correct expire calc & and Nested usage import in use-cache docs: #​71899
  • Docs: Address internal use cache comments : #​71981
  • Fix swc version mismatch when checking out an older version: #​71978
Credits

Huge thanks to @​ytori, @​unstubbable, @​huozhi, @​SebassNoob, @​tatsuteb, @​Marukome0743, @​gnoff, @​samcx, @​devjiwonchoi, @​imprakharshukla, @​migueldamota, @​eps1lon, @​ztanner, @​timneutkens, @​cantemizyurek, @​sebmarkbage, @​padmaia, @​ijjk, @​styfle, @​wbinnssmith, @​feedthejim, @​kdy1, @​shuding, @​molebox, @​ismaelrumzan, @​sokra, @​bgw, @​timeyoutakeit, @​AdonisAgelis, @​chicoxyzzy, @​gaojude, @​elitalpa, @​t3dotgg, @​gaearon, @​nisabmohd, @​gadcam, @​delbaoliveira, @​bennettdams, @​wiscaksono, and @​Developerayo for helping!

v15.0.1

Compare Source

Core Changes
  • Reland "[dynamicIO] warn for disallowed dynamic in dev": #​71567
  • next-upgrade: prompt (un)install only when there's a change: #​71308
  • chore(next-codemod): remove @next/font from optional Next.js packages to install: #​71563
  • [dynamicIO] Avoid triggering memory leak false positive with makeHangingPromise: #​71576
  • Avoid triggering memory leak false positive with makeHangingPromise: #​71579
  • Upgrade React from 65a56d0e-20241020 to 69d4b800-20241021: #​71568
  • avoid logging stacks for internal errors: #​71575
  • Avoid server action endpoint function indirection: #​71572
  • fix: handle terminal color in chrome console: #​71581
  • [dynamicIO] Update prerender to use Fizz prerender: #​71580
  • misc(next-upgrade): reuse process.cwd() value: #​71558
  • [dynamicIO]: dev navigations should show disallowed dynamic errors: #​71595
  • next-lint: Use ESLint v9 by default: #​71371
  • fix: prevent router errors from being logged on the client: #​71583
  • fix: next package resolving in dev overlay: #​71632
  • Improve type coverage of setup-dev-bundler: #​71443
  • fix(turbo-tasks): Implement ValueDebugFormat for ResolvedVc: #​71173
  • Add --turbopack CLI flag: #​71657
  • [dynamicIO] detect metadata boundaries in dev using server component stacks: #​71666
Example Changes
  • chore: Update with-supabase to be compatible with Nextjs 15: #​71631
  • Update Sanity example to next v15: #​71640
Misc Changes
  • docs(ppr): remove v14 mention for ppr: #​71498
  • docs: fix upgrade codemod command: #​71578
  • Turbopack: Always use blob: URLs for assets in middleware: #​71471
  • fix: metadata image route Windows path escaping: #​71615
  • fix: third-parties package peer dependency: #​71620
  • Fix module_resolution: "nodenext" with mjs or cjs: #​71635
  • react-sync: Automatically update peer dependencies in libraries: #​71636
  • chore(docs): fix typo in image.mdx docs: #​71647
  • docs: remove the canary note on instrumentation: #​71649
  • test: fix async api tests: #​71652
  • Enable source maps for pnpm debug: #​71653
  • codemod(turbopack): Rewrite more Vc fields in structs as ResolvedVc: #​71172
Credits

Huge thanks to @​gnoff, @​devjiwonchoi, @​samcx, @​ztanner, @​unstubbable, @​huozhi, @​mischnic, @​lubieowoce, @​eps1lon, @​ivasilov, @​styfle, @​bgw, @​stipsan, and @​timneutkens for helping!

v15.0.0

Compare Source

Core Changes
  • refactor: next-flight-client-module-loader return conditions: #​64348
  • Fix Server Action error logs for unhandled POST requests: #​64315
  • Shared Revalidate Timings: #​64370
  • Freeze loaded manifests: #​64313
  • test: skip turbopack build test: #​64356
  • Fix: css in next/dynamic component in edge runtime: #​64382
  • Fix more Turbopack build tests: #​64384
  • use pathToFileUrl to make esm import()s work with absolute windows paths: #​64386
  • Improve rendering performance: #​64408
  • Fix the method prop case in Server Actions transform: #​64398
  • fix(next-lint): update option --report-unused-disable-directives to --report-unused-disable-directives-severity: #​64405
  • Revert "Fix: css in next/dynamic component in edge runtime": #​64442
  • default fetchCache to no-store when force-dynamic is set: #​64145
  • router restore should take priority over pending actions: #​64449
  • Fix client boundary inheritance for barrel optimization: #​64467
  • improve turborepo caching: #​64493
  • Update font data: #​64481
  • BREAKING CHANGE: remove deprecated analyticsId from config, and the corresponding performance-relayer files and tests: #​64199
  • feat: strip traceparent header from cachekey: #​64499
  • Fix typo in dynamic-rendering.ts: #​64365
  • fix(next): global not-found not working on multi-root layouts: #​63053
  • chore(next): add keywords on package.json: #​64173
  • Fix DynamicServerError not being thrown in fetch: #​64511
  • fix: lib/helpers/install.ts to better support pnpm and properly respect root argument: #​64418
  • fix(next): Metadata.openGraph values not resolving basic values when type is set: #​63620
  • disable production chunking in dev: #​64488
  • update turbopack: #​64501
  • Turbopack: Allow client components to be imported in app routes: #​64520
  • refactor: remove always truthy flag: #​64522
  • Turbopack: don’t show long internal stack traces on build errors: #​64427
  • next/script: Correctly apply async and defer props: #​52939
  • chore(next/font): update @​capsizecss/metrics package: #​64528
  • feat: add information that revalidate interval is in seconds: #​64229
  • Typo "Minifer" in config.ts: #​64359
  • Enhance types for Node and Edge envionments: #​64454
  • feat: Add a validation for postcss with useLightningcss: #​64379
  • fix HMR for cases where chunking changes: #​64367
  • perf: improve Pages Router server rendering performance: #​64461
  • Fix cjs client components tree-shaking: #​64558
  • fix refresh behavior for discarded actions: #​64532
  • fix: filter out middleware requests in logging: #​64549
  • chore: remove unused rust dependencies: #​62176
  • fix(next-swc): correctly set wasm fallback for known target triples: #​64567
  • memoize layout router context: #​64575
  • fix incorrect refresh request when basePath is set: #​64589
  • fix TypeError edge-case for parallel slots rendered multiple times: #​64271
  • Fix ASL bundling for dynamic css: #​64451
  • Revert "fix(next): global not-found not working on multi-root layouts": #​64601
  • chore(test): run related E2E deploy tests on PRs: #​63763
  • Improve top level await coverage: #​64508
  • Upgrade typescript to 5.3: #​64043
  • add pathname normalizer for actions: #​64592
  • Fix experimental/testmode by removing console.log: #​64670
  • Don't output .test.ts files in next/font: #​63472
  • Fix reporting when performance.measure doesn't exist (Edge): #​64669
  • Reduce amount of data passed to collectBuildTraces: #​59665
  • fix(next-server): 'quiet' setting delegate for custom server: #​64512
  • Revert "chore(test): run related E2E deploy tests on PRs": #​64682
  • update turbopack: #​64686
  • Fix: resolve mixed re-exports module as cjs: #​64681
  • Revert "fix TypeError edge-case for parallel slots rendered multiple times": #​64690
  • Fix typo: 'serverComponentsExtenalPackages' should be 'serverComponentsExternalPackages': #​64705
  • prevent erroneous route interception during lazy fetch: #​64692
  • Add @appsignal/nodejs to the external packages list: #​64503
  • fix root page revalidation when redirecting in a server action: #​64730
  • Clean-up fetch metrics tracking: #​64746
  • [actions] Enforce body limit using Transform stream: #​64694
  • Turbopack: Don’t show stack traces for internal modules: #​64228
  • Reapply "chore(test): run related E2E deploy tests on PRs" (#​64682): #​64712
  • fix(fetch-cache): fix typo: #​64786
  • fix: remove traceparent from cachekey should not remove traceparent from original object: #​64727
  • fix interception route rewrite regex not supporting hyphenated segments: #​64805
  • Disable ncc cache instead of cache cleaning: #​64804
  • Move next-swc Turborepo config to packages/next-swc: #​64789
  • build: Update swc_core to v0.90.33: #​64553
  • Enable loading source maps for Next Server and React: #​64527
  • fix: mixing namespace import and named import client components: #​64809
  • fext(next): extend next.config for mdxRs support options: #​64801
  • skip test_e2e_deploy_related when triggered from a fork: #​64893
  • fix(fetch-cache): fix additional typo, add type & data validation: #​64799
  • feat(next-core): support parsing matcher config object: #​64678
  • Fix mixed exports in server component with barrel optimization: #​64894
  • fix: improve tsconfig extends checks: #​61413
  • Fix next/image usage in mdx: #​64875
  • fix dynamic route interception not working when deployed with middleware: #​64923
  • feat(turbopack): Handle fragments in requests: #​64232
  • feat(turbopack): Check for duplicate parallel routes: #​64181
  • Speed up createNext test suite isolation: #​64909
  • fix(rewrites): support external rewrite destination: #​64943
  • Ensure edge prerender-manifest is minimal: #​64946
  • remove special-cased prefetch kind in dev mode: #​64941
  • feat: support import attributes: #​59480
  • NextJS App router: add isolated-vm to server-external-packages.json: #​64749
  • Add next experimental-test command: #​64352
  • Revert "feat: support import attributes": #​65001
  • NODE_OPTIONS updates: #​65006
  • Update React from 14898b6 to c3048aa: #​64798
  • initialize ALS with cookies in middleware: #​65008
  • feat(next/image)!: remove squoosh in favor of sharp as optional dependency: #​63321
  • fix: Workaround acorn bug/version issue by using SWC: #​65021
  • build: Update @swc/core to v1.5.0: #​65022
  • Ensure escaped string are parsed in NODE_OPTIONS: #​65046
  • chore(fetch-cache): remove zod from fetch cache: #​65079
  • support breadcrumb style catch-all parallel routes: #​65063
  • Improve initial setup with new App Router TypeScript project: #​64826
  • Add experimental trace file field: #​65071
  • Fix playwright config merging for webServer property: #​65090
  • chore(logging): Disable info logging of critters in production: #​62776
  • [unstable_cache] Don't track dynamic fetches in an unstable_cache callback: #​65010
  • fix(page-static-info): refine warning message to emit once: #​65091
  • update redirect handling on forwarded action requests: #​65097
  • Tracing: allow opt-in flag to send build traces to url: #​65019
  • Turbopack: Allow client components from foreign code in app routes: #​64751
  • fix node.js module warning in middleware: #​65112
  • Fix: strip _rsc query for client navigation rsc request: #​65084
  • fix unhandled runtime error when notFound() triggered in generateMetadata w/ parallel routes: #​65102
  • Use vercel deployment url for metadataBase fallbacks: #​65089
  • Fix next/dynamic with babel and src dir: #​65177
  • update turbopack: #​65191
  • Fix crypto import in edge runtime with Turbopack: #​65171
  • Resolve global next Webpack alias last: #​65123
  • Add oslo, @​node-rs/argon2, and @​node-rs/bcrypt to external packages: #​65204
  • [trace] Reduce the size of .next/trace files: #​65101
  • Remove extra suspense boundary for default next/dynamic: #​64716
  • Only apply metadata manifest credentials for preview deployment: #​64940
  • fix(next): add missing browser.major type: #​65185
  • Turbopack: rename source map prefix: #​64965
  • Use POST for invokeIpcMethod: #​65238
  • fix redirect to url with semicolon: #​65165
  • Provide non-dynamic segments to catch-all parallel routes: #​65233
  • Fix an issue parsing catchall params: #​65277
  • Enable preloading entries by default: #​65289
  • Trace uploader: add worker spans to allowed events: #​65255
  • Update font data: #​65301
  • Update revalidateTag to batch tags in one request: #​65296
  • Revert "Remove extra suspense boundary for default next/dynamic": #​65309
  • Emit polyfill-nomodule.js into the build manifest polyfillFiles: #​65223
  • Remove broken #[turbo_tasks::value(transparent)] attributes: #​65336
  • Delete dead concatenate_output_assets function: #​65337
  • Upgrade Turbopack: #​65320
  • Pages router: Use attribute-based head children reconciler when strictNextHead is enabled: #​65408
  • Revert "Implement Turbopack trace server bindings": #​65419
  • use correct not-found component when triggered from a parallel route: #​65343
  • Implement Turbopack trace server bindings: #​65410
  • fix(next/image): bypass icns images: #​65414
  • [PPR] Enable incremental adoption: #​63847
  • fix: replace deprecated/removed functions in eslint-plugin-next: #​64251
  • docs: update revalidatePath & fix cache debug logic: #​65365
  • fix(next-core): mark turbopack embed fs to be internals: #​65420
  • fix(next/image): add missing svg test and refactor missing types: #​65345
  • build(edge): extract buildId into environment: #​64521
  • Revert "build(edge): extract buildId into environment": #​65425
  • fix(next/image): set max url length to 3072: #​65457
  • Support React 19 in App and Pages router: #​65058
  • Promote and rename server bundling options serverComponentsExternalPackages and bundlePagesExternals: #​65421
  • add experimental flag to allow forcing NODE_ENV=development in builds: #​65463
  • Support esm externals in app router: #​65041
  • fix: lazy load sharp: #​65484
  • make sure children is first in loader tree to fix head css bug on client navigation: #​65279
  • Re-land build(edge): extract buildId into environment: #​65426
  • improve versioned content map: #​65466
  • update turbopack: #​65503
  • Remove ineffective webpack rules and unused app-page context modules: #​65321
  • add page name to crashes: #​65504
  • Bump styled-jsx to 5.1.3: #​65485
  • Preload all chunks for next/dynamic in SSR: #​65486
  • fix!: add sharp timeout of 10 seconds: #​65517
  • Turbopack: new graph aggregation: #​65206
  • feat(next): revise server component error message: #​65468
  • chore: update prettier to 3.2.5: #​65092
  • Revert "Remove ineffective webpack rules and unused app-page context modules": #​65558
  • Remove auto appending xml extension to dynamic sitemap routes: #​65507
  • Remove rsc esm client module extra exports: #​65519
  • Handle nonce on Next.js injected script/link tags: #​65508
  • Fix multi-zone test by removing dependency list: #​65589
  • remove next-action header when following a redirect: #​65615
  • Remove @​next/font resolving for font loaders: #​65601
  • remove legacy deprecated warnings: #​65579
  • feat(turbopack): add support for bundlePagesRouterDependencies: #​65520
  • fix(next-swc): load wasm fallback if native bindings fail to load: #​65623
  • fix(next-swc): correct path interop to filepath for wasm: #​65633
  • Add proper deprecation/rename warnings for server bundling option: #​65575
  • feat!(next/image): change default Content-Disposition to attachment: #​65631
  • Pages router: Enable strict next/head children reconciler by default: #​65418
  • Apply react-server conditions to middleware: #​65424
  • fix(next-swc): Do not reuse compiler instance: #​65602
  • Show the new key of experimental config change warnings: #​65651
  • fix(next-swc): Fix SWC env target - include option: #​65693
  • Reapply "Implement Turbopack trace server bindings" (#​65419): #​65527
  • fix(resolve-metadata): allow for search params in canonical URL: #​65366
  • Remove missingSuspenseWithCSRBailout config: #​65688
  • Reland Remove ineffective webpack rules and unused app-page context modules: #​65694
  • Remove swc minify related code branches: #​65690
  • fix: load the tags manifest asynchronously: #​64563
  • Bump acorn to replace swc class properties transform: #​65715
  • fix: watch experimental/testmode in when running "pnpm dev": #​65689
  • Revert "chore: externalize undici for bundling": #​65727
  • [ppr] Request normalization fixes: #​65717
  • fix(next/image)!: error when src has leading or trailing space: #​65637
  • fext(next-swc): extend internal env flag to all native bindings: #​65748
  • Update font data: #​65719
  • fix(next): add alias to new react exports: #​65761
  • Update font data: #​65768
  • feat: remove font family hashing in next/font css: #​53608
  • Add script to script loader when strategy prop is undefined: #​65585
  • fix: ensure websockets are correctly passed: #​65759
  • Add clientTraceMetadata experimental option to propagate tracing data to the client: #​64256
  • Remove process auto polyfill in edge runtime: #​65751
  • feat: support import attributes: #​65749
  • Turbopack: Remove EcmascriptChunkingContext: #​65716
  • Error in build for middleware when import client-only: #​65792
  • fix(next): reject protocol-relative URLs in image optimization: #​65752
  • Fix broken HTML inlining of non UTF-8 decodable binary data from Flight payload: #​65664
  • Bundle the installed react for middleware: #​65811
  • fix middleware cookie initialization: #​65820
  • fix(next/image)!: set upstream timeout to 7 seconds: #​65821
  • feat(turbopack-ecmascript): use import attributes for annotations: #​59370
  • feat(next): experimental react compiler support: #​65804
  • Fix the runtime for rsc layer: #​65850
  • Ensure React Compiler only runs on first-party browser code: #​65851
  • fix: bump nft@0.27.1: #​65854
  • add effect packages into the optimized-by-default list: #​65465
  • Upgrade react@beta: #​65845
  • Ensure plugin-syntax-jsx doesn't have to be installed: #​65865
  • Update React from 4508873 to 04b0588: #​65864
  • Set default stale-while-revalidate header value to 1 year: #​65867
  • fix missing experimental warning for reactCompiler: #​65866
  • Error on mismatched minimal react version: #​65806
  • Revert "Set default stale-while-revalidate header value to 1 year": #​65887
  • Update turbopack & swc_core: #​65450
  • Revert "Fix broken HTML inlining of non UTF-8 decodable binary data f…: #​65906
  • experimental: unstable_after: #​65038
  • Docs: Replace "twitter.com" to "x.com": #​65917
  • fix(next/image): prefer sharp defaults, use mozjpeg for JPEG: #​65846
  • Update font data: #​65961
  • unstable_after: support nested unstable_after calls: #​65950
  • Fix revalidateTimings route for catchall index route: #​65843
  • fix(next): initial prefetch cache not set properly with different search params: #​65977
  • Add additional log to experimental ppr flag in next.config.js: #​65944
  • Change default of prerenderEarlyExit to true: #​65830
  • short-circuit OPTIONS requests to pages: #​65295
  • Turbopack: Implement next/font/local with BeforeResolvePlugin and show custom error message: #​65870
  • [Breaking] Disable automatic static generation for route handlers: #​65825
  • Fix router.refresh missing canonical url override: #​65999
  • Fix typo in JSDoc of ppr flag of next.config.js: #​66028
  • Revert webpack bundling layer changes for middleware/pages: #​66049
  • Upgrade lightningcss, disable grid prefixing: #​65986
  • [Breaking] disable client router cache for page segments: #​66039
  • Add dedicated client entry for Turbopack builds: #​65824
  • Update React from 04b0588 to 81c5ff2 : #​65869
  • implement unstable_rethrow: #​65831
  • chore(next/image): remove unused output parameter: #​66083
  • next-swc-napi: Enable "plugin" feature by default: #​66006
  • [turbopack] Use updated RawOutput API: #​65300
  • Skip setting to fetch cache when not modified: #​66055
  • [Memory] Add option to reduce memory usage caused by duplicate strings in webpack-sources: #​66003
  • Ensure metadata routes dont skip static optimization: #​66097
  • [unstable_after] fix occasional dev-mode crash in edge runtime pages: #​66099
  • fix: ensure prefetch data routes are always added when app has ppr enabled: #​66102
  • [Breaking] Disable automatic fetch caching: #​66004
  • Update React from 81c5ff2 to f994737: #​66093
  • fix: ensure prefetch data routes are always added when app has ppr enabled: #​66102
  • [Breaking] Disable automatic fetch caching: #​66004
  • Update React from 81c5ff2 to f994737: #​66093
  • [ppr] Remove canary requirement: #​66112
  • [ppr] Data route fixes: #​66109
  • [unstable_after] always use 'waitUntil' from '@​next/request-context' if available: #​66119
  • Don't fail the build if @types/ packages appear to be missing: #​66127
  • Stabilize swrDelta config: #​66108
  • Revert "Don't fail the build if @​types/ packages appear to be missing": #​66130
  • fix(next): global not-found not working on multi-root layouts: #​63053
  • chore(next): add keywords on package.json: #​64173
  • Fix DynamicServerError not being thrown in fetch: #​64511
  • fix: lib/helpers/install.ts to better support pnpm and properly respect root argument: #​64418
  • fix(next): Metadata.openGraph values not resolving basic values when type is set: #​63620
  • disable production chunking in dev: #​64488
  • update turbopack: #​64501
  • Turbopack: Allow client components to be imported in app routes: #​64520
  • Turbopack: don’t show long internal stack traces on build errors: #​64427
  • next/script: Correctly apply async and defer props: #​52939
  • chore(next/font): update @​capsizecss/metrics package: #​64528
  • feat: add information that revalidate interval is in seconds: #​64229
  • Typo "Minifer" in config.ts: #​64359
  • Enhance types for Node and Edge envionments: #​64454
  • feat: Add a validation for postcss with useLightningcss: #​64379
  • fix HMR for cases where chunking changes: #​64367
  • perf: improve Pages Router server rendering performance: #​64461
  • Fix cjs client components tree-shaking: #​64558
  • fix refresh behavior for discarded actions: #​64532
  • fix: filter out middleware requests in logging: #​64549
  • chore: remove unused rust dependencies: #​62176
  • fix(next-swc): correctly set wasm fallback for known target triples: #​64567
  • memoize layout router context: #​64575
  • fix incorrect refresh request when basePath is set: #​64589
  • fix TypeError edge-case for parallel slots rendered multiple times: #​64271
  • Fix ASL bundling for dynamic css: #​64451
  • Revert "fix(next): global not-found not working on multi-root layouts": #​64601
  • chore(test): run related E2E deploy tests on PRs: #​63763
  • Improve top level await coverage: #​64508
  • Upgrade typescript to 5.3: #​64043
  • add pathname normalizer for actions: #​64592
  • Fix experimental/testmode by removing console.log: #​64670
  • Don't output .test.ts files in next/font: #​63472
  • Fix reporting when performance.measure doesn't exist (Edge): #​64669
  • Reduce amount of data passed to collectBuildTraces: #​59665
  • fix(next-server): 'quiet' setting delegate for custom server: #​64512
  • Revert "chore(test): run related E2E deploy tests on PRs": #​64682
  • update turbopack: #​64686
  • Fix: resolve mixed re-exports module as cjs: #​64681
  • Revert "fix TypeError edge-case for parallel slots rendered multiple times": #​64690
  • Fix typo: 'serverComponentsExtenalPackages' should be 'serverComponentsExternalPackages': #​64705
  • prevent erroneous route interception during lazy fetch: #​64692
  • Add @appsignal/nodejs to the external packages list: #​64503
  • fix root page revalidation when redirecting in a server action: #​64730
  • Clean-up fetch metrics tracking: #​64746
  • [actions] Enforce body limit using Transform stream: #​64694
  • Turbopack: Don’t show stack traces for internal modules: #​64228
  • Reapply "chore(test): run related E2E deploy tests on PRs" (#​64682): #​64712
  • fix(fetch-cache): fix typo: #​64786
  • fix: remove traceparent from cachekey should not remove traceparent from original object: #​64727
  • fix interception route rewrite regex not supporting hyphenated segments: #​64805
  • Disable ncc cache instead of cache cleaning: #​64804
  • Move next-swc Turborepo config to packages/next-swc: #​64789
  • build: Update swc_core to v0.90.33: #​64553
  • Enable loading source maps for Next Server and React: #​64527
  • fix: mixing namespace import and named import client components: #​64809
  • fext(next): extend next.config for mdxRs support options: #​64801
  • skip test_e2e_deploy_related when triggered from a fork: #​64893
  • fix(fetch-cache): fix additional typo, add type & data validation: #​64799
  • feat(next-core): support parsing matcher config object: #​64678
  • Fix mixed exports in server component with barrel optimization: #​64894
  • fix: improve tsconfig extends checks: #​61413
  • Fix next/image usage in mdx: #​64875
  • fix dynamic route interception not working when deployed with middleware: #​64923
  • feat(turbopack): Handle fragments in requests: #​64232
  • feat(turbopack): Check for duplicate parallel routes: #​64181
  • Speed up createNext test suite isolation: #​64909
  • fix(rewrites): support external rewrite destination: #​64943
  • Ensure edge prerender-manifest is minimal: #​64946
  • remove special-cased prefetch kind in dev mode: #​64941
  • feat: support import attributes: #​59480
  • NextJS App router: add isolated-vm to server-external-packages.json: #​64749
  • Add next experimental-test command: #​64352
  • Revert "feat: support import attributes": #​65001
  • NODE_OPTIONS updates: #​65006
  • Update React from 14898b6 to c3048aa: #​64798
  • initialize ALS with cookies in middleware: #​65008
  • feat(next/image)!: remove squoosh in favor of sharp as optional dependency: #​63321
  • fix: Workaround acorn bug/version issue by using SWC: #​65021
  • build: Update @swc/core to v1.5.0: #​65022
  • Ensure escaped string are parsed in NODE_OPTIONS: #​65046
  • chore(fetch-cache): remove zod from fetch cache: #​65079
  • support breadcrumb style catch-all parallel routes: #​65063
  • Improve initial setup with new App Router TypeScript project: #​64826
  • Add experimental trace file field: #​65071
  • Fix playwright config merging for webServer property: #​65090
  • chore(logging): Disable info logging of critters in production: #​62776
  • [unstable_cache] Don't track dynamic fetches in an unstable_cache callback: #​65010
  • fix(page-static-info): refine warning message to emit once: #​65091
  • update redirect handling on forwarded action requests: #​65097
  • Tracing: allow opt-in flag to send build traces to url: #​65019
  • Turbopack: Allow client components from foreign code in app routes: #​64751
  • fix node.js module warning in middleware: #​65112
  • Fix: strip _rsc query for client navigation rsc request: #​65084
  • fix unhandled runtime error when notFound() triggered in generateMetadata w/ parallel routes: #​65102
  • Use vercel deployment url for metadataBase fallbacks: #​65089
  • Fix next/dynamic with babel and src dir: #​65177
  • update turbopack: #​65191
  • Fix crypto import in edge runtime with Turbopack: #​65171
  • Resolve global next Webpack alias last: #​65123
  • Add oslo, @​node-rs/argon2, and @​node-rs/bcrypt to external packages: #​65204
  • [trace] Reduce the size of .next/trace files: #​65101
  • Remove extra suspense boundary for default next/dynamic: #​64716
  • Only apply metadata manifest credentials for preview deployment: #​64940
  • fix(next): add missing browser.major type: #​65185
  • Turbopack: rename source map prefix: #​64965
  • fix(next/image): detect react@19 for fetchPriority prop: #​65235
  • Use POST for invokeIpcMethod: #​65238
  • fix redirect to url with semicolon: #​65165
  • Provide non-dynamic segments to catch-all parallel routes: #​65233
  • Fix an issue parsing catchall params: #​65277
  • Enable preloading entries by default: #​65289
  • Trace uploader: add worker spans to allowed events: #​65255
  • Update font data: #​65301
  • Update revalidateTag to batch tags in one request: #​65296
  • Revert "Remove extra suspense boundary for default next/dynamic": #​65309
  • Emit polyfill-nomodule.js into the build manifest polyfillFiles: #​65223
  • Remove broken #[turbo_tasks::value(transparent)] attributes: #​65336
  • Delete dead concatenate_output_assets function: #​65337
  • Upgrade Turbopack: #​65320
  • Pages router: Use attribute-based head children reconciler when strictNextHead is enabled: #​65408
  • Revert "Implement Turbopack trace server bindings": #​65419
  • use correct not-found component when triggered from a parallel route: #​65343
  • Implement Turbopack trace server bindings: #​65410
  • fix(next/image): bypass icns images: #​65414
  • [PPR] Enable incremental adoption: #​63847
  • fix: replace deprecated/removed functions in eslint-plugin-next: #​64251
  • docs: update revalidatePath & fix cache debug logic: #​65365
  • fix(next-core): mark turbopack embed fs to be internals: #​65420
  • fix(next/image): add missing svg test and refactor missing types: #​65345
  • build(edge): extract buildId into environment: #​64521
  • Revert "build(edge): extract buildId into environment": #​65425
  • fix(next/image): set max url length to 3072: #​65457
  • Support React 19 in App and Pages router: #​65058
  • Promote and rename server bundling options serverComponentsExternalPackages and bundlePagesExternals: #​65421
  • add experimental flag to allow forcing NODE_ENV=development in builds: #​65463
  • Support esm externals in app router: #​65041
  • fix: lazy load sharp: #​65484
  • make sure children is first in loader tree to fix head css bug on client navigation: #​65279
  • Re-land build(edge): extract buildId into environment: #​65426
  • improve versioned content map: #​65466
  • update turbopack: #​65503
  • Remove ineffective webpack rules and unused app-page context modules: #​65321
  • add page name to crashes: #​65504
  • Bump styled-jsx to 5.1.3: #​65485
  • Preload all chunks for next/dynamic in SSR: #​65486
  • fix!: add sharp timeout of 10 seconds: #​65517
  • Turbopack: new graph aggregation: #​65206
  • feat(next): revise server component error message: #​65468
  • chore: update prettier to 3.2.5: #​65092
  • Revert "Remove ineffective webpack rules and unused app-page context modules": #​65558
  • Remove auto appending xml extension to dynamic sitemap routes: #​65507
  • Remove rsc esm client module extra exports: #​65519
  • Handle nonce on Next.js injected script/link tags: #​65508
  • Fix multi-zone test by removing dependency list: #​65589
  • remove next-action header when following a redirect: #​65615
  • Remove @​next/font resolving for font loaders: #​65601
  • remove legacy deprecated warnings: #​65579
  • feat(turbopack): add support for bundlePagesRouterDependencies: #​65520
  • fix(next-swc): load wasm fallback if native bindings fail to load: #​65623
  • fix(next-swc): correct path interop to filepath for wasm: #​65633
  • Add proper deprecation/rename warnings for server bundling option: #​65575
  • feat!(next/image): change default Content-Disposition to attachment: #​65631
  • Pages router: Enable strict next/head children reconciler by default: #​65418
  • Apply react-server conditions to middleware: #​65424
  • fix(next-swc): Do not reuse compiler instance: #​65602
  • Show the new key of experimental config change warnings: #​65651
  • fix(next-swc): Fix SWC env target - include option: #​65693
  • Reapply "Implement Turbopack trace server bindings" (#​65419): #​65527
  • fix(resolve-metadata): allow for search params in canonical URL: #​65366
  • Remove missingSuspenseWithCSRBailout config: #​65688
  • Reland Remove ineffective webpack rules and unused app-page context modules: #​65694
  • Remove swc minify related code branches: #​65690
  • fix: load the tags manifest asynchronously: #​64563
  • Bump acorn to replace swc class properties transform: #​65715
  • fix: watch experimental/testmode in when running "pnpm dev": #​65689
  • Revert "chore: externalize undici for bundling": #​65727
  • [ppr] Request normalization fixes: #​65717
  • fix(next/image)!: error when src has leading or trailing space: #​65637
  • fext(next-swc): extend internal env flag to all native bindings: #​65748
  • Update font data: #​65719
  • fix(next): add alias to new react exports: #​65761
  • Update font data: #​65768
  • feat: remove font family hashing in next/font css: #​53608
  • Add script to script loader when strategy prop is undefined: #​65585
  • fix: ensure websockets are correctly passed: #​65759
  • Add clientTraceMetadata experimental option to propagate tracing data to the client: #​64256
  • Remove process auto polyfill in edge runtime: #​65751
  • feat: support import attributes: #​65749
  • Turbopack: Remove EcmascriptChunkingContext: #​65716
  • Error in build for middleware when import client-only: #​65792
  • fix(next): reject protocol-relative URLs in image optimization: #​65752
  • Fix broken HTML inlining of non UTF-8 decodable binary data from Flight payload: #​65664
  • Bundle the installed react for middleware: #​65811
  • fix middleware cookie initialization: #​65820
  • fix(next/image)!: set upstream timeout to 7 seconds: #​65821
  • feat(turbopack-ecmascript): use import attributes for annotations: #​59370
  • feat(next): experimental react compiler support: #​65804
  • Fix the runtime for rsc layer: #​65850
  • Ensure React Compiler only runs on first-party browser code: #​65851
  • fix: bump nft@0.27.1: #​65854
  • add effect packages into the optimized-by-default list: #​65465
  • Upgrade react@beta: #​65845
  • Ensure plugin-syntax-jsx doesn't have to be installed: #​65865
  • Update React from 4508873 to 04b0588: #​65864
  • Set default stale-while-revalidate header value to 1 year: #​65867
  • fix missing experimental warning for reactCompiler: #​65866
  • Error on mismatched minimal react version: #​65806
  • Revert "Set default stale-while-revalidate header value to 1 year": #​65887
  • Update turbopack & swc_core: #​65450
  • Revert "Fix broken HTML inlining of non UTF-8 decodable binary data f…: #​65906
  • experimental: unstable_after: #​65038
  • Docs: Replace "twitter.com" to "x.com": #​65917
  • fix(next/image): prefer sharp defaults, use mozjpeg for JPEG: #​65846
  • Update font data: #​65961
  • unstable_after: support nested unstable_after calls: #​65950
  • Fix revalidateTimings route for catchall index route: #​65843
  • fix(next): initial prefetch cache not set properly with different search params: #​65977
  • Add additional log to experimental ppr flag in next.config.js: #​65944
  • Change default of prerenderEarlyExit to true: #​65830
  • short-circuit OPTIONS requests to pages: #​65295
  • Turbopack: Implement next/font/local with BeforeResolvePlugin and show custom error message: #​65870
  • [Breaking] Disable automatic static generation for route handlers: #​65825
  • Fix router.refresh missing canonical url override: #​65999
  • Fix typo in JSDoc of ppr flag of next.config.js: #​66028
  • Revert webpack bundling layer changes for middleware/pages: #​66049
  • Upgrade lightningcss, disable grid prefixing: #​65986
  • [Breaking] disable client router cache for page segments: #​66039
  • Add dedicated client entry for Turbopack builds: #​65824
  • Update React from 04b0588 to 81c5ff2 : #​65869
  • implement unstable_rethrow: #​65831
  • chore(next/image): remove unused output parameter: #​66083
  • next-swc-napi: Enable "plugin" feature by default: #​66006
  • [turbopack] Use updated RawOutput API: #​65300
  • Skip setting to fetch cache when not modified: #​66055
  • [Memory] Add option to reduce memory usage caused by duplicate strings in webpack-sources: #​66003
  • Ensure metadata routes dont skip static optimization: #​66097
  • [unstable_after] fix occasional dev-mode crash in edge runtime pages: #​66099
  • fix: ensure prefetch data routes are always added when app has ppr enabled: #​66102
  • [Breaking] Disable automatic fetch caching: #​66004
  • Update React from 81c5ff2 to f994737: #​66093
  • feat(turbopack): Attempt to detect and warn about slow file IO: #​66057
  • update typescript plugin to support experimental_ppr: #​66141
  • add next-build-test binary / library: #​64121
  • add bash script to run a benchmark: #​64717
  • Handle next/navigation import in middleware: #​66175
  • [ppr] Data route fix: #​66190
  • Implement typeof window inlining for Turbopack: #​66128
  • Bump React types to latest 18.3.x: #​66181
  • Bump styled-jsx to 5.1.6: #​66185
  • Fix source map loading failure for path-to-regexp: #​66242
  • Bump React types to 19 rc: #​66186
  • Reland bunling webpack middleware changes (#​66049): #​66052
  • fix dev overlay version indicator style: #​66278
  • [ppr] Don't mark RSC requests as /_next/data requests: #​66249
  • enhance: ignore nextjs version fetch error in dev overlay: #​66271
  • Trigger error for stream on client when it is not finished as expected: #​65798
  • chore(next-font): bump @​capsizecss/metrics package to the latest: #​66302
  • refactor: remove isRSCRequestCheck: #​65587
  • feat: add copy button for runtime error: #​65921
  • Transform client reference in middleware layer: #​66294
  • feat(react-dev-overlay): Open nvim with line number: #​66358
  • Restore optimization to ignore legacy APIs in react-dom/server: #​66371
  • fix: ensure dynamic fetches are tracked correctly: #​66349
  • Update font data: #​66359
  • next-swc-napi: Remove "plugin" from default feature list: #​66380
  • Revert "Middleware RSC bundling changes": #​66422
  • chore: bump supported msw version to v2.3.0: #​66351
  • remove duplicate export workers: #​66388
  • refactor page export error tracking: #​66392
  • add experimental flag for retrying static generation: #​66393
  • Update rust toolchain to nightly-2024-05-31: #​66428
  • fix erroneous RSC calls on hash changes: #​66434
  • Improve JSDoc link for Metadata API: #​66455
  • Warn metadataBase missing in standalone mode or non vercel deployment: #​66296
  • fix: ensure route handlers properly track dynamic access: #​66446
  • Fix broken BrowserInterface type: #​66461
  • Polish copy button state and styles: #​66370
  • expose experimental option to set a memory limit for turbo: #​66101
  • avoid filtering the error message: #​65311
  • Fix next/navigation type augmentation: #​66489
  • fix: only generate prefetch rsc for ppr enabled routes: #​66395
  • add layerAssets property to FlightDataPath: #​66354
  • fix missing stylesheets when parallel routes are present: #​66300
  • fix css order for some edge cases in App Dir: #​66500
  • Fix fetch deduping in dev after reload: #​66507
  • optimize server actions: #​66523
  • fixing next/dynamic transform for turbopack: #​66527
  • improve order of spans in tracing: #​66516
  • add more tracing: #​66528
  • refactor: deprecate future directory: #​66432
  • fix 'loading' segment not being copied into new CacheNode: #​66538
  • fix NextRequest proxy in edge runtime: #​66551
  • Re-land Fix broken HTML inlining of non UTF-8 decodable binary data from Flight payload #​65664: #​65988
  • feat(turbopack): Introduce RcStr: #​66262
  • Remove unused state in Server Actions transform: #​66547
  • Add playwright-core to server-external-packages.json: #​66549
  • Update to turbopack-240605.2: #​66568
  • update turbopack: #​66575
  • Fix loading navigation with metadata and prefetch: #​66447
  • Update font data: #​66582
  • Fix Server Actions closure idents tracking: #​66601
  • Update to turbopack-240606.2: #​66606
  • update turbopack: #​66627
  • revert app-render changes related to determining RSC/Prefetch requests: #​66648
  • Revert "feat: Update swc_core to v0.92.10": #​66640
  • remove staticWorkerRequestDeduping flag & unused IPC code: #​66655
  • prevent duplicate RSC fetch when action redirects: #​66620
  • Update URL provided from unstable_cache: #​66651
  • ensure router cache updates reference the latest cache values: #​66681
  • Fix esm property def in flight loader: #​66286
  • Update React from f994737 to 1df34bd (19.0.0-rc.0): #​66533
  • fix(turbopack): remove tailwindcss from default external packages: #​66706
  • Append sitemap extension and optimize imafe metadata static generation: #​66477
  • feat(turbopack-ecmascript): cache external modules with wrapper: #​63337
  • [ppr] Enable static shell debugging in other environments: #​65483
  • Add timeout/retry handling for fetch cache: #​66652
  • Fix inconsistency with 404 getStaticProps cache-control: #​66674
  • [lint] Allow lint warnings to pass in CI: #​66140
  • Revert "Fix esm property def in flight loader": #​66727
  • Update React from 1df34bdf62 to 6230622a1a: #​66726
  • Prevent append of trailing slash in cases where path ends with a file extension: #​66636
  • Update font data: #​66730
  • Use addDependency to track metadata route file changes: #​66714
  • fix: app-router prefetch crash when an invalid URL is passed to Link: #​66755
  • Ensure urlPathname is always a pathname: #​63846
  • build: Update swc_core to v0.93.2: #​66698
  • chore: bump turbo to 2.0.3: #​66762
  • Revert "chore: bump turbo to 2.0.3": #​66775
  • use node js chunking context for evaluation: #​66710
  • refactor: simplified async storage wrappers: #​66767
  • Update devdependecy commander: #​66771
  • chore: bump turbo to 2.0.3: #​66784
  • Make InvalidImportResolvePlugin a BeforeResolvePlugin: #​66622
  • Fix: only inject clientTraceMetadata into html page once: #​66763
  • Use turbo-tasks-malloc on all platforms: #​66815
  • [ppr] Improve DX for static shell debugging in dev mode: #​66806
  • Reland "Middleware to use react-server condition": #​66534
  • Revert "Use turbo-tasks-malloc on all platforms": #​66884
  • fix: wait for playwright fixture to setup before running test: #​66842
  • Handle action middleware rewrite case: #​66852
  • Revert "Revert "Use turbo-tasks-malloc on all platforms" (#​66884)", fix aarch64 compilation in CI: #​66885
  • [Turbopack] improve memory measurement suite: #​66748
  • Fix: remove enegine requried pnpm version: #​66914
  • Remove worker condition name when resolving files in the Edge runtime: #​66808
  • small memory and tracing improvement: #​66899
  • build: Update swc_core to v0.95.2: #​66902
  • Testmode: use ipv4 address to reduce dependency on local system configuration: #​66968
  • Update font data: #​66969
  • Refactor internal routing headers to use request meta: #​66987
  • Remove lazyDataResolved flag: #​66578
  • refactor(next): package.json keywords back-end should be backend: #​66974
  • Fix internal route redirection with absolute urls outside basePath: #​64604
  • Expand test for AsyncLocalStorage to avoid throwing in old chrome: #​61873
  • fix caching of client chunks: #​66971
  • Run and report benchmarks: #​66851
  • refactor: remove hydration link appending console interception: #​67011
  • Use react-dom/server.edge instead of .browser in Next.js runtime: #​66954
  • feat(turbopack): add support for esm externals in app dir: #​64918
  • Add sassOption implementation to support sass-embedded: #​64577
  • Fix esm property def in flight loader: #​66990
  • Upgrade Turbopack: #​67017
  • fix: bad script tag in layout hydration error: #​66998
  • Ensure Turbopack build runs when experimental-compile option is used: #​67049
  • Remove handling on findDOMNode warning: #​67054
  • ensure accessing search params mark dynamic usage: #​67105
  • Add build diagnostics for saving debug information during a build: #​66187
  • chore: add detection for image more types: #​67112
  • dx: add pagePath info to missing component error: #​66916
  • Add experimental flag for providing entry paths: #​67134
  • Fix noindex is missing on static not-found page: #​67135
  • Refactor code: #​64429
  • Fix server action edge redirect with middleware rewrite: #​67148
  • chore: turbopack metadata routes normalizing: #​67159
  • codemod: add next/dynamic imports codemod: #​67126
  • Create React aliases for SVG components: #​67104
  • chore: fix react-is RC version pinning: #​66676
  • Remove extra suspense boundary for default next/dynamic: #​67014
  • Remove devdependency uuid: #​67190
  • make next/dynamic visit more incremental and cacheable: #​66912
  • Make synced react-is version more obvious: #​67189
  • fix: Narrow down from string | undefined to string: #​65248
  • Upgrade Turbopack: #​67209
  • [ppr] Handle corrupted postponed state: #​67021
  • fix(turbopack): add no-op resolveAbsolutePath to browser runtime: #​67215
  • feat: enable @​typescript-eslint/recommended in create-next-app --typescript: #​52845
  • fix missing command in next-codemod: #​67216
  • chore(docs): improve visual appearance of badges in README.md: #​67254
  • refactor: replace glob w/ fast-glob in eslint plugin: #​67261
  • reject actions with invalid RSC responses: #​67059
  • chore: bump pnpm to 9.4.0: #​64945
  • packages/next: opt ts-morph into serverExternalPackages: #​67284
  • fix(next/image): improve w and q query string validation for integers: #​67293
  • chore: throw when three dot character is detected in segment: #​67348
  • Add warn and telemetry for customized esmExternals: #​67339
  • perf: improve retrieving versionInfo on Turbo HMR: #​67309
  • fix(next/image): undo tight coupling between priority=true and fetchPriority=high: #​67351
  • use fetch priority for app prefetches: #​67356
  • fix prefetch bailout detection for nested loading segments: #​67358
  • fix(turbopack): build all parallel routes to make sure HMR works: #​67222
  • Update @swc/core npm package to v1.6.6: #​67379
  • feat: Pass module: "unknown" to SWC minfiier: #​66817
  • [chore] Update turbopack to turbopack-240703.1: #​67406
  • fix dynamic param extraction for interception routes: #​67400
  • Upgrade TypeScript to v5.5.2: #​67113
  • Fix typo in MDX documentation: #​67432
  • Transpile geist by default: #​67402
  • Turbopack + Relay: correctly implement artifact_directory to fix multi-project test: #​67403
  • fix(next/image): handle invalid url: #​67465
  • Bump minimum Node.js version to 18.18 (up from 18.17): #​67274
  • Update font data: #​67472
  • avoid merging global css in a way that leaks into other chunk groups: #​67373
  • refactor: avoid unnecessary after wrapper: #​67463
  • fix(next): add cross origin in react dom preload: #​67423
  • Remove obsolete isNodeDebugging option from next server: #​67492
  • Fix VS Code debugging: #​66254
  • Dedupe double logged server errors: #​67464
  • Turbopack build: Ensure Pages Router manifests are loaded with buildId: #​67317
  • next-build-test improvements: #​67460
  • Update font data: #​67574
  • Tweak the display for error trace: #​67572
  • Turbopack build: Ensure build manifest routes are sorted: #​67583
  • Clean up flight headers: #​67525
  • feat(next): next.config.ts: #​63051
  • Fix PPR navigations & revert layerAssets property from FlightData: #​67435
  • Update experimental trace handling to capture more deps: #​67599
  • Write out task statistics if NEXT_TURBOPACK_TASK_STATISTICS is set: #​67164
  • fix PPR navigations when visiting route with seeded cache: #​67439
  • Turbopack build: Add missing Compiled successfully message: #​67598
  • feat: type hint for env in dev mode: #​67157
  • perf(turbopack): only build last parallel route: #​67588
  • feat: instrumentation onRequestError: #​67539
  • Reduce console error patching: #​67433
  • Share the hydration error info extraction util: #​67639
  • Add prerender indicator for app router: #​67306
  • cleanup unused server util: #​67645
  • fix: typo prerender indicator link: #​67650
  • style: simplify string formatting: #​66772
  • build: upgrade edge-runtime: #​67565
  • Update swc_core to v0.96.9: #​67378
  • Move request header parsing for app-render into a dedicated function: #​67524
  • refactor: typedEnv is not readonly: #​67693
  • Report HMR latency when a Server Component changes: #​67699
  • refactor: merge the same util to detect nextjs navigation errors: #​67672
  • Move .next/chunks folder to .next/build/chunks: #​67610
  • Add render source to onRequestError context: #​67703
  • refactor <AppRouter /> render structure: #​64594
  • cleanup unused pages router method: #​67722
  • fix(turbopack): allow page segments that don't alter the path after catchall: #​67713
  • Convert secondary fetchServerResponse params into options object: #​67526
  • Server Components HMR Cache: #​67527
  • pages router: ensure x-middleware-cache is respected: #​67734
  • Fix typescript setup for packages/font and turbo/generators: #​67687
  • Turbopack build: Exclude .d.ts files as routes: #​67744
  • chore: Update @swc/core and @swc/heleprs: #​67757
  • feat: facebook metadata: #​65713
  • fix: unstable_cache should not cache new result in draft mode: #​67772
  • Fix edge preview props are not matched with cookie: #​67779
  • Wait for ✓ Ready log in NextInstance#start: #​67767
  • Ensure serverSourceMaps is in webpack cache key: #​67786
  • TypeScript plugin: Allow functions in action-like props: #​67211
  • update turbopack: #​67795
  • Drop edge prerender manifest: #​67787
  • perf: Optmize react_server_component transform: #​67335
  • Turbopack build: Implement app/global-error.tsx: #​67803
  • Ensure instrumentation register only call once: #​67805
  • Set @​next/font to private and remove peer deps field: #​67797
  • Handle server actions error in onRequestError: #​67769
  • Don’t show long internal Rust stack traces to users: #​67678
  • Align the typeEnv value type with default process env value type: #​67804
  • ensure component tree is only rendered once during SSG/revalidations: #​67680
  • refactor client router initialization: #​67821
  • Fix for typedRoutes when setting pageExtensions - for typedRoutes MDX support: #​67824
  • [Diagnostics] Record framework.json after creating and cleaning distDir: #​67819
  • Enable experimental.serverComponentsHmrCache by default: #​67800
  • Drop the experimental env var for onRequestError API: #​67856
  • Add additional handling for experimental tracing: #​67785
  • Update font data: #​67872
  • update turbopack: #​67874
  • Hide caniuse-lite outdated warning in terminal: #​67869
  • Support compiler.removeConsole with Turbopack: #​67849
  • remove extraneous field from FetchServerResponse: #​67865
  • refactor FetchServerResponse shape: #​67866
  • Support reactRemoveProperties with Turbopack: #​67853
  • prerendered pages should use static staleTime: #​67868
  • ensure cookies set in middleware can be read in a server action: #​67924
  • Log fetch requests during client-side navigation: #​67925
  • Fix fetch logging in edge runtime: #​67952
  • fix: merged middleware cookies should preserve options: #​67956
  • feat: disable development logging by setting logging: false in next config: #​67590
  • Add experimental flag for chunk failure handling during app navigation: #​67926
  • Do not limit the number of fetch requests that are logged: #​67957
  • Fix a bug in the webpack-sources patch that happens sometimes when using the webpack cache: #​67928
  • Ensure "[Fast Refresh] rebuilding" logs have a matching "[Fast Refresh] done" log in Webpack: #​67968
  • Fix logging option internal consuming: #​67972
  • Turbopack build: Implement reactProductionProfiling: #​67909
  • Update metadata ready tracking: #​67929
  • Fix next lint with async eslint-formatters: #​67860
  • refactor: move rust crates to the repo root directory: #​67780
  • Wait for pending Webpack Hot Updates before evaluating JS from RSC responses: #​67673
  • Stop handling hydration errors from unsupported React versions: #​67903
  • Update React from 6230622a1a-20240610 to dfd30974ab-20240613: #​66711
  • Prevent unnecessary rsc reloads on navigation: #​68049
  • update prefetching jsdoc & documentation: #​68047
  • Improve caching of next-app-loader to prevent more fs calls.: #​67792
  • Update Next Command name, add types & update variable wording: #​68007
  • Ensure experimental trace invalidates correctly: #​68076
  • Env follow-up for experimental trace: #​68086
  • log FetchMetrics during SSG to diagnostics dir: #​68078
  • remove unused preloadConfig flag: #​68082
  • refactor: isolate the params type: #​67981
  • Ignore serverComponentChanges in pages: #​66312
  • Fix global hash for experimental tracing: #​68122
  • Restructure trace experiment manifest: #​68131
  • Fix race condition with experimental tracing: #​68143
  • update turbopack: #​68129
  • Apply serverExternalPackages inside node_modules and add keyv: #​67948
  • [image, link] fix ref merging for callback refs that return a cleanup function: #​68123
  • Revert "[image, link] fix ref merging for callback refs that return a cleanup function": #​68176
  • Revert "Update metadata ready tracking": #​68200
  • Reapply "[image, link] fix ref merging for callback refs that return a cleanup function" (#​68176): #​68199
  • fix: properly patch lockfile against swc bindings: #​66515
  • Fix ImageResponse headers merging: #​67642
  • Update React from 6230622a1a-20240610 to 76002254-20240724: #​68149
  • fix: grammar in jsdoc: #​68253
  • Add telemetry for React Compiler usage: #​68079
  • Ensure we only handle app nav failure for actual error: #​68285
  • Drop @​babel/plugin-transform-classes by default: #​68290
  • Move request logging code out of NextNodeServer: #​68286
  • Fix hmr assetPrefix escaping and reuse logic from other files: #​67983
  • Add deployment id header for rsc payload if present: #​67255
  • Turbopack: Implement HMR for module-scoped environment variable changes: #​68209
  • Revert "Update React from 6230622-20240610 to 7600225-20240724 (#​68149)": #​68300
  • Log cached fetches during HMR refreshes if enabled in logging config: #​68287
  • Upgrade Turbopack: #​68327
  • next/form: #​68102
  • Remove legacy next/link prefetch={true} warning: #​68326
  • Drop react-dev-overlay from production bundle: #​68197
  • Update React from 6230622a1a-20240610 to 3208e73e-20240730: #​68330
  • Update metadata ready tracking (reland): #​68342
  • [form] typedRoutes support for action prop: #​68323
  • fix: allow empty string value for opengraph: #​68262
  • update turbopack: #​68354
  • fix renaming of page files, add handling of symlinked pages: #​68195
  • Remove quotation marks from object key : #​68337
  • Move static indicator into dev overlay: #​68369
  • Ensure we match comment minify behavior between terser and swc: #​68372
  • update turbopack: #​68399
  • chore: fix references for the new turbopack crates: #​68128
  • refactor: merge turbopack crates into next.js: #​68127
  • Allow users to use process.env.NEXT_SSG_FETCH_METRICS to control fetch metrics during SSG: #​68378
  • refactor: replace indexOf === 0 with startsWith: #​68116
  • feat: Enable tree shaking of turbopack: #​66689
  • Use font color for static indictor close icon: #​68417
  • Support @​next/mdx with Turbopack: #​68397
  • Update React from 3208e73e-20240730 to 06d0b89e-20240801: #​68444
  • Fix ncc clearing task: #​68468
  • Clean-up legacy terser code: #​68462
  • [ppr] Configuration for max react headers length: #​67715
  • Stabilize outputFileTracing configs: #​68464
  • Delete debug tarball file and add to gitignore: #​68478
  • ppr: prevent CacheNode.loading from being cleared on popstate: #​68488
  • Colocate cssnanon-preset-simple unit test with source: #​68508
  • Compile path-to-regexp via ncc: #​68465
  • Add env handling for experimental tracing: #​68516
  • chore: typo in bootrap to bootstrap: #​68517
  • Refactor ModuleOptionsContext API: #​67864
  • fix(turbopack): don't log errors when they are thrown: #​68331
  • Ensure client components are in experimental trace: #​68492
  • Ensure webpack cache does not conflict with experimental tracing: #​68515
  • Add store only mode for experimental tracing: #​68548
  • Move turbopack panic log to tmpdir: #​67930
  • Allow dev server to exit cleanly (SIGINT/SIGTERM): #​67165
  • Don't throw TurbopackInternalError if there are issues: #​68529
  • Handle more cases with env inlining: #​68590
  • make sure all the crates in turbopack are considered when caching: #​68593
  • refactor: cleanup types and logic in build: #​68125
  • Fix store only case for tracing: #​68601
  • Remove async module detection from client flight manifest: #​68584
  • fix: NPM Workspace throwsENOWORKSPACES error when fetching registry: #​68522
  • fix: normalize-asset-prefix adding leading slash when URL assetPrefix is provided: #​68518
  • Sitemap image tag support: #​68034
  • chore(next-swc): avoid deleting .gitignore when running "clean" script: #​68624
  • Fix favicon merging with customized icons: #​67982
  • Add tests for self-importing packages: #​68070
  • refactor static workers to help with parallelization & cache sharing: #​68546
  • Handle pruning mismatching cache for experimental trace: #​68635
  • Ensure next-server prepare only execute once: #​68616
  • fix app router prefetch deduping: #​68642
  • Turbopack HMR: Reload the page when server session changes: #​68630
  • Remove extraneous configs from cache manifest: #​68645
  • fix: HMR not works when assetPrefix set to URL: #​68622
  • Reject next image urls in image optimizer: #​68628
  • Check vendored @ampproject/toolbox-optimizer into version control: #​68466
  • Use proper react release channel for react-dom/static aliases: #​68663
  • Stop mangling server runtime in dev: #​68641
  • Ensure we hard error on invalid middleware config export: #​68638
  • Ensure we copy map file as well for experimental tracing: #​68676
  • chore: remove asset prefix warning log and update docs: #​68681
  • Update React from 06d0b89e-20240801 to 187dd6a7-20240806: #​68594
  • Prevent incompability with 'eval-source-map' and mangle: false: #​68688
  • Update font data: #​68639
  • Introduce prerenderAsyncStorage and refactor app-render: #​68637
  • chore: remove duplicate storeHydrationError call: #​68736
  • The patched fetch function should not buffer a streamed response: #​68447
  • fix(create-next-app): link to app dir docs in next-env.d.ts in app dir templates: #​68534
  • Fix pnpm build --filter next on a clean repository: #​68693
  • Rename url to path for onRequestError request arg: #​68672
  • misc: add dd-trace to server externals: #​68785
  • [after] remove createCacheScope: #​68744
  • Remove obsolete deleteAppClientCache() call from webpack plugin: #​68535
  • Clean up require.cache handling: #​68743
  • Fix duplicate logs for invalid config exports: #​68696
  • Always collect static icons for all segments: #​68712
  • [Turbopack] write action manifest atomically: #​68538
  • Add node-cron to server externals: #​68788
  • re-use loading from prefetch cache entries across searchParams: #​68340
  • Ensure bail out on ssr error in static generation: #​68764
  • rename fetchServerResponse response properties: #​68814
  • Only opt into navigation PPR flow if prefetched route was PPRed: #​68815
  • refactor: incremental cache cleanup: #​68602
  • unfork navigateReducer: #​68816
  • remove circular ExportError import from SSG worker: #​68858
  • re-order CacheNodeSeedData to put containing segment first: #​68847
  • Normalize vendored entrypoints: #​68502
  • fix(next): properly pass layout-level maxDuration config to the children page segments on build: #​68793
  • chore: fix typos in comments: #​68792
  • Fix issue with afterFiles rewrites not working when prefixed with assetPrefix: #​68694
  • refactor(turbo-tasks): Add TaskPersistence enum for task creation functions: #​68866
  • Remove invalid app router etag normalizing: #​68948
  • perf(turbo-tasks-macros): Move assert_returns_resolved_value into helper module: #​68867
  • fix i18n data pathname resolving: #​68947
  • refactor(turbo-tasks): Use an enum for strongly_consistent/ReadConsistency instead of a bool: #​68913
  • Update React from 187dd6a7-20240806 to 49496d49-20240814: #​68898
  • Lookup alias and import maps using Pattern instead of String: #​68274
  • perf(turbopack): improve app structure performance: #​67397
  • Simplify static indicator: #​68961
  • use setImmediate (if present) in edge react-dom/RSDW/RSDT: #​68952
  • Fix flying-shuttle full mode breaking instrumentation: #​68976
  • Update font data: #​68964
  • Revert "Ensure bail out on ssr error in static generation": #​68986
  • Add draft mode flag for multi-zone: #​68997
  • Reland "Ensure bail out on ssr error in static generation": #​68999
  • Update React from 49496d49-20240814 to 1eaccd82-20240816: #​68991
  • Improve Metadata JSDoc: #​69037
  • Include proper instrumentation entry in required files manifest: #​68983
  • Resolve route interception problem with (..)(..): #​69012
  • fix: Move tree shaking config to experimental.turbo: #​69050
  • Turbopack build: Fix metadata handling: #​69086
  • Remove references to removed react-dom/server APIs in Webpack shims: #​68987
  • misc: tweak fetch patch restoration timing during HMR to allow for userland fetch patching: #​68193
  • Remove unused react-dom/server.browser references: #​68988
  • refactor: fallback updates: #​68631
  • refactor: update fallbacks to use response cache: #​68603
  • Improve create not found tree and remove asNotFound: #​68910
  • bugfix: ensure rsc isn't reused for page segments when reusing loading data: #​69123
  • add support for css-in-js ressource mapping in experimental lightningcss-loader: #​64551
  • Stablize instrumentation.js: #​68853
  • Ensure vendored react-dom/server.browser is used: #​69142
  • Ensure assertion failures include all versions in rsc-basic tests: #​69138
  • bugfix: ensure prefetch aliasing doesn't apply URL redirect: #​69153
  • Remove optimizeFonts (Automatic font optimization) superseded by next/font: #​69137
  • Ensure fetch cache TTL is updated properly: #​69164
  • correctly rethrow instrumentation loading error: #​65251
  • disable prefetch aliasing in development: #​69168
  • refactor: create shared utils for mod resource: #​69145
  • remove action pathname normalizer: #​69181
  • Apply optimization for unused actions: #​69178
  • Improve SWC transform ID generation: #​69183
  • Update React from 1eaccd82-20240816 to eb3ad065-20240822: #​69196
  • [Tracing] Trace next-dev spans to represent the dev server: #​69206
  • Refactor unused import and object in Flight plugin: #​69266
  • refactor: group react dev overlay entry: #​69223
  • handle uncaught exceptions in worker: #​69335
  • Set max retries for build failures to zero: #​69340
  • send initialCanonicalUrl in array format to prevent crawler confusion: #​69370
  • remove unused argument to applyPatch: #​69376
  • Respect webpackIgnore and turboIgnore comments in the parser: #​68451
  • refactor path creation in walkTreeWithFlightRouterState: #​69383
  • Partial Fallback Prerendering: #​68958
  • Upgrade React from eb3ad065-20240822 to f90a6bcc-20240827: #​69415
  • chore: add logs to download-swc ci job: #​69425
  • Upgrade React from 19.0.0-rc-f90a6bcc-20240827 to 19.0.0-rc-7771d3a7-20240827: #​69417
  • Introduce dynamicIO experiment: #​67571
  • Add module id strategy option to next config: #​69319
  • cleanup FlightDataPath array access/slicing: #​69241
  • normalize flight data after receiving server response: #​69460
  • Support turbo: true option for custom server: #​69464
  • bugfix: aliased prefetches should flow through PPR handling: #​69476
  • fix: bump sharp@0.33.5: #​69524
  • fix: styledComponents schema: #​69230
  • Add browser devtool inspect url copy button to dev overlay: #​69357
  • Lazily init fetch dedupe cache: #​69492
  • Turbopack build: Fix middleware matchers implementation: #​69602
  • chore(metadata): add clarifying comment: #​69549
  • Remove unsupported providerImportSource option: #​69609
  • fix: clientComponentLoading span type: #​69295
  • Fix typos: #​69568
  • fix(eslint): allow typescript-eslint v8: #​68807
  • Allow external image urls with _next/image pathname to be rendered via Image component: #​69586
  • [Turbopack] gracefully stop turbo-tasks to allow persisting to complete: #​69661
  • fix: ensure absolute paths are handled correctly with --file option in next lint command for lint-staged compatibility: #​69220
  • dev-overlay: Implement CopyButton without useActionState or async transitions: #​69494
  • Update swc_core to v0.103.1: #​69605
  • Run link-ref tests in /app and /pages: #​69564
  • Partial Fallback Prerendering Route Shells: #​69282
  • Ensure externalized React entrypoints use vendored React in App Router: #​69610
  • Turbopack build: Implement --experimental-app-only flag: #​69722
  • Use vendored React version in Middleware and Instrumentation: #​69619
  • [Turbopack] refactoring/todos: #​69663
  • misc: typo in var name: #​69745
  • Partial Prerendering Basepath Fix: #​69520
  • pages bugfix: prevent cancellation errors from being logged: #​69766
  • Disable experimental.optimizeServer by default: #​69788
  • Fix middleware fallback: false case: #​69799
  • ensure aliased prefetches return correct segment key: #​69850
  • feat(turbopack): add experimental.turbo.root config option: #​69737
  • Turbopack dev/build: Initial browserslist passing: #​69781
  • [Turbopack] only subscribe to changes in dev mode: #​69862
  • HMR: Log unexpected Turbopack errors to a file: #​68698
  • fix: use correct protocol when -H and --experimental-https are enabled: #​69822
  • fix: remove unnecessary console in isDynamicPostpone: #​69457
  • Add ability to customize Cache-Control: #​69802
  • Support React 18 in Pages Router: #​69484
  • Revert "Support React 18 in Pages Router": #​69911
  • Pass client trace metadata to client in pages router: #​69620
  • Fix font size for build error version status: #​69811
  • feat(image-optimizer): use previously cached image cache entry if upstream image is identical: #​67257
  • [Turbopack] print invalid message correctly: #​69964
  • fix: correct metadata url suffix: #​69959
  • [Turbopack] add error for invalid exports: #​69819
  • handle empty query param issue in url redirects #​68039: #​68157
  • ensure prefetch entry is not mutated: #​69948
  • Remove invalid fallback revalidate value: #​69990
  • Update font data: #​70003
  • [Turbopack] stable Vcs without TraitRef::cell: #​70029
  • [Turbopack] fix HmrEntryModule: #​69965
  • [Turbopack] remove entries from versioned content map again: #​69913
  • Fix not-found case with incremental tracing: #​70041
  • Upgrade React from 7771d3a7-20240827 to 94e652d5-20240912: #​70037
  • breaking: remove geo and ip from NextRequest: #​68379
  • fix: Add import-in-the-middle to server-external-packages: #​68937
  • Ensure .d.ts files are not processed in babel-loader / swc-loader: #​66074
  • [Turbopack] [HMR] Allow Options to be returned by VersionedContentMap: #​69079
  • [Turbopack] report error to stderr when an error in a subscribtion happens: #​69977
  • Update experimental trace tracking: #​70044
  • fix(next): Fixed an error when next#dev runs in windows: #​70013
  • Upgrade React from 94e652d5-20240912 to 206df66e-20240912: #​70076
  • Add "@​sparticuz/chromium" to server-external-packages.json: #​69127
  • skip generating cert each time: #​67122
  • fix: clone response in first handler to prevent race: #​70082
  • fix: eslint-plugin-next glob: #​68773
  • Fix eslint root dirs test on Windows: #​70160
  • fix: rsc content-type header not matching with charset: #​70033
  • Fix startTime error on Android 9 with Chrome 74: #​67391
  • Fix regression in TS plugin: allow reset prop in error files: #​69777
  • Ensure we chunk revalidate tag requests: #​70189
  • fix(lint): no-html-link in appDir: #​68770
  • fix(next): skip conventional type check for _private folder convention: #​64177
  • Only wait for metadata when dynamicIO experiment is on: #​70192
  • chore: bump jscodeshift version: #​70203
  • Upgrade React from 206df66e-20240912 to a99d8e8d-20240916: #​70190
  • Fix vercel og package memory leak: #​70214
  • Replace URL.canParse: #​70215
  • Add support for dynamicIO experiment to route.ts modules: #​70208
  • [ppr] Allow fallback pages to be revalidated: #​70199
  • Re-add internal env for providing page paths: #​70235
  • feat: add polyfill of URL.canParse for browser compatibility: #​70228
  • Remove dependecy graceful-fs and types: #​67194
  • chore: add comments for polyfill imports and file paths: #​70233
  • Upgrade React from a99d8e8d-20240916 to 5dcb0097-20240918: #​70225
  • Run @next/codemod tests in CI: #​70248
  • Upgrade React from 5dcb0097-20240918 to e740d4b1-20240919: #​70260
  • bugfix: actions that redirect should reject the action promise: #​69945
  • Fix missing cache-control on SSR app route: #​70265
  • Remove unused app_structure from next-swc-napi: #​70282
  • fix: match file path url escaping during build and serve: #​70256
  • Rename loader_tree to app_page_loader_tree: #​70283
  • Rename app directory "components" to "modules": #​70285
  • Honor redirect type in server actions: #​70279
  • refactor: collect all isThenable/isPromise definitions: #​70293
  • feat(next/image): add support for decoding prop: #​70298
  • Improve server directive SWC transform: #​70257
  • Remove unused Server IDs tracking on the server graph: #​70317
  • relocate dynamic APIs: #​70300
  • Update root not found boundary to not introduce Server Component: #​70328
  • feat(next): codemod for removed geo and ip of NextRequest: #​70064
  • Mention app dir in TS setup tip: #​70337
  • Add additional fixes for experimental tracing: #​70356
  • Fix duplicate headers in response to static assets if overrides specified by user: #​70127
  • fix: change duplicated POST method to PUT method: #​70308
  • Externalize node binary modules for app router: #​70330
  • Support fallback params when the layout is a client component: #​70329
  • Codemod for Async Request API: #​69572
  • Extract createAppRouteCode from next-app-loader.ts: #​70352
  • [Type Definition] - Updates the manifest types to reflect the current specifications: #​68273
  • Fix middleware experimental trace case: #​70372
  • Fix legacy env config with experimental tracing: #​70380
  • Update font data: #​70377
  • add missing node modules to externals: #​70382
  • Avoid prefetch request before meta-tag-based redirect: #​70350
  • Turbopack: improve stack trace in overlay: #​70343
  • refactor: more precise types for req/res in withRequestStore: #​70357
  • Add test for TLA in client references: #​70022
  • Upgrade React from e740d4b1-20240919 to e4953922-20240919: #​70290
  • feat(next-codemod): add upgrade command: #​69935
  • refactor: reorganize client error listeners: #​70373
  • refactor: reorganize patch console: #​70374
  • types: improve napi binding typing using generated types: #​69680
  • Upgrade React from e4953922-20240919 to 5d19e1c8-20240923: #​70351
  • feat(next/image): add support for images.remotePatterns.search: #​70302
  • chore: throw error when trying to use next.config.mts/.cjs/.cts (not supported yet): #​70376
  • Fix legacy env case with experimental tracing: #​70411
  • chore: auto-format generated types with prettier: #​70405
  • refactor(next-codemod): migrate to commander and prompts: #​70409
  • chore: auto-format generated types with prettier: #​70405
  • refactor(next-codemod): migrate to commander and prompts: #​70409
  • Extend support of Pages router to React 18: #​70219
  • Basic implementation of cache-wrapper with RSC serialization: #​70435
  • fix: updated typescript types for React API's: #​70410
  • Fix type error from merge: #​70481
  • Ensure validator is included in vendored AMP validator: #​70482
  • [Breaking] Update Dynamic APIs to be async: #​68812
  • Use Server/Client Manifests from Singleton in encryption-utils: #​70485
  • refactor: remove ability to call getStaticPaths from app directory pages: #​70477
  • refactor: extracted zod configuration: #​70478
  • [ppr] Added fallback shell debugging: #​70528
  • Remove shouldRevalidateStale concept from CacheHandlers: #​70493
  • fallback shell should not error when dynamic due to params access even with dynamic = "error": #​70534
  • Add cache scope handling for dynamic IO for dev/build: #​70408
  • remove unimplemented onError errorInfo argument: #​70531
  • Add env for setting cache handler path: #​70537
  • Disable "use cache" outside of dynamicIO: #​70538
  • Include buildId in the cache breaker until we have hashed Action IDs: #​70542
  • Support dynamicIO in middlware routes and generateStaticParams: #​70544
  • Unwrap createServerReference, and pass additional parameters: #​69190
  • Turbopack build: Fix benchmark running with webpack: #​70533
  • [form] allow turning prefetching off: #​68305
  • [after] fix: execute revalidates added within unstable_after(): #​70458
  • Upgrade React from 778e1ed2-20240926 to 3edc000d-20240926: #​70560
  • Exclude Object and Promise prototype properties from shadowing for params and searchParams: #​70568
  • refactor prefetch alias handling: #​70532
  • refactor: handle onlyHashChange logic sooner: #​70569
  • Updates our sync property access for params and searchParams to allow value: #​70570
  • codemod: improve dynamic API cases: #​70517
  • Auto rotate Server Reference hash salt periodically: #​70516
  • remove leftover console.log introduced in #​70532: #​70615
  • Add connection() as a new dynamic API: #​69949
  • Fix: Set busboy defParamCharset to utf8: #​70348
  • Update dynamicIO experiment to use React canary: #​70571
  • refactor: remove unnecessary page segment check in ppr-navigations: #​70572
  • Wire AsyncLocalStorage within a cached context: #​70573
  • Fix revalidateTag() behaviour when invoked in server components: #​70446
  • next-upgrade: Ensure install packages works on exotic package revisions: #​70625
  • Error consistently during prospective prerender: #​70631
  • next-upgrade: Infer React types version from runtime version: #​70626
  • next-upgrade(refactor): Improve type coverage: #​70627
  • next-upgrade: Remove extraneous if no channel is specified: #​70628
  • next-upgrade: select codemods by canary version: #​70630
  • next-upgrade: Hide install output by default: #​70632
  • next-upgrade: Allow custom selection of codemods: #​70634
  • next-upgrade: Allow choosing same codemods that are available in the currently used version: #​70635
  • Upgrade React from 3edc000d-20240926 to 2d16326d-20240930: #​70629
  • fix: fix warnings from invalid api's called from edge runtime: #​70639
  • Update font data: #​70653
  • refactor: added more strict app segment config parsing: #​70479
  • next-upgrade: Stop interleaving user-input with long tasks: #​70636
  • Replace depricated apple-mobile-web-app-capable with `mobile-web-ap…: #​70363
  • Fix interpolation of dynamic params in intercepting route pathnames: #​70667
  • bugfix: only replace with full prefetch if existing data was partial: #​70650
  • next-upgrade: Default to release channel that's used: #​70638
  • feat(turbopack): add support for polling file watcher: #​69684
  • chore: improve accessibility of static indicator: #​70612
  • initially visited static pages should respect static staletime: #​70640
  • codemod: improve dynamic api codemod cases: #​70593
  • feat(next/image): add images.localPatterns config: #​70529
  • Recommend React.use() to unwrap async APIs in the browser: #​70677
  • Change default SWR delta value to 1 year: #​70674
  • [form] pages dir support: #​68333
  • chore(docs): refactor README.md: #​70503
  • Fix missing await of params when metadata is used: #​70698
  • condense warnings for direct access of dynamic APIs: #​70682
  • Allow silencing direct access of dynamic APIs to unblock internal sync: #​70705
  • Separate the rendering of viewport from metadata: #​70685
  • codemod: fix merging react imports logic: #​70706
  • Rename StaticGenerationStore to WorkStore: #​70721
  • fix: Do not omit alt on getImgProps return type, ImgProps: #​70608
  • fix(next/image): handle undefined images.localPatterns config in images-manifest.json: #​70730
  • Run unstable_cache inside a CacheStore context: #​70740
  • Expand PrerenderStore to include the legacy mode static generation too: #​70741
  • Reapply "Dedupe sync access warning on the Server by callsite" (#​70672): #​70738
  • Add RSC module ID mapping to the Client Manifest: #​70524
  • [i18n] Routing fix: #​70761
  • fix broken lock mechanism: #​70764
  • client router cache should still be cleared if server action revalidates + redirects: #​70715
  • ensure handleUnlock is called even for non-cached responses: #​70766
  • [dynamicIO] Error when dynamic behavior is outside of a Suspense boundary: #​70734
  • [Turbopack] add new backend: #​69667
  • Fix client reference access causing metadata missing: #​70732
  • Move reactLoadableManifest/assetPrefix to workStore: #​70768
  • Unwrap registerServerReference function: #​70563
  • Error if reading Request Store inside Prerender: #​70775
  • codemod: handle the async api type: #​70785
  • Create spans for createServerReference and registerServerReference: #​70564
  • Do not invoke server actions twice when dynamicIO is enabled: #​70784
  • feat: decouple cookies and action state from redirect error: #​70769
  • refactor: added more strict app segment config validation: #​70480
  • Fix recently re-introduced unique "key" prop warnings: #​70807
  • Run Middleware within WorkStore: #​70808
  • ensure export workers that are killed bubble up to parent process: #​70997
  • next-upgrade: Ensure correct React and types version are resolved when upgrading to Next.js rc: #​70981
  • codemod: leave comment on spread props: #​70979
  • docs: add app-dir-runtime-config-experimental-edge codemod: #​71008
  • docs: add next-dynamic-access-named-export codemod: #​71012
  • chore(next-upgrade): use process exit instead of throwing: #​71018
  • chore(next-upgrade): improve revision usage messages: #​71019
  • Revert "chore(next-upgrade): use process exit instead of throwing (#​7…: #​71021
  • Disable server action transform in pages router: #​71028
  • chore(next-codemod): view current Next.js version, skip if already on or higher: #​71034
  • codemod: comment on reexport: #​71017
  • move workUnitAsyncStorage back into "client/components": #​71046
  • codemod: type cast async api calls in non entry file exports: #​71040
  • codemod upgrade: show link of migration guide after upgrade: #​71036
  • Defensively install patches: #​71043
  • fix(next/turbopack): Always preserve import attributes with esm modules: #​71051
  • codemod: fix type only react import: #​71053
  • types-plugin: enahnce type checking on interface params: #​71059
  • Move WorkStore and ActionStore to /server/app-render: #​70934
  • [Turbopack] Implement support for webpack’s stats.json: #​70996
  • chore(next-codemod): add verbose option to transform: #​71079
  • chore: polish warning for esmExternals: #​71082
  • go back to ignoring revalidates from render: #​71088
  • [Turbopack] add support for collectibles to new backend: #​70798
  • codemod: do not await on invalid prop: #​71089
  • chore(next-codemod): move app-dir-runtime-config-experimental-edge to 13.1.2: #​71081
  • Add cacheLife() / cacheTag() APIs: #​71064
  • Eagerly Pass Implicit Tags: #​71105
  • chore(next-codemod): add prompts for (un)installing packages: #​71038
  • [Turbopack] formatIssue is expensive, so avoid it if possible: #​71117
  • add phase tracking to workUnitStore: #​71030
  • [Turbopack] add unstable prefix to persistent caching option and force to provide an expected level of stability: #​71090
  • codemod: make parser more comptible: #​71122
  • Don't warn on well-known properties in searchParams: #​71142
  • Add source map support for server components/actions in the browser: #​71042
  • show webpack/turbopack compilation duration for next build: #​71146
  • tweak static indicator style & behavior: #​71128
  • feat(next-upgrade): suggest React codemod: #​71016
  • prevent revalidateTag/Path during render: #​71093
  • fix(turbopack): Fix NextEcmascriptClientReferenceTransition: #​70603
  • turn withRequestStore into createRequestStore: #​71107
  • Initial implementation of per-segment prefetch request handling: #​71113
  • Upgrade React from 2d16326d-20240930 to 70fb1363-20241010: #​71118
  • Revert "chore(next-codemod): move app-dir-runtime-config-experimental-edge to 13.1.2": #​71157
  • feat: block compilation on codemod comments and ask to remove: #​71103
  • Scope request store in render: #​71109
  • Reject hanging promises: #​70994
  • fix: allow custom app routes for metadata conventions: #​71153
  • chore(next-codemod): suggest pre-release codemods by their "stable" version: #​71158
  • misc(next-codemod): inform user whether current version is higher or on target version: #​71160
  • Update loading cache handler: #​71121
  • prevent cookies from being set in the wrong phase: #​71094
  • avoid accessing performance APIs if fetch is untracked: #​71164
  • Handle source map requests for Turbopack client chunks: #​71168
  • fix: getStaticProps appears instead of generateStaticParams during app router build: #​71033
  • Rename swrDelta config to expireTime: #​71159
  • tweak shadow on static indicator & update docs copy: #​71171
  • [dynamicIO] track Prerender environment name during dev: #​71165
  • chore: update migration comments: #​71169
  • Add support for "use cache" in route handlers: #​70897
  • For route handlers, call loadComponents also during next build: #​71202
  • Handle thrown values that aren't Error instances in App router: #​71210
  • fix: add newrelic to server-external-packages.json: #​71066
  • chore: delete redundant blank spaces in packages directory: #​71189
  • Do not create client reference manifest for metadata route handlers: #​71225
  • Upgrade React from 70fb1363-20241010 to cd22717c-20241013: #​71223
  • Cache in CacheScopeStore in use cache: #​71221
  • Encode binary cache keys as ucs-2 strings: #​71224
  • Hide stack for bad input by default: #​71253
  • [after] after is not dynamic anymore: #​71231
  • codemod: ensure install commands run in terminal: #​71255
  • codemod: install types into dev dependencies: #​71257
  • codemod: polish end message: #​71259
  • chore: Ensure Next.js is built with a specified version of TypeScript: #​71256
  • more detailed time display: #​71248
  • Propagate expire/stale times the same way we do with revalidate: #​71228
  • Update global cache handler ref: #​71263
  • Handle URL-encoded Turbopack client chunks when resolving source maps: #​71274
  • [BREAKING] Support ESLint v9 in plugin, config and next lint: #​71218
  • Make cacheLife profiles configurable: #​71232
  • [dynamicIO] warn in debug mode when prospective renders error: #​71266
  • codemod: prettier the version logging at the beginning: #​71264
  • Fix missing key in LoadingBoundary: #​71222
  • codemod: install core deps based on package.json group: #​71265
  • Set Next-Router-Stale-Time header from collected stale times: #​71279
  • Respect stale time header in client prefetch cache: #​71280
  • Mark revalidate: 0 on fetch or use cache as never resolving promise in Dynamic I/O: #​71285
  • static indicator shouldn't show for force-dynamic: #​71284
  • Implement cacheScope by caching a Promise: #​71286
  • codemod: update react-is if needed: #​71276
  • chore: remove experimental warning for next-config-ts: #​71297
  • fix(next): eslint v9 not picking up config: #​71298
  • Add support for 'use cache' in route handlers using the Edge runtime: #​71258
  • Re-add canary gates for certain experimental features: #​71307
  • Fix symbol for cache: #​71270
Documentation Changes
  • Add WorkOS to list of auth solutions: #​64395
  • docs (mdx): update tree to include mdx-components.tsx file: #​64376
  • Update 02-server-actions-and-mutations.mdx: #​64248
  • Update 04-cypress.mdx: #​64375
  • Update 13-debugging.mdx: #​64344
  • docs: clarify Internationalization (i18n) Routing: #​63853
  • docs(pages): update slug value for optional catch all routes: #​64381
  • Fix optimizePackageImports docs for Pages Router: #​64439
  • Adds MDX Components file convention page and updates MDX page: #​63568
  • docs: fix config variable usage in memory docs: #​64469
  • Fix missing PagesOnly in 05-mdx: #​64505
  • chore(docs): Add example usage of PixelBin custom image loader: #​64074
  • docs(09-authentication): fixes link to NextAuth.js: #​64457
  • Improve auth docs : #​63140
  • Docs: Fix broken link: #​64581
  • docs: clarify runtime: #​64593
Example Changes
  • Add TypeGen to Sanity example: #​64198
  • Update Sanity example deps and tsconfig: #​64570
  • chore: fix a wrong link for with-service-worker example: #​64666
  • Update Nav.tsx: #​64818
  • Update with-storybook example: #​64911
  • bug fix on a pull request #​64911: #​64925
  • Update Sanity example deps: #​64939
  • deps updated for with-mongodb-mongoose example: #​64928
  • Docs: Explain why Layouts (RSCs) can't access pathname: #​64785
  • fix(examples): blog-starter href, remove redundant public folder: #​65025
  • Ensure latest canary of Next.js is installed in repros: #​64967
  • Ensure latest canary of Next.js is installed in repros: #​65197
  • feat(examples): add with-turso: #​61291
  • Fix export function name on docs/routing/layouts-and-templates: #​65240
  • Fixes with-supertokens example: #​65267
  • @​emotion/cache version fix: #​65422
  • update reproduction templates to use correct React: #​65624
  • Resolve grammatical errors in examples: #​65644
  • Update middleware example to App Router: #​65618
  • update cache handler version and added better logic for opting out of…: #​65330
  • Update Sanity example deps and implementation: #​65744
  • update convex README.md: #​65765
  • chore: Bump react-modal to 3.16.2 in with-router-as-modal example: #​65841
  • Update Google Analytics example for App Router: #​66021
  • fix(examples): blog-starter href, remove redundant public folder: #​65025
  • Ensure latest canary of Next.js is installed in repros: #​64967
  • Ensure latest canary of Next.js is installed in repros: #​65197
  • feat(examples): add with-turso: #​61291
  • Fix export function name on docs/routing/layouts-and-templates: #​65240
  • Fixes with-supertokens example: #​65267
  • @​emotion/cache version fix: #​65422
  • update reproduction templates to use correct React: #​65624
  • Resolve grammatical errors in examples: #​65644
  • Update middleware example to App Router: #​65618
  • update cache handler version and added better logic for opting out of…: #​65330
  • Update Sanity example deps and implementation: #​65744
  • update convex README.md: #​65765
  • chore: Bump react-modal to 3.16.2 in with-router-as-modal example: #​65841
  • Update Google Analytics example for App Router: #​66021
  • adopt modern & supported Apollo Client patterns in the with-apollo example: #​65316
  • Update with-react-hook-form example: #​66253
  • chore(examples): update reproduction template: #​66301
  • Update to with-supertokens example: #​66320
  • refactor: rename API endpoint to '/api/protected-api' for comment: #​66456
  • Update Sanity example deps and prepare for next v15: #​66158
  • Update with-supertokens example: #​66827
  • fix: Prevent MongoDB client promise being cached: #​66977
  • Prepare for easier shadcn ui install: #​66469
  • Updated with-sitemap example for App Router: #​66995
  • Example/update blog starter: #​66926
  • fix: fix entry point for storybook, add storybook static ouput to gitignore: #​67207
  • examples(with-mdx): update to MDX 3: #​62503
  • Revert "examples(with-mdx): update to MDX 3": #​67249
  • add more examples to run-for-change script: #​67250
  • Fix Dead Links in @​neshca/cache-handler-redis example README.md: #​67415
  • Update redirects example for App router: #​67065
  • Updated layout-component with new feature layout.js: #​67447
  • [Multi Zones] Update the with-zones example to use App Router: #​67636
  • fix: missing file when build docker: #​67718
  • Examples: updated the example of dynamic-routing to utilize the App Router: #​67684
  • Updated basic-export example with app router: #​67760
  • Migrated the active-class-name Example to App router: #​67622
  • Downgrade react and react-dom to 19.0.0-rc.0: #​67788
  • Examples: updated the example of head-elements to utilize the App Router: #​67829
  • Examples: updated the example of analyze-bundles to utilize the App Router: #​67843
  • fix[examples]: update example cache-handler-redis: #​67350
  • Examples: Updated the example of headers to utilize the App Router: #​67920
  • Updated/Migrated next-css example to the App Router: #​67942
  • [examples] fix: ant-design unstyled hydration issue: #​68000
  • Update cookie handling for Supabase SSR package: #​67413
  • Examples:Updated with-slate example to App Router: #​68060
  • Updated nested-components example to use App Router: #​68065
  • Examples: Updated the example of catch all routes to utilize the App Router: #​68270
  • docs: Custom Server for App Router: #​68167
  • update react remove properties to support app route: #​68324
  • Update Sanity example deps and fix readme typo: #​68359
  • Migrated svg-components to App-router: #​68394
  • with-mongodb update to add both App and Pages Router examples: #​68461
  • fix: ENV warn info: #​68486
  • Migrated 'with-absolute-imports' to App-router Convention: #​68666
  • Updated radix-ui example to use App Router: #​68711
  • updated the example of api-routes to utilize the App Router: #​68771
  • fix: inngest example for latest version: #​68600
  • Compose refactor: #​68503
  • Improve TypeGen in Sanity Example: #​68580
  • Update page.tsx - Fixing hydration error: #​66868
  • fix: cache-handler example should reconnect to redis after errors: #​68221
  • (Examples) Adds with-google-tag-manager example that uses @next/third-parties: #​57364
  • Fix linting from #​57364: #​68951
  • examples: avoid duplicate css insert for ant design: #​57947
  • docs(examples): fix next-translate prod hydration error in layout: #​52653
  • (Example) Remove redirects plugin from Sitecore XM Cloud example: #​69094
  • Supabase: improve sign in and sign up, add reset password: #​69066
  • Add Meilisearch example: #​53251
  • updated the example of custom-routes-proxying to utilize the App Router: #​68941
  • examples: update "ENV key value" format format to "ENV key=value": #​69053
  • fix: ENV warning: #​69091
  • Reduce TypeGen boilerplate in Sanity Example: #​69134
  • Examples - Updated with-windcss example for App Router: #​69365
  • examples: Supabase | ui.shadcn, App Router Layouts: #​69308
  • Fix: Example Template | with-supabase - wrong file name breaking build: #​69394
  • Fix/ Examples use-supabase | Multiple improvements : #​69407
  • examples: Updating WordPress example to Next 14: #​62447
  • Add cms-umbraco example: #​52777
  • Example: Updated the example of rewrites to utilize the App Router: #​69495
  • docs: Use useFormState over useActionState: #​69547
  • updated the example of modularize-imports to utilize the App Router: #​69771
  • updated the example of with-xstate to utilize the App Router: #​69960
  • Updated the example of with-eslint to utilize the App Router.: #​70018
  • Remove stores params: #​69796
  • Fix example URL for api-routes -> route-handlers: #​69642
  • Update with web worker example to utilize the App Router: #​70058
  • fix(examples): typo command name: #​70094
  • fix: button className in with_supabase example: #​70121
  • fix(examples): remove version attribute post deprecation: #​70108
  • Update examples/github-pages/README.md: #​70057
  • remove unsafe-inline from with-strict-csp: #​69497
  • chore/ examples use-supabase | update rate limit note: #​69423
  • examples(with-supabase): typo on env file name: #​69291
  • fix(examples/with-docker): remove not needed files from docker context: #​68668
  • updated the example of with-videojs to utilize the App Router: #​70226
  • updated the example of with-three-js to utilize the App Router: #​70287
  • Updated the example of with-vercel-fetch to utilize the App Router.: #​70069
  • Updated the example of ssr-caching to utilize the App Router.: #​69560
  • Updated the example of ssr-caching to utilize the App Router.: #​69560
  • fix(example): Change hostname in docker multiple env examples: #​70105
  • Updated the example of with-draft-js to utilize the App Router.: #​70045
  • Fix Stackblitz preview link on with-opentelemetry example: #​70543
  • [Multi-Zones] Update example and documentation with most recent practices for Multi-Zones: #​70565
  • updated the environment variables examples to utilize the App router: #​70392
  • chore(examples): updated the example of with-styled-components: #​70796
  • chore(examples):updated the example of with-stitches to utlize the App router: #​71007
  • docs(typo): fix typo in cms-sanity example README.md: #​71211
Credits

Huge thanks to @​huozhi, @​shuding, @​wyattjoh, @​PaulAsjes, @​mcnaveen, @​timneutkens, @​stipsan, @​aktoriukas, @​sirTangale, @​greatvivek11, @​sokra, @​anatoliik-lyft, @​wbinnssmith, @​coltonehrman, @​hungdoansy, @​kxlow, @​ztanner, @​manovotny, @​leerob, @​ryota-murakami, @​ijjk, @​pnutmath, @​feugy, @​Jeffrey-Zutt, @​wiesson, @​eps1lon, @​devjiwonchoi, @​Ethan-Arrowood, @​kenji-webdev, @​domdomegg, @​samcx, @​Jaaneek, @​evanwinter, @​kdy1, @​balazsorban44, @​feedthejim, @​ForsakenHarmony, @​kwonoj, @​delbaoliveira, @​xiaohanyu, @​dvoytenko, @​bobaaaaa, @​bgw, @​gaspar09, @​souporserious, @​unflxw, @​kiner-tang, @​Ehren12, @​EffectDoplera, @​IAmKushagraSharma, @​Auxdible, @​sean-rallycry, @​jeanmax1me, @​unstubbable, @​NilsJacobsen, @​adiguno, @​ryan-nauman, @​zsh77, @​KagamiChan, @​steveluscher, @​MehfoozurRehman, @​vkryachko, @​chentsulin, @​samijaber, @​begalinsaf, @​FluxCapacitor2, @​lukahartwig, @​brianshano, @​pavelglac, @​styfle, @​symant233, @​HristovCodes, @​karlhorky, @​jonluca, @​jonathan-ingram, @​mknichel, @​sopranopillow, @​Gomah, @​imddc, @​notrab, @​gabrielrolfsen, @​remorses, @​AbhiShake1, @​agadzik, @​rishabhpoddar, @​rezamauliadi, @​IncognitoTGT, @​webtinax, @​BunsDev, @​nisabmohd, @​z0n, @​bennettdams, @​joeshub, @​n1ckoates, @​srkirkland, @​RiskyMH, @​coopbri, @​okoyecharles, @​diogocapela, @​dnhn, @​typeofweb, @​davidsa03, @​imranolas, @​lubieowoce, @​maxhaomh, @​mirasayon, @​blvdmitry, @​hwangstar156, @​lforst, @​emmerich, @​christian-bromann, @​Lsnsh, @​datner, @​hiro0218, @​flybayer, @​ianmacartney, @​ypessoa, @​ryohidaka, @​icyJoseph, @​Arinji2, @​lovell, @​nsams, @​Nayeem-XTREME, @​JamBalaya56562, @​Arindam200, @​gaojude, @​qqww08, @​todor0v, @​tokkiyaa, @​arlyon, @​lorensr, @​Juneezee, @​Sayakie, @​IGassmann, @​bosconian-dynamics, @​phryneas, @​akazwz, @​atik-persei, @​shubh73, @​alpedia0, @​chogyejin, @​notomo, @​ArnoldVanN, @​dhruv-kaushik, @​kevva, @​Kahitar, @​anay-208, @​boris-szl, @​devnyxie, @​LorisSigrist, @​M-YasirGhaffar, @​Lada496, @​kippmr, @​torresgol10, @​pkiv, @​Netail, @​jontewks, @​ArnaudFavier, @​chrisjstott, @​mratlamwala, @​mayank1513, @​karlkeefer, @​kshehadeh, @​Marukome0743, @​a89529294, @​anku255, @​KeisukeNagakawa, @​andrii-bodnar, @​aldosch, @​versecafe, @​steadily-worked, @​cfrank, @​QiuranHu, @​farsabbutt, @​joostmeijles, @​saltcod, @​archanaagivale30, @​crutchcorn, @​crebelskydico, @​Maaz-Ahmed007, @​jophy-ye, @​remcohaszing, @​JoshuaKGoldberg, @​creativoma, @​GyoHeon, @​SukkaW, @​MaxLeiter, @​neila-a, @​stylessh, @​Teddir, @​ManuLpz4, @​Julian-Louis, @​syi0808, @​mert-duzgun, @​amannn, @​MonstraG, @​hamirmahal, @​tariknh, @​Kikobeats, @​LichuAcu, @​Kuboczoch, @​himself65, @​Sam-Phillemon9493, @​Shruthireddy04, @​Hemanshu-Upadhyay, @​timfuhrmann, @​controversial, @​pathliving, @​mischnic, @​mauroaccornero, @​NavidNourani, @​allanchau, @​ekremkenter, @​yurivangeffen, @​gnoff, @​darthmaim, @​gdborton, @​Willem-Jaap, @​KentoMoriwaki, @​TrevorSayre, @​marlier, @​Luluno01, @​xixixao, @​domin-mnd, @​niketchandivade, @​N2D4, @​kjugi, @​luciancah, @​mud-ali, @​codeSTACKr, @​luojiyin1987, @​mehmetozguldev, @​ronanru, @​tknickman, @​joelhooks, @​khawajaJunaid, @​rubyisrust, @​abdull-haseeb, @​bewinsnw, @​housseindjirdeh, @​li-jia-nan, @​aralroca, @​s-ekai, @​ah100101, @​jantimon, @​jordienr, @​iscekic, @​Strift, @​slimbde, @​nauvalazhar, @​HughHzyb, @​guisehn, @​wesbos, @​OlyaPolya, @​paarthmadan, @​AhmedBaset, @​dineshh-m, @​avdeev, @​Bhavya031, @​MildTomato, @​Bjornnyborg, @​amikofalvy, @​yosefbeder, @​kjac, @​woutvanderploeg, @​Ocheretovich, @​ProchaLu, @​luismiramirez, @​omahs, @​theoludwig, @​abhi12299, @​sommeeeer, @​lumirlumir, @​royalfig, @​iampoul, @​molebox, @​txxxxc, @​zce, @​mamuso, @​kahlstrm, @​vercel-release-bot, @​zhawtof, @​PapatMayuri, @​PlagueFPS, @​IDNK2203, @​jericopulvera, @​liby, @​CannonLock, @​timfish, @​whatisagi, @​none23, @​haouvw, @​Pyr33x, @​SouthLink, @​frydj, @​CrutchTheClutch, @​sleevezip, @​r34son, @​yunsii, @​md-rejoyan-islam, @​kartheesan05, @​nattui, @​KonkenBonken, @​weicheng95, @​brekk, @​Francoscopic, @​B33fb0n3, @​ImDR, @​nurullah, @​hdodov, @​ebCrypto, @​soedirgo, @​floriangosse, @​Tim-Zj, @​raeyoung-kim, @​erwannbst, @​DerTimonius, @​hirotomoyamada, @​Develliot, @​chandanpasunoori, @​vicb, @​ankur-dwivedi, @​kidonng, @​baeharam, @​AnaTofuZ, @​coderfin, @​xugetsu, @​alessiomaffeis, @​kutsan, @​jordyfontoura, @​sebmarkbage, @​tranvanhieu01012002, @​jlbovenzo, @​Luk-z, @​jaredhan418, @​bangseongbeom, @​penicillin0, @​neoFinch, @​DeepakBalaraman, @​Manoj-M-S, @​Unsleeping, @​lonr, @​Aerilym, @​ytori, @​acdlite, @​actopas, @​n-ii-ma, @​adcichowski, @​mobeigi, @​JohnGemstone, and @​jjm2317 for helping!

v14.2.33

Compare Source

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

Core Changes
  • omit searchParam data from FlightRouterState before transport (#​80734)
Credits

Huge thanks to @​ztanner for helping!

v14.2.32

Compare Source

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

Core Changes
  • fix router handling when setting a location response header #​82588
Credits

Huge thanks to @​ztanner for helping!

v14.2.31

Compare Source

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

Core Changes
  • fix(next/image): improve and simplify detect-content-type (#​82179)
  • fix(next/image): fix image-optimizer.ts headers (#​82178)
Credits

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

v14.2.30

Compare Source

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

Core Changes
Credits

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

v14.2.29

Compare Source

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

Core Changes
  • Only share incremental cache for edge in next start (#​79389)
Credits

Huge thanks to @​ijjk for helping!

v14.2.28

Compare Source

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

Core Changes
  • fix: node.js module import error when using middleware (#​77945)
Credits

Huge thanks to @​ztanner for helping!

v14.2.27

Compare Source

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

Core Changes
  • fix dynamic route interception not working when deployed with middleware (#​64923)
Credits

Huge thanks to @​ztanner for helping!

v14.2.26

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 (#​77476)

v14.2.25

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 middleware request header (#​77202)
Credits

Huge thanks to @​ijjk for helping!

v14.2.24

Compare Source

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

Core Changes
Credits

Huge thanks to @​ztanner for helping!

v14.2.23

Compare Source

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

Core Changes
  • backport: force module format for virtual client-proxy (#​74590)
  • Backport: Use provided waitUntil for pending revalidates (#​74573)
  • Feature: next/image: add support for images.qualities in next.config (#​74500)
Credits

Huge thanks to @​styfle, @​ijjk and @​lubieowoce for helping!

v14.2.22

Compare Source

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

Core Changes
  • Retry manifest file loading only in dev mode: #​73900
  • Ensure workers are cleaned up: #​71564
  • Use shared worker for lint & typecheck steps: #​74154
Credits

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

v14.2.21

Compare Source

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

Core Changes
Misc Changes
Credits

Huge thanks to @​unstubbable, @​ztanner, and @​styfle for helping!

v14.2.20

Compare Source

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

Core Changes
Credits

Huge thanks to @​wyattjoh for helping!

v14.2.19

Compare Source

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

Core Changes
  • ensure worker exits bubble to parent process (#​73433)
  • Increase max cache tags to 128 (#​73125)
Misc Changes
  • Update max tag items limit in docs (#​73445)
Credits

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

v14.2.18

Compare Source

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

Core Changes
Credits

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

v14.2.17

Compare Source

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

Core Changes
  • Fix: revert the bad node binary handling (#​72356)
  • Ensure pages/500 handles cache-control as expected (#​72050) (#​72110)
  • fix unhandled runtime error from generateMetadata in parallel routes (#​72153)
Credits

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

v14.2.16

Compare Source

v14.2.15

Compare Source

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

Core Changes
  • support breadcrumb style catch-all parallel routes #​65063
  • Provide non-dynamic segments to catch-all parallel routes #​65233
  • Fix client reference access causing metadata missing #​70732
  • feat(next/image): add support for decoding prop #​70298
  • feat(next/image): add images.localPatterns config #​70529
  • fix(next/image): handle undefined images.localPatterns config in images-manifest.json
  • fix: Do not omit alt on getImgProps return type, ImgProps #​70608
  • [i18n] Routing fix #​70761
Credits

Huge thanks to @​ztanner, @​agadzik, @​huozhi, @​styfle, @​icyJoseph and @​wyattjoh for helping!

v14.2.14

Compare Source

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

Core Changes
  • Fix: clone response in first handler to prevent race (#​70082) (#​70649)
  • Respect reexports from metadata API routes (#​70508) (#​70647)
  • Externalize node binary modules for app router (#​70646)
  • Fix revalidateTag() behaviour when invoked in server components (#​70446) (#​70642)
  • Fix prefetch bailout detection for nested loading segments (#​70618)
  • Add missing node modules to externals (#​70382)
  • Feature: next/image: add support for images.remotePatterns.search (#​70302)
Credits

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

v14.2.13

Compare Source

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

Core Changes
  • Fix missing cache-control on SSR app route (#​70265)
  • feat: add polyfill of URL.canParse for browser compatibility (#​70228)
  • Fix vercel og package memory leak (#​70214)
  • Fix startTime error on Android 9 with Chrome 74 (#​67391)
Credits

Huge thanks to @​raeyoung-kim, @​huozhi, @​devjiwonchoi, and @​ijjk for helping!

v14.2.12

Compare Source

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

Core Changes
  • update prefetching jsdoc & documentation (#​68047)
  • Ensure we chunk revalidate tag requests (#​70189)
  • (backport) fix(eslint): allow typescript-eslint v8 (#​70090)
  • [ppr] Don't mark RSC requests as /_next/data requests (backport of #​66249) (#​70083)
Credits

Huge thanks to @​alvarlagerlof, @​wyattjoh, @​delbaoliveira, and @​ijjk for helping!

v14.2.11

Compare Source

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

Core Changes
Credits

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

v14.2.10

Compare Source

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

Core Changes
Credits

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

v14.2.9

Compare Source

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

Core Changes
  • Revert "Fix esm property def in flight loader (#​66990)" (#​69749)
  • Disable experimental.optimizeServer by default to fix failed server action (#​69788)
  • Fix middleware fallback: false case (#​69799)
  • Fix status code for /_not-found route (#​64058) (#​69808)
  • Fix metadata prop merging (#​69807)
  • create-next-app: fix font file corruption when using import alias (#​69806)
Credits

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

v14.2.8

Compare Source

What's Changed

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

Support esmExternals in app directory
Reading cookies set in middleware in components and actions
  • initialize ALS with cookies in middleware (#​65008)
  • fix middleware cookie initialization (#​65820)
  • ensure cookies set in middleware can be read in a server action (#​67924)
  • fix: merged middleware cookies should preserve options (#​67956)
Metadata and icons
  • support facebook-specific metadata (fb:app_id, fb:admins) in generateMetaData (#​65713)
  • Always collect static icons for all segments (#​68712)
  • Fix favicon merging with customized icons (#​67982)
  • Warn metadataBase missing in standalone mode or non vercel deployment (#​66296)
Parallel routes fixes
  • fix missing stylesheets when parallel routes are present (#​69507)
Draft mode and edge improvements
next/image fixes
  • Allow external image urls with _next/image pathname to be rendered via Image component (#​69586)
Server actions improvements
  • optimize server actions (#​66523)
  • Apply optimization for unused actions (#​69178)
  • Improve SWC transform ID generation (#​69183)
Other changes
  • Ensure we match comment minify behavior between terser and swc (#​68372)
  • send initialCanonicalUrl in array format to prevent crawler confusion (#​69509)
Create-next-app updates

Full Changelog: https://github.com/vercel/next.js/compare/v14.2.7...v14.2.8


Huge thanks to everyone who contributed to this release:
@​abhi12299, @​delbaoliveira, @​eps1lon, @​ForsakenHarmony, @​huozhi, @​ijjk, @​JoshuaKGoldberg, @​leerob, @​lubieowoce, @​Netail, @​ronanru, @​samcx, @​shuding, @​sokra, @​stylessh, @​timfuhrmann, @​wbinnssmith, @​wyattjoh, @​ypessoa, @​ztanner

v14.2.7

Compare Source

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

Core Changes
  • Revert "chore: externalize undici for bundling" (#​65727)
  • Refactor internal routing headers to use request meta (#​66987)
  • fix(next): add cross origin in react dom preload (#​67423)
  • build: upgrade edge-runtime (#​67565)
  • GTM dataLayer parameter should take an object, not an array of strings (#​66339)
  • fix: properly patch lockfile against swc bindings (#​66515)
  • Add deployment id header for rsc payload if present (#​67255)
  • Update font data (#​68639)
  • fix i18n data pathname resolving (#​68947)
  • pages router: ensure x-middleware-cache is respected (#​67734)
  • Fix bad modRequest in flight entry manifest #​68888
  • Reject next image urls in image optimizer #​68628
  • Fix hmr assetPrefix escaping and reuse logic from other files #​67983
Credits

Huge thanks to @​kjugi, @​huozhi, @​ztanner, @​SukkaW, @​marlier, @​Kikobeats, @​syi0808, @​ijjk, and @​samcx for helping!

v14.2.6

Compare Source

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

Core Changes
  • Ensure fetch cache TTL is updated properly (#​69164)

v14.2.5

Compare Source

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

Core Changes
  • avoid merging global css in a way that leaks into other chunk groups (#​67373)
  • Fix server action edge redirect with middleware rewrite (#​67148)
  • fix(next): reject protocol-relative URLs in image optimization (#​65752)
  • fix(next-swc): correct path interop to filepath for wasm (#​65633)
  • Use addDependency to track metadata route file changes (#​66714)
  • Fix noindex is missing on static not-found page (#​67135)
  • perf: improve retrieving versionInfo on Turbo HMR (#​67309)
  • fix(next/image): handle invalid url (#​67465)
  • fix(next): initial prefetch cache not set properly with different search params (#​65977)
  • fix: Backport class properties fix (#​67377)
  • Upgrade acorn (#​67592)
Misc
  • Log stdio for pull-turbo-cache script (#​66759)
  • Ensure turbo is setup when building in docker (#​66804)
Credits

Huge thanks to @​devjiwonchoi, @​ijjk, @​emmerich, @​huozhi, @​kdy1, @​kwonoj, @​styfle, and @​sokra for helping!

v14.2.4

Compare Source

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

Core Changes
  • fix: ensure route handlers properly track dynamic access (#​66446)
  • fix NextRequest proxy in edge runtime (#​66551)
  • Fix next/dynamic with babel and src dir (#​65177)
  • Use vercel deployment url for metadataBase fallbacks (#​65089)
  • fix(next/image): detect react@19 for fetchPriority prop (#​65235)
  • Fix loading navigation with metadata and prefetch (#​66447)
  • prevent duplicate RSC fetch when action redirects (#​66620)
  • ensure router cache updates reference the latest cache values (#​66681)
  • Prevent append of trailing slash in cases where path ends with a file extension (#​66636)
  • Fix inconsistency with 404 getStaticProps cache-control (#​66674)
  • Use addDependency to track metadata route file changes (#​66714)
  • Add timeout/retry handling for fetch cache (#​66652)
  • fix: app-router prefetch crash when an invalid URL is passed to Link (#​66755)
Credits

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

v14.2.3

Compare Source

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

Core Changes
  • Fix: resolve mixed re-exports module as cjs (#​64681)
  • fix: mixing namespace import and named import client components (#​64809)
  • Fix mixed exports in server component with barrel optimization (#​64894)
  • Fix next/image usage in mdx(#​64875)
  • fix(fetch-cache): fix additional typo, add type & data validation (#​64799)
  • prevent erroneous route interception during lazy fetch (#​64692)
  • fix root page revalidation when redirecting in a server action (#​64730)
  • fix: remove traceparent from cachekey should not remove traceparent from original object (#​64727)
  • Clean-up fetch metrics tracking (#​64746)
Credits

Huge thanks to @​huozhi, @​samcx, @​ztanner, @​Jeffrey-Zutt, and @​ijjk for helping!

v14.2.2

Compare Source

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

Core Changes
  • Fix Server Action error logs for unhandled POST requests (#​64315)
  • Improve rendering performance (#​64408)
  • Fix the method prop case in Server Actions transform (#​64398)
  • fix(next-lint): update option --report-unused-disable-directives to --report-unused-disable-directives-severity (#​64405)
  • tweak test for Azure (#​64424)
  • router restore should take priority over pending actions (#​64449)
  • Fix client boundary inheritance for barrel optimization (#​64467)
  • improve turborepo caching (#​64493)
  • feat: strip traceparent header from cachekey (#​64499)
  • Fix more Turbopack build tests
  • Update lockfile for compatibility with turbo (#​64360)
  • Fix typo in dynamic-rendering.ts (#​64365)
  • Fix DynamicServerError not being thrown in fetch (#​64511)
  • fix(next): Metadata.openGraph values not resolving basic values when type is set (#​63620)
  • disable production chunking in dev (#​64488)
  • Fix cjs client components tree-shaking (#​64558)
  • fix refresh behavior for discarded actions (#​64532)
  • fix: filter out middleware requests in logging (#​64549)
  • Turbopack: Allow client components to be imported in app routes (#​64520)
  • Fix ASL bundling for dynamic css (#​64451)
  • add pathname normalizer for actions (#​64592)
  • fix incorrect refresh request when basePath is set (#​64589)
  • test: skip turbopack build test (#​64356)
  • hotfix(turbopack): Update with patch for postcss.config.js path resolution on Windows (#​64677)
Credits

Huge thanks to @​shuding, @​coltonehrman, @​ztanner, @​huozhi, @​sokra, @​Jeffrey-Zutt, @​timneutkens, @​wbinnssmith, @​wiesson, @​ijjk, @​devjiwonchoi, and @​bgw for helping!

v14.2.1

Compare Source

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

Core Changes
  • use pathToFileUrl to make esm import()s work with absolute windows paths (#​64386) @​sokra
Credits

Huge thanks to @​sokra for helping!

v14.2.0

Compare Source

Learn more: https://nextjs.org/blog/next-14-2

Core Changes
  • Update build worker warning to use debug: #​60847
  • fix: added @​sentry/profiling-node to sep list to prevent build/bundle breakage: #​60855
  • Optimize build trace ignores: #​60859
  • Deprecation warning for config.analyticsId: #​60677
  • chore: indicate staleness more prominently in next info output: #​60376
  • Telemetry: createComponentTree span: #​60857
  • chore: replace micromatch w/ picomatch: #​60699
  • Report HMR latency as trace spans for Turbopack: #​60799
  • Turbopack: always log HMR rebuild times: #​60908
  • Error overlay refactors: #​60886
  • Use precompiled source-map in overlay middleware: #​60932
  • Use more precompiled deps in react-dev-overlay: #​60959
  • Fix next phase for next build: #​60969
  • chore: update turbopack: #​60980
  • refactor(analysis): rust based page-static-info, deprecate js parse interface in next-swc: #​59300
  • disable static generation on interception routes: #​61004
  • Docs: Address community feedback: #​60960
  • avoid output of webpack stats: #​61023
  • Revert "refactor(analysis): rust based page-static-info, deprecate js parse interface in next-swc": #​61021
  • fix useSelectedLayoutSegment's support for parallel routes: #​60912
  • Dynamic APIs: #​60645
  • Enable next.js version checker in turbopack: #​61034
  • chore: Update terser to v5.27.0: #​61068
  • Update swc_core to v0.87.28: #​60876
  • update turbopack: #​61015
  • Implement client_root for edge in Turbopack: #​61024
  • fix parallel route top-level catch-all normalization logic to support nested explicit (non-catchall) slot routes: #​60776
  • fix(image): warn when animated image is missing unoptimized prop: #​61045
  • Fix version checker not displaying when version newer than npm: #​61075
  • Fix sitemap generateSitemaps support for string id: #​61088
  • ppr: ensure the router state tree is provided for interception routes: #​61059
  • Improve the Server Actions SWC transform: #​61001
  • Fix instrument bundling as client components: #​60984
  • fix(turbopack): use correct layout for 404 page: #​61032
  • fix: emotion import source should be enabled in SSR contexts: #​61099
  • chore: update turbopack: #​61090
  • fix(turbopack): custom page extensions for _app: #​60789
  • Disable trace uploads with NEXT_TRACE_UPLOAD_DISABLE: #​61101
  • add optimizeServerReact to config-shared: #​61106
  • Fix filesystempublicroutes test for Turbopack: #​61132
  • chore: upgrade webpack to 5.90.0: #​61109
  • Add maxDuration to typescript plugin allowed exports: #​59193
  • Upgrade Turbopack: #​61190
  • build: remove sentry from the externals list: #​61194
  • exclude default routes from isPageStatic check: #​61173
  • Add stack trace to client rendering bailout error: #​61200
  • chore: refactor image optimization to separate external/internal urls: #​61172
  • parallel routes: support multi-slot layouts: #​61115
  • Refine revalidatePath warning message: #​61220
  • revert changes to process default routes at build: #​61241
  • Fix cookie merging in Server Action redirections: #​61113
  • Update swc_core to v0.89.x: #​61086
  • Fix Server Reference being double registered: #​61244
  • Fix Server Action redirection with absolute internal URL: #​60798
  • Fix indentation in source code of dev overlay: #​61216
  • Update swc_core to v0.89.4: #​61285
  • fix: Revert preset-env mode of styled-jsx in webpack mode: #​61306
  • DX: add route context to the dynamic errors: #​61332
  • Telemetry: add time-to-first-byte signal: #​61238
  • Refine logging message of experiments: #​61337
  • fix(turbopack): don't parse .ts files as .tsx: #​61219
  • Update turbopack: #​61381
  • Same as #​61360: #​61369
  • Always respect NEXT_TRACE_UPLOAD_DISABLED: #​61402
  • parallel routes: fix catch-all slots being treated as optional catch-all: #​61174
  • fix hmr telemetry reporting: #​61420
  • chore: Update swc_core to v0.89.6: #​61426
  • Update turbopack: #​61433
  • fix a perf problem in VersionedContentMap: #​61442
  • Fix next dynamic import named export from client components: #​61378
  • fix issues loading CSS in default slots: #​61428
  • avoid sending issues turbopack messages to browser: #​61443
  • Support crossOrigin in Turbopack: #​61461
  • Pass down __NEXT_EXPERIMENTAL_REACT env to webpack build worker explicitly: #​61463
  • Replace image optimizer IPC call with request handler: #​61471
  • feat(next): trace build dependencies for turborepo: #​59553
  • Turbopack: fix telemetry attributes for swc options: #​61474
  • Always show version text in error overlay: #​61421
  • Fix build worker callback arg missing correct page path : #​61347
  • Update font data: #​61479
  • build: upgrade edge-runtime: #​61030
  • Fix experimental react support in app-route runtime: #​61511
  • Fix .env hmr for Node.js runtime in Turbopack: #​61504
  • remove unnecessary PPR branch in non-PPR reducer: #​61176
  • fix: bump @vercel/nft@0.26.3: #​61538
  • chore: update ESLint and plugins to latest: #​61544
  • Update turbopack: #​61553
  • feat: first pass of next/font manifest: #​61424
  • Fix .env HMR for Turbopack in Edge runtime: #​61565
  • build(cargo): bump up turbopack: #​61590
  • refactor(next-core): consolidate custom ecma transform rules: #​61481
  • ensure server action errors notify rejection handlers: #​61588
  • feat(turbopack): only preload fonts that opt in: #​61591
  • feat(turbopack): serve google fonts locally and allow preloading them: #​61596
  • Update font data: #​61621
  • Remove unused mockedRes in resolveRoutes: #​61635
  • Fix @​react-pdf/renderer not working in RSC: #​61317
  • Remove extra edge-runtime/primitives override: #​61641
  • Encode revalidateTag value fixes #​61390: #​61392
  • Update README.md: #​48717
  • chore: update README.md: #​61650
  • avoid processing client components and server actions in route handlers: #​60985
  • chore: Update @swc/helpers to v0.5.5: #​61659
  • feat(ts): expose MiddlewareConfig interface: #​61576
  • Revert "build: upgrade edge-runtime": #​61686
  • feat(ts): add JSDoc comments for public APIs: #​61649
  • fix(next-core): adjust server alias for the context: #​61690
  • fix setAssetPrefix when running on NextCustomServer: #​61676
  • fix: status code for 404 props queries to avoid client side navigation with empty props: #​60968
  • fix(next-eslint): .eslintrc.json not being created by next lint on App Router: #​55104
  • Update React from 60a927d to 2bc7d33: #​61522
  • fix(turbopack): read preload option for google fonts: #​61679
  • decode magic identifiers: #​61658
  • Associate server error digest with browser logged one: #​61592
  • chore: update turbopack: #​61682
  • fix loading issue when navigating to page with async metadata: #​61687
  • fix(ts): ReadonlyURLSearchParams should extend URLSearchParams: #​61419
  • fix navigation issue when dynamic param casing changes: #​61726
  • Fix next/server api alias for ESM pkg: #​61721
  • feat(transforms): enable rsc transforms for the remaining contexts: #​61231
  • fix: allow some recursion for middleware subrequests: #​60615
  • feat(next-swc): support wasm32-* build target: #​61586
  • Turbopack: convert between locations correctly: #​61477
  • feat(next/image)!: remove squoosh in favor of sharp as optional dep: #​61696
  • Navigation Signals in PPR: #​60450
  • Revert "Turbopack: convert between locations correctly (#​61477)": #​61733
  • Fix duplicate line in README: #​61691
  • docs: fix example code missing comma: #​59012
  • Reapply "Turbopack: convert between locations correctly (#​61477)" (#​61733): #​61735
  • Fix: Error Fetching _devpagesmanifest.json #​17274: #​60349
  • fix jsDoc of notFound: #​61692
  • feat(next-core): expand matching js extensions for the rules: #​61745
  • source map fixes: #​61723
  • Add experimental touchstart flag for testing: #​61747
  • partially fix css duplication in app dir: #​61198
  • build(cargo): add deps for the wasi: #​61784
  • fix(ts): match MiddlewareConfig with documentation: #​61718
  • Fix attempted import error for react: #​61791
  • consolidate prefetch utils & separate build util: #​61789
  • Skip client-side data-fetching after ssr error : #​51377
  • fix(next-swc): Detect exports.foo from cjs_finder: #​61795
  • feat(next-core): build time client|server-only assertion: #​61732
  • Fall back loading chunks for sourcemap tracing: #​61790
  • Increase Rust stack size: #​61809
  • Revert "feat(next/image)!: remove squoosh in favor of sharp as optional dep": #​61810
  • DX: fix error overlay flash: #​61813
  • feat: Allow specifying useLightningcss for styled-jsx: #​61359
  • Guard against restoring router state with missing data: #​61822
  • fix: babel usage with next/image: #​61835
  • fix:(next/image) handle remotePatterns with a dot in the pathname: #​60488
  • Update React from 2bc7d33 to ba5e6a8: #​61837
  • DX: fix error overlay flash: #​61813
  • feat: Allow specifying useLightningcss for styled-jsx: #​61359
  • Guard against restoring router state with missing data: #​61822
  • fix: babel usage with next/image: #​61835
  • fix:(next/image) handle remotePatterns with a dot in the pathname: #​60488
  • Update React from 2bc7d33 to ba5e6a8: #​61837
  • update turbopack: #​61187
  • conditionally send Next-URL in Vary response: #​61794
  • provide interception rewrites to edge runtime: #​61414
  • Update app-index to only ever construct the initial data response once: #​61869
  • Move turbopack helpers: #​61917
  • hot-reloader-turbopack refactors: #​61929
  • More hot-reloader-turbopack refactors: #​61940
  • fix(next/image): improve warning when fill and sizes="100vw": #​61949
  • build(cargo): bump up turbopack to latest: #​61952
  • build(cargo): update turbopack for filewatcher fix: #​61955
  • ci(workflow): deploy rustdocs for turbopack: #​61958
  • Support resuming a complete HTML prerender that has dynamic flight data: #​60865
  • Fix empty white page with parallel routes + loading boundaries: #​61597
  • Update swc_core to v0.90.7 and update turbopack: #​61662
  • Turbopack: remove server addr: #​61932
  • More hot-reloader-turbopack refactors: #​61993
  • Use destructured object for #​61993: #​61996
  • only prefix prefetch cache entries if they vary based on Next-URL: #​61235
  • seed prefetch cache with initial page: #​61535
  • Remove leftover server addr references: #​61997
  • log fast refresh in app dir: #​61441
  • docs(turbopack): build more docs: #​61977
  • fix(next-core): correct error message: #​62011
  • docs(turbopack): reduce documentation size: #​62016
  • Reduce memory/cache overhead from over loader processing: #​62005
  • fix: bump @vercel/nft@0.26.4: #​62019
  • refactor(next-core): do not reexport turbopack_binding: #​62018
  • build: Update swc_core to v0.90.8: #​61976
  • merge pages and app overlays: #​60899
  • Rename internal utility naming for clarification : #​62048
  • fix: handle multiple x-forwarded-proto headers: #​58824
  • Fix server components externals on SSR layer: #​61986
  • Fixed useParams hook undesired re-renders and updated it to use PathParamsContext in the app router.: #​60708
  • docs(turbopack): conslidate existing links: #​62034
  • fix(custom-transform): allow to assert empty program for rsc: #​61922
  • fix navigation applying stale data when triggered from global not found: #​62033
  • fix(turbopack): react-dom/server in rsc context: #​61165
  • refactor(tests): make chain more "correct": #​51728
  • Add puppeteer-core to server-external-packages.json: #​62063
  • Fix extra swc optimizer applied to node_modules in browser layer: #​62051
  • docs(turbopack): revise links: #​62062
  • Fix output: export with custom distDir: #​62064
  • fix(next-core): apply image-loader alias to the remaining context: #​62070
  • More hot-reloader-turbopack refactors: #​62055
  • Ensure Turbopack writes font optimization manifest: #​62079
  • update turbopack: #​62080
  • chore: hide version info network error: #​62084
  • Add dev option to Turbopack createProject(): #​62083
  • Remove unused app-turbopack files: #​62087
  • make router restore action resilient to a missing tree: #​62098
  • Turbopack: add support for dynamic requests in require() and import(): #​62092
  • docs(turbopack): move docs to separate: #​62069
  • Implement Vc: #​62099
  • fix: add zeromq to server-external-packages.json: #​62105
  • Fix trailing slash for canonical url: #​62109
  • Consolidate NextMode checks: #​62106
  • Improve the Server Actions SWC transform (part 2): #​62052
  • Should not warn metadataBase missing if only absolute urls are present: #​61898
  • Update to turbopack-240215.5: #​62119
  • Add polyfill for Object.hasOwn: #​60437
  • OpenTelemetry: trace API routes in page router: #​62120
  • Fix @​next/mdx types: #​57580
  • DX: hide the webpack info prefix for module paths: #​62101
  • Show build errors from Turbopack: #​62139
  • Fix issue with ComponentMod being read in Turbopack: #​62141
  • Fix handling subpath for server components externals: #​62150
  • docs(next-api): trying to document project_update_info_subscribe: #​61962
  • add support for esmExternals in pages: #​61983
  • docs: updated link in JSDoc for the shallow property in link.tsx: #​62181
  • Update font data: #​62173
  • Update split chunk handling for edge/node: #​62205
  • Ensure webpack build worker defaults on: #​62214
  • feat: Lint invalid CSS modules: #​62040
  • Add page name to error logged in Turbopack: #​62218
  • add turbo.resolveExtensions to allow to customize extensions: #​62004
  • fix(turbopack): catchall route matching: #​62114
  • fix: clarify Dynamic API calls in wrong context: #​62143
  • refactor(turbopack): wrap manifest loading in helper class: #​62118
  • refactor(turbopack): resolve routes by page name instead of pathname: #​61778
  • Ensure handleRouteType does not throw in production builds: #​62234
  • fix: set swr delta: #​61330
  • Fix type error in build.ts: #​62253
  • fix(next): terser-webpack-plugin path in taskfile.js is missing 'src': #​62229
  • Update swc_core to v0.90.10: #​62222
  • Add test log prefix for otel: #​62258
  • Update turbopack: #​62263
  • feat(cli): show available memory/CPU cores in next info: #​62249
  • fix(turbopack): print missing slots in debug message: #​62280
  • Tree shake the unused exports in direct relative imported client component module: #​62238
  • Verify correctness of externals: #​62235
  • Renew prefetch cache entry after update from server: #​61573
  • fix(next-core): fix aliased free var for edge runtime: #​62289
  • update turbopack: #​62285
  • Allow fetch to propagate arbitrary init options: #​62168
  • Add flag for early import app router modules: #​61168
  • Add otel span for client component loading: #​62296
  • Fix perf spans: #​62306
  • fix(next-core): properly normalize app route for _: #​62307
  • fix(next-font): update capsize css so fallbacks are updated with the …: #​62309
  • Fix draft mode invariant: #​62121
  • Revert "Update split chunk handling for edge/node": #​62313
  • Turbopack: reduce tasks needed for emitting: #​62291
  • Turbopack: add SSR category to tracing: #​62318
  • fix(error-overlay): correct module grouping: #​62206
  • Revert "Turbopack: reduce tasks needed for emitting": #​62324
  • feat(error-overlay): hide <unknown>/stringify methods in <anonymous> file from stack: #​62325
  • eslint-config-next: allow typescript eslint v7: #​62137
  • Revert "Revert "Update split chunk handling for edge/node" (#​62313)": #​62336
  • Revert "Ensure webpack build worker defaults on": #​62342
  • avoid loading the page loader chunk on initial page load: #​62269
  • output filesystem without watching: #​62340
  • Turbopack: limit build concurrency, show progress bar: #​62319
  • Update data cache max size error: #​62348
  • Add experimental flag for early exit on prerender error: #​62367
  • fix(next-swc): Fix span for invalid 'use server' directives: #​62259
  • scope issues from subscriptions to the websocket connection: #​62344
  • Turbopack: resolve endpoints to avoid extra nesting in tracing: #​62317
  • fix(next-lint): fix next lint not throwing exit 1 on error: #​62378
  • Remove default fallback behavior when route group is missing a default: #​62370
  • Correctly pass prependData and additionalData to sass-loader for Turbopack: #​62397
  • chore(docs): mention that next.config.js must have default export: #​62341
  • chore(cli): add clarifying comment: #​62418
  • OTEL: Add top span for middleware: #​62421
  • Turbopack react-refresh: perform full reload on runtime error: #​62359
  • Simplify node/edge server chunking some: #​62424
  • update configSchema.ts with experimental#useEarlyImport: #​62408
  • Fix module-level Server Action creation with closure-closed values: #​62437
  • Upgrade vendored react: #​62326
  • Turbopack: reduce memory usage: #​62432
  • Fixed typo.: #​62440
  • fix(turbopack): deal with eventual consistency in get_directory_tree: #​62444
  • Telemetry: ensure the ClientComponentLoad metric is only reported when available: #​62459
  • [turbopack] update edge alias: #​62461
  • Rename currentIssues to currentEntryIssues: #​62524
  • update turbopack: #​62523
  • add plugin to avoid too many css requests: #​62530
  • feat(error-overlay): hide Node.js internals: #​62532
  • Create react server condition alias for next/navigation api: #​62456
  • Add IssueKey type: #​62526
  • OTEL: Ensure that RSC:1 requests get the next.route attr: #​62464
  • Display only one hydration error when there's few in error overlay: #​62448
  • Upgrade vendored react: #​62549
  • Improve TS plugin options: #​62438
  • Revert "fix(build-output): show stack during CSR bailout warning": #​62592
  • Improve redirection handling: #​62561
  • fix router crash on revalidate + popstate: #​62383
  • fix: improve error when starting next without building: #​62404
  • feat(turbopack): Sort issues: #​62566
  • refactor createInfinitePromise to be re-used unresolveable thenable: #​62595
  • fix(build-output): show stack during CSR bailout warning: #​62594
  • Fix redirect under suspense boundary with basePath: #​62597
  • Ensure dynamic routes dont match _next/static unexpectedly: #​62559
  • Fix metadata json manifest convention: #​62615
  • Migrate locale redirect handling to router-server: #​62606
  • fix(next-swc): Provide tokio context required for WASM plugins: #​62441
  • Update swc_core to v0.90.12: #​62518
  • Update Turbopack: #​62632
  • Fix instrumentation with only pages: #​62622
  • Fix: generateSitemaps in production giving 404: #​62212
  • Refactor flight-manifest-plugin to use compilation.entrypoints directly: #​62636
  • Fix Router Error Events in Shallow Routing by Skipping cancelHandler Creation: #​61771
  • DX: display highlited pesudo html when bad nesting html error occurred: #​62590
  • build(cargo): remove unused features: #​62616
  • feat(next-swc): lightningcss binding: #​62604
  • fix: Enable SearchParams to be displayed after redirect in Server Action: #​62582
  • fix(navigation): allow useSelectedLayoutSegment(s) in Pages Router: #​62584
  • Consistently use /_not-found for not found page in App Router: #​62679
  • Add experimental config for navigation raf test: #​62668
  • Turbopack: remove unused code: #​62690
  • Revert "Ensure dynamic routes dont match _next/static unexpectedly": #​62691
  • fix(turbopack): don't emit issues for deleted pages: #​62012
  • perf: don't emit issues via websocket for now: #​59024
  • add native css nesting support: #​62644
  • refactor(next-swc): remove unused features: #​62696
  • Upgrade mini-css-extract-plugin: #​62698
  • Update precompiled for mini-css-extract-plugin: #​62699
  • feat: display text diff for text mismatch hydration errors: #​62684
  • Fix lint check: #​62702
  • chore: remove unused helper: #​62701
  • Add param to debug PPR skeleton in dev: #​62703
  • Update font data: #​62704
  • Turbopack: remove node_modules error filter: #​62586
  • fix(error-overlay): improve a11y, minor refactors: #​62723
  • Handle top level errors coming from Turbopack entrypoints subscription: #​62528
  • Add compiler error for conflicting App Router and Pages Router in Turbopack: #​62531
  • fix dev overlay pseudo html collapsing: #​62728
  • Route static render error message: remove duplicate word: #​62738
  • Update version from backport: #​62745
  • Add a flag to disable MergeCssChunksPlugin: #​62746
  • refactor(cli): refactor cli to commander: #​61877
  • Turbopack: Trace server app render errors through source maps: #​62611
  • build(cargo): update turbopack: #​62744
  • Turbopack: sass support: #​62717
  • refactor(analysis): rust based page-static-info, deprecate js parse interface in next-swc: #​61832
  • fix: Add stricter check for "use server" exports: #​62821
  • fix(next-core): throw on invalid metadata handler: #​62829
  • Revert "Add experimental config for navigation raf test (#​62668)": #​62834
  • Revert "refactor(analysis): rust based page-static-info, deprecate js parse interface in next-swc": #​62838
  • remove reducer unit tests: #​62766
  • fix(next-lint): do not pass absolute path to distDir: #​62797
  • Update to latest version: #​62850
  • fix "setBlocking is not a function" errors on StackBlitz: #​62843
  • Remove extra logic of Server Reference check for registering twice: #​62486
  • Update readme of @​next/bundle-analyzer package: #​62804
  • Don't emit crossorigin attributes for output: "export" by default: #​61211
  • apply some transforms on foreign code too: #​62827
  • update turbopack: #​62884
  • refactor: rename isAppDirEnabled to hasAppDir: #​62837
  • bump @​edge-runtime/cookies for Partitioned cookie support: #​62889
  • refactor(next): fix spacing on auto-generated root layout: #​62769
  • fix(cli): fix allowRetry when using port 3000: #​62840
  • Fix: missing crossorigin property on manifest link: #​62873
  • Turbopack: Trace edge runtime app render errors through source maps: #​62901
  • fix merge css plugin to account for css order: #​62927
  • fix(next-api): correct font manifest generation: #​62916
  • feat(error-overlay): notify about missing html/body in root layout: #​62815
  • fix graph update: #​62933
  • refactor(error-overlay): improve server code for webpack/Turbopack middleware: #​62396
  • feat(error-overlay): version staleness in Pages Router: #​62942
  • feat: Introduce lightningcss-loader for webpack users: #​61327
  • feat(eslint): enhance no-unwanted-polyfill w/ new endpoints: #​62719
  • simplify streamToString method from node-web-streams.helper.ts: #​62841
  • Allow ppr only flag in test mode: #​62911
  • Upgrade to latest @​edge-runtime packages: #​62955
  • chore(next-font): update @​capsize/metrics package to the latest: #​62896
  • Remove Payload from server-external-packages.json: #​62965
  • Pass whole prefetch entry rather than status property: #​62345
  • build: Update swc_core to v0.90.17: #​62924
  • refactor(ts): type fastRefresh: #​62848
  • [error overlay] move missing tags error inside error overlay: #​62993
  • Update turbopack: #​62971
  • fix(next-core): honor basepath for the metadata property: #​62846
  • fix(next-core): do not apply ecma transforms for custom js rules: #​62831
  • feat(next): fallback lightning if swc/wasm loaded: #​62952
  • Fix the plugin state for async modules in webpack plugins: #​62998
  • Turbopack + pages router: recover from runtime errors by reloading: #​63024
  • Enable minification for Turbopack: #​62994
  • app layouts/pages depend on shared main files: #​63042
  • DX: add route context to dynamic errors for app routes: #​62844
  • Fix metadata url cases should not append with trailing slash: #​63050
  • Turbopack: Decode module component when tracing stack frames: #​63070
  • build(cargo): bump up turbopack: #​63073
  • OTEL: add next.rsc attribute for RSC requests: #​63074
  • Correctly deserialize undefined unstable_cache data: #​59126
  • refactor(error-overlay): unify Pages/App router error overlay source: #​62939
  • feat(turbopack): Enable lightningcss for turbopack by default: #​62565
  • ignore fully dynamic requests on server side: #​62949
  • Refactor define-env-plugin to have stricter types: #​63128
  • [PPR] Support rewrites in middleware: #​63071
  • Fix webpack HMR for pages on the edge runtime: #​60881
  • fix typo in server/config.ts: #​62795
  • ensure mpa navigations to the same URL work after restoring from bfcache: #​63155
  • Ensure PromiseLikeOfReactNode is not included in .d.ts files: #​63185
  • Ensure undefined values end up being replaced: #​63138
  • fix: x-forwarded-port header is 'undefined' when no port in url: #​60484
  • Fix generateMetadata race condition: #​63169
  • feat(next-core): apply invalid import assertion on the remaining contexts: #​63146
  • build(cargo): bump up turbopack: #​63205
  • add support for assets in edge: #​63209
  • fix: Loose Server Actions runtime check: #​63200
  • fix(log): improve error when dynamic code eval is disallowed: #​62999
  • fix(error-overlay): strip line+column from webpack internal frames: #​63133
  • fix revalidation issue with route handlers: #​63213
  • fix(error-overlay): show Turbopack indicator for any staleness level: #​63130
  • fix: re-export internal path: #​63222
  • build: Update turbopack: #​63229
  • make CacheNode properties non-optional: #​63219
  • Implement new runtime_type for Turbopack: #​63212
  • Use SWC to valid client next/navigation hooks usage in server components: #​63160
  • chore: Update swc_core to v0.90.21: #​63031
  • fix(turbopack): Do not report hmr timing twice: #​63227
  • enable optimizeServerReact by default: #​62658
  • feat(turbopack): emit well known error into cli: #​63218
  • feat: add deploymentId config: #​63198
  • Fix middleware catch-all rewrite case: #​63254
  • fix(route-handlers): make sure preflight has CORS headers: #​63264
  • fix(turbopack): Remove error overlay when issue is resolved: #​62983
  • Disable cache in testmode: #​63265
  • Turbopack: app externals test case improvements: #​62871
  • build: Update turbopack: #​63273
  • fix: hydration error display for text under tag case: #​63288
  • Fix URL displayed in Server Action bodysizelimit error: #​63295
  • Store loading data in CacheNode: #​62346
  • fix(turbopack): Remove error overlay when pages/_app is fixed: #​63306
  • Ensure changes in optimizePackageImports invalidate webpack cache: #​63284
  • Polish the display color styles for component diff: #​63342
  • Turbopack HMR: Log when more errors cause full page reload: #​63220
  • Fixes typo in Route handler static generation error handling: #​63345
  • Add JSM (ESM) support for next/lib/find-config: #​63109
  • fix(error-overlay): matching html tag with brackets in hydration error: #​63365
  • add conditions for webpack loader rules: #​63333
  • fix transform of files ending with d: #​63367
  • Use correct protocol and hostname for internal redirections in Server Actions: #​63389
  • bug: Fields truncated when submitting form using Server Actions: #​59877
  • New CSS chunking algorithm: #​63157
  • Ensure all metadata files have missing default export errors in Turbopack: #​63399
  • Code refactor: #​63391
  • feat(error-overlay): handle script under html hydration error: #​63403
  • Add Bun lockfile to project root resolving heuristic: #​63112
  • build(package): pin typescript-eslint/parser for supported node.js: #​63424
  • fix(next-core): carry over original segment config to metadata route: #​63419
  • fix x-forwarded-port header: #​63303
  • build(cargo): bump up turbopack: #​63429
  • Turbopack HMR: Reload when recovering from server-side errors: #​63434
  • Eliminate unnecessary decode operations in node-web-streams-helpers.ts: #​63427
  • Update React from 6c3b8db to 14898b6: #​63439
  • chore(next/font): update @​capsizecss/metrics package to the latest: #​63440
  • update turbopack: #​63475
  • Fix instant loading states after invalidating prefetch cache: #​63256
  • Update tags limit handling for max items: #​63486
  • feat(next-core): support unsupported module runtime error: #​63491
  • Update RSC etag generation handling: #​63336
  • Simplify createRootLayoutValidatorStream: #​63484
  • Fix interception/detail routes being triggered by router refreshes: #​63263
  • route/middleware/instrumentation use server assets instead of client assets: #​62134
  • feat: add support for localizations in sitemap generator: #​53765
  • Turbopack: Fail when module type is unhandled: #​63535
  • feat(custom-transform): middleware dynamic assert transform: #​63538
  • fix: call instrumentationHook earlier for prod server: #​63536
  • Revert "feat(next-core): support unsupported module runtime error (#​63491)": #​63575
  • Upgrades enhanced-resolve: #​63499
  • Improve experimental test proxy: #​63567
  • Remove the erroring on force-dynamic in static generation for app route: #​63526
  • the argument might be written with underscores: #​63600
  • Remove lodash from external packages list: #​63601
  • upgrade @​edge-runtime/cookies: #​63602
  • Add alias for react-dom react-server condition: #​63588
  • Revert "Revert "feat(next-core): support unsupported module runtime error (#​63491)"": #​63609
  • Enable all pages under the browser context to proxy to the test proxy: #​63610
  • fix(next-core): refine context for unsupported edge imports: #​63622
  • Update turbopack: #​63541
  • Fix RSC react-dom aliases for edge: #​63619
  • Move Playwright to be a peerDependency of next.js: #​63530
  • fix(dev-overlay): align codeframe to formatIssue: #​63624
  • Improve TypeScript plugin for server boundary: #​63667
  • perf: conditionally import Telemetry: #​63574
  • feat(error-overlay): style tweaks: #​63522
  • Auto map optimizePackageImports to transpilePackages for pages: #​63537
  • Add Next.js version to process title: #​63686
  • generate the same next/font modules for the same options: #​63513
  • feat(log): improve dev/build logs: #​62946
  • Update font data: #​63691
  • Polish dev-overlay text styling: #​63721
  • [PPR] Dynamic API Debugging: #​61798
  • Rename encryption key generation code: #​63730
  • ensure null loading boundaries still render a Suspense boundary: #​63726
  • perf: download and save mkcert in stream: #​63527
  • prevent router markers from leaking: #​63606
  • Turbopack: fix allocation inefficiency: #​63738
  • Fix ServerAction rejection reason: #​63744
  • Respect non 200 status to page static generation response: #​63731
  • Turbopack: parallelize app structure: #​63707
  • fixes to next.js tracing: #​63673
  • fext(next-core): inherit root layout segment config for the routes: #​63683
  • add tracing to server actions transform: #​63773
  • remove left-over debugging: #​63774
  • update turbopack: #​63778
  • fix revalidation/refresh behavior with parallel routes: #​63607
  • fix router revalidation behavior for dynamic interception routes: #​63768
  • feat(custom-transforms): partial page-static-info visitors: #​63741
  • Ensure Webpack config shows a warning when using Turbopack: #​63822
  • feat(turbopack): emit warning into logger: #​63780
  • feat(custom-transform): more static info warning: #​63837
  • skip HEAD request in server action redirect: #​63819
  • OTEL: use the current context when creating a root span: #​63825
  • Turbopack: Fail when next/font is used in _document: #​63788
  • Move key generation to the earlier stage: #​63832
  • fix double redirect when using a loading boundary: #​63786
  • fix: default relative canonical url should not contain search: #​63843
  • fix(next-typescript-plugin): allow call expression for server actions: #​63748
  • fix: avoid metadata viewport warning during manually merging metadata: #​63845
  • feat(next-core): set nextconfigoutput correctly: #​63848
  • Ensure we dedupe fetch requests properly during page revalidate: #​63849
  • feat(next-swc): Pass names of side-effect-free packages: #​63268
  • fix(turbopack): loosen warning log guards: #​63880
  • fix: skip checking rewrites with an empty has array in isInterceptionRouteRewrite: #​63873
  • fix: bundle fetching with asset prefix: #​63627
  • fix logic error in parallel route catch-all normalization: #​63879
  • ensure custom amp validator path is used if provided: #​63940
  • chore: remove useless any: #​63910
  • Update hover behaviour note in Link JSDoc comment: #​60525
  • fix: pass nonce to next/script with afterInteractive strategy: #​56995
  • add experimental client router cache config: #​62856
  • add telemetry events for ppr & staleTimes experimental flags: #​63981
  • fix server actions not bypassing prerender cache in all cases when deployed: #​63978
  • fix(next): next build --debug log output layout is broken: #​63193
  • Fix abort condition for requests: #​64000
  • fix(log): skip logging non-route requests: #​63973
  • Ensure unstable_cache bypasses for draft mode: #​64007
  • fix interception route refresh behavior with dynamic params: #​64006
  • fix(turbopack): throws api issues: #​64032
  • fix(turbopack): emit loadable manifest for app: #​64046
  • feat(turbopack): Print error message for next/font fetching failure: #​64008
  • Fix status code for /_not-found route: #​64058
  • fix: fixes cookie override during redirection from server action: #​61633
  • Add flag for preloading all server chunks: #​64084
  • Update rust-toolchain to nightly-2024-04-03: #​64048
  • fix refreshing inactive segments that contained searchParams: #​64086
  • perf: improve next server static performance: #​64098
  • fix(log): tweak coloring: #​64106
  • Ensure static generation storage is accessed correctly: #​64088
  • Ensure empty config with Turbopack does not show webpack warning: #​64109
  • fix encoding for filenames containing ? or #: #​58293
  • Rework experimental preload entries handling: #​64125
  • Fix @​opentelemetry/api aliasing for webpack: #​64085
  • style(dev-overlay): refine the error message header styling: #​63823
  • hotfix(next):next lint installs eslint@9 which includes breaking changes: #​64141
  • feat(turbopack): Align behavior for link rel="preconnect" with webpack mode: #​64011
  • feat: allow module: Preserve tsconfig option: #​64110
  • ensure seeded prefetch entry is renewed after expiry: #​64175
  • Fix hydration error higlight when tag matched multi times: #​64133
  • test(turbopack): Add -Wl,--warn-unresolved-symbols to next-swc-napi on Linux: #​64049
  • feat: Do not mangle AbortSignal to avoid breaking node-fetch: #​58534
  • Turbopack: prefer local opentelemetry version: #​64206
  • chore: externalize undici for bundling: #​64209
  • Add a mode to next build to make it easier to debug memory issues: #​63869
  • forward missing server actions to valid worker if one exists: #​64227
  • feat(next/image): add overrideSrc prop: #​64221
  • fix(fetch-cache): add check for updated tags when checking same cache key: #​63547
  • provide revalidateReason to getStaticProps: #​64258
  • chore(cli): fix the order --experimental-debug-memory-usage so it's alphabetical: #​64264
  • update turbopack: #​64257
  • chore: fix some typos: #​64276
  • Ensure configuration is checked for Turbopack build: #​64247
  • Update font data: #​64277
  • Fix css FOUC in dynamic component: #​64294
  • [turbopack] Fix css FOUC in dynamic component: #​64021
  • fix: show the error message if images.loaderFile doesn't export a default function: #​64036
Documentation Changes
  • docs: Improve useSearchParams bailout error page: #​60852
  • docs: fix JS/TS code block: #​60854
  • Docs: Update parallel routes docs, add default.js pt 1.: #​60806
  • docs: another fix for code block: #​60856
  • correct description of skipMiddlewareUrlNormalize in advanced middleware flags: #​60841
  • Adds a link to CSP where it's first referenced in the headers docs: #​60871
  • Add documentation page on video optimization: #​60574
  • docs: small tweaks on video docs: #​60902
  • docs: small tweak to videos: #​60904
  • docs: clarify redirects behavior with pages router: #​60610
  • docs: mention missing optimized by default packages in optimizePackageImports: #​60058
  • Improves generateViewport documentation: #​60396
  • docs: streaming while self-hosting must disable buffering: #​60943
  • Update userScalable property in viewport object and user-scalable in meta tag: #​60946
  • docs: updated the getStaticProps function name: #​60949
  • update edge and nodejs runtime doc: #​60801
  • Docs: Add link to bloom filter example: #​60987
  • Update code example on 01-pages-and-layouts.mdx: #​60963
  • docs: clarify nginx buffering disable: #​61010
  • Docs: Share Redirecting docs with /pages: #​61083
  • Fix <AppOnly> typo in docs: #​61103
  • Docs: Correct JavaScript React Component File Extension to .jsx in '01-vitest.mdx': #​61087
  • Docs: Update wording on opting out of the Router Cache: #​61123
  • Fixed typo in docs: #​61118
  • Combine Pages/App authentication docs: #​60848
  • Docs: Add note about calling redirect after try/catch: #​61138
  • OpenTelemetry: update docs for new @​vercel/otel: #​61044
  • docs: fix Auth0 typo in authentication: #​61171
  • Update generate-sitemaps.mdx: #​61167
  • Add dot to regex chars in rewrites.mdx: #​61095
  • Refine revalidatePath type argument: #​61159
  • Docs: Add note about revalidatePath invalidating router cache: #​61142
  • Docs: Improve and add new parallel routes examples: #​60981
  • chore(docs): fix docs for static assets (public): #​61225
  • Docs: Adjust message about RootLayout: #​61199
  • docs: add Lucia auth: #​61255
  • Make server actions maxDuration timeout more clear in documentation: #​60005
  • docs(02-jest): fixes failing test in the tutorial: #​61272
  • docs: typo in page title: #​61267
  • Removed an extra braces and comma from doc (},): #​61250
  • Docs: Fix headings in Parallel Routes page: #​61328
  • OpenTelemetry: clarify Edge runtime support: #​61338
  • chore: update docs around redirect(): #​61334
  • add the middleware.ts API reference file convention: #​61037
  • Remove the regions option from the config section of the middleware file conventions doc: #​61425
  • Docs: Update migration wording for /pages: #​61453
  • Docs: Add instrumentation.ts API reference, improve instrumentation docs: #​61403
  • Docs: Document prefetch null for App Router: #​61203
  • Docs: Add note on default.js receiving params: #​61454
  • chore(docs): add // @&#8203;ts-check to next.config.js docs: #​61543
  • Update 03-linking-and-navigating.mdx: #​61622
  • chore(docs): add auto closing tag to : #​61546
  • Docs: Add Kinde to authentication docs: #​61460
  • docs: update useParams examples and pages usage: #​61595
  • docs: update style9 to stylex: #​61646
  • Mobile Friendly Test was retired: #​61647
  • Fixed #​61434 : Docs: Duplicated code snippets: #​61446
  • Add case-sensitive note for revalidateTag/revalidatePath: #​61729
  • fix: showing incorrect filename in example: #​61736
  • Update 02-server-actions-and-mutations.mdx: #​61756
  • Fix closing a modal example in parallel routes docs: #​61819
  • docs: Example mismatch when changing language JS/TS : #​61833
  • Fix

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 this update 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 | |---|---|---|---| | [next](https://nextjs.org) ([source](https://github.com/vercel/next.js)) | dependencies | major | [`13.4.2` -> `16.0.7`](https://renovatebot.com/diffs/npm/next/13.4.2/16.0.7) | --- > ⚠️ **Warning** > > Some dependencies could not be looked up. Check the Dependency Dashboard for more information. --- ### Release Notes <details> <summary>vercel/next.js (next)</summary> ### [`v16.0.7`](https://github.com/vercel/next.js/releases/tag/v16.0.7) [Compare Source](https://github.com/vercel/next.js/compare/v16.0.6...v16.0.7) Please see [CVE-2025-66478](https://nextjs.org/blog/CVE-2025-66478) for additional details about this release. ### [`v16.0.6`](https://github.com/vercel/next.js/releases/tag/v16.0.6) [Compare Source](https://github.com/vercel/next.js/compare/v16.0.5...v16.0.6) > \[!NOTE] > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - bump the browserslist version to silence a warning in CI ([#&#8203;86625](https://github.com/vercel/next.js/issues/86625)) ##### Credits Huge thanks to [@&#8203;lukesandberg](https://github.com/lukesandberg) for helping! ### [`v16.0.5`](https://github.com/vercel/next.js/releases/tag/v16.0.5) [Compare Source](https://github.com/vercel/next.js/compare/v16.0.4...v16.0.5) > \[!NOTE] > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - fix(nodejs-middleware): await for body cloning to be properly finalized ([#&#8203;85418](https://github.com/vercel/next.js/issues/85418)) ##### Credits Huge thanks to [@&#8203;lucasadrianof](https://github.com/lucasadrianof) for helping! ### [`v16.0.4`](https://github.com/vercel/next.js/releases/tag/v16.0.4) [Compare Source](https://github.com/vercel/next.js/compare/v16.0.3...v16.0.4) > \[!NOTE] > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - fix: Rename proxy.js to middleware.js in NFT file ([#&#8203;86214](https://github.com/vercel/next.js/issues/86214)) - fix: prevent fetch abort errors propagating to user error boundaries ([#&#8203;86277](https://github.com/vercel/next.js/issues/86277)) - Turbopack: fix passing project options from napi ([#&#8203;86256](https://github.com/vercel/next.js/issues/86256)) ##### Credits Huge thanks to [@&#8203;devjiwonchoi](https://github.com/devjiwonchoi), [@&#8203;sokra](https://github.com/sokra) and [@&#8203;ztanner](https://github.com/ztanner) for helping! ### [`v16.0.3`](https://github.com/vercel/next.js/releases/tag/v16.0.3) [Compare Source](https://github.com/vercel/next.js/compare/v16.0.2...v16.0.3) ##### Core Changes - fix: Rspack throw error when using ForceCompleteRuntimePlugin: [#&#8203;85221](https://github.com/vercel/next.js/issues/85221) - fix: build CLI output not displaying Proxy (Middleware) when nodejs runtime: [#&#8203;85403](https://github.com/vercel/next.js/issues/85403) - fix: staleTimes.static should consistently enforce a 30s minimum: [#&#8203;85479](https://github.com/vercel/next.js/issues/85479) - \[turbopack] fix build of empty entries of pages: [#&#8203;84873](https://github.com/vercel/next.js/issues/84873) - Cache the head separately from the route tree: [#&#8203;84724](https://github.com/vercel/next.js/issues/84724) - Allow inspecting dev server on default port with `next dev --inspect`: [#&#8203;85037](https://github.com/vercel/next.js/issues/85037) - Avoid proxying React modules through workUnitStore: [#&#8203;85486](https://github.com/vercel/next.js/issues/85486) - fix: redirect should always return updated router state: [#&#8203;85533](https://github.com/vercel/next.js/issues/85533) - Upgrade React from `b4455a6e-20251027` to `4f931700-20251029`: [#&#8203;85518](https://github.com/vercel/next.js/issues/85518) - \[turbopack] Move generation of `cacheLife` types out of the webpack plugin and into the dev bundler directly: [#&#8203;85539](https://github.com/vercel/next.js/issues/85539) - Ensure user-space stack frame for `'use cache'` in page/layout component: [#&#8203;85519](https://github.com/vercel/next.js/issues/85519) - Update parallel routes in build-complete: [#&#8203;85546](https://github.com/vercel/next.js/issues/85546) - fully remove clientSegmentCache flag: [#&#8203;85541](https://github.com/vercel/next.js/issues/85541) - \[turbopack] Support relative paths in turbopack source maps.: [#&#8203;85146](https://github.com/vercel/next.js/issues/85146) - Release unnecessary memory on hydration finish: [#&#8203;84967](https://github.com/vercel/next.js/issues/84967) - Preserve interception markers in parameter types: [#&#8203;85526](https://github.com/vercel/next.js/issues/85526) - move segment cache entries to top level segment-cache dir: [#&#8203;85542](https://github.com/vercel/next.js/issues/85542) - Upgrade React from `4f931700-20251029` to `561ee24d-20251101`: [#&#8203;85670](https://github.com/vercel/next.js/issues/85670) - \[devtools] Remove title from preferences: [#&#8203;85698](https://github.com/vercel/next.js/issues/85698) - Update font data: [#&#8203;85708](https://github.com/vercel/next.js/issues/85708) - Don't invalidate hot reloader excessively during dev server boot: [#&#8203;85732](https://github.com/vercel/next.js/issues/85732) - \[codemod] fix: next-lint-to-eslint-cli did not handle `'next'` plugin: [#&#8203;85749](https://github.com/vercel/next.js/issues/85749) - Upgrade React from `561ee24d-20251101` to `67f7d47a-20251103`: [#&#8203;85762](https://github.com/vercel/next.js/issues/85762) - Tracing: Fix memory leak in span map: [#&#8203;85529](https://github.com/vercel/next.js/issues/85529) - Fix documentation typo in refresh function: [#&#8203;85696](https://github.com/vercel/next.js/issues/85696) - fix: eslint-config-next types was exporting to dist/src: [#&#8203;85768](https://github.com/vercel/next.js/issues/85768) - Upgrade React from `67f7d47a-20251103` to `f646e8ff-20251104`: [#&#8203;85772](https://github.com/vercel/next.js/issues/85772) - remove unused RSC payload property: [#&#8203;85746](https://github.com/vercel/next.js/issues/85746) - \[runtime prefetching]: fix runtime prefetching when deployed: [#&#8203;85595](https://github.com/vercel/next.js/issues/85595) - Turbopack: next build --analyze: [#&#8203;85197](https://github.com/vercel/next.js/issues/85197) - Build: Log amount of workers during static generation: [#&#8203;85706](https://github.com/vercel/next.js/issues/85706) - Upgrade React from `f646e8ff-20251104` to `dd048c3b-20251105`: [#&#8203;85819](https://github.com/vercel/next.js/issues/85819) - Sync devFallbackParams when generateStaticParams change: [#&#8203;85741](https://github.com/vercel/next.js/issues/85741) - chore: upgrade rspack 1.6.0: [#&#8203;84210](https://github.com/vercel/next.js/issues/84210) - \[mcp] get_routes mcp tool: [#&#8203;85773](https://github.com/vercel/next.js/issues/85773) - Split each path param into a separate cache key : [#&#8203;85758](https://github.com/vercel/next.js/issues/85758) - \[turbopack] change server source maps in production to use relative paths: [#&#8203;85576](https://github.com/vercel/next.js/issues/85576) - fix: skip collecting metadata for app-error in webpack: [#&#8203;85892](https://github.com/vercel/next.js/issues/85892) - fix: support root span attributes with a custom server: [#&#8203;85521](https://github.com/vercel/next.js/issues/85521) - fix isDynamicRSC condition when deployed: [#&#8203;85919](https://github.com/vercel/next.js/issues/85919) - \[turbopack] Make it possible to synchronously access native bindings: [#&#8203;85787](https://github.com/vercel/next.js/issues/85787) - Upgrade React from `dd048c3b-20251105` to `fa50caf5-20251107`: [#&#8203;85906](https://github.com/vercel/next.js/issues/85906) - Fix telemetry event loss on build failures and server shutdown: [#&#8203;85867](https://github.com/vercel/next.js/issues/85867) - Remove one stack frame from `'use cache'` call stacks: [#&#8203;85966](https://github.com/vercel/next.js/issues/85966) - Upgrade React from `fa50caf5-20251107` to `52684925-20251110`: [#&#8203;85980](https://github.com/vercel/next.js/issues/85980) - Deployment adapter: fix metadata for "/" route: [#&#8203;85820](https://github.com/vercel/next.js/issues/85820) - Enable React's default Transition indicator behind a flag: [#&#8203;86000](https://github.com/vercel/next.js/issues/86000) - update routes-manifest to include whether app has pages routes: [#&#8203;86051](https://github.com/vercel/next.js/issues/86051) ##### Misc Changes - chore: Add `opt-level = s` for not frequently used crates: [#&#8203;85426](https://github.com/vercel/next.js/issues/85426) - \[test] Deflake cache-components-allow-otel-spans: [#&#8203;85466](https://github.com/vercel/next.js/issues/85466) - \[test] Move remaining `experimental.cacheLife`: [#&#8203;85467](https://github.com/vercel/next.js/issues/85467) - Turbopack: chore: Remove mopa dependency in turbo-tasks (2nd attempt): [#&#8203;85286](https://github.com/vercel/next.js/issues/85286) - Update Proxy docs: [#&#8203;85439](https://github.com/vercel/next.js/issues/85439) - \[CNA] Do not prompt for Turbopack: [#&#8203;85404](https://github.com/vercel/next.js/issues/85404) - Clean up new release process: [#&#8203;85458](https://github.com/vercel/next.js/issues/85458) - Update E2E tests workflow: [#&#8203;85485](https://github.com/vercel/next.js/issues/85485) - Update E2E deploy tests manifest: [#&#8203;85483](https://github.com/vercel/next.js/issues/85483) - docs: example are incorrect async function exports only: [#&#8203;85453](https://github.com/vercel/next.js/issues/85453) - \[test] Handle CLI assertions where no "Compiling..." log is present: [#&#8203;85499](https://github.com/vercel/next.js/issues/85499) - \[test] Speed up refresh test: [#&#8203;85505](https://github.com/vercel/next.js/issues/85505) - \[test] Add test cases for dynamic caches without suspense boundaries: [#&#8203;85500](https://github.com/vercel/next.js/issues/85500) - docs: Routes are wrapped w/ Activity in Cache Components: [#&#8203;85309](https://github.com/vercel/next.js/issues/85309) - docs: GET handler behavior under cache components: [#&#8203;85389](https://github.com/vercel/next.js/issues/85389) - \[test] Avoid needless start/stop from using `createSandbox`: [#&#8203;85507](https://github.com/vercel/next.js/issues/85507) - \[test] Use `--debug-build-paths` instead of `NEXT_PRIVATE_APP_PATHS`: [#&#8203;85504](https://github.com/vercel/next.js/issues/85504) - docs: revalidateTag requires second argument: [#&#8203;85284](https://github.com/vercel/next.js/issues/85284) - Refactor GTM implementation to support google tag gateway: [#&#8203;81011](https://github.com/vercel/next.js/issues/81011) - Update Rspack production test manifest: [#&#8203;85494](https://github.com/vercel/next.js/issues/85494) - Update Rspack development test manifest: [#&#8203;85495](https://github.com/vercel/next.js/issues/85495) - \[docs] Fix a typo: [#&#8203;85492](https://github.com/vercel/next.js/issues/85492) - \[test] Regenerate tsconfig.json files: [#&#8203;85515](https://github.com/vercel/next.js/issues/85515) - \[Turbopack] clean up `completion.rs` a bit: [#&#8203;84863](https://github.com/vercel/next.js/issues/84863) - \[test] Remove `maxRetries` and `hardError` parameters: [#&#8203;85536](https://github.com/vercel/next.js/issues/85536) - Turbopack: remove the .into() alias to .cell(): [#&#8203;85516](https://github.com/vercel/next.js/issues/85516) - \[test] Consolidate identical snapshots across different bundlers: [#&#8203;85532](https://github.com/vercel/next.js/issues/85532) - \[turbopack] Change where `cell`s are created in `resolve_raw` to make cell allocation order deterministic.: [#&#8203;85525](https://github.com/vercel/next.js/issues/85525) - Turbopack: Make tasks deterministic: [#&#8203;85524](https://github.com/vercel/next.js/issues/85524) - \[test] Separate act and assertions: [#&#8203;85508](https://github.com/vercel/next.js/issues/85508) - \[test] `assert*` -> `waitFor*` when the util is not instant: [#&#8203;85450](https://github.com/vercel/next.js/issues/85450) - Turbopack: move whole_app_module_graphs to top level: [#&#8203;84897](https://github.com/vercel/next.js/issues/84897) - \[test] Bail on sending requests to Next.js instance if it's no longer available: [#&#8203;85557](https://github.com/vercel/next.js/issues/85557) - \[test] Deflake tests comparing two random numbers: [#&#8203;85571](https://github.com/vercel/next.js/issues/85571) - \[test] Disallow custom `RegExp`-like implementations in `check`: [#&#8203;85537](https://github.com/vercel/next.js/issues/85537) - \[test] Deflake prerender suite: [#&#8203;85563](https://github.com/vercel/next.js/issues/85563) - Turbopack: chore: Remove some dead MagicAny serialization code from turbo_tasks::value: [#&#8203;85577](https://github.com/vercel/next.js/issues/85577) - \[test]: fix broken scroll restoration test: [#&#8203;85599](https://github.com/vercel/next.js/issues/85599) - \[test] Deflake nested `after()` tests: [#&#8203;85566](https://github.com/vercel/next.js/issues/85566) - \[test] Stop installing unused dependencies: [#&#8203;85569](https://github.com/vercel/next.js/issues/85569) - \[test] Consider `test/integration/` in flake detection tests: [#&#8203;85590](https://github.com/vercel/next.js/issues/85590) - Turbopack: more checks on verify_serialization: [#&#8203;84952](https://github.com/vercel/next.js/issues/84952) - Turbopack: add track_caller to improve panics: [#&#8203;85565](https://github.com/vercel/next.js/issues/85565) - Turbopack: add verify_determinism feature to check if tasks are deterministic: [#&#8203;85559](https://github.com/vercel/next.js/issues/85559) - docs: cache life rework: [#&#8203;85224](https://github.com/vercel/next.js/issues/85224) - Turbopack: fix hanging dev server and builds with fs cache: [#&#8203;85606](https://github.com/vercel/next.js/issues/85606) - Turbopack: Fix compound assignment expression evaluation ([#&#8203;85478](https://github.com/vercel/next.js/issues/85478)): [#&#8203;85593](https://github.com/vercel/next.js/issues/85593) - Turbopack: fix Scope holding Arc too long: [#&#8203;85611](https://github.com/vercel/next.js/issues/85611) - \[ci] Improve change detection logic in `run-for-change` script: [#&#8203;85619](https://github.com/vercel/next.js/issues/85619) - \[test] Ignore in deploy tests if a child process isn't available: [#&#8203;85636](https://github.com/vercel/next.js/issues/85636) - Turbopack: add size_hint and len for Chunk iterator: [#&#8203;85622](https://github.com/vercel/next.js/issues/85622) - \[test]: move resume-data-cache to e2e test: [#&#8203;85647](https://github.com/vercel/next.js/issues/85647) - Update Rspack development test manifest: [#&#8203;85662](https://github.com/vercel/next.js/issues/85662) - Update Rspack production test manifest: [#&#8203;85661](https://github.com/vercel/next.js/issues/85661) - Update Rspack production test manifest: [#&#8203;85688](https://github.com/vercel/next.js/issues/85688) - Update Rspack development test manifest: [#&#8203;85689](https://github.com/vercel/next.js/issues/85689) - \[test] Deflake root-optional-revalidate: [#&#8203;85584](https://github.com/vercel/next.js/issues/85584) - docs: fix generateImageMetadata example to use normal params object: [#&#8203;85658](https://github.com/vercel/next.js/issues/85658) - Turbopack: Upgrade image crate: [#&#8203;85084](https://github.com/vercel/next.js/issues/85084) - docs: update multi sitemap argumenmt type: [#&#8203;85701](https://github.com/vercel/next.js/issues/85701) - \[test] Move all files to .ts (6/6): [#&#8203;85641](https://github.com/vercel/next.js/issues/85641) - Turbopack: add a batch add method to the storage: [#&#8203;84270](https://github.com/vercel/next.js/issues/84270) - docs: recommend reverse-proxy when self-hosting: [#&#8203;85650](https://github.com/vercel/next.js/issues/85650) - \[test] Deflake prefetching.stale-times: [#&#8203;85733](https://github.com/vercel/next.js/issues/85733) - \[test] Deflake custom cache handler test: [#&#8203;85610](https://github.com/vercel/next.js/issues/85610) - \[test] Allow CLI integration test to be retryable: [#&#8203;85586](https://github.com/vercel/next.js/issues/85586) - docs: update docs to mention ESLint as default: [#&#8203;85740](https://github.com/vercel/next.js/issues/85740) - docs(next.config): this docs should remove ".mts" is not supported.: [#&#8203;85716](https://github.com/vercel/next.js/issues/85716) - Turbopack: cleanup StyleSheetLike: [#&#8203;85718](https://github.com/vercel/next.js/issues/85718) - Turbopack: disable tree shaking for tracing: [#&#8203;85722](https://github.com/vercel/next.js/issues/85722) - \[test] Move all files to .ts (3/6): [#&#8203;85638](https://github.com/vercel/next.js/issues/85638) - \[test] Move all files to .ts (2/6): [#&#8203;85637](https://github.com/vercel/next.js/issues/85637) - \[test] Move all files to .ts (1/6): [#&#8203;85634](https://github.com/vercel/next.js/issues/85634) - docs: generateSitemap passes id as promise: [#&#8203;85767](https://github.com/vercel/next.js/issues/85767) - \[test] Move all files to .ts (4/6): [#&#8203;85639](https://github.com/vercel/next.js/issues/85639) - docs: disclosure on path-to-regexp: [#&#8203;85629](https://github.com/vercel/next.js/issues/85629) - chore: update rspack binding to 1.6.0: [#&#8203;85717](https://github.com/vercel/next.js/issues/85717) - Turbopack: trace worker_threads worker entry: [#&#8203;85734](https://github.com/vercel/next.js/issues/85734) - Update Rspack development test manifest: [#&#8203;85761](https://github.com/vercel/next.js/issues/85761) - Turbopack: chore: Remove `extern crate` and `macro_use` syntax: [#&#8203;85778](https://github.com/vercel/next.js/issues/85778) - \[turbopack] Drop duration and allocation tracking from CaptureFuture: [#&#8203;85534](https://github.com/vercel/next.js/issues/85534) - Turbopack: chore: Remove dead RouteMatcher stuff: [#&#8203;85784](https://github.com/vercel/next.js/issues/85784) - docs: fresh up getting started 00: [#&#8203;85736](https://github.com/vercel/next.js/issues/85736) - Turbopack: chore: Remove the serde_regex dependency, which wasn't very heavily used: [#&#8203;85578](https://github.com/vercel/next.js/issues/85578) - Turbopack: use batch add in connect children: [#&#8203;85623](https://github.com/vercel/next.js/issues/85623) - \[test] Move all files to .ts (5/6): [#&#8203;85640](https://github.com/vercel/next.js/issues/85640) - \[test] Deflake legacy-link-behavior: [#&#8203;85805](https://github.com/vercel/next.js/issues/85805) - Resolve request ID confusion: [#&#8203;85809](https://github.com/vercel/next.js/issues/85809) - Turbopack: use batch add to add initial followers: [#&#8203;85624](https://github.com/vercel/next.js/issues/85624) - Turbopack: chore: Remove dead experimental.ppr struct field: [#&#8203;85792](https://github.com/vercel/next.js/issues/85792) - Turbopack: chore: Avoid string clones in Glob::parse by using RcStr: [#&#8203;85579](https://github.com/vercel/next.js/issues/85579) - Update Rspack production test manifest: [#&#8203;85795](https://github.com/vercel/next.js/issues/85795) - docs: getting started updates 01: [#&#8203;85750](https://github.com/vercel/next.js/issues/85750) - chore: Update patricia_tree dependency, remove manual serde impls: [#&#8203;85785](https://github.com/vercel/next.js/issues/85785) - docs: keywords in system reqs and add browserslist: [#&#8203;85838](https://github.com/vercel/next.js/issues/85838) - Honour `NEXT_TEST_PREFER_OFFLINE` in `install-native.mjs`: [#&#8203;85850](https://github.com/vercel/next.js/issues/85850) - Turbopack: chore: Update anyhow, remove old backtrace feature: [#&#8203;85844](https://github.com/vercel/next.js/issues/85844) - Turbopack: Remove some dead (or useless) code from `next-core/src/next_client_reference/visit_client_reference.rs`: [#&#8203;85843](https://github.com/vercel/next.js/issues/85843) - sort dependencies for smaller diffs: [#&#8203;82291](https://github.com/vercel/next.js/issues/82291) - Update Rspack development test manifest: [#&#8203;85846](https://github.com/vercel/next.js/issues/85846) - Turbopack: Remove `non_operation_vc_strongly_consistent` feature usage from next-api: [#&#8203;85874](https://github.com/vercel/next.js/issues/85874) - Turbopack: remove the streaming hack for improved stability: [#&#8203;85858](https://github.com/vercel/next.js/issues/85858) - test: Port clean-distdir integration test to the modern e2e test framework: [#&#8203;85828](https://github.com/vercel/next.js/issues/85828) - Update font data: [#&#8203;85920](https://github.com/vercel/next.js/issues/85920) - Update deploy manifest: [#&#8203;85924](https://github.com/vercel/next.js/issues/85924) - Turbopack: chore: Merge `turbo-tasks-macros-shared` crate into `turbo-tasks-macros`: [#&#8203;85917](https://github.com/vercel/next.js/issues/85917) - Turbopack: Fix IO concurrency for MacOS: [#&#8203;85861](https://github.com/vercel/next.js/issues/85861) - Add Appwrite Sites to supported adapters: [#&#8203;85830](https://github.com/vercel/next.js/issues/85830) - \[turbopack] Remove LocalTaskType::Native, it is dead: [#&#8203;85480](https://github.com/vercel/next.js/issues/85480) - \[test] Increase response timeout in `next.browserWithResponse()`: [#&#8203;85911](https://github.com/vercel/next.js/issues/85911) - Hoist inner `'use cache'` functions to reduce function allocations: [#&#8203;85904](https://github.com/vercel/next.js/issues/85904) - docs: eslint config update: [#&#8203;85969](https://github.com/vercel/next.js/issues/85969) - Fix Turbopack local font `font-family` declaration: [#&#8203;85913](https://github.com/vercel/next.js/issues/85913) - switch to slice in createRuntimePrefetchTransformStream: [#&#8203;85822](https://github.com/vercel/next.js/issues/85822) - Update authentication.mdx: Fix `Auth0` Link: [#&#8203;85953](https://github.com/vercel/next.js/issues/85953) - Turbopack: remove unused function: [#&#8203;85974](https://github.com/vercel/next.js/issues/85974) - docs: cacheHandlers: [#&#8203;85311](https://github.com/vercel/next.js/issues/85311) - docs: Feedback item on proxy default: [#&#8203;86004](https://github.com/vercel/next.js/issues/86004) - \[test] Add missing test fixtures for `cacheLife` & `cacheTag` in client: [#&#8203;85872](https://github.com/vercel/next.js/issues/85872) - Fix false-positive build error for `cacheLife` & `cacheTag`: [#&#8203;85875](https://github.com/vercel/next.js/issues/85875) - \[cna] For pnpm ignore postinstall from `sharp` and `unrs-resolver`: [#&#8203;83168](https://github.com/vercel/next.js/issues/83168) - Turbopack: refactor `evaluate` to take module_graph: [#&#8203;85971](https://github.com/vercel/next.js/issues/85971) - Turbopack: remove duplicate traversal implementations: [#&#8203;85853](https://github.com/vercel/next.js/issues/85853) - Omit unused `encryptActionBoundArgs`/`decryptActionBoundArgs` imports: [#&#8203;86015](https://github.com/vercel/next.js/issues/86015) - Turbopack: cleanup db log and add verbose option: [#&#8203;85965](https://github.com/vercel/next.js/issues/85965) - \[ci]: fix retry_deploy_test workflow: [#&#8203;85981](https://github.com/vercel/next.js/issues/85981) - Fix typo in documentation: [#&#8203;86054](https://github.com/vercel/next.js/issues/86054) ##### Credits Huge thanks to [@&#8203;kdy1](https://github.com/kdy1), [@&#8203;eps1lon](https://github.com/eps1lon), [@&#8203;SyMind](https://github.com/SyMind), [@&#8203;bgw](https://github.com/bgw), [@&#8203;swarnava](https://github.com/swarnava), [@&#8203;devjiwonchoi](https://github.com/devjiwonchoi), [@&#8203;ztanner](https://github.com/ztanner), [@&#8203;ijjk](https://github.com/ijjk), [@&#8203;huozhi](https://github.com/huozhi), [@&#8203;icyJoseph](https://github.com/icyJoseph), [@&#8203;acdlite](https://github.com/acdlite), [@&#8203;unstubbable](https://github.com/unstubbable), [@&#8203;gnoff](https://github.com/gnoff), [@&#8203;gusfune](https://github.com/gusfune), [@&#8203;vercel-release-bot](https://github.com/vercel-release-bot), [@&#8203;lukesandberg](https://github.com/lukesandberg), [@&#8203;sokra](https://github.com/sokra), [@&#8203;hayes](https://github.com/hayes), [@&#8203;shuding](https://github.com/shuding), [@&#8203;wyattjoh](https://github.com/wyattjoh), [@&#8203;marjan-ahmed](https://github.com/marjan-ahmed), [@&#8203;timneutkens](https://github.com/timneutkens), [@&#8203;ajstrongdev](https://github.com/ajstrongdev), [@&#8203;zigang93](https://github.com/zigang93), [@&#8203;mischnic](https://github.com/mischnic), [@&#8203;Nayeem-XTREME](https://github.com/Nayeem-XTREME), [@&#8203;hamirmahal](https://github.com/hamirmahal), [@&#8203;eli0shin](https://github.com/eli0shin), [@&#8203;tessamero](https://github.com/tessamero), [@&#8203;gaojude](https://github.com/gaojude), [@&#8203;jamesdaniels](https://github.com/jamesdaniels), [@&#8203;georgesfarah](https://github.com/georgesfarah), and [@&#8203;timeyoutakeit](https://github.com/timeyoutakeit) for helping! ### [`v16.0.2`](https://github.com/vercel/next.js/releases/tag/v16.0.2) [Compare Source](https://github.com/vercel/next.js/compare/v16.0.1...v16.0.2) > \[!NOTE]\ > This version includes no code or feature changes. To get the latest change, please look for the next patch release [v16.0.3](https://github.com/vercel/next.js/releases/tag/v16.0.3) or next@latest ### [`v16.0.1`](https://github.com/vercel/next.js/releases/tag/v16.0.1) [Compare Source](https://github.com/vercel/next.js/compare/v16.0.0...v16.0.1) ##### Core Changes - fix(static-paths): add depth tracking to parallel route param resolution: [#&#8203;85319](https://github.com/vercel/next.js/issues/85319) - Fix types of [@&#8203;next/mdx](https://github.com/next/mdx): [#&#8203;82238](https://github.com/vercel/next.js/issues/82238) - Ensure getServerInsertedHTML skips rendering correctly: [#&#8203;85394](https://github.com/vercel/next.js/issues/85394) - Fix duplicate .next/types `include` on Windows: [#&#8203;85400](https://github.com/vercel/next.js/issues/85400) - Exclude `next-js` condition from middleware, proxy, and instrumentation: [#&#8203;85321](https://github.com/vercel/next.js/issues/85321) - remove unstable_forceStale prefetch option & restore `prefetch={true}` functionality: [#&#8203;85411](https://github.com/vercel/next.js/issues/85411) - Upgrade React from `2bcbf254-20251020` to `6160773f-20251023`: [#&#8203;85277](https://github.com/vercel/next.js/issues/85277) - fix(next/image): swap dependencies: [#&#8203;85419](https://github.com/vercel/next.js/issues/85419) - Handle `Origin: null` headers: [#&#8203;85402](https://github.com/vercel/next.js/issues/85402) - Generalize Segment Cache fallback implementation: [#&#8203;84652](https://github.com/vercel/next.js/issues/84652) - fix: ensure req.query is writable: [#&#8203;81573](https://github.com/vercel/next.js/issues/81573) - fix: Proxy not picked up on Windows: [#&#8203;85443](https://github.com/vercel/next.js/issues/85443) - \[test] Ensure we can toggle the DevTools menu while status indicators are active: [#&#8203;85456](https://github.com/vercel/next.js/issues/85456) - Fix crash when suspending in Components using `useActionQueue`: [#&#8203;85459](https://github.com/vercel/next.js/issues/85459) ##### Misc Changes - docs: create-next-app react-compiler and new prompts: [#&#8203;85213](https://github.com/vercel/next.js/issues/85213) - docs: cache components - introduction: [#&#8203;85196](https://github.com/vercel/next.js/issues/85196) - docs: use cache feedback: [#&#8203;85169](https://github.com/vercel/next.js/issues/85169) - docs: stabilize apis in docs: [#&#8203;85219](https://github.com/vercel/next.js/issues/85219) - docs: revalidateTag immediate expiration in Route Handlers: [#&#8203;85223](https://github.com/vercel/next.js/issues/85223) - Docs/use cache feedback 2: [#&#8203;85222](https://github.com/vercel/next.js/issues/85222) - docs: added `use cache: remote` docs: [#&#8203;85145](https://github.com/vercel/next.js/issues/85145) - docs: proxy runtime defaults to nodejs: [#&#8203;85204](https://github.com/vercel/next.js/issues/85204) - chore: cache components feedback: [#&#8203;85241](https://github.com/vercel/next.js/issues/85241) - docs: add a note that cache components is opt-in near the top: [#&#8203;85245](https://github.com/vercel/next.js/issues/85245) - Docs/v16 feedback: [#&#8203;85259](https://github.com/vercel/next.js/issues/85259) - Update command to install babel-plugin-react-compiler as a devDependency: [#&#8203;85235](https://github.com/vercel/next.js/issues/85235) - docs: typegen next-env.d.ts feedback: [#&#8203;85273](https://github.com/vercel/next.js/issues/85273) - docs: link to MCP guide from upgrade: [#&#8203;85308](https://github.com/vercel/next.js/issues/85308) - docs: regexp removed from middleware config: [#&#8203;85343](https://github.com/vercel/next.js/issues/85343) - docs: simplify MCP guide to focus on next-devtools-mcp: [#&#8203;85353](https://github.com/vercel/next.js/issues/85353) - docs: fix proxy matcher overflow: [#&#8203;85337](https://github.com/vercel/next.js/issues/85337) - docs: point out diff in serialization types for arguments and return values: [#&#8203;85338](https://github.com/vercel/next.js/issues/85338) - \[test] Update snapshots: [#&#8203;85407](https://github.com/vercel/next.js/issues/85407) - docs: Fix typo in SEO section of loading.mdx: [#&#8203;85301](https://github.com/vercel/next.js/issues/85301) - Fix typo in Fast Refresh documentation: [#&#8203;85352](https://github.com/vercel/next.js/issues/85352) - Fix grammatical errors in updating data documentation: [#&#8203;85067](https://github.com/vercel/next.js/issues/85067) - \[test] Skip devlow benchmarks on PRs: [#&#8203;85408](https://github.com/vercel/next.js/issues/85408) - \[test] Unflake typed-env suite: [#&#8203;85410](https://github.com/vercel/next.js/issues/85410) - Update rust toolchain to 2025-10-27: [#&#8203;85409](https://github.com/vercel/next.js/issues/85409) - \[test] Speed up prefetching suite: [#&#8203;85417](https://github.com/vercel/next.js/issues/85417) - docs: remove inaccuracies from use cache: private: [#&#8203;85425](https://github.com/vercel/next.js/issues/85425) - \[test] Exclude Next.js internal stack frames from cache-component-error CLI output assertions: [#&#8203;85421](https://github.com/vercel/next.js/issues/85421) - \[test] Exclude likely Next.js internal Components from component stacks in Redbox assertions: [#&#8203;85420](https://github.com/vercel/next.js/issues/85420) - Turbopack: correctly trace files with npm: [#&#8203;85323](https://github.com/vercel/next.js/issues/85323) ##### Credits Huge thanks to [@&#8203;icyJoseph](https://github.com/icyJoseph), [@&#8203;wyattjoh](https://github.com/wyattjoh), [@&#8203;devjiwonchoi](https://github.com/devjiwonchoi), [@&#8203;arnabsen](https://github.com/arnabsen), [@&#8203;remcohaszing](https://github.com/remcohaszing), [@&#8203;denesbeck](https://github.com/denesbeck), [@&#8203;gaojude](https://github.com/gaojude), [@&#8203;mhart](https://github.com/mhart), [@&#8203;eps1lon](https://github.com/eps1lon), [@&#8203;jesuistuan](https://github.com/jesuistuan), [@&#8203;codr](https://github.com/codr), [@&#8203;InfiniteCodeMonkeys](https://github.com/InfiniteCodeMonkeys), [@&#8203;gnoff](https://github.com/gnoff), [@&#8203;ztanner](https://github.com/ztanner), [@&#8203;wbinnssmith](https://github.com/wbinnssmith), [@&#8203;styfle](https://github.com/styfle), [@&#8203;acdlite](https://github.com/acdlite), [@&#8203;ale-grosselle](https://github.com/ale-grosselle), and [@&#8203;mischnic](https://github.com/mischnic) for helping! ### [`v16.0.0`](https://github.com/vercel/next.js/releases/tag/v16.0.0) [Compare Source](https://github.com/vercel/next.js/compare/v15.5.7...v16.0.0) > \[!TIP]\ > **Check out our Next v16 [Blog Post](https://nextjs.org/blog/next-16) to learn more about this release.** ##### Core Changes - Development: Don't import app-router / hot-reloader through next/link in application code: [#&#8203;83656](https://github.com/vercel/next.js/issues/83656) - Remove clientParamParsing requirement from RDC for Navigations: [#&#8203;83661](https://github.com/vercel/next.js/issues/83661) - Upgrade React from `6b70072c-20250909` to `886b3d36-20250910`: [#&#8203;83650](https://github.com/vercel/next.js/issues/83650) - Turbopack: Use readFileSync / writeFileSync for manifest writing: [#&#8203;83694](https://github.com/vercel/next.js/issues/83694) - Upgrade React from `886b3d36-20250910` to `f3a80361-20250911`: [#&#8203;83696](https://github.com/vercel/next.js/issues/83696) - Don't create client-side debug channel if the feature is disabled: [#&#8203;83699](https://github.com/vercel/next.js/issues/83699) - fix: dev should produce the correct default fallback regex to match builds/Turbopack: [#&#8203;83701](https://github.com/vercel/next.js/issues/83701) - \[devtool] fix overlay styles are missing: [#&#8203;83721](https://github.com/vercel/next.js/issues/83721) - Revert "Remove clientParamParsing requirement from RDC for Navigations": [#&#8203;83725](https://github.com/vercel/next.js/issues/83725) - Only enable unhandledRejection filtering when opted in: [#&#8203;83726](https://github.com/vercel/next.js/issues/83726) - Fix index data route for adapter build-complete: [#&#8203;83730](https://github.com/vercel/next.js/issues/83730) - Remove leading underscore for unhandledRejection envvar: [#&#8203;83732](https://github.com/vercel/next.js/issues/83732) - Upgrade React from `f3a80361-20250911` to `93d7aa69-20250912`: [#&#8203;83729](https://github.com/vercel/next.js/issues/83729) - Upgrade React from `93d7aa69-20250912` to `8a8e9a7e-20250912`: [#&#8203;83742](https://github.com/vercel/next.js/issues/83742) - Fix reentrancy of unhandledRejection filtering: [#&#8203;83741](https://github.com/vercel/next.js/issues/83741) - Fix type for unhandled rejection handler process.removeListener: [#&#8203;83748](https://github.com/vercel/next.js/issues/83748) - \[OTel] fix: Root span name should not include high cardinality URL: [#&#8203;75416](https://github.com/vercel/next.js/issues/75416) - Turbopack: Remove matchers.reload() call on each request: [#&#8203;83720](https://github.com/vercel/next.js/issues/83720) - \[Breaking] Flat config as default in `@next/eslint-plugin-next`: [#&#8203;83763](https://github.com/vercel/next.js/issues/83763) - fix: Rspack splitChunks.chunks regex: [#&#8203;83670](https://github.com/vercel/next.js/issues/83670) - Revert "Turbopack: Remove matchers.reload() call on each request": [#&#8203;83819](https://github.com/vercel/next.js/issues/83819) - fix: unstable_cache should perform blocking revalidation during ISR revalidation: [#&#8203;83820](https://github.com/vercel/next.js/issues/83820) - fix(Rspack): resolve HMR unresponsiveness or unexpected full reload & update dev snapshot: [#&#8203;83480](https://github.com/vercel/next.js/issues/83480) - Allow `next.config.mts` for Node.js native TS resolver: [#&#8203;83556](https://github.com/vercel/next.js/issues/83556) - chore: Ensure Import Trace starts in a newline: [#&#8203;83638](https://github.com/vercel/next.js/issues/83638) - Development: Remove matchers.reload() on each request: [#&#8203;83829](https://github.com/vercel/next.js/issues/83829) - Upgrade React from `8a8e9a7e-20250912` to `5e0c951b-20250916`: [#&#8203;83850](https://github.com/vercel/next.js/issues/83850) - Bump typescript 5.9.2: [#&#8203;83833](https://github.com/vercel/next.js/issues/83833) - Allow headers, rewrites and redirects to be defined as sync functions: [#&#8203;83743](https://github.com/vercel/next.js/issues/83743) - Turbopack: Optimize addedRoutes and removedRoutes calculation: [#&#8203;83840](https://github.com/vercel/next.js/issues/83840) - \[next-config-ts] Set Node.js native TS loader fallback flag to process.env: [#&#8203;83832](https://github.com/vercel/next.js/issues/83832) - Development: Clarify TypescriptStatus in watcher: [#&#8203;83857](https://github.com/vercel/next.js/issues/83857) - Upgrade sharp dependency to version ^0.34.4: [#&#8203;83892](https://github.com/vercel/next.js/issues/83892) - Upgrade React from `5e0c951b-20250916` to `128abcfa-20250917`: [#&#8203;83906](https://github.com/vercel/next.js/issues/83906) - Add native ts resolver docs link to transpile-config: [#&#8203;83914](https://github.com/vercel/next.js/issues/83914) - OTel: use `srcPage` for templates when `next.route` is unavailable: [#&#8203;83911](https://github.com/vercel/next.js/issues/83911) - Remove inline CSS sourcemaps from next-devtools: [#&#8203;83917](https://github.com/vercel/next.js/issues/83917) - Development: Move all TypeScript related work in watcher together: [#&#8203;83912](https://github.com/vercel/next.js/issues/83912) - \[Cache Components] Allow sync IO inside console methods : [#&#8203;83843](https://github.com/vercel/next.js/issues/83843) - Upgrade React from `128abcfa-20250917` to `84af9085-20250917`: [#&#8203;83959](https://github.com/vercel/next.js/issues/83959) - Build: Add .next/trace-build with high level trace: [#&#8203;83949](https://github.com/vercel/next.js/issues/83949) - Remove force writing \*\*/\*.mts to tsconfig: [#&#8203;83967](https://github.com/vercel/next.js/issues/83967) - feat: Isolate dev build from prod: [#&#8203;83961](https://github.com/vercel/next.js/issues/83961) - Remove JS size reporting from next build: [#&#8203;83815](https://github.com/vercel/next.js/issues/83815) - Docs/workspace setup: [#&#8203;83490](https://github.com/vercel/next.js/issues/83490) - Turbopack: support `import ... with {type: "bytes"}`: [#&#8203;83896](https://github.com/vercel/next.js/issues/83896) - fix: error overlay not closing when backdrop clicked: [#&#8203;83981](https://github.com/vercel/next.js/issues/83981) - Upgrade React from `84af9085-20250917` to `d415fd3e-20250919`: [#&#8203;84003](https://github.com/vercel/next.js/issues/84003) - fix: worker logs should still support color: [#&#8203;84024](https://github.com/vercel/next.js/issues/84024) - Update font data: [#&#8203;84005](https://github.com/vercel/next.js/issues/84005) - Allow passing port to `next internal trace`: [#&#8203;83907](https://github.com/vercel/next.js/issues/83907) - Turbopack: error when importing Typescript in node_modules: [#&#8203;83990](https://github.com/vercel/next.js/issues/83990) - Turbopack: Deterministic builds (prerender-manifest, .next/package.json, ./next/postcss.js): [#&#8203;84081](https://github.com/vercel/next.js/issues/84081) - Turbopack: Fix babel-loader (allowing built-in or manual configuration): [#&#8203;82676](https://github.com/vercel/next.js/issues/82676) - \[Cache Components] allow using headers() in runtime prefetches: [#&#8203;83838](https://github.com/vercel/next.js/issues/83838) - \[Breaking] Remove deprecated `publicRuntimeConfig` and `serverRuntimeConfig`: [#&#8203;83944](https://github.com/vercel/next.js/issues/83944) - Turbopack: mode to disable tracing: [#&#8203;83683](https://github.com/vercel/next.js/issues/83683) - babel-loader: Fix a few issues with config caching: [#&#8203;83973](https://github.com/vercel/next.js/issues/83973) - Turbopack: Merge babel-loader and react-compiler configuration logic to avoid running babel twice: [#&#8203;83502](https://github.com/vercel/next.js/issues/83502) - \[breaking]: enable router scroll optimization by default: [#&#8203;84102](https://github.com/vercel/next.js/issues/84102) - Fix layout for `ssgPageRoutes` in the file tree: [#&#8203;84104](https://github.com/vercel/next.js/issues/84104) - Turbopack: Remove useless 'default' built-in webpack loader condition: [#&#8203;84111](https://github.com/vercel/next.js/issues/84111) - Fix: Client should auto reload after server restarts: [#&#8203;83971](https://github.com/vercel/next.js/issues/83971) - trace-build: Add missing spans: [#&#8203;84080](https://github.com/vercel/next.js/issues/84080) - Development: Remove TypeScript from the hot path during bootup: [#&#8203;84090](https://github.com/vercel/next.js/issues/84090) - Guide users to `experimental.cacheComponents` config: [#&#8203;84121](https://github.com/vercel/next.js/issues/84121) - Development: Only load webpack when used: [#&#8203;84123](https://github.com/vercel/next.js/issues/84123) - Turbopack: Skip loading webpack plugin: [#&#8203;84125](https://github.com/vercel/next.js/issues/84125) - Development: Only load createEnvDefinitions when used: [#&#8203;83935](https://github.com/vercel/next.js/issues/83935) - BREAKING CHANGE!: bump default `images.minimumCacheTTL` from 1 min to 4 hours: [#&#8203;84105](https://github.com/vercel/next.js/issues/84105) - Feat: Add Model Context Protocol (MCP) server to Next.js dev server: [#&#8203;84100](https://github.com/vercel/next.js/issues/84100) - Upgrade React from `d415fd3e-20250919` to `1eca9a27-20250922`: [#&#8203;84093](https://github.com/vercel/next.js/issues/84093) - Turbopack: Remove the deprecated `.turbo` config object: [#&#8203;84109](https://github.com/vercel/next.js/issues/84109) - Flag excess properties in Next.js config with TypeScript: [#&#8203;84069](https://github.com/vercel/next.js/issues/84069) - docs: update Security section to direct disclosures : [#&#8203;84156](https://github.com/vercel/next.js/issues/84156) - ci: Enable `experimental.isolatedDevBuild` for `test-experimental-dev`: [#&#8203;84099](https://github.com/vercel/next.js/issues/84099) - \[turbopack] Ensure React Compiler options are based dev vs prod: [#&#8203;84062](https://github.com/vercel/next.js/issues/84062) - Enable anonymous function naming in React Compiler: [#&#8203;84070](https://github.com/vercel/next.js/issues/84070) - Revert "\[Breaking] Remove deprecated `publicRuntimeConfig` and `serverRuntimeConfig` ([#&#8203;83944](https://github.com/vercel/next.js/issues/83944))": [#&#8203;84167](https://github.com/vercel/next.js/issues/84167) - Fix double comma in build manifest: [#&#8203;84131](https://github.com/vercel/next.js/issues/84131) - \[turbopack] set app dir only to true when no pages entries detected: [#&#8203;84144](https://github.com/vercel/next.js/issues/84144) - Split code-frame into separate compiled package: [#&#8203;84174](https://github.com/vercel/next.js/issues/84174) - refactor: separate forward browser logs utils: [#&#8203;84151](https://github.com/vercel/next.js/issues/84151) - Upgrade React from `1eca9a27-20250922` to `e2332183-20250924`: [#&#8203;84189](https://github.com/vercel/next.js/issues/84189) - \[Cache Components] default to filtering unhandledRejection after abort: [#&#8203;84192](https://github.com/vercel/next.js/issues/84192) - fix: prevent URL mutation in router rewrites: [#&#8203;83963](https://github.com/vercel/next.js/issues/83963) - fix(server): fix pages router resume router matching: [#&#8203;84158](https://github.com/vercel/next.js/issues/84158) - Feat: `get_errors` MCP endpoint: [#&#8203;84161](https://github.com/vercel/next.js/issues/84161) - Add internal environment variable for enabling React Compiler: [#&#8203;84176](https://github.com/vercel/next.js/issues/84176) - \[devtools] Disable React's default Transition indicator: [#&#8203;84202](https://github.com/vercel/next.js/issues/84202) - Upgrade React from `e2332183-20250924` to `b0c1dc01-20250925`: [#&#8203;84248](https://github.com/vercel/next.js/issues/84248) - Feat: `get_page_metadata` MCP endpoint: [#&#8203;84211](https://github.com/vercel/next.js/issues/84211) - feat: capture logs into logging file during development: [#&#8203;84183](https://github.com/vercel/next.js/issues/84183) - babel-loader: Avoid calling expensive `isReactCompilerRequired` check when we must run Babel anyways: [#&#8203;84103](https://github.com/vercel/next.js/issues/84103) - \[mcp] expose logging: [#&#8203;84226](https://github.com/vercel/next.js/issues/84226) - Move `config.turbopack.moduleIds` to `config.experimental.turbopackModuleIds`: [#&#8203;84230](https://github.com/vercel/next.js/issues/84230) - Show invalid default export errors during prerendering: [#&#8203;84242](https://github.com/vercel/next.js/issues/84242) - fix: make sure caller exists in babel preset: [#&#8203;84154](https://github.com/vercel/next.js/issues/84154) - \[mcp] allow to enable mcp server through env var: [#&#8203;84278](https://github.com/vercel/next.js/issues/84278) - fix(metadata): make formatDetection respect true/false properly: [#&#8203;83924](https://github.com/vercel/next.js/issues/83924) - Upgrade React from `b0c1dc01-20250925` to `df38ac9a-20250926`: [#&#8203;84276](https://github.com/vercel/next.js/issues/84276) - Add a --webpack flag and default --turbopack to true: [#&#8203;84216](https://github.com/vercel/next.js/issues/84216) - fix: Update URL resolution logic to handle search parameters on root path /?foo=bar: [#&#8203;78262](https://github.com/vercel/next.js/issues/78262) - \[Breaking] Remove deprecated sync access to Dynamic APIs: [#&#8203;84179](https://github.com/vercel/next.js/issues/84179) - Move `config.turbopack.moduleIds` to `config.experimental.turbopackModuleIds`: [#&#8203;84230](https://github.com/vercel/next.js/issues/84230) - Show invalid default export errors during prerendering: [#&#8203;84242](https://github.com/vercel/next.js/issues/84242) - fix: make sure caller exists in babel preset: [#&#8203;84154](https://github.com/vercel/next.js/issues/84154) - \[mcp] allow to enable mcp server through env var: [#&#8203;84278](https://github.com/vercel/next.js/issues/84278) - fix(metadata): make formatDetection respect true/false properly: [#&#8203;83924](https://github.com/vercel/next.js/issues/83924) - Upgrade React from `b0c1dc01-20250925` to `df38ac9a-20250926`: [#&#8203;84276](https://github.com/vercel/next.js/issues/84276) - Add a --webpack flag and default --turbopack to true: [#&#8203;84216](https://github.com/vercel/next.js/issues/84216) - fix: Update URL resolution logic to handle search parameters on root path /?foo=bar: [#&#8203;78262](https://github.com/vercel/next.js/issues/78262) - \[Breaking] Remove deprecated sync access to Dynamic APIs: [#&#8203;84179](https://github.com/vercel/next.js/issues/84179) - Turbopack: only write merged manifests when they have been changed: [#&#8203;84261](https://github.com/vercel/next.js/issues/84261) - Turbopack: add separate turbopackPersistentCachingForBuild/ForDev flags: [#&#8203;84215](https://github.com/vercel/next.js/issues/84215) - Revert "Add a --webpack flag and default --turbopack to true ([#&#8203;84216](https://github.com/vercel/next.js/issues/84216))": [#&#8203;84348](https://github.com/vercel/next.js/issues/84348) - Upgrade React from `df38ac9a-20250926` to `d15d7fd7-20250929`: [#&#8203;84347](https://github.com/vercel/next.js/issues/84347) - Mark React Compiler integration as stable: [#&#8203;84220](https://github.com/vercel/next.js/issues/84220) - \[cna] Add `reactCompiler` option: [#&#8203;82251](https://github.com/vercel/next.js/issues/82251) - Turbopack: remove canary version check for turbopackPersistentCachingForDev: [#&#8203;84277](https://github.com/vercel/next.js/issues/84277) - \[turbopack] Add support for debug_ids: [#&#8203;84319](https://github.com/vercel/next.js/issues/84319) - Revert "Revert "Add a --webpack flag and default --turbopack to true ([#&#8203;84216](https://github.com/vercel/next.js/issues/84216))"": [#&#8203;84351](https://github.com/vercel/next.js/issues/84351) - \[Breaking] Remove AMP codemod: [#&#8203;84356](https://github.com/vercel/next.js/issues/84356) - \[Breaking] Remove deprecated built-in AMP: [#&#8203;84312](https://github.com/vercel/next.js/issues/84312) - auto-enable clientParamParsing and clientSegmentCache w/ cacheComponents: [#&#8203;84250](https://github.com/vercel/next.js/issues/84250) - \[mcp] get server action tool: [#&#8203;84382](https://github.com/vercel/next.js/issues/84382) - Revert "Revert "Revert "Add a --webpack flag and default --turbopack to true ([#&#8203;84216](https://github.com/vercel/next.js/issues/84216))""": [#&#8203;84389](https://github.com/vercel/next.js/issues/84389) - Update otel test assertions and pages span_name: [#&#8203;84393](https://github.com/vercel/next.js/issues/84393) - \[Breaking] Bump minimum TypeScript version to 5.1.0: [#&#8203;84384](https://github.com/vercel/next.js/issues/84384) - Upgrade React from `d15d7fd7-20250929` to `ef889445-20250930`: [#&#8203;84383](https://github.com/vercel/next.js/issues/84383) - \[Breaking] Remove deprecated `unstable_rootParams`: [#&#8203;84373](https://github.com/vercel/next.js/issues/84373) - \[metadata] remove falsy dynamicParams approach: [#&#8203;84405](https://github.com/vercel/next.js/issues/84405) - fix: next rspack binding NextExternalsPlugin: [#&#8203;84303](https://github.com/vercel/next.js/issues/84303) - Development: Skip route matching when there is an existing match: [#&#8203;84227](https://github.com/vercel/next.js/issues/84227) - Revert "auto-enable clientParamParsing and clientSegmentCache w/ cacheComponents": [#&#8203;84419](https://github.com/vercel/next.js/issues/84419) - Upgrade React from `ef889445-20250930` to `548235db-20251001`: [#&#8203;84416](https://github.com/vercel/next.js/issues/84416) - \[Breaking] Update default browserslist config: [#&#8203;84401](https://github.com/vercel/next.js/issues/84401) - Upgrade React from `548235db-20251001` to `1bd1f01f-20251001`: [#&#8203;84417](https://github.com/vercel/next.js/issues/84417) - Allow `metadataBase` to be a string URL in addition to `URL` instance: [#&#8203;84297](https://github.com/vercel/next.js/issues/84297) - Upgrade React from `1bd1f01f-20251001` to `86181134-20251001`: [#&#8203;84427](https://github.com/vercel/next.js/issues/84427) - \[mcp] logging file should be reset for each session: [#&#8203;84425](https://github.com/vercel/next.js/issues/84425) - Revert "Revert "Revert "Revert "Add a --webpack flag and default --turbopack to true ([#&#8203;84216](https://github.com/vercel/next.js/issues/84216))"""": [#&#8203;84394](https://github.com/vercel/next.js/issues/84394) - Optimize isMetadataRoute function: [#&#8203;84409](https://github.com/vercel/next.js/issues/84409) - \[ci]: split clientSegmentCache test runners off from experimental: [#&#8203;84440](https://github.com/vercel/next.js/issues/84440) - \[Cache Components] Fix caching in `generateMetadata`/`generateViewport`: [#&#8203;84228](https://github.com/vercel/next.js/issues/84228) - Upgrade React from `86181134-20251001` to `a757cb76-20251002`: [#&#8203;84463](https://github.com/vercel/next.js/issues/84463) - \[segment cache]: fix trailingSlash handling with output: export: [#&#8203;84465](https://github.com/vercel/next.js/issues/84465) - perf: Use a more aggressive retry loop for `recursiveDelete`: [#&#8203;84444](https://github.com/vercel/next.js/issues/84444) - \[Cache Components] Dim logs after prerender aborts: [#&#8203;84153](https://github.com/vercel/next.js/issues/84153) - telemetry track mcp server usage: [#&#8203;84471](https://github.com/vercel/next.js/issues/84471) - simplify the way we check for turbopack config to ensure we support an empty turbopack object: [#&#8203;84494](https://github.com/vercel/next.js/issues/84494) - perf: Use synchronous IO when cleaning `distDir` in `next dev` and `next build`: [#&#8203;84472](https://github.com/vercel/next.js/issues/84472) - Make turbopack the default bundler for custom servers: [#&#8203;84281](https://github.com/vercel/next.js/issues/84281) - \[segment cache]: fix interception route handling: [#&#8203;84497](https://github.com/vercel/next.js/issues/84497) - Upgrade React from `a757cb76-20251002` to `85c427d8-20251003`: [#&#8203;84496](https://github.com/vercel/next.js/issues/84496) - \[segment cache]: collectSegmentData should respect experimental.staleTime config: [#&#8203;84520](https://github.com/vercel/next.js/issues/84520) - Fix potential race condition with request ID in dev mode: [#&#8203;84532](https://github.com/vercel/next.js/issues/84532) - \[test] Enable `reactDebugChannel` for experimental test shards: [#&#8203;84533](https://github.com/vercel/next.js/issues/84533) - Simplify Metadata components: [#&#8203;84527](https://github.com/vercel/next.js/issues/84527) - Implement the updated prerender API shape: [#&#8203;84254](https://github.com/vercel/next.js/issues/84254) - Upgrade React from `85c427d8-20251003` to `4fdf7cf2-20251003`: [#&#8203;84499](https://github.com/vercel/next.js/issues/84499) - Upgrade React from `4fdf7cf2-20251003` to `c7862584-20251006`: [#&#8203;84573](https://github.com/vercel/next.js/issues/84573) - fix(Turbopack): Add better error messaging for when we can't determine Next.js root: [#&#8203;83918](https://github.com/vercel/next.js/issues/83918) - Allow silencing unhandled rejection filter warnings and improve debugging: [#&#8203;84572](https://github.com/vercel/next.js/issues/84572) - \[MCP] Fix: Do not dedup by URL for MCP get_page_metadata: [#&#8203;84564](https://github.com/vercel/next.js/issues/84564) - Guard `createDebugChannel` import by feature flag: [#&#8203;84604](https://github.com/vercel/next.js/issues/84604) - Build: Add time to logline of every step: [#&#8203;84602](https://github.com/vercel/next.js/issues/84602) - Upgrade React from `c7862584-20251006` to `a4eb2dfa-20251006`: [#&#8203;84589](https://github.com/vercel/next.js/issues/84589) - \[Cache Components] Schedule work on timeouts: [#&#8203;84344](https://github.com/vercel/next.js/issues/84344) - \[dev] Define request ID for RSC requests on the client: [#&#8203;84605](https://github.com/vercel/next.js/issues/84605) - fix(cache-tags): add `/index` to implicit tags and adjust `revalidatePath()`: [#&#8203;84586](https://github.com/vercel/next.js/issues/84586) - Build: Highlight TypeScript and ESLint being run clearer: [#&#8203;84606](https://github.com/vercel/next.js/issues/84606) - \[Breaking] Bump sass-loader to v16: [#&#8203;84387](https://github.com/vercel/next.js/issues/84387) - Update cases for build complete with adapters: [#&#8203;84361](https://github.com/vercel/next.js/issues/84361) - Turbopack: delete .next folder before throwing due to "pages/app directory must be in the same folder": [#&#8203;84553](https://github.com/vercel/next.js/issues/84553) - \[mcp] change get-project-path to get-project-metadata: [#&#8203;84619](https://github.com/vercel/next.js/issues/84619) - feat(next/image)!: deprecate and warn on `images.domains` config: [#&#8203;84625](https://github.com/vercel/next.js/issues/84625) - feat(next/legacy/image)!: deprecate and warn on `next/legacy/image` usage: [#&#8203;84622](https://github.com/vercel/next.js/issues/84622) - Turbopack: improve errors/warnings for turbopack messages: [#&#8203;84552](https://github.com/vercel/next.js/issues/84552) - Turbopack: rename turbopackPersistentCachingForXXX to turbopackFileSystemCacheForXXX: [#&#8203;84632](https://github.com/vercel/next.js/issues/84632) - \[Segment Cache] Add refresh URL to reused default segments: [#&#8203;84627](https://github.com/vercel/next.js/issues/84627) - \[Segment Cache] Fix tests related to optimistic loading state reuse: [#&#8203;84498](https://github.com/vercel/next.js/issues/84498) - Upgrade React from `a4eb2dfa-20251006` to `3025aa39-20251007`: [#&#8203;84613](https://github.com/vercel/next.js/issues/84613) - \[breaking]: enable clientSegmentCache by default: [#&#8203;84643](https://github.com/vercel/next.js/issues/84643) - feat: Acquire a lockfile on `distDir` in `next dev` and `next build`: [#&#8203;84428](https://github.com/vercel/next.js/issues/84428) - Add deprecation warning to Runtime config: [#&#8203;84168](https://github.com/vercel/next.js/issues/84168) - \[middleware]: add upper bound to cloneBodyStream: [#&#8203;84539](https://github.com/vercel/next.js/issues/84539) - Remove automatic linting from build: [#&#8203;83136](https://github.com/vercel/next.js/issues/83136) - Re-enable legacyBehavior and passHref on Link: [#&#8203;84500](https://github.com/vercel/next.js/issues/84500) - \[cna] Use stable React Compiler: [#&#8203;84660](https://github.com/vercel/next.js/issues/84660) - Add codemod for `middleware` to `proxy`: [#&#8203;84127](https://github.com/vercel/next.js/issues/84127) - Fix dynamic catchall parameter interpolation in parallel routes: [#&#8203;84279](https://github.com/vercel/next.js/issues/84279) - feat(breaking): Hard Deprecate PPR Configuration: [#&#8203;84280](https://github.com/vercel/next.js/issues/84280) - Deprecate `middleware` and recommend `proxy`: [#&#8203;84119](https://github.com/vercel/next.js/issues/84119) - Put native TS resolver for next config under `--experimental-next-config-strip-types` flag: [#&#8203;84675](https://github.com/vercel/next.js/issues/84675) - Fix interception route rewrites for nested dynamic routes: [#&#8203;84413](https://github.com/vercel/next.js/issues/84413) - fix: strip *NEXTSEP* from interpolated pathnames: [#&#8203;84430](https://github.com/vercel/next.js/issues/84430) - chore: Remove useless symlink resolution logic in `recursive-delete.js`: [#&#8203;84582](https://github.com/vercel/next.js/issues/84582) - breaking(next/image)!: remove 16px from default `images.imageSizes` config: [#&#8203;84647](https://github.com/vercel/next.js/issues/84647) - add Statsig Node Core package to Server External Packages: [#&#8203;84157](https://github.com/vercel/next.js/issues/84157) - Remove bailed out SSG routes from the list of SSG: [#&#8203;83861](https://github.com/vercel/next.js/issues/83861) - Revert "\[Breaking] Skip Next.js internal routes `/_next` in middleware": [#&#8203;84697](https://github.com/vercel/next.js/issues/84697) - Bump eslint-plugin-react-hooks to v7: [#&#8203;84669](https://github.com/vercel/next.js/issues/84669) - Add refresh API to next/cache: [#&#8203;84666](https://github.com/vercel/next.js/issues/84666) - \[Breaking] Require `images.localPatterns` for query in Image src: [#&#8203;84406](https://github.com/vercel/next.js/issues/84406) - \[Breaking] feat(next/image)!: add support for `images.dangerouslyAllowLocalIP` and `images.maximumRedirects`: [#&#8203;84676](https://github.com/vercel/next.js/issues/84676) - Add new updateTag API and new signature for revalidateTag: [#&#8203;83822](https://github.com/vercel/next.js/issues/83822) - Add validation for missing default.js in parallel routes: [#&#8203;84702](https://github.com/vercel/next.js/issues/84702) - misc: allow beta to be triggered: [#&#8203;84713](https://github.com/vercel/next.js/issues/84713) - Fix tags check for expired/stale: [#&#8203;84717](https://github.com/vercel/next.js/issues/84717) - tweak middlewareClientMaxBodySize handling: [#&#8203;84712](https://github.com/vercel/next.js/issues/84712) - docs: Add more details to `useLightningcss` docs: [#&#8203;84581](https://github.com/vercel/next.js/issues/84581) - Version gate migration docs link: [#&#8203;84740](https://github.com/vercel/next.js/issues/84740) - \[Cache Components] Allow hiding logs after abort: [#&#8203;84579](https://github.com/vercel/next.js/issues/84579) - Log `Compiled proxy in ...`: [#&#8203;84746](https://github.com/vercel/next.js/issues/84746) - Upgrade React from `3025aa39-20251007` to `9724e3e6-20251008`: [#&#8203;84642](https://github.com/vercel/next.js/issues/84642) - Remove unused `eslint-disable` directives: [#&#8203;84797](https://github.com/vercel/next.js/issues/84797) - Use ESLint Flat Config: [#&#8203;84800](https://github.com/vercel/next.js/issues/84800) - fix missing flight-router-state-tree header normalization: [#&#8203;84718](https://github.com/vercel/next.js/issues/84718) - Write `.next/dev/types/**/*.d.ts` to default tsconfig: [#&#8203;84747](https://github.com/vercel/next.js/issues/84747) - Upgrade React from `9724e3e6-20251008` to `ead92181-20251010`: [#&#8203;84793](https://github.com/vercel/next.js/issues/84793) - \[mcp] capture next config schema errors: [#&#8203;84832](https://github.com/vercel/next.js/issues/84832) - feat: using [@&#8203;next/rspack-core](https://github.com/next/rspack-core): [#&#8203;84221](https://github.com/vercel/next.js/issues/84221) - Upgrade React from `ead92181-20251010` to `d7215b49-20251013`: [#&#8203;84850](https://github.com/vercel/next.js/issues/84850) - Turbopack build: Switch to using workerthreads for process: [#&#8203;84818](https://github.com/vercel/next.js/issues/84818) - \[Cache Components] Dev - restart render on cache miss: [#&#8203;84088](https://github.com/vercel/next.js/issues/84088) - Update font data: [#&#8203;84785](https://github.com/vercel/next.js/issues/84785) - Fix build compile mode if pages dir does not exist in Next.js 16: [#&#8203;84783](https://github.com/vercel/next.js/issues/84783) - improve next config schema validation errors: [#&#8203;84847](https://github.com/vercel/next.js/issues/84847) - Upgrade React from `d7215b49-20251013` to `56e84692-20251014`: [#&#8203;84860](https://github.com/vercel/next.js/issues/84860) - warnOnce for Middleware deprecation: [#&#8203;84862](https://github.com/vercel/next.js/issues/84862) - Add codemod for Middleware API to Proxy API: [#&#8203;84824](https://github.com/vercel/next.js/issues/84824) - Deprecate Middleware API and add Proxy API: [#&#8203;84764](https://github.com/vercel/next.js/issues/84764) - remove `clientParamParsing` configuration & bundle it with `cacheComponents`: [#&#8203;84763](https://github.com/vercel/next.js/issues/84763) - remove dynamicIO flag: [#&#8203;84872](https://github.com/vercel/next.js/issues/84872) - Bump eslint-plugin-react to 7.37.0: [#&#8203;84876](https://github.com/vercel/next.js/issues/84876) - Add nextjs condition when cacheComponents is enabled: [#&#8203;84843](https://github.com/vercel/next.js/issues/84843) - remove rdcForNavigations configuration & bundle with cacheComponents: [#&#8203;84870](https://github.com/vercel/next.js/issues/84870) - Convert eslint-config-next project to TypeScript: [#&#8203;84839](https://github.com/vercel/next.js/issues/84839) - \[eslint-config] \[Breaking] Use Flat config by default: [#&#8203;84874](https://github.com/vercel/next.js/issues/84874) - \[Cache Components] Remove `unstable` prefix from `unstable_cacheLife`: [#&#8203;84877](https://github.com/vercel/next.js/issues/84877) - fix: always use the safe stable stringify: [#&#8203;84909](https://github.com/vercel/next.js/issues/84909) - \[Cache Components] Fix cacheSignal in dev render: [#&#8203;84846](https://github.com/vercel/next.js/issues/84846) - \[dev-overlay] Never dedupe errors with different names or messages: [#&#8203;84908](https://github.com/vercel/next.js/issues/84908) - Remove deprecated experimental_ppr route-level configuration: [#&#8203;84871](https://github.com/vercel/next.js/issues/84871) - Include server latency in debug info: [#&#8203;84580](https://github.com/vercel/next.js/issues/84580) - Fix parallel routes ignoring generateStaticParams from primary route: [#&#8203;84889](https://github.com/vercel/next.js/issues/84889) - Revert "Include server latency in debug info": [#&#8203;84932](https://github.com/vercel/next.js/issues/84932) - Development: Use process.hrtime for request time calculation: [#&#8203;84905](https://github.com/vercel/next.js/issues/84905) - Use correct JSX runtime for library-owned JSX in React Server: [#&#8203;84869](https://github.com/vercel/next.js/issues/84869) - Development: Implement request log time details: [#&#8203;84906](https://github.com/vercel/next.js/issues/84906) - \[Cache Components] Remove `unstable` prefix from `unstable_cacheTag`: [#&#8203;84880](https://github.com/vercel/next.js/issues/84880) - \[Cache Components] separate runtime stage in dev render: [#&#8203;84644](https://github.com/vercel/next.js/issues/84644) - Reland "Include server latency in debug info": [#&#8203;84950](https://github.com/vercel/next.js/issues/84950) - Update codemod ESLint template to Flat config: [#&#8203;84919](https://github.com/vercel/next.js/issues/84919) - Upgrade React from `56e84692-20251014` to `93f85932-20251016`: [#&#8203;84963](https://github.com/vercel/next.js/issues/84963) - \[dev] Fix Middleware and Proxy file conflict: [#&#8203;84965](https://github.com/vercel/next.js/issues/84965) - stabilize experimental.enablePrerenderSourcemaps: [#&#8203;84916](https://github.com/vercel/next.js/issues/84916) - Stop manually setting stacktrace limit: [#&#8203;84968](https://github.com/vercel/next.js/issues/84968) - Turbopack: respect `--profile` CLI param: [#&#8203;84920](https://github.com/vercel/next.js/issues/84920) - Relax default.tsx validation for parallel routes leaf segments: [#&#8203;84767](https://github.com/vercel/next.js/issues/84767) - Add codemod for removing `unstable_` prefix: [#&#8203;84974](https://github.com/vercel/next.js/issues/84974) - Interception routes match from nested route navigation: [#&#8203;84898](https://github.com/vercel/next.js/issues/84898) - \[Cache Components] Allow unstable prefix for cacheLife and cacheTag: [#&#8203;84934](https://github.com/vercel/next.js/issues/84934) - Relax default.tsx validation for parallel routes leaf segments: [#&#8203;84767](https://github.com/vercel/next.js/issues/84767) - Add codemod for removing `unstable_` prefix: [#&#8203;84974](https://github.com/vercel/next.js/issues/84974) - Interception routes match from nested route navigation: [#&#8203;84898](https://github.com/vercel/next.js/issues/84898) - \[Cache Components] Allow unstable prefix for cacheLife and cacheTag: [#&#8203;84934](https://github.com/vercel/next.js/issues/84934) - Add codemod for removing `experimental_ppr`: [#&#8203;84979](https://github.com/vercel/next.js/issues/84979) - fix: throw error during build when invalid export for Proxy: [#&#8203;84886](https://github.com/vercel/next.js/issues/84886) - \[cache components]: prevent expired entries from being served: [#&#8203;84975](https://github.com/vercel/next.js/issues/84975) - Delete old prefetch cache related code: [#&#8203;84977](https://github.com/vercel/next.js/issues/84977) - docs: Deprecation of Middleware: [#&#8203;84710](https://github.com/vercel/next.js/issues/84710) - Add rendered search to router state: [#&#8203;84983](https://github.com/vercel/next.js/issues/84983) - \[segment cache]: delay revalidation prefetch pings 300ms: [#&#8203;84981](https://github.com/vercel/next.js/issues/84981) - Show relative path from cwd for Proxy Middleware file conflict error: [#&#8203;84993](https://github.com/vercel/next.js/issues/84993) - \[Cache Components] fix docs for cacheLife("seconds"): [#&#8203;85004](https://github.com/vercel/next.js/issues/85004) - Rename MiddlewareMatcher to ProxyMatcher: [#&#8203;85005](https://github.com/vercel/next.js/issues/85005) - \[Breaking] Rename instrumentation onRequestError `context.routeType` from `middleware` to `proxy`: [#&#8203;85006](https://github.com/vercel/next.js/issues/85006) - \[turbopack] Prevent accidental access to `.next`: [#&#8203;84714](https://github.com/vercel/next.js/issues/84714) - fix: incorrect canonicalUrl set when using output: export: [#&#8203;85019](https://github.com/vercel/next.js/issues/85019) - Add Activity name to route layouts and pages: [#&#8203;85011](https://github.com/vercel/next.js/issues/85011) - Update next-lint-to-eslint-cli to support `FlatCompat.config`: [#&#8203;85026](https://github.com/vercel/next.js/issues/85026) - \[cache components]: move flag out of experimental: [#&#8203;85035](https://github.com/vercel/next.js/issues/85035) - \[Cache Components] When caches are disabled in dev skip the cache warmup: [#&#8203;85014](https://github.com/vercel/next.js/issues/85014) - \[Cache Components] Use canary React when only Cache Components is enabled: [#&#8203;85042](https://github.com/vercel/next.js/issues/85042) - Turbopack: Remove unneeded warning for telemetry: [#&#8203;85039](https://github.com/vercel/next.js/issues/85039) - \[cache components] stabilize cacheLife profiles: [#&#8203;85050](https://github.com/vercel/next.js/issues/85050) - \[cache components] show when cache components is enabled in the CLI: [#&#8203;85047](https://github.com/vercel/next.js/issues/85047) - \[cache components]: show cache components enabled in DevTools: [#&#8203;85048](https://github.com/vercel/next.js/issues/85048) - \[Cache Components] correctly label IO promises in devtools: [#&#8203;84928](https://github.com/vercel/next.js/issues/84928) - Plumbing for cache indicator: [#&#8203;84955](https://github.com/vercel/next.js/issues/84955) - Upgrade React from `93f85932-20251016` to `1324e1bb-20251016`: [#&#8203;84999](https://github.com/vercel/next.js/issues/84999) - enable mcp server by default: [#&#8203;85058](https://github.com/vercel/next.js/issues/85058) - Add comment that we expect the function passed to bind to be anonymous: [#&#8203;85070](https://github.com/vercel/next.js/issues/85070) - Development: Addres comments on request log PR: [#&#8203;84945](https://github.com/vercel/next.js/issues/84945) - Development: Implement request time for Pages Router: [#&#8203;85012](https://github.com/vercel/next.js/issues/85012) - \[cache components] add cache components indicator to dev start: [#&#8203;85069](https://github.com/vercel/next.js/issues/85069) - cli: build partial entries --debug-build-paths arg: [#&#8203;85052](https://github.com/vercel/next.js/issues/85052) - Turbopack: Better error for sassOptions.functions as it's unsupported: [#&#8203;85073](https://github.com/vercel/next.js/issues/85073) - Upgrade React from `58bdc0bb-20251019` to `f6a48828-20251019`: [#&#8203;85081](https://github.com/vercel/next.js/issues/85081) - \[devtools]: instrument client navigation hooks for suspense devtools: [#&#8203;85007](https://github.com/vercel/next.js/issues/85007) - Remove Segment from CacheNodeSeedData: [#&#8203;85080](https://github.com/vercel/next.js/issues/85080) - label as Prefetch/Prefetchable depending on prefetch config: [#&#8203;85076](https://github.com/vercel/next.js/issues/85076) - \[cache components]: add 'bypass' cache indicator status: [#&#8203;85082](https://github.com/vercel/next.js/issues/85082) - Upgrade React from `f6a48828-20251019` to `2bcbf254-20251020`: [#&#8203;85112](https://github.com/vercel/next.js/issues/85112) - \[cache components]: guard against setCacheStatus since its conditionally defined: [#&#8203;85125](https://github.com/vercel/next.js/issues/85125) - warn: add deprecation warning of eslint config: [#&#8203;85122](https://github.com/vercel/next.js/issues/85122) - add new devtools indicator loading state: [#&#8203;85083](https://github.com/vercel/next.js/issues/85083) - Await initial Flight response before hydrating: [#&#8203;85124](https://github.com/vercel/next.js/issues/85124) - fix(experimental.lockDistDir): Acquire the lock in dev earlier: [#&#8203;85116](https://github.com/vercel/next.js/issues/85116) - telemetry: mcp tool call: [#&#8203;85120](https://github.com/vercel/next.js/issues/85120) - \[Turbopack] dedupe build errors: [#&#8203;85062](https://github.com/vercel/next.js/issues/85062) - Fix subtree layout alignment for route summary in `next build`: [#&#8203;85137](https://github.com/vercel/next.js/issues/85137) - \[codemod] Remove runtime config when running `middleware-to-proxy`: [#&#8203;85075](https://github.com/vercel/next.js/issues/85075) - \[turbopack] Improve the multiple bundler flags messge to note that perhaps your `package.json` is the problem: [#&#8203;85118](https://github.com/vercel/next.js/issues/85118) - Add Learn more docs to Middleware deprecation warning: [#&#8203;84711](https://github.com/vercel/next.js/issues/84711) - \[BF Cache]: skip lazyData fetch logic for inactive segments: [#&#8203;85142](https://github.com/vercel/next.js/issues/85142) - Pass `startTime` to initial RSC payload stream: [#&#8203;85144](https://github.com/vercel/next.js/issues/85144) - guard navigation `use` hooks for React 18: [#&#8203;85151](https://github.com/vercel/next.js/issues/85151) - \[turbopack] Don't warn on the lightning css experimental option: [#&#8203;84913](https://github.com/vercel/next.js/issues/84913) - Turbopack: Remove redundant log line, increase delay for compiling log message: [#&#8203;85133](https://github.com/vercel/next.js/issues/85133) - Make params and searchParams new Promises: [#&#8203;85158](https://github.com/vercel/next.js/issues/85158) - Name "cache" streams for React DevTools: [#&#8203;85159](https://github.com/vercel/next.js/issues/85159) - Use cacheMaxMemorySize config in default cache handler: [#&#8203;85153](https://github.com/vercel/next.js/issues/85153) - Omit params to from client segments: [#&#8203;84883](https://github.com/vercel/next.js/issues/84883) - enable experimental.routerBfCache behind cacheComponents: [#&#8203;84923](https://github.com/vercel/next.js/issues/84923) - \[Cache Components] Allow stale longer than expire in cacheLife: [#&#8203;85115](https://github.com/vercel/next.js/issues/85115) - Update Activity names given to routes: [#&#8203;85155](https://github.com/vercel/next.js/issues/85155) - use port zero for --inspect when forking, if used by parent: [#&#8203;85128](https://github.com/vercel/next.js/issues/85128) - Update blocking prerender error message: [#&#8203;85087](https://github.com/vercel/next.js/issues/85087) - Fix: CSS asset URLs broken with `experimental.inlineCss`: [#&#8203;85140](https://github.com/vercel/next.js/issues/85140) - Update routes generation for build-complete: [#&#8203;85017](https://github.com/vercel/next.js/issues/85017) - \[cache components] move experimental.cacheHandlers out of experimental: [#&#8203;85157](https://github.com/vercel/next.js/issues/85157) - Don't assign displayName to the internal Promises: [#&#8203;85178](https://github.com/vercel/next.js/issues/85178) - Assign name to hydration stream: [#&#8203;85179](https://github.com/vercel/next.js/issues/85179) - fix: add backwards compat for middleware → proxy field renames: [#&#8203;85183](https://github.com/vercel/next.js/issues/85183) - \[turbopack] Implement improved deobfuscation for free calls and module identifiers.: [#&#8203;85060](https://github.com/vercel/next.js/issues/85060) - Improve Proxy invalid export error message: [#&#8203;84887](https://github.com/vercel/next.js/issues/84887) - Fix Activity boundary names: [#&#8203;85185](https://github.com/vercel/next.js/issues/85185) - \[codemod] Install ESLint v9 if version under for next-lint-to-eslint-cli: [#&#8203;85182](https://github.com/vercel/next.js/issues/85182) - \[upgrade] Version gate adding `--turbopack` flag: [#&#8203;85180](https://github.com/vercel/next.js/issues/85180) - Tweaks to blocking route error message: [#&#8203;85191](https://github.com/vercel/next.js/issues/85191) - Remove layout-router sticky/fixed debug warning: [#&#8203;85193](https://github.com/vercel/next.js/issues/85193) - \[cache components] persist cache bypass UI until it's disabled: [#&#8203;85190](https://github.com/vercel/next.js/issues/85190) - Only allow node runtime in proxy: [#&#8203;85139](https://github.com/vercel/next.js/issues/85139) - logger: skip logging full element: [#&#8203;85194](https://github.com/vercel/next.js/issues/85194) - Fix: CSS asset URLs broken with `experimental.inlineCss`: [#&#8203;85140](https://github.com/vercel/next.js/issues/85140) - Update routes generation for build-complete: [#&#8203;85017](https://github.com/vercel/next.js/issues/85017) - \[cache components] move experimental.cacheHandlers out of experimental: [#&#8203;85157](https://github.com/vercel/next.js/issues/85157) - Don't assign displayName to the internal Promises: [#&#8203;85178](https://github.com/vercel/next.js/issues/85178) - Assign name to hydration stream: [#&#8203;85179](https://github.com/vercel/next.js/issues/85179) - fix: add backwards compat for middleware → proxy field renames: [#&#8203;85183](https://github.com/vercel/next.js/issues/85183) - \[turbopack] Implement improved deobfuscation for free calls and module identifiers.: [#&#8203;85060](https://github.com/vercel/next.js/issues/85060) - Improve Proxy invalid export error message: [#&#8203;84887](https://github.com/vercel/next.js/issues/84887) - Fix Activity boundary names: [#&#8203;85185](https://github.com/vercel/next.js/issues/85185) - \[codemod] Install ESLint v9 if version under for next-lint-to-eslint-cli: [#&#8203;85182](https://github.com/vercel/next.js/issues/85182) - \[upgrade] Version gate adding `--turbopack` flag: [#&#8203;85180](https://github.com/vercel/next.js/issues/85180) - Tweaks to blocking route error message: [#&#8203;85191](https://github.com/vercel/next.js/issues/85191) - Remove layout-router sticky/fixed debug warning: [#&#8203;85193](https://github.com/vercel/next.js/issues/85193) - \[cache components] persist cache bypass UI until it's disabled: [#&#8203;85190](https://github.com/vercel/next.js/issues/85190) - Only allow node runtime in proxy: [#&#8203;85139](https://github.com/vercel/next.js/issues/85139) - logger: skip logging full element: [#&#8203;85194](https://github.com/vercel/next.js/issues/85194) ##### Example Changes - docs: Convert relative imports to @&#8203; aliases in examples: [#&#8203;83813](https://github.com/vercel/next.js/issues/83813) - chore: add example with oxlint: [#&#8203;83842](https://github.com/vercel/next.js/issues/83842) - fix: correct typo 'incomming' to 'incoming' in with-mqtt-js example: [#&#8203;83887](https://github.com/vercel/next.js/issues/83887) - chore: improve oxlint example: [#&#8203;83898](https://github.com/vercel/next.js/issues/83898) - docs: update Dockerfile to use node:lts-alpine instead of node:18-alpine: [#&#8203;84229](https://github.com/vercel/next.js/issues/84229) - Use Array.from to avoid [@&#8203;ts-ignore](https://github.com/ts-ignore) when copying i18n.locales: [#&#8203;82148](https://github.com/vercel/next.js/issues/82148) - examples: Remove AMP example: [#&#8203;84355](https://github.com/vercel/next.js/issues/84355) - \[docs] fix(with-supabase): Update README env variables: [#&#8203;84745](https://github.com/vercel/next.js/issues/84745) ##### Misc Changes - Turbopack: remove `css_environment` from `Environment`: [#&#8203;83487](https://github.com/vercel/next.js/issues/83487) - Turbopack: Don't add client_runtime_entries to Route Handler compilation: [#&#8203;83655](https://github.com/vercel/next.js/issues/83655) - Turbopack: Only load capsize-font-metrics once: [#&#8203;83654](https://github.com/vercel/next.js/issues/83654) - \[CI] Fix GitHub Actions matrix configuration for React versions: [#&#8203;83677](https://github.com/vercel/next.js/issues/83677) - fix(Turbopack): Enable scope hoisting for large files or module counts: [#&#8203;83399](https://github.com/vercel/next.js/issues/83399) - \[turbopack] Lazily construct `resolved::Requests` for `EsmAssetReference`: [#&#8203;83662](https://github.com/vercel/next.js/issues/83662) - Update content-security-policy.mdx, fix development environment error: [#&#8203;83665](https://github.com/vercel/next.js/issues/83665) - tests: disable flaky deployment test while investigating upstream: [#&#8203;83705](https://github.com/vercel/next.js/issues/83705) - \[test] Update snapshots for Rspack + React 18: [#&#8203;83712](https://github.com/vercel/next.js/issues/83712) - Docs/sep paper cuts: [#&#8203;83689](https://github.com/vercel/next.js/issues/83689) - \[Turbopack] Remove `ssr-data` module context: [#&#8203;83626](https://github.com/vercel/next.js/issues/83626) - CI: use KV for test timing data: [#&#8203;83745](https://github.com/vercel/next.js/issues/83745) - Emit build error when `'use cache'` directive is misspelled: [#&#8203;83756](https://github.com/vercel/next.js/issues/83756) - docs(metadata): align default function export name with file name: [#&#8203;83796](https://github.com/vercel/next.js/issues/83796) - \[turbopack] Remove the `should_track_children` parameter of the turbo tasks backend: [#&#8203;83258](https://github.com/vercel/next.js/issues/83258) - docs(data-security): add bun package manager example: [#&#8203;83735](https://github.com/vercel/next.js/issues/83735) - Update next-intlayer reference in i18n doc: [#&#8203;83761](https://github.com/vercel/next.js/issues/83761) - Update Rspack production test manifest: [#&#8203;83790](https://github.com/vercel/next.js/issues/83790) - Update Rspack development test manifest: [#&#8203;83791](https://github.com/vercel/next.js/issues/83791) - Turbopack: chunking debugging utilities: [#&#8203;83801](https://github.com/vercel/next.js/issues/83801) - Removed link to maintain text consistency: [#&#8203;83644](https://github.com/vercel/next.js/issues/83644) - Turbopack: rename some fields in fs: [#&#8203;83808](https://github.com/vercel/next.js/issues/83808) - Turbopack: validate CSS without computing all paths: [#&#8203;83810](https://github.com/vercel/next.js/issues/83810) - \[test] Disable flaky navigation test: [#&#8203;83828](https://github.com/vercel/next.js/issues/83828) - docs: Type narrowing using LayoutProps, PageProps: [#&#8203;83692](https://github.com/vercel/next.js/issues/83692) - docs: implications of mutating cookies in server actions: [#&#8203;83691](https://github.com/vercel/next.js/issues/83691) - Only retry if canary fails on required jobs: [#&#8203;83851](https://github.com/vercel/next.js/issues/83851) - docs: Fix self-referential link to Middleware in middleware.mdx: [#&#8203;83854](https://github.com/vercel/next.js/issues/83854) - Update Rspack production test manifest: [#&#8203;83826](https://github.com/vercel/next.js/issues/83826) - Update generate-metadata.mdx: [#&#8203;81853](https://github.com/vercel/next.js/issues/81853) - Turbopack: remove lazy invalidated tasks: [#&#8203;83845](https://github.com/vercel/next.js/issues/83845) - Turbopack: remove Backend TaskState: [#&#8203;83846](https://github.com/vercel/next.js/issues/83846) - Turbopack: don't recompute empty parse results: [#&#8203;83883](https://github.com/vercel/next.js/issues/83883) - Turbopack: delete broken hmr benchmark: [#&#8203;83882](https://github.com/vercel/next.js/issues/83882) - Turbopack: only generate error string in error case: [#&#8203;83884](https://github.com/vercel/next.js/issues/83884) - docs: the as prop is still available in Pages Router: [#&#8203;83864](https://github.com/vercel/next.js/issues/83864) - Turbopack: map_module_batch: [#&#8203;83885](https://github.com/vercel/next.js/issues/83885) - Turbopack: Change run once signature to avoid exposing TaskId: [#&#8203;83844](https://github.com/vercel/next.js/issues/83844) - docs: Update command to use `npx` for tracing files: [#&#8203;83903](https://github.com/vercel/next.js/issues/83903) - Turbopack: ModuleGraphRef: [#&#8203;83890](https://github.com/vercel/next.js/issues/83890) - Update Rspack development test manifest: [#&#8203;83876](https://github.com/vercel/next.js/issues/83876) - Turbopack: make graph traversal sync: [#&#8203;83891](https://github.com/vercel/next.js/issues/83891) - chore: Fix test snapshot: [#&#8203;83901](https://github.com/vercel/next.js/issues/83901) - Update Rspack production test manifest: [#&#8203;83877](https://github.com/vercel/next.js/issues/83877) - docs: add `next.config.ts` Node.js native resolver: [#&#8203;83561](https://github.com/vercel/next.js/issues/83561) - Turbopack: add turbo_tasks::run to run in turbo tasks scope without a task: [#&#8203;83847](https://github.com/vercel/next.js/issues/83847) - Turbopack: fix double codegen of some merged modules: [#&#8203;83886](https://github.com/vercel/next.js/issues/83886) - Turbopack: add traces to merged module computation: [#&#8203;83908](https://github.com/vercel/next.js/issues/83908) - Turbopack: RuleCondition support resourceQuery contains: [#&#8203;83468](https://github.com/vercel/next.js/issues/83468) - fix: add the missing comma in the document example: [#&#8203;83932](https://github.com/vercel/next.js/issues/83932) - Turbopack: Document the reasons for the current design of `parse_segment_config_from_source`: [#&#8203;83919](https://github.com/vercel/next.js/issues/83919) - Turbopack: extract parse_source_map_comment: [#&#8203;83938](https://github.com/vercel/next.js/issues/83938) - Turbopack: enable nodelay for node.js pool socket: [#&#8203;83942](https://github.com/vercel/next.js/issues/83942) - feat: next-rspack-binding: [#&#8203;82811](https://github.com/vercel/next.js/issues/82811) - Only send notification if canary fails on required jobs: [#&#8203;83953](https://github.com/vercel/next.js/issues/83953) - Turbopack: allow to read State from turbo_tasks::run: [#&#8203;83955](https://github.com/vercel/next.js/issues/83955) - Fix conclusion check for retry_test workflow: [#&#8203;83960](https://github.com/vercel/next.js/issues/83960) - Add Descope to Auth libraries list: [#&#8203;83968](https://github.com/vercel/next.js/issues/83968) - \[turbopack] Track task durations in the task_statistics file: [#&#8203;83522](https://github.com/vercel/next.js/issues/83522) - \[turbopack] Remove the `issue_path` feature and related functionality: [#&#8203;83920](https://github.com/vercel/next.js/issues/83920) - Turbopack: use turbo_tasks::run in next.js to avoid task memory leak: [#&#8203;83848](https://github.com/vercel/next.js/issues/83848) - Update Rspack production test manifest: [#&#8203;83934](https://github.com/vercel/next.js/issues/83934) - Update Rspack development test manifest: [#&#8203;83933](https://github.com/vercel/next.js/issues/83933) - Turbopack: add test case that checks memory leak: [#&#8203;83849](https://github.com/vercel/next.js/issues/83849) - Turbopack: read project strongly consistent in project_update: [#&#8203;83974](https://github.com/vercel/next.js/issues/83974) - Fix output comparison when checking conclusion of required jobs: [#&#8203;83986](https://github.com/vercel/next.js/issues/83986) - Turbopack: JsAnalyzer parse AssignExpr: [#&#8203;83962](https://github.com/vercel/next.js/issues/83962) - Turbopack: less eager manifest generation: [#&#8203;83736](https://github.com/vercel/next.js/issues/83736) - Turbopack: use depth as priority for merged module info: [#&#8203;83909](https://github.com/vercel/next.js/issues/83909) - Turbopack: "connect" tasks in turbo_tasks::run too: [#&#8203;83975](https://github.com/vercel/next.js/issues/83975) - Update Rspack production test manifest: [#&#8203;83979](https://github.com/vercel/next.js/issues/83979) - Update Rspack development test manifest: [#&#8203;83980](https://github.com/vercel/next.js/issues/83980) - Turbopack: Make transient tasks root tasks too when called in turbo_tasks::run: [#&#8203;83976](https://github.com/vercel/next.js/issues/83976) - Turbopack: trace state changes: [#&#8203;83977](https://github.com/vercel/next.js/issues/83977) - \[turbopack] cleanup analyzer: [#&#8203;83983](https://github.com/vercel/next.js/issues/83983) - \[Turbopack] Fix AST traversal for `this` in function default parameters: [#&#8203;83746](https://github.com/vercel/next.js/issues/83746) - \[turbopack] Consolodate logic for visiting functions to simplify state management: [#&#8203;82763](https://github.com/vercel/next.js/issues/82763) - \[turbopack] Track the scope in which variables are assigned: [#&#8203;82845](https://github.com/vercel/next.js/issues/82845) - \[turbopack] Set `liveness` of exports based on assignment analysis: [#&#8203;82802](https://github.com/vercel/next.js/issues/82802) - Turbopack: trace all state changes: [#&#8203;84053](https://github.com/vercel/next.js/issues/84053) - docs: We have dropped the CORS example linked: [#&#8203;84065](https://github.com/vercel/next.js/issues/84065) - docs: add pageExtensions note to Middleware and clarify default filename: [#&#8203;84045](https://github.com/vercel/next.js/issues/84045) - Fix TypeScript type error in example code: [#&#8203;84041](https://github.com/vercel/next.js/issues/84041) - Turbopack: fix test case and update project_update to turbo_tasks::run too: [#&#8203;83978](https://github.com/vercel/next.js/issues/83978) - Turbopack: run tests with multiple threads: [#&#8203;84074](https://github.com/vercel/next.js/issues/84074) - Turbopack: flush Node.js worker IPC on error: [#&#8203;84077](https://github.com/vercel/next.js/issues/84077) - Turbopack: parallelize scope hoisting computation: [#&#8203;83904](https://github.com/vercel/next.js/issues/83904) - Add test for JS resource size on navigation: [#&#8203;83731](https://github.com/vercel/next.js/issues/83731) - Update Rspack development test manifest: [#&#8203;84061](https://github.com/vercel/next.js/issues/84061) - Update Rspack production test manifest: [#&#8203;84060](https://github.com/vercel/next.js/issues/84060) - Turbopack: Document automatic Babel config support: [#&#8203;84002](https://github.com/vercel/next.js/issues/84002) - docs: Fix the title/path of the turbopack page on pages router: [#&#8203;84001](https://github.com/vercel/next.js/issues/84001) - Turbopack: remove references from ChunkData: [#&#8203;84076](https://github.com/vercel/next.js/issues/84076) - Turbopack: include availability hash in the ident of evaluated chunks groups: [#&#8203;84082](https://github.com/vercel/next.js/issues/84082) - \[turbopack] s/analyse/analyze/g: [#&#8203;84112](https://github.com/vercel/next.js/issues/84112) - \[Turbopack] avoid attaching referenced output assets to chunks: [#&#8203;75933](https://github.com/vercel/next.js/issues/75933) - fix(docs): Fix links in UPGRADING.md: [#&#8203;84114](https://github.com/vercel/next.js/issues/84114) - docs: improve dynamic routes example in project structure page: [#&#8203;84086](https://github.com/vercel/next.js/issues/84086) - docs: onRequestError request header type: [#&#8203;83988](https://github.com/vercel/next.js/issues/83988) - Turbopack: Improve persistent caching test case: [#&#8203;83205](https://github.com/vercel/next.js/issues/83205) - Turbopack: add more details to the graph panic: [#&#8203;84126](https://github.com/vercel/next.js/issues/84126) - docs: Cookies store access is async: [#&#8203;83987](https://github.com/vercel/next.js/issues/83987) - Bump Rust to nightly-2025-09-21: [#&#8203;83415](https://github.com/vercel/next.js/issues/83415) - Upgrade CodSpeed action and add analyzer benchmarks: [#&#8203;84135](https://github.com/vercel/next.js/issues/84135) - Turbopack: fix run_once when returning error: [#&#8203;84142](https://github.com/vercel/next.js/issues/84142) - \[turbopack] Conditionally collect affecting sources: [#&#8203;83921](https://github.com/vercel/next.js/issues/83921) - Turbopack: slightly improve resolve_source_map_sources: [#&#8203;84147](https://github.com/vercel/next.js/issues/84147) - Turbopack: RawEcmascriptModule: [#&#8203;81806](https://github.com/vercel/next.js/issues/81806) - Turbopack: add more details to the graph panic: [#&#8203;84143](https://github.com/vercel/next.js/issues/84143) - test: split app-middleware test per describe: [#&#8203;84130](https://github.com/vercel/next.js/issues/84130) - Update Rspack development test manifest: [#&#8203;84117](https://github.com/vercel/next.js/issues/84117) - script: improve release log generation: [#&#8203;83686](https://github.com/vercel/next.js/issues/83686) - Turbopack: split task_execution_completed into multiple methods: [#&#8203;84170](https://github.com/vercel/next.js/issues/84170) - Turbopack: only generate field if spans are enabled: [#&#8203;84184](https://github.com/vercel/next.js/issues/84184) - Turbopack: support more dynamic request with import map: [#&#8203;84178](https://github.com/vercel/next.js/issues/84178) - \[turbopack] defer a `value_to_string` operation until we need it: [#&#8203;84188](https://github.com/vercel/next.js/issues/84188) - Update Rspack production test manifest: [#&#8203;84165](https://github.com/vercel/next.js/issues/84165) - Revert "\[turbopack] Set `liveness` of exports based on assignment ana…: [#&#8203;84207](https://github.com/vercel/next.js/issues/84207) - Turbopack: increase retry duration, reduce busy looping when there is other work: [#&#8203;84171](https://github.com/vercel/next.js/issues/84171) - Turbopack: Try to avoid block_in_place in scope: [#&#8203;84172](https://github.com/vercel/next.js/issues/84172) - \[turbopack] Remove some bitmap clones: [#&#8203;84193](https://github.com/vercel/next.js/issues/84193) - Turbopack: lazier manifests, part deux: [#&#8203;84191](https://github.com/vercel/next.js/issues/84191) - Turbopack: avoid panic on updating output when a task was cancelled: [#&#8203;84214](https://github.com/vercel/next.js/issues/84214) - docs: nav_title for long unbroken words: [#&#8203;84233](https://github.com/vercel/next.js/issues/84233) - Turbopack: Use `RawValue` for `mappings` inside `SourceMapJson`: [#&#8203;84208](https://github.com/vercel/next.js/issues/84208) - Update Rspack development test manifest: [#&#8203;84218](https://github.com/vercel/next.js/issues/84218) - Turbopack: fix NFT of readFileSync of relative path: [#&#8203;84155](https://github.com/vercel/next.js/issues/84155) - Turbopack: improve references benchmark: [#&#8203;84223](https://github.com/vercel/next.js/issues/84223) - Update Rspack production test manifest: [#&#8203;84217](https://github.com/vercel/next.js/issues/84217) - Turbopack: drop ASTs when only tracing: [#&#8203;84185](https://github.com/vercel/next.js/issues/84185) - docs: Include more detailed instructions on excluding from common AV solutions, including macOS Gatekeeper: [#&#8203;84206](https://github.com/vercel/next.js/issues/84206) - Turbopack: trace fs-extra calls: [#&#8203;84246](https://github.com/vercel/next.js/issues/84246) - \[test] Overhaul `Undefined default export` test suite: [#&#8203;84235](https://github.com/vercel/next.js/issues/84235) - Turbopack: Scope with work queue: [#&#8203;84225](https://github.com/vercel/next.js/issues/84225) - \[test] Make `Undefined default export` an e2e test suite: [#&#8203;84240](https://github.com/vercel/next.js/issues/84240) - \[turbopack] Conditionally create pages router data endpoints.: [#&#8203;84194](https://github.com/vercel/next.js/issues/84194) - Turbopack: parallel connect children: [#&#8203;84173](https://github.com/vercel/next.js/issues/84173) - Turbopack: count turbo_tasks::run as foreground tasks to avoid being idle: [#&#8203;84245](https://github.com/vercel/next.js/issues/84245) - Turbopack: make persistent caching log line more clear: [#&#8203;84262](https://github.com/vercel/next.js/issues/84262) - Turbopack: make tracing nicer: [#&#8203;84263](https://github.com/vercel/next.js/issues/84263) - docs:Small improvement on the contribution guide for clarity: [#&#8203;84200](https://github.com/vercel/next.js/issues/84200) - Turbopack: Remove not-very-useful "Finished writing to disk in" log line: [#&#8203;84244](https://github.com/vercel/next.js/issues/84244) - Turbopack: follow up changes from parallel children: [#&#8203;84219](https://github.com/vercel/next.js/issues/84219) - \[turbopack] Simplify take_issues and peek issues: [#&#8203;84199](https://github.com/vercel/next.js/issues/84199) - Update Rspack development test manifest: [#&#8203;84260](https://github.com/vercel/next.js/issues/84260) - Update Rspack production test manifest: [#&#8203;84259](https://github.com/vercel/next.js/issues/84259) - Turbopack: Scope with work queue: [#&#8203;84225](https://github.com/vercel/next.js/issues/84225) - \[test] Make `Undefined default export` an e2e test suite: [#&#8203;84240](https://github.com/vercel/next.js/issues/84240) - \[turbopack] Conditionally create pages router data endpoints.: [#&#8203;84194](https://github.com/vercel/next.js/issues/84194) - Turbopack: parallel connect children: [#&#8203;84173](https://github.com/vercel/next.js/issues/84173) - Turbopack: count turbo_tasks::run as foreground tasks to avoid being idle: [#&#8203;84245](https://github.com/vercel/next.js/issues/84245) - Turbopack: make persistent caching log line more clear: [#&#8203;84262](https://github.com/vercel/next.js/issues/84262) - Turbopack: make tracing nicer: [#&#8203;84263](https://github.com/vercel/next.js/issues/84263) - docs:Small improvement on the contribution guide for clarity: [#&#8203;84200](https://github.com/vercel/next.js/issues/84200) - Turbopack: Remove not-very-useful "Finished writing to disk in" log line: [#&#8203;84244](https://github.com/vercel/next.js/issues/84244) - Turbopack: follow up changes from parallel children: [#&#8203;84219](https://github.com/vercel/next.js/issues/84219) - \[turbopack] Simplify take_issues and peek issues: [#&#8203;84199](https://github.com/vercel/next.js/issues/84199) - Update Rspack development test manifest: [#&#8203;84260](https://github.com/vercel/next.js/issues/84260) - Update Rspack production test manifest: [#&#8203;84259](https://github.com/vercel/next.js/issues/84259) - \[test] Ignore pnpm update notifier: [#&#8203;84328](https://github.com/vercel/next.js/issues/84328) - \[test] Stop downloading unused test browsers when generating PR stats: [#&#8203;84329](https://github.com/vercel/next.js/issues/84329) - docs: remove repeated to: [#&#8203;84325](https://github.com/vercel/next.js/issues/84325) - Turbopack: Use more robust logic for absolute and percent-encoded URLs in source maps received from loaders: [#&#8203;84255](https://github.com/vercel/next.js/issues/84255) - Turbopack: only replace edge dynamic calls in dev: [#&#8203;84354](https://github.com/vercel/next.js/issues/84354) - \[turbopack] Remove a bunch of dead code from the source map implementation: [#&#8203;84318](https://github.com/vercel/next.js/issues/84318) - Turbopack: prevent duplicate NFT modules: [#&#8203;84369](https://github.com/vercel/next.js/issues/84369) - docs: Remove AMP docs: [#&#8203;84357](https://github.com/vercel/next.js/issues/84357) - docs: Type helpers don't need to be imported: [#&#8203;84265](https://github.com/vercel/next.js/issues/84265) - Turbopack: Add docs for debugIds option: [#&#8203;84375](https://github.com/vercel/next.js/issues/84375) - Remove references to size metrics in next build from our docs: [#&#8203;83823](https://github.com/vercel/next.js/issues/83823) - Bump to swc v42: [#&#8203;83477](https://github.com/vercel/next.js/issues/83477) - Turbopack: skip invalidating a task on cell/output change when the dependency is outdated: [#&#8203;84376](https://github.com/vercel/next.js/issues/84376) - Turbopack: trace module.createRequire: [#&#8203;84335](https://github.com/vercel/next.js/issues/84335) - Update failing e2e deploy tests: [#&#8203;84395](https://github.com/vercel/next.js/issues/84395) - Turbopack: Webpack loader `this.fs.readFile`: [#&#8203;83313](https://github.com/vercel/next.js/issues/83313) - Improve tests: [#&#8203;84374](https://github.com/vercel/next.js/issues/84374) - Revamp Next.js boilerplate: [#&#8203;81945](https://github.com/vercel/next.js/issues/81945) - Add test for twoslash: [#&#8203;84267](https://github.com/vercel/next.js/issues/84267) - Docs/project structure polish: [#&#8203;84386](https://github.com/vercel/next.js/issues/84386) - Bump to swc v44: [#&#8203;84420](https://github.com/vercel/next.js/issues/84420) - Turbopack: don't fail for parse errors in tracing: [#&#8203;84408](https://github.com/vercel/next.js/issues/84408) - Update Rspack development test manifest: [#&#8203;84365](https://github.com/vercel/next.js/issues/84365) - Update Rspack production test manifest: [#&#8203;84366](https://github.com/vercel/next.js/issues/84366) - \[ci]: remove PPR-specific CI jobs: [#&#8203;84439](https://github.com/vercel/next.js/issues/84439) - docs: Verbose troubleshooting for unconfigured hosts: [#&#8203;84271](https://github.com/vercel/next.js/issues/84271) - Update Rspack production test manifest: [#&#8203;84398](https://github.com/vercel/next.js/issues/84398) - Add gt-next to i18n list: [#&#8203;84396](https://github.com/vercel/next.js/issues/84396) - \[ci]: fix build-output-prerender to support segment cache env: [#&#8203;84467](https://github.com/vercel/next.js/issues/84467) - \[ci]: fix app-static snapshots with clientSegmentCache: [#&#8203;84468](https://github.com/vercel/next.js/issues/84468) - Turbopack: Only benchmark file IO on `next dev`: [#&#8203;84474](https://github.com/vercel/next.js/issues/84474) - Turbopack: improve incremental build performance when deployment id changes: [#&#8203;84460](https://github.com/vercel/next.js/issues/84460) - fix: Missing link in Lazy Loading docs: [#&#8203;84473](https://github.com/vercel/next.js/issues/84473) - docs: simplify streaming metadata: [#&#8203;84253](https://github.com/vercel/next.js/issues/84253) - make withRspack idempotent: [#&#8203;84482](https://github.com/vercel/next.js/issues/84482) - Turbopack: Use strongly consistent reads in `random_change` unit test: [#&#8203;84505](https://github.com/vercel/next.js/issues/84505) - Update Rspack development test manifest: [#&#8203;84480](https://github.com/vercel/next.js/issues/84480) - Update Rspack production test manifest: [#&#8203;84481](https://github.com/vercel/next.js/issues/84481) - \[ci]: remove test from segment cache manifest: [#&#8203;84507](https://github.com/vercel/next.js/issues/84507) - \[ci]: de-flake client cache test: [#&#8203;84517](https://github.com/vercel/next.js/issues/84517) - Revert "Turbopack: skip invalidating a task on cell/output change when the dependency is outdated": [#&#8203;84526](https://github.com/vercel/next.js/issues/84526) - next mcp router - Revert "next mcp router" - test: Use nextTestSetup in scss tests: [#&#8203;84501](https://github.com/vercel/next.js/issues/84501) - \[turbopack\[ Use the configured hasher to implementh Hash for AutoMap and AutoSet: [#&#8203;84542](https://github.com/vercel/next.js/issues/84542) - Turbopack: debug ids for server chunks: [#&#8203;84557](https://github.com/vercel/next.js/issues/84557) - CI: Enable `experimental.isolatedDevBuild` for `test-unit`: [#&#8203;84559](https://github.com/vercel/next.js/issues/84559) - \[test]: convert prefetching tests to be segmentCache compatible: [#&#8203;84521](https://github.com/vercel/next.js/issues/84521) - CI: Enable `experimental.isolatedDevBuild` for `test-prod`: [#&#8203;84556](https://github.com/vercel/next.js/issues/84556) - Add `.next/dev/types` to CNA templates tsconfig include: [#&#8203;84566](https://github.com/vercel/next.js/issues/84566) - CI: Enable `experimental.isolatedDevBuild` for `test-integration`: [#&#8203;84558](https://github.com/vercel/next.js/issues/84558) - Update Rspack development test manifest: [#&#8203;84548](https://github.com/vercel/next.js/issues/84548) - Add a webpack flag to create next app. Ensure that if you set it or decline turbopack we set the --webpack flag on the generated project: [#&#8203;84476](https://github.com/vercel/next.js/issues/84476) - Update Rspack production test manifest: [#&#8203;84549](https://github.com/vercel/next.js/issues/84549) - CI: Enable `experimental.isolatedDevBuild` for `test-dev`: [#&#8203;84562](https://github.com/vercel/next.js/issues/84562) - \[test] Unflake static image test: [#&#8203;84535](https://github.com/vercel/next.js/issues/84535) - Turbopack: Lower the IO concurrency limit in CI tests: [#&#8203;84508](https://github.com/vercel/next.js/issues/84508) - Add documentation for experimental adapters handling: [#&#8203;83737](https://github.com/vercel/next.js/issues/83737) - Turbopack: improve next/dynamic eventual consistentcy: [#&#8203;84560](https://github.com/vercel/next.js/issues/84560) - fix hidden errors in router-act: [#&#8203;84603](https://github.com/vercel/next.js/issues/84603) - fix(cna): use correct postcss plugins syntax: [#&#8203;79949](https://github.com/vercel/next.js/issues/79949) - Turbopack: absolute requests in webpack loader: [#&#8203;84575](https://github.com/vercel/next.js/issues/84575) - Update Rspack development test manifest: [#&#8203;84592](https://github.com/vercel/next.js/issues/84592) - Update Rspack production test manifest: [#&#8203;84593](https://github.com/vercel/next.js/issues/84593) - Turbopack: Remove workaround in hyper for rustc miscompilation bug on macos intel: [#&#8203;84578](https://github.com/vercel/next.js/issues/84578) - Turbopack: add manual worker count override: [#&#8203;84454](https://github.com/vercel/next.js/issues/84454) - Turbopack: don't ignore TS parse errors: [#&#8203;84597](https://github.com/vercel/next.js/issues/84597) - Add middleware to routes order doc: [#&#8203;84618](https://github.com/vercel/next.js/issues/84618) - \[create-next-app]: prompt to use recommended options: [#&#8203;84570](https://github.com/vercel/next.js/issues/84570) - Update labeler: [#&#8203;84623](https://github.com/vercel/next.js/issues/84623) - Turbopack: use mmap advise to help the OS preloading: [#&#8203;84379](https://github.com/vercel/next.js/issues/84379) - Turbopack: skip invalidating a task on cell/output change when the dependency is outdated: [#&#8203;84551](https://github.com/vercel/next.js/issues/84551) - Turbopack: follow-up changes from untracked tracing: [#&#8203;84629](https://github.com/vercel/next.js/issues/84629) - Turbopack: sourcemaps for JSON modules: [#&#8203;84611](https://github.com/vercel/next.js/issues/84611) - Turbopack: avoid race condition when updating cells: [#&#8203;84598](https://github.com/vercel/next.js/issues/84598) - docs: update core documentation for Turbopack as default bundler: [#&#8203;84282](https://github.com/vercel/next.js/issues/84282) - Update Rspack development test manifest: [#&#8203;84631](https://github.com/vercel/next.js/issues/84631) - \[turbopack] Only send the filesystem caching timing messages for slow events: [#&#8203;84646](https://github.com/vercel/next.js/issues/84646) - docs: `experimental.isolatedDevBuild`: [#&#8203;84656](https://github.com/vercel/next.js/issues/84656) - docs: add note clarifying project root in monorepo: [#&#8203;84628](https://github.com/vercel/next.js/issues/84628) - Fix flakey overlay feedback test: [#&#8203;84662](https://github.com/vercel/next.js/issues/84662) - \[ci]: update flake detection to only run in Turbopack: [#&#8203;84659](https://github.com/vercel/next.js/issues/84659) - \[ci]: move router-act to top level testing utils: [#&#8203;84653](https://github.com/vercel/next.js/issues/84653) - \[tests]: de-flake client-cache.parallel-routes.test.ts: [#&#8203;84655](https://github.com/vercel/next.js/issues/84655) - \[create-next-app]: add eslint to default template: [#&#8203;84661](https://github.com/vercel/next.js/issues/84661) - Update Rspack production test manifest: [#&#8203;84630](https://github.com/vercel/next.js/issues/84630) - \[test] Assert on stable error codes: [#&#8203;84671](https://github.com/vercel/next.js/issues/84671) - Turbopack: convert HashMap to IndexMap for deterministic tasks: [#&#8203;84641](https://github.com/vercel/next.js/issues/84641) - Add note about $ACTION\_ properties, remove reference to .entries(): [#&#8203;84459](https://github.com/vercel/next.js/issues/84459) - Fix typo on welcome page: [#&#8203;84715](https://github.com/vercel/next.js/issues/84715) - Rspack: Fix lockfile test on rspack: [#&#8203;84707](https://github.com/vercel/next.js/issues/84707) - \[turbopack] Emit a warning when there are too many matches from a FileSourceReference: [#&#8203;84701](https://github.com/vercel/next.js/issues/84701) - Update beta tag: [#&#8203;84725](https://github.com/vercel/next.js/issues/84725) - \[next-codemod] fix: Set codemod version to the first introduced version: [#&#8203;84726](https://github.com/vercel/next.js/issues/84726) - \[next-upgrade] misc: update comment: [#&#8203;84727](https://github.com/vercel/next.js/issues/84727) - Turbopack: use vector instead of hash map: [#&#8203;84696](https://github.com/vercel/next.js/issues/84696) - Revert "docs: nav_title for long unbroken words ([#&#8203;84233](https://github.com/vercel/next.js/issues/84233))": [#&#8203;84346](https://github.com/vercel/next.js/issues/84346) - \[turbopack] tweak the doc on the inner graph optimization: [#&#8203;84752](https://github.com/vercel/next.js/issues/84752) - \[turbopack] Fix a few references to caching configuration as it is no longer canary guarded: [#&#8203;84761](https://github.com/vercel/next.js/issues/84761) - Add 16.0.0-beta.0 to next/third-parties peerDeps: [#&#8203;84741](https://github.com/vercel/next.js/issues/84741) - \[eslint-plugin] Remove `eslint-v8` testing: [#&#8203;84721](https://github.com/vercel/next.js/issues/84721) - Update Rspack production test manifest: [#&#8203;84729](https://github.com/vercel/next.js/issues/84729) - Update Rspack development test manifest: [#&#8203;84730](https://github.com/vercel/next.js/issues/84730) - fix: release next-rspack ci: [#&#8203;84673](https://github.com/vercel/next.js/issues/84673) - \[cna] Preserve existing config option when enabling React Compiler: [#&#8203;84663](https://github.com/vercel/next.js/issues/84663) - Prevent failing `types-and-precompiled` from corrupting terminal output: [#&#8203;84799](https://github.com/vercel/next.js/issues/84799) - Update test/CNA templates React version to 19.2.0: [#&#8203;84736](https://github.com/vercel/next.js/issues/84736) - Turbopack: use the same serialization method for lookup as for storing: [#&#8203;84765](https://github.com/vercel/next.js/issues/84765) - Turbopack: update petgraph: [#&#8203;84757](https://github.com/vercel/next.js/issues/84757) - \[turbopack] Issue 'too many matches' warning for DirAssets also: [#&#8203;84768](https://github.com/vercel/next.js/issues/84768) - Revert "Fix flakey overlay feedback test": [#&#8203;84819](https://github.com/vercel/next.js/issues/84819) - \[test]: de-flake client-cache.original.test.ts: [#&#8203;84831](https://github.com/vercel/next.js/issues/84831) - \[ci]: set NEXT_TEST_VERSION to release tag for deploy tests: [#&#8203;84840](https://github.com/vercel/next.js/issues/84840) - docs: soft 404's, Suspense and loading.tsx: [#&#8203;83867](https://github.com/vercel/next.js/issues/83867) - \[turbopack] Discuss Core Web vitals in our bundle size gap docs: [#&#8203;84837](https://github.com/vercel/next.js/issues/84837) - \[turbopack] document missing webpack loader features: [#&#8203;84849](https://github.com/vercel/next.js/issues/84849) - \[turbopack] fix typo in docs: [#&#8203;84868](https://github.com/vercel/next.js/issues/84868) - \[turbopack] Remove the implementation of `TaskInput` from `AutoSet`: [#&#8203;84867](https://github.com/vercel/next.js/issues/84867) - Update turborepo env in workflows: [#&#8203;84879](https://github.com/vercel/next.js/issues/84879) - Turbopack: take task cache log before starting snapshot: [#&#8203;84755](https://github.com/vercel/next.js/issues/84755) - Turbopack: allow gzip compression on trace files: [#&#8203;84685](https://github.com/vercel/next.js/issues/84685) - Turbopack: process task result as part of the task completion: [#&#8203;84638](https://github.com/vercel/next.js/issues/84638) - Add test for eslint-config-next: [#&#8203;84838](https://github.com/vercel/next.js/issues/84838) - Turbopack: lower level drop collectibles: [#&#8203;84895](https://github.com/vercel/next.js/issues/84895) - docs: next/dynamic headings: [#&#8203;84492](https://github.com/vercel/next.js/issues/84492) - Turbopack: expose client static assets correctly: [#&#8203;84695](https://github.com/vercel/next.js/issues/84695) - Turbopack: better errors for strip_prefix_len: [#&#8203;84882](https://github.com/vercel/next.js/issues/84882) - Turbopack: improve missing factory message: [#&#8203;84881](https://github.com/vercel/next.js/issues/84881) - CNA: Update template to use ESLint Flat config: [#&#8203;84917](https://github.com/vercel/next.js/issues/84917) - fix: process.env.TURBOPACK maybe undefined: [#&#8203;84885](https://github.com/vercel/next.js/issues/84885) - Turbopack: fix spacing on EcmascriptModuleAssetType: [#&#8203;84915](https://github.com/vercel/next.js/issues/84915) - Update Rspack development test manifest: [#&#8203;84890](https://github.com/vercel/next.js/issues/84890) - Update Rspack production test manifest: [#&#8203;84891](https://github.com/vercel/next.js/issues/84891) - Fix url-imports test: [#&#8203;84922](https://github.com/vercel/next.js/issues/84922) - Turbopack: fix pageExtensions precedence: [#&#8203;84926](https://github.com/vercel/next.js/issues/84926) - Turbopack: fix client reference order for shared references: [#&#8203;84760](https://github.com/vercel/next.js/issues/84760) - Turbopack: turn panic into bail: [#&#8203;84927](https://github.com/vercel/next.js/issues/84927) - Docs/sync with new features 0: [#&#8203;84861](https://github.com/vercel/next.js/issues/84861) - Turbopack: transpile runtime with swc: [#&#8203;84931](https://github.com/vercel/next.js/issues/84931) - docs: x-nextjs-stale-time header: [#&#8203;84901](https://github.com/vercel/next.js/issues/84901) - docs: Templates on navigation: [#&#8203;84493](https://github.com/vercel/next.js/issues/84493) - Docs/sync with new features 0: [#&#8203;84861](https://github.com/vercel/next.js/issues/84861) - Turbopack: transpile runtime with swc: [#&#8203;84931](https://github.com/vercel/next.js/issues/84931) - docs: x-nextjs-stale-time header: [#&#8203;84901](https://github.com/vercel/next.js/issues/84901) - docs: Templates on navigation: [#&#8203;84493](https://github.com/vercel/next.js/issues/84493) - chore: Attempt to fix ppr-partial-hydration flakiness: [#&#8203;84672](https://github.com/vercel/next.js/issues/84672) - Update Rspack production test manifest: [#&#8203;84939](https://github.com/vercel/next.js/issues/84939) - Turbopack: rename Persistent Caching: [#&#8203;84896](https://github.com/vercel/next.js/issues/84896) - Turbopack: Add ChunkedVec test case: [#&#8203;84756](https://github.com/vercel/next.js/issues/84756) - docs: Add missing codemod docs: [#&#8203;84980](https://github.com/vercel/next.js/issues/84980) - Update prefetching.mdx providing more clarity on the usage of `router.prefetch()`: [#&#8203;84903](https://github.com/vercel/next.js/issues/84903) - docs: getting started installation and next lint removal: [#&#8203;84781](https://github.com/vercel/next.js/issues/84781) - docs: Split "Get Started: Route Handlers and Middleware" to Route Handlers and Proxy: [#&#8203;84708](https://github.com/vercel/next.js/issues/84708) - docs: Replace Middleware docs to Proxy: [#&#8203;84709](https://github.com/vercel/next.js/issues/84709) - chore: Remove redundant copy of rust reqwest crate: [#&#8203;84982](https://github.com/vercel/next.js/issues/84982) - \[turbopack] Allow withRspack to work even if you already have NEXT_RSPACK set: [#&#8203;84987](https://github.com/vercel/next.js/issues/84987) - Turbopack: Track errored tasks as dependency when using untracked(): [#&#8203;84914](https://github.com/vercel/next.js/issues/84914) - Turbopack: shard amount need to grow quadratic to cpu count to keep propability of conflicts constant: [#&#8203;84921](https://github.com/vercel/next.js/issues/84921) - Turbopack: fix race condition when adding dependencies: [#&#8203;84946](https://github.com/vercel/next.js/issues/84946) - Turbopack: make tracing warning not fail build: [#&#8203;85032](https://github.com/vercel/next.js/issues/85032) - \[ci]: increase number of runners for test jobs: [#&#8203;85049](https://github.com/vercel/next.js/issues/85049) - add a message about Turbopack tracing: [#&#8203;85044](https://github.com/vercel/next.js/issues/85044) - Turbopack: Implement next/font/local declarations option: [#&#8203;85051](https://github.com/vercel/next.js/issues/85051) - docs: experimentalClientMaxBodySize: [#&#8203;85105](https://github.com/vercel/next.js/issues/85105) - Docs: Add `--debug-build-paths` next build option: [#&#8203;85097](https://github.com/vercel/next.js/issues/85097) - Docs: Add note on tag limits for `cacheTag`: [#&#8203;85106](https://github.com/vercel/next.js/issues/85106) - docs: no switcher for TS only examples: [#&#8203;85109](https://github.com/vercel/next.js/issues/85109) - fix: Handle non-directory files in cache folder when performing cleanup: [#&#8203;84930](https://github.com/vercel/next.js/issues/84930) - Turbopack: Suggest using system certs when a TLS error occurs: [#&#8203;85009](https://github.com/vercel/next.js/issues/85009) - \[turbopack] Try to fix v8 crashes on github actions: [#&#8203;85114](https://github.com/vercel/next.js/issues/85114) - docs: Update to Zod v4 syntax: [#&#8203;84807](https://github.com/vercel/next.js/issues/84807) - Docs: Add version history for `next lint` deprecation and update error message: [#&#8203;85100](https://github.com/vercel/next.js/issues/85100) - Turbopack: improve module evaluation name: [#&#8203;84633](https://github.com/vercel/next.js/issues/84633) - \[test] Current behavior of dynamic APIs integration with React DevTools: [#&#8203;85111](https://github.com/vercel/next.js/issues/85111) - \[Cache Components] fix env labels in perf track test: [#&#8203;85132](https://github.com/vercel/next.js/issues/85132) - Turbopack: Disable LightningCSS MediaRangeSyntax feature: [#&#8203;85086](https://github.com/vercel/next.js/issues/85086) - Don't expliclitly set the `--turbopack` flag in Create Next App, it is no longer necessary: [#&#8203;85117](https://github.com/vercel/next.js/issues/85117) - \[turbopack] Remove the canary icon from the cache components docs: [#&#8203;85149](https://github.com/vercel/next.js/issues/85149) - Bump swc to v45: [#&#8203;85143](https://github.com/vercel/next.js/issues/85143) - \[test] Fix test-dev with --projects: [#&#8203;85167](https://github.com/vercel/next.js/issues/85167) - \[test] Update snapshots: [#&#8203;85171](https://github.com/vercel/next.js/issues/85171) - docs: mcp: [#&#8203;85010](https://github.com/vercel/next.js/issues/85010) - Docs: Explain Sass tilde import difference: [#&#8203;85041](https://github.com/vercel/next.js/issues/85041) - Turbopack: don't fail on export type in use server: [#&#8203;85054](https://github.com/vercel/next.js/issues/85054) - Turbopack: speedup module merging: [#&#8203;85043](https://github.com/vercel/next.js/issues/85043) - docs: remove experimental_ppr route segment config: [#&#8203;85188](https://github.com/vercel/next.js/issues/85188) - Rename "blocking route" error docs page: [#&#8203;85189](https://github.com/vercel/next.js/issues/85189) - docs: upgrade from 15 to 16: [#&#8203;85176](https://github.com/vercel/next.js/issues/85176) - Docs: Explain Sass tilde import difference: [#&#8203;85041](https://github.com/vercel/next.js/issues/85041) - Turbopack: don't fail on export type in use server: [#&#8203;85054](https://github.com/vercel/next.js/issues/85054) - Turbopack: speedup module merging: [#&#8203;85043](https://github.com/vercel/next.js/issues/85043) - docs: remove experimental_ppr route segment config: [#&#8203;85188](https://github.com/vercel/next.js/issues/85188) - Rename "blocking route" error docs page: [#&#8203;85189](https://github.com/vercel/next.js/issues/85189) - docs: upgrade from 15 to 16: [#&#8203;85176](https://github.com/vercel/next.js/issues/85176) ##### Credits Huge thanks to [@&#8203;mischnic](https://github.com/mischnic), [@&#8203;timneutkens](https://github.com/timneutkens), [@&#8203;unstubbable](https://github.com/unstubbable), [@&#8203;wyattjoh](https://github.com/wyattjoh), [@&#8203;Cy-Tek](https://github.com/Cy-Tek), [@&#8203;lukesandberg](https://github.com/lukesandberg), [@&#8203;OoMNoO](https://github.com/OoMNoO), [@&#8203;ztanner](https://github.com/ztanner), [@&#8203;icyJoseph](https://github.com/icyJoseph), [@&#8203;huozhi](https://github.com/huozhi), [@&#8203;gnoff](https://github.com/gnoff), [@&#8203;ijjk](https://github.com/ijjk), [@&#8203;povilasv](https://github.com/povilasv), [@&#8203;dwrth](https://github.com/dwrth), [@&#8203;obendev](https://github.com/obendev), [@&#8203;aymericzip](https://github.com/aymericzip), [@&#8203;devjiwonchoi](https://github.com/devjiwonchoi), [@&#8203;SyMind](https://github.com/SyMind), [@&#8203;vercel-release-bot](https://github.com/vercel-release-bot), [@&#8203;Shireee](https://github.com/Shireee), [@&#8203;eps1lon](https://github.com/eps1lon), [@&#8203;dharun36](https://github.com/dharun36), [@&#8203;kachkaev](https://github.com/kachkaev), [@&#8203;bgw](https://github.com/bgw), [@&#8203;yousefdawood7](https://github.com/yousefdawood7), [@&#8203;TheAlexLichter](https://github.com/TheAlexLichter), [@&#8203;sokra](https://github.com/sokra), [@&#8203;ericx0099](https://github.com/ericx0099), [@&#8203;leerob](https://github.com/leerob), [@&#8203;Copilot](https://github.com/Copilot), [@&#8203;fireairforce](https://github.com/fireairforce), [@&#8203;fufuShih](https://github.com/fufuShih), [@&#8203;anvibanga](https://github.com/anvibanga), [@&#8203;hayes](https://github.com/hayes), [@&#8203;Milancen123](https://github.com/Milancen123), [@&#8203;martinfrancois](https://github.com/martinfrancois), [@&#8203;lubieowoce](https://github.com/lubieowoce), [@&#8203;gaojude](https://github.com/gaojude), [@&#8203;lachlanjc](https://github.com/lachlanjc), [@&#8203;liketiger](https://github.com/liketiger), [@&#8203;styfle](https://github.com/styfle), [@&#8203;aaronbrown-vercel](https://github.com/aaronbrown-vercel), [@&#8203;Samii2383](https://github.com/Samii2383), [@&#8203;FelipeChicaiza](https://github.com/FelipeChicaiza), [@&#8203;kevva](https://github.com/kevva), [@&#8203;m1abdullahh](https://github.com/m1abdullahh), [@&#8203;F7b5](https://github.com/F7b5), [@&#8203;Anshuman71](https://github.com/Anshuman71), [@&#8203;RobertFent](https://github.com/RobertFent), [@&#8203;poteto](https://github.com/poteto), [@&#8203;chloe-yan](https://github.com/chloe-yan), [@&#8203;sireesha-siri](https://github.com/sireesha-siri), [@&#8203;brian-lou](https://github.com/brian-lou), [@&#8203;joao4xz](https://github.com/joao4xz), [@&#8203;stefanprobst](https://github.com/stefanprobst), [@&#8203;samselikoff](https://github.com/samselikoff), [@&#8203;acdlite](https://github.com/acdlite), [@&#8203;gwkline](https://github.com/gwkline), [@&#8203;bgub](https://github.com/bgub), [@&#8203;brock-statsig](https://github.com/brock-statsig), [@&#8203;karlhorky](https://github.com/karlhorky), [@&#8203;feedthejim](https://github.com/feedthejim), [@&#8203;CarloQuick](https://github.com/CarloQuick), [@&#8203;greguintow](https://github.com/greguintow), [@&#8203;hallucinogenizer](https://github.com/hallucinogenizer), [@&#8203;sebmarkbage](https://github.com/sebmarkbage), [@&#8203;delbaoliveira](https://github.com/delbaoliveira), [@&#8203;makandrr](https://github.com/makandrr), [@&#8203;seeplusplus](https://github.com/seeplusplus), and [@&#8203;serhalp](https://github.com/serhalp) for helping! ### [`v15.5.7`](https://github.com/vercel/next.js/releases/tag/v15.5.7) [Compare Source](https://github.com/vercel/next.js/compare/v15.5.6...v15.5.7) Please see [CVE-2025-66478](https://nextjs.org/blog/CVE-2025-66478) for additional details about this release. ### [`v15.5.6`](https://github.com/vercel/next.js/releases/tag/v15.5.6) [Compare Source](https://github.com/vercel/next.js/compare/v15.5.5...v15.5.6) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - Turbopack: don't define process.cwd() in node_modules [#&#8203;83452](https://github.com/vercel/next.js/issues/83452) ##### Credits Huge thanks to [@&#8203;mischnic](https://github.com/mischnic) for helping! ### [`v15.5.5`](https://github.com/vercel/next.js/releases/tag/v15.5.5) [Compare Source](https://github.com/vercel/next.js/compare/v15.5.4...v15.5.5) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - Split code-frame into separate compiled package ([#&#8203;84238](https://github.com/vercel/next.js/issues/84238)) - Add deprecation warning to Runtime config ([#&#8203;84650](https://github.com/vercel/next.js/issues/84650)) - fix: unstable_cache should perform blocking revalidation during ISR revalidation ([#&#8203;84716](https://github.com/vercel/next.js/issues/84716)) - feat: `experimental.middlewareClientMaxBodySize` body cloning limit ([#&#8203;84722](https://github.com/vercel/next.js/issues/84722)) - fix: missing next/link types with typedRoutes ([#&#8203;84779](https://github.com/vercel/next.js/issues/84779)) ##### Misc Changes - docs: early October improvements and fixes ([#&#8203;84334](https://github.com/vercel/next.js/issues/84334)) ##### Credits Huge thanks to [@&#8203;devjiwonchoi](https://github.com/devjiwonchoi), [@&#8203;ztanner](https://github.com/ztanner), and [@&#8203;icyJoseph](https://github.com/icyJoseph) for helping! ### [`v15.5.4`](https://github.com/vercel/next.js/releases/tag/v15.5.4) [Compare Source](https://github.com/vercel/next.js/compare/v15.5.3...v15.5.4) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - fix: ensure onRequestError is invoked when otel enabled ([#&#8203;83343](https://github.com/vercel/next.js/issues/83343)) - fix: devtools initial position should be from next config ([#&#8203;83571](https://github.com/vercel/next.js/issues/83571)) - \[devtool] fix overlay styles are missing ([#&#8203;83721](https://github.com/vercel/next.js/issues/83721)) - Turbopack: don't match dynamic pattern for node_modules packages ([#&#8203;83176](https://github.com/vercel/next.js/issues/83176)) - Turbopack: don't treat metadata routes as RSC ([#&#8203;82911](https://github.com/vercel/next.js/issues/82911)) - \[turbopack] Improve handling of symlink resolution errors in track_glob and read_glob ([#&#8203;83357](https://github.com/vercel/next.js/issues/83357)) - Turbopack: throw large static metadata error earlier ([#&#8203;82939](https://github.com/vercel/next.js/issues/82939)) - fix: error overlay not closing when backdrop clicked ([#&#8203;83981](https://github.com/vercel/next.js/issues/83981)) - Turbopack: flush Node.js worker IPC on error ([#&#8203;84077](https://github.com/vercel/next.js/issues/84077)) ##### Misc Changes - \[CNA] use linter preference ([#&#8203;83194](https://github.com/vercel/next.js/issues/83194)) - CI: use KV for test timing data ([#&#8203;83745](https://github.com/vercel/next.js/issues/83745)) - docs: september improvements and fixes ([#&#8203;83997](https://github.com/vercel/next.js/issues/83997)) ##### Credits Huge thanks to [@&#8203;yiminghe](https://github.com/yiminghe), [@&#8203;huozhi](https://github.com/huozhi), [@&#8203;devjiwonchoi](https://github.com/devjiwonchoi), [@&#8203;mischnic](https://github.com/mischnic), [@&#8203;lukesandberg](https://github.com/lukesandberg), [@&#8203;ztanner](https://github.com/ztanner), [@&#8203;icyJoseph](https://github.com/icyJoseph), [@&#8203;leerob](https://github.com/leerob), [@&#8203;fufuShih](https://github.com/fufuShih), [@&#8203;dwrth](https://github.com/dwrth), [@&#8203;aymericzip](https://github.com/aymericzip), [@&#8203;obendev](https://github.com/obendev), [@&#8203;molebox](https://github.com/molebox), [@&#8203;OoMNoO](https://github.com/OoMNoO), [@&#8203;pontasan](https://github.com/pontasan), [@&#8203;styfle](https://github.com/styfle), [@&#8203;HondaYt](https://github.com/HondaYt), [@&#8203;ryuapp](https://github.com/ryuapp), [@&#8203;lpalmes](https://github.com/lpalmes), and [@&#8203;ijjk](https://github.com/ijjk) for helping! ### [`v15.5.3`](https://github.com/vercel/next.js/releases/tag/v15.5.3) [Compare Source](https://github.com/vercel/next.js/compare/v15.5.2...v15.5.3) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - fix: validation return types of pages API routes ([#&#8203;83069](https://github.com/vercel/next.js/issues/83069)) - fix: relative paths in dev in validator.ts ([#&#8203;83073](https://github.com/vercel/next.js/issues/83073)) - fix: remove satisfies keyword from type validation to preserve old TS compatibility ([#&#8203;83071](https://github.com/vercel/next.js/issues/83071)) ##### Credits Huge thanks to [@&#8203;bgub](https://github.com/bgub) for helping! ### [`v15.5.2`](https://github.com/vercel/next.js/releases/tag/v15.5.2) [Compare Source](https://github.com/vercel/next.js/compare/v15.5.1...v15.5.2) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - fix: disable unknownatrules lint rule entirely ([#&#8203;83059](https://github.com/vercel/next.js/issues/83059)) - revert: add ?dpl to fonts in /\_next/static/media ([#&#8203;83062](https://github.com/vercel/next.js/issues/83062)) ##### Credits Huge thanks to [@&#8203;bgub](https://github.com/bgub) and [@&#8203;ztanner](https://github.com/ztanner) for helping! ### [`v15.5.1`](https://github.com/vercel/next.js/releases/tag/v15.5.1) [Compare Source](https://github.com/vercel/next.js/compare/v15.5.0...v15.5.1) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - fix: aliased navigations should apply scroll handling ([#&#8203;82900](https://github.com/vercel/next.js/issues/82900)) - Turbopack: fix invalid NFT entry with file behind symlink ([#&#8203;82887](https://github.com/vercel/next.js/issues/82887)) - fix: typesafe linking to route handlers and pages API routes ([#&#8203;82858](https://github.com/vercel/next.js/issues/82858)) - fix: change "noUnknownAtRules" to "warn" for Biome ([#&#8203;82974](https://github.com/vercel/next.js/issues/82974)) - fix: add path normalization to getRelativePath for Windows ([#&#8203;82918](https://github.com/vercel/next.js/issues/82918)) - feat: add typesafety with config.typedRoutes to redirect() and permanentRedirect() ([#&#8203;82860](https://github.com/vercel/next.js/issues/82860)) - fix: avoid importing types that will be unused ([#&#8203;82856](https://github.com/vercel/next.js/issues/82856)) - fix: update the config.api.responseLimit type ([#&#8203;82852](https://github.com/vercel/next.js/issues/82852)) - fix: update validation return types ([#&#8203;82854](https://github.com/vercel/next.js/issues/82854)) ##### Credits Huge thanks to [@&#8203;bgub](https://github.com/bgub), [@&#8203;mischnic](https://github.com/mischnic), and [@&#8203;ztanner](https://github.com/ztanner) for helping! ### [`v15.5.0`](https://github.com/vercel/next.js/releases/tag/v15.5.0) [Compare Source](https://github.com/vercel/next.js/compare/v15.4.8...v15.5.0) ##### Core Changes - Use and enforce exhaustive switch statements for work unit store: [#&#8203;81577](https://github.com/vercel/next.js/issues/81577) - Enable `@typescript-eslint/switch-exhaustiveness-check` rule: [#&#8203;81583](https://github.com/vercel/next.js/issues/81583) - \[dynamicIO] use RSC dynamicness to control partial vs complete PPR result: [#&#8203;81627](https://github.com/vercel/next.js/issues/81627) - \[dynamicIO] Do not use `React.unstable_postpone()`: [#&#8203;81652](https://github.com/vercel/next.js/issues/81652) - feat: new detachable panel UI: [#&#8203;81483](https://github.com/vercel/next.js/issues/81483) - Turbopack: content-hash PageLoaderAsset: [#&#8203;81450](https://github.com/vercel/next.js/issues/81450) - \[segment explorer] fix content overflow styling: [#&#8203;81649](https://github.com/vercel/next.js/issues/81649) - Improve reliability of owner stacks for async I/O errors: [#&#8203;81501](https://github.com/vercel/next.js/issues/81501) - fix(router): Prevent redirect loop on root data requests with basePath: [#&#8203;81096](https://github.com/vercel/next.js/issues/81096) - Ensure custom NextServer config is honored: [#&#8203;81681](https://github.com/vercel/next.js/issues/81681) - Fix before interactive incorrectly render css: [#&#8203;81146](https://github.com/vercel/next.js/issues/81146) - perf: memorize exclude function in webpack config: [#&#8203;81525](https://github.com/vercel/next.js/issues/81525) - Also enforce experimental features when there's no next config file: [#&#8203;81679](https://github.com/vercel/next.js/issues/81679) - feat(next/image): warn when `images.qualities` is undefined: [#&#8203;81690](https://github.com/vercel/next.js/issues/81690) - feat(build): optimize filterUniqueParamsCombinations to generate sub-combinations: [#&#8203;81321](https://github.com/vercel/next.js/issues/81321) - Update NextAdapter type and re-export: [#&#8203;81692](https://github.com/vercel/next.js/issues/81692) - upgrade to path-to-regexp@6.3.0: [#&#8203;80123](https://github.com/vercel/next.js/issues/80123) - \[metadata] replace for initial body icon case: [#&#8203;81688](https://github.com/vercel/next.js/issues/81688) - \[segment explorer] remove dev panel ui flag: [#&#8203;81670](https://github.com/vercel/next.js/issues/81670) - Simplify running test apps locally with `ppr` or `dynamicIO` enabled: [#&#8203;81668](https://github.com/vercel/next.js/issues/81668) - \[turbopack] Return cached Promise from ` __turbopack_load_by_url__ `: [#&#8203;81663](https://github.com/vercel/next.js/issues/81663) - Upgrade React from `97cdd5d3-20250710` to `2f0e7e57-20250715`: [#&#8203;81678](https://github.com/vercel/next.js/issues/81678) - Delete unused `renderToString` function: [#&#8203;81707](https://github.com/vercel/next.js/issues/81707) - Discard prerendered route handler data from FS cache after revalidation: [#&#8203;81611](https://github.com/vercel/next.js/issues/81611) - Upgrade React from `2f0e7e57-20250715` to `d85ec5f5-20250716`: [#&#8203;81708](https://github.com/vercel/next.js/issues/81708) - Ignore pending revalidations during prerendering: [#&#8203;81621](https://github.com/vercel/next.js/issues/81621) - \[turbopack] Clear chunk cache on HMR instead of creating new `next-server` VM: [#&#8203;81664](https://github.com/vercel/next.js/issues/81664) - fix: rootParams should throw in client when fallbackParams are not present: [#&#8203;81711](https://github.com/vercel/next.js/issues/81711) - perf(build): optimize buildAppStaticPaths performance and add helper function: [#&#8203;81386](https://github.com/vercel/next.js/issues/81386) - Turbopack: Support string without options for [@&#8203;next/mdx](https://github.com/next/mdx): [#&#8203;81713](https://github.com/vercel/next.js/issues/81713) - \[Segment Cache] Support dynamic head prefetching: [#&#8203;81677](https://github.com/vercel/next.js/issues/81677) - \[sourcemaps] Consistent cursor columns: [#&#8203;81375](https://github.com/vercel/next.js/issues/81375) - fix: revert client segment route changes for sub shell generation: [#&#8203;81731](https://github.com/vercel/next.js/issues/81731) - fix: pages router metadata bugs with React 19: [#&#8203;81733](https://github.com/vercel/next.js/issues/81733) - Improve error handling for `headers`/`cookies`/`draftMode` in `'use cache'`: [#&#8203;81716](https://github.com/vercel/next.js/issues/81716) - \[devtool] fix duplicate rendered indicator on server: [#&#8203;81729](https://github.com/vercel/next.js/issues/81729) - \[devtool] enable segment explorer by default: [#&#8203;81737](https://github.com/vercel/next.js/issues/81737) - \[turbopack] Stop exposing globals from Turbopack runtime: [#&#8203;81727](https://github.com/vercel/next.js/issues/81727) - Remove unnecessary await: [#&#8203;81761](https://github.com/vercel/next.js/issues/81761) - \[chore] bump zod to latest v3: [#&#8203;81757](https://github.com/vercel/next.js/issues/81757) - feat(turbopack): Log anonymized internal error (panic) information to telemetry: [#&#8203;81272](https://github.com/vercel/next.js/issues/81272) - fix: revert client segment route changes for sub shell generation: [#&#8203;81740](https://github.com/vercel/next.js/issues/81740) - bugfix: static resources staleTime should be renewed once refetched: [#&#8203;81771](https://github.com/vercel/next.js/issues/81771) - \[devtool] move font styling to global.css: [#&#8203;81782](https://github.com/vercel/next.js/issues/81782) - \[devtool] copy decoded info of error details: [#&#8203;81735](https://github.com/vercel/next.js/issues/81735) - fix(build): add sourcePage context for PPR dynamic route lambda creation: [#&#8203;81781](https://github.com/vercel/next.js/issues/81781) - refactor: rename experimental.dynamicIO to experimental.cacheComponents: [#&#8203;81562](https://github.com/vercel/next.js/issues/81562) - Properly handle hanging promise rejections during prerendering: [#&#8203;81754](https://github.com/vercel/next.js/issues/81754) - Upgrade React from `d85ec5f5-20250716` to `dffacc7b-20250717`: [#&#8203;81767](https://github.com/vercel/next.js/issues/81767) - Refactor: Get rid of overly generic `getExpectedRequestStore` function: [#&#8203;81791](https://github.com/vercel/next.js/issues/81791) - \[devtool] migrate css reset to global.css: [#&#8203;81783](https://github.com/vercel/next.js/issues/81783) - \[dev-tools] Robust shortcut detection: [#&#8203;81756](https://github.com/vercel/next.js/issues/81756) - \[segment explorer] hide for pages router: [#&#8203;81813](https://github.com/vercel/next.js/issues/81813) - \[devtool] fix scrollbar styling: [#&#8203;81814](https://github.com/vercel/next.js/issues/81814) - fix(ppr): ensure fallback route params trigger dynamic resume: [#&#8203;81812](https://github.com/vercel/next.js/issues/81812) - \[devtools] restart server pending state: [#&#8203;80858](https://github.com/vercel/next.js/issues/80858) - Turbopack: fix dist dir on Windows: [#&#8203;81758](https://github.com/vercel/next.js/issues/81758) - fix: remove boundary sentinel from RSC responses: [#&#8203;81857](https://github.com/vercel/next.js/issues/81857) - \[sourcemaps] Try VM for retrieving source maps first: [#&#8203;81869](https://github.com/vercel/next.js/issues/81869) - \[devtools] save user config inside `.next/cache`: [#&#8203;81807](https://github.com/vercel/next.js/issues/81807) - Server: Remove unused code: [#&#8203;81886](https://github.com/vercel/next.js/issues/81886) - refactor: encapsulate content type within RenderResult: [#&#8203;81861](https://github.com/vercel/next.js/issues/81861) - refactor: handle null RenderResult responses gracefully: [#&#8203;81895](https://github.com/vercel/next.js/issues/81895) - Upgrade React from `dffacc7b-20250717` to `e9638c33-20250721`: [#&#8203;81899](https://github.com/vercel/next.js/issues/81899) - chore(devtools): sync todos to linear: [#&#8203;81901](https://github.com/vercel/next.js/issues/81901) - Introduce `'use cache: private'`: [#&#8203;81816](https://github.com/vercel/next.js/issues/81816) - chore(deps): update `browserslist`: [#&#8203;81851](https://github.com/vercel/next.js/issues/81851) - Remove web-server from edge-ssr-app: [#&#8203;81389](https://github.com/vercel/next.js/issues/81389) - Stabilize node middleware support: [#&#8203;81907](https://github.com/vercel/next.js/issues/81907) - Add `run-turbopack-compiler` trace span: [#&#8203;81917](https://github.com/vercel/next.js/issues/81917) - fix: support calling onClose multiple times in edge-ssr-app: [#&#8203;81911](https://github.com/vercel/next.js/issues/81911) - fix: logging the correct process for listened port: [#&#8203;81903](https://github.com/vercel/next.js/issues/81903) - Build: Include rewrites in manifest generation: [#&#8203;81894](https://github.com/vercel/next.js/issues/81894) - Routing: Clean up some code: [#&#8203;81932](https://github.com/vercel/next.js/issues/81932) - \[sourcemaps] Ensure codeframe when calling Client Functions from Server: [#&#8203;81918](https://github.com/vercel/next.js/issues/81918) - \[segment explorer] missing file suggestion: [#&#8203;81617](https://github.com/vercel/next.js/issues/81617) - \[turbopack] Always print trace labels in headers: [#&#8203;81728](https://github.com/vercel/next.js/issues/81728) - Revert "\[metadata] use https protocol for schema urls": [#&#8203;81934](https://github.com/vercel/next.js/issues/81934) - Upgrade React from `e9638c33-20250721` to `7513996f-20250722`: [#&#8203;81940](https://github.com/vercel/next.js/issues/81940) - Upgrade to swc v33: [#&#8203;81750](https://github.com/vercel/next.js/issues/81750) - Remove extra base-server code: [#&#8203;81944](https://github.com/vercel/next.js/issues/81944) - Turbopack: flatten sourceInfo to avoid objects, reorder args, compress node.js entry: [#&#8203;81545](https://github.com/vercel/next.js/issues/81545) - Fix dynamicParams false layout case in dev: [#&#8203;81990](https://github.com/vercel/next.js/issues/81990) - Initial MCP implementation: [#&#8203;81770](https://github.com/vercel/next.js/issues/81770) - Fix: Unresolved param in x-nextjs-rewritten-query: [#&#8203;81991](https://github.com/vercel/next.js/issues/81991) - Turbopack: Add an option to use system TLS certificates (fixes [#&#8203;79060](https://github.com/vercel/next.js/issues/79060), fixes [#&#8203;79059](https://github.com/vercel/next.js/issues/79059)): [#&#8203;81818](https://github.com/vercel/next.js/issues/81818) - Turbopack: Remove unused proxy option in turbo-tasks-fetch, lightly document HTTP_PROXY/HTTPS_PROXY environment variables: [#&#8203;81905](https://github.com/vercel/next.js/issues/81905) - Upgrade React from `7513996f-20250722` to `edac0dde-20250723`: [#&#8203;81984](https://github.com/vercel/next.js/issues/81984) - \[devtools] Cleanup folder structure: [#&#8203;82012](https://github.com/vercel/next.js/issues/82012) - \[devtools] Fix "open in editor" for locations in stackframes: [#&#8203;82013](https://github.com/vercel/next.js/issues/82013) - \[Segment Cache] Fix: Key by rewritten search: [#&#8203;81986](https://github.com/vercel/next.js/issues/81986) - Upgrade vercel og and remove yoga type patching: [#&#8203;81937](https://github.com/vercel/next.js/issues/81937) - \[perf] cache load config results: [#&#8203;80570](https://github.com/vercel/next.js/issues/80570) - Turbopack: use prototype for turbopack context for better runtime performance: [#&#8203;81547](https://github.com/vercel/next.js/issues/81547) - \[reactcompiler] Test with latest RC: [#&#8203;82002](https://github.com/vercel/next.js/issues/82002) - \[devtools] Fix various `exhaustive-deps` violations: [#&#8203;82010](https://github.com/vercel/next.js/issues/82010) - \[devtools] Apply React Compiler to Next.js DevTools source: [#&#8203;82004](https://github.com/vercel/next.js/issues/82004) - Upgrade React from `edac0dde-20250723` to `3d14fcf0-20250724`: [#&#8203;82020](https://github.com/vercel/next.js/issues/82020) - Adjusted the warning message to be more descriptive: [#&#8203;82054](https://github.com/vercel/next.js/issues/82054) - Track fallback params on workUnitStore: [#&#8203;82003](https://github.com/vercel/next.js/issues/82003) - Fix API stripping JSON incorrectly: [#&#8203;82061](https://github.com/vercel/next.js/issues/82061) - Upgrade React from `3d14fcf0-20250724` to `19baee81-20250725`: [#&#8203;82063](https://github.com/vercel/next.js/issues/82063) - use FetchStrategy to control prefetching behavior everywhere: [#&#8203;82032](https://github.com/vercel/next.js/issues/82032) - \[Segment Cache] set fetchStrategy on segments from a dynamic request: [#&#8203;82059](https://github.com/vercel/next.js/issues/82059) - Revert "Upgrade vercel og and remove yoga type patching ([#&#8203;81937](https://github.com/vercel/next.js/issues/81937))": [#&#8203;82066](https://github.com/vercel/next.js/issues/82066) - Optimize segment data routes: [#&#8203;82033](https://github.com/vercel/next.js/issues/82033) - Turbopack: write tasks doesn't need to be session dependent, as effects will restore: [#&#8203;78727](https://github.com/vercel/next.js/issues/78727) - \[sourcemaps] Fully sourcemap stacks on the Server: [#&#8203;81904](https://github.com/vercel/next.js/issues/81904) - fix(Rspack): use loaderContext.utils.contextify to replace ModuleFilenameHelpers.createFilename: [#&#8203;82104](https://github.com/vercel/next.js/issues/82104) - next/root-params: [#&#8203;80255](https://github.com/vercel/next.js/issues/80255) - fix(next/image): fix image-optimizer.ts headers: [#&#8203;82114](https://github.com/vercel/next.js/issues/82114) - Upgrade React from `19baee81-20250725` to `eaee5308-20250728`: [#&#8203;82120](https://github.com/vercel/next.js/issues/82120) - Fix validateRSCRequestHeaders incorrect redirect: [#&#8203;82119](https://github.com/vercel/next.js/issues/82119) - fix(next/image): improve and simplify detect-content-type: [#&#8203;82118](https://github.com/vercel/next.js/issues/82118) - \[CacheComponents] Use fallback params when validating dynamic routes in dev: [#&#8203;82069](https://github.com/vercel/next.js/issues/82069) - Extract getDynamicParam to a shared module: [#&#8203;82137](https://github.com/vercel/next.js/issues/82137) - Fix i18n fallback: false collision: [#&#8203;82136](https://github.com/vercel/next.js/issues/82136) - \[segment explorer] normalize path when running inside monorepo: [#&#8203;82146](https://github.com/vercel/next.js/issues/82146) - \[segment explorer] windows compatibility: [#&#8203;82147](https://github.com/vercel/next.js/issues/82147) - Upgrade React from `eaee5308-20250728` to `9be531cd-20250729`: [#&#8203;82159](https://github.com/vercel/next.js/issues/82159) - Ensure setAssetPrefix updates config instance: [#&#8203;82160](https://github.com/vercel/next.js/issues/82160) - Revert "Fix tracing of server actions imported by client components ([#&#8203;78968](https://github.com/vercel/next.js/issues/78968)): [#&#8203;82161](https://github.com/vercel/next.js/issues/82161) - Remove useMDXComponents argument: [#&#8203;80871](https://github.com/vercel/next.js/issues/80871) - Fix RSC hash validation for middleware external rewrites: [#&#8203;82176](https://github.com/vercel/next.js/issues/82176) - `@next/codemod`: update docs url in README: [#&#8203;82135](https://github.com/vercel/next.js/issues/82135) - `@next/codemod`: Add `experimental.turbo` to `turbopack` codemod for Next.js configs: [#&#8203;82134](https://github.com/vercel/next.js/issues/82134) - refactor: lowercase app router header values: [#&#8203;82169](https://github.com/vercel/next.js/issues/82169) - Strip internals from `NextRequest` types: [#&#8203;82172](https://github.com/vercel/next.js/issues/82172) - allow root params access in private caches: [#&#8203;82125](https://github.com/vercel/next.js/issues/82125) - \[devtool] bump base-ui to 1.0.0-beta.2: [#&#8203;82206](https://github.com/vercel/next.js/issues/82206) - Upgrade [@&#8203;vercel](https://github.com/vercel) og: [#&#8203;82201](https://github.com/vercel/next.js/issues/82201) - Upgrade React from `9be531cd-20250729` to `9784cb37-20250730`: [#&#8203;82207](https://github.com/vercel/next.js/issues/82207) - Fix: the unexpected clearing of symbolic link directories: [#&#8203;82191](https://github.com/vercel/next.js/issues/82191) - \[next-dev] Set `TURBOPACK` env before loading config: [#&#8203;82162](https://github.com/vercel/next.js/issues/82162) - fix: display multiple lockfile warn if neither `outputFileTracingRoot` or `turbopack.root` option is provided: [#&#8203;82164](https://github.com/vercel/next.js/issues/82164) - Revert "Initial MCP implementation ([#&#8203;81770](https://github.com/vercel/next.js/issues/81770))": [#&#8203;82217](https://github.com/vercel/next.js/issues/82217) - Revert "Upgrade [@&#8203;vercel](https://github.com/vercel) og ([#&#8203;82201](https://github.com/vercel/next.js/issues/82201))": [#&#8203;82219](https://github.com/vercel/next.js/issues/82219) - Fix: Don't bail out of prefetch if head is missing: [#&#8203;82216](https://github.com/vercel/next.js/issues/82216) - Upgrade React from `9784cb37-20250730` to `c260b38d-20250731`: [#&#8203;82247](https://github.com/vercel/next.js/issues/82247) - \[Cache Components] Runtime prefetching: [#&#8203;81088](https://github.com/vercel/next.js/issues/81088) - Parse dynamic params on the client: [#&#8203;82185](https://github.com/vercel/next.js/issues/82185) - Mark bun builtin modules as external (fixes [#&#8203;75220](https://github.com/vercel/next.js/issues/75220)): [#&#8203;77616](https://github.com/vercel/next.js/issues/77616) - Turbopack: Compact only at the end for short sessions: [#&#8203;82224](https://github.com/vercel/next.js/issues/82224) - feat: add fallback root params support for prefetch segment data routes: [#&#8203;82282](https://github.com/vercel/next.js/issues/82282) - feat: add route context to prerender error messages: [#&#8203;82283](https://github.com/vercel/next.js/issues/82283) - feat: automatically generate route types: [#&#8203;81396](https://github.com/vercel/next.js/issues/81396) - \[Cache Components] Reset PrerenderStore after generating RSC payload: [#&#8203;82286](https://github.com/vercel/next.js/issues/82286) - Include `eslint-plugin-react-hooks` in React sync: [#&#8203;82294](https://github.com/vercel/next.js/issues/82294) - \[devtools] Remove unnecessary cascading update: [#&#8203;82295](https://github.com/vercel/next.js/issues/82295) - Turbopack: name the module factory function: [#&#8203;73553](https://github.com/vercel/next.js/issues/73553) - Update font data: [#&#8203;82292](https://github.com/vercel/next.js/issues/82292) - fix: next/root-params erroring when rerendering after action: [#&#8203;82326](https://github.com/vercel/next.js/issues/82326) - Remove params from segment path: [#&#8203;82249](https://github.com/vercel/next.js/issues/82249) - Upgrade React from `c260b38d-20250731` to `be11cb5c-20250804`: [#&#8203;82339](https://github.com/vercel/next.js/issues/82339) - fix: OTel root span should indicate error status on exceptions: [#&#8203;82212](https://github.com/vercel/next.js/issues/82212) - \[Cache Components] Allow span creation while prerendering: [#&#8203;82350](https://github.com/vercel/next.js/issues/82350) - feat(turbopack): improve compile-time define value to support more data types and expr evaluation: [#&#8203;81042](https://github.com/vercel/next.js/issues/81042) - \[Pages] fix: `_error` page's `req.url` can be overwritten to dynamic param on minimal mode: [#&#8203;82347](https://github.com/vercel/next.js/issues/82347) - \[Pages] fix: use `asPath` for query-only navigation with `useRouter`: [#&#8203;82236](https://github.com/vercel/next.js/issues/82236) - loader tree: add special segment name to virtual parallel route segments: [#&#8203;82383](https://github.com/vercel/next.js/issues/82383) - fix: add `?dpl` to fonts in `/_next/static/media`: [#&#8203;82384](https://github.com/vercel/next.js/issues/82384) - Upgrade React from `be11cb5c-20250804` to `7deda941-20250804`: [#&#8203;82373](https://github.com/vercel/next.js/issues/82373) - \[devtools] Make state read-only in types: [#&#8203;82396](https://github.com/vercel/next.js/issues/82396) - Add experimental clientParamParsing feature flag: [#&#8203;82393](https://github.com/vercel/next.js/issues/82393) - add unstable_isUnrecognizedActionError: [#&#8203;78933](https://github.com/vercel/next.js/issues/78933) - \[Cache Components] give the "seconds" profile a 30s staleTime: [#&#8203;82332](https://github.com/vercel/next.js/issues/82332) - Represent "virtual" segments like route groups: [#&#8203;82422](https://github.com/vercel/next.js/issues/82422) - \[Segment Cache]: fix infinite prefetching when staleTime is 0: [#&#8203;82388](https://github.com/vercel/next.js/issues/82388) - Remove param values from static route tree: [#&#8203;82376](https://github.com/vercel/next.js/issues/82376) - \[Cache Components] Only validate the shell on SSR render: [#&#8203;82381](https://github.com/vercel/next.js/issues/82381) - fix: static not-found missing in prerender manifest: [#&#8203;82199](https://github.com/vercel/next.js/issues/82199) - Turbopack: Share entrypoint template logic between Turbopack/webpack: [#&#8203;82385](https://github.com/vercel/next.js/issues/82385) - Add `path` to Image documentation: [#&#8203;82329](https://github.com/vercel/next.js/issues/82329) - \[errors] revamp graceful degrade error boundary: [#&#8203;82474](https://github.com/vercel/next.js/issues/82474) - Fix: Do not force BLOCKING_STATIC_RENDER for DOM bots: [#&#8203;82427](https://github.com/vercel/next.js/issues/82427) - Update build-complete for adapter API: [#&#8203;82452](https://github.com/vercel/next.js/issues/82452) - fix: swc tracing: [#&#8203;82470](https://github.com/vercel/next.js/issues/82470) - Upgrade React from `7deda941-20250804` to `3958d5d8-20250807`: [#&#8203;82447](https://github.com/vercel/next.js/issues/82447) - Delete abandoned segment parsing code: [#&#8203;82458](https://github.com/vercel/next.js/issues/82458) - Upgrade React from `3958d5d8-20250807` to `f1e70b5e-20250811`: [#&#8203;82534](https://github.com/vercel/next.js/issues/82534) - Upgrade React from `f1e70b5e-20250811` to `ac7820a9-20250811`: [#&#8203;82543](https://github.com/vercel/next.js/issues/82543) - fix(next/image): use `image-size` pkg as additional format detector: [#&#8203;82538](https://github.com/vercel/next.js/issues/82538) - fix: add `?dpl` to fonts in `/_next/static/media` part 2: [#&#8203;82488](https://github.com/vercel/next.js/issues/82488) - Fix: Disambiguate Mediapartners-Google user agent: [#&#8203;82536](https://github.com/vercel/next.js/issues/82536) - Fix: Allow dynamic rendering when root layout is wrapped in Suspense: [#&#8203;82378](https://github.com/vercel/next.js/issues/82378) - wrap devtools stories in context providers: [#&#8203;82345](https://github.com/vercel/next.js/issues/82345) - \[devtools] Remove unused `componentStackFrames` field: [#&#8203;82395](https://github.com/vercel/next.js/issues/82395) - \[Deprecation Warnings]: add amp deprecation warning: [#&#8203;82551](https://github.com/vercel/next.js/issues/82551) - fix(next/image): handle empty buffer and experimental flag for `skipMetadata`: [#&#8203;82569](https://github.com/vercel/next.js/issues/82569) - fix: amp deprecation warning should assert on user config: [#&#8203;82572](https://github.com/vercel/next.js/issues/82572) - fix: Prevent duplicate file entries in modulesCode: [#&#8203;82550](https://github.com/vercel/next.js/issues/82550) - feat: Turbopack typed links: [#&#8203;81528](https://github.com/vercel/next.js/issues/81528) - Upgrade React from `ac7820a9-20250811` to `1dc3bdea-20250812`: [#&#8203;82575](https://github.com/vercel/next.js/issues/82575) - \[Runtime prefetch] resolve runtime APIs in a separate task: [#&#8203;82475](https://github.com/vercel/next.js/issues/82475) - Clean up unused code in restart server button: [#&#8203;82409](https://github.com/vercel/next.js/issues/82409) - chore: Update babel types and do some light cleanup of babel loader: [#&#8203;82486](https://github.com/vercel/next.js/issues/82486) - \[Cache Components] Avoid cache misses when resuming a cached page: [#&#8203;82578](https://github.com/vercel/next.js/issues/82578) - chore: Remove unused `Map` support from `next/dynamic` transform: [#&#8203;82487](https://github.com/vercel/next.js/issues/82487) - \[Deprecation Warnings]: add unstable_rootParams deprecation warning: [#&#8203;82582](https://github.com/vercel/next.js/issues/82582) - Turbopack: set `window.next.turbopack` instead: [#&#8203;82580](https://github.com/vercel/next.js/issues/82580) - fix router handling when setting a location response header: [#&#8203;82588](https://github.com/vercel/next.js/issues/82588) - Fix: Resolve <Head> PPR resume mismatch by search params: [#&#8203;82587](https://github.com/vercel/next.js/issues/82587) - Upgrade React from `1dc3bdea-20250812` to `f1222f76-20250812`: [#&#8203;82595](https://github.com/vercel/next.js/issues/82595) - \[devtools] Move ShadowRoot into context: [#&#8203;82296](https://github.com/vercel/next.js/issues/82296) - Remove React 17 logic from Pages Router static generation: [#&#8203;82604](https://github.com/vercel/next.js/issues/82604) - \[Segment Cache] Optimistic prefetch for search params: [#&#8203;82586](https://github.com/vercel/next.js/issues/82586) - Handle badged console calls when dimming console output: [#&#8203;81889](https://github.com/vercel/next.js/issues/81889) - run config deprecation checks only on user-provided configuration: [#&#8203;82613](https://github.com/vercel/next.js/issues/82613) - \[devtools] Remove unused code: [#&#8203;82299](https://github.com/vercel/next.js/issues/82299) - \[turbopack] Update Turbopack build warning message : [#&#8203;82591](https://github.com/vercel/next.js/issues/82591) - \[Cache Components] Disallow sync access of cookies & headers at runtime: [#&#8203;82564](https://github.com/vercel/next.js/issues/82564) - feat: type guard file generation: [#&#8203;81400](https://github.com/vercel/next.js/issues/81400) - fix: find root dir on fs root: [#&#8203;82590](https://github.com/vercel/next.js/issues/82590) - fix: use in operator to check dev indicator option when its obj: [#&#8203;82629](https://github.com/vercel/next.js/issues/82629) - Upgrade React from `f1222f76-20250812` to `379a083b-20250813`: [#&#8203;82642](https://github.com/vercel/next.js/issues/82642) - feat(next/image): warn when images.localPatterns is undefined and src has query: [#&#8203;82627](https://github.com/vercel/next.js/issues/82627) - Turbopack: add `turbo_tasks::spawn`: [#&#8203;82634](https://github.com/vercel/next.js/issues/82634) - Fix fetch logging after revalidation via server action: [#&#8203;82643](https://github.com/vercel/next.js/issues/82643) - Fix request type in typed route validator: [#&#8203;82644](https://github.com/vercel/next.js/issues/82644) - fix: use .js extension for relative imports: [#&#8203;82669](https://github.com/vercel/next.js/issues/82669) - feat: add RouteContext type for app router route handlers: [#&#8203;82670](https://github.com/vercel/next.js/issues/82670) - Add additional handling for build-complete: [#&#8203;82671](https://github.com/vercel/next.js/issues/82671) - fix: Combine the hrtime tuple to get a better seconds representation: [#&#8203;82687](https://github.com/vercel/next.js/issues/82687) - test: migrate manifest tests to snapshot testing with normalizeManifest utility: [#&#8203;82675](https://github.com/vercel/next.js/issues/82675) - perf(router): replace LRU cache with optimized doubly-linked list implementation: [#&#8203;82633](https://github.com/vercel/next.js/issues/82633) - Turbopack: use a source content regexp for the react compiler: [#&#8203;82631](https://github.com/vercel/next.js/issues/82631) - Upgrade React from `379a083b-20250813` to `a96a0f39-20250815`: [#&#8203;82691](https://github.com/vercel/next.js/issues/82691) - fix: memory leak from cloneResponse: [#&#8203;82678](https://github.com/vercel/next.js/issues/82678) - Turbopack: Fix logic in HMR logging code that could emit a NaN build time: [#&#8203;82389](https://github.com/vercel/next.js/issues/82389) - fix: use `turbopack.root` value for `outputFileTracingRoot` to have consistent tracing root: [#&#8203;82653](https://github.com/vercel/next.js/issues/82653) - fix: return plain text 404 for invalid static asset paths: [#&#8203;75111](https://github.com/vercel/next.js/issues/75111) - Turbopack: show timing event for database compaction: [#&#8203;82369](https://github.com/vercel/next.js/issues/82369) - chore(test): update sharp api test: [#&#8203;82740](https://github.com/vercel/next.js/issues/82740) - \[type] dynamic skip generating unused types: [#&#8203;82755](https://github.com/vercel/next.js/issues/82755) ##### Example Changes - Add Prisma ORM example to Next.js examples: [#&#8203;75290](https://github.com/vercel/next.js/issues/75290) - chore: Update `with-supabase` example to use `getClaims()`: [#&#8203;81383](https://github.com/vercel/next.js/issues/81383) - docs: Improve Content Security Policy documentation: [#&#8203;80580](https://github.com/vercel/next.js/issues/80580) ##### Misc Changes - Update Rspack development test manifest: [#&#8203;81603](https://github.com/vercel/next.js/issues/81603) - Allow `beforePageLoad` to be async: [#&#8203;81650](https://github.com/vercel/next.js/issues/81650) - Docs: POC: [#&#8203;81419](https://github.com/vercel/next.js/issues/81419) - chore(bot): update comment: [#&#8203;81672](https://github.com/vercel/next.js/issues/81672) - Fix build-native.ts on Windows: [#&#8203;81673](https://github.com/vercel/next.js/issues/81673) - Update Rspack development test manifest: [#&#8203;81660](https://github.com/vercel/next.js/issues/81660) - Update Rspack production test manifest: [#&#8203;81661](https://github.com/vercel/next.js/issues/81661) - Add create release branch workflow: [#&#8203;81687](https://github.com/vercel/next.js/issues/81687) - fix patch-next by adding missing script: [#&#8203;81430](https://github.com/vercel/next.js/issues/81430) - Turbopack: Generalize `ImportedBinding` effect creation to avoid as much special-casing of SimpleAssignTarget: [#&#8203;81653](https://github.com/vercel/next.js/issues/81653) - docs: Update redirects i18n documentation for App Router: [#&#8203;81347](https://github.com/vercel/next.js/issues/81347) - Include `use-cache` test suite in the Cache Components tests: [#&#8203;81610](https://github.com/vercel/next.js/issues/81610) - Improve error message for sync server functions: [#&#8203;81705](https://github.com/vercel/next.js/issues/81705) - \[lint] keep lint-stage use faster linting: [#&#8203;81710](https://github.com/vercel/next.js/issues/81710) - \[test] Fix `app-static` deploy test: [#&#8203;81712](https://github.com/vercel/next.js/issues/81712) - Fix: createRouterAct "reject" config: [#&#8203;81720](https://github.com/vercel/next.js/issues/81720) - Update Rspack development test manifest: [#&#8203;81702](https://github.com/vercel/next.js/issues/81702) - Update Rspack production test manifest: [#&#8203;81701](https://github.com/vercel/next.js/issues/81701) - Add an e2e test for the css serving issue: [#&#8203;81683](https://github.com/vercel/next.js/issues/81683) - chore: update username from 'nebrelbug' to 'bgub': [#&#8203;81734](https://github.com/vercel/next.js/issues/81734) - Turbopack: consistently name runtime chunk: [#&#8203;81769](https://github.com/vercel/next.js/issues/81769) - Turbopack: include more details in panic: [#&#8203;81773](https://github.com/vercel/next.js/issues/81773) - fix(turbopack) Adjust the way catchall routes are handled when a more specific parallel route exists: [#&#8203;81634](https://github.com/vercel/next.js/issues/81634) - Add trigger for v0 sync workflow: [#&#8203;81645](https://github.com/vercel/next.js/issues/81645) - Update Rspack production test manifest: [#&#8203;81746](https://github.com/vercel/next.js/issues/81746) - Update Rspack development test manifest: [#&#8203;81747](https://github.com/vercel/next.js/issues/81747) - Turbopack: Split DynamicEqHash trait into smaller traits in a separate re-usable crate: [#&#8203;81741](https://github.com/vercel/next.js/issues/81741) - \[turbopack] Reuse shared Promise for loaded chunks: [#&#8203;81755](https://github.com/vercel/next.js/issues/81755) - Add VSCode tasks to show TypeScript compilation errors in problems view: [#&#8203;81799](https://github.com/vercel/next.js/issues/81799) - Turbopack: remove unneeded manifests for API routes: [#&#8203;81536](https://github.com/vercel/next.js/issues/81536) - \[turbopack] use `require` to load chunks in our node runtime: [#&#8203;81738](https://github.com/vercel/next.js/issues/81738) - Turbopack: fix unhelpful error message when deleting folder fails: [#&#8203;81718](https://github.com/vercel/next.js/issues/81718) - Remove `experimental.strictNextHead`: [#&#8203;81882](https://github.com/vercel/next.js/issues/81882) - Remove some random commas: [#&#8203;81875](https://github.com/vercel/next.js/issues/81875) - Turbopack: Add cache for reqwest clients: [#&#8203;81742](https://github.com/vercel/next.js/issues/81742) - Update Rspack development test manifest: [#&#8203;81878](https://github.com/vercel/next.js/issues/81878) - Update Rspack production test manifest: [#&#8203;81879](https://github.com/vercel/next.js/issues/81879) - Turbopack: Track variable usage inside of visit_assign_target_pat: [#&#8203;81654](https://github.com/vercel/next.js/issues/81654) - Turbopack: Replace `current_value` set/restore mutation pattern with a safer `with_pat_value` helper: [#&#8203;81696](https://github.com/vercel/next.js/issues/81696) - Docs: Document `global-not-found`: [#&#8203;81803](https://github.com/vercel/next.js/issues/81803) - \[router-act] Fixes related to segment inlining: [#&#8203;81896](https://github.com/vercel/next.js/issues/81896) - \[test] Add dedicated test for error when client functions are called from server components: [#&#8203;81930](https://github.com/vercel/next.js/issues/81930) - Fix an issue in how css references are collected under `next build --turbopack`: [#&#8203;81704](https://github.com/vercel/next.js/issues/81704) - Turbopack: Update notify-rs crate, remove workaround for fixed bug: [#&#8203;81909](https://github.com/vercel/next.js/issues/81909) - Update Rspack development test manifest: [#&#8203;81913](https://github.com/vercel/next.js/issues/81913) - Update Rspack production test manifest: [#&#8203;81914](https://github.com/vercel/next.js/issues/81914) - Turbopack: Use workaround for rustc miscompilation bug on macos intel: [#&#8203;81950](https://github.com/vercel/next.js/issues/81950) - \[test] workaround test that needs stylus: [#&#8203;81965](https://github.com/vercel/next.js/issues/81965) - Bump to swc_sourcemap 9.3.3: [#&#8203;81971](https://github.com/vercel/next.js/issues/81971) - fix(Turbopack): Remove the duplicate SlowFilesystem warning: [#&#8203;81972](https://github.com/vercel/next.js/issues/81972) - CI: add workflow_branch data to deploy test failure message: [#&#8203;81949](https://github.com/vercel/next.js/issues/81949) - Update Rspack production test manifest: [#&#8203;81961](https://github.com/vercel/next.js/issues/81961) - Update Rspack development test manifest: [#&#8203;81960](https://github.com/vercel/next.js/issues/81960) - \[turbopack] Rename ClientReferenceSet: [#&#8203;81942](https://github.com/vercel/next.js/issues/81942) - Turbopack: fix scope hoisting variable renaming bug: [#&#8203;81640](https://github.com/vercel/next.js/issues/81640) - Revert "\[test] workaround test that needs stylus": [#&#8203;81981](https://github.com/vercel/next.js/issues/81981) - \[docs] fix rewrites example wording: [#&#8203;81985](https://github.com/vercel/next.js/issues/81985) - Turbopack: improve named spans in tracing: [#&#8203;81458](https://github.com/vercel/next.js/issues/81458) - Turbopack: update mimalloc: [#&#8203;81993](https://github.com/vercel/next.js/issues/81993) - Turbopack: Update bundled webpki-roots: [#&#8203;81906](https://github.com/vercel/next.js/issues/81906) - Allow specifying CLI version for e2e deploy: [#&#8203;81998](https://github.com/vercel/next.js/issues/81998) - Turbopack: Move fs watcher anyhow::Context import inline to fix compilation warnings: [#&#8203;81997](https://github.com/vercel/next.js/issues/81997) - Add link to manually trigger preview builds: [#&#8203;81977](https://github.com/vercel/next.js/issues/81977) - Update Rspack production test manifest: [#&#8203;82007](https://github.com/vercel/next.js/issues/82007) - Update Rspack development test manifest: [#&#8203;82008](https://github.com/vercel/next.js/issues/82008) - Turbopack: Make turbo-tasks-fetch a bit more OOP-like: [#&#8203;81995](https://github.com/vercel/next.js/issues/81995) - Update Rspack development test manifest: [#&#8203;82038](https://github.com/vercel/next.js/issues/82038) - \[test] Allow running `lint-eslint` on a specific directory: [#&#8203;82009](https://github.com/vercel/next.js/issues/82009) - Adjusted the warning message to be more descriptive: [#&#8203;82052](https://github.com/vercel/next.js/issues/82052) - Update Rspack production test manifest: [#&#8203;82039](https://github.com/vercel/next.js/issues/82039) - \[turbopack] mark `rcstr!` allocated Rcstr values as 'static' and stop refcounting them: [#&#8203;81994](https://github.com/vercel/next.js/issues/81994) - Turbopack: only schedule tasks when task becomes active on active counter increase: [#&#8203;81414](https://github.com/vercel/next.js/issues/81414) - docs: Update styling example links : [#&#8203;82111](https://github.com/vercel/next.js/issues/82111) - \[turbopack] Documentation fixes for rcstr! and a tiny improvement to `hash`: [#&#8203;82084](https://github.com/vercel/next.js/issues/82084) - \[turbopack] Improve our `const` compatible hash routine performance: [#&#8203;82088](https://github.com/vercel/next.js/issues/82088) - Update Rspack production test manifest: [#&#8203;82139](https://github.com/vercel/next.js/issues/82139) - Turbopack: Fix accidental doctest in globset module license: [#&#8203;82127](https://github.com/vercel/next.js/issues/82127) - \[turbopack] tweak the ui of the module-cost benchmark: [#&#8203;81817](https://github.com/vercel/next.js/issues/81817) - \[test] revert config change in hello-world test: [#&#8203;82173](https://github.com/vercel/next.js/issues/82173) - docs: cookies.set encode option is not supported: [#&#8203;82154](https://github.com/vercel/next.js/issues/82154) - docs: change Dashboard component to async for session verification: [#&#8203;81880](https://github.com/vercel/next.js/issues/81880) - Update create-release-branch to disable test-new-tests: [#&#8203;82182](https://github.com/vercel/next.js/issues/82182) - docs: update cacheTag.mdx: [#&#8203;82051](https://github.com/vercel/next.js/issues/82051) - Turbopack: Make the "non-recursive" logic for the fs watcher a runtime flag instead of a build-time one: [#&#8203;82031](https://github.com/vercel/next.js/issues/82031) - Turbopack: Add a flag to the fs watch fuzzer to print missing but expected invalidations: [#&#8203;82131](https://github.com/vercel/next.js/issues/82131) - docs: fix typo in docs: [#&#8203;82186](https://github.com/vercel/next.js/issues/82186) - docs: Add more links to app docs root: [#&#8203;82126](https://github.com/vercel/next.js/issues/82126) - docs: App Router's React version: [#&#8203;82180](https://github.com/vercel/next.js/issues/82180) - Turbopack: Use `Path`/`PathBuf` for all of the invalidation logic: [#&#8203;82132](https://github.com/vercel/next.js/issues/82132) - Turbopack: Use a BTreeMap in InvalidatorMap to avoid many `O(n)` traversals when finding child paths: [#&#8203;82133](https://github.com/vercel/next.js/issues/82133) - Turbopack: Watch the root and every parent directory in non-recursive mode: [#&#8203;82129](https://github.com/vercel/next.js/issues/82129) - Turbopack: Remove unused `ignored_subpaths` feature from DiskWatcher: [#&#8203;82210](https://github.com/vercel/next.js/issues/82210) - Grammar fix on forms.mdx: [#&#8203;82209](https://github.com/vercel/next.js/issues/82209) - Update Rspack production test manifest: [#&#8203;82108](https://github.com/vercel/next.js/issues/82108) - Update Rspack development test manifest: [#&#8203;82192](https://github.com/vercel/next.js/issues/82192) - Turbopack: implement shutdown for backing storage correct: [#&#8203;82220](https://github.com/vercel/next.js/issues/82220) - Update Rspack development test manifest: [#&#8203;82227](https://github.com/vercel/next.js/issues/82227) - fix: turbopack loader ipc field mapping: [#&#8203;82112](https://github.com/vercel/next.js/issues/82112) - Turbopack: fix dev test manifest: [#&#8203;82241](https://github.com/vercel/next.js/issues/82241) - fix(Turbopack): Fix duplicated layout rendering in edge cases: [#&#8203;81948](https://github.com/vercel/next.js/issues/81948) - \[turbopack] Adopt rcstr! more consistently: [#&#8203;80552](https://github.com/vercel/next.js/issues/80552) - Turbopack: use mimalloc v3: [#&#8203;82221](https://github.com/vercel/next.js/issues/82221) - Turbopack: no need to avoid allocations anymore: [#&#8203;82222](https://github.com/vercel/next.js/issues/82222) - Turbopack: ensure max merge segments is respected accros families: [#&#8203;82223](https://github.com/vercel/next.js/issues/82223) - docs: to indicate that redirect can be used in both server and client…: [#&#8203;82092](https://github.com/vercel/next.js/issues/82092) - Turbopack: improve compression dictionary generation: [#&#8203;80061](https://github.com/vercel/next.js/issues/80061) - test: reduce artificial timeouts in runtime prefetch tests: [#&#8203;82276](https://github.com/vercel/next.js/issues/82276) - Turbopack: fix glob with empty alternative branch: [#&#8203;82275](https://github.com/vercel/next.js/issues/82275) - \[turbopack] Optimize ESM exports: [#&#8203;82214](https://github.com/vercel/next.js/issues/82214) - \[turbopack] Fix a snapshot test: [#&#8203;82281](https://github.com/vercel/next.js/issues/82281) - \[turbopack] Avoid calling `find_server_entries` in the whole_app_module_graph case: [#&#8203;81943](https://github.com/vercel/next.js/issues/81943) - docs: Add Tolgee to app router localization resources: [#&#8203;81366](https://github.com/vercel/next.js/issues/81366) - Update Rspack development test manifest: [#&#8203;82268](https://github.com/vercel/next.js/issues/82268) - Update Rspack production test manifest: [#&#8203;82267](https://github.com/vercel/next.js/issues/82267) - Turbopack: Remove the `lazy-regex` dependency: [#&#8203;82288](https://github.com/vercel/next.js/issues/82288) - Turbopack: move block offsets from header to footer: [#&#8203;82047](https://github.com/vercel/next.js/issues/82047) - Turbopack: Streaming write of SST files: [#&#8203;82048](https://github.com/vercel/next.js/issues/82048) - \[turbopack] Use Arrays instead of objects to bootstrap chunks: [#&#8203;81877](https://github.com/vercel/next.js/issues/81877) - Turbopack: set env in tracing context: [#&#8203;75254](https://github.com/vercel/next.js/issues/75254) - \[test] Update snapshots: [#&#8203;82327](https://github.com/vercel/next.js/issues/82327) - chore: fix eslint-typechecked-require with template: [#&#8203;82328](https://github.com/vercel/next.js/issues/82328) - docs: add React Developer Tools section for debugging: [#&#8203;82320](https://github.com/vercel/next.js/issues/82320) - docs: Clarify revalidatePath : [#&#8203;82142](https://github.com/vercel/next.js/issues/82142) - Turbopack: Update `jsonc-parser`, dedupe with SWC: [#&#8203;82343](https://github.com/vercel/next.js/issues/82343) - \[turbopack] vibecode a benchmark runner for module-cost: [#&#8203;82287](https://github.com/vercel/next.js/issues/82287) - Documentation: Removed reference to treeShaking in 08-turbopack.mdx: [#&#8203;82352](https://github.com/vercel/next.js/issues/82352) - Turbopack: run styled-jsx after typescript transform: [#&#8203;82359](https://github.com/vercel/next.js/issues/82359) - Turbopack: pass `is_development` to `next_page_config`: [#&#8203;82363](https://github.com/vercel/next.js/issues/82363) - refactor(turbo-tasks-fs): change FS to_sys_path to be synchronous: [#&#8203;82341](https://github.com/vercel/next.js/issues/82341) - Turbopack: clean up some old TODOs: [#&#8203;82364](https://github.com/vercel/next.js/issues/82364) - Docs: Updating guides on PPR and ISR: [#&#8203;81307](https://github.com/vercel/next.js/issues/81307) - fix(Turbopack): Address duplicated metadata image modules when they are impored: [#&#8203;82367](https://github.com/vercel/next.js/issues/82367) - Bump swc to 35: [#&#8203;82237](https://github.com/vercel/next.js/issues/82237) - docs: CSP with SRI corrections: [#&#8203;82365](https://github.com/vercel/next.js/issues/82365) - fix: implications of global-not-found skipping 'normal' rendering: [#&#8203;82399](https://github.com/vercel/next.js/issues/82399) - update rspack-dev-tests-manifest for failing tests: [#&#8203;82414](https://github.com/vercel/next.js/issues/82414) - Docs: Add more info about TW and TW 3 option: [#&#8203;82203](https://github.com/vercel/next.js/issues/82203) - Update Rspack production test manifest: [#&#8203;82397](https://github.com/vercel/next.js/issues/82397) - fix(turbopack): external module shouldn't wrap by esm when type as global: [#&#8203;82374](https://github.com/vercel/next.js/issues/82374) - docs: polyfills usage in app router: [#&#8203;80447](https://github.com/vercel/next.js/issues/80447) - global-error, revalidatePath and PWA headings: [#&#8203;82408](https://github.com/vercel/next.js/issues/82408) - chore(Next.js sync): open draft PRs immediately: [#&#8203;82424](https://github.com/vercel/next.js/issues/82424) - Turbopack: improve loop breaks: [#&#8203;77964](https://github.com/vercel/next.js/issues/77964) - Update Rspack development test manifest: [#&#8203;82433](https://github.com/vercel/next.js/issues/82433) - Turbopack: remove a few clones: [#&#8203;82435](https://github.com/vercel/next.js/issues/82435) - Update Rspack production test manifest: [#&#8203;82432](https://github.com/vercel/next.js/issues/82432) - Update to run rspack tests on release: [#&#8203;82453](https://github.com/vercel/next.js/issues/82453) - Docs/polyfills fix pages only: [#&#8203;82462](https://github.com/vercel/next.js/issues/82462) - Turbopack: enable side effects optimization by default in all test cases: [#&#8203;82463](https://github.com/vercel/next.js/issues/82463) - Turbopack: split basic side effects optimization test: [#&#8203;82464](https://github.com/vercel/next.js/issues/82464) - Turbopack: add more side effects test cases: [#&#8203;82465](https://github.com/vercel/next.js/issues/82465) - Turbopack: refactor side effects optimization: [#&#8203;82466](https://github.com/vercel/next.js/issues/82466) - Devcontainer: Replace Dockerfile with prebuilt image+features: [#&#8203;82450](https://github.com/vercel/next.js/issues/82450) - Update Rspack development test manifest: [#&#8203;82461](https://github.com/vercel/next.js/issues/82461) - docs: update revalidatePath, revalidateTag docs to be more consistent + highlight res.revalidate case: [#&#8203;82479](https://github.com/vercel/next.js/issues/82479) - use correct workflow id for v0: [#&#8203;82484](https://github.com/vercel/next.js/issues/82484) - Turbopack: increase time before persisting: [#&#8203;82403](https://github.com/vercel/next.js/issues/82403) - \[turbopack] Fix a small issue in the analyzer where we wouldn't skip assignments to free vars that were just identifiers: [#&#8203;82392](https://github.com/vercel/next.js/issues/82392) - \[turbopack] Promote `exports` and module to factory parameters for cjs: [#&#8203;82285](https://github.com/vercel/next.js/issues/82285) - \[turbopack] Fix the build under `--features=tokio_tracing`: [#&#8203;81979](https://github.com/vercel/next.js/issues/81979) - Turbopack: Restore watchers for children when using non-recursive FS watcher: [#&#8203;82130](https://github.com/vercel/next.js/issues/82130) - Turbopack: fix CSS module references, take 2: [#&#8203;82448](https://github.com/vercel/next.js/issues/82448) - Turbopack: respect `productionBrowserSourceMaps`: [#&#8203;78014](https://github.com/vercel/next.js/issues/78014) - chore: Ignore `compiled` folder in ripgrep/ast-grep/ag/etc: [#&#8203;82482](https://github.com/vercel/next.js/issues/82482) - Update Rspack development test manifest: [#&#8203;82526](https://github.com/vercel/next.js/issues/82526) - Update Rspack production test manifest: [#&#8203;82525](https://github.com/vercel/next.js/issues/82525) - Test that there are no server-side CSS chunks: [#&#8203;82471](https://github.com/vercel/next.js/issues/82471) - docs: experimental config browserDebugInfoInTerminal: [#&#8203;82532](https://github.com/vercel/next.js/issues/82532) - Turbopack: Rework watcher data structures, store watched list and watcher behind the same RwLock: [#&#8203;82258](https://github.com/vercel/next.js/issues/82258) - Bump React types: [#&#8203;82541](https://github.com/vercel/next.js/issues/82541) - Turbopack: fix postcss in RSC CSS: [#&#8203;82554](https://github.com/vercel/next.js/issues/82554) - Turbopack: improve Lightning CSS error handling: [#&#8203;82561](https://github.com/vercel/next.js/issues/82561) - \[turbopack] Handle relative paths before matching in node file traces: [#&#8203;82539](https://github.com/vercel/next.js/issues/82539) - Turbopack: symlinks and parent globs in `outputFileTracingIncludes`: [#&#8203;82528](https://github.com/vercel/next.js/issues/82528) - Turbopack: fix module rules for `.module.scss`: [#&#8203;82570](https://github.com/vercel/next.js/issues/82570) - Turbopack: Watch parent directories before watching children in `non_recursive_helpers::start_watching_dir_and_parents`: [#&#8203;82454](https://github.com/vercel/next.js/issues/82454) - feat(turbo-tasks-hash): update twox-hash: [#&#8203;82518](https://github.com/vercel/next.js/issues/82518) - Update Rspack development test manifest: [#&#8203;82558](https://github.com/vercel/next.js/issues/82558) - Update Rspack production test manifest: [#&#8203;82557](https://github.com/vercel/next.js/issues/82557) - \[turbopack] Fix a crash under turbopackPersistentCaching: [#&#8203;82592](https://github.com/vercel/next.js/issues/82592) - Turbopack: don't block on parsing traced modules: [#&#8203;82602](https://github.com/vercel/next.js/issues/82602) - Docs/feedback round aug: [#&#8203;82549](https://github.com/vercel/next.js/issues/82549) - Turbopack: avoid using rayon in favor of tokio tasks: [#&#8203;82256](https://github.com/vercel/next.js/issues/82256) - Turbopack: support requests with dynamic part in module name: [#&#8203;82401](https://github.com/vercel/next.js/issues/82401) - Cleanup `shouldRunTurboDevTest` usage: [#&#8203;82603](https://github.com/vercel/next.js/issues/82603) - Update Rspack production test manifest: [#&#8203;82601](https://github.com/vercel/next.js/issues/82601) - Update Rspack development test manifest: [#&#8203;82600](https://github.com/vercel/next.js/issues/82600) - Fix generate-metadata.mdx typo: [#&#8203;82624](https://github.com/vercel/next.js/issues/82624) - docs: fix typos: [#&#8203;82503](https://github.com/vercel/next.js/issues/82503) - Turbopack: fix edge function name: [#&#8203;82617](https://github.com/vercel/next.js/issues/82617) - Turbopack: avoid REEXPORTED_OBJECTS property on Module object: [#&#8203;82622](https://github.com/vercel/next.js/issues/82622) - Turbopack: patch sourcemap crate: [#&#8203;82641](https://github.com/vercel/next.js/issues/82641) - Turbopack: do not run a compaction when opening the db: [#&#8203;82635](https://github.com/vercel/next.js/issues/82635) - Revert "Turbopack: avoid using rayon in favor of tokio tasks ([#&#8203;82256](https://github.com/vercel/next.js/issues/82256))": [#&#8203;82658](https://github.com/vercel/next.js/issues/82658) - \[turbopack] Fix a bug where our `global` rewrite could introduce a TDZ issue: [#&#8203;82659](https://github.com/vercel/next.js/issues/82659) - chore: Bump Turborepo: [#&#8203;82652](https://github.com/vercel/next.js/issues/82652) - test: improve tests for typed route validation: [#&#8203;82660](https://github.com/vercel/next.js/issues/82660) - docs: add `experimental.typedEnv`: [#&#8203;82647](https://github.com/vercel/next.js/issues/82647) - Turbopack: use published sourcemap crate: [#&#8203;82646](https://github.com/vercel/next.js/issues/82646) - chore: set Turborepo version correctly: [#&#8203;82680](https://github.com/vercel/next.js/issues/82680) - Turbopack: run snapshot in normal task instead of blocking task: [#&#8203;82636](https://github.com/vercel/next.js/issues/82636) - docs: fix typo in vitest.mdx: [#&#8203;82690](https://github.com/vercel/next.js/issues/82690) - Update Rspack production test manifest: [#&#8203;82681](https://github.com/vercel/next.js/issues/82681) - Update Rspack development test manifest: [#&#8203;82682](https://github.com/vercel/next.js/issues/82682) - Remove stability disclamer on Node runtime in middleware: [#&#8203;82181](https://github.com/vercel/next.js/issues/82181) - Add metadata to server reference manifest: [#&#8203;82695](https://github.com/vercel/next.js/issues/82695) - Turbopack: refactor idle process queue and fix bugs and race conditions: [#&#8203;82630](https://github.com/vercel/next.js/issues/82630) - Turbopack: Stop persisting background task correctly on stop: [#&#8203;82727](https://github.com/vercel/next.js/issues/82727) - Turbopack: fix race condition in test case: [#&#8203;82728](https://github.com/vercel/next.js/issues/82728) - \[turbopack] Remove a debug assertions in client references endpoint: [#&#8203;82725](https://github.com/vercel/next.js/issues/82725) - Turbopack: use bail instead of panic: [#&#8203;82745](https://github.com/vercel/next.js/issues/82745) - Update Rspack production test manifest: [#&#8203;82732](https://github.com/vercel/next.js/issues/82732) - fix(turbopack): webpack-loaders failed to resolve relative path: [#&#8203;82720](https://github.com/vercel/next.js/issues/82720) - `create-next-app`: use Turbopack for both dev and build: [#&#8203;82753](https://github.com/vercel/next.js/issues/82753) - fix: make sure validator.ts uses relative paths for imports: [#&#8203;82761](https://github.com/vercel/next.js/issues/82761) ##### Credits Huge thanks to [@&#8203;unstubbable](https://github.com/unstubbable), [@&#8203;gnoff](https://github.com/gnoff), [@&#8203;RobPruzan](https://github.com/RobPruzan), [@&#8203;mischnic](https://github.com/mischnic), [@&#8203;huozhi](https://github.com/huozhi), [@&#8203;delbaoliveira](https://github.com/delbaoliveira), [@&#8203;styfle](https://github.com/styfle), [@&#8203;ankur-arch](https://github.com/ankur-arch), [@&#8203;skt-t1-byungi](https://github.com/skt-t1-byungi), [@&#8203;ijjk](https://github.com/ijjk), [@&#8203;Han5991](https://github.com/Han5991), [@&#8203;SyMind](https://github.com/SyMind), [@&#8203;Anas-github-acc](https://github.com/Anas-github-acc), [@&#8203;hf](https://github.com/hf), [@&#8203;bgw](https://github.com/bgw), [@&#8203;wyattjoh](https://github.com/wyattjoh), [@&#8203;ztanner](https://github.com/ztanner), [@&#8203;prateekkish](https://github.com/prateekkish), [@&#8203;eps1lon](https://github.com/eps1lon), [@&#8203;lubieowoce](https://github.com/lubieowoce), [@&#8203;timneutkens](https://github.com/timneutkens), [@&#8203;acdlite](https://github.com/acdlite), [@&#8203;lukesandberg](https://github.com/lukesandberg), [@&#8203;bgub](https://github.com/bgub), [@&#8203;Cy-Tek](https://github.com/Cy-Tek), [@&#8203;padmaia](https://github.com/padmaia), [@&#8203;raunofreiberg](https://github.com/raunofreiberg), [@&#8203;devjiwonchoi](https://github.com/devjiwonchoi), [@&#8203;sokra](https://github.com/sokra), [@&#8203;MidnightDesign](https://github.com/MidnightDesign), [@&#8203;stephenliang](https://github.com/stephenliang), [@&#8203;allenzhou101](https://github.com/allenzhou101), [@&#8203;icyJoseph](https://github.com/icyJoseph), [@&#8203;gaojude](https://github.com/gaojude), [@&#8203;remcohaszing](https://github.com/remcohaszing), [@&#8203;wesjune](https://github.com/wesjune), [@&#8203;wbinnssmith](https://github.com/wbinnssmith), [@&#8203;m1abdullahh](https://github.com/m1abdullahh), [@&#8203;Sayakie](https://github.com/Sayakie), [@&#8203;startracex](https://github.com/startracex), [@&#8203;chadfennell](https://github.com/chadfennell), [@&#8203;dlehmhus](https://github.com/dlehmhus), [@&#8203;Jarred-Sumner](https://github.com/Jarred-Sumner), [@&#8203;candymask0712](https://github.com/candymask0712), [@&#8203;stepan662](https://github.com/stepan662), [@&#8203;PuppyOne](https://github.com/PuppyOne), [@&#8203;huperniketes](https://github.com/huperniketes), [@&#8203;xusd320](https://github.com/xusd320), [@&#8203;MichalMoravik](https://github.com/MichalMoravik), [@&#8203;fireairforce](https://github.com/fireairforce), [@&#8203;kitfoster](https://github.com/kitfoster), [@&#8203;feedthejim](https://github.com/feedthejim), [@&#8203;r34son](https://github.com/r34son), [@&#8203;guoci](https://github.com/guoci), [@&#8203;JamBalaya56562](https://github.com/JamBalaya56562), [@&#8203;adkile](https://github.com/adkile), [@&#8203;snyamathi](https://github.com/snyamathi), and [@&#8203;kachkaev](https://github.com/kachkaev) for helping! ### [`v15.4.8`](https://github.com/vercel/next.js/releases/tag/v15.4.8) [Compare Source](https://github.com/vercel/next.js/compare/v15.4.7...v15.4.8) Please see [CVE-2025-66478](https://nextjs.org/blog/CVE-2025-66478) for additional details about this release. ### [`v15.4.7`](https://github.com/vercel/next.js/releases/tag/v15.4.7) [Compare Source](https://github.com/vercel/next.js/compare/v15.4.6...v15.4.7) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - fix router handling when setting a location response header [#&#8203;82588](https://github.com/vercel/next.js/issues/82588) ##### Credits Huge thanks to [@&#8203;ztanner](https://github.com/ztanner) for helping! ### [`v15.4.6`](https://github.com/vercel/next.js/releases/tag/v15.4.6) [Compare Source](https://github.com/vercel/next.js/compare/v15.4.5...v15.4.6) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - fix: `_error` page's `req.url` can be overwritten to dynamic param on minimal mode ([#&#8203;82347](https://github.com/vercel/next.js/issues/82347)) - fix: add `?dpl` to fonts in `/_next/static/media` ([#&#8203;82384](https://github.com/vercel/next.js/issues/82384)) ##### Credits Huge thanks to [@&#8203;devjiwonchoi](https://github.com/devjiwonchoi), [@&#8203;ijjk](https://github.com/ijjk), and [@&#8203;styfle](https://github.com/styfle) for helping! ### [`v15.4.5`](https://github.com/vercel/next.js/releases/tag/v15.4.5) [Compare Source](https://github.com/vercel/next.js/compare/v15.4.4...v15.4.5) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - Fix API stripping JSON incorrectly ([#&#8203;82062](https://github.com/vercel/next.js/issues/82062)) - Fix i18n fallback: false collision ([#&#8203;82158](https://github.com/vercel/next.js/issues/82158)) - Revert "Fix tracing of server actions imported by client components ([#&#8203;82167](https://github.com/vercel/next.js/issues/82167)) - Ensure setAssetPrefix updates config instance ([#&#8203;82165](https://github.com/vercel/next.js/issues/82165)) - Turbopack: update mimalloc ([#&#8203;82166](https://github.com/vercel/next.js/issues/82166)) - fix(next/image): fix image-optimizer.ts headers ([#&#8203;82175](https://github.com/vercel/next.js/issues/82175)) - fix(next/image): improve and simplify detect-content-type ([#&#8203;82174](https://github.com/vercel/next.js/issues/82174)) ##### Credits Huge thanks to [@&#8203;ijjk](https://github.com/ijjk), [@&#8203;sokra](https://github.com/sokra), and [@&#8203;styfle](https://github.com/styfle) for helping! ### [`v15.4.4`](https://github.com/vercel/next.js/releases/tag/v15.4.4) [Compare Source](https://github.com/vercel/next.js/compare/v15.4.3...v15.4.4) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - Fix dynamicParams false layout case in dev ([#&#8203;82026](https://github.com/vercel/next.js/issues/82026)) - Turbopack: fix scope hoisting variable renaming bug ([#&#8203;81640](https://github.com/vercel/next.js/issues/81640)) - Upgrade to swc v33 ([#&#8203;81750](https://github.com/vercel/next.js/issues/81750)) - Revert "\[metadata] use https protocol for schema urls" ([#&#8203;81934](https://github.com/vercel/next.js/issues/81934)) ##### Credits Huge thanks to [@&#8203;bgw](https://github.com/bgw) [@&#8203;mischnic](https://github.com/mischnic) [@&#8203;huozhi](https://github.com/huozhi) [@&#8203;lukesandberg](https://github.com/lukesandberg) and [@&#8203;ijjk](https://github.com/ijjk) for helping! ### [`v15.4.3`](https://github.com/vercel/next.js/releases/tag/v15.4.3) [Compare Source](https://github.com/vercel/next.js/compare/v15.4.2...v15.4.3) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - Turbopack: fix dist dir on Windows ([#&#8203;81758](https://github.com/vercel/next.js/issues/81758)) ##### Credits Huge thanks to [@&#8203;mischnic](https://github.com/mischnic) for helping! ### [`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.6...v15.4.0) [Compare Source](https://github.com/vercel/next.js/compare/v15.3.6...v15.4.0) ### [`v15.3.6`](https://github.com/vercel/next.js/releases/tag/v15.3.6) [Compare Source](https://github.com/vercel/next.js/compare/v15.3.5...v15.3.6) Please see [CVE-2025-66478](https://nextjs.org/blog/CVE-2025-66478) for additional details about this release. ### [`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.6...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.6`](https://github.com/vercel/next.js/releases/tag/v15.2.6) [Compare Source](https://github.com/vercel/next.js/compare/v15.2.5...v15.2.6) Please see [CVE-2025-66478](https://nextjs.org/blog/CVE-2025-66478) for additional details about this release. ### [`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! ### [`v15.2.1`](https://github.com/vercel/next.js/releases/tag/v15.2.1) [Compare Source](https://github.com/vercel/next.js/compare/v15.2.0...v15.2.1) ##### Core Changes - Unify Link and Form prefetching: [#&#8203;76184](https://github.com/vercel/next.js/issues/76184) - Turbopack: Ensure server actions sourcemaps tests pass: [#&#8203;76157](https://github.com/vercel/next.js/issues/76157) - \[dev-overlay] control dark theme in one place: [#&#8203;76528](https://github.com/vercel/next.js/issues/76528) - \[dev-overlay] change css var for terminal: [#&#8203;76590](https://github.com/vercel/next.js/issues/76590) - \[dev-overlay] Discriminate stack frame settled typed: [#&#8203;76517](https://github.com/vercel/next.js/issues/76517) - Remove obsolete `sourcePackage` references: [#&#8203;76550](https://github.com/vercel/next.js/issues/76550) - refactor: remove unused variable in externals handling: [#&#8203;76599](https://github.com/vercel/next.js/issues/76599) - fix: Add popular embedding libraries to serverExternalPackages: [#&#8203;76574](https://github.com/vercel/next.js/issues/76574) - \[Segment Cache] Implement hash-only navigations: [#&#8203;76179](https://github.com/vercel/next.js/issues/76179) - Webpack: abstract away getting compilation spans: [#&#8203;76579](https://github.com/vercel/next.js/issues/76579) - report compiler duration for webpack and improve numbers: [#&#8203;76665](https://github.com/vercel/next.js/issues/76665) - \[dev-overlay] fix dark theme missing close bracket: [#&#8203;76672](https://github.com/vercel/next.js/issues/76672) - Remove `revalidate` property from incremental cache `ctx` for `FETCH` kind: [#&#8203;76500](https://github.com/vercel/next.js/issues/76500) - \[dev-overlay] fix: env name label style was out of sync with error type label: [#&#8203;76668](https://github.com/vercel/next.js/issues/76668) - Turbopack: avoid celling source maps before minify: [#&#8203;76626](https://github.com/vercel/next.js/issues/76626) - refactor(CI): Merge all four bundler test manifest scripts into one: [#&#8203;76652](https://github.com/vercel/next.js/issues/76652) - \[metadata] fix duplicate metadata for parallel routes: [#&#8203;76669](https://github.com/vercel/next.js/issues/76669) - \[Segment Cache] Omit from bundle if flag disabled: [#&#8203;76622](https://github.com/vercel/next.js/issues/76622) - \[Segment Cache] Support output: "export" mode: [#&#8203;75671](https://github.com/vercel/next.js/issues/75671) - \[Segment Cache] Refresh on same-page navigation: [#&#8203;76223](https://github.com/vercel/next.js/issues/76223) - \[metadata] re-enable streaming metadata with PPR: [#&#8203;76119](https://github.com/vercel/next.js/issues/76119) - \[Segment Cache] Search param fallback handling: [#&#8203;75990](https://github.com/vercel/next.js/issues/75990) - \[Segment Cache] Fix: canonicalURL omits origin: [#&#8203;76444](https://github.com/vercel/next.js/issues/76444) - fix metadata basePath for manifest: [#&#8203;76681](https://github.com/vercel/next.js/issues/76681) - Propagate expire time to `cache-control` header and prerender manifest: [#&#8203;76207](https://github.com/vercel/next.js/issues/76207) - Show revalidate/expire columns in build output: [#&#8203;76343](https://github.com/vercel/next.js/issues/76343) - Gate alternate bundler behind canary only: [#&#8203;76634](https://github.com/vercel/next.js/issues/76634) - \[dynamicIO] routes with dynamic segments should be able to be static in dev: [#&#8203;76691](https://github.com/vercel/next.js/issues/76691) - \[repo] upgrade ts `5.8.2`: [#&#8203;76709](https://github.com/vercel/next.js/issues/76709) - \[metadata]: ensure metadata boundary is only rendered once on client nav: [#&#8203;76692](https://github.com/vercel/next.js/issues/76692) - \[metadata] clean up redudant options: [#&#8203;76712](https://github.com/vercel/next.js/issues/76712) - Fix uniqueness detection for `generateStaticParams`: [#&#8203;76713](https://github.com/vercel/next.js/issues/76713) - Upgrade React from `22e39ea7-20250225` to `d55cc79b-20250228`: [#&#8203;76680](https://github.com/vercel/next.js/issues/76680) - \[Turbopack] Compute module batches and use them for chunking: [#&#8203;76133](https://github.com/vercel/next.js/issues/76133) - \[Dev Tools] Improve keyboard interactions for menu & overlays: [#&#8203;76754](https://github.com/vercel/next.js/issues/76754) - Keep server code out of browser chunks: [#&#8203;76660](https://github.com/vercel/next.js/issues/76660) - Turbopack: inline minify into code generation and make it a plain function instead of a turbo tasks function: [#&#8203;76628](https://github.com/vercel/next.js/issues/76628) - fix edge runtime asset fetch in pages api: [#&#8203;76750](https://github.com/vercel/next.js/issues/76750) - Update use-cache-unknown-cache-kind.test.ts snapshot for alternate bundler: [#&#8203;76682](https://github.com/vercel/next.js/issues/76682) ##### Example Changes - docs: fix reading `params` code blocks: [#&#8203;76705](https://github.com/vercel/next.js/issues/76705) ##### Misc Changes - fix(rustdoc): Fix rustdoc warnings, block on rustdoc failures in CI: [#&#8203;76448](https://github.com/vercel/next.js/issues/76448) - Update more global turbo CLI usage: [#&#8203;76576](https://github.com/vercel/next.js/issues/76576) - docs: Node.js runtime support for Middleware: [#&#8203;76556](https://github.com/vercel/next.js/issues/76556) - build: Update `swc_core` to `v16.0.0`: [#&#8203;76414](https://github.com/vercel/next.js/issues/76414) - Turbopack: prevent panic in swc issue emitter: [#&#8203;76595](https://github.com/vercel/next.js/issues/76595) - Unflake `parallel-routes-revalidation` test: [#&#8203;76600](https://github.com/vercel/next.js/issues/76600) - Fix `octokit.rest.issues.addLabels` call: [#&#8203;76601](https://github.com/vercel/next.js/issues/76601) - \[test] Use new Redbox matchers in app/ error-recovery: [#&#8203;76552](https://github.com/vercel/next.js/issues/76552) - \[test] Use new Redbox matchers in pages/ ReactRefreshLogBox-app-doc: [#&#8203;76551](https://github.com/vercel/next.js/issues/76551) - Run nightly bundler integration tests also with React 18: [#&#8203;76606](https://github.com/vercel/next.js/issues/76606) - 15.2: Add version history for `devIndicators` and note on deprecated options: [#&#8203;76611](https://github.com/vercel/next.js/issues/76611) - 15.2 docs: document missing `htmlLimitedBots` option: [#&#8203;76616](https://github.com/vercel/next.js/issues/76616) - Update bundler production test manifest: [#&#8203;76584](https://github.com/vercel/next.js/issues/76584) - Update bundler development test manifest: [#&#8203;76585](https://github.com/vercel/next.js/issues/76585) - Fix test after CI switched to pnpm 10: [#&#8203;76615](https://github.com/vercel/next.js/issues/76615) - chore(cna): fix theme extend for tailwind v4: [#&#8203;76583](https://github.com/vercel/next.js/issues/76583) - \[test] Use new Redbox matchers in app/ ReactRefreshLogBoxMisc: [#&#8203;76563](https://github.com/vercel/next.js/issues/76563) - Don’t use native built-ins for additional bundler: [#&#8203;76577](https://github.com/vercel/next.js/issues/76577) - Revert "Run nightly bundler integration tests also with React 18": [#&#8203;76640](https://github.com/vercel/next.js/issues/76640) - Update bundler production test manifest: [#&#8203;76643](https://github.com/vercel/next.js/issues/76643) - Update bundler development test manifest: [#&#8203;76644](https://github.com/vercel/next.js/issues/76644) - Turbopack: dedupe middleware-manifest entries: [#&#8203;76621](https://github.com/vercel/next.js/issues/76621) - Turbopack: Improve edge tests: [#&#8203;76607](https://github.com/vercel/next.js/issues/76607) - Turbopack: add test test for css order: [#&#8203;76675](https://github.com/vercel/next.js/issues/76675) - Turbopack: fix order of chunk items in cycles: [#&#8203;76676](https://github.com/vercel/next.js/issues/76676) - \[ci] Fix `test-turbopack-integration` not having any shards : [#&#8203;76355](https://github.com/vercel/next.js/issues/76355) - Update Turbopack development test manifest: [#&#8203;76658](https://github.com/vercel/next.js/issues/76658) - Update Turbopack production test manifest: [#&#8203;76659](https://github.com/vercel/next.js/issues/76659) - fix(CI): Upload to areweturboyet immediately after a manifest is updated, not only on a fixed cron schedule: [#&#8203;76688](https://github.com/vercel/next.js/issues/76688) - Update test snapshots for alternative bundler \[4/n]: [#&#8203;76578](https://github.com/vercel/next.js/issues/76578) - fix(turbopack): Fix analysis of private properties: [#&#8203;76654](https://github.com/vercel/next.js/issues/76654) - Turbopack: Simplify emitDecoratorMetadata test: [#&#8203;76678](https://github.com/vercel/next.js/issues/76678) - \[test] Use new Redbox matchers in pages/ ReactRefreshRegression: [#&#8203;76743](https://github.com/vercel/next.js/issues/76743) - \[test] Remove `describeVariants` helper: [#&#8203;76631](https://github.com/vercel/next.js/issues/76631) - \[test] Fix flaky error-recovery test: [#&#8203;76753](https://github.com/vercel/next.js/issues/76753) - \[test] Use new Redbox matchers in app/ dynamic-error: [#&#8203;76744](https://github.com/vercel/next.js/issues/76744) - \[test] Use new Redbox matchers in app/ rsc-runtime-errors: [#&#8203;76745](https://github.com/vercel/next.js/issues/76745) - Turbopack: avoid panic in module batches: [#&#8203;76757](https://github.com/vercel/next.js/issues/76757) - Revert "test: temporarily disable after deploy test": [#&#8203;74990](https://github.com/vercel/next.js/issues/74990) - `toDisplayRedbox()`: replace all occurrences of testDir: [#&#8203;76618](https://github.com/vercel/next.js/issues/76618) - Fix: missing close brace in demo code: [#&#8203;76549](https://github.com/vercel/next.js/issues/76549) - Disable flaky Turbopack tests: [#&#8203;76760](https://github.com/vercel/next.js/issues/76760) - feat(CI): Revalidate vercel data cache on areweturboyet after uploading data to KV store: [#&#8203;76693](https://github.com/vercel/next.js/issues/76693) - chore(github): move top prs and feature requests to different Slack channel: [#&#8203;76764](https://github.com/vercel/next.js/issues/76764) - Fix flaky Bun test: [#&#8203;76763](https://github.com/vercel/next.js/issues/76763) ##### Credits Huge thanks to [@&#8203;acdlite](https://github.com/acdlite), [@&#8203;bgw](https://github.com/bgw), [@&#8203;ijjk](https://github.com/ijjk), [@&#8203;molebox](https://github.com/molebox), [@&#8203;kdy1](https://github.com/kdy1), [@&#8203;timneutkens](https://github.com/timneutkens), [@&#8203;devjiwonchoi](https://github.com/devjiwonchoi), [@&#8203;mischnic](https://github.com/mischnic), [@&#8203;unstubbable](https://github.com/unstubbable), [@&#8203;eps1lon](https://github.com/eps1lon), [@&#8203;huozhi](https://github.com/huozhi), [@&#8203;philipithomas](https://github.com/philipithomas), [@&#8203;delbaoliveira](https://github.com/delbaoliveira), [@&#8203;samcx](https://github.com/samcx), [@&#8203;wbinnssmith](https://github.com/wbinnssmith), [@&#8203;sokra](https://github.com/sokra), [@&#8203;gnoff](https://github.com/gnoff), [@&#8203;leerob](https://github.com/leerob), [@&#8203;ztanner](https://github.com/ztanner), [@&#8203;raunofreiberg](https://github.com/raunofreiberg), [@&#8203;lubieowoce](https://github.com/lubieowoce), and [@&#8203;LihaoWang](https://github.com/LihaoWang) for helping! ### [`v15.2.0`](https://github.com/vercel/next.js/releases/tag/v15.2.0) [Compare Source](https://github.com/vercel/next.js/compare/v15.1.9...v15.2.0) ##### Core Changes - Fix `unstable_allowDynamic` when used with pnpm: [#&#8203;73732](https://github.com/vercel/next.js/issues/73732) - \[dynamicIO] use new heuristic to track whether server render is dynamic: [#&#8203;73751](https://github.com/vercel/next.js/issues/73751) - Fix receiveExpiredTags not always called: [#&#8203;73759](https://github.com/vercel/next.js/issues/73759) - error-overlay: Rename "Error" to "Issue": [#&#8203;72817](https://github.com/vercel/next.js/issues/72817) - remove redundant segment collection call: [#&#8203;73773](https://github.com/vercel/next.js/issues/73773) - Metadata resolvers can be fetched synchronously: [#&#8203;73771](https://github.com/vercel/next.js/issues/73771) - Turbopack: migrate client references to single-graph-traversal: [#&#8203;73322](https://github.com/vercel/next.js/issues/73322) - next-codemod: update gitignore file for parity for yarn recommendations: [#&#8203;71963](https://github.com/vercel/next.js/issues/71963) - feat: error code: [#&#8203;73332](https://github.com/vercel/next.js/issues/73332) - Detach next-error-code-swc-plugin from workspace: [#&#8203;73806](https://github.com/vercel/next.js/issues/73806) - \[CI] Prominent error message for check_error_codes: [#&#8203;73807](https://github.com/vercel/next.js/issues/73807) - \[Segment Cache] Add PPR header to segment prefetch: [#&#8203;73756](https://github.com/vercel/next.js/issues/73756) - fix: path escaping issue on windows: [#&#8203;73843](https://github.com/vercel/next.js/issues/73843) - Rename variables in LayoutRouter for clarity: [#&#8203;73826](https://github.com/vercel/next.js/issues/73826) - \[Segment Cache] Skip prefetched segments on server: [#&#8203;73626](https://github.com/vercel/next.js/issues/73626) - \[Segment Cache] No data on tree prefetch if no PPR: [#&#8203;73767](https://github.com/vercel/next.js/issues/73767) - Remove segmentPath from RSC payload: [#&#8203;73827](https://github.com/vercel/next.js/issues/73827) - build: better error if fetching AMP validator fails: [#&#8203;73851](https://github.com/vercel/next.js/issues/73851) - Escape the '.' in '.json' when making static data routes.: [#&#8203;73850](https://github.com/vercel/next.js/issues/73850) - fix(next@15): use the asset prefix when loading a CSS in App Router: [#&#8203;72095](https://github.com/vercel/next.js/issues/72095) - Exclude `.test.` files from using error code plugin: [#&#8203;73868](https://github.com/vercel/next.js/issues/73868) - Refactor telemetry API: [#&#8203;73865](https://github.com/vercel/next.js/issues/73865) - Add additional error classes and error codes: [#&#8203;73862](https://github.com/vercel/next.js/issues/73862) - refactor: collectAppPageSegments: [#&#8203;73908](https://github.com/vercel/next.js/issues/73908) - cleanup unnecessary map in dev server: [#&#8203;73745](https://github.com/vercel/next.js/issues/73745) - Retry manifest file loading only in dev mode: [#&#8203;73900](https://github.com/vercel/next.js/issues/73900) - Turbopack: ignore empty NEXT_TURBOPACK_TRACING var: [#&#8203;73903](https://github.com/vercel/next.js/issues/73903) - Ignore RSC fetch errors after hard navigation: [#&#8203;73975](https://github.com/vercel/next.js/issues/73975) - Fix error code check in windows: [#&#8203;73981](https://github.com/vercel/next.js/issues/73981) - Separate viewport and metadata in rsc and cache: [#&#8203;73867](https://github.com/vercel/next.js/issues/73867) - Add feature flag for new dev overlay: [#&#8203;73977](https://github.com/vercel/next.js/issues/73977) - Restore RSC fetch error handling after navigating back: [#&#8203;73985](https://github.com/vercel/next.js/issues/73985) - refactor: make locales array immutable: [#&#8203;74037](https://github.com/vercel/next.js/issues/74037) - fix: skip rendering dynamic root segment routes: [#&#8203;74039](https://github.com/vercel/next.js/issues/74039) - refactor: cache lowercasing all the locales: [#&#8203;74038](https://github.com/vercel/next.js/issues/74038) - Add SRI support for Node.js Runtime : [#&#8203;73891](https://github.com/vercel/next.js/issues/73891) - Separate bots detection utils: [#&#8203;74000](https://github.com/vercel/next.js/issues/74000) - docs: remove a duplicated word in redirect code comment: [#&#8203;74043](https://github.com/vercel/next.js/issues/74043) - examples: update gitignore files for parity for yarn recommendations: [#&#8203;71956](https://github.com/vercel/next.js/issues/71956) - chore: update turbopack document path in the warning message: [#&#8203;72597](https://github.com/vercel/next.js/issues/72597) - Clean up `react-dev-overlay` before fork: [#&#8203;74016](https://github.com/vercel/next.js/issues/74016) - chore(next/image): improve imgopt api bypass detection for unsupported images: [#&#8203;73909](https://github.com/vercel/next.js/issues/73909) - \[Segment Cache] Add CacheStatus.Empty: [#&#8203;73667](https://github.com/vercel/next.js/issues/73667) - chore: move static paths utils into own folder: [#&#8203;73928](https://github.com/vercel/next.js/issues/73928) - Delete unused `GroupedStackFrames.tsx`: [#&#8203;74028](https://github.com/vercel/next.js/issues/74028) - \[Segment Cache] Move cache key creation to client : [#&#8203;73853](https://github.com/vercel/next.js/issues/73853) - feat: added partial shell generation using root params: [#&#8203;73816](https://github.com/vercel/next.js/issues/73816) - feat: added error when there's missing root params in generateStaticParams: [#&#8203;73933](https://github.com/vercel/next.js/issues/73933) - Remove parentRendered argument: [#&#8203;73877](https://github.com/vercel/next.js/issues/73877) - Generate per-segment responses for any static page: [#&#8203;73945](https://github.com/vercel/next.js/issues/73945) - feat: added fallback route params to prerender manifest: [#&#8203;74004](https://github.com/vercel/next.js/issues/74004) - refactor(turbopack): Make various types directly or indirectly included in `State<T>` types into OperationValues and/or NonLocalValues: [#&#8203;74008](https://github.com/vercel/next.js/issues/74008) - Fork `react-dev-overlay` for new UI: [#&#8203;74017](https://github.com/vercel/next.js/issues/74017) - fix: added fallback source route to prerender manifest: [#&#8203;74052](https://github.com/vercel/next.js/issues/74052) - Add storybook for UI testing: [#&#8203;74032](https://github.com/vercel/next.js/issues/74032) - \[Segment Cache] Support for non-PPR projects/pages: [#&#8203;73960](https://github.com/vercel/next.js/issues/73960) - exclude `.stories.` and `.test.` files from taskfile watch and error plugin: [#&#8203;74064](https://github.com/vercel/next.js/issues/74064) - Upgrade React from `7283a213-20241206` to `372ec00c-20241209`: [#&#8203;73749](https://github.com/vercel/next.js/issues/73749) - fix: aria attribute typo for error overlay: [#&#8203;74074](https://github.com/vercel/next.js/issues/74074) - fix: set x-deployment-id to every middleware prefetch request: [#&#8203;71193](https://github.com/vercel/next.js/issues/71193) - Add middleware handler for error code telemetry: [#&#8203;74088](https://github.com/vercel/next.js/issues/74088) - Create ErrorOverlay component: [#&#8203;74073](https://github.com/vercel/next.js/issues/74073) - fix(typed-routes): Fix route type fallback: [#&#8203;73271](https://github.com/vercel/next.js/issues/73271) - Rename `root-layout-missing-tags-error.tsx` to pascal case: [#&#8203;74089](https://github.com/vercel/next.js/issues/74089) - Turbopack: next/dynamic use transitions instead of AST analysis: [#&#8203;73627](https://github.com/vercel/next.js/issues/73627) - \[Turbopack] fix root and project path usages in a monorepo: [#&#8203;73552](https://github.com/vercel/next.js/issues/73552) - support `bun.lock` as package manager lockfile: [#&#8203;74056](https://github.com/vercel/next.js/issues/74056) - Stop sourcemapping function names: [#&#8203;74085](https://github.com/vercel/next.js/issues/74085) - Move ErrorIndicator to separate file: [#&#8203;74090](https://github.com/vercel/next.js/issues/74090) - Upgrade React from `372ec00c-20241209` to `518d06d2-20241219`: [#&#8203;74155](https://github.com/vercel/next.js/issues/74155) - used shared worker for lint & typecheck steps: [#&#8203;74154](https://github.com/vercel/next.js/issues/74154) - chore(turbopack): Ignore no-vc-struct lint in trybuild proc macro tests: [#&#8203;74110](https://github.com/vercel/next.js/issues/74110) - Use provided waitUntil for pending revalidates: [#&#8203;74164](https://github.com/vercel/next.js/issues/74164) - Port ErrorPagination: [#&#8203;74097](https://github.com/vercel/next.js/issues/74097) - Port LeftIcon RightIcon from ErrorPagination: [#&#8203;74098](https://github.com/vercel/next.js/issues/74098) - Port ToolButtonsGroup: [#&#8203;74099](https://github.com/vercel/next.js/issues/74099) - \[Turbopack] fix import.meta.url in monorepo: [#&#8203;72612](https://github.com/vercel/next.js/issues/72612) - refactor: rename the react client error callbacks module: [#&#8203;74192](https://github.com/vercel/next.js/issues/74192) - Use ErrorOverlayLayout in Errors component: [#&#8203;74107](https://github.com/vercel/next.js/issues/74107) - refactor: remove internal queries, move to request metadata: [#&#8203;74100](https://github.com/vercel/next.js/issues/74100) - Fix accessing headers in progressively enhanced form actions: [#&#8203;74196](https://github.com/vercel/next.js/issues/74196) - Use Geist font in Dev Overlay: [#&#8203;74160](https://github.com/vercel/next.js/issues/74160) - \[metadata] Align prefetch head type with head: [#&#8203;74161](https://github.com/vercel/next.js/issues/74161) - refactor: error boundary rendering in app-render: [#&#8203;74259](https://github.com/vercel/next.js/issues/74259) - \[metadata] Merge the metadata resolve apis into one api: [#&#8203;74191](https://github.com/vercel/next.js/issues/74191) - \[DevOverlay] fix: restore pagination style: [#&#8203;74296](https://github.com/vercel/next.js/issues/74296) - fix: update broken links in config-shared.d.ts: [#&#8203;74122](https://github.com/vercel/next.js/issues/74122) - fix: fix typos in errors.json & create-component-tree.tsx: [#&#8203;74471](https://github.com/vercel/next.js/issues/74471) - Safely retrieve router, improve page reload logic: [#&#8203;74209](https://github.com/vercel/next.js/issues/74209) - docs: bump year: [#&#8203;74475](https://github.com/vercel/next.js/issues/74475) - \[DevOverlay] Remove Dialog Banner: [#&#8203;74464](https://github.com/vercel/next.js/issues/74464) - \[DevOverlay] Add color palette script: [#&#8203;74465](https://github.com/vercel/next.js/issues/74465) - Fix: Preserve intentional percent encoding in search param for client nav: [#&#8203;74473](https://github.com/vercel/next.js/issues/74473) - \[DevOverlay] Implement New Overlay Layout with Bottom Stacks: [#&#8203;74466](https://github.com/vercel/next.js/issues/74466) - \[DevOverlay] Add error overlay footer and feedback: [#&#8203;74472](https://github.com/vercel/next.js/issues/74472) - \[DevOverlay] Remove temporary header children: [#&#8203;74490](https://github.com/vercel/next.js/issues/74490) - fix: server functions x-forwarded-host possible multiple values: [#&#8203;73701](https://github.com/vercel/next.js/issues/73701) - \[DevOverlay] Pass footer message from error containers: [#&#8203;74493](https://github.com/vercel/next.js/issues/74493) - feat(rsc): allow host or forwarded: [#&#8203;74199](https://github.com/vercel/next.js/issues/74199) - \[DevOverlay] Adjust border style for header and footer: [#&#8203;74480](https://github.com/vercel/next.js/issues/74480) - feat(next/image): add support for `images.qualities` in next.config: [#&#8203;74257](https://github.com/vercel/next.js/issues/74257) - Upgrade React from `518d06d2-20241219` to `3b009b4c-20250102`: [#&#8203;74492](https://github.com/vercel/next.js/issues/74492) - fix: add node internals stack frames to ignored list: [#&#8203;73698](https://github.com/vercel/next.js/issues/73698) - chore: break calls to forEach into for loops: [#&#8203;74523](https://github.com/vercel/next.js/issues/74523) - \[DevOverlay] Add error message: [#&#8203;74541](https://github.com/vercel/next.js/issues/74541) - \[DevOverlay] Add error type label: [#&#8203;74543](https://github.com/vercel/next.js/issues/74543) - feat: connect error rating buttons to telemetry API: [#&#8203;74496](https://github.com/vercel/next.js/issues/74496) - \[metadata] Move metadata rendering adjacent to page component: [#&#8203;74262](https://github.com/vercel/next.js/issues/74262) - Delete set-cache-busting-search-param.test.ts: [#&#8203;74561](https://github.com/vercel/next.js/issues/74561) - fix: enhance a11y, prevent double firing in error rating: [#&#8203;74563](https://github.com/vercel/next.js/issues/74563) - fix: add aria-hidden to error overlay voting icons: [#&#8203;74568](https://github.com/vercel/next.js/issues/74568) - Update font data: [#&#8203;74572](https://github.com/vercel/next.js/issues/74572) - Upgrade React from `3b009b4c-20250102` to `3ce77d55-20250106`: [#&#8203;74557](https://github.com/vercel/next.js/issues/74557) - \[metadata] Change the array head to single node in flight data: [#&#8203;74299](https://github.com/vercel/next.js/issues/74299) - \[DevOverlay] Add Toolbar: [#&#8203;74555](https://github.com/vercel/next.js/issues/74555) - restore deleted comment in next-app-loader: [#&#8203;74597](https://github.com/vercel/next.js/issues/74597) - Turbopack dev: Remove client to server websocket ping event: [#&#8203;74584](https://github.com/vercel/next.js/issues/74584) - Fix prerender tags when notFound is called: [#&#8203;74577](https://github.com/vercel/next.js/issues/74577) - fix: add prerender abort errors to unstable rethrow: [#&#8203;74556](https://github.com/vercel/next.js/issues/74556) - Upgrade React from `3ce77d55-20250106` to `7b402084-20250107`: [#&#8203;74599](https://github.com/vercel/next.js/issues/74599) - fix: handle optional catchall parameters properly when deployed: [#&#8203;74562](https://github.com/vercel/next.js/issues/74562) - refactor: generic dev build indicator: [#&#8203;74615](https://github.com/vercel/next.js/issues/74615) - ensure custom cache handlers are preloaded: [#&#8203;74622](https://github.com/vercel/next.js/issues/74622) - feat: dev build indicator for App Router: [#&#8203;74618](https://github.com/vercel/next.js/issues/74618) - fix fetch lock not being consistently released: [#&#8203;74623](https://github.com/vercel/next.js/issues/74623) - Ensure global cache handlers are used properly: [#&#8203;74626](https://github.com/vercel/next.js/issues/74626) - Ensure custom Suspense boundaries in layouts resolve if they contain the page: [#&#8203;74552](https://github.com/vercel/next.js/issues/74552) - test: exclude the ts testing files from tsconfig during local dev in nextjs repo: [#&#8203;74647](https://github.com/vercel/next.js/issues/74647) - Remove unused dependencyFactory plugin code: [#&#8203;74661](https://github.com/vercel/next.js/issues/74661) - test: do not log the changes for local dev tsconfig: [#&#8203;74674](https://github.com/vercel/next.js/issues/74674) - \[metadata] initial support of streaming metadata: [#&#8203;74619](https://github.com/vercel/next.js/issues/74619) - Remove PPR feature check from Segment Cache client: [#&#8203;74669](https://github.com/vercel/next.js/issues/74669) - \[Segment Cache] Add act-inspired internal router testing helper: [#&#8203;74668](https://github.com/vercel/next.js/issues/74668) - \[Segment Cache] Background segment revalidation: [#&#8203;74057](https://github.com/vercel/next.js/issues/74057) - Upgrade React from `7b402084-20250107` to `42687267-20250108`: [#&#8203;74649](https://github.com/vercel/next.js/issues/74649) - Indicate boolean value for configured experimental features on startup: [#&#8203;74691](https://github.com/vercel/next.js/issues/74691) - Implement encryption key into turbopack as hash salt: [#&#8203;72933](https://github.com/vercel/next.js/issues/72933) - Show numerical values for configured experimental features: [#&#8203;74692](https://github.com/vercel/next.js/issues/74692) - Upgrade React from `42687267-20250108` to `74ea0c73-20250109`: [#&#8203;74693](https://github.com/vercel/next.js/issues/74693) - feat: DevToolsIndicator: [#&#8203;74679](https://github.com/vercel/next.js/issues/74679) - Fix presentation when onerror receives an event without error: [#&#8203;74643](https://github.com/vercel/next.js/issues/74643) - refactor: move the global client error code: [#&#8203;74699](https://github.com/vercel/next.js/issues/74699) - fix: ts language server rule metadata should allow null: [#&#8203;74704](https://github.com/vercel/next.js/issues/74704) - \[DevTools] create error state for indicator: [#&#8203;74717](https://github.com/vercel/next.js/issues/74717) - \[DevOverlay] Add Basic Stories for Error Containers: [#&#8203;74697](https://github.com/vercel/next.js/issues/74697) - Add experimental flag for View Transitions: [#&#8203;74659](https://github.com/vercel/next.js/issues/74659) - \[DevOverlay] Floating Header and Bottom Stacks: [#&#8203;74581](https://github.com/vercel/next.js/issues/74581) - \[DevOverlay] Add Pagination: [#&#8203;74583](https://github.com/vercel/next.js/issues/74583) - Fix [@&#8203;vercel/og](https://github.com/vercel/og) license SPDX expression: [#&#8203;74745](https://github.com/vercel/next.js/issues/74745) - \[DevOverlay] Add Next.js version staleness indicator: [#&#8203;74601](https://github.com/vercel/next.js/issues/74601) - Write errors.json fully formatted: [#&#8203;74753](https://github.com/vercel/next.js/issues/74753) - \[DevOverlay] Fix style details and correctly pass version info: [#&#8203;74606](https://github.com/vercel/next.js/issues/74606) - \[DevOverlay] Decouple Dialog component from Error Overlay: [#&#8203;74638](https://github.com/vercel/next.js/issues/74638) - \[DevOverlay] Apply Turbopack Styling: [#&#8203;74636](https://github.com/vercel/next.js/issues/74636) - \[DevOverlay] Add Call Stack: [#&#8203;74658](https://github.com/vercel/next.js/issues/74658) - \[DevOverlay] Add Runtime Error CodeFrame: [#&#8203;74682](https://github.com/vercel/next.js/issues/74682) - Do not warn during build for supported modules in the Edge runtime: [#&#8203;74752](https://github.com/vercel/next.js/issues/74752) - Ensure metadata doesn't break scroll-to-top on navigation: [#&#8203;74748](https://github.com/vercel/next.js/issues/74748) - \[Segment Cache] Fix stale time unit conversion: [#&#8203;74759](https://github.com/vercel/next.js/issues/74759) - \[metadata] add option of configuring ua of async metadata: [#&#8203;74594](https://github.com/vercel/next.js/issues/74594) - SingleModuleGraph: yield edge weights during traversal: [#&#8203;74620](https://github.com/vercel/next.js/issues/74620) - refactor(turbopack/next-api): Implement NonLocalValue for TracedDiGraph and SingleModuleGraph: [#&#8203;74506](https://github.com/vercel/next.js/issues/74506) - Always display version indicator: [#&#8203;74774](https://github.com/vercel/next.js/issues/74774) - Update font data: [#&#8203;74777](https://github.com/vercel/next.js/issues/74777) - Upgrade React from `74ea0c73-20250109` to `056073de-20250109`: [#&#8203;74754](https://github.com/vercel/next.js/issues/74754) - \[DevOverlay] Improve Storybook Structure: [#&#8203;74764](https://github.com/vercel/next.js/issues/74764) - fix: always show indicator in app router: [#&#8203;74758](https://github.com/vercel/next.js/issues/74758) - Upgrade React from `056073de-20250109` to `540efebc-20250112`: [#&#8203;74805](https://github.com/vercel/next.js/issues/74805) - \[DevOverlay] Fix Style Regression: [#&#8203;74768](https://github.com/vercel/next.js/issues/74768) - Fix output files warning by Turborepo: [#&#8203;74811](https://github.com/vercel/next.js/issues/74811) - perf(lint): cache the returned regex result: [#&#8203;74827](https://github.com/vercel/next.js/issues/74827) - Upgrade React from `540efebc-20250112` to `cabd8a0e-20250113`: [#&#8203;74828](https://github.com/vercel/next.js/issues/74828) - feat: added rewrite headers after user-supplied rewrites: [#&#8203;74776](https://github.com/vercel/next.js/issues/74776) - Add partial support for `"use cache"` in metadata route handlers: [#&#8203;74835](https://github.com/vercel/next.js/issues/74835) - \[DevOverlay] Hydration Error Code Frame: [#&#8203;74822](https://github.com/vercel/next.js/issues/74822) - fix: when metadatabase is set we should not warn: [#&#8203;74840](https://github.com/vercel/next.js/issues/74840) - \[DevOverlay] Sync Terminal component with CodeFrame for Build Error: [#&#8203;74831](https://github.com/vercel/next.js/issues/74831) - feat: animated dev build/render indicator: [#&#8203;74833](https://github.com/vercel/next.js/issues/74833) - Fix mojibake in server action inputs (fixes [#&#8203;74843](https://github.com/vercel/next.js/issues/74843)): [#&#8203;74845](https://github.com/vercel/next.js/issues/74845) - \[DevOverlay] Add Turbopack story for Error Containers: [#&#8203;74834](https://github.com/vercel/next.js/issues/74834) - Add pagination SEO link tags: [#&#8203;74737](https://github.com/vercel/next.js/issues/74737) - chore: fix local development warnings inside next monorepo: [#&#8203;74863](https://github.com/vercel/next.js/issues/74863) - fix: eslint rule of using img in metadata routes: [#&#8203;74864](https://github.com/vercel/next.js/issues/74864) - Upgrade React from `cabd8a0e-20250113` to `b3a95caf-20250113`: [#&#8203;74868](https://github.com/vercel/next.js/issues/74868) - \[Segment Cache] Support `<Link prefetch={true}>`: [#&#8203;74172](https://github.com/vercel/next.js/issues/74172) - Remove unnecessary re render on link reveal: [#&#8203;74670](https://github.com/vercel/next.js/issues/74670) - \[Segment Cache] Cancel prefetch on viewport exit: [#&#8203;74671](https://github.com/vercel/next.js/issues/74671) - \[Segment Cache] Prioritize hovered links: [#&#8203;74672](https://github.com/vercel/next.js/issues/74672) - Refine NextLogo Accessibility and Styling: [#&#8203;74869](https://github.com/vercel/next.js/issues/74869) - Disable failed scroll restoration warning: [#&#8203;74875](https://github.com/vercel/next.js/issues/74875) - Polish UI for dev indicator popover: [#&#8203;74872](https://github.com/vercel/next.js/issues/74872) - \[DevTools] Add `CMD + .` keyboard shortcut to show/hide: [#&#8203;74878](https://github.com/vercel/next.js/issues/74878) - \[DevOverlay] use buttons for interactive indicator row options: [#&#8203;74887](https://github.com/vercel/next.js/issues/74887) - \[DevOverlay] close popover/overlay on Esc: [#&#8203;74889](https://github.com/vercel/next.js/issues/74889) - Skip client reference manifests for static metadata route handlers: [#&#8203;74876](https://github.com/vercel/next.js/issues/74876) - Upgrade React from `b3a95caf-20250113` to `f0edf41e-20250115`: [#&#8203;74890](https://github.com/vercel/next.js/issues/74890) - fix: moved down segment path handling after cache headers are set: [#&#8203;74893](https://github.com/vercel/next.js/issues/74893) - \[Turbopack] improve task optimization: [#&#8203;74837](https://github.com/vercel/next.js/issues/74837) - Ensure client reference manifest is traced for global not found page: [#&#8203;74919](https://github.com/vercel/next.js/issues/74919) - Polish error feedback row: [#&#8203;74880](https://github.com/vercel/next.js/issues/74880) - fix: static indicator for new overlay decoupled from appIsrStatus: [#&#8203;74933](https://github.com/vercel/next.js/issues/74933) - \[test] Avoid hydration errors in react-compiler tests: [#&#8203;74928](https://github.com/vercel/next.js/issues/74928) - feat: write the segment path data out from the incremental cache: [#&#8203;74892](https://github.com/vercel/next.js/issues/74892) - Track dynamic IO feature usage: [#&#8203;74942](https://github.com/vercel/next.js/issues/74942) - Upgrade React from `f0edf41e-20250115` to `b158439a-20250115`: [#&#8203;74936](https://github.com/vercel/next.js/issues/74936) - Turbopack: chunk_group_multiple: [#&#8203;74859](https://github.com/vercel/next.js/issues/74859) - \[DevOverlay] Fix floating header invisble on small screen: [#&#8203;74886](https://github.com/vercel/next.js/issues/74886) - rest errors queue after passing to handler: [#&#8203;74982](https://github.com/vercel/next.js/issues/74982) - \[DevOverlay] Keep pagination on Build Error: [#&#8203;74905](https://github.com/vercel/next.js/issues/74905) - \[Segment Cache] Evict client cache on revalidate: [#&#8203;74874](https://github.com/vercel/next.js/issues/74874) - Upgrade React from `b158439a-20250115` to `5b51a2b9-20250116`: [#&#8203;74993](https://github.com/vercel/next.js/issues/74993) - \[DevOverlay] Gather Feedback per Error: [#&#8203;74908](https://github.com/vercel/next.js/issues/74908) - Fix dev server ignores ENOENT error when loading page: [#&#8203;65213](https://github.com/vercel/next.js/issues/65213) - refactor: updated route regexp handling to simplify: [#&#8203;74996](https://github.com/vercel/next.js/issues/74996) - \[DevOverlay] Rename file names to kebab: [#&#8203;75000](https://github.com/vercel/next.js/issues/75000) - Fix dhat support for turbo dev: [#&#8203;67166](https://github.com/vercel/next.js/issues/67166) - Fix missing revalidate with notFound(): [#&#8203;75009](https://github.com/vercel/next.js/issues/75009) - fix: always ensure element before set to weakmap: [#&#8203;75012](https://github.com/vercel/next.js/issues/75012) - Fix ping event being sent unintentionally for Pages Router with Turbopack: [#&#8203;75030](https://github.com/vercel/next.js/issues/75030) - fix: don't memory-leak promises passed to `waitUntil`: [#&#8203;75041](https://github.com/vercel/next.js/issues/75041) - refactor: include new option for including prefixes: [#&#8203;75015](https://github.com/vercel/next.js/issues/75015) - Disable `colormin` feature from `cssnano`: [#&#8203;53393](https://github.com/vercel/next.js/issues/53393) - types: improve types in app-index: [#&#8203;75045](https://github.com/vercel/next.js/issues/75045) - feature(error): capture ssr error in overlay during dev: [#&#8203;74983](https://github.com/vercel/next.js/issues/74983) - \[DevOverlay] Polish new Error Overlay badge: [#&#8203;74975](https://github.com/vercel/next.js/issues/74975) - \[DevOverlay]: hook up issue click handlers in NextLogo: [#&#8203;75069](https://github.com/vercel/next.js/issues/75069) - error when output: export is used with intercepting routes: [#&#8203;75058](https://github.com/vercel/next.js/issues/75058) - Display global-error along dev overlay during development: [#&#8203;75101](https://github.com/vercel/next.js/issues/75101) - \[DevOverlay] Decouple Error Overlay with DevTools Indicator: [#&#8203;74999](https://github.com/vercel/next.js/issues/74999) - \[DevOverlay] Open Error Overlay when DevTools Indicator clicked: [#&#8203;75025](https://github.com/vercel/next.js/issues/75025) - fix: be more defensive in useMergedRef: [#&#8203;75088](https://github.com/vercel/next.js/issues/75088) - \[Dev Badge] Focus states and fluid transitioning between states: [#&#8203;75141](https://github.com/vercel/next.js/issues/75141) - polish indicator loading behaviour for new dev overlay: [#&#8203;75149](https://github.com/vercel/next.js/issues/75149) - clean unused stop: [#&#8203;75156](https://github.com/vercel/next.js/issues/75156) - \[Segment Cache] Remove segment access tokens: [#&#8203;75157](https://github.com/vercel/next.js/issues/75157) - \[Segment Cache] Minimize special root key handling: [#&#8203;75159](https://github.com/vercel/next.js/issues/75159) - \[next:dev] fix: console error conflicting public file: [#&#8203;75140](https://github.com/vercel/next.js/issues/75140) - \[Turbopack] allow to disable source maps: [#&#8203;75136](https://github.com/vercel/next.js/issues/75136) - Allow disabling HTTP request logs in dev server: [#&#8203;74349](https://github.com/vercel/next.js/issues/74349) - \[metadata] Fix streaming metadata was missing in ssr: [#&#8203;75155](https://github.com/vercel/next.js/issues/75155) - fix(turbopack/napi): Flush optional task cache hit statistics upon completion of build: [#&#8203;75122](https://github.com/vercel/next.js/issues/75122) - add hostname to default error boundary message: [#&#8203;75151](https://github.com/vercel/next.js/issues/75151) - \[Segment Cache] Predictable fallback param encoding: [#&#8203;75166](https://github.com/vercel/next.js/issues/75166) - misc: remove authors section in the readme: [#&#8203;75184](https://github.com/vercel/next.js/issues/75184) - Track `use cache` usage: [#&#8203;75007](https://github.com/vercel/next.js/issues/75007) - Upgrade React from `5b51a2b9-20250116` to `9b62ee71-20250122`: [#&#8203;75187](https://github.com/vercel/next.js/issues/75187) - fix `after` export in next-types-plugin: [#&#8203;75190](https://github.com/vercel/next.js/issues/75190) - fix: Merge `link` header from middleware with the ones from React: [#&#8203;73431](https://github.com/vercel/next.js/issues/73431) - Restore and enhance error handling for hanging inputs in `"use cache"`: [#&#8203;74652](https://github.com/vercel/next.js/issues/74652) - Error handling for hanging promises in `"use cache"` closures: [#&#8203;74750](https://github.com/vercel/next.js/issues/74750) - Fix source mapping of generated cache wrapper calls: [#&#8203;74987](https://github.com/vercel/next.js/issues/74987) - \[Turbopack] use new backend by default: [#&#8203;72434](https://github.com/vercel/next.js/issues/72434) - eslint: allow ts extensions for config: [#&#8203;75222](https://github.com/vercel/next.js/issues/75222) - Split entrypoint/route handling into separate dev and prod versions: [#&#8203;75169](https://github.com/vercel/next.js/issues/75169) - \[Segment Cache] Prioritize route trees over segments: [#&#8203;75213](https://github.com/vercel/next.js/issues/75213) - Remove `internal_disableSyncDynamicAPIWarnings` flag: [#&#8203;75231](https://github.com/vercel/next.js/issues/75231) - router.prefetch should not trigger a React update: [#&#8203;75238](https://github.com/vercel/next.js/issues/75238) - \[DevOverlay] Enable reactOwnerStack when newDevOverlay is enabled: [#&#8203;75199](https://github.com/vercel/next.js/issues/75199) - fix: typeof msg should compare to object: [#&#8203;75221](https://github.com/vercel/next.js/issues/75221) - \[DevOverlay] Align old and new overlay: [#&#8203;74935](https://github.com/vercel/next.js/issues/74935) - Introduce standalone `experimental.useCache` flag: [#&#8203;75240](https://github.com/vercel/next.js/issues/75240) - \[metadata] keep blocking metadata rendered in head: [#&#8203;75227](https://github.com/vercel/next.js/issues/75227) - Upgrade React from `9b62ee71-20250122` to `ae9017ce-20250122`: [#&#8203;75233](https://github.com/vercel/next.js/issues/75233) - Update React types: [#&#8203;75245](https://github.com/vercel/next.js/issues/75245) - docs: `opengraph-image` files work with the node.js runtime: [#&#8203;75274](https://github.com/vercel/next.js/issues/75274) - Upgrade vercel/og: [#&#8203;75247](https://github.com/vercel/next.js/issues/75247) - Turbopack: migrate global module ids to single-graph: [#&#8203;73752](https://github.com/vercel/next.js/issues/73752) - Emit build error when `useCache` is enabled and Edge runtime is used: [#&#8203;75279](https://github.com/vercel/next.js/issues/75279) - Fix `use server` diagnostics for type exports: [#&#8203;74256](https://github.com/vercel/next.js/issues/74256) - Turbopack: don't hardcode `edge-instrumentation.js`: [#&#8203;75289](https://github.com/vercel/next.js/issues/75289) - Upgrade React from `ae9017ce-20250122` to `de1eaa26-20250124`: [#&#8203;75286](https://github.com/vercel/next.js/issues/75286) - Update bundler for pre-bundling runtime: [#&#8203;75294](https://github.com/vercel/next.js/issues/75294) - Ensure mangling is disabled for dev runtime builds: [#&#8203;75297](https://github.com/vercel/next.js/issues/75297) - Configure correct app dir when building `/_error` fallback in dev: [#&#8203;75354](https://github.com/vercel/next.js/issues/75354) - Upgrade React from `de1eaa26-20250124` to `9eabb373-20250124`: [#&#8203;75367](https://github.com/vercel/next.js/issues/75367) - tweak static generation retry wait time: [#&#8203;75381](https://github.com/vercel/next.js/issues/75381) - \[Dev Badge] Accessibility improvements to dropdown menu: [#&#8203;75268](https://github.com/vercel/next.js/issues/75268) - Gate `captureOwnerStack` access on `experimental.reactOwnerStack`: [#&#8203;75241](https://github.com/vercel/next.js/issues/75241) - \[DevOverlay] Remove unused props from `errors.tsx` and its story: [#&#8203;75392](https://github.com/vercel/next.js/issues/75392) - feat: slow module detection for webpack: [#&#8203;75368](https://github.com/vercel/next.js/issues/75368) - UI polish: dev overlay feedback button: [#&#8203;75400](https://github.com/vercel/next.js/issues/75400) - \[DevOverlay] fix: shadow host element affects parent's display: [#&#8203;70676](https://github.com/vercel/next.js/issues/70676) - \[DevOverlay] Display Correct Number of Errors on Indicator: [#&#8203;75395](https://github.com/vercel/next.js/issues/75395) - \[dev-overlay] fix: do not open error overlay when click indicator: [#&#8203;75404](https://github.com/vercel/next.js/issues/75404) - fix: handle optional catchalls correctly: [#&#8203;75377](https://github.com/vercel/next.js/issues/75377) - \[dev-overlay] do not close overlay when click indicator elements: [#&#8203;75406](https://github.com/vercel/next.js/issues/75406) - fix: add parser metadata for eslint 9 cache: [#&#8203;74791](https://github.com/vercel/next.js/issues/74791) - Fixed `null is not an object (evaluating 't.parallelRoutes.get')`: [#&#8203;75360](https://github.com/vercel/next.js/issues/75360) - Turbopack: Move build to separate file: [#&#8203;75390](https://github.com/vercel/next.js/issues/75390) - Upgrade React from `9eabb373-20250124` to `37906d4d-20250127`: [#&#8203;75398](https://github.com/vercel/next.js/issues/75398) - Turbopack: Implement build worker: [#&#8203;75391](https://github.com/vercel/next.js/issues/75391) - Revert changing bundler for runtime bundle but keep externals fix: [#&#8203;75412](https://github.com/vercel/next.js/issues/75412) - Revert "fix: handle optional catchalls correctly": [#&#8203;75442](https://github.com/vercel/next.js/issues/75442) - \[Turbopack] allow to manually mark tasks as root: [#&#8203;75436](https://github.com/vercel/next.js/issues/75436) - \[Turbopack] disable dependency tracking when running build without persistent caching: [#&#8203;75243](https://github.com/vercel/next.js/issues/75243) - \[DevOverlay] fix total error count: [#&#8203;75500](https://github.com/vercel/next.js/issues/75500) - \[DevOverlay] fix total error count: [#&#8203;75500](https://github.com/vercel/next.js/issues/75500) - fix: incoming requests should use plural: [#&#8203;75582](https://github.com/vercel/next.js/issues/75582) - Don't warn about Turbopack config if disabled: [#&#8203;75618](https://github.com/vercel/next.js/issues/75618) - Unfork stack frame utils: [#&#8203;75532](https://github.com/vercel/next.js/issues/75532) - \[use-cache] Exclude warmup render when dynamicIO is off: [#&#8203;75527](https://github.com/vercel/next.js/issues/75527) - add additional x-middleware-set-cookie filtering: [#&#8203;75561](https://github.com/vercel/next.js/issues/75561) - \[use-cache] use computed size of the ReadableStream for LRU evicting: [#&#8203;75607](https://github.com/vercel/next.js/issues/75607) - Include HMR refresh hash in `"use cache"` cache keys: [#&#8203;75474](https://github.com/vercel/next.js/issues/75474) - \[DevOverlay] cleanup hydration error UI: [#&#8203;75499](https://github.com/vercel/next.js/issues/75499) - \[metadata] Remove deadcode and extract separate test suite: [#&#8203;75528](https://github.com/vercel/next.js/issues/75528) - refactor: decouple getOriginalStackFrame from endpoint: [#&#8203;75553](https://github.com/vercel/next.js/issues/75553) - fix: dev overlay style to add wrap + adjust bg width: [#&#8203;75485](https://github.com/vercel/next.js/issues/75485) - fix: preserve custom Vary headers: [#&#8203;75536](https://github.com/vercel/next.js/issues/75536) - Clean-up: remove unused errorMessage param in stack frames: [#&#8203;75554](https://github.com/vercel/next.js/issues/75554) - Upgrade React from `37906d4d-20250127` to `c492f975-20250128`: [#&#8203;75434](https://github.com/vercel/next.js/issues/75434) - Fix console replaying and `React.cache` usage in `"use cache"` functions: [#&#8203;75520](https://github.com/vercel/next.js/issues/75520) - Upgrade React from `c492f975-20250128` to `a4b2d0d5-20250203`: [#&#8203;75649](https://github.com/vercel/next.js/issues/75649) - DX: Reduce devtools clutter by batching stack frame requests: [#&#8203;75557](https://github.com/vercel/next.js/issues/75557) - Add nodejs runtime support for middleware: [#&#8203;75624](https://github.com/vercel/next.js/issues/75624) - polish hydration errors: [#&#8203;75632](https://github.com/vercel/next.js/issues/75632) - feat: added support for prefetch segments when deployed: [#&#8203;75202](https://github.com/vercel/next.js/issues/75202) - \[Turbopack] await shutdown before ending pool: [#&#8203;75545](https://github.com/vercel/next.js/issues/75545) - \[Error Overlay] Comprehensive refinement: [#&#8203;75471](https://github.com/vercel/next.js/issues/75471) - Upgrade React from `a4b2d0d5-20250203` to `0a82580b-20250203`: [#&#8203;75660](https://github.com/vercel/next.js/issues/75660) - Ensure src/middleware handles correctly: [#&#8203;75702](https://github.com/vercel/next.js/issues/75702) - Unused `searchParams` in `"use cache"` page should not cause dynamic: [#&#8203;75662](https://github.com/vercel/next.js/issues/75662) - `rootParams()` is now a plain Proimse (not exotic): [#&#8203;75717](https://github.com/vercel/next.js/issues/75717) - Invalidator: don’t call invalidate at all if there’s nothing to invalidate: [#&#8203;75706](https://github.com/vercel/next.js/issues/75706) - add script for quickly updating error codes: [#&#8203;75690](https://github.com/vercel/next.js/issues/75690) - \[dev-overlay] fix: color contrast for terminal: [#&#8203;75736](https://github.com/vercel/next.js/issues/75736) - fix: enable new overlay properly when env var is set: [#&#8203;75747](https://github.com/vercel/next.js/issues/75747) - fix: work around setTimeout memory leak, improve wrappers: [#&#8203;75727](https://github.com/vercel/next.js/issues/75727) - \[DevOverlay] fix style regression: [#&#8203;75756](https://github.com/vercel/next.js/issues/75756) - \[dev-overlay] fix: proceed to get runtime error when fails to fetch original stack frames: [#&#8203;75743](https://github.com/vercel/next.js/issues/75743) - \[dev-overlay] add and apply merge class names util: [#&#8203;75758](https://github.com/vercel/next.js/issues/75758) - docs: Update README for experimental testmode: [#&#8203;75722](https://github.com/vercel/next.js/issues/75722) - fix: middleware not applied to \_next/image: [#&#8203;75729](https://github.com/vercel/next.js/issues/75729) - fix: ensure lint worker errors aren't silenced: [#&#8203;75766](https://github.com/vercel/next.js/issues/75766) - Ensure node middleware is handled with standalone: [#&#8203;75765](https://github.com/vercel/next.js/issues/75765) - Fix incorrect error count : [#&#8203;75759](https://github.com/vercel/next.js/issues/75759) - Upgrade React from `0a82580b-20250203` to `d85cf3e5-20250205`: [#&#8203;75698](https://github.com/vercel/next.js/issues/75698) - Only disable Prettier for original Turbopack source: [#&#8203;75716](https://github.com/vercel/next.js/issues/75716) - \[dev-overlay] fix: pagination focus ring was invisible: [#&#8203;75790](https://github.com/vercel/next.js/issues/75790) - test: Exclude `turbo-tasks-macro` from `test-cargo-unit`: [#&#8203;75776](https://github.com/vercel/next.js/issues/75776) - Send formatted error to frontend if sourcemapping fails: [#&#8203;75712](https://github.com/vercel/next.js/issues/75712) - Upgrade React from `d85cf3e5-20250205` to `ff628334-20250205`: [#&#8203;75757](https://github.com/vercel/next.js/issues/75757) - \[dev-overlay] fix link styling on hydration errors: [#&#8203;75792](https://github.com/vercel/next.js/issues/75792) - Only reference published `@types/react-dom` versions: [#&#8203;75606](https://github.com/vercel/next.js/issues/75606) - Dedupe cached data from `"use cache"` functions in RSC payload: [#&#8203;75786](https://github.com/vercel/next.js/issues/75786) - Allow `"use cache"` with `output: 'export'`: [#&#8203;75794](https://github.com/vercel/next.js/issues/75794) - \[metadata] new metadata insertion API and support PPR: [#&#8203;75366](https://github.com/vercel/next.js/issues/75366) - Handle invalid sourcemaps: [#&#8203;75713](https://github.com/vercel/next.js/issues/75713) - \[error overlay] fix missing html error is not displayed: [#&#8203;75831](https://github.com/vercel/next.js/issues/75831) - docs: improve JSDocs for `metadata` and `<Link>`: [#&#8203;75576](https://github.com/vercel/next.js/issues/75576) - \[error overlay] missing html tags error should be blocking: [#&#8203;75839](https://github.com/vercel/next.js/issues/75839) - Upgrade React from `ff628334-20250205` to `8759c5c8-20250207`: [#&#8203;75796](https://github.com/vercel/next.js/issues/75796) - Use TypeScript to check if a default case is required in `switch`: [#&#8203;75854](https://github.com/vercel/next.js/issues/75854) - Revert "\[metadata] new metadata insertion API and support PPR": [#&#8203;75858](https://github.com/vercel/next.js/issues/75858) - \[Error Overlay] Fix bottom stack animation: [#&#8203;75867](https://github.com/vercel/next.js/issues/75867) - \[Error Overlay] New design: [#&#8203;75679](https://github.com/vercel/next.js/issues/75679) - Upgrade React from `8759c5c8-20250207` to `93b58361-20250209`: [#&#8203;75868](https://github.com/vercel/next.js/issues/75868) - \[dev-overlay] HOTFIX: clicking nav escapes the overlay: [#&#8203;75876](https://github.com/vercel/next.js/issues/75876) - dev error overlay: async boundary for original stack frame call: [#&#8203;75718](https://github.com/vercel/next.js/issues/75718) - fix(turbopack): Always console.log the "done in" message after receiving a BUILT event: [#&#8203;75730](https://github.com/vercel/next.js/issues/75730) - Add test to verify that inner caches are excluded from Resume Data Cache: [#&#8203;75883](https://github.com/vercel/next.js/issues/75883) - Respect `no-store` request header for `"use cache"` entries in dev mode: [#&#8203;75754](https://github.com/vercel/next.js/issues/75754) - Reland "\[metadata] new metadata insertion API and support PPR [#&#8203;75366](https://github.com/vercel/next.js/issues/75366)": [#&#8203;75873](https://github.com/vercel/next.js/issues/75873) - \[metadata] do not rethrow postpone when streaming metadata is not enabled: [#&#8203;75887](https://github.com/vercel/next.js/issues/75887) - refactor(webpack-config): Pass through jsConfigPath: [#&#8203;75886](https://github.com/vercel/next.js/issues/75886) - refactor(webpack-config): Disable some options based on bundler version: [#&#8203;75888](https://github.com/vercel/next.js/issues/75888) - Improve hydration diff view: [#&#8203;75799](https://github.com/vercel/next.js/issues/75799) - \[dev-overlay] Introduce motion to surface new errors: [#&#8203;75734](https://github.com/vercel/next.js/issues/75734) - Upgrade React from `93b58361-20250209` to `cd90a4d8-20250210`: [#&#8203;75914](https://github.com/vercel/next.js/issues/75914) - \[DevOverlay]: render indicator in pages router: [#&#8203;75918](https://github.com/vercel/next.js/issues/75918) - error code should preserve after stitching: [#&#8203;75929](https://github.com/vercel/next.js/issues/75929) - \[error overlay] display different error info individually: [#&#8203;75916](https://github.com/vercel/next.js/issues/75916) - refactor: minor cleanups in webpack actions code: [#&#8203;75912](https://github.com/vercel/next.js/issues/75912) - \[DevOverlay]: fix missing Error context for build-time errors: [#&#8203;75932](https://github.com/vercel/next.js/issues/75932) - \[error overlay] align data attributes between 2 UIs: [#&#8203;75937](https://github.com/vercel/next.js/issues/75937) - fix: typos in documentation files: [#&#8203;75816](https://github.com/vercel/next.js/issues/75816) - \[error overlay] fix highlighted lines: [#&#8203;75940](https://github.com/vercel/next.js/issues/75940) - \[error overlay] hornor the original erroring order: [#&#8203;75934](https://github.com/vercel/next.js/issues/75934) - Restore `--no-mangling` CLI option for `next build`: [#&#8203;75921](https://github.com/vercel/next.js/issues/75921) - Turbopack: make tracing easier: [#&#8203;75958](https://github.com/vercel/next.js/issues/75958) - Upgrade React from `cd90a4d8-20250210` to `f83903bf-20250212`: [#&#8203;75967](https://github.com/vercel/next.js/issues/75967) - Use `compilation.{emitAsset,updateAsset}` api rather than mutating `assets` object: [#&#8203;75927](https://github.com/vercel/next.js/issues/75927) - Use resource to detect feature usage in telemetry: [#&#8203;75917](https://github.com/vercel/next.js/issues/75917) - Create unique source URLs between Client and Server in Pages dir: [#&#8203;75878](https://github.com/vercel/next.js/issues/75878) - cleanup: remove unused NEXT_RSC_ERR_\* error parsing code: [#&#8203;75982](https://github.com/vercel/next.js/issues/75982) - \[error overlay] fix infinite loop when frames are failed to fetch: [#&#8203;75988](https://github.com/vercel/next.js/issues/75988) - \[dev-overlay] fix: call stack silently fails to open editor with 204: [#&#8203;75785](https://github.com/vercel/next.js/issues/75785) - Cleanup webpack sourcemap middleware source URL handling: [#&#8203;75879](https://github.com/vercel/next.js/issues/75879) - Upgrade React from `f83903bf-20250212` to `cbbe8666-20250213`: [#&#8203;76010](https://github.com/vercel/next.js/issues/76010) - \[dev-overlay] sync style diffs with new design: [#&#8203;75949](https://github.com/vercel/next.js/issues/75949) - \[dev-overlay] update overlay toolbar icons: [#&#8203;75998](https://github.com/vercel/next.js/issues/75998) - webpack: Sourcemap externals when replayed in the browser: [#&#8203;75863](https://github.com/vercel/next.js/issues/75863) - \[DevOverlay]: enable by default: [#&#8203;75882](https://github.com/vercel/next.js/issues/75882) - \[dev-overlay] style: version info staleness click text to learn more: [#&#8203;75768](https://github.com/vercel/next.js/issues/75768) - \[ppr] Improve experimental debugging: [#&#8203;76016](https://github.com/vercel/next.js/issues/76016) - \[metadata] set bypass ua regex string for ppr routes: [#&#8203;75977](https://github.com/vercel/next.js/issues/75977) - fix: handle parsing destination with patterns in hostname: [#&#8203;75973](https://github.com/vercel/next.js/issues/75973) - Fix: Build error causes infinite loop on new dev overlay in Turbopack: [#&#8203;75984](https://github.com/vercel/next.js/issues/75984) - \[metadata] disable streaming metadata for ppr deployment: [#&#8203;75978](https://github.com/vercel/next.js/issues/75978) - \[dev-overlay] fix: hydration error style: [#&#8203;76049](https://github.com/vercel/next.js/issues/76049) - Remove `experimental.reactOwnerStack` flag: [#&#8203;76021](https://github.com/vercel/next.js/issues/76021) - \[dev-overlay] style: improve version staleness indicator version unknown: [#&#8203;76061](https://github.com/vercel/next.js/issues/76061) - \[dev-overlay] add aria to disabled docs button: [#&#8203;76055](https://github.com/vercel/next.js/issues/76055) - \[dev-overlay] fix: terminal symbols are longer than text: [#&#8203;76059](https://github.com/vercel/next.js/issues/76059) - Disallow `rootParams()` in `cache` scope: [#&#8203;75801](https://github.com/vercel/next.js/issues/75801) - Remove tracestate header from fetch cache key: [#&#8203;76041](https://github.com/vercel/next.js/issues/76041) - \[dev-overlay] remove hide dev tools shortcut: [#&#8203;76066](https://github.com/vercel/next.js/issues/76066) - \[dev-overlay] hide dev overlay when printing: [#&#8203;73489](https://github.com/vercel/next.js/issues/73489) - Create valid URLs in source map sources with Turbopack: [#&#8203;76075](https://github.com/vercel/next.js/issues/76075) - \[metadata] fix ppr deployment by not disabling ppr: [#&#8203;76087](https://github.com/vercel/next.js/issues/76087) - \[dev-overlay] add error env name label: [#&#8203;76003](https://github.com/vercel/next.js/issues/76003) - \[dev-overlay] deprecate `devIndicators` options `appIsrStatus` and `buildActivity`: [#&#8203;76067](https://github.com/vercel/next.js/issues/76067) - \[dev-overlay] deprecate `devIndicators.buildActivityPosition` and rename to `position`: [#&#8203;76069](https://github.com/vercel/next.js/issues/76069) - Fix runtime error in `writeConfigurationDefaults`: [#&#8203;76106](https://github.com/vercel/next.js/issues/76106) - \[dev-overlay] change dev indicator position by next config option: [#&#8203;76077](https://github.com/vercel/next.js/issues/76077) - perf: Do not run react compiler needlessly: [#&#8203;75676](https://github.com/vercel/next.js/issues/75676) - Handle more known protocols in stackframe locations: [#&#8203;76086](https://github.com/vercel/next.js/issues/76086) - Bump webpack to 5.98.0: [#&#8203;75847](https://github.com/vercel/next.js/issues/75847) - fix(edge): run after() if request is cancelled mid-streaming: [#&#8203;76013](https://github.com/vercel/next.js/issues/76013) - Clean module path if Fast Refresh full reload was caused by files outside project: [#&#8203;76108](https://github.com/vercel/next.js/issues/76108) - Revalidate `"use cache"` caches during on-demand revalidation: [#&#8203;76100](https://github.com/vercel/next.js/issues/76100) - Fix cache kind validation: [#&#8203;76064](https://github.com/vercel/next.js/issues/76064) - \[dev-overlay] add false option to disable dev indicator: [#&#8203;76079](https://github.com/vercel/next.js/issues/76079) - Fix on-demand revalidation with `"use cache"` in dev mode: [#&#8203;76122](https://github.com/vercel/next.js/issues/76122) - \[dev-overlay] handle ssrd nextjs internal errors in overlay: [#&#8203;76124](https://github.com/vercel/next.js/issues/76124) - \[dev-overlay] fix: overlay is located relatively low when long content: [#&#8203;76113](https://github.com/vercel/next.js/issues/76113) - \[dev-overlay] Fix off-by-one column sourcemapping in Webpack: [#&#8203;76152](https://github.com/vercel/next.js/issues/76152) - \[metadata] handle navigation API in streaming metadata: [#&#8203;76156](https://github.com/vercel/next.js/issues/76156) - \[dev-overlay] refactor to group the middleware response utils: [#&#8203;76199](https://github.com/vercel/next.js/issues/76199) - \[dev-overlay] fix geist font woff2 name: [#&#8203;76201](https://github.com/vercel/next.js/issues/76201) - \[dev-overlay] rename `readyErrors` to `runtimeErrors`: [#&#8203;76208](https://github.com/vercel/next.js/issues/76208) - \[dev-overlay] do not allow dismissing build error for dev indicator: [#&#8203;76209](https://github.com/vercel/next.js/issues/76209) - \[dev-overlay] use stop icon for hide devtools button: [#&#8203;76212](https://github.com/vercel/next.js/issues/76212) - Add basic profiling plugin for alternative bundler: [#&#8203;76030](https://github.com/vercel/next.js/issues/76030) - \[dev-overlay] font style backward compat with react 18: [#&#8203;76225](https://github.com/vercel/next.js/issues/76225) - Implement foundations for additional bundler option: [#&#8203;75981](https://github.com/vercel/next.js/issues/75981) - Remove hmr socket code from prod build: [#&#8203;76232](https://github.com/vercel/next.js/issues/76232) - fix: overlapping query and param names should not conflict: [#&#8203;76177](https://github.com/vercel/next.js/issues/76177) - Built-in app loader plugin for additional bundler: [#&#8203;76017](https://github.com/vercel/next.js/issues/76017) - Built-in flight plugin for additional bundler: [#&#8203;76014](https://github.com/vercel/next.js/issues/76014) - Built-in swc loader plugin for additional bundler - misc: remove vendored node-fetch usages: [#&#8203;75741](https://github.com/vercel/next.js/issues/75741) - Consolidate `next/link` error tests: [#&#8203;76214](https://github.com/vercel/next.js/issues/76214) - fix: NextConfig.rewrites type for fallback: [#&#8203;75784](https://github.com/vercel/next.js/issues/75784) - \[dev-overlay] use absolute font src url: [#&#8203;76229](https://github.com/vercel/next.js/issues/76229) - \[dev-overlay]: remove old CollapseIcon: [#&#8203;76239](https://github.com/vercel/next.js/issues/76239) - fix: add appDir path to middleware output path: [#&#8203;75923](https://github.com/vercel/next.js/issues/75923) - \[Turbopack] pass inner modules to chunking to match chunking types: [#&#8203;76227](https://github.com/vercel/next.js/issues/76227) - \[dev-overlay] Remove old Dev Overlay: [#&#8203;76256](https://github.com/vercel/next.js/issues/76256) - \[dev-overlay]: make open in editor button a separate click region: [#&#8203;76243](https://github.com/vercel/next.js/issues/76243) - \[dev-overlay] dead code elimination: [#&#8203;76276](https://github.com/vercel/next.js/issues/76276) - \[dev-overlay] use unique font name: [#&#8203;76230](https://github.com/vercel/next.js/issues/76230) - \[dev-overlay] align border color: [#&#8203;76288](https://github.com/vercel/next.js/issues/76288) - Add canary warning for node middleware: [#&#8203;76292](https://github.com/vercel/next.js/issues/76292) - fix: top level await in node middleware: [#&#8203;76012](https://github.com/vercel/next.js/issues/76012) - docs(errors): add failed-to-find-server-action error page: [#&#8203;75678](https://github.com/vercel/next.js/issues/75678) - Ensure middleware layer is applied for node: [#&#8203;76293](https://github.com/vercel/next.js/issues/76293) - \[metadata] fix streaming metadata triggering error boundaries: [#&#8203;76280](https://github.com/vercel/next.js/issues/76280) - \[errors]: default export error should distinguish between layout/page: [#&#8203;76294](https://github.com/vercel/next.js/issues/76294) - Remove unused nccd node-fetch: [#&#8203;76241](https://github.com/vercel/next.js/issues/76241) - \[dev-overlay] expandable error message container: [#&#8203;76297](https://github.com/vercel/next.js/issues/76297) - feat: option to disable next types plugin: [#&#8203;76300](https://github.com/vercel/next.js/issues/76300) - \[dev-overlay] pick up build error message: [#&#8203;76290](https://github.com/vercel/next.js/issues/76290) - \[dev-overlay] fix: line number handling for cursor editor: [#&#8203;76151](https://github.com/vercel/next.js/issues/76151) - \[dev-overlay] restructure dev-overlay project: [#&#8203;76291](https://github.com/vercel/next.js/issues/76291) - Upgrade React from `32b0cad8-20250213` to `662957cc-20250221`: [#&#8203;76333](https://github.com/vercel/next.js/issues/76333) - Revert null check in mountLinkInstance: [#&#8203;76289](https://github.com/vercel/next.js/issues/76289) - \[dev-overlay] Isolate overlay from user space Components: [#&#8203;76277](https://github.com/vercel/next.js/issues/76277) - \[global-error] fallback to default error when user one fails: [#&#8203;76339](https://github.com/vercel/next.js/issues/76339) - \[misc]: remove unused render worker code: [#&#8203;76345](https://github.com/vercel/next.js/issues/76345) - \[dev-overlay] do not attach hydration info to non hydration errors: [#&#8203;76349](https://github.com/vercel/next.js/issues/76349) - \[dev-overlay] adjust Next.js logo stroke color during dev builds: [#&#8203;76351](https://github.com/vercel/next.js/issues/76351) - \[dev-overlay] fix: restore the missing Cursor editor case in dev-overlay : [#&#8203;76371](https://github.com/vercel/next.js/issues/76371) - \[dev-overlay] remove the experiment config for overlay: [#&#8203;76356](https://github.com/vercel/next.js/issues/76356) - \[dev-overlay] minify css: [#&#8203;76370](https://github.com/vercel/next.js/issues/76370) - \[dev-overlay] remove unused base styles: [#&#8203;76372](https://github.com/vercel/next.js/issues/76372) - \[dev-overlay] use css var for `<a>` tag focus ring: [#&#8203;76374](https://github.com/vercel/next.js/issues/76374) - \[dev-overlay] fix: fallback to local machine's Geist Font if applicable: [#&#8203;76377](https://github.com/vercel/next.js/issues/76377) - \[dev-overlay] fix: bottom stack count: [#&#8203;76375](https://github.com/vercel/next.js/issues/76375) - \[next] use `tsconfig.build.json` for production build: [#&#8203;76373](https://github.com/vercel/next.js/issues/76373) - \[metadata] only blocking render for html bots in ppr pages: [#&#8203;76379](https://github.com/vercel/next.js/issues/76379) - \[metadata] enable streaming metadata by default: [#&#8203;76221](https://github.com/vercel/next.js/issues/76221) - \[dev-overlay] toggle overlay when clicking `N issues` section: [#&#8203;76398](https://github.com/vercel/next.js/issues/76398) - \[dev-overlay]: hiding devtools shouldn't hide errors: [#&#8203;76399](https://github.com/vercel/next.js/issues/76399) - \[dev-overlay] docs: add readme: [#&#8203;76396](https://github.com/vercel/next.js/issues/76396) - Add test to assert on current build output tree view: [#&#8203;76342](https://github.com/vercel/next.js/issues/76342) - Flight loader: use `normalModule.type` to determine module type: [#&#8203;76338](https://github.com/vercel/next.js/issues/76338) - update type for next/dynamic `loading` option to accept `ReactNode`: [#&#8203;76402](https://github.com/vercel/next.js/issues/76402) - \[dev-overlay] Link to section explaining opt-in error feedback: [#&#8203;76424](https://github.com/vercel/next.js/issues/76424) - \[dev-overlay] polish component stack mask css: [#&#8203;76434](https://github.com/vercel/next.js/issues/76434) - \[dev-overlay] Disable error feedback in UI if `NEXT_TELEMETRY_DISABLED` is set: [#&#8203;76423](https://github.com/vercel/next.js/issues/76423) - \[metadata] promote streaming metadata configs to stable: [#&#8203;76344](https://github.com/vercel/next.js/issues/76344) - \[metadata] update metadat docs for streaming metadata: [#&#8203;76282](https://github.com/vercel/next.js/issues/76282) - \[app] Send errors not handled by explicit error boundaries through `reportError`: [#&#8203;76101](https://github.com/vercel/next.js/issues/76101) - Upgrade React from `662957cc-20250221` to `25677265-20250224`: [#&#8203;76437](https://github.com/vercel/next.js/issues/76437) - \[Testing] Update middleware/next-config tests to include search params: [#&#8203;76354](https://github.com/vercel/next.js/issues/76354) - Add node middleware handling for turbopack: [#&#8203;76360](https://github.com/vercel/next.js/issues/76360) - Upgrade React from `25677265-20250224` to `22e39ea7-20250225`: [#&#8203;76481](https://github.com/vercel/next.js/issues/76481) - \[app i18n]: warn about i18n configuration deprecation in app router: [#&#8203;76346](https://github.com/vercel/next.js/issues/76346) - \[dev-overlay] style: improve error label background color contrast: [#&#8203;76490](https://github.com/vercel/next.js/issues/76490) - Fork Form implementation for Pages and App Router: [#&#8203;76498](https://github.com/vercel/next.js/issues/76498) - Webpack: handle file:// urls when finding sourcemaps: [#&#8203;76443](https://github.com/vercel/next.js/issues/76443) - Ensure middleware layer is bundled: [#&#8203;76466](https://github.com/vercel/next.js/issues/76466) - \[dev-overlay] do not force hide scrollbar: [#&#8203;76504](https://github.com/vercel/next.js/issues/76504) - \[Segment Cache] Hard nav when root layout changes: [#&#8203;76163](https://github.com/vercel/next.js/issues/76163) - \[metadata] clarify the default list behavior: [#&#8203;76450](https://github.com/vercel/next.js/issues/76450) - \[dev-overlay]: generalize ISR status functions for pages/app: [#&#8203;76457](https://github.com/vercel/next.js/issues/76457) - \[dev-overlay]: wire up ISR status for pages router: [#&#8203;76458](https://github.com/vercel/next.js/issues/76458) - \[dev-overlay]: fix inline docs to show correct info for given router: [#&#8203;76461](https://github.com/vercel/next.js/issues/76461) - \[dev-overlay] add title for the dev indicator menu items: [#&#8203;76510](https://github.com/vercel/next.js/issues/76510) - \[dev-overlay] sync suffix `N` of `--size-N` with `px` value of base font `16px`: [#&#8203;76384](https://github.com/vercel/next.js/issues/76384) - Add event for webpack plugin customization: [#&#8203;76477](https://github.com/vercel/next.js/issues/76477) - \[dev-overlay] use `rem` for sizes and `px` for spacings: [#&#8203;76385](https://github.com/vercel/next.js/issues/76385) - \[dev-overlay] hide dev indicator for server session or 1 day: [#&#8203;76430](https://github.com/vercel/next.js/issues/76430) - \[dev-overlay] customize scrollbar styling: [#&#8203;76509](https://github.com/vercel/next.js/issues/76509) - \[dev-overlay] Add indicator when sourcemapping fails: [#&#8203;76516](https://github.com/vercel/next.js/issues/76516) - refactor: clean up forked Form implementations: [#&#8203;76495](https://github.com/vercel/next.js/issues/76495) - \[dev-overlay]: fix invalid font in info panels: [#&#8203;76519](https://github.com/vercel/next.js/issues/76519) - \[dev-overlay] upgrade `storybook@8.6.0`: [#&#8203;76511](https://github.com/vercel/next.js/issues/76511) - \[dev-overlay]: add preference panel: [#&#8203;76522](https://github.com/vercel/next.js/issues/76522) - \[dev-overlay]: remove background on custom select: [#&#8203;76526](https://github.com/vercel/next.js/issues/76526) - \[dev-overlay]: tweak system icon: [#&#8203;76527](https://github.com/vercel/next.js/issues/76527) - fix: remove initial-scale=1 from viewport when set to false: [#&#8203;76397](https://github.com/vercel/next.js/issues/76397) - \[dev-overlay] control scrollbar by selected theme: [#&#8203;76553](https://github.com/vercel/next.js/issues/76553) - \[dev-overlay] misc: `Ignored-listed` -> `Ignore-listed`: [#&#8203;76554](https://github.com/vercel/next.js/issues/76554) - \[dev-overlay] add disabled backround-color for toolbar buttons: [#&#8203;76555](https://github.com/vercel/next.js/issues/76555) - \[dev-overlay]: update docs for devIndicators & outdated screenshot: [#&#8203;76463](https://github.com/vercel/next.js/issues/76463) - \[dev-overlay] improve color contrast for terminal: [#&#8203;76525](https://github.com/vercel/next.js/issues/76525) - \[dev-overlay]: use proper labels for preferences: [#&#8203;76558](https://github.com/vercel/next.js/issues/76558) - Handle duplex automatically for NextRequest: [#&#8203;76531](https://github.com/vercel/next.js/issues/76531) - \[Segment Cache] Implement scroll-to-new-page: [#&#8203;76170](https://github.com/vercel/next.js/issues/76170) - Do not pass an empty string tag into `receiveExpiredTags`: [#&#8203;76561](https://github.com/vercel/next.js/issues/76561) - \[Segment Cache] Re-prefetch links on navigation: [#&#8203;76060](https://github.com/vercel/next.js/issues/76060) - \[dev-overlay] fix: svg icon ids are not unique: [#&#8203;76566](https://github.com/vercel/next.js/issues/76566) - \[dev-overlay] change button to lowercase except leading letter: [#&#8203;76565](https://github.com/vercel/next.js/issues/76565) - Remove rewrite query params from request URL when deployed to Vercel: [#&#8203;76548](https://github.com/vercel/next.js/issues/76548) - exclude AppDevOverlayErrorBoundary from prod build: [#&#8203;76568](https://github.com/vercel/next.js/issues/76568) - \[dev-overlay] rephrase docs button title as link to related docs: [#&#8203;76571](https://github.com/vercel/next.js/issues/76571) - \[dev-overlay]: allow disabled state to be dismissable: [#&#8203;76572](https://github.com/vercel/next.js/issues/76572) ##### Example Changes - chore(docs): add missing `search: ''` on `remotePatterns`: [#&#8203;73925](https://github.com/vercel/next.js/issues/73925) - examples: remove `with-tailwindcss` example: [#&#8203;73919](https://github.com/vercel/next.js/issues/73919) - examples: update `next-config-js` document path: [#&#8203;73774](https://github.com/vercel/next.js/issues/73774) - examples: convert [@&#8203;next/third-parties](https://github.com/next/third-parties) examples from JS to TS: [#&#8203;73602](https://github.com/vercel/next.js/issues/73602) - updated with-orbit-components example to utilize the App Router.: [#&#8203;73266](https://github.com/vercel/next.js/issues/73266) - examples: update `with-styled-components` README: [#&#8203;73729](https://github.com/vercel/next.js/issues/73729) - examples: update `with-orbit-components` README: [#&#8203;74011](https://github.com/vercel/next.js/issues/74011) - examples: update `with-mdx-remote` example to utilize the App Router: [#&#8203;74067](https://github.com/vercel/next.js/issues/74067) - Removed duplicated cn function declaration from lib dir: [#&#8203;74065](https://github.com/vercel/next.js/issues/74065) - Fix linting between lint-check and lint-staged: [#&#8203;74503](https://github.com/vercel/next.js/issues/74503) - chore(examples): update React in reproduction templates to stable 19: [#&#8203;74499](https://github.com/vercel/next.js/issues/74499) - chore(examples): updated the example of with-react-jss to utlize the App router: [#&#8203;74440](https://github.com/vercel/next.js/issues/74440) - chore(examples): updated the example of with-styled-components-rtl to utlize the App router: [#&#8203;74180](https://github.com/vercel/next.js/issues/74180) - examples: remove `app-dir` and `with` prefix in the `mdx` directory name: [#&#8203;73458](https://github.com/vercel/next.js/issues/73458) - examples: add StackBlitz preview to README.md: [#&#8203;73546](https://github.com/vercel/next.js/issues/73546) - examples: improve DX while copying command to create new project: [#&#8203;73463](https://github.com/vercel/next.js/issues/73463) - examples: fix `with-zones` repository name in the deploy link: [#&#8203;74852](https://github.com/vercel/next.js/issues/74852) - with-mux-video: recommend environment variables instead of secrets: [#&#8203;74879](https://github.com/vercel/next.js/issues/74879) - with-mux-video: updates for next 15 compat: [#&#8203;74881](https://github.com/vercel/next.js/issues/74881) - Update readme for with-mux-video: [#&#8203;74966](https://github.com/vercel/next.js/issues/74966) - docs: recommend webp over avif: [#&#8203;75966](https://github.com/vercel/next.js/issues/75966) - examples: fix search usage: [#&#8203;75972](https://github.com/vercel/next.js/issues/75972) - example: add next config to hello-world app: [#&#8203;76022](https://github.com/vercel/next.js/issues/76022) - Fix cms-plasmic example: [#&#8203;75750](https://github.com/vercel/next.js/issues/75750) - examples: Fix prettier issue: [#&#8203;76027](https://github.com/vercel/next.js/issues/76027) - Update with urql example: [#&#8203;76485](https://github.com/vercel/next.js/issues/76485) - Updated remove-console example to utilize the app router.: [#&#8203;76543](https://github.com/vercel/next.js/issues/76543) - Fix createclient: [#&#8203;76567](https://github.com/vercel/next.js/issues/76567) ##### Misc Changes - Add NEXT_PRIVATE_SKIP_CANARY_CHECK env for bench job: [#&#8203;73763](https://github.com/vercel/next.js/issues/73763) - refactor(turbopack): Add `NonLocalValue` derives to types deriving TraceRawVcs: [#&#8203;73714](https://github.com/vercel/next.js/issues/73714) - Turbopack: support module workers: [#&#8203;72614](https://github.com/vercel/next.js/issues/72614) - docs: add versions to connection API: [#&#8203;73798](https://github.com/vercel/next.js/issues/73798) - Increase test retries from 1 to 2: [#&#8203;73795](https://github.com/vercel/next.js/issues/73795) - refactor(turbo-tasks): Implement `NonLocalValue` for *all* `ResolvedVc`s and `OperationVc`s: [#&#8203;73764](https://github.com/vercel/next.js/issues/73764) - docs: supporting after for providers: [#&#8203;73743](https://github.com/vercel/next.js/issues/73743) - \[E2E] Fix config file conflict: [#&#8203;73818](https://github.com/vercel/next.js/issues/73818) - feat: Update `swc_core` to `v9.0.0`: [#&#8203;73696](https://github.com/vercel/next.js/issues/73696) - Turbopack: resolve some to-resolved-in-loop: [#&#8203;73794](https://github.com/vercel/next.js/issues/73794) - Bump Rust version: [#&#8203;73169](https://github.com/vercel/next.js/issues/73169) - fix(turbopack): Enable `explicit_resource_management` transform: [#&#8203;73802](https://github.com/vercel/next.js/issues/73802) - docs: fix code block extension on `after` and `error handling`: [#&#8203;73844](https://github.com/vercel/next.js/issues/73844) - Revert "feat: Update `swc_core` to `v9.0.0`": [#&#8203;73866](https://github.com/vercel/next.js/issues/73866) - refactor(turbo-tasks): Derive NonLocalValue by default in value/value_trait macros: [#&#8203;73766](https://github.com/vercel/next.js/issues/73766) - refactor(turbo-tasks): Implement `NonLocalValue` for `State<T>` where `T: NonLocalValue`: [#&#8203;73770](https://github.com/vercel/next.js/issues/73770) - chore(github): fix typo in close-issue-message: [#&#8203;73878](https://github.com/vercel/next.js/issues/73878) - Docs: Remove `unstable_expirePath` and `unstable_expireTag` docs: [#&#8203;73856](https://github.com/vercel/next.js/issues/73856) - Docs: Create `Examples` section: [#&#8203;73858](https://github.com/vercel/next.js/issues/73858) - Docs clean up: Merge and delete content from `routing/index.mdx`: [#&#8203;73859](https://github.com/vercel/next.js/issues/73859) - Docs clean up: delete `defining-routes.mdx` and `pages.mdx`: [#&#8203;73863](https://github.com/vercel/next.js/issues/73863) - Turbopack: store ChunkingType in single-module-graph: [#&#8203;73837](https://github.com/vercel/next.js/issues/73837) - chore(turbopack-browser): Pedantically fix minor typos in comments about TraitRef: [#&#8203;73772](https://github.com/vercel/next.js/issues/73772) - chore(docs): update version history of `next/image`: [#&#8203;73923](https://github.com/vercel/next.js/issues/73923) - docs: update `WebVitals` component: [#&#8203;73869](https://github.com/vercel/next.js/issues/73869) - Correct typo in Update 04-images-and-fonts.mdx: [#&#8203;73790](https://github.com/vercel/next.js/issues/73790) - chore(github): add issue_wrong_template workflow: [#&#8203;73882](https://github.com/vercel/next.js/issues/73882) - docs(mdx): add a dynamic imports section for App Router: [#&#8203;73466](https://github.com/vercel/next.js/issues/73466) - chore: increase test sharding: [#&#8203;73852](https://github.com/vercel/next.js/issues/73852) - fix(turbo): sassOptions `silenceDeprecations` was not overwritten with user options: [#&#8203;73937](https://github.com/vercel/next.js/issues/73937) - Docs: fix typo in `examples` page: [#&#8203;73907](https://github.com/vercel/next.js/issues/73907) - docs: add `next.config.ts` code switcher to Redirecting docs: [#&#8203;73848](https://github.com/vercel/next.js/issues/73848) - docs: add tsx switcher to `linking and navigation`: [#&#8203;73846](https://github.com/vercel/next.js/issues/73846) - docs: update file structure on contribution guide: [#&#8203;73778](https://github.com/vercel/next.js/issues/73778) - docs: add `next-intlayer` into i18n solution list: [#&#8203;73750](https://github.com/vercel/next.js/issues/73750) - docs: minor typos and fixes: [#&#8203;73955](https://github.com/vercel/next.js/issues/73955) - docs: fix sitemap changelog table formatting: [#&#8203;73760](https://github.com/vercel/next.js/issues/73760) - fix(docs): vitest manual setup: [#&#8203;73754](https://github.com/vercel/next.js/issues/73754) - docs: fix file extension and missing export: [#&#8203;73842](https://github.com/vercel/next.js/issues/73842) - docs: update `tailwind.config.ts` to use `satisfies` operator: [#&#8203;73924](https://github.com/vercel/next.js/issues/73924) - docs: Fix MDX syntax error: [#&#8203;73970](https://github.com/vercel/next.js/issues/73970) - chore(next-custom-transforms): Mark fixture outputs as generated: [#&#8203;73918](https://github.com/vercel/next.js/issues/73918) - docs(use-cache): add missing jsx switcher example and types: [#&#8203;73473](https://github.com/vercel/next.js/issues/73473) - docs(internalization): add typescript examples and fix params as promise: [#&#8203;73240](https://github.com/vercel/next.js/issues/73240) - docs: add missing quotation marks in exmaple code: [#&#8203;73720](https://github.com/vercel/next.js/issues/73720) - chore(turbo-tasks-macros): Remove use of associated items for NativeFunction construction: [#&#8203;73929](https://github.com/vercel/next.js/issues/73929) - refactor(turbo-tasks-macros): Strip (already hidden) doc attributes from inline function signatures: [#&#8203;73931](https://github.com/vercel/next.js/issues/73931) - chore(github): fix wrong-issue-template body: [#&#8203;74003](https://github.com/vercel/next.js/issues/74003) - chore(turbopack): Fix build error when CI environment variable is not supplied: [#&#8203;74041](https://github.com/vercel/next.js/issues/74041) - Make `ChunkItem`s reference only `OutputAssets`: [#&#8203;73824](https://github.com/vercel/next.js/issues/73824) - Install Vercel CLI at start of E2E deploy tests: [#&#8203;74047](https://github.com/vercel/next.js/issues/74047) - Fixed small typo in the doc: [#&#8203;73971](https://github.com/vercel/next.js/issues/73971) - docs: fixed regex for parsing base64String, and updated subscribeToPush function.: [#&#8203;73940](https://github.com/vercel/next.js/issues/73940) - exclude some modules from auto-import: [#&#8203;74020](https://github.com/vercel/next.js/issues/74020) - \[Docs]: Clarify redirects in next.config to negate potential infinite redirects: [#&#8203;74019](https://github.com/vercel/next.js/issues/74019) - Update Turbopack development test manifest: [#&#8203;74013](https://github.com/vercel/next.js/issues/74013) - Turbopack: use old client reference collection implementation: [#&#8203;74029](https://github.com/vercel/next.js/issues/74029) - Create Jest project for Turbopack: [#&#8203;73769](https://github.com/vercel/next.js/issues/73769) - \[Turbopack] move git version info to top-level crate to fix caching issues: [#&#8203;74015](https://github.com/vercel/next.js/issues/74015) - docs(redirect): add typescript example and fix params as promise: [#&#8203;73963](https://github.com/vercel/next.js/issues/73963) - docs: Fix filename for Turbopack traces: [#&#8203;74066](https://github.com/vercel/next.js/issues/74066) - Fix flakey deploy test assertion: [#&#8203;74060](https://github.com/vercel/next.js/issues/74060) - Specify PPR test dimension via environment variable only: [#&#8203;74031](https://github.com/vercel/next.js/issues/74031) - Name default Jest project according to used env variables: [#&#8203;74084](https://github.com/vercel/next.js/issues/74084) - test: assert that app exited without signal: [#&#8203;74087](https://github.com/vercel/next.js/issues/74087) - sync-react: Handle version bumps across SemVer minors and release channels: [#&#8203;74091](https://github.com/vercel/next.js/issues/74091) - Turbopack: change COMMON_CHUNKING_TYPE: [#&#8203;74080](https://github.com/vercel/next.js/issues/74080) - Turbopack: only inherit visited modules from parent layouts: [#&#8203;74072](https://github.com/vercel/next.js/issues/74072) - fix: improve types in turbopack runtime: [#&#8203;74119](https://github.com/vercel/next.js/issues/74119) - Fix merge conflicts: [#&#8203;74157](https://github.com/vercel/next.js/issues/74157) - refactor(turbopack/next-core): Migrate app_page_loader_tree structs to ResolvedVc: [#&#8203;74114](https://github.com/vercel/next.js/issues/74114) - refactor(turbo-tasks): Remove public OperationVc constructor, introduce a macro annotation for creating OperationVc types: [#&#8203;72871](https://github.com/vercel/next.js/issues/72871) - refactor(turbo-tasks): Make State require OperationValue: [#&#8203;73876](https://github.com/vercel/next.js/issues/73876) - chore(turbopack): Remove or improve a few uses of `.to_resolved().await` inside a loop: [#&#8203;74112](https://github.com/vercel/next.js/issues/74112) - refactor(turbopack): Rewrite CollectiblesSource callsites to use OperationVc (part 1/3): [#&#8203;74051](https://github.com/vercel/next.js/issues/74051) - chore(turbopack): Delete to-resolved-in-loop lint (too low signal): [#&#8203;74113](https://github.com/vercel/next.js/issues/74113) - Allow usage of `this` and `arguments` in nested function expression: [#&#8203;74179](https://github.com/vercel/next.js/issues/74179) - docs: update ISR self-hosting example code: [#&#8203;74211](https://github.com/vercel/next.js/issues/74211) - ci: use consistent playwright-chromium version: [#&#8203;74251](https://github.com/vercel/next.js/issues/74251) - Fixed typo in documentation: [#&#8203;74254](https://github.com/vercel/next.js/issues/74254) - docs: fix typo in self-host after() details: [#&#8203;74243](https://github.com/vercel/next.js/issues/74243) - chore(github): update comments stale period: [#&#8203;74291](https://github.com/vercel/next.js/issues/74291) - Fix typo in generateViewport docs: [#&#8203;74288](https://github.com/vercel/next.js/issues/74288) - docs: remove catch-all for opengraph-image: [#&#8203;74338](https://github.com/vercel/next.js/issues/74338) - docs(generate-static-params): add typescript example and missing jsx switcher: [#&#8203;73962](https://github.com/vercel/next.js/issues/73962) - docs(fetching-data-and-streaming): add missing types to example: [#&#8203;74081](https://github.com/vercel/next.js/issues/74081) - docs(use-cache): add missing `switcher` code blocks and types in examples: [#&#8203;74083](https://github.com/vercel/next.js/issues/74083) - refactor(next-core): Remove local annotations from structs in next-core/src/app_structure.rs: [#&#8203;74200](https://github.com/vercel/next.js/issues/74200) - test: add missing await for hydration test: [#&#8203;74542](https://github.com/vercel/next.js/issues/74542) - Getting Started Docs: Add `Mutating Data` page: [#&#8203;74018](https://github.com/vercel/next.js/issues/74018) - Getting Started docs: Add `Error Handling` page: [#&#8203;74069](https://github.com/vercel/next.js/issues/74069) - test: update test for async client component with snapshot: [#&#8203;74550](https://github.com/vercel/next.js/issues/74550) - test utils: Include origin of failed `browser.*` in stack: [#&#8203;74553](https://github.com/vercel/next.js/issues/74553) - fix react being incorrectly mentioned as extending fetch API: [#&#8203;74278](https://github.com/vercel/next.js/issues/74278) - docs: pin react version to 18 in Next.js 14 upgrade guide: [#&#8203;74222](https://github.com/vercel/next.js/issues/74222) - chore(github): update issue_stale token to release bot token: [#&#8203;74575](https://github.com/vercel/next.js/issues/74575) - chore(ci): Ensure all 6 shards are used equally in deploy tests: [#&#8203;74574](https://github.com/vercel/next.js/issues/74574) - fix: force module format for virtual client-proxy file: [#&#8203;74162](https://github.com/vercel/next.js/issues/74162) - \[Turbopack] fix shadow-rs build caching: [#&#8203;74579](https://github.com/vercel/next.js/issues/74579) - Relocate `SingleModuleGraph` to `turbopack-core`: [#&#8203;74571](https://github.com/vercel/next.js/issues/74571) - misc: add `.stories.tsx` to vscode file nesting: [#&#8203;74593](https://github.com/vercel/next.js/issues/74593) - ci(eslint): remove unecessary react/self-closing-comp: [#&#8203;74120](https://github.com/vercel/next.js/issues/74120) - docs(images): update distinction between priority and fetchPriority: [#&#8203;74650](https://github.com/vercel/next.js/issues/74650) - docs: SPAs: [#&#8203;74605](https://github.com/vercel/next.js/issues/74605) - docs: fix typo: [#&#8203;74657](https://github.com/vercel/next.js/issues/74657) - Use prefer offline flag for CI: [#&#8203;74663](https://github.com/vercel/next.js/issues/74663) - perf(rcstr): Support inline string: [#&#8203;74482](https://github.com/vercel/next.js/issues/74482) - refactor(turbopack-ecmascript) Use ResolvedVc in EsmExport type: [#&#8203;74508](https://github.com/vercel/next.js/issues/74508) - test: assert the logs has updated after revaluate js value: [#&#8203;74686](https://github.com/vercel/next.js/issues/74686) - Recommend styled-components VSCode extension to get CSS autocomplete in Dev Overlay: [#&#8203;74688](https://github.com/vercel/next.js/issues/74688) - fix(turbopack): Stop analyzer if IIFE is recursive: [#&#8203;74628](https://github.com/vercel/next.js/issues/74628) - refactor(turbo-tasks): Add NonLocalValue marker trait implementation for TransientState: [#&#8203;74509](https://github.com/vercel/next.js/issues/74509) - build(scripts/pack-next): Add support for compressing debuginfo with zlib: [#&#8203;74662](https://github.com/vercel/next.js/issues/74662) - refactor(turbopack-core): Use ResolvedVc in IntrospectableChildren: [#&#8203;74510](https://github.com/vercel/next.js/issues/74510) - refactor(turbopack-core): Use ResolvedVc in ProcessResult and ModuleResolveResultItem: [#&#8203;74511](https://github.com/vercel/next.js/issues/74511) - Update lightningcss: [#&#8203;74695](https://github.com/vercel/next.js/issues/74695) - refactor(turbopack-core): Use ResolvedVc for IntrospectableModule and IntrospectableSource: [#&#8203;74512](https://github.com/vercel/next.js/issues/74512) - Turbopack: add flag to switch between envs: [#&#8203;74135](https://github.com/vercel/next.js/issues/74135) - Upgrade Turborepo to v2.3.3: [#&#8203;74736](https://github.com/vercel/next.js/issues/74736) - build: Update `swc_core` to `v10.1.0`: [#&#8203;74580](https://github.com/vercel/next.js/issues/74580) - Improve memory usage of the new backend: [#&#8203;74740](https://github.com/vercel/next.js/issues/74740) - test: add feature of overriding files: [#&#8203;74716](https://github.com/vercel/next.js/issues/74716) - Update 09-error-handling.mdx: [#&#8203;74656](https://github.com/vercel/next.js/issues/74656) - misc: add `.cursorignore`: [#&#8203;74763](https://github.com/vercel/next.js/issues/74763) - chore(github): update how we handle stale issues: [#&#8203;73488](https://github.com/vercel/next.js/issues/73488) - chore(github): ignore PRs in for stale issue bot: [#&#8203;74767](https://github.com/vercel/next.js/issues/74767) - Turbopack chunking: use ChunkableModules in `chunk_content`, not ChunkItems: [#&#8203;74040](https://github.com/vercel/next.js/issues/74040) - chore(turbopack): Delete some dead code that was using unresolved Vcs: [#&#8203;74705](https://github.com/vercel/next.js/issues/74705) - refactor(turbopack-core): Remove remaining "local" value type opt-outs in turbopack-core: [#&#8203;74706](https://github.com/vercel/next.js/issues/74706) - refactor(turbopack-dev-server): Remove unresolved Vc from DevHtmlEntry, use a named struct: [#&#8203;74707](https://github.com/vercel/next.js/issues/74707) - Update incorrect comment: [#&#8203;74687](https://github.com/vercel/next.js/issues/74687) - Typo in nextjs-compiler.mdx: [#&#8203;74645](https://github.com/vercel/next.js/issues/74645) - Fix small bug in getting started docs: [#&#8203;74744](https://github.com/vercel/next.js/issues/74744) - docs update: Remove public access modifier from resetRequestCache method in CacheHandler class, it's not available in js file (only in typescript): [#&#8203;74788](https://github.com/vercel/next.js/issues/74788) - docs: unstable_cache clarify usage: [#&#8203;74802](https://github.com/vercel/next.js/issues/74802) - fix: unauthorized.mdx: [#&#8203;74799](https://github.com/vercel/next.js/issues/74799) - \[Turbopack] make the single module graph a root task: [#&#8203;74778](https://github.com/vercel/next.js/issues/74778) - docs: mark app router dynamic example as client component: [#&#8203;74806](https://github.com/vercel/next.js/issues/74806) - docs: disclaimer for only canary version available for ppr: [#&#8203;74813](https://github.com/vercel/next.js/issues/74813) - refactor(turbopack-dev-server): Use ResolvedVc/NonLocalValue in RewriteType, remove all "local" opt-outs from structs: [#&#8203;74708](https://github.com/vercel/next.js/issues/74708) - refactor(turbopack-ecmascript): Use ResolvedVc in CodeGen type: [#&#8203;74709](https://github.com/vercel/next.js/issues/74709) - refactor(turbopack/next-core): Use ResolvedVc in VisitClientReferenceNodeState: [#&#8203;74710](https://github.com/vercel/next.js/issues/74710) - refactor(turbopack-core): Use ResolvedVc in ContextCondition: [#&#8203;74711](https://github.com/vercel/next.js/issues/74711) - refactor(turbopack/next-core): Use ResolvedVc in PackagesGlobs: [#&#8203;74712](https://github.com/vercel/next.js/issues/74712) - docs: mention special case for trailing slash: [#&#8203;74839](https://github.com/vercel/next.js/issues/74839) - refactor(turbopack): Remove last known (non-test) usages of unresolved vcs in turbo_tasks::value (!!!): [#&#8203;74713](https://github.com/vercel/next.js/issues/74713) - docs: fix typos in 08-mutating-data.mdx: [#&#8203;74856](https://github.com/vercel/next.js/issues/74856) - \[Turbopack] add count method to storage: [#&#8203;74830](https://github.com/vercel/next.js/issues/74830) - \[Turbopack] add tracing to task execution: [#&#8203;74770](https://github.com/vercel/next.js/issues/74770) - \[Turbopack] improve task aggregation update: [#&#8203;74771](https://github.com/vercel/next.js/issues/74771) - \[Turbopack] add active_counter to keep tasks active: [#&#8203;74772](https://github.com/vercel/next.js/issues/74772) - Update CI config for Windows runner: [#&#8203;74850](https://github.com/vercel/next.js/issues/74850) - fix(turbopack): Fix tree shaking with `import * as R`: [#&#8203;74725](https://github.com/vercel/next.js/issues/74725) - ci: ensure fnm is installed in build_reusable: [#&#8203;74891](https://github.com/vercel/next.js/issues/74891) - feat(turbopack): Add a compile-time feature to turbopack to enable tokio-console support: [#&#8203;74675](https://github.com/vercel/next.js/issues/74675) - \[Turbopack] fix task optimization by removing children count: [#&#8203;74907](https://github.com/vercel/next.js/issues/74907) - fix(turbopack-swc-utils): Don't panic if issues aren't emitted, use `#[must_use]` annotation: [#&#8203;74906](https://github.com/vercel/next.js/issues/74906) - Create synchronous snapshots of recursive AvailableModuleInfo struct: [#&#8203;74894](https://github.com/vercel/next.js/issues/74894) - fix persisent caching restore bug: [#&#8203;74917](https://github.com/vercel/next.js/issues/74917) - Fix missing `await` of `params` when metadata with an image file pt2: [#&#8203;74193](https://github.com/vercel/next.js/issues/74193) - Turbopack: capture all references in module graph: [#&#8203;74873](https://github.com/vercel/next.js/issues/74873) - Add reference library that supports React Server and uses React Compiler: [#&#8203;74923](https://github.com/vercel/next.js/issues/74923) - \[Turbopack] refactor to pass ModuleGraph to chunk_group: [#&#8203;74937](https://github.com/vercel/next.js/issues/74937) - \[Turbopack] fix unemit collectible: [#&#8203;74932](https://github.com/vercel/next.js/issues/74932) - refactor(turbo-tasks): Convert local Vcs to non-local Vcs when returning from task functions: [#&#8203;74714](https://github.com/vercel/next.js/issues/74714) - perf(turbo-tasks): Add a synchronous try_sidecast method to ResolvedVc: [#&#8203;74844](https://github.com/vercel/next.js/issues/74844) - perf(turbopack): Reduce size of `ConstantValue`: [#&#8203;74965](https://github.com/vercel/next.js/issues/74965) - Turbopack: singular EcmascriptClientReferenceModule: [#&#8203;74946](https://github.com/vercel/next.js/issues/74946) - refactor(turbopack): Merge `Atom` and `JsWord` variant of `ConstantString`: [#&#8203;74967](https://github.com/vercel/next.js/issues/74967) - Turbopack: add server actions loader to module graph: [#&#8203;74951](https://github.com/vercel/next.js/issues/74951) - perf(turbopack): Box `ConstantValue::Regex`: [#&#8203;74968](https://github.com/vercel/next.js/issues/74968) - perf(turbopack): Reduce size of `Effect`: [#&#8203;74969](https://github.com/vercel/next.js/issues/74969) - test: temporarily disable after deploy test: [#&#8203;74989](https://github.com/vercel/next.js/issues/74989) - test: add turbopack hmr flaky test: [#&#8203;74995](https://github.com/vercel/next.js/issues/74995) - Turbopack error logging: check NEXT_TEST_CI to use verbose behavior: [#&#8203;75001](https://github.com/vercel/next.js/issues/75001) - Turbopack: compute chunk group info: [#&#8203;74947](https://github.com/vercel/next.js/issues/74947) - build: Update `swc_core` to `v10.2.5`: [#&#8203;75002](https://github.com/vercel/next.js/issues/75002) - Re-enable app-dir logging test: [#&#8203;75003](https://github.com/vercel/next.js/issues/75003) - chore(github): use Issue Types: [#&#8203;75006](https://github.com/vercel/next.js/issues/75006) - chore(github): remove documentation label from area dropdown: [#&#8203;75008](https://github.com/vercel/next.js/issues/75008) - refactor(turbopack/next-api): Make VcArc use OperationVc: [#&#8203;74479](https://github.com/vercel/next.js/issues/74479) - Add `next-custom-transforms` tests to verify source maps: [#&#8203;75005](https://github.com/vercel/next.js/issues/75005) - build: Update `swc_core` to `v10.3.0`: [#&#8203;75018](https://github.com/vercel/next.js/issues/75018) - put dirty task tracing behind a feature flag: [#&#8203;75022](https://github.com/vercel/next.js/issues/75022) - Turbopack: fix layout segment optimization: [#&#8203;75026](https://github.com/vercel/next.js/issues/75026) - fix layout segment optimization: [#&#8203;75035](https://github.com/vercel/next.js/issues/75035) - Turbopack: don't search for layout segments in routes: [#&#8203;73847](https://github.com/vercel/next.js/issues/73847) - Turbopack: resolve arguments to `EsmAssetReference::new`: [#&#8203;75040](https://github.com/vercel/next.js/issues/75040) - perf(turbo-tasks): Optionally schedule ResolveNative/ResolveTrait tasks as local tasks: [#&#8203;69126](https://github.com/vercel/next.js/issues/69126) - hopefully fix infinite recursion in optimize: [#&#8203;75043](https://github.com/vercel/next.js/issues/75043) - \[Turbopack] implement chunking based on the module graph: [#&#8203;74979](https://github.com/vercel/next.js/issues/74979) - \[Turbopack] avoid crashing on e.g. .DS_Store: [#&#8203;75050](https://github.com/vercel/next.js/issues/75050) - perf(turbo-tasks): Use the type information we already have for all ResolvedVc casts, expose synchronous versions of functions: [#&#8203;75055](https://github.com/vercel/next.js/issues/75055) - docs: update Next.js 15 versions in upgrade guide: [#&#8203;74960](https://github.com/vercel/next.js/issues/74960) - \[Turbopack] Production Chunking: [#&#8203;75010](https://github.com/vercel/next.js/issues/75010) - Include CI runner labels in Turborepo hashes: [#&#8203;75099](https://github.com/vercel/next.js/issues/75099) - \[Turbopack] try to avoid too small chunks size when optimizing for production: [#&#8203;75048](https://github.com/vercel/next.js/issues/75048) - perf(turbopack): Reduce size of `EffectArg`: [#&#8203;74973](https://github.com/vercel/next.js/issues/74973) - build: Update `swc_core` to `v10.5.0`: [#&#8203;75098](https://github.com/vercel/next.js/issues/75098) - perf(turbopack): Use `u32` for the total node count: [#&#8203;75100](https://github.com/vercel/next.js/issues/75100) - test: add dynamic api usage test case for streaming metadata: [#&#8203;75109](https://github.com/vercel/next.js/issues/75109) - Turbopack: optimize NftJsonAsset: [#&#8203;75105](https://github.com/vercel/next.js/issues/75105) - \[Turbopack] Low hanging fixes and improvement on module graph: [#&#8203;75106](https://github.com/vercel/next.js/issues/75106) - Turbopack: don't create span for parallel chunking type: [#&#8203;75094](https://github.com/vercel/next.js/issues/75094) - refactor(turbopack): Only perform strongly consistent reads/resolves on VcOperation: [#&#8203;75016](https://github.com/vercel/next.js/issues/75016) - fix: remove unnecessary parentheses in draft mode API: [#&#8203;75153](https://github.com/vercel/next.js/issues/75153) - perf(turbo-tasks): Turn on `local_resolution` feature by default: [#&#8203;75051](https://github.com/vercel/next.js/issues/75051) - \[Turbopack] allocation improvements for SingleModuleGraph: [#&#8203;75145](https://github.com/vercel/next.js/issues/75145) - \[Turbopack] pass sourceMap flag to webpack loaders and postcss: [#&#8203;75144](https://github.com/vercel/next.js/issues/75144) - Update 06-data-fetching-and-streaming.mdx (Removed duplicate word): [#&#8203;74810](https://github.com/vercel/next.js/issues/74810) - add test case for intercepting route + catchall + generateStaticParams: [#&#8203;75167](https://github.com/vercel/next.js/issues/75167) - \[Turbopack] remove verbose new backend tracing: [#&#8203;75165](https://github.com/vercel/next.js/issues/75165) - optimize read matches to reduce FileSystemPath calls: [#&#8203;75164](https://github.com/vercel/next.js/issues/75164) - chore(turbo-tasks): Remove the ability to opt-out of NonLocalValue for VcValueType and VcValueTrait: [#&#8203;75053](https://github.com/vercel/next.js/issues/75053) - chore(turbopack): Mark `ResolvedVc::resolve` as deprecated to prevent resolving an already-resolved ResolvedVc: [#&#8203;75168](https://github.com/vercel/next.js/issues/75168) - Turbopack: don't generate CSS for Node.js: [#&#8203;75117](https://github.com/vercel/next.js/issues/75117) - chore(tests): Remove linguist-generated git attribute from test snapshot data/fixtures: [#&#8203;75194](https://github.com/vercel/next.js/issues/75194) - chore(github): remove Developer Experience area: [#&#8203;75198](https://github.com/vercel/next.js/issues/75198) - \[Turbopack] fix invalidation and counting with collectibles: [#&#8203;75195](https://github.com/vercel/next.js/issues/75195) - chore(github): add CSS area/label: [#&#8203;75201](https://github.com/vercel/next.js/issues/75201) - Remove `endpoint.write_to_disk()` in favor of standardized `endpoint.output()`: [#&#8203;75059](https://github.com/vercel/next.js/issues/75059) - perf(turbopack): Use `Cow::into_owned` instead of `.to_string()`: [#&#8203;75216](https://github.com/vercel/next.js/issues/75216) - \[Turbopack] Memory improvements: [#&#8203;75210](https://github.com/vercel/next.js/issues/75210) - docs: Update `robots` for `generateMetadata` spec: [#&#8203;75229](https://github.com/vercel/next.js/issues/75229) - refactor(turbo-tasks): Use Return Position Impl Traits (RPIT) to reimplement GraphTraversal: [#&#8203;74896](https://github.com/vercel/next.js/issues/74896) - chore(turbo-tasks): Delete `non_local_return` support from `#[turbo_tasks::function]`: [#&#8203;75209](https://github.com/vercel/next.js/issues/75209) - perf(turbopack): Update SWC plugins (`styled-jsx`, `emotion`): [#&#8203;75236](https://github.com/vercel/next.js/issues/75236) - refactor(turbopack): Remove `ReadRawVcFuture.turbo_task`: [#&#8203;75217](https://github.com/vercel/next.js/issues/75217) - test: Move `should not cause error when removing loading.js` to flaky manifest: [#&#8203;75239](https://github.com/vercel/next.js/issues/75239) - test: skip dev/deploy testing for `test/e2e/app-dir/segment-cache/revalidation/segment-cache-revalidation.test.ts`: [#&#8203;75249](https://github.com/vercel/next.js/issues/75249) - misc: add Rauno to CI approved: [#&#8203;75269](https://github.com/vercel/next.js/issues/75269) - \[Turbopack] include async loaders in chunking instead of separating it: [#&#8203;75052](https://github.com/vercel/next.js/issues/75052) - perf(turbopack): Use `Pass` API for `styled-jsx` SWC plugin: [#&#8203;75271](https://github.com/vercel/next.js/issues/75271) - perf(turbopack): Reduce needless allocations for SWC plugins: [#&#8203;75275](https://github.com/vercel/next.js/issues/75275) - Add test fixtures demonstrating export statement validation bugs: [#&#8203;75277](https://github.com/vercel/next.js/issues/75277) - Fix export statement validations for app router pages: [#&#8203;75278](https://github.com/vercel/next.js/issues/75278) - change turbopack-cli to new backend: [#&#8203;75242](https://github.com/vercel/next.js/issues/75242) - chore(turbo-tasks): Remove argument resolution from backends, only allow local-task-based argument resolution: [#&#8203;75214](https://github.com/vercel/next.js/issues/75214) - refactor(turbo-tasks): Merge dynamic_call/native_call with dynamic_this_call/native_this_call: [#&#8203;75253](https://github.com/vercel/next.js/issues/75253) - chore(turbo-tasks): Clean up consistency/untracked APIs around local outputs and cells: [#&#8203;75171](https://github.com/vercel/next.js/issues/75171) - fix(turbo-tasks): Implement `is_transient` on `OperationVc`: [#&#8203;75291](https://github.com/vercel/next.js/issues/75291) - \[Turbopack] box InnerStorage to avoid overallocation: [#&#8203;75287](https://github.com/vercel/next.js/issues/75287) - \[Turbopack] Inline commonly used storages: [#&#8203;75284](https://github.com/vercel/next.js/issues/75284) - perf(turbo-tasks): Add a 'local' option to `#[turbo_tasks::function(..)]`: [#&#8203;75259](https://github.com/vercel/next.js/issues/75259) - \[Turbopack] avoid some allocations: [#&#8203;75285](https://github.com/vercel/next.js/issues/75285) - chore(turbo-tasks): Loosen some type bounds on ShrinkToFit for IndexMap, update indexmap crate: [#&#8203;75193](https://github.com/vercel/next.js/issues/75193) - perf: Update SWC plugins: [#&#8203;75324](https://github.com/vercel/next.js/issues/75324) - Getting Started docs: Consistent casing and naming: [#&#8203;74637](https://github.com/vercel/next.js/issues/74637) - Turbopack: CLI / perf improvements: [#&#8203;75373](https://github.com/vercel/next.js/issues/75373) - docs: fixed typo to auth.ts: [#&#8203;75345](https://github.com/vercel/next.js/issues/75345) - fix(create-next-app): use web standard error check for URL: [#&#8203;71473](https://github.com/vercel/next.js/issues/71473) - docs: remove infinite looping redirect: [#&#8203;75376](https://github.com/vercel/next.js/issues/75376) - chore(github): update more labels: [#&#8203;75382](https://github.com/vercel/next.js/issues/75382) - docs: let searchParams be Promise in `<Form>` example.: [#&#8203;75386](https://github.com/vercel/next.js/issues/75386) - \[Turbopack] cleanup tracing spans and names: [#&#8203;75385](https://github.com/vercel/next.js/issues/75385) - Convert remaining sync (search)params access: [#&#8203;75389](https://github.com/vercel/next.js/issues/75389) - Turbopack: use type alias: [#&#8203;75300](https://github.com/vercel/next.js/issues/75300) - \[cna] upgrade templates tailwind to v4: [#&#8203;75407](https://github.com/vercel/next.js/issues/75407) - chore(github): update more labels: [#&#8203;75409](https://github.com/vercel/next.js/issues/75409) - create-next-app: default to ESLint disabled: [#&#8203;73864](https://github.com/vercel/next.js/issues/73864) - Turbopack: Use from_utf8\_unchecked for minify output: [#&#8203;75422](https://github.com/vercel/next.js/issues/75422) - docs: add optimizations for navigating between App/Pages router: [#&#8203;75427](https://github.com/vercel/next.js/issues/75427) - Add temporary CI workflows for testing: [#&#8203;75432](https://github.com/vercel/next.js/issues/75432) - \[Turbopack] fix is_empty implementation: [#&#8203;75426](https://github.com/vercel/next.js/issues/75426) - docs: specify encryption for custom actions key: [#&#8203;75425](https://github.com/vercel/next.js/issues/75425) - chore(github): update more labels: [#&#8203;75444](https://github.com/vercel/next.js/issues/75444) - \[Turbopack] only the first task read need to be strongly consistent: [#&#8203;75435](https://github.com/vercel/next.js/issues/75435) - perf(turbo-tasks): Filter out and do not cache unused arguments: [#&#8203;75261](https://github.com/vercel/next.js/issues/75261) - build: Update `swc_core` to `v12.0.0`: [#&#8203;75327](https://github.com/vercel/next.js/issues/75327) - chore(github): update github labels: [#&#8203;75452](https://github.com/vercel/next.js/issues/75452) - fix rustflags for musl targets: [#&#8203;75599](https://github.com/vercel/next.js/issues/75599) - Fix rewrite-headers test: [#&#8203;75602](https://github.com/vercel/next.js/issues/75602) - Turbopack CI: Update test results artifact: [#&#8203;75429](https://github.com/vercel/next.js/issues/75429) - Add package.json script for building turbopack-cli: [#&#8203;75031](https://github.com/vercel/next.js/issues/75031) - \[Turbopack] update event_listener to fix hanging bug: [#&#8203;75481](https://github.com/vercel/next.js/issues/75481) - Turbopack: add dedicated TracedAsset: [#&#8203;75510](https://github.com/vercel/next.js/issues/75510) - Turbopack: generate shorter variable idents: [#&#8203;75611](https://github.com/vercel/next.js/issues/75611) - \[Turbopack] connect children in a batch when task is about to finish: [#&#8203;74773](https://github.com/vercel/next.js/issues/74773) - Update test-junit-report path: [#&#8203;75612](https://github.com/vercel/next.js/issues/75612) - \[Turbopack] add more options for production chunking: [#&#8203;75544](https://github.com/vercel/next.js/issues/75544) - Turbopack: Skip Traced chunking type in module graph: [#&#8203;75608](https://github.com/vercel/next.js/issues/75608) - fix(turbo-tasks): Fix building with --features=turbo-tasks/hanging_detection: [#&#8203;75584](https://github.com/vercel/next.js/issues/75584) - Turbopack: Disable react_refresh code in production: [#&#8203;75535](https://github.com/vercel/next.js/issues/75535) - chore: remove global-error in hello-world example: [#&#8203;75509](https://github.com/vercel/next.js/issues/75509) - \[Turbopack] limit the number of concurrent fs operations: [#&#8203;75480](https://github.com/vercel/next.js/issues/75480) - Fix rustflags in \*-musl builds: [#&#8203;75614](https://github.com/vercel/next.js/issues/75614) - Update test-junit-report path: [#&#8203;75612](https://github.com/vercel/next.js/issues/75612) - \[Turbopack] add more options for production chunking: [#&#8203;75544](https://github.com/vercel/next.js/issues/75544) - Turbopack: Skip Traced chunking type in module graph: [#&#8203;75608](https://github.com/vercel/next.js/issues/75608) - fix(turbo-tasks): Fix building with --features=turbo-tasks/hanging_detection: [#&#8203;75584](https://github.com/vercel/next.js/issues/75584) - Turbopack: Disable react_refresh code in production: [#&#8203;75535](https://github.com/vercel/next.js/issues/75535) - chore: remove global-error in hello-world example: [#&#8203;75509](https://github.com/vercel/next.js/issues/75509) - \[Turbopack] limit the number of concurrent fs operations: [#&#8203;75480](https://github.com/vercel/next.js/issues/75480) - Fix rustflags in \*-musl builds: [#&#8203;75614](https://github.com/vercel/next.js/issues/75614) - Ensure junit-report is uploaded: [#&#8203;75615](https://github.com/vercel/next.js/issues/75615) - refactor(turbo-tasks): Port task statistics to the new backend: [#&#8203;75303](https://github.com/vercel/next.js/issues/75303) - Bring back rust bindings path: [#&#8203;75620](https://github.com/vercel/next.js/issues/75620) - Turbopack: short module ids in cli: [#&#8203;75357](https://github.com/vercel/next.js/issues/75357) - perf(turbo-rcstr): Fix the fast codepath for RcStr::into_owned(): [#&#8203;75504](https://github.com/vercel/next.js/issues/75504) - Fix corepack keys in deploy e2e tests: [#&#8203;75622](https://github.com/vercel/next.js/issues/75622) - chore(turbo-tasks): Add test for argument filtering: [#&#8203;75585](https://github.com/vercel/next.js/issues/75585) - perf: Make `next-page-static-info` use `Atom` instead of `String`: [#&#8203;75587](https://github.com/vercel/next.js/issues/75587) - refactor(turbo-tasks): Codemod/migrate all ResolvedVc casting callsites to use the new synchronous APIs: [#&#8203;75547](https://github.com/vercel/next.js/issues/75547) - perf: Make `cjs_optimizer` use `Atom` instead of `String`: [#&#8203;75588](https://github.com/vercel/next.js/issues/75588) - perf(turbo-tasks-fs): Call shrink_to_fit when building an immutable Rope: [#&#8203;75505](https://github.com/vercel/next.js/issues/75505) - chore(turbopack): Remove unmaintained fxhash crate, use rustc-hash instead: [#&#8203;75530](https://github.com/vercel/next.js/issues/75530) - chore(github): add conditional to triage workflow: [#&#8203;75524](https://github.com/vercel/next.js/issues/75524) - chore(github): update stale bot: [#&#8203;75630](https://github.com/vercel/next.js/issues/75630) - perf(turbopack): Update rustc-hash from 1.1.0 to 2.1.0: [#&#8203;75531](https://github.com/vercel/next.js/issues/75531) - perf(next-custom-transforms): Replace non-`Sync` `Rc<DashMap<_, _>>` usage with `Rc<RefCell<FxHashMap<_, _>>>`: [#&#8203;75534](https://github.com/vercel/next.js/issues/75534) - refactor(turbopack): Define and use an FxDashMap alias everywhere: [#&#8203;75538](https://github.com/vercel/next.js/issues/75538) - perf(turbopack): Migrate as many data structures to FxHash as possible: [#&#8203;75546](https://github.com/vercel/next.js/issues/75546) - Disable `rewrite-headers` tests that are dependent on Vercel site config: [#&#8203;75647](https://github.com/vercel/next.js/issues/75647) - docs: remove unused imports: [#&#8203;75653](https://github.com/vercel/next.js/issues/75653) - Run build-nextjs for Turbopack test runs on metal machines instead of GitHub hosted runner: [#&#8203;75654](https://github.com/vercel/next.js/issues/75654) - perf: Make `next_ssg` use `Atom` instead of `String`: [#&#8203;75591](https://github.com/vercel/next.js/issues/75591) - Remove github runner specific step: [#&#8203;75655](https://github.com/vercel/next.js/issues/75655) - \[Turbopack] fix dependencies on own task: [#&#8203;75658](https://github.com/vercel/next.js/issues/75658) - Turbopack: `OutputAsset::path()`: [#&#8203;75659](https://github.com/vercel/next.js/issues/75659) - \[Turbopack] use Timestamp type, allow spans less than 1µs: [#&#8203;75479](https://github.com/vercel/next.js/issues/75479) - Turbopack: generate less JS before minification: [#&#8203;75358](https://github.com/vercel/next.js/issues/75358) - \[Turbopack] correctly apply defines: [#&#8203;75643](https://github.com/vercel/next.js/issues/75643) - Turbopack: don't cell CodeGen-s: [#&#8203;75513](https://github.com/vercel/next.js/issues/75513) - perf: Make barrel optimizer use `Atom` instead of `String`: [#&#8203;75592](https://github.com/vercel/next.js/issues/75592) - perf: Make RSC pass use `Atom` instead of `String`: [#&#8203;75593](https://github.com/vercel/next.js/issues/75593) - perf: Make server action pass use `Atom` instead of `String`: [#&#8203;75594](https://github.com/vercel/next.js/issues/75594) - \[Turbopack] sort spans by start date in tracing: [#&#8203;75642](https://github.com/vercel/next.js/issues/75642) - \[Turbopack] setup aggregation number before connecting children: [#&#8203;74910](https://github.com/vercel/next.js/issues/74910) - perf: Make page exports stripper use `Atom` instead of `String`: [#&#8203;75595](https://github.com/vercel/next.js/issues/75595) - perf: Make page static info use `Atom` instead of `String`: [#&#8203;75596](https://github.com/vercel/next.js/issues/75596) - \[Turbopack] reduce the number of spans created in task completion: [#&#8203;75437](https://github.com/vercel/next.js/issues/75437) - \[Turbopack] wait for output instead of waiting for task completion: [#&#8203;75438](https://github.com/vercel/next.js/issues/75438) - perf: Remove needless `Arc`: [#&#8203;75601](https://github.com/vercel/next.js/issues/75601) - Turbopack: make IssueSource a TaskInput: [#&#8203;75542](https://github.com/vercel/next.js/issues/75542) - Unflake `cookies/headers/draftMode in "use cache"` test: [#&#8203;75675](https://github.com/vercel/next.js/issues/75675) - Turbopack: don't watch output FS: [#&#8203;75680](https://github.com/vercel/next.js/issues/75680) - Turbopack: uncell RequireContextValue: [#&#8203;75683](https://github.com/vercel/next.js/issues/75683) - Turbopack: cache variables in linker: [#&#8203;75440](https://github.com/vercel/next.js/issues/75440) - Turbopack: disambiguate `TaskInput::resolve`: [#&#8203;75661](https://github.com/vercel/next.js/issues/75661) - Turbopack: remove last stray lint ignore comments: [#&#8203;75519](https://github.com/vercel/next.js/issues/75519) - Update `swc_core` to `v13.0.4`: [#&#8203;75684](https://github.com/vercel/next.js/issues/75684) - test: fix eslint plugin test: [#&#8203;75687](https://github.com/vercel/next.js/issues/75687) - Add regression test for previously hanging compilation with Turbopack: [#&#8203;75507](https://github.com/vercel/next.js/issues/75507) - chore(turbo-tasks): Remove support for local_cells (a specific mode of local tasks we ended up not using): [#&#8203;75672](https://github.com/vercel/next.js/issues/75672) - docs: fix example for multiple tags in cacheTag usage: [#&#8203;75693](https://github.com/vercel/next.js/issues/75693) - Turbopack: lazily evaluate `obj` for member replacements: [#&#8203;75453](https://github.com/vercel/next.js/issues/75453) - Fix lint for cacheTag doc: [#&#8203;75703](https://github.com/vercel/next.js/issues/75703) - \[Turbopack] disable dependency tracking for next build: [#&#8203;75704](https://github.com/vercel/next.js/issues/75704) - Add test to verify which pages are prerendered in `use-cache` test suite: [#&#8203;75681](https://github.com/vercel/next.js/issues/75681) - chore(next-swc-napi): Remove unused(?) rlib target: [#&#8203;75707](https://github.com/vercel/next.js/issues/75707) - Turbopack: add test for local tasks in traits: [#&#8203;75708](https://github.com/vercel/next.js/issues/75708) - Revert "chore(next-swc-napi): Remove unused(?) rlib target": [#&#8203;75745](https://github.com/vercel/next.js/issues/75745) - \[Turbopack] use new backend in next-build-test: [#&#8203;75724](https://github.com/vercel/next.js/issues/75724) - \[Turbopack] Reduce memory: [#&#8203;75723](https://github.com/vercel/next.js/issues/75723) - Report build-and-deploy failures: [#&#8203;75749](https://github.com/vercel/next.js/issues/75749) - Turbopack: uncell AstPath: [#&#8203;75695](https://github.com/vercel/next.js/issues/75695) - Turbopack: switch some deps back to upstream: [#&#8203;75752](https://github.com/vercel/next.js/issues/75752) - Turbopack: less tasks in `with_modules`: [#&#8203;75700](https://github.com/vercel/next.js/issues/75700) - chore(turbopack): Remove legacy next.js HMR compat code: [#&#8203;75725](https://github.com/vercel/next.js/issues/75725) - Turbopack: make `ModulePart` a `TaskInput`: [#&#8203;75364](https://github.com/vercel/next.js/issues/75364) - Turbopack: remove SWC CSS sourcemap variant: [#&#8203;75753](https://github.com/vercel/next.js/issues/75753) - docs: follow up fix: [#&#8203;75760](https://github.com/vercel/next.js/issues/75760) - chore(github): add labels-to-add-when-unstale label -> not stale: [#&#8203;75721](https://github.com/vercel/next.js/issues/75721) - docs(route-segment-config): remove line in force-dynamic mentioning it's like getServerSideProps: [#&#8203;75773](https://github.com/vercel/next.js/issues/75773) - Return `null` if Redbox has no component stack: [#&#8203;75744](https://github.com/vercel/next.js/issues/75744) - unsupported should be supported in docs: [#&#8203;75772](https://github.com/vercel/next.js/issues/75772) - build: Update `swc_core` to `v13.1.0`: [#&#8203;75771](https://github.com/vercel/next.js/issues/75771) - chore(github): skip nissuer when Documentation issue template is used: [#&#8203;75802](https://github.com/vercel/next.js/issues/75802) - refactor: Use `shrink-to-fit` crate instead: [#&#8203;75777](https://github.com/vercel/next.js/issues/75777) - Delete expirePath and expireTag pages (again): [#&#8203;75691](https://github.com/vercel/next.js/issues/75691) - docs: add Chrome debugging port configuration steps: [#&#8203;75845](https://github.com/vercel/next.js/issues/75845) - \[test] More accurate stack assertions in terminal: [#&#8203;75355](https://github.com/vercel/next.js/issues/75355) - refactor(tests): Refactor environment reload HMR test: [#&#8203;75875](https://github.com/vercel/next.js/issues/75875) - \[Turbopack] fix recompute invalidation: [#&#8203;75850](https://github.com/vercel/next.js/issues/75850) - \[Turbopack] allow to configure last successful parse cache state: [#&#8203;75851](https://github.com/vercel/next.js/issues/75851) - \[Turbopack] remove asset context and layer from static files: [#&#8203;75892](https://github.com/vercel/next.js/issues/75892) - \[Turbopack] fix hanging bug caused by incorrect active counter handling on stale tasks: [#&#8203;75732](https://github.com/vercel/next.js/issues/75732) - \[Turbopack] prefer to use the node.js process where we invested the most time: [#&#8203;75894](https://github.com/vercel/next.js/issues/75894) - Turbopack: remove unused code: [#&#8203;75897](https://github.com/vercel/next.js/issues/75897) - \[Turbopack] allow to disable active tracking in turbo-tasks: [#&#8203;75899](https://github.com/vercel/next.js/issues/75899) - \[Turbopack] add fast path for increase active count: [#&#8203;75900](https://github.com/vercel/next.js/issues/75900) - test: align existing testing util: [#&#8203;75844](https://github.com/vercel/next.js/issues/75844) - \[Turbopack] Add `final_read_hint` API and change `clone_value` to `owned`: [#&#8203;75852](https://github.com/vercel/next.js/issues/75852) - Turbopack: use result instead of panic: [#&#8203;75903](https://github.com/vercel/next.js/issues/75903) - fix(turbopack): Update Cargo.toml/package.json license field for turbopack-related crates: [#&#8203;75889](https://github.com/vercel/next.js/issues/75889) - Turbopack: source locations as u32: [#&#8203;75705](https://github.com/vercel/next.js/issues/75705) - test: Write files before install: [#&#8203;75906](https://github.com/vercel/next.js/issues/75906) - docs(css-in-js): update warning about using css-in-js with server components: [#&#8203;75931](https://github.com/vercel/next.js/issues/75931) - docs: update CRA guide: [#&#8203;75939](https://github.com/vercel/next.js/issues/75939) - docs: fix typo in `use-cache.mdx`: [#&#8203;75848](https://github.com/vercel/next.js/issues/75848) - Update 01-installation.mdx: [#&#8203;75788](https://github.com/vercel/next.js/issues/75788) - fix typo in 07-updating-data.mdx: [#&#8203;75711](https://github.com/vercel/next.js/issues/75711) - docs: fixed wrong import for `unauthorized`: [#&#8203;75420](https://github.com/vercel/next.js/issues/75420) - docs: incorrect anchor on searchParams link: [#&#8203;75266](https://github.com/vercel/next.js/issues/75266) - Fixed link to stale-while-revalidate article: [#&#8203;74949](https://github.com/vercel/next.js/issues/74949) - Stop using deprecated `TURBO_REMOTE_ONLY`: [#&#8203;75832](https://github.com/vercel/next.js/issues/75832) - Turbopack: store serialized sourcemaps instead: [#&#8203;75791](https://github.com/vercel/next.js/issues/75791) - Add test for missing sourcemap loader support of `ignoreList`: [#&#8203;75907](https://github.com/vercel/next.js/issues/75907) - Update sourcemap tests due to recent Turbopack changes: [#&#8203;75954](https://github.com/vercel/next.js/issues/75954) - \[Turbopack] scale down process pool when module graph is finished: [#&#8203;75896](https://github.com/vercel/next.js/issues/75896) - Fix flaky error-recovery test: [#&#8203;75948](https://github.com/vercel/next.js/issues/75948) - \[Turbopack] disable session dependent tasks when dependency tracking is disabled: [#&#8203;75965](https://github.com/vercel/next.js/issues/75965) - docs: fix `use` pattern: [#&#8203;75529](https://github.com/vercel/next.js/issues/75529) - docs: fix prettier error: [#&#8203;75968](https://github.com/vercel/next.js/issues/75968) - Add (failing) test for module based feature telemetry in App Router: [#&#8203;75952](https://github.com/vercel/next.js/issues/75952) - \[docs] update tailwind installation instruction to v4: [#&#8203;75739](https://github.com/vercel/next.js/issues/75739) - fix: compiler error when next/cache is used in a client module: [#&#8203;75979](https://github.com/vercel/next.js/issues/75979) - Update toolchain to nightly-2025-02-12: [#&#8203;75983](https://github.com/vercel/next.js/issues/75983) - fix(CI): Initialize non-existent bundler manifests: [#&#8203;75987](https://github.com/vercel/next.js/issues/75987) - \[Turbopack] improve race condition handling of scheduling: [#&#8203;75748](https://github.com/vercel/next.js/issues/75748) - Check for visibility not just existence of Redbox: [#&#8203;75846](https://github.com/vercel/next.js/issues/75846) - ci: fix version-staleness test: [#&#8203;76020](https://github.com/vercel/next.js/issues/76020) - fix(turbopack CI): Pin corepack version for production tests manifest update action: [#&#8203;75986](https://github.com/vercel/next.js/issues/75986) - Fix unisolated tests: [#&#8203;76018](https://github.com/vercel/next.js/issues/76018) - \[Turbopack] fix hanging and flaky issues: [#&#8203;76032](https://github.com/vercel/next.js/issues/76032) - \[Turbopack] only invalidate fs writes with a different content: [#&#8203;75936](https://github.com/vercel/next.js/issues/75936) - \[Turbopack] fix tree shake ident on code generation: [#&#8203;75970](https://github.com/vercel/next.js/issues/75970) - \[Turbopack] avoid allocating on AggregationUpdateQueue::new: [#&#8203;76034](https://github.com/vercel/next.js/issues/76034) - \[Turbopack] add tracing to turbopack-tests: [#&#8203;76033](https://github.com/vercel/next.js/issues/76033) - \[Turbopack] avoid creating many ModuleOptions: [#&#8203;76035](https://github.com/vercel/next.js/issues/76035) - fix recomputation when reading gc'ed cells from in progress tasks: [#&#8203;75969](https://github.com/vercel/next.js/issues/75969) - \[Turbopack] try to avoid cloning AST during code generation, pass final_read_hint: [#&#8203;75853](https://github.com/vercel/next.js/issues/75853) - \[Turbopack] make `make_chunks` a non-turbo-tasks-function: [#&#8203;76042](https://github.com/vercel/next.js/issues/76042) - Turbopack: less CodeGenerateable for references: [#&#8203;75963](https://github.com/vercel/next.js/issues/75963) - Turbopack: refactor how EsmAssetReferences are added: [#&#8203;76011](https://github.com/vercel/next.js/issues/76011) - Turbopack: codegen EsmAssetReference without turbo tasks: [#&#8203;76024](https://github.com/vercel/next.js/issues/76024) - Fix stale snapshots: [#&#8203;76116](https://github.com/vercel/next.js/issues/76116) - Turbopack: Fix static generation test: [#&#8203;76125](https://github.com/vercel/next.js/issues/76125) - Cleanup `experimental.reactOwnerStack`: [#&#8203;76123](https://github.com/vercel/next.js/issues/76123) - Turbopack: Fix middleware test: [#&#8203;76126](https://github.com/vercel/next.js/issues/76126) - Current behavior for `reportError`: [#&#8203;76115](https://github.com/vercel/next.js/issues/76115) - test: replace explicit `padding-bottom` with `devIndicators: false` for scroll position testing: [#&#8203;76105](https://github.com/vercel/next.js/issues/76105) - Turbopack: less turbo tasks for `chunk_item.id()`: [#&#8203;76110](https://github.com/vercel/next.js/issues/76110) - Turbopack: Add passing test to manifest: [#&#8203;76143](https://github.com/vercel/next.js/issues/76143) - Improve server actions sourcemap test: [#&#8203;76129](https://github.com/vercel/next.js/issues/76129) - build: Update `swc_core` to `v14.0.0`: [#&#8203;76135](https://github.com/vercel/next.js/issues/76135) - refactor(turbopack): Simplify `minify()`: [#&#8203;76139](https://github.com/vercel/next.js/issues/76139) - feat(turboyet): Upload test data for both bundlers: [#&#8203;76090](https://github.com/vercel/next.js/issues/76090) - chore(github): add Error Overlay area: [#&#8203;76167](https://github.com/vercel/next.js/issues/76167) - Put flaky `use-cache-unknown-cache-kind` dev tests in sandboxes: [#&#8203;76171](https://github.com/vercel/next.js/issues/76171) - Turbopack: compute async info from module graph: [#&#8203;76118](https://github.com/vercel/next.js/issues/76118) - Report tests to Datadog from Job that executed them: [#&#8203;73180](https://github.com/vercel/next.js/issues/73180) - Align Redbox test helpers: [#&#8203;76213](https://github.com/vercel/next.js/issues/76213) - Fix stale snapshots: [#&#8203;76237](https://github.com/vercel/next.js/issues/76237) - Ensure datadog upload is skipped for forks: [#&#8203;76238](https://github.com/vercel/next.js/issues/76238) - docs: Fix link on UPGRADING.md: [#&#8203;75761](https://github.com/vercel/next.js/issues/75761) - \[Turbopack] add many pages bench: [#&#8203;76244](https://github.com/vercel/next.js/issues/76244) - \[Turbopack] remove ChunkingType::Passthrough: [#&#8203;76217](https://github.com/vercel/next.js/issues/76217) - \[Turbopack] add concept of ChunkGroups: [#&#8203;76218](https://github.com/vercel/next.js/issues/76218) - \[Turbopack] increase hash length to avoid hash conflict: [#&#8203;76245](https://github.com/vercel/next.js/issues/76245) - \[Turbopack] add ChunkingType::Shared: [#&#8203;76228](https://github.com/vercel/next.js/issues/76228) - Turbopack: Fix 500 handling in edge with pages router: [#&#8203;76155](https://github.com/vercel/next.js/issues/76155) - Turbopack: Update app-dir tests: [#&#8203;76145](https://github.com/vercel/next.js/issues/76145) - Turbopack panic handler: link to bug report issue template: [#&#8203;76226](https://github.com/vercel/next.js/issues/76226) - Disable turbo daemon by default: [#&#8203;76248](https://github.com/vercel/next.js/issues/76248) - Unflake `ppr-full` tests: [#&#8203;76271](https://github.com/vercel/next.js/issues/76271) - docs(errors): minor update to failed-to-find-server-action error page: [#&#8203;76296](https://github.com/vercel/next.js/issues/76296) - docs(cookies): update good-to-know for cookie.delete: [#&#8203;76303](https://github.com/vercel/next.js/issues/76303) - Turbopack: ignore invalid sourcemaps for now: [#&#8203;76215](https://github.com/vercel/next.js/issues/76215) - Update outdated snapshots: [#&#8203;76318](https://github.com/vercel/next.js/issues/76318) - \[Turbopack] smarter merging of small chunks in production chunking: [#&#8203;76319](https://github.com/vercel/next.js/issues/76319) - \[ci]: skip use-cache deployment test: [#&#8203;76334](https://github.com/vercel/next.js/issues/76334) - \[Turbopack] merged chunks need to have min overlap of 2 merge remainers into chunk: [#&#8203;76320](https://github.com/vercel/next.js/issues/76320) - test: disable metadata streaming deployment tests: [#&#8203;76335](https://github.com/vercel/next.js/issues/76335) - \[Turbopack] allow to merge into big enough chunk candidate when 100% overlap: [#&#8203;76321](https://github.com/vercel/next.js/issues/76321) - \[Turbopack] compute expected benefit of merging chunks and use that as factor: [#&#8203;76331](https://github.com/vercel/next.js/issues/76331) - Update datadog job to use pnpm dlx: [#&#8203;76337](https://github.com/vercel/next.js/issues/76337) - docs: add Logto auth library: [#&#8203;75176](https://github.com/vercel/next.js/issues/75176) - \[test] Use new Redbox matchers in pages/ hydration-error test: [#&#8203;76350](https://github.com/vercel/next.js/issues/76350) - test: update snapshot for component stack: [#&#8203;76359](https://github.com/vercel/next.js/issues/76359) - Update error-recovery test snapshots for alternative bundler: [#&#8203;76299](https://github.com/vercel/next.js/issues/76299) - Turbopack: ChunkGroupType for graph entries: [#&#8203;76235](https://github.com/vercel/next.js/issues/76235) - Turbopack: accept ChunkGroup in chunking context: [#&#8203;76242](https://github.com/vercel/next.js/issues/76242) - \[test] Use new Redbox matchers in pages/ error-recovery test: [#&#8203;76348](https://github.com/vercel/next.js/issues/76348) - \[test] Use new Redbox matchers in pages/ ReactRefreshLogBox-builtins: [#&#8203;76392](https://github.com/vercel/next.js/issues/76392) - \[test] Use new Redbox matchers in pages/ ReactRefreshLogBox: [#&#8203;76391](https://github.com/vercel/next.js/issues/76391) - \[test] Use new Redbox matchers in app/ ReactRefreshLogBox-builtins: [#&#8203;76394](https://github.com/vercel/next.js/issues/76394) - docs: update `building.md` to contain descriptive build process: [#&#8203;76393](https://github.com/vercel/next.js/issues/76393) - fix(turbopack): Fix pure span check in advanced tree shaking: [#&#8203;76406](https://github.com/vercel/next.js/issues/76406) - Turbopack: fix graph chunk groups: [#&#8203;76383](https://github.com/vercel/next.js/issues/76383) - `toDisplayRedbox()` matcher: trim line endings: [#&#8203;76404](https://github.com/vercel/next.js/issues/76404) - Turbopack: rename reverse topological to postorder topological, fix async referenced modules: [#&#8203;76429](https://github.com/vercel/next.js/issues/76429) - Turbopack: handle removed assets similar to non-existing assets: [#&#8203;76420](https://github.com/vercel/next.js/issues/76420) - Turbopack: fix duplicate modules due to import context: [#&#8203;76432](https://github.com/vercel/next.js/issues/76432) - typechecking inputs/outputs in action transform tests: [#&#8203;75935](https://github.com/vercel/next.js/issues/75935) - \[test] Use new Redbox matchers in app/ ReactRefreshLogBox: [#&#8203;76431](https://github.com/vercel/next.js/issues/76431) - \[test] fix client navigation error count in react 18: [#&#8203;76442](https://github.com/vercel/next.js/issues/76442) - docs: add note to language and filename section: [#&#8203;74239](https://github.com/vercel/next.js/issues/74239) - docs: fix duplicate "scroll" parameter in Link component documentation: [#&#8203;74820](https://github.com/vercel/next.js/issues/74820) - refactor(CI): Convert daily turbopack (areweturboyet) integration tests into reusable workflows: [#&#8203;76251](https://github.com/vercel/next.js/issues/76251) - fix: workaround for TS bug in Object.defineProperty: [#&#8203;75944](https://github.com/vercel/next.js/issues/75944) - \[docs]: add --api option information: [#&#8203;76493](https://github.com/vercel/next.js/issues/76493) - refactor(CI): Extend areweturboyet integration test jobs for all bundlers: [#&#8203;76361](https://github.com/vercel/next.js/issues/76361) - \[repo] misc: rename `.cursorignore` to `.cursorindexingignore`: [#&#8203;76494](https://github.com/vercel/next.js/issues/76494) - \[ci]: PPR tests should run on development/acceptance-app: [#&#8203;76505](https://github.com/vercel/next.js/issues/76505) - chore(CI): Only update areweturboyet datasets for other bundlers from canary branch results: [#&#8203;76449](https://github.com/vercel/next.js/issues/76449) - docs: fix typo in route-segment-config: [#&#8203;74403](https://github.com/vercel/next.js/issues/74403) - Docs: Fix minor typo in `api-reference/functions/cookies.mdx`: [#&#8203;76376](https://github.com/vercel/next.js/issues/76376) - Correcting typo: [#&#8203;76440](https://github.com/vercel/next.js/issues/76440) - Update error-recovery test snapshots for alternative bundler \[3/n]: [#&#8203;76446](https://github.com/vercel/next.js/issues/76446) - refactor(CI): Assign tests to groups round-robin instead of sequentially when we don't have timings: [#&#8203;76462](https://github.com/vercel/next.js/issues/76462) - Update Turbopack development test manifest: [#&#8203;76471](https://github.com/vercel/next.js/issues/76471) - Update Turbopack production test manifest: [#&#8203;76472](https://github.com/vercel/next.js/issues/76472) - Move known failed test back into `failed` set in Turbopack manifest: [#&#8203;76542](https://github.com/vercel/next.js/issues/76542) - Run React 18 tests for automated update PRs: [#&#8203;76544](https://github.com/vercel/next.js/issues/76544) - Skip globally installing turbo CLI: [#&#8203;76532](https://github.com/vercel/next.js/issues/76532) - docs(errors): update suppressHydrationWarning section: [#&#8203;76521](https://github.com/vercel/next.js/issues/76521) ##### Credits Huge thanks to [@&#8203;ijjk](https://github.com/ijjk), [@&#8203;unstubbable](https://github.com/unstubbable), [@&#8203;bgw](https://github.com/bgw), [@&#8203;gnoff](https://github.com/gnoff), [@&#8203;eps1lon](https://github.com/eps1lon), [@&#8203;ztanner](https://github.com/ztanner), [@&#8203;mischnic](https://github.com/mischnic), [@&#8203;Marukome0743](https://github.com/Marukome0743), [@&#8203;leerob](https://github.com/leerob), [@&#8203;gaojude](https://github.com/gaojude), [@&#8203;lubieowoce](https://github.com/lubieowoce), [@&#8203;acdlite](https://github.com/acdlite), [@&#8203;kdy1](https://github.com/kdy1), [@&#8203;JamBalaya56562](https://github.com/JamBalaya56562), [@&#8203;creationix](https://github.com/creationix), [@&#8203;noreiller](https://github.com/noreiller), [@&#8203;samcx](https://github.com/samcx), [@&#8203;delbaoliveira](https://github.com/delbaoliveira), [@&#8203;styfle](https://github.com/styfle), [@&#8203;abdonrd](https://github.com/abdonrd), [@&#8203;ollyw](https://github.com/ollyw), [@&#8203;wyattjoh](https://github.com/wyattjoh), [@&#8203;devjiwonchoi](https://github.com/devjiwonchoi), [@&#8203;aymericzip](https://github.com/aymericzip), [@&#8203;davidhu2000](https://github.com/davidhu2000), [@&#8203;attilarepka](https://github.com/attilarepka), [@&#8203;devpla](https://github.com/devpla), [@&#8203;dydals3440](https://github.com/dydals3440), [@&#8203;huozhi](https://github.com/huozhi), [@&#8203;wbinnssmith](https://github.com/wbinnssmith), [@&#8203;suu3](https://github.com/suu3), [@&#8203;PapatMayuri](https://github.com/PapatMayuri), [@&#8203;Sahil4883](https://github.com/Sahil4883), [@&#8203;abyii](https://github.com/abyii), [@&#8203;molebox](https://github.com/molebox), [@&#8203;sokra](https://github.com/sokra), [@&#8203;maciej-ka](https://github.com/maciej-ka), [@&#8203;abvthecity](https://github.com/abvthecity), [@&#8203;damiensedgwick](https://github.com/damiensedgwick), [@&#8203;alitas](https://github.com/alitas), [@&#8203;RiskyMH](https://github.com/RiskyMH), [@&#8203;ytreister](https://github.com/ytreister), [@&#8203;sommeeeer](https://github.com/sommeeeer), [@&#8203;n1ckoates](https://github.com/n1ckoates), [@&#8203;yongholeeme](https://github.com/yongholeeme), [@&#8203;spidersouris](https://github.com/spidersouris), [@&#8203;gurkerl83](https://github.com/gurkerl83), [@&#8203;cassiossantos](https://github.com/cassiossantos), [@&#8203;Netail](https://github.com/Netail), [@&#8203;tknickman](https://github.com/tknickman), [@&#8203;eur00t](https://github.com/eur00t), [@&#8203;cseas](https://github.com/cseas), [@&#8203;nnnnoel](https://github.com/nnnnoel), [@&#8203;timneutkens](https://github.com/timneutkens), [@&#8203;Manoj-M-S](https://github.com/Manoj-M-S), [@&#8203;lfades](https://github.com/lfades), [@&#8203;sebmarkbage](https://github.com/sebmarkbage), [@&#8203;matmannion](https://github.com/matmannion), [@&#8203;mikeboensel](https://github.com/mikeboensel), [@&#8203;nphmuller](https://github.com/nphmuller), [@&#8203;apostolos](https://github.com/apostolos), [@&#8203;k15a](https://github.com/k15a), [@&#8203;pavelee](https://github.com/pavelee), [@&#8203;locothedev](https://github.com/locothedev), [@&#8203;vexcat](https://github.com/vexcat), [@&#8203;Zach-Jaensch](https://github.com/Zach-Jaensch), [@&#8203;decepulis](https://github.com/decepulis), [@&#8203;gadcam](https://github.com/gadcam), [@&#8203;lukahartwig](https://github.com/lukahartwig), [@&#8203;jsanford8](https://github.com/jsanford8), [@&#8203;RobinMalfait](https://github.com/RobinMalfait), [@&#8203;raunofreiberg](https://github.com/raunofreiberg), [@&#8203;mohsen1](https://github.com/mohsen1), [@&#8203;skushagra](https://github.com/skushagra), [@&#8203;feedthejim](https://github.com/feedthejim), [@&#8203;amannn](https://github.com/amannn), [@&#8203;HQidea](https://github.com/HQidea), [@&#8203;jrandolf](https://github.com/jrandolf), [@&#8203;smit-err](https://github.com/smit-err), [@&#8203;littledivy](https://github.com/littledivy), [@&#8203;k35o](https://github.com/k35o), [@&#8203;martinsione](https://github.com/martinsione), [@&#8203;CvX](https://github.com/CvX), [@&#8203;msereniti](https://github.com/msereniti), [@&#8203;Timer](https://github.com/Timer), [@&#8203;Iftee97](https://github.com/Iftee97), [@&#8203;chibicode](https://github.com/chibicode), [@&#8203;RobPruzan](https://github.com/RobPruzan), [@&#8203;padmaia](https://github.com/padmaia), [@&#8203;PlagueFPS](https://github.com/PlagueFPS), [@&#8203;bjunix](https://github.com/bjunix), [@&#8203;maximevtush](https://github.com/maximevtush), [@&#8203;michaelven](https://github.com/michaelven), [@&#8203;sedlukha](https://github.com/sedlukha), [@&#8203;johannpinson](https://github.com/johannpinson), [@&#8203;AxelUser](https://github.com/AxelUser), [@&#8203;Nayeem-XTREME](https://github.com/Nayeem-XTREME), [@&#8203;IcaroG](https://github.com/IcaroG), [@&#8203;blurrah](https://github.com/blurrah), [@&#8203;lachlanjc](https://github.com/lachlanjc), [@&#8203;ashi009](https://github.com/ashi009), [@&#8203;conico974](https://github.com/conico974), [@&#8203;raphaelcosta](https://github.com/raphaelcosta), [@&#8203;dulmandakh](https://github.com/dulmandakh), [@&#8203;khuezy](https://github.com/khuezy), [@&#8203;Knoa0405](https://github.com/Knoa0405), [@&#8203;wangsijie](https://github.com/wangsijie), [@&#8203;stefanprobst](https://github.com/stefanprobst), [@&#8203;wentsul](https://github.com/wentsul), [@&#8203;loopy-lim](https://github.com/loopy-lim), [@&#8203;bratvanov](https://github.com/bratvanov), [@&#8203;hedgeday](https://github.com/hedgeday), [@&#8203;cassian-goode](https://github.com/cassian-goode), [@&#8203;artemszelenov](https://github.com/artemszelenov), and [@&#8203;saltcod](https://github.com/saltcod) for helping! ### [`v15.1.9`](https://github.com/vercel/next.js/releases/tag/v15.1.9) [Compare Source](https://github.com/vercel/next.js/compare/v15.1.8...v15.1.9) Please see [CVE-2025-66478](https://nextjs.org/blog/CVE-2025-66478) for additional details about this release. ### [`v15.1.8`](https://github.com/vercel/next.js/releases/tag/v15.1.8) [Compare Source](https://github.com/vercel/next.js/compare/v15.1.7...v15.1.8) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - 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)) ##### Credits Huge thanks to [@&#8203;amannn](https://github.com/amannn), [@&#8203;lubieowoce](https://github.com/lubieowoce), and [@&#8203;ztanner](https://github.com/ztanner) for helping! ### [`v15.1.7`](https://github.com/vercel/next.js/releases/tag/v15.1.7) [Compare Source](https://github.com/vercel/next.js/compare/v15.1.6...v15.1.7) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - fix: work around setTimeout memory leak, improve wrappers ([#&#8203;75727](https://github.com/vercel/next.js/issues/75727)) - add additional x-middleware-set-cookie filtering ([#&#8203;75869](https://github.com/vercel/next.js/issues/75869)) - fix: ensure lint worker errors aren't silenced ([#&#8203;75766](https://github.com/vercel/next.js/issues/75766)) ##### Credits Huge thanks to [@&#8203;lubieowoce](https://github.com/lubieowoce) and [@&#8203;ztanner](https://github.com/ztanner) for helping! ### [`v15.1.6`](https://github.com/vercel/next.js/releases/tag/v15.1.6) [Compare Source](https://github.com/vercel/next.js/compare/v15.1.5...v15.1.6) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - fix: don't memory-leak promises passed to waitUntil ([#&#8203;75041](https://github.com/vercel/next.js/issues/75041)) - backport: fix prerender issue with intercepting routes + generateStaticParams ([#&#8203;75170](https://github.com/vercel/next.js/issues/75170)) ##### Credits Huge thanks to [@&#8203;lubieowoce](https://github.com/lubieowoce) and [@&#8203;ztanner](https://github.com/ztanner) for helping! ### [`v15.1.5`](https://github.com/vercel/next.js/releases/tag/v15.1.5) [Compare Source](https://github.com/vercel/next.js/compare/v15.1.4...v15.1.5) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - Fix missing revalidate with notFound() ([#&#8203;75009](https://github.com/vercel/next.js/issues/75009)) - fix: when metadatabase is set we should not warn ([#&#8203;74840](https://github.com/vercel/next.js/issues/74840)) - Fix [@&#8203;vercel/og](https://github.com/vercel/og) license SPDX expression ([#&#8203;74745](https://github.com/vercel/next.js/issues/74745)) - fix: ts language server rule metadata should allow null ([#&#8203;74704](https://github.com/vercel/next.js/issues/74704)) - fix: eslint rule of using img in metadata routes ([#&#8203;74864](https://github.com/vercel/next.js/issues/74864)) - Fix presentation when onerror receives an event without error ([#&#8203;74643](https://github.com/vercel/next.js/issues/74643)) - fix fetch lock not being consistently released [#&#8203;74623](https://github.com/vercel/next.js/issues/74623) ([#&#8203;75028](https://github.com/vercel/next.js/issues/75028)) ##### Credits Huge thanks to [@&#8203;ijjk](https://github.com/ijjk), [@&#8203;huozhi](https://github.com/huozhi), [@&#8203;matmannion](https://github.com/matmannion) and [@&#8203;ztanner](https://github.com/ztanner) for helping! ### [`v15.1.4`](https://github.com/vercel/next.js/releases/tag/v15.1.4) [Compare Source](https://github.com/vercel/next.js/compare/v15.1.3...v15.1.4) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - backport: force module format for virtual client-proxy ([#&#8203;74608](https://github.com/vercel/next.js/issues/74608)) - Fix prerender tags when notFound is called ([#&#8203;74607](https://github.com/vercel/next.js/issues/74607)) - Use provided waitUntil for pending revalidates ([#&#8203;74604](https://github.com/vercel/next.js/issues/74604)) - Feature: next/image: add support for images.qualities in next.config ([#&#8203;74588](https://github.com/vercel/next.js/issues/74588)) - Chore: docs: add missing search: '' on remotePatterns ([#&#8203;74587](https://github.com/vercel/next.js/issues/74587)) - Chore: docs: update version history of next/image ([#&#8203;73923](https://github.com/vercel/next.js/issues/73923)) ([#&#8203;74570](https://github.com/vercel/next.js/issues/74570)) - Chore: next/image: improve imgopt api bypass detection for unsupported images ([#&#8203;74569](https://github.com/vercel/next.js/issues/74569)) ##### Credits Huge thanks to @&#8203; and @&#8203; for helping! ### [`v15.1.3`](https://github.com/vercel/next.js/releases/tag/v15.1.3) [Compare Source](https://github.com/vercel/next.js/compare/v15.1.2...v15.1.3) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - Retry manifest file loading only in dev mode: [#&#8203;73900](https://github.com/vercel/next.js/issues/73900) - Use shared worker for lint & typecheck steps: [#&#8203;74154](https://github.com/vercel/next.js/issues/74154) ##### Credits Huge thanks to [@&#8203;unstubbable](https://github.com/unstubbable) and [@&#8203;ztanner](https://github.com/ztanner) for helping! ### [`v15.1.2`](https://github.com/vercel/next.js/releases/tag/v15.1.2) [Compare Source](https://github.com/vercel/next.js/compare/v15.1.1...v15.1.2) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - Update React from [`7283a21`](https://github.com/vercel/next.js/commit/7283a213)-20241206 to [`65e06cb`](https://github.com/vercel/next.js/commit/65e06cb7)-20241218: https://github.com/vercel/next.js/pull/74117 ##### Credits Huge thanks to [@&#8203;ztanner](https://github.com/ztanner) for helping! ### [`v15.1.1`](https://github.com/vercel/next.js/releases/tag/v15.1.1) [Compare Source](https://github.com/vercel/next.js/compare/v15.1.0...v15.1.1) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - fix(turbo): sassOptions silenceDeprecations was not overwritten with user options: https://github.com/vercel/next.js/pull/73937 - refactor collectAppPageSegments: https://github.com/vercel/next.js/pull/73908 ##### Credits Huge thanks to [@&#8203;devjiwonchoi](https://github.com/devjiwonchoi) and [@&#8203;ztanner](https://github.com/ztanner) for helping! ### [`v15.1.0`](https://github.com/vercel/next.js/releases/tag/v15.1.0) [Compare Source](https://github.com/vercel/next.js/compare/v15.0.5...v15.1.0) ##### Core Changes - fix: decrypt bound args before generating a cache key: [#&#8203;72463](https://github.com/vercel/next.js/issues/72463) - Fix the path to the next/experimental/testing/server export: [#&#8203;72527](https://github.com/vercel/next.js/issues/72527) - Expand `server-source-maps` scenarios to cover Edge runtime: [#&#8203;72288](https://github.com/vercel/next.js/issues/72288) - Ensure logged errors in Edge runtime include the stack: [#&#8203;72394](https://github.com/vercel/next.js/issues/72394) - fix: added cache control headers for static app routes: [#&#8203;72521](https://github.com/vercel/next.js/issues/72521) - capture console issues as console errors: [#&#8203;72468](https://github.com/vercel/next.js/issues/72468) - Add expireTag and expirePath APIs: [#&#8203;72485](https://github.com/vercel/next.js/issues/72485) - fix: try/catch access to localStorage within \__NEXT_APP_ISR_INDICATOR useEffect: [#&#8203;72362](https://github.com/vercel/next.js/issues/72362) - Move client build ID to a global variable: [#&#8203;72592](https://github.com/vercel/next.js/issues/72592) - refactor(turbopack): Remove `swc_css`: [#&#8203;72602](https://github.com/vercel/next.js/issues/72602) - Bypass source map dev middleware for client chunks: [#&#8203;72581](https://github.com/vercel/next.js/issues/72581) - chore: remove `rc` from URL: [#&#8203;72599](https://github.com/vercel/next.js/issues/72599) - improve `no-img-element` lint error message: [#&#8203;72410](https://github.com/vercel/next.js/issues/72410) - Combine bound `"use cache"` closure args into a single parameter: [#&#8203;72587](https://github.com/vercel/next.js/issues/72587) - \[Turbopack] add BackendOptions and allow to disable dependencies, children and storage: [#&#8203;72426](https://github.com/vercel/next.js/issues/72426) - Omit unused args when calling `"use cache"` functions: [#&#8203;72506](https://github.com/vercel/next.js/issues/72506) - Add experimental `clientSegmentCache` flag: [#&#8203;72626](https://github.com/vercel/next.js/issues/72626) - Add `compiler.define` option: [#&#8203;71802](https://github.com/vercel/next.js/issues/71802) - Fix static indicator with dynamicIO: [#&#8203;72631](https://github.com/vercel/next.js/issues/72631) - Allow usage of Node.js prereleases: [#&#8203;72635](https://github.com/vercel/next.js/issues/72635) - improved network url in (dev) cli: [#&#8203;72634](https://github.com/vercel/next.js/issues/72634) - chore: update `getting-started/react-essentials` path: [#&#8203;72250](https://github.com/vercel/next.js/issues/72250) - Fix static indicator for pure IO case: [#&#8203;72639](https://github.com/vercel/next.js/issues/72639) - Bump the monorepo packages TypeScript to `5.6.3`: [#&#8203;72625](https://github.com/vercel/next.js/issues/72625) - Bump `@capsizecss/metrics` to 3.4.0 for Geist Google Font: [#&#8203;72746](https://github.com/vercel/next.js/issues/72746) - refactor: remove unused asNotFound property: [#&#8203;72585](https://github.com/vercel/next.js/issues/72585) - Remove unused `enabled` config from server actions transforms: [#&#8203;72755](https://github.com/vercel/next.js/issues/72755) - Ensure Next.js is ignore-listed when used as external: [#&#8203;72498](https://github.com/vercel/next.js/issues/72498) - Bump `eslint-plugin-react` to 7.37.0: [#&#8203;72759](https://github.com/vercel/next.js/issues/72759) - upgrade amphtml-validator to 1.0.38: [#&#8203;72645](https://github.com/vercel/next.js/issues/72645) - fix multi-level redirect in server actions: [#&#8203;72770](https://github.com/vercel/next.js/issues/72770) - refactor: rename error boundary not-found to http-error-fallback: [#&#8203;72586](https://github.com/vercel/next.js/issues/72586) - Upgrade React from `5c56b873-20241107` to `7ac8e612-20241113`: [#&#8203;72768](https://github.com/vercel/next.js/issues/72768) - Re-use randomly selected dev server port for automatic restarts: [#&#8203;72771](https://github.com/vercel/next.js/issues/72771) - Emit build error when `"use cache"` is used without `dynamicIO` enabled: [#&#8203;72781](https://github.com/vercel/next.js/issues/72781) - fix: not found bounary prop: [#&#8203;72784](https://github.com/vercel/next.js/issues/72784) - silence sass `legacy-js-api` warning: [#&#8203;72632](https://github.com/vercel/next.js/issues/72632) - \[Segment Prefetch] Move access token to route tree: [#&#8203;72775](https://github.com/vercel/next.js/issues/72775) - Add internal affordances to show ignore-listed stackframes in terminal: [#&#8203;72763](https://github.com/vercel/next.js/issues/72763) - chore(turbopack): Centralize reqwest TLS feature configs in turbo-tasks-fetch: [#&#8203;72526](https://github.com/vercel/next.js/issues/72526) - Upgrade React from `7ac8e612-20241113` to `380f5d67-20241113`: [#&#8203;72819](https://github.com/vercel/next.js/issues/72819) - Shorten unsourcemapped absolute locations in terminal stacktraces: [#&#8203;72764](https://github.com/vercel/next.js/issues/72764) - codemod: replace `revalidate(Tag|Path)` to `expire(Tag|Path)`: [#&#8203;72826](https://github.com/vercel/next.js/issues/72826) - "Fix": Lift type check out of loop: [#&#8203;72840](https://github.com/vercel/next.js/issues/72840) - hide stack trace in CanaryOnlyError: [#&#8203;72859](https://github.com/vercel/next.js/issues/72859) - Allow missing CacheNodeSeedData during prefetch: [#&#8203;72857](https://github.com/vercel/next.js/issues/72857) - Add Segment Cache feature check to `prefetch` API: [#&#8203;72861](https://github.com/vercel/next.js/issues/72861) - Extract shared fetchFromServerResponse logic to separate functions: [#&#8203;72865](https://github.com/vercel/next.js/issues/72865) - \[Segment Cache] Implement behavior on cache miss : [#&#8203;72841](https://github.com/vercel/next.js/issues/72841) - Emit build error for unknown cache kinds: [#&#8203;72832](https://github.com/vercel/next.js/issues/72832) - Resolve mdx plugins string format: [#&#8203;72802](https://github.com/vercel/next.js/issues/72802) - MDX: Only set experimental.turbo if enabled: [#&#8203;72856](https://github.com/vercel/next.js/issues/72856) - \[Turbopack] change persistent caching option to a boolean: [#&#8203;72458](https://github.com/vercel/next.js/issues/72458) - refactor: generalize next route error helpers: [#&#8203;72774](https://github.com/vercel/next.js/issues/72774) - Ensure host is in allowed headers: [#&#8203;72867](https://github.com/vercel/next.js/issues/72867) - refactor: types for collected cache info in route modules: [#&#8203;71434](https://github.com/vercel/next.js/issues/71434) - feat(turbopack): Enable tree shaking for modules with dynamic imports: [#&#8203;71692](https://github.com/vercel/next.js/issues/71692) - Fix unhandled rejection in proxy-request: [#&#8203;72530](https://github.com/vercel/next.js/issues/72530) - chore(build): remove injecting fast refresh to custom loader logs: [#&#8203;72870](https://github.com/vercel/next.js/issues/72870) - ensure webpack worker exits bubble to parent process: [#&#8203;72921](https://github.com/vercel/next.js/issues/72921) - Fix sourcemaps for internal client boundaries: [#&#8203;72922](https://github.com/vercel/next.js/issues/72922) - Turbopack: thread tracing through to resolve results: [#&#8203;72314](https://github.com/vercel/next.js/issues/72314) - Upgrade vercel og: [#&#8203;72954](https://github.com/vercel/next.js/issues/72954) - Turbopack NFT: trace manifests and externals: [#&#8203;72316](https://github.com/vercel/next.js/issues/72316) - Turbopack: NFT followups: [#&#8203;72517](https://github.com/vercel/next.js/issues/72517) - Support custom servers with minimal node modules: [#&#8203;72966](https://github.com/vercel/next.js/issues/72966) - Add support for ignore-listing sources in index maps: [#&#8203;72913](https://github.com/vercel/next.js/issues/72913) - Turbopack: fix loading of externals on Edge: [#&#8203;72349](https://github.com/vercel/next.js/issues/72349) - Bump SWC used for transpiling Next.js sources: [#&#8203;72993](https://github.com/vercel/next.js/issues/72993) - fix: ensure HTML validity for the `next-size-adjust` meta tag: [#&#8203;72994](https://github.com/vercel/next.js/issues/72994) - Revert "Support custom servers with minimal node modules": [#&#8203;73003](https://github.com/vercel/next.js/issues/73003) - Allow CacheNode.loading to be a promise: [#&#8203;72872](https://github.com/vercel/next.js/issues/72872) - Properly encode dynamic access in segment prefetch: [#&#8203;72874](https://github.com/vercel/next.js/issues/72874) - \[Segment Cache] Send <head> during route prefetch: [#&#8203;72890](https://github.com/vercel/next.js/issues/72890) - fix(next/image): improve svg heuristic for unoptimized: [#&#8203;72970](https://github.com/vercel/next.js/issues/72970) - \[Segment Cache] Initial implementation: [#&#8203;72875](https://github.com/vercel/next.js/issues/72875) - Turbopack: Change edge wrapper to proxy exports : [#&#8203;72502](https://github.com/vercel/next.js/issues/72502) - experimental: css inlining: [#&#8203;72195](https://github.com/vercel/next.js/issues/72195) - Display where the env was loaded from when enabled `typedEnv`: [#&#8203;70951](https://github.com/vercel/next.js/issues/70951) - create forked impl for Link component: [#&#8203;73019](https://github.com/vercel/next.js/issues/73019) - remove unnecessary handling in forked Link components: [#&#8203;73020](https://github.com/vercel/next.js/issues/73020) - Pass down ignored field to error overlay: [#&#8203;72925](https://github.com/vercel/next.js/issues/72925) - remove locale from app link: [#&#8203;73052](https://github.com/vercel/next.js/issues/73052) - fix: server action redirects between multiple root layouts: [#&#8203;73063](https://github.com/vercel/next.js/issues/73063) - Add forbidden and unauthorized APIs: [#&#8203;72785](https://github.com/vercel/next.js/issues/72785) - chore: rename modules for better meaning and searching: [#&#8203;73067](https://github.com/vercel/next.js/issues/73067) - fix(next/image): reduce avif sharp effort from 4 to 3 for faster encoding: [#&#8203;73030](https://github.com/vercel/next.js/issues/73030) - (E2E) Log which config file is used for `next start`: [#&#8203;73105](https://github.com/vercel/next.js/issues/73105) - Remove extra space in envionment log: [#&#8203;73108](https://github.com/vercel/next.js/issues/73108) - remove inheritance from NextCustomServer: [#&#8203;73005](https://github.com/vercel/next.js/issues/73005) - Align navigation digest with message: [#&#8203;73074](https://github.com/vercel/next.js/issues/73074) - refactor: move redirect helpers into separate module: [#&#8203;73118](https://github.com/vercel/next.js/issues/73118) - Update font data: [#&#8203;73115](https://github.com/vercel/next.js/issues/73115) - Current behavior for fallbacks with async metadata and prefetching: [#&#8203;73106](https://github.com/vercel/next.js/issues/73106) - Revert "ensure webpack worker exits bubble to parent process ([#&#8203;72921](https://github.com/vercel/next.js/issues/72921))": [#&#8203;73136](https://github.com/vercel/next.js/issues/73136) - Reapply "ensure webpack worker exits bubble to parent process ([#&#8203;72921](https://github.com/vercel/next.js/issues/72921))": [#&#8203;73138](https://github.com/vercel/next.js/issues/73138) - Upgrade React from [`380f5d6`](https://github.com/vercel/next.js/commit/380f5d67)-20241113 to [`b01722d`](https://github.com/vercel/next.js/commit/b01722d5)-20241114: [#&#8203;73107](https://github.com/vercel/next.js/issues/73107) - Implement metadata types support for `exactOptionalPropertyTypes`: [#&#8203;72936](https://github.com/vercel/next.js/issues/72936) - Reenable otel test for Turbopack: [#&#8203;73093](https://github.com/vercel/next.js/issues/73093) - Omit unnecessary cache wrapper import: [#&#8203;73160](https://github.com/vercel/next.js/issues/73160) - Increase max cache tags to 128: [#&#8203;73124](https://github.com/vercel/next.js/issues/73124) - Do not inline CSS in RSC payload for dynamic client nav: [#&#8203;73182](https://github.com/vercel/next.js/issues/73182) - fix(next/image): dpl query string should only be used for local images, not remote images: [#&#8203;73184](https://github.com/vercel/next.js/issues/73184) - feat(after): unflag unstable_after internals: [#&#8203;73190](https://github.com/vercel/next.js/issues/73190) - feat(after): allow using unstable_after in generateStaticParams: [#&#8203;73217](https://github.com/vercel/next.js/issues/73217) - Error on navigation API usage in pages router and middleware: [#&#8203;73100](https://github.com/vercel/next.js/issues/73100) - Undeprecate revalidate APIs and rename expire APIs: [#&#8203;73193](https://github.com/vercel/next.js/issues/73193) - Revert "codemod: replace `revalidate(Tag|Path)` to `expire(Tag|Path)`": [#&#8203;73269](https://github.com/vercel/next.js/issues/73269) - feat(after): wait for after-callbacks before server shutdown: [#&#8203;72590](https://github.com/vercel/next.js/issues/72590) - Fixed interception on a catch-all route: [#&#8203;72902](https://github.com/vercel/next.js/issues/72902) - add option to disable experimental CssChunkingPlugin: [#&#8203;73286](https://github.com/vercel/next.js/issues/73286) - rename cssChunkPlugin experimental options: [#&#8203;73291](https://github.com/vercel/next.js/issues/73291) - Replace the group frames with button for ignored frames: [#&#8203;72964](https://github.com/vercel/next.js/issues/72964) - handle pages router ignored frames: [#&#8203;73280](https://github.com/vercel/next.js/issues/73280) - fix(after): no request APIs in force-static: [#&#8203;73321](https://github.com/vercel/next.js/issues/73321) - fix(after): allow reading draftMode status in after: [#&#8203;73324](https://github.com/vercel/next.js/issues/73324) - \[Turbopack] reland refactor filesystem writes to an effect based system: [#&#8203;73294](https://github.com/vercel/next.js/issues/73294) - fix(pages): dynamic css missing style after client navigation: [#&#8203;72959](https://github.com/vercel/next.js/issues/72959) - Make `notFound()` work in `"use cache"` page: [#&#8203;73210](https://github.com/vercel/next.js/issues/73210) - refactor(after): remove unnecessary conditionals: [#&#8203;73447](https://github.com/vercel/next.js/issues/73447) - Bump `@swc/core` to 1.9.3: [#&#8203;73420](https://github.com/vercel/next.js/issues/73420) - fix: running cleanup before server is initialized: [#&#8203;73476](https://github.com/vercel/next.js/issues/73476) - \[edge-runtime] drop node16: [#&#8203;73432](https://github.com/vercel/next.js/issues/73432) - feat(after): allow request APIs in after (actions/handlers): [#&#8203;73345](https://github.com/vercel/next.js/issues/73345) - Sourcemap errors logged in Edge runtime: [#&#8203;73438](https://github.com/vercel/next.js/issues/73438) - refactor: rename ALS instances to prevent bad auto imports: [#&#8203;73480](https://github.com/vercel/next.js/issues/73480) - Show a proper error if a server function's bound args cannot be serialized: [#&#8203;73471](https://github.com/vercel/next.js/issues/73471) - remove unnecessary internal middleware header from response: [#&#8203;73482](https://github.com/vercel/next.js/issues/73482) - Ensure Issue Overlay sourcemaps externals in Turbopack: [#&#8203;73439](https://github.com/vercel/next.js/issues/73439) - Fix missing error message in terminal for bound args serialization error: [#&#8203;73508](https://github.com/vercel/next.js/issues/73508) - fix: memory leak from `warnOnce()`: [#&#8203;73483](https://github.com/vercel/next.js/issues/73483) - Upgrade React from `b01722d5-20241114` to `1b1283ad-20241203`: [#&#8203;73506](https://github.com/vercel/next.js/issues/73506) - Fix: Importing an ESM file from *next/dist/client/*.js fails: [#&#8203;73485](https://github.com/vercel/next.js/issues/73485) - fix: fixed dedupe response cloning: [#&#8203;73274](https://github.com/vercel/next.js/issues/73274) - Upgrade React from `1b1283ad-20241203` to `de68d2f4-20241204`: [#&#8203;73525](https://github.com/vercel/next.js/issues/73525) - fix(after): improve error message if promise arg rejects: [#&#8203;73524](https://github.com/vercel/next.js/issues/73524) - feat: added compression to resume data cache using deflate: [#&#8203;73227](https://github.com/vercel/next.js/issues/73227) - Use React 19 stable in Pages Router: [#&#8203;73562](https://github.com/vercel/next.js/issues/73562) - Use stable `@types/react`: [#&#8203;73563](https://github.com/vercel/next.js/issues/73563) - Cache the bound args encryption result for inline server functions: [#&#8203;73521](https://github.com/vercel/next.js/issues/73521) - chore: remove non-existent hash fragments from URLs: [#&#8203;73165](https://github.com/vercel/next.js/issues/73165) - next-upgrade: Ensure highest versions are used not latest: [#&#8203;73566](https://github.com/vercel/next.js/issues/73566) - Upgrade React from `de68d2f4-20241204` to `1c9b1387-20241204`: [#&#8203;73565](https://github.com/vercel/next.js/issues/73565) - Use consistent error formatting in terminal: [#&#8203;71909](https://github.com/vercel/next.js/issues/71909) - \[Segment Cache] Interception routes: [#&#8203;73434](https://github.com/vercel/next.js/issues/73434) - Upgrade to typescript 5.7: [#&#8203;73594](https://github.com/vercel/next.js/issues/73594) - \[Segment Cache] Use LRU to manage cache data : [#&#8203;73486](https://github.com/vercel/next.js/issues/73486) - \[Segment Cache] Add isPartial to segment prefetch : [#&#8203;73528](https://github.com/vercel/next.js/issues/73528) - Fix missing client reference manifest error when using route groups: [#&#8203;73606](https://github.com/vercel/next.js/issues/73606) - feat(after): stabilize `unstable_after`: [#&#8203;73605](https://github.com/vercel/next.js/issues/73605) - \[Segment Cache] Add isHeadPartial: [#&#8203;73530](https://github.com/vercel/next.js/issues/73530) - fix: do not add suffix for sitemap under group routes: [#&#8203;73570](https://github.com/vercel/next.js/issues/73570) - Dynamic IO: Improve error handling: [#&#8203;73607](https://github.com/vercel/next.js/issues/73607) - fix: Update [@&#8203;swc/helpers](https://github.com/swc/helpers): [#&#8203;73666](https://github.com/vercel/next.js/issues/73666) - Upgrade React from `1c9b1387-20241204` to `7283a213-20241206`: [#&#8203;73608](https://github.com/vercel/next.js/issues/73608) - next-codemod(upgrade): handle absence of scripts in package.json: [#&#8203;73688](https://github.com/vercel/next.js/issues/73688) - Add inlineCss trade-offs/gotchas and remove canary check: [#&#8203;73609](https://github.com/vercel/next.js/issues/73609) - Ignore-list stack frames in node_modules even if not explicitly ignore-listed by their sourcemaps: [#&#8203;73689](https://github.com/vercel/next.js/issues/73689) - Remove ignore for anonymous stack frame: [#&#8203;73610](https://github.com/vercel/next.js/issues/73610) - test: move HMR Error Recovery test to a separate file: [#&#8203;73592](https://github.com/vercel/next.js/issues/73592) - test: move HMR basic test to a separate file: [#&#8203;73612](https://github.com/vercel/next.js/issues/73612) - fixes webpack persistent caching in development and add test case for persistent caching: [#&#8203;73697](https://github.com/vercel/next.js/issues/73697) - fix: empty generateStaticParams should still create an ISR route: [#&#8203;73358](https://github.com/vercel/next.js/issues/73358) - Limit the number of concurrently open file watchers on macos: [#&#8203;73741](https://github.com/vercel/next.js/issues/73741) - fix: `warnOnce()` lru: [#&#8203;73742](https://github.com/vercel/next.js/issues/73742) - \[Segment Cache] Respond with 204 on cache miss: [#&#8203;73649](https://github.com/vercel/next.js/issues/73649) - \[Segment Cache] Skip dynamic request if possible: [#&#8203;73540](https://github.com/vercel/next.js/issues/73540) ##### Example Changes - example: add more files to `playwright` .gitignore: [#&#8203;72447](https://github.com/vercel/next.js/issues/72447) - examples: update app-dir-i18n-routing to v15: [#&#8203;72636](https://github.com/vercel/next.js/issues/72636) - chore(example): add example for image optimization with secure compute: [#&#8203;72641](https://github.com/vercel/next.js/issues/72641) - examples: update app-dir-i18n-routing to v15: [#&#8203;72642](https://github.com/vercel/next.js/issues/72642) - examples: polish some README.md: [#&#8203;72117](https://github.com/vercel/next.js/issues/72117) - examples(with-supabase): fix action type error: [#&#8203;72783](https://github.com/vercel/next.js/issues/72783) - use explicit resource management for sandbox: [#&#8203;72780](https://github.com/vercel/next.js/issues/72780) - update: remove unnecessary in Dockerfile: [#&#8203;72534](https://github.com/vercel/next.js/issues/72534) - Fix Mongoose example failed build due to env variable not found: [#&#8203;72918](https://github.com/vercel/next.js/issues/72918) - (example) using `await` params when dynamic routing: [#&#8203;72896](https://github.com/vercel/next.js/issues/72896) - Updated the example of with-styled-jsx-scss to utilize the App Router.: [#&#8203;70567](https://github.com/vercel/next.js/issues/70567) - Updated the example of with-styled-jsx-plugins to utilize the App Router: [#&#8203;70663](https://github.com/vercel/next.js/issues/70663) - Updated the example of with-unstated to utilize the App Router.: [#&#8203;73211](https://github.com/vercel/next.js/issues/73211) - updated with-react-foundation example to utilize the App router.: [#&#8203;73243](https://github.com/vercel/next.js/issues/73243) - updated with-plausible example to utilize the app router.: [#&#8203;73255](https://github.com/vercel/next.js/issues/73255) - updated with-cssed example to utilize the app router.: [#&#8203;73348](https://github.com/vercel/next.js/issues/73348) - updated with-babel-macros example to utilize the app router.: [#&#8203;73347](https://github.com/vercel/next.js/issues/73347) - updated image-legacy-component example to utilize the app router.: [#&#8203;73344](https://github.com/vercel/next.js/issues/73344) - updated with-styletron example to utilize the app router.: [#&#8203;73252](https://github.com/vercel/next.js/issues/73252) - updated with-context-api example to utilize the App Router.: [#&#8203;73316](https://github.com/vercel/next.js/issues/73316) - updated with-mqtt-js example to utilize the App Router.: [#&#8203;73303](https://github.com/vercel/next.js/issues/73303) - chore(examples): update api-routes-cors: [#&#8203;73408](https://github.com/vercel/next.js/issues/73408) - chore: release turbopack npm packages: [#&#8203;73443](https://github.com/vercel/next.js/issues/73443) - examples: remove `app-dir` in `i18n-routing` directory name: [#&#8203;73453](https://github.com/vercel/next.js/issues/73453) - examples: move Postgres example: [#&#8203;73531](https://github.com/vercel/next.js/issues/73531) - Bump `examples/**` Eslint to v9: [#&#8203;73560](https://github.com/vercel/next.js/issues/73560) - Update with next sass example: [#&#8203;73548](https://github.com/vercel/next.js/issues/73548) - examples: remove `next-env.d.ts` files: [#&#8203;73673](https://github.com/vercel/next.js/issues/73673) - examples: update `with-sass` README.md: [#&#8203;73668](https://github.com/vercel/next.js/issues/73668) - examples: remove `next-offline` example: [#&#8203;73675](https://github.com/vercel/next.js/issues/73675) - examples: remove the old files from `with-postgres`: [#&#8203;73587](https://github.com/vercel/next.js/issues/73587) - examples: remove `with-emotion-*` directories: [#&#8203;73674](https://github.com/vercel/next.js/issues/73674) - updated with-ionic-typescript example to utilize the App Router.: [#&#8203;73418](https://github.com/vercel/next.js/issues/73418) - examples: update `with-styletron` README.md: [#&#8203;73411](https://github.com/vercel/next.js/issues/73411) - examples: update `with-babel-macros` README.md: [#&#8203;73410](https://github.com/vercel/next.js/issues/73410) - examples: update `with-plausible` README: [#&#8203;73305](https://github.com/vercel/next.js/issues/73305) - examples: unify related CMS examples in README: [#&#8203;73247](https://github.com/vercel/next.js/issues/73247) - examples: fix view source pathname at `image-legacy-component`: [#&#8203;73414](https://github.com/vercel/next.js/issues/73414) - examples: remove `with-styled-components-babel`: [#&#8203;73229](https://github.com/vercel/next.js/issues/73229) - examples: replaced GTM component with GA in Google Analytics example: [#&#8203;73597](https://github.com/vercel/next.js/issues/73597) - examples: introduce LaunchPad in strapi: [#&#8203;73244](https://github.com/vercel/next.js/issues/73244) - examples: remove `with-storybook-styled-jsx-scss`: [#&#8203;73228](https://github.com/vercel/next.js/issues/73228) ##### Misc Changes - Revert "\[Turbopack] add rocksdb": [#&#8203;72505](https://github.com/vercel/next.js/issues/72505) - \[Docs]: Remove try catch and link to error handling docs: [#&#8203;72500](https://github.com/vercel/next.js/issues/72500) - \[Turbopack] improve performance of the trace server: [#&#8203;71661](https://github.com/vercel/next.js/issues/71661) - Docs: Move `next.config.js` API pages under a `config` folder, fix headings in TS and ESLint config pages: [#&#8203;72465](https://github.com/vercel/next.js/issues/72465) - Skip canary checks during internal development with VSCode: [#&#8203;72504](https://github.com/vercel/next.js/issues/72504) - Devlow snowflake backend: use milliseconds instead of seconds for event time: [#&#8203;72490](https://github.com/vercel/next.js/issues/72490) - \[Turbopack] add TODO comment: [#&#8203;72510](https://github.com/vercel/next.js/issues/72510) - docs: unify the header deps by removing #: [#&#8203;72451](https://github.com/vercel/next.js/issues/72451) - fix: remove unnecessary fragment: [#&#8203;72492](https://github.com/vercel/next.js/issues/72492) - Fix grammatical error: remove unnecessary 'a' in 03-server-actions-and-mutations.mdx: [#&#8203;72496](https://github.com/vercel/next.js/issues/72496) - docs: fix broken link: [#&#8203;72169](https://github.com/vercel/next.js/issues/72169) - codemod(turbopack): Replace `return Err(anyhow!())` with `anyhow::bail!()`: [#&#8203;72487](https://github.com/vercel/next.js/issues/72487) - Upgrade React from `66855b96-20241106` to `5c56b873-20241107`: [#&#8203;72469](https://github.com/vercel/next.js/issues/72469) - fix(turbopack): Remove self-references from tree shaking results: [#&#8203;72567](https://github.com/vercel/next.js/issues/72567) - Turbopack: Don't run PostCSS on internal assets: [#&#8203;72579](https://github.com/vercel/next.js/issues/72579) - Update `swc_core` to `v5.0.4` from `v5.0.1`: [#&#8203;72604](https://github.com/vercel/next.js/issues/72604) - (e2e) module-level `patchFileDelay` flag: [#&#8203;72439](https://github.com/vercel/next.js/issues/72439) - docs: remove unstable_after from Dynamic APIs: [#&#8203;72595](https://github.com/vercel/next.js/issues/72595) - chore: release turbopack npm packages: [#&#8203;72491](https://github.com/vercel/next.js/issues/72491) - Include bound args param in server reference information byte arg mask: [#&#8203;72588](https://github.com/vercel/next.js/issues/72588) - \[Turbopack] fix bug where task was not recomputed when stale: [#&#8203;72509](https://github.com/vercel/next.js/issues/72509) - CNA: prompt enable turbopack value to true: [#&#8203;72616](https://github.com/vercel/next.js/issues/72616) - docs(use-cache): add missing `function` to page component examples: [#&#8203;72620](https://github.com/vercel/next.js/issues/72620) - docs(data-fetching): fix static params as promise examples : [#&#8203;72565](https://github.com/vercel/next.js/issues/72565) - Re-enable fetch logging test - HMR: [#&#8203;72640](https://github.com/vercel/next.js/issues/72640) - \[Turbopack] migrate benchmark to new backend: [#&#8203;72457](https://github.com/vercel/next.js/issues/72457) - test: add wait for the error page navigation: [#&#8203;72760](https://github.com/vercel/next.js/issues/72760) - CNA: use eslint 9: [#&#8203;72762](https://github.com/vercel/next.js/issues/72762) - CNA: replace geist font from local to google: [#&#8203;72618](https://github.com/vercel/next.js/issues/72618) - fix(turbopack): Depend on side effect from import binding: [#&#8203;72601](https://github.com/vercel/next.js/issues/72601) - chore: keep create-next-app messages and docs the same: [#&#8203;72444](https://github.com/vercel/next.js/issues/72444) - ci: flake detection should run in both bundlers: [#&#8203;72773](https://github.com/vercel/next.js/issues/72773) - \[Turbopack] reduce nesting: [#&#8203;72747](https://github.com/vercel/next.js/issues/72747) - docs: update file structure: [#&#8203;72748](https://github.com/vercel/next.js/issues/72748) - chore(cna): switch to .mjs tailwind config: [#&#8203;72124](https://github.com/vercel/next.js/issues/72124) - \[Turbopack] fix collectibles counting and aggregation: [#&#8203;72609](https://github.com/vercel/next.js/issues/72609) - \[Turbopack] implement dispose root task: [#&#8203;72611](https://github.com/vercel/next.js/issues/72611) - feat(turbopack): Merge single-pointer nodes in reverse direction: [#&#8203;72571](https://github.com/vercel/next.js/issues/72571) - test: fix hydration error on not-found test texture: [#&#8203;72818](https://github.com/vercel/next.js/issues/72818) - docs(turbo-tasks): Improve RcStr docs: [#&#8203;72825](https://github.com/vercel/next.js/issues/72825) - fix(turbopack): type error when "dynamic_embed_contents" is on: [#&#8203;72828](https://github.com/vercel/next.js/issues/72828) - \[Turbopack] make issue ordering stable: [#&#8203;72751](https://github.com/vercel/next.js/issues/72751) - refactor(turbopack): Use `ResolvedVc` for `turbopack` crate: [#&#8203;72791](https://github.com/vercel/next.js/issues/72791) - refactor(turbo-tasks): Simplify most type bounds on Vc<T> and related types: [#&#8203;72823](https://github.com/vercel/next.js/issues/72823) - fix(turbopack): Fix CSS Module renaming behavior for `@container`: [#&#8203;72607](https://github.com/vercel/next.js/issues/72607) - refactor(turbopack): Cleanup tree shaking graph logic: [#&#8203;72836](https://github.com/vercel/next.js/issues/72836) - \[Turbopack] fix hanging waiting on in progress cells: [#&#8203;72758](https://github.com/vercel/next.js/issues/72758) - \[Turbopack] avoid writing manifests in data/rsc variant of page: [#&#8203;72767](https://github.com/vercel/next.js/issues/72767) - Consolidate server actions transform errors into `emit_error` function: [#&#8203;72811](https://github.com/vercel/next.js/issues/72811) - refactor(turbo-rcstr): Move turbo_tasks::RcStr into it's own crate: [#&#8203;72858](https://github.com/vercel/next.js/issues/72858) - Add explicit section about type overriding for v15: [#&#8203;72866](https://github.com/vercel/next.js/issues/72866) - refactor(turbopack): Use `ResolvedVc` for `turbopack-ecmascript`: [#&#8203;72564](https://github.com/vercel/next.js/issues/72564) - refactor(turbopack): Use graph for server action workaround: [#&#8203;72812](https://github.com/vercel/next.js/issues/72812) - \[Turbopack] refactor filesystem writes to an effect based system: [#&#8203;72847](https://github.com/vercel/next.js/issues/72847) - Fix sourcemaps for async Turbopack chunks: [#&#8203;72827](https://github.com/vercel/next.js/issues/72827) - docs(turbopack): Document build dependency on clang for rocksdb: [#&#8203;72493](https://github.com/vercel/next.js/issues/72493) - Clarify how MDX plugins are supported in Turbopack: [#&#8203;72917](https://github.com/vercel/next.js/issues/72917) - Turbopack: Don't replace constant conditions with sideeffects: [#&#8203;72608](https://github.com/vercel/next.js/issues/72608) - \[Turbopack] fix effects tracing: [#&#8203;72928](https://github.com/vercel/next.js/issues/72928) - docs: fix code block language in redirecting docs: [#&#8203;72944](https://github.com/vercel/next.js/issues/72944) - docs: fix code block language in error pages: [#&#8203;72943](https://github.com/vercel/next.js/issues/72943) - docs: update "Migrate to async Dynamic APIs" docs: [#&#8203;72852](https://github.com/vercel/next.js/issues/72852) - Fix broken link to the `rootDir` doc: [#&#8203;72893](https://github.com/vercel/next.js/issues/72893) - docs: use relative urls: [#&#8203;72941](https://github.com/vercel/next.js/issues/72941) - docs: add the section titles to error page: [#&#8203;72942](https://github.com/vercel/next.js/issues/72942) - simplify vapid key generation docs: [#&#8203;72916](https://github.com/vercel/next.js/issues/72916) - docs: add and unify notes to error pages: [#&#8203;72838](https://github.com/vercel/next.js/issues/72838) - feat(turbopack): Implement module walking for side effect optimization: [#&#8203;71241](https://github.com/vercel/next.js/issues/71241) - docs: remove deprecated `frameborder`, adjust `allowFullScreen` and update the demo: [#&#8203;72644](https://github.com/vercel/next.js/issues/72644) - docs: fix code block language: [#&#8203;72839](https://github.com/vercel/next.js/issues/72839) - Docs: Changing information about data fetching cache: [#&#8203;72301](https://github.com/vercel/next.js/issues/72301) - Turbopack: apply effects in tests: [#&#8203;72952](https://github.com/vercel/next.js/issues/72952) - doc: remove internal `customServer` flag from custom server docs: [#&#8203;72962](https://github.com/vercel/next.js/issues/72962) - codemod(turbopack): Some more script-generated migrations to ResolvedVc: [#&#8203;72889](https://github.com/vercel/next.js/issues/72889) - Consolidate `FnExpr` and `FnDecl` server function transforms: [#&#8203;72960](https://github.com/vercel/next.js/issues/72960) - Allow method properties to be server functions: [#&#8203;72969](https://github.com/vercel/next.js/issues/72969) - Include `debug` script in test directories: [#&#8203;72992](https://github.com/vercel/next.js/issues/72992) - docs(sitemap): remove extra 's': [#&#8203;73023](https://github.com/vercel/next.js/issues/73023) - chore(turbopack-core): Delete dead `all_modules_and_affecting_sources` helper function: [#&#8203;73016](https://github.com/vercel/next.js/issues/73016) - \[Turbopack] concurrent write batches and little endian encoding: [#&#8203;72929](https://github.com/vercel/next.js/issues/72929) - Remove unused `retry` around `browser.eval`: [#&#8203;72999](https://github.com/vercel/next.js/issues/72999) - \[Turbopack] Invalidation and Persisting fixes: [#&#8203;72950](https://github.com/vercel/next.js/issues/72950) - docs: missing `await` when using params: [#&#8203;73044](https://github.com/vercel/next.js/issues/73044) - docs: incorrect `params.id`: [#&#8203;73045](https://github.com/vercel/next.js/issues/73045) - Remove hardcoded timeouts in Redbox test helpers: [#&#8203;73000](https://github.com/vercel/next.js/issues/73000) - perf(turbopack): Enable merging of export fragments: [#&#8203;72813](https://github.com/vercel/next.js/issues/72813) - Turbopack build: Add bench for Turbopack cache: [#&#8203;73040](https://github.com/vercel/next.js/issues/73040) - 🍪 Understanding Cookie Behavior in Server Components: [#&#8203;73001](https://github.com/vercel/next.js/issues/73001) - docs: add Fleek's Next.js template: [#&#8203;72988](https://github.com/vercel/next.js/issues/72988) - docs(fetch): clarify default fetch behavior: [#&#8203;72982](https://github.com/vercel/next.js/issues/72982) - docs: update staleTimes.mdx: [#&#8203;72967](https://github.com/vercel/next.js/issues/72967) - docs:` Redirecting ` fix route handler path: [#&#8203;72617](https://github.com/vercel/next.js/issues/72617) - Rename `waitForAndOpenRuntimeError` to `openRedbox`: [#&#8203;72996](https://github.com/vercel/next.js/issues/72996) - Revert "docs: add Fleek's Next.js template": [#&#8203;73054](https://github.com/vercel/next.js/issues/73054) - fix benchmark directory: [#&#8203;73057](https://github.com/vercel/next.js/issues/73057) - hmr-test waits for compile signal: [#&#8203;73064](https://github.com/vercel/next.js/issues/73064) - docs(next-config): add experimental inline css docs: [#&#8203;73070](https://github.com/vercel/next.js/issues/73070) - docs: update tags when upgrading from 13 to 14: [#&#8203;73071](https://github.com/vercel/next.js/issues/73071) - docs: fix static params as promise examples: [#&#8203;72553](https://github.com/vercel/next.js/issues/72553) - fix: missing await, missing type Promise: [#&#8203;73088](https://github.com/vercel/next.js/issues/73088) - Disallow multiple server directives at the same level (file or function): [#&#8203;73018](https://github.com/vercel/next.js/issues/73018) - Docs: Add canary tags to `expirePath` and `expireTag`: [#&#8203;73096](https://github.com/vercel/next.js/issues/73096) - docs: update pages automatic static optimization rendering page: [#&#8203;72545](https://github.com/vercel/next.js/issues/72545) - docs(authentication): fix typescript code example: [#&#8203;72533](https://github.com/vercel/next.js/issues/72533) - docs: add details on React Compiler annotations with `"use memo"`: [#&#8203;73053](https://github.com/vercel/next.js/issues/73053) - docs: fix code block language on redirecting docs: [#&#8203;73073](https://github.com/vercel/next.js/issues/73073) - docs(routing): update params type to be async (v15): [#&#8203;73111](https://github.com/vercel/next.js/issues/73111) - docs: clarify Switching to Dynamic Rendering section: [#&#8203;73113](https://github.com/vercel/next.js/issues/73113) - Method/function props of exported objects are not server functions: [#&#8203;73058](https://github.com/vercel/next.js/issues/73058) - Forbid `this` and `arguments` in server functions: [#&#8203;73059](https://github.com/vercel/next.js/issues/73059) - port turbopack-swc-utils to ResolvedVc: [#&#8203;73086](https://github.com/vercel/next.js/issues/73086) - port turbopack-mdx to use ResolvedVc: [#&#8203;73080](https://github.com/vercel/next.js/issues/73080) - feat: Update `lightningcss` to `v1.0.0-alpha.61`: [#&#8203;73161](https://github.com/vercel/next.js/issues/73161) - port turbopack-resolve to ResolvedVc: [#&#8203;73083](https://github.com/vercel/next.js/issues/73083) - move turbopack-image to ResolvedVc: [#&#8203;73079](https://github.com/vercel/next.js/issues/73079) - Turbopack: more tracing spans: [#&#8203;73010](https://github.com/vercel/next.js/issues/73010) - Handle server function directives in class methods: [#&#8203;73060](https://github.com/vercel/next.js/issues/73060) - 15.1 docs: `forbidden`, `unauthorized`, and `authInterrupts`: [#&#8203;73039](https://github.com/vercel/next.js/issues/73039) - Enable another Turbopack build test: [#&#8203;73166](https://github.com/vercel/next.js/issues/73166) - CNA: replace `.eslintrc.json` with `eslint.config.mjs`: [#&#8203;73162](https://github.com/vercel/next.js/issues/73162) - Turbopack: don't compute all paths for builds: [#&#8203;73036](https://github.com/vercel/next.js/issues/73036) - perf(turbopack): Use `ResolvedVc` for `turbopack-css`: [#&#8203;73172](https://github.com/vercel/next.js/issues/73172) - Revert change to ReactRefreshRequire test: [#&#8203;73186](https://github.com/vercel/next.js/issues/73186) - chore(CI): Remove sysroot override for macos arm64: [#&#8203;73188](https://github.com/vercel/next.js/issues/73188) - docs: Improve Accuracy and Type Safety on Data Fetching Examples: [#&#8203;73122](https://github.com/vercel/next.js/issues/73122) - docs: eslint flat config: [#&#8203;73167](https://github.com/vercel/next.js/issues/73167) - perf(turbopack): Use `ResolvedVc` for `turbopack-core`: [#&#8203;73065](https://github.com/vercel/next.js/issues/73065) - perf(turbopack): Use `ResolvedVc` for `turbopack`, `turbopack-tests`, `turbopack-wasm`: [#&#8203;73196](https://github.com/vercel/next.js/issues/73196) - perf(turbopack): Use `ResolvedVc` for `turbopack-nodejs`: [#&#8203;73200](https://github.com/vercel/next.js/issues/73200) - perf(turbopack): Use `ResolvedVc` for `turbopack-env`: [#&#8203;73202](https://github.com/vercel/next.js/issues/73202) - Getting Started Docs: Add new "Layouts and Pages" page: [#&#8203;73049](https://github.com/vercel/next.js/issues/73049) - Docs: `forbidden` and `unauthorized` nits: [#&#8203;73213](https://github.com/vercel/next.js/issues/73213) - Turbopack: make client references actual references: [#&#8203;73174](https://github.com/vercel/next.js/issues/73174) - Docs: Update `turbopack` API Reference: [#&#8203;73215](https://github.com/vercel/next.js/issues/73215) - Update authentication docs to use useActionState: [#&#8203;72503](https://github.com/vercel/next.js/issues/72503) - Don't hoist a server function if a compile error was emitted: [#&#8203;73189](https://github.com/vercel/next.js/issues/73189) - Forbid `super` in static class methods with server function directives: [#&#8203;73061](https://github.com/vercel/next.js/issues/73061) - port turbopack-node to ResolvedVc: [#&#8203;73082](https://github.com/vercel/next.js/issues/73082) - port turbopack-static to ResolvedVc: [#&#8203;73084](https://github.com/vercel/next.js/issues/73084) - perf(turbopack): Use `ResolvedVc` for `next-api`, part 1: [#&#8203;73234](https://github.com/vercel/next.js/issues/73234) - Pin undici in tests: [#&#8203;73263](https://github.com/vercel/next.js/issues/73263) - Turbopack: use try_join instead of future::try_join_all: [#&#8203;73261](https://github.com/vercel/next.js/issues/73261) - docs(server-actions): add missing formData type: [#&#8203;73257](https://github.com/vercel/next.js/issues/73257) - perf(turbopack): Use `ResolvedVc` for `next-api`, part 2: [#&#8203;73235](https://github.com/vercel/next.js/issues/73235) - docs: update static-tweet to react-tweet: [#&#8203;73253](https://github.com/vercel/next.js/issues/73253) - docs(fetching): `params` to `await params`: [#&#8203;73254](https://github.com/vercel/next.js/issues/73254) - convert let keyword to const keyword to data fetching and caching example: [#&#8203;73251](https://github.com/vercel/next.js/issues/73251) - \[Turbopack] instead of depending on all env vars, track them via Proxy in webpack loaders: [#&#8203;73112](https://github.com/vercel/next.js/issues/73112) - docs: update the demo link of kontent.ai: [#&#8203;73250](https://github.com/vercel/next.js/issues/73250) - Docs: Fix headings in `Layouts and Pages`: [#&#8203;73268](https://github.com/vercel/next.js/issues/73268) - remove ResolvedVc from trait functions: [#&#8203;73270](https://github.com/vercel/next.js/issues/73270) - perf(turbopack): Use `ResolvedVc` for `next-api`, part 3: [#&#8203;73236](https://github.com/vercel/next.js/issues/73236) - \[Turbopack] Revert "refactor filesystem writes to an effect based system": [#&#8203;73287](https://github.com/vercel/next.js/issues/73287) - Devlow: exit with non-zero code on failure: [#&#8203;73276](https://github.com/vercel/next.js/issues/73276) - perf(turbopack): Use `ResolvedVc` for `next-api`, part 4: [#&#8203;73237](https://github.com/vercel/next.js/issues/73237) - perf(turbopack): Use `ResolvedVc` for `turbopack-browser`: [#&#8203;73198](https://github.com/vercel/next.js/issues/73198) - perf(turbopack): Use `ResolvedVc` for `next-core`: [#&#8203;73177](https://github.com/vercel/next.js/issues/73177) - perf(turbopack): Use `ResolvedVc` for `next-api`, part 5: [#&#8203;73238](https://github.com/vercel/next.js/issues/73238) - test: reduce number of rendering loop causing flakiness: [#&#8203;73277](https://github.com/vercel/next.js/issues/73277) - Turbopack build: Fix css-minify test: [#&#8203;72990](https://github.com/vercel/next.js/issues/72990) - chore(turbo-tasks): Add a lint for `Vc<T>` in turbo-tasks types: [#&#8203;73298](https://github.com/vercel/next.js/issues/73298) - docs: add await before headers() and cookies() calls: [#&#8203;73315](https://github.com/vercel/next.js/issues/73315) - port turbopack-ecmascript to ResolvedVc: [#&#8203;73226](https://github.com/vercel/next.js/issues/73226) - test: fix canary test with 18.3.1: [#&#8203;73327](https://github.com/vercel/next.js/issues/73327) - Pin version of `nwsapi` (revert later): [#&#8203;73351](https://github.com/vercel/next.js/issues/73351) - fix Turbopack devlow bench: [#&#8203;73278](https://github.com/vercel/next.js/issues/73278) - Revert "Pin version of `nwsapi` (revert later)": [#&#8203;73353](https://github.com/vercel/next.js/issues/73353) - \[Turbopack] Performance improvements for Persistent Caching: [#&#8203;73265](https://github.com/vercel/next.js/issues/73265) - refactor(turbopack): Use `ResolvedVc<T>` for struct fields in `next-core`: [#&#8203;73310](https://github.com/vercel/next.js/issues/73310) - refactor(turbopack): Use `ResolvedVc<T>` for struct fields in `turbopack-ecmascript`: [#&#8203;73302](https://github.com/vercel/next.js/issues/73302) - refactor(turbopack): Use `ResolvedVc<T>` for struct fields in `turbopack-css`: [#&#8203;73300](https://github.com/vercel/next.js/issues/73300) - refactor(turbopack): Use `ResolvedVc<T>` for struct fields in `next-api`, part 1: [#&#8203;73366](https://github.com/vercel/next.js/issues/73366) - docs: add missing `default` to page component examples: [#&#8203;73233](https://github.com/vercel/next.js/issues/73233) - Documentation Fix: Typo and URL Correction: [#&#8203;73397](https://github.com/vercel/next.js/issues/73397) - \[Turbopack] Custom persistence layer: [#&#8203;73029](https://github.com/vercel/next.js/issues/73029) - chore(cna): add .pnpm-debug.log\* to all cna gitignore: [#&#8203;73446](https://github.com/vercel/next.js/issues/73446) - cna: update `.gitignore` to ignore all `.env` files: [#&#8203;73415](https://github.com/vercel/next.js/issues/73415) - chore(turbo-tasks): improve ast-grep lint time: [#&#8203;73440](https://github.com/vercel/next.js/issues/73440) - \[Turbopack] fix mmap advise on windows: [#&#8203;73462](https://github.com/vercel/next.js/issues/73462) - Getting Started docs: Images and Fonts: [#&#8203;73340](https://github.com/vercel/next.js/issues/73340) - Add mention of changing debugWithEdge to debugWithChrome.: [#&#8203;73409](https://github.com/vercel/next.js/issues/73409) - docs: Add note about remove of the `swcMinify` flag: [#&#8203;73281](https://github.com/vercel/next.js/issues/73281) - docs(typo): fix typos in `file conventions`, `functions`, and `errors`: [#&#8203;73376](https://github.com/vercel/next.js/issues/73376) - add more ResolvedVc best-practices lints: [#&#8203;73331](https://github.com/vercel/next.js/issues/73331) - docs: sort and update CMS examples: [#&#8203;73295](https://github.com/vercel/next.js/issues/73295) - Allow passing a nonce to google tag manager related script: [#&#8203;73370](https://github.com/vercel/next.js/issues/73370) - Getting Started Docs: CSS: [#&#8203;73341](https://github.com/vercel/next.js/issues/73341) - Getting Started docs: Fetching and Streaming: [#&#8203;73352](https://github.com/vercel/next.js/issues/73352) - Getting Started Docs: `Images and Fonts` feedback: [#&#8203;73470](https://github.com/vercel/next.js/issues/73470) - prevent accidentally re-creating ResolvedVc via deref by using a deprecated fn: [#&#8203;73428](https://github.com/vercel/next.js/issues/73428) - refactor(turbopack): Disable tree shaking by default: [#&#8203;73421](https://github.com/vercel/next.js/issues/73421) - \[Turbopack] fix race condition in database compaction: [#&#8203;73495](https://github.com/vercel/next.js/issues/73495) - fix unnecessary to_resolved calls in test cases: [#&#8203;73501](https://github.com/vercel/next.js/issues/73501) - \[Turbopack] small minor performance improvements for dirtyness tracking and scheduling: [#&#8203;73494](https://github.com/vercel/next.js/issues/73494) - turbopack-cli: Use correct fs and env for builds: [#&#8203;73487](https://github.com/vercel/next.js/issues/73487) - fix some trivial cases of to_resolved being used in a loop: [#&#8203;73435](https://github.com/vercel/next.js/issues/73435) - refactor(turbopack): Use `ResolvedVc<T>` for struct fields in `turbopack-core`: [#&#8203;73301](https://github.com/vercel/next.js/issues/73301) - refactor(turbopack): Use `ResolvedVc<T>` for struct fields in `turbo-tasks`: [#&#8203;73371](https://github.com/vercel/next.js/issues/73371) - refactor(turbopack): Use `ResolvedVc<T>` for trivial struct fields: [#&#8203;73372](https://github.com/vercel/next.js/issues/73372) - test: Enable tree shaking tests: [#&#8203;73541](https://github.com/vercel/next.js/issues/73541) - \[Turbopack] fix incorrect task access for Persistent Caching: [#&#8203;73549](https://github.com/vercel/next.js/issues/73549) - \[Turbopack] more debugging options for Persistent Cache: [#&#8203;73550](https://github.com/vercel/next.js/issues/73550) - sync-react: Add affordance to stop syncing Pages Router: [#&#8203;73533](https://github.com/vercel/next.js/issues/73533) - Remove unused React 17 install: [#&#8203;73534](https://github.com/vercel/next.js/issues/73534) - create-next-app: Use stable React 19 types: [#&#8203;73569](https://github.com/vercel/next.js/issues/73569) - Fix PostCSS dependency message handling: [#&#8203;73529](https://github.com/vercel/next.js/issues/73529) - docs: update the outdated generate sitemaps doc with versioned changes: [#&#8203;73547](https://github.com/vercel/next.js/issues/73547) - \[Turbopack] add telemetry for persistent caching usage: [#&#8203;73554](https://github.com/vercel/next.js/issues/73554) - docs: fix forbidden file paths: [#&#8203;73575](https://github.com/vercel/next.js/issues/73575) - docs(composition-patterns): add missing React.ReactNode type in layout.tsx example: [#&#8203;73577](https://github.com/vercel/next.js/issues/73577) - test: replace `check` to `retry` in hmr.test.ts: [#&#8203;73590](https://github.com/vercel/next.js/issues/73590) - chore(docs): mention uses for `unoptimized`: [#&#8203;73604](https://github.com/vercel/next.js/issues/73604) - test: fix next-sass test: [#&#8203;73633](https://github.com/vercel/next.js/issues/73633) - refactor(turbopack): Use `ResolvedVc<T>` for struct fields in extra crates: [#&#8203;73451](https://github.com/vercel/next.js/issues/73451) - refactor(turbopack): Use `ResolvedVc<T>` for struct fields in `next-api`, final part: [#&#8203;73367](https://github.com/vercel/next.js/issues/73367) - docs: Fix image component API reference parsing: [#&#8203;73658](https://github.com/vercel/next.js/issues/73658) - docs: fix code block language in images-and-fonts docs: [#&#8203;73492](https://github.com/vercel/next.js/issues/73492) - fix(turbopack): Fix deprecation warnings from unnecessary `.to_resolved()` calls: [#&#8203;73631](https://github.com/vercel/next.js/issues/73631) - \[Turbopack] replace EnvLayer with a faster filter: [#&#8203;73614](https://github.com/vercel/next.js/issues/73614) - \[Turbopack] fix invalid source maps on HMR: [#&#8203;72328](https://github.com/vercel/next.js/issues/72328) - \[Turbopack] include task name in dirty cause of output change: [#&#8203;72574](https://github.com/vercel/next.js/issues/72574) - 15.1 docs: React 19: [#&#8203;73510](https://github.com/vercel/next.js/issues/73510) - Docs: Add `canary` page to upgrade guides: [#&#8203;73518](https://github.com/vercel/next.js/issues/73518) - \[Turbopack] change emit collectible to require ResolvedVc: [#&#8203;73684](https://github.com/vercel/next.js/issues/73684) - Fix failing tests: [#&#8203;73707](https://github.com/vercel/next.js/issues/73707) - test: move HMR Full Reload test to a separate file: [#&#8203;73591](https://github.com/vercel/next.js/issues/73591) - test: change `with-next-sass` to `with-sass`: [#&#8203;73670](https://github.com/vercel/next.js/issues/73670) - test: move HMR main test to a separate file: [#&#8203;73611](https://github.com/vercel/next.js/issues/73611) - \[Turbopack] Introduce OperationVc that wraps operations: [#&#8203;70242](https://github.com/vercel/next.js/issues/70242) - chore(github): update stale issue periods: [#&#8203;73709](https://github.com/vercel/next.js/issues/73709) - test: update `turbopack-dev-examples-manifest`: [#&#8203;73230](https://github.com/vercel/next.js/issues/73230) - \[Turbopack] use thread local trace collecting: [#&#8203;73615](https://github.com/vercel/next.js/issues/73615) - Skip `build_and_deploy` on docs-only changes: [#&#8203;73659](https://github.com/vercel/next.js/issues/73659) - 15.1 docs: request APIs in `after`: [#&#8203;73692](https://github.com/vercel/next.js/issues/73692) - \[Turbopack] fix lmdb feature: [#&#8203;73728](https://github.com/vercel/next.js/issues/73728) - \[Turbopack] cleanup and documentation: [#&#8203;73496](https://github.com/vercel/next.js/issues/73496) - Turbopack: Single-graph-traversal and migrate next/dynamic: [#&#8203;73222](https://github.com/vercel/next.js/issues/73222) - Docs: Getting Started Nits: [#&#8203;73596](https://github.com/vercel/next.js/issues/73596) - 15.1 docs: Add experimental tags to `forbidden` and `unauthorized` APIs: [#&#8203;73513](https://github.com/vercel/next.js/issues/73513) - 15.1 docs: stable `after`: [#&#8203;73038](https://github.com/vercel/next.js/issues/73038) - Turbopack: migrate server actions to single-graph-traversal: [#&#8203;73260](https://github.com/vercel/next.js/issues/73260) - re-enable middleware deploy tests: [#&#8203;73744](https://github.com/vercel/next.js/issues/73744) - docs(turbopack): Better document the Vc type, with references to ResolvedVc and VcOperation: [#&#8203;72524](https://github.com/vercel/next.js/issues/72524) - test: fix type error in segment-cache-basic test: [#&#8203;73755](https://github.com/vercel/next.js/issues/73755) ##### Credits Huge thanks to [@&#8203;sokra](https://github.com/sokra), [@&#8203;molebox](https://github.com/molebox), [@&#8203;delbaoliveira](https://github.com/delbaoliveira), [@&#8203;eps1lon](https://github.com/eps1lon), [@&#8203;wbinnssmith](https://github.com/wbinnssmith), [@&#8203;JamBalaya56562](https://github.com/JamBalaya56562), [@&#8203;hyungjikim](https://github.com/hyungjikim), [@&#8203;adrian-faustino](https://github.com/adrian-faustino), [@&#8203;mottox2](https://github.com/mottox2), [@&#8203;lubieowoce](https://github.com/lubieowoce), [@&#8203;bgw](https://github.com/bgw), [@&#8203;mknichel](https://github.com/mknichel), [@&#8203;wyattjoh](https://github.com/wyattjoh), [@&#8203;huozhi](https://github.com/huozhi), [@&#8203;kdy1](https://github.com/kdy1), [@&#8203;mischnic](https://github.com/mischnic), [@&#8203;ijjk](https://github.com/ijjk), [@&#8203;icyJoseph](https://github.com/icyJoseph), [@&#8203;acdlite](https://github.com/acdlite), [@&#8203;unstubbable](https://github.com/unstubbable), [@&#8203;gaojude](https://github.com/gaojude), [@&#8203;devjiwonchoi](https://github.com/devjiwonchoi), [@&#8203;cena-ko](https://github.com/cena-ko), [@&#8203;lforst](https://github.com/lforst), [@&#8203;devpla](https://github.com/devpla), [@&#8203;samcx](https://github.com/samcx), [@&#8203;styfle](https://github.com/styfle), [@&#8203;ztanner](https://github.com/ztanner), [@&#8203;Marukome0743](https://github.com/Marukome0743), [@&#8203;timneutkens](https://github.com/timneutkens), [@&#8203;JeremieDoctrine](https://github.com/JeremieDoctrine), [@&#8203;ductnn](https://github.com/ductnn), [@&#8203;karlhorky](https://github.com/karlhorky), [@&#8203;reynaldichernando](https://github.com/reynaldichernando), [@&#8203;chogyejin](https://github.com/chogyejin), [@&#8203;y-yagi](https://github.com/y-yagi), [@&#8203;philparzer](https://github.com/philparzer), [@&#8203;alfawal](https://github.com/alfawal), [@&#8203;Rhynden](https://github.com/Rhynden), [@&#8203;arlyon](https://github.com/arlyon), [@&#8203;MJez29](https://github.com/MJez29), [@&#8203;Goodosky](https://github.com/Goodosky), [@&#8203;themattmayfield](https://github.com/themattmayfield), [@&#8203;tobySolutions](https://github.com/tobySolutions), [@&#8203;kevinmitch14](https://github.com/kevinmitch14), [@&#8203;leerob](https://github.com/leerob), [@&#8203;emmanuelgautier](https://github.com/emmanuelgautier), [@&#8203;mrhrifat](https://github.com/mrhrifat), [@&#8203;lid0a](https://github.com/lid0a), [@&#8203;boar-is](https://github.com/boar-is), [@&#8203;nisabmohd](https://github.com/nisabmohd), [@&#8203;PapatMayuri](https://github.com/PapatMayuri), [@&#8203;ovogmap](https://github.com/ovogmap), [@&#8203;Reflex2468](https://github.com/Reflex2468), [@&#8203;LioRael](https://github.com/LioRael), [@&#8203;betterthanhajin](https://github.com/betterthanhajin), [@&#8203;HerringtonDarkholme](https://github.com/HerringtonDarkholme), [@&#8203;bpb54321](https://github.com/bpb54321), [@&#8203;ahmoin](https://github.com/ahmoin), [@&#8203;Kikobeats](https://github.com/Kikobeats), [@&#8203;abdelrahmanAbouelkheir](https://github.com/abdelrahmanAbouelkheir), [@&#8203;lumirlumir](https://github.com/lumirlumir), [@&#8203;yeeed711](https://github.com/yeeed711), [@&#8203;petter](https://github.com/petter), and [@&#8203;suu3](https://github.com/suu3) for helping! ### [`v15.0.5`](https://github.com/vercel/next.js/releases/tag/v15.0.5) [Compare Source](https://github.com/vercel/next.js/compare/v15.0.4...v15.0.5) Please see [CVE-2025-66478](https://nextjs.org/blog/CVE-2025-66478) for additional details about this release. ### [`v15.0.4`](https://github.com/vercel/next.js/releases/tag/v15.0.4) [Compare Source](https://github.com/vercel/next.js/compare/v15.0.3...v15.0.4) > \[!NOTE]\ > This release is backporting changes. It does **not** include all pending features/changes on canary. ##### Core Changes - Use React 19 stable in Pages Router: https://github.com/vercel/next.js/pull/73564 ##### Credits Huge thanks to [@&#8203;eps1lon](https://github.com/eps1lon) ### [`v15.0.3`](https://github.com/vercel/next.js/releases/tag/v15.0.3) [Compare Source](https://github.com/vercel/next.js/compare/v15.0.2...v15.0.3) ##### Core Changes - Read page name from work store in server module map proxy: [#&#8203;71669](https://github.com/vercel/next.js/issues/71669) - codemod: should not transform when param is not used: [#&#8203;71664](https://github.com/vercel/next.js/issues/71664) - \[dynamicIO] complete refactor to prerender: [#&#8203;71687](https://github.com/vercel/next.js/issues/71687) - fix: metadata image route normalize path posix for windows: [#&#8203;71673](https://github.com/vercel/next.js/issues/71673) - next-codemod(upgrade): optional catch when missing dev script: [#&#8203;71598](https://github.com/vercel/next.js/issues/71598) - Avoid server action function indirection in Turbopack: [#&#8203;71628](https://github.com/vercel/next.js/issues/71628) - fix: exclude `basePath` in `findSourceMapURL`: [#&#8203;71719](https://github.com/vercel/next.js/issues/71719) - fix: stack frame text color in dark mode: [#&#8203;71656](https://github.com/vercel/next.js/issues/71656) - Fix: revert the bad node binary handling: [#&#8203;71723](https://github.com/vercel/next.js/issues/71723) - next-codemod: add empty `pnpm-workspace.yaml` to test fixtures to bypass PNPM workspace checks: [#&#8203;71726](https://github.com/vercel/next.js/issues/71726) - warn on sync access if dynamicIO is not enabled: [#&#8203;71696](https://github.com/vercel/next.js/issues/71696) - Update React from `69d4b800-20241021` to `45804af1-20241021`: [#&#8203;71718](https://github.com/vercel/next.js/issues/71718) - next-upgrade: do not add `--turbopack` flag when `--turbo` exists in `next dev`: [#&#8203;71730](https://github.com/vercel/next.js/issues/71730) - feat: stitch errors with react owner stack: [#&#8203;70393](https://github.com/vercel/next.js/issues/70393) - \[dynamicIO] update data access error and documentation: [#&#8203;71738](https://github.com/vercel/next.js/issues/71738) - Test cached form action with revalidate: [#&#8203;71591](https://github.com/vercel/next.js/issues/71591) - Upgrade React from `45804af1-20241021` to `28668d39-20241023`: [#&#8203;71745](https://github.com/vercel/next.js/issues/71745) - Fix race condition when setting client reference manifests: [#&#8203;71741](https://github.com/vercel/next.js/issues/71741) - Fix fetch with no-store inside of use cache: [#&#8203;71754](https://github.com/vercel/next.js/issues/71754) - Remove the bottom collapse button in dev overlay: [#&#8203;71658](https://github.com/vercel/next.js/issues/71658) - \[dynamicIO] unify cache filling and lazy-module warming: [#&#8203;71749](https://github.com/vercel/next.js/issues/71749) - Don't filter out <anonymous> source location frames through RSC: [#&#8203;71752](https://github.com/vercel/next.js/issues/71752) - fix undefined default export error msg: [#&#8203;71762](https://github.com/vercel/next.js/issues/71762) - Upgrade React from `28668d39-20241023` to `1631855f-20241023`: [#&#8203;71769](https://github.com/vercel/next.js/issues/71769) - Enable owner stack in experimental build: [#&#8203;71716](https://github.com/vercel/next.js/issues/71716) - feat: add experiment for sharpjs cpu flags: [#&#8203;71733](https://github.com/vercel/next.js/issues/71733) - fix: handle server component replay error in error overlay: [#&#8203;71772](https://github.com/vercel/next.js/issues/71772) - Don't error asking for prebuilt bundles: [#&#8203;71778](https://github.com/vercel/next.js/issues/71778) - Replace `turbopack://[project]/...` sourcemap uris with `file://...` in development: [#&#8203;71489](https://github.com/vercel/next.js/issues/71489) - misc: update source map paths for bundled Next.js runtime: [#&#8203;71779](https://github.com/vercel/next.js/issues/71779) - \[dynamicIO] refine error message and docs: [#&#8203;71781](https://github.com/vercel/next.js/issues/71781) - next-upgrade: change `--turbo` to `--turbopack` if applicable: [#&#8203;71737](https://github.com/vercel/next.js/issues/71737) - Show all diff when uncollapse: [#&#8203;71792](https://github.com/vercel/next.js/issues/71792) - Sourcemap errors in terminal by default : [#&#8203;71444](https://github.com/vercel/next.js/issues/71444) - Fully enable custom error callbacks for app router: [#&#8203;71794](https://github.com/vercel/next.js/issues/71794) - Simplify Server Action Webpack plugin: [#&#8203;71721](https://github.com/vercel/next.js/issues/71721) - ensure DIO development segment errors are cleared after correcting: [#&#8203;71811](https://github.com/vercel/next.js/issues/71811) - Include sourceframe in errors logged in the terminal during development: [#&#8203;71803](https://github.com/vercel/next.js/issues/71803) - \[dynamicIO] update prerender cache scoping and cache warming for validation: [#&#8203;71822](https://github.com/vercel/next.js/issues/71822) - only force stack frame color in tty: [#&#8203;71860](https://github.com/vercel/next.js/issues/71860) - Add test for fetch with auth in use cache: [#&#8203;71768](https://github.com/vercel/next.js/issues/71768) - Fix race with hot-reloader-client clearing overlay errors: [#&#8203;71771](https://github.com/vercel/next.js/issues/71771) - Fix dynamic tracking in dev: [#&#8203;71867](https://github.com/vercel/next.js/issues/71867) - Revert "Sourcemap errors in terminal by default ([#&#8203;71444](https://github.com/vercel/next.js/issues/71444))": [#&#8203;71868](https://github.com/vercel/next.js/issues/71868) - Fix fetch caching inside of `"use cache"`: [#&#8203;71793](https://github.com/vercel/next.js/issues/71793) - Trace upload: only send traces for current session: [#&#8203;71838](https://github.com/vercel/next.js/issues/71838) - Reland "Sourcemap errors in terminal by default": [#&#8203;71877](https://github.com/vercel/next.js/issues/71877) - Implement information byte in Server Reference ID and other optimizations: [#&#8203;71463](https://github.com/vercel/next.js/issues/71463) - fix: webpack build error on Windows: [#&#8203;71943](https://github.com/vercel/next.js/issues/71943) - Run with `--enable-source-maps` by default in `next dev`: [#&#8203;71820](https://github.com/vercel/next.js/issues/71820) - fix global-error styles: [#&#8203;71914](https://github.com/vercel/next.js/issues/71914) - Use `registerClientReference` for ESM client component modules: [#&#8203;71968](https://github.com/vercel/next.js/issues/71968) - Fix missing `await` of `params` when metadata is used with an image file: [#&#8203;71871](https://github.com/vercel/next.js/issues/71871) - Upgrade React from `1631855f-20241023` to `02c0e824-20241028`: [#&#8203;71979](https://github.com/vercel/next.js/issues/71979) - Populate sourcemap `ignoreList` when Webpack is used: [#&#8203;71821](https://github.com/vercel/next.js/issues/71821) - \[dynamicIO] unify server and client prerender for non-ppr pathway: [#&#8203;71764](https://github.com/vercel/next.js/issues/71764) - codemod: add separator to the parenthenese expr: [#&#8203;71993](https://github.com/vercel/next.js/issues/71993) - Respect sourcemap's ignore list when printing errors in the terminal: [#&#8203;71908](https://github.com/vercel/next.js/issues/71908) - fix console color to be compatible in chrome devtools: [#&#8203;71939](https://github.com/vercel/next.js/issues/71939) - Delete obsolete codemod `next-dynamic-access-named-export`: [#&#8203;72016](https://github.com/vercel/next.js/issues/72016) - fix: log the error instance modified extra location info: [#&#8203;71930](https://github.com/vercel/next.js/issues/71930) - Compare error stack to dedupe error: [#&#8203;71798](https://github.com/vercel/next.js/issues/71798) ##### Example Changes - experimental.instrumentationHook is not necessary anymore: [#&#8203;71808](https://github.com/vercel/next.js/issues/71808) - Add Jude to nextjs team: [#&#8203;71936](https://github.com/vercel/next.js/issues/71936) ##### Misc Changes - docs: fix broken link in Architecture/Turbopack documentation: [#&#8203;71412](https://github.com/vercel/next.js/issues/71412) - test: migrate rest async api usage in tests: [#&#8203;71663](https://github.com/vercel/next.js/issues/71663) - fix: docs for dynamic routing in next 15: [#&#8203;71531](https://github.com/vercel/next.js/issues/71531) - Remove the 'new' keyword from the GET function sample code.: [#&#8203;71671](https://github.com/vercel/next.js/issues/71671) - chore: fix wrong path of comments: [#&#8203;71682](https://github.com/vercel/next.js/issues/71682) - docs(next-config): remove mention of appIsrStatus is on canary: [#&#8203;71695](https://github.com/vercel/next.js/issues/71695) - react-sync: Ignore update notices from npm: [#&#8203;71717](https://github.com/vercel/next.js/issues/71717) - Docs: Update default marker for fetch cache option: [#&#8203;71728](https://github.com/vercel/next.js/issues/71728) - \[docs] Fix page.tsx parameter types: [#&#8203;71680](https://github.com/vercel/next.js/issues/71680) - \[docs] Fix table.js containing TS code: [#&#8203;71677](https://github.com/vercel/next.js/issues/71677) - docs(ppr): update note about ppr: [#&#8203;71697](https://github.com/vercel/next.js/issues/71697) - docs lint: [#&#8203;71748](https://github.com/vercel/next.js/issues/71748) - fixes error message asserts and lints: [#&#8203;71747](https://github.com/vercel/next.js/issues/71747) - Fix docs for configuring Turbopack: [#&#8203;71755](https://github.com/vercel/next.js/issues/71755) - docs(turbo): add experimental icon to turbo config section: [#&#8203;71761](https://github.com/vercel/next.js/issues/71761) - feat(turbopack): Add `__turbopack_original__` while tree shaking: [#&#8203;71547](https://github.com/vercel/next.js/issues/71547) - test: re-enable test with note: [#&#8203;71789](https://github.com/vercel/next.js/issues/71789) - Docs: Remove beta marker from Turbopack docs: [#&#8203;71796](https://github.com/vercel/next.js/issues/71796) - Update docs 1: [#&#8203;71812](https://github.com/vercel/next.js/issues/71812) - docs lint fixes: [#&#8203;71813](https://github.com/vercel/next.js/issues/71813) - docs: remove `"use cache"` on before code snippet: [#&#8203;71815](https://github.com/vercel/next.js/issues/71815) - Next docs broken links: [#&#8203;71823](https://github.com/vercel/next.js/issues/71823) - \[Turbopack] add optimization based on upper count: [#&#8203;71606](https://github.com/vercel/next.js/issues/71606) - chore(turbo-tasks-backend): Use let instead of match for macro bindings: [#&#8203;71756](https://github.com/vercel/next.js/issues/71756) - chore(turbo-tasks-backend): Remove collapsible-if lints: [#&#8203;71758](https://github.com/vercel/next.js/issues/71758) - removing extra reference: [#&#8203;71853](https://github.com/vercel/next.js/issues/71853) - codemod(turbopack): Rewrite Vc fields in structs as ResolvedVc (part 3): [#&#8203;71665](https://github.com/vercel/next.js/issues/71665) - Update sync-dynamic-apis.mdx: [#&#8203;71907](https://github.com/vercel/next.js/issues/71907) - codemod(turbopack): Rewrite Vc fields in structs as ResolvedVc (part 4): [#&#8203;71804](https://github.com/vercel/next.js/issues/71804) - test: remove duplicated flaky test: [#&#8203;71967](https://github.com/vercel/next.js/issues/71967) - docs: Fix typo in cacheLife configs in use-cache docs: [#&#8203;71921](https://github.com/vercel/next.js/issues/71921) - Fix use cache example line highlights: [#&#8203;71883](https://github.com/vercel/next.js/issues/71883) - Allow breakpoints to be set in `packages/next/src/compiled`: [#&#8203;71986](https://github.com/vercel/next.js/issues/71986) - updated upgrade to v15 command in docs: [#&#8203;71643](https://github.com/vercel/next.js/issues/71643) - codemod(turbopack): Rewrite Vc fields in structs as ResolvedVc (part 5): [#&#8203;71861](https://github.com/vercel/next.js/issues/71861) - Clarify that streaming is blocked on generateMetadata for initial load: [#&#8203;71985](https://github.com/vercel/next.js/issues/71985) - Docs: Add legacy tags: [#&#8203;71964](https://github.com/vercel/next.js/issues/71964) - Docs: Fix broken link: [#&#8203;72021](https://github.com/vercel/next.js/issues/72021) - (docs) `use cache`: Add text code formatting: [#&#8203;71999](https://github.com/vercel/next.js/issues/71999) - docs: update file structure: [#&#8203;71951](https://github.com/vercel/next.js/issues/71951) - Documentation Fix: Correct `cacheTag` Function Usage: [#&#8203;71912](https://github.com/vercel/next.js/issues/71912) - correct expire calc & and Nested usage import in use-cache docs: [#&#8203;71899](https://github.com/vercel/next.js/issues/71899) - Docs: Address internal `use cache` comments : [#&#8203;71981](https://github.com/vercel/next.js/issues/71981) - Fix swc version mismatch when checking out an older version: [#&#8203;71978](https://github.com/vercel/next.js/issues/71978) ##### Credits Huge thanks to [@&#8203;ytori](https://github.com/ytori), [@&#8203;unstubbable](https://github.com/unstubbable), [@&#8203;huozhi](https://github.com/huozhi), [@&#8203;SebassNoob](https://github.com/SebassNoob), [@&#8203;tatsuteb](https://github.com/tatsuteb), [@&#8203;Marukome0743](https://github.com/Marukome0743), [@&#8203;gnoff](https://github.com/gnoff), [@&#8203;samcx](https://github.com/samcx), [@&#8203;devjiwonchoi](https://github.com/devjiwonchoi), [@&#8203;imprakharshukla](https://github.com/imprakharshukla), [@&#8203;migueldamota](https://github.com/migueldamota), [@&#8203;eps1lon](https://github.com/eps1lon), [@&#8203;ztanner](https://github.com/ztanner), [@&#8203;timneutkens](https://github.com/timneutkens), [@&#8203;cantemizyurek](https://github.com/cantemizyurek), [@&#8203;sebmarkbage](https://github.com/sebmarkbage), [@&#8203;padmaia](https://github.com/padmaia), [@&#8203;ijjk](https://github.com/ijjk), [@&#8203;styfle](https://github.com/styfle), [@&#8203;wbinnssmith](https://github.com/wbinnssmith), [@&#8203;feedthejim](https://github.com/feedthejim), [@&#8203;kdy1](https://github.com/kdy1), [@&#8203;shuding](https://github.com/shuding), [@&#8203;molebox](https://github.com/molebox), [@&#8203;ismaelrumzan](https://github.com/ismaelrumzan), [@&#8203;sokra](https://github.com/sokra), [@&#8203;bgw](https://github.com/bgw), [@&#8203;timeyoutakeit](https://github.com/timeyoutakeit), [@&#8203;AdonisAgelis](https://github.com/AdonisAgelis), [@&#8203;chicoxyzzy](https://github.com/chicoxyzzy), [@&#8203;gaojude](https://github.com/gaojude), [@&#8203;elitalpa](https://github.com/elitalpa), [@&#8203;t3dotgg](https://github.com/t3dotgg), [@&#8203;gaearon](https://github.com/gaearon), [@&#8203;nisabmohd](https://github.com/nisabmohd), [@&#8203;gadcam](https://github.com/gadcam), [@&#8203;delbaoliveira](https://github.com/delbaoliveira), [@&#8203;bennettdams](https://github.com/bennettdams), [@&#8203;wiscaksono](https://github.com/wiscaksono), and [@&#8203;Developerayo](https://github.com/Developerayo) for helping! ### [`v15.0.2`](https://github.com/vercel/next.js/releases/tag/v15.0.2) [Compare Source](https://github.com/vercel/next.js/compare/v15.0.1...v15.0.2) ##### Core Changes - Read page name from work store in server module map proxy: [#&#8203;71669](https://github.com/vercel/next.js/issues/71669) - codemod: should not transform when param is not used: [#&#8203;71664](https://github.com/vercel/next.js/issues/71664) - \[dynamicIO] complete refactor to prerender: [#&#8203;71687](https://github.com/vercel/next.js/issues/71687) - fix: metadata image route normalize path posix for windows: [#&#8203;71673](https://github.com/vercel/next.js/issues/71673) - next-codemod(upgrade): optional catch when missing dev script: [#&#8203;71598](https://github.com/vercel/next.js/issues/71598) - Avoid server action function indirection in Turbopack: [#&#8203;71628](https://github.com/vercel/next.js/issues/71628) - fix: exclude `basePath` in `findSourceMapURL`: [#&#8203;71719](https://github.com/vercel/next.js/issues/71719) - fix: stack frame text color in dark mode: [#&#8203;71656](https://github.com/vercel/next.js/issues/71656) - Fix: revert the bad node binary handling: [#&#8203;71723](https://github.com/vercel/next.js/issues/71723) - next-codemod: add empty `pnpm-workspace.yaml` to test fixtures to bypass PNPM workspace checks: [#&#8203;71726](https://github.com/vercel/next.js/issues/71726) - warn on sync access if dynamicIO is not enabled: [#&#8203;71696](https://github.com/vercel/next.js/issues/71696) - Update React from `69d4b800-20241021` to `45804af1-20241021`: [#&#8203;71718](https://github.com/vercel/next.js/issues/71718) - next-upgrade: do not add `--turbopack` flag when `--turbo` exists in `next dev`: [#&#8203;71730](https://github.com/vercel/next.js/issues/71730) - feat: stitch errors with react owner stack: [#&#8203;70393](https://github.com/vercel/next.js/issues/70393) - \[dynamicIO] update data access error and documentation: [#&#8203;71738](https://github.com/vercel/next.js/issues/71738) - Test cached form action with revalidate: [#&#8203;71591](https://github.com/vercel/next.js/issues/71591) - Upgrade React from `45804af1-20241021` to `28668d39-20241023`: [#&#8203;71745](https://github.com/vercel/next.js/issues/71745) - Fix race condition when setting client reference manifests: [#&#8203;71741](https://github.com/vercel/next.js/issues/71741) - Fix fetch with no-store inside of use cache: [#&#8203;71754](https://github.com/vercel/next.js/issues/71754) - Remove the bottom collapse button in dev overlay: [#&#8203;71658](https://github.com/vercel/next.js/issues/71658) - \[dynamicIO] unify cache filling and lazy-module warming: [#&#8203;71749](https://github.com/vercel/next.js/issues/71749) - Don't filter out <anonymous> source location frames through RSC: [#&#8203;71752](https://github.com/vercel/next.js/issues/71752) - fix undefined default export error msg: [#&#8203;71762](https://github.com/vercel/next.js/issues/71762) - Upgrade React from `28668d39-20241023` to `1631855f-20241023`: [#&#8203;71769](https://github.com/vercel/next.js/issues/71769) - Enable owner stack in experimental build: [#&#8203;71716](https://github.com/vercel/next.js/issues/71716) - feat: add experiment for sharpjs cpu flags: [#&#8203;71733](https://github.com/vercel/next.js/issues/71733) - fix: handle server component replay error in error overlay: [#&#8203;71772](https://github.com/vercel/next.js/issues/71772) - Don't error asking for prebuilt bundles: [#&#8203;71778](https://github.com/vercel/next.js/issues/71778) - Replace `turbopack://[project]/...` sourcemap uris with `file://...` in development: [#&#8203;71489](https://github.com/vercel/next.js/issues/71489) - misc: update source map paths for bundled Next.js runtime: [#&#8203;71779](https://github.com/vercel/next.js/issues/71779) - \[dynamicIO] refine error message and docs: [#&#8203;71781](https://github.com/vercel/next.js/issues/71781) - next-upgrade: change `--turbo` to `--turbopack` if applicable: [#&#8203;71737](https://github.com/vercel/next.js/issues/71737) - Show all diff when uncollapse: [#&#8203;71792](https://github.com/vercel/next.js/issues/71792) - Sourcemap errors in terminal by default : [#&#8203;71444](https://github.com/vercel/next.js/issues/71444) - Fully enable custom error callbacks for app router: [#&#8203;71794](https://github.com/vercel/next.js/issues/71794) - Simplify Server Action Webpack plugin: [#&#8203;71721](https://github.com/vercel/next.js/issues/71721) - ensure DIO development segment errors are cleared after correcting: [#&#8203;71811](https://github.com/vercel/next.js/issues/71811) - Include sourceframe in errors logged in the terminal during development: [#&#8203;71803](https://github.com/vercel/next.js/issues/71803) - \[dynamicIO] update prerender cache scoping and cache warming for validation: [#&#8203;71822](https://github.com/vercel/next.js/issues/71822) - only force stack frame color in tty: [#&#8203;71860](https://github.com/vercel/next.js/issues/71860) - Add test for fetch with auth in use cache: [#&#8203;71768](https://github.com/vercel/next.js/issues/71768) - Fix race with hot-reloader-client clearing overlay errors: [#&#8203;71771](https://github.com/vercel/next.js/issues/71771) - Fix dynamic tracking in dev: [#&#8203;71867](https://github.com/vercel/next.js/issues/71867) - Revert "Sourcemap errors in terminal by default ([#&#8203;71444](https://github.com/vercel/next.js/issues/71444))": [#&#8203;71868](https://github.com/vercel/next.js/issues/71868) - Fix fetch caching inside of `"use cache"`: [#&#8203;71793](https://github.com/vercel/next.js/issues/71793) - Trace upload: only send traces for current session: [#&#8203;71838](https://github.com/vercel/next.js/issues/71838) - Reland "Sourcemap errors in terminal by default": [#&#8203;71877](https://github.com/vercel/next.js/issues/71877) - Implement information byte in Server Reference ID and other optimizations: [#&#8203;71463](https://github.com/vercel/next.js/issues/71463) - fix: webpack build error on Windows: [#&#8203;71943](https://github.com/vercel/next.js/issues/71943) - Run with `--enable-source-maps` by default in `next dev`: [#&#8203;71820](https://github.com/vercel/next.js/issues/71820) - fix global-error styles: [#&#8203;71914](https://github.com/vercel/next.js/issues/71914) - Use `registerClientReference` for ESM client component modules: [#&#8203;71968](https://github.com/vercel/next.js/issues/71968) - Fix missing `await` of `params` when metadata is used with an image file: [#&#8203;71871](https://github.com/vercel/next.js/issues/71871) - Upgrade React from `1631855f-20241023` to `02c0e824-20241028`: [#&#8203;71979](https://github.com/vercel/next.js/issues/71979) - Populate sourcemap `ignoreList` when Webpack is used: [#&#8203;71821](https://github.com/vercel/next.js/issues/71821) - \[dynamicIO] unify server and client prerender for non-ppr pathway: [#&#8203;71764](https://github.com/vercel/next.js/issues/71764) - codemod: add separator to the parenthenese expr: [#&#8203;71993](https://github.com/vercel/next.js/issues/71993) - Respect sourcemap's ignore list when printing errors in the terminal: [#&#8203;71908](https://github.com/vercel/next.js/issues/71908) - fix console color to be compatible in chrome devtools: [#&#8203;71939](https://github.com/vercel/next.js/issues/71939) - Delete obsolete codemod `next-dynamic-access-named-export`: [#&#8203;72016](https://github.com/vercel/next.js/issues/72016) - fix: log the error instance modified extra location info: [#&#8203;71930](https://github.com/vercel/next.js/issues/71930) - Compare error stack to dedupe error: [#&#8203;71798](https://github.com/vercel/next.js/issues/71798) ##### Example Changes - experimental.instrumentationHook is not necessary anymore: [#&#8203;71808](https://github.com/vercel/next.js/issues/71808) - Add Jude to nextjs team: [#&#8203;71936](https://github.com/vercel/next.js/issues/71936) ##### Misc Changes - docs: fix broken link in Architecture/Turbopack documentation: [#&#8203;71412](https://github.com/vercel/next.js/issues/71412) - test: migrate rest async api usage in tests: [#&#8203;71663](https://github.com/vercel/next.js/issues/71663) - fix: docs for dynamic routing in next 15: [#&#8203;71531](https://github.com/vercel/next.js/issues/71531) - Remove the 'new' keyword from the GET function sample code.: [#&#8203;71671](https://github.com/vercel/next.js/issues/71671) - chore: fix wrong path of comments: [#&#8203;71682](https://github.com/vercel/next.js/issues/71682) - docs(next-config): remove mention of appIsrStatus is on canary: [#&#8203;71695](https://github.com/vercel/next.js/issues/71695) - react-sync: Ignore update notices from npm: [#&#8203;71717](https://github.com/vercel/next.js/issues/71717) - Docs: Update default marker for fetch cache option: [#&#8203;71728](https://github.com/vercel/next.js/issues/71728) - \[docs] Fix page.tsx parameter types: [#&#8203;71680](https://github.com/vercel/next.js/issues/71680) - \[docs] Fix table.js containing TS code: [#&#8203;71677](https://github.com/vercel/next.js/issues/71677) - docs(ppr): update note about ppr: [#&#8203;71697](https://github.com/vercel/next.js/issues/71697) - docs lint: [#&#8203;71748](https://github.com/vercel/next.js/issues/71748) - fixes error message asserts and lints: [#&#8203;71747](https://github.com/vercel/next.js/issues/71747) - Fix docs for configuring Turbopack: [#&#8203;71755](https://github.com/vercel/next.js/issues/71755) - docs(turbo): add experimental icon to turbo config section: [#&#8203;71761](https://github.com/vercel/next.js/issues/71761) - feat(turbopack): Add `__turbopack_original__` while tree shaking: [#&#8203;71547](https://github.com/vercel/next.js/issues/71547) - test: re-enable test with note: [#&#8203;71789](https://github.com/vercel/next.js/issues/71789) - Docs: Remove beta marker from Turbopack docs: [#&#8203;71796](https://github.com/vercel/next.js/issues/71796) - Update docs 1: [#&#8203;71812](https://github.com/vercel/next.js/issues/71812) - docs lint fixes: [#&#8203;71813](https://github.com/vercel/next.js/issues/71813) - docs: remove `"use cache"` on before code snippet: [#&#8203;71815](https://github.com/vercel/next.js/issues/71815) - Next docs broken links: [#&#8203;71823](https://github.com/vercel/next.js/issues/71823) - \[Turbopack] add optimization based on upper count: [#&#8203;71606](https://github.com/vercel/next.js/issues/71606) - chore(turbo-tasks-backend): Use let instead of match for macro bindings: [#&#8203;71756](https://github.com/vercel/next.js/issues/71756) - chore(turbo-tasks-backend): Remove collapsible-if lints: [#&#8203;71758](https://github.com/vercel/next.js/issues/71758) - removing extra reference: [#&#8203;71853](https://github.com/vercel/next.js/issues/71853) - codemod(turbopack): Rewrite Vc fields in structs as ResolvedVc (part 3): [#&#8203;71665](https://github.com/vercel/next.js/issues/71665) - Update sync-dynamic-apis.mdx: [#&#8203;71907](https://github.com/vercel/next.js/issues/71907) - codemod(turbopack): Rewrite Vc fields in structs as ResolvedVc (part 4): [#&#8203;71804](https://github.com/vercel/next.js/issues/71804) - test: remove duplicated flaky test: [#&#8203;71967](https://github.com/vercel/next.js/issues/71967) - docs: Fix typo in cacheLife configs in use-cache docs: [#&#8203;71921](https://github.com/vercel/next.js/issues/71921) - Fix use cache example line highlights: [#&#8203;71883](https://github.com/vercel/next.js/issues/71883) - Allow breakpoints to be set in `packages/next/src/compiled`: [#&#8203;71986](https://github.com/vercel/next.js/issues/71986) - updated upgrade to v15 command in docs: [#&#8203;71643](https://github.com/vercel/next.js/issues/71643) - codemod(turbopack): Rewrite Vc fields in structs as ResolvedVc (part 5): [#&#8203;71861](https://github.com/vercel/next.js/issues/71861) - Clarify that streaming is blocked on generateMetadata for initial load: [#&#8203;71985](https://github.com/vercel/next.js/issues/71985) - Docs: Add legacy tags: [#&#8203;71964](https://github.com/vercel/next.js/issues/71964) - Docs: Fix broken link: [#&#8203;72021](https://github.com/vercel/next.js/issues/72021) - (docs) `use cache`: Add text code formatting: [#&#8203;71999](https://github.com/vercel/next.js/issues/71999) - docs: update file structure: [#&#8203;71951](https://github.com/vercel/next.js/issues/71951) - Documentation Fix: Correct `cacheTag` Function Usage: [#&#8203;71912](https://github.com/vercel/next.js/issues/71912) - correct expire calc & and Nested usage import in use-cache docs: [#&#8203;71899](https://github.com/vercel/next.js/issues/71899) - Docs: Address internal `use cache` comments : [#&#8203;71981](https://github.com/vercel/next.js/issues/71981) - Fix swc version mismatch when checking out an older version: [#&#8203;71978](https://github.com/vercel/next.js/issues/71978) ##### Credits Huge thanks to [@&#8203;ytori](https://github.com/ytori), [@&#8203;unstubbable](https://github.com/unstubbable), [@&#8203;huozhi](https://github.com/huozhi), [@&#8203;SebassNoob](https://github.com/SebassNoob), [@&#8203;tatsuteb](https://github.com/tatsuteb), [@&#8203;Marukome0743](https://github.com/Marukome0743), [@&#8203;gnoff](https://github.com/gnoff), [@&#8203;samcx](https://github.com/samcx), [@&#8203;devjiwonchoi](https://github.com/devjiwonchoi), [@&#8203;imprakharshukla](https://github.com/imprakharshukla), [@&#8203;migueldamota](https://github.com/migueldamota), [@&#8203;eps1lon](https://github.com/eps1lon), [@&#8203;ztanner](https://github.com/ztanner), [@&#8203;timneutkens](https://github.com/timneutkens), [@&#8203;cantemizyurek](https://github.com/cantemizyurek), [@&#8203;sebmarkbage](https://github.com/sebmarkbage), [@&#8203;padmaia](https://github.com/padmaia), [@&#8203;ijjk](https://github.com/ijjk), [@&#8203;styfle](https://github.com/styfle), [@&#8203;wbinnssmith](https://github.com/wbinnssmith), [@&#8203;feedthejim](https://github.com/feedthejim), [@&#8203;kdy1](https://github.com/kdy1), [@&#8203;shuding](https://github.com/shuding), [@&#8203;molebox](https://github.com/molebox), [@&#8203;ismaelrumzan](https://github.com/ismaelrumzan), [@&#8203;sokra](https://github.com/sokra), [@&#8203;bgw](https://github.com/bgw), [@&#8203;timeyoutakeit](https://github.com/timeyoutakeit), [@&#8203;AdonisAgelis](https://github.com/AdonisAgelis), [@&#8203;chicoxyzzy](https://github.com/chicoxyzzy), [@&#8203;gaojude](https://github.com/gaojude), [@&#8203;elitalpa](https://github.com/elitalpa), [@&#8203;t3dotgg](https://github.com/t3dotgg), [@&#8203;gaearon](https://github.com/gaearon), [@&#8203;nisabmohd](https://github.com/nisabmohd), [@&#8203;gadcam](https://github.com/gadcam), [@&#8203;delbaoliveira](https://github.com/delbaoliveira), [@&#8203;bennettdams](https://github.com/bennettdams), [@&#8203;wiscaksono](https://github.com/wiscaksono), and [@&#8203;Developerayo](https://github.com/Developerayo) for helping! ### [`v15.0.1`](https://github.com/vercel/next.js/releases/tag/v15.0.1) [Compare Source](https://github.com/vercel/next.js/compare/v15.0.0...v15.0.1) ##### Core Changes - Reland "\[dynamicIO] warn for disallowed dynamic in dev": [#&#8203;71567](https://github.com/vercel/next.js/issues/71567) - next-upgrade: prompt (un)install only when there's a change: [#&#8203;71308](https://github.com/vercel/next.js/issues/71308) - chore(next-codemod): remove `@next/font` from optional Next.js packages to install: [#&#8203;71563](https://github.com/vercel/next.js/issues/71563) - \[dynamicIO] Avoid triggering memory leak false positive with makeHangingPromise: [#&#8203;71576](https://github.com/vercel/next.js/issues/71576) - Avoid triggering memory leak false positive with makeHangingPromise: [#&#8203;71579](https://github.com/vercel/next.js/issues/71579) - Upgrade React from `65a56d0e-20241020` to `69d4b800-20241021`: [#&#8203;71568](https://github.com/vercel/next.js/issues/71568) - avoid logging stacks for internal errors: [#&#8203;71575](https://github.com/vercel/next.js/issues/71575) - Avoid server action `endpoint` function indirection: [#&#8203;71572](https://github.com/vercel/next.js/issues/71572) - fix: handle terminal color in chrome console: [#&#8203;71581](https://github.com/vercel/next.js/issues/71581) - \[dynamicIO] Update prerender to use Fizz prerender: [#&#8203;71580](https://github.com/vercel/next.js/issues/71580) - misc(next-upgrade): reuse process.cwd() value: [#&#8203;71558](https://github.com/vercel/next.js/issues/71558) - \[dynamicIO]: dev navigations should show disallowed dynamic errors: [#&#8203;71595](https://github.com/vercel/next.js/issues/71595) - next-lint: Use ESLint v9 by default: [#&#8203;71371](https://github.com/vercel/next.js/issues/71371) - fix: prevent router errors from being logged on the client: [#&#8203;71583](https://github.com/vercel/next.js/issues/71583) - fix: next package resolving in dev overlay: [#&#8203;71632](https://github.com/vercel/next.js/issues/71632) - Improve type coverage of setup-dev-bundler: [#&#8203;71443](https://github.com/vercel/next.js/issues/71443) - fix(turbo-tasks): Implement ValueDebugFormat for ResolvedVc: [#&#8203;71173](https://github.com/vercel/next.js/issues/71173) - Add --turbopack CLI flag: [#&#8203;71657](https://github.com/vercel/next.js/issues/71657) - \[dynamicIO] detect metadata boundaries in dev using server component stacks: [#&#8203;71666](https://github.com/vercel/next.js/issues/71666) ##### Example Changes - chore: Update `with-supabase` to be compatible with Nextjs 15: [#&#8203;71631](https://github.com/vercel/next.js/issues/71631) - Update Sanity example to next v15: [#&#8203;71640](https://github.com/vercel/next.js/issues/71640) ##### Misc Changes - docs(ppr): remove v14 mention for ppr: [#&#8203;71498](https://github.com/vercel/next.js/issues/71498) - docs: fix upgrade codemod command: [#&#8203;71578](https://github.com/vercel/next.js/issues/71578) - Turbopack: Always use blob: URLs for assets in middleware: [#&#8203;71471](https://github.com/vercel/next.js/issues/71471) - fix: metadata image route Windows path escaping: [#&#8203;71615](https://github.com/vercel/next.js/issues/71615) - fix: third-parties package peer dependency: [#&#8203;71620](https://github.com/vercel/next.js/issues/71620) - Fix `module_resolution: "nodenext"` with `mjs` or `cjs`: [#&#8203;71635](https://github.com/vercel/next.js/issues/71635) - react-sync: Automatically update peer dependencies in libraries: [#&#8203;71636](https://github.com/vercel/next.js/issues/71636) - chore(docs): fix typo in image.mdx docs: [#&#8203;71647](https://github.com/vercel/next.js/issues/71647) - docs: remove the canary note on instrumentation: [#&#8203;71649](https://github.com/vercel/next.js/issues/71649) - test: fix async api tests: [#&#8203;71652](https://github.com/vercel/next.js/issues/71652) - Enable source maps for `pnpm debug`: [#&#8203;71653](https://github.com/vercel/next.js/issues/71653) - codemod(turbopack): Rewrite more Vc fields in structs as ResolvedVc: [#&#8203;71172](https://github.com/vercel/next.js/issues/71172) ##### Credits Huge thanks to [@&#8203;gnoff](https://github.com/gnoff), [@&#8203;devjiwonchoi](https://github.com/devjiwonchoi), [@&#8203;samcx](https://github.com/samcx), [@&#8203;ztanner](https://github.com/ztanner), [@&#8203;unstubbable](https://github.com/unstubbable), [@&#8203;huozhi](https://github.com/huozhi), [@&#8203;mischnic](https://github.com/mischnic), [@&#8203;lubieowoce](https://github.com/lubieowoce), [@&#8203;eps1lon](https://github.com/eps1lon), [@&#8203;ivasilov](https://github.com/ivasilov), [@&#8203;styfle](https://github.com/styfle), [@&#8203;bgw](https://github.com/bgw), [@&#8203;stipsan](https://github.com/stipsan), and [@&#8203;timneutkens](https://github.com/timneutkens) for helping! ### [`v15.0.0`](https://github.com/vercel/next.js/releases/tag/v15.0.0) [Compare Source](https://github.com/vercel/next.js/compare/v14.2.33...v15.0.0) ##### Core Changes - refactor: next-flight-client-module-loader return conditions: [#&#8203;64348](https://github.com/vercel/next.js/issues/64348) - Fix Server Action error logs for unhandled POST requests: [#&#8203;64315](https://github.com/vercel/next.js/issues/64315) - Shared Revalidate Timings: [#&#8203;64370](https://github.com/vercel/next.js/issues/64370) - Freeze loaded manifests: [#&#8203;64313](https://github.com/vercel/next.js/issues/64313) - test: skip turbopack build test: [#&#8203;64356](https://github.com/vercel/next.js/issues/64356) - Fix: css in next/dynamic component in edge runtime: [#&#8203;64382](https://github.com/vercel/next.js/issues/64382) - Fix more Turbopack build tests: [#&#8203;64384](https://github.com/vercel/next.js/issues/64384) - use pathToFileUrl to make esm import()s work with absolute windows paths: [#&#8203;64386](https://github.com/vercel/next.js/issues/64386) - Improve rendering performance: [#&#8203;64408](https://github.com/vercel/next.js/issues/64408) - Fix the method prop case in Server Actions transform: [#&#8203;64398](https://github.com/vercel/next.js/issues/64398) - fix(next-lint): update option --report-unused-disable-directives to --report-unused-disable-directives-severity: [#&#8203;64405](https://github.com/vercel/next.js/issues/64405) - Revert "Fix: css in next/dynamic component in edge runtime": [#&#8203;64442](https://github.com/vercel/next.js/issues/64442) - default fetchCache to no-store when force-dynamic is set: [#&#8203;64145](https://github.com/vercel/next.js/issues/64145) - router restore should take priority over pending actions: [#&#8203;64449](https://github.com/vercel/next.js/issues/64449) - Fix client boundary inheritance for barrel optimization: [#&#8203;64467](https://github.com/vercel/next.js/issues/64467) - improve turborepo caching: [#&#8203;64493](https://github.com/vercel/next.js/issues/64493) - Update font data: [#&#8203;64481](https://github.com/vercel/next.js/issues/64481) - BREAKING CHANGE: remove deprecated analyticsId from config, and the corresponding performance-relayer files and tests: [#&#8203;64199](https://github.com/vercel/next.js/issues/64199) - feat: strip traceparent header from cachekey: [#&#8203;64499](https://github.com/vercel/next.js/issues/64499) - Fix typo in dynamic-rendering.ts: [#&#8203;64365](https://github.com/vercel/next.js/issues/64365) - fix(next): global not-found not working on multi-root layouts: [#&#8203;63053](https://github.com/vercel/next.js/issues/63053) - chore(next): add keywords on package.json: [#&#8203;64173](https://github.com/vercel/next.js/issues/64173) - Fix DynamicServerError not being thrown in fetch: [#&#8203;64511](https://github.com/vercel/next.js/issues/64511) - fix: `lib/helpers/install.ts` to better support pnpm and properly respect `root` argument: [#&#8203;64418](https://github.com/vercel/next.js/issues/64418) - fix(next): `Metadata.openGraph` values not resolving basic values when `type` is set: [#&#8203;63620](https://github.com/vercel/next.js/issues/63620) - disable production chunking in dev: [#&#8203;64488](https://github.com/vercel/next.js/issues/64488) - update turbopack: [#&#8203;64501](https://github.com/vercel/next.js/issues/64501) - Turbopack: Allow client components to be imported in app routes: [#&#8203;64520](https://github.com/vercel/next.js/issues/64520) - refactor: remove always truthy flag: [#&#8203;64522](https://github.com/vercel/next.js/issues/64522) - Turbopack: don’t show long internal stack traces on build errors: [#&#8203;64427](https://github.com/vercel/next.js/issues/64427) - next/script: Correctly apply async and defer props: [#&#8203;52939](https://github.com/vercel/next.js/issues/52939) - chore(next/font): update [@&#8203;capsizecss/metrics](https://github.com/capsizecss/metrics) package: [#&#8203;64528](https://github.com/vercel/next.js/issues/64528) - feat: add information that revalidate interval is in seconds: [#&#8203;64229](https://github.com/vercel/next.js/issues/64229) - Typo "Minifer" in config.ts: [#&#8203;64359](https://github.com/vercel/next.js/issues/64359) - Enhance types for Node and Edge envionments: [#&#8203;64454](https://github.com/vercel/next.js/issues/64454) - feat: Add a validation for `postcss` with `useLightningcss`: [#&#8203;64379](https://github.com/vercel/next.js/issues/64379) - fix HMR for cases where chunking changes: [#&#8203;64367](https://github.com/vercel/next.js/issues/64367) - perf: improve Pages Router server rendering performance: [#&#8203;64461](https://github.com/vercel/next.js/issues/64461) - Fix cjs client components tree-shaking: [#&#8203;64558](https://github.com/vercel/next.js/issues/64558) - fix refresh behavior for discarded actions: [#&#8203;64532](https://github.com/vercel/next.js/issues/64532) - fix: filter out middleware requests in logging: [#&#8203;64549](https://github.com/vercel/next.js/issues/64549) - chore: remove unused rust dependencies: [#&#8203;62176](https://github.com/vercel/next.js/issues/62176) - fix(next-swc): correctly set wasm fallback for known target triples: [#&#8203;64567](https://github.com/vercel/next.js/issues/64567) - memoize layout router context: [#&#8203;64575](https://github.com/vercel/next.js/issues/64575) - fix incorrect refresh request when basePath is set: [#&#8203;64589](https://github.com/vercel/next.js/issues/64589) - fix TypeError edge-case for parallel slots rendered multiple times: [#&#8203;64271](https://github.com/vercel/next.js/issues/64271) - Fix ASL bundling for dynamic css: [#&#8203;64451](https://github.com/vercel/next.js/issues/64451) - Revert "fix(next): global not-found not working on multi-root layouts": [#&#8203;64601](https://github.com/vercel/next.js/issues/64601) - chore(test): run related E2E deploy tests on PRs: [#&#8203;63763](https://github.com/vercel/next.js/issues/63763) - Improve top level await coverage: [#&#8203;64508](https://github.com/vercel/next.js/issues/64508) - Upgrade typescript to 5.3: [#&#8203;64043](https://github.com/vercel/next.js/issues/64043) - add pathname normalizer for actions: [#&#8203;64592](https://github.com/vercel/next.js/issues/64592) - Fix experimental/testmode by removing console.log: [#&#8203;64670](https://github.com/vercel/next.js/issues/64670) - Don't output .test.ts files in next/font: [#&#8203;63472](https://github.com/vercel/next.js/issues/63472) - Fix reporting when performance.measure doesn't exist (Edge): [#&#8203;64669](https://github.com/vercel/next.js/issues/64669) - Reduce amount of data passed to collectBuildTraces: [#&#8203;59665](https://github.com/vercel/next.js/issues/59665) - fix(next-server): 'quiet' setting delegate for custom server: [#&#8203;64512](https://github.com/vercel/next.js/issues/64512) - Revert "chore(test): run related E2E deploy tests on PRs": [#&#8203;64682](https://github.com/vercel/next.js/issues/64682) - update turbopack: [#&#8203;64686](https://github.com/vercel/next.js/issues/64686) - Fix: resolve mixed re-exports module as cjs: [#&#8203;64681](https://github.com/vercel/next.js/issues/64681) - Revert "fix TypeError edge-case for parallel slots rendered multiple times": [#&#8203;64690](https://github.com/vercel/next.js/issues/64690) - Fix typo: 'serverComponentsExtenalPackages' should be 'serverComponentsExternalPackages': [#&#8203;64705](https://github.com/vercel/next.js/issues/64705) - prevent erroneous route interception during lazy fetch: [#&#8203;64692](https://github.com/vercel/next.js/issues/64692) - Add `@appsignal/nodejs` to the external packages list: [#&#8203;64503](https://github.com/vercel/next.js/issues/64503) - fix root page revalidation when redirecting in a server action: [#&#8203;64730](https://github.com/vercel/next.js/issues/64730) - Clean-up fetch metrics tracking: [#&#8203;64746](https://github.com/vercel/next.js/issues/64746) - \[actions] Enforce body limit using Transform stream: [#&#8203;64694](https://github.com/vercel/next.js/issues/64694) - Turbopack: Don’t show stack traces for internal modules: [#&#8203;64228](https://github.com/vercel/next.js/issues/64228) - Reapply "chore(test): run related E2E deploy tests on PRs" ([#&#8203;64682](https://github.com/vercel/next.js/issues/64682)): [#&#8203;64712](https://github.com/vercel/next.js/issues/64712) - fix(fetch-cache): fix typo: [#&#8203;64786](https://github.com/vercel/next.js/issues/64786) - fix: remove traceparent from cachekey should not remove traceparent from original object: [#&#8203;64727](https://github.com/vercel/next.js/issues/64727) - fix interception route rewrite regex not supporting hyphenated segments: [#&#8203;64805](https://github.com/vercel/next.js/issues/64805) - Disable ncc cache instead of cache cleaning: [#&#8203;64804](https://github.com/vercel/next.js/issues/64804) - Move next-swc Turborepo config to packages/next-swc: [#&#8203;64789](https://github.com/vercel/next.js/issues/64789) - build: Update `swc_core` to `v0.90.33`: [#&#8203;64553](https://github.com/vercel/next.js/issues/64553) - Enable loading source maps for Next Server and React: [#&#8203;64527](https://github.com/vercel/next.js/issues/64527) - fix: mixing namespace import and named import client components: [#&#8203;64809](https://github.com/vercel/next.js/issues/64809) - fext(next): extend next.config for mdxRs support options: [#&#8203;64801](https://github.com/vercel/next.js/issues/64801) - skip test_e2e_deploy_related when triggered from a fork: [#&#8203;64893](https://github.com/vercel/next.js/issues/64893) - fix(fetch-cache): fix additional typo, add type & data validation: [#&#8203;64799](https://github.com/vercel/next.js/issues/64799) - feat(next-core): support parsing matcher config object: [#&#8203;64678](https://github.com/vercel/next.js/issues/64678) - Fix mixed exports in server component with barrel optimization: [#&#8203;64894](https://github.com/vercel/next.js/issues/64894) - fix: improve tsconfig extends checks: [#&#8203;61413](https://github.com/vercel/next.js/issues/61413) - Fix next/image usage in mdx: [#&#8203;64875](https://github.com/vercel/next.js/issues/64875) - fix dynamic route interception not working when deployed with middleware: [#&#8203;64923](https://github.com/vercel/next.js/issues/64923) - feat(turbopack): Handle fragments in requests: [#&#8203;64232](https://github.com/vercel/next.js/issues/64232) - feat(turbopack): Check for duplicate parallel routes: [#&#8203;64181](https://github.com/vercel/next.js/issues/64181) - Speed up createNext test suite isolation: [#&#8203;64909](https://github.com/vercel/next.js/issues/64909) - fix(rewrites): support external rewrite destination: [#&#8203;64943](https://github.com/vercel/next.js/issues/64943) - Ensure edge prerender-manifest is minimal: [#&#8203;64946](https://github.com/vercel/next.js/issues/64946) - remove special-cased prefetch kind in dev mode: [#&#8203;64941](https://github.com/vercel/next.js/issues/64941) - feat: support import attributes: [#&#8203;59480](https://github.com/vercel/next.js/issues/59480) - NextJS App router: add `isolated-vm` to server-external-packages.json: [#&#8203;64749](https://github.com/vercel/next.js/issues/64749) - Add `next experimental-test` command: [#&#8203;64352](https://github.com/vercel/next.js/issues/64352) - Revert "feat: support import attributes": [#&#8203;65001](https://github.com/vercel/next.js/issues/65001) - NODE_OPTIONS updates: [#&#8203;65006](https://github.com/vercel/next.js/issues/65006) - Update React from [`14898b6`](https://github.com/vercel/next.js/commit/14898b6a9) to [`c3048aa`](https://github.com/vercel/next.js/commit/c3048aab4): [#&#8203;64798](https://github.com/vercel/next.js/issues/64798) - initialize ALS with cookies in middleware: [#&#8203;65008](https://github.com/vercel/next.js/issues/65008) - feat(next/image)!: remove `squoosh` in favor of `sharp` as optional dependency: [#&#8203;63321](https://github.com/vercel/next.js/issues/63321) - fix: Workaround acorn bug/version issue by using SWC: [#&#8203;65021](https://github.com/vercel/next.js/issues/65021) - build: Update `@swc/core` to `v1.5.0`: [#&#8203;65022](https://github.com/vercel/next.js/issues/65022) - Ensure escaped string are parsed in NODE_OPTIONS: [#&#8203;65046](https://github.com/vercel/next.js/issues/65046) - chore(fetch-cache): remove zod from fetch cache: [#&#8203;65079](https://github.com/vercel/next.js/issues/65079) - support breadcrumb style catch-all parallel routes: [#&#8203;65063](https://github.com/vercel/next.js/issues/65063) - Improve initial setup with new App Router TypeScript project: [#&#8203;64826](https://github.com/vercel/next.js/issues/64826) - Add experimental trace file field: [#&#8203;65071](https://github.com/vercel/next.js/issues/65071) - Fix playwright config merging for webServer property: [#&#8203;65090](https://github.com/vercel/next.js/issues/65090) - chore(logging): Disable info logging of critters in production: [#&#8203;62776](https://github.com/vercel/next.js/issues/62776) - \[unstable_cache] Don't track dynamic fetches in an unstable_cache callback: [#&#8203;65010](https://github.com/vercel/next.js/issues/65010) - fix(page-static-info): refine warning message to emit once: [#&#8203;65091](https://github.com/vercel/next.js/issues/65091) - update redirect handling on forwarded action requests: [#&#8203;65097](https://github.com/vercel/next.js/issues/65097) - Tracing: allow opt-in flag to send build traces to url: [#&#8203;65019](https://github.com/vercel/next.js/issues/65019) - Turbopack: Allow client components from foreign code in app routes: [#&#8203;64751](https://github.com/vercel/next.js/issues/64751) - fix node.js module warning in middleware: [#&#8203;65112](https://github.com/vercel/next.js/issues/65112) - Fix: strip \_rsc query for client navigation rsc request: [#&#8203;65084](https://github.com/vercel/next.js/issues/65084) - fix unhandled runtime error when notFound() triggered in generateMetadata w/ parallel routes: [#&#8203;65102](https://github.com/vercel/next.js/issues/65102) - Use vercel deployment url for metadataBase fallbacks: [#&#8203;65089](https://github.com/vercel/next.js/issues/65089) - Fix next/dynamic with babel and src dir: [#&#8203;65177](https://github.com/vercel/next.js/issues/65177) - update turbopack: [#&#8203;65191](https://github.com/vercel/next.js/issues/65191) - Fix crypto import in edge runtime with Turbopack: [#&#8203;65171](https://github.com/vercel/next.js/issues/65171) - Resolve global `next` Webpack alias last: [#&#8203;65123](https://github.com/vercel/next.js/issues/65123) - Add oslo, [@&#8203;node-rs/argon2](https://github.com/node-rs/argon2), and [@&#8203;node-rs/bcrypt](https://github.com/node-rs/bcrypt) to external packages: [#&#8203;65204](https://github.com/vercel/next.js/issues/65204) - \[trace] Reduce the size of .next/trace files: [#&#8203;65101](https://github.com/vercel/next.js/issues/65101) - Remove extra suspense boundary for default next/dynamic: [#&#8203;64716](https://github.com/vercel/next.js/issues/64716) - Only apply metadata manifest credentials for preview deployment: [#&#8203;64940](https://github.com/vercel/next.js/issues/64940) - fix(next): add missing browser.major type: [#&#8203;65185](https://github.com/vercel/next.js/issues/65185) - Turbopack: rename source map prefix: [#&#8203;64965](https://github.com/vercel/next.js/issues/64965) - Use POST for invokeIpcMethod: [#&#8203;65238](https://github.com/vercel/next.js/issues/65238) - fix redirect to url with semicolon: [#&#8203;65165](https://github.com/vercel/next.js/issues/65165) - Provide non-dynamic segments to catch-all parallel routes: [#&#8203;65233](https://github.com/vercel/next.js/issues/65233) - Fix an issue parsing catchall params: [#&#8203;65277](https://github.com/vercel/next.js/issues/65277) - Enable preloading entries by default: [#&#8203;65289](https://github.com/vercel/next.js/issues/65289) - Trace uploader: add worker spans to allowed events: [#&#8203;65255](https://github.com/vercel/next.js/issues/65255) - Update font data: [#&#8203;65301](https://github.com/vercel/next.js/issues/65301) - Update revalidateTag to batch tags in one request: [#&#8203;65296](https://github.com/vercel/next.js/issues/65296) - Revert "Remove extra suspense boundary for default next/dynamic": [#&#8203;65309](https://github.com/vercel/next.js/issues/65309) - Emit polyfill-nomodule.js into the build manifest polyfillFiles: [#&#8203;65223](https://github.com/vercel/next.js/issues/65223) - Remove broken `#[turbo_tasks::value(transparent)]` attributes: [#&#8203;65336](https://github.com/vercel/next.js/issues/65336) - Delete dead `concatenate_output_assets` function: [#&#8203;65337](https://github.com/vercel/next.js/issues/65337) - Upgrade Turbopack: [#&#8203;65320](https://github.com/vercel/next.js/issues/65320) - Pages router: Use attribute-based head children reconciler when `strictNextHead` is enabled: [#&#8203;65408](https://github.com/vercel/next.js/issues/65408) - Revert "Implement Turbopack trace server bindings": [#&#8203;65419](https://github.com/vercel/next.js/issues/65419) - use correct not-found component when triggered from a parallel route: [#&#8203;65343](https://github.com/vercel/next.js/issues/65343) - Implement Turbopack trace server bindings: [#&#8203;65410](https://github.com/vercel/next.js/issues/65410) - fix(next/image): bypass icns images: [#&#8203;65414](https://github.com/vercel/next.js/issues/65414) - \[PPR] Enable incremental adoption: [#&#8203;63847](https://github.com/vercel/next.js/issues/63847) - fix: replace deprecated/removed functions in eslint-plugin-next: [#&#8203;64251](https://github.com/vercel/next.js/issues/64251) - docs: update `revalidatePath` & fix cache debug logic: [#&#8203;65365](https://github.com/vercel/next.js/issues/65365) - fix(next-core): mark turbopack embed fs to be internals: [#&#8203;65420](https://github.com/vercel/next.js/issues/65420) - fix(next/image): add missing svg test and refactor missing types: [#&#8203;65345](https://github.com/vercel/next.js/issues/65345) - build(edge): extract buildId into environment: [#&#8203;64521](https://github.com/vercel/next.js/issues/64521) - Revert "build(edge): extract buildId into environment": [#&#8203;65425](https://github.com/vercel/next.js/issues/65425) - fix(next/image): set max url length to 3072: [#&#8203;65457](https://github.com/vercel/next.js/issues/65457) - Support React 19 in App and Pages router: [#&#8203;65058](https://github.com/vercel/next.js/issues/65058) - Promote and rename server bundling options `serverComponentsExternalPackages` and `bundlePagesExternals`: [#&#8203;65421](https://github.com/vercel/next.js/issues/65421) - add experimental flag to allow forcing NODE_ENV=development in builds: [#&#8203;65463](https://github.com/vercel/next.js/issues/65463) - Support esm externals in app router: [#&#8203;65041](https://github.com/vercel/next.js/issues/65041) - fix: lazy load sharp: [#&#8203;65484](https://github.com/vercel/next.js/issues/65484) - make sure children is first in loader tree to fix head css bug on client navigation: [#&#8203;65279](https://github.com/vercel/next.js/issues/65279) - Re-land build(edge): extract buildId into environment: [#&#8203;65426](https://github.com/vercel/next.js/issues/65426) - improve versioned content map: [#&#8203;65466](https://github.com/vercel/next.js/issues/65466) - update turbopack: [#&#8203;65503](https://github.com/vercel/next.js/issues/65503) - Remove ineffective webpack rules and unused app-page context modules: [#&#8203;65321](https://github.com/vercel/next.js/issues/65321) - add page name to crashes: [#&#8203;65504](https://github.com/vercel/next.js/issues/65504) - Bump styled-jsx to 5.1.3: [#&#8203;65485](https://github.com/vercel/next.js/issues/65485) - Preload all chunks for next/dynamic in SSR: [#&#8203;65486](https://github.com/vercel/next.js/issues/65486) - fix!: add sharp timeout of 10 seconds: [#&#8203;65517](https://github.com/vercel/next.js/issues/65517) - Turbopack: new graph aggregation: [#&#8203;65206](https://github.com/vercel/next.js/issues/65206) - feat(next): revise server component error message: [#&#8203;65468](https://github.com/vercel/next.js/issues/65468) - chore: update prettier to 3.2.5: [#&#8203;65092](https://github.com/vercel/next.js/issues/65092) - Revert "Remove ineffective webpack rules and unused app-page context modules": [#&#8203;65558](https://github.com/vercel/next.js/issues/65558) - Remove auto appending xml extension to dynamic sitemap routes: [#&#8203;65507](https://github.com/vercel/next.js/issues/65507) - Remove rsc esm client module extra exports: [#&#8203;65519](https://github.com/vercel/next.js/issues/65519) - Handle nonce on Next.js injected script/link tags: [#&#8203;65508](https://github.com/vercel/next.js/issues/65508) - Fix multi-zone test by removing dependency list: [#&#8203;65589](https://github.com/vercel/next.js/issues/65589) - remove next-action header when following a redirect: [#&#8203;65615](https://github.com/vercel/next.js/issues/65615) - Remove [@&#8203;next/font](https://github.com/next/font) resolving for font loaders: [#&#8203;65601](https://github.com/vercel/next.js/issues/65601) - remove legacy deprecated warnings: [#&#8203;65579](https://github.com/vercel/next.js/issues/65579) - feat(turbopack): add support for `bundlePagesRouterDependencies`: [#&#8203;65520](https://github.com/vercel/next.js/issues/65520) - fix(next-swc): load wasm fallback if native bindings fail to load: [#&#8203;65623](https://github.com/vercel/next.js/issues/65623) - fix(next-swc): correct path interop to filepath for wasm: [#&#8203;65633](https://github.com/vercel/next.js/issues/65633) - Add proper deprecation/rename warnings for server bundling option: [#&#8203;65575](https://github.com/vercel/next.js/issues/65575) - feat!(next/image): change default `Content-Disposition` to `attachment`: [#&#8203;65631](https://github.com/vercel/next.js/issues/65631) - Pages router: Enable strict `next/head` children reconciler by default: [#&#8203;65418](https://github.com/vercel/next.js/issues/65418) - Apply react-server conditions to middleware: [#&#8203;65424](https://github.com/vercel/next.js/issues/65424) - fix(next-swc): Do not reuse compiler instance: [#&#8203;65602](https://github.com/vercel/next.js/issues/65602) - Show the new key of experimental config change warnings: [#&#8203;65651](https://github.com/vercel/next.js/issues/65651) - fix(next-swc): Fix SWC env target - include option: [#&#8203;65693](https://github.com/vercel/next.js/issues/65693) - Reapply "Implement Turbopack trace server bindings" ([#&#8203;65419](https://github.com/vercel/next.js/issues/65419)): [#&#8203;65527](https://github.com/vercel/next.js/issues/65527) - fix(resolve-metadata): allow for search params in canonical URL: [#&#8203;65366](https://github.com/vercel/next.js/issues/65366) - Remove missingSuspenseWithCSRBailout config: [#&#8203;65688](https://github.com/vercel/next.js/issues/65688) - Reland Remove ineffective webpack rules and unused app-page context modules: [#&#8203;65694](https://github.com/vercel/next.js/issues/65694) - Remove swc minify related code branches: [#&#8203;65690](https://github.com/vercel/next.js/issues/65690) - fix: load the tags manifest asynchronously: [#&#8203;64563](https://github.com/vercel/next.js/issues/64563) - Bump acorn to replace swc class properties transform: [#&#8203;65715](https://github.com/vercel/next.js/issues/65715) - fix: watch experimental/testmode in when running "pnpm dev": [#&#8203;65689](https://github.com/vercel/next.js/issues/65689) - Revert "chore: externalize undici for bundling": [#&#8203;65727](https://github.com/vercel/next.js/issues/65727) - \[ppr] Request normalization fixes: [#&#8203;65717](https://github.com/vercel/next.js/issues/65717) - fix(next/image)!: error when `src` has leading or trailing space: [#&#8203;65637](https://github.com/vercel/next.js/issues/65637) - fext(next-swc): extend internal env flag to all native bindings: [#&#8203;65748](https://github.com/vercel/next.js/issues/65748) - Update font data: [#&#8203;65719](https://github.com/vercel/next.js/issues/65719) - fix(next): add alias to new react exports: [#&#8203;65761](https://github.com/vercel/next.js/issues/65761) - Update font data: [#&#8203;65768](https://github.com/vercel/next.js/issues/65768) - feat: remove font family hashing in next/font css: [#&#8203;53608](https://github.com/vercel/next.js/issues/53608) - Add script to script loader when strategy prop is undefined: [#&#8203;65585](https://github.com/vercel/next.js/issues/65585) - fix: ensure websockets are correctly passed: [#&#8203;65759](https://github.com/vercel/next.js/issues/65759) - Add `clientTraceMetadata` experimental option to propagate tracing data to the client: [#&#8203;64256](https://github.com/vercel/next.js/issues/64256) - Remove process auto polyfill in edge runtime: [#&#8203;65751](https://github.com/vercel/next.js/issues/65751) - feat: support import attributes: [#&#8203;65749](https://github.com/vercel/next.js/issues/65749) - Turbopack: Remove `EcmascriptChunkingContext`: [#&#8203;65716](https://github.com/vercel/next.js/issues/65716) - Error in build for middleware when import client-only: [#&#8203;65792](https://github.com/vercel/next.js/issues/65792) - fix(next): reject protocol-relative URLs in image optimization: [#&#8203;65752](https://github.com/vercel/next.js/issues/65752) - Fix broken HTML inlining of non UTF-8 decodable binary data from Flight payload: [#&#8203;65664](https://github.com/vercel/next.js/issues/65664) - Bundle the installed react for middleware: [#&#8203;65811](https://github.com/vercel/next.js/issues/65811) - fix middleware cookie initialization: [#&#8203;65820](https://github.com/vercel/next.js/issues/65820) - fix(next/image)!: set upstream timeout to 7 seconds: [#&#8203;65821](https://github.com/vercel/next.js/issues/65821) - feat(turbopack-ecmascript): use import attributes for annotations: [#&#8203;59370](https://github.com/vercel/next.js/issues/59370) - feat(next): experimental react compiler support: [#&#8203;65804](https://github.com/vercel/next.js/issues/65804) - Fix the runtime for rsc layer: [#&#8203;65850](https://github.com/vercel/next.js/issues/65850) - Ensure React Compiler only runs on first-party browser code: [#&#8203;65851](https://github.com/vercel/next.js/issues/65851) - fix: bump nft@0.27.1: [#&#8203;65854](https://github.com/vercel/next.js/issues/65854) - add effect packages into the optimized-by-default list: [#&#8203;65465](https://github.com/vercel/next.js/issues/65465) - Upgrade react@beta: [#&#8203;65845](https://github.com/vercel/next.js/issues/65845) - Ensure plugin-syntax-jsx doesn't have to be installed: [#&#8203;65865](https://github.com/vercel/next.js/issues/65865) - Update React from [`4508873`](https://github.com/vercel/next.js/commit/4508873393) to [`04b0588`](https://github.com/vercel/next.js/commit/04b058868c): [#&#8203;65864](https://github.com/vercel/next.js/issues/65864) - Set default stale-while-revalidate header value to 1 year: [#&#8203;65867](https://github.com/vercel/next.js/issues/65867) - fix missing experimental warning for reactCompiler: [#&#8203;65866](https://github.com/vercel/next.js/issues/65866) - Error on mismatched minimal react version: [#&#8203;65806](https://github.com/vercel/next.js/issues/65806) - Revert "Set default stale-while-revalidate header value to 1 year": [#&#8203;65887](https://github.com/vercel/next.js/issues/65887) - Update turbopack & swc_core: [#&#8203;65450](https://github.com/vercel/next.js/issues/65450) - Revert "Fix broken HTML inlining of non UTF-8 decodable binary data f…: [#&#8203;65906](https://github.com/vercel/next.js/issues/65906) - experimental: unstable_after: [#&#8203;65038](https://github.com/vercel/next.js/issues/65038) - Docs: Replace "twitter.com" to "x.com": [#&#8203;65917](https://github.com/vercel/next.js/issues/65917) - fix(next/image): prefer sharp defaults, use mozjpeg for JPEG: [#&#8203;65846](https://github.com/vercel/next.js/issues/65846) - Update font data: [#&#8203;65961](https://github.com/vercel/next.js/issues/65961) - unstable_after: support nested unstable_after calls: [#&#8203;65950](https://github.com/vercel/next.js/issues/65950) - Fix revalidateTimings route for catchall index route: [#&#8203;65843](https://github.com/vercel/next.js/issues/65843) - fix(next): initial prefetch cache not set properly with different search params: [#&#8203;65977](https://github.com/vercel/next.js/issues/65977) - Add additional log to experimental ppr flag in next.config.js: [#&#8203;65944](https://github.com/vercel/next.js/issues/65944) - Change default of prerenderEarlyExit to true: [#&#8203;65830](https://github.com/vercel/next.js/issues/65830) - short-circuit OPTIONS requests to pages: [#&#8203;65295](https://github.com/vercel/next.js/issues/65295) - Turbopack: Implement `next/font/local` with `BeforeResolvePlugin` and show custom error message: [#&#8203;65870](https://github.com/vercel/next.js/issues/65870) - \[Breaking] Disable automatic static generation for route handlers: [#&#8203;65825](https://github.com/vercel/next.js/issues/65825) - Fix router.refresh missing canonical url override: [#&#8203;65999](https://github.com/vercel/next.js/issues/65999) - Fix typo in JSDoc of `ppr` flag of `next.config.js`: [#&#8203;66028](https://github.com/vercel/next.js/issues/66028) - Revert webpack bundling layer changes for middleware/pages: [#&#8203;66049](https://github.com/vercel/next.js/issues/66049) - Upgrade lightningcss, disable grid prefixing: [#&#8203;65986](https://github.com/vercel/next.js/issues/65986) - \[Breaking] disable client router cache for page segments: [#&#8203;66039](https://github.com/vercel/next.js/issues/66039) - Add dedicated client entry for Turbopack builds: [#&#8203;65824](https://github.com/vercel/next.js/issues/65824) - Update React from [`04b0588`](https://github.com/vercel/next.js/commit/04b058868c) to [`81c5ff2`](https://github.com/vercel/next.js/commit/81c5ff2e04) : [#&#8203;65869](https://github.com/vercel/next.js/issues/65869) - implement unstable_rethrow: [#&#8203;65831](https://github.com/vercel/next.js/issues/65831) - chore(next/image): remove unused `output` parameter: [#&#8203;66083](https://github.com/vercel/next.js/issues/66083) - next-swc-napi: Enable "plugin" feature by default: [#&#8203;66006](https://github.com/vercel/next.js/issues/66006) - \[turbopack] Use updated RawOutput API: [#&#8203;65300](https://github.com/vercel/next.js/issues/65300) - Skip setting to fetch cache when not modified: [#&#8203;66055](https://github.com/vercel/next.js/issues/66055) - \[Memory] Add option to reduce memory usage caused by duplicate strings in webpack-sources: [#&#8203;66003](https://github.com/vercel/next.js/issues/66003) - Ensure metadata routes dont skip static optimization: [#&#8203;66097](https://github.com/vercel/next.js/issues/66097) - \[unstable_after] fix occasional dev-mode crash in edge runtime pages: [#&#8203;66099](https://github.com/vercel/next.js/issues/66099) - fix: ensure prefetch data routes are always added when app has ppr enabled: [#&#8203;66102](https://github.com/vercel/next.js/issues/66102) - \[Breaking] Disable automatic fetch caching: [#&#8203;66004](https://github.com/vercel/next.js/issues/66004) - Update React from [`81c5ff2`](https://github.com/vercel/next.js/commit/81c5ff2e04) to [`f994737`](https://github.com/vercel/next.js/commit/f994737d14): [#&#8203;66093](https://github.com/vercel/next.js/issues/66093) - fix: ensure prefetch data routes are always added when app has ppr enabled: [#&#8203;66102](https://github.com/vercel/next.js/issues/66102) - \[Breaking] Disable automatic fetch caching: [#&#8203;66004](https://github.com/vercel/next.js/issues/66004) - Update React from [`81c5ff2`](https://github.com/vercel/next.js/commit/81c5ff2e04) to [`f994737`](https://github.com/vercel/next.js/commit/f994737d14): [#&#8203;66093](https://github.com/vercel/next.js/issues/66093) - \[ppr] Remove canary requirement: [#&#8203;66112](https://github.com/vercel/next.js/issues/66112) - \[ppr] Data route fixes: [#&#8203;66109](https://github.com/vercel/next.js/issues/66109) - \[unstable_after] always use 'waitUntil' from '[@&#8203;next/request-context](https://github.com/next/request-context)' if available: [#&#8203;66119](https://github.com/vercel/next.js/issues/66119) - Don't fail the build if `@types/` packages appear to be missing: [#&#8203;66127](https://github.com/vercel/next.js/issues/66127) - Stabilize swrDelta config: [#&#8203;66108](https://github.com/vercel/next.js/issues/66108) - Revert "Don't fail the build if @&#8203;types/ packages appear to be missing": [#&#8203;66130](https://github.com/vercel/next.js/issues/66130) - fix(next): global not-found not working on multi-root layouts: [#&#8203;63053](https://github.com/vercel/next.js/issues/63053) - chore(next): add keywords on package.json: [#&#8203;64173](https://github.com/vercel/next.js/issues/64173) - Fix DynamicServerError not being thrown in fetch: [#&#8203;64511](https://github.com/vercel/next.js/issues/64511) - fix: `lib/helpers/install.ts` to better support pnpm and properly respect `root` argument: [#&#8203;64418](https://github.com/vercel/next.js/issues/64418) - fix(next): `Metadata.openGraph` values not resolving basic values when `type` is set: [#&#8203;63620](https://github.com/vercel/next.js/issues/63620) - disable production chunking in dev: [#&#8203;64488](https://github.com/vercel/next.js/issues/64488) - update turbopack: [#&#8203;64501](https://github.com/vercel/next.js/issues/64501) - Turbopack: Allow client components to be imported in app routes: [#&#8203;64520](https://github.com/vercel/next.js/issues/64520) - Turbopack: don’t show long internal stack traces on build errors: [#&#8203;64427](https://github.com/vercel/next.js/issues/64427) - next/script: Correctly apply async and defer props: [#&#8203;52939](https://github.com/vercel/next.js/issues/52939) - chore(next/font): update [@&#8203;capsizecss/metrics](https://github.com/capsizecss/metrics) package: [#&#8203;64528](https://github.com/vercel/next.js/issues/64528) - feat: add information that revalidate interval is in seconds: [#&#8203;64229](https://github.com/vercel/next.js/issues/64229) - Typo "Minifer" in config.ts: [#&#8203;64359](https://github.com/vercel/next.js/issues/64359) - Enhance types for Node and Edge envionments: [#&#8203;64454](https://github.com/vercel/next.js/issues/64454) - feat: Add a validation for `postcss` with `useLightningcss`: [#&#8203;64379](https://github.com/vercel/next.js/issues/64379) - fix HMR for cases where chunking changes: [#&#8203;64367](https://github.com/vercel/next.js/issues/64367) - perf: improve Pages Router server rendering performance: [#&#8203;64461](https://github.com/vercel/next.js/issues/64461) - Fix cjs client components tree-shaking: [#&#8203;64558](https://github.com/vercel/next.js/issues/64558) - fix refresh behavior for discarded actions: [#&#8203;64532](https://github.com/vercel/next.js/issues/64532) - fix: filter out middleware requests in logging: [#&#8203;64549](https://github.com/vercel/next.js/issues/64549) - chore: remove unused rust dependencies: [#&#8203;62176](https://github.com/vercel/next.js/issues/62176) - fix(next-swc): correctly set wasm fallback for known target triples: [#&#8203;64567](https://github.com/vercel/next.js/issues/64567) - memoize layout router context: [#&#8203;64575](https://github.com/vercel/next.js/issues/64575) - fix incorrect refresh request when basePath is set: [#&#8203;64589](https://github.com/vercel/next.js/issues/64589) - fix TypeError edge-case for parallel slots rendered multiple times: [#&#8203;64271](https://github.com/vercel/next.js/issues/64271) - Fix ASL bundling for dynamic css: [#&#8203;64451](https://github.com/vercel/next.js/issues/64451) - Revert "fix(next): global not-found not working on multi-root layouts": [#&#8203;64601](https://github.com/vercel/next.js/issues/64601) - chore(test): run related E2E deploy tests on PRs: [#&#8203;63763](https://github.com/vercel/next.js/issues/63763) - Improve top level await coverage: [#&#8203;64508](https://github.com/vercel/next.js/issues/64508) - Upgrade typescript to 5.3: [#&#8203;64043](https://github.com/vercel/next.js/issues/64043) - add pathname normalizer for actions: [#&#8203;64592](https://github.com/vercel/next.js/issues/64592) - Fix experimental/testmode by removing console.log: [#&#8203;64670](https://github.com/vercel/next.js/issues/64670) - Don't output .test.ts files in next/font: [#&#8203;63472](https://github.com/vercel/next.js/issues/63472) - Fix reporting when performance.measure doesn't exist (Edge): [#&#8203;64669](https://github.com/vercel/next.js/issues/64669) - Reduce amount of data passed to collectBuildTraces: [#&#8203;59665](https://github.com/vercel/next.js/issues/59665) - fix(next-server): 'quiet' setting delegate for custom server: [#&#8203;64512](https://github.com/vercel/next.js/issues/64512) - Revert "chore(test): run related E2E deploy tests on PRs": [#&#8203;64682](https://github.com/vercel/next.js/issues/64682) - update turbopack: [#&#8203;64686](https://github.com/vercel/next.js/issues/64686) - Fix: resolve mixed re-exports module as cjs: [#&#8203;64681](https://github.com/vercel/next.js/issues/64681) - Revert "fix TypeError edge-case for parallel slots rendered multiple times": [#&#8203;64690](https://github.com/vercel/next.js/issues/64690) - Fix typo: 'serverComponentsExtenalPackages' should be 'serverComponentsExternalPackages': [#&#8203;64705](https://github.com/vercel/next.js/issues/64705) - prevent erroneous route interception during lazy fetch: [#&#8203;64692](https://github.com/vercel/next.js/issues/64692) - Add `@appsignal/nodejs` to the external packages list: [#&#8203;64503](https://github.com/vercel/next.js/issues/64503) - fix root page revalidation when redirecting in a server action: [#&#8203;64730](https://github.com/vercel/next.js/issues/64730) - Clean-up fetch metrics tracking: [#&#8203;64746](https://github.com/vercel/next.js/issues/64746) - \[actions] Enforce body limit using Transform stream: [#&#8203;64694](https://github.com/vercel/next.js/issues/64694) - Turbopack: Don’t show stack traces for internal modules: [#&#8203;64228](https://github.com/vercel/next.js/issues/64228) - Reapply "chore(test): run related E2E deploy tests on PRs" ([#&#8203;64682](https://github.com/vercel/next.js/issues/64682)): [#&#8203;64712](https://github.com/vercel/next.js/issues/64712) - fix(fetch-cache): fix typo: [#&#8203;64786](https://github.com/vercel/next.js/issues/64786) - fix: remove traceparent from cachekey should not remove traceparent from original object: [#&#8203;64727](https://github.com/vercel/next.js/issues/64727) - fix interception route rewrite regex not supporting hyphenated segments: [#&#8203;64805](https://github.com/vercel/next.js/issues/64805) - Disable ncc cache instead of cache cleaning: [#&#8203;64804](https://github.com/vercel/next.js/issues/64804) - Move next-swc Turborepo config to packages/next-swc: [#&#8203;64789](https://github.com/vercel/next.js/issues/64789) - build: Update `swc_core` to `v0.90.33`: [#&#8203;64553](https://github.com/vercel/next.js/issues/64553) - Enable loading source maps for Next Server and React: [#&#8203;64527](https://github.com/vercel/next.js/issues/64527) - fix: mixing namespace import and named import client components: [#&#8203;64809](https://github.com/vercel/next.js/issues/64809) - fext(next): extend next.config for mdxRs support options: [#&#8203;64801](https://github.com/vercel/next.js/issues/64801) - skip test_e2e_deploy_related when triggered from a fork: [#&#8203;64893](https://github.com/vercel/next.js/issues/64893) - fix(fetch-cache): fix additional typo, add type & data validation: [#&#8203;64799](https://github.com/vercel/next.js/issues/64799) - feat(next-core): support parsing matcher config object: [#&#8203;64678](https://github.com/vercel/next.js/issues/64678) - Fix mixed exports in server component with barrel optimization: [#&#8203;64894](https://github.com/vercel/next.js/issues/64894) - fix: improve tsconfig extends checks: [#&#8203;61413](https://github.com/vercel/next.js/issues/61413) - Fix next/image usage in mdx: [#&#8203;64875](https://github.com/vercel/next.js/issues/64875) - fix dynamic route interception not working when deployed with middleware: [#&#8203;64923](https://github.com/vercel/next.js/issues/64923) - feat(turbopack): Handle fragments in requests: [#&#8203;64232](https://github.com/vercel/next.js/issues/64232) - feat(turbopack): Check for duplicate parallel routes: [#&#8203;64181](https://github.com/vercel/next.js/issues/64181) - Speed up createNext test suite isolation: [#&#8203;64909](https://github.com/vercel/next.js/issues/64909) - fix(rewrites): support external rewrite destination: [#&#8203;64943](https://github.com/vercel/next.js/issues/64943) - Ensure edge prerender-manifest is minimal: [#&#8203;64946](https://github.com/vercel/next.js/issues/64946) - remove special-cased prefetch kind in dev mode: [#&#8203;64941](https://github.com/vercel/next.js/issues/64941) - feat: support import attributes: [#&#8203;59480](https://github.com/vercel/next.js/issues/59480) - NextJS App router: add `isolated-vm` to server-external-packages.json: [#&#8203;64749](https://github.com/vercel/next.js/issues/64749) - Add `next experimental-test` command: [#&#8203;64352](https://github.com/vercel/next.js/issues/64352) - Revert "feat: support import attributes": [#&#8203;65001](https://github.com/vercel/next.js/issues/65001) - NODE_OPTIONS updates: [#&#8203;65006](https://github.com/vercel/next.js/issues/65006) - Update React from [`14898b6`](https://github.com/vercel/next.js/commit/14898b6a9) to [`c3048aa`](https://github.com/vercel/next.js/commit/c3048aab4): [#&#8203;64798](https://github.com/vercel/next.js/issues/64798) - initialize ALS with cookies in middleware: [#&#8203;65008](https://github.com/vercel/next.js/issues/65008) - feat(next/image)!: remove `squoosh` in favor of `sharp` as optional dependency: [#&#8203;63321](https://github.com/vercel/next.js/issues/63321) - fix: Workaround acorn bug/version issue by using SWC: [#&#8203;65021](https://github.com/vercel/next.js/issues/65021) - build: Update `@swc/core` to `v1.5.0`: [#&#8203;65022](https://github.com/vercel/next.js/issues/65022) - Ensure escaped string are parsed in NODE_OPTIONS: [#&#8203;65046](https://github.com/vercel/next.js/issues/65046) - chore(fetch-cache): remove zod from fetch cache: [#&#8203;65079](https://github.com/vercel/next.js/issues/65079) - support breadcrumb style catch-all parallel routes: [#&#8203;65063](https://github.com/vercel/next.js/issues/65063) - Improve initial setup with new App Router TypeScript project: [#&#8203;64826](https://github.com/vercel/next.js/issues/64826) - Add experimental trace file field: [#&#8203;65071](https://github.com/vercel/next.js/issues/65071) - Fix playwright config merging for webServer property: [#&#8203;65090](https://github.com/vercel/next.js/issues/65090) - chore(logging): Disable info logging of critters in production: [#&#8203;62776](https://github.com/vercel/next.js/issues/62776) - \[unstable_cache] Don't track dynamic fetches in an unstable_cache callback: [#&#8203;65010](https://github.com/vercel/next.js/issues/65010) - fix(page-static-info): refine warning message to emit once: [#&#8203;65091](https://github.com/vercel/next.js/issues/65091) - update redirect handling on forwarded action requests: [#&#8203;65097](https://github.com/vercel/next.js/issues/65097) - Tracing: allow opt-in flag to send build traces to url: [#&#8203;65019](https://github.com/vercel/next.js/issues/65019) - Turbopack: Allow client components from foreign code in app routes: [#&#8203;64751](https://github.com/vercel/next.js/issues/64751) - fix node.js module warning in middleware: [#&#8203;65112](https://github.com/vercel/next.js/issues/65112) - Fix: strip \_rsc query for client navigation rsc request: [#&#8203;65084](https://github.com/vercel/next.js/issues/65084) - fix unhandled runtime error when notFound() triggered in generateMetadata w/ parallel routes: [#&#8203;65102](https://github.com/vercel/next.js/issues/65102) - Use vercel deployment url for metadataBase fallbacks: [#&#8203;65089](https://github.com/vercel/next.js/issues/65089) - Fix next/dynamic with babel and src dir: [#&#8203;65177](https://github.com/vercel/next.js/issues/65177) - update turbopack: [#&#8203;65191](https://github.com/vercel/next.js/issues/65191) - Fix crypto import in edge runtime with Turbopack: [#&#8203;65171](https://github.com/vercel/next.js/issues/65171) - Resolve global `next` Webpack alias last: [#&#8203;65123](https://github.com/vercel/next.js/issues/65123) - Add oslo, [@&#8203;node-rs/argon2](https://github.com/node-rs/argon2), and [@&#8203;node-rs/bcrypt](https://github.com/node-rs/bcrypt) to external packages: [#&#8203;65204](https://github.com/vercel/next.js/issues/65204) - \[trace] Reduce the size of .next/trace files: [#&#8203;65101](https://github.com/vercel/next.js/issues/65101) - Remove extra suspense boundary for default next/dynamic: [#&#8203;64716](https://github.com/vercel/next.js/issues/64716) - Only apply metadata manifest credentials for preview deployment: [#&#8203;64940](https://github.com/vercel/next.js/issues/64940) - fix(next): add missing browser.major type: [#&#8203;65185](https://github.com/vercel/next.js/issues/65185) - Turbopack: rename source map prefix: [#&#8203;64965](https://github.com/vercel/next.js/issues/64965) - fix(next/image): detect react@19 for `fetchPriority` prop: [#&#8203;65235](https://github.com/vercel/next.js/issues/65235) - Use POST for invokeIpcMethod: [#&#8203;65238](https://github.com/vercel/next.js/issues/65238) - fix redirect to url with semicolon: [#&#8203;65165](https://github.com/vercel/next.js/issues/65165) - Provide non-dynamic segments to catch-all parallel routes: [#&#8203;65233](https://github.com/vercel/next.js/issues/65233) - Fix an issue parsing catchall params: [#&#8203;65277](https://github.com/vercel/next.js/issues/65277) - Enable preloading entries by default: [#&#8203;65289](https://github.com/vercel/next.js/issues/65289) - Trace uploader: add worker spans to allowed events: [#&#8203;65255](https://github.com/vercel/next.js/issues/65255) - Update font data: [#&#8203;65301](https://github.com/vercel/next.js/issues/65301) - Update revalidateTag to batch tags in one request: [#&#8203;65296](https://github.com/vercel/next.js/issues/65296) - Revert "Remove extra suspense boundary for default next/dynamic": [#&#8203;65309](https://github.com/vercel/next.js/issues/65309) - Emit polyfill-nomodule.js into the build manifest polyfillFiles: [#&#8203;65223](https://github.com/vercel/next.js/issues/65223) - Remove broken `#[turbo_tasks::value(transparent)]` attributes: [#&#8203;65336](https://github.com/vercel/next.js/issues/65336) - Delete dead `concatenate_output_assets` function: [#&#8203;65337](https://github.com/vercel/next.js/issues/65337) - Upgrade Turbopack: [#&#8203;65320](https://github.com/vercel/next.js/issues/65320) - Pages router: Use attribute-based head children reconciler when `strictNextHead` is enabled: [#&#8203;65408](https://github.com/vercel/next.js/issues/65408) - Revert "Implement Turbopack trace server bindings": [#&#8203;65419](https://github.com/vercel/next.js/issues/65419) - use correct not-found component when triggered from a parallel route: [#&#8203;65343](https://github.com/vercel/next.js/issues/65343) - Implement Turbopack trace server bindings: [#&#8203;65410](https://github.com/vercel/next.js/issues/65410) - fix(next/image): bypass icns images: [#&#8203;65414](https://github.com/vercel/next.js/issues/65414) - \[PPR] Enable incremental adoption: [#&#8203;63847](https://github.com/vercel/next.js/issues/63847) - fix: replace deprecated/removed functions in eslint-plugin-next: [#&#8203;64251](https://github.com/vercel/next.js/issues/64251) - docs: update `revalidatePath` & fix cache debug logic: [#&#8203;65365](https://github.com/vercel/next.js/issues/65365) - fix(next-core): mark turbopack embed fs to be internals: [#&#8203;65420](https://github.com/vercel/next.js/issues/65420) - fix(next/image): add missing svg test and refactor missing types: [#&#8203;65345](https://github.com/vercel/next.js/issues/65345) - build(edge): extract buildId into environment: [#&#8203;64521](https://github.com/vercel/next.js/issues/64521) - Revert "build(edge): extract buildId into environment": [#&#8203;65425](https://github.com/vercel/next.js/issues/65425) - fix(next/image): set max url length to 3072: [#&#8203;65457](https://github.com/vercel/next.js/issues/65457) - Support React 19 in App and Pages router: [#&#8203;65058](https://github.com/vercel/next.js/issues/65058) - Promote and rename server bundling options `serverComponentsExternalPackages` and `bundlePagesExternals`: [#&#8203;65421](https://github.com/vercel/next.js/issues/65421) - add experimental flag to allow forcing NODE_ENV=development in builds: [#&#8203;65463](https://github.com/vercel/next.js/issues/65463) - Support esm externals in app router: [#&#8203;65041](https://github.com/vercel/next.js/issues/65041) - fix: lazy load sharp: [#&#8203;65484](https://github.com/vercel/next.js/issues/65484) - make sure children is first in loader tree to fix head css bug on client navigation: [#&#8203;65279](https://github.com/vercel/next.js/issues/65279) - Re-land build(edge): extract buildId into environment: [#&#8203;65426](https://github.com/vercel/next.js/issues/65426) - improve versioned content map: [#&#8203;65466](https://github.com/vercel/next.js/issues/65466) - update turbopack: [#&#8203;65503](https://github.com/vercel/next.js/issues/65503) - Remove ineffective webpack rules and unused app-page context modules: [#&#8203;65321](https://github.com/vercel/next.js/issues/65321) - add page name to crashes: [#&#8203;65504](https://github.com/vercel/next.js/issues/65504) - Bump styled-jsx to 5.1.3: [#&#8203;65485](https://github.com/vercel/next.js/issues/65485) - Preload all chunks for next/dynamic in SSR: [#&#8203;65486](https://github.com/vercel/next.js/issues/65486) - fix!: add sharp timeout of 10 seconds: [#&#8203;65517](https://github.com/vercel/next.js/issues/65517) - Turbopack: new graph aggregation: [#&#8203;65206](https://github.com/vercel/next.js/issues/65206) - feat(next): revise server component error message: [#&#8203;65468](https://github.com/vercel/next.js/issues/65468) - chore: update prettier to 3.2.5: [#&#8203;65092](https://github.com/vercel/next.js/issues/65092) - Revert "Remove ineffective webpack rules and unused app-page context modules": [#&#8203;65558](https://github.com/vercel/next.js/issues/65558) - Remove auto appending xml extension to dynamic sitemap routes: [#&#8203;65507](https://github.com/vercel/next.js/issues/65507) - Remove rsc esm client module extra exports: [#&#8203;65519](https://github.com/vercel/next.js/issues/65519) - Handle nonce on Next.js injected script/link tags: [#&#8203;65508](https://github.com/vercel/next.js/issues/65508) - Fix multi-zone test by removing dependency list: [#&#8203;65589](https://github.com/vercel/next.js/issues/65589) - remove next-action header when following a redirect: [#&#8203;65615](https://github.com/vercel/next.js/issues/65615) - Remove [@&#8203;next/font](https://github.com/next/font) resolving for font loaders: [#&#8203;65601](https://github.com/vercel/next.js/issues/65601) - remove legacy deprecated warnings: [#&#8203;65579](https://github.com/vercel/next.js/issues/65579) - feat(turbopack): add support for `bundlePagesRouterDependencies`: [#&#8203;65520](https://github.com/vercel/next.js/issues/65520) - fix(next-swc): load wasm fallback if native bindings fail to load: [#&#8203;65623](https://github.com/vercel/next.js/issues/65623) - fix(next-swc): correct path interop to filepath for wasm: [#&#8203;65633](https://github.com/vercel/next.js/issues/65633) - Add proper deprecation/rename warnings for server bundling option: [#&#8203;65575](https://github.com/vercel/next.js/issues/65575) - feat!(next/image): change default `Content-Disposition` to `attachment`: [#&#8203;65631](https://github.com/vercel/next.js/issues/65631) - Pages router: Enable strict `next/head` children reconciler by default: [#&#8203;65418](https://github.com/vercel/next.js/issues/65418) - Apply react-server conditions to middleware: [#&#8203;65424](https://github.com/vercel/next.js/issues/65424) - fix(next-swc): Do not reuse compiler instance: [#&#8203;65602](https://github.com/vercel/next.js/issues/65602) - Show the new key of experimental config change warnings: [#&#8203;65651](https://github.com/vercel/next.js/issues/65651) - fix(next-swc): Fix SWC env target - include option: [#&#8203;65693](https://github.com/vercel/next.js/issues/65693) - Reapply "Implement Turbopack trace server bindings" ([#&#8203;65419](https://github.com/vercel/next.js/issues/65419)): [#&#8203;65527](https://github.com/vercel/next.js/issues/65527) - fix(resolve-metadata): allow for search params in canonical URL: [#&#8203;65366](https://github.com/vercel/next.js/issues/65366) - Remove missingSuspenseWithCSRBailout config: [#&#8203;65688](https://github.com/vercel/next.js/issues/65688) - Reland Remove ineffective webpack rules and unused app-page context modules: [#&#8203;65694](https://github.com/vercel/next.js/issues/65694) - Remove swc minify related code branches: [#&#8203;65690](https://github.com/vercel/next.js/issues/65690) - fix: load the tags manifest asynchronously: [#&#8203;64563](https://github.com/vercel/next.js/issues/64563) - Bump acorn to replace swc class properties transform: [#&#8203;65715](https://github.com/vercel/next.js/issues/65715) - fix: watch experimental/testmode in when running "pnpm dev": [#&#8203;65689](https://github.com/vercel/next.js/issues/65689) - Revert "chore: externalize undici for bundling": [#&#8203;65727](https://github.com/vercel/next.js/issues/65727) - \[ppr] Request normalization fixes: [#&#8203;65717](https://github.com/vercel/next.js/issues/65717) - fix(next/image)!: error when `src` has leading or trailing space: [#&#8203;65637](https://github.com/vercel/next.js/issues/65637) - fext(next-swc): extend internal env flag to all native bindings: [#&#8203;65748](https://github.com/vercel/next.js/issues/65748) - Update font data: [#&#8203;65719](https://github.com/vercel/next.js/issues/65719) - fix(next): add alias to new react exports: [#&#8203;65761](https://github.com/vercel/next.js/issues/65761) - Update font data: [#&#8203;65768](https://github.com/vercel/next.js/issues/65768) - feat: remove font family hashing in next/font css: [#&#8203;53608](https://github.com/vercel/next.js/issues/53608) - Add script to script loader when strategy prop is undefined: [#&#8203;65585](https://github.com/vercel/next.js/issues/65585) - fix: ensure websockets are correctly passed: [#&#8203;65759](https://github.com/vercel/next.js/issues/65759) - Add `clientTraceMetadata` experimental option to propagate tracing data to the client: [#&#8203;64256](https://github.com/vercel/next.js/issues/64256) - Remove process auto polyfill in edge runtime: [#&#8203;65751](https://github.com/vercel/next.js/issues/65751) - feat: support import attributes: [#&#8203;65749](https://github.com/vercel/next.js/issues/65749) - Turbopack: Remove `EcmascriptChunkingContext`: [#&#8203;65716](https://github.com/vercel/next.js/issues/65716) - Error in build for middleware when import client-only: [#&#8203;65792](https://github.com/vercel/next.js/issues/65792) - fix(next): reject protocol-relative URLs in image optimization: [#&#8203;65752](https://github.com/vercel/next.js/issues/65752) - Fix broken HTML inlining of non UTF-8 decodable binary data from Flight payload: [#&#8203;65664](https://github.com/vercel/next.js/issues/65664) - Bundle the installed react for middleware: [#&#8203;65811](https://github.com/vercel/next.js/issues/65811) - fix middleware cookie initialization: [#&#8203;65820](https://github.com/vercel/next.js/issues/65820) - fix(next/image)!: set upstream timeout to 7 seconds: [#&#8203;65821](https://github.com/vercel/next.js/issues/65821) - feat(turbopack-ecmascript): use import attributes for annotations: [#&#8203;59370](https://github.com/vercel/next.js/issues/59370) - feat(next): experimental react compiler support: [#&#8203;65804](https://github.com/vercel/next.js/issues/65804) - Fix the runtime for rsc layer: [#&#8203;65850](https://github.com/vercel/next.js/issues/65850) - Ensure React Compiler only runs on first-party browser code: [#&#8203;65851](https://github.com/vercel/next.js/issues/65851) - fix: bump nft@0.27.1: [#&#8203;65854](https://github.com/vercel/next.js/issues/65854) - add effect packages into the optimized-by-default list: [#&#8203;65465](https://github.com/vercel/next.js/issues/65465) - Upgrade react@beta: [#&#8203;65845](https://github.com/vercel/next.js/issues/65845) - Ensure plugin-syntax-jsx doesn't have to be installed: [#&#8203;65865](https://github.com/vercel/next.js/issues/65865) - Update React from [`4508873`](https://github.com/vercel/next.js/commit/4508873393) to [`04b0588`](https://github.com/vercel/next.js/commit/04b058868c): [#&#8203;65864](https://github.com/vercel/next.js/issues/65864) - Set default stale-while-revalidate header value to 1 year: [#&#8203;65867](https://github.com/vercel/next.js/issues/65867) - fix missing experimental warning for reactCompiler: [#&#8203;65866](https://github.com/vercel/next.js/issues/65866) - Error on mismatched minimal react version: [#&#8203;65806](https://github.com/vercel/next.js/issues/65806) - Revert "Set default stale-while-revalidate header value to 1 year": [#&#8203;65887](https://github.com/vercel/next.js/issues/65887) - Update turbopack & swc_core: [#&#8203;65450](https://github.com/vercel/next.js/issues/65450) - Revert "Fix broken HTML inlining of non UTF-8 decodable binary data f…: [#&#8203;65906](https://github.com/vercel/next.js/issues/65906) - experimental: unstable_after: [#&#8203;65038](https://github.com/vercel/next.js/issues/65038) - Docs: Replace "twitter.com" to "x.com": [#&#8203;65917](https://github.com/vercel/next.js/issues/65917) - fix(next/image): prefer sharp defaults, use mozjpeg for JPEG: [#&#8203;65846](https://github.com/vercel/next.js/issues/65846) - Update font data: [#&#8203;65961](https://github.com/vercel/next.js/issues/65961) - unstable_after: support nested unstable_after calls: [#&#8203;65950](https://github.com/vercel/next.js/issues/65950) - Fix revalidateTimings route for catchall index route: [#&#8203;65843](https://github.com/vercel/next.js/issues/65843) - fix(next): initial prefetch cache not set properly with different search params: [#&#8203;65977](https://github.com/vercel/next.js/issues/65977) - Add additional log to experimental ppr flag in next.config.js: [#&#8203;65944](https://github.com/vercel/next.js/issues/65944) - Change default of prerenderEarlyExit to true: [#&#8203;65830](https://github.com/vercel/next.js/issues/65830) - short-circuit OPTIONS requests to pages: [#&#8203;65295](https://github.com/vercel/next.js/issues/65295) - Turbopack: Implement `next/font/local` with `BeforeResolvePlugin` and show custom error message: [#&#8203;65870](https://github.com/vercel/next.js/issues/65870) - \[Breaking] Disable automatic static generation for route handlers: [#&#8203;65825](https://github.com/vercel/next.js/issues/65825) - Fix router.refresh missing canonical url override: [#&#8203;65999](https://github.com/vercel/next.js/issues/65999) - Fix typo in JSDoc of `ppr` flag of `next.config.js`: [#&#8203;66028](https://github.com/vercel/next.js/issues/66028) - Revert webpack bundling layer changes for middleware/pages: [#&#8203;66049](https://github.com/vercel/next.js/issues/66049) - Upgrade lightningcss, disable grid prefixing: [#&#8203;65986](https://github.com/vercel/next.js/issues/65986) - \[Breaking] disable client router cache for page segments: [#&#8203;66039](https://github.com/vercel/next.js/issues/66039) - Add dedicated client entry for Turbopack builds: [#&#8203;65824](https://github.com/vercel/next.js/issues/65824) - Update React from [`04b0588`](https://github.com/vercel/next.js/commit/04b058868c) to [`81c5ff2`](https://github.com/vercel/next.js/commit/81c5ff2e04) : [#&#8203;65869](https://github.com/vercel/next.js/issues/65869) - implement unstable_rethrow: [#&#8203;65831](https://github.com/vercel/next.js/issues/65831) - chore(next/image): remove unused `output` parameter: [#&#8203;66083](https://github.com/vercel/next.js/issues/66083) - next-swc-napi: Enable "plugin" feature by default: [#&#8203;66006](https://github.com/vercel/next.js/issues/66006) - \[turbopack] Use updated RawOutput API: [#&#8203;65300](https://github.com/vercel/next.js/issues/65300) - Skip setting to fetch cache when not modified: [#&#8203;66055](https://github.com/vercel/next.js/issues/66055) - \[Memory] Add option to reduce memory usage caused by duplicate strings in webpack-sources: [#&#8203;66003](https://github.com/vercel/next.js/issues/66003) - Ensure metadata routes dont skip static optimization: [#&#8203;66097](https://github.com/vercel/next.js/issues/66097) - \[unstable_after] fix occasional dev-mode crash in edge runtime pages: [#&#8203;66099](https://github.com/vercel/next.js/issues/66099) - fix: ensure prefetch data routes are always added when app has ppr enabled: [#&#8203;66102](https://github.com/vercel/next.js/issues/66102) - \[Breaking] Disable automatic fetch caching: [#&#8203;66004](https://github.com/vercel/next.js/issues/66004) - Update React from [`81c5ff2`](https://github.com/vercel/next.js/commit/81c5ff2e04) to [`f994737`](https://github.com/vercel/next.js/commit/f994737d14): [#&#8203;66093](https://github.com/vercel/next.js/issues/66093) - feat(turbopack): Attempt to detect and warn about slow file IO: [#&#8203;66057](https://github.com/vercel/next.js/issues/66057) - update typescript plugin to support experimental_ppr: [#&#8203;66141](https://github.com/vercel/next.js/issues/66141) - add next-build-test binary / library: [#&#8203;64121](https://github.com/vercel/next.js/issues/64121) - add bash script to run a benchmark: [#&#8203;64717](https://github.com/vercel/next.js/issues/64717) - Handle next/navigation import in middleware: [#&#8203;66175](https://github.com/vercel/next.js/issues/66175) - \[ppr] Data route fix: [#&#8203;66190](https://github.com/vercel/next.js/issues/66190) - Implement `typeof window` inlining for Turbopack: [#&#8203;66128](https://github.com/vercel/next.js/issues/66128) - Bump React types to latest 18.3.x: [#&#8203;66181](https://github.com/vercel/next.js/issues/66181) - Bump styled-jsx to 5.1.6: [#&#8203;66185](https://github.com/vercel/next.js/issues/66185) - Fix source map loading failure for `path-to-regexp`: [#&#8203;66242](https://github.com/vercel/next.js/issues/66242) - Bump React types to 19 rc: [#&#8203;66186](https://github.com/vercel/next.js/issues/66186) - Reland bunling webpack middleware changes ([#&#8203;66049](https://github.com/vercel/next.js/issues/66049)): [#&#8203;66052](https://github.com/vercel/next.js/issues/66052) - fix dev overlay version indicator style: [#&#8203;66278](https://github.com/vercel/next.js/issues/66278) - \[ppr] Don't mark RSC requests as /\_next/data requests: [#&#8203;66249](https://github.com/vercel/next.js/issues/66249) - enhance: ignore nextjs version fetch error in dev overlay: [#&#8203;66271](https://github.com/vercel/next.js/issues/66271) - Trigger error for stream on client when it is not finished as expected: [#&#8203;65798](https://github.com/vercel/next.js/issues/65798) - chore(next-font): bump [@&#8203;capsizecss/metrics](https://github.com/capsizecss/metrics) package to the latest: [#&#8203;66302](https://github.com/vercel/next.js/issues/66302) - refactor: remove isRSCRequestCheck: [#&#8203;65587](https://github.com/vercel/next.js/issues/65587) - feat: add copy button for runtime error: [#&#8203;65921](https://github.com/vercel/next.js/issues/65921) - Transform client reference in middleware layer: [#&#8203;66294](https://github.com/vercel/next.js/issues/66294) - feat(react-dev-overlay): Open nvim with line number: [#&#8203;66358](https://github.com/vercel/next.js/issues/66358) - Restore optimization to ignore legacy APIs in react-dom/server: [#&#8203;66371](https://github.com/vercel/next.js/issues/66371) - fix: ensure dynamic fetches are tracked correctly: [#&#8203;66349](https://github.com/vercel/next.js/issues/66349) - Update font data: [#&#8203;66359](https://github.com/vercel/next.js/issues/66359) - next-swc-napi: Remove "plugin" from default feature list: [#&#8203;66380](https://github.com/vercel/next.js/issues/66380) - Revert "Middleware RSC bundling changes": [#&#8203;66422](https://github.com/vercel/next.js/issues/66422) - chore: bump supported `msw` version to `v2.3.0`: [#&#8203;66351](https://github.com/vercel/next.js/issues/66351) - remove duplicate export workers: [#&#8203;66388](https://github.com/vercel/next.js/issues/66388) - refactor page export error tracking: [#&#8203;66392](https://github.com/vercel/next.js/issues/66392) - add experimental flag for retrying static generation: [#&#8203;66393](https://github.com/vercel/next.js/issues/66393) - Update rust toolchain to nightly-2024-05-31: [#&#8203;66428](https://github.com/vercel/next.js/issues/66428) - fix erroneous RSC calls on hash changes: [#&#8203;66434](https://github.com/vercel/next.js/issues/66434) - Improve JSDoc link for Metadata API: [#&#8203;66455](https://github.com/vercel/next.js/issues/66455) - Warn metadataBase missing in standalone mode or non vercel deployment: [#&#8203;66296](https://github.com/vercel/next.js/issues/66296) - fix: ensure route handlers properly track dynamic access: [#&#8203;66446](https://github.com/vercel/next.js/issues/66446) - Fix broken `BrowserInterface` type: [#&#8203;66461](https://github.com/vercel/next.js/issues/66461) - Polish copy button state and styles: [#&#8203;66370](https://github.com/vercel/next.js/issues/66370) - expose experimental option to set a memory limit for turbo: [#&#8203;66101](https://github.com/vercel/next.js/issues/66101) - avoid filtering the error message: [#&#8203;65311](https://github.com/vercel/next.js/issues/65311) - Fix `next/navigation` type augmentation: [#&#8203;66489](https://github.com/vercel/next.js/issues/66489) - fix: only generate prefetch rsc for ppr enabled routes: [#&#8203;66395](https://github.com/vercel/next.js/issues/66395) - add layerAssets property to FlightDataPath: [#&#8203;66354](https://github.com/vercel/next.js/issues/66354) - fix missing stylesheets when parallel routes are present: [#&#8203;66300](https://github.com/vercel/next.js/issues/66300) - fix css order for some edge cases in App Dir: [#&#8203;66500](https://github.com/vercel/next.js/issues/66500) - Fix fetch deduping in dev after reload: [#&#8203;66507](https://github.com/vercel/next.js/issues/66507) - optimize server actions: [#&#8203;66523](https://github.com/vercel/next.js/issues/66523) - fixing next/dynamic transform for turbopack: [#&#8203;66527](https://github.com/vercel/next.js/issues/66527) - improve order of spans in tracing: [#&#8203;66516](https://github.com/vercel/next.js/issues/66516) - add more tracing: [#&#8203;66528](https://github.com/vercel/next.js/issues/66528) - refactor: deprecate future directory: [#&#8203;66432](https://github.com/vercel/next.js/issues/66432) - fix 'loading' segment not being copied into new CacheNode: [#&#8203;66538](https://github.com/vercel/next.js/issues/66538) - fix NextRequest proxy in edge runtime: [#&#8203;66551](https://github.com/vercel/next.js/issues/66551) - Re-land Fix broken HTML inlining of non UTF-8 decodable binary data from Flight payload [#&#8203;65664](https://github.com/vercel/next.js/issues/65664): [#&#8203;65988](https://github.com/vercel/next.js/issues/65988) - feat(turbopack): Introduce `RcStr`: [#&#8203;66262](https://github.com/vercel/next.js/issues/66262) - Remove unused state in Server Actions transform: [#&#8203;66547](https://github.com/vercel/next.js/issues/66547) - Add playwright-core to server-external-packages.json: [#&#8203;66549](https://github.com/vercel/next.js/issues/66549) - Update to turbopack-240605.2: [#&#8203;66568](https://github.com/vercel/next.js/issues/66568) - update turbopack: [#&#8203;66575](https://github.com/vercel/next.js/issues/66575) - Fix loading navigation with metadata and prefetch: [#&#8203;66447](https://github.com/vercel/next.js/issues/66447) - Update font data: [#&#8203;66582](https://github.com/vercel/next.js/issues/66582) - Fix Server Actions closure idents tracking: [#&#8203;66601](https://github.com/vercel/next.js/issues/66601) - Update to turbopack-240606.2: [#&#8203;66606](https://github.com/vercel/next.js/issues/66606) - update turbopack: [#&#8203;66627](https://github.com/vercel/next.js/issues/66627) - revert app-render changes related to determining RSC/Prefetch requests: [#&#8203;66648](https://github.com/vercel/next.js/issues/66648) - Revert "feat: Update `swc_core` to `v0.92.10`": [#&#8203;66640](https://github.com/vercel/next.js/issues/66640) - remove `staticWorkerRequestDeduping` flag & unused IPC code: [#&#8203;66655](https://github.com/vercel/next.js/issues/66655) - prevent duplicate RSC fetch when action redirects: [#&#8203;66620](https://github.com/vercel/next.js/issues/66620) - Update URL provided from unstable_cache: [#&#8203;66651](https://github.com/vercel/next.js/issues/66651) - ensure router cache updates reference the latest cache values: [#&#8203;66681](https://github.com/vercel/next.js/issues/66681) - Fix esm property def in flight loader: [#&#8203;66286](https://github.com/vercel/next.js/issues/66286) - Update React from [`f994737`](https://github.com/vercel/next.js/commit/f994737d14) to [`1df34bd`](https://github.com/vercel/next.js/commit/1df34bdf62) (19.0.0-rc.0): [#&#8203;66533](https://github.com/vercel/next.js/issues/66533) - fix(turbopack): remove tailwindcss from default external packages: [#&#8203;66706](https://github.com/vercel/next.js/issues/66706) - Append sitemap extension and optimize imafe metadata static generation: [#&#8203;66477](https://github.com/vercel/next.js/issues/66477) - feat(turbopack-ecmascript): cache external modules with wrapper: [#&#8203;63337](https://github.com/vercel/next.js/issues/63337) - \[ppr] Enable static shell debugging in other environments: [#&#8203;65483](https://github.com/vercel/next.js/issues/65483) - Add timeout/retry handling for fetch cache: [#&#8203;66652](https://github.com/vercel/next.js/issues/66652) - Fix inconsistency with 404 getStaticProps cache-control: [#&#8203;66674](https://github.com/vercel/next.js/issues/66674) - \[lint] Allow lint warnings to pass in CI: [#&#8203;66140](https://github.com/vercel/next.js/issues/66140) - Revert "Fix esm property def in flight loader": [#&#8203;66727](https://github.com/vercel/next.js/issues/66727) - Update React from `1df34bdf62` to `6230622a1a`: [#&#8203;66726](https://github.com/vercel/next.js/issues/66726) - Prevent append of trailing slash in cases where path ends with a file extension: [#&#8203;66636](https://github.com/vercel/next.js/issues/66636) - Update font data: [#&#8203;66730](https://github.com/vercel/next.js/issues/66730) - Use addDependency to track metadata route file changes: [#&#8203;66714](https://github.com/vercel/next.js/issues/66714) - fix: app-router prefetch crash when an invalid URL is passed to Link: [#&#8203;66755](https://github.com/vercel/next.js/issues/66755) - Ensure urlPathname is always a pathname: [#&#8203;63846](https://github.com/vercel/next.js/issues/63846) - build: Update `swc_core` to `v0.93.2`: [#&#8203;66698](https://github.com/vercel/next.js/issues/66698) - chore: bump turbo to 2.0.3: [#&#8203;66762](https://github.com/vercel/next.js/issues/66762) - Revert "chore: bump turbo to 2.0.3": [#&#8203;66775](https://github.com/vercel/next.js/issues/66775) - use node js chunking context for evaluation: [#&#8203;66710](https://github.com/vercel/next.js/issues/66710) - refactor: simplified async storage wrappers: [#&#8203;66767](https://github.com/vercel/next.js/issues/66767) - Update devdependecy commander: [#&#8203;66771](https://github.com/vercel/next.js/issues/66771) - chore: bump turbo to 2.0.3: [#&#8203;66784](https://github.com/vercel/next.js/issues/66784) - Make `InvalidImportResolvePlugin` a `BeforeResolvePlugin`: [#&#8203;66622](https://github.com/vercel/next.js/issues/66622) - Fix: only inject clientTraceMetadata into html page once: [#&#8203;66763](https://github.com/vercel/next.js/issues/66763) - Use turbo-tasks-malloc on all platforms: [#&#8203;66815](https://github.com/vercel/next.js/issues/66815) - \[ppr] Improve DX for static shell debugging in dev mode: [#&#8203;66806](https://github.com/vercel/next.js/issues/66806) - Reland "Middleware to use react-server condition": [#&#8203;66534](https://github.com/vercel/next.js/issues/66534) - Revert "Use turbo-tasks-malloc on all platforms": [#&#8203;66884](https://github.com/vercel/next.js/issues/66884) - fix: wait for playwright fixture to setup before running test: [#&#8203;66842](https://github.com/vercel/next.js/issues/66842) - Handle action middleware rewrite case: [#&#8203;66852](https://github.com/vercel/next.js/issues/66852) - Revert "Revert "Use turbo-tasks-malloc on all platforms" ([#&#8203;66884](https://github.com/vercel/next.js/issues/66884))", fix aarch64 compilation in CI: [#&#8203;66885](https://github.com/vercel/next.js/issues/66885) - \[Turbopack] improve memory measurement suite: [#&#8203;66748](https://github.com/vercel/next.js/issues/66748) - Fix: remove enegine requried pnpm version: [#&#8203;66914](https://github.com/vercel/next.js/issues/66914) - Remove `worker` condition name when resolving files in the Edge runtime: [#&#8203;66808](https://github.com/vercel/next.js/issues/66808) - small memory and tracing improvement: [#&#8203;66899](https://github.com/vercel/next.js/issues/66899) - build: Update `swc_core` to `v0.95.2`: [#&#8203;66902](https://github.com/vercel/next.js/issues/66902) - Testmode: use ipv4 address to reduce dependency on local system configuration: [#&#8203;66968](https://github.com/vercel/next.js/issues/66968) - Update font data: [#&#8203;66969](https://github.com/vercel/next.js/issues/66969) - Refactor internal routing headers to use request meta: [#&#8203;66987](https://github.com/vercel/next.js/issues/66987) - Remove lazyDataResolved flag: [#&#8203;66578](https://github.com/vercel/next.js/issues/66578) - refactor(next): package.json keywords `back-end` should be `backend`: [#&#8203;66974](https://github.com/vercel/next.js/issues/66974) - Fix internal route redirection with absolute urls outside basePath: [#&#8203;64604](https://github.com/vercel/next.js/issues/64604) - Expand test for AsyncLocalStorage to avoid throwing in old chrome: [#&#8203;61873](https://github.com/vercel/next.js/issues/61873) - fix caching of client chunks: [#&#8203;66971](https://github.com/vercel/next.js/issues/66971) - Run and report benchmarks: [#&#8203;66851](https://github.com/vercel/next.js/issues/66851) - refactor: remove hydration link appending console interception: [#&#8203;67011](https://github.com/vercel/next.js/issues/67011) - Use `react-dom/server.edge` instead of `.browser` in Next.js runtime: [#&#8203;66954](https://github.com/vercel/next.js/issues/66954) - feat(turbopack): add support for esm externals in app dir: [#&#8203;64918](https://github.com/vercel/next.js/issues/64918) - Add sassOption `implementation` to support sass-embedded: [#&#8203;64577](https://github.com/vercel/next.js/issues/64577) - Fix esm property def in flight loader: [#&#8203;66990](https://github.com/vercel/next.js/issues/66990) - Upgrade Turbopack: [#&#8203;67017](https://github.com/vercel/next.js/issues/67017) - fix: bad script tag in layout hydration error: [#&#8203;66998](https://github.com/vercel/next.js/issues/66998) - Ensure Turbopack build runs when experimental-compile option is used: [#&#8203;67049](https://github.com/vercel/next.js/issues/67049) - Remove handling on findDOMNode warning: [#&#8203;67054](https://github.com/vercel/next.js/issues/67054) - ensure accessing search params mark dynamic usage: [#&#8203;67105](https://github.com/vercel/next.js/issues/67105) - Add build diagnostics for saving debug information during a build: [#&#8203;66187](https://github.com/vercel/next.js/issues/66187) - chore: add detection for image more types: [#&#8203;67112](https://github.com/vercel/next.js/issues/67112) - dx: add pagePath info to missing component error: [#&#8203;66916](https://github.com/vercel/next.js/issues/66916) - Add experimental flag for providing entry paths: [#&#8203;67134](https://github.com/vercel/next.js/issues/67134) - Fix noindex is missing on static not-found page: [#&#8203;67135](https://github.com/vercel/next.js/issues/67135) - Refactor code: [#&#8203;64429](https://github.com/vercel/next.js/issues/64429) - Fix server action edge redirect with middleware rewrite: [#&#8203;67148](https://github.com/vercel/next.js/issues/67148) - chore: turbopack metadata routes normalizing: [#&#8203;67159](https://github.com/vercel/next.js/issues/67159) - codemod: add next/dynamic imports codemod: [#&#8203;67126](https://github.com/vercel/next.js/issues/67126) - Create React aliases for SVG components: [#&#8203;67104](https://github.com/vercel/next.js/issues/67104) - chore: fix react-is RC version pinning: [#&#8203;66676](https://github.com/vercel/next.js/issues/66676) - Remove extra suspense boundary for default next/dynamic: [#&#8203;67014](https://github.com/vercel/next.js/issues/67014) - Remove devdependency uuid: [#&#8203;67190](https://github.com/vercel/next.js/issues/67190) - make next/dynamic visit more incremental and cacheable: [#&#8203;66912](https://github.com/vercel/next.js/issues/66912) - Make synced react-is version more obvious: [#&#8203;67189](https://github.com/vercel/next.js/issues/67189) - fix: Narrow down from `string | undefined` to `string`: [#&#8203;65248](https://github.com/vercel/next.js/issues/65248) - Upgrade Turbopack: [#&#8203;67209](https://github.com/vercel/next.js/issues/67209) - \[ppr] Handle corrupted postponed state: [#&#8203;67021](https://github.com/vercel/next.js/issues/67021) - fix(turbopack): add no-op `resolveAbsolutePath` to browser runtime: [#&#8203;67215](https://github.com/vercel/next.js/issues/67215) - feat: enable [@&#8203;typescript-eslint/recommended](https://github.com/typescript-eslint/recommended) in create-next-app --typescript: [#&#8203;52845](https://github.com/vercel/next.js/issues/52845) - fix missing command in next-codemod: [#&#8203;67216](https://github.com/vercel/next.js/issues/67216) - chore(docs): improve visual appearance of badges in README.md: [#&#8203;67254](https://github.com/vercel/next.js/issues/67254) - refactor: replace `glob` w/ `fast-glob` in eslint plugin: [#&#8203;67261](https://github.com/vercel/next.js/issues/67261) - reject actions with invalid RSC responses: [#&#8203;67059](https://github.com/vercel/next.js/issues/67059) - chore: bump pnpm to 9.4.0: [#&#8203;64945](https://github.com/vercel/next.js/issues/64945) - packages/next: opt ts-morph into serverExternalPackages: [#&#8203;67284](https://github.com/vercel/next.js/issues/67284) - fix(next/image): improve `w` and `q` query string validation for integers: [#&#8203;67293](https://github.com/vercel/next.js/issues/67293) - chore: throw when three dot character is detected in segment: [#&#8203;67348](https://github.com/vercel/next.js/issues/67348) - Add warn and telemetry for customized esmExternals: [#&#8203;67339](https://github.com/vercel/next.js/issues/67339) - perf: improve retrieving `versionInfo` on Turbo HMR: [#&#8203;67309](https://github.com/vercel/next.js/issues/67309) - fix(next/image): undo tight coupling between `priority=true` and `fetchPriority=high`: [#&#8203;67351](https://github.com/vercel/next.js/issues/67351) - use fetch priority for app prefetches: [#&#8203;67356](https://github.com/vercel/next.js/issues/67356) - fix prefetch bailout detection for nested loading segments: [#&#8203;67358](https://github.com/vercel/next.js/issues/67358) - fix(turbopack): build all parallel routes to make sure HMR works: [#&#8203;67222](https://github.com/vercel/next.js/issues/67222) - Update `@swc/core` npm package to `v1.6.6`: [#&#8203;67379](https://github.com/vercel/next.js/issues/67379) - feat: Pass `module: "unknown"` to SWC minfiier: [#&#8203;66817](https://github.com/vercel/next.js/issues/66817) - \[chore] Update turbopack to turbopack-240703.1: [#&#8203;67406](https://github.com/vercel/next.js/issues/67406) - fix dynamic param extraction for interception routes: [#&#8203;67400](https://github.com/vercel/next.js/issues/67400) - Upgrade TypeScript to v5.5.2: [#&#8203;67113](https://github.com/vercel/next.js/issues/67113) - Fix typo in MDX documentation: [#&#8203;67432](https://github.com/vercel/next.js/issues/67432) - Transpile geist by default: [#&#8203;67402](https://github.com/vercel/next.js/issues/67402) - Turbopack + Relay: correctly implement artifact_directory to fix multi-project test: [#&#8203;67403](https://github.com/vercel/next.js/issues/67403) - fix(next/image): handle invalid url: [#&#8203;67465](https://github.com/vercel/next.js/issues/67465) - Bump minimum Node.js version to 18.18 (up from 18.17): [#&#8203;67274](https://github.com/vercel/next.js/issues/67274) - Update font data: [#&#8203;67472](https://github.com/vercel/next.js/issues/67472) - avoid merging global css in a way that leaks into other chunk groups: [#&#8203;67373](https://github.com/vercel/next.js/issues/67373) - refactor: avoid unnecessary after wrapper: [#&#8203;67463](https://github.com/vercel/next.js/issues/67463) - fix(next): add cross origin in react dom preload: [#&#8203;67423](https://github.com/vercel/next.js/issues/67423) - Remove obsolete `isNodeDebugging` option from next server: [#&#8203;67492](https://github.com/vercel/next.js/issues/67492) - Fix VS Code debugging: [#&#8203;66254](https://github.com/vercel/next.js/issues/66254) - Dedupe double logged server errors: [#&#8203;67464](https://github.com/vercel/next.js/issues/67464) - Turbopack build: Ensure Pages Router manifests are loaded with buildId: [#&#8203;67317](https://github.com/vercel/next.js/issues/67317) - next-build-test improvements: [#&#8203;67460](https://github.com/vercel/next.js/issues/67460) - Update font data: [#&#8203;67574](https://github.com/vercel/next.js/issues/67574) - Tweak the display for error trace: [#&#8203;67572](https://github.com/vercel/next.js/issues/67572) - Turbopack build: Ensure build manifest routes are sorted: [#&#8203;67583](https://github.com/vercel/next.js/issues/67583) - Clean up flight headers: [#&#8203;67525](https://github.com/vercel/next.js/issues/67525) - feat(next): `next.config.ts`: [#&#8203;63051](https://github.com/vercel/next.js/issues/63051) - Fix PPR navigations & revert `layerAssets` property from FlightData: [#&#8203;67435](https://github.com/vercel/next.js/issues/67435) - Update experimental trace handling to capture more deps: [#&#8203;67599](https://github.com/vercel/next.js/issues/67599) - Write out task statistics if NEXT_TURBOPACK_TASK_STATISTICS is set: [#&#8203;67164](https://github.com/vercel/next.js/issues/67164) - fix PPR navigations when visiting route with seeded cache: [#&#8203;67439](https://github.com/vercel/next.js/issues/67439) - Turbopack build: Add missing Compiled successfully message: [#&#8203;67598](https://github.com/vercel/next.js/issues/67598) - feat: type hint for `env` in dev mode: [#&#8203;67157](https://github.com/vercel/next.js/issues/67157) - perf(turbopack): only build last parallel route: [#&#8203;67588](https://github.com/vercel/next.js/issues/67588) - feat: instrumentation onRequestError: [#&#8203;67539](https://github.com/vercel/next.js/issues/67539) - Reduce console error patching: [#&#8203;67433](https://github.com/vercel/next.js/issues/67433) - Share the hydration error info extraction util: [#&#8203;67639](https://github.com/vercel/next.js/issues/67639) - Add prerender indicator for app router: [#&#8203;67306](https://github.com/vercel/next.js/issues/67306) - cleanup unused server util: [#&#8203;67645](https://github.com/vercel/next.js/issues/67645) - fix: typo prerender indicator link: [#&#8203;67650](https://github.com/vercel/next.js/issues/67650) - style: simplify string formatting: [#&#8203;66772](https://github.com/vercel/next.js/issues/66772) - build: upgrade edge-runtime: [#&#8203;67565](https://github.com/vercel/next.js/issues/67565) - Update `swc_core` to `v0.96.9`: [#&#8203;67378](https://github.com/vercel/next.js/issues/67378) - Move request header parsing for `app-render` into a dedicated function: [#&#8203;67524](https://github.com/vercel/next.js/issues/67524) - refactor: `typedEnv` is not `readonly`: [#&#8203;67693](https://github.com/vercel/next.js/issues/67693) - Report HMR latency when a Server Component changes: [#&#8203;67699](https://github.com/vercel/next.js/issues/67699) - refactor: merge the same util to detect nextjs navigation errors: [#&#8203;67672](https://github.com/vercel/next.js/issues/67672) - Move .next/chunks folder to .next/build/chunks: [#&#8203;67610](https://github.com/vercel/next.js/issues/67610) - Add render source to onRequestError context: [#&#8203;67703](https://github.com/vercel/next.js/issues/67703) - refactor `<AppRouter />` render structure: [#&#8203;64594](https://github.com/vercel/next.js/issues/64594) - cleanup unused pages router method: [#&#8203;67722](https://github.com/vercel/next.js/issues/67722) - fix(turbopack): allow page segments that don't alter the path after catchall: [#&#8203;67713](https://github.com/vercel/next.js/issues/67713) - Convert secondary `fetchServerResponse` params into options object: [#&#8203;67526](https://github.com/vercel/next.js/issues/67526) - Server Components HMR Cache: [#&#8203;67527](https://github.com/vercel/next.js/issues/67527) - pages router: ensure x-middleware-cache is respected: [#&#8203;67734](https://github.com/vercel/next.js/issues/67734) - Fix typescript setup for `packages/font` and `turbo/generators`: [#&#8203;67687](https://github.com/vercel/next.js/issues/67687) - Turbopack build: Exclude .d.ts files as routes: [#&#8203;67744](https://github.com/vercel/next.js/issues/67744) - chore: Update `@swc/core` and `@swc/heleprs`: [#&#8203;67757](https://github.com/vercel/next.js/issues/67757) - feat: facebook metadata: [#&#8203;65713](https://github.com/vercel/next.js/issues/65713) - fix: unstable_cache should not cache new result in draft mode: [#&#8203;67772](https://github.com/vercel/next.js/issues/67772) - Fix edge preview props are not matched with cookie: [#&#8203;67779](https://github.com/vercel/next.js/issues/67779) - Wait for `✓ Ready` log in `NextInstance#start`: [#&#8203;67767](https://github.com/vercel/next.js/issues/67767) - Ensure serverSourceMaps is in webpack cache key: [#&#8203;67786](https://github.com/vercel/next.js/issues/67786) - TypeScript plugin: Allow functions in action-like props: [#&#8203;67211](https://github.com/vercel/next.js/issues/67211) - update turbopack: [#&#8203;67795](https://github.com/vercel/next.js/issues/67795) - Drop edge prerender manifest: [#&#8203;67787](https://github.com/vercel/next.js/issues/67787) - perf: Optmize `react_server_component` transform: [#&#8203;67335](https://github.com/vercel/next.js/issues/67335) - Turbopack build: Implement app/global-error.tsx: [#&#8203;67803](https://github.com/vercel/next.js/issues/67803) - Ensure instrumentation register only call once: [#&#8203;67805](https://github.com/vercel/next.js/issues/67805) - Set [@&#8203;next/font](https://github.com/next/font) to private and remove peer deps field: [#&#8203;67797](https://github.com/vercel/next.js/issues/67797) - Handle server actions error in onRequestError: [#&#8203;67769](https://github.com/vercel/next.js/issues/67769) - Don’t show long internal Rust stack traces to users: [#&#8203;67678](https://github.com/vercel/next.js/issues/67678) - Align the typeEnv value type with default process env value type: [#&#8203;67804](https://github.com/vercel/next.js/issues/67804) - ensure component tree is only rendered once during SSG/revalidations: [#&#8203;67680](https://github.com/vercel/next.js/issues/67680) - refactor client router initialization: [#&#8203;67821](https://github.com/vercel/next.js/issues/67821) - Fix for `typedRoutes` when setting `pageExtensions` - for typedRoutes MDX support: [#&#8203;67824](https://github.com/vercel/next.js/issues/67824) - \[Diagnostics] Record framework.json after creating and cleaning distDir: [#&#8203;67819](https://github.com/vercel/next.js/issues/67819) - Enable `experimental.serverComponentsHmrCache` by default: [#&#8203;67800](https://github.com/vercel/next.js/issues/67800) - Drop the experimental env var for onRequestError API: [#&#8203;67856](https://github.com/vercel/next.js/issues/67856) - Add additional handling for experimental tracing: [#&#8203;67785](https://github.com/vercel/next.js/issues/67785) - Update font data: [#&#8203;67872](https://github.com/vercel/next.js/issues/67872) - update turbopack: [#&#8203;67874](https://github.com/vercel/next.js/issues/67874) - Hide caniuse-lite outdated warning in terminal: [#&#8203;67869](https://github.com/vercel/next.js/issues/67869) - Support `compiler.removeConsole` with Turbopack: [#&#8203;67849](https://github.com/vercel/next.js/issues/67849) - remove extraneous field from FetchServerResponse: [#&#8203;67865](https://github.com/vercel/next.js/issues/67865) - refactor FetchServerResponse shape: [#&#8203;67866](https://github.com/vercel/next.js/issues/67866) - Support `reactRemoveProperties` with Turbopack: [#&#8203;67853](https://github.com/vercel/next.js/issues/67853) - prerendered pages should use static staleTime: [#&#8203;67868](https://github.com/vercel/next.js/issues/67868) - ensure cookies set in middleware can be read in a server action: [#&#8203;67924](https://github.com/vercel/next.js/issues/67924) - Log fetch requests during client-side navigation: [#&#8203;67925](https://github.com/vercel/next.js/issues/67925) - Fix fetch logging in edge runtime: [#&#8203;67952](https://github.com/vercel/next.js/issues/67952) - fix: merged middleware cookies should preserve options: [#&#8203;67956](https://github.com/vercel/next.js/issues/67956) - feat: disable development logging by setting `logging: false` in next config: [#&#8203;67590](https://github.com/vercel/next.js/issues/67590) - Add experimental flag for chunk failure handling during app navigation: [#&#8203;67926](https://github.com/vercel/next.js/issues/67926) - Do not limit the number of fetch requests that are logged: [#&#8203;67957](https://github.com/vercel/next.js/issues/67957) - Fix a bug in the webpack-sources patch that happens sometimes when using the webpack cache: [#&#8203;67928](https://github.com/vercel/next.js/issues/67928) - Ensure "\[Fast Refresh] rebuilding" logs have a matching "\[Fast Refresh] done" log in Webpack: [#&#8203;67968](https://github.com/vercel/next.js/issues/67968) - Fix logging option internal consuming: [#&#8203;67972](https://github.com/vercel/next.js/issues/67972) - Turbopack build: Implement reactProductionProfiling: [#&#8203;67909](https://github.com/vercel/next.js/issues/67909) - Update metadata ready tracking: [#&#8203;67929](https://github.com/vercel/next.js/issues/67929) - Fix `next lint` with async eslint-formatters: [#&#8203;67860](https://github.com/vercel/next.js/issues/67860) - refactor: move rust crates to the repo root directory: [#&#8203;67780](https://github.com/vercel/next.js/issues/67780) - Wait for pending Webpack Hot Updates before evaluating JS from RSC responses: [#&#8203;67673](https://github.com/vercel/next.js/issues/67673) - Stop handling hydration errors from unsupported React versions: [#&#8203;67903](https://github.com/vercel/next.js/issues/67903) - Update React from `6230622a1a-20240610` to `dfd30974ab-20240613`: [#&#8203;66711](https://github.com/vercel/next.js/issues/66711) - Prevent unnecessary rsc reloads on navigation: [#&#8203;68049](https://github.com/vercel/next.js/issues/68049) - update prefetching jsdoc & documentation: [#&#8203;68047](https://github.com/vercel/next.js/issues/68047) - Improve caching of next-app-loader to prevent more fs calls.: [#&#8203;67792](https://github.com/vercel/next.js/issues/67792) - Update Next Command name, add types & update variable wording: [#&#8203;68007](https://github.com/vercel/next.js/issues/68007) - Ensure experimental trace invalidates correctly: [#&#8203;68076](https://github.com/vercel/next.js/issues/68076) - Env follow-up for experimental trace: [#&#8203;68086](https://github.com/vercel/next.js/issues/68086) - log FetchMetrics during SSG to diagnostics dir: [#&#8203;68078](https://github.com/vercel/next.js/issues/68078) - remove unused preloadConfig flag: [#&#8203;68082](https://github.com/vercel/next.js/issues/68082) - refactor: isolate the params type: [#&#8203;67981](https://github.com/vercel/next.js/issues/67981) - Ignore serverComponentChanges in pages: [#&#8203;66312](https://github.com/vercel/next.js/issues/66312) - Fix global hash for experimental tracing: [#&#8203;68122](https://github.com/vercel/next.js/issues/68122) - Restructure trace experiment manifest: [#&#8203;68131](https://github.com/vercel/next.js/issues/68131) - Fix race condition with experimental tracing: [#&#8203;68143](https://github.com/vercel/next.js/issues/68143) - update turbopack: [#&#8203;68129](https://github.com/vercel/next.js/issues/68129) - Apply serverExternalPackages inside node_modules and add keyv: [#&#8203;67948](https://github.com/vercel/next.js/issues/67948) - \[image, link] fix ref merging for callback refs that return a cleanup function: [#&#8203;68123](https://github.com/vercel/next.js/issues/68123) - Revert "\[image, link] fix ref merging for callback refs that return a cleanup function": [#&#8203;68176](https://github.com/vercel/next.js/issues/68176) - Revert "Update metadata ready tracking": [#&#8203;68200](https://github.com/vercel/next.js/issues/68200) - Reapply "\[image, link] fix ref merging for callback refs that return a cleanup function" ([#&#8203;68176](https://github.com/vercel/next.js/issues/68176)): [#&#8203;68199](https://github.com/vercel/next.js/issues/68199) - fix: properly patch lockfile against swc bindings: [#&#8203;66515](https://github.com/vercel/next.js/issues/66515) - Fix ImageResponse headers merging: [#&#8203;67642](https://github.com/vercel/next.js/issues/67642) - Update React from `6230622a1a-20240610` to `76002254-20240724`: [#&#8203;68149](https://github.com/vercel/next.js/issues/68149) - fix: grammar in jsdoc: [#&#8203;68253](https://github.com/vercel/next.js/issues/68253) - Add telemetry for React Compiler usage: [#&#8203;68079](https://github.com/vercel/next.js/issues/68079) - Ensure we only handle app nav failure for actual error: [#&#8203;68285](https://github.com/vercel/next.js/issues/68285) - Drop [@&#8203;babel/plugin-transform-classes](https://github.com/babel/plugin-transform-classes) by default: [#&#8203;68290](https://github.com/vercel/next.js/issues/68290) - Move request logging code out of `NextNodeServer`: [#&#8203;68286](https://github.com/vercel/next.js/issues/68286) - Fix hmr assetPrefix escaping and reuse logic from other files: [#&#8203;67983](https://github.com/vercel/next.js/issues/67983) - Add deployment id header for rsc payload if present: [#&#8203;67255](https://github.com/vercel/next.js/issues/67255) - Turbopack: Implement HMR for module-scoped environment variable changes: [#&#8203;68209](https://github.com/vercel/next.js/issues/68209) - Revert "Update React from [`6230622`](https://github.com/vercel/next.js/commit/6230622a1a)-20240610 to [`7600225`](https://github.com/vercel/next.js/commit/76002254)-20240724 ([#&#8203;68149](https://github.com/vercel/next.js/issues/68149))": [#&#8203;68300](https://github.com/vercel/next.js/issues/68300) - Log cached fetches during HMR refreshes if enabled in logging config: [#&#8203;68287](https://github.com/vercel/next.js/issues/68287) - Upgrade Turbopack: [#&#8203;68327](https://github.com/vercel/next.js/issues/68327) - next/form: [#&#8203;68102](https://github.com/vercel/next.js/issues/68102) - Remove legacy next/link prefetch={true} warning: [#&#8203;68326](https://github.com/vercel/next.js/issues/68326) - Drop react-dev-overlay from production bundle: [#&#8203;68197](https://github.com/vercel/next.js/issues/68197) - Update React from `6230622a1a-20240610` to `3208e73e-20240730`: [#&#8203;68330](https://github.com/vercel/next.js/issues/68330) - Update metadata ready tracking (reland): [#&#8203;68342](https://github.com/vercel/next.js/issues/68342) - \[form] typedRoutes support for action prop: [#&#8203;68323](https://github.com/vercel/next.js/issues/68323) - fix: allow empty string value for opengraph: [#&#8203;68262](https://github.com/vercel/next.js/issues/68262) - update turbopack: [#&#8203;68354](https://github.com/vercel/next.js/issues/68354) - fix renaming of page files, add handling of symlinked pages: [#&#8203;68195](https://github.com/vercel/next.js/issues/68195) - Remove quotation marks from object key : [#&#8203;68337](https://github.com/vercel/next.js/issues/68337) - Move static indicator into dev overlay: [#&#8203;68369](https://github.com/vercel/next.js/issues/68369) - Ensure we match comment minify behavior between terser and swc: [#&#8203;68372](https://github.com/vercel/next.js/issues/68372) - update turbopack: [#&#8203;68399](https://github.com/vercel/next.js/issues/68399) - chore: fix references for the new turbopack crates: [#&#8203;68128](https://github.com/vercel/next.js/issues/68128) - refactor: merge turbopack crates into next.js: [#&#8203;68127](https://github.com/vercel/next.js/issues/68127) - Allow users to use process.env.NEXT_SSG_FETCH_METRICS to control fetch metrics during SSG: [#&#8203;68378](https://github.com/vercel/next.js/issues/68378) - refactor: replace `indexOf === 0` with `startsWith`: [#&#8203;68116](https://github.com/vercel/next.js/issues/68116) - feat: Enable tree shaking of turbopack: [#&#8203;66689](https://github.com/vercel/next.js/issues/66689) - Use font color for static indictor close icon: [#&#8203;68417](https://github.com/vercel/next.js/issues/68417) - Support [@&#8203;next/mdx](https://github.com/next/mdx) with Turbopack: [#&#8203;68397](https://github.com/vercel/next.js/issues/68397) - Update React from `3208e73e-20240730` to `06d0b89e-20240801`: [#&#8203;68444](https://github.com/vercel/next.js/issues/68444) - Fix ncc clearing task: [#&#8203;68468](https://github.com/vercel/next.js/issues/68468) - Clean-up legacy terser code: [#&#8203;68462](https://github.com/vercel/next.js/issues/68462) - \[ppr] Configuration for max react headers length: [#&#8203;67715](https://github.com/vercel/next.js/issues/67715) - Stabilize outputFileTracing configs: [#&#8203;68464](https://github.com/vercel/next.js/issues/68464) - Delete debug tarball file and add to gitignore: [#&#8203;68478](https://github.com/vercel/next.js/issues/68478) - ppr: prevent CacheNode.loading from being cleared on popstate: [#&#8203;68488](https://github.com/vercel/next.js/issues/68488) - Colocate `cssnanon-preset-simple` unit test with source: [#&#8203;68508](https://github.com/vercel/next.js/issues/68508) - Compile `path-to-regexp` via `ncc`: [#&#8203;68465](https://github.com/vercel/next.js/issues/68465) - Add env handling for experimental tracing: [#&#8203;68516](https://github.com/vercel/next.js/issues/68516) - chore: typo in bootrap to bootstrap: [#&#8203;68517](https://github.com/vercel/next.js/issues/68517) - Refactor ModuleOptionsContext API: [#&#8203;67864](https://github.com/vercel/next.js/issues/67864) - fix(turbopack): don't log errors when they are thrown: [#&#8203;68331](https://github.com/vercel/next.js/issues/68331) - Ensure client components are in experimental trace: [#&#8203;68492](https://github.com/vercel/next.js/issues/68492) - Ensure webpack cache does not conflict with experimental tracing: [#&#8203;68515](https://github.com/vercel/next.js/issues/68515) - Add store only mode for experimental tracing: [#&#8203;68548](https://github.com/vercel/next.js/issues/68548) - Move turbopack panic log to tmpdir: [#&#8203;67930](https://github.com/vercel/next.js/issues/67930) - Allow dev server to exit cleanly (SIGINT/SIGTERM): [#&#8203;67165](https://github.com/vercel/next.js/issues/67165) - Don't throw TurbopackInternalError if there are issues: [#&#8203;68529](https://github.com/vercel/next.js/issues/68529) - Handle more cases with env inlining: [#&#8203;68590](https://github.com/vercel/next.js/issues/68590) - make sure all the crates in turbopack are considered when caching: [#&#8203;68593](https://github.com/vercel/next.js/issues/68593) - refactor: cleanup types and logic in build: [#&#8203;68125](https://github.com/vercel/next.js/issues/68125) - Fix store only case for tracing: [#&#8203;68601](https://github.com/vercel/next.js/issues/68601) - Remove async module detection from client flight manifest: [#&#8203;68584](https://github.com/vercel/next.js/issues/68584) - fix: NPM Workspace throws`ENOWORKSPACES` error when fetching registry: [#&#8203;68522](https://github.com/vercel/next.js/issues/68522) - fix: `normalize-asset-prefix` adding leading slash when URL `assetPrefix` is provided: [#&#8203;68518](https://github.com/vercel/next.js/issues/68518) - Sitemap image tag support: [#&#8203;68034](https://github.com/vercel/next.js/issues/68034) - chore(next-swc): avoid deleting .gitignore when running "clean" script: [#&#8203;68624](https://github.com/vercel/next.js/issues/68624) - Fix favicon merging with customized icons: [#&#8203;67982](https://github.com/vercel/next.js/issues/67982) - Add tests for self-importing packages: [#&#8203;68070](https://github.com/vercel/next.js/issues/68070) - refactor static workers to help with parallelization & cache sharing: [#&#8203;68546](https://github.com/vercel/next.js/issues/68546) - Handle pruning mismatching cache for experimental trace: [#&#8203;68635](https://github.com/vercel/next.js/issues/68635) - Ensure next-server prepare only execute once: [#&#8203;68616](https://github.com/vercel/next.js/issues/68616) - fix app router prefetch deduping: [#&#8203;68642](https://github.com/vercel/next.js/issues/68642) - Turbopack HMR: Reload the page when server session changes: [#&#8203;68630](https://github.com/vercel/next.js/issues/68630) - Remove extraneous configs from cache manifest: [#&#8203;68645](https://github.com/vercel/next.js/issues/68645) - fix: HMR not works when `assetPrefix` set to URL: [#&#8203;68622](https://github.com/vercel/next.js/issues/68622) - Reject next image urls in image optimizer: [#&#8203;68628](https://github.com/vercel/next.js/issues/68628) - Check vendored `@ampproject/toolbox-optimizer` into version control: [#&#8203;68466](https://github.com/vercel/next.js/issues/68466) - Use proper react release channel for `react-dom/static` aliases: [#&#8203;68663](https://github.com/vercel/next.js/issues/68663) - Stop mangling server runtime in dev: [#&#8203;68641](https://github.com/vercel/next.js/issues/68641) - Ensure we hard error on invalid middleware config export: [#&#8203;68638](https://github.com/vercel/next.js/issues/68638) - Ensure we copy map file as well for experimental tracing: [#&#8203;68676](https://github.com/vercel/next.js/issues/68676) - chore: remove asset prefix warning log and update docs: [#&#8203;68681](https://github.com/vercel/next.js/issues/68681) - Update React from `06d0b89e-20240801` to `187dd6a7-20240806`: [#&#8203;68594](https://github.com/vercel/next.js/issues/68594) - Prevent incompability with `'eval-source-map'` and `mangle: false`: [#&#8203;68688](https://github.com/vercel/next.js/issues/68688) - Update font data: [#&#8203;68639](https://github.com/vercel/next.js/issues/68639) - Introduce prerenderAsyncStorage and refactor app-render: [#&#8203;68637](https://github.com/vercel/next.js/issues/68637) - chore: remove duplicate storeHydrationError call: [#&#8203;68736](https://github.com/vercel/next.js/issues/68736) - The patched `fetch` function should not buffer a streamed response: [#&#8203;68447](https://github.com/vercel/next.js/issues/68447) - fix(create-next-app): link to app dir docs in next-env.d.ts in app dir templates: [#&#8203;68534](https://github.com/vercel/next.js/issues/68534) - Fix `pnpm build --filter next` on a clean repository: [#&#8203;68693](https://github.com/vercel/next.js/issues/68693) - Rename url to path for onRequestError request arg: [#&#8203;68672](https://github.com/vercel/next.js/issues/68672) - misc: add dd-trace to server externals: [#&#8203;68785](https://github.com/vercel/next.js/issues/68785) - \[after] remove createCacheScope: [#&#8203;68744](https://github.com/vercel/next.js/issues/68744) - Remove obsolete `deleteAppClientCache()` call from webpack plugin: [#&#8203;68535](https://github.com/vercel/next.js/issues/68535) - Clean up `require.cache` handling: [#&#8203;68743](https://github.com/vercel/next.js/issues/68743) - Fix duplicate logs for invalid config exports: [#&#8203;68696](https://github.com/vercel/next.js/issues/68696) - Always collect static icons for all segments: [#&#8203;68712](https://github.com/vercel/next.js/issues/68712) - \[Turbopack] write action manifest atomically: [#&#8203;68538](https://github.com/vercel/next.js/issues/68538) - Add node-cron to server externals: [#&#8203;68788](https://github.com/vercel/next.js/issues/68788) - re-use `loading` from prefetch cache entries across searchParams: [#&#8203;68340](https://github.com/vercel/next.js/issues/68340) - Ensure bail out on ssr error in static generation: [#&#8203;68764](https://github.com/vercel/next.js/issues/68764) - rename fetchServerResponse response properties: [#&#8203;68814](https://github.com/vercel/next.js/issues/68814) - Only opt into navigation PPR flow if prefetched route was PPRed: [#&#8203;68815](https://github.com/vercel/next.js/issues/68815) - refactor: incremental cache cleanup: [#&#8203;68602](https://github.com/vercel/next.js/issues/68602) - unfork navigateReducer: [#&#8203;68816](https://github.com/vercel/next.js/issues/68816) - remove circular ExportError import from SSG worker: [#&#8203;68858](https://github.com/vercel/next.js/issues/68858) - re-order CacheNodeSeedData to put containing segment first: [#&#8203;68847](https://github.com/vercel/next.js/issues/68847) - Normalize vendored entrypoints: [#&#8203;68502](https://github.com/vercel/next.js/issues/68502) - fix(next): properly pass layout-level `maxDuration` config to the children page segments on build: [#&#8203;68793](https://github.com/vercel/next.js/issues/68793) - chore: fix typos in comments: [#&#8203;68792](https://github.com/vercel/next.js/issues/68792) - Fix issue with afterFiles rewrites not working when prefixed with assetPrefix: [#&#8203;68694](https://github.com/vercel/next.js/issues/68694) - refactor(turbo-tasks): Add TaskPersistence enum for task creation functions: [#&#8203;68866](https://github.com/vercel/next.js/issues/68866) - Remove invalid app router etag normalizing: [#&#8203;68948](https://github.com/vercel/next.js/issues/68948) - perf(turbo-tasks-macros): Move `assert_returns_resolved_value` into helper module: [#&#8203;68867](https://github.com/vercel/next.js/issues/68867) - fix i18n data pathname resolving: [#&#8203;68947](https://github.com/vercel/next.js/issues/68947) - refactor(turbo-tasks): Use an enum for `strongly_consistent`/`ReadConsistency` instead of a bool: [#&#8203;68913](https://github.com/vercel/next.js/issues/68913) - Update React from `187dd6a7-20240806` to `49496d49-20240814`: [#&#8203;68898](https://github.com/vercel/next.js/issues/68898) - Lookup alias and import maps using Pattern instead of String: [#&#8203;68274](https://github.com/vercel/next.js/issues/68274) - perf(turbopack): improve app structure performance: [#&#8203;67397](https://github.com/vercel/next.js/issues/67397) - Simplify static indicator: [#&#8203;68961](https://github.com/vercel/next.js/issues/68961) - use setImmediate (if present) in edge react-dom/RSDW/RSDT: [#&#8203;68952](https://github.com/vercel/next.js/issues/68952) - Fix flying-shuttle full mode breaking instrumentation: [#&#8203;68976](https://github.com/vercel/next.js/issues/68976) - Update font data: [#&#8203;68964](https://github.com/vercel/next.js/issues/68964) - Revert "Ensure bail out on ssr error in static generation": [#&#8203;68986](https://github.com/vercel/next.js/issues/68986) - Add draft mode flag for multi-zone: [#&#8203;68997](https://github.com/vercel/next.js/issues/68997) - Reland "Ensure bail out on ssr error in static generation": [#&#8203;68999](https://github.com/vercel/next.js/issues/68999) - Update React from `49496d49-20240814` to `1eaccd82-20240816`: [#&#8203;68991](https://github.com/vercel/next.js/issues/68991) - Improve Metadata JSDoc: [#&#8203;69037](https://github.com/vercel/next.js/issues/69037) - Include proper instrumentation entry in required files manifest: [#&#8203;68983](https://github.com/vercel/next.js/issues/68983) - Resolve route interception problem with (..)(..): [#&#8203;69012](https://github.com/vercel/next.js/issues/69012) - fix: Move tree shaking config to `experimental.turbo`: [#&#8203;69050](https://github.com/vercel/next.js/issues/69050) - Turbopack build: Fix metadata handling: [#&#8203;69086](https://github.com/vercel/next.js/issues/69086) - Remove references to removed react-dom/server APIs in Webpack shims: [#&#8203;68987](https://github.com/vercel/next.js/issues/68987) - misc: tweak fetch patch restoration timing during HMR to allow for userland fetch patching: [#&#8203;68193](https://github.com/vercel/next.js/issues/68193) - Remove unused react-dom/server.browser references: [#&#8203;68988](https://github.com/vercel/next.js/issues/68988) - refactor: fallback updates: [#&#8203;68631](https://github.com/vercel/next.js/issues/68631) - refactor: update fallbacks to use response cache: [#&#8203;68603](https://github.com/vercel/next.js/issues/68603) - Improve create not found tree and remove asNotFound: [#&#8203;68910](https://github.com/vercel/next.js/issues/68910) - bugfix: ensure rsc isn't reused for page segments when reusing loading data: [#&#8203;69123](https://github.com/vercel/next.js/issues/69123) - add support for css-in-js ressource mapping in experimental lightningcss-loader: [#&#8203;64551](https://github.com/vercel/next.js/issues/64551) - Stablize instrumentation.js: [#&#8203;68853](https://github.com/vercel/next.js/issues/68853) - Ensure vendored `react-dom/server.browser` is used: [#&#8203;69142](https://github.com/vercel/next.js/issues/69142) - Ensure assertion failures include all versions in rsc-basic tests: [#&#8203;69138](https://github.com/vercel/next.js/issues/69138) - bugfix: ensure prefetch aliasing doesn't apply URL redirect: [#&#8203;69153](https://github.com/vercel/next.js/issues/69153) - Remove `optimizeFonts` (Automatic font optimization) superseded by next/font: [#&#8203;69137](https://github.com/vercel/next.js/issues/69137) - Ensure fetch cache TTL is updated properly: [#&#8203;69164](https://github.com/vercel/next.js/issues/69164) - correctly rethrow instrumentation loading error: [#&#8203;65251](https://github.com/vercel/next.js/issues/65251) - disable prefetch aliasing in development: [#&#8203;69168](https://github.com/vercel/next.js/issues/69168) - refactor: create shared utils for mod resource: [#&#8203;69145](https://github.com/vercel/next.js/issues/69145) - remove action pathname normalizer: [#&#8203;69181](https://github.com/vercel/next.js/issues/69181) - Apply optimization for unused actions: [#&#8203;69178](https://github.com/vercel/next.js/issues/69178) - Improve SWC transform ID generation: [#&#8203;69183](https://github.com/vercel/next.js/issues/69183) - Update React from `1eaccd82-20240816` to `eb3ad065-20240822`: [#&#8203;69196](https://github.com/vercel/next.js/issues/69196) - \[Tracing] Trace next-dev spans to represent the dev server: [#&#8203;69206](https://github.com/vercel/next.js/issues/69206) - Refactor unused import and object in Flight plugin: [#&#8203;69266](https://github.com/vercel/next.js/issues/69266) - refactor: group react dev overlay entry: [#&#8203;69223](https://github.com/vercel/next.js/issues/69223) - handle uncaught exceptions in worker: [#&#8203;69335](https://github.com/vercel/next.js/issues/69335) - Set max retries for build failures to zero: [#&#8203;69340](https://github.com/vercel/next.js/issues/69340) - send initialCanonicalUrl in array format to prevent crawler confusion: [#&#8203;69370](https://github.com/vercel/next.js/issues/69370) - remove unused argument to applyPatch: [#&#8203;69376](https://github.com/vercel/next.js/issues/69376) - Respect webpackIgnore and turboIgnore comments in the parser: [#&#8203;68451](https://github.com/vercel/next.js/issues/68451) - refactor path creation in walkTreeWithFlightRouterState: [#&#8203;69383](https://github.com/vercel/next.js/issues/69383) - Partial Fallback Prerendering: [#&#8203;68958](https://github.com/vercel/next.js/issues/68958) - Upgrade React from `eb3ad065-20240822` to `f90a6bcc-20240827`: [#&#8203;69415](https://github.com/vercel/next.js/issues/69415) - chore: add logs to download-swc ci job: [#&#8203;69425](https://github.com/vercel/next.js/issues/69425) - Upgrade React from `19.0.0-rc-f90a6bcc-20240827` to `19.0.0-rc-7771d3a7-20240827`: [#&#8203;69417](https://github.com/vercel/next.js/issues/69417) - Introduce dynamicIO experiment: [#&#8203;67571](https://github.com/vercel/next.js/issues/67571) - Add module id strategy option to next config: [#&#8203;69319](https://github.com/vercel/next.js/issues/69319) - cleanup FlightDataPath array access/slicing: [#&#8203;69241](https://github.com/vercel/next.js/issues/69241) - normalize flight data after receiving server response: [#&#8203;69460](https://github.com/vercel/next.js/issues/69460) - Support turbo: true option for custom server: [#&#8203;69464](https://github.com/vercel/next.js/issues/69464) - bugfix: aliased prefetches should flow through PPR handling: [#&#8203;69476](https://github.com/vercel/next.js/issues/69476) - fix: bump sharp@0.33.5: [#&#8203;69524](https://github.com/vercel/next.js/issues/69524) - fix: styledComponents schema: [#&#8203;69230](https://github.com/vercel/next.js/issues/69230) - Add browser devtool inspect url copy button to dev overlay: [#&#8203;69357](https://github.com/vercel/next.js/issues/69357) - Lazily init fetch dedupe cache: [#&#8203;69492](https://github.com/vercel/next.js/issues/69492) - Turbopack build: Fix middleware matchers implementation: [#&#8203;69602](https://github.com/vercel/next.js/issues/69602) - chore(metadata): add clarifying comment: [#&#8203;69549](https://github.com/vercel/next.js/issues/69549) - Remove unsupported providerImportSource option: [#&#8203;69609](https://github.com/vercel/next.js/issues/69609) - fix: clientComponentLoading span type: [#&#8203;69295](https://github.com/vercel/next.js/issues/69295) - Fix typos: [#&#8203;69568](https://github.com/vercel/next.js/issues/69568) - fix(eslint): allow typescript-eslint v8: [#&#8203;68807](https://github.com/vercel/next.js/issues/68807) - Allow external image urls with \_next/image pathname to be rendered via Image component: [#&#8203;69586](https://github.com/vercel/next.js/issues/69586) - \[Turbopack] gracefully stop turbo-tasks to allow persisting to complete: [#&#8203;69661](https://github.com/vercel/next.js/issues/69661) - fix: ensure absolute paths are handled correctly with `--file` option in `next lint` command for `lint-staged` compatibility: [#&#8203;69220](https://github.com/vercel/next.js/issues/69220) - dev-overlay: Implement CopyButton without useActionState or async transitions: [#&#8203;69494](https://github.com/vercel/next.js/issues/69494) - Update `swc_core` to `v0.103.1`: [#&#8203;69605](https://github.com/vercel/next.js/issues/69605) - Run link-ref tests in /app and /pages: [#&#8203;69564](https://github.com/vercel/next.js/issues/69564) - Partial Fallback Prerendering Route Shells: [#&#8203;69282](https://github.com/vercel/next.js/issues/69282) - Ensure externalized React entrypoints use vendored React in App Router: [#&#8203;69610](https://github.com/vercel/next.js/issues/69610) - Turbopack build: Implement --experimental-app-only flag: [#&#8203;69722](https://github.com/vercel/next.js/issues/69722) - Use vendored React version in Middleware and Instrumentation: [#&#8203;69619](https://github.com/vercel/next.js/issues/69619) - \[Turbopack] refactoring/todos: [#&#8203;69663](https://github.com/vercel/next.js/issues/69663) - misc: typo in var name: [#&#8203;69745](https://github.com/vercel/next.js/issues/69745) - Partial Prerendering Basepath Fix: [#&#8203;69520](https://github.com/vercel/next.js/issues/69520) - pages bugfix: prevent cancellation errors from being logged: [#&#8203;69766](https://github.com/vercel/next.js/issues/69766) - Disable experimental.optimizeServer by default: [#&#8203;69788](https://github.com/vercel/next.js/issues/69788) - Fix middleware fallback: false case: [#&#8203;69799](https://github.com/vercel/next.js/issues/69799) - ensure aliased prefetches return correct segment key: [#&#8203;69850](https://github.com/vercel/next.js/issues/69850) - feat(turbopack): add `experimental.turbo.root` config option: [#&#8203;69737](https://github.com/vercel/next.js/issues/69737) - Turbopack dev/build: Initial browserslist passing: [#&#8203;69781](https://github.com/vercel/next.js/issues/69781) - \[Turbopack] only subscribe to changes in dev mode: [#&#8203;69862](https://github.com/vercel/next.js/issues/69862) - HMR: Log unexpected Turbopack errors to a file: [#&#8203;68698](https://github.com/vercel/next.js/issues/68698) - fix: use correct protocol when -H and --experimental-https are enabled: [#&#8203;69822](https://github.com/vercel/next.js/issues/69822) - fix: remove unnecessary console in `isDynamicPostpone`: [#&#8203;69457](https://github.com/vercel/next.js/issues/69457) - Add ability to customize Cache-Control: [#&#8203;69802](https://github.com/vercel/next.js/issues/69802) - Support React 18 in Pages Router: [#&#8203;69484](https://github.com/vercel/next.js/issues/69484) - Revert "Support React 18 in Pages Router": [#&#8203;69911](https://github.com/vercel/next.js/issues/69911) - Pass client trace metadata to client in pages router: [#&#8203;69620](https://github.com/vercel/next.js/issues/69620) - Fix font size for build error version status: [#&#8203;69811](https://github.com/vercel/next.js/issues/69811) - feat(image-optimizer): use previously cached image cache entry if upstream image is identical: [#&#8203;67257](https://github.com/vercel/next.js/issues/67257) - \[Turbopack] print invalid message correctly: [#&#8203;69964](https://github.com/vercel/next.js/issues/69964) - fix: correct metadata url suffix: [#&#8203;69959](https://github.com/vercel/next.js/issues/69959) - \[Turbopack] add error for invalid exports: [#&#8203;69819](https://github.com/vercel/next.js/issues/69819) - handle empty query param issue in url redirects [#&#8203;68039](https://github.com/vercel/next.js/issues/68039): [#&#8203;68157](https://github.com/vercel/next.js/issues/68157) - ensure prefetch entry is not mutated: [#&#8203;69948](https://github.com/vercel/next.js/issues/69948) - Remove invalid fallback revalidate value: [#&#8203;69990](https://github.com/vercel/next.js/issues/69990) - Update font data: [#&#8203;70003](https://github.com/vercel/next.js/issues/70003) - \[Turbopack] stable Vcs without TraitRef::cell: [#&#8203;70029](https://github.com/vercel/next.js/issues/70029) - \[Turbopack] fix HmrEntryModule: [#&#8203;69965](https://github.com/vercel/next.js/issues/69965) - \[Turbopack] remove entries from versioned content map again: [#&#8203;69913](https://github.com/vercel/next.js/issues/69913) - Fix not-found case with incremental tracing: [#&#8203;70041](https://github.com/vercel/next.js/issues/70041) - Upgrade React from `7771d3a7-20240827` to `94e652d5-20240912`: [#&#8203;70037](https://github.com/vercel/next.js/issues/70037) - breaking: remove `geo` and `ip` from `NextRequest`: [#&#8203;68379](https://github.com/vercel/next.js/issues/68379) - fix: Add `import-in-the-middle` to server-external-packages: [#&#8203;68937](https://github.com/vercel/next.js/issues/68937) - Ensure .d.ts files are not processed in babel-loader / swc-loader: [#&#8203;66074](https://github.com/vercel/next.js/issues/66074) - \[Turbopack] \[HMR] Allow `Option`s to be returned by `VersionedContentMap`: [#&#8203;69079](https://github.com/vercel/next.js/issues/69079) - \[Turbopack] report error to stderr when an error in a subscribtion happens: [#&#8203;69977](https://github.com/vercel/next.js/issues/69977) - Update experimental trace tracking: [#&#8203;70044](https://github.com/vercel/next.js/issues/70044) - fix(next): Fixed an error when next#dev runs in windows: [#&#8203;70013](https://github.com/vercel/next.js/issues/70013) - Upgrade React from `94e652d5-20240912` to `206df66e-20240912`: [#&#8203;70076](https://github.com/vercel/next.js/issues/70076) - Add "[@&#8203;sparticuz/chromium](https://github.com/sparticuz/chromium)" to server-external-packages.json: [#&#8203;69127](https://github.com/vercel/next.js/issues/69127) - skip generating cert each time: [#&#8203;67122](https://github.com/vercel/next.js/issues/67122) - fix: clone response in first handler to prevent race: [#&#8203;70082](https://github.com/vercel/next.js/issues/70082) - fix: eslint-plugin-next glob: [#&#8203;68773](https://github.com/vercel/next.js/issues/68773) - Fix eslint root dirs test on Windows: [#&#8203;70160](https://github.com/vercel/next.js/issues/70160) - fix: rsc content-type header not matching with charset: [#&#8203;70033](https://github.com/vercel/next.js/issues/70033) - Fix startTime error on Android 9 with Chrome 74: [#&#8203;67391](https://github.com/vercel/next.js/issues/67391) - Fix regression in TS plugin: allow `reset` prop in error files: [#&#8203;69777](https://github.com/vercel/next.js/issues/69777) - Ensure we chunk revalidate tag requests: [#&#8203;70189](https://github.com/vercel/next.js/issues/70189) - fix(lint): no-html-link in appDir: [#&#8203;68770](https://github.com/vercel/next.js/issues/68770) - fix(next): skip conventional type check for `_private` folder convention: [#&#8203;64177](https://github.com/vercel/next.js/issues/64177) - Only wait for metadata when dynamicIO experiment is on: [#&#8203;70192](https://github.com/vercel/next.js/issues/70192) - chore: bump jscodeshift version: [#&#8203;70203](https://github.com/vercel/next.js/issues/70203) - Upgrade React from `206df66e-20240912` to `a99d8e8d-20240916`: [#&#8203;70190](https://github.com/vercel/next.js/issues/70190) - Fix vercel og package memory leak: [#&#8203;70214](https://github.com/vercel/next.js/issues/70214) - Replace URL.canParse: [#&#8203;70215](https://github.com/vercel/next.js/issues/70215) - Add support for `dynamicIO` experiment to `route.ts` modules: [#&#8203;70208](https://github.com/vercel/next.js/issues/70208) - \[ppr] Allow fallback pages to be revalidated: [#&#8203;70199](https://github.com/vercel/next.js/issues/70199) - Re-add internal env for providing page paths: [#&#8203;70235](https://github.com/vercel/next.js/issues/70235) - feat: add polyfill of `URL.canParse` for browser compatibility: [#&#8203;70228](https://github.com/vercel/next.js/issues/70228) - Remove dependecy graceful-fs and types: [#&#8203;67194](https://github.com/vercel/next.js/issues/67194) - chore: add comments for polyfill imports and file paths: [#&#8203;70233](https://github.com/vercel/next.js/issues/70233) - Upgrade React from `a99d8e8d-20240916` to `5dcb0097-20240918`: [#&#8203;70225](https://github.com/vercel/next.js/issues/70225) - Run `@next/codemod` tests in CI: [#&#8203;70248](https://github.com/vercel/next.js/issues/70248) - Upgrade React from `5dcb0097-20240918` to `e740d4b1-20240919`: [#&#8203;70260](https://github.com/vercel/next.js/issues/70260) - bugfix: actions that redirect should reject the action promise: [#&#8203;69945](https://github.com/vercel/next.js/issues/69945) - Fix missing cache-control on SSR app route: [#&#8203;70265](https://github.com/vercel/next.js/issues/70265) - Remove unused `app_structure` from `next-swc-napi`: [#&#8203;70282](https://github.com/vercel/next.js/issues/70282) - fix: match file path url escaping during build and serve: [#&#8203;70256](https://github.com/vercel/next.js/issues/70256) - Rename `loader_tree` to `app_page_loader_tree`: [#&#8203;70283](https://github.com/vercel/next.js/issues/70283) - Rename app directory "components" to "modules": [#&#8203;70285](https://github.com/vercel/next.js/issues/70285) - Honor redirect type in server actions: [#&#8203;70279](https://github.com/vercel/next.js/issues/70279) - refactor: collect all isThenable/isPromise definitions: [#&#8203;70293](https://github.com/vercel/next.js/issues/70293) - feat(next/image): add support for `decoding` prop: [#&#8203;70298](https://github.com/vercel/next.js/issues/70298) - Improve server directive SWC transform: [#&#8203;70257](https://github.com/vercel/next.js/issues/70257) - Remove unused Server IDs tracking on the server graph: [#&#8203;70317](https://github.com/vercel/next.js/issues/70317) - relocate dynamic APIs: [#&#8203;70300](https://github.com/vercel/next.js/issues/70300) - Update root not found boundary to not introduce Server Component: [#&#8203;70328](https://github.com/vercel/next.js/issues/70328) - feat(next): codemod for removed `geo` and `ip` of `NextRequest`: [#&#8203;70064](https://github.com/vercel/next.js/issues/70064) - Mention `app` dir in TS setup tip: [#&#8203;70337](https://github.com/vercel/next.js/issues/70337) - Add additional fixes for experimental tracing: [#&#8203;70356](https://github.com/vercel/next.js/issues/70356) - Fix duplicate headers in response to static assets if overrides specified by user: [#&#8203;70127](https://github.com/vercel/next.js/issues/70127) - fix: change duplicated POST method to PUT method: [#&#8203;70308](https://github.com/vercel/next.js/issues/70308) - Externalize node binary modules for app router: [#&#8203;70330](https://github.com/vercel/next.js/issues/70330) - Support fallback params when the layout is a client component: [#&#8203;70329](https://github.com/vercel/next.js/issues/70329) - Codemod for Async Request API: [#&#8203;69572](https://github.com/vercel/next.js/issues/69572) - Extract `createAppRouteCode` from `next-app-loader.ts`: [#&#8203;70352](https://github.com/vercel/next.js/issues/70352) - \[Type Definition] - Updates the manifest types to reflect the current specifications: [#&#8203;68273](https://github.com/vercel/next.js/issues/68273) - Fix middleware experimental trace case: [#&#8203;70372](https://github.com/vercel/next.js/issues/70372) - Fix legacy env config with experimental tracing: [#&#8203;70380](https://github.com/vercel/next.js/issues/70380) - Update font data: [#&#8203;70377](https://github.com/vercel/next.js/issues/70377) - add missing node modules to externals: [#&#8203;70382](https://github.com/vercel/next.js/issues/70382) - Avoid prefetch request before meta-tag-based redirect: [#&#8203;70350](https://github.com/vercel/next.js/issues/70350) - Turbopack: improve stack trace in overlay: [#&#8203;70343](https://github.com/vercel/next.js/issues/70343) - refactor: more precise types for req/res in withRequestStore: [#&#8203;70357](https://github.com/vercel/next.js/issues/70357) - Add test for TLA in client references: [#&#8203;70022](https://github.com/vercel/next.js/issues/70022) - Upgrade React from `e740d4b1-20240919` to `e4953922-20240919`: [#&#8203;70290](https://github.com/vercel/next.js/issues/70290) - feat(next-codemod): add `upgrade` command: [#&#8203;69935](https://github.com/vercel/next.js/issues/69935) - refactor: reorganize client error listeners: [#&#8203;70373](https://github.com/vercel/next.js/issues/70373) - refactor: reorganize patch console: [#&#8203;70374](https://github.com/vercel/next.js/issues/70374) - types: improve napi binding typing using generated types: [#&#8203;69680](https://github.com/vercel/next.js/issues/69680) - Upgrade React from `e4953922-20240919` to `5d19e1c8-20240923`: [#&#8203;70351](https://github.com/vercel/next.js/issues/70351) - feat(next/image): add support for `images.remotePatterns.search`: [#&#8203;70302](https://github.com/vercel/next.js/issues/70302) - chore: throw error when trying to use next.config.mts/.cjs/.cts (not supported yet): [#&#8203;70376](https://github.com/vercel/next.js/issues/70376) - Fix legacy env case with experimental tracing: [#&#8203;70411](https://github.com/vercel/next.js/issues/70411) - chore: auto-format generated types with prettier: [#&#8203;70405](https://github.com/vercel/next.js/issues/70405) - refactor(next-codemod): migrate to commander and prompts: [#&#8203;70409](https://github.com/vercel/next.js/issues/70409) - chore: auto-format generated types with prettier: [#&#8203;70405](https://github.com/vercel/next.js/issues/70405) - refactor(next-codemod): migrate to commander and prompts: [#&#8203;70409](https://github.com/vercel/next.js/issues/70409) - Extend support of Pages router to React 18: [#&#8203;70219](https://github.com/vercel/next.js/issues/70219) - Basic implementation of cache-wrapper with RSC serialization: [#&#8203;70435](https://github.com/vercel/next.js/issues/70435) - fix: updated typescript types for React API's: [#&#8203;70410](https://github.com/vercel/next.js/issues/70410) - Fix type error from merge: [#&#8203;70481](https://github.com/vercel/next.js/issues/70481) - Ensure validator is included in vendored AMP validator: [#&#8203;70482](https://github.com/vercel/next.js/issues/70482) - \[Breaking] Update Dynamic APIs to be async: [#&#8203;68812](https://github.com/vercel/next.js/issues/68812) - Use Server/Client Manifests from Singleton in encryption-utils: [#&#8203;70485](https://github.com/vercel/next.js/issues/70485) - refactor: remove ability to call getStaticPaths from app directory pages: [#&#8203;70477](https://github.com/vercel/next.js/issues/70477) - refactor: extracted zod configuration: [#&#8203;70478](https://github.com/vercel/next.js/issues/70478) - \[ppr] Added fallback shell debugging: [#&#8203;70528](https://github.com/vercel/next.js/issues/70528) - Remove shouldRevalidateStale concept from CacheHandlers: [#&#8203;70493](https://github.com/vercel/next.js/issues/70493) - fallback shell should not error when dynamic due to params access even with dynamic = "error": [#&#8203;70534](https://github.com/vercel/next.js/issues/70534) - Add cache scope handling for dynamic IO for dev/build: [#&#8203;70408](https://github.com/vercel/next.js/issues/70408) - remove unimplemented onError errorInfo argument: [#&#8203;70531](https://github.com/vercel/next.js/issues/70531) - Add env for setting cache handler path: [#&#8203;70537](https://github.com/vercel/next.js/issues/70537) - Disable "use cache" outside of dynamicIO: [#&#8203;70538](https://github.com/vercel/next.js/issues/70538) - Include buildId in the cache breaker until we have hashed Action IDs: [#&#8203;70542](https://github.com/vercel/next.js/issues/70542) - Support dynamicIO in middlware routes and generateStaticParams: [#&#8203;70544](https://github.com/vercel/next.js/issues/70544) - Unwrap `createServerReference`, and pass additional parameters: [#&#8203;69190](https://github.com/vercel/next.js/issues/69190) - Turbopack build: Fix benchmark running with webpack: [#&#8203;70533](https://github.com/vercel/next.js/issues/70533) - \[form] allow turning prefetching off: [#&#8203;68305](https://github.com/vercel/next.js/issues/68305) - \[after] fix: execute revalidates added within unstable_after(): [#&#8203;70458](https://github.com/vercel/next.js/issues/70458) - Upgrade React from `778e1ed2-20240926` to `3edc000d-20240926`: [#&#8203;70560](https://github.com/vercel/next.js/issues/70560) - Exclude Object and Promise prototype properties from shadowing for params and searchParams: [#&#8203;70568](https://github.com/vercel/next.js/issues/70568) - refactor prefetch alias handling: [#&#8203;70532](https://github.com/vercel/next.js/issues/70532) - refactor: handle onlyHashChange logic sooner: [#&#8203;70569](https://github.com/vercel/next.js/issues/70569) - Updates our sync property access for params and searchParams to allow value: [#&#8203;70570](https://github.com/vercel/next.js/issues/70570) - codemod: improve dynamic API cases: [#&#8203;70517](https://github.com/vercel/next.js/issues/70517) - Auto rotate Server Reference hash salt periodically: [#&#8203;70516](https://github.com/vercel/next.js/issues/70516) - remove leftover console.log introduced in [#&#8203;70532](https://github.com/vercel/next.js/issues/70532): [#&#8203;70615](https://github.com/vercel/next.js/issues/70615) - Add `connection()` as a new dynamic API: [#&#8203;69949](https://github.com/vercel/next.js/issues/69949) - Fix: Set busboy defParamCharset to utf8: [#&#8203;70348](https://github.com/vercel/next.js/issues/70348) - Update `dynamicIO` experiment to use React canary: [#&#8203;70571](https://github.com/vercel/next.js/issues/70571) - refactor: remove unnecessary page segment check in ppr-navigations: [#&#8203;70572](https://github.com/vercel/next.js/issues/70572) - Wire AsyncLocalStorage within a cached context: [#&#8203;70573](https://github.com/vercel/next.js/issues/70573) - Fix `revalidateTag()` behaviour when invoked in server components: [#&#8203;70446](https://github.com/vercel/next.js/issues/70446) - next-upgrade: Ensure install packages works on exotic package revisions: [#&#8203;70625](https://github.com/vercel/next.js/issues/70625) - Error consistently during prospective prerender: [#&#8203;70631](https://github.com/vercel/next.js/issues/70631) - next-upgrade: Infer React types version from runtime version: [#&#8203;70626](https://github.com/vercel/next.js/issues/70626) - next-upgrade(refactor): Improve type coverage: [#&#8203;70627](https://github.com/vercel/next.js/issues/70627) - next-upgrade: Remove extraneous if no channel is specified: [#&#8203;70628](https://github.com/vercel/next.js/issues/70628) - next-upgrade: select codemods by canary version: [#&#8203;70630](https://github.com/vercel/next.js/issues/70630) - next-upgrade: Hide install output by default: [#&#8203;70632](https://github.com/vercel/next.js/issues/70632) - next-upgrade: Allow custom selection of codemods: [#&#8203;70634](https://github.com/vercel/next.js/issues/70634) - next-upgrade: Allow choosing same codemods that are available in the currently used version: [#&#8203;70635](https://github.com/vercel/next.js/issues/70635) - Upgrade React from `3edc000d-20240926` to `2d16326d-20240930`: [#&#8203;70629](https://github.com/vercel/next.js/issues/70629) - fix: fix warnings from invalid api's called from edge runtime: [#&#8203;70639](https://github.com/vercel/next.js/issues/70639) - Update font data: [#&#8203;70653](https://github.com/vercel/next.js/issues/70653) - refactor: added more strict app segment config parsing: [#&#8203;70479](https://github.com/vercel/next.js/issues/70479) - next-upgrade: Stop interleaving user-input with long tasks: [#&#8203;70636](https://github.com/vercel/next.js/issues/70636) - Replace depricated `apple-mobile-web-app-capable` with \`mobile-web-ap…: [#&#8203;70363](https://github.com/vercel/next.js/issues/70363) - Fix interpolation of dynamic params in intercepting route pathnames: [#&#8203;70667](https://github.com/vercel/next.js/issues/70667) - bugfix: only replace with full prefetch if existing data was partial: [#&#8203;70650](https://github.com/vercel/next.js/issues/70650) - next-upgrade: Default to release channel that's used: [#&#8203;70638](https://github.com/vercel/next.js/issues/70638) - feat(turbopack): add support for polling file watcher: [#&#8203;69684](https://github.com/vercel/next.js/issues/69684) - chore: improve accessibility of static indicator: [#&#8203;70612](https://github.com/vercel/next.js/issues/70612) - initially visited static pages should respect static staletime: [#&#8203;70640](https://github.com/vercel/next.js/issues/70640) - codemod: improve dynamic api codemod cases: [#&#8203;70593](https://github.com/vercel/next.js/issues/70593) - feat(next/image): add `images.localPatterns` config: [#&#8203;70529](https://github.com/vercel/next.js/issues/70529) - Recommend `React.use()` to unwrap async APIs in the browser: [#&#8203;70677](https://github.com/vercel/next.js/issues/70677) - Change default SWR delta value to 1 year: [#&#8203;70674](https://github.com/vercel/next.js/issues/70674) - \[form] pages dir support: [#&#8203;68333](https://github.com/vercel/next.js/issues/68333) - chore(docs): refactor README.md: [#&#8203;70503](https://github.com/vercel/next.js/issues/70503) - Fix missing `await` of `params` when metadata is used: [#&#8203;70698](https://github.com/vercel/next.js/issues/70698) - condense warnings for direct access of dynamic APIs: [#&#8203;70682](https://github.com/vercel/next.js/issues/70682) - Allow silencing direct access of dynamic APIs to unblock internal sync: [#&#8203;70705](https://github.com/vercel/next.js/issues/70705) - Separate the rendering of viewport from metadata: [#&#8203;70685](https://github.com/vercel/next.js/issues/70685) - codemod: fix merging react imports logic: [#&#8203;70706](https://github.com/vercel/next.js/issues/70706) - Rename StaticGenerationStore to WorkStore: [#&#8203;70721](https://github.com/vercel/next.js/issues/70721) - fix: Do not omit alt on getImgProps return type, ImgProps: [#&#8203;70608](https://github.com/vercel/next.js/issues/70608) - fix(next/image): handle undefined `images.localPatterns` config in `images-manifest.json`: [#&#8203;70730](https://github.com/vercel/next.js/issues/70730) - Run unstable_cache inside a CacheStore context: [#&#8203;70740](https://github.com/vercel/next.js/issues/70740) - Expand PrerenderStore to include the legacy mode static generation too: [#&#8203;70741](https://github.com/vercel/next.js/issues/70741) - Reapply "Dedupe sync access warning on the Server by callsite" ([#&#8203;70672](https://github.com/vercel/next.js/issues/70672)): [#&#8203;70738](https://github.com/vercel/next.js/issues/70738) - Add RSC module ID mapping to the Client Manifest: [#&#8203;70524](https://github.com/vercel/next.js/issues/70524) - \[i18n] Routing fix: [#&#8203;70761](https://github.com/vercel/next.js/issues/70761) - fix broken lock mechanism: [#&#8203;70764](https://github.com/vercel/next.js/issues/70764) - client router cache should still be cleared if server action revalidates + redirects: [#&#8203;70715](https://github.com/vercel/next.js/issues/70715) - ensure handleUnlock is called even for non-cached responses: [#&#8203;70766](https://github.com/vercel/next.js/issues/70766) - \[dynamicIO] Error when dynamic behavior is outside of a Suspense boundary: [#&#8203;70734](https://github.com/vercel/next.js/issues/70734) - \[Turbopack] add new backend: [#&#8203;69667](https://github.com/vercel/next.js/issues/69667) - Fix client reference access causing metadata missing: [#&#8203;70732](https://github.com/vercel/next.js/issues/70732) - Move reactLoadableManifest/assetPrefix to workStore: [#&#8203;70768](https://github.com/vercel/next.js/issues/70768) - Unwrap `registerServerReference` function: [#&#8203;70563](https://github.com/vercel/next.js/issues/70563) - Error if reading Request Store inside Prerender: [#&#8203;70775](https://github.com/vercel/next.js/issues/70775) - codemod: handle the async api type: [#&#8203;70785](https://github.com/vercel/next.js/issues/70785) - Create spans for `createServerReference` and `registerServerReference`: [#&#8203;70564](https://github.com/vercel/next.js/issues/70564) - Do not invoke server actions twice when `dynamicIO` is enabled: [#&#8203;70784](https://github.com/vercel/next.js/issues/70784) - feat: decouple cookies and action state from redirect error: [#&#8203;70769](https://github.com/vercel/next.js/issues/70769) - refactor: added more strict app segment config validation: [#&#8203;70480](https://github.com/vercel/next.js/issues/70480) - Fix recently re-introduced unique "key" prop warnings: [#&#8203;70807](https://github.com/vercel/next.js/issues/70807) - Run Middleware within WorkStore: [#&#8203;70808](https://github.com/vercel/next.js/issues/70808) - ensure export workers that are killed bubble up to parent process: [#&#8203;70997](https://github.com/vercel/next.js/issues/70997) - next-upgrade: Ensure correct React and types version are resolved when upgrading to Next.js rc: [#&#8203;70981](https://github.com/vercel/next.js/issues/70981) - codemod: leave comment on spread props: [#&#8203;70979](https://github.com/vercel/next.js/issues/70979) - docs: add `app-dir-runtime-config-experimental-edge` codemod: [#&#8203;71008](https://github.com/vercel/next.js/issues/71008) - docs: add `next-dynamic-access-named-export` codemod: [#&#8203;71012](https://github.com/vercel/next.js/issues/71012) - chore(next-upgrade): use process exit instead of throwing: [#&#8203;71018](https://github.com/vercel/next.js/issues/71018) - chore(next-upgrade): improve revision usage messages: [#&#8203;71019](https://github.com/vercel/next.js/issues/71019) - Revert "chore(next-upgrade): use process exit instead of throwing ([#&#8203;7](https://github.com/vercel/next.js/issues/7)…: [#&#8203;71021](https://github.com/vercel/next.js/issues/71021) - Disable server action transform in pages router: [#&#8203;71028](https://github.com/vercel/next.js/issues/71028) - chore(next-codemod): view current Next.js version, skip if already on or higher: [#&#8203;71034](https://github.com/vercel/next.js/issues/71034) - codemod: comment on reexport: [#&#8203;71017](https://github.com/vercel/next.js/issues/71017) - move workUnitAsyncStorage back into "client/components": [#&#8203;71046](https://github.com/vercel/next.js/issues/71046) - codemod: type cast async api calls in non entry file exports: [#&#8203;71040](https://github.com/vercel/next.js/issues/71040) - codemod upgrade: show link of migration guide after upgrade: [#&#8203;71036](https://github.com/vercel/next.js/issues/71036) - Defensively install patches: [#&#8203;71043](https://github.com/vercel/next.js/issues/71043) - fix(next/turbopack): Always preserve import attributes with esm modules: [#&#8203;71051](https://github.com/vercel/next.js/issues/71051) - codemod: fix type only react import: [#&#8203;71053](https://github.com/vercel/next.js/issues/71053) - types-plugin: enahnce type checking on interface params: [#&#8203;71059](https://github.com/vercel/next.js/issues/71059) - Move WorkStore and ActionStore to /server/app-render: [#&#8203;70934](https://github.com/vercel/next.js/issues/70934) - \[Turbopack] Implement support for webpack’s `stats.json`: [#&#8203;70996](https://github.com/vercel/next.js/issues/70996) - chore(next-codemod): add verbose option to transform: [#&#8203;71079](https://github.com/vercel/next.js/issues/71079) - chore: polish warning for esmExternals: [#&#8203;71082](https://github.com/vercel/next.js/issues/71082) - go back to ignoring revalidates from render: [#&#8203;71088](https://github.com/vercel/next.js/issues/71088) - \[Turbopack] add support for collectibles to new backend: [#&#8203;70798](https://github.com/vercel/next.js/issues/70798) - codemod: do not await on invalid prop: [#&#8203;71089](https://github.com/vercel/next.js/issues/71089) - chore(next-codemod): move app-dir-runtime-config-experimental-edge to 13.1.2: [#&#8203;71081](https://github.com/vercel/next.js/issues/71081) - Add cacheLife() / cacheTag() APIs: [#&#8203;71064](https://github.com/vercel/next.js/issues/71064) - Eagerly Pass Implicit Tags: [#&#8203;71105](https://github.com/vercel/next.js/issues/71105) - chore(next-codemod): add prompts for (un)installing packages: [#&#8203;71038](https://github.com/vercel/next.js/issues/71038) - \[Turbopack] formatIssue is expensive, so avoid it if possible: [#&#8203;71117](https://github.com/vercel/next.js/issues/71117) - add phase tracking to workUnitStore: [#&#8203;71030](https://github.com/vercel/next.js/issues/71030) - \[Turbopack] add unstable prefix to persistent caching option and force to provide an expected level of stability: [#&#8203;71090](https://github.com/vercel/next.js/issues/71090) - codemod: make parser more comptible: [#&#8203;71122](https://github.com/vercel/next.js/issues/71122) - Don't warn on well-known properties in `searchParams`: [#&#8203;71142](https://github.com/vercel/next.js/issues/71142) - Add source map support for server components/actions in the browser: [#&#8203;71042](https://github.com/vercel/next.js/issues/71042) - show webpack/turbopack compilation duration for next build: [#&#8203;71146](https://github.com/vercel/next.js/issues/71146) - tweak static indicator style & behavior: [#&#8203;71128](https://github.com/vercel/next.js/issues/71128) - feat(next-upgrade): suggest React codemod: [#&#8203;71016](https://github.com/vercel/next.js/issues/71016) - prevent revalidateTag/Path during render: [#&#8203;71093](https://github.com/vercel/next.js/issues/71093) - fix(turbopack): Fix `NextEcmascriptClientReferenceTransition`: [#&#8203;70603](https://github.com/vercel/next.js/issues/70603) - turn withRequestStore into createRequestStore: [#&#8203;71107](https://github.com/vercel/next.js/issues/71107) - Initial implementation of per-segment prefetch request handling: [#&#8203;71113](https://github.com/vercel/next.js/issues/71113) - Upgrade React from `2d16326d-20240930` to `70fb1363-20241010`: [#&#8203;71118](https://github.com/vercel/next.js/issues/71118) - Revert "chore(next-codemod): move app-dir-runtime-config-experimental-edge to 13.1.2": [#&#8203;71157](https://github.com/vercel/next.js/issues/71157) - feat: block compilation on codemod comments and ask to remove: [#&#8203;71103](https://github.com/vercel/next.js/issues/71103) - Scope request store in render: [#&#8203;71109](https://github.com/vercel/next.js/issues/71109) - Reject hanging promises: [#&#8203;70994](https://github.com/vercel/next.js/issues/70994) - fix: allow custom app routes for metadata conventions: [#&#8203;71153](https://github.com/vercel/next.js/issues/71153) - chore(next-codemod): suggest pre-release codemods by their "stable" version: [#&#8203;71158](https://github.com/vercel/next.js/issues/71158) - misc(next-codemod): inform user whether current version is higher or on target version: [#&#8203;71160](https://github.com/vercel/next.js/issues/71160) - Update loading cache handler: [#&#8203;71121](https://github.com/vercel/next.js/issues/71121) - prevent cookies from being set in the wrong phase: [#&#8203;71094](https://github.com/vercel/next.js/issues/71094) - avoid accessing performance APIs if fetch is untracked: [#&#8203;71164](https://github.com/vercel/next.js/issues/71164) - Handle source map requests for Turbopack client chunks: [#&#8203;71168](https://github.com/vercel/next.js/issues/71168) - fix: `getStaticProps` appears instead of `generateStaticParams` during app router build: [#&#8203;71033](https://github.com/vercel/next.js/issues/71033) - Rename swrDelta config to expireTime: [#&#8203;71159](https://github.com/vercel/next.js/issues/71159) - tweak shadow on static indicator & update docs copy: [#&#8203;71171](https://github.com/vercel/next.js/issues/71171) - \[dynamicIO] track Prerender environment name during dev: [#&#8203;71165](https://github.com/vercel/next.js/issues/71165) - chore: update migration comments: [#&#8203;71169](https://github.com/vercel/next.js/issues/71169) - Add support for `"use cache"` in route handlers: [#&#8203;70897](https://github.com/vercel/next.js/issues/70897) - For route handlers, call `loadComponents` also during `next build`: [#&#8203;71202](https://github.com/vercel/next.js/issues/71202) - Handle thrown values that aren't `Error` instances in App router: [#&#8203;71210](https://github.com/vercel/next.js/issues/71210) - fix: add newrelic to server-external-packages.json: [#&#8203;71066](https://github.com/vercel/next.js/issues/71066) - chore: delete redundant blank spaces in `packages` directory: [#&#8203;71189](https://github.com/vercel/next.js/issues/71189) - Do not create client reference manifest for metadata route handlers: [#&#8203;71225](https://github.com/vercel/next.js/issues/71225) - Upgrade React from `70fb1363-20241010` to `cd22717c-20241013`: [#&#8203;71223](https://github.com/vercel/next.js/issues/71223) - Cache in CacheScopeStore in use cache: [#&#8203;71221](https://github.com/vercel/next.js/issues/71221) - Encode binary cache keys as ucs-2 strings: [#&#8203;71224](https://github.com/vercel/next.js/issues/71224) - Hide stack for bad input by default: [#&#8203;71253](https://github.com/vercel/next.js/issues/71253) - \[after] after is not dynamic anymore: [#&#8203;71231](https://github.com/vercel/next.js/issues/71231) - codemod: ensure install commands run in terminal: [#&#8203;71255](https://github.com/vercel/next.js/issues/71255) - codemod: install types into dev dependencies: [#&#8203;71257](https://github.com/vercel/next.js/issues/71257) - codemod: polish end message: [#&#8203;71259](https://github.com/vercel/next.js/issues/71259) - chore: Ensure Next.js is built with a specified version of TypeScript: [#&#8203;71256](https://github.com/vercel/next.js/issues/71256) - more detailed time display: [#&#8203;71248](https://github.com/vercel/next.js/issues/71248) - Propagate expire/stale times the same way we do with revalidate: [#&#8203;71228](https://github.com/vercel/next.js/issues/71228) - Update global cache handler ref: [#&#8203;71263](https://github.com/vercel/next.js/issues/71263) - Handle URL-encoded Turbopack client chunks when resolving source maps: [#&#8203;71274](https://github.com/vercel/next.js/issues/71274) - \[BREAKING] Support ESLint v9 in plugin, config and `next lint`: [#&#8203;71218](https://github.com/vercel/next.js/issues/71218) - Make cacheLife profiles configurable: [#&#8203;71232](https://github.com/vercel/next.js/issues/71232) - \[dynamicIO] warn in debug mode when prospective renders error: [#&#8203;71266](https://github.com/vercel/next.js/issues/71266) - codemod: prettier the version logging at the beginning: [#&#8203;71264](https://github.com/vercel/next.js/issues/71264) - Fix missing key in `LoadingBoundary`: [#&#8203;71222](https://github.com/vercel/next.js/issues/71222) - codemod: install core deps based on package.json group: [#&#8203;71265](https://github.com/vercel/next.js/issues/71265) - Set Next-Router-Stale-Time header from collected stale times: [#&#8203;71279](https://github.com/vercel/next.js/issues/71279) - Respect stale time header in client prefetch cache: [#&#8203;71280](https://github.com/vercel/next.js/issues/71280) - Mark revalidate: 0 on fetch or use cache as never resolving promise in Dynamic I/O: [#&#8203;71285](https://github.com/vercel/next.js/issues/71285) - static indicator shouldn't show for force-dynamic: [#&#8203;71284](https://github.com/vercel/next.js/issues/71284) - Implement cacheScope by caching a Promise<CacheEntry>: [#&#8203;71286](https://github.com/vercel/next.js/issues/71286) - codemod: update react-is if needed: [#&#8203;71276](https://github.com/vercel/next.js/issues/71276) - chore: remove experimental warning for next-config-ts: [#&#8203;71297](https://github.com/vercel/next.js/issues/71297) - fix(next): eslint v9 not picking up config: [#&#8203;71298](https://github.com/vercel/next.js/issues/71298) - Add support for `'use cache'` in route handlers using the Edge runtime: [#&#8203;71258](https://github.com/vercel/next.js/issues/71258) - Re-add canary gates for certain experimental features: [#&#8203;71307](https://github.com/vercel/next.js/issues/71307) - Fix symbol for cache: [#&#8203;71270](https://github.com/vercel/next.js/issues/71270) ##### Documentation Changes - Add WorkOS to list of auth solutions: [#&#8203;64395](https://github.com/vercel/next.js/issues/64395) - docs (mdx): update tree to include mdx-components.tsx file: [#&#8203;64376](https://github.com/vercel/next.js/issues/64376) - Update 02-server-actions-and-mutations.mdx: [#&#8203;64248](https://github.com/vercel/next.js/issues/64248) - Update 04-cypress.mdx: [#&#8203;64375](https://github.com/vercel/next.js/issues/64375) - Update 13-debugging.mdx: [#&#8203;64344](https://github.com/vercel/next.js/issues/64344) - docs: clarify `Internationalization (i18n) Routing`: [#&#8203;63853](https://github.com/vercel/next.js/issues/63853) - docs(pages): update slug value for optional catch all routes: [#&#8203;64381](https://github.com/vercel/next.js/issues/64381) - Fix optimizePackageImports docs for Pages Router: [#&#8203;64439](https://github.com/vercel/next.js/issues/64439) - Adds MDX Components file convention page and updates MDX page: [#&#8203;63568](https://github.com/vercel/next.js/issues/63568) - docs: fix config variable usage in memory docs: [#&#8203;64469](https://github.com/vercel/next.js/issues/64469) - Fix missing PagesOnly in 05-mdx: [#&#8203;64505](https://github.com/vercel/next.js/issues/64505) - chore(docs): Add example usage of PixelBin custom image loader: [#&#8203;64074](https://github.com/vercel/next.js/issues/64074) - docs(09-authentication): fixes link to NextAuth.js: [#&#8203;64457](https://github.com/vercel/next.js/issues/64457) - Improve auth docs : [#&#8203;63140](https://github.com/vercel/next.js/issues/63140) - Docs: Fix broken link: [#&#8203;64581](https://github.com/vercel/next.js/issues/64581) - docs: clarify runtime: [#&#8203;64593](https://github.com/vercel/next.js/issues/64593) ##### Example Changes - Add TypeGen to Sanity example: [#&#8203;64198](https://github.com/vercel/next.js/issues/64198) - Update Sanity example deps and tsconfig: [#&#8203;64570](https://github.com/vercel/next.js/issues/64570) - chore: fix a wrong link for with-service-worker example: [#&#8203;64666](https://github.com/vercel/next.js/issues/64666) - Update Nav.tsx: [#&#8203;64818](https://github.com/vercel/next.js/issues/64818) - Update with-storybook example: [#&#8203;64911](https://github.com/vercel/next.js/issues/64911) - bug fix on a pull request [#&#8203;64911](https://github.com/vercel/next.js/issues/64911): [#&#8203;64925](https://github.com/vercel/next.js/issues/64925) - Update Sanity example deps: [#&#8203;64939](https://github.com/vercel/next.js/issues/64939) - deps updated for with-mongodb-mongoose example: [#&#8203;64928](https://github.com/vercel/next.js/issues/64928) - Docs: Explain why Layouts (RSCs) can't access `pathname`: [#&#8203;64785](https://github.com/vercel/next.js/issues/64785) - fix(examples): blog-starter <Link> href, remove redundant public folder: [#&#8203;65025](https://github.com/vercel/next.js/issues/65025) - Ensure latest canary of Next.js is installed in repros: [#&#8203;64967](https://github.com/vercel/next.js/issues/64967) - Ensure latest canary of Next.js is installed in repros: [#&#8203;65197](https://github.com/vercel/next.js/issues/65197) - feat(examples): add with-turso: [#&#8203;61291](https://github.com/vercel/next.js/issues/61291) - Fix export function name on docs/routing/layouts-and-templates: [#&#8203;65240](https://github.com/vercel/next.js/issues/65240) - Fixes with-supertokens example: [#&#8203;65267](https://github.com/vercel/next.js/issues/65267) - [@&#8203;emotion/cache](https://github.com/emotion/cache) version fix: [#&#8203;65422](https://github.com/vercel/next.js/issues/65422) - update reproduction templates to use correct React: [#&#8203;65624](https://github.com/vercel/next.js/issues/65624) - Resolve grammatical errors in examples: [#&#8203;65644](https://github.com/vercel/next.js/issues/65644) - Update `middleware` example to App Router: [#&#8203;65618](https://github.com/vercel/next.js/issues/65618) - update cache handler version and added better logic for opting out of…: [#&#8203;65330](https://github.com/vercel/next.js/issues/65330) - Update Sanity example deps and implementation: [#&#8203;65744](https://github.com/vercel/next.js/issues/65744) - update convex README.md: [#&#8203;65765](https://github.com/vercel/next.js/issues/65765) - chore: Bump react-modal to 3.16.2 in with-router-as-modal example: [#&#8203;65841](https://github.com/vercel/next.js/issues/65841) - Update Google Analytics example for App Router: [#&#8203;66021](https://github.com/vercel/next.js/issues/66021) - fix(examples): blog-starter <Link> href, remove redundant public folder: [#&#8203;65025](https://github.com/vercel/next.js/issues/65025) - Ensure latest canary of Next.js is installed in repros: [#&#8203;64967](https://github.com/vercel/next.js/issues/64967) - Ensure latest canary of Next.js is installed in repros: [#&#8203;65197](https://github.com/vercel/next.js/issues/65197) - feat(examples): add with-turso: [#&#8203;61291](https://github.com/vercel/next.js/issues/61291) - Fix export function name on docs/routing/layouts-and-templates: [#&#8203;65240](https://github.com/vercel/next.js/issues/65240) - Fixes with-supertokens example: [#&#8203;65267](https://github.com/vercel/next.js/issues/65267) - [@&#8203;emotion/cache](https://github.com/emotion/cache) version fix: [#&#8203;65422](https://github.com/vercel/next.js/issues/65422) - update reproduction templates to use correct React: [#&#8203;65624](https://github.com/vercel/next.js/issues/65624) - Resolve grammatical errors in examples: [#&#8203;65644](https://github.com/vercel/next.js/issues/65644) - Update `middleware` example to App Router: [#&#8203;65618](https://github.com/vercel/next.js/issues/65618) - update cache handler version and added better logic for opting out of…: [#&#8203;65330](https://github.com/vercel/next.js/issues/65330) - Update Sanity example deps and implementation: [#&#8203;65744](https://github.com/vercel/next.js/issues/65744) - update convex README.md: [#&#8203;65765](https://github.com/vercel/next.js/issues/65765) - chore: Bump react-modal to 3.16.2 in with-router-as-modal example: [#&#8203;65841](https://github.com/vercel/next.js/issues/65841) - Update Google Analytics example for App Router: [#&#8203;66021](https://github.com/vercel/next.js/issues/66021) - adopt modern & supported Apollo Client patterns in the with-apollo example: [#&#8203;65316](https://github.com/vercel/next.js/issues/65316) - Update with-react-hook-form example: [#&#8203;66253](https://github.com/vercel/next.js/issues/66253) - chore(examples): update reproduction template: [#&#8203;66301](https://github.com/vercel/next.js/issues/66301) - Update to with-supertokens example: [#&#8203;66320](https://github.com/vercel/next.js/issues/66320) - refactor: rename API endpoint to '/api/protected-api' for comment: [#&#8203;66456](https://github.com/vercel/next.js/issues/66456) - Update Sanity example deps and prepare for next v15: [#&#8203;66158](https://github.com/vercel/next.js/issues/66158) - Update with-supertokens example: [#&#8203;66827](https://github.com/vercel/next.js/issues/66827) - fix: Prevent MongoDB client promise being cached: [#&#8203;66977](https://github.com/vercel/next.js/issues/66977) - Prepare for easier shadcn ui install: [#&#8203;66469](https://github.com/vercel/next.js/issues/66469) - Updated with-sitemap example for App Router: [#&#8203;66995](https://github.com/vercel/next.js/issues/66995) - Example/update blog starter: [#&#8203;66926](https://github.com/vercel/next.js/issues/66926) - fix: fix entry point for storybook, add storybook static ouput to gitignore: [#&#8203;67207](https://github.com/vercel/next.js/issues/67207) - examples(with-mdx): update to MDX 3: [#&#8203;62503](https://github.com/vercel/next.js/issues/62503) - Revert "examples(with-mdx): update to MDX 3": [#&#8203;67249](https://github.com/vercel/next.js/issues/67249) - add more examples to run-for-change script: [#&#8203;67250](https://github.com/vercel/next.js/issues/67250) - Fix Dead Links in [@&#8203;neshca/cache-handler-redis](https://github.com/neshca/cache-handler-redis) example README.md: [#&#8203;67415](https://github.com/vercel/next.js/issues/67415) - Update redirects example for App router: [#&#8203;67065](https://github.com/vercel/next.js/issues/67065) - Updated layout-component with new feature layout.js: [#&#8203;67447](https://github.com/vercel/next.js/issues/67447) - \[Multi Zones] Update the with-zones example to use App Router: [#&#8203;67636](https://github.com/vercel/next.js/issues/67636) - fix: missing file when build docker: [#&#8203;67718](https://github.com/vercel/next.js/issues/67718) - Examples: updated the example of dynamic-routing to utilize the App Router: [#&#8203;67684](https://github.com/vercel/next.js/issues/67684) - Updated basic-export example with app router: [#&#8203;67760](https://github.com/vercel/next.js/issues/67760) - Migrated the active-class-name Example to App router: [#&#8203;67622](https://github.com/vercel/next.js/issues/67622) - Downgrade react and react-dom to 19.0.0-rc.0: [#&#8203;67788](https://github.com/vercel/next.js/issues/67788) - Examples: updated the example of head-elements to utilize the App Router: [#&#8203;67829](https://github.com/vercel/next.js/issues/67829) - Examples: updated the example of analyze-bundles to utilize the App Router: [#&#8203;67843](https://github.com/vercel/next.js/issues/67843) - fix\[examples]: update example cache-handler-redis: [#&#8203;67350](https://github.com/vercel/next.js/issues/67350) - Examples: Updated the example of headers to utilize the App Router: [#&#8203;67920](https://github.com/vercel/next.js/issues/67920) - Updated/Migrated next-css example to the App Router: [#&#8203;67942](https://github.com/vercel/next.js/issues/67942) - \[examples] fix: ant-design unstyled hydration issue: [#&#8203;68000](https://github.com/vercel/next.js/issues/68000) - Update cookie handling for Supabase SSR package: [#&#8203;67413](https://github.com/vercel/next.js/issues/67413) - Examples:Updated with-slate example to App Router: [#&#8203;68060](https://github.com/vercel/next.js/issues/68060) - Updated nested-components example to use App Router: [#&#8203;68065](https://github.com/vercel/next.js/issues/68065) - Examples: Updated the example of catch all routes to utilize the App Router: [#&#8203;68270](https://github.com/vercel/next.js/issues/68270) - docs: Custom Server for App Router: [#&#8203;68167](https://github.com/vercel/next.js/issues/68167) - update react remove properties to support app route: [#&#8203;68324](https://github.com/vercel/next.js/issues/68324) - Update Sanity example deps and fix readme typo: [#&#8203;68359](https://github.com/vercel/next.js/issues/68359) - Migrated svg-components to App-router: [#&#8203;68394](https://github.com/vercel/next.js/issues/68394) - with-mongodb update to add both App and Pages Router examples: [#&#8203;68461](https://github.com/vercel/next.js/issues/68461) - fix: ENV warn info: [#&#8203;68486](https://github.com/vercel/next.js/issues/68486) - Migrated 'with-absolute-imports' to App-router Convention: [#&#8203;68666](https://github.com/vercel/next.js/issues/68666) - Updated radix-ui example to use App Router: [#&#8203;68711](https://github.com/vercel/next.js/issues/68711) - updated the example of api-routes to utilize the App Router: [#&#8203;68771](https://github.com/vercel/next.js/issues/68771) - fix: inngest example for latest version: [#&#8203;68600](https://github.com/vercel/next.js/issues/68600) - Compose refactor: [#&#8203;68503](https://github.com/vercel/next.js/issues/68503) - Improve TypeGen in Sanity Example: [#&#8203;68580](https://github.com/vercel/next.js/issues/68580) - Update page.tsx - Fixing hydration error: [#&#8203;66868](https://github.com/vercel/next.js/issues/66868) - fix: cache-handler example should reconnect to redis after errors: [#&#8203;68221](https://github.com/vercel/next.js/issues/68221) - (Examples) Adds `with-google-tag-manager` example that uses `@next/third-parties`: [#&#8203;57364](https://github.com/vercel/next.js/issues/57364) - Fix linting from [#&#8203;57364](https://github.com/vercel/next.js/issues/57364): [#&#8203;68951](https://github.com/vercel/next.js/issues/68951) - examples: avoid duplicate css insert for ant design: [#&#8203;57947](https://github.com/vercel/next.js/issues/57947) - docs(examples): fix next-translate prod hydration error in layout: [#&#8203;52653](https://github.com/vercel/next.js/issues/52653) - (Example) Remove redirects plugin from Sitecore XM Cloud example: [#&#8203;69094](https://github.com/vercel/next.js/issues/69094) - Supabase: improve sign in and sign up, add reset password: [#&#8203;69066](https://github.com/vercel/next.js/issues/69066) - Add Meilisearch example: [#&#8203;53251](https://github.com/vercel/next.js/issues/53251) - updated the example of custom-routes-proxying to utilize the App Router: [#&#8203;68941](https://github.com/vercel/next.js/issues/68941) - examples: update "ENV key value" format format to "ENV key=value": [#&#8203;69053](https://github.com/vercel/next.js/issues/69053) - fix: ENV warning: [#&#8203;69091](https://github.com/vercel/next.js/issues/69091) - Reduce TypeGen boilerplate in Sanity Example: [#&#8203;69134](https://github.com/vercel/next.js/issues/69134) - Examples - Updated with-windcss example for App Router: [#&#8203;69365](https://github.com/vercel/next.js/issues/69365) - examples: Supabase | ui.shadcn, App Router Layouts: [#&#8203;69308](https://github.com/vercel/next.js/issues/69308) - Fix: Example Template | with-supabase - wrong file name breaking build: [#&#8203;69394](https://github.com/vercel/next.js/issues/69394) - Fix/ Examples `use-supabase` | Multiple improvements : [#&#8203;69407](https://github.com/vercel/next.js/issues/69407) - examples: Updating WordPress example to Next 14: [#&#8203;62447](https://github.com/vercel/next.js/issues/62447) - Add `cms-umbraco` example: [#&#8203;52777](https://github.com/vercel/next.js/issues/52777) - Example: Updated the example of rewrites to utilize the App Router: [#&#8203;69495](https://github.com/vercel/next.js/issues/69495) - docs: Use `useFormState` over `useActionState`: [#&#8203;69547](https://github.com/vercel/next.js/issues/69547) - updated the example of modularize-imports to utilize the App Router: [#&#8203;69771](https://github.com/vercel/next.js/issues/69771) - updated the example of with-xstate to utilize the App Router: [#&#8203;69960](https://github.com/vercel/next.js/issues/69960) - Updated the example of with-eslint to utilize the App Router.: [#&#8203;70018](https://github.com/vercel/next.js/issues/70018) - Remove stores params: [#&#8203;69796](https://github.com/vercel/next.js/issues/69796) - Fix example URL for api-routes -> route-handlers: [#&#8203;69642](https://github.com/vercel/next.js/issues/69642) - Update with web worker example to utilize the App Router: [#&#8203;70058](https://github.com/vercel/next.js/issues/70058) - fix(examples): typo command name: [#&#8203;70094](https://github.com/vercel/next.js/issues/70094) - fix: button className in with_supabase example: [#&#8203;70121](https://github.com/vercel/next.js/issues/70121) - fix(examples): remove `version` attribute post deprecation: [#&#8203;70108](https://github.com/vercel/next.js/issues/70108) - Update examples/github-pages/README.md: [#&#8203;70057](https://github.com/vercel/next.js/issues/70057) - remove unsafe-inline from with-strict-csp: [#&#8203;69497](https://github.com/vercel/next.js/issues/69497) - chore/ examples use-supabase | update rate limit note: [#&#8203;69423](https://github.com/vercel/next.js/issues/69423) - examples(with-supabase): typo on env file name: [#&#8203;69291](https://github.com/vercel/next.js/issues/69291) - fix(examples/with-docker): remove not needed files from docker context: [#&#8203;68668](https://github.com/vercel/next.js/issues/68668) - updated the example of with-videojs to utilize the App Router: [#&#8203;70226](https://github.com/vercel/next.js/issues/70226) - updated the example of with-three-js to utilize the App Router: [#&#8203;70287](https://github.com/vercel/next.js/issues/70287) - Updated the example of with-vercel-fetch to utilize the App Router.: [#&#8203;70069](https://github.com/vercel/next.js/issues/70069) - Updated the example of ssr-caching to utilize the App Router.: [#&#8203;69560](https://github.com/vercel/next.js/issues/69560) - Updated the example of ssr-caching to utilize the App Router.: [#&#8203;69560](https://github.com/vercel/next.js/issues/69560) - fix(example): Change hostname in docker multiple env examples: [#&#8203;70105](https://github.com/vercel/next.js/issues/70105) - Updated the example of with-draft-js to utilize the App Router.: [#&#8203;70045](https://github.com/vercel/next.js/issues/70045) - Fix Stackblitz preview link on with-opentelemetry example: [#&#8203;70543](https://github.com/vercel/next.js/issues/70543) - \[Multi-Zones] Update example and documentation with most recent practices for Multi-Zones: [#&#8203;70565](https://github.com/vercel/next.js/issues/70565) - updated the environment variables examples to utilize the App router: [#&#8203;70392](https://github.com/vercel/next.js/issues/70392) - chore(examples): updated the example of with-styled-components: [#&#8203;70796](https://github.com/vercel/next.js/issues/70796) - chore(examples):updated the example of with-stitches to utlize the App router: [#&#8203;71007](https://github.com/vercel/next.js/issues/71007) - docs(typo): fix typo in `cms-sanity` example `README.md`: [#&#8203;71211](https://github.com/vercel/next.js/issues/71211) ##### Credits Huge thanks to [@&#8203;huozhi](https://github.com/huozhi), [@&#8203;shuding](https://github.com/shuding), [@&#8203;wyattjoh](https://github.com/wyattjoh), [@&#8203;PaulAsjes](https://github.com/PaulAsjes), [@&#8203;mcnaveen](https://github.com/mcnaveen), [@&#8203;timneutkens](https://github.com/timneutkens), [@&#8203;stipsan](https://github.com/stipsan), [@&#8203;aktoriukas](https://github.com/aktoriukas), [@&#8203;sirTangale](https://github.com/sirTangale), [@&#8203;greatvivek11](https://github.com/greatvivek11), [@&#8203;sokra](https://github.com/sokra), [@&#8203;anatoliik-lyft](https://github.com/anatoliik-lyft), [@&#8203;wbinnssmith](https://github.com/wbinnssmith), [@&#8203;coltonehrman](https://github.com/coltonehrman), [@&#8203;hungdoansy](https://github.com/hungdoansy), [@&#8203;kxlow](https://github.com/kxlow), [@&#8203;ztanner](https://github.com/ztanner), [@&#8203;manovotny](https://github.com/manovotny), [@&#8203;leerob](https://github.com/leerob), [@&#8203;ryota-murakami](https://github.com/ryota-murakami), [@&#8203;ijjk](https://github.com/ijjk), [@&#8203;pnutmath](https://github.com/pnutmath), [@&#8203;feugy](https://github.com/feugy), [@&#8203;Jeffrey-Zutt](https://github.com/Jeffrey-Zutt), [@&#8203;wiesson](https://github.com/wiesson), [@&#8203;eps1lon](https://github.com/eps1lon), [@&#8203;devjiwonchoi](https://github.com/devjiwonchoi), [@&#8203;Ethan-Arrowood](https://github.com/Ethan-Arrowood), [@&#8203;kenji-webdev](https://github.com/kenji-webdev), [@&#8203;domdomegg](https://github.com/domdomegg), [@&#8203;samcx](https://github.com/samcx), [@&#8203;Jaaneek](https://github.com/Jaaneek), [@&#8203;evanwinter](https://github.com/evanwinter), [@&#8203;kdy1](https://github.com/kdy1), [@&#8203;balazsorban44](https://github.com/balazsorban44), [@&#8203;feedthejim](https://github.com/feedthejim), [@&#8203;ForsakenHarmony](https://github.com/ForsakenHarmony), [@&#8203;kwonoj](https://github.com/kwonoj), [@&#8203;delbaoliveira](https://github.com/delbaoliveira), [@&#8203;xiaohanyu](https://github.com/xiaohanyu), [@&#8203;dvoytenko](https://github.com/dvoytenko), [@&#8203;bobaaaaa](https://github.com/bobaaaaa), [@&#8203;bgw](https://github.com/bgw), [@&#8203;gaspar09](https://github.com/gaspar09), [@&#8203;souporserious](https://github.com/souporserious), [@&#8203;unflxw](https://github.com/unflxw), [@&#8203;kiner-tang](https://github.com/kiner-tang), [@&#8203;Ehren12](https://github.com/Ehren12), [@&#8203;EffectDoplera](https://github.com/EffectDoplera), [@&#8203;IAmKushagraSharma](https://github.com/IAmKushagraSharma), [@&#8203;Auxdible](https://github.com/Auxdible), [@&#8203;sean-rallycry](https://github.com/sean-rallycry), [@&#8203;jeanmax1me](https://github.com/jeanmax1me), [@&#8203;unstubbable](https://github.com/unstubbable), [@&#8203;NilsJacobsen](https://github.com/NilsJacobsen), [@&#8203;adiguno](https://github.com/adiguno), [@&#8203;ryan-nauman](https://github.com/ryan-nauman), [@&#8203;zsh77](https://github.com/zsh77), [@&#8203;KagamiChan](https://github.com/KagamiChan), [@&#8203;steveluscher](https://github.com/steveluscher), [@&#8203;MehfoozurRehman](https://github.com/MehfoozurRehman), [@&#8203;vkryachko](https://github.com/vkryachko), [@&#8203;chentsulin](https://github.com/chentsulin), [@&#8203;samijaber](https://github.com/samijaber), [@&#8203;begalinsaf](https://github.com/begalinsaf), [@&#8203;FluxCapacitor2](https://github.com/FluxCapacitor2), [@&#8203;lukahartwig](https://github.com/lukahartwig), [@&#8203;brianshano](https://github.com/brianshano), [@&#8203;pavelglac](https://github.com/pavelglac), [@&#8203;styfle](https://github.com/styfle), [@&#8203;symant233](https://github.com/symant233), [@&#8203;HristovCodes](https://github.com/HristovCodes), [@&#8203;karlhorky](https://github.com/karlhorky), [@&#8203;jonluca](https://github.com/jonluca), [@&#8203;jonathan-ingram](https://github.com/jonathan-ingram), [@&#8203;mknichel](https://github.com/mknichel), [@&#8203;sopranopillow](https://github.com/sopranopillow), [@&#8203;Gomah](https://github.com/Gomah), [@&#8203;imddc](https://github.com/imddc), [@&#8203;notrab](https://github.com/notrab), [@&#8203;gabrielrolfsen](https://github.com/gabrielrolfsen), [@&#8203;remorses](https://github.com/remorses), [@&#8203;AbhiShake1](https://github.com/AbhiShake1), [@&#8203;agadzik](https://github.com/agadzik), [@&#8203;rishabhpoddar](https://github.com/rishabhpoddar), [@&#8203;rezamauliadi](https://github.com/rezamauliadi), [@&#8203;IncognitoTGT](https://github.com/IncognitoTGT), [@&#8203;webtinax](https://github.com/webtinax), [@&#8203;BunsDev](https://github.com/BunsDev), [@&#8203;nisabmohd](https://github.com/nisabmohd), [@&#8203;z0n](https://github.com/z0n), [@&#8203;bennettdams](https://github.com/bennettdams), [@&#8203;joeshub](https://github.com/joeshub), [@&#8203;n1ckoates](https://github.com/n1ckoates), [@&#8203;srkirkland](https://github.com/srkirkland), [@&#8203;RiskyMH](https://github.com/RiskyMH), [@&#8203;coopbri](https://github.com/coopbri), [@&#8203;okoyecharles](https://github.com/okoyecharles), [@&#8203;diogocapela](https://github.com/diogocapela), [@&#8203;dnhn](https://github.com/dnhn), [@&#8203;typeofweb](https://github.com/typeofweb), [@&#8203;davidsa03](https://github.com/davidsa03), [@&#8203;imranolas](https://github.com/imranolas), [@&#8203;lubieowoce](https://github.com/lubieowoce), [@&#8203;maxhaomh](https://github.com/maxhaomh), [@&#8203;mirasayon](https://github.com/mirasayon), [@&#8203;blvdmitry](https://github.com/blvdmitry), [@&#8203;hwangstar156](https://github.com/hwangstar156), [@&#8203;lforst](https://github.com/lforst), [@&#8203;emmerich](https://github.com/emmerich), [@&#8203;christian-bromann](https://github.com/christian-bromann), [@&#8203;Lsnsh](https://github.com/Lsnsh), [@&#8203;datner](https://github.com/datner), [@&#8203;hiro0218](https://github.com/hiro0218), [@&#8203;flybayer](https://github.com/flybayer), [@&#8203;ianmacartney](https://github.com/ianmacartney), [@&#8203;ypessoa](https://github.com/ypessoa), [@&#8203;ryohidaka](https://github.com/ryohidaka), [@&#8203;icyJoseph](https://github.com/icyJoseph), [@&#8203;Arinji2](https://github.com/Arinji2), [@&#8203;lovell](https://github.com/lovell), [@&#8203;nsams](https://github.com/nsams), [@&#8203;Nayeem-XTREME](https://github.com/Nayeem-XTREME), [@&#8203;JamBalaya56562](https://github.com/JamBalaya56562), [@&#8203;Arindam200](https://github.com/Arindam200), [@&#8203;gaojude](https://github.com/gaojude), [@&#8203;qqww08](https://github.com/qqww08), [@&#8203;todor0v](https://github.com/todor0v), [@&#8203;tokkiyaa](https://github.com/tokkiyaa), [@&#8203;arlyon](https://github.com/arlyon), [@&#8203;lorensr](https://github.com/lorensr), [@&#8203;Juneezee](https://github.com/Juneezee), [@&#8203;Sayakie](https://github.com/Sayakie), [@&#8203;IGassmann](https://github.com/IGassmann), [@&#8203;bosconian-dynamics](https://github.com/bosconian-dynamics), [@&#8203;phryneas](https://github.com/phryneas), [@&#8203;akazwz](https://github.com/akazwz), [@&#8203;atik-persei](https://github.com/atik-persei), [@&#8203;shubh73](https://github.com/shubh73), [@&#8203;alpedia0](https://github.com/alpedia0), [@&#8203;chogyejin](https://github.com/chogyejin), [@&#8203;notomo](https://github.com/notomo), [@&#8203;ArnoldVanN](https://github.com/ArnoldVanN), [@&#8203;dhruv-kaushik](https://github.com/dhruv-kaushik), [@&#8203;kevva](https://github.com/kevva), [@&#8203;Kahitar](https://github.com/Kahitar), [@&#8203;anay-208](https://github.com/anay-208), [@&#8203;boris-szl](https://github.com/boris-szl), [@&#8203;devnyxie](https://github.com/devnyxie), [@&#8203;LorisSigrist](https://github.com/LorisSigrist), [@&#8203;M-YasirGhaffar](https://github.com/M-YasirGhaffar), [@&#8203;Lada496](https://github.com/Lada496), [@&#8203;kippmr](https://github.com/kippmr), [@&#8203;torresgol10](https://github.com/torresgol10), [@&#8203;pkiv](https://github.com/pkiv), [@&#8203;Netail](https://github.com/Netail), [@&#8203;jontewks](https://github.com/jontewks), [@&#8203;ArnaudFavier](https://github.com/ArnaudFavier), [@&#8203;chrisjstott](https://github.com/chrisjstott), [@&#8203;mratlamwala](https://github.com/mratlamwala), [@&#8203;mayank1513](https://github.com/mayank1513), [@&#8203;karlkeefer](https://github.com/karlkeefer), [@&#8203;kshehadeh](https://github.com/kshehadeh), [@&#8203;Marukome0743](https://github.com/Marukome0743), [@&#8203;a89529294](https://github.com/a89529294), [@&#8203;anku255](https://github.com/anku255), [@&#8203;KeisukeNagakawa](https://github.com/KeisukeNagakawa), [@&#8203;andrii-bodnar](https://github.com/andrii-bodnar), [@&#8203;aldosch](https://github.com/aldosch), [@&#8203;versecafe](https://github.com/versecafe), [@&#8203;steadily-worked](https://github.com/steadily-worked), [@&#8203;cfrank](https://github.com/cfrank), [@&#8203;QiuranHu](https://github.com/QiuranHu), [@&#8203;farsabbutt](https://github.com/farsabbutt), [@&#8203;joostmeijles](https://github.com/joostmeijles), [@&#8203;saltcod](https://github.com/saltcod), [@&#8203;archanaagivale30](https://github.com/archanaagivale30), [@&#8203;crutchcorn](https://github.com/crutchcorn), [@&#8203;crebelskydico](https://github.com/crebelskydico), [@&#8203;Maaz-Ahmed007](https://github.com/Maaz-Ahmed007), [@&#8203;jophy-ye](https://github.com/jophy-ye), [@&#8203;remcohaszing](https://github.com/remcohaszing), [@&#8203;JoshuaKGoldberg](https://github.com/JoshuaKGoldberg), [@&#8203;creativoma](https://github.com/creativoma), [@&#8203;GyoHeon](https://github.com/GyoHeon), [@&#8203;SukkaW](https://github.com/SukkaW), [@&#8203;MaxLeiter](https://github.com/MaxLeiter), [@&#8203;neila-a](https://github.com/neila-a), [@&#8203;stylessh](https://github.com/stylessh), [@&#8203;Teddir](https://github.com/Teddir), [@&#8203;ManuLpz4](https://github.com/ManuLpz4), [@&#8203;Julian-Louis](https://github.com/Julian-Louis), [@&#8203;syi0808](https://github.com/syi0808), [@&#8203;mert-duzgun](https://github.com/mert-duzgun), [@&#8203;amannn](https://github.com/amannn), [@&#8203;MonstraG](https://github.com/MonstraG), [@&#8203;hamirmahal](https://github.com/hamirmahal), [@&#8203;tariknh](https://github.com/tariknh), [@&#8203;Kikobeats](https://github.com/Kikobeats), [@&#8203;LichuAcu](https://github.com/LichuAcu), [@&#8203;Kuboczoch](https://github.com/Kuboczoch), [@&#8203;himself65](https://github.com/himself65), [@&#8203;Sam-Phillemon9493](https://github.com/Sam-Phillemon9493), [@&#8203;Shruthireddy04](https://github.com/Shruthireddy04), [@&#8203;Hemanshu-Upadhyay](https://github.com/Hemanshu-Upadhyay), [@&#8203;timfuhrmann](https://github.com/timfuhrmann), [@&#8203;controversial](https://github.com/controversial), [@&#8203;pathliving](https://github.com/pathliving), [@&#8203;mischnic](https://github.com/mischnic), [@&#8203;mauroaccornero](https://github.com/mauroaccornero), [@&#8203;NavidNourani](https://github.com/NavidNourani), [@&#8203;allanchau](https://github.com/allanchau), [@&#8203;ekremkenter](https://github.com/ekremkenter), [@&#8203;yurivangeffen](https://github.com/yurivangeffen), [@&#8203;gnoff](https://github.com/gnoff), [@&#8203;darthmaim](https://github.com/darthmaim), [@&#8203;gdborton](https://github.com/gdborton), [@&#8203;Willem-Jaap](https://github.com/Willem-Jaap), [@&#8203;KentoMoriwaki](https://github.com/KentoMoriwaki), [@&#8203;TrevorSayre](https://github.com/TrevorSayre), [@&#8203;marlier](https://github.com/marlier), [@&#8203;Luluno01](https://github.com/Luluno01), [@&#8203;xixixao](https://github.com/xixixao), [@&#8203;domin-mnd](https://github.com/domin-mnd), [@&#8203;niketchandivade](https://github.com/niketchandivade), [@&#8203;N2D4](https://github.com/N2D4), [@&#8203;kjugi](https://github.com/kjugi), [@&#8203;luciancah](https://github.com/luciancah), [@&#8203;mud-ali](https://github.com/mud-ali), [@&#8203;codeSTACKr](https://github.com/codeSTACKr), [@&#8203;luojiyin1987](https://github.com/luojiyin1987), [@&#8203;mehmetozguldev](https://github.com/mehmetozguldev), [@&#8203;ronanru](https://github.com/ronanru), [@&#8203;tknickman](https://github.com/tknickman), [@&#8203;joelhooks](https://github.com/joelhooks), [@&#8203;khawajaJunaid](https://github.com/khawajaJunaid), [@&#8203;rubyisrust](https://github.com/rubyisrust), [@&#8203;abdull-haseeb](https://github.com/abdull-haseeb), [@&#8203;bewinsnw](https://github.com/bewinsnw), [@&#8203;housseindjirdeh](https://github.com/housseindjirdeh), [@&#8203;li-jia-nan](https://github.com/li-jia-nan), [@&#8203;aralroca](https://github.com/aralroca), [@&#8203;s-ekai](https://github.com/s-ekai), [@&#8203;ah100101](https://github.com/ah100101), [@&#8203;jantimon](https://github.com/jantimon), [@&#8203;jordienr](https://github.com/jordienr), [@&#8203;iscekic](https://github.com/iscekic), [@&#8203;Strift](https://github.com/Strift), [@&#8203;slimbde](https://github.com/slimbde), [@&#8203;nauvalazhar](https://github.com/nauvalazhar), [@&#8203;HughHzyb](https://github.com/HughHzyb), [@&#8203;guisehn](https://github.com/guisehn), [@&#8203;wesbos](https://github.com/wesbos), [@&#8203;OlyaPolya](https://github.com/OlyaPolya), [@&#8203;paarthmadan](https://github.com/paarthmadan), [@&#8203;AhmedBaset](https://github.com/AhmedBaset), [@&#8203;dineshh-m](https://github.com/dineshh-m), [@&#8203;avdeev](https://github.com/avdeev), [@&#8203;Bhavya031](https://github.com/Bhavya031), [@&#8203;MildTomato](https://github.com/MildTomato), [@&#8203;Bjornnyborg](https://github.com/Bjornnyborg), [@&#8203;amikofalvy](https://github.com/amikofalvy), [@&#8203;yosefbeder](https://github.com/yosefbeder), [@&#8203;kjac](https://github.com/kjac), [@&#8203;woutvanderploeg](https://github.com/woutvanderploeg), [@&#8203;Ocheretovich](https://github.com/Ocheretovich), [@&#8203;ProchaLu](https://github.com/ProchaLu), [@&#8203;luismiramirez](https://github.com/luismiramirez), [@&#8203;omahs](https://github.com/omahs), [@&#8203;theoludwig](https://github.com/theoludwig), [@&#8203;abhi12299](https://github.com/abhi12299), [@&#8203;sommeeeer](https://github.com/sommeeeer), [@&#8203;lumirlumir](https://github.com/lumirlumir), [@&#8203;royalfig](https://github.com/royalfig), [@&#8203;iampoul](https://github.com/iampoul), [@&#8203;molebox](https://github.com/molebox), [@&#8203;txxxxc](https://github.com/txxxxc), [@&#8203;zce](https://github.com/zce), [@&#8203;mamuso](https://github.com/mamuso), [@&#8203;kahlstrm](https://github.com/kahlstrm), [@&#8203;vercel-release-bot](https://github.com/vercel-release-bot), [@&#8203;zhawtof](https://github.com/zhawtof), [@&#8203;PapatMayuri](https://github.com/PapatMayuri), [@&#8203;PlagueFPS](https://github.com/PlagueFPS), [@&#8203;IDNK2203](https://github.com/IDNK2203), [@&#8203;jericopulvera](https://github.com/jericopulvera), [@&#8203;liby](https://github.com/liby), [@&#8203;CannonLock](https://github.com/CannonLock), [@&#8203;timfish](https://github.com/timfish), [@&#8203;whatisagi](https://github.com/whatisagi), [@&#8203;none23](https://github.com/none23), [@&#8203;haouvw](https://github.com/haouvw), [@&#8203;Pyr33x](https://github.com/Pyr33x), [@&#8203;SouthLink](https://github.com/SouthLink), [@&#8203;frydj](https://github.com/frydj), [@&#8203;CrutchTheClutch](https://github.com/CrutchTheClutch), [@&#8203;sleevezip](https://github.com/sleevezip), [@&#8203;r34son](https://github.com/r34son), [@&#8203;yunsii](https://github.com/yunsii), [@&#8203;md-rejoyan-islam](https://github.com/md-rejoyan-islam), [@&#8203;kartheesan05](https://github.com/kartheesan05), [@&#8203;nattui](https://github.com/nattui), [@&#8203;KonkenBonken](https://github.com/KonkenBonken), [@&#8203;weicheng95](https://github.com/weicheng95), [@&#8203;brekk](https://github.com/brekk), [@&#8203;Francoscopic](https://github.com/Francoscopic), [@&#8203;B33fb0n3](https://github.com/B33fb0n3), [@&#8203;ImDR](https://github.com/ImDR), [@&#8203;nurullah](https://github.com/nurullah), [@&#8203;hdodov](https://github.com/hdodov), [@&#8203;ebCrypto](https://github.com/ebCrypto), [@&#8203;soedirgo](https://github.com/soedirgo), [@&#8203;floriangosse](https://github.com/floriangosse), [@&#8203;Tim-Zj](https://github.com/Tim-Zj), [@&#8203;raeyoung-kim](https://github.com/raeyoung-kim), [@&#8203;erwannbst](https://github.com/erwannbst), [@&#8203;DerTimonius](https://github.com/DerTimonius), [@&#8203;hirotomoyamada](https://github.com/hirotomoyamada), [@&#8203;Develliot](https://github.com/Develliot), [@&#8203;chandanpasunoori](https://github.com/chandanpasunoori), [@&#8203;vicb](https://github.com/vicb), [@&#8203;ankur-dwivedi](https://github.com/ankur-dwivedi), [@&#8203;kidonng](https://github.com/kidonng), [@&#8203;baeharam](https://github.com/baeharam), [@&#8203;AnaTofuZ](https://github.com/AnaTofuZ), [@&#8203;coderfin](https://github.com/coderfin), [@&#8203;xugetsu](https://github.com/xugetsu), [@&#8203;alessiomaffeis](https://github.com/alessiomaffeis), [@&#8203;kutsan](https://github.com/kutsan), [@&#8203;jordyfontoura](https://github.com/jordyfontoura), [@&#8203;sebmarkbage](https://github.com/sebmarkbage), [@&#8203;tranvanhieu01012002](https://github.com/tranvanhieu01012002), [@&#8203;jlbovenzo](https://github.com/jlbovenzo), [@&#8203;Luk-z](https://github.com/Luk-z), [@&#8203;jaredhan418](https://github.com/jaredhan418), [@&#8203;bangseongbeom](https://github.com/bangseongbeom), [@&#8203;penicillin0](https://github.com/penicillin0), [@&#8203;neoFinch](https://github.com/neoFinch), [@&#8203;DeepakBalaraman](https://github.com/DeepakBalaraman), [@&#8203;Manoj-M-S](https://github.com/Manoj-M-S), [@&#8203;Unsleeping](https://github.com/Unsleeping), [@&#8203;lonr](https://github.com/lonr), [@&#8203;Aerilym](https://github.com/Aerilym), [@&#8203;ytori](https://github.com/ytori), [@&#8203;acdlite](https://github.com/acdlite), [@&#8203;actopas](https://github.com/actopas), [@&#8203;n-ii-ma](https://github.com/n-ii-ma), [@&#8203;adcichowski](https://github.com/adcichowski), [@&#8203;mobeigi](https://github.com/mobeigi), [@&#8203;JohnGemstone](https://github.com/JohnGemstone), and [@&#8203;jjm2317](https://github.com/jjm2317) for helping! ### [`v14.2.33`](https://github.com/vercel/next.js/releases/tag/v14.2.33) [Compare Source](https://github.com/vercel/next.js/compare/v14.2.32...v14.2.33) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - omit searchParam data from FlightRouterState before transport ([#&#8203;80734](https://github.com/vercel/next.js/issues/80734)) ##### Credits Huge thanks to [@&#8203;ztanner](https://github.com/ztanner) for helping! ### [`v14.2.32`](https://github.com/vercel/next.js/releases/tag/v14.2.32) [Compare Source](https://github.com/vercel/next.js/compare/v14.2.31...v14.2.32) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - fix router handling when setting a location response header [#&#8203;82588](https://github.com/vercel/next.js/issues/82588) ##### Credits Huge thanks to [@&#8203;ztanner](https://github.com/ztanner) for helping! ### [`v14.2.31`](https://github.com/vercel/next.js/releases/tag/v14.2.31) [Compare Source](https://github.com/vercel/next.js/compare/v14.2.30...v14.2.31) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - fix(next/image): improve and simplify detect-content-type ([#&#8203;82179](https://github.com/vercel/next.js/issues/82179)) - fix(next/image): fix image-optimizer.ts headers ([#&#8203;82178](https://github.com/vercel/next.js/issues/82178)) ##### Credits Huge thanks to [@&#8203;styfle](https://github.com/styfle) and [@&#8203;ztanner](https://github.com/ztanner) for helping! ### [`v14.2.30`](https://github.com/vercel/next.js/releases/tag/v14.2.30) [Compare Source](https://github.com/vercel/next.js/compare/v14.2.29...v14.2.30) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - 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)) ##### Credits Huge thanks to [@&#8203;ijjk](https://github.com/ijjk) and [@&#8203;ztanner](https://github.com/ztanner) for helping! ### [`v14.2.29`](https://github.com/vercel/next.js/releases/tag/v14.2.29) [Compare Source](https://github.com/vercel/next.js/compare/v14.2.28...v14.2.29) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - Only share incremental cache for edge in next start ([#&#8203;79389](https://github.com/vercel/next.js/issues/79389)) ##### Credits Huge thanks to [@&#8203;ijjk](https://github.com/ijjk) for helping! ### [`v14.2.28`](https://github.com/vercel/next.js/releases/tag/v14.2.28) [Compare Source](https://github.com/vercel/next.js/compare/v14.2.27...v14.2.28) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - fix: node.js module import error when using middleware ([#&#8203;77945](https://github.com/vercel/next.js/issues/77945)) ##### Credits Huge thanks to [@&#8203;ztanner](https://github.com/ztanner) for helping! ### [`v14.2.27`](https://github.com/vercel/next.js/releases/tag/v14.2.27) [Compare Source](https://github.com/vercel/next.js/compare/v14.2.26...v14.2.27) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - fix dynamic route interception not working when deployed with middleware ([#&#8203;64923](https://github.com/vercel/next.js/issues/64923)) ##### Credits Huge thanks to [@&#8203;ztanner](https://github.com/ztanner) for helping! ### [`v14.2.26`](https://github.com/vercel/next.js/releases/tag/v14.2.26) [Compare Source](https://github.com/vercel/next.js/compare/v14.2.25...v14.2.26) > \[!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;77476](https://github.com/vercel/next.js/issues/77476)) ### [`v14.2.25`](https://github.com/vercel/next.js/releases/tag/v14.2.25) [Compare Source](https://github.com/vercel/next.js/compare/v14.2.24...v14.2.25) > \[!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 middleware request header ([#&#8203;77202](https://github.com/vercel/next.js/issues/77202)) ##### Credits Huge thanks to [@&#8203;ijjk](https://github.com/ijjk) for helping! ### [`v14.2.24`](https://github.com/vercel/next.js/releases/tag/v14.2.24) [Compare Source](https://github.com/vercel/next.js/compare/v14.2.23...v14.2.24) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - fix: ensure lint worker errors aren't silenced ([#&#8203;75779](https://github.com/vercel/next.js/issues/75779)) - add additional x-middleware-set-cookie filtering ([#&#8203;75561](https://github.com/vercel/next.js/issues/75561) & [#&#8203;73482](https://github.com/vercel/next.js/issues/73482)) ##### Credits Huge thanks to [@&#8203;ztanner](https://github.com/ztanner) for helping! ### [`v14.2.23`](https://github.com/vercel/next.js/releases/tag/v14.2.23) [Compare Source](https://github.com/vercel/next.js/compare/v14.2.22...v14.2.23) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - backport: force module format for virtual client-proxy ([#&#8203;74590](https://github.com/vercel/next.js/issues/74590)) - Backport: Use provided waitUntil for pending revalidates ([#&#8203;74573](https://github.com/vercel/next.js/issues/74573)) - Feature: next/image: add support for images.qualities in next.config ([#&#8203;74500](https://github.com/vercel/next.js/issues/74500)) ##### Credits Huge thanks to [@&#8203;styfle](https://github.com/styfle), [@&#8203;ijjk](https://github.com/ijjk) and [@&#8203;lubieowoce](https://github.com/lubieowoce) for helping! ### [`v14.2.22`](https://github.com/vercel/next.js/releases/tag/v14.2.22) [Compare Source](https://github.com/vercel/next.js/compare/v14.2.21...v14.2.22) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - Retry manifest file loading only in dev mode: [#&#8203;73900](https://github.com/vercel/next.js/issues/73900) - Ensure workers are cleaned up: [#&#8203;71564](https://github.com/vercel/next.js/issues/71564) - Use shared worker for lint & typecheck steps: [#&#8203;74154](https://github.com/vercel/next.js/issues/74154) ##### Credits Huge thanks to [@&#8203;unstubbable](https://github.com/unstubbable), [@&#8203;ijjk](https://github.com/ijjk), and [@&#8203;ztanner](https://github.com/ztanner) for helping! ### [`v14.2.21`](https://github.com/vercel/next.js/releases/tag/v14.2.21) [Compare Source](https://github.com/vercel/next.js/compare/v14.2.20...v14.2.21) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - Upgrade React from [`14898b6`](https://github.com/vercel/next.js/commit/14898b6a9) to [`178c267`](https://github.com/vercel/next.js/commit/178c267a4e): https://github.com/vercel/next.js/pull/74115 - Fix unstable_allowDynamic when used with pnpm: https://github.com/vercel/next.js/pull/73765 ##### Misc Changes - chore(docs): add missing search: '' on remotePatterns: https://github.com/vercel/next.js/pull/73927 - chore(docs): update version history of next/image: https://github.com/vercel/next.js/pull/73926 ##### Credits Huge thanks to [@&#8203;unstubbable](https://github.com/unstubbable), [@&#8203;ztanner](https://github.com/ztanner), and [@&#8203;styfle](https://github.com/styfle) for helping! ### [`v14.2.20`](https://github.com/vercel/next.js/releases/tag/v14.2.20) [Compare Source](https://github.com/vercel/next.js/compare/v14.2.19...v14.2.20) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - Fix fetch cloning bug (https://github.com/vercel/next.js/pull/73532) ##### Credits Huge thanks to [@&#8203;wyattjoh](https://github.com/wyattjoh) for helping! ### [`v14.2.19`](https://github.com/vercel/next.js/releases/tag/v14.2.19) [Compare Source](https://github.com/vercel/next.js/compare/v14.2.18...v14.2.19) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - ensure worker exits bubble to parent process ([#&#8203;73433](https://github.com/vercel/next.js/issues/73433)) - Increase max cache tags to 128 ([#&#8203;73125](https://github.com/vercel/next.js/issues/73125)) ##### Misc Changes - Update max tag items limit in docs ([#&#8203;73445](https://github.com/vercel/next.js/issues/73445)) ##### Credits Huge thanks to [@&#8203;ztanner](https://github.com/ztanner) and [@&#8203;ijjk](https://github.com/ijjk) for helping! ### [`v14.2.18`](https://github.com/vercel/next.js/releases/tag/v14.2.18) [Compare Source](https://github.com/vercel/next.js/compare/v14.2.17...v14.2.18) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - Fix: (third-parties) sendGTMEvent not queueing events before GTM init ([#&#8203;68683](https://github.com/vercel/next.js/issues/68683)) ([#&#8203;72111](https://github.com/vercel/next.js/issues/72111)) - Ignore error pages for cache revalidate ([#&#8203;72412](https://github.com/vercel/next.js/issues/72412)) ([#&#8203;72484](https://github.com/vercel/next.js/issues/72484)) ##### Credits Huge thanks to [@&#8203;huozhi](https://github.com/huozhi) and [@&#8203;ijjk](https://github.com/ijjk) for helping! ### [`v14.2.17`](https://github.com/vercel/next.js/releases/tag/v14.2.17) [Compare Source](https://github.com/vercel/next.js/compare/v14.2.16...v14.2.17) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - Fix: revert the bad node binary handling ([#&#8203;72356](https://github.com/vercel/next.js/issues/72356)) - Ensure pages/500 handles cache-control as expected ([#&#8203;72050](https://github.com/vercel/next.js/issues/72050)) ([#&#8203;72110](https://github.com/vercel/next.js/issues/72110)) - fix unhandled runtime error from generateMetadata in parallel routes ([#&#8203;72153](https://github.com/vercel/next.js/issues/72153)) ##### Credits Huge thanks to [@&#8203;huozhi](https://github.com/huozhi), [@&#8203;ztanner](https://github.com/ztanner), and [@&#8203;ijjk](https://github.com/ijjk) for helping! ### [`v14.2.16`](https://github.com/vercel/next.js/compare/v14.2.15...v14.2.16) [Compare Source](https://github.com/vercel/next.js/compare/v14.2.15...v14.2.16) ### [`v14.2.15`](https://github.com/vercel/next.js/releases/tag/v14.2.15) [Compare Source](https://github.com/vercel/next.js/compare/v14.2.14...v14.2.15) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - support breadcrumb style catch-all parallel routes [#&#8203;65063](https://github.com/vercel/next.js/issues/65063) - Provide non-dynamic segments to catch-all parallel routes [#&#8203;65233](https://github.com/vercel/next.js/issues/65233) - Fix client reference access causing metadata missing [#&#8203;70732](https://github.com/vercel/next.js/issues/70732) - feat(next/image): add support for decoding prop [#&#8203;70298](https://github.com/vercel/next.js/issues/70298) - feat(next/image): add images.localPatterns config [#&#8203;70529](https://github.com/vercel/next.js/issues/70529) - fix(next/image): handle undefined images.localPatterns config in images-manifest.json - fix: Do not omit alt on getImgProps return type, ImgProps [#&#8203;70608](https://github.com/vercel/next.js/issues/70608) - \[i18n] Routing fix [#&#8203;70761](https://github.com/vercel/next.js/issues/70761) ##### Credits Huge thanks to [@&#8203;ztanner](https://github.com/ztanner), [@&#8203;agadzik](https://github.com/agadzik), [@&#8203;huozhi](https://github.com/huozhi), [@&#8203;styfle](https://github.com/styfle), [@&#8203;icyJoseph](https://github.com/icyJoseph) and [@&#8203;wyattjoh](https://github.com/wyattjoh) for helping! ### [`v14.2.14`](https://github.com/vercel/next.js/releases/tag/v14.2.14) [Compare Source](https://github.com/vercel/next.js/compare/v14.2.13...v14.2.14) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - Fix: clone response in first handler to prevent race ([#&#8203;70082](https://github.com/vercel/next.js/issues/70082)) ([#&#8203;70649](https://github.com/vercel/next.js/issues/70649)) - Respect reexports from metadata API routes ([#&#8203;70508](https://github.com/vercel/next.js/issues/70508)) ([#&#8203;70647](https://github.com/vercel/next.js/issues/70647)) - Externalize node binary modules for app router ([#&#8203;70646](https://github.com/vercel/next.js/issues/70646)) - Fix revalidateTag() behaviour when invoked in server components ([#&#8203;70446](https://github.com/vercel/next.js/issues/70446)) ([#&#8203;70642](https://github.com/vercel/next.js/issues/70642)) - Fix prefetch bailout detection for nested loading segments ([#&#8203;70618](https://github.com/vercel/next.js/issues/70618)) - Add missing node modules to externals ([#&#8203;70382](https://github.com/vercel/next.js/issues/70382)) - Feature: next/image: add support for images.remotePatterns.search ([#&#8203;70302](https://github.com/vercel/next.js/issues/70302)) ##### Credits Huge thanks to [@&#8203;styfle](https://github.com/styfle), [@&#8203;ztanner](https://github.com/ztanner), [@&#8203;ijjk](https://github.com/ijjk), [@&#8203;huozhi](https://github.com/huozhi) and [@&#8203;wyattjoh](https://github.com/wyattjoh) for helping! ### [`v14.2.13`](https://github.com/vercel/next.js/releases/tag/v14.2.13) [Compare Source](https://github.com/vercel/next.js/compare/v14.2.12...v14.2.13) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - Fix missing cache-control on SSR app route ([#&#8203;70265](https://github.com/vercel/next.js/issues/70265)) - feat: add polyfill of URL.canParse for browser compatibility ([#&#8203;70228](https://github.com/vercel/next.js/issues/70228)) - Fix vercel og package memory leak ([#&#8203;70214](https://github.com/vercel/next.js/issues/70214)) - Fix startTime error on Android 9 with Chrome 74 ([#&#8203;67391](https://github.com/vercel/next.js/issues/67391)) ##### Credits Huge thanks to [@&#8203;raeyoung-kim](https://github.com/raeyoung-kim), [@&#8203;huozhi](https://github.com/huozhi), [@&#8203;devjiwonchoi](https://github.com/devjiwonchoi), and [@&#8203;ijjk](https://github.com/ijjk) for helping! ### [`v14.2.12`](https://github.com/vercel/next.js/releases/tag/v14.2.12) [Compare Source](https://github.com/vercel/next.js/compare/v14.2.11...v14.2.12) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - update prefetching jsdoc & documentation ([#&#8203;68047](https://github.com/vercel/next.js/issues/68047)) - Ensure we chunk revalidate tag requests ([#&#8203;70189](https://github.com/vercel/next.js/issues/70189)) - (backport) fix(eslint): allow typescript-eslint v8 ([#&#8203;70090](https://github.com/vercel/next.js/issues/70090)) - \[ppr] Don't mark RSC requests as /\_next/data requests (backport of [#&#8203;66249](https://github.com/vercel/next.js/issues/66249)) ([#&#8203;70083](https://github.com/vercel/next.js/issues/70083)) ##### Credits Huge thanks to [@&#8203;alvarlagerlof](https://github.com/alvarlagerlof), [@&#8203;wyattjoh](https://github.com/wyattjoh), [@&#8203;delbaoliveira](https://github.com/delbaoliveira), and [@&#8203;ijjk](https://github.com/ijjk) for helping! ### [`v14.2.11`](https://github.com/vercel/next.js/releases/tag/v14.2.11) [Compare Source](https://github.com/vercel/next.js/compare/v14.2.10...v14.2.11) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - fix: correct metadata url suffix (https://github.com/vercel/next.js/pull/69959) - fix: setting assetPrefix to URL format breaks HMR ([#&#8203;70040](https://github.com/vercel/next.js/issues/70040)) - Update revalidateTag to batch tags in one request ([#&#8203;65296](https://github.com/vercel/next.js/issues/65296)) ##### Credits Huge thanks to [@&#8203;huozhi](https://github.com/huozhi), [@&#8203;devjiwonchoi](https://github.com/devjiwonchoi), and [@&#8203;ijjk](https://github.com/ijjk) for helping! ### [`v14.2.10`](https://github.com/vercel/next.js/releases/tag/v14.2.10) [Compare Source](https://github.com/vercel/next.js/compare/v14.2.9...v14.2.10) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - Remove invalid fallback revalidate value (https://github.com/vercel/next.js/pull/69990) - Revert server action optimization (https://github.com/vercel/next.js/pull/69925) - Add ability to customize Cache-Control ([#&#8203;69802](https://github.com/vercel/next.js/issues/69802)) ##### Credits Huge thanks to [@&#8203;huozhi](https://github.com/huozhi) and [@&#8203;ijjk](https://github.com/ijjk) for helping! ### [`v14.2.9`](https://github.com/vercel/next.js/releases/tag/v14.2.9) [Compare Source](https://github.com/vercel/next.js/compare/v14.2.8...v14.2.9) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - Revert "Fix esm property def in flight loader ([#&#8203;66990](https://github.com/vercel/next.js/issues/66990))" ([#&#8203;69749](https://github.com/vercel/next.js/issues/69749)) - Disable experimental.optimizeServer by default to fix failed server action ([#&#8203;69788](https://github.com/vercel/next.js/issues/69788)) - Fix middleware fallback: false case ([#&#8203;69799](https://github.com/vercel/next.js/issues/69799)) - Fix status code for /\_not-found route ([#&#8203;64058](https://github.com/vercel/next.js/issues/64058)) ([#&#8203;69808](https://github.com/vercel/next.js/issues/69808)) - Fix metadata prop merging ([#&#8203;69807](https://github.com/vercel/next.js/issues/69807)) - create-next-app: fix font file corruption when using import alias ([#&#8203;69806](https://github.com/vercel/next.js/issues/69806)) ##### Credits Huge thanks to [@&#8203;huozhi](https://github.com/huozhi), [@&#8203;ztanner](https://github.com/ztanner), [@&#8203;ijjk](https://github.com/ijjk), and [@&#8203;lubieowoce](https://github.com/lubieowoce) for helping! ### [`v14.2.8`](https://github.com/vercel/next.js/releases/tag/v14.2.8) [Compare Source](https://github.com/vercel/next.js/compare/v14.2.7...v14.2.8) #### What's Changed > \[!NOTE]\ > This release is backporting bug fixes and minor improvements. It does **not** include all pending features/changes on canary. ##### Support `esmExternals` in app directory - Support esm externals in app router ([#&#8203;65041](https://github.com/vercel/next.js/issues/65041)) - Turbopack: Allow client components from foreign code in app routes ([#&#8203;64751](https://github.com/vercel/next.js/issues/64751)) - Turbopack: add support for esm externals in app dir ([#&#8203;64918](https://github.com/vercel/next.js/issues/64918)) - other related PRs: [#&#8203;66990](https://github.com/vercel/next.js/issues/66990) [#&#8203;66727](https://github.com/vercel/next.js/issues/66727) [#&#8203;66286](https://github.com/vercel/next.js/issues/66286) [#&#8203;65519](https://github.com/vercel/next.js/issues/65519) ##### Reading cookies set in middleware in components and actions - initialize ALS with cookies in middleware ([#&#8203;65008](https://github.com/vercel/next.js/issues/65008)) - fix middleware cookie initialization ([#&#8203;65820](https://github.com/vercel/next.js/issues/65820)) - ensure cookies set in middleware can be read in a server action ([#&#8203;67924](https://github.com/vercel/next.js/issues/67924)) - fix: merged middleware cookies should preserve options ([#&#8203;67956](https://github.com/vercel/next.js/issues/67956)) ##### Metadata and icons - support facebook-specific metadata (`fb:app_id`, `fb:admins`) in generateMetaData ([#&#8203;65713](https://github.com/vercel/next.js/issues/65713)) - Always collect static icons for all segments ([#&#8203;68712](https://github.com/vercel/next.js/issues/68712)) - Fix favicon merging with customized icons ([#&#8203;67982](https://github.com/vercel/next.js/issues/67982)) - Warn metadataBase missing in standalone mode or non vercel deployment ([#&#8203;66296](https://github.com/vercel/next.js/issues/66296)) ##### Parallel routes fixes - fix missing stylesheets when parallel routes are present ([#&#8203;69507](https://github.com/vercel/next.js/issues/69507)) ##### Draft mode and edge improvements - fix: unstable_cache should not cache new result in draft mode ([#&#8203;67772](https://github.com/vercel/next.js/issues/67772)) - Add draft mode flag for multi-zone ([#&#8203;68997](https://github.com/vercel/next.js/issues/68997)) - Fix edge preview props are not matched with cookie ([#&#8203;67779](https://github.com/vercel/next.js/issues/67779)) - other related PRs: [#&#8203;65426](https://github.com/vercel/next.js/issues/65426), [#&#8203;67787](https://github.com/vercel/next.js/issues/67787), [#&#8203;64946](https://github.com/vercel/next.js/issues/64946), [#&#8203;64313](https://github.com/vercel/next.js/issues/64313), [#&#8203;64370](https://github.com/vercel/next.js/issues/64370) ##### `next/image` fixes - Allow external image urls with \_next/image pathname to be rendered via Image component ([#&#8203;69586](https://github.com/vercel/next.js/issues/69586)) ##### Server actions improvements - optimize server actions ([#&#8203;66523](https://github.com/vercel/next.js/issues/66523)) - Apply optimization for unused actions ([#&#8203;69178](https://github.com/vercel/next.js/issues/69178)) - Improve SWC transform ID generation ([#&#8203;69183](https://github.com/vercel/next.js/issues/69183)) ##### Other changes - Ensure we match comment minify behavior between terser and swc ([#&#8203;68372](https://github.com/vercel/next.js/issues/68372)) - send initialCanonicalUrl in array format to prevent crawler confusion ([#&#8203;69509](https://github.com/vercel/next.js/issues/69509)) ##### Create-next-app updates - enable [@&#8203;typescript-eslint/recommended](https://github.com/typescript-eslint/recommended) in create-next-app --typescript ([#&#8203;52845](https://github.com/vercel/next.js/issues/52845)) - Update create-next-app template CSS ([#&#8203;66233](https://github.com/vercel/next.js/issues/66233)) - Update `create-next-app` template CSS ([#&#8203;66043](https://github.com/vercel/next.js/issues/66043)) - Update create-next-app template ([#&#8203;65803](https://github.com/vercel/next.js/issues/65803)) - add font antialiasing to templates ([#&#8203;67425](https://github.com/vercel/next.js/issues/67425)) - Move `create-next-app` public/ assets from local folder→ remote URL ([#&#8203;66931](https://github.com/vercel/next.js/issues/66931)) - Use classnames to set font family in Tailwind create-next-app templates ([#&#8203;66374](https://github.com/vercel/next.js/issues/66374)) - other related PRs: [#&#8203;64478](https://github.com/vercel/next.js/issues/64478), [#&#8203;68899](https://github.com/vercel/next.js/issues/68899), [#&#8203;68534](https://github.com/vercel/next.js/issues/68534), [#&#8203;69021](https://github.com/vercel/next.js/issues/69021), [#&#8203;67146](https://github.com/vercel/next.js/issues/67146), [#&#8203;66145](https://github.com/vercel/next.js/issues/66145) **Full Changelog**: https://github.com/vercel/next.js/compare/v14.2.7...v14.2.8 *** Huge thanks to everyone who contributed to this release: [@&#8203;abhi12299](https://github.com/abhi12299), [@&#8203;delbaoliveira](https://github.com/delbaoliveira), [@&#8203;eps1lon](https://github.com/eps1lon), [@&#8203;ForsakenHarmony](https://github.com/ForsakenHarmony), [@&#8203;huozhi](https://github.com/huozhi), [@&#8203;ijjk](https://github.com/ijjk), [@&#8203;JoshuaKGoldberg](https://github.com/JoshuaKGoldberg), [@&#8203;leerob](https://github.com/leerob), [@&#8203;lubieowoce](https://github.com/lubieowoce), [@&#8203;Netail](https://github.com/Netail), [@&#8203;ronanru](https://github.com/ronanru), [@&#8203;samcx](https://github.com/samcx), [@&#8203;shuding](https://github.com/shuding), [@&#8203;sokra](https://github.com/sokra), [@&#8203;stylessh](https://github.com/stylessh), [@&#8203;timfuhrmann](https://github.com/timfuhrmann), [@&#8203;wbinnssmith](https://github.com/wbinnssmith), [@&#8203;wyattjoh](https://github.com/wyattjoh), [@&#8203;ypessoa](https://github.com/ypessoa), [@&#8203;ztanner](https://github.com/ztanner) ### [`v14.2.7`](https://github.com/vercel/next.js/releases/tag/v14.2.7) [Compare Source](https://github.com/vercel/next.js/compare/v14.2.6...v14.2.7) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - Revert "chore: externalize undici for bundling" ([#&#8203;65727](https://github.com/vercel/next.js/issues/65727)) - Refactor internal routing headers to use request meta ([#&#8203;66987](https://github.com/vercel/next.js/issues/66987)) - fix(next): add cross origin in react dom preload ([#&#8203;67423](https://github.com/vercel/next.js/issues/67423)) - build: upgrade edge-runtime ([#&#8203;67565](https://github.com/vercel/next.js/issues/67565)) - GTM dataLayer parameter should take an object, not an array of strings ([#&#8203;66339](https://github.com/vercel/next.js/issues/66339)) - fix: properly patch lockfile against swc bindings ([#&#8203;66515](https://github.com/vercel/next.js/issues/66515)) - Add deployment id header for rsc payload if present ([#&#8203;67255](https://github.com/vercel/next.js/issues/67255)) - Update font data ([#&#8203;68639](https://github.com/vercel/next.js/issues/68639)) - fix i18n data pathname resolving ([#&#8203;68947](https://github.com/vercel/next.js/issues/68947)) - pages router: ensure x-middleware-cache is respected ([#&#8203;67734](https://github.com/vercel/next.js/issues/67734)) - Fix bad modRequest in flight entry manifest [#&#8203;68888](https://github.com/vercel/next.js/issues/68888) - Reject next image urls in image optimizer [#&#8203;68628](https://github.com/vercel/next.js/issues/68628) - Fix hmr assetPrefix escaping and reuse logic from other files [#&#8203;67983](https://github.com/vercel/next.js/issues/67983) ##### Credits Huge thanks to [@&#8203;kjugi](https://github.com/kjugi), [@&#8203;huozhi](https://github.com/huozhi), [@&#8203;ztanner](https://github.com/ztanner), [@&#8203;SukkaW](https://github.com/SukkaW), [@&#8203;marlier](https://github.com/marlier), [@&#8203;Kikobeats](https://github.com/Kikobeats), [@&#8203;syi0808](https://github.com/syi0808), [@&#8203;ijjk](https://github.com/ijjk), and [@&#8203;samcx](https://github.com/samcx) for helping! ### [`v14.2.6`](https://github.com/vercel/next.js/releases/tag/v14.2.6) [Compare Source](https://github.com/vercel/next.js/compare/v14.2.5...v14.2.6) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - Ensure fetch cache TTL is updated properly ([#&#8203;69164](https://github.com/vercel/next.js/issues/69164)) ### [`v14.2.5`](https://github.com/vercel/next.js/releases/tag/v14.2.5) [Compare Source](https://github.com/vercel/next.js/compare/v14.2.4...v14.2.5) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - avoid merging global css in a way that leaks into other chunk groups ([#&#8203;67373](https://github.com/vercel/next.js/issues/67373)) - Fix server action edge redirect with middleware rewrite ([#&#8203;67148](https://github.com/vercel/next.js/issues/67148)) - fix(next): reject protocol-relative URLs in image optimization ([#&#8203;65752](https://github.com/vercel/next.js/issues/65752)) - fix(next-swc): correct path interop to filepath for wasm ([#&#8203;65633](https://github.com/vercel/next.js/issues/65633)) - Use addDependency to track metadata route file changes ([#&#8203;66714](https://github.com/vercel/next.js/issues/66714)) - Fix noindex is missing on static not-found page ([#&#8203;67135](https://github.com/vercel/next.js/issues/67135)) - perf: improve retrieving versionInfo on Turbo HMR ([#&#8203;67309](https://github.com/vercel/next.js/issues/67309)) - fix(next/image): handle invalid url ([#&#8203;67465](https://github.com/vercel/next.js/issues/67465)) - fix(next): initial prefetch cache not set properly with different search params ([#&#8203;65977](https://github.com/vercel/next.js/issues/65977)) - fix: Backport class properties fix ([#&#8203;67377](https://github.com/vercel/next.js/issues/67377)) - Upgrade acorn ([#&#8203;67592](https://github.com/vercel/next.js/issues/67592)) ##### Misc - Log stdio for pull-turbo-cache script ([#&#8203;66759](https://github.com/vercel/next.js/issues/66759)) - Ensure turbo is setup when building in docker ([#&#8203;66804](https://github.com/vercel/next.js/issues/66804)) ##### Credits Huge thanks to [@&#8203;devjiwonchoi](https://github.com/devjiwonchoi), [@&#8203;ijjk](https://github.com/ijjk), [@&#8203;emmerich](https://github.com/emmerich), [@&#8203;huozhi](https://github.com/huozhi), [@&#8203;kdy1](https://github.com/kdy1), [@&#8203;kwonoj](https://github.com/kwonoj), [@&#8203;styfle](https://github.com/styfle), and [@&#8203;sokra](https://github.com/sokra) for helping! ### [`v14.2.4`](https://github.com/vercel/next.js/releases/tag/v14.2.4) [Compare Source](https://github.com/vercel/next.js/compare/v14.2.3...v14.2.4) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - fix: ensure route handlers properly track dynamic access ([#&#8203;66446](https://github.com/vercel/next.js/issues/66446)) - fix NextRequest proxy in edge runtime ([#&#8203;66551](https://github.com/vercel/next.js/issues/66551)) - Fix next/dynamic with babel and src dir ([#&#8203;65177](https://github.com/vercel/next.js/issues/65177)) - Use vercel deployment url for metadataBase fallbacks ([#&#8203;65089](https://github.com/vercel/next.js/issues/65089)) - fix(next/image): detect react@19 for fetchPriority prop ([#&#8203;65235](https://github.com/vercel/next.js/issues/65235)) - Fix loading navigation with metadata and prefetch ([#&#8203;66447](https://github.com/vercel/next.js/issues/66447)) - prevent duplicate RSC fetch when action redirects ([#&#8203;66620](https://github.com/vercel/next.js/issues/66620)) - ensure router cache updates reference the latest cache values ([#&#8203;66681](https://github.com/vercel/next.js/issues/66681)) - Prevent append of trailing slash in cases where path ends with a file extension ([#&#8203;66636](https://github.com/vercel/next.js/issues/66636)) - Fix inconsistency with 404 getStaticProps cache-control ([#&#8203;66674](https://github.com/vercel/next.js/issues/66674)) - Use addDependency to track metadata route file changes ([#&#8203;66714](https://github.com/vercel/next.js/issues/66714)) - Add timeout/retry handling for fetch cache ([#&#8203;66652](https://github.com/vercel/next.js/issues/66652)) - fix: app-router prefetch crash when an invalid URL is passed to Link ([#&#8203;66755](https://github.com/vercel/next.js/issues/66755)) ##### Credits Huge thanks to [@&#8203;ztanner](https://github.com/ztanner), [@&#8203;ijjk](https://github.com/ijjk), [@&#8203;wbinnssmith](https://github.com/wbinnssmith), [@&#8203;huozhi](https://github.com/huozhi), and [@&#8203;lubieowoce](https://github.com/lubieowoce) for helping! ### [`v14.2.3`](https://github.com/vercel/next.js/releases/tag/v14.2.3) [Compare Source](https://github.com/vercel/next.js/compare/v14.2.2...v14.2.3) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - Fix: resolve mixed re-exports module as cjs ([#&#8203;64681](https://github.com/vercel/next.js/issues/64681)) - fix: mixing namespace import and named import client components ([#&#8203;64809](https://github.com/vercel/next.js/issues/64809)) - Fix mixed exports in server component with barrel optimization ([#&#8203;64894](https://github.com/vercel/next.js/issues/64894)) - Fix next/image usage in mdx([#&#8203;64875](https://github.com/vercel/next.js/issues/64875)) - fix(fetch-cache): fix additional typo, add type & data validation ([#&#8203;64799](https://github.com/vercel/next.js/issues/64799)) - prevent erroneous route interception during lazy fetch ([#&#8203;64692](https://github.com/vercel/next.js/issues/64692)) - fix root page revalidation when redirecting in a server action ([#&#8203;64730](https://github.com/vercel/next.js/issues/64730)) - fix: remove traceparent from cachekey should not remove traceparent from original object ([#&#8203;64727](https://github.com/vercel/next.js/issues/64727)) - Clean-up fetch metrics tracking ([#&#8203;64746](https://github.com/vercel/next.js/issues/64746)) ##### Credits Huge thanks to [@&#8203;huozhi](https://github.com/huozhi), [@&#8203;samcx](https://github.com/samcx), [@&#8203;ztanner](https://github.com/ztanner), [@&#8203;Jeffrey-Zutt](https://github.com/Jeffrey-Zutt), and [@&#8203;ijjk](https://github.com/ijjk) for helping! ### [`v14.2.2`](https://github.com/vercel/next.js/releases/tag/v14.2.2) [Compare Source](https://github.com/vercel/next.js/compare/v14.2.1...v14.2.2) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - Fix Server Action error logs for unhandled POST requests ([#&#8203;64315](https://github.com/vercel/next.js/issues/64315)) - Improve rendering performance ([#&#8203;64408](https://github.com/vercel/next.js/issues/64408)) - Fix the method prop case in Server Actions transform ([#&#8203;64398](https://github.com/vercel/next.js/issues/64398)) - fix(next-lint): update option --report-unused-disable-directives to --report-unused-disable-directives-severity ([#&#8203;64405](https://github.com/vercel/next.js/issues/64405)) - tweak test for Azure ([#&#8203;64424](https://github.com/vercel/next.js/issues/64424)) - router restore should take priority over pending actions ([#&#8203;64449](https://github.com/vercel/next.js/issues/64449)) - Fix client boundary inheritance for barrel optimization ([#&#8203;64467](https://github.com/vercel/next.js/issues/64467)) - improve turborepo caching ([#&#8203;64493](https://github.com/vercel/next.js/issues/64493)) - feat: strip traceparent header from cachekey ([#&#8203;64499](https://github.com/vercel/next.js/issues/64499)) - Fix more Turbopack build tests - Update lockfile for compatibility with turbo ([#&#8203;64360](https://github.com/vercel/next.js/issues/64360)) - Fix typo in dynamic-rendering.ts ([#&#8203;64365](https://github.com/vercel/next.js/issues/64365)) - Fix DynamicServerError not being thrown in fetch ([#&#8203;64511](https://github.com/vercel/next.js/issues/64511)) - fix(next): Metadata.openGraph values not resolving basic values when type is set ([#&#8203;63620](https://github.com/vercel/next.js/issues/63620)) - disable production chunking in dev ([#&#8203;64488](https://github.com/vercel/next.js/issues/64488)) - Fix cjs client components tree-shaking ([#&#8203;64558](https://github.com/vercel/next.js/issues/64558)) - fix refresh behavior for discarded actions ([#&#8203;64532](https://github.com/vercel/next.js/issues/64532)) - fix: filter out middleware requests in logging ([#&#8203;64549](https://github.com/vercel/next.js/issues/64549)) - Turbopack: Allow client components to be imported in app routes ([#&#8203;64520](https://github.com/vercel/next.js/issues/64520)) - Fix ASL bundling for dynamic css ([#&#8203;64451](https://github.com/vercel/next.js/issues/64451)) - add pathname normalizer for actions ([#&#8203;64592](https://github.com/vercel/next.js/issues/64592)) - fix incorrect refresh request when basePath is set ([#&#8203;64589](https://github.com/vercel/next.js/issues/64589)) - test: skip turbopack build test ([#&#8203;64356](https://github.com/vercel/next.js/issues/64356)) - hotfix(turbopack): Update with patch for postcss.config.js path resolution on Windows ([#&#8203;64677](https://github.com/vercel/next.js/issues/64677)) ##### Credits Huge thanks to [@&#8203;shuding](https://github.com/shuding), [@&#8203;coltonehrman](https://github.com/coltonehrman), [@&#8203;ztanner](https://github.com/ztanner), [@&#8203;huozhi](https://github.com/huozhi), [@&#8203;sokra](https://github.com/sokra), [@&#8203;Jeffrey-Zutt](https://github.com/Jeffrey-Zutt), [@&#8203;timneutkens](https://github.com/timneutkens), [@&#8203;wbinnssmith](https://github.com/wbinnssmith), [@&#8203;wiesson](https://github.com/wiesson), [@&#8203;ijjk](https://github.com/ijjk), [@&#8203;devjiwonchoi](https://github.com/devjiwonchoi), and [@&#8203;bgw](https://github.com/bgw) for helping! ### [`v14.2.1`](https://github.com/vercel/next.js/releases/tag/v14.2.1) [Compare Source](https://github.com/vercel/next.js/compare/v14.2.0...v14.2.1) > \[!NOTE]\ > This release is backporting bug fixes. It does **not** include all pending features/changes on canary. ##### Core Changes - use pathToFileUrl to make esm import()s work with absolute windows paths ([#&#8203;64386](https://github.com/vercel/next.js/issues/64386)) [@&#8203;sokra](https://github.com/sokra) ##### Credits Huge thanks to [@&#8203;sokra](https://github.com/sokra) for helping! ### [`v14.2.0`](https://github.com/vercel/next.js/releases/tag/v14.2.0) [Compare Source](https://github.com/vercel/next.js/compare/v14.1.4...v14.2.0) Learn more: https://nextjs.org/blog/next-14-2 ##### Core Changes - Update build worker warning to use debug: [#&#8203;60847](https://github.com/vercel/next.js/issues/60847) - fix: added [@&#8203;sentry/profiling-node](https://github.com/sentry/profiling-node) to sep list to prevent build/bundle breakage: [#&#8203;60855](https://github.com/vercel/next.js/issues/60855) - Optimize build trace ignores: [#&#8203;60859](https://github.com/vercel/next.js/issues/60859) - Deprecation warning for config.analyticsId: [#&#8203;60677](https://github.com/vercel/next.js/issues/60677) - chore: indicate staleness more prominently in `next info` output: [#&#8203;60376](https://github.com/vercel/next.js/issues/60376) - Telemetry: createComponentTree span: [#&#8203;60857](https://github.com/vercel/next.js/issues/60857) - chore: replace micromatch w/ picomatch: [#&#8203;60699](https://github.com/vercel/next.js/issues/60699) - Report HMR latency as trace spans for Turbopack: [#&#8203;60799](https://github.com/vercel/next.js/issues/60799) - Turbopack: always log HMR rebuild times: [#&#8203;60908](https://github.com/vercel/next.js/issues/60908) - Error overlay refactors: [#&#8203;60886](https://github.com/vercel/next.js/issues/60886) - Use precompiled source-map in overlay middleware: [#&#8203;60932](https://github.com/vercel/next.js/issues/60932) - Use more precompiled deps in react-dev-overlay: [#&#8203;60959](https://github.com/vercel/next.js/issues/60959) - Fix next phase for next build: [#&#8203;60969](https://github.com/vercel/next.js/issues/60969) - chore: update turbopack: [#&#8203;60980](https://github.com/vercel/next.js/issues/60980) - refactor(analysis): rust based page-static-info, deprecate js parse interface in next-swc: [#&#8203;59300](https://github.com/vercel/next.js/issues/59300) - disable static generation on interception routes: [#&#8203;61004](https://github.com/vercel/next.js/issues/61004) - Docs: Address community feedback: [#&#8203;60960](https://github.com/vercel/next.js/issues/60960) - avoid output of webpack stats: [#&#8203;61023](https://github.com/vercel/next.js/issues/61023) - Revert "refactor(analysis): rust based page-static-info, deprecate js parse interface in next-swc": [#&#8203;61021](https://github.com/vercel/next.js/issues/61021) - fix useSelectedLayoutSegment's support for parallel routes: [#&#8203;60912](https://github.com/vercel/next.js/issues/60912) - Dynamic APIs: [#&#8203;60645](https://github.com/vercel/next.js/issues/60645) - Enable next.js version checker in turbopack: [#&#8203;61034](https://github.com/vercel/next.js/issues/61034) - chore: Update `terser` to `v5.27.0`: [#&#8203;61068](https://github.com/vercel/next.js/issues/61068) - Update `swc_core` to `v0.87.28`: [#&#8203;60876](https://github.com/vercel/next.js/issues/60876) - update turbopack: [#&#8203;61015](https://github.com/vercel/next.js/issues/61015) - Implement client_root for edge in Turbopack: [#&#8203;61024](https://github.com/vercel/next.js/issues/61024) - fix parallel route top-level catch-all normalization logic to support nested explicit (non-catchall) slot routes: [#&#8203;60776](https://github.com/vercel/next.js/issues/60776) - fix(image): warn when animated image is missing `unoptimized` prop: [#&#8203;61045](https://github.com/vercel/next.js/issues/61045) - Fix version checker not displaying when version newer than npm: [#&#8203;61075](https://github.com/vercel/next.js/issues/61075) - Fix sitemap generateSitemaps support for string id: [#&#8203;61088](https://github.com/vercel/next.js/issues/61088) - ppr: ensure the router state tree is provided for interception routes: [#&#8203;61059](https://github.com/vercel/next.js/issues/61059) - Improve the Server Actions SWC transform: [#&#8203;61001](https://github.com/vercel/next.js/issues/61001) - Fix instrument bundling as client components: [#&#8203;60984](https://github.com/vercel/next.js/issues/60984) - fix(turbopack): use correct layout for 404 page: [#&#8203;61032](https://github.com/vercel/next.js/issues/61032) - fix: emotion import source should be enabled in SSR contexts: [#&#8203;61099](https://github.com/vercel/next.js/issues/61099) - chore: update turbopack: [#&#8203;61090](https://github.com/vercel/next.js/issues/61090) - fix(turbopack): custom page extensions for `_app`: [#&#8203;60789](https://github.com/vercel/next.js/issues/60789) - Disable trace uploads with NEXT_TRACE_UPLOAD_DISABLE: [#&#8203;61101](https://github.com/vercel/next.js/issues/61101) - add `optimizeServerReact` to config-shared: [#&#8203;61106](https://github.com/vercel/next.js/issues/61106) - Fix filesystempublicroutes test for Turbopack: [#&#8203;61132](https://github.com/vercel/next.js/issues/61132) - chore: upgrade webpack to 5.90.0: [#&#8203;61109](https://github.com/vercel/next.js/issues/61109) - Add `maxDuration` to typescript plugin allowed exports: [#&#8203;59193](https://github.com/vercel/next.js/issues/59193) - Upgrade Turbopack: [#&#8203;61190](https://github.com/vercel/next.js/issues/61190) - build: remove sentry from the externals list: [#&#8203;61194](https://github.com/vercel/next.js/issues/61194) - exclude default routes from isPageStatic check: [#&#8203;61173](https://github.com/vercel/next.js/issues/61173) - Add stack trace to client rendering bailout error: [#&#8203;61200](https://github.com/vercel/next.js/issues/61200) - chore: refactor image optimization to separate external/internal urls: [#&#8203;61172](https://github.com/vercel/next.js/issues/61172) - parallel routes: support multi-slot layouts: [#&#8203;61115](https://github.com/vercel/next.js/issues/61115) - Refine revalidatePath warning message: [#&#8203;61220](https://github.com/vercel/next.js/issues/61220) - revert changes to process default routes at build: [#&#8203;61241](https://github.com/vercel/next.js/issues/61241) - Fix cookie merging in Server Action redirections: [#&#8203;61113](https://github.com/vercel/next.js/issues/61113) - Update `swc_core` to `v0.89.x`: [#&#8203;61086](https://github.com/vercel/next.js/issues/61086) - Fix Server Reference being double registered: [#&#8203;61244](https://github.com/vercel/next.js/issues/61244) - Fix Server Action redirection with absolute internal URL: [#&#8203;60798](https://github.com/vercel/next.js/issues/60798) - Fix indentation in source code of dev overlay: [#&#8203;61216](https://github.com/vercel/next.js/issues/61216) - Update `swc_core` to `v0.89.4`: [#&#8203;61285](https://github.com/vercel/next.js/issues/61285) - fix: Revert `preset-env` mode of `styled-jsx` in webpack mode: [#&#8203;61306](https://github.com/vercel/next.js/issues/61306) - DX: add route context to the dynamic errors: [#&#8203;61332](https://github.com/vercel/next.js/issues/61332) - Telemetry: add time-to-first-byte signal: [#&#8203;61238](https://github.com/vercel/next.js/issues/61238) - Refine logging message of experiments: [#&#8203;61337](https://github.com/vercel/next.js/issues/61337) - fix(turbopack): don't parse `.ts` files as `.tsx`: [#&#8203;61219](https://github.com/vercel/next.js/issues/61219) - Update turbopack: [#&#8203;61381](https://github.com/vercel/next.js/issues/61381) - Same as [#&#8203;61360](https://github.com/vercel/next.js/issues/61360): [#&#8203;61369](https://github.com/vercel/next.js/issues/61369) - Always respect NEXT_TRACE_UPLOAD_DISABLED: [#&#8203;61402](https://github.com/vercel/next.js/issues/61402) - parallel routes: fix catch-all slots being treated as optional catch-all: [#&#8203;61174](https://github.com/vercel/next.js/issues/61174) - fix hmr telemetry reporting: [#&#8203;61420](https://github.com/vercel/next.js/issues/61420) - chore: Update `swc_core` to `v0.89.6`: [#&#8203;61426](https://github.com/vercel/next.js/issues/61426) - Update turbopack: [#&#8203;61433](https://github.com/vercel/next.js/issues/61433) - fix a perf problem in VersionedContentMap: [#&#8203;61442](https://github.com/vercel/next.js/issues/61442) - Fix next dynamic import named export from client components: [#&#8203;61378](https://github.com/vercel/next.js/issues/61378) - fix issues loading CSS in default slots: [#&#8203;61428](https://github.com/vercel/next.js/issues/61428) - avoid sending issues turbopack messages to browser: [#&#8203;61443](https://github.com/vercel/next.js/issues/61443) - Support crossOrigin in Turbopack: [#&#8203;61461](https://github.com/vercel/next.js/issues/61461) - Pass down \__NEXT_EXPERIMENTAL_REACT env to webpack build worker explicitly: [#&#8203;61463](https://github.com/vercel/next.js/issues/61463) - Replace image optimizer IPC call with request handler: [#&#8203;61471](https://github.com/vercel/next.js/issues/61471) - feat(next): trace build dependencies for turborepo: [#&#8203;59553](https://github.com/vercel/next.js/issues/59553) - Turbopack: fix telemetry attributes for swc options: [#&#8203;61474](https://github.com/vercel/next.js/issues/61474) - Always show version text in error overlay: [#&#8203;61421](https://github.com/vercel/next.js/issues/61421) - Fix build worker callback arg missing correct page path : [#&#8203;61347](https://github.com/vercel/next.js/issues/61347) - Update font data: [#&#8203;61479](https://github.com/vercel/next.js/issues/61479) - build: upgrade edge-runtime: [#&#8203;61030](https://github.com/vercel/next.js/issues/61030) - Fix experimental react support in app-route runtime: [#&#8203;61511](https://github.com/vercel/next.js/issues/61511) - Fix .env hmr for Node.js runtime in Turbopack: [#&#8203;61504](https://github.com/vercel/next.js/issues/61504) - remove unnecessary PPR branch in non-PPR reducer: [#&#8203;61176](https://github.com/vercel/next.js/issues/61176) - fix: bump `@vercel/nft@0.26.3`: [#&#8203;61538](https://github.com/vercel/next.js/issues/61538) - chore: update ESLint and plugins to latest: [#&#8203;61544](https://github.com/vercel/next.js/issues/61544) - Update turbopack: [#&#8203;61553](https://github.com/vercel/next.js/issues/61553) - feat: first pass of `next/font` manifest: [#&#8203;61424](https://github.com/vercel/next.js/issues/61424) - Fix .env HMR for Turbopack in Edge runtime: [#&#8203;61565](https://github.com/vercel/next.js/issues/61565) - build(cargo): bump up turbopack: [#&#8203;61590](https://github.com/vercel/next.js/issues/61590) - refactor(next-core): consolidate custom ecma transform rules: [#&#8203;61481](https://github.com/vercel/next.js/issues/61481) - ensure server action errors notify rejection handlers: [#&#8203;61588](https://github.com/vercel/next.js/issues/61588) - feat(turbopack): only preload fonts that opt in: [#&#8203;61591](https://github.com/vercel/next.js/issues/61591) - feat(turbopack): serve google fonts locally and allow preloading them: [#&#8203;61596](https://github.com/vercel/next.js/issues/61596) - Update font data: [#&#8203;61621](https://github.com/vercel/next.js/issues/61621) - Remove unused mockedRes in resolveRoutes: [#&#8203;61635](https://github.com/vercel/next.js/issues/61635) - Fix [@&#8203;react-pdf/renderer](https://github.com/react-pdf/renderer) not working in RSC: [#&#8203;61317](https://github.com/vercel/next.js/issues/61317) - Remove extra edge-runtime/primitives override: [#&#8203;61641](https://github.com/vercel/next.js/issues/61641) - Encode revalidateTag value fixes [#&#8203;61390](https://github.com/vercel/next.js/issues/61390): [#&#8203;61392](https://github.com/vercel/next.js/issues/61392) - Update README.md: [#&#8203;48717](https://github.com/vercel/next.js/issues/48717) - chore: update README.md: [#&#8203;61650](https://github.com/vercel/next.js/issues/61650) - avoid processing client components and server actions in route handlers: [#&#8203;60985](https://github.com/vercel/next.js/issues/60985) - chore: Update `@swc/helpers` to `v0.5.5`: [#&#8203;61659](https://github.com/vercel/next.js/issues/61659) - feat(ts): expose `MiddlewareConfig` interface: [#&#8203;61576](https://github.com/vercel/next.js/issues/61576) - Revert "build: upgrade edge-runtime": [#&#8203;61686](https://github.com/vercel/next.js/issues/61686) - feat(ts): add JSDoc comments for public APIs: [#&#8203;61649](https://github.com/vercel/next.js/issues/61649) - fix(next-core): adjust server alias for the context: [#&#8203;61690](https://github.com/vercel/next.js/issues/61690) - fix setAssetPrefix when running on NextCustomServer: [#&#8203;61676](https://github.com/vercel/next.js/issues/61676) - fix: status code for 404 props queries to avoid client side navigation with empty props: [#&#8203;60968](https://github.com/vercel/next.js/issues/60968) - fix(next-eslint): `.eslintrc.json` not being created by `next lint` on App Router: [#&#8203;55104](https://github.com/vercel/next.js/issues/55104) - Update React from [`60a927d`](https://github.com/vercel/next.js/commit/60a927d04) to [`2bc7d33`](https://github.com/vercel/next.js/commit/2bc7d336a): [#&#8203;61522](https://github.com/vercel/next.js/issues/61522) - fix(turbopack): read preload option for google fonts: [#&#8203;61679](https://github.com/vercel/next.js/issues/61679) - decode magic identifiers: [#&#8203;61658](https://github.com/vercel/next.js/issues/61658) - Associate server error digest with browser logged one: [#&#8203;61592](https://github.com/vercel/next.js/issues/61592) - chore: update turbopack: [#&#8203;61682](https://github.com/vercel/next.js/issues/61682) - fix loading issue when navigating to page with async metadata: [#&#8203;61687](https://github.com/vercel/next.js/issues/61687) - fix(ts): `ReadonlyURLSearchParams` should extend `URLSearchParams`: [#&#8203;61419](https://github.com/vercel/next.js/issues/61419) - fix navigation issue when dynamic param casing changes: [#&#8203;61726](https://github.com/vercel/next.js/issues/61726) - Fix next/server api alias for ESM pkg: [#&#8203;61721](https://github.com/vercel/next.js/issues/61721) - feat(transforms): enable rsc transforms for the remaining contexts: [#&#8203;61231](https://github.com/vercel/next.js/issues/61231) - fix: allow some recursion for middleware subrequests: [#&#8203;60615](https://github.com/vercel/next.js/issues/60615) - feat(next-swc): support wasm32-\* build target: [#&#8203;61586](https://github.com/vercel/next.js/issues/61586) - Turbopack: convert between locations correctly: [#&#8203;61477](https://github.com/vercel/next.js/issues/61477) - feat(next/image)!: remove `squoosh` in favor of `sharp` as optional dep: [#&#8203;61696](https://github.com/vercel/next.js/issues/61696) - Navigation Signals in PPR: [#&#8203;60450](https://github.com/vercel/next.js/issues/60450) - Revert "Turbopack: convert between locations correctly ([#&#8203;61477](https://github.com/vercel/next.js/issues/61477))": [#&#8203;61733](https://github.com/vercel/next.js/issues/61733) - Fix duplicate line in README: [#&#8203;61691](https://github.com/vercel/next.js/issues/61691) - docs: fix example code missing comma: [#&#8203;59012](https://github.com/vercel/next.js/issues/59012) - Reapply "Turbopack: convert between locations correctly ([#&#8203;61477](https://github.com/vercel/next.js/issues/61477))" ([#&#8203;61733](https://github.com/vercel/next.js/issues/61733)): [#&#8203;61735](https://github.com/vercel/next.js/issues/61735) - Fix: Error Fetching \_devpagesmanifest.json [#&#8203;17274](https://github.com/vercel/next.js/issues/17274): [#&#8203;60349](https://github.com/vercel/next.js/issues/60349) - fix jsDoc of notFound: [#&#8203;61692](https://github.com/vercel/next.js/issues/61692) - feat(next-core): expand matching js extensions for the rules: [#&#8203;61745](https://github.com/vercel/next.js/issues/61745) - source map fixes: [#&#8203;61723](https://github.com/vercel/next.js/issues/61723) - Add experimental touchstart flag for testing: [#&#8203;61747](https://github.com/vercel/next.js/issues/61747) - partially fix css duplication in app dir: [#&#8203;61198](https://github.com/vercel/next.js/issues/61198) - build(cargo): add deps for the wasi: [#&#8203;61784](https://github.com/vercel/next.js/issues/61784) - fix(ts): match `MiddlewareConfig` with documentation: [#&#8203;61718](https://github.com/vercel/next.js/issues/61718) - Fix attempted import error for react: [#&#8203;61791](https://github.com/vercel/next.js/issues/61791) - consolidate prefetch utils & separate build util: [#&#8203;61789](https://github.com/vercel/next.js/issues/61789) - Skip client-side data-fetching after ssr error : [#&#8203;51377](https://github.com/vercel/next.js/issues/51377) - fix(next-swc): Detect `exports.foo` from `cjs_finder`: [#&#8203;61795](https://github.com/vercel/next.js/issues/61795) - feat(next-core): build time client|server-only assertion: [#&#8203;61732](https://github.com/vercel/next.js/issues/61732) - Fall back loading chunks for sourcemap tracing: [#&#8203;61790](https://github.com/vercel/next.js/issues/61790) - Increase Rust stack size: [#&#8203;61809](https://github.com/vercel/next.js/issues/61809) - Revert "feat(next/image)!: remove `squoosh` in favor of `sharp` as optional dep": [#&#8203;61810](https://github.com/vercel/next.js/issues/61810) - DX: fix error overlay flash: [#&#8203;61813](https://github.com/vercel/next.js/issues/61813) - feat: Allow specifying `useLightningcss` for `styled-jsx`: [#&#8203;61359](https://github.com/vercel/next.js/issues/61359) - Guard against restoring router state with missing data: [#&#8203;61822](https://github.com/vercel/next.js/issues/61822) - fix: babel usage with next/image: [#&#8203;61835](https://github.com/vercel/next.js/issues/61835) - fix:(next/image) handle `remotePatterns` with a dot in the pathname: [#&#8203;60488](https://github.com/vercel/next.js/issues/60488) - Update React from [`2bc7d33`](https://github.com/vercel/next.js/commit/2bc7d336a) to [`ba5e6a8`](https://github.com/vercel/next.js/commit/ba5e6a832): [#&#8203;61837](https://github.com/vercel/next.js/issues/61837) - DX: fix error overlay flash: [#&#8203;61813](https://github.com/vercel/next.js/issues/61813) - feat: Allow specifying `useLightningcss` for `styled-jsx`: [#&#8203;61359](https://github.com/vercel/next.js/issues/61359) - Guard against restoring router state with missing data: [#&#8203;61822](https://github.com/vercel/next.js/issues/61822) - fix: babel usage with next/image: [#&#8203;61835](https://github.com/vercel/next.js/issues/61835) - fix:(next/image) handle `remotePatterns` with a dot in the pathname: [#&#8203;60488](https://github.com/vercel/next.js/issues/60488) - Update React from [`2bc7d33`](https://github.com/vercel/next.js/commit/2bc7d336a) to [`ba5e6a8`](https://github.com/vercel/next.js/commit/ba5e6a832): [#&#8203;61837](https://github.com/vercel/next.js/issues/61837) - update turbopack: [#&#8203;61187](https://github.com/vercel/next.js/issues/61187) - conditionally send Next-URL in Vary response: [#&#8203;61794](https://github.com/vercel/next.js/issues/61794) - provide interception rewrites to edge runtime: [#&#8203;61414](https://github.com/vercel/next.js/issues/61414) - Update app-index to only ever construct the initial data response once: [#&#8203;61869](https://github.com/vercel/next.js/issues/61869) - Move turbopack helpers: [#&#8203;61917](https://github.com/vercel/next.js/issues/61917) - hot-reloader-turbopack refactors: [#&#8203;61929](https://github.com/vercel/next.js/issues/61929) - More hot-reloader-turbopack refactors: [#&#8203;61940](https://github.com/vercel/next.js/issues/61940) - fix(next/image): improve warning when `fill` and `sizes="100vw"`: [#&#8203;61949](https://github.com/vercel/next.js/issues/61949) - build(cargo): bump up turbopack to latest: [#&#8203;61952](https://github.com/vercel/next.js/issues/61952) - build(cargo): update turbopack for filewatcher fix: [#&#8203;61955](https://github.com/vercel/next.js/issues/61955) - ci(workflow): deploy rustdocs for turbopack: [#&#8203;61958](https://github.com/vercel/next.js/issues/61958) - Support resuming a complete HTML prerender that has dynamic flight data: [#&#8203;60865](https://github.com/vercel/next.js/issues/60865) - Fix empty white page with parallel routes + loading boundaries: [#&#8203;61597](https://github.com/vercel/next.js/issues/61597) - Update `swc_core` to `v0.90.7` and update turbopack: [#&#8203;61662](https://github.com/vercel/next.js/issues/61662) - Turbopack: remove server addr: [#&#8203;61932](https://github.com/vercel/next.js/issues/61932) - More hot-reloader-turbopack refactors: [#&#8203;61993](https://github.com/vercel/next.js/issues/61993) - Use destructured object for [#&#8203;61993](https://github.com/vercel/next.js/issues/61993): [#&#8203;61996](https://github.com/vercel/next.js/issues/61996) - only prefix prefetch cache entries if they vary based on `Next-URL`: [#&#8203;61235](https://github.com/vercel/next.js/issues/61235) - seed prefetch cache with initial page: [#&#8203;61535](https://github.com/vercel/next.js/issues/61535) - Remove leftover server addr references: [#&#8203;61997](https://github.com/vercel/next.js/issues/61997) - log fast refresh in app dir: [#&#8203;61441](https://github.com/vercel/next.js/issues/61441) - docs(turbopack): build more docs: [#&#8203;61977](https://github.com/vercel/next.js/issues/61977) - fix(next-core): correct error message: [#&#8203;62011](https://github.com/vercel/next.js/issues/62011) - docs(turbopack): reduce documentation size: [#&#8203;62016](https://github.com/vercel/next.js/issues/62016) - Reduce memory/cache overhead from over loader processing: [#&#8203;62005](https://github.com/vercel/next.js/issues/62005) - fix: bump `@vercel/nft@0.26.4`: [#&#8203;62019](https://github.com/vercel/next.js/issues/62019) - refactor(next-core): do not reexport turbopack_binding: [#&#8203;62018](https://github.com/vercel/next.js/issues/62018) - build: Update `swc_core` to `v0.90.8`: [#&#8203;61976](https://github.com/vercel/next.js/issues/61976) - merge pages and app overlays: [#&#8203;60899](https://github.com/vercel/next.js/issues/60899) - Rename internal utility naming for clarification : [#&#8203;62048](https://github.com/vercel/next.js/issues/62048) - fix: handle multiple `x-forwarded-proto` headers: [#&#8203;58824](https://github.com/vercel/next.js/issues/58824) - Fix server components externals on SSR layer: [#&#8203;61986](https://github.com/vercel/next.js/issues/61986) - Fixed useParams hook undesired re-renders and updated it to use PathParamsContext in the app router.: [#&#8203;60708](https://github.com/vercel/next.js/issues/60708) - docs(turbopack): conslidate existing links: [#&#8203;62034](https://github.com/vercel/next.js/issues/62034) - fix(custom-transform): allow to assert empty program for rsc: [#&#8203;61922](https://github.com/vercel/next.js/issues/61922) - fix navigation applying stale data when triggered from global not found: [#&#8203;62033](https://github.com/vercel/next.js/issues/62033) - fix(turbopack): `react-dom/server` in rsc context: [#&#8203;61165](https://github.com/vercel/next.js/issues/61165) - refactor(tests): make chain more "correct": [#&#8203;51728](https://github.com/vercel/next.js/issues/51728) - Add puppeteer-core to server-external-packages.json: [#&#8203;62063](https://github.com/vercel/next.js/issues/62063) - Fix extra swc optimizer applied to node_modules in browser layer: [#&#8203;62051](https://github.com/vercel/next.js/issues/62051) - docs(turbopack): revise links: [#&#8203;62062](https://github.com/vercel/next.js/issues/62062) - Fix output: export with custom distDir: [#&#8203;62064](https://github.com/vercel/next.js/issues/62064) - fix(next-core): apply image-loader alias to the remaining context: [#&#8203;62070](https://github.com/vercel/next.js/issues/62070) - More hot-reloader-turbopack refactors: [#&#8203;62055](https://github.com/vercel/next.js/issues/62055) - Ensure Turbopack writes font optimization manifest: [#&#8203;62079](https://github.com/vercel/next.js/issues/62079) - update turbopack: [#&#8203;62080](https://github.com/vercel/next.js/issues/62080) - chore: hide version info network error: [#&#8203;62084](https://github.com/vercel/next.js/issues/62084) - Add dev option to Turbopack createProject(): [#&#8203;62083](https://github.com/vercel/next.js/issues/62083) - Remove unused app-turbopack files: [#&#8203;62087](https://github.com/vercel/next.js/issues/62087) - make router restore action resilient to a missing tree: [#&#8203;62098](https://github.com/vercel/next.js/issues/62098) - Turbopack: add support for dynamic requests in require() and import(): [#&#8203;62092](https://github.com/vercel/next.js/issues/62092) - docs(turbopack): move docs to separate: [#&#8203;62069](https://github.com/vercel/next.js/issues/62069) - Implement Vc<NextMode>: [#&#8203;62099](https://github.com/vercel/next.js/issues/62099) - fix: add `zeromq` to server-external-packages.json: [#&#8203;62105](https://github.com/vercel/next.js/issues/62105) - Fix trailing slash for canonical url: [#&#8203;62109](https://github.com/vercel/next.js/issues/62109) - Consolidate NextMode checks: [#&#8203;62106](https://github.com/vercel/next.js/issues/62106) - Improve the Server Actions SWC transform (part 2): [#&#8203;62052](https://github.com/vercel/next.js/issues/62052) - Should not warn metadataBase missing if only absolute urls are present: [#&#8203;61898](https://github.com/vercel/next.js/issues/61898) - Update to `turbopack-240215.5`: [#&#8203;62119](https://github.com/vercel/next.js/issues/62119) - Add polyfill for `Object.hasOwn`: [#&#8203;60437](https://github.com/vercel/next.js/issues/60437) - OpenTelemetry: trace API routes in page router: [#&#8203;62120](https://github.com/vercel/next.js/issues/62120) - Fix [@&#8203;next/mdx](https://github.com/next/mdx) types: [#&#8203;57580](https://github.com/vercel/next.js/issues/57580) - DX: hide the webpack info prefix for module paths: [#&#8203;62101](https://github.com/vercel/next.js/issues/62101) - Show build errors from Turbopack: [#&#8203;62139](https://github.com/vercel/next.js/issues/62139) - Fix issue with ComponentMod being read in Turbopack: [#&#8203;62141](https://github.com/vercel/next.js/issues/62141) - Fix handling subpath for server components externals: [#&#8203;62150](https://github.com/vercel/next.js/issues/62150) - docs(next-api): trying to document project_update_info_subscribe: [#&#8203;61962](https://github.com/vercel/next.js/issues/61962) - add support for esmExternals in pages: [#&#8203;61983](https://github.com/vercel/next.js/issues/61983) - docs: updated link in JSDoc for the shallow property in link.tsx: [#&#8203;62181](https://github.com/vercel/next.js/issues/62181) - Update font data: [#&#8203;62173](https://github.com/vercel/next.js/issues/62173) - Update split chunk handling for edge/node: [#&#8203;62205](https://github.com/vercel/next.js/issues/62205) - Ensure webpack build worker defaults on: [#&#8203;62214](https://github.com/vercel/next.js/issues/62214) - feat: Lint invalid CSS modules: [#&#8203;62040](https://github.com/vercel/next.js/issues/62040) - Add page name to error logged in Turbopack: [#&#8203;62218](https://github.com/vercel/next.js/issues/62218) - add turbo.resolveExtensions to allow to customize extensions: [#&#8203;62004](https://github.com/vercel/next.js/issues/62004) - fix(turbopack): catchall route matching: [#&#8203;62114](https://github.com/vercel/next.js/issues/62114) - fix: clarify Dynamic API calls in wrong context: [#&#8203;62143](https://github.com/vercel/next.js/issues/62143) - refactor(turbopack): wrap manifest loading in helper class: [#&#8203;62118](https://github.com/vercel/next.js/issues/62118) - refactor(turbopack): resolve routes by page name instead of pathname: [#&#8203;61778](https://github.com/vercel/next.js/issues/61778) - Ensure handleRouteType does not throw in production builds: [#&#8203;62234](https://github.com/vercel/next.js/issues/62234) - fix: set swr delta: [#&#8203;61330](https://github.com/vercel/next.js/issues/61330) - Fix type error in build.ts: [#&#8203;62253](https://github.com/vercel/next.js/issues/62253) - fix(next): `terser-webpack-plugin` path in `taskfile.js` is missing 'src': [#&#8203;62229](https://github.com/vercel/next.js/issues/62229) - Update `swc_core` to `v0.90.10`: [#&#8203;62222](https://github.com/vercel/next.js/issues/62222) - Add test log prefix for otel: [#&#8203;62258](https://github.com/vercel/next.js/issues/62258) - Update turbopack: [#&#8203;62263](https://github.com/vercel/next.js/issues/62263) - feat(cli): show available memory/CPU cores in `next info`: [#&#8203;62249](https://github.com/vercel/next.js/issues/62249) - fix(turbopack): print missing slots in debug message: [#&#8203;62280](https://github.com/vercel/next.js/issues/62280) - Tree shake the unused exports in direct relative imported client component module: [#&#8203;62238](https://github.com/vercel/next.js/issues/62238) - Verify correctness of externals: [#&#8203;62235](https://github.com/vercel/next.js/issues/62235) - Renew prefetch cache entry after update from server: [#&#8203;61573](https://github.com/vercel/next.js/issues/61573) - fix(next-core): fix aliased free var for edge runtime: [#&#8203;62289](https://github.com/vercel/next.js/issues/62289) - update turbopack: [#&#8203;62285](https://github.com/vercel/next.js/issues/62285) - Allow fetch to propagate arbitrary init options: [#&#8203;62168](https://github.com/vercel/next.js/issues/62168) - Add flag for early import app router modules: [#&#8203;61168](https://github.com/vercel/next.js/issues/61168) - Add otel span for client component loading: [#&#8203;62296](https://github.com/vercel/next.js/issues/62296) - Fix perf spans: [#&#8203;62306](https://github.com/vercel/next.js/issues/62306) - fix(next-core): properly normalize app route for \_: [#&#8203;62307](https://github.com/vercel/next.js/issues/62307) - fix(next-font): update capsize css so fallbacks are updated with the …: [#&#8203;62309](https://github.com/vercel/next.js/issues/62309) - Fix draft mode invariant: [#&#8203;62121](https://github.com/vercel/next.js/issues/62121) - Revert "Update split chunk handling for edge/node": [#&#8203;62313](https://github.com/vercel/next.js/issues/62313) - Turbopack: reduce tasks needed for emitting: [#&#8203;62291](https://github.com/vercel/next.js/issues/62291) - Turbopack: add SSR category to tracing: [#&#8203;62318](https://github.com/vercel/next.js/issues/62318) - fix(error-overlay): correct module grouping: [#&#8203;62206](https://github.com/vercel/next.js/issues/62206) - Revert "Turbopack: reduce tasks needed for emitting": [#&#8203;62324](https://github.com/vercel/next.js/issues/62324) - feat(error-overlay): hide `<unknown>`/`stringify` methods in `<anonymous>` file from stack: [#&#8203;62325](https://github.com/vercel/next.js/issues/62325) - eslint-config-next: allow typescript eslint v7: [#&#8203;62137](https://github.com/vercel/next.js/issues/62137) - Revert "Revert "Update split chunk handling for edge/node" ([#&#8203;62313](https://github.com/vercel/next.js/issues/62313))": [#&#8203;62336](https://github.com/vercel/next.js/issues/62336) - Revert "Ensure webpack build worker defaults on": [#&#8203;62342](https://github.com/vercel/next.js/issues/62342) - avoid loading the page loader chunk on initial page load: [#&#8203;62269](https://github.com/vercel/next.js/issues/62269) - output filesystem without watching: [#&#8203;62340](https://github.com/vercel/next.js/issues/62340) - Turbopack: limit build concurrency, show progress bar: [#&#8203;62319](https://github.com/vercel/next.js/issues/62319) - Update data cache max size error: [#&#8203;62348](https://github.com/vercel/next.js/issues/62348) - Add experimental flag for early exit on prerender error: [#&#8203;62367](https://github.com/vercel/next.js/issues/62367) - fix(next-swc): Fix span for invalid `'use server'` directives: [#&#8203;62259](https://github.com/vercel/next.js/issues/62259) - scope issues from subscriptions to the websocket connection: [#&#8203;62344](https://github.com/vercel/next.js/issues/62344) - Turbopack: resolve endpoints to avoid extra nesting in tracing: [#&#8203;62317](https://github.com/vercel/next.js/issues/62317) - fix(next-lint): fix next lint not throwing exit 1 on error: [#&#8203;62378](https://github.com/vercel/next.js/issues/62378) - Remove default fallback behavior when route group is missing a default: [#&#8203;62370](https://github.com/vercel/next.js/issues/62370) - Correctly pass prependData and additionalData to sass-loader for Turbopack: [#&#8203;62397](https://github.com/vercel/next.js/issues/62397) - chore(docs): mention that `next.config.js` must have default export: [#&#8203;62341](https://github.com/vercel/next.js/issues/62341) - chore(cli): add clarifying comment: [#&#8203;62418](https://github.com/vercel/next.js/issues/62418) - OTEL: Add top span for middleware: [#&#8203;62421](https://github.com/vercel/next.js/issues/62421) - Turbopack react-refresh: perform full reload on runtime error: [#&#8203;62359](https://github.com/vercel/next.js/issues/62359) - Simplify node/edge server chunking some: [#&#8203;62424](https://github.com/vercel/next.js/issues/62424) - update `configSchema.ts` with `experimental#useEarlyImport`: [#&#8203;62408](https://github.com/vercel/next.js/issues/62408) - Fix module-level Server Action creation with closure-closed values: [#&#8203;62437](https://github.com/vercel/next.js/issues/62437) - Upgrade vendored react: [#&#8203;62326](https://github.com/vercel/next.js/issues/62326) - Turbopack: reduce memory usage: [#&#8203;62432](https://github.com/vercel/next.js/issues/62432) - Fixed typo.: [#&#8203;62440](https://github.com/vercel/next.js/issues/62440) - fix(turbopack): deal with eventual consistency in get_directory_tree: [#&#8203;62444](https://github.com/vercel/next.js/issues/62444) - Telemetry: ensure the ClientComponentLoad metric is only reported when available: [#&#8203;62459](https://github.com/vercel/next.js/issues/62459) - \[turbopack] update edge alias: [#&#8203;62461](https://github.com/vercel/next.js/issues/62461) - Rename currentIssues to currentEntryIssues: [#&#8203;62524](https://github.com/vercel/next.js/issues/62524) - update turbopack: [#&#8203;62523](https://github.com/vercel/next.js/issues/62523) - add plugin to avoid too many css requests: [#&#8203;62530](https://github.com/vercel/next.js/issues/62530) - feat(error-overlay): hide Node.js internals: [#&#8203;62532](https://github.com/vercel/next.js/issues/62532) - Create react server condition alias for next/navigation api: [#&#8203;62456](https://github.com/vercel/next.js/issues/62456) - Add IssueKey type: [#&#8203;62526](https://github.com/vercel/next.js/issues/62526) - OTEL: Ensure that RSC:1 requests get the next.route attr: [#&#8203;62464](https://github.com/vercel/next.js/issues/62464) - Display only one hydration error when there's few in error overlay: [#&#8203;62448](https://github.com/vercel/next.js/issues/62448) - Upgrade vendored react: [#&#8203;62549](https://github.com/vercel/next.js/issues/62549) - Improve TS plugin options: [#&#8203;62438](https://github.com/vercel/next.js/issues/62438) - Revert "fix(build-output): show stack during CSR bailout warning": [#&#8203;62592](https://github.com/vercel/next.js/issues/62592) - Improve redirection handling: [#&#8203;62561](https://github.com/vercel/next.js/issues/62561) - fix router crash on revalidate + popstate: [#&#8203;62383](https://github.com/vercel/next.js/issues/62383) - fix: improve error when starting `next` without building: [#&#8203;62404](https://github.com/vercel/next.js/issues/62404) - feat(turbopack): Sort issues: [#&#8203;62566](https://github.com/vercel/next.js/issues/62566) - refactor createInfinitePromise to be re-used unresolveable thenable: [#&#8203;62595](https://github.com/vercel/next.js/issues/62595) - fix(build-output): show stack during CSR bailout warning: [#&#8203;62594](https://github.com/vercel/next.js/issues/62594) - Fix redirect under suspense boundary with basePath: [#&#8203;62597](https://github.com/vercel/next.js/issues/62597) - Ensure dynamic routes dont match \_next/static unexpectedly: [#&#8203;62559](https://github.com/vercel/next.js/issues/62559) - Fix metadata json manifest convention: [#&#8203;62615](https://github.com/vercel/next.js/issues/62615) - Migrate locale redirect handling to router-server: [#&#8203;62606](https://github.com/vercel/next.js/issues/62606) - fix(next-swc): Provide tokio context required for WASM plugins: [#&#8203;62441](https://github.com/vercel/next.js/issues/62441) - Update `swc_core` to `v0.90.12`: [#&#8203;62518](https://github.com/vercel/next.js/issues/62518) - Update Turbopack: [#&#8203;62632](https://github.com/vercel/next.js/issues/62632) - Fix instrumentation with only pages: [#&#8203;62622](https://github.com/vercel/next.js/issues/62622) - Fix: generateSitemaps in production giving 404: [#&#8203;62212](https://github.com/vercel/next.js/issues/62212) - Refactor flight-manifest-plugin to use compilation.entrypoints directly: [#&#8203;62636](https://github.com/vercel/next.js/issues/62636) - Fix Router Error Events in Shallow Routing by Skipping cancelHandler Creation: [#&#8203;61771](https://github.com/vercel/next.js/issues/61771) - DX: display highlited pesudo html when bad nesting html error occurred: [#&#8203;62590](https://github.com/vercel/next.js/issues/62590) - build(cargo): remove unused features: [#&#8203;62616](https://github.com/vercel/next.js/issues/62616) - feat(next-swc): lightningcss binding: [#&#8203;62604](https://github.com/vercel/next.js/issues/62604) - fix: Enable SearchParams to be displayed after redirect in Server Action: [#&#8203;62582](https://github.com/vercel/next.js/issues/62582) - fix(navigation): allow `useSelectedLayoutSegment(s)` in Pages Router: [#&#8203;62584](https://github.com/vercel/next.js/issues/62584) - Consistently use /\_not-found for not found page in App Router: [#&#8203;62679](https://github.com/vercel/next.js/issues/62679) - Add experimental config for navigation raf test: [#&#8203;62668](https://github.com/vercel/next.js/issues/62668) - Turbopack: remove unused code: [#&#8203;62690](https://github.com/vercel/next.js/issues/62690) - Revert "Ensure dynamic routes dont match \_next/static unexpectedly": [#&#8203;62691](https://github.com/vercel/next.js/issues/62691) - fix(turbopack): don't emit issues for deleted pages: [#&#8203;62012](https://github.com/vercel/next.js/issues/62012) - perf: don't emit issues via websocket for now: [#&#8203;59024](https://github.com/vercel/next.js/issues/59024) - add native css nesting support: [#&#8203;62644](https://github.com/vercel/next.js/issues/62644) - refactor(next-swc): remove unused features: [#&#8203;62696](https://github.com/vercel/next.js/issues/62696) - Upgrade mini-css-extract-plugin: [#&#8203;62698](https://github.com/vercel/next.js/issues/62698) - Update precompiled for mini-css-extract-plugin: [#&#8203;62699](https://github.com/vercel/next.js/issues/62699) - feat: display text diff for text mismatch hydration errors: [#&#8203;62684](https://github.com/vercel/next.js/issues/62684) - Fix lint check: [#&#8203;62702](https://github.com/vercel/next.js/issues/62702) - chore: remove unused helper: [#&#8203;62701](https://github.com/vercel/next.js/issues/62701) - Add param to debug PPR skeleton in dev: [#&#8203;62703](https://github.com/vercel/next.js/issues/62703) - Update font data: [#&#8203;62704](https://github.com/vercel/next.js/issues/62704) - Turbopack: remove node_modules error filter: [#&#8203;62586](https://github.com/vercel/next.js/issues/62586) - fix(error-overlay): improve a11y, minor refactors: [#&#8203;62723](https://github.com/vercel/next.js/issues/62723) - Handle top level errors coming from Turbopack entrypoints subscription: [#&#8203;62528](https://github.com/vercel/next.js/issues/62528) - Add compiler error for conflicting App Router and Pages Router in Turbopack: [#&#8203;62531](https://github.com/vercel/next.js/issues/62531) - fix dev overlay pseudo html collapsing: [#&#8203;62728](https://github.com/vercel/next.js/issues/62728) - Route static render error message: remove duplicate word: [#&#8203;62738](https://github.com/vercel/next.js/issues/62738) - Update version from backport: [#&#8203;62745](https://github.com/vercel/next.js/issues/62745) - Add a flag to disable `MergeCssChunksPlugin`: [#&#8203;62746](https://github.com/vercel/next.js/issues/62746) - refactor(cli): refactor cli to commander: [#&#8203;61877](https://github.com/vercel/next.js/issues/61877) - Turbopack: Trace server app render errors through source maps: [#&#8203;62611](https://github.com/vercel/next.js/issues/62611) - build(cargo): update turbopack: [#&#8203;62744](https://github.com/vercel/next.js/issues/62744) - Turbopack: sass support: [#&#8203;62717](https://github.com/vercel/next.js/issues/62717) - refactor(analysis): rust based page-static-info, deprecate js parse interface in next-swc: [#&#8203;61832](https://github.com/vercel/next.js/issues/61832) - fix: Add stricter check for "use server" exports: [#&#8203;62821](https://github.com/vercel/next.js/issues/62821) - fix(next-core): throw on invalid metadata handler: [#&#8203;62829](https://github.com/vercel/next.js/issues/62829) - Revert "Add experimental config for navigation raf test ([#&#8203;62668](https://github.com/vercel/next.js/issues/62668))": [#&#8203;62834](https://github.com/vercel/next.js/issues/62834) - Revert "refactor(analysis): rust based page-static-info, deprecate js parse interface in next-swc": [#&#8203;62838](https://github.com/vercel/next.js/issues/62838) - remove reducer unit tests: [#&#8203;62766](https://github.com/vercel/next.js/issues/62766) - fix(next-lint): do not pass absolute path to distDir: [#&#8203;62797](https://github.com/vercel/next.js/issues/62797) - Update to latest version: [#&#8203;62850](https://github.com/vercel/next.js/issues/62850) - fix "setBlocking is not a function" errors on StackBlitz: [#&#8203;62843](https://github.com/vercel/next.js/issues/62843) - Remove extra logic of Server Reference check for registering twice: [#&#8203;62486](https://github.com/vercel/next.js/issues/62486) - Update readme of [@&#8203;next/bundle-analyzer](https://github.com/next/bundle-analyzer) package: [#&#8203;62804](https://github.com/vercel/next.js/issues/62804) - Don't emit crossorigin attributes for `output: "export"` by default: [#&#8203;61211](https://github.com/vercel/next.js/issues/61211) - apply some transforms on foreign code too: [#&#8203;62827](https://github.com/vercel/next.js/issues/62827) - update turbopack: [#&#8203;62884](https://github.com/vercel/next.js/issues/62884) - refactor: rename isAppDirEnabled to hasAppDir: [#&#8203;62837](https://github.com/vercel/next.js/issues/62837) - bump [@&#8203;edge-runtime/cookies](https://github.com/edge-runtime/cookies) for Partitioned cookie support: [#&#8203;62889](https://github.com/vercel/next.js/issues/62889) - refactor(next): fix spacing on auto-generated root layout: [#&#8203;62769](https://github.com/vercel/next.js/issues/62769) - fix(cli): fix allowRetry when using port 3000: [#&#8203;62840](https://github.com/vercel/next.js/issues/62840) - Fix: missing crossorigin property on manifest link: [#&#8203;62873](https://github.com/vercel/next.js/issues/62873) - Turbopack: Trace edge runtime app render errors through source maps: [#&#8203;62901](https://github.com/vercel/next.js/issues/62901) - fix merge css plugin to account for css order: [#&#8203;62927](https://github.com/vercel/next.js/issues/62927) - fix(next-api): correct font manifest generation: [#&#8203;62916](https://github.com/vercel/next.js/issues/62916) - feat(error-overlay): notify about missing `html`/`body` in root layout: [#&#8203;62815](https://github.com/vercel/next.js/issues/62815) - fix graph update: [#&#8203;62933](https://github.com/vercel/next.js/issues/62933) - refactor(error-overlay): improve server code for webpack/Turbopack middleware: [#&#8203;62396](https://github.com/vercel/next.js/issues/62396) - feat(error-overlay): version staleness in Pages Router: [#&#8203;62942](https://github.com/vercel/next.js/issues/62942) - feat: Introduce lightningcss-loader for webpack users: [#&#8203;61327](https://github.com/vercel/next.js/issues/61327) - feat(eslint): enhance `no-unwanted-polyfill` w/ new endpoints: [#&#8203;62719](https://github.com/vercel/next.js/issues/62719) - simplify `streamToString` method from `node-web-streams.helper.ts`: [#&#8203;62841](https://github.com/vercel/next.js/issues/62841) - Allow ppr only flag in test mode: [#&#8203;62911](https://github.com/vercel/next.js/issues/62911) - Upgrade to latest [@&#8203;edge-runtime](https://github.com/edge-runtime) packages: [#&#8203;62955](https://github.com/vercel/next.js/issues/62955) - chore(next-font): update [@&#8203;capsize/metrics](https://github.com/capsize/metrics) package to the latest: [#&#8203;62896](https://github.com/vercel/next.js/issues/62896) - Remove Payload from server-external-packages.json: [#&#8203;62965](https://github.com/vercel/next.js/issues/62965) - Pass whole prefetch entry rather than status property: [#&#8203;62345](https://github.com/vercel/next.js/issues/62345) - build: Update `swc_core` to `v0.90.17`: [#&#8203;62924](https://github.com/vercel/next.js/issues/62924) - refactor(ts): type `fastRefresh`: [#&#8203;62848](https://github.com/vercel/next.js/issues/62848) - \[error overlay] move missing tags error inside error overlay: [#&#8203;62993](https://github.com/vercel/next.js/issues/62993) - Update turbopack: [#&#8203;62971](https://github.com/vercel/next.js/issues/62971) - fix(next-core): honor basepath for the metadata property: [#&#8203;62846](https://github.com/vercel/next.js/issues/62846) - fix(next-core): do not apply ecma transforms for custom js rules: [#&#8203;62831](https://github.com/vercel/next.js/issues/62831) - feat(next): fallback lightning if swc/wasm loaded: [#&#8203;62952](https://github.com/vercel/next.js/issues/62952) - Fix the plugin state for async modules in webpack plugins: [#&#8203;62998](https://github.com/vercel/next.js/issues/62998) - Turbopack + pages router: recover from runtime errors by reloading: [#&#8203;63024](https://github.com/vercel/next.js/issues/63024) - Enable minification for Turbopack: [#&#8203;62994](https://github.com/vercel/next.js/issues/62994) - app layouts/pages depend on shared main files: [#&#8203;63042](https://github.com/vercel/next.js/issues/63042) - DX: add route context to dynamic errors for app routes: [#&#8203;62844](https://github.com/vercel/next.js/issues/62844) - Fix metadata url cases should not append with trailing slash: [#&#8203;63050](https://github.com/vercel/next.js/issues/63050) - Turbopack: Decode module component when tracing stack frames: [#&#8203;63070](https://github.com/vercel/next.js/issues/63070) - build(cargo): bump up turbopack: [#&#8203;63073](https://github.com/vercel/next.js/issues/63073) - OTEL: add next.rsc attribute for RSC requests: [#&#8203;63074](https://github.com/vercel/next.js/issues/63074) - Correctly deserialize `undefined` unstable_cache data: [#&#8203;59126](https://github.com/vercel/next.js/issues/59126) - refactor(error-overlay): unify Pages/App router error overlay source: [#&#8203;62939](https://github.com/vercel/next.js/issues/62939) - feat(turbopack): Enable `lightningcss` for turbopack by default: [#&#8203;62565](https://github.com/vercel/next.js/issues/62565) - ignore fully dynamic requests on server side: [#&#8203;62949](https://github.com/vercel/next.js/issues/62949) - Refactor define-env-plugin to have stricter types: [#&#8203;63128](https://github.com/vercel/next.js/issues/63128) - \[PPR] Support rewrites in middleware: [#&#8203;63071](https://github.com/vercel/next.js/issues/63071) - Fix webpack HMR for pages on the edge runtime: [#&#8203;60881](https://github.com/vercel/next.js/issues/60881) - fix typo in server/config.ts: [#&#8203;62795](https://github.com/vercel/next.js/issues/62795) - ensure mpa navigations to the same URL work after restoring from bfcache: [#&#8203;63155](https://github.com/vercel/next.js/issues/63155) - Ensure PromiseLikeOfReactNode is not included in .d.ts files: [#&#8203;63185](https://github.com/vercel/next.js/issues/63185) - Ensure undefined values end up being replaced: [#&#8203;63138](https://github.com/vercel/next.js/issues/63138) - fix: x-forwarded-port header is 'undefined' when no port in url: [#&#8203;60484](https://github.com/vercel/next.js/issues/60484) - Fix generateMetadata race condition: [#&#8203;63169](https://github.com/vercel/next.js/issues/63169) - feat(next-core): apply invalid import assertion on the remaining contexts: [#&#8203;63146](https://github.com/vercel/next.js/issues/63146) - build(cargo): bump up turbopack: [#&#8203;63205](https://github.com/vercel/next.js/issues/63205) - add support for assets in edge: [#&#8203;63209](https://github.com/vercel/next.js/issues/63209) - fix: Loose Server Actions runtime check: [#&#8203;63200](https://github.com/vercel/next.js/issues/63200) - fix(log): improve error when dynamic code eval is disallowed: [#&#8203;62999](https://github.com/vercel/next.js/issues/62999) - fix(error-overlay): strip line+column from webpack internal frames: [#&#8203;63133](https://github.com/vercel/next.js/issues/63133) - fix revalidation issue with route handlers: [#&#8203;63213](https://github.com/vercel/next.js/issues/63213) - fix(error-overlay): show Turbopack indicator for any staleness level: [#&#8203;63130](https://github.com/vercel/next.js/issues/63130) - fix: re-export internal path: [#&#8203;63222](https://github.com/vercel/next.js/issues/63222) - build: Update turbopack: [#&#8203;63229](https://github.com/vercel/next.js/issues/63229) - make CacheNode properties non-optional: [#&#8203;63219](https://github.com/vercel/next.js/issues/63219) - Implement new runtime_type for Turbopack: [#&#8203;63212](https://github.com/vercel/next.js/issues/63212) - Use SWC to valid client next/navigation hooks usage in server components: [#&#8203;63160](https://github.com/vercel/next.js/issues/63160) - chore: Update `swc_core` to `v0.90.21`: [#&#8203;63031](https://github.com/vercel/next.js/issues/63031) - fix(turbopack): Do not report hmr timing twice: [#&#8203;63227](https://github.com/vercel/next.js/issues/63227) - enable `optimizeServerReact` by default: [#&#8203;62658](https://github.com/vercel/next.js/issues/62658) - feat(turbopack): emit well known error into cli: [#&#8203;63218](https://github.com/vercel/next.js/issues/63218) - feat: add `deploymentId` config: [#&#8203;63198](https://github.com/vercel/next.js/issues/63198) - Fix middleware catch-all rewrite case: [#&#8203;63254](https://github.com/vercel/next.js/issues/63254) - fix(route-handlers): make sure preflight has CORS headers: [#&#8203;63264](https://github.com/vercel/next.js/issues/63264) - fix(turbopack): Remove error overlay when issue is resolved: [#&#8203;62983](https://github.com/vercel/next.js/issues/62983) - Disable cache in testmode: [#&#8203;63265](https://github.com/vercel/next.js/issues/63265) - Turbopack: app externals test case improvements: [#&#8203;62871](https://github.com/vercel/next.js/issues/62871) - build: Update turbopack: [#&#8203;63273](https://github.com/vercel/next.js/issues/63273) - fix: hydration error display for text under tag case: [#&#8203;63288](https://github.com/vercel/next.js/issues/63288) - Fix URL displayed in Server Action `bodysizelimit` error: [#&#8203;63295](https://github.com/vercel/next.js/issues/63295) - Store loading data in CacheNode: [#&#8203;62346](https://github.com/vercel/next.js/issues/62346) - fix(turbopack): Remove error overlay when `pages/_app` is fixed: [#&#8203;63306](https://github.com/vercel/next.js/issues/63306) - Ensure changes in optimizePackageImports invalidate webpack cache: [#&#8203;63284](https://github.com/vercel/next.js/issues/63284) - Polish the display color styles for component diff: [#&#8203;63342](https://github.com/vercel/next.js/issues/63342) - Turbopack HMR: Log when more errors cause full page reload: [#&#8203;63220](https://github.com/vercel/next.js/issues/63220) - Fixes typo in Route handler static generation error handling: [#&#8203;63345](https://github.com/vercel/next.js/issues/63345) - Add JSM (ESM) support for next/lib/find-config: [#&#8203;63109](https://github.com/vercel/next.js/issues/63109) - fix(error-overlay): matching html tag with brackets in hydration error: [#&#8203;63365](https://github.com/vercel/next.js/issues/63365) - add conditions for webpack loader rules: [#&#8203;63333](https://github.com/vercel/next.js/issues/63333) - fix transform of files ending with d: [#&#8203;63367](https://github.com/vercel/next.js/issues/63367) - Use correct protocol and hostname for internal redirections in Server Actions: [#&#8203;63389](https://github.com/vercel/next.js/issues/63389) - bug: Fields truncated when submitting form using Server Actions: [#&#8203;59877](https://github.com/vercel/next.js/issues/59877) - New CSS chunking algorithm: [#&#8203;63157](https://github.com/vercel/next.js/issues/63157) - Ensure all metadata files have missing default export errors in Turbopack: [#&#8203;63399](https://github.com/vercel/next.js/issues/63399) - Code refactor: [#&#8203;63391](https://github.com/vercel/next.js/issues/63391) - feat(error-overlay): handle script under html hydration error: [#&#8203;63403](https://github.com/vercel/next.js/issues/63403) - Add Bun lockfile to project root resolving heuristic: [#&#8203;63112](https://github.com/vercel/next.js/issues/63112) - build(package): pin typescript-eslint/parser for supported node.js: [#&#8203;63424](https://github.com/vercel/next.js/issues/63424) - fix(next-core): carry over original segment config to metadata route: [#&#8203;63419](https://github.com/vercel/next.js/issues/63419) - fix `x-forwarded-port` header: [#&#8203;63303](https://github.com/vercel/next.js/issues/63303) - build(cargo): bump up turbopack: [#&#8203;63429](https://github.com/vercel/next.js/issues/63429) - Turbopack HMR: Reload when recovering from server-side errors: [#&#8203;63434](https://github.com/vercel/next.js/issues/63434) - Eliminate unnecessary decode operations in `node-web-streams-helpers.ts`: [#&#8203;63427](https://github.com/vercel/next.js/issues/63427) - Update React from [`6c3b8db`](https://github.com/vercel/next.js/commit/6c3b8dbfe) to [`14898b6`](https://github.com/vercel/next.js/commit/14898b6a9): [#&#8203;63439](https://github.com/vercel/next.js/issues/63439) - chore(next/font): update [@&#8203;capsizecss/metrics](https://github.com/capsizecss/metrics) package to the latest: [#&#8203;63440](https://github.com/vercel/next.js/issues/63440) - update turbopack: [#&#8203;63475](https://github.com/vercel/next.js/issues/63475) - Fix instant loading states after invalidating prefetch cache: [#&#8203;63256](https://github.com/vercel/next.js/issues/63256) - Update tags limit handling for max items: [#&#8203;63486](https://github.com/vercel/next.js/issues/63486) - feat(next-core): support unsupported module runtime error: [#&#8203;63491](https://github.com/vercel/next.js/issues/63491) - Update RSC etag generation handling: [#&#8203;63336](https://github.com/vercel/next.js/issues/63336) - Simplify `createRootLayoutValidatorStream`: [#&#8203;63484](https://github.com/vercel/next.js/issues/63484) - Fix interception/detail routes being triggered by router refreshes: [#&#8203;63263](https://github.com/vercel/next.js/issues/63263) - route/middleware/instrumentation use server assets instead of client assets: [#&#8203;62134](https://github.com/vercel/next.js/issues/62134) - feat: add support for localizations in sitemap generator: [#&#8203;53765](https://github.com/vercel/next.js/issues/53765) - Turbopack: Fail when module type is unhandled: [#&#8203;63535](https://github.com/vercel/next.js/issues/63535) - feat(custom-transform): middleware dynamic assert transform: [#&#8203;63538](https://github.com/vercel/next.js/issues/63538) - fix: call instrumentationHook earlier for prod server: [#&#8203;63536](https://github.com/vercel/next.js/issues/63536) - Revert "feat(next-core): support unsupported module runtime error ([#&#8203;63491](https://github.com/vercel/next.js/issues/63491))": [#&#8203;63575](https://github.com/vercel/next.js/issues/63575) - Upgrades enhanced-resolve: [#&#8203;63499](https://github.com/vercel/next.js/issues/63499) - Improve experimental test proxy: [#&#8203;63567](https://github.com/vercel/next.js/issues/63567) - Remove the erroring on force-dynamic in static generation for app route: [#&#8203;63526](https://github.com/vercel/next.js/issues/63526) - the argument might be written with underscores: [#&#8203;63600](https://github.com/vercel/next.js/issues/63600) - Remove lodash from external packages list: [#&#8203;63601](https://github.com/vercel/next.js/issues/63601) - upgrade [@&#8203;edge-runtime/cookies](https://github.com/edge-runtime/cookies): [#&#8203;63602](https://github.com/vercel/next.js/issues/63602) - Add alias for react-dom react-server condition: [#&#8203;63588](https://github.com/vercel/next.js/issues/63588) - Revert "Revert "feat(next-core): support unsupported module runtime error ([#&#8203;63491](https://github.com/vercel/next.js/issues/63491))"": [#&#8203;63609](https://github.com/vercel/next.js/issues/63609) - Enable all pages under the browser context to proxy to the test proxy: [#&#8203;63610](https://github.com/vercel/next.js/issues/63610) - fix(next-core): refine context for unsupported edge imports: [#&#8203;63622](https://github.com/vercel/next.js/issues/63622) - Update turbopack: [#&#8203;63541](https://github.com/vercel/next.js/issues/63541) - Fix RSC react-dom aliases for edge: [#&#8203;63619](https://github.com/vercel/next.js/issues/63619) - Move Playwright to be a peerDependency of next.js: [#&#8203;63530](https://github.com/vercel/next.js/issues/63530) - fix(dev-overlay): align codeframe to formatIssue: [#&#8203;63624](https://github.com/vercel/next.js/issues/63624) - Improve TypeScript plugin for server boundary: [#&#8203;63667](https://github.com/vercel/next.js/issues/63667) - perf: conditionally import Telemetry: [#&#8203;63574](https://github.com/vercel/next.js/issues/63574) - feat(error-overlay): style tweaks: [#&#8203;63522](https://github.com/vercel/next.js/issues/63522) - Auto map optimizePackageImports to transpilePackages for pages: [#&#8203;63537](https://github.com/vercel/next.js/issues/63537) - Add Next.js version to process title: [#&#8203;63686](https://github.com/vercel/next.js/issues/63686) - generate the same next/font modules for the same options: [#&#8203;63513](https://github.com/vercel/next.js/issues/63513) - feat(log): improve dev/build logs: [#&#8203;62946](https://github.com/vercel/next.js/issues/62946) - Update font data: [#&#8203;63691](https://github.com/vercel/next.js/issues/63691) - Polish dev-overlay text styling: [#&#8203;63721](https://github.com/vercel/next.js/issues/63721) - \[PPR] Dynamic API Debugging: [#&#8203;61798](https://github.com/vercel/next.js/issues/61798) - Rename encryption key generation code: [#&#8203;63730](https://github.com/vercel/next.js/issues/63730) - ensure null loading boundaries still render a Suspense boundary: [#&#8203;63726](https://github.com/vercel/next.js/issues/63726) - perf: download and save mkcert in stream: [#&#8203;63527](https://github.com/vercel/next.js/issues/63527) - prevent router markers from leaking: [#&#8203;63606](https://github.com/vercel/next.js/issues/63606) - Turbopack: fix allocation inefficiency: [#&#8203;63738](https://github.com/vercel/next.js/issues/63738) - Fix ServerAction rejection reason: [#&#8203;63744](https://github.com/vercel/next.js/issues/63744) - Respect non 200 status to page static generation response: [#&#8203;63731](https://github.com/vercel/next.js/issues/63731) - Turbopack: parallelize app structure: [#&#8203;63707](https://github.com/vercel/next.js/issues/63707) - fixes to next.js tracing: [#&#8203;63673](https://github.com/vercel/next.js/issues/63673) - fext(next-core): inherit root layout segment config for the routes: [#&#8203;63683](https://github.com/vercel/next.js/issues/63683) - add tracing to server actions transform: [#&#8203;63773](https://github.com/vercel/next.js/issues/63773) - remove left-over debugging: [#&#8203;63774](https://github.com/vercel/next.js/issues/63774) - update turbopack: [#&#8203;63778](https://github.com/vercel/next.js/issues/63778) - fix revalidation/refresh behavior with parallel routes: [#&#8203;63607](https://github.com/vercel/next.js/issues/63607) - fix router revalidation behavior for dynamic interception routes: [#&#8203;63768](https://github.com/vercel/next.js/issues/63768) - feat(custom-transforms): partial page-static-info visitors: [#&#8203;63741](https://github.com/vercel/next.js/issues/63741) - Ensure Webpack config shows a warning when using Turbopack: [#&#8203;63822](https://github.com/vercel/next.js/issues/63822) - feat(turbopack): emit warning into logger: [#&#8203;63780](https://github.com/vercel/next.js/issues/63780) - feat(custom-transform): more static info warning: [#&#8203;63837](https://github.com/vercel/next.js/issues/63837) - skip HEAD request in server action redirect: [#&#8203;63819](https://github.com/vercel/next.js/issues/63819) - OTEL: use the current context when creating a root span: [#&#8203;63825](https://github.com/vercel/next.js/issues/63825) - Turbopack: Fail when `next/font` is used in `_document`: [#&#8203;63788](https://github.com/vercel/next.js/issues/63788) - Move key generation to the earlier stage: [#&#8203;63832](https://github.com/vercel/next.js/issues/63832) - fix double redirect when using a loading boundary: [#&#8203;63786](https://github.com/vercel/next.js/issues/63786) - fix: default relative canonical url should not contain search: [#&#8203;63843](https://github.com/vercel/next.js/issues/63843) - fix(next-typescript-plugin): allow call expression for server actions: [#&#8203;63748](https://github.com/vercel/next.js/issues/63748) - fix: avoid metadata viewport warning during manually merging metadata: [#&#8203;63845](https://github.com/vercel/next.js/issues/63845) - feat(next-core): set nextconfigoutput correctly: [#&#8203;63848](https://github.com/vercel/next.js/issues/63848) - Ensure we dedupe fetch requests properly during page revalidate: [#&#8203;63849](https://github.com/vercel/next.js/issues/63849) - feat(next-swc): Pass names of side-effect-free packages: [#&#8203;63268](https://github.com/vercel/next.js/issues/63268) - fix(turbopack): loosen warning log guards: [#&#8203;63880](https://github.com/vercel/next.js/issues/63880) - fix: skip checking rewrites with an empty has array in isInterceptionRouteRewrite: [#&#8203;63873](https://github.com/vercel/next.js/issues/63873) - fix: bundle fetching with asset prefix: [#&#8203;63627](https://github.com/vercel/next.js/issues/63627) - fix logic error in parallel route catch-all normalization: [#&#8203;63879](https://github.com/vercel/next.js/issues/63879) - ensure custom amp validator path is used if provided: [#&#8203;63940](https://github.com/vercel/next.js/issues/63940) - chore: remove useless any: [#&#8203;63910](https://github.com/vercel/next.js/issues/63910) - Update hover behaviour note in Link JSDoc comment: [#&#8203;60525](https://github.com/vercel/next.js/issues/60525) - fix: pass `nonce` to `next/script` with `afterInteractive` strategy: [#&#8203;56995](https://github.com/vercel/next.js/issues/56995) - add experimental client router cache config: [#&#8203;62856](https://github.com/vercel/next.js/issues/62856) - add telemetry events for ppr & staleTimes experimental flags: [#&#8203;63981](https://github.com/vercel/next.js/issues/63981) - fix server actions not bypassing prerender cache in all cases when deployed: [#&#8203;63978](https://github.com/vercel/next.js/issues/63978) - fix(next): `next build --debug` log output layout is broken: [#&#8203;63193](https://github.com/vercel/next.js/issues/63193) - Fix abort condition for requests: [#&#8203;64000](https://github.com/vercel/next.js/issues/64000) - fix(log): skip logging non-route requests: [#&#8203;63973](https://github.com/vercel/next.js/issues/63973) - Ensure unstable_cache bypasses for draft mode: [#&#8203;64007](https://github.com/vercel/next.js/issues/64007) - fix interception route refresh behavior with dynamic params: [#&#8203;64006](https://github.com/vercel/next.js/issues/64006) - fix(turbopack): throws api issues: [#&#8203;64032](https://github.com/vercel/next.js/issues/64032) - fix(turbopack): emit loadable manifest for app: [#&#8203;64046](https://github.com/vercel/next.js/issues/64046) - feat(turbopack): Print error message for `next/font` fetching failure: [#&#8203;64008](https://github.com/vercel/next.js/issues/64008) - Fix status code for /\_not-found route: [#&#8203;64058](https://github.com/vercel/next.js/issues/64058) - fix: fixes cookie override during redirection from server action: [#&#8203;61633](https://github.com/vercel/next.js/issues/61633) - Add flag for preloading all server chunks: [#&#8203;64084](https://github.com/vercel/next.js/issues/64084) - Update rust-toolchain to `nightly-2024-04-03`: [#&#8203;64048](https://github.com/vercel/next.js/issues/64048) - fix refreshing inactive segments that contained searchParams: [#&#8203;64086](https://github.com/vercel/next.js/issues/64086) - perf: improve next server static performance: [#&#8203;64098](https://github.com/vercel/next.js/issues/64098) - fix(log): tweak coloring: [#&#8203;64106](https://github.com/vercel/next.js/issues/64106) - Ensure static generation storage is accessed correctly: [#&#8203;64088](https://github.com/vercel/next.js/issues/64088) - Ensure empty config with Turbopack does not show webpack warning: [#&#8203;64109](https://github.com/vercel/next.js/issues/64109) - fix encoding for filenames containing `?` or `#`: [#&#8203;58293](https://github.com/vercel/next.js/issues/58293) - Rework experimental preload entries handling: [#&#8203;64125](https://github.com/vercel/next.js/issues/64125) - Fix [@&#8203;opentelemetry/api](https://github.com/opentelemetry/api) aliasing for webpack: [#&#8203;64085](https://github.com/vercel/next.js/issues/64085) - style(dev-overlay): refine the error message header styling: [#&#8203;63823](https://github.com/vercel/next.js/issues/63823) - hotfix(next):`next lint` installs `eslint@9` which includes breaking changes: [#&#8203;64141](https://github.com/vercel/next.js/issues/64141) - feat(turbopack): Align behavior for `link rel="preconnect"` with webpack mode: [#&#8203;64011](https://github.com/vercel/next.js/issues/64011) - feat: allow `module: Preserve` tsconfig option: [#&#8203;64110](https://github.com/vercel/next.js/issues/64110) - ensure seeded prefetch entry is renewed after expiry: [#&#8203;64175](https://github.com/vercel/next.js/issues/64175) - Fix hydration error higlight when tag matched multi times: [#&#8203;64133](https://github.com/vercel/next.js/issues/64133) - test(turbopack): Add -Wl,--warn-unresolved-symbols to next-swc-napi on Linux: [#&#8203;64049](https://github.com/vercel/next.js/issues/64049) - feat: Do not mangle `AbortSignal` to avoid breaking `node-fetch`: [#&#8203;58534](https://github.com/vercel/next.js/issues/58534) - Turbopack: prefer local opentelemetry version: [#&#8203;64206](https://github.com/vercel/next.js/issues/64206) - chore: externalize undici for bundling: [#&#8203;64209](https://github.com/vercel/next.js/issues/64209) - Add a mode to next build to make it easier to debug memory issues: [#&#8203;63869](https://github.com/vercel/next.js/issues/63869) - forward missing server actions to valid worker if one exists: [#&#8203;64227](https://github.com/vercel/next.js/issues/64227) - feat(next/image): add `overrideSrc` prop: [#&#8203;64221](https://github.com/vercel/next.js/issues/64221) - fix(fetch-cache): add check for updated tags when checking same cache key: [#&#8203;63547](https://github.com/vercel/next.js/issues/63547) - provide revalidateReason to getStaticProps: [#&#8203;64258](https://github.com/vercel/next.js/issues/64258) - chore(cli): fix the order `--experimental-debug-memory-usage` so it's alphabetical: [#&#8203;64264](https://github.com/vercel/next.js/issues/64264) - update turbopack: [#&#8203;64257](https://github.com/vercel/next.js/issues/64257) - chore: fix some typos: [#&#8203;64276](https://github.com/vercel/next.js/issues/64276) - Ensure configuration is checked for Turbopack build: [#&#8203;64247](https://github.com/vercel/next.js/issues/64247) - Update font data: [#&#8203;64277](https://github.com/vercel/next.js/issues/64277) - Fix css FOUC in dynamic component: [#&#8203;64294](https://github.com/vercel/next.js/issues/64294) - \[turbopack] Fix css FOUC in dynamic component: [#&#8203;64021](https://github.com/vercel/next.js/issues/64021) - fix: show the error message if `images.loaderFile` doesn't export a default function: [#&#8203;64036](https://github.com/vercel/next.js/issues/64036) ##### Documentation Changes - docs: Improve `useSearchParams` bailout error page: [#&#8203;60852](https://github.com/vercel/next.js/issues/60852) - docs: fix JS/TS code block: [#&#8203;60854](https://github.com/vercel/next.js/issues/60854) - Docs: Update parallel routes docs, add `default.js` pt 1.: [#&#8203;60806](https://github.com/vercel/next.js/issues/60806) - docs: another fix for code block: [#&#8203;60856](https://github.com/vercel/next.js/issues/60856) - correct description of `skipMiddlewareUrlNormalize` in advanced middleware flags: [#&#8203;60841](https://github.com/vercel/next.js/issues/60841) - Adds a link to CSP where it's first referenced in the headers docs: [#&#8203;60871](https://github.com/vercel/next.js/issues/60871) - Add documentation page on video optimization: [#&#8203;60574](https://github.com/vercel/next.js/issues/60574) - docs: small tweaks on video docs: [#&#8203;60902](https://github.com/vercel/next.js/issues/60902) - docs: small tweak to videos: [#&#8203;60904](https://github.com/vercel/next.js/issues/60904) - docs: clarify redirects behavior with pages router: [#&#8203;60610](https://github.com/vercel/next.js/issues/60610) - docs: mention missing optimized by default packages in `optimizePackageImports`: [#&#8203;60058](https://github.com/vercel/next.js/issues/60058) - Improves generateViewport documentation: [#&#8203;60396](https://github.com/vercel/next.js/issues/60396) - docs: streaming while self-hosting must disable buffering: [#&#8203;60943](https://github.com/vercel/next.js/issues/60943) - Update userScalable property in viewport object and user-scalable in meta tag: [#&#8203;60946](https://github.com/vercel/next.js/issues/60946) - docs: updated the getStaticProps function name: [#&#8203;60949](https://github.com/vercel/next.js/issues/60949) - update edge and nodejs runtime doc: [#&#8203;60801](https://github.com/vercel/next.js/issues/60801) - Docs: Add link to bloom filter example: [#&#8203;60987](https://github.com/vercel/next.js/issues/60987) - Update code example on 01-pages-and-layouts.mdx: [#&#8203;60963](https://github.com/vercel/next.js/issues/60963) - docs: clarify nginx buffering disable: [#&#8203;61010](https://github.com/vercel/next.js/issues/61010) - Docs: Share Redirecting docs with /pages: [#&#8203;61083](https://github.com/vercel/next.js/issues/61083) - Fix `<AppOnly>` typo in docs: [#&#8203;61103](https://github.com/vercel/next.js/issues/61103) - Docs: Correct JavaScript React Component File Extension to .jsx in '01-vitest.mdx': [#&#8203;61087](https://github.com/vercel/next.js/issues/61087) - Docs: Update wording on opting out of the Router Cache: [#&#8203;61123](https://github.com/vercel/next.js/issues/61123) - Fixed typo in docs: [#&#8203;61118](https://github.com/vercel/next.js/issues/61118) - Combine Pages/App authentication docs: [#&#8203;60848](https://github.com/vercel/next.js/issues/60848) - Docs: Add note about calling redirect after `try/catch`: [#&#8203;61138](https://github.com/vercel/next.js/issues/61138) - OpenTelemetry: update docs for new [@&#8203;vercel/otel](https://github.com/vercel/otel): [#&#8203;61044](https://github.com/vercel/next.js/issues/61044) - docs: fix Auth0 typo in authentication: [#&#8203;61171](https://github.com/vercel/next.js/issues/61171) - Update generate-sitemaps.mdx: [#&#8203;61167](https://github.com/vercel/next.js/issues/61167) - Add dot to regex chars in rewrites.mdx: [#&#8203;61095](https://github.com/vercel/next.js/issues/61095) - Refine revalidatePath `type` argument: [#&#8203;61159](https://github.com/vercel/next.js/issues/61159) - Docs: Add note about `revalidatePath` invalidating router cache: [#&#8203;61142](https://github.com/vercel/next.js/issues/61142) - Docs: Improve and add new parallel routes examples: [#&#8203;60981](https://github.com/vercel/next.js/issues/60981) - chore(docs): fix docs for static assets (`public`): [#&#8203;61225](https://github.com/vercel/next.js/issues/61225) - Docs: Adjust message about RootLayout: [#&#8203;61199](https://github.com/vercel/next.js/issues/61199) - docs: add Lucia auth: [#&#8203;61255](https://github.com/vercel/next.js/issues/61255) - Make server actions `maxDuration` timeout more clear in documentation: [#&#8203;60005](https://github.com/vercel/next.js/issues/60005) - docs(02-jest): fixes failing test in the tutorial: [#&#8203;61272](https://github.com/vercel/next.js/issues/61272) - docs: typo in page title: [#&#8203;61267](https://github.com/vercel/next.js/issues/61267) - Removed an extra braces and comma from doc (},): [#&#8203;61250](https://github.com/vercel/next.js/issues/61250) - Docs: Fix headings in Parallel Routes page: [#&#8203;61328](https://github.com/vercel/next.js/issues/61328) - OpenTelemetry: clarify Edge runtime support: [#&#8203;61338](https://github.com/vercel/next.js/issues/61338) - chore: update docs around redirect(): [#&#8203;61334](https://github.com/vercel/next.js/issues/61334) - add the middleware.ts API reference file convention: [#&#8203;61037](https://github.com/vercel/next.js/issues/61037) - Remove the regions option from the config section of the middleware file conventions doc: [#&#8203;61425](https://github.com/vercel/next.js/issues/61425) - Docs: Update migration wording for /pages: [#&#8203;61453](https://github.com/vercel/next.js/issues/61453) - Docs: Add `instrumentation.ts` API reference, improve instrumentation docs: [#&#8203;61403](https://github.com/vercel/next.js/issues/61403) - Docs: Document prefetch `null` for App Router: [#&#8203;61203](https://github.com/vercel/next.js/issues/61203) - Docs: Add note on `default.js` receiving params: [#&#8203;61454](https://github.com/vercel/next.js/issues/61454) - chore(docs): add `// @&#8203;ts-check` to `next.config.js` docs: [#&#8203;61543](https://github.com/vercel/next.js/issues/61543) - Update 03-linking-and-navigating.mdx: [#&#8203;61622](https://github.com/vercel/next.js/issues/61622) - chore(docs): add auto closing tag to <source>: [#&#8203;61546](https://github.com/vercel/next.js/issues/61546) - Docs: Add Kinde to authentication docs: [#&#8203;61460](https://github.com/vercel/next.js/issues/61460) - docs: update useParams examples and pages usage: [#&#8203;61595](https://github.com/vercel/next.js/issues/61595) - docs: update style9 to stylex: [#&#8203;61646](https://github.com/vercel/next.js/issues/61646) - Mobile Friendly Test was retired: [#&#8203;61647](https://github.com/vercel/next.js/issues/61647) - Fixed [#&#8203;61434](https://github.com/vercel/next.js/issues/61434) : Docs: Duplicated code snippets: [#&#8203;61446](https://github.com/vercel/next.js/issues/61446) - Add case-sensitive note for revalidateTag/revalidatePath: [#&#8203;61729](https://github.com/vercel/next.js/issues/61729) - fix: showing incorrect filename in example: [#&#8203;61736](https://github.com/vercel/next.js/issues/61736) - Update 02-server-actions-and-mutations.mdx: [#&#8203;61756](https://github.com/vercel/next.js/issues/61756) - Fix closing a modal example in parallel routes docs: [#&#8203;61819](https://github.com/vercel/next.js/issues/61819) - docs: Example mismatch when changing language JS/TS : [#&#8203;61833](https://github.com/vercel/next.js/issues/61833) - Fix </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 this update 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:eyJjcmVhdGVkSW5WZXIiOiIzNC4xNjAuMCIsInVwZGF0ZWRJblZlciI6IjM5LjI2NC4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->
kjuulh force-pushed renovate/nextjs-monorepo from 8f08567297 to cf07c8720d 2023-05-26 00:25:30 +02:00 Compare
kjuulh changed title from Update dependency next to v13.4.3 to Update dependency next to v13.4.4 2023-05-26 00:25:35 +02:00
kjuulh force-pushed renovate/nextjs-monorepo from cf07c8720d to b90bc3b96b 2023-06-11 00:30:40 +02:00 Compare
kjuulh changed title from Update dependency next to v13.4.4 to Update dependency next to v13.4.5 2023-06-11 00:30:44 +02:00
kjuulh changed title from Update dependency next to v13.4.5 to Update dependency next to v13.4.6 2023-06-18 02:44:31 +02:00
kjuulh force-pushed renovate/nextjs-monorepo from b90bc3b96b to 8c1615cf0c 2023-06-18 02:44:32 +02:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 8c1615cf0c to 7e30357a1b 2023-06-21 23:40:34 +02:00 Compare
kjuulh changed title from Update dependency next to v13.4.6 to Update dependency next to v13.4.7 2023-06-21 23:40:38 +02:00
kjuulh force-pushed renovate/nextjs-monorepo from 7e30357a1b to 531b5905c7 2023-07-03 19:16:44 +02:00 Compare
kjuulh changed title from Update dependency next to v13.4.7 to Update dependency next to v13.4.8 2023-07-03 19:16:49 +02:00
kjuulh changed title from Update dependency next to v13.4.8 to Update dependency next to v13.4.12 2023-07-23 12:56:12 +02:00
kjuulh force-pushed renovate/nextjs-monorepo from 531b5905c7 to 3ae4b77f2f 2023-07-23 12:56:14 +02:00 Compare
kjuulh changed title from Update dependency next to v13.4.12 to Update dependency next to v13.4.13 2023-08-07 09:34:57 +02:00
kjuulh force-pushed renovate/nextjs-monorepo from 3ae4b77f2f to 498aa62c73 2023-08-07 09:34:57 +02:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 498aa62c73 to d8afe6e6f6 2023-08-14 19:04:16 +02:00 Compare
kjuulh changed title from Update dependency next to v13.4.13 to Update dependency next to v13.4.15 2023-08-14 19:04:19 +02:00
kjuulh changed title from Update dependency next to v13.4.15 to Update dependency next to v13.4.13 2023-08-15 01:19:52 +02:00
kjuulh force-pushed renovate/nextjs-monorepo from d8afe6e6f6 to 6ff135e173 2023-08-15 01:19:53 +02:00 Compare
kjuulh changed title from Update dependency next to v13.4.13 to Update dependency next to v13.4.16 2023-08-15 03:21:17 +02:00
kjuulh force-pushed renovate/nextjs-monorepo from 6ff135e173 to 34c0920545 2023-08-15 03:21:18 +02:00 Compare
kjuulh changed title from Update dependency next to v13.4.16 to Update dependency next to v13.4.17 2023-08-17 12:20:48 +02:00
kjuulh force-pushed renovate/nextjs-monorepo from 34c0920545 to a1201fb036 2023-08-17 12:20:48 +02:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from a1201fb036 to 751abe84d0 2023-08-18 02:37:48 +02:00 Compare
kjuulh changed title from Update dependency next to v13.4.17 to Update dependency next to v13.4.18 2023-08-18 02:37:52 +02:00
kjuulh force-pushed renovate/nextjs-monorepo from 751abe84d0 to d023c1e098 2023-08-19 02:37:21 +02:00 Compare
kjuulh changed title from Update dependency next to v13.4.18 to Update dependency next to v13.4.19 2023-08-19 02:37:26 +02:00
kjuulh force-pushed renovate/nextjs-monorepo from d023c1e098 to 773837be09 2023-09-19 18:34:50 +02:00 Compare
kjuulh changed title from Update dependency next to v13.4.19 to Update dependency next to v13.5.0 2023-09-19 18:34:55 +02:00
kjuulh changed title from Update dependency next to v13.5.0 to Update dependency next to v13.5.1 2023-09-19 19:52:04 +02:00
kjuulh force-pushed renovate/nextjs-monorepo from 773837be09 to f5c15dfaa2 2023-09-19 19:52:04 +02:00 Compare
kjuulh changed title from Update dependency next to v13.5.1 to Update dependency next to v13.5.2 2023-09-20 18:42:18 +02:00
kjuulh force-pushed renovate/nextjs-monorepo from f5c15dfaa2 to efd6397aec 2023-09-20 18:42:18 +02:00 Compare
kjuulh changed title from Update dependency next to v13.5.2 to Update dependency next to v13.5.3 2023-09-25 16:51:12 +02:00
kjuulh force-pushed renovate/nextjs-monorepo from efd6397aec to 9a7086b51f 2023-09-25 16:51:13 +02:00 Compare
kjuulh changed title from Update dependency next to v13.5.3 to Update dependency next to v13.5.4 2023-10-03 04:25:28 +02:00
kjuulh force-pushed renovate/nextjs-monorepo from 9a7086b51f to 47938c8460 2023-10-03 04:25:29 +02:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 47938c8460 to 3eb0a53294 2023-10-16 17:21:15 +02:00 Compare
kjuulh changed title from Update dependency next to v13.5.4 to Update dependency next to v13.5.5 2023-10-16 17:21:16 +02:00
kjuulh force-pushed renovate/nextjs-monorepo from 3eb0a53294 to 2a1023e3f1 2023-10-19 01:37:45 +02:00 Compare
kjuulh changed title from Update dependency next to v13.5.5 to Update dependency next to v13.5.6 2023-10-19 01:37:45 +02:00
kjuulh force-pushed renovate/nextjs-monorepo from 2a1023e3f1 to 2585f93ff6 2023-10-26 18:19:15 +02:00 Compare
kjuulh changed title from Update dependency next to v13.5.6 to Update dependency next to v14 2023-10-26 18:19:20 +02:00
kjuulh force-pushed renovate/nextjs-monorepo from 2585f93ff6 to 204095f1de 2023-10-30 20:32:39 +01:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 204095f1de to b1443a95fd 2023-11-09 20:02:14 +01:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from b1443a95fd to 6f7be1512c 2023-11-16 20:01:07 +01:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 6f7be1512c to 9c28e999fd 2023-12-07 22:40:32 +01:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 9c28e999fd to 00b66cab16 2024-01-18 23:12:30 +01:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 00b66cab16 to 6bbe4f943f 2024-03-01 13:00:31 +01:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 6bbe4f943f to 8c0701a37f 2024-03-04 23:11:18 +01:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 8c0701a37f to 9831494c49 2024-03-06 22:34:12 +01:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 9831494c49 to 544b0b3e67 2024-03-20 02:12:57 +01:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 544b0b3e67 to 427b72a0c0 2024-04-11 22:24:50 +02:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 427b72a0c0 to 7c4767e7ae 2024-04-12 22:58:18 +02:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 7c4767e7ae to 48006fbbd4 2024-04-18 02:25:49 +02:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 48006fbbd4 to 7af5d65783 2024-04-24 19:42:57 +02:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 7af5d65783 to 31995ba044 2024-08-21 23:16:39 +02:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 31995ba044 to 5234c4161e 2024-08-22 02:15:02 +02:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 5234c4161e to f80c143a4f 2024-08-27 18:36:44 +02:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from f80c143a4f to e163bd22ed 2024-09-05 02:47:13 +02:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from e163bd22ed to 2a20306883 2024-09-10 02:46:52 +02:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 2a20306883 to 75b292aa6a 2024-09-12 02:48:17 +02:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 75b292aa6a to 023f4c419c 2024-09-13 02:43:41 +02:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 023f4c419c to c74b825208 2024-09-18 02:49:30 +02:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from c74b825208 to 98a2e2b0a9 2024-09-20 03:18:21 +02:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 98a2e2b0a9 to f5cb097afe 2024-10-02 02:48:19 +02:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from f5cb097afe to 45eb910a59 2024-10-09 02:51:00 +02:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 45eb910a59 to cea761626e 2024-10-22 02:44:23 +02:00 Compare
kjuulh changed title from Update dependency next to v14 to Update dependency next to v15 2024-10-22 02:44:24 +02:00
kjuulh force-pushed renovate/nextjs-monorepo from cea761626e to 1278d74e18 2024-10-23 02:54:39 +02:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 1278d74e18 to 2fcb92f0f3 2024-10-23 06:56:31 +02:00 Compare
kjuulh changed title from Update dependency next to v15 to Update dependency next to v14 2024-10-23 06:56:32 +02:00
kjuulh force-pushed renovate/nextjs-monorepo from 2fcb92f0f3 to 842c675c8e 2024-10-24 03:01:33 +02:00 Compare
kjuulh changed title from Update dependency next to v14 to Update dependency next to v15 2024-10-24 03:01:34 +02:00
kjuulh force-pushed renovate/nextjs-monorepo from 842c675c8e to 0f35a8511c 2024-10-30 02:50:10 +01:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 0f35a8511c to e68b678a5d 2024-11-08 02:44:01 +01:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from e68b678a5d to 9a587b39d7 2024-12-06 03:00:09 +01:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 9a587b39d7 to 2882fc7c16 2024-12-11 02:53:52 +01:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 2882fc7c16 to 82632a2d57 2024-12-18 02:42:55 +01:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 82632a2d57 to 08322f774a 2024-12-20 02:40:38 +01:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 08322f774a to 56f8252bec 2024-12-27 02:40:14 +01:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 56f8252bec to 0ef80ebfce 2025-01-08 02:45:24 +01:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 0ef80ebfce to 7f2054bf10 2025-01-18 02:55:42 +01:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 7f2054bf10 to d3312d4564 2025-01-23 02:52:59 +01:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from d3312d4564 to 1bcefd82a7 2025-02-11 06:54:16 +01:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 1bcefd82a7 to 9e6d078811 2025-02-27 03:01:31 +01:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 9e6d078811 to 93c9db67ee 2025-03-04 03:03:29 +01:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 93c9db67ee to bc1a3a881f 2025-03-26 00:07:58 +01:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from bc1a3a881f to 4c199ecb1a 2025-04-09 02:35:34 +02:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 4c199ecb1a to 519c451da1 2025-04-10 02:36:25 +02:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 519c451da1 to 0fc49a81ac 2025-04-18 02:35:46 +02:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 0fc49a81ac to 480930e033 2025-05-07 02:37:38 +02:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 480930e033 to d1f5c7fb8a 2025-05-23 02:33:45 +02:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from d1f5c7fb8a to 71907c4414 2025-05-25 02:36:43 +02:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 71907c4414 to fb63ed30c9 2025-05-30 02:37:27 +02:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from fb63ed30c9 to 312402fd2d 2025-06-19 02:36:04 +02:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 312402fd2d to 513323da7a 2025-07-04 02:36:50 +02:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 513323da7a to 4da373d444 2025-07-15 02:37:07 +02:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 4da373d444 to 76468d5c26 2025-07-19 02:41:44 +02:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 76468d5c26 to 39693425a4 2025-07-23 02:40:40 +02:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 39693425a4 to 34fb5fdf53 2025-07-25 02:40:35 +02:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 34fb5fdf53 to 03b395ddcd 2025-07-26 05:40:35 +02:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 03b395ddcd to 9ce7a7ec7e 2025-11-13 03:19:46 +01:00 Compare
kjuulh changed title from Update dependency next to v15 to Update dependency next to v16 2025-11-13 03:19:46 +01:00
kjuulh force-pushed renovate/nextjs-monorepo from 9ce7a7ec7e to b31cafec70 2025-11-13 05:34:46 +01:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from b31cafec70 to c454633930 2025-11-14 02:41:33 +01:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from c454633930 to 12b3f91449 2025-11-25 02:43:57 +01:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 12b3f91449 to 11f0c5311a 2025-11-27 02:41:35 +01:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from 11f0c5311a to b7387654bf 2025-12-01 02:40:37 +01:00 Compare
kjuulh force-pushed renovate/nextjs-monorepo from b7387654bf to 02b25304c9 2025-12-04 02:43:01 +01:00 Compare
This pull request can be merged automatically.
You are not authorized to merge this pull request.
View command line instructions

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/microblog#94
No description provided.