Skip to content

Update nextjs monorepo to v13 (major)

Ghost User requested to merge renovate/major-nextjs-monorepo into main

This MR contains the following updates:

Package Change Age Adoption Passing Confidence
eslint-config-next ^12.0.9 -> ^13.0.0 age adoption passing confidence
next (source) ^12.0.9 -> ^13.0.0 age adoption passing confidence

Release Notes

vercel/next.js

v13.0.7

Compare Source

Core Changes
  • Update react next tag: #​43617
  • fix(jest): pattern when detecting packages to transpile in next/jest: #​43546
  • Adding head element checking for root layout: #​43597
  • Revert: 'Minimized runtime errors in app dir': #​43648
  • fix: properly handle trailingSlash: true and rewrites: #​43641
  • @​next/font fallback fonts order fix: #​43633
  • Update cache handling for app: #​43659
  • Remove resolved app directory todos: #​43672
  • Fix typo in comment: #​43685
  • perf: disable prefetching for links in viewport in development for app routes: #​43730
  • Remove additional <div> at each segment level in app: #​43717
  • Revert "Adding head element checking for root layout": #​43760
  • fix ci pnpm lock error: #​43767
  • Force reflow when setting scrollBehavior: #​43673
  • Remove __webpack_exports__ from error overlay: #​43715
  • Fix chunk hash logic in hot-reloader for server components: #​43778
  • Assign layer to app client entries: #​43197
  • Remove notifications emitted during pnpm dev: #​43801
  • Display error digest if presented: #​43742
  • Fix HMR issue after patching the client module: #​43819
  • Implement loadable with lazy and suspense for next dynamic: #​42589
  • Do not attach CSS checksum for production build: #​43827
  • Provide error hints for invalid layout props via the TS plugin: #​43835
  • Refactor code: #​43828
  • Unhandled errors and rejections opens as minimized in app dir error overlay: #​43844
  • docs: add readme with development instructions for next/swc: #​43834
  • Use proxy to ensure Flight is referencing to the latest module during development: #​43823
  • memory: fix 2 memory leaks in next-dev: #​43859
  • Refactoring in @​next/font: #​43848
  • build(cargo): bump up swc_core, turbopack: #​43652
  • Move prefetch bailout to start of the prefetch function for pages: #​43731
  • Alias next/head to noop for rsc and add upgration warning: #​43885
  • Update freebsd build: #​43866
  • Fix error message for invalid runtime option in app dir: #​43900
  • fix: forwarding props to no ssr dynamic: #​43901
  • Improve type checking error message for invalid props: #​43903
  • Improve type checking error message for invalid props: #​43903
  • Support for named slots in type checking: #​43906
  • Fix next/dynamic types for resolving named export module: #​43923
  • Add auto completion for prop names and types to the TS plugin: #​43909
  • Skip creating VSCode config and .gitignore if running in CI: #​43935
  • Add helpful error for createContext used in Server Components: #​43747
  • Increase stack trace limit on the server: #​43800
  • Refactor image optimization util: #​43868
  • useSearchParams - bailout to client rendering during static generation: #​43603
  • Open server component errors fullscreen: #​43887
  • next-dev: restart dev server exceeds the memory limits: #​43958
  • Fix: status log when NEXT_TELEMETRY_DISABLED env is set: #​43948
  • Erase dynamic ssr:false imports on server: #​43974
  • use a function expression to access arguments binding: #​43987
  • Added support for query params on not found pages: #​43836
  • Update no-img-element lint rule: #​43982
  • Fix: fix pages in Route Groups returning 500 with output: "standalone": #​43746
  • Add default head for app dir: #​43963
  • Fix browser navigation buttons not working with shallow routing and middleware: #​43919
  • Fast refresh should recover from event handler errors in app dir: #​43882
  • Fix module error for findDOMNode on edge: #​43998
  • Adding data attr to inlined font definition: #​44008
  • Replace taskr.watch for core compilation: #​44027
  • Fix .images.remotePatterns[0].port warning: #​44032
  • Fix app client entry key for windows: #​44011
  • feat: enables 'edge' as a possible runtime for API routes: #​44045
Documentation Changes
  • docs: Add notes about NEXT_MANUAL_SIG_HANDLE: #​43686
  • Changes vercel/examples links from linking to GitHub repo to template marketplace: #​43780
  • docs(migrating): fix broken react-router link: #​43843
  • Update compiler.md: #​43872
  • Add docs for missing support on custom routes: #​44007
  • docs: fix wording: #​44020
  • not ie 11 is dead: #​44029
Example Changes
  • Add with-cloudinary example: #​43250
  • examples(with-turbopack): Fix styling page default active stylingNav: #​42739
  • Fixed broken Cloudinary example: #​43646
  • Convert with-why-did-you-render example to TypeScript: #​43736
  • chore(examples): Remove deprecated function from chakra: #​43784
  • chore(examples): Update convex example: #​43741
  • Update dependencies for Convex demo: #​43855
  • Convert with-gsap, with-mqtt-js, with-mux-video examples to Typescript: #​43874
  • Fix with-webassembly example and convert to Typescript: #​43677
  • corrected /examples/github-pages readme: #​43766
  • chore: add repro links in "verify canary" comment: #​43979
  • Move Google Analytics script to the
  • : #​43838
Misc Changes
  • Apply publish step optimizations: #​43620
  • Update create-next-app template: #​43482
  • Update test config: #​43661
  • Update flakey app logbox test: #​43682
  • Update flakey GSSP preview test: #​43702
  • Fix typos in 1.bug_report.yml: #​43697
  • Disable jest autorun in this repo: #​43727
  • Build test binary in Docker image: #​43745
  • Update bug report template to make it clear we require repro: #​43735
  • Add tests for server component HMR: #​43779
  • Add tests for rendering null and undefined in RSC: #​43768
  • Remove swcMinify from Next config in CNA template: #​43782
  • Remove serverComponents from next.conf.js because it's unused: #​43805
  • Add test for providing correct params to layouts: #​43775
  • Fix test binary generation and update test config: #​43790
  • Lock pnpm version during publish: #​43820
  • ci(actions): pin prod-test action image: #​43748
  • Upgrade playwright to 1.28.1: #​43818
  • modify rd email: #​43837
  • Test imports of all file types: #​43751
  • test: client component under server component with ssr:false: #​43853
  • Delete duplicate SECURITY.md: #​43856
  • Clarify e2e dependency on yarn in contributin docs: #​43287
  • test: use react latest: #​43884
  • Update @​next/font data: #​43883
  • Update flakey dev context tests: #​43951
  • Add VSCode settings and recommended extensions for Next.js repository: #​43954
  • Add Web Tooling team to codeowners: #​43981
  • Update docs change files list: #​43984
  • Fix e2e deploy test setup: #​43990
Credits

Huge thanks to @​Nutlope, @​huozhi, @​m7yue, @​BRKalow, @​Andarist, @​hanneslund, @​jueungrace, @​balazsorban44, @​ijjk, @​mmaaaaz, @​Alfred-Mountfield, @​soonoo, @​JanKaifer, @​feedthejim, @​Brooooooklyn, @​shuding, @​manovotny, @​maxproske, @​AnujSsStw, @​thomasballinger, @​kwonoj, @​aaronbrown-vercel, @​saseungmin, @​styfle, @​timneutkens, @​aziyatali, @​labyrinthitis, @​padmaia, @​mattpr, @​gnoff, @​wyattjoh, @​aarnadlr, @​DuCanhGH, @​kleintorres, @​janicklas-ralph, @​theevilhead, @​Nfinished, and @​feugy for helping!

v13.0.6

Compare Source

Core Changes
  • test(integration): allow to run --turbo dev server tests dynamically : #​42967
  • Ensure loaderFile is included in webpack cache key: #​43315
  • Improve @​next/font error handling: #​43298
  • Improve RSC plugin to provide better errors: #​42435
  • fix appDir returning 404 in production with "output": "standalone": #​43268
  • Fix outputting un-necessary trace files for edge functions: #​43304
  • fix: apply default export interop to pages/_app: #​43335
  • Fix package resolution issue in app dir: #​43349
  • Get correct chunks in flight-manifest on Windows: #​43334
  • Resolve RSC / HTML rendering errors in error overlay: #​43332
  • App directory next/link dynamic href dev error: #​43074
  • Add ref forwarding for next/image: #​43193
  • Always transform styled-jsx for rsc and error with client-only condition: #​43386
  • dynamic = 'error' should only throw if page didn't get exported: #​43377
  • fix output: "standalone" returning 500 error on certain pages when built without pages/: #​43336
  • Fix "apply() is only allowed in ready status (state: idle)" HMR errors: #​43242
  • Add gSP and gSSP checks for both server and client layers in the SWC transform: #​43391
  • Make sure the TS plugin works for src/app: #​43412
  • Remove stack trace from full reload warning: #​43453
  • Upgrade compiled undici: #​43481
  • Fix missing cleanup process in flight plugin globals: #​43297
  • Fix matchers in middleware manifest: #​43549
  • rsc: bundle legacy head as client component: #​43425
  • Remove useState from next/image: #​43587
  • Group redirect status imports: #​43480
  • Fix Failed to copy traced files for Edge functions and handle its files with middleware-manifest.json: #​43326
  • Update next/link default legacyBehavior: #​42623
  • fix: Dynamic Usage Error when using previewData with generateStaticParams and appDir: #​43395
  • Minimized runtime errors in app dir: #​43511
Documentation Changes
  • Add link back to font video in Font docs.: #​43440
  • docs: update known Safari bug: #​43513
  • Add yarn berry dependency upgrade example for Next 12 to 13 upgrade documentation.: #​43472
  • Clarify that publicRuntimeConfig and serverRuntimeConfig do not work with Output File Tracing: #​43443
  • adding note that edge api routes are not supported with ISR: #​43572
  • Improve docs for URL Imports: #​43615
Example Changes
  • chore(examples): Deprecate cms-strapi: #​43325
  • Add example commands for creating reproductions: #​43375
  • updates with-supertokens example: #​43379
  • Fix with-docker-compose example: #​43419
  • chore(examples): fix CLI commands for MobX examples: #​43534
  • Simplify and convert with-vercel-fetch example to TypeScript: #​43403
  • chore(examples): reference main prop in README.md in Firebase example: #​43434
  • chore(examples): Update active-class-name example: #​43581
  • Fix deploy button in with-xata example: #​43608
Misc Changes
  • Avoid turbo cache miss on root package change: #​43309
  • Add .pnpm-store to .gitignore: #​43366
  • Update @​next/font/google fonts: #​43385
  • Catch errors when calculating avg font width: #​43503
  • chore: update issue verifier: #​43339
  • chore: fix issue validator
  • chore: move comments of issue validator
  • chore: hardcode path for issue validator
  • chore: add area dropdown to bug report template: #​43228
  • chore: fix issue verifier issues
  • Merge branch 'canary' of https://github.com/vercel/next.js into canary
  • chore: fix issue verifier
  • chore: don't comment twice
  • chore: disable auto-labeling
  • Fix "infer pnpm with example" test outside test suite: #​43487
  • chore: add issue labeler: #​43599
  • chore: fix issue labeler: #​43606
  • Changed output mode on app directory test application: #​43607
  • Fix output: standalone test for app directory: #​43618
Credits

Huge thanks to @​kwonoj, @​hanneslund, @​ijjk, @​shuding, @​DuCanhGH, @​chibicode, @​artechventure, @​JanKaifer, @​huozhi, @​colinking, @​rishabhpoddar, @​maxproske, @​wyattjoh, @​leerob, @​alantoa, @​Haschikeks, @​balazsorban44, @​matthew-heath, @​AaronJY, @​dtinth, @​styfle, @​leoortizz, @​ValentinH, @​brvnonascimento, @​joshuaslate, @​SferaDev, and @​timeyoutakeit for helping!

v13.0.5

Compare Source

Core Changes
  • Remove unnecessary async function when preloading async components: #​42957
  • Add force-static handling for app dir: #​43061
  • Add experimental outputFileTracingIgnores config: #​43103
  • Leverage outputFileTracingIgnores for next-server trace as well: #​43108
  • Remove unstable_revalidate: #​43119
  • types: better type definition for internal utils: #​43070
  • Eagerly build swc binaries on change: #​43142
  • chore: Update swc_core to v0.43.23: #​42977
  • fix(next-swc/relay): make pages directory optional: #​43116
  • Remove the timestamp query for CSS resources: #​43185
  • Update experimental skipTrailingSlashRedirect handling: #​43201
  • Avoid bundling appDir rendering into pages edge SSR bundle: #​43184
  • Alias esm next document to avoid mismatch react context: #​43192
  • Fix middleware not executed when pages directory is empty: #​43205
  • Remove app routes from _devPagesManifest: #​43188
  • Fix HMR error: "Cannot read properties of null (reading 'length')": #​43145
  • fix(ts): re-export PageComponent and LayoutComponent types: #​43226
  • Fix app routes are not correctly matched when src directory is used: #​43234
  • chore: add firebase-admin to default serverComponentsExternalPackages list: #​43249
  • Fix React.cache() in layout/page file: #​43187
  • build(cargo): bump up turbopack: #​43273
  • fix(next-swc): aarch64 build: #​43275
  • Add fallback aliases for React: #​43203
  • fix: apply default export interop to next/error: #​43238
  • Remove unused use-sync-external-store dependency: #​43281
  • Imageloader: collect images serverside to include images from staticp…: #​41554
  • Update precompiled react: #​43288
  • Resolve next api for layouts to esm for edge runtime: #​43302
  • Refactor code: #​43291
  • Show error for invalid page props in the TS plugin: #​43300
  • docs: add error link when missing appDir: true: #​43293
Documentation Changes
  • Add note in next/link docs about anchor props: #​43064
  • Remove unneeded async in docs.: #​43161
  • Add JWT example to error page.: #​43162
  • Updated typo in the documentation: #​43160
  • Add missing quote in next/script example: #​43196
  • Add a note about the auto-created empty directory: #​43219
  • docs: Add default browserslist configuration as a starting point: #​43260
Example Changes
  • chore: Updating Tigris example to use stable release: #​43058
  • examples(with-ant-design): bump antd v5.0.0: #​43062
  • fix: Wrong link to source in "responsive" image example: #​43081
  • chore(examples): with-msw update msw: #​43224
  • Fix With Passport example: #​43232
  • chore(examples): update Next.js in with-redux-reducer: #​43237
  • Updates supertokens example app SSR behaviour: #​43218
  • docs: add missing AppProps import: #​43136
  • Convert more jsx/styled-components examples to TypeScript: #​43117
  • Convert with-videojs, with-yoga, with-zones examples to TypeScript: #​43280
Misc Changes
Credits

Huge thanks to @​hanneslund, @​adilansari, @​chunsch, @​bennettdams, @​maxproske, @​SukkaW, @​kdy1, @​orionmiz, @​leerob, @​shuding, @​aziyatali, @​NiedziolkaMichal, @​huozhi, @​colinking, @​juliusmarminge, @​andykenward, @​Yutsuten, @​balazsorban44, @​FomichRoman, @​rishabhpoddar, @​arturbien, @​ADTC, @​JanKaifer, @​ijjk, @​kwonoj, @​joliss, @​Andarist, and @​Laityned for helping!

v13.0.4

Compare Source

Core Changes
  • Show link to the docs for route segment config options: #​42779
  • fix: Fix regression of swc minifier: #​42790
  • Add additional item to RSC payload, preparing for head.tsx on navigation: #​42791
  • Use window.location directly instead of parsing into URL: #​42888
  • feat(next-swc/relay): Add javascript to language: #​42894
  • types(#​42003): better typing for next/link: #​42117
  • Ensure query is provided correctly with middleware rewrites: #​42818
  • feat(next/swc): allow to run custom turbopack binary: #​42656
  • fix: Error: NEXT_REDIRECT crashing server in prod: #​42793
  • Update caching for swc turbo builds: #​42929
  • Handle head.js on client-side navigation: #​42904
  • feat(jest): respect transpilePackages in tests: #​42987
  • App files ending with page registred as page files: #​42996
  • Allow generateStaticParams to be a synchronous function in app directory: #​42942
  • chore(eslint-config-next): bump eslint-import-resolver-typescript: #​43010
  • Ensure next.config.js function is handled for turbo: #​43015
  • Fix app page check on windows: #​43022
  • Add middleware prefetching config: #​42936
  • Fix middleware prefetch cases: #​43056
  • Ensure backslash is correctly handled in find-page-file: #​43057
  • Fix app render: escape segment value #​42626: #​42823
Documentation Changes
  • docs: fix middleware docs cookie example: #​42816
  • Update docs/advanced-features/debugging.md: #​42842
  • docs(edge-api-routes): fixes example: #​42903
  • Update SFCC example to use TypeScript + @next/font: #​42865
  • Add more details to invalid-next-config doc: #​42917
  • typo: #​42968
  • Document regions config for experimental-edge: #​43009
  • docs: Add examples of using multiple weights and styles: #​43031
Example Changes
  • chore(examples): next/future/image -> next/image: #​42794
  • docs(examples): auth0 update callback URL: #​42855
  • Updates Apollo Server Examples to use Apollo Server 4 & @​as-integrations/next: #​42771
  • Improve with-algolia-react-instantsearch example and convert to TypeScript: #​42617
  • Convert blog cover images to next/image: #​42908
  • Make cover image full width: #​42916
  • Convert with-app-layout example to TypeScript: #​42930
  • Tigris example with Next.js: #​42662
  • feat(examples): with-grafbase: #​42898
  • docs(examples): add postgres.js example: #​42962
  • Remove with-atlaskit example: #​42973
  • Remove with-carbon-components example: #​42976
  • Remove with-cerebral example: #​42980
  • Remove swcMinify option from example configs: #​43012
  • Convert with-cssed, with-csx, with-styled-jsx examples to TypeScript: #​43018
  • feat(examples): use experimental edge runtime with grafbase: #​42992
Misc Changes
  • Update bundle analyzer dependency and output: #​42797
  • Update to latest version of turbo CLI: #​42803
  • Fix cache collision for swc darwin: #​42960
  • Fix build-wasm-dev docs skip: #​42961
  • Update deployment used for e2e test: #​42969
  • test(integration): update test fixture: #​42966
  • Fix test retry cleanup: #​43011
  • Update test wasm timeout: #​43014
  • @​next/font/google variable fonts without weight range: #​43036
  • Update build-wasm to checkout directly: #​43054
Credits

Huge thanks to @​shuding, @​balazsorban44, @​kdy1, @​huozhi, @​reyrodrigez, @​andykenward, @​idoob, @​maxproske, @​KoltonG, @​timneutkens, @​feugy, @​leerob, @​steven-tey, @​SukkaW, @​kwonoj, @​adilansari, @​hanneslund, @​notrab, @​zekicaneksi, @​silvioprog, @​joulev, @​chanceaclark, and @​Marcus-Rise for helping!

v13.0.3

Compare Source

Core Changes
  • bump @​typescript-eslint/parser version to support TS 4.8: #​42439
  • chore: Update swc_core to v0.40.40: #​42326
  • Add telemetry for turbotrace: #​42486
  • Fix undici warning in Node.js 18: #​42477
  • Ensure RSC is detecting correctly during revalidate: #​42508
  • fix: correctly mention generateStaticParams in error: #​42524
  • Re-enable sandbox cache and update AsyncLocalStorage usage: #​42547
  • Check properly whether SWC is used or not when using forceSwcTransforms: #​42531
  • Show inlined error if the "use client" directive is not before other statements/expressions: #​42507
  • Refactor error codes in the TS plugin: #​42585
  • Fix server html insertion target: #​42591
  • next/compat/router: #​42502
  • Fix scrolling on router.refresh: #​42583
  • Fix relative TypeScript path in monorepos: #​42586
  • Aggregate updates using addStatusHandler and Promise.resolve instead of setTimeout: #​42350
  • fix(next/dev): bubble up unhandled exception from --turbo: #​42594
  • Rename RSC and Router headers: #​42482
  • Ensure build trace ignores apply correctly when nested: #​42606
  • Include @​prisma/client in default external packages: #​42624
  • Replace global with globalThis: #​42627
  • Colocate styles with special entries: #​42506
  • Add lazy initialize of router cache nodes: #​42629
  • Add telemetry for @​next/font: #​42579
  • Also create head when creating root layout: #​42571
  • feat: add --no-mangling to next build + fix --profile option: #​42633
  • update react builtin deps for next channel: #​42639
  • Ensure skip normalize is handled correctly: #​42642
  • @​next/font/google fetch error dev: #​42637
  • Add missing matcher support: #​42660
  • Remove useless async declaration and replace regexp to plain string in AMP postProcessor: #​42495
  • @​next/font error messages: #​42689
  • Adopt script rejection pattern for link onerror.: #​42645
  • Fix @​next/font imports from outside of the root directory: #​42678
  • Ensure appDir is included in webpack configVars: #​42710
  • Fix replaceAll usage in post-process: #​42714
  • Use import to load page and layout: #​42325
  • Alias next public api to esm on edge runtime: #​42709
  • fix: publish compat folder: #​42613
  • Change condition to check for string attribute in lint rules utility function: #​42625
  • Fix as option with optional catch all routes url object syntax: #​42355
  • fix comma splice in verifyRootLayout.ts: #​42324
  • build(next-swc): update turbopack to latest: #​42733
  • @​next/font return types: #​42753
  • Eagerly bundle external ESM dependencies for pages: #​42741
  • Handle hydration replaceState for static page with searchParams: #​42744
  • Add test case for image generation: #​42693
  • Don't pushState when already on the url: #​42735
  • fix: enable emotion import map: #​42750
  • Fix resolving for esm package with only exports.import condition: #​42767
  • Track page counts during builds: #​42766
Documentation Changes
  • Fix Static Generation link on Pages page: #​42462
  • Docs: Fix invalid tsconfig importSource syntax: #​42465
  • Update response-helpers.md: #​42378
  • react-version.md: Update minimum React version for Next.js 13: #​42490
  • Included negative matcher docs in upgrade guide: #​42489
  • Edit Upgrade docs to correct new-link codemod: #​42501
  • Update turbopack docs to use create-next-app@latest: #​42528
  • Remove all custom server integration examples: #​42549
  • [docs] Document middleware response changes: #​42295
  • Convert with-absolute-imports example to TypeScript: #​42529
  • docs/next/link: Mention middleware + dynamic routes changes: #​42607
  • fix typo in api-reference next/sever: #​42669
  • font api updates: #​42724
Example Changes
  • Include app directory in Tailwind config: #​42407
  • Removed duplicate MONGODB_URI check in example: #​42518
  • Convert middleware-matcher example to TypeScript: #​42520
  • Convert custom-server-express example to TypeScript: #​42110
  • Example: fixed tailwind ver in readme: #​42551
  • (with-supertokens example): Fixes infinite redirect issue for unauthorised error during SSR: #​42634
  • chore: update scripts to work on windows: #​42632
  • example fix url: #​42695
Misc Changes
  • Reuse file when shared by several google font variants: #​42480
  • Fix replaceAll usage in font loader: #​42550
  • Fix default value handling for CNA in CI: #​42596
  • chore: encourage adding reproductions to issues: #​42667
  • Fix CSS handling rules: #​42615
  • Update to latest version of turbo CLI: #​42711
Credits

Huge thanks to @​lucasassisrosa, @​kdy1, @​ijjk, @​jakemstar, @​lachlanjc, @​ws-jm, @​davidnx, @​steven-tey, @​Brooooooklyn, @​hanneslund, @​josephcsoti, @​fantaasm, @​timneutkens, @​sivtu, @​leerob, @​balazsorban44, @​maxproske, @​rightones, @​bot08, @​shuding, @​huozhi, @​wyattjoh, @​ethomson, @​alexkirsz, @​kwonoj, @​MaxLeiter, @​rishabhpoddar, @​feedthejim, @​gnoff, @​moetazaneta, @​superbahbi, @​NOCELL, @​ademilter, @​nathanhammond, @​imranbarbhuiya, @​mrkldshv, @​cvolant, @​hughlilly, @​ismaelrumzan, and @​sQVe for helping!

v13.0.2

Compare Source

Core Changes
  • Hybrid App Hooks Support: #​41767
  • Add sqlite3 to the default list of server externals: #​42294
  • Improve the error message when custom export fields are used in an entry: #​42221
  • Add preload for layouts / components: #​41519
  • Add mongodb to default server externals: #​42313
  • refactor(next/turbo): consolidate turbo devserver logic: #​42315
  • [middleware] add tests for body reading methods #​37980: #​41718
  • Handle dynamic css-in-js styles under suspense: #​42293
  • Fix page folder being wrongly resolved as page file: #​42348
  • Update dev process exit handling: #​42367
  • Ensure edge runtime doesn't propagate cache on fetch as Cloudflare doesn't support it.: #​42362
  • Add prisma to the external package list: #​42323
  • Local font family name: #​42286
  • useSelectedLayoutSegment at the current level: #​42299
  • Stop writing window specific paths in vscode configuration: #​42338
  • Ensure Undici is enabled for appDir in all cases: #​42382
  • fix: usage of wasm in an appDir page file using the edge runtime: #​41689
  • feat(next/mdx): support experimental mdx-rs loader: #​41919
  • Fix CSS modules imports not collected due to race conditions: #​42392
  • Fix entry creation on Windows: #​42421
  • Mock @​next/font when using next/jest: #​42413
  • Avoid breaking useRouter() type change: #​42430
  • Do not strip loader arg in dynamic for server components: #​42426
  • Clarify app and pages file conflicting files: #​42415
  • Change usePathname to return string | null: #​42380
  • Fix undici warning showing unexpectedly: #​42444
  • Remove static generation bail-out from usePathname: #​42440
Documentation Changes
  • docs(script): explain expected next/script behavior on client-side navigation: #​42260
  • Add path for information in cookie setting: #​42146
  • Update wording to remove beta FUD and keep evergreen: #​42337
  • update font optimization page: #​42266
  • Fix broken link on the upgrading guide: #​42340
  • Fix typo: docs/api-reference/next/font.md: #​42344
  • Update getting-started.md: #​42353
  • Fix typo in usage of onError in script.md: #​42368
  • Fix negative lookahead example in middleware.md: #​42320
  • Update customizing-postcss-config.md: #​42331
  • update middleware cookies example: #​42341
  • Fix Docs API Reference font.md broken link: #​42418
  • fixed missing <Link /> keyword: #​42422
  • Fix docs for next/image upgrade guide: #​42424
  • Revert font-optimization.md syntax: #​42403
  • Fix invalid markdown lang: #​42442
Misc Changes
  • Update app-dir E2E tests for deploy: #​42269
  • create-next-app: add head to template: #​42357
  • Update flakey SIGINT test: #​42370
  • Fix typo in app / hello.js template: #​42335
  • [eslint-plugin] Stop warning for head element in app/layout on Windows: #​42336
  • Update default eslint choice for CNA setup: #​42371
  • Update swc builds: #​42393
  • Add meta tag to default app template: #​42394
  • examples: Fix with-turbopack typo: #​42410
  • Google fonts single request: #​42406
Credits

Huge thanks to @​wyattjoh, @​shuding, @​ijjk, @​timneutkens, @​kwonoj, @​balazsorban44, @​Kikobeats, @​BLUE-DEVIL1134, @​timeyoutakeit, @​huozhi, @​ismaelrumzan, @​mnajdova, @​aleksa-codes, @​delbaoliveira, @​gruz0, @​meenie, @​danmindru, @​inokawa, @​hanneslund, @​oBusk, @​BRKalow, @​devvspaces, @​lucasassisrosa, @​adictonator, @​m7yue, @​styfle, and @​chibicode for helping!

v13.0.1

Compare Source

Core Changes
  • Rest of options in experimental.turbotrace and documentation: #​41817
  • Fix revalidate check in client component: #​41917
  • Add data attribute to div to distinguish it: #​41889
  • Fix lint cli help: #​41783
  • [Doc] Update inline documentation for next/link: #​41871
  • feat(edge): split NextCookies to RequestCookies and ResponseCookies: #​41526
  • Show error message when using legacy props on new next/image: #​41930
  • Upgrade Edge Runtime: #​41987
  • Revert "Include frameworks in main-app": #​41997
  • fix(next/dev): do not suppress error from bindings: #​41989
  • Fix page static info extractor for app dir: #​42001
  • Add never return type for redirect() and notFound(): #​42009
  • Google fonts multiple weights & styles: #​42008
  • Merge app internal chunk into main chunk for layouts: #​41902
  • Fix build type error of page params: #​42019
  • Allow disabling Strict mode in app: #​41894
  • Update react next channel: #​42021
  • Fix turbo custom config detection: #​42022
  • Fix css modules imports in client components: #​42077
  • fix: Data URL images with 'fill' are always triggering 'missing sizes' warning: #​42030
  • types: leverage webpack types and remove casting: #​42104
  • Fix CSS imports from outside of the app dir when src folder is present: #​42108
  • Remove react root condition and always use concurrent mode: #​42141
  • Keep react-dom/server.node in precompiled: #​42138
  • Warn when legacy prop detected on next/image: #​42102
  • Fix failing codemod test url-to-withrouter: #​42109
  • Improve TypeScript plugin error when the configuration is not statically analyzable: #​42062
  • Ensure app revalidate has correct default: #​42168
  • Update turbo crates: #​42014
  • Update vscode config handling: #​42169
  • fix: allow resolving large JSON data in server components: #​42025
  • issue-41925 fix: skip duplicate props when transferring props from anchor to link: #​42158
  • Ensure we detect config correctly with turbo flag: #​42201
  • update turbo version: #​42228
  • Fix CSS modules imports from outside of the root directory: #​42106
  • Default font config fix: #​42235
  • Multiple local font weights and styles: #​42232
  • Optimize bundle size for appDir: #​42252
  • Add event for dev process stop: #​42255
  • Add E2E test for @​vercel/og API route: #​42258
Documentation Changes
Example Changes
  • Add turbopack example: #​41789
  • examples: Update turbopack: #​41793
  • examples: Remove turbo.json from turbopack example: #​41794
  • example: add postcss as with-turbopack example devDep: #​41795
  • Update with-supertokens example: #​41802
  • chore: remove swcMinify: true as it's the new default.: #​41877
  • Update link in Turbopack example.: #​41876
  • fix any type in example with-turbopack: #​41798
  • Update with-aws-amplify with TypeScript: #​41815
  • Convert many examples to TypeScript: #​41825
  • Fixed errors at with-passport-and-next-connect.: #​41897
  • chore(examples): use next@latest in all examples: #​41922
  • chore: update example dev script: #​41904
  • Update README.md: #​41959
  • Fix benchmark link typo in Turbopack example: #​42064
  • Update Examples to use React 18: #​42027
  • chore(examples): fix with-aphrodite exapmle: #​42078
  • chore(examples): move app directories: #​42094
  • Broken link in example page: #​42135
  • Fix typo in importing counterReducer: #​42162
  • Run next/link codemod for Next.js 13 on examples: #​41913
  • Fix next/link codemod errors in with-turbopack: #​42203
Misc Changes
  • Update Cargo.lock file
  • fix example command in issue template for create-next-app : #​41803
  • Remove swcMinify: true since this is 13's default: #​41869
  • test(dev): support to run test with --turbo: #​41908
  • docs: clarify MR template instructions: #​41957
  • Update e2e test for app-dir edge: #​42015
  • [docs] Fix Grammar in Step 8.: #​42018
  • Fix turbo css-modules test: #​42103
  • Enhanced grammar.: #​42148
  • grammar fix in adding-examples README.: #​42152
  • [docs] Enhanced grammar in building README.: #​42155
  • Fix typo pnpm-lock.yam in .prettierignore_staged: #​42212
  • docs(create-next-app): copy JJ's changes from #​42012 to package-level README: #​42217
  • Update failing e2e middleware response test: #​42256
Credits

Huge thanks to @​jaredpalmer, @​ijjk, @​Brooooooklyn, @​koenpunt, @​rishabhpoddar, @​karlhorky, @​balazsorban44, @​leerob, @​NekoChanTaiwan, @​chrisipanaque, @​Reshmi-Sriram, @​maxproske, @​Kosai106, @​timneutkens, @​kwonoj, @​hanneslund, @​bertho-zero, @​abayomi185, @​styfle, @​Kikobeats, @​nuta, @​yasath, @​shuding, @​serkanbektas, @​steven-tey, @​jimCresswell, @​alpha-xek, @​huozhi, @​LorenzoBloedow, @​iiegor, @​craigwheeler, @​peraltafederico, @​teobler, @​ismaelrumzan, @​IngoVals, @​jaykch, @​artdevgame, @​ishaqibrahimbot, @​ctjlewis, @​wxh06, @​sokra, @​timeyoutakeit, and @​DuncanOgle for helping!

v13.0.0

Compare Source

Core Changes
  • Use resolved url in flight entry loader: #​40697
  • Handle redirects in new router: #​40396
  • Combine redirect function in new router: #​40717
  • fix: InferGetServerSidePropsType and InferGetStaticPropsType: #​40635
  • Update to leverage AsyncLocalStorage for app static handling: #​40727
  • Change flight querystring to header: #​40752
  • Improved bundling strategy for the server graph: #​40739
  • Remove unnecessary experimental flag: #​40766
  • next-swc: add next-font-loaders to crates/core: #​40221
  • Add next font package: #​40227
  • Strip internal pages for pagesDir in app edge ssr: #​40776
  • Add support for font loaders: #​40746
  • Set __NEXT_NEW_LINK_BEHAVIOR in Jest tests when newNextLinkBehavior is true: #​40702
  • Add handling for 404 in new router: #​40787
  • Fix alias paths for bundling: #​40800
  • Fix required server files for font loader manifest: #​40784
  • Add local font loader: #​40801
  • Update error handling during app static generation: #​40823
  • Handle redirect in same way as 404 in new router: #​40796
  • build: upgrade edge-runtime: #​40788
  • Allow export const in font loader: #​40836
  • chore: Update swc: #​40832
  • Update app-router options type: #​40862
  • Flight client navigation error: #​40861
  • Use startTransition for hydrateRoot to opt-in to non-blocking hydration: #​40874
  • Add optoutServerComponentsBundle option: #​40770
  • Apply #​40833: #​40872
  • Upgrade react@experimental: #​40885
  • Update handling of redirect/404 throw to cross server->client boundary: #​40890
  • Update pre-compiled: #​40914
  • Update font loader output path: #​40868
  • Disable head element lint rule for appDir: #​40921
  • Should resolve esm external module imports on server: #​40865
  • edge-ssr: bundle next/dist as ESM for better tree-shaking: #​40251
  • Improve types for <Image /> and responseLimit: #​40863
  • chore: Update swc: #​40928
  • Ensure skipClientCache is honored for router.push: #​40932
  • Fix bundling and module resolution in the server layer: #​40818
  • Handle loading returning undefined: #​40938
  • Fix SWC loader ignore for the server layer when Babel is used: #​40939
  • Code refactoring for webpack-config: #​40942
  • Merge e2e test node_modules: #​40926
  • Rename 404 -> not-found for new router: #​40941
  • remove reducer from server bundle: #​40959
  • [edge] serialize custom config to middleware-manifest: #​40881
  • Font loader support in app: #​40898
  • docs: add inline documentation for Link props: #​40855
  • feat(experimental): option to polyfill fetch using undici in Node.js <18: #​40318
  • Update return shape of generateStaticParams: #​40965
  • remove legacy transform code: #​40966
  • Revert "edge-ssr: bundle next/dist as ESM for better tree-shaking (#​40251): #​40967
  • Update to use HEAD request for middleware query hydration: #​40973
  • Revert "Merge e2e test node_modules (#​40926)": #​40974
  • edge-ssr: bundle next/dist as ESM for better tree-shaking (#​40251): #​40980
  • Rename flight parameters to rsc/next: #​40979
  • Remove outdated warning: #​40988
  • misc: add MANGLING_DEBUG option: #​40958
  • Fix wrong code condition used when bundling the server: #​40987
  • Move pagesDir handling out of wrappedRender: #​40995
  • Fix unused CSS module imports are tracked on the server: #​40996
  • Skip creating virtual app client entry for pages: #​41000
  • chore: remove unsless @​ts-ignore: #​40992
  • Add support for fallback font and css variable for font/local: #​40990
  • Use throw to trigger Suspense to avoid use() in reducer warning: #​40950
  • chore: Update swc: #​40983
  • Revert "chore: Update swc": #​41015
  • Docs for experimental font optimization adjustFontFallbacks: #​40771
  • Drop legacy React DOM Server in Edge runtime: #​40018
  • misc: make useReducerWithDevtools noop on server: #​41019
  • Remove reload on serverComponentChanges in pages: #​41020
  • chore: Update swc_core to v0.28.10: #​41016
  • Alias all client, shared, pages dist assets for esm: #​41034
  • Add Replay integration for dev e2e tests: #​40955
  • Add with-xata example: #​39864
  • Make sure polyfills are added for browsers without module support: #​41029
  • Move handling of navigation to pages from new router: #​41001
  • Adding experimental size adjust based option: #​41009
  • chore: add build step to eslint-plugin-next: #​38647
  • chore: make sure polyfills are built for pnpm dev: #​40335
  • refactor: migrate eslint-plugin-next to typescript: #​41046
  • Improve experimental feature naming: #​41060
  • Full page reload when navigating to new root layout: #​40751
  • Use deterministic module IDs for server: #​41066
  • Accept variable prop in google font loader: #​41065
  • Font loader call json parsing fix: #​41052
  • build(next/swc): consolidate swc_core dependency version: #​41043
  • Skip pagesDirRules when pagesDir is not present: #​41075
  • Fix experimental undici warning: #​41077
  • Temporarily disable prefetch in new router: #​41086
  • Add conflicting app and page error: #​41099
  • chore(server): improve dev logs formatting: #​41109
  • rename flush effects to server inserted html: #​41073
  • Check required root layout tags: #​41120
  • Lint files with mjs, mts, cjs and cts extension by default: #​40879
  • Improve error messages of server compilation: #​41136
  • Fix edge function req.url handling with rewrite: #​41139
  • Ensure entry tracing applies for app correctly: #​41140
  • add attribution to web vitals: #​39368
  • Update minimum required Node.js version to v14: #​41150
  • Handle hmr for edge ssr in app dir: #​41156
  • chore: Update swc_core to v0.28.20: #​41153
  • Remove unnecessary moduleId option: #​41160
  • Apply experimental configs for middleware: #​41142
  • Fix reading edge info for app paths: #​41163
  • Fix warning messages for next export: #​41165
  • Refactor app dir related flags: #​41166
  • Fix prefetch for new router: #​41119
  • Disable built-in css-in-js transform on server layer: #​41040
  • docs(image): improve error message when sharp is missing in standalone mode: #​41133
  • Fix latest experimental react and experimental-edge and unpin test versions: #​41200
  • Font loader with babel error: #​41151
  • Remove hook_optimizer transform: #​41203
  • chore: Update swc_core to v0.29.5: #​41181
  • Update edge runtime to 1.1.0-beta.37: #​41211
  • Alias next/dynamic to lazy impl for appDir: #​41216
  • Do not bundle react-dom in the SSR build: #​41227
  • Add response stream errorhandling in edge-function-runtime: #​41102
  • App font file preload: #​41158
  • Fix app static generation cases: #​41172
  • Enabel appDir when flag and dir existed at the same time: #​41233
  • Font loaders next config shape: #​41219
  • refactor dev overlay into hot reloader: #​41231
  • fix(middleware): 'instanceof Function' is dynamic code false-positive: #​41249
  • Snyk upgrade 2701033: #​41240
  • fix(ts): relax AppProps to not require generic: #​41264
  • Recover from font loader error in dev: #​41251
  • Handle as on next/link with new router: #​41285
  • Load beforeInteractive scripts properly without blocking hydration: #​41164
  • Add test for link back to original page: #​41297
  • Local font files adjust fallbacks: #​41180
  • Update middleware query hydration handling: #​41243
  • Fix NextUrl trailing slash normalize for data route: #​41311
  • Global layouts error boundary: #​41305
  • fix(image): don't show placeholder warning in Jest: #​41329
  • Handle error overlay for new router: #​41325
  • fix(standalone): support type: "module": #​41268
  • perf: lazyload the edge runtime in NextServer: #​41322
  • Add pretty error when image import is invalid format: #​41267
  • chore: Update swc_core to v0.32.8: #​41304
  • Client component directive: use client: #​41333
  • Fix middleware rewrite for _next/data: #​41341
  • Add codemods for next/image: #​41004
  • Fix middleware URL normalize case: #​41342
  • Update next/image codemod to handle require(): #​41345
  • Ensure RSC paths are normalized in minimal mode: #​41348
  • Refactor error overlay for new router: #​41343
  • inline httpproxy usage: #​41330
  • proper error if middleware or api/route not return a Response: #​41336
  • Fix CSS imports tree-shaking: #​41357
  • Ensure content is kept rendered below the error overlay on build errors in new router: #​41360
  • refactor(#​41164): polyfill-module should block hydration: #​41352
  • Fix onLoad prop in next/future/image: #​41374
  • Add exports for new router: #​41368
  • App font loader tree shaking: #​41384
  • perf: lazy eval headers from the requestStore: #​41353
  • fix: disable css cache busting in production: #​41392
  • Upgrade next-swc-napi to NAPI-RS v2: #​40094
  • Fix prefetching for static app paths: #​41398
  • perf: lazy evaluate more modules: #​41354
  • BREAKING CHANGE: Rename next/image to next/legacy/image & rename next/future/image to next/image: #​41399
  • Fix edge workers being re-used unexpectedly: #​41402
  • Remove edge shared deps: #​41413
  • Upgrade React experimental: #​41419
  • Update edge runtime to 1.1.0-beta.39: #​41418
  • Update flakey dev AMP tests: #​41428
  • Add new diagnostics: #​41429
  • Move root layout validation: #​41338
  • chore: bump server pre-compiled target to Node.js 14: #​41424
  • Fix middleware dynamic route param on query hydration: #​41436
  • chore: Update swc_core to v0.38.4: #​41401
  • Don't show error overlay for not found and redirect: #​41438
  • Change useSearchParams to URLSearchParams: #​40978
  • perf(#​41392): improve cache busting inject performance: #​41443
  • Rename reload to refresh in new router: #​41448
  • Disable isNavigatingToNewRootLayout: #​41457
  • fix(app-render): make css and font respect assetPrefix: #​41455
  • Ignore serverComponentChanges in pages: #​41464
  • Include frameworks in main-app: #​41465
  • Fix typo and add comment to next/image SyntheticEvent: #​41480
  • Update next/image docs and examples: #​41434
  • chore: Update swc_core to v0.38.22: #​41477
  • Fix useSearchParams comment: #​41483
  • fix(stream): Allows body larger than 16 KiB with middleware: #​41270
  • fix(41456): check src/app folder too in getHasAppDir: #​41458
  • BREAKING CHANGE: Enable newNextLinkBehavior: #​41459
  • Avoid using the CSS href as the link tag key: #​41493
  • Fix global css being marked as side effect free: #​41481
  • Append the fragment in NextUrl.toString(): #​41501
  • Add vary header to fix incorrectly caching RSC as HTML response: #​41479
  • Enable swcMinify by default: #​41506
  • Move fetch revalidate config under next options: #​41505
  • Fix app sc_client componet HMR server-side: #​41510
  • fix(ts): Cookies -> NextCookies: #​41491
  • Update edge runtime to 1.1.0-beta.40: #​41513
  • BREAKING CHANGE: Remove target: serverless: #​41495
  • Fix next-app-loader bug in windows: #​41520
  • Prebundle react for appDir: #​41337
  • BREAKING CHANGE: Remove browsersListForSwc and change default to legacyBrowsers: false: #​41529
  • chore: Update swc_core to v0.39.7: #​41544
  • Mark styled-jsx as client-only package: #​41414
  • Fix case where dispatch was missing: #​41553
  • Upgrade react-server-dom-webpack and precompiled assets: #​41547
  • Improve type checking: #​41427
  • Create hash digest for errors in app in production: #​41559
  • fix: allow user directory with styled-jsx prefix in next dev: #​41484
  • Fix next/image svg blur placeholder with fill: #​41573
  • Add TypeScript plugin: #​41569
  • Update RSC detection in minimal mode and fix config collection: #​41541
  • Add back() and forward() to new router: #​41575
  • Update page config APIs: #​41580
  • Improve server bundling strategy: #​41584
  • Update error message for invalid react-dom/server imports: #​41582
  • Support overriding request headers in middlewares: #​41380
  • Check root layout change on client: #​41475
  • Full remaining path in selected layout segment: #​41562
  • Add back/forward test for new router: #​41590
  • perf: refactor path logic in router + add LRU cache: #​41365
  • Add transpilePackages option: #​41583
  • Font loader types: #​41591
  • Updating size-adjust calculation: #​41406
  • Fix missing JSON.stringify in loader: #​41599
  • Root layout head not required: #​41621
  • feat(edge): adds AsyncLocalStorage support to the edge function sandbox: #​41622
  • Add support for images.loaderFile config: #​41585
  • BREAKING CHANGE: Remove React 17: #​41629
  • Update next-image-experimental codemod to handle loaders: #​41633
  • Font loader default config: #​41628
  • Disable using prebundled of react for appDir: #​41635
  • Refactor hot-reloader client for app: #​41598
  • Enable ReactRefreshLogBox-builtins.test.ts, remove loader from import trace: #​41645
  • layout: add build status for app routes: #​41627
  • Update @​types/node to 14.14.31: #​41634
  • Change data-nimg attribute on next/image: #​41612
  • chore: Update swc_core to v0.40.7: #​41613
  • Update to handle correct react version with app: #​41658
  • Improve errors for invalid component export: #​41657
  • Add experimental warning note: #​41666
  • Bundle ssr client layer excepts react externals: #​41606
  • Improve error message for wrong props: #​41668
  • Remove deprecated webpack5 config option: #​41667
  • Improve error messages: #​41669
  • Create root layout: #​41523
  • Ensure we properly normalize /index in minimal mode: #​41678
  • Update params of PageProps to string map: #​41677
  • Expose AsyncLocalStorage on global for react: #​41683
  • Update URL malformed edge error: #​41685
  • Update to latest react experimental: #​41671
  • Revert "Add experimental warning note": #​41688
  • Fix typos: code comment: #​41691
  • useSelectedLayoutSegment -> useSelectedLayoutSegments, add useSelectedLayoutSegment with previous behavior: #​41693
  • Ensure AsyncLocalStorage for static generation is shared for client & server: #​41695
  • App dir sass: #​41690
  • chore: Update swc_core to v0.40.13: #​41692
  • Disable esm resolving for appDir and alias react: #​41687
  • Print error when next dev has conflicting app & page: #​41656
  • Support next option for Request: #​41614
  • Revert "chore: Update swc_core to v0.40.13": #​41699
  • Revert "Revert "chore: Update swc_core to v0.40.13"": #​41700
  • chore: Update swc_core to v0.40.16: #​41702
  • Move redirect and notFound to navigation exports: #​41703
  • Font subsets in function call: #​41694
  • Include resolved external package dirs: #​41706
  • Fail on prerendering with dynamic error config: #​41707
  • Update precompiled react to next channel: #​41708
  • Emit VSCode settings for TypeScript: #​41710
  • Upgrade Edge Runtime v.1.1.0: #​41727
  • Fix module trace error messages to not include queries: #​41738
  • Fix ignored file path: #​41747
  • Fix static generation and crawler requests: #​41735
  • Add error if app detected but config is missing: #​41696
  • Add default not found template: #​41750
  • Remove unneeded types: #​41752
  • Add message for appDir feedback: #​41751
  • feat: set a better type for the default image loader : #​41639
  • Fix edge entry layer resolution bug: #​41757
  • Dont apply existing externals path changing to rsc layers: #​41744
  • Pathname and search params SSG: #​41247
  • Update react next channel: #​41761
  • Font description and error messages: #​41764
  • Updating avg width metrics for google fonts: #​41755
  • Bump minimum Node.js version to 14.6.0: #​41765
  • Throw error child in : #​41756
  • [typescript] fix typo in edge runtime name: #​41773
  • Only import dev overlay for dev mode: #​41771
  • Add initial head handling in app: #​41607
  • Fix revalidate during dev: #​41772
  • Fix no-store test case: #​41775
  • Ensure async_hooks are not resolved for client: #​41778
  • Make ship happen: #​41776
  • Add head handling: #​41768
  • Update async storage fix: #​41779
Documentation Changes
  • Updated example for i18n middleware: #​40728
  • docs: Remove extraneous FallbackComponent prop from error boundary docs: #​40785
  • Update static-html-export.md: #​40808
  • Add additional fix in hydration error document: #​40675
  • [docs] Update Cypress config file name: #​40849
  • update url for React Hydration Documentation: #​40883
  • Typo in middleware upgrade guide: #​40963
  • Add useState and useEffect import: #​40944
  • Fix broken link in migration docs.: #​41013
  • Add Enterspeed blog example: #​35897
  • [docs] Improve documentation around pageExtensions: #​40039
  • (Docs) getStaticProps & getServerSideProps TS section (#​40607): #​40639
  • class component -> functional component: #​41089
  • Docs: Fix misleading console.log output example: #​41096
  • Add note to incremental migration about dynamic routes + fallbacks: #​41147
  • Fix docs for next/image unconfigured hosts: #​41223
  • Update introduction.md: #​41226
  • Update security-headers doc: #​41312
  • docs: clarify redirects on client-side navigation: #​41362
  • Update node-module-in-edge-runtime.md: #​41375
  • docs: note MDX with remark-gfm usage: #​41391
  • docs: more detailed error message when failing to parse a middleware matcher: #​41390
  • Update docs with minimum node version 14.x: #​41482
  • Add remotePatterns link to next-image-unconfigured-host: #​41504
  • [docs] fix grammatical error #​41507: #​41508
  • Add swcMinify to the Upgrade Guide: #​41521
  • Fix links to next/legacy/image demo: #​41539
  • Docs for request headers overrides in middleware: #​41546
  • Fix docs typo in next/image sizes using fill prop: #​41560
  • Small change to note <Link /> executes server methods: #​41577
  • docs: remove next/future/image note: #​41610
  • Update custom-error-page for getServerSideProps: #​41723
  • docs: update ci-build-caching: #​41763
Example Changes
  • chore: refactor with-next-sitemap example: #​40712
  • Updates with-supertokens example app: #​40707
  • chore: refactor with-typestyle example: #​40740
  • chore: migrate missing document of with-geist-ui example to typescript: #​40743
  • chore(examples): lock msw version in with-msw example: #​40777
  • chore: refactor using-router example: #​40774
  • Fix: Contentful webhook body parse.: #​40732
  • Open deploy link in new window for examples: #​40804
  • fix/window.gtag is not defined for Next.js-hydration event(#​40410): #​40645
  • Update .env.local.example: #​40839
  • chore: refactor with-web-worker example: #​40844
  • Correct link for "Deploy" button: #​40894
  • Bump TypeScript version in with-typescript: #​40924
  • Revert "Fix: Contentful webhook body parse.": #​40925
  • Update cms-makeswift example: #​41005
  • chore(examples): upgrade with-react-native-web dependencies: #​41024
  • chore(examples): Convert with-react-hook-form example to TypeScript: #​38796
  • chore(examples): remove next-env.d.ts files: #​41041
  • Add NextUI example: #​38209
  • [Examples] -> Add external official example with-react-query: #​38101
  • example: with-mantine: #​34591
  • Add Embedded KeystoneJS example: #​25351
  • Update examples/with-temporal: #​33674
  • Add windicss example: #​35256
  • chore(examples): Add vanilla-extract example: #​41061
  • examples/evm-multichain-dapp: #​39206
  • chore(examples): use correct name in with-xata example: #​41063
  • chore: update with-react-intl example: #​40999
  • Fix: [slug].tsx: #​41074
  • docs(examples): refresh cms-prismic example: #​40121
  • Authsignal passwordless example: #​41079
  • chore(examples): Cosmic cms updates: #​41080
  • chore(example): updated react-multi-carousel to TS: #​37930
  • Add dotCMS example: #​38214
  • chore(examples): Add 'Sitefinity CMS' Example: #​39537
  • chore(examples): update with-linaria: #​41085
  • chore(examples): address remaining review in dotCMS example: #​41091
  • Lock experimental react version in tests: #​41100
  • Update Convex example for v0.2.0: #​41143
  • chore(examples): add webiny cms example: #​41159
  • chore(examples): add Radix UI example: #​41169
  • Updating to latest version of Clerk: #​41192
  • Fix error 500: #​41205
  • Add --frozen-lockfile in Docker example when using pnpm: #​41291
  • chore(examples): upgrade Auth0 example: #​41284
  • Remove references to withSentry function in with-sentry example: #​41326
  • add Cloudflare Turnstile example: #​41283
  • Added example with salesforce commerce cloud: #​41376
  • Update next pwa version in pwa example: #​41386
  • examples(with-routes-graphql): update GraphQL Yoga to v3: #​41478
  • chore(examples): fix typo: #​41496
  • chore(examples): upgrade Stripe example: #​41550
  • chore(examples): update with-apivideo: #​39727
  • chore(examples): fix typo in [videoId].tsx: #​41655
  • examples(with-typescript-graphql): migrate to Yoga v3 and codegen new preset: client: #​41597
  • Bump version tailwindcss example to 3.2: #​41681
Misc Changes
  • Temporarily skip switchable runtime test on deploy: #​40700
  • Break assetPrefix app tests into separate suite: #​40701
  • Skip copying next-swc debug files during testing: #​40761
  • Add test case for /404 client transition: #​40734
  • Update publish to scope as public for initializing: #​40778
  • Update stats config for release stats: #​40780
  • Fix flaky full reload hmr tests: #​40786
  • Add missing release stats config for app: #​40805
  • Tolerate already published error for retrying: #​40812
  • Update publish script to skip lerna: #​40815
  • Disable flakey dev app test temporarily: #​40816
  • Update publish to skip private package: #​40822
  • Update pnpm-lock.yaml
  • Use an ellipsis character instead: #​40913
  • Update expected middleware test error: #​40918
  • Remove extra pnp test: #​40929
  • Always show node_modules inside test in VS Code: #​40956
  • misc: add benchmarking script for edge rendering: #​40716
  • Add timeout to playwright setup job: #​40960
  • Increase playwright install timeout to 5 min
  • Increase other timeouts
  • Skip experimental undici test for deploy mode: #​41006
  • Update flakey middleware rewrite test: #​41007
  • Add test for rewrite from pages to app with existing pages path: #​41023
  • chore/fix typo on contributing documentation: #​41037
  • chore(contributing): remove note about eslint-config-next
  • Revert "chore: make sure polyfills are built for pnpm dev (#​40335)"
  • Merge branch 'canary' of github.com:vercel/next.js into canary
  • chore: make sure polyfills are built for pnpm dev: #​41062
  • chore(examples): fix lint
  • chore(examples): fix lint
  • chore(examples): fix lint
  • chore(examples): rename file from .ts to .tsx
  • chore(examples): fix lint
  • chore(examples): fix lint
  • chore(examples): fix example checks
  • Fix MR stats from experimental react: #​41112
  • Align pnpm version: #​41123
  • Add more test job timeouts: #​41162
  • Fix errors entry in codeowners
  • Upgrade React experimental: #​41222
  • Enable passing tests: #​41241
  • Skip serverless/serverless-trace target tests: #​41252
  • Add test for link to catchall route in new router: #​41289
  • misc: add minimal server bench setup: #​41328
  • Reduce local font loader options: #​41332
  • Reduce remote requests in google fonts: #​41306
  • Bump E2E test timeout minutes
  • Test for unused css modules with layout: #​41018
  • Support aarch64 Linux with page size >= 16k: #​41229
  • Update rsc error message: #​41351
  • docs: add tips for building first before running test for contribute Nextjs.: #​41379
  • Add npm to create-next-app environment package manager parser: #​41279
  • Update bench options in stats-config: #​41432
  • Bump test timeout-minutes for test dev
  • Fix E2E deploy test for API bodies: #​41542
  • Run all dev tests with replay on retry: #​41168
  • Increase timeout-minutes for dev jobs
  • chore: clarify issue template for examples
  • Add test fixture e2e/app-dir/next-image: #​41609
  • feat(cna): add template: #​41660
  • Pin build image version: #​41704
  • Update CNA app template: #​41701
  • Update font avg: #​41734
  • Enable appDir e2e deploy tests #​1: #​41759
Credits

Huge thanks to @​ijjk, @​huozhi, @​HaNdTriX, @​iKethavel, @​timneutkens, @​shuding, @​rishabhpoddar, @​hanneslund, @​balazsorban44, @​anthonyshew, @​TomerAberbach, @​philippbosch, @​styfle, @​mauriciomutte, @​hayitsdavid, @​abdennor, @​Kikobeats, @​cjdunteman, @​Mr-Afonso, @​kdy1, @​jaril, @​abdallah-nour, @​North15, @​feedthejim, @​brunocrosier, @​Schniz, @​sedlukha, @​hashlash, @​Ethan-Arrowood, @​fireairforce, @​migueloller, @​leerob, @​janicklas-ralph, @​Trystanr, @​atilafassina, @​nramkissoon, @​kasperadk, @​valcosmos, @​henriqueholtz, @​nip10, @​jesstelford, @​lorensr, @​AviAvinav, @​SukkaW, @​jaycedotbin, @​saurabhburade, @​notrab, @​kwonoj, @​sanruiz, @​angeloashmore, @​falsepopsky, @​fmontes, @​Gebov, @​UltiRequiem, @​p13lgst, @​Simek, @​mrkldshv, @​thomasballinger, @​kyliau, @​AdarshKonchady, @​endymion1818, @​pedro757, @​perkinsjr, @​gnoff, @​jridgewell, @​silvioprog, @​mabels, @​nialexsan, @​feugy, @​jackromo888, @​crazyurus, @​EarlGeorge, @​MariaSolOs, @​lforst, @​maximbaz, @​maxam2017, @​teobler, @​Nutlope, @​sunwoo0706, @​WestonThayer, @​Brooooooklyn, @​Nsttt, @​charlypoly, @​aprendendofelipe, @​sviridoff, @​jackton1, @​nuta, @​Rpaudel379, @​marcialca, @​MarDi66, @​ismaelrumzan, @​javivelasco, @​eltociear, @​hiro0218, @​HugoDF, @​saulloalmeida, @​ahhshm, @​eve0415, and @​sokra for helping!

v12.3.4

Compare Source

v12.3.3

Compare Source

v12.3.2

Compare Source

v12.3.1

Compare Source

Core Changes
  • Update react-server-dom-webpack: #​40356
  • Fix flight manifest to include all chunks: #​40365
  • docs: fix typos: #​40342
  • Fix page url for edge routes in app dir: #​40361
  • Subresource Integrity for App Directory: #​39729
  • Stop build warning about experimental: { esmExternals: 'loose' }: #​40377
  • Add template and error file types: #​39808
  • Bump styled-jsx for showing displayName: #​40411
  • fix(#​40388): next/dynamic should only add default loading without suspense: #​40397
  • Add missing trace for full reload event: #​40393
  • feat(ts): expose AppType: #​40391
  • Update dev watcher to ignore more accurately: #​40412
  • Add failing case for location throw: #​40445
  • Drop legacy RSC handling in client for pages: #​40472
  • fix: eslint no-script-component-in-head error url: #​40422
  • chore: Update swc: #​40292
  • feat(edge): allows configuring Dynamic code execution guard: #​39539
  • Rename allowDynamic to unstable_allowDynamic: #​40496
  • Don't execute prefetches for bot user agents: #​40435
  • Update semver of eslint-plugin-react: #​40246
  • Clean up startTransition in Link: #​40505
  • docs(README): next.js logo with dark mode: #​40223
  • Passing down original sourcemap for flight client loader: #​40508
  • next/script: make onLoad concurrent rendering resilient: #​40191
  • chore: Update swc: #​40520
  • Add missing feature in next-swc: #​40550
  • Mask Flight Parameters from Middleware: #​39939
  • Unwrap promise with experimental_use: #​40575
  • fix(next/router): Prevent query delete in routing when next.config basePath option is truthy: #​40566
  • fix(image): handle image imports with high aspect ratio: #​40563
  • fix: loosen webpack compilation with fallbackNodePolyfills: false: #​40612
  • Adding experimentalAdjustFallback feature to font optimization: #​40185
  • fix: handle notFound: true in / with next export: #​40592
  • refactor: split up CONTRIBUTING.md: #​40515
  • Implement SWC transformer for server and client graphs: #​40603
  • Fix edge wasm handling during deploy: #​40625
  • Client directive: #​40415
  • Remove internal client next api detection: #​40646
  • Attach module trace for RSC related errors: #​40652
  • Use createFromFetch instead of createFromReadableStream to fetch Flight: #​40656
  • Change Flight response content type to application/octet-stream: #​40665
  • Send web vitals to Vercel analytics in app: #​40669
  • Refactor fetchServerResponse: #​40674
  • Port page and layout level API assertions to SWC transform: #​40653
  • Ensure smooth scroll is disabled for navigation in new and existing router: #​40642
  • Upgrade to latest React experimental: #​40672
  • Refine error messages: #​40661
  • Incldue styled-jsx in swc compiling: #​40679
  • misc: update caniuse-lite to latest: #​40680
  • Remove non existed exports and files: #​40685
  • fix(image): preload should respect crossOrigin: #​40676
  • Add handling for static generation in app: #​40561
  • Avoid direct React client API imports in the server graph: #​40686
  • Drop legacy RSC server and client extension: #​40692
Documentation Changes
  • docs: fix middleware path: #​40340
  • Fix mdx docs: #​40402
  • Update Server Components documentation.: #​40452
  • docs: move swcMinify: true out of "Experimental features" section: #​40394
  • Clarify use of loading property: #​40488
  • docs(errors/large-page-data): how to see data being passed to page: #​40491
  • docs(basic-features/script): update script version history: #​40263
  • Added "negative matcher" documentation: #​40282
  • Fix a typo in docs: #​40501
Example Changes
  • chore: fix examples: #​40395
  • chore(examples): update turborepo examples link: #​40487
  • update(examples): Emotion modules: #​40242
  • Added comments to middleware-matcher example: #​40273
  • Remove legacy mobx example: #​40304
  • Update cms-makeswift example: #​40560
  • Fixed typo: #​40608
  • Revert "Fixed typo": #​40623
  • chore: Migrate with-prefetching example to typescript: #​40671
  • chore: Refactor active-class-name example: #​40670
  • docs(examples): fix error connection handling: #​40633
Misc Changes
  • Temporarily disable unstable app test: #​40408
  • docs(middleware): fix broken link
  • chore: use link: instead of file: in CONTRIBUTING.md: #​40510
  • add Balázs as codeowner to /errors/ directory
  • fix(cli): tune filter for extracting example .tar: #​40513
  • Add additional tests for prefetch and trailingSlash: #​40517
  • Wrap parallel routes tests in describe: #​40546
  • fix(#​40025): run next/script beforeInteractive test in both dev & prod: #​40541
Credits

Huge thanks to @​huozhi, @​shuding, @​ijjk, @​jasham, @​Kikobeats, @​wyattjoh, @​rubytree33, @​timneutkens, @​balazsorban44, @​andrewrjohn, @​SukkaW, @​hanneslund, @​leerob, @​Djo1e, @​kdy1, @​msafi, @​tknickman, @​feugy, @​cramforce, @​ryparker, @​victorboucher, @​steven-tey, @​JDansercoer, @​janklimo, @​hiro0218, @​HaNdTriX, @​migueloller, @​flex-kyunghwa, @​saalimzafar, @​alxhotel, @​janicklas-ralph, @​feedthejim, and @​chornos13 for helping!

v12.3.0

Compare Source

Core Changes
  • Refactor client entry plugin to separate methods.: #​39162
  • Eliminate path polyfill and incremental-cache from base server: #​39548
  • Remove precopied styled-jsx: #​39520
  • Refactor handling of addPageEntry promise: #​39547
  • Support multiple flush effects: #​39559
  • Eliminate Amp in Edge runtime: #​39560
  • Rename page -> entry in on-demand-entry-handler: #​39564
  • Update .env HMR handling: #​39566
  • Fix failing switchable runtime deploy test: #​39579
  • Fix Edge SSR routes: #​39594
  • Support tsconfig paths without baseurl: #​34926
  • Enable @​typescript-eslint/no-use-before-define for functions: #​39602
  • Remove minify: false for webpack5 bundle: #​39620
  • Next Server code refactoring: #​39591
  • Eliminate path and utils from base server: #​39622
  • Remove webpack4 types: #​39631
  • Enable additional TypeScript ESLint rules: #​39640
  • fix(next/dynamic): handle template literal import path: #​39623
  • Add comment on slash normalizing in server: #​39653
  • Refactor base server: #​39649
  • Add separate entry per layout/page.: #​39611
  • fix(next-server): Fix priority for edge routes : #​39462
  • Add todo for dependsOn: #​39677
  • Improved server CSS handling: #​39664
  • feat(next-swc): Update swc: #​39499
  • fix next-app-loader on windows: #​39657
  • fix(swc/emotion): Correct the SPACE_AROUND_COLON regex: #​39710
  • fix(#​39609): warns about suspense and ssr: #​39676
  • Use realpath when emitting traced package.json: #​39683
  • fix(#​39706): add avif support for node serve static: #​39733
  • fix(next): Do not display message when middleware is removed on dev mode: #​39604
  • refactor(portal): remove useRef from portal component: #​39792
  • refactor(use-intersection): remove useRef usage: #​39791
  • allow Edge Functions to stream a compressed fetch response: #​39608
  • fix meaninglessFileNames type in compiler options schema: #​39698
  • build: upgrade edge-runtime: #​39749
  • Update stalled ensure log to use debug instead: #​39826
  • Skip building /500 in dev mode: #​39828
  • Fix onError handling in next/future/image: #​39824
  • Improve error message on next/future/image when objectFit or objectPosition: #​39614
  • Refactor client CSS imports: #​39758
  • Ensure moduleResolution is written correctly: #​39836
  • Fix disposing active entries in dev compilers: #​39845
  • fix(#​39807): ignore width/height from webpack with "fill": #​39849
  • Add handling for auto installing TypeScript deps and HMRing tsconfig: #​39838
  • Remove eslint warning when no eslint config is present: #​39872
  • feat(next/swc): enable wasm first binding load for the platforms: #​38883
  • Fix next/future/image blur-up placeholder : #​39785
  • Fix runLintCheck during build: #​39883
  • Skip auto-install for missing deps in CI: #​39882
  • Remove un-necessary internal jest-worker error during ts/lint error: #​39886
  • Bump @vercel/nft@0.22.0: #​39906
  • Handle edge runtime for app: #​39910
  • build: upgrade edge-runtime: #​39898
  • HMR for client CSS imports: #​39916
  • fix(ts): use AppProps's generic for pageProps: #​38867
  • Treat non page file as non route under app dir: #​39976
  • Fix next/future/image incorrectly warning for fill + blur: #​39986
  • Ensure prefetch heuristic matches with and without middleware: #​39920
  • feat: add experimental.fallbackNodePolyfills flag: #​39248
  • Fix incorrect build log for moduleResolution: #​39991
  • fix(#​39993): avoid race condition for next/script onReady: #​40002
  • Avoid bundling next/script in the server build by default: #​40013
  • Handle async module for client components: #​39953
  • Upgrade typescript to 4.8.2: #​39979
  • Remove Unused SQLite file: #​40056
  • Update next/future/image to use svg blur placeholder during next dev: #​39992
  • Remove <noscript> from next/future/image: #​40075
  • Fix filePath being wrongly stringified: #​40070
  • Refactor Server Router: #​39902
  • Update to detect GSSP with edge runtime during build: #​40076
  • Fix handling with custom _error and pages/500: #​40110
  • Fix edge rewrite handling: #​40115
  • Error for ssg and ssr exports from client components in build time: #​40106
  • feat(next): Support has match and locale option on middleware config: #​39257
  • Change alt to required in next/future/image: #​40136
  • Allow port 0 in next dev and next start: #​40118
  • Update to stable: next/future/image, remotePatterns, unoptimized: #​40142
  • fix(#​40066): preserve error status code from serveStatic: #​40128
  • fix: detect ESLint config in package.json: #​40158
  • ignore EEXIST errors when creating symlinks for output standalone: #​40150
  • Bump @vercel/nft@0.22.1: #​40164
  • Bump styled-jsx: #​40165
  • Match data fetch and busting cache key when path URI encodes: #​39568
  • Updating the Next.js Logo: #​40181
  • next/script: simplify logic and update tests: #​40026
  • Bypass empty pages folder for layouts: #​40132
  • chore: Update swc: #​39965
  • Fix styled-jsx macro imports: #​40234
  • Ensure path can be specified for clearPreviewData: #​40238
  • fix: apply default export interop to next/config: #​40224
  • Improved route resolution in next-app-loader: #​40109
  • Add prefetch to new router: #​39866
  • Update next/future/image to support only width or only height: #​40278
  • Add experimental proxy timeout option: #​40289
  • Fix static info parsing when export data fetching method as variable: #​40317
  • fix(switchable-runtime): make dev server not break when wrong runtime config is exported: #​40312
  • Revert "Refactor Server Router": #​40328
  • fix(switchable-runtime): Make it possible to switch between edge and server runtime in dev: #​39327
  • Revert "Revert "Refactor Server Router" (#​40328)" : #​40333
  • refactor(next/swc): remove unnecessary field in RemoveConsole: #​40296
  • [edge] fix URLSearchParams lacking data from rewrite: #​40260
  • fix(lint): disable react/no-unknown-property: #​40331
  • Update onLoadingComplete for next/future/image to receive reference to <img>: #​40326
  • Remove warning for swcMinify being enabled: #​40359
Documentation Changes
  • docs: Rename API middlewares title in sidebar: #​39534
  • [docs] Avoid next config validation warning: #​39554
  • Update strategies count to 4: #​39610
  • Change the React Server Components CTA to the router/layout RFC: #​39724
  • Add section to next/future/image docs about Known Browser Bugs: #​39759
  • Update next.js.configs line number: #​39802
  • Add note about using the /_error page directly to custom error page article: #​39671
  • Typescript Documentation Improvement for Persistent Layouts: #​33659
  • Add clarity in docs for using exportPathMap with getStaticPaths: #​39813
  • Update links to point to more accurate docs: #​39818
  • Update docs next/future/image with details about computed aspect ratio: #​39829
  • Mention router.isPreview on Preview Mode page: #​39830
  • doc: improve a word client side rendering: #​39771
  • Docs: Updated note about using next/head in basic-features/font-optimization: #​39863
  • [docs] Fixed 404 links to Layouts RFC blog post: #​39937
  • Adds note about custom server requirements: #​39931
  • fix hash-link: #​39929
  • Mention largePageDataBytes in warning docs: #​39941
  • Update Font Optimization docs: #​39950
  • [docs] Update UTM params of some links: #​39951
  • Revert "Adds note about custom server requirements": #​39956
  • Update image.md: #​39984
  • Update script.md: #​40017
  • [docs] Add precision about pageExtensions: #​40016
  • Update debugging.md (--dev -> --save-dev for npm): #​39998
  • docs(testing): add JSDoc typing in jest.config.js: #​40090
  • docs(image): Use hook inside of function component: #​40096
  • docs(security-headers): interest-cohort has been replaced by browsing-topics: #​40113
  • [docs] Functional syntax for _document example in Basic Features: Font Optimization: #​40140
  • Fix typo in error/middleware-upgrade-guide.md: #​40176
  • docs: documents middleware matcher: #​40180
  • docs: update get-static-paths.md: #​40205
  • Change image sizes docs to use em instead of px: #​40288
  • Change sizes docs to use max-width in media query: #​40290
  • docs: fix numbering in middleware docs: #​40276
  • Update docs for remotePatterns image config: #​40350
  • docs: fix typo: #​40354
Example Changes
  • docs(examples): use vercel integration in cms-sanity: #​39323
  • Typo : #​39596
  • Update Convex Example: #​39562
  • Update with-loading example: #​39646
  • [Docs] Update with-slate example: #​39639
  • Tweak Convex example: #​39739
  • examples/with-redux-thunk , update README (#​39555): #​39712
  • [Docs] Update mongodb example: #​39658
  • Convert with-goober example to TS: #​39761
  • [docs] Migrate dynamic routing example to typescript: #​39806
  • Remove unnecessary type reference in Vitest example: #​39819
  • Update cms-makeswift example: #​39834
  • Migrate data-fetch example to typescript: #​39852
  • [Docs] Update examples to favour functional _document: #​39871
  • chore(with-docker): don't copy package.json twice: #​39896
  • Prefer function _app component in examples: #​39967
  • Migrate with-xstate to typescript: #​39974
  • Use Font Optimization in examples: #​39977
  • Add local setup info in the with-supabase-auth-realtime-db example's README: #​40030
  • Remove semi in Convex example: #​40052
  • Refactored the with-supertokens example to use typescript: #​39987
  • Add config types to all examples: #​40083
  • adding with-axiom example: #​38300
  • Update Convex example to convex 0.1.9: #​40162
  • Remove extra "d" in comment: #​40212
  • fix(examples/with-styled-components-babel): list should have unique key: #​40215
  • Migrate image-component example to typescript: #​40204
  • ref(with-sentry example): Explicitly set hideSourceMaps: #​40079
  • Update next-forms example: #​40284
  • Migrate with-context-api example to typescript: #​40297
  • Migrate with-react-jss to typescript: #​40308
  • Update react-remove-properties example: #​40307
  • Migrate using-preact example to typescript: #​40295
  • added type to clientPromise in with-mongodb/lib: #​40339
  • Remove babel from custom-server-typescript example: #​40309
  • Merge with-mobx-state-tree with with-mobx-state-tree-typescript example: #​40306
  • Fix image-component example types: #​40352
Misc Changes
  • Fix preinstall failed in yarn@1.x on FreeBSD with npm@8.17: #​39529
  • Add edge ssr to pr stats: #​39621
  • Update test failure logging : #​39655
  • Update image tests files from *.js to *.ts: #​39663
  • fix(create-app): support github url has trailing slash: #​39665
  • Update contributing.md : #​39767
  • Update ubuntu CI version due to deprecation: #​39817
  • Leverage VERCEL_CLI_VERSION env for deploy tests: #​39823
  • Update flakey relay analytics test: #​39877
  • Added tests for next/router in app directory: #​39867
  • Fix failing e2e getServerSideProps test: #​39885
  • Add path to export-page: #​39893
  • Fix rsc basic e2e test on deploy: #​39905
  • test: merge edge ssr tests: #​39924
  • chore: check against npm version in issue validator: #​38915
  • Increase test concurrency: #​39922
  • Fix passing VERCEL_CLI_VERSION env for deploy tests: #​39946
  • test: pin typescript version to 4.7: #​39978
  • (next/mdx) set providerImportSource to react by default: #​39954
  • Add test for server CSS imports: #​40019
  • Update docker image for stats action: #​40032
  • Update flakey tsconfig test: #​40105
  • fix: scripts comment typos: #​40207
  • fix(cli): do not throw error when extracting examples in Node 18+: #​40182
  • Update to use specific swc version for MR stats: #​40237
  • fix(cli): delete temp file after extraction: #​40259
  • Fix test hydration check in Safari 10.1: #​40285
  • chore: turn off debug mode on issue validator: #​40301
  • Update README.md
Credits

Huge thanks to @​stipsan, @​ijjk, @​timneutkens, @​bennettdams, @​shuding, @​cherniavskii, @​huozhi, @​Brooooooklyn, @​thatbeautifuldream, @​Janpot, @​MoosaSaadat, @​alexcole, @​HaNdTriX, @​magic-akari, @​balazsorban44, @​styfle, @​SukkaW, @​kdy1, @​sokra, @​delbaoliveira, @​puneetkathar1, @​nkzawa, @​Schniz, @​greebl3, @​kasperaamodt, @​chaseignited, @​masad-frost, @​Kikobeats, @​davewelsh, @​MaedahBatool, @​adrianbienias, @​michaeloliverx, @​arthurdenner, @​sumiren, @​migueloller, @​hanneslund, @​wyattjoh, @​kwonoj, @​boredland, @​simongavelin, @​esbenam, @​theMosaad, @​jleclanche, @​leerob, @​AdilAmanat, @​souporserious, @​ykdojo, @​sanjaiyan-dev, @​yoannmoinet, @​thomasballinger, @​titusdmoore, @​jferrettiboke, @​Dueen, @​dunglas, @​KenAKAFrosty, @​wbinnssmith, @​schehata, @​remorses, @​visnup, @​Nutlope, @​yhay81, @​hiro0218, @​avigoldman, @​feugy, @​jeferson-sb, @​lobsterkatie, @​atcastle, @​bcheidemann, @​Will956, @​orionmiz, @​S0UPernova, @​cvbuelow, and @​leonzalion for helping!

v12.2.6

Compare Source

v12.2.5

Compare Source

Core Changes
  • Change invalid internal upstream image error code: #​39334
  • Hoist styles for Route Announcer: #​39331
  • fix: wrong reference url for disableStaticImages: #​39362
  • fix: skip resizing image if it's animated: #​39325
  • Fix catchall rewrites for _next/data routes: #​39370
  • Fix next/future/image alt text: #​39366
  • refactor: add named export in next/server: #​39381
  • fix(ts): More strict Redirect type: #​38277
  • fix(next): dev server starting when importing a file using get-projec…: #​38274
  • Add runtime to PageConfig type: #​37453
  • fix: improve logging for _devPagesManifest.json loading failures: #​38046
  • Allow custom path for preview mode cookies: #​38313
  • Fix removing whitespacing in dev overlay: #​28277
  • Fix emotion labelFormat and sourcemap options: #​39389
  • Fix emotion shouldForwardProp options breaks component selectors: #​39390
  • next/image imgix loader can use multiple auto params: #​34808
  • Adds eslint-plugin-eslint-plugin to ensure eslint-plugin-next rules follow ESLint rule best practices along with enforcing some consistency.: #​37920
  • [ESLint] Adds --output-file flag: #​36420
  • Update polyfill for eslint no-unwanted-polyfillio rule: #​33170
  • fix(ts): Middleware type tweaks: #​38625
  • Fix Link generation for SSG pages if locale domains are used: #​36818
  • Setup require hook in next-server for styled-jsx resolving: #​39305
  • fix: ensure trailing slash on registry URL when fetching wasm fallback: #​39427
  • typing: upgrade styled-jsx to remove workaround in build script: #​39408
  • Extract redirect utils into a separate file: #​39433
  • Ensure locale redirects are not applied in minimal mode: #​39436
  • feat(middleware): augments / matcher with /index: #​39397
  • Bump edge-runtime packages: #​39450
  • Ensure default _app is used when falling back to default _error: #​39467
  • Handle rewriting WebSocket requests: #​39463
  • App Build Stats: #​38884
  • Tweak styled-jsx type declarations: #​39474
  • FIX GAUSSIAN BLUR IN FUTURE\IMAGE: #​39190
  • Add hot-reloading for env file changes: #​38483
  • feat(next-swc/modularize_imports): Add Kebab case: #​38583
  • Make dev watch ignore more specific: #​39504
  • Bump styled-jsx and remove manual types creation: #​39506
  • Add position styling to future fill images: #​39438
  • fix: ensure hidden iframe apps render in development mode: #​39514
  • Enable @​typescript-eslint/no-use-before-define variables,enums,typedefs for core files: #​39511
  • Re-add styled-jsx as a normal dependency: #​39518
Documentation Changes
  • docs: update When section of getStaticProps page: #​39393
  • Update script.md: #​39400
  • API Routes Request Helpers docs.: #​39407
  • Improve description of context.query in getServerSideProps(): #​39422
  • Enhance sizes documentation for next/image: #​39301
  • Add component wrapper in sizes documentation code snippet: #​39437
  • Update router.prefetch documentation to include locale option: #​39442
  • Fix docs path "Invalid getServerSideProps Return Value": #​39443
  • Improve next/future/image Migration docs: #​39421
Example Changes
Misc Changes
  • test: ensure default output is correct: #​39358
  • Fix failing escheck test: #​39365
  • Add yarn 2 Setup Files to Valid Files for create-next-app: #​30936
  • Add Object#fromEntries polyfill (with 6 lines of code): #​36426
  • chore: restores removed tests: #​39452
  • Fix next.config.js overwriting on deploy e2e test: #​39476
  • Update contributing.md to recommend corepack: #​39479
  • Fix swc build for freebsd target: #​39478
Credits

Huge thanks to @​pthomas931, @​madmed88, @​sanjaiyan-dev, @​balazsorban44, @​DonghyukJacobJang, @​ijjk, @​chaiwattsw, @​styfle, @​dunglas, @​ahkhanjani, @​promer94, @​terrierscript, @​shawncal, @​insik-han, @​QuiiBz, @​ykzts, @​JoshuaKGoldberg, @​lucasassisrosa, @​dikwickley, @​Brooooooklyn, @​sicarius97, @​FourwingsY, @​manovotny, @​SukkaW, @​pepoeverton, @​jdeniau, @​sumiren, @​anthonyshew, @​pekarja5, @​huozhi, @​leerob, @​fediev, @​atcastle, @​shuding, @​feugy, @​jonohewitt, @​zakiego, @​Schniz, @​timneutkens, @​wyattjoh, @​MaedahBatool, @​X7Becka, @​nnnnoel, @​dcdev67, @​alvinometric, @​timothympace, and @​jeferson-sb for helping!

v12.2.4

Compare Source

Core Changes
  • Fix error message typos: #​38894
  • Update to latest version of @​vercel/nft: #​38878
  • fix(#​38090): add missing analyticsId to config schema: #​38911
  • Ensure hash on initial request is preserved in new router: #​38913
  • Remove unnecessary assertions: #​38899
  • Clear unnecessary code: #​38900
  • fix: Impl attachRequestMeta in base server to handle meta differently in edge and node servers: #​38932
  • feat: enhance warning messages about unanalyzable config field: #​38907
  • fix: fix generateEtags type inside schema: #​38936
  • Refactor router reducer: #​38983
  • Add state comparison to router: #​38422
  • update webpack: #​38988
  • Update config schema for empty basePath: #​38998
  • Add handling for prefetching onTouchStart and initial mobile testing : #​38805
  • Add additional comments to new router: #​38986
  • Update config-schema for relay field to be less strict: #​39010
  • Add config for opting out of optimistic client cache behavior: #​38774
  • Fix tracing edge-runtime dependencies: #​39009
  • Ensure dangerouslyAllowSVG is passed correctly: #​39031
  • Handle getStaticPaths error inside worker to avoid serializing: #​39032
  • chore: enable swc externalHelpers when pre-compile: #​38182
  • Update to use HEAD request for On-Demand ISR: #​39038
  • chore: Clean up imports and unused code: #​39044
  • Replace node-sass test dependency with sass: #​39053
  • Add comments in new router reducer: #​39025
  • Add additional comments for reducer/cachenode: #​39065
  • fix: print Request & Response properties: #​38903
  • fix: show asPath on large page data warning: #​39071
  • Remove RSC rendering from render: #​39045
  • Ensure query is updated correctly with shallow and middleware: #​39086
  • Update pre-compiled to fix check: #​39089
  • Fix unhandled rejections with edge runtime: #​39091
  • feat(next-swc): Update swc: #​39055
  • Collect telemetry for next/future/image: #​39046
  • [Script] Adds onReady prop to next/script: #​38849
  • Ensure we hard navigate for failed _next/data with middleware: #​39148
  • Refactor Flight plugins to use types.: #​39136
  • Fix middleware + afterFiles SSG rewrite case: #​39153
  • Update swc minifier: #​39158
  • Fix incorrect component cache for middleware cases: #​39159
  • Add shared dynamic api: #​39163
  • Add exportPathMap config type/schema field: #​39171
  • Fix default error style overrides: #​39169
  • refactor: return single middleware from getMiddleware in dev server: #​39177
  • fix(#​11930): rewritten api routes can correctly handle cors in dev mode: #​38937
  • refactor: simplify middleware execution: #​39192
  • Add missing @​napi-rs/cli devDependency to next-swc: #​39164
  • Fix missing edge routes in dev middleware manifest: #​39199
  • Fix: only contain middleware in dev middleware manifest: #​39217
  • fix: react dev bundle is picked in prod mode: #​39221
  • Add "fill" mode to next/future/image: #​38855
  • Handle assetPrefix in app: #​39236
  • Export URLPattern from next/server: #​39219
  • Ensure middleware has single data fetch on query hydration with valid props: #​39210
  • Fix URLPattern next/server export on deploy: #​39290
  • Flush styles effects: #​39268
  • chore: rename typo middlewares to interceptors in hot reloader: #​39292
  • Remove default setting for object-fit on future fill images: #​39297
  • feat(config): implement a human readable ajv errors: #​39291
  • Enable concurrent mode by default in app-render: #​39307
  • Fix next/server being required during build: #​39310
  • feat(next-swc/wasm): export async interfaces: #​39231
  • Ensure On-Demand revalidate does not consider preview cookie: #​39313
  • fix: buffer is not usable on edge runtime: #​39227
Documentation Changes
  • Remove next-page-tester from testing.md: #​38920
  • Add section about building getStaticPaths on-demand.: #​38943
  • Docs: Fix grammatical typo: #​38962
  • docs: update typescript.md: #​38717
  • Add note to next/future/image about default styles.: #​38978
  • Add caveat note about shallow routing with middleware: #​39154
  • fix: Update testing.md: #​39195
  • Replaces getStaticProps with getStaticPaths: #​39218
  • Clear up rewrites documentation: #​39238
  • Add section about migrating from next/image to next/future/image: #​39270
  • [docs] Clarify polyfill support: #​39272
  • fix typo: docs/advanced-features/react-18/streaming.md: #​39293
  • docs: add missing dot: #​39314
Example Changes
  • Add example with cookies-next package: #​31243
  • chore(example): convert with-stitches to TS: #​38892
  • Update Convex example not to ignore generated files: #​38931
  • Convert custom-routes-proxying example to TypeScript: #​38974
  • Added workaround for --isolatedModules inside of configuration files: #​39004
  • Update default gitignore templates: #​39051
  • docs(examples): improve DX while copying command to create new project: #​38410
  • docs(example): Update Makeswift example: #​39070
  • fix: use if..elif..else in docker examples: #​39072
  • feat(with-mux-video): Update mux-player scope and version to latest.: #​39079
  • Convert cms-agilitycms example to TypeScript: #​38976
  • Convert the Cypress config to ESM Module syntax: #​39036
  • fix: missing semicolon on Dockerfile: #​39142
  • Fix typo in with-docker-compose README: #​39176
  • examples/with-msw-typescript: #​39196
  • Update edgedb.toml: #​39243
  • fix: use if...else in dockerfile: #​39263
  • Add TypeScript to ant design example: #​38470
Misc Changes
  • Update Safari 10 test to no longer wait for modern Safari: #​39028
  • Update delayed test output handling: #​39078
  • Update tests to use random directory: #​39230
  • Update Android NDK path for swc builds: #​39298
  • Add delay before exiting tests for log flushing: #​39302
  • chore(trace): fix typo in trace-to-event-format.mjs: #​39279
Credits

Huge thanks to @​theMosaad, @​SukkaW, @​timneutkens, @​Yuddomack, @​msquitieri, @​andreizanik, @​nix6839, @​shuding, @​thomasballinger, @​ziishaned, @​leerob, @​xyeres, @​nyedidikeke, @​maxproske, @​sokra, @​titusdmoore, @​thebergamo, @​fikrikarim, @​Kikobeats, @​balazsorban44, @​clearlyTHUYDOAN, @​ijjk, @​nasso, @​qutek, @​kdy1, @​kyliau, @​housseindjirdeh, @​huozhi, @​barissayil, @​seveibar, @​Jessidhia, @​santidalmasso, @​JohnDaly, @​Nikhilnama18, @​atcastle, @​styfle, @​Schniz, @​mduleone, @​colinhacks, @​ductnn, @​josh, @​hiro0218, @​eltociear, @​kwonoj, @​valcosmos, and @​feugy for helping!

v12.2.3

Compare Source

Core Changes