NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
npm · #3204 most downloaded on npm
The React Framework
Last release today
05 Oct 2026
Ships on a steady schedule
a new release about every 8 days
Most releases are documented
notes for 40 of the last 60 stable releases
144 versions withdrawn
withdrawn after publishing
15 years old
3973 releases · first in 2011
Refactor extractExportedConstValue to return { value } | null instead of throwing: #90510
98ce535f-20260226 to 4cc5b7a9-20260303: #90827transitionTypes prop to next/link: #90701Huge thanks to @sokra, @lukesandberg, @delbaoliveira, @eps1lon, and @huozhi for helping!
Stub adapterPath with experimental.runtimeServerDeploymentId: #90790
One column per quarter.
unstable_instant is used without cacheComponents: #90793Huge thanks to @gnoff, @ztanner, @sokra, @lukesandberg, @mischnic, @icyJoseph, @jantimon, and @timneutkens for helping!
docs: error component unstable_retry(): #89732
unstable_retry(): #89732Huge thanks to @devjiwonchoi, @vercel-release-bot, and @mischnic for helping!
fix(turbopack): use posix.join for client URL manifest paths on Windows: #90700
Huge thanks to @sokra, @sleitor, @mischnic, @karlhorky, @abhishekmardiya, @acdlite, @timneutkens, and @eps1lon for helping!
[devtools] Stop blocking overlay on error details copy: #90698
Huge thanks to @eps1lon, @devjiwonchoi, @pieh, and @acdlite for helping!
Turbopack: Allow turbopack-node backend to be swapped at runtime using an experimental config option: #90671
Huge thanks to @lukesandberg, @bgw, and @ijjk for helping!
Turbopack: restrict server HMR to app pages: #90663
Huge thanks to @ijjk, @mischnic, and @wbinnssmith for helping!
Ensure we only run main test mode with custom deploy script: #90665
Huge thanks to @ijjk for helping!
refactor(turbopack-node): support execution by napi and worker_threads: #86266
next dev and next build: #90603unstable_instant exports: #90273VisitMut instead of Fold for debug_instant_stack transform: #90274Huge thanks to @xusd320, @mischnic, @eps1lon, @sokra, @agneliutkiene, @Mimori256, @icyJoseph, and @lubieowoce for helping!
Turbopack: Panic if a top-level task attempts an eventually consistent read: #89735
evaled modules: #90561Huge thanks to @bgw, @wbinnssmith, and @ijjk for helping!
Fix edge index page _next/data route: #90611
restart event: #90550Huge thanks to @ijjk, @andrewimm, and @wbinnssmith for helping!
[test] Fix jest-haste-map warnings: #82995
experimental.reactDebugChannel by default: #90310c0060cf2-20260224 to 98ce535f-20260226: #90605reset() from user's global-error: #89684unstable_retry() to error.js: #89685getStackFramesContent: #90571testonly to testheadless in AGENTS.md: #90578NEXT_TEST_CI instead of CI for e2e test retry guard: #90606Huge thanks to @eps1lon, @devjiwonchoi, @mischnic, @kristiyan-velkov, @sokra, @icyJoseph, @vercel-release-bot, @unstubbable, and @lukesandberg for helping!
fix: sanitize worker args for worker_threads compatibility: #90506
NEXT_TEST_NATIVE_DIR is specified: #90387unstable_instant is used in Client Component: #90396pnpm build and into a pnpm build-all command: #90543Huge thanks to @mischnic, @timneutkens, @acdlite, @unstubbable, @bgw, @lubieowoce, @eps1lon, and @devjiwonchoi for helping!
Fix params leaking into instant navigation shell in dev: #90455
Huge thanks to @vercel-release-bot, @acdlite, @lukesandberg, @eps1lon, @bgw, @mischnic, and @andrewimm for helping!
Fix route cache keying for unprefetched navigations: #90400
AggregateError: #90391config.reactProductionProfiling for Webpack: #90430rust-toolchain: #90442ab18f33d-20260220 to c0060cf2-20260224: #90452typed-routes-validator using tsc: #90451Huge thanks to @acdlite, @lavanitha, @timneutkens, @eps1lon, @icyJoseph, @mischnic, @karlhorky, @lubieowoce, @wbinnssmith, @lukesandberg, and @unstubbable for helping!
refactor(app-render): extract stream-ops and debug-channel modules (5/8): #89858
ignoreList of 3rd party sourcemaps in Redbox: #90317Huge thanks to @mischnic, @abhishekmardiya, @lukesandberg, @feedthejim, @eps1lon, @mmastrac, @sokra, @rishishanbhag, and @tdarthur for helping!
Fix route.replace crash with --debug-build-paths: #90312
Huge thanks to @devjiwonchoi for helping!
Turbopack: support Subresource Integrity : #90152
Huge thanks to @mischnic and @ztanner for helping!
Fix runtime prefetch isPartial byte stripping when deployed: #90272
isPartial byte stripping when deployed: #902722ba30655-20260219 to ab18f33d-20260220: #90279Huge thanks to @haydenbleasel, @unstubbable, @gnoff, and @eps1lon for helping!
Revert "Handle null history.state in client-side router popstate handler": #90268
act: #90261Huge thanks to @unstubbable, @mischnic, @ztanner, and @eps1lon for helping!
Turbopack: fix static asset skew protection for edge and prerenders: #90238
images.maximumDiskCacheSize: #89963Huge thanks to @kristiyan-velkov, @mischnic, @gnoff, @lubieowoce, @acdlite, @eps1lon, and @styfle for helping!
Fix OTEL propagation and add direct entrypoint e2e coverage: #90181
4842fbea-20260217 to 2ba30655-20260219: #90211Huge thanks to @ijjk, @lukesandberg, @eps1lon, @acdlite, @gnoff, and @lubieowoce for helping!
[refactor] Replace runtime prefetch sentinel transform stream: #90160
pnpm build: #89819Default on PartialProjectOptions, remove silly partial_project_options_with_debug_build_paths helper: #90170Huge thanks to @bgw, @unstubbable, @mischnic, @feedthejim, @sokra, @ztanner, and @ijjk for helping!
segment cache: fix segment cache normalizer: #90111
6066c782-20260212 to 4842fbea-20260217: #90144next/link navigation: #89959json imports work by turning it into a source transform: #89631Huge thanks to @lukesandberg, @vercel-release-bot, @ztanner, @timneutkens, @mischnic, @gaojude, @eps1lon, @sokra, and @gnoff for helping!
[devtools] Add support for error causes in the dev overlay: #90108
Huge thanks to @eps1lon, @lukesandberg, and @gnoff for helping!
Improve task pipelining: #90065
#[derive(ValueToString)]: #89936cache-components-errors: #90105Huge thanks to @gnoff, @sokra, @lukesandberg, @feedthejim, @timneutkens, @mmastrac, @ijjk, @lubieowoce, @unstubbable, @acdlite, and @mischnic for helping!
Ignore prefetch={true} on Links to routes with instant: #90061
prefetch={true} on Links to routes with instant: #90061Huge thanks to @acdlite, @ijjk, and @gnoff for helping!
docs: agent skills, pr-status script, and AGENTS.md updates (1/8): #89857
Huge thanks to @mischnic, @devjiwonchoi, @swarnava, @feedthejim, and @gaojude for helping!
[fragment-scroll] Ensure hoisted elements don't break scroll-to-top on page navigations: #83108
require.resolve() to get the installed next version: #89166Huge thanks to @andrewdamelio, @bgw, @mischnic, @eps1lon, and @devjiwonchoi for helping!
chore: Don't run build-and-deploy CI job on graphite-base branches: #89982
Huge thanks to @bgw for helping!
Fix parallel routes with deferred entries: #89967
std::any::type_name for global naming of turbo-task items: #89874Huge thanks to @sokra, @ijjk, and @bgw for helping!
fix: support multiple icon formats with same base name (icon.png + icon.svg): #89504
--debug-prerender is set: #89834client_source_maps before generate source map: #89915Huge thanks to @FurryR, @icyJoseph, @mischnic, @01-binary, @lukesandberg, @sokra, and @unstubbable for helping!
docs: adapterPath amends: #89930
Huge thanks to @icyJoseph, @mmastrac, and @wbinnssmith for helping!
Upgrade React from 272441a9-20260209 to 6066c782-20260212: #89923
272441a9-20260209 to 6066c782-20260212: #89923Huge thanks to @lukesandberg for helping!
[Instant] Fix crash with search params: #89922
Huge thanks to @lukesandberg, @lubieowoce, @alubbe, and @wbinnssmith for helping!
Allow sitemap.ts and sitemap/page.tsx to coexist in Turbopack: #89789
experimental.appNewScrollHandler: #83107ChunkItem with a single impl in most cases: #89548Huge thanks to @feedthejim, @icyJoseph, @freek-boon-greenberry, @andrewimm, @ijjk, @vercel-release-bot, @sokra, @eps1lon, and @mmastrac for helping!
[AI] Ship bundled docs in next and generate AGENTS.md in create-next-app: #89850
Huge thanks to @icyJoseph, @eps1lon, @gaojude, @ijjk, @wbinnssmith, and @bgw for helping!
Turbopack: Fix slow filesystem benchmark warning for next dev: #89798
next dev: #89798type: "text" under a new experimental flag, following what webpack did: #89560use: #89793RedirectType usage example to permanentRedirect: #89833Huge thanks to @ijjk, @bgw, @vercel-release-bot, @sokra, @lukesandberg, @mischnic, @timneutkens, @vvscode, @eps1lon, and @unstubbable for helping!
Turbopack: Server HMR infrastructure: #88870
Huge thanks to @wbinnssmith and @lubieowoce for helping!
Pass shouldCache to all manifest loading calls: #89713
Huge thanks to @vercel-release-bot, @mischnic, @abhishekmardiya, @unstubbable, @timneutkens, and @wbinnssmith for helping!
fix(image): findClosestQuality returns 0 for low quality values: #89621
2dd9b7cf-20260208 to 272441a9-20260209: #89722Vc::try_resolve_* methods in favor of the ResolvedVc alternatives: #89696Huge thanks to @bgw, @ijjk, @icyJoseph, @shadcn, @sigmachirality, @unstubbable, and @lukesandberg for helping!
Upgrade React from 95ffd6cd-20260205 to 2dd9b7cf-20260208: #89681
95ffd6cd-20260205 to 2dd9b7cf-20260208: #89681AggregateError.errors in terminal output: #88999_backend field from TaskGuardImpl: #89015Huge thanks to @sokra, @lukesandberg, @robert-j-webb, and @bencmbrook for helping!
fix: deprecated util._extend: #89614
Huge thanks to @Netail, @ijjk, and @unstubbable for helping!
Ensure _middleware is consistent in adapter for name/id: #89559
discoverRoutes() API: #88971Huge thanks to @ijjk, @sokra, @Thomas465xd, @mischnic, @eps1lon, @huozhi, @bgub, @unstubbable, @mmastrac, and @wbinnssmith for helping!
Don't insert build id comment in HTML: #89478
cacheLife on outer "use cache" when nesting short-lived caches: #894813e00319b-20260203 to 95ffd6cd-20260205: #89550Huge thanks to @mischnic, @unstubbable, @lubieowoce, @pavan-sh, and @lukesandberg for helping!
Ensure module contexts are always included in adapter traces: #89508
Huge thanks to @ijjk for helping!
Add experimental.reportSystemEnvInlining for Turbopack: #89304
experimental.reportSystemEnvInlining for Turbopack: #89304instant(): #89469with-tigris example: #81843Huge thanks to @vercel-release-bot, @mischnic, @timneutkens, @acdlite, @JamBalaya56562, @ericrav, @huozhi, and @lubieowoce for helping!
chore(examples): remove with-recoil exmaple: #81836
with-recoil exmaple: #81836Huge thanks to @mischnic, @JamBalaya56562, @wheresrhys, and @ijjk for helping!
Replace flight navigation build id field with header: #88855
da641178-20260129 to ed4bd540-20260202: #89401ed4bd540-20260202 to b1533b03-20260203: #89444b1533b03-20260203 to 3e00319b-20260203: #89449Huge thanks to @icyJoseph, @mischnic, @ijjk, @fireairforce, and @gaojude for helping!
Turbopack: FreeVarReference::ReportUsage: #89302
logging.serverFunctions: #89321'use cache' functions: #89408Huge thanks to @sokra, @mischnic, @unstubbable, @vercel-release-bot, @pavan-sh, @amannn, and @ijjk for helping!
Turbopack: Rename crates/napi to crates/next-napi-bindings and update crate name: #89314
Huge thanks to @bgw and @Suhaib3100 for helping!
Apply server actions transform to node_modules in route handlers: #89316
node_modules in route handlers: #89316browser-log-forwarding verbose level test suite: #89324Huge thanks to @unstubbable for helping!
Revert "Replace build id in Pages data routes with deployment id (#88959)": #89323
Huge thanks to @ijjk and @mischnic for helping!
Update Rspack development test manifest: #89278
Huge thanks to @naaa760, @vercel-release-bot, and @lukesandberg for helping!
Improve lock dir error message: #89119
browserslist doesn't issue outdated warnings for baseline-browser-mapping: #89287230772f9-20260128 to da641178-20260129: #89301rules.*.type config to allow changing the type of a module: #88788Huge thanks to @huozhi, @eps1lon, @mischnic, @ijjk, @sokra, and @acdlite for helping!
fix: CSRF origin matching should be case-insensitive: #89127
Huge thanks to @alexcarpenter, @devjiwonchoi, @jaffarkeikei, @BradErz, @lukesandberg, @vercel-release-bot, @sokra, @eps1lon, @mintydev789, and @acdlite for helping!
add GPTBot to matcher for known bots: #89188
.md licenses are included in vendored packages: #8920110680271-20260126 to 230772f9-20260128: #89250tar used to extract SWC binary : #89158Huge thanks to @davidgolden, @sokra, @eps1lon, @huozhi, @icyJoseph, @mischnic, @mmastrac, @LucianBuzzo, @ijjk, @lukesandberg, @devjiwonchoi, @acdlite, and @ztanner for helping!
Update Rspack production test manifest: #89147
Huge thanks to @vercel-release-bot and @ijjk for helping!
Decouple route stale time from segment-level data: #88834
baseline-browser-mapping warnings: #89175next-env.d.ts files in all top-level apps: #89176unsafe-eval in dev Content-Security-Policy: #89163Huge thanks to @timneutkens, @acdlite, @unstubbable, @mischnic, @eps1lon, @ijjk, and @brookemosby for helping!
Limit number of server action arguments to 1000: #89068
gh auth status optional when triggering a release: #89098Huge thanks to @unstubbable, @sokra, @delbaoliveira, @eps1lon, @Juneezee, @brookemosby, @vercel-release-bot, and @ztanner for helping!
Your coding agent can read these notes before it upgrades. Set up the MCP server →