vercel/next.js
### [`v12.2.2`](https://togithub.com/vercel/next.js/releases/tag/v12.2.2)
[Compare Source](https://togithub.com/vercel/next.js/compare/v12.2.1...v12.2.2)
##### Core Changes
- Update README.md: [#38371](https://togithub.com/vercel/next.js/issues/38371)
- Add support for catchall with new router: [#38439](https://togithub.com/vercel/next.js/issues/38439)
- Fix client entry point prefix: [#38445](https://togithub.com/vercel/next.js/issues/38445)
- Add support for optional catchall with new router: [#38444](https://togithub.com/vercel/next.js/issues/38444)
- Add handling for back/forward (popstate) between old and new router: [#38453](https://togithub.com/vercel/next.js/issues/38453)
- Make catchall parameters consistent with existing router: [#38456](https://togithub.com/vercel/next.js/issues/38456)
- Fix warning `next/future/image` semicolon: [#38454](https://togithub.com/vercel/next.js/issues/38454)
- fix(next/build): disable next-swc crash reporting temporarily: [#38472](https://togithub.com/vercel/next.js/issues/38472)
##### Documentation Changes
- Update building-form sample code: [#38437](https://togithub.com/vercel/next.js/issues/38437)
- Update i18n routing example with Middleware.: [#38419](https://togithub.com/vercel/next.js/issues/38419)
- Adds mention of INP to "Measuring Performance" page: [#38464](https://togithub.com/vercel/next.js/issues/38464)
##### Example Changes
- Replace JS `blog-starter` example with TS, deprecate `blog-starter-typescript` example: [#38395](https://togithub.com/vercel/next.js/issues/38395)
- Convert `api-routes-rate-limit` example to TypeScript: [#38393](https://togithub.com/vercel/next.js/issues/38393)
- examples(with-jotai): Update example: [#38398](https://togithub.com/vercel/next.js/issues/38398)
- fix(examples/with-playwritght): use PORT env variable and fall back to 3000: [#38107](https://togithub.com/vercel/next.js/issues/38107)
- docs: add trpc to examples: [#38272](https://togithub.com/vercel/next.js/issues/38272)
- Convert `api-routes-rest` example to TypeScript: [#38394](https://togithub.com/vercel/next.js/issues/38394)
- chore(examples): Convert `api-routes-graphql` example to TypeScript: [#38357](https://togithub.com/vercel/next.js/issues/38357)
##### Credits
Huge thanks to [@mongolyy](https://togithub.com/mongolyy), [@balazsorban44](https://togithub.com/balazsorban44), [@maxproske](https://togithub.com/maxproske), [@leerob](https://togithub.com/leerob), [@huozhi](https://togithub.com/huozhi), [@Thisen](https://togithub.com/Thisen), [@thebergamo](https://togithub.com/thebergamo), [@zorrolisto](https://togithub.com/zorrolisto), [@styfle](https://togithub.com/styfle), [@housseindjirdeh](https://togithub.com/housseindjirdeh), and [@kwonoj](https://togithub.com/kwonoj) for helping!
### [`v12.2.1`](https://togithub.com/vercel/next.js/releases/tag/v12.2.1)
[Compare Source](https://togithub.com/vercel/next.js/compare/v12.2.0...v12.2.1)
##### Core Changes
- Remove unused `layoutRaw` config: [#38120](https://togithub.com/vercel/next.js/issues/38120)
- Fix invalid config warning for runtime config: [#38122](https://togithub.com/vercel/next.js/issues/38122)
- fix(next/config): update default config for the experimental: [#38123](https://togithub.com/vercel/next.js/issues/38123)
- feat(next/swc): setup native next-swc crash reporter: [#38076](https://togithub.com/vercel/next.js/issues/38076)
- Fix unnecessary flight render passes: [#38133](https://togithub.com/vercel/next.js/issues/38133)
- Readds missing `@next/next/no-assign-module-variable` ESLint rule.: [#38134](https://togithub.com/vercel/next.js/issues/38134)
- Fix failing to set initial ISR cache item in new folder: [#38136](https://togithub.com/vercel/next.js/issues/38136)
- Add default experimental values: [#38135](https://togithub.com/vercel/next.js/issues/38135)
- Fix error when `next/future/image` is missing width or height: [#38132](https://togithub.com/vercel/next.js/issues/38132)
- docs(readme.md): remove broken 404 links: [#38104](https://togithub.com/vercel/next.js/issues/38104)
- fix([#38106](https://togithub.com/vercel/next.js/issues/38106)): use swc client config to pre-compile shared lib: [#38137](https://togithub.com/vercel/next.js/issues/38137)
- Fix chunk path resolution: [#38162](https://togithub.com/vercel/next.js/issues/38162)
- Revert "feat(next/swc): setup native next-swc crash reporter": [#38170](https://togithub.com/vercel/next.js/issues/38170)
- fix(next/swc): set cache dir explicitly: [#38175](https://togithub.com/vercel/next.js/issues/38175)
- Ensure [@swc/helpers](https://togithub.com/swc/helpers) do not rely on hoisting: [#38174](https://togithub.com/vercel/next.js/issues/38174)
- Migrate rsc tests to app dir tests: [#38158](https://togithub.com/vercel/next.js/issues/38158)
- Check for performance.getEntriesByName before calling: [#38186](https://togithub.com/vercel/next.js/issues/38186)
- Adds tests to ensure `eslint-plugin-next`'s available rules are properly exported and recommended rules are correctly defined.: [#38183](https://togithub.com/vercel/next.js/issues/38183)
- Fix pageProps is missing when route changes: [#38178](https://togithub.com/vercel/next.js/issues/38178)
- feat(next/build): send next-swc plugins telemetry: [#38116](https://togithub.com/vercel/next.js/issues/38116)
- Ensure page.server.js matches correctly: [#38236](https://togithub.com/vercel/next.js/issues/38236)
- Alias react and react-dom by default: [#38245](https://togithub.com/vercel/next.js/issues/38245)
- Fix: convert head instances to array: [#38252](https://togithub.com/vercel/next.js/issues/38252)
- \[edge] Make runtime addressable in compile time: [#38288](https://togithub.com/vercel/next.js/issues/38288)
- Ensure trailing slash is handled correctly with middleware: [#38282](https://togithub.com/vercel/next.js/issues/38282)
- Fix CSS modules imported from client components in app dir: [#38310](https://togithub.com/vercel/next.js/issues/38310)
- \[edge] favor browser exports for edge compiler: [#38319](https://togithub.com/vercel/next.js/issues/38319)
- Fix CSS modules imported from client components in app dir with next build: [#38329](https://togithub.com/vercel/next.js/issues/38329)
- Honor NEXT_MANUAL_SIG_HANDLE flag in standalone mode: [#38346](https://togithub.com/vercel/next.js/issues/38346)
- Display stack trace when error occurs in API route: [#38289](https://togithub.com/vercel/next.js/issues/38289)
- Handle Client Rewrites Correctly: [#38340](https://togithub.com/vercel/next.js/issues/38340)
- Fix global CSS file imports: [#38339](https://togithub.com/vercel/next.js/issues/38339)
- \[build] validate the exported config values: [#38370](https://togithub.com/vercel/next.js/issues/38370)
- Correctly check if width is lte 0 in Image Optimization API: [#38226](https://togithub.com/vercel/next.js/issues/38226)
- chore: shorten image blur svg placholder: [#38157](https://togithub.com/vercel/next.js/issues/38157)
- Enable swc minifier in create next apps: [#38215](https://togithub.com/vercel/next.js/issues/38215)
- Filter proper chunks from chunk group for client components: [#38379](https://togithub.com/vercel/next.js/issues/38379)
- \[edge] enable edge compiler source maps by default: [#38365](https://togithub.com/vercel/next.js/issues/38365)
- Call Error.getInitialProps for the top level error: [#21240](https://togithub.com/vercel/next.js/issues/21240)
- feat: build edge functions with node.js modules and fail at runtime: [#38234](https://togithub.com/vercel/next.js/issues/38234)
- Implement new client-side router: [#37551](https://togithub.com/vercel/next.js/issues/37551)
- Add param names into the tree: [#38415](https://togithub.com/vercel/next.js/issues/38415)
- feat(next/swc): setup native next-swc crash reporter with platform supports: [#38221](https://togithub.com/vercel/next.js/issues/38221)
- Ensure server components entries are not part of the pages buildmanifest: [#38416](https://togithub.com/vercel/next.js/issues/38416)
- Add app-path-routes manifest: [#38420](https://togithub.com/vercel/next.js/issues/38420)
##### Documentation Changes
- Middleware docs update: [#38111](https://togithub.com/vercel/next.js/issues/38111)
- Update middleware upgrade guide w/ more rationale: [#38074](https://togithub.com/vercel/next.js/issues/38074)
- Update `next/future/image` docs to mention the difference with `next/image`: [#38108](https://togithub.com/vercel/next.js/issues/38108)
- Clarify router.query initial value during prerendering: [#38093](https://togithub.com/vercel/next.js/issues/38093)
- Remove `lazyRoot` example from `next/future/image` doc: [#38140](https://togithub.com/vercel/next.js/issues/38140)
- Add a Makeswift example: [#38018](https://togithub.com/vercel/next.js/issues/38018)
- docs: remove eslint config link: [#38206](https://togithub.com/vercel/next.js/issues/38206)
- fix: middleware-upgrade-guide.md: [#38246](https://togithub.com/vercel/next.js/issues/38246)
- Typo in NextResponse docs: [#38259](https://togithub.com/vercel/next.js/issues/38259)
- Update `next/future/image` docs to specify supported browser versions.: [#38307](https://togithub.com/vercel/next.js/issues/38307)
- Update get-static-props.md: [#38287](https://togithub.com/vercel/next.js/issues/38287)
- Clarification for Testing Environment Variables: [#38359](https://togithub.com/vercel/next.js/issues/38359)
- Fix typo in SWC plugin destructuring example: [#38367](https://togithub.com/vercel/next.js/issues/38367)
- Fix/update docs for swc styled components: [#38280](https://togithub.com/vercel/next.js/issues/38280)
- Update edge-runtime.md: [#38271](https://togithub.com/vercel/next.js/issues/38271)
- Add note about casing to getStaticPaths docs: [#38426](https://togithub.com/vercel/next.js/issues/38426)
##### Example Changes
- Adding with-ably example for realtime messaging in next apps: [#37319](https://togithub.com/vercel/next.js/issues/37319)
- Convert auth0 example to TypeScript: [#38087](https://togithub.com/vercel/next.js/issues/38087)
- Convert basic-export example to TypeScript: [#38092](https://togithub.com/vercel/next.js/issues/38092)
- Convert basic-css example to TypeScript: [#38091](https://togithub.com/vercel/next.js/issues/38091)
- Add Convex example: [#38129](https://togithub.com/vercel/next.js/issues/38129)
- Convert catch-all-routes example to TypeScript: [#38188](https://togithub.com/vercel/next.js/issues/38188)
- feat(examples): link to turbo next.js examples: [#38173](https://togithub.com/vercel/next.js/issues/38173)
- feat(examples): adds middleware example: [#38240](https://togithub.com/vercel/next.js/issues/38240)
- fix(examples): fix link on middleware example: [#38323](https://togithub.com/vercel/next.js/issues/38323)
- Update analysis scripts: [#38201](https://togithub.com/vercel/next.js/issues/38201)
- chore(examples): fix experiments loading npm wasm: [#38348](https://togithub.com/vercel/next.js/issues/38348)
- chore(examples): Convert `api-routes-cors` example to TypeScript: [#38356](https://togithub.com/vercel/next.js/issues/38356)
- chore(examples): Convert `api-routes-middleware` example to TypeScript: [#38358](https://togithub.com/vercel/next.js/issues/38358)
- Remove CharkraProvicer RestCSS prop: [#38199](https://togithub.com/vercel/next.js/issues/38199)
- Add example: with-apivideo-upload: [#36050](https://togithub.com/vercel/next.js/issues/36050)
- Updates with-supertokens example: [#38369](https://togithub.com/vercel/next.js/issues/38369)
- fix: update with-msw example to function properly for all use cases: [#38050](https://togithub.com/vercel/next.js/issues/38050)
- chore(examples): Convert `blog` example to TypeScript: [#38095](https://togithub.com/vercel/next.js/issues/38095)
##### Misc Changes
- Add more code ownership paths for padmaia: [#38121](https://togithub.com/vercel/next.js/issues/38121)
- Fix create-next-app tests from changed example: [#38154](https://togithub.com/vercel/next.js/issues/38154)
- Fix missing trace script devDependencies: [#38172](https://togithub.com/vercel/next.js/issues/38172)
- chore: don't use `type: "module"` when building the Issue validator action: [#38197](https://togithub.com/vercel/next.js/issues/38197)
- fix: declare NextBundleAnalyzer as a type: [#38168](https://togithub.com/vercel/next.js/issues/38168)
- Replace placeholder.com images with \*.vercel.app in image-component tests: [#38090](https://togithub.com/vercel/next.js/issues/38090)
- chore: point to `/dist` for local action
- chore: fix issue validator paths
- Update some flaking tests for edge compiler and rsc: [#38344](https://togithub.com/vercel/next.js/issues/38344)
- chore: remove workspace from `package.json` since we have \`pnpm-works…: [#38166](https://togithub.com/vercel/next.js/issues/38166)
- Revert "chore: remove workspace from `package.json` since we have \`pnpm-works…": [#38376](https://togithub.com/vercel/next.js/issues/38376)
- Replace pre-commit with husky: [#38350](https://togithub.com/vercel/next.js/issues/38350)
- Add more CSS imports test cases: [#38343](https://togithub.com/vercel/next.js/issues/38343)
##### Credits
Huge thanks to [@ethomson](https://togithub.com/ethomson), [@styfle](https://togithub.com/styfle), [@padmaia](https://togithub.com/padmaia), [@kwonoj](https://togithub.com/kwonoj), [@shuding](https://togithub.com/shuding), [@ijjk](https://togithub.com/ijjk), [@manovotny](https://togithub.com/manovotny), [@thisisjofrank](https://togithub.com/thisisjofrank), [@maxproske](https://togithub.com/maxproske), [@dominiksipowicz](https://togithub.com/dominiksipowicz), [@awareness481](https://togithub.com/awareness481), [@pakaponk](https://togithub.com/pakaponk), [@SukkaW](https://togithub.com/SukkaW), [@apledger](https://togithub.com/apledger), [@wyattjoh](https://togithub.com/wyattjoh), [@huozhi](https://togithub.com/huozhi), [@thomasballinger](https://togithub.com/thomasballinger), [@balazsorban44](https://togithub.com/balazsorban44), [@longzheng](https://togithub.com/longzheng), [@tknickman](https://togithub.com/tknickman), [@rbrcsk](https://togithub.com/rbrcsk), [@emersonlaurentino](https://togithub.com/emersonlaurentino), [@carstenlebek](https://togithub.com/carstenlebek), [@edusig](https://togithub.com/edusig), [@Schniz](https://togithub.com/Schniz), [@riccardogiorato](https://togithub.com/riccardogiorato), [@leerob](https://togithub.com/leerob), [@valcosmos](https://togithub.com/valcosmos), [@hanneslund](https://togithub.com/hanneslund), [@ryanhaticus](https://togithub.com/ryanhaticus), [@j-mendez](https://togithub.com/j-mendez), [@armandabric](https://togithub.com/armandabric), [@WinmezzZ](https://togithub.com/WinmezzZ), [@andershagbard](https://togithub.com/andershagbard), [@dammy001](https://togithub.com/dammy001), [@MarDi66](https://togithub.com/MarDi66), [@stefanprobst](https://togithub.com/stefanprobst), [@okmttdhr](https://togithub.com/okmttdhr), [@rishabhpoddar](https://togithub.com/rishabhpoddar), [@marjorg](https://togithub.com/marjorg), [@dustinsgoodman](https://togithub.com/dustinsgoodman), [@zanechua](https://togithub.com/zanechua), [@feugy](https://togithub.com/feugy), and [@timneutkens](https://togithub.com/timneutkens) for helping!
### [`v12.2.0`](https://togithub.com/vercel/next.js/releases/tag/v12.2.0)
[Compare Source](https://togithub.com/vercel/next.js/compare/v12.1.6...v12.2.0)
##### Core Changes
- Flush initial styled-jsx in gIP first in concurrent rendering: [#36594](https://togithub.com/vercel/next.js/issues/36594)
- Add falling back to wasm swc build on native load failure: [#36612](https://togithub.com/vercel/next.js/issues/36612)
- feat(next-swc): introduce experimental tracing support for swc: [#35803](https://togithub.com/vercel/next.js/issues/35803)
- Add initial handling for routing tests: [#36635](https://togithub.com/vercel/next.js/issues/36635)
- Fix asPath handling for data route revalidation in minimal mode: [#36660](https://togithub.com/vercel/next.js/issues/36660)
- fix: react root enabled properly in custom server: [#36664](https://togithub.com/vercel/next.js/issues/36664)
- Route Loader Trusted Types Violation Fix: [#34730](https://togithub.com/vercel/next.js/issues/34730)
- Update components in GitHub Actions: [#36669](https://togithub.com/vercel/next.js/issues/36669)
- Fix various Trusted Types violations without use of policy: [#34726](https://togithub.com/vercel/next.js/issues/34726)
- Add experimental wildcard `remotePatterns` config for upstream images: [#36245](https://togithub.com/vercel/next.js/issues/36245)
- Tweak routing tests: [#36667](https://togithub.com/vercel/next.js/issues/36667)
- Update renderOpts.dev handling and fix check: [#36666](https://togithub.com/vercel/next.js/issues/36666)
- fix: duplicate app server: [#36710](https://togithub.com/vercel/next.js/issues/36710)
- Add route loader: [#36712](https://togithub.com/vercel/next.js/issues/36712)
- Fix leftover todo in loader: [#36734](https://togithub.com/vercel/next.js/issues/36734)
- Leverage pageExtensions for resolving in loader: [#36747](https://togithub.com/vercel/next.js/issues/36747)
- Use react dom server node api to detect react root is enabled: [#36749](https://togithub.com/vercel/next.js/issues/36749)
- replace use-subscription with use-sync-external-store: [#36733](https://togithub.com/vercel/next.js/issues/36733)
- Add flight render starting point: [#36760](https://togithub.com/vercel/next.js/issues/36760)
- feat: better cookies API for Edge Functions: [#36478](https://togithub.com/vercel/next.js/issues/36478)
- Clarify variables being used during rendering: [#36773](https://togithub.com/vercel/next.js/issues/36773)
- Update x-nextjs-cache header in minimal mode: [#36791](https://togithub.com/vercel/next.js/issues/36791)
- Add experimental flag to force SWC transforms: [#36789](https://togithub.com/vercel/next.js/issues/36789)
- Update root component handling: [#36781](https://togithub.com/vercel/next.js/issues/36781)
- Add final newline to package-lock.json: [#36813](https://togithub.com/vercel/next.js/issues/36813)
- Move FlightManifestPlugin to server compilers: [#36810](https://togithub.com/vercel/next.js/issues/36810)
- Update moduleNameMapper jest config and remove extra deps: [#36787](https://togithub.com/vercel/next.js/issues/36787)
- Wait for shell resolve with gIP is customized in react 18: [#36792](https://togithub.com/vercel/next.js/issues/36792)
- Build x86\_64-freebsd SWC binary: [#36826](https://togithub.com/vercel/next.js/issues/36826)
- Don't convert error to string: [#36804](https://togithub.com/vercel/next.js/issues/36804)
- fix([#36534](https://togithub.com/vercel/next.js/issues/36534)): enable interopClientDefaultExport for next/jest: [#36824](https://togithub.com/vercel/next.js/issues/36824)
- fix([#30300](https://togithub.com/vercel/next.js/issues/30300)): force export 404.html: [#36827](https://togithub.com/vercel/next.js/issues/36827)
- Telemetry: track usage of 'experimental/nextScriptWorkers': [#36812](https://togithub.com/vercel/next.js/issues/36812)
- Eagerly load swc bindings for wasm fallback for jest: [#36784](https://togithub.com/vercel/next.js/issues/36784)
- Add experimental config for basePath testing: [#36843](https://togithub.com/vercel/next.js/issues/36843)
- Enable html post optimization for react 18: [#36837](https://togithub.com/vercel/next.js/issues/36837)
- Update client router for tests: [#36822](https://togithub.com/vercel/next.js/issues/36822)
- Fix return type of middleware `req.cookies.get()`: [#36872](https://togithub.com/vercel/next.js/issues/36872)
- Make esm default interpolation work with jest mock: [#36877](https://togithub.com/vercel/next.js/issues/36877)
- Decouple entries for server components and client components: [#36860](https://togithub.com/vercel/next.js/issues/36860)
- fix([#36855](https://togithub.com/vercel/next.js/issues/36855)/[#30300](https://togithub.com/vercel/next.js/issues/30300)): export 404.html correctly: [#36910](https://togithub.com/vercel/next.js/issues/36910)
- Drop the unstable web vital hook and remove exports of flush effects: [#36912](https://togithub.com/vercel/next.js/issues/36912)
- Update swc: [#36745](https://togithub.com/vercel/next.js/issues/36745)
- Add additional layer for server components case: [#36921](https://togithub.com/vercel/next.js/issues/36921)
- Support graceful shutdowns: [#36909](https://togithub.com/vercel/next.js/issues/36909)
- Update [@types/node-fetch](https://togithub.com/types/node-fetch) to latest: [#36953](https://togithub.com/vercel/next.js/issues/36953)
- Fix SWC dynamic transform with suspense but without ssr: [#36825](https://togithub.com/vercel/next.js/issues/36825)
- fix([#36651](https://togithub.com/vercel/next.js/issues/36651)): disable reactRemoveProperties in jest transform: [#36922](https://togithub.com/vercel/next.js/issues/36922)
- Update swc: [#36972](https://togithub.com/vercel/next.js/issues/36972)
- Update lockfile patching for different versions: [#36959](https://togithub.com/vercel/next.js/issues/36959)
- Add support for browserslist and legacyBrowsers experimental option: [#36584](https://togithub.com/vercel/next.js/issues/36584)
- Remove optional chaining from eslint rule to support older node versions: [#36978](https://togithub.com/vercel/next.js/issues/36978)
- escape flight response values: [#36989](https://togithub.com/vercel/next.js/issues/36989)
- fix(middleware): false positive dynamic code detection at build time: [#36955](https://togithub.com/vercel/next.js/issues/36955)
- Fix interopDefault on jest object-proxy: [#37002](https://togithub.com/vercel/next.js/issues/37002)
- Simplify the logic for static flight response generation: [#36984](https://togithub.com/vercel/next.js/issues/36984)
- Fixes `beforeInteractive` scripts failing in custom document: [#37000](https://togithub.com/vercel/next.js/issues/37000)
- Change experimental `layout=raw` to use native img lazy loading: [#36985](https://togithub.com/vercel/next.js/issues/36985)
- Don't add locale to client side redirects from data fetching: [#36944](https://togithub.com/vercel/next.js/issues/36944)
- Edge Cookies: Add `.getWithOptions` method: [#36943](https://togithub.com/vercel/next.js/issues/36943)
- Deprecate nested Middleware in favor of root middleware: [#36772](https://togithub.com/vercel/next.js/issues/36772)
- Fix styled-jsx not working in client components in the edge runtime when SSR: [#37042](https://togithub.com/vercel/next.js/issues/37042)
- Update to latest version of [@vercel/nft](https://togithub.com/vercel/nft): [#37041](https://togithub.com/vercel/next.js/issues/37041)
- Fixes beforeInteractive inline scripts don't run: [#37033](https://togithub.com/vercel/next.js/issues/37033)
- Update swc: [#37009](https://togithub.com/vercel/next.js/issues/37009)
- feat(middleware)!: forbids middleware response body: [#36835](https://togithub.com/vercel/next.js/issues/36835)
- Extract and refactor `getPageStaticInfo`: [#37062](https://togithub.com/vercel/next.js/issues/37062)
- Keep custom app as non server component: [#37044](https://togithub.com/vercel/next.js/issues/37044)
- Ensure hydration error doc link is shown with react 18: [#37074](https://togithub.com/vercel/next.js/issues/37074)
- Stabilize SWC emotion transform plugin: [#37058](https://togithub.com/vercel/next.js/issues/37058)
- DecodeError from invalid URI causes 500 with middleware (vs 400 without): [#36993](https://togithub.com/vercel/next.js/issues/36993)
- feat: Opt-out Error page from dark scheme color: [#36951](https://togithub.com/vercel/next.js/issues/36951)
- Properly await for this.hasPage() in base-server: [#37091](https://togithub.com/vercel/next.js/issues/37091)
- Enable Trusted Types Compatibility in Webpack: [#36750](https://togithub.com/vercel/next.js/issues/36750)
- Fix Trusted Types violations from dangerouslySetInnerHTML on style elements: [#36751](https://togithub.com/vercel/next.js/issues/36751)
- Remove invalid attrs for head html element: [#36457](https://togithub.com/vercel/next.js/issues/36457)
- Fix next/link can't jump to non-latin anchors: [#36430](https://togithub.com/vercel/next.js/issues/36430)
- Fix: Cleaner error message when importing sass without it being installed in dev: [#35051](https://togithub.com/vercel/next.js/issues/35051)
- fix([#33081](https://togithub.com/vercel/next.js/issues/33081)): handle relative path correctly: [#36823](https://togithub.com/vercel/next.js/issues/36823)
- fix: place the charset meta tag at the top of the head: [#36561](https://togithub.com/vercel/next.js/issues/36561)
- keep method when cloning Request, fixes [#36522](https://togithub.com/vercel/next.js/issues/36522): [#36539](https://togithub.com/vercel/next.js/issues/36539)
- fix: Catch hash change errors, and emit a `routeChangeError` event: [#36828](https://togithub.com/vercel/next.js/issues/36828)
- fix: should listen for config file changes when specifying the app directory: [#36570](https://togithub.com/vercel/next.js/issues/36570)
- improve getStaticProps error message: [#34287](https://togithub.com/vercel/next.js/issues/34287)
- next-swc: Improve error message for nested styled jsx tags: [#33805](https://togithub.com/vercel/next.js/issues/33805)
- Add missing file in mini-css-extract-plugin: [#25691](https://togithub.com/vercel/next.js/issues/25691)
- fix NextApiRequestCookies and NextApiRequestQuery types: [#25532](https://togithub.com/vercel/next.js/issues/25532)
- Add eslint rule for not allowing styled-jsx in \_document.js: [#32678](https://togithub.com/vercel/next.js/issues/32678)
- fix: Scroll restoration bug caused by `idx` reset to 0 on reload: [#36861](https://togithub.com/vercel/next.js/issues/36861)
- Add JSX.Element to styles type in DocumentInitialProps: [#36392](https://togithub.com/vercel/next.js/issues/36392)
- Fix Type to solve issue found in [#36008](https://togithub.com/vercel/next.js/issues/36008): [#36671](https://togithub.com/vercel/next.js/issues/36671)
- Warn when building a TS project with composite: true and fallback to incremental: [#35270](https://togithub.com/vercel/next.js/issues/35270)
- Support TS exactOptionalPropertyTypes (fixes [#35280](https://togithub.com/vercel/next.js/issues/35280)): [#35281](https://togithub.com/vercel/next.js/issues/35281)
- feat(middleware): issues warnings when using node.js global APIs in middleware: [#36980](https://togithub.com/vercel/next.js/issues/36980)
- perf: run type check and eslint in parallel: [#37105](https://togithub.com/vercel/next.js/issues/37105)
- Remove process.cwd usage from path polyfill: [#37130](https://togithub.com/vercel/next.js/issues/37130)
- Bump `@vercel/nft` to 0.19.1: [#37129](https://togithub.com/vercel/next.js/issues/37129)
- Add libc field to swc packages: [#37131](https://togithub.com/vercel/next.js/issues/37131)
- chore(devDeps): bump [@vercel/ncc](https://togithub.com/vercel/ncc) to 0.33.4: [#37113](https://togithub.com/vercel/next.js/issues/37113)
- fix(typescript): worker execution failed with custom `next.config.js`: [#37125](https://togithub.com/vercel/next.js/issues/37125)
- Update swc: [#37148](https://togithub.com/vercel/next.js/issues/37148)
- Update swc: [#37149](https://togithub.com/vercel/next.js/issues/37149)
- Fix client component hydration: [#37134](https://togithub.com/vercel/next.js/issues/37134)
- Avoid anonymous function in next/link: [#37154](https://togithub.com/vercel/next.js/issues/37154)
- should render the correct sizes passed when a noscript is rendered: [#37161](https://togithub.com/vercel/next.js/issues/37161)
- Use customized chunk loading implementation: [#37163](https://togithub.com/vercel/next.js/issues/37163)
- Rename app paths folder: [#37146](https://togithub.com/vercel/next.js/issues/37146)
- Fix experimental `remotePatterns` wildcard: [#37137](https://togithub.com/vercel/next.js/issues/37137)
- Split useServerResponse for initial responses: [#37209](https://togithub.com/vercel/next.js/issues/37209)
- Refactor fetchFlight: [#37213](https://togithub.com/vercel/next.js/issues/37213)
- build: import useSyncExternalStore from react when using react 18: [#37212](https://togithub.com/vercel/next.js/issues/37212)
- feat(next/swc): support experimental swc plugins: [#36790](https://togithub.com/vercel/next.js/issues/36790)
- Small code improvements: [#37227](https://togithub.com/vercel/next.js/issues/37227)
- build(actions): skip plugin features for non supported platform: [#37229](https://togithub.com/vercel/next.js/issues/37229)
- Use deterministic module IDs in the client bundle: [#37249](https://togithub.com/vercel/next.js/issues/37249)
- Execute middleware on Next.js internal requests: [#37121](https://togithub.com/vercel/next.js/issues/37121)
- Preload chunks for next/dynamic in suspense mode: [#37245](https://togithub.com/vercel/next.js/issues/37245)
- Refactor incremental cache to be extensible: [#37258](https://togithub.com/vercel/next.js/issues/37258)
- Ignore popstate with invalid state: [#37110](https://togithub.com/vercel/next.js/issues/37110)
- Show warning during build if page is returning a large amount of data: [#37264](https://togithub.com/vercel/next.js/issues/37264)
- Add `swcMinifyDebugOptions`: [#37172](https://togithub.com/vercel/next.js/issues/37172)
- Update to leverage pnpm for monorepo: [#37259](https://togithub.com/vercel/next.js/issues/37259)
- Refactor client component out of client runtime: [#37238](https://togithub.com/vercel/next.js/issues/37238)
- Update to not trigger revalidation during prefetch: [#37201](https://togithub.com/vercel/next.js/issues/37201)
- Upgrade amp optimizer to v2.8.3: [#27106](https://togithub.com/vercel/next.js/issues/27106)
- Use Edge Runtime for running Edge Functions locally: [#37024](https://togithub.com/vercel/next.js/issues/37024)
- fix: do not pass `legacyBehaviour` to `a` as prop: [#37306](https://togithub.com/vercel/next.js/issues/37306)
- Add router replace to experiment: [#37312](https://togithub.com/vercel/next.js/issues/37312)
- Extract router utils to common functions: [#37313](https://togithub.com/vercel/next.js/issues/37313)
- Include router context as rsc shared dep: [#37320](https://togithub.com/vercel/next.js/issues/37320)
- Update to leverage turbo for build/prepublish: [#37280](https://togithub.com/vercel/next.js/issues/37280)
- Update of [@babel/core](https://togithub.com/babel/core): [#37145](https://togithub.com/vercel/next.js/issues/37145)
- Migrate prerender lru cache into fs cache handler: [#37326](https://togithub.com/vercel/next.js/issues/37326)
- support `runtime: edge` in api endpoints: [#36947](https://togithub.com/vercel/next.js/issues/36947)
- Revert "support `runtime: edge` in api endpoints": [#37337](https://togithub.com/vercel/next.js/issues/37337)
- Ensure type check/link worker does not retry: [#37324](https://togithub.com/vercel/next.js/issues/37324)
- Revert "Revert "support `runtime: edge` in api endpoints"": [#37344](https://togithub.com/vercel/next.js/issues/37344)
- Revert Edge API endpoints: [#37350](https://togithub.com/vercel/next.js/issues/37350)
- Handle link with back/forward navigation: [#37332](https://togithub.com/vercel/next.js/issues/37332)
- Edge Functions: deprecate access to `request.page`: [#37349](https://togithub.com/vercel/next.js/issues/37349)
- Fix bloat in main bundle from amp: [#37383](https://togithub.com/vercel/next.js/issues/37383)
- Add Suspense boundary to demo: [#37393](https://togithub.com/vercel/next.js/issues/37393)
- update webpack and watchpack: [#37397](https://togithub.com/vercel/next.js/issues/37397)
- Fix next dev not working for server components in app: [#37403](https://togithub.com/vercel/next.js/issues/37403)
- Use the new moduleMap option in the flight client during SSR: [#37406](https://togithub.com/vercel/next.js/issues/37406)
- Remove unused id rsc cache cleaning and avoid rsc refresh existed in client chunk: [#37404](https://togithub.com/vercel/next.js/issues/37404)
- Allow Middleware to set its matcher: [#37177](https://togithub.com/vercel/next.js/issues/37177)
- Skip loading unused plugins in `next dev`: [#37430](https://togithub.com/vercel/next.js/issues/37430)
- Fix `next/image` using `layout=raw` with `priority`: [#37381](https://togithub.com/vercel/next.js/issues/37381)
- Fix document head with react 18: [#37443](https://togithub.com/vercel/next.js/issues/37443)
- Set `swcMinify` as an attribute on `terser-webpack-plugin-optimize` span: [#37416](https://togithub.com/vercel/next.js/issues/37416)
- Allowing hiding the ReactDevOverlay: [#37417](https://togithub.com/vercel/next.js/issues/37417)
- Ensure ENOENT error is not ignored when loading pages: [#37486](https://togithub.com/vercel/next.js/issues/37486)
- Upgrade node-html-parser: [#37449](https://togithub.com/vercel/next.js/issues/37449)
- Fix invalid middleware regexp in manifest: [#37492](https://togithub.com/vercel/next.js/issues/37492)
- Avoid unnecessary router state changes: [#37431](https://togithub.com/vercel/next.js/issues/37431)
- Enable externalHelpers swc option: [#37150](https://togithub.com/vercel/next.js/issues/37150)
- Add check for duplicate locales: [#37485](https://togithub.com/vercel/next.js/issues/37485)
- add method to measure Interaction to Next Paint (INP): [#36490](https://togithub.com/vercel/next.js/issues/36490)
- chore: remove unused variable: [#37538](https://togithub.com/vercel/next.js/issues/37538)
- Update to latest version of [@swc/helpers](https://togithub.com/swc/helpers): [#37531](https://togithub.com/vercel/next.js/issues/37531)
- \[middleware] Support any `method` when fetching a `Request` instance: [#37540](https://togithub.com/vercel/next.js/issues/37540)
- Migrate head side effects to hooks: [#37526](https://togithub.com/vercel/next.js/issues/37526)
- chore: remove unused safari nomodule fix: [#37541](https://togithub.com/vercel/next.js/issues/37541)
- fix([#37106](https://togithub.com/vercel/next.js/issues/37106)): middleware can not be loaded from src folder: [#37428](https://togithub.com/vercel/next.js/issues/37428)
- Remove Middleware Preflight: [#37490](https://togithub.com/vercel/next.js/issues/37490)
- fix(eslint): false positive for legit next/server imports: [#37515](https://togithub.com/vercel/next.js/issues/37515)
- chore: reworks nested middleware error message: [#37513](https://togithub.com/vercel/next.js/issues/37513)
- Revert "Avoid unnecessary router state changes": [#37572](https://togithub.com/vercel/next.js/issues/37572)
- Middleware: remove `req.ua`: [#37512](https://togithub.com/vercel/next.js/issues/37512)
- \[middleware] support destructuring for env vars in static analysis: [#37556](https://togithub.com/vercel/next.js/issues/37556)
- Fix react root env missing in NextServer: [#37562](https://togithub.com/vercel/next.js/issues/37562)
- Fix client entry unexpectedly created in app dir: [#37561](https://togithub.com/vercel/next.js/issues/37561)
- Ensure check-precompiled exits correctly on failure: [#37592](https://togithub.com/vercel/next.js/issues/37592)
- Revert "Revert "Avoid unnecessary router state changes"": [#37593](https://togithub.com/vercel/next.js/issues/37593)
- Update to process redirects/rewrites for \_next/data with middleware: [#37574](https://togithub.com/vercel/next.js/issues/37574)
- Bump [@vercel/nft](https://togithub.com/vercel/nft) 0.20.0: [#37602](https://togithub.com/vercel/next.js/issues/37602)
- Strip next internal queries for flight response: [#37617](https://togithub.com/vercel/next.js/issues/37617)
- chore: narrows regexp to enable middleware source maps: [#37582](https://togithub.com/vercel/next.js/issues/37582)
- feat(next export): add warning if using getInitialProps: [#37642](https://togithub.com/vercel/next.js/issues/37642)
- Update matched path params priority: [#37646](https://togithub.com/vercel/next.js/issues/37646)
- Re-introduce Edge API Endpoints: [#37481](https://togithub.com/vercel/next.js/issues/37481)
- Fix rewrite/dynamic interpolation E2E cases: [#37669](https://togithub.com/vercel/next.js/issues/37669)
- Fix Image Optimization cache-control regression with external images: [#37625](https://togithub.com/vercel/next.js/issues/37625)
- Adds consistency to ESLint rules.: [#34335](https://togithub.com/vercel/next.js/issues/34335)
- Ensure custom middleware matcher is used correctly in client manifest: [#37672](https://togithub.com/vercel/next.js/issues/37672)
- Optimize middleware regex handling: [#37688](https://togithub.com/vercel/next.js/issues/37688)
- Revert "Revert "Revert "Avoid unnecessary router state changes""": [#37692](https://togithub.com/vercel/next.js/issues/37692)
- Add test combining middleware & config rewrites: [#37667](https://togithub.com/vercel/next.js/issues/37667)
- fix(ts): expose `DynamicOptionsLoadingProps` type: [#37700](https://togithub.com/vercel/next.js/issues/37700)
- Improve Middleware errors: [#37695](https://togithub.com/vercel/next.js/issues/37695)
- Ensure navigating with middleware parses route params correctly: [#37704](https://togithub.com/vercel/next.js/issues/37704)
- Fix shallow routing with rewrites/middleware: [#37716](https://togithub.com/vercel/next.js/issues/37716)
- chore: bump react dev dep to 18.2: [#37697](https://togithub.com/vercel/next.js/issues/37697)
- Ensure rewrite query params with middleware are available in router: [#37724](https://togithub.com/vercel/next.js/issues/37724)
- Update pre-compiled: [#37729](https://togithub.com/vercel/next.js/issues/37729)
- fix(eslint): allow in conjunction with
Configuration
📅 Schedule: Branch creation - "on saturday" (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
[ ] If you want to rebase/retry this PR, click this checkbox.
This PR has been generated by Mend Renovate. View repository job log here.
This PR contains the following updates:
12.1.6
->12.2.2
Release Notes
vercel/next.js
### [`v12.2.2`](https://togithub.com/vercel/next.js/releases/tag/v12.2.2) [Compare Source](https://togithub.com/vercel/next.js/compare/v12.2.1...v12.2.2) ##### Core Changes - Update README.md: [#38371](https://togithub.com/vercel/next.js/issues/38371) - Add support for catchall with new router: [#38439](https://togithub.com/vercel/next.js/issues/38439) - Fix client entry point prefix: [#38445](https://togithub.com/vercel/next.js/issues/38445) - Add support for optional catchall with new router: [#38444](https://togithub.com/vercel/next.js/issues/38444) - Add handling for back/forward (popstate) between old and new router: [#38453](https://togithub.com/vercel/next.js/issues/38453) - Make catchall parameters consistent with existing router: [#38456](https://togithub.com/vercel/next.js/issues/38456) - Fix warning `next/future/image` semicolon: [#38454](https://togithub.com/vercel/next.js/issues/38454) - fix(next/build): disable next-swc crash reporting temporarily: [#38472](https://togithub.com/vercel/next.js/issues/38472) ##### Documentation Changes - Update building-form sample code: [#38437](https://togithub.com/vercel/next.js/issues/38437) - Update i18n routing example with Middleware.: [#38419](https://togithub.com/vercel/next.js/issues/38419) - Adds mention of INP to "Measuring Performance" page: [#38464](https://togithub.com/vercel/next.js/issues/38464) ##### Example Changes - Replace JS `blog-starter` example with TS, deprecate `blog-starter-typescript` example: [#38395](https://togithub.com/vercel/next.js/issues/38395) - Convert `api-routes-rate-limit` example to TypeScript: [#38393](https://togithub.com/vercel/next.js/issues/38393) - examples(with-jotai): Update example: [#38398](https://togithub.com/vercel/next.js/issues/38398) - fix(examples/with-playwritght): use PORT env variable and fall back to 3000: [#38107](https://togithub.com/vercel/next.js/issues/38107) - docs: add trpc to examples: [#38272](https://togithub.com/vercel/next.js/issues/38272) - Convert `api-routes-rest` example to TypeScript: [#38394](https://togithub.com/vercel/next.js/issues/38394) - chore(examples): Convert `api-routes-graphql` example to TypeScript: [#38357](https://togithub.com/vercel/next.js/issues/38357) ##### Credits Huge thanks to [@mongolyy](https://togithub.com/mongolyy), [@balazsorban44](https://togithub.com/balazsorban44), [@maxproske](https://togithub.com/maxproske), [@leerob](https://togithub.com/leerob), [@huozhi](https://togithub.com/huozhi), [@Thisen](https://togithub.com/Thisen), [@thebergamo](https://togithub.com/thebergamo), [@zorrolisto](https://togithub.com/zorrolisto), [@styfle](https://togithub.com/styfle), [@housseindjirdeh](https://togithub.com/housseindjirdeh), and [@kwonoj](https://togithub.com/kwonoj) for helping! ### [`v12.2.1`](https://togithub.com/vercel/next.js/releases/tag/v12.2.1) [Compare Source](https://togithub.com/vercel/next.js/compare/v12.2.0...v12.2.1) ##### Core Changes - Remove unused `layoutRaw` config: [#38120](https://togithub.com/vercel/next.js/issues/38120) - Fix invalid config warning for runtime config: [#38122](https://togithub.com/vercel/next.js/issues/38122) - fix(next/config): update default config for the experimental: [#38123](https://togithub.com/vercel/next.js/issues/38123) - feat(next/swc): setup native next-swc crash reporter: [#38076](https://togithub.com/vercel/next.js/issues/38076) - Fix unnecessary flight render passes: [#38133](https://togithub.com/vercel/next.js/issues/38133) - Readds missing `@next/next/no-assign-module-variable` ESLint rule.: [#38134](https://togithub.com/vercel/next.js/issues/38134) - Fix failing to set initial ISR cache item in new folder: [#38136](https://togithub.com/vercel/next.js/issues/38136) - Add default experimental values: [#38135](https://togithub.com/vercel/next.js/issues/38135) - Fix error when `next/future/image` is missing width or height: [#38132](https://togithub.com/vercel/next.js/issues/38132) - docs(readme.md): remove broken 404 links: [#38104](https://togithub.com/vercel/next.js/issues/38104) - fix([#38106](https://togithub.com/vercel/next.js/issues/38106)): use swc client config to pre-compile shared lib: [#38137](https://togithub.com/vercel/next.js/issues/38137) - Fix chunk path resolution: [#38162](https://togithub.com/vercel/next.js/issues/38162) - Revert "feat(next/swc): setup native next-swc crash reporter": [#38170](https://togithub.com/vercel/next.js/issues/38170) - fix(next/swc): set cache dir explicitly: [#38175](https://togithub.com/vercel/next.js/issues/38175) - Ensure [@swc/helpers](https://togithub.com/swc/helpers) do not rely on hoisting: [#38174](https://togithub.com/vercel/next.js/issues/38174) - Migrate rsc tests to app dir tests: [#38158](https://togithub.com/vercel/next.js/issues/38158) - Check for performance.getEntriesByName before calling: [#38186](https://togithub.com/vercel/next.js/issues/38186) - Adds tests to ensure `eslint-plugin-next`'s available rules are properly exported and recommended rules are correctly defined.: [#38183](https://togithub.com/vercel/next.js/issues/38183) - Fix pageProps is missing when route changes: [#38178](https://togithub.com/vercel/next.js/issues/38178) - feat(next/build): send next-swc plugins telemetry: [#38116](https://togithub.com/vercel/next.js/issues/38116) - Ensure page.server.js matches correctly: [#38236](https://togithub.com/vercel/next.js/issues/38236) - Alias react and react-dom by default: [#38245](https://togithub.com/vercel/next.js/issues/38245) - Fix: convert head instances to array: [#38252](https://togithub.com/vercel/next.js/issues/38252) - \[edge] Make runtime addressable in compile time: [#38288](https://togithub.com/vercel/next.js/issues/38288) - Ensure trailing slash is handled correctly with middleware: [#38282](https://togithub.com/vercel/next.js/issues/38282) - Fix CSS modules imported from client components in app dir: [#38310](https://togithub.com/vercel/next.js/issues/38310) - \[edge] favor browser exports for edge compiler: [#38319](https://togithub.com/vercel/next.js/issues/38319) - Fix CSS modules imported from client components in app dir with next build: [#38329](https://togithub.com/vercel/next.js/issues/38329) - Honor NEXT_MANUAL_SIG_HANDLE flag in standalone mode: [#38346](https://togithub.com/vercel/next.js/issues/38346) - Display stack trace when error occurs in API route: [#38289](https://togithub.com/vercel/next.js/issues/38289) - Handle Client Rewrites Correctly: [#38340](https://togithub.com/vercel/next.js/issues/38340) - Fix global CSS file imports: [#38339](https://togithub.com/vercel/next.js/issues/38339) - \[build] validate the exported config values: [#38370](https://togithub.com/vercel/next.js/issues/38370) - Correctly check if width is lte 0 in Image Optimization API: [#38226](https://togithub.com/vercel/next.js/issues/38226) - chore: shorten image blur svg placholder: [#38157](https://togithub.com/vercel/next.js/issues/38157) - Enable swc minifier in create next apps: [#38215](https://togithub.com/vercel/next.js/issues/38215) - Filter proper chunks from chunk group for client components: [#38379](https://togithub.com/vercel/next.js/issues/38379) - \[edge] enable edge compiler source maps by default: [#38365](https://togithub.com/vercel/next.js/issues/38365) - Call Error.getInitialProps for the top level error: [#21240](https://togithub.com/vercel/next.js/issues/21240) - feat: build edge functions with node.js modules and fail at runtime: [#38234](https://togithub.com/vercel/next.js/issues/38234) - Implement new client-side router: [#37551](https://togithub.com/vercel/next.js/issues/37551) - Add param names into the tree: [#38415](https://togithub.com/vercel/next.js/issues/38415) - feat(next/swc): setup native next-swc crash reporter with platform supports: [#38221](https://togithub.com/vercel/next.js/issues/38221) - Ensure server components entries are not part of the pages buildmanifest: [#38416](https://togithub.com/vercel/next.js/issues/38416) - Add app-path-routes manifest: [#38420](https://togithub.com/vercel/next.js/issues/38420) ##### Documentation Changes - Middleware docs update: [#38111](https://togithub.com/vercel/next.js/issues/38111) - Update middleware upgrade guide w/ more rationale: [#38074](https://togithub.com/vercel/next.js/issues/38074) - Update `next/future/image` docs to mention the difference with `next/image`: [#38108](https://togithub.com/vercel/next.js/issues/38108) - Clarify router.query initial value during prerendering: [#38093](https://togithub.com/vercel/next.js/issues/38093) - Remove `lazyRoot` example from `next/future/image` doc: [#38140](https://togithub.com/vercel/next.js/issues/38140) - Add a Makeswift example: [#38018](https://togithub.com/vercel/next.js/issues/38018) - docs: remove eslint config link: [#38206](https://togithub.com/vercel/next.js/issues/38206) - fix: middleware-upgrade-guide.md: [#38246](https://togithub.com/vercel/next.js/issues/38246) - Typo in NextResponse docs: [#38259](https://togithub.com/vercel/next.js/issues/38259) - Update `next/future/image` docs to specify supported browser versions.: [#38307](https://togithub.com/vercel/next.js/issues/38307) - Update get-static-props.md: [#38287](https://togithub.com/vercel/next.js/issues/38287) - Clarification for Testing Environment Variables: [#38359](https://togithub.com/vercel/next.js/issues/38359) - Fix typo in SWC plugin destructuring example: [#38367](https://togithub.com/vercel/next.js/issues/38367) - Fix/update docs for swc styled components: [#38280](https://togithub.com/vercel/next.js/issues/38280) - Update edge-runtime.md: [#38271](https://togithub.com/vercel/next.js/issues/38271) - Add note about casing to getStaticPaths docs: [#38426](https://togithub.com/vercel/next.js/issues/38426) ##### Example Changes - Adding with-ably example for realtime messaging in next apps: [#37319](https://togithub.com/vercel/next.js/issues/37319) - Convert auth0 example to TypeScript: [#38087](https://togithub.com/vercel/next.js/issues/38087) - Convert basic-export example to TypeScript: [#38092](https://togithub.com/vercel/next.js/issues/38092) - Convert basic-css example to TypeScript: [#38091](https://togithub.com/vercel/next.js/issues/38091) - Add Convex example: [#38129](https://togithub.com/vercel/next.js/issues/38129) - Convert catch-all-routes example to TypeScript: [#38188](https://togithub.com/vercel/next.js/issues/38188) - feat(examples): link to turbo next.js examples: [#38173](https://togithub.com/vercel/next.js/issues/38173) - feat(examples): adds middleware example: [#38240](https://togithub.com/vercel/next.js/issues/38240) - fix(examples): fix link on middleware example: [#38323](https://togithub.com/vercel/next.js/issues/38323) - Update analysis scripts: [#38201](https://togithub.com/vercel/next.js/issues/38201) - chore(examples): fix experiments loading npm wasm: [#38348](https://togithub.com/vercel/next.js/issues/38348) - chore(examples): Convert `api-routes-cors` example to TypeScript: [#38356](https://togithub.com/vercel/next.js/issues/38356) - chore(examples): Convert `api-routes-middleware` example to TypeScript: [#38358](https://togithub.com/vercel/next.js/issues/38358) - Remove CharkraProvicer RestCSS prop: [#38199](https://togithub.com/vercel/next.js/issues/38199) - Add example: with-apivideo-upload: [#36050](https://togithub.com/vercel/next.js/issues/36050) - Updates with-supertokens example: [#38369](https://togithub.com/vercel/next.js/issues/38369) - fix: update with-msw example to function properly for all use cases: [#38050](https://togithub.com/vercel/next.js/issues/38050) - chore(examples): Convert `blog` example to TypeScript: [#38095](https://togithub.com/vercel/next.js/issues/38095) ##### Misc Changes - Add more code ownership paths for padmaia: [#38121](https://togithub.com/vercel/next.js/issues/38121) - Fix create-next-app tests from changed example: [#38154](https://togithub.com/vercel/next.js/issues/38154) - Fix missing trace script devDependencies: [#38172](https://togithub.com/vercel/next.js/issues/38172) - chore: don't use `type: "module"` when building the Issue validator action: [#38197](https://togithub.com/vercel/next.js/issues/38197) - fix: declare NextBundleAnalyzer as a type: [#38168](https://togithub.com/vercel/next.js/issues/38168) - Replace placeholder.com images with \*.vercel.app in image-component tests: [#38090](https://togithub.com/vercel/next.js/issues/38090) - chore: point to `/dist` for local action - chore: fix issue validator paths - Update some flaking tests for edge compiler and rsc: [#38344](https://togithub.com/vercel/next.js/issues/38344) - chore: remove workspace from `package.json` since we have \`pnpm-works…: [#38166](https://togithub.com/vercel/next.js/issues/38166) - Revert "chore: remove workspace from `package.json` since we have \`pnpm-works…": [#38376](https://togithub.com/vercel/next.js/issues/38376) - Replace pre-commit with husky: [#38350](https://togithub.com/vercel/next.js/issues/38350) - Add more CSS imports test cases: [#38343](https://togithub.com/vercel/next.js/issues/38343) ##### Credits Huge thanks to [@ethomson](https://togithub.com/ethomson), [@styfle](https://togithub.com/styfle), [@padmaia](https://togithub.com/padmaia), [@kwonoj](https://togithub.com/kwonoj), [@shuding](https://togithub.com/shuding), [@ijjk](https://togithub.com/ijjk), [@manovotny](https://togithub.com/manovotny), [@thisisjofrank](https://togithub.com/thisisjofrank), [@maxproske](https://togithub.com/maxproske), [@dominiksipowicz](https://togithub.com/dominiksipowicz), [@awareness481](https://togithub.com/awareness481), [@pakaponk](https://togithub.com/pakaponk), [@SukkaW](https://togithub.com/SukkaW), [@apledger](https://togithub.com/apledger), [@wyattjoh](https://togithub.com/wyattjoh), [@huozhi](https://togithub.com/huozhi), [@thomasballinger](https://togithub.com/thomasballinger), [@balazsorban44](https://togithub.com/balazsorban44), [@longzheng](https://togithub.com/longzheng), [@tknickman](https://togithub.com/tknickman), [@rbrcsk](https://togithub.com/rbrcsk), [@emersonlaurentino](https://togithub.com/emersonlaurentino), [@carstenlebek](https://togithub.com/carstenlebek), [@edusig](https://togithub.com/edusig), [@Schniz](https://togithub.com/Schniz), [@riccardogiorato](https://togithub.com/riccardogiorato), [@leerob](https://togithub.com/leerob), [@valcosmos](https://togithub.com/valcosmos), [@hanneslund](https://togithub.com/hanneslund), [@ryanhaticus](https://togithub.com/ryanhaticus), [@j-mendez](https://togithub.com/j-mendez), [@armandabric](https://togithub.com/armandabric), [@WinmezzZ](https://togithub.com/WinmezzZ), [@andershagbard](https://togithub.com/andershagbard), [@dammy001](https://togithub.com/dammy001), [@MarDi66](https://togithub.com/MarDi66), [@stefanprobst](https://togithub.com/stefanprobst), [@okmttdhr](https://togithub.com/okmttdhr), [@rishabhpoddar](https://togithub.com/rishabhpoddar), [@marjorg](https://togithub.com/marjorg), [@dustinsgoodman](https://togithub.com/dustinsgoodman), [@zanechua](https://togithub.com/zanechua), [@feugy](https://togithub.com/feugy), and [@timneutkens](https://togithub.com/timneutkens) for helping! ### [`v12.2.0`](https://togithub.com/vercel/next.js/releases/tag/v12.2.0) [Compare Source](https://togithub.com/vercel/next.js/compare/v12.1.6...v12.2.0) ##### Core Changes - Flush initial styled-jsx in gIP first in concurrent rendering: [#36594](https://togithub.com/vercel/next.js/issues/36594) - Add falling back to wasm swc build on native load failure: [#36612](https://togithub.com/vercel/next.js/issues/36612) - feat(next-swc): introduce experimental tracing support for swc: [#35803](https://togithub.com/vercel/next.js/issues/35803) - Add initial handling for routing tests: [#36635](https://togithub.com/vercel/next.js/issues/36635) - Fix asPath handling for data route revalidation in minimal mode: [#36660](https://togithub.com/vercel/next.js/issues/36660) - fix: react root enabled properly in custom server: [#36664](https://togithub.com/vercel/next.js/issues/36664) - Route Loader Trusted Types Violation Fix: [#34730](https://togithub.com/vercel/next.js/issues/34730) - Update components in GitHub Actions: [#36669](https://togithub.com/vercel/next.js/issues/36669) - Fix various Trusted Types violations without use of policy: [#34726](https://togithub.com/vercel/next.js/issues/34726) - Add experimental wildcard `remotePatterns` config for upstream images: [#36245](https://togithub.com/vercel/next.js/issues/36245) - Tweak routing tests: [#36667](https://togithub.com/vercel/next.js/issues/36667) - Update renderOpts.dev handling and fix check: [#36666](https://togithub.com/vercel/next.js/issues/36666) - fix: duplicate app server: [#36710](https://togithub.com/vercel/next.js/issues/36710) - Add route loader: [#36712](https://togithub.com/vercel/next.js/issues/36712) - Fix leftover todo in loader: [#36734](https://togithub.com/vercel/next.js/issues/36734) - Leverage pageExtensions for resolving in loader: [#36747](https://togithub.com/vercel/next.js/issues/36747) - Use react dom server node api to detect react root is enabled: [#36749](https://togithub.com/vercel/next.js/issues/36749) - replace use-subscription with use-sync-external-store: [#36733](https://togithub.com/vercel/next.js/issues/36733) - Add flight render starting point: [#36760](https://togithub.com/vercel/next.js/issues/36760) - feat: better cookies API for Edge Functions: [#36478](https://togithub.com/vercel/next.js/issues/36478) - Clarify variables being used during rendering: [#36773](https://togithub.com/vercel/next.js/issues/36773) - Update x-nextjs-cache header in minimal mode: [#36791](https://togithub.com/vercel/next.js/issues/36791) - Add experimental flag to force SWC transforms: [#36789](https://togithub.com/vercel/next.js/issues/36789) - Update root component handling: [#36781](https://togithub.com/vercel/next.js/issues/36781) - Add final newline to package-lock.json: [#36813](https://togithub.com/vercel/next.js/issues/36813) - Move FlightManifestPlugin to server compilers: [#36810](https://togithub.com/vercel/next.js/issues/36810) - Update moduleNameMapper jest config and remove extra deps: [#36787](https://togithub.com/vercel/next.js/issues/36787) - Wait for shell resolve with gIP is customized in react 18: [#36792](https://togithub.com/vercel/next.js/issues/36792) - Build x86\_64-freebsd SWC binary: [#36826](https://togithub.com/vercel/next.js/issues/36826) - Don't convert error to string: [#36804](https://togithub.com/vercel/next.js/issues/36804) - fix([#36534](https://togithub.com/vercel/next.js/issues/36534)): enable interopClientDefaultExport for next/jest: [#36824](https://togithub.com/vercel/next.js/issues/36824) - fix([#30300](https://togithub.com/vercel/next.js/issues/30300)): force export 404.html: [#36827](https://togithub.com/vercel/next.js/issues/36827) - Telemetry: track usage of 'experimental/nextScriptWorkers': [#36812](https://togithub.com/vercel/next.js/issues/36812) - Eagerly load swc bindings for wasm fallback for jest: [#36784](https://togithub.com/vercel/next.js/issues/36784) - Add experimental config for basePath testing: [#36843](https://togithub.com/vercel/next.js/issues/36843) - Enable html post optimization for react 18: [#36837](https://togithub.com/vercel/next.js/issues/36837) - Update client router for tests: [#36822](https://togithub.com/vercel/next.js/issues/36822) - Fix return type of middleware `req.cookies.get()`: [#36872](https://togithub.com/vercel/next.js/issues/36872) - Make esm default interpolation work with jest mock: [#36877](https://togithub.com/vercel/next.js/issues/36877) - Decouple entries for server components and client components: [#36860](https://togithub.com/vercel/next.js/issues/36860) - fix([#36855](https://togithub.com/vercel/next.js/issues/36855)/[#30300](https://togithub.com/vercel/next.js/issues/30300)): export 404.html correctly: [#36910](https://togithub.com/vercel/next.js/issues/36910) - Drop the unstable web vital hook and remove exports of flush effects: [#36912](https://togithub.com/vercel/next.js/issues/36912) - Update swc: [#36745](https://togithub.com/vercel/next.js/issues/36745) - Add additional layer for server components case: [#36921](https://togithub.com/vercel/next.js/issues/36921) - Support graceful shutdowns: [#36909](https://togithub.com/vercel/next.js/issues/36909) - Update [@types/node-fetch](https://togithub.com/types/node-fetch) to latest: [#36953](https://togithub.com/vercel/next.js/issues/36953) - Fix SWC dynamic transform with suspense but without ssr: [#36825](https://togithub.com/vercel/next.js/issues/36825) - fix([#36651](https://togithub.com/vercel/next.js/issues/36651)): disable reactRemoveProperties in jest transform: [#36922](https://togithub.com/vercel/next.js/issues/36922) - Update swc: [#36972](https://togithub.com/vercel/next.js/issues/36972) - Update lockfile patching for different versions: [#36959](https://togithub.com/vercel/next.js/issues/36959) - Add support for browserslist and legacyBrowsers experimental option: [#36584](https://togithub.com/vercel/next.js/issues/36584) - Remove optional chaining from eslint rule to support older node versions: [#36978](https://togithub.com/vercel/next.js/issues/36978) - escape flight response values: [#36989](https://togithub.com/vercel/next.js/issues/36989) - fix(middleware): false positive dynamic code detection at build time: [#36955](https://togithub.com/vercel/next.js/issues/36955) - Fix interopDefault on jest object-proxy: [#37002](https://togithub.com/vercel/next.js/issues/37002) - Simplify the logic for static flight response generation: [#36984](https://togithub.com/vercel/next.js/issues/36984) - Fixes `beforeInteractive` scripts failing in custom document: [#37000](https://togithub.com/vercel/next.js/issues/37000) - Change experimental `layout=raw` to use native img lazy loading: [#36985](https://togithub.com/vercel/next.js/issues/36985) - Don't add locale to client side redirects from data fetching: [#36944](https://togithub.com/vercel/next.js/issues/36944) - Edge Cookies: Add `.getWithOptions` method: [#36943](https://togithub.com/vercel/next.js/issues/36943) - Deprecate nested Middleware in favor of root middleware: [#36772](https://togithub.com/vercel/next.js/issues/36772) - Fix styled-jsx not working in client components in the edge runtime when SSR: [#37042](https://togithub.com/vercel/next.js/issues/37042) - Update to latest version of [@vercel/nft](https://togithub.com/vercel/nft): [#37041](https://togithub.com/vercel/next.js/issues/37041) - Fixes beforeInteractive inline scripts don't run: [#37033](https://togithub.com/vercel/next.js/issues/37033) - Update swc: [#37009](https://togithub.com/vercel/next.js/issues/37009) - feat(middleware)!: forbids middleware response body: [#36835](https://togithub.com/vercel/next.js/issues/36835) - Extract and refactor `getPageStaticInfo`: [#37062](https://togithub.com/vercel/next.js/issues/37062) - Keep custom app as non server component: [#37044](https://togithub.com/vercel/next.js/issues/37044) - Ensure hydration error doc link is shown with react 18: [#37074](https://togithub.com/vercel/next.js/issues/37074) - Stabilize SWC emotion transform plugin: [#37058](https://togithub.com/vercel/next.js/issues/37058) - DecodeError from invalid URI causes 500 with middleware (vs 400 without): [#36993](https://togithub.com/vercel/next.js/issues/36993) - feat: Opt-out Error page from dark scheme color: [#36951](https://togithub.com/vercel/next.js/issues/36951) - Properly await for this.hasPage() in base-server: [#37091](https://togithub.com/vercel/next.js/issues/37091) - Enable Trusted Types Compatibility in Webpack: [#36750](https://togithub.com/vercel/next.js/issues/36750) - Fix Trusted Types violations from dangerouslySetInnerHTML on style elements: [#36751](https://togithub.com/vercel/next.js/issues/36751) - Remove invalid attrs for head html element: [#36457](https://togithub.com/vercel/next.js/issues/36457) - Fix next/link can't jump to non-latin anchors: [#36430](https://togithub.com/vercel/next.js/issues/36430) - Fix: Cleaner error message when importing sass without it being installed in dev: [#35051](https://togithub.com/vercel/next.js/issues/35051) - fix([#33081](https://togithub.com/vercel/next.js/issues/33081)): handle relative path correctly: [#36823](https://togithub.com/vercel/next.js/issues/36823) - fix: place the charset meta tag at the top of the head: [#36561](https://togithub.com/vercel/next.js/issues/36561) - keep method when cloning Request, fixes [#36522](https://togithub.com/vercel/next.js/issues/36522): [#36539](https://togithub.com/vercel/next.js/issues/36539) - fix: Catch hash change errors, and emit a `routeChangeError` event: [#36828](https://togithub.com/vercel/next.js/issues/36828) - fix: should listen for config file changes when specifying the app directory: [#36570](https://togithub.com/vercel/next.js/issues/36570) - improve getStaticProps error message: [#34287](https://togithub.com/vercel/next.js/issues/34287) - next-swc: Improve error message for nested styled jsx tags: [#33805](https://togithub.com/vercel/next.js/issues/33805) - Add missing file in mini-css-extract-plugin: [#25691](https://togithub.com/vercel/next.js/issues/25691) - fix NextApiRequestCookies and NextApiRequestQuery types: [#25532](https://togithub.com/vercel/next.js/issues/25532) - Add eslint rule for not allowing styled-jsx in \_document.js: [#32678](https://togithub.com/vercel/next.js/issues/32678) - fix: Scroll restoration bug caused by `idx` reset to 0 on reload: [#36861](https://togithub.com/vercel/next.js/issues/36861) - Add JSX.Element to styles type in DocumentInitialProps: [#36392](https://togithub.com/vercel/next.js/issues/36392) - Fix Type to solve issue found in [#36008](https://togithub.com/vercel/next.js/issues/36008): [#36671](https://togithub.com/vercel/next.js/issues/36671) - Warn when building a TS project with composite: true and fallback to incremental: [#35270](https://togithub.com/vercel/next.js/issues/35270) - Support TS exactOptionalPropertyTypes (fixes [#35280](https://togithub.com/vercel/next.js/issues/35280)): [#35281](https://togithub.com/vercel/next.js/issues/35281) - feat(middleware): issues warnings when using node.js global APIs in middleware: [#36980](https://togithub.com/vercel/next.js/issues/36980) - perf: run type check and eslint in parallel: [#37105](https://togithub.com/vercel/next.js/issues/37105) - Remove process.cwd usage from path polyfill: [#37130](https://togithub.com/vercel/next.js/issues/37130) - Bump `@vercel/nft` to 0.19.1: [#37129](https://togithub.com/vercel/next.js/issues/37129) - Add libc field to swc packages: [#37131](https://togithub.com/vercel/next.js/issues/37131) - chore(devDeps): bump [@vercel/ncc](https://togithub.com/vercel/ncc) to 0.33.4: [#37113](https://togithub.com/vercel/next.js/issues/37113) - fix(typescript): worker execution failed with custom `next.config.js`: [#37125](https://togithub.com/vercel/next.js/issues/37125) - Update swc: [#37148](https://togithub.com/vercel/next.js/issues/37148) - Update swc: [#37149](https://togithub.com/vercel/next.js/issues/37149) - Fix client component hydration: [#37134](https://togithub.com/vercel/next.js/issues/37134) - Avoid anonymous function in next/link: [#37154](https://togithub.com/vercel/next.js/issues/37154) - should render the correct sizes passed when a noscript is rendered: [#37161](https://togithub.com/vercel/next.js/issues/37161) - Use customized chunk loading implementation: [#37163](https://togithub.com/vercel/next.js/issues/37163) - Rename app paths folder: [#37146](https://togithub.com/vercel/next.js/issues/37146) - Fix experimental `remotePatterns` wildcard: [#37137](https://togithub.com/vercel/next.js/issues/37137) - Split useServerResponse for initial responses: [#37209](https://togithub.com/vercel/next.js/issues/37209) - Refactor fetchFlight: [#37213](https://togithub.com/vercel/next.js/issues/37213) - build: import useSyncExternalStore from react when using react 18: [#37212](https://togithub.com/vercel/next.js/issues/37212) - feat(next/swc): support experimental swc plugins: [#36790](https://togithub.com/vercel/next.js/issues/36790) - Small code improvements: [#37227](https://togithub.com/vercel/next.js/issues/37227) - build(actions): skip plugin features for non supported platform: [#37229](https://togithub.com/vercel/next.js/issues/37229) - Use deterministic module IDs in the client bundle: [#37249](https://togithub.com/vercel/next.js/issues/37249) - Execute middleware on Next.js internal requests: [#37121](https://togithub.com/vercel/next.js/issues/37121) - Preload chunks for next/dynamic in suspense mode: [#37245](https://togithub.com/vercel/next.js/issues/37245) - Refactor incremental cache to be extensible: [#37258](https://togithub.com/vercel/next.js/issues/37258) - Ignore popstate with invalid state: [#37110](https://togithub.com/vercel/next.js/issues/37110) - Show warning during build if page is returning a large amount of data: [#37264](https://togithub.com/vercel/next.js/issues/37264) - Add `swcMinifyDebugOptions`: [#37172](https://togithub.com/vercel/next.js/issues/37172) - Update to leverage pnpm for monorepo: [#37259](https://togithub.com/vercel/next.js/issues/37259) - Refactor client component out of client runtime: [#37238](https://togithub.com/vercel/next.js/issues/37238) - Update to not trigger revalidation during prefetch: [#37201](https://togithub.com/vercel/next.js/issues/37201) - Upgrade amp optimizer to v2.8.3: [#27106](https://togithub.com/vercel/next.js/issues/27106) - Use Edge Runtime for running Edge Functions locally: [#37024](https://togithub.com/vercel/next.js/issues/37024) - fix: do not pass `legacyBehaviour` to `a` as prop: [#37306](https://togithub.com/vercel/next.js/issues/37306) - Add router replace to experiment: [#37312](https://togithub.com/vercel/next.js/issues/37312) - Extract router utils to common functions: [#37313](https://togithub.com/vercel/next.js/issues/37313) - Include router context as rsc shared dep: [#37320](https://togithub.com/vercel/next.js/issues/37320) - Update to leverage turbo for build/prepublish: [#37280](https://togithub.com/vercel/next.js/issues/37280) - Update of [@babel/core](https://togithub.com/babel/core): [#37145](https://togithub.com/vercel/next.js/issues/37145) - Migrate prerender lru cache into fs cache handler: [#37326](https://togithub.com/vercel/next.js/issues/37326) - support `runtime: edge` in api endpoints: [#36947](https://togithub.com/vercel/next.js/issues/36947) - Revert "support `runtime: edge` in api endpoints": [#37337](https://togithub.com/vercel/next.js/issues/37337) - Ensure type check/link worker does not retry: [#37324](https://togithub.com/vercel/next.js/issues/37324) - Revert "Revert "support `runtime: edge` in api endpoints"": [#37344](https://togithub.com/vercel/next.js/issues/37344) - Revert Edge API endpoints: [#37350](https://togithub.com/vercel/next.js/issues/37350) - Handle link with back/forward navigation: [#37332](https://togithub.com/vercel/next.js/issues/37332) - Edge Functions: deprecate access to `request.page`: [#37349](https://togithub.com/vercel/next.js/issues/37349) - Fix bloat in main bundle from amp: [#37383](https://togithub.com/vercel/next.js/issues/37383) - Add Suspense boundary to demo: [#37393](https://togithub.com/vercel/next.js/issues/37393) - update webpack and watchpack: [#37397](https://togithub.com/vercel/next.js/issues/37397) - Fix next dev not working for server components in app: [#37403](https://togithub.com/vercel/next.js/issues/37403) - Use the new moduleMap option in the flight client during SSR: [#37406](https://togithub.com/vercel/next.js/issues/37406) - Remove unused id rsc cache cleaning and avoid rsc refresh existed in client chunk: [#37404](https://togithub.com/vercel/next.js/issues/37404) - Allow Middleware to set its matcher: [#37177](https://togithub.com/vercel/next.js/issues/37177) - Skip loading unused plugins in `next dev`: [#37430](https://togithub.com/vercel/next.js/issues/37430) - Fix `next/image` using `layout=raw` with `priority`: [#37381](https://togithub.com/vercel/next.js/issues/37381) - Fix document head with react 18: [#37443](https://togithub.com/vercel/next.js/issues/37443) - Set `swcMinify` as an attribute on `terser-webpack-plugin-optimize` span: [#37416](https://togithub.com/vercel/next.js/issues/37416) - Allowing hiding the ReactDevOverlay: [#37417](https://togithub.com/vercel/next.js/issues/37417) - Ensure ENOENT error is not ignored when loading pages: [#37486](https://togithub.com/vercel/next.js/issues/37486) - Upgrade node-html-parser: [#37449](https://togithub.com/vercel/next.js/issues/37449) - Fix invalid middleware regexp in manifest: [#37492](https://togithub.com/vercel/next.js/issues/37492) - Avoid unnecessary router state changes: [#37431](https://togithub.com/vercel/next.js/issues/37431) - Enable externalHelpers swc option: [#37150](https://togithub.com/vercel/next.js/issues/37150) - Add check for duplicate locales: [#37485](https://togithub.com/vercel/next.js/issues/37485) - add method to measure Interaction to Next Paint (INP): [#36490](https://togithub.com/vercel/next.js/issues/36490) - chore: remove unused variable: [#37538](https://togithub.com/vercel/next.js/issues/37538) - Update to latest version of [@swc/helpers](https://togithub.com/swc/helpers): [#37531](https://togithub.com/vercel/next.js/issues/37531) - \[middleware] Support any `method` when fetching a `Request` instance: [#37540](https://togithub.com/vercel/next.js/issues/37540) - Migrate head side effects to hooks: [#37526](https://togithub.com/vercel/next.js/issues/37526) - chore: remove unused safari nomodule fix: [#37541](https://togithub.com/vercel/next.js/issues/37541) - fix([#37106](https://togithub.com/vercel/next.js/issues/37106)): middleware can not be loaded from src folder: [#37428](https://togithub.com/vercel/next.js/issues/37428) - Remove Middleware Preflight: [#37490](https://togithub.com/vercel/next.js/issues/37490) - fix(eslint): false positive for legit next/server imports: [#37515](https://togithub.com/vercel/next.js/issues/37515) - chore: reworks nested middleware error message: [#37513](https://togithub.com/vercel/next.js/issues/37513) - Revert "Avoid unnecessary router state changes": [#37572](https://togithub.com/vercel/next.js/issues/37572) - Middleware: remove `req.ua`: [#37512](https://togithub.com/vercel/next.js/issues/37512) - \[middleware] support destructuring for env vars in static analysis: [#37556](https://togithub.com/vercel/next.js/issues/37556) - Fix react root env missing in NextServer: [#37562](https://togithub.com/vercel/next.js/issues/37562) - Fix client entry unexpectedly created in app dir: [#37561](https://togithub.com/vercel/next.js/issues/37561) - Ensure check-precompiled exits correctly on failure: [#37592](https://togithub.com/vercel/next.js/issues/37592) - Revert "Revert "Avoid unnecessary router state changes"": [#37593](https://togithub.com/vercel/next.js/issues/37593) - Update to process redirects/rewrites for \_next/data with middleware: [#37574](https://togithub.com/vercel/next.js/issues/37574) - Bump [@vercel/nft](https://togithub.com/vercel/nft) 0.20.0: [#37602](https://togithub.com/vercel/next.js/issues/37602) - Strip next internal queries for flight response: [#37617](https://togithub.com/vercel/next.js/issues/37617) - chore: narrows regexp to enable middleware source maps: [#37582](https://togithub.com/vercel/next.js/issues/37582) - feat(next export): add warning if using getInitialProps: [#37642](https://togithub.com/vercel/next.js/issues/37642) - Update matched path params priority: [#37646](https://togithub.com/vercel/next.js/issues/37646) - Re-introduce Edge API Endpoints: [#37481](https://togithub.com/vercel/next.js/issues/37481) - Fix rewrite/dynamic interpolation E2E cases: [#37669](https://togithub.com/vercel/next.js/issues/37669) - Fix Image Optimization cache-control regression with external images: [#37625](https://togithub.com/vercel/next.js/issues/37625) - Adds consistency to ESLint rules.: [#34335](https://togithub.com/vercel/next.js/issues/34335) - Ensure custom middleware matcher is used correctly in client manifest: [#37672](https://togithub.com/vercel/next.js/issues/37672) - Optimize middleware regex handling: [#37688](https://togithub.com/vercel/next.js/issues/37688) - Revert "Revert "Revert "Avoid unnecessary router state changes""": [#37692](https://togithub.com/vercel/next.js/issues/37692) - Add test combining middleware & config rewrites: [#37667](https://togithub.com/vercel/next.js/issues/37667) - fix(ts): expose `DynamicOptionsLoadingProps` type: [#37700](https://togithub.com/vercel/next.js/issues/37700) - Improve Middleware errors: [#37695](https://togithub.com/vercel/next.js/issues/37695) - Ensure navigating with middleware parses route params correctly: [#37704](https://togithub.com/vercel/next.js/issues/37704) - Fix shallow routing with rewrites/middleware: [#37716](https://togithub.com/vercel/next.js/issues/37716) - chore: bump react dev dep to 18.2: [#37697](https://togithub.com/vercel/next.js/issues/37697) - Ensure rewrite query params with middleware are available in router: [#37724](https://togithub.com/vercel/next.js/issues/37724) - Update pre-compiled: [#37729](https://togithub.com/vercel/next.js/issues/37729) - fix(eslint): allow in conjunction withConfiguration
📅 Schedule: Branch creation - "on saturday" (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR becomes conflicted, 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 Mend Renovate. View repository job log here.