Core Changes
- Extract and refactor
getPageStaticInfo
: #37062 - Keep custom app as non server component: #37044
- Ensure hydration error doc link is shown with react 18: #37074
- Stabilize SWC emotion transform plugin: #37058
- DecodeError from invalid URI causes 500 with middleware (vs 400 without): #36993
- feat: Opt-out Error page from dark scheme color: #36951
- Properly await for this.hasPage() in base-server: #37091
- Enable Trusted Types Compatibility in Webpack: #36750
- Fix Trusted Types violations from dangerouslySetInnerHTML on style elements: #36751
- Remove invalid attrs for head html element: #36457
- Fix next/link can't jump to non-latin anchors: #36430
- Fix: Cleaner error message when importing sass without it being installed in dev: #35051
- fix(#33081): handle relative path correctly: #36823
- fix: place the charset meta tag at the top of the head: #36561
- keep method when cloning Request, fixes #36522: #36539
- fix: Catch hash change errors, and emit a
routeChangeError
event: #36828 - fix: should listen for config file changes when specifying the app directory: #36570
- improve getStaticProps error message: #34287
- next-swc: Improve error message for nested styled jsx tags: #33805
- Add missing file in mini-css-extract-plugin: #25691
- fix NextApiRequestCookies and NextApiRequestQuery types: #25532
- Add eslint rule for not allowing styled-jsx in _document.js: #32678
- fix: Scroll restoration bug caused by
idx
reset to 0 on reload: #36861 - Add JSX.Element to styles type in DocumentInitialProps: #36392
- Fix Type to solve issue found in #36008: #36671
- Warn when building a TS project with composite: true and fallback to incremental: #35270
- Support TS exactOptionalPropertyTypes (fixes #35280): #35281
- feat(middleware): issues warnings when using node.js global APIs in middleware: #36980
- perf: run type check and eslint in parallel: #37105
Documentation Changes
- Add note clarifying pnpm args handling: #37049
- typo: Change yarn into pnpm: #37092
- Include router.asPath caveats in docs: #36876
- docs: clarify environment variables behavior: #36620
- docs: Add pageExtensions usage note in API Routes: #35918
- Add docs about locale: #33401
- Clarify conditions under which process.env expressions are inlined: #33212
- Update testing.md: #29954
- Add section for jetbrains webstorm debugging: #24556
Example Changes
- custom-server-express fix type definition and eliminate dead code: #37054
- fix(examples/with-segment-analytics): Update README: #35387
- fix(with-tailwindcss-emotion): 'theme' of undefined: #35588
- update zustand example: #35022
- example: Added with-contentlayer example: #30045
- docs: svg as component example leveraging swc instead of babeljs: #36410
- Fix gh-pages example for windows user: #35169
- Use apollo onError in with-apollo example: #25051
- [EXAMPLES] fix apollo client cache hydration: #27799
- docs(with-sentry): Add note regarding replacing wizardcopy.js config files: #37039
Misc Changes
- Update a couple flakey tests: #37071
- Fixed anotation param name: #37075
- Enable E2E deploy tests on publish: #37019
- Merge multiple log statements: #35310
- Add typedef for next-bundle-analyzer: #35075
- next-bundle-analyzer: openAnalyzer option: #36493
- chore: add test for in-fragment HEAD reflection: #35320
- Add tests for getStaticProps and getServerSideProps: #37014
Credits
Huge thanks to @ijjk, @javivelasco, @huozhi, @goncharov-vlad, @Brooooooklyn, @NaveenDA, @Firfi, @idkwhojamesis, @FLCN-16, @icyJoseph, @ElijahPepe, @jgoping, @elskwid, @irvile, @Munawwar, @ykolbin, @hulufei, @baruchadi, @imadatyatalah, @SukkaW, @balazsorban44, @await-ovo, @menosprezzi, @gazs, @Exortions, @rubens-lopes, @woochul2, @stefee, @stmtk1, @jlarmstrongiv, @hanneslund, @MaedahBatool, @jameshfisher, @fabienheureux, @TxHawks, @mattbrandlysonos, @iggyzap, @src200, @AkifumiSato, @hermanskurichin, @kamilogorek, @ben-xD, @dawsonbooth, @Josehower, @crutchcorn, @ericmatthys, @CharlesStover, and @feugy for helping!