Skip to content

Commit

Permalink
v9.5.5-canary.0
Browse files Browse the repository at this point in the history
  • Loading branch information
ijjk committed Oct 8, 2020
1 parent ec2ffb4 commit 62b9183
Show file tree
Hide file tree
Showing 15 changed files with 20 additions and 20 deletions.
2 changes: 1 addition & 1 deletion lerna.json
Expand Up @@ -17,5 +17,5 @@
"registry": "https://registry.npmjs.org/"
}
},
"version": "9.5.4"
"version": "9.5.5-canary.0"
}
2 changes: 1 addition & 1 deletion packages/create-next-app/package.json
@@ -1,6 +1,6 @@
{
"name": "create-next-app",
"version": "9.5.4",
"version": "9.5.5-canary.0",
"keywords": [
"react",
"next",
Expand Down
2 changes: 1 addition & 1 deletion packages/eslint-plugin-next/package.json
@@ -1,6 +1,6 @@
{
"name": "@next/eslint-plugin-next",
"version": "9.5.4",
"version": "9.5.5-canary.0",
"description": "ESLint plugin for NextJS.",
"main": "lib/index.js",
"license": "MIT",
Expand Down
2 changes: 1 addition & 1 deletion packages/next-bundle-analyzer/package.json
@@ -1,6 +1,6 @@
{
"name": "@next/bundle-analyzer",
"version": "9.5.4",
"version": "9.5.5-canary.0",
"main": "index.js",
"license": "MIT",
"repository": {
Expand Down
2 changes: 1 addition & 1 deletion packages/next-codemod/package.json
@@ -1,6 +1,6 @@
{
"name": "@next/codemod",
"version": "9.5.4",
"version": "9.5.5-canary.0",
"license": "MIT",
"dependencies": {
"chalk": "4.1.0",
Expand Down
2 changes: 1 addition & 1 deletion packages/next-env/package.json
@@ -1,6 +1,6 @@
{
"name": "@next/env",
"version": "9.5.4",
"version": "9.5.5-canary.0",
"keywords": [
"react",
"next",
Expand Down
2 changes: 1 addition & 1 deletion packages/next-mdx/package.json
@@ -1,6 +1,6 @@
{
"name": "@next/mdx",
"version": "9.5.4",
"version": "9.5.5-canary.0",
"main": "index.js",
"license": "MIT",
"repository": {
Expand Down
2 changes: 1 addition & 1 deletion packages/next-plugin-google-analytics/package.json
@@ -1,6 +1,6 @@
{
"name": "@next/plugin-google-analytics",
"version": "9.5.4",
"version": "9.5.5-canary.0",
"repository": {
"url": "vercel/next.js",
"directory": "packages/next-plugin-google-analytics"
Expand Down
2 changes: 1 addition & 1 deletion packages/next-plugin-sentry/package.json
@@ -1,6 +1,6 @@
{
"name": "@next/plugin-sentry",
"version": "9.5.4",
"version": "9.5.5-canary.0",
"repository": {
"url": "vercel/next.js",
"directory": "packages/next-plugin-sentry"
Expand Down
2 changes: 1 addition & 1 deletion packages/next-plugin-storybook/package.json
@@ -1,6 +1,6 @@
{
"name": "@next/plugin-storybook",
"version": "9.5.4",
"version": "9.5.5-canary.0",
"repository": {
"url": "vercel/next.js",
"directory": "packages/next-plugin-storybook"
Expand Down
2 changes: 1 addition & 1 deletion packages/next-polyfill-module/package.json
@@ -1,6 +1,6 @@
{
"name": "@next/polyfill-module",
"version": "9.5.4",
"version": "9.5.5-canary.0",
"description": "A standard library polyfill for ES Modules supporting browsers (Edge 16+, Firefox 60+, Chrome 61+, Safari 10.1+)",
"main": "dist/polyfill-module.js",
"license": "MIT",
Expand Down
2 changes: 1 addition & 1 deletion packages/next-polyfill-nomodule/package.json
@@ -1,6 +1,6 @@
{
"name": "@next/polyfill-nomodule",
"version": "9.5.4",
"version": "9.5.5-canary.0",
"description": "A polyfill for non-dead, nomodule browsers.",
"main": "dist/polyfill-nomodule.js",
"license": "MIT",
Expand Down
12 changes: 6 additions & 6 deletions packages/next/package.json
@@ -1,6 +1,6 @@
{
"name": "next",
"version": "9.5.4",
"version": "9.5.5-canary.0",
"description": "The React Framework",
"main": "./dist/server/next.js",
"license": "MIT",
Expand Down Expand Up @@ -77,10 +77,10 @@
"@babel/runtime": "7.11.2",
"@babel/types": "7.11.5",
"@hapi/accept": "5.0.1",
"@next/env": "9.5.4",
"@next/polyfill-module": "9.5.4",
"@next/react-dev-overlay": "9.5.4",
"@next/react-refresh-utils": "9.5.4",
"@next/env": "9.5.5-canary.0",
"@next/polyfill-module": "9.5.5-canary.0",
"@next/react-dev-overlay": "9.5.5-canary.0",
"@next/react-refresh-utils": "9.5.5-canary.0",
"ast-types": "0.13.2",
"babel-plugin-transform-define": "2.0.0",
"babel-plugin-transform-react-remove-prop-types": "0.4.24",
Expand Down Expand Up @@ -124,7 +124,7 @@
"react-dom": "^16.6.0"
},
"devDependencies": {
"@next/polyfill-nomodule": "9.5.4",
"@next/polyfill-nomodule": "9.5.5-canary.0",
"@taskr/clear": "1.1.0",
"@taskr/esnext": "1.1.0",
"@taskr/watch": "1.1.0",
Expand Down
2 changes: 1 addition & 1 deletion packages/react-dev-overlay/package.json
@@ -1,6 +1,6 @@
{
"name": "@next/react-dev-overlay",
"version": "9.5.4",
"version": "9.5.5-canary.0",
"description": "A development-only overlay for developing React applications.",
"repository": {
"url": "vercel/next.js",
Expand Down
2 changes: 1 addition & 1 deletion packages/react-refresh-utils/package.json
@@ -1,6 +1,6 @@
{
"name": "@next/react-refresh-utils",
"version": "9.5.4",
"version": "9.5.5-canary.0",
"description": "An experimental package providing utilities for React Refresh.",
"repository": {
"url": "vercel/next.js",
Expand Down

1 comment on commit 62b9183

@ijjk
Copy link
Member Author

@ijjk ijjk commented on 62b9183 Oct 8, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Stats from current release

Default Server Mode (Increase detected ⚠️)
General Overall increase ⚠️
vercel/next.js canary v9.5.4 vercel/next.js refs/heads/canary Change
buildDuration 13.3s 13.2s -28ms
nodeModulesSize 63.2 MB 63.4 MB ⚠️ +143 kB
Page Load Tests Overall decrease ⚠️
vercel/next.js canary v9.5.4 vercel/next.js refs/heads/canary Change
/ failed reqs 0 0
/ total time (seconds) 2.389 2.584 ⚠️ +0.2
/ avg req/sec 1046.36 967.42 ⚠️ -78.94
/error-in-render failed reqs 0 0
/error-in-render total time (seconds) 1.502 1.578 ⚠️ +0.08
/error-in-render avg req/sec 1664.44 1583.87 ⚠️ -80.57
Client Bundles (main, webpack, commons) Overall increase ⚠️
vercel/next.js canary v9.5.4 vercel/next.js refs/heads/canary Change
677f882d2ed8..9339.js gzip 10.9 kB 11.1 kB ⚠️ +150 B
framework.HASH.js gzip 39 kB 39 kB
main-1ee9e1f..79ba.js gzip 7.16 kB 7.24 kB ⚠️ +72 B
webpack-e067..f178.js gzip 751 B 751 B
Overall change 57.8 kB 58 kB ⚠️ +222 B
Client Bundles (main, webpack, commons) Modern Overall increase ⚠️
vercel/next.js canary v9.5.4 vercel/next.js refs/heads/canary Change
677f882d2ed8..dule.js gzip 6.77 kB 6.9 kB ⚠️ +133 B
framework.HA..dule.js gzip 39 kB 39 kB
main-842994a..dule.js gzip 6.23 kB 6.29 kB ⚠️ +58 B
webpack-07c5..dule.js gzip 751 B 751 B
Overall change 52.7 kB 52.9 kB ⚠️ +191 B
Legacy Client Bundles (polyfills)
vercel/next.js canary v9.5.4 vercel/next.js refs/heads/canary Change
polyfills-4b..e242.js gzip 31 kB 31 kB
Overall change 31 kB 31 kB
Client Pages Overall increase ⚠️
vercel/next.js canary v9.5.4 vercel/next.js refs/heads/canary Change
_app-9a0b9e1..b37e.js gzip 1.28 kB 1.28 kB
_error-ed1b0..8fbd.js gzip 3.44 kB 3.44 kB
hooks-89731c..c609.js gzip 887 B 887 B
index-17468f..5d83.js gzip 227 B 227 B
link-d2344ce..8b36.js gzip 1.3 kB 1.32 kB ⚠️ +18 B
routerDirect..924c.js gzip 284 B 284 B
withRouter-7..c13d.js gzip 284 B 284 B
Overall change 7.71 kB 7.73 kB ⚠️ +18 B
Client Pages Modern Overall increase ⚠️
vercel/next.js canary v9.5.4 vercel/next.js refs/heads/canary Change
_app-75d3a82..dule.js gzip 625 B 625 B
_error-4469a..dule.js gzip 2.29 kB 2.29 kB
hooks-cbf13f..dule.js gzip 387 B 387 B
index-b9a643..dule.js gzip 226 B 226 B
link-f8c0daf..dule.js gzip 1.26 kB 1.28 kB ⚠️ +17 B
routerDirect..dule.js gzip 284 B 284 B
withRouter-f..dule.js gzip 282 B 282 B
Overall change 5.36 kB 5.37 kB ⚠️ +17 B
Client Build Manifests Overall increase ⚠️
vercel/next.js canary v9.5.4 vercel/next.js refs/heads/canary Change
_buildManifest.js gzip 322 B 323 B ⚠️ +1 B
_buildManife..dule.js gzip 329 B 329 B
Overall change 651 B 652 B ⚠️ +1 B
Rendered Page Sizes Overall increase ⚠️
vercel/next.js canary v9.5.4 vercel/next.js refs/heads/canary Change
index.html gzip 1 kB 1 kB ⚠️ +2 B
link.html gzip 1.01 kB 1.01 kB ⚠️ +1 B
withRouter.html gzip 996 B 995 B -1 B
Overall change 3.01 kB 3.01 kB ⚠️ +2 B

Diffs

Diff for _buildManifest.js
@@ -7,7 +7,7 @@ self.__BUILD_MANIFEST = {
   "/hooks": [
     "static\u002Fchunks\u002Fpages\u002Fhooks-8001dc76075832ee8949.js"
   ],
-  "/link": ["static\u002Fchunks\u002Fpages\u002Flink-32658e75d53af2daa2e0.js"],
+  "/link": ["static\u002Fchunks\u002Fpages\u002Flink-67e857671520c009f99f.js"],
   "/routerDirect": [
     "static\u002Fchunks\u002Fpages\u002FrouterDirect-2e9bfd441bd88cd3382e.js"
   ],
Diff for _buildManifest.module.js
@@ -10,7 +10,7 @@ self.__BUILD_MANIFEST = {
     "static\u002Fchunks\u002Fpages\u002Fhooks-56fa58a6f0993d7d36d7.module.js"
   ],
   "/link": [
-    "static\u002Fchunks\u002Fpages\u002Flink-cb038f0ac2e648ce4861.module.js"
+    "static\u002Fchunks\u002Fpages\u002Flink-1de2ef9a42400a3bd1f2.module.js"
   ],
   "/routerDirect": [
     "static\u002Fchunks\u002Fpages\u002FrouterDirect-368af3dfef3c9cd99dc3.module.js"
Diff for link-32658e7..af2daa2e0.js
@@ -311,7 +311,13 @@ _N_E = (window["webpackJsonp_N_E"] = window["webpackJsonp_N_E"] || []).push([
           props.passHref ||
           (child.type === "a" && !("href" in child.props))
         ) {
-          childProps.href = (0, _router.addBasePath)(as);
+          childProps.href = (0, _router.addBasePath)(
+            (0, _router.addLocale)(
+              as,
+              router && router.locale,
+              router && router.defaultLocale
+            )
+          );
         }
 
         return /*#__PURE__*/ _react["default"].cloneElement(child, childProps);
Diff for link-cb038f0..61.module.js
@@ -292,7 +292,13 @@
           props.passHref ||
           (child.type === "a" && !("href" in child.props))
         ) {
-          childProps.href = (0, _router.addBasePath)(as);
+          childProps.href = (0, _router.addBasePath)(
+            (0, _router.addLocale)(
+              as,
+              router && router.locale,
+              router && router.defaultLocale
+            )
+          );
         }
 
         return /*#__PURE__*/ _react.default.cloneElement(child, childProps);
Diff for 677f882d2ed8..5fa35cac6.js
@@ -691,6 +691,8 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
       var _createClass = __webpack_require__("W8MJ");
 
       exports.__esModule = true;
+      exports.addLocale = addLocale;
+      exports.delLocale = delLocale;
       exports.hasBasePath = hasBasePath;
       exports.addBasePath = addBasePath;
       exports.delBasePath = delBasePath;
@@ -744,17 +746,35 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
         });
       }
 
+      function addPathPrefix(path, prefix) {
+        return prefix && path.startsWith("/")
+          ? path === "/"
+            ? (0, _normalizeTrailingSlash.normalizePathTrailingSlash)(prefix)
+            : "".concat(prefix).concat(path)
+          : path;
+      }
+
+      function addLocale(path, locale, defaultLocale) {
+        if (false) {
+        }
+
+        return path;
+      }
+
+      function delLocale(path, locale) {
+        if (false) {
+        }
+
+        return path;
+      }
+
       function hasBasePath(path) {
         return path === basePath || path.startsWith(basePath + "/");
       }
 
       function addBasePath(path) {
         // we only add the basepath on relative urls
-        return basePath && path.startsWith("/")
-          ? path === "/"
-            ? (0, _normalizeTrailingSlash.normalizePathTrailingSlash)(basePath)
-            : basePath + path
-          : path;
+        return addPathPrefix(path, basePath);
       }
 
       function delBasePath(path) {
@@ -975,7 +995,10 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
             initialStyleSheets = _ref.initialStyleSheets,
             err = _ref.err,
             subscription = _ref.subscription,
-            isFallback = _ref.isFallback;
+            isFallback = _ref.isFallback,
+            locale = _ref.locale,
+            locales = _ref.locales,
+            defaultLocale = _ref.defaultLocale;
 
           _classCallCheck(this, Router);
 
@@ -996,6 +1019,9 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
           this.isFallback = void 0;
           this._inFlightRoute = void 0;
           this._shallow = void 0;
+          this.locale = void 0;
+          this.locales = void 0;
+          this.defaultLocale = void 0;
 
           this.onPopState = function(e) {
             var state = e.state;
@@ -1107,6 +1133,9 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
           this.isSsr = true;
           this.isFallback = isFallback;
 
+          if (false) {
+          }
+
           if (true) {
             // make sure "as" doesn't start with double slashes or else it can
             // throw an error as it's considered invalid
@@ -1263,7 +1292,11 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
                               this.abortComponentLoad(this._inFlightRoute);
                             }
 
-                            cleanedAs = hasBasePath(as) ? delBasePath(as) : as;
+                            as = addLocale(as, this.locale, this.defaultLocale);
+                            cleanedAs = delLocale(
+                              hasBasePath(as) ? delBasePath(as) : as,
+                              this.locale
+                            );
                             this._inFlightRoute = as; // If the url change is only related to a hash change
                             // We should not proceed. We should only change the state.
                             // WARNING: `_h` is an internal option for handing Next.js client-side
@@ -1273,7 +1306,7 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
                             if (
                               !(!options._h && this.onlyAHashChange(cleanedAs))
                             ) {
-                              _context.next = 16;
+                              _context.next = 17;
                               break;
                             }
 
@@ -1286,16 +1319,16 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
                             Router.events.emit("hashChangeComplete", as);
                             return _context.abrupt("return", true);
 
-                          case 16:
-                            _context.next = 18;
+                          case 17:
+                            _context.next = 19;
                             return this.pageLoader.getPageList();
 
-                          case 18:
+                          case 19:
                             pages = _context.sent;
-                            _context.next = 21;
+                            _context.next = 22;
                             return this.pageLoader.promisedBuildManifest;
 
-                          case 21:
+                          case 22:
                             _yield$this$pageLoade = _context.sent;
                             rewrites = _yield$this$pageLoade.__rewrites;
                             parsed = (0, _parseRelativeUrl.parseRelativeUrl)(
@@ -1344,10 +1377,13 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
                             if (false) {
                             }
 
-                            resolvedAs = delBasePath(resolvedAs);
+                            resolvedAs = delLocale(
+                              delBasePath(resolvedAs),
+                              this.locale
+                            );
 
                             if (!(0, _isDynamic.isDynamicRoute)(route)) {
-                              _context.next = 49;
+                              _context.next = 50;
                               break;
                             }
 
@@ -1370,7 +1406,7 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
                                 (shouldInterpolate && !interpolatedAs.result)
                               )
                             ) {
-                              _context.next = 48;
+                              _context.next = 49;
                               break;
                             }
 
@@ -1381,7 +1417,7 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
                             });
 
                             if (!(missingParams.length > 0)) {
-                              _context.next = 46;
+                              _context.next = 47;
                               break;
                             }
 
@@ -1412,11 +1448,11 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
                                 )
                             );
 
-                          case 46:
-                            _context.next = 49;
+                          case 47:
+                            _context.next = 50;
                             break;
 
-                          case 48:
+                          case 49:
                             if (shouldInterpolate) {
                               as = (0, _utils.formatWithValidation)(
                                 Object.assign({}, parsedAs, {
@@ -1432,10 +1468,10 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
                               Object.assign(query, routeMatch);
                             }
 
-                          case 49:
+                          case 50:
                             Router.events.emit("routeChangeStart", as);
-                            _context.prev = 50;
-                            _context.next = 53;
+                            _context.prev = 51;
+                            _context.next = 54;
                             return this.getRouteInfo(
                               route,
                               pathname,
@@ -1444,7 +1480,7 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
                               shallow
                             );
 
-                          case 53:
+                          case 54:
                             routeInfo = _context.sent;
                             (error = routeInfo.error),
                               (props = routeInfo.props),
@@ -1459,7 +1495,7 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
                                 props.pageProps.__N_REDIRECT
                               )
                             ) {
-                              _context.next = 64;
+                              _context.next = 65;
                               break;
                             }
 
@@ -1468,7 +1504,7 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
                             // it's not
 
                             if (!destination.startsWith("/")) {
-                              _context.next = 62;
+                              _context.next = 63;
                               break;
                             }
 
@@ -1478,7 +1514,7 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
                             this._resolveHref(parsedHref, pages);
 
                             if (!pages.includes(parsedHref.pathname)) {
-                              _context.next = 62;
+                              _context.next = 63;
                               break;
                             }
 
@@ -1492,21 +1528,26 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
                               )
                             );
 
-                          case 62:
+                          case 63:
                             window.location.href = destination;
                             return _context.abrupt(
                               "return",
                               new Promise(function() {})
                             );
 
-                          case 64:
+                          case 65:
                             Router.events.emit("beforeHistoryChange", as);
-                            this.changeState(method, url, as, options);
+                            this.changeState(
+                              method,
+                              url,
+                              addLocale(as, this.locale, this.defaultLocale),
+                              options
+                            );
 
                             if (false) {
                             }
 
-                            _context.next = 69;
+                            _context.next = 70;
                             return this.set(
                               route,
                               pathname,
@@ -1518,9 +1559,9 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
                               else throw e;
                             });
 
-                          case 69:
+                          case 70:
                             if (!error) {
-                              _context.next = 72;
+                              _context.next = 73;
                               break;
                             }
 
@@ -1531,28 +1572,28 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
                             );
                             throw error;
 
-                          case 72:
+                          case 73:
                             if (false) {
                             }
 
                             Router.events.emit("routeChangeComplete", as);
                             return _context.abrupt("return", true);
 
-                          case 77:
-                            _context.prev = 77;
-                            _context.t0 = _context["catch"](50);
+                          case 78:
+                            _context.prev = 78;
+                            _context.t0 = _context["catch"](51);
 
                             if (!_context.t0.cancelled) {
-                              _context.next = 81;
+                              _context.next = 82;
                               break;
                             }
 
                             return _context.abrupt("return", false);
 
-                          case 81:
+                          case 82:
                             throw _context.t0;
 
-                          case 82:
+                          case 83:
                           case "end":
                             return _context.stop();
                         }
@@ -1560,7 +1601,7 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
                     },
                     _callee,
                     this,
-                    [[50, 77]]
+                    [[51, 78]]
                   );
                 })
               );
@@ -1837,7 +1878,9 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
                                   query: query
                                 }),
                                 delBasePath(as),
-                                __N_SSG
+                                __N_SSG,
+                                this.locale,
+                                this.defaultLocale
                               );
                             }
 
@@ -2083,7 +2126,12 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
                             );
                             _context4.next = 14;
                             return Promise.all([
-                              this.pageLoader.prefetchData(url, asPath),
+                              this.pageLoader.prefetchData(
+                                url,
+                                asPath,
+                                this.locale,
+                                this.defaultLocale
+                              ),
                               this.pageLoader[
                                 options.priority ? "loadPage" : "prefetch"
                               ](route)
@@ -3527,7 +3575,10 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
         "asPath",
         "components",
         "isFallback",
-        "basePath"
+        "basePath",
+        "locale",
+        "locales",
+        "defaultLocale"
       ];
       var routerEvents = [
         "routeChangeStart",
@@ -3647,7 +3698,10 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
             var property = _step.value;
 
             if (typeof _router[property] === "object") {
-              instance[property] = Object.assign({}, _router[property]); // makes sure query is not stateful
+              instance[property] = Object.assign(
+                Array.isArray(_router[property]) ? [] : {},
+                _router[property]
+              ); // makes sure query is not stateful
 
               continue;
             }
Diff for 677f882d2ed8..aa.module.js
@@ -552,6 +552,8 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
       "use strict";
 
       exports.__esModule = true;
+      exports.addLocale = addLocale;
+      exports.delLocale = delLocale;
       exports.hasBasePath = hasBasePath;
       exports.addBasePath = addBasePath;
       exports.delBasePath = delBasePath;
@@ -605,17 +607,35 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
         });
       }
 
+      function addPathPrefix(path, prefix) {
+        return prefix && path.startsWith("/")
+          ? path === "/"
+            ? (0, _normalizeTrailingSlash.normalizePathTrailingSlash)(prefix)
+            : "".concat(prefix).concat(path)
+          : path;
+      }
+
+      function addLocale(path, locale, defaultLocale) {
+        if (false) {
+        }
+
+        return path;
+      }
+
+      function delLocale(path, locale) {
+        if (false) {
+        }
+
+        return path;
+      }
+
       function hasBasePath(path) {
         return path === basePath || path.startsWith(basePath + "/");
       }
 
       function addBasePath(path) {
         // we only add the basepath on relative urls
-        return basePath && path.startsWith("/")
-          ? path === "/"
-            ? (0, _normalizeTrailingSlash.normalizePathTrailingSlash)(basePath)
-            : basePath + path
-          : path;
+        return addPathPrefix(path, basePath);
       }
 
       function delBasePath(path) {
@@ -828,7 +848,10 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
             initialStyleSheets,
             err,
             subscription,
-            isFallback
+            isFallback,
+            locale,
+            locales,
+            defaultLocale
           } = _ref;
           this.route = void 0;
           this.pathname = void 0;
@@ -847,6 +870,9 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
           this.isFallback = void 0;
           this._inFlightRoute = void 0;
           this._shallow = void 0;
+          this.locale = void 0;
+          this.locales = void 0;
+          this.defaultLocale = void 0;
 
           this.onPopState = e => {
             var state = e.state;
@@ -951,6 +977,9 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
           this.isSsr = true;
           this.isFallback = isFallback;
 
+          if (false) {
+          }
+
           if (true) {
             // make sure "as" doesn't start with double slashes or else it can
             // throw an error as it's considered invalid
@@ -1043,7 +1072,11 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
             this.abortComponentLoad(this._inFlightRoute);
           }
 
-          var cleanedAs = hasBasePath(as) ? delBasePath(as) : as;
+          as = addLocale(as, this.locale, this.defaultLocale);
+          var cleanedAs = delLocale(
+            hasBasePath(as) ? delBasePath(as) : as,
+            this.locale
+          );
           this._inFlightRoute = as; // If the url change is only related to a hash change
           // We should not proceed. We should only change the state.
           // WARNING: `_h` is an internal option for handing Next.js client-side
@@ -1103,7 +1136,7 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
             var potentialHref;
           }
 
-          resolvedAs = delBasePath(resolvedAs);
+          resolvedAs = delLocale(delBasePath(resolvedAs), this.locale);
 
           if ((0, _isDynamic.isDynamicRoute)(route)) {
             var parsedAs = (0, _parseRelativeUrl.parseRelativeUrl)(resolvedAs);
@@ -1204,7 +1237,12 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
             }
 
             Router.events.emit("beforeHistoryChange", as);
-            this.changeState(method, url, as, options);
+            this.changeState(
+              method,
+              url,
+              addLocale(as, this.locale, this.defaultLocale),
+              options
+            );
 
             if (false) {
               var appComp;
@@ -1351,7 +1389,9 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
                   query
                 }),
                 delBasePath(as),
-                __N_SSG
+                __N_SSG,
+                this.locale,
+                this.defaultLocale
               );
             }
 
@@ -1505,7 +1545,12 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
             pathname
           );
           await Promise.all([
-            this.pageLoader.prefetchData(url, asPath),
+            this.pageLoader.prefetchData(
+              url,
+              asPath,
+              this.locale,
+              this.defaultLocale
+            ),
             this.pageLoader[options.priority ? "loadPage" : "prefetch"](route)
           ]);
         }
@@ -1897,7 +1942,10 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
         "asPath",
         "components",
         "isFallback",
-        "basePath"
+        "basePath",
+        "locale",
+        "locales",
+        "defaultLocale"
       ];
       var routerEvents = [
         "routeChangeStart",
@@ -2009,7 +2057,10 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
 
         for (var property of urlPropertyFields) {
           if (typeof _router[property] === "object") {
-            instance[property] = Object.assign({}, _router[property]); // makes sure query is not stateful
+            instance[property] = Object.assign(
+              Array.isArray(_router[property]) ? [] : {},
+              _router[property]
+            ); // makes sure query is not stateful
 
             continue;
           }
Diff for main-cc996bf..360d1c810.js
@@ -341,7 +341,7 @@ _N_E = (window["webpackJsonp_N_E"] = window["webpackJsonp_N_E"] || []).push([
         document.getElementById("__NEXT_DATA__").textContent
       );
       window.__NEXT_DATA__ = data;
-      var version = "9.5.4";
+      var version = "9.5.5-canary.0";
       exports.version = version;
       var hydrateProps = data.props,
         hydrateErr = data.err,
@@ -352,7 +352,10 @@ _N_E = (window["webpackJsonp_N_E"] = window["webpackJsonp_N_E"] || []).push([
         runtimeConfig = data.runtimeConfig,
         dynamicIds = data.dynamicIds,
         isFallback = data.isFallback,
-        initialHeadData = data.head;
+        initialHeadData = data.head,
+        locales = data.locales,
+        defaultLocale = data.defaultLocale;
+      var locale = data.locale;
       var prefix = assetPrefix || ""; // With dynamic assetPrefix it's no longer possible to set assetPrefix at the build time
       // So, this is how we do it in the client side at runtime
 
@@ -369,6 +372,12 @@ _N_E = (window["webpackJsonp_N_E"] = window["webpackJsonp_N_E"] || []).push([
         asPath = (0, _router.delBasePath)(asPath);
       }
 
+      asPath = (0, _router.delLocale)(asPath, locale);
+
+      if (false) {
+        var localePathResult, _require, normalizeLocalePath;
+      }
+
       var pageLoader = new _pageLoader["default"](buildId, prefix, page);
 
       var register = function register(_ref) {
@@ -493,7 +502,7 @@ _N_E = (window["webpackJsonp_N_E"] = window["webpackJsonp_N_E"] || []).push([
               if (true) {
                 return this.props.children;
               } else {
-                var _require, ReactDevOverlay;
+                var _require2, ReactDevOverlay;
               }
             }
           }
@@ -514,9 +523,9 @@ _N_E = (window["webpackJsonp_N_E"] = window["webpackJsonp_N_E"] || []).push([
               mod,
               initialErr,
               _yield$pageLoader$loa2,
-              _require2,
-              isValidElementType,
               _require3,
+              isValidElementType,
+              _require4,
               getNodeError,
               renderCtx,
               _args = arguments;
@@ -593,14 +602,14 @@ _N_E = (window["webpackJsonp_N_E"] = window["webpackJsonp_N_E"] || []).push([
                         break;
                       }
 
-                      (_require2 = __webpack_require__(
+                      (_require3 = __webpack_require__(
                         !(function webpackMissingModule() {
                           var e = new Error("Cannot find module 'react-is'");
                           e.code = "MODULE_NOT_FOUND";
                           throw e;
                         })()
                       )),
-                        (isValidElementType = _require2.isValidElementType);
+                        (isValidElementType = _require3.isValidElementType);
 
                       if (isValidElementType(CachedComponent)) {
                         _context.next = 21;
@@ -662,7 +671,10 @@ _N_E = (window["webpackJsonp_N_E"] = window["webpackJsonp_N_E"] || []).push([
                               props: props,
                               err: err
                             });
-                          }
+                          },
+                          locale: locale,
+                          locales: locales,
+                          defaultLocale: defaultLocale
                         }
                       ); // call init-client middleware
 
@@ -1753,7 +1765,13 @@ _N_E = (window["webpackJsonp_N_E"] = window["webpackJsonp_N_E"] || []).push([
           },
           {
             key: "getDataHref",
-            value: function getDataHref(href, asPath, ssg) {
+            value: function getDataHref(
+              href,
+              asPath,
+              ssg,
+              locale,
+              defaultLocale
+            ) {
               var _this2 = this;
 
               var _ref = (0, _parseRelativeUrl.parseRelativeUrl)(href),
@@ -1767,9 +1785,10 @@ _N_E = (window["webpackJsonp_N_E"] = window["webpackJsonp_N_E"] || []).push([
               var route = normalizeRoute(hrefPathname);
 
               var getHrefForSlug = function getHrefForSlug(path) {
-                var dataRoute = (0, _getAssetPathFromRoute["default"])(
-                  path,
-                  ".json"
+                var dataRoute = (0, _router.addLocale)(
+                  (0, _getAssetPathFromRoute["default"])(path, ".json"),
+                  locale,
+                  defaultLocale
                 );
                 return (0, _router.addBasePath)(
                   "/_next/data/"
@@ -1795,7 +1814,7 @@ _N_E = (window["webpackJsonp_N_E"] = window["webpackJsonp_N_E"] || []).push([
           },
           {
             key: "prefetchData",
-            value: function prefetchData(href, asPath) {
+            value: function prefetchData(href, asPath, locale, defaultLocale) {
               var _this3 = this;
 
               var _ref3 = (0, _parseRelativeUrl.parseRelativeUrl)(href),
@@ -1806,7 +1825,13 @@ _N_E = (window["webpackJsonp_N_E"] = window["webpackJsonp_N_E"] || []).push([
                 return (
                   // Check if the route requires a data file
                   s.has(route) && // Try to generate data href, noop when falsy
-                  (_dataHref = _this3.getDataHref(href, asPath, true)) && // noop when data has already been prefetched (dedupe)
+                  (_dataHref = _this3.getDataHref(
+                    href,
+                    asPath,
+                    true,
+                    locale,
+                    defaultLocale
+                  )) && // noop when data has already been prefetched (dedupe)
                   !document.querySelector(
                     'link[rel="'
                       .concat(relPrefetch, '"][href^="')
Diff for main-e4c5aac..1a.module.js
@@ -258,7 +258,7 @@
         document.getElementById("__NEXT_DATA__").textContent
       );
       window.__NEXT_DATA__ = data;
-      var version = "9.5.4";
+      var version = "9.5.5-canary.0";
       exports.version = version;
       var {
         props: hydrateProps,
@@ -270,8 +270,11 @@
         runtimeConfig,
         dynamicIds,
         isFallback,
-        head: initialHeadData
+        head: initialHeadData,
+        locales,
+        defaultLocale
       } = data;
+      var { locale } = data;
       var prefix = assetPrefix || ""; // With dynamic assetPrefix it's no longer possible to set assetPrefix at the build time
       // So, this is how we do it in the client side at runtime
 
@@ -288,6 +291,12 @@
         asPath = (0, _router.delBasePath)(asPath);
       }
 
+      asPath = (0, _router.delLocale)(asPath, locale);
+
+      if (false) {
+        var localePathResult, normalizeLocalePath;
+      }
+
       var pageLoader = new _pageLoader.default(buildId, prefix, page);
 
       var register = _ref => {
@@ -480,7 +489,10 @@
                 props,
                 err
               });
-            }
+            },
+            locale,
+            locales,
+            defaultLocale
           }
         ); // call init-client middleware
 
@@ -1398,7 +1410,7 @@
          * @param {string} asPath the URL as shown in browser (virtual path); used for dynamic routes
          */
 
-        getDataHref(href, asPath, ssg) {
+        getDataHref(href, asPath, ssg, locale, defaultLocale) {
           var { pathname: hrefPathname, query, search } = (0,
           _parseRelativeUrl.parseRelativeUrl)(href);
           var { pathname: asPathname } = (0,
@@ -1406,7 +1418,11 @@
           var route = normalizeRoute(hrefPathname);
 
           var getHrefForSlug = path => {
-            var dataRoute = (0, _getAssetPathFromRoute.default)(path, ".json");
+            var dataRoute = (0, _router.addLocale)(
+              (0, _getAssetPathFromRoute.default)(path, ".json"),
+              locale,
+              defaultLocale
+            );
             return (0, _router.addBasePath)(
               "/_next/data/"
                 .concat(this.buildId)
@@ -1428,7 +1444,7 @@
          * @param {string} asPath the URL as shown in browser (virtual path); used for dynamic routes
          */
 
-        prefetchData(href, asPath) {
+        prefetchData(href, asPath, locale, defaultLocale) {
           var { pathname: hrefPathname } = (0,
           _parseRelativeUrl.parseRelativeUrl)(href);
           var route = normalizeRoute(hrefPathname);
@@ -1438,7 +1454,13 @@
               _dataHref // Check if the route requires a data file
             ) =>
               s.has(route) && // Try to generate data href, noop when falsy
-              (_dataHref = this.getDataHref(href, asPath, true)) && // noop when data has already been prefetched (dedupe)
+              (_dataHref = this.getDataHref(
+                href,
+                asPath,
+                true,
+                locale,
+                defaultLocale
+              )) && // noop when data has already been prefetched (dedupe)
               !document.querySelector(
                 'link[rel="'
                   .concat(relPrefetch, '"][href^="')
Diff for index.html
@@ -6,7 +6,7 @@
     <noscript data-n-css="true"></noscript>
     <link
       rel="preload"
-      href="/_next/static/chunks/main-e4c5aacc34ff374d611a.module.js"
+      href="/_next/static/chunks/main-cd03ef5b27f5bbf14886.module.js"
       as="script"
       crossorigin="anonymous"
     />
@@ -24,7 +24,7 @@
     />
     <link
       rel="preload"
-      href="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.ed82f38c7a1994b728aa.module.js"
+      href="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.d950dcaaa011f2b8e120.module.js"
       as="script"
       crossorigin="anonymous"
     />
@@ -85,13 +85,13 @@
       src="/_next/static/chunks/polyfills-f73ba3fc145972ef83e9.js"
     ></script>
     <script
-      src="/_next/static/chunks/main-cc996bf2dd2360d1c810.js"
+      src="/_next/static/chunks/main-d59a7893189daa2f9d39.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
     ></script>
     <script
-      src="/_next/static/chunks/main-e4c5aacc34ff374d611a.module.js"
+      src="/_next/static/chunks/main-cd03ef5b27f5bbf14886.module.js"
       async=""
       crossorigin="anonymous"
       type="module"
@@ -121,13 +121,13 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.2730f3273c05fa35cac6.js"
+      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.5472d08d2594eeebf399.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
     ></script>
     <script
-      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.ed82f38c7a1994b728aa.module.js"
+      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.d950dcaaa011f2b8e120.module.js"
       async=""
       crossorigin="anonymous"
       type="module"
Diff for link.html
@@ -6,7 +6,7 @@
     <noscript data-n-css="true"></noscript>
     <link
       rel="preload"
-      href="/_next/static/chunks/main-e4c5aacc34ff374d611a.module.js"
+      href="/_next/static/chunks/main-cd03ef5b27f5bbf14886.module.js"
       as="script"
       crossorigin="anonymous"
     />
@@ -24,7 +24,7 @@
     />
     <link
       rel="preload"
-      href="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.ed82f38c7a1994b728aa.module.js"
+      href="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.d950dcaaa011f2b8e120.module.js"
       as="script"
       crossorigin="anonymous"
     />
@@ -36,7 +36,7 @@
     />
     <link
       rel="preload"
-      href="/_next/static/chunks/pages/link-cb038f0ac2e648ce4861.module.js"
+      href="/_next/static/chunks/pages/link-1de2ef9a42400a3bd1f2.module.js"
       as="script"
       crossorigin="anonymous"
     />
@@ -90,13 +90,13 @@
       src="/_next/static/chunks/polyfills-f73ba3fc145972ef83e9.js"
     ></script>
     <script
-      src="/_next/static/chunks/main-cc996bf2dd2360d1c810.js"
+      src="/_next/static/chunks/main-d59a7893189daa2f9d39.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
     ></script>
     <script
-      src="/_next/static/chunks/main-e4c5aacc34ff374d611a.module.js"
+      src="/_next/static/chunks/main-cd03ef5b27f5bbf14886.module.js"
       async=""
       crossorigin="anonymous"
       type="module"
@@ -126,13 +126,13 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.2730f3273c05fa35cac6.js"
+      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.5472d08d2594eeebf399.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
     ></script>
     <script
-      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.ed82f38c7a1994b728aa.module.js"
+      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.d950dcaaa011f2b8e120.module.js"
       async=""
       crossorigin="anonymous"
       type="module"
@@ -150,13 +150,13 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/pages/link-32658e75d53af2daa2e0.js"
+      src="/_next/static/chunks/pages/link-67e857671520c009f99f.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
     ></script>
     <script
-      src="/_next/static/chunks/pages/link-cb038f0ac2e648ce4861.module.js"
+      src="/_next/static/chunks/pages/link-1de2ef9a42400a3bd1f2.module.js"
       async=""
       crossorigin="anonymous"
       type="module"
Diff for withRouter.html
@@ -6,7 +6,7 @@
     <noscript data-n-css="true"></noscript>
     <link
       rel="preload"
-      href="/_next/static/chunks/main-e4c5aacc34ff374d611a.module.js"
+      href="/_next/static/chunks/main-cd03ef5b27f5bbf14886.module.js"
       as="script"
       crossorigin="anonymous"
     />
@@ -24,7 +24,7 @@
     />
     <link
       rel="preload"
-      href="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.ed82f38c7a1994b728aa.module.js"
+      href="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.d950dcaaa011f2b8e120.module.js"
       as="script"
       crossorigin="anonymous"
     />
@@ -85,13 +85,13 @@
       src="/_next/static/chunks/polyfills-f73ba3fc145972ef83e9.js"
     ></script>
     <script
-      src="/_next/static/chunks/main-cc996bf2dd2360d1c810.js"
+      src="/_next/static/chunks/main-d59a7893189daa2f9d39.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
     ></script>
     <script
-      src="/_next/static/chunks/main-e4c5aacc34ff374d611a.module.js"
+      src="/_next/static/chunks/main-cd03ef5b27f5bbf14886.module.js"
       async=""
       crossorigin="anonymous"
       type="module"
@@ -121,13 +121,13 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.2730f3273c05fa35cac6.js"
+      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.5472d08d2594eeebf399.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
     ></script>
     <script
-      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.ed82f38c7a1994b728aa.module.js"
+      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.d950dcaaa011f2b8e120.module.js"
       async=""
       crossorigin="anonymous"
       type="module"

Serverless Mode (Increase detected ⚠️)
General Overall increase ⚠️
vercel/next.js canary v9.5.4 vercel/next.js refs/heads/canary Change
buildDuration 15.3s 15s -315ms
nodeModulesSize 63.2 MB 63.4 MB ⚠️ +143 kB
Client Bundles (main, webpack, commons) Overall increase ⚠️
vercel/next.js canary v9.5.4 vercel/next.js refs/heads/canary Change
677f882d2ed8..9339.js gzip 10.9 kB N/A N/A
framework.HASH.js gzip 39 kB 39 kB
main-1ee9e1f..79ba.js gzip 7.16 kB N/A N/A
webpack-e067..f178.js gzip 751 B 751 B
677f882d2ed8..9b19.js gzip N/A 11.1 kB N/A
main-ef5fcfe..d66c.js gzip N/A 7.24 kB N/A
Overall change 57.8 kB 58 kB ⚠️ +222 B
Client Bundles (main, webpack, commons) Modern Overall increase ⚠️
vercel/next.js canary v9.5.4 vercel/next.js refs/heads/canary Change
677f882d2ed8..dule.js gzip 6.77 kB N/A N/A
framework.HA..dule.js gzip 39 kB 39 kB
main-842994a..dule.js gzip 6.23 kB N/A N/A
webpack-07c5..dule.js gzip 751 B 751 B
677f882d2ed8..dule.js gzip N/A 6.9 kB N/A
main-1c7f28c..dule.js gzip N/A 6.29 kB N/A
Overall change 52.7 kB 52.9 kB ⚠️ +191 B
Legacy Client Bundles (polyfills)
vercel/next.js canary v9.5.4 vercel/next.js refs/heads/canary Change
polyfills-4b..e242.js gzip 31 kB 31 kB
Overall change 31 kB 31 kB
Client Pages Overall increase ⚠️
vercel/next.js canary v9.5.4 vercel/next.js refs/heads/canary Change
_app-9a0b9e1..b37e.js gzip 1.28 kB 1.28 kB
_error-ed1b0..8fbd.js gzip 3.44 kB 3.44 kB
hooks-89731c..c609.js gzip 887 B 887 B
index-17468f..5d83.js gzip 227 B 227 B
link-d2344ce..8b36.js gzip 1.3 kB N/A N/A
routerDirect..924c.js gzip 284 B 284 B
withRouter-7..c13d.js gzip 284 B 284 B
link-409b283..e3ab.js gzip N/A 1.32 kB N/A
Overall change 7.71 kB 7.73 kB ⚠️ +18 B
Client Pages Modern Overall increase ⚠️
vercel/next.js canary v9.5.4 vercel/next.js refs/heads/canary Change
_app-75d3a82..dule.js gzip 625 B 625 B
_error-4469a..dule.js gzip 2.29 kB 2.29 kB
hooks-cbf13f..dule.js gzip 387 B 387 B
index-b9a643..dule.js gzip 226 B 226 B
link-f8c0daf..dule.js gzip 1.26 kB N/A N/A
routerDirect..dule.js gzip 284 B 284 B
withRouter-f..dule.js gzip 282 B 282 B
link-92d3016..dule.js gzip N/A 1.28 kB N/A
Overall change 5.36 kB 5.37 kB ⚠️ +17 B
Client Build Manifests Overall increase ⚠️
vercel/next.js canary v9.5.4 vercel/next.js refs/heads/canary Change
_buildManifest.js gzip 322 B 323 B ⚠️ +1 B
_buildManife..dule.js gzip 329 B 329 B
Overall change 651 B 652 B ⚠️ +1 B
Serverless bundles Overall increase ⚠️
vercel/next.js canary v9.5.4 vercel/next.js refs/heads/canary Change
_error.js 1.05 MB 1.05 MB ⚠️ +979 B
404.html 4.34 kB 4.34 kB
hooks.html 3.92 kB 3.92 kB
index.js 1.05 MB 1.05 MB ⚠️ +979 B
link.js 1.1 MB 1.1 MB ⚠️ +1.8 kB
routerDirect.js 1.09 MB 1.09 MB ⚠️ +1.72 kB
withRouter.js 1.09 MB 1.09 MB ⚠️ +1.72 kB
Overall change 5.4 MB 5.41 MB ⚠️ +7.2 kB

Please sign in to comment.