v10.0.0
Core Changes
- Add handling for domain to locale mapping: #17771
- Make sure locale detecting is case-insensitive: #17757
- Fix a couple i18n cases: #17805
- Font optimization for webpack 5: #17450
- Allow pages to be async modules to enable top-level-await: #17590
- Update redirect handling for locale domains: #17856
- Image component foundation: #17343
- chore(collect-plugins.ts): removes duplicated entries: #17441
- Resolve to real path before checking for path inequality: #17279
- Handle preferring default locale over accept-lang preferred locale: #17883
- Add locale prop for transitioning locales client side: #17898
- Make sure that params are properly passed to hybrid amp pages: #17461
- Add i18n items to routes manifest: #17893
- Add support for returning 404 from getStaticProps: #17755
- Ensure i18n support with AMP: #17923
- Call Web Vitals reporting at correct time: #17933
- Fix initialRevalidateSeconds manifest field with i18n: #17926
- Add support for Image Optimizer: #17749
- Add missing next/image package file: #17940
- Only load plugins with @next prefix: #17945
- Update default configuration to match image optimization: #17943
- Fix width param name for Image Optimizer: #17952
- Unify config.image.breakpoints to config.image.sizes: #17953
- Improve types for Image Component: #17954
- Add perf data experiment: #17956
- Make sure
w
parameter is only included when a width is provided.: #17971 - Image component lazy loading: #17916
- Make sure animated assets aren't de-animated by optimizer: #17974
- Fix types for lazy image component: #17984
- Update to postcss-loader 4.0.2.: #17458
- Update handling for relative files in image-optimizer: #17998
- Ensure correct default locale is detected for domain locale: #18046
- Remove multi-host support for image component and support quality pass-through: #18038
- Add
width
andheight
props to Image component: #18031 - Ensure root index GSP page's revalidate is recorded: #18053
- Update resolve-url-loader to fix vulnerability: #18064
- Pass locales to getStaticPaths for i18n: #18077
- Add
unsized
property to Image component: #18059 - Fix css dependency in /_error: #17301
- Move sharp to optionalDependencies: #18068
- Update to PostCSS 8.: #17415
- Update peerdependency to account for React 17: #18089
- Upgrade to Chokidar 3.: #17558
- Upgrade @ampproject/toolbox-optimizer: #18087
- Fix precompiled code: #18093
- Image Component: Support for Akamai image CDN: #18100
- Fix Image component defaults & remove autoOptimize: #18101
- Fix merge conflict: #18106
- Update fallback 404 handling to prevent reload loop: #18119
- Make lazy-loading the default for next/image: #18123
- Add locale false handling: #18115
- Bypass image optimization for vector images: #18179
- Add support for string width/height on Image component: #18178
- Fix flashing of no-src image when using next/image: #18195
- Bump styled-jsx to 3.3.1: #18200
- Ensure 404 with SSG is rendered correctly with notFound: #18205
- Update use-subscription to account for React 17 peerDependency: #18199
- Separate config into
deviceSizes
andiconSizes
(#18267) - Add config limit checks for image optimizer (#18217)
- Fix Image
srcset
to ensure the component'swidth
is the largest possible image (#18236) - Add next/image default loader errors (#18152)
- Image Optimization API should 404 when loader is not default (#18211)
- Adjust configuration option placement: #18279
- Remove unstable_ prefix from unstable_blocking: #18276
- Fix browser back issue of redirects from getServerSideProps / getStaticProps: #17741
- Add support for notFound in getServerSideProps: #18241
- Improve type for GSP return type: #18285
- Remove unstable_ prefix from unstable_redirect: #18282
- Re-add domain locale redirect handling: #18274
- Remove unstable_ prefix from unstable_notFound: #18283
- Add fetching 404 SSG data on fallback notFound: #18214
- Expose configured default locale in GS(S)P methods: #18216
- Adjust default image quality to 75: #18292
- Add support number quality on Image Component: #18224
- Rename iconSizes to imageSizes, remove size limitation: #18294
- Record leveraged configs: #18175
- Fix trailing slash for default image loader: #18298
- Ensure getStaticProps is called for SSG 404 in blocking mode: #18300
- Enable feature flag: #18303
Documentation Changes
- Fix grammatical typo in docs: #17779
- Fix broken url caused in docs: #17789
- Fix higherOrderComponent causing broken layout: #17812
- docs: Clarify use of getStaticProps / getServerSideProps with app / document: #17839
- Add use-npm CLI flag docs: #17803
- (docs) Fixes for "Migrating from Gatsby" doc: #17858
- Capitalize Data Fetching title in docs: #18001
- Fix typo in headers docs example: #18012
- Add initial i18n documentation: #18067
- Add docs for Image Optimization: #18107
- Fix image optimization docs (#18254)
- Add i18n routing docs to manifest: #18264
- Add absolute import example: #17342
- Update example link text: #18286
- update @now/next to @vercel/next: #18246
- Update docs - add default config for images property: #18296
Example Changes
- Improve with-tailwindcss example: #17742
- feat(example): added missing prisma.io examples: #17896
- Fixed link for expo: #17908
- Fix with-mongodb hot-reload issue and race condition: #17666
- Updated dependencies for example: with-react-native-web: #17375
- Add with-facebook-pixel example: #17667
- Update step 5 to Strapi example Readme: #17985
- Use ya in case xa is false: #18074
- Add initial example for i18n routing: #18206
Misc Changes
- Stabilize i18n fallback test: #17957
Credits
This release was brought to you by the contributions of: @ijjk, @adebiyial, @elliottsj, @saintmalik, @HaNdTriX, @prateekbh, @amirsaeed671, @paambaati, @imagentleman, @gregrickaby, @Janpot, @atcastle, @Kirkhammetz, @remorses, @davidsonsns, @kmkzt, @slawekkolodziej, @Timer, @styfle, @timneutkens, @ykzts, @ashconnell, @orYoffe, @lfades, @justinwhall, @fbaiodias, @ludofischer, @felipeguilhermefs, @gr-qft, @TasukuUno, @YichiZ, @weichienhung, @seosmmbusiness, @HsuTing, @gsimone, @peduarte, @ztanner, @neighborhood999, @chibicode, @merceyz, @opudalo, @lunchboxav, @mohsen1, @akd-io, @justman00, @helloworld, @devknoll, @borekb, @ArthurMaverick, @sakito21, @TrySound, @omBratteng, @svenheden, @hallaji, @kettanaito, @vvo, @m-lautenbach, @jensmeindertsma, @Zeko369, @longlho, @stefanprobst, @laugharn, @sdornan, @daneroo, @mohd-akram, @austingmhuang, @sphilee, @devinekadeni, @bacher, @nghiepit, @tomasdisk, @leader22, @paulogdm, @284km, @belgattitude, @geritol, @stigkj, @sampoder, @samrobbins85, @Pitasi, @digitalPlayer1125, @timfee, @plug-n-play, @philihp, @leerob, @dylanjha, @Kerumen, @rdimaio, @jorisw, @zerbinidamata, @jamesgeorge007, @Jashnm, and @futantan!