Update dependency next to v16 #94
Reference in New Issue
Block a user
No description provided.
Delete Branch "renovate/nextjs-monorepo"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
This PR contains the following updates:
13.4.2->16.0.7Release Notes
vercel/next.js (next)
v16.0.7Compare Source
Please see CVE-2025-66478 for additional details about this release.
v16.0.6Compare Source
Core Changes
Credits
Huge thanks to @lukesandberg for helping!
v16.0.5Compare Source
Core Changes
Credits
Huge thanks to @lucasadrianof for helping!
v16.0.4Compare Source
Core Changes
Credits
Huge thanks to @devjiwonchoi, @sokra and @ztanner for helping!
v16.0.3Compare Source
Core Changes
next dev --inspect: #85037b4455a6e-20251027to4f931700-20251029: #85518cacheLifetypes out of the webpack plugin and into the dev bundler directly: #85539'use cache'in page/layout component: #855194f931700-20251029to561ee24d-20251101: #85670'next'plugin: #85749561ee24d-20251101to67f7d47a-20251103: #8576267f7d47a-20251103tof646e8ff-20251104: #85772f646e8ff-20251104todd048c3b-20251105: #85819dd048c3b-20251105tofa50caf5-20251107: #85906'use cache'call stacks: #85966fa50caf5-20251107to52684925-20251110: #85980Misc Changes
opt-level = sfor not frequently used crates: #85426experimental.cacheLife: #85467createSandbox: #85507--debug-build-pathsinstead ofNEXT_PRIVATE_APP_PATHS: #85504completion.rsa bit: #84863maxRetriesandhardErrorparameters: #85536cells are created inresolve_rawto make cell allocation order deterministic.: #85525assert*->waitFor*when the util is not instant: #85450RegExp-like implementations incheck: #85537after()tests: #85566test/integration/in flake detection tests: #85590run-for-changescript: #85619extern crateandmacro_usesyntax: #85778NEXT_TEST_PREFER_OFFLINEininstall-native.mjs: #85850next-core/src/next_client_reference/visit_client_reference.rs: #85843non_operation_vc_strongly_consistentfeature usage from next-api: #85874turbo-tasks-macros-sharedcrate intoturbo-tasks-macros: #85917next.browserWithResponse(): #85911'use cache'functions to reduce function allocations: #85904font-familydeclaration: #85913Auth0Link: #85953cacheLife&cacheTagin client: #85872cacheLife&cacheTag: #85875sharpandunrs-resolver: #83168evaluateto take module_graph: #85971encryptActionBoundArgs/decryptActionBoundArgsimports: #86015Credits
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.2Compare Source
v16.0.1Compare Source
Core Changes
includeon Windows: #85400next-jscondition from middleware, proxy, and instrumentation: #85321prefetch={true}functionality: #854112bcbf254-20251020to6160773f-20251023: #85277Origin: nullheaders: #85402useActionQueue: #85459Misc Changes
use cache: remotedocs: #85145Credits
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.0Compare Source
Core Changes
6b70072c-20250909to886b3d36-20250910: #83650886b3d36-20250910tof3a80361-20250911: #83696f3a80361-20250911to93d7aa69-20250912: #8372993d7aa69-20250912to8a8e9a7e-20250912: #83742@next/eslint-plugin-next: #83763next.config.mtsfor Node.js native TS resolver: #835568a8e9a7e-20250912to5e0c951b-20250916: #838505e0c951b-20250916to128abcfa-20250917: #83906srcPagefor templates whennext.routeis unavailable: #83911128abcfa-20250917to84af9085-20250917: #83959import ... with {type: "bytes"}: #8389684af9085-20250917tod415fd3e-20250919: #84003next internal trace: #83907publicRuntimeConfigandserverRuntimeConfig: #83944ssgPageRoutesin the file tree: #84104experimental.cacheComponentsconfig: #84121images.minimumCacheTTLfrom 1 min to 4 hours: #84105d415fd3e-20250919to1eca9a27-20250922: #84093.turboconfig object: #84109experimental.isolatedDevBuildfortest-experimental-dev: #84099publicRuntimeConfigandserverRuntimeConfig(#83944)": #841671eca9a27-20250922toe2332183-20250924: #84189get_errorsMCP endpoint: #84161e2332183-20250924tob0c1dc01-20250925: #84248get_page_metadataMCP endpoint: #84211isReactCompilerRequiredcheck when we must run Babel anyways: #84103config.turbopack.moduleIdstoconfig.experimental.turbopackModuleIds: #84230b0c1dc01-20250925todf38ac9a-20250926: #84276config.turbopack.moduleIdstoconfig.experimental.turbopackModuleIds: #84230b0c1dc01-20250925todf38ac9a-20250926: #84276df38ac9a-20250926tod15d7fd7-20250929: #84347reactCompileroption: #82251d15d7fd7-20250929toef889445-20250930: #84383unstable_rootParams: #84373ef889445-20250930to548235db-20251001: #84416548235db-20251001to1bd1f01f-20251001: #84417metadataBaseto be a string URL in addition toURLinstance: #842971bd1f01f-20251001to86181134-20251001: #84427generateMetadata/generateViewport: #8422886181134-20251001toa757cb76-20251002: #84463recursiveDelete: #84444distDirinnext devandnext build: #84472a757cb76-20251002to85c427d8-20251003: #84496reactDebugChannelfor experimental test shards: #8453385c427d8-20251003to4fdf7cf2-20251003: #844994fdf7cf2-20251003toc7862584-20251006: #84573createDebugChannelimport by feature flag: #84604c7862584-20251006toa4eb2dfa-20251006: #84589/indexto implicit tags and adjustrevalidatePath(): #84586images.domainsconfig: #84625next/legacy/imageusage: #84622a4eb2dfa-20251006to3025aa39-20251007: #84613distDirinnext devandnext build: #84428middlewaretoproxy: #84127middlewareand recommendproxy: #84119--experimental-next-config-strip-typesflag: #84675recursive-delete.js: #84582images.imageSizesconfig: #84647/_nextin middleware": #84697images.localPatternsfor query in Image src: #84406images.dangerouslyAllowLocalIPandimages.maximumRedirects: #84676useLightningcssdocs: #84581Compiled proxy in ...: #847463025aa39-20251007to9724e3e6-20251008: #84642eslint-disabledirectives: #84797.next/dev/types/**/*.d.tsto default tsconfig: #847479724e3e6-20251008toead92181-20251010: #84793ead92181-20251010tod7215b49-20251013: #84850d7215b49-20251013to56e84692-20251014: #84860clientParamParsingconfiguration & bundle it withcacheComponents: #84763unstableprefix fromunstable_cacheLife: #84877unstableprefix fromunstable_cacheTag: #8488056e84692-20251014to93f85932-20251016: #84963--profileCLI param: #84920unstable_prefix: #84974unstable_prefix: #84974experimental_ppr: #84979context.routeTypefrommiddlewaretoproxy: #85006.next: #84714FlatCompat.config: #8502693f85932-20251016to1324e1bb-20251016: #8499958bdc0bb-20251019tof6a48828-20251019: #85081f6a48828-20251019to2bcbf254-20251020: #85112next build: #85137middleware-to-proxy: #85075package.jsonis the problem: #85118startTimeto initial RSC payload stream: #85144usehooks for React 18: #85151experimental.inlineCss: #85140--turbopackflag: #85180experimental.inlineCss: #85140--turbopackflag: #85180Example Changes
Misc Changes
css_environmentfromEnvironment: #83487resolved::RequestsforEsmAssetReference: #83662ssr-datamodule context: #83626'use cache'directive is misspelled: #83756should_track_childrenparameter of the turbo tasks backend: #83258npxfor tracing files: #83903next.config.tsNode.js native resolver: #83561parse_segment_config_from_source: #83919issue_pathfeature and related functionality: #83920thisin function default parameters: #83746livenessof exports based on assignment analysis: #82802value_to_stringoperation until we need it: #84188livenessof exports based on assignment ana…: #84207RawValueformappingsinsideSourceMapJson: #84208Undefined default exporttest suite: #84235Undefined default exportan e2e test suite: #84240Undefined default exportan e2e test suite: #84240this.fs.readFile: #83313next dev: #84474random_changeunit test: #84505experimental.isolatedDevBuildfortest-unit: #84559experimental.isolatedDevBuildfortest-prod: #84556.next/dev/typesto CNA templates tsconfig include: #84566experimental.isolatedDevBuildfortest-integration: #84558experimental.isolatedDevBuildfortest-dev: #84562experimental.isolatedDevBuild: #84656eslint-v8testing: #84721types-and-precompiledfrom corrupting terminal output: #84799TaskInputfromAutoSet: #84867router.prefetch(): #84903--debug-build-pathsnext build option: #85097cacheTag: #85106next lintdeprecation and update error message: #85100--turbopackflag in Create Next App, it is no longer necessary: #85117Credits
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.7Compare Source
Please see CVE-2025-66478 for additional details about this release.
v15.5.6Compare Source
Core Changes
Credits
Huge thanks to @mischnic for helping!
v15.5.5Compare Source
Core Changes
experimental.middlewareClientMaxBodySizebody cloning limit (#84722)Misc Changes
Credits
Huge thanks to @devjiwonchoi, @ztanner, and @icyJoseph for helping!
v15.5.4Compare Source
Core Changes
Misc Changes
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.3Compare Source
Core Changes
Credits
Huge thanks to @bgub for helping!
v15.5.2Compare Source
Core Changes
Credits
Huge thanks to @bgub and @ztanner for helping!
v15.5.1Compare Source
Core Changes
Credits
Huge thanks to @bgub, @mischnic, and @ztanner for helping!
v15.5.0Compare Source
Core Changes
@typescript-eslint/switch-exhaustiveness-checkrule: #81583React.unstable_postpone(): #81652images.qualitiesis undefined: #81690pprordynamicIOenabled: #81668__turbopack_load_by_url__: #8166397cdd5d3-20250710to2f0e7e57-20250715: #81678renderToStringfunction: #817072f0e7e57-20250715tod85ec5f5-20250716: #81708next-serverVM: #81664headers/cookies/draftModein'use cache': #81716d85ec5f5-20250716todffacc7b-20250717: #81767getExpectedRequestStorefunction: #81791.next/cache: #81807dffacc7b-20250717toe9638c33-20250721: #81899'use cache: private': #81816browserslist: #81851run-turbopack-compilertrace span: #81917e9638c33-20250721to7513996f-20250722: #819407513996f-20250722toedac0dde-20250723: #81984exhaustive-depsviolations: #82010edac0dde-20250723to3d14fcf0-20250724: #820203d14fcf0-20250724to19baee81-20250725: #8206319baee81-20250725toeaee5308-20250728: #82120eaee5308-20250728to9be531cd-20250729: #82159@next/codemod: update docs url in README: #82135@next/codemod: Addexperimental.turbototurbopackcodemod for Next.js configs: #82134NextRequesttypes: #821729be531cd-20250729to9784cb37-20250730: #82207TURBOPACKenv before loading config: #82162outputFileTracingRootorturbopack.rootoption is provided: #821649784cb37-20250730toc260b38d-20250731: #82247eslint-plugin-react-hooksin React sync: #82294c260b38d-20250731tobe11cb5c-20250804: #82339_errorpage'sreq.urlcan be overwritten to dynamic param on minimal mode: #82347asPathfor query-only navigation withuseRouter: #82236?dplto fonts in/_next/static/media: #82384be11cb5c-20250804to7deda941-20250804: #82373pathto Image documentation: #823297deda941-20250804to3958d5d8-20250807: #824473958d5d8-20250807tof1e70b5e-20250811: #82534f1e70b5e-20250811toac7820a9-20250811: #82543image-sizepkg as additional format detector: #82538?dplto fonts in/_next/static/mediapart 2: #82488componentStackFramesfield: #82395skipMetadata: #82569ac7820a9-20250811to1dc3bdea-20250812: #82575Mapsupport fromnext/dynamictransform: #82487window.next.turbopackinstead: #825801dc3bdea-20250812tof1222f76-20250812: #82595f1222f76-20250812to379a083b-20250813: #82642turbo_tasks::spawn: #82634379a083b-20250813toa96a0f39-20250815: #82691turbopack.rootvalue foroutputFileTracingRootto have consistent tracing root: #82653Example Changes
with-supabaseexample to usegetClaims(): #81383Misc Changes
beforePageLoadto be async: #81650ImportedBindingeffect creation to avoid as much special-casing of SimpleAssignTarget: #81653use-cachetest suite in the Cache Components tests: #81610app-staticdeploy test: #81712requireto load chunks in our node runtime: #81738experimental.strictNextHead: #81882current_valueset/restore mutation pattern with a saferwith_pat_valuehelper: #81696global-not-found: #81803next build --turbopack: #81704lint-eslinton a specific directory: #82009rcstr!allocated Rcstr values as 'static' and stop refcounting them: #81994hash: #82084constcompatible hash routine performance: #82088Path/PathBuffor all of the invalidation logic: #82132O(n)traversals when finding child paths: #82133ignored_subpathsfeature from DiskWatcher: #82210find_server_entriesin the whole_app_module_graph case: #81943lazy-regexdependency: #82288jsonc-parser, dedupe with SWC: #82343is_developmenttonext_page_config: #82363exportsand module to factory parameters for cjs: #82285--features=tokio_tracing: #81979productionBrowserSourceMaps: #78014compiledfolder in ripgrep/ast-grep/ag/etc: #82482outputFileTracingIncludes: #82528.module.scss: #82570non_recursive_helpers::start_watching_dir_and_parents: #82454shouldRunTurboDevTestusage: #82603globalrewrite could introduce a TDZ issue: #82659experimental.typedEnv: #82647create-next-app: use Turbopack for both dev and build: #82753Credits
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.8Compare Source
Please see CVE-2025-66478 for additional details about this release.
v15.4.7Compare Source
Core Changes
Credits
Huge thanks to @ztanner for helping!
v15.4.6Compare Source
Core Changes
_errorpage'sreq.urlcan be overwritten to dynamic param on minimal mode (#82347)?dplto fonts in/_next/static/media(#82384)Credits
Huge thanks to @devjiwonchoi, @ijjk, and @styfle for helping!
v15.4.5Compare Source
Core Changes
Credits
Huge thanks to @ijjk, @sokra, and @styfle for helping!
v15.4.4Compare Source
Core Changes
Credits
Huge thanks to @bgw @mischnic @huozhi @lukesandberg and @ijjk for helping!
v15.4.3Compare Source
Core Changes
Credits
Huge thanks to @mischnic for helping!
v15.4.2Compare Source
Core Changes
Credits
Huge thanks to @huozhi, @ijjk, and @ztanner for helping!
v15.4.1Compare Source
Core Changes
+,-or.: #779323fbfb9ba-20250409toc44e4a25-20250409: #78031c44e4a25-20250409to1d6c8168-20250411: #78067image-size@1.2.1: #78149strictNullChecksin test utils: #78142eslint-plugin-next: #781091d6c8168-20250411to39cad7af-20250411: #7815239cad7af-20250411tob04254fd-20250415: #78253@next/mdx: Use stable turbopack config options: #78261b04254fd-20250415to4a36d3ea-20250416: #78297next start --turbopack: #783844a36d3ea-20250416tobc6184dd-20250417: #78322experimental.turbois set: #77998bc6184dd-20250417to914319ae-20250423: #78468914319ae-20250423to197d6a04-20250424: #78516error.nameto label: #78198prerenderfunction for"use cache"with Dynamic IO: #78382node:prefixed in ESM emit of standalone server.js: #78624widthtransition logic: #78635@swc/counter: #78674197d6a04-20250424to5dc00d6b-20250428: #786405dc00d6b-20250428to408d055a-20250430: #78715draft.isEnabledsetter from exotic draftMode wrappers: #77972408d055a-20250430to197d6a04-20250424: #78834@swc/corenpm package tov1.11.24: #77668extensionregex in@next/mdx: #78734max-old-space-size: #78712runInCleanSnapshotto Work Store: #78930--no-manglingfor"use cache"functions: #78993"use cache"timeout errors from being caught in userland code: #78998LinkPropsin emitted declarations: #78773define-env-plugin.tstodefine-env.ts: #79224CacheHandler.getmethod: #79213onPostponeto determine if segment prefetch is partial: #79299pprwhendynamicIOis enabled: #79302app-render.tsx: #79303experimental.enablePrerenderSourceMapsis enabled: #79109@changesets/changelog-githubfor changelog format: #79040compiler.defineServerfor server-only constants: #79225@changesets/changelog-githubfor changelog format: #79040compiler.defineServerfor server-only constants: #79225someFunc(): void) type for client boundary warnings: #79144"use cache": #78882"use cache": #78882clientInstrumentationHooktype: #79701tscruns inpackages/nextwithout having to build first: #79782tscin watch mode duringpnpm dev: #79785vary(#79939)subissuesfromIssue: #79988taskrtasks: #80020@ts-expect-error: #80065get*Stackimplementation: #79789<option>in Preferences dropdowns: #80025require()instead ofnext/dist/if possible: #80054isRecoverableErrorimplementation: #80003wrapRequestHandler: #80055getSquashedHydrationErrorDetailsimplementation: #80046onErrorin /pages: #79982server-inserted-metadatamodule: #80143regionsproperty to the Functions Config Manifest file: #80104require()calls: #80056/.well-known/appspecific/com.chrome.devtools.jsonendpoint in dev: #80260Infinityexpiration for implicit tags: #80387config.allowedDevOrigins(#80410) (Learn More)"use cache": #80463404for unknown server actions: #80613next start": #80666--debug-prerenderoption fornext build: #80667197d6a04-20250424to79d9aed7-20250620: #7947779d9aed7-20250620to06e89951-20250620: #8073079d9aed7-20250620to197d6a04-20250424: #80762404for unknown server actions (#80613)": #80662197d6a04-20250424tofa3feba6-20250623: #80804fa3feba6-20250623tocee7939b-20250625: #80904cee7939b-20250625to4db4b21c-20250626: #809594db4b21c-20250626to65c4decb-20250630: #8107765c4decb-20250630to7216c0f0-20250630: #811337216c0f0-20250630to73aa744b-20250702: #81192pnpm buildto be run when offline: #812735d87cd22-20250704toa7a11657-20250708: #81428experimental.enablePrerenderSourceMapstoexperimental.dynamicIO: #81449a7a11657-20250708to60b5271a-20250709: #81463Uint8Arraybodies when generating cache keys for POST requests: #81465filterStackFrameeverywhere: #8151660b5271a-20250709to96c61b7f-20250709: #81505.eslintrc.cli.jsonbeing used for CLI/CI-based linting: #81553rsc:URLs: #8155496c61b7f-20250709to97cdd5d3-20250710: #81551handleSmoothScrollutil: #81546Example Changes
with-supabaseexample to use the Supabase Auth block: #78913Misc Changes
build: #77730vardeclarations: #77954config.experimental.reactOwnerstack: #78021"use cache"andcacheLifeAPI references: #78024useLinkStatusAPI reference: #78022new Workerwithnew URL: #78010swc_coretov22.3.1: #78129docs/appanddocs/pagespages: #78151Guides: #78189Guides: #78195Guides: #78193deployingpage: #77720Guides: #78238require.contextcalls: #78251Guides: #78240verify_sst_contentfeature, improve unit test performance: #78388Static Exportsto guides, createSelf-hostingguide: #78244/appguide: #78416guides: #78412metadataandgenerateMetadatafixtures: #78409mdxjs-rstov1: #78469next/*subpackages: #78447srcfolder page to API reference: #78499experimental.turbo: #78507publicfolder API reference: #78531to_resolved. s/strongly/statically/: #78560ImportBindingfragments: #78470selfarguments: #78554EsRegexintoturbo-esregexcrate: #78639"use server"inline example: #78653pnpm installafterpnpm buildinbuild_reusable.yml: #78720TEST_CONCURRENCYby default inrun-tests.js: #78731ignoreListby Turbopack in browser sourcemaps: #78822build_and_test.yml: #78732fsmethod to track a glob.: #78686swc_coretov23.2.0: #78885swc_coretov23.2.0": #78935ChunkingType::Parallelwithhoistedbool: #78922__dirnameand__filename: #78843swc_coretov23.1.0again with macos build fix: #78940Resultfor failed local font files: #78941Update static-exports.mdx: #79091modularize_imports: #79012swc_coretov24.0.0: #79092swc_coretov24.0.0": #79102traverse_edges_fixed_point: #79078swc_bundler: #79113turbopack-coreRust 2024: #79131"use cache"misplacement error: #79151'use client'directive: #79114'use client'directive and client components: #79115EcmascriptInputTransform::CommonJs: #79148debug-brkpackage script: #79097next_page_static_info: #79009"use cache"misplacement error": #79160swc_coretov24.0.0: #79103vitest.mdx(How to set up Vitest with Next.js): #78654read_globfromnode_native_bindings: #79154rustc-icefiles to gitignore: #79167mjscodeblocks tojs: #79163launch.jsonto improve debugging in VSCode (#76559)": #79206Byte::from_staticwhen possible: #79215read_globfunction: #79166"use cache"misplacement error: #79222ShrinkToFitforAutoMap: #79218cacheLifeandcacheTagfor prerender-missing-suspense error: #79247minify(): #79261minify()": #79296sourcemapto makeflatten()faster: #79297--rspackflag for create next app: #79077swc_coretov25.0.0: #79319dynamicIOin global default cache handler test: #79300server-source-maps: #79108pprconfigs from Dynamic IO tests: #79305write fileeffect: #79318nextand@next/swcversions: #79036nextand@next/swcversions: #79036RuleCondition::matchesThis trades allocations due toBox::pincalls during recursion for an explicit stack and a tiny interpreter loop.: #79310swc_coretov26.0.0: #79411htmlLimitedBotsconfig value should be a RegExp: #79454swc_coretov26.0.1andstyled-jsx: #79464swc_coretov26.0.1andstyled-jsx: #79464chunksinrscModuleMappingempty: #79511signatureso that it works in a web worker.: #79509PassFactory: #79555"use cache"deploy tests: #79586stabledist tag for backport releases instead oflatest: #79596GITHUB_TOKENis needed to open release pr: #79609backportNPM dist tag instead ofstablefor backports: #79612backportNPM dist tag for backports: #79538(#number)at last: #79611Undefined default exporttest: #79632turbo-tasks-memorybackend: #79560Caching and Revalidatingpage: #79493ld+jsonscript: #79627swc_coretov26.2.2: #79756force-staticw/ revalidate, revalidatePath, and revalidateTag: #79780pnpm unpack-next: #79626styled-jsxin lightningcss mode: #79802--features turbo-tasks-backend/lmdb: #79530ResultforRope#read: #80004rust-sourcemaptov9.2.2: #80066Lightningcssprefix for CSS types: #80067swc_coretov26.3.3: #80059Codeforminify(): #79991--all-features: #80117intoand from and cell involving RcStr: #80076swc_coretov26.4.4: #80161Value<ClientContextType>by makingClientContextTypea TaskInput: #80127Value<ReferenceType>by makingReferenceTypea TaskInput: #80130types-and-precompiled: #80162'use cache'works ingenerateMetadata: #80172Value<Pattern>with justPatternValue<ExecutionEnvironment>with justExecutionEnvironment: #80135Value<ContentSourceData>with justContentSourceData: #80140Value<..>instead make the payloads impl Taskinput: #80141Value<..>instead make the payloads impl TaskinputValue<..>and delete the type: #80144_for_inputoptions fromturbo_tasks::valueand theTypedForInputtrait.: #80185Ropecorrectly: #80335sourcesfield in the source map: #80337swc_coretov27.0.1: #80338turbo_tasks::value_traititems be annotated withturbo-tasks::function: #79178browserWithResponse()method inempty-fallback-shellstests: #80406swc_coretov27.0.2: #80412styled-jsxSWC plugin: #80459swc_coretov27.0.4: #80467empty-fallback-shellstest suite to justfallback-shells: #80461value_traititems to not be annotated withturbo_tasks::function: #79217static-exports.mdx: #80541Request::parse(Pattern)the recursive portion doesn't need to be async: #80510turbo_tasks::functionfromAssetContext::layer: #80592swc_coretov27.0.6: #80626sourceMap.file: #80625awaitas non-async: #80628is_immutableflag dynamically: #80506generateStaticParamstofallback-shellssuite: #80462turbotracefeature: #80572turbo-tasks-fsto take&selfinstead: #80633inject_helperspass multiple times: #80755HELPERSof SWC: #80791swc_coretov29.1.2: #80659FunctionId: #80809swc_coreto29.1.4: #80872assert/strictas external: #80884evalin dev: #80857thiswhen accessing named properties of namespace: #80896mimallocfor codspeed to make it realistic: #80877swc_coretov29.2.0: #80919canarybranch: #80928ModuleIdtype: #80605thisexpressions to fix a subtle esm bug and simplify the client side runtime: #80925swc_ecma_minifierto turbopack trace target: #80977Code::generate_source_map: #80978TaskIds: #80830JSON.parse <anonymous> (0:0)stack frames in test snapshots: #81044create_visitorrustfmt-able: #81053tokio::fsusages: #80674FileSystemPathinstead ofVc<T>: #80634.tsext is most commonly used for middleware and routes: #81059typeof windowin node_modules for server: #80945thisanalysis: #81076swc_coretov29.4.0: #81092concurrentof the SWC minifier.: #80981Issue::sourceon more Issue subtypes: #80874Issue::sourceon more Issue subtypes: #80874dynamicIOsync IO access test suite: #81045ReducedGraphsandfind_server_entries: #81118ExecuteContextImpl::lower_read_transaction: #80822BackingStorageforEither, replaceNextTurboTaskswith a type alias: #80823swc_coretov30.0.1: #81179EcmascriptExports::Unknown: #81214primary_chunkable_referenced_modules: #81206swc_coretov30.1.1: #81276File=> json faster: #81279blurDataURL: null: #81387headinstead of the end of thebody: #81425segment cache (CDN cache busting)redirect test: #80967EsRegex::capturesto return an iterator, useNonefor unmatched capture groups: #81200'use cache': #81431clone_valueagain: #81539@opentelemetry/apiresolve fallback: #81541*.single.csschunks in dev: #81490fallback-shellsdeploy test: #81593traverse_edges_from_entries_topologicaltotraverse_edges_from_entries_dfs: #81481Credits
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.0Compare Source
v15.3.6Compare Source
Please see CVE-2025-66478 for additional details about this release.
v15.3.5Compare Source
Core Changes
Misc Changes
Credits
Huge thanks to @ztanner, @mischnic, and @bgw for helping!
v15.3.4Compare Source
Core Changes
Credits
Huge thanks to @huozhi for helping!
v15.3.3Compare Source
Core Changes
vary(#79939)Credits
Huge thanks to @gaojude, @kdy1, @bgw, and @unstubbable for helping!
v15.3.2Compare Source
Core Changes
Credits
Huge thanks to @ijjk, @huozhi, @kdy1, @wbinnssmith, and @bgw for helping!
v15.3.1Compare Source
Core Changes
Credits
Huge thanks to @kdy1 and @styfle for helping!
v15.3.0Compare Source
Core Changes
<select>styling for consistency: #76973029e8bd6-20250306to0ca3deeb-20250311: #769890ca3deeb-20250311to6aa8254b-20250312: #77033sizesetting to preferences: #77027'seconds'cache life profile: #77084next info: #770596aa8254b-20250312to5398b711-20250314: #77129useLightningcssoption tostyled-jsxcorrectly: #77008useErrorOverlayReducer: #77205revalidate*: #76885revalidate*work when followed by a redirect in a route handler: #770905398b711-20250314toc69a5fc5-20250318: #77249"use cache"caches when Draft Mode is enabled: #77141c69a5fc5-20250318todb7dfe05-20250319: #77295db7dfe05-20250319to740a4f7a-20250325: #77507740a4f7a-20250325to313332d1-20250326: #77527expireTags/getExpirationunnecessarily: #77570NEXT_PRIVATE_DEBUG_CACHEenv variable for cache handler debug logs: #77585nodejsruntime in middleware: #77553"use cache"revalidation logic out of incremental cache: #77577313332d1-20250326to63779030-20250328: #77643isrFlushToDiskoption to prevent writing optimized images to cache: #70645nodejsruntime in middleware": #77690new URL()forimages.remotePatterns: #7769263779030-20250328to040f8286-20250402: #77742useLayoutEffectwarning if React 18 is used: #77737next start: #77714TurbopackInternalErrors occur: #77660sideEffectsmatching for non-relative globs: #77693issueCountfrom non-asyncerrorsarray: #77821refreshTagsandgetExpiration: #77779"use cache"wrapper: #77827searchParamsaccess in"use cache"triggers error when caught: #77838getSourceFileinstead offileExiststo check file existence: #77863040f8286-20250402to33661467-20250407: #77899next/*entrypoints: #77844Example Changes
canaryversion: #77754Misc Changes
charset=utf-8in data-url source maps: #77112react-refreshas a dependency of plugin: #77142swc_coretov16.6.0: #77155swc_coretov16.6.2: #77194.minify()of lightningcssStyleSheet: #77313swc_coreand userayoninstead ofchili: #77338copy_dirconcurrency to avoid running out of file descriptors: #77468swc_coretov16.10.0: #77489launch.jsonto improve debugging in VSCode: #76559bunand other package manager: #77633--js-buildas option instead of--no-js-build: #77686Metadata and OG imagespage: #74077Upgradepage: #77717ExamplestoGuides: #77722swc_coretov19.0.0: #77669Vcin a struct: #77756instrumentation-clientfollow up: #77752styled-components: #77736use serverand update examples: #77770use serverand update examples": #77771hygieneif mangling is disabled: #77815Deep Divesection placeholder: #77724await import("path")in static analysis: #77811import_mapoption ofswc_emotioncorrectly: #71776swc_coretov21.0.1: #77918Getting StartedSection: #77921Credits
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.6Compare Source
Please see CVE-2025-66478 for additional details about this release.
v15.2.5Compare Source
Core Changes
Credits
Huge thanks to @huozhi, @gaojude and @kdy1 for helping!
v15.2.4Compare Source
Core Changes
Credits
Huge thanks to @ijjk and @ztanner for helping!
v15.2.3Compare Source
Core Changes
Credits
Huge thanks to @ijjk, @ztanner, and @huozhi for helping!
v15.2.2Compare Source
Core Changes
d55cc79b-20250228to443b7ff2-20250303: #76804443b7ff2-20250303toe03ac20f-20250305: #76842__next_app__module loading functions: #74566e03ac20f-20250305to029e8bd6-20250306: #76870xbutton present: #76898Example Changes
Misc Changes
redirectin client components: #76332labeler.json: #76828SyntaxContextfor__turbopack_esm__: #73544next.browserinstead ofwebdriverin pages/ client-navigation: #76867swc_coretov16.4.0: #76596v1.0.0-alpha.64: #76856__dirname: #76902Credits
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.1Compare Source
Core Changes
sourcePackagereferences: #76550revalidateproperty from incremental cachectxforFETCHkind: #76500cache-controlheader and prerender manifest: #762075.8.2: #76709generateStaticParams: #7671322e39ea7-20250225tod55cc79b-20250228: #76680Example Changes
paramscode blocks: #76705Misc Changes
swc_coretov16.0.0: #76414parallel-routes-revalidationtest: #76600octokit.rest.issues.addLabelscall: #76601devIndicatorsand note on deprecated options: #76611htmlLimitedBotsoption: #76616test-turbopack-integrationnot having any shards : #76355describeVariantshelper: #76631toDisplayRedbox(): replace all occurrences of testDir: #76618Credits
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.0Compare Source
Core Changes
unstable_allowDynamicwhen used with pnpm: #73732.test.files from using error code plugin: #73868react-dev-overlaybefore fork: #74016GroupedStackFrames.tsx: #74028State<T>types into OperationValues and/or NonLocalValues: #74008react-dev-overlayfor new UI: #74017.stories.and.test.files from taskfile watch and error plugin: #740647283a213-20241206to372ec00c-20241209: #73749root-layout-missing-tags-error.tsxto pascal case: #74089bun.lockas package manager lockfile: #74056372ec00c-20241209to518d06d2-20241219: #74155images.qualitiesin next.config: #74257518d06d2-20241219to3b009b4c-20250102: #744923b009b4c-20250102to3ce77d55-20250106: #745573ce77d55-20250106to7b402084-20250107: #745997b402084-20250107to42687267-20250108: #7464942687267-20250108to74ea0c73-20250109: #7469374ea0c73-20250109to056073de-20250109: #74754056073de-20250109to540efebc-20250112: #74805540efebc-20250112tocabd8a0e-20250113: #74828"use cache"in metadata route handlers: #74835cabd8a0e-20250113tob3a95caf-20250113: #74868<Link prefetch={true}>: #74172CMD + .keyboard shortcut to show/hide: #74878b3a95caf-20250113tof0edf41e-20250115: #74890f0edf41e-20250115tob158439a-20250115: #74936b158439a-20250115to5b51a2b9-20250116: #74993waitUntil: #75041colorminfeature fromcssnano: #53393use cacheusage: #750075b51a2b9-20250116to9b62ee71-20250122: #75187afterexport in next-types-plugin: #75190linkheader from middleware with the ones from React: #73431"use cache": #74652"use cache"closures: #74750internal_disableSyncDynamicAPIWarningsflag: #75231experimental.useCacheflag: #752409b62ee71-20250122toae9017ce-20250122: #75233opengraph-imagefiles work with the node.js runtime: #75274useCacheis enabled and Edge runtime is used: #75279use serverdiagnostics for type exports: #74256edge-instrumentation.js: #75289ae9017ce-20250122tode1eaa26-20250124: #75286/_errorfallback in dev: #75354de1eaa26-20250124to9eabb373-20250124: #75367captureOwnerStackaccess onexperimental.reactOwnerStack: #75241errors.tsxand its story: #75392null is not an object (evaluating 't.parallelRoutes.get'): #753609eabb373-20250124to37906d4d-20250127: #75398"use cache"cache keys: #7547437906d4d-20250127toc492f975-20250128: #75434React.cacheusage in"use cache"functions: #75520c492f975-20250128toa4b2d0d5-20250203: #75649a4b2d0d5-20250203to0a82580b-20250203: #75660searchParamsin"use cache"page should not cause dynamic: #75662rootParams()is now a plain Proimse (not exotic): #757170a82580b-20250203tod85cf3e5-20250205: #75698turbo-tasks-macrofromtest-cargo-unit: #75776d85cf3e5-20250205toff628334-20250205: #75757@types/react-domversions: #75606"use cache"functions in RSC payload: #75786"use cache"withoutput: 'export': #75794metadataand<Link>: #75576ff628334-20250205to8759c5c8-20250207: #75796switch: #758548759c5c8-20250207to93b58361-20250209: #75868no-storerequest header for"use cache"entries in dev mode: #7575493b58361-20250209tocd90a4d8-20250210: #75914--no-manglingCLI option fornext build: #75921cd90a4d8-20250210tof83903bf-20250212: #75967compilation.{emitAsset,updateAsset}api rather than mutatingassetsobject: #75927f83903bf-20250212tocbbe8666-20250213: #76010experimental.reactOwnerStackflag: #76021rootParams()incachescope: #75801devIndicatorsoptionsappIsrStatusandbuildActivity: #76067devIndicators.buildActivityPositionand rename toposition: #76069writeConfigurationDefaults: #76106"use cache"caches during on-demand revalidation: #76100"use cache"in dev mode: #76122readyErrorstoruntimeErrors: #76208next/linkerror tests: #7621432b0cad8-20250213to662957cc-20250221: #76333<a>tag focus ring: #76374tsconfig.build.jsonfor production build: #76373N issuessection: #76398normalModule.typeto determine module type: #76338loadingoption to acceptReactNode: #76402NEXT_TELEMETRY_DISABLEDis set: #76423reportError: #76101662957cc-20250221to25677265-20250224: #7643725677265-20250224to22e39ea7-20250225: #76481Nof--size-Nwithpxvalue of base font16px: #76384remfor sizes andpxfor spacings: #76385storybook@8.6.0: #76511Ignored-listed->Ignore-listed: #76554receiveExpiredTags: #76561Example Changes
search: ''onremotePatterns: #73925with-tailwindcssexample: #73919next-config-jsdocument path: #73774with-styled-componentsREADME: #73729with-orbit-componentsREADME: #74011with-mdx-remoteexample to utilize the App Router: #74067app-dirandwithprefix in themdxdirectory name: #73458with-zonesrepository name in the deploy link: #74852Misc Changes
NonLocalValuederives to types deriving TraceRawVcs: #73714NonLocalValuefor allResolvedVcs andOperationVcs: #73764swc_coretov9.0.0: #73696explicit_resource_managementtransform: #73802afteranderror handling: #73844swc_coretov9.0.0": #73866NonLocalValueforState<T>whereT: NonLocalValue: #73770unstable_expirePathandunstable_expireTagdocs: #73856Examplessection: #73858routing/index.mdx: #73859defining-routes.mdxandpages.mdx: #73863next/image: #73923WebVitalscomponent: #73869silenceDeprecationswas not overwritten with user options: #73937examplespage: #73907next.config.tscode switcher to Redirecting docs: #73848linking and navigation: #73846next-intlayerinto i18n solution list: #73750tailwind.config.tsto usesatisfiesoperator: #73924ChunkItems reference onlyOutputAssets: #73824.to_resolved().awaitinside a loop: #74112thisandargumentsin nested function expression: #74179switchercode blocks and types in examples: #74083Mutating Datapage: #74018Error Handlingpage: #74069browser.*in stack: #74553SingleModuleGraphtoturbopack-core: #74571.stories.tsxto vscode file nesting: #74593swc_coretov10.1.0: #74580.cursorignore: #74763chunk_content, not ChunkItems: #74040import * as R: #74725#[must_use]annotation: #74906awaitofparamswhen metadata with an image file pt2: #74193ConstantValue: #74965AtomandJsWordvariant ofConstantString: #74967ConstantValue::Regex: #74968Effect: #74969swc_coretov10.2.5: #75002next-custom-transformstests to verify source maps: #75005swc_coretov10.3.0: #75018EsmAssetReference::new: #75040EffectArg: #74973swc_coretov10.5.0: #75098u32for the total node count: #75100local_resolutionfeature by default: #75051ResolvedVc::resolveas deprecated to prevent resolving an already-resolved ResolvedVc: #75168endpoint.write_to_disk()in favor of standardizedendpoint.output(): #75059Cow::into_ownedinstead of.to_string(): #75216robotsforgenerateMetadataspec: #75229non_local_returnsupport from#[turbo_tasks::function]: #75209styled-jsx,emotion): #75236ReadRawVcFuture.turbo_task: #75217should not cause error when removing loading.jsto flaky manifest: #75239test/e2e/app-dir/segment-cache/revalidation/segment-cache-revalidation.test.ts: #75249PassAPI forstyled-jsxSWC plugin: #75271is_transientonOperationVc: #75291#[turbo_tasks::function(..)]: #75259<Form>example.: #75386swc_coretov12.0.0: #75327next-page-static-infouseAtominstead ofString: #75587cjs_optimizeruseAtominstead ofString: #75588SyncRc<DashMap<_, _>>usage withRc<RefCell<FxHashMap<_, _>>>: #75534rewrite-headerstests that are dependent on Vercel site config: #75647next_ssguseAtominstead ofString: #75591OutputAsset::path(): #75659Atominstead ofString: #75592Atominstead ofString: #75593Atominstead ofString: #75594Atominstead ofString: #75595Atominstead ofString: #75596Arc: #75601cookies/headers/draftMode in "use cache"test: #75675TaskInput::resolve: #75661swc_coretov13.0.4: #75684objfor member replacements: #75453use-cachetest suite: #75681with_modules: #75700ModulePartaTaskInput: #75364nullif Redbox has no component stack: #75744swc_coretov13.1.0: #75771shrink-to-fitcrate instead: #75777final_read_hintAPI and changeclone_valuetoowned: #75852use-cache.mdx: #75848unauthorized: #75420TURBO_REMOTE_ONLY: #75832ignoreList: #75907usepattern: #75529make_chunksa non-turbo-tasks-function: #76042experimental.reactOwnerStack: #76123reportError: #76115padding-bottomwithdevIndicators: falsefor scroll position testing: #76105chunk_item.id(): #76110swc_coretov14.0.0: #76135minify(): #76139use-cache-unknown-cache-kinddev tests in sandboxes: #76171ppr-fulltests: #76271building.mdto contain descriptive build process: #76393toDisplayRedbox()matcher: trim line endings: #76404.cursorignoreto.cursorindexingignore: #76494api-reference/functions/cookies.mdx: #76376failedset in Turbopack manifest: #76542Credits
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.9Compare Source
Please see CVE-2025-66478 for additional details about this release.
v15.1.8Compare Source
Core Changes
Credits
Huge thanks to @amannn, @lubieowoce, and @ztanner for helping!
v15.1.7Compare Source
Core Changes
Credits
Huge thanks to @lubieowoce and @ztanner for helping!
v15.1.6Compare Source
Core Changes
Credits
Huge thanks to @lubieowoce and @ztanner for helping!
v15.1.5Compare Source
Core Changes
Credits
Huge thanks to @ijjk, @huozhi, @matmannion and @ztanner for helping!
v15.1.4Compare Source
Core Changes
Credits
Huge thanks to @ and @ for helping!
v15.1.3Compare Source
Core Changes
Credits
Huge thanks to @unstubbable and @ztanner for helping!
v15.1.2Compare Source
Core Changes
7283a21-20241206 to65e06cb-20241218: https://github.com/vercel/next.js/pull/74117Credits
Huge thanks to @ztanner for helping!
v15.1.1Compare Source
Core Changes
Credits
Huge thanks to @devjiwonchoi and @ztanner for helping!
v15.1.0Compare Source
Core Changes
server-source-mapsscenarios to cover Edge runtime: #72288swc_css: #72602rcfrom URL: #72599no-img-elementlint error message: #72410"use cache"closure args into a single parameter: #72587"use cache"functions: #72506clientSegmentCacheflag: #72626compiler.defineoption: #71802getting-started/react-essentialspath: #722505.6.3: #72625@capsizecss/metricsto 3.4.0 for Geist Google Font: #72746enabledconfig from server actions transforms: #72755eslint-plugin-reactto 7.37.0: #727595c56b873-20241107to7ac8e612-20241113: #72768"use cache"is used withoutdynamicIOenabled: #72781legacy-js-apiwarning: #726327ac8e612-20241113to380f5d67-20241113: #72819revalidate(Tag|Path)toexpire(Tag|Path): #72826prefetchAPI: #72861next-size-adjustmeta tag: #72994typedEnv: #70951next start: #73105380f5d6-20241113 tob01722d-20241114: #73107exactOptionalPropertyTypes: #72936revalidate(Tag|Path)toexpire(Tag|Path)": #73269notFound()work in"use cache"page: #73210@swc/coreto 1.9.3: #73420warnOnce(): #73483b01722d5-20241114to1b1283ad-20241203: #735061b1283ad-20241203tode68d2f4-20241204: #73525@types/react: #73563de68d2f4-20241204to1c9b1387-20241204: #73565unstable_after: #736051c9b1387-20241204to7283a213-20241206: #73608warnOnce()lru: #73742Example Changes
playwright.gitignore: #72447awaitparams when dynamic routing: #72896app-dirini18n-routingdirectory name: #73453examples/**Eslint to v9: #73560next-env.d.tsfiles: #73673with-sassREADME.md: #73668next-offlineexample: #73675with-postgres: #73587with-emotion-*directories: #73674with-styletronREADME.md: #73411with-babel-macrosREADME.md: #73410with-plausibleREADME: #73305image-legacy-component: #73414with-styled-components-babel: #73229with-storybook-styled-jsx-scss: #73228Misc Changes
next.config.jsAPI pages under aconfigfolder, fix headings in TS and ESLint config pages: #72465return Err(anyhow!())withanyhow::bail!(): #7248766855b96-20241106to5c56b873-20241107: #72469swc_coretov5.0.4fromv5.0.1: #72604patchFileDelayflag: #72439functionto page component examples: #72620ResolvedVcforturbopackcrate: #72791@container: #72607emit_errorfunction: #72811ResolvedVcforturbopack-ecmascript: #72564rootDirdoc: #72893frameborder, adjustallowFullScreenand update the demo: #72644customServerflag from custom server docs: #72962FnExprandFnDeclserver function transforms: #72960debugscript in test directories: #72992all_modules_and_affecting_sourceshelper function: #73016retryaroundbrowser.eval: #72999awaitwhen using params: #73044params.id: #73045Redirectingfix route handler path: #72617waitForAndOpenRuntimeErrortoopenRedbox: #72996expirePathandexpireTag: #73096"use memo": #73053thisandargumentsin server functions: #73059lightningcsstov1.0.0-alpha.61: #73161forbidden,unauthorized, andauthInterrupts: #73039.eslintrc.jsonwitheslint.config.mjs: #73162ResolvedVcforturbopack-css: #73172ResolvedVcforturbopack-core: #73065ResolvedVcforturbopack,turbopack-tests,turbopack-wasm: #73196ResolvedVcforturbopack-nodejs: #73200ResolvedVcforturbopack-env: #73202forbiddenandunauthorizednits: #73213turbopackAPI Reference: #73215superin static class methods with server function directives: #73061ResolvedVcfornext-api, part 1: #73234ResolvedVcfornext-api, part 2: #73235paramstoawait params: #73254Layouts and Pages: #73268ResolvedVcfornext-api, part 3: #73236ResolvedVcfornext-api, part 4: #73237ResolvedVcforturbopack-browser: #73198ResolvedVcfornext-core: #73177ResolvedVcfornext-api, part 5: #73238Vc<T>in turbo-tasks types: #73298nwsapi(revert later): #73351nwsapi(revert later)": #73353ResolvedVc<T>for struct fields innext-core: #73310ResolvedVc<T>for struct fields inturbopack-ecmascript: #73302ResolvedVc<T>for struct fields inturbopack-css: #73300ResolvedVc<T>for struct fields innext-api, part 1: #73366defaultto page component examples: #73233.gitignoreto ignore all.envfiles: #73415swcMinifyflag: #73281file conventions,functions, anderrors: #73376Images and Fontsfeedback: #73470ResolvedVc<T>for struct fields inturbopack-core: #73301ResolvedVc<T>for struct fields inturbo-tasks: #73371ResolvedVc<T>for trivial struct fields: #73372checktoretryin hmr.test.ts: #73590unoptimized: #73604ResolvedVc<T>for struct fields in extra crates: #73451ResolvedVc<T>for struct fields innext-api, final part: #73367.to_resolved()calls: #73631canarypage to upgrade guides: #73518with-next-sasstowith-sass: #73670turbopack-dev-examples-manifest: #73230build_and_deployon docs-only changes: #73659after: #73692forbiddenandunauthorizedAPIs: #73513after: #73038Credits
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.5Compare Source
Please see CVE-2025-66478 for additional details about this release.
v15.0.4Compare Source
Core Changes
Credits
Huge thanks to @eps1lon
v15.0.3Compare Source
Core Changes
basePathinfindSourceMapURL: #71719pnpm-workspace.yamlto test fixtures to bypass PNPM workspace checks: #7172669d4b800-20241021to45804af1-20241021: #71718--turbopackflag when--turboexists innext dev: #7173045804af1-20241021to28668d39-20241023: #7174528668d39-20241023to1631855f-20241023: #71769turbopack://[project]/...sourcemap uris withfile://...in development: #71489--turboto--turbopackif applicable: #71737"use cache": #71793--enable-source-mapsby default innext dev: #71820registerClientReferencefor ESM client component modules: #71968awaitofparamswhen metadata is used with an image file: #718711631855f-20241023to02c0e824-20241028: #71979ignoreListwhen Webpack is used: #71821next-dynamic-access-named-export: #72016Example Changes
Misc Changes
__turbopack_original__while tree shaking: #71547"use cache"on before code snippet: #71815packages/next/src/compiled: #71986use cache: Add text code formatting: #71999cacheTagFunction Usage: #71912use cachecomments : #71981Credits
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.2Compare Source
Core Changes
basePathinfindSourceMapURL: #71719pnpm-workspace.yamlto test fixtures to bypass PNPM workspace checks: #7172669d4b800-20241021to45804af1-20241021: #71718--turbopackflag when--turboexists innext dev: #7173045804af1-20241021to28668d39-20241023: #7174528668d39-20241023to1631855f-20241023: #71769turbopack://[project]/...sourcemap uris withfile://...in development: #71489--turboto--turbopackif applicable: #71737"use cache": #71793--enable-source-mapsby default innext dev: #71820registerClientReferencefor ESM client component modules: #71968awaitofparamswhen metadata is used with an image file: #718711631855f-20241023to02c0e824-20241028: #71979ignoreListwhen Webpack is used: #71821next-dynamic-access-named-export: #72016Example Changes
Misc Changes
__turbopack_original__while tree shaking: #71547"use cache"on before code snippet: #71815packages/next/src/compiled: #71986use cache: Add text code formatting: #71999cacheTagFunction Usage: #71912use cachecomments : #71981Credits
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.1Compare Source
Core Changes
@next/fontfrom optional Next.js packages to install: #7156365a56d0e-20241020to69d4b800-20241021: #71568endpointfunction indirection: #71572Example Changes
with-supabaseto be compatible with Nextjs 15: #71631Misc Changes
module_resolution: "nodenext"withmjsorcjs: #71635pnpm debug: #71653Credits
Huge thanks to @gnoff, @devjiwonchoi, @samcx, @ztanner, @unstubbable, @huozhi, @mischnic, @lubieowoce, @eps1lon, @ivasilov, @styfle, @bgw, @stipsan, and @timneutkens for helping!
v15.0.0Compare Source
Core Changes
lib/helpers/install.tsto better support pnpm and properly respectrootargument: #64418Metadata.openGraphvalues not resolving basic values whentypeis set: #63620postcsswithuseLightningcss: #64379@appsignal/nodejsto the external packages list: #64503swc_coretov0.90.33: #64553isolated-vmto server-external-packages.json: #64749next experimental-testcommand: #6435214898b6toc3048aa: #64798squooshin favor ofsharpas optional dependency: #63321@swc/coretov1.5.0: #65022nextWebpack alias last: #65123#[turbo_tasks::value(transparent)]attributes: #65336concatenate_output_assetsfunction: #65337strictNextHeadis enabled: #65408revalidatePath& fix cache debug logic: #65365serverComponentsExternalPackagesandbundlePagesExternals: #65421bundlePagesRouterDependencies: #65520Content-Dispositiontoattachment: #65631next/headchildren reconciler by default: #65418srchas leading or trailing space: #65637clientTraceMetadataexperimental option to propagate tracing data to the client: #64256EcmascriptChunkingContext: #657164508873to04b0588: #65864next/font/localwithBeforeResolvePluginand show custom error message: #65870pprflag ofnext.config.js: #6602804b0588to81c5ff2: #65869outputparameter: #6608381c5ff2tof994737: #6609381c5ff2tof994737: #66093@types/packages appear to be missing: #66127lib/helpers/install.tsto better support pnpm and properly respectrootargument: #64418Metadata.openGraphvalues not resolving basic values whentypeis set: #63620postcsswithuseLightningcss: #64379@appsignal/nodejsto the external packages list: #64503swc_coretov0.90.33: #64553isolated-vmto server-external-packages.json: #64749next experimental-testcommand: #6435214898b6toc3048aa: #64798squooshin favor ofsharpas optional dependency: #63321@swc/coretov1.5.0: #65022nextWebpack alias last: #65123fetchPriorityprop: #65235#[turbo_tasks::value(transparent)]attributes: #65336concatenate_output_assetsfunction: #65337strictNextHeadis enabled: #65408revalidatePath& fix cache debug logic: #65365serverComponentsExternalPackagesandbundlePagesExternals: #65421bundlePagesRouterDependencies: #65520Content-Dispositiontoattachment: #65631next/headchildren reconciler by default: #65418srchas leading or trailing space: #65637clientTraceMetadataexperimental option to propagate tracing data to the client: #64256EcmascriptChunkingContext: #657164508873to04b0588: #65864next/font/localwithBeforeResolvePluginand show custom error message: #65870pprflag ofnext.config.js: #6602804b0588to81c5ff2: #65869outputparameter: #6608381c5ff2tof994737: #66093typeof windowinlining for Turbopack: #66128path-to-regexp: #66242mswversion tov2.3.0: #66351BrowserInterfacetype: #66461next/navigationtype augmentation: #66489RcStr: #66262swc_coretov0.92.10": #66640staticWorkerRequestDedupingflag & unused IPC code: #66655f994737to1df34bd(19.0.0-rc.0): #665331df34bdf62to6230622a1a: #66726swc_coretov0.93.2: #66698InvalidImportResolvePluginaBeforeResolvePlugin: #66622workercondition name when resolving files in the Edge runtime: #66808swc_coretov0.95.2: #66902back-endshould bebackend: #66974react-dom/server.edgeinstead of.browserin Next.js runtime: #66954implementationto support sass-embedded: #64577string | undefinedtostring: #65248resolveAbsolutePathto browser runtime: #67215globw/fast-globin eslint plugin: #67261wandqquery string validation for integers: #67293versionInfoon Turbo HMR: #67309priority=trueandfetchPriority=high: #67351@swc/corenpm package tov1.6.6: #67379module: "unknown"to SWC minfiier: #66817isNodeDebuggingoption from next server: #67492next.config.ts: #63051layerAssetsproperty from FlightData: #67435envin dev mode: #67157swc_coretov0.96.9: #67378app-renderinto a dedicated function: #67524typedEnvis notreadonly: #67693<AppRouter />render structure: #64594fetchServerResponseparams into options object: #67526packages/fontandturbo/generators: #67687@swc/coreand@swc/heleprs: #67757✓ Readylog inNextInstance#start: #67767react_server_componenttransform: #67335typedRouteswhen settingpageExtensions- for typedRoutes MDX support: #67824experimental.serverComponentsHmrCacheby default: #67800compiler.removeConsolewith Turbopack: #67849reactRemovePropertieswith Turbopack: #67853logging: falsein next config: #67590next lintwith async eslint-formatters: #678606230622a1a-20240610todfd30974ab-20240613: #667116230622a1a-20240610to76002254-20240724: #68149NextNodeServer: #682866230622-20240610 to7600225-20240724 (#68149)": #683006230622a1a-20240610to3208e73e-20240730: #68330indexOf === 0withstartsWith: #681163208e73e-20240730to06d0b89e-20240801: #68444cssnanon-preset-simpleunit test with source: #68508path-to-regexpviancc: #68465ENOWORKSPACESerror when fetching registry: #68522normalize-asset-prefixadding leading slash when URLassetPrefixis provided: #68518assetPrefixset to URL: #68622@ampproject/toolbox-optimizerinto version control: #68466react-dom/staticaliases: #6866306d0b89e-20240801to187dd6a7-20240806: #68594'eval-source-map'andmangle: false: #68688fetchfunction should not buffer a streamed response: #68447pnpm build --filter nexton a clean repository: #68693deleteAppClientCache()call from webpack plugin: #68535require.cachehandling: #68743loadingfrom prefetch cache entries across searchParams: #68340maxDurationconfig to the children page segments on build: #68793assert_returns_resolved_valueinto helper module: #68867strongly_consistent/ReadConsistencyinstead of a bool: #68913187dd6a7-20240806to49496d49-20240814: #6889849496d49-20240814to1eaccd82-20240816: #68991experimental.turbo: #69050react-dom/server.browseris used: #69142optimizeFonts(Automatic font optimization) superseded by next/font: #691371eaccd82-20240816toeb3ad065-20240822: #69196eb3ad065-20240822tof90a6bcc-20240827: #6941519.0.0-rc-f90a6bcc-20240827to19.0.0-rc-7771d3a7-20240827: #69417--fileoption innext lintcommand forlint-stagedcompatibility: #69220swc_coretov0.103.1: #69605experimental.turbo.rootconfig option: #69737isDynamicPostpone: #694577771d3a7-20240827to94e652d5-20240912: #70037geoandipfromNextRequest: #68379import-in-the-middleto server-external-packages: #68937Options to be returned byVersionedContentMap: #6907994e652d5-20240912to206df66e-20240912: #70076resetprop in error files: #69777_privatefolder convention: #64177206df66e-20240912toa99d8e8d-20240916: #70190dynamicIOexperiment toroute.tsmodules: #70208URL.canParsefor browser compatibility: #70228a99d8e8d-20240916to5dcb0097-20240918: #70225@next/codemodtests in CI: #702485dcb0097-20240918toe740d4b1-20240919: #70260app_structurefromnext-swc-napi: #70282loader_treetoapp_page_loader_tree: #70283decodingprop: #70298geoandipofNextRequest: #70064appdir in TS setup tip: #70337createAppRouteCodefromnext-app-loader.ts: #70352e740d4b1-20240919toe4953922-20240919: #70290upgradecommand: #69935e4953922-20240919to5d19e1c8-20240923: #70351images.remotePatterns.search: #70302createServerReference, and pass additional parameters: #69190778e1ed2-20240926to3edc000d-20240926: #70560connection()as a new dynamic API: #69949dynamicIOexperiment to use React canary: #70571revalidateTag()behaviour when invoked in server components: #704463edc000d-20240926to2d16326d-20240930: #70629apple-mobile-web-app-capablewith `mobile-web-ap…: #70363images.localPatternsconfig: #70529React.use()to unwrap async APIs in the browser: #70677awaitofparamswhen metadata is used: #70698images.localPatternsconfig inimages-manifest.json: #70730registerServerReferencefunction: #70563createServerReferenceandregisterServerReference: #70564dynamicIOis enabled: #70784app-dir-runtime-config-experimental-edgecodemod: #71008next-dynamic-access-named-exportcodemod: #71012stats.json: #70996searchParams: #71142NextEcmascriptClientReferenceTransition: #706032d16326d-20240930to70fb1363-20241010: #71118getStaticPropsappears instead ofgenerateStaticParamsduring app router build: #71033"use cache"in route handlers: #70897loadComponentsalso duringnext build: #71202Errorinstances in App router: #71210packagesdirectory: #7118970fb1363-20241010tocd22717c-20241013: #71223next lint: #71218LoadingBoundary: #71222'use cache'in route handlers using the Edge runtime: #71258Documentation Changes
Internationalization (i18n) Routing: #63853Example Changes
pathname: #64785middlewareexample to App Router: #65618middlewareexample to App Router: #65618with-google-tag-managerexample that uses@next/third-parties: #57364use-supabase| Multiple improvements : #69407cms-umbracoexample: #52777useFormStateoveruseActionState: #69547versionattribute post deprecation: #70108cms-sanityexampleREADME.md: #71211Credits
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.33Compare Source
Core Changes
Credits
Huge thanks to @ztanner for helping!
v14.2.32Compare Source
Core Changes
Credits
Huge thanks to @ztanner for helping!
v14.2.31Compare Source
Core Changes
Credits
Huge thanks to @styfle and @ztanner for helping!
v14.2.30Compare Source
Core Changes
config.allowedDevOrigins(#80410) (Learn More)Credits
Huge thanks to @ijjk and @ztanner for helping!
v14.2.29Compare Source
Core Changes
Credits
Huge thanks to @ijjk for helping!
v14.2.28Compare Source
Core Changes
Credits
Huge thanks to @ztanner for helping!
v14.2.27Compare Source
Core Changes
Credits
Huge thanks to @ztanner for helping!
v14.2.26Compare Source
Core Changes
v14.2.25Compare Source
Core Changes
Credits
Huge thanks to @ijjk for helping!
v14.2.24Compare Source
Core Changes
Credits
Huge thanks to @ztanner for helping!
v14.2.23Compare Source
Core Changes
Credits
Huge thanks to @styfle, @ijjk and @lubieowoce for helping!
v14.2.22Compare Source
Core Changes
Credits
Huge thanks to @unstubbable, @ijjk, and @ztanner for helping!
v14.2.21Compare Source
Core Changes
14898b6to178c267: https://github.com/vercel/next.js/pull/74115Misc Changes
Credits
Huge thanks to @unstubbable, @ztanner, and @styfle for helping!
v14.2.20Compare Source
Core Changes
Credits
Huge thanks to @wyattjoh for helping!
v14.2.19Compare Source
Core Changes
Misc Changes
Credits
Huge thanks to @ztanner and @ijjk for helping!
v14.2.18Compare Source
Core Changes
Credits
Huge thanks to @huozhi and @ijjk for helping!
v14.2.17Compare Source
Core Changes
Credits
Huge thanks to @huozhi, @ztanner, and @ijjk for helping!
v14.2.16Compare Source
v14.2.15Compare Source
Core Changes
Credits
Huge thanks to @ztanner, @agadzik, @huozhi, @styfle, @icyJoseph and @wyattjoh for helping!
v14.2.14Compare Source
Core Changes
Credits
Huge thanks to @styfle, @ztanner, @ijjk, @huozhi and @wyattjoh for helping!
v14.2.13Compare Source
Core Changes
Credits
Huge thanks to @raeyoung-kim, @huozhi, @devjiwonchoi, and @ijjk for helping!
v14.2.12Compare Source
Core Changes
Credits
Huge thanks to @alvarlagerlof, @wyattjoh, @delbaoliveira, and @ijjk for helping!
v14.2.11Compare Source
Core Changes
Credits
Huge thanks to @huozhi, @devjiwonchoi, and @ijjk for helping!
v14.2.10Compare Source
Core Changes
Credits
Huge thanks to @huozhi and @ijjk for helping!
v14.2.9Compare Source
Core Changes
Credits
Huge thanks to @huozhi, @ztanner, @ijjk, and @lubieowoce for helping!
v14.2.8Compare Source
What's Changed
Support
esmExternalsin app directoryReading cookies set in middleware in components and actions
Metadata and icons
fb:app_id,fb:admins) in generateMetaData (#65713)Parallel routes fixes
Draft mode and edge improvements
next/imagefixesServer actions improvements
Other changes
Create-next-app updates
create-next-apptemplate CSS (#66043)create-next-apppublic/ assets from local folder→ remote URL (#66931)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.7Compare Source
Core Changes
Credits
Huge thanks to @kjugi, @huozhi, @ztanner, @SukkaW, @marlier, @Kikobeats, @syi0808, @ijjk, and @samcx for helping!
v14.2.6Compare Source
Core Changes
v14.2.5Compare Source
Core Changes
Misc
Credits
Huge thanks to @devjiwonchoi, @ijjk, @emmerich, @huozhi, @kdy1, @kwonoj, @styfle, and @sokra for helping!
v14.2.4Compare Source
Core Changes
Credits
Huge thanks to @ztanner, @ijjk, @wbinnssmith, @huozhi, and @lubieowoce for helping!
v14.2.3Compare Source
Core Changes
Credits
Huge thanks to @huozhi, @samcx, @ztanner, @Jeffrey-Zutt, and @ijjk for helping!
v14.2.2Compare Source
Core Changes
Credits
Huge thanks to @shuding, @coltonehrman, @ztanner, @huozhi, @sokra, @Jeffrey-Zutt, @timneutkens, @wbinnssmith, @wiesson, @ijjk, @devjiwonchoi, and @bgw for helping!
v14.2.1Compare Source
Core Changes
Credits
Huge thanks to @sokra for helping!
v14.2.0Compare Source
Learn more: https://nextjs.org/blog/next-14-2
Core Changes
next infooutput: #60376tersertov5.27.0: #61068swc_coretov0.87.28: #60876unoptimizedprop: #61045_app: #60789optimizeServerReactto config-shared: #61106maxDurationto typescript plugin allowed exports: #59193swc_coretov0.89.x: #61086swc_coretov0.89.4: #61285preset-envmode ofstyled-jsxin webpack mode: #61306.tsfiles as.tsx: #61219swc_coretov0.89.6: #61426@vercel/nft@0.26.3: #61538next/fontmanifest: #61424@swc/helperstov0.5.5: #61659MiddlewareConfiginterface: #61576.eslintrc.jsonnot being created bynext linton App Router: #5510460a927dto2bc7d33: #61522ReadonlyURLSearchParamsshould extendURLSearchParams: #61419squooshin favor ofsharpas optional dep: #61696MiddlewareConfigwith documentation: #61718exports.foofromcjs_finder: #61795squooshin favor ofsharpas optional dep": #61810useLightningcssforstyled-jsx: #61359remotePatternswith a dot in the pathname: #604882bc7d33toba5e6a8: #61837useLightningcssforstyled-jsx: #61359remotePatternswith a dot in the pathname: #604882bc7d33toba5e6a8: #61837fillandsizes="100vw": #61949swc_coretov0.90.7and update turbopack: #61662Next-URL: #61235@vercel/nft@0.26.4: #62019swc_coretov0.90.8: #61976x-forwarded-protoheaders: #58824react-dom/serverin rsc context: #61165zeromqto server-external-packages.json: #62105turbopack-240215.5: #62119Object.hasOwn: #60437terser-webpack-pluginpath intaskfile.jsis missing 'src': #62229swc_coretov0.90.10: #62222next info: #62249<unknown>/stringifymethods in<anonymous>file from stack: #62325'use server'directives: #62259next.config.jsmust have default export: #62341configSchema.tswithexperimental#useEarlyImport: #62408nextwithout building: #62404swc_coretov0.90.12: #62518useSelectedLayoutSegment(s)in Pages Router: #62584MergeCssChunksPlugin: #62746output: "export"by default: #61211html/bodyin root layout: #62815no-unwanted-polyfillw/ new endpoints: #62719streamToStringmethod fromnode-web-streams.helper.ts: #62841swc_coretov0.90.17: #62924fastRefresh: #62848undefinedunstable_cache data: #59126lightningcssfor turbopack by default: #62565swc_coretov0.90.21: #63031optimizeServerReactby default: #62658deploymentIdconfig: #63198bodysizelimiterror: #63295pages/_appis fixed: #63306x-forwarded-portheader: #63303node-web-streams-helpers.ts: #634276c3b8dbto14898b6: #63439createRootLayoutValidatorStream: #63484next/fontis used in_document: #63788noncetonext/scriptwithafterInteractivestrategy: #56995next build --debuglog output layout is broken: #63193next/fontfetching failure: #64008nightly-2024-04-03: #64048?or#: #58293next lintinstallseslint@9which includes breaking changes: #64141link rel="preconnect"with webpack mode: #64011module: Preservetsconfig option: #64110AbortSignalto avoid breakingnode-fetch: #58534overrideSrcprop: #64221--experimental-debug-memory-usageso it's alphabetical: #64264images.loaderFiledoesn't export a default function: #64036Documentation Changes
useSearchParamsbailout error page: #60852default.jspt 1.: #60806skipMiddlewareUrlNormalizein advanced middleware flags: #60841optimizePackageImports: #60058<AppOnly>typo in docs: #61103try/catch: #61138typeargument: #61159revalidatePathinvalidating router cache: #61142public): #61225maxDurationtimeout more clear in documentation: #60005instrumentation.tsAPI reference, improve instrumentation docs: #61403nullfor App Router: #61203default.jsreceiving params: #61454// @​ts-checktonext.config.jsdocs: #61543Configuration
📅 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.
This PR has been generated by Renovate Bot.
8f08567297tocf07c8720dUpdate dependency next to v13.4.3to Update dependency next to v13.4.4cf07c8720dtob90bc3b96bUpdate dependency next to v13.4.4to Update dependency next to v13.4.5Update dependency next to v13.4.5to Update dependency next to v13.4.6b90bc3b96bto8c1615cf0c8c1615cf0cto7e30357a1bUpdate dependency next to v13.4.6to Update dependency next to v13.4.77e30357a1bto531b5905c7Update dependency next to v13.4.7to Update dependency next to v13.4.8Update dependency next to v13.4.8to Update dependency next to v13.4.12531b5905c7to3ae4b77f2fUpdate dependency next to v13.4.12to Update dependency next to v13.4.133ae4b77f2fto498aa62c73498aa62c73tod8afe6e6f6Update dependency next to v13.4.13to Update dependency next to v13.4.15Update dependency next to v13.4.15to Update dependency next to v13.4.13d8afe6e6f6to6ff135e173Update dependency next to v13.4.13to Update dependency next to v13.4.166ff135e173to34c0920545Update dependency next to v13.4.16to Update dependency next to v13.4.1734c0920545toa1201fb036a1201fb036to751abe84d0Update dependency next to v13.4.17to Update dependency next to v13.4.18751abe84d0tod023c1e098Update dependency next to v13.4.18to Update dependency next to v13.4.19d023c1e098to773837be09Update dependency next to v13.4.19to Update dependency next to v13.5.0Update dependency next to v13.5.0to Update dependency next to v13.5.1773837be09tof5c15dfaa2Update dependency next to v13.5.1to Update dependency next to v13.5.2f5c15dfaa2toefd6397aecUpdate dependency next to v13.5.2to Update dependency next to v13.5.3efd6397aecto9a7086b51fUpdate dependency next to v13.5.3to Update dependency next to v13.5.49a7086b51fto47938c846047938c8460to3eb0a53294Update dependency next to v13.5.4to Update dependency next to v13.5.53eb0a53294to2a1023e3f1Update dependency next to v13.5.5to Update dependency next to v13.5.62a1023e3f1to2585f93ff6Update dependency next to v13.5.6to Update dependency next to v142585f93ff6to204095f1de204095f1detob1443a95fdb1443a95fdto6f7be1512c6f7be1512cto9c28e999fd9c28e999fdto00b66cab1600b66cab16to6bbe4f943f6bbe4f943fto8c0701a37f8c0701a37fto9831494c499831494c49to544b0b3e67544b0b3e67to427b72a0c0427b72a0c0to7c4767e7ae7c4767e7aeto48006fbbd448006fbbd4to7af5d657837af5d65783to31995ba04431995ba044to5234c4161e5234c4161etof80c143a4ff80c143a4ftoe163bd22ede163bd22edto2a203068832a20306883to75b292aa6a75b292aa6ato023f4c419c023f4c419ctoc74b825208c74b825208to98a2e2b0a998a2e2b0a9tof5cb097afef5cb097afeto45eb910a5945eb910a59tocea761626eUpdate dependency next to v14to Update dependency next to v15cea761626eto1278d74e181278d74e18to2fcb92f0f3Update dependency next to v15to Update dependency next to v142fcb92f0f3to842c675c8eUpdate dependency next to v14to Update dependency next to v15842c675c8eto0f35a8511c0f35a8511ctoe68b678a5de68b678a5dto9a587b39d79a587b39d7to2882fc7c162882fc7c16to82632a2d5782632a2d57to08322f774a08322f774ato56f8252bec56f8252becto0ef80ebfce0ef80ebfceto7f2054bf107f2054bf10tod3312d4564d3312d4564to1bcefd82a71bcefd82a7to9e6d0788119e6d078811to93c9db67ee93c9db67eetobc1a3a881fbc1a3a881fto4c199ecb1a4c199ecb1ato519c451da1519c451da1to0fc49a81ac0fc49a81acto480930e033480930e033tod1f5c7fb8ad1f5c7fb8ato71907c441471907c4414tofb63ed30c9fb63ed30c9to312402fd2d312402fd2dto513323da7a513323da7ato4da373d4444da373d444to76468d5c2676468d5c26to39693425a439693425a4to34fb5fdf5334fb5fdf53to03b395ddcd03b395ddcdto9ce7a7ec7eUpdate dependency next to v15to Update dependency next to v169ce7a7ec7etob31cafec70b31cafec70toc454633930c454633930to12b3f9144912b3f91449to11f0c5311a11f0c5311atob7387654bfb7387654bfto02b25304c9View command line instructions
Checkout
From your project repository, check out a new branch and test the changes.