Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

[upgrade] Version gate adding--turbopack flag#85180

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to ourterms of service andprivacy statement. We’ll occasionally send you account related emails.

Already on GitHub?Sign in to your account

Conversation

@devjiwonchoi
Copy link
Member

@devjiwonchoidevjiwonchoi commentedOct 21, 2025
edited
Loading

--turbopack flag is not needed for v16 upgrade.

@ijjkijjk added created-by: Next.js teamPRs by the Next.js team. type: next labelsOct 21, 2025
@devjiwonchoiGraphite App
Copy link
MemberAuthor

This stack of pull requests is managed byGraphite. Learn more aboutstacking.

@ijjk
Copy link
Member

ijjk commentedOct 21, 2025
edited
Loading

Stats from current PR

Default Build (Increase detected⚠️)
General
vercel/next.js canaryvercel/next.js jiwon/10-21-upgrade_version_gate_adding--turbopack_flagChange
buildDuration28.9s23.6sN/A
buildDurationCached22.9s19.4sN/A
nodeModulesSize453 MB453 MB
nextStartRea..uration (ms)814ms780msN/A
Client Bundles (main, webpack)
vercel/next.js canaryvercel/next.js jiwon/10-21-upgrade_version_gate_adding--turbopack_flagChange
1916.HASH.js gzip169 B169 B
4498-HASH.js gzip54.7 kB54.6 kBN/A
9225-HASH.js gzip5.32 kB5.32 kBN/A
c57d0559-HASH.js gzip62.1 kB62.1 kBN/A
framework-HASH.js gzip59.8 kB59.8 kB
main-app-HASH.js gzip257 B256 BN/A
main-HASH.js gzip39.8 kB39.8 kBN/A
webpack-HASH.js gzip1.69 kB1.69 kBN/A
Overall change60 kB60 kB
Legacy Client Bundles (polyfills)
vercel/next.js canaryvercel/next.js jiwon/10-21-upgrade_version_gate_adding--turbopack_flagChange
polyfills-HASH.js gzip39.4 kB39.4 kB
Overall change39.4 kB39.4 kB
Client Pages
vercel/next.js canaryvercel/next.js jiwon/10-21-upgrade_version_gate_adding--turbopack_flagChange
_app-HASH.js gzip193 B193 B
_error-HASH.js gzip182 B182 B
css-HASH.js gzip334 B334 B
dynamic-HASH.js gzip1.8 kB1.8 kBN/A
edge-ssr-HASH.js gzip256 B255 BN/A
head-HASH.js gzip350 B352 BN/A
hooks-HASH.js gzip384 B381 BN/A
image-HASH.js gzip4.79 kB4.79 kBN/A
index-HASH.js gzip259 B260 BN/A
link-HASH.js gzip2.5 kB2.51 kBN/A
routerDirect..HASH.js gzip318 B317 BN/A
script-HASH.js gzip386 B386 B
withRouter-HASH.js gzip315 B315 B
1afbb74e6ecf..834.css gzip106 B106 B
Overall change1.52 kB1.52 kB
Client Build Manifests
vercel/next.js canaryvercel/next.js jiwon/10-21-upgrade_version_gate_adding--turbopack_flagChange
_buildManifest.js gzip716 B719 BN/A
Overall change0 B0 B
Rendered Page Sizes
vercel/next.js canaryvercel/next.js jiwon/10-21-upgrade_version_gate_adding--turbopack_flagChange
index.html gzip524 B523 BN/A
link.html gzip537 B538 BN/A
withRouter.html gzip519 B520 BN/A
Overall change0 B0 B
Edge SSR bundle Size
vercel/next.js canaryvercel/next.js jiwon/10-21-upgrade_version_gate_adding--turbopack_flagChange
edge-ssr.js gzip128 kB128 kBN/A
page.js gzip260 kB260 kBN/A
Overall change0 B0 B
Middleware size
vercel/next.js canaryvercel/next.js jiwon/10-21-upgrade_version_gate_adding--turbopack_flagChange
middleware-b..fest.js gzip640 B643 BN/A
middleware-r..fest.js gzip156 B157 BN/A
middleware.js gzip32.9 kB32.7 kBN/A
edge-runtime..pack.js gzip846 B846 B
Overall change846 B846 B
Next Runtimes
vercel/next.js canaryvercel/next.js jiwon/10-21-upgrade_version_gate_adding--turbopack_flagChange
app-page-exp...dev.js gzip295 kB295 kBN/A
app-page-exp..prod.js gzip162 kB162 kB
app-page-tur...dev.js gzip295 kB295 kB
app-page-tur..prod.js gzip161 kB161 kB
app-page-tur...dev.js gzip291 kB291 kB
app-page-tur..prod.js gzip159 kB159 kB
app-page.run...dev.js gzip291 kB291 kBN/A
app-page.run..prod.js gzip159 kB159 kB
app-route-ex...dev.js gzip70.8 kB70.8 kB
app-route-ex..prod.js gzip49.4 kB49.4 kB
app-route-tu...dev.js gzip70.8 kB70.8 kB
app-route-tu..prod.js gzip49.4 kB49.4 kB
app-route-tu...dev.js gzip70.4 kB70.4 kB
app-route-tu..prod.js gzip49.1 kB49.1 kB
app-route.ru...dev.js gzip70.4 kB70.4 kB
app-route.ru..prod.js gzip49.1 kB49.1 kB
dist_client_...dev.js gzip326 B326 B
dist_client_...dev.js gzip328 B328 B
dist_client_...dev.js gzip320 B320 B
dist_client_...dev.js gzip318 B318 B
pages-api-tu...dev.js gzip43.3 kB43.3 kB
pages-api-tu..prod.js gzip33.1 kB33.1 kB
pages-api.ru...dev.js gzip43.3 kB43.3 kB
pages-api.ru..prod.js gzip33.1 kB33.1 kB
pages-turbo....dev.js gzip52.8 kB52.8 kB
pages-turbo...prod.js gzip40.1 kB40.1 kB
pages.runtim...dev.js gzip52.7 kB52.7 kB
pages.runtim..prod.js gzip40 kB40 kB
server.runti..prod.js gzip78.9 kB78.9 kB
Overall change2.13 MB2.13 MB
build cache Overall increase⚠️
vercel/next.js canaryvercel/next.js jiwon/10-21-upgrade_version_gate_adding--turbopack_flagChange
0.pack gzip3.26 MB3.26 MB⚠️ +3.77 kB
index.pack gzip94.8 kB94.7 kBN/A
Overall change3.26 MB3.26 MB⚠️ +3.77 kB
Diff details
Diff forpage.js

Diff too large to display

Diff formiddleware.js

Diff too large to display

Diff foredge-ssr.js
failed to diff
Diff forcss-HASH.js
@@ -1,7 +1,31 @@ (self["webpackChunk_N_E"] = self["webpackChunk_N_E"] || []).push([   [9813],   {-    /***/ 3593: /***/ (+    /***/ 5832: /***/ (module) => {+      // extracted by mini-css-extract-plugin+      module.exports = { helloWorld: "css_helloWorld__aUdUq" };++      /***/+    },++    /***/ 6471: /***/ (+      __unused_webpack_module,+      __unused_webpack_exports,+      __webpack_require__+    ) => {+      (window.__NEXT_P = window.__NEXT_P || []).push([+        "/css",+        function () {+          return __webpack_require__(7839);+        },+      ]);+      if (false) {+      }++      /***/+    },++    /***/ 7839: /***/ (       __unused_webpack_module,       __webpack_exports__,       __webpack_require__@@ -15,7 +39,7 @@       /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ =         __webpack_require__(1503);       /* harmony import */ var _css_module_css__WEBPACK_IMPORTED_MODULE_1__ =-        __webpack_require__(7634);+        __webpack_require__(5832);       /* harmony import */ var _css_module_css__WEBPACK_IMPORTED_MODULE_1___default =         /*#__PURE__*/ __webpack_require__.n(           _css_module_css__WEBPACK_IMPORTED_MODULE_1__@@ -34,37 +58,13 @@        /***/     },--    /***/ 4569: /***/ (-      __unused_webpack_module,-      __unused_webpack_exports,-      __webpack_require__-    ) => {-      (window.__NEXT_P = window.__NEXT_P || []).push([-        "/css",-        function () {-          return __webpack_require__(3593);-        },-      ]);-      if (false) {-      }--      /***/-    },--    /***/ 7634: /***/ (module) => {-      // extracted by mini-css-extract-plugin-      module.exports = { helloWorld: "css_helloWorld__aUdUq" };--      /***/-    },   },   /******/ (__webpack_require__) => {     // webpackRuntimeModules     /******/ var __webpack_exec__ = (moduleId) =>       __webpack_require__((__webpack_require__.s = moduleId));     /******/ __webpack_require__.O(0, [636, 6593, 8792], () =>-      __webpack_exec__(4569)+      __webpack_exec__(6471)     );     /******/ var __webpack_exports__ = __webpack_require__.O();     /******/ _N_E = __webpack_exports__;
Diff fordynamic-HASH.js
@@ -1,24 +1,7 @@ (self["webpackChunk_N_E"] = self["webpackChunk_N_E"] || []).push([   [2291],   {-    /***/ 1033: /***/ (-      __unused_webpack_module,-      __unused_webpack_exports,-      __webpack_require__-    ) => {-      (window.__NEXT_P = window.__NEXT_P || []).push([-        "/dynamic",-        function () {-          return __webpack_require__(2283);-        },-      ]);-      if (false) {-      }--      /***/-    },--    /***/ 2283: /***/ (+    /***/ 133: /***/ (       __unused_webpack_module,       __webpack_exports__,       __webpack_require__@@ -33,7 +16,7 @@       /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ =         __webpack_require__(1503);       /* harmony import */ var next_dynamic__WEBPACK_IMPORTED_MODULE_1__ =-        __webpack_require__(4939);+        __webpack_require__(7514);       /* harmony import */ var next_dynamic__WEBPACK_IMPORTED_MODULE_1___default =         /*#__PURE__*/ __webpack_require__.n(           next_dynamic__WEBPACK_IMPORTED_MODULE_1__@@ -42,12 +25,12 @@       const DynamicHello = next_dynamic__WEBPACK_IMPORTED_MODULE_1___default()(         () =>           __webpack_require__-            .e(/* import() */ 1916)-            .then(__webpack_require__.bind(__webpack_require__, 1916))+            .e(/* import() */ 3862)+            .then(__webpack_require__.bind(__webpack_require__, 3862))             .then((mod) => mod.Hello),         {           loadableGenerated: {-            webpack: () => [/*require.resolve*/ 1916],+            webpack: () => [/*require.resolve*/ 3862],           },         }       );@@ -74,17 +57,24 @@       /***/     },-    /***/ 4939: /***/ (-      module,+    /***/ 431: /***/ (+      __unused_webpack_module,       __unused_webpack_exports,       __webpack_require__     ) => {-      module.exports = __webpack_require__(5121);+      (window.__NEXT_P = window.__NEXT_P || []).push([+        "/dynamic",+        function () {+          return __webpack_require__(133);+        },+      ]);+      if (false) {+      }        /***/     },-    /***/ 5121: /***/ (module, exports, __webpack_require__) => {+    /***/ 1709: /***/ (module, exports, __webpack_require__) => {       "use strict";        Object.defineProperty(exports, "__esModule", {@@ -117,7 +107,7 @@         __webpack_require__(2223)       );       const _loadablesharedruntime = /*#__PURE__*/ _interop_require_default._(-        __webpack_require__(7622)+        __webpack_require__(2522)       );       const isServerSide = "object" === "undefined";       // Normalize loader to return the module as form { default: Component } for `React.lazy`.@@ -217,7 +207,7 @@       /***/     },-    /***/ 5160: /***/ (+    /***/ 2463: /***/ (       __unused_webpack_module,       exports,       __webpack_require__@@ -244,7 +234,7 @@       /***/     },-    /***/ 7622: /***/ (+    /***/ 2522: /***/ (       __unused_webpack_module,       exports,       __webpack_require__@@ -286,7 +276,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE       const _react = /*#__PURE__*/ _interop_require_default._(         __webpack_require__(2223)       );-      const _loadablecontextsharedruntime = __webpack_require__(5160);+      const _loadablecontextsharedruntime = __webpack_require__(2463);       function resolve(obj) {         return obj && obj.default ? obj.default : obj;       }@@ -518,13 +508,23 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE        /***/     },++    /***/ 7514: /***/ (+      module,+      __unused_webpack_exports,+      __webpack_require__+    ) => {+      module.exports = __webpack_require__(1709);++      /***/+    },   },   /******/ (__webpack_require__) => {     // webpackRuntimeModules     /******/ var __webpack_exec__ = (moduleId) =>       __webpack_require__((__webpack_require__.s = moduleId));     /******/ __webpack_require__.O(0, [636, 6593, 8792], () =>-      __webpack_exec__(1033)+      __webpack_exec__(431)     );     /******/ var __webpack_exports__ = __webpack_require__.O();     /******/ _N_E = __webpack_exports__;
Diff forhooks-HASH.js
@@ -1,24 +1,7 @@ (self["webpackChunk_N_E"] = self["webpackChunk_N_E"] || []).push([   [9804],   {-    /***/ 1679: /***/ (-      __unused_webpack_module,-      __unused_webpack_exports,-      __webpack_require__-    ) => {-      (window.__NEXT_P = window.__NEXT_P || []).push([-        "/hooks",-        function () {-          return __webpack_require__(9198);-        },-      ]);-      if (false) {-      }--      /***/-    },--    /***/ 9198: /***/ (+    /***/ 2592: /***/ (       __unused_webpack_module,       __webpack_exports__,       __webpack_require__@@ -76,13 +59,30 @@        /***/     },++    /***/ 3925: /***/ (+      __unused_webpack_module,+      __unused_webpack_exports,+      __webpack_require__+    ) => {+      (window.__NEXT_P = window.__NEXT_P || []).push([+        "/hooks",+        function () {+          return __webpack_require__(2592);+        },+      ]);+      if (false) {+      }++      /***/+    },   },   /******/ (__webpack_require__) => {     // webpackRuntimeModules     /******/ var __webpack_exec__ = (moduleId) =>       __webpack_require__((__webpack_require__.s = moduleId));     /******/ __webpack_require__.O(0, [636, 6593, 8792], () =>-      __webpack_exec__(1679)+      __webpack_exec__(3925)     );     /******/ var __webpack_exports__ = __webpack_require__.O();     /******/ _N_E = __webpack_exports__;
Diff forimage-HASH.js

Diff too large to display

Diff forindex-HASH.js
@@ -1,7 +1,24 @@ (self["webpackChunk_N_E"] = self["webpackChunk_N_E"] || []).push([   [3332],   {-    /***/ 3454: /***/ (+    /***/ 8431: /***/ (+      __unused_webpack_module,+      __unused_webpack_exports,+      __webpack_require__+    ) => {+      (window.__NEXT_P = window.__NEXT_P || []).push([+        "/",+        function () {+          return __webpack_require__(8972);+        },+      ]);+      if (false) {+      }++      /***/+    },++    /***/ 8972: /***/ (       __unused_webpack_module,       __webpack_exports__,       __webpack_require__@@ -19,30 +36,13 @@        /***/     },--    /***/ 9241: /***/ (-      __unused_webpack_module,-      __unused_webpack_exports,-      __webpack_require__-    ) => {-      (window.__NEXT_P = window.__NEXT_P || []).push([-        "/",-        function () {-          return __webpack_require__(3454);-        },-      ]);-      if (false) {-      }--      /***/-    },   },   /******/ (__webpack_require__) => {     // webpackRuntimeModules     /******/ var __webpack_exec__ = (moduleId) =>       __webpack_require__((__webpack_require__.s = moduleId));     /******/ __webpack_require__.O(0, [636, 6593, 8792], () =>-      __webpack_exec__(9241)+      __webpack_exec__(8431)     );     /******/ var __webpack_exports__ = __webpack_require__.O();     /******/ _N_E = __webpack_exports__;
Diff forlink-HASH.js
@@ -1,26 +1,24 @@ (self["webpackChunk_N_E"] = self["webpackChunk_N_E"] || []).push([   [4672],   {-    /***/ 1970: /***/ (__unused_webpack_module, exports) => {-      "use strict";--      Object.defineProperty(exports, "__esModule", {-        value: true,-      });-      Object.defineProperty(exports, "errorOnce", {-        enumerable: true,-        get: function () {-          return errorOnce;+    /***/ 2025: /***/ (+      __unused_webpack_module,+      __unused_webpack_exports,+      __webpack_require__+    ) => {+      (window.__NEXT_P = window.__NEXT_P || []).push([+        "/link",+        function () {+          return __webpack_require__(3072);         },-      });-      let errorOnce = (_) => {};+      ]);       if (false) {-      } //# sourceMappingURL=error-once.js.map+      }        /***/     },-    /***/ 3262: /***/ (module, exports, __webpack_require__) => {+    /***/ 3066: /***/ (module, exports, __webpack_require__) => {       "use strict";       /* __next_internal_client_entry_do_not_use__  cjs */       Object.defineProperty(exports, "__esModule", {@@ -47,17 +45,17 @@       const _react = /*#__PURE__*/ _interop_require_wildcard._(         __webpack_require__(2223)       );-      const _resolvehref = __webpack_require__(7868);-      const _islocalurl = __webpack_require__(9350);-      const _formaturl = __webpack_require__(6319);-      const _utils = __webpack_require__(9889);-      const _addlocale = __webpack_require__(9466);-      const _routercontextsharedruntime = __webpack_require__(5691);-      const _useintersection = __webpack_require__(3981);-      const _getdomainlocale = __webpack_require__(4206);-      const _addbasepath = __webpack_require__(9339);-      const _usemergedref = __webpack_require__(6848);-      const _erroronce = __webpack_require__(1970);+      const _resolvehref = __webpack_require__(2776);+      const _islocalurl = __webpack_require__(5770);+      const _formaturl = __webpack_require__(8531);+      const _utils = __webpack_require__(3565);+      const _addlocale = __webpack_require__(8878);+      const _routercontextsharedruntime = __webpack_require__(5111);+      const _useintersection = __webpack_require__(6873);+      const _getdomainlocale = __webpack_require__(4554);+      const _addbasepath = __webpack_require__(9567);+      const _usemergedref = __webpack_require__(4308);+      const _erroronce = __webpack_require__(8910);       const prefetched = new Set();       function prefetch(router, href, as, options) {         if (false) {@@ -436,7 +434,167 @@       /***/     },-    /***/ 3981: /***/ (module, exports, __webpack_require__) => {+    /***/ 3072: /***/ (+      __unused_webpack_module,+      __webpack_exports__,+      __webpack_require__+    ) => {+      "use strict";+      __webpack_require__.r(__webpack_exports__);+      /* harmony export */ __webpack_require__.d(__webpack_exports__, {+        /* harmony export */ __N_SSP: () => /* binding */ __N_SSP,+        /* harmony export */ default: () => __WEBPACK_DEFAULT_EXPORT__,+        /* harmony export */+      });+      /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ =+        __webpack_require__(1503);+      /* harmony import */ var next_link__WEBPACK_IMPORTED_MODULE_1__ =+        __webpack_require__(6929);+      /* harmony import */ var next_link__WEBPACK_IMPORTED_MODULE_1___default =+        /*#__PURE__*/ __webpack_require__.n(+          next_link__WEBPACK_IMPORTED_MODULE_1__+        );++      function aLink(props) {+        return /*#__PURE__*/ (0,+        react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {+          children: [+            /*#__PURE__*/ (0,+            react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("h3", {+              children: "A Link page!",+            }),+            /*#__PURE__*/ (0,+            react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(+              next_link__WEBPACK_IMPORTED_MODULE_1___default(),+              {+                href: "/",+                children: "Go to /",+              }+            ),+          ],+        });+      }+      var __N_SSP = true;+      /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = aLink;++      /***/+    },++    /***/ 4308: /***/ (module, exports, __webpack_require__) => {+      "use strict";++      Object.defineProperty(exports, "__esModule", {+        value: true,+      });+      Object.defineProperty(exports, "useMergedRef", {+        enumerable: true,+        get: function () {+          return useMergedRef;+        },+      });+      const _react = __webpack_require__(2223);+      function useMergedRef(refA, refB) {+        const cleanupA = (0, _react.useRef)(null);+        const cleanupB = (0, _react.useRef)(null);+        // NOTE: In theory, we could skip the wrapping if only one of the refs is non-null.+        // (this happens often if the user doesn't pass a ref to Link/Form/Image)+        // But this can cause us to leak a cleanup-ref into user code (previously via `<Link legacyBehavior>`),+        // and the user might pass that ref into ref-merging library that doesn't support cleanup refs+        // (because it hasn't been updated for React 19)+        // which can then cause things to blow up, because a cleanup-returning ref gets called with `null`.+        // So in practice, it's safer to be defensive and always wrap the ref, even on React 19.+        return (0, _react.useCallback)(+          (current) => {+            if (current === null) {+              const cleanupFnA = cleanupA.current;+              if (cleanupFnA) {+                cleanupA.current = null;+                cleanupFnA();+              }+              const cleanupFnB = cleanupB.current;+              if (cleanupFnB) {+                cleanupB.current = null;+                cleanupFnB();+              }+            } else {+              if (refA) {+                cleanupA.current = applyRef(refA, current);+              }+              if (refB) {+                cleanupB.current = applyRef(refB, current);+              }+            }+          },+          [refA, refB]+        );+      }+      function applyRef(refA, current) {+        if (typeof refA === "function") {+          const cleanup = refA(current);+          if (typeof cleanup === "function") {+            return cleanup;+          } else {+            return () => refA(null);+          }+        } else {+          refA.current = current;+          return () => {+            refA.current = null;+          };+        }+      }+      if (+        (typeof exports.default === "function" ||+          (typeof exports.default === "object" && exports.default !== null)) &&+        typeof exports.default.__esModule === "undefined"+      ) {+        Object.defineProperty(exports.default, "__esModule", {+          value: true,+        });+        Object.assign(exports.default, exports);+        module.exports = exports.default;+      } //# sourceMappingURL=use-merged-ref.js.map++      /***/+    },++    /***/ 4554: /***/ (module, exports, __webpack_require__) => {+      "use strict";++      Object.defineProperty(exports, "__esModule", {+        value: true,+      });+      Object.defineProperty(exports, "getDomainLocale", {+        enumerable: true,+        get: function () {+          return getDomainLocale;+        },+      });+      const _normalizetrailingslash = __webpack_require__(7740);+      const basePath =+        /* unused pure expression or super */ null && (false || "");+      function getDomainLocale(path, locale, locales, domainLocales) {+        if (false) {+        } else {+          return false;+        }+      }+      if (+        (typeof exports.default === "function" ||+          (typeof exports.default === "object" && exports.default !== null)) &&+        typeof exports.default.__esModule === "undefined"+      ) {+        Object.defineProperty(exports.default, "__esModule", {+          value: true,+        });+        Object.assign(exports.default, exports);+        module.exports = exports.default;+      } //# sourceMappingURL=get-domain-locale.js.map++      /***/+    },++    /***/ 6873: /***/ (module, exports, __webpack_require__) => {       "use strict";        Object.defineProperty(exports, "__esModule", {@@ -449,7 +607,7 @@         },       });       const _react = __webpack_require__(2223);-      const _requestidlecallback = __webpack_require__(1472);+      const _requestidlecallback = __webpack_require__(6892);       const hasIntersectionObserver =         typeof IntersectionObserver === "function";       const observers = new Map();@@ -561,189 +719,31 @@       /***/     },-    /***/ 4206: /***/ (module, exports, __webpack_require__) => {-      "use strict";--      Object.defineProperty(exports, "__esModule", {-        value: true,-      });-      Object.defineProperty(exports, "getDomainLocale", {-        enumerable: true,-        get: function () {-          return getDomainLocale;-        },-      });-      const _normalizetrailingslash = __webpack_require__(6704);-      const basePath =-        /* unused pure expression or super */ null && (false || "");-      function getDomainLocale(path, locale, locales, domainLocales) {-        if (false) {-        } else {-          return false;-        }-      }-      if (-        (typeof exports.default === "function" ||-          (typeof exports.default === "object" && exports.default !== null)) &&-        typeof exports.default.__esModule === "undefined"-      ) {-        Object.defineProperty(exports.default, "__esModule", {-          value: true,-        });-        Object.assign(exports.default, exports);-        module.exports = exports.default;-      } //# sourceMappingURL=get-domain-locale.js.map--      /***/-    },--    /***/ 6691: /***/ (+    /***/ 6929: /***/ (       module,       __unused_webpack_exports,       __webpack_require__     ) => {-      module.exports = __webpack_require__(3262);+      module.exports = __webpack_require__(3066);        /***/     },-    /***/ 6771: /***/ (-      __unused_webpack_module,-      __unused_webpack_exports,-      __webpack_require__-    ) => {-      (window.__NEXT_P = window.__NEXT_P || []).push([-        "/link",-        function () {-          return __webpack_require__(8178);-        },-      ]);-      if (false) {-      }--      /***/-    },--    /***/ 6848: /***/ (module, exports, __webpack_require__) => {+    /***/ 8910: /***/ (__unused_webpack_module, exports) => {       "use strict";        Object.defineProperty(exports, "__esModule", {         value: true,       });-      Object.defineProperty(exports, "useMergedRef", {+      Object.defineProperty(exports, "errorOnce", {         enumerable: true,         get: function () {-          return useMergedRef;+          return errorOnce;         },       });-      const _react = __webpack_require__(2223);-      function useMergedRef(refA, refB) {-        const cleanupA = (0, _react.useRef)(null);-        const cleanupB = (0, _react.useRef)(null);-        // NOTE: In theory, we could skip the wrapping if only one of the refs is non-null.-        // (this happens often if the user doesn't pass a ref to Link/Form/Image)-        // But this can cause us to leak a cleanup-ref into user code (previously via `<Link legacyBehavior>`),-        // and the user might pass that ref into ref-merging library that doesn't support cleanup refs-        // (because it hasn't been updated for React 19)-        // which can then cause things to blow up, because a cleanup-returning ref gets called with `null`.-        // So in practice, it's safer to be defensive and always wrap the ref, even on React 19.-        return (0, _react.useCallback)(-          (current) => {-            if (current === null) {-              const cleanupFnA = cleanupA.current;-              if (cleanupFnA) {-                cleanupA.current = null;-                cleanupFnA();-              }-              const cleanupFnB = cleanupB.current;-              if (cleanupFnB) {-                cleanupB.current = null;-                cleanupFnB();-              }-            } else {-              if (refA) {-                cleanupA.current = applyRef(refA, current);-              }-              if (refB) {-                cleanupB.current = applyRef(refB, current);-              }-            }-          },-          [refA, refB]-        );-      }-      function applyRef(refA, current) {-        if (typeof refA === "function") {-          const cleanup = refA(current);-          if (typeof cleanup === "function") {-            return cleanup;-          } else {-            return () => refA(null);-          }-        } else {-          refA.current = current;-          return () => {-            refA.current = null;-          };-        }-      }-      if (-        (typeof exports.default === "function" ||-          (typeof exports.default === "object" && exports.default !== null)) &&-        typeof exports.default.__esModule === "undefined"-      ) {-        Object.defineProperty(exports.default, "__esModule", {-          value: true,-        });-        Object.assign(exports.default, exports);-        module.exports = exports.default;-      } //# sourceMappingURL=use-merged-ref.js.map--      /***/-    },--    /***/ 8178: /***/ (-      __unused_webpack_module,-      __webpack_exports__,-      __webpack_require__-    ) => {-      "use strict";-      __webpack_require__.r(__webpack_exports__);-      /* harmony export */ __webpack_require__.d(__webpack_exports__, {-        /* harmony export */ __N_SSP: () => /* binding */ __N_SSP,-        /* harmony export */ default: () => __WEBPACK_DEFAULT_EXPORT__,-        /* harmony export */-      });-      /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ =-        __webpack_require__(1503);-      /* harmony import */ var next_link__WEBPACK_IMPORTED_MODULE_1__ =-        __webpack_require__(6691);-      /* harmony import */ var next_link__WEBPACK_IMPORTED_MODULE_1___default =-        /*#__PURE__*/ __webpack_require__.n(-          next_link__WEBPACK_IMPORTED_MODULE_1__-        );--      function aLink(props) {-        return /*#__PURE__*/ (0,-        react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {-          children: [-            /*#__PURE__*/ (0,-            react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("h3", {-              children: "A Link page!",-            }),-            /*#__PURE__*/ (0,-            react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(-              next_link__WEBPACK_IMPORTED_MODULE_1___default(),-              {-                href: "/",-                children: "Go to /",-              }-            ),-          ],-        });-      }-      var __N_SSP = true;-      /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = aLink;+      let errorOnce = (_) => {};+      if (false) {+      } //# sourceMappingURL=error-once.js.map        /***/     },@@ -753,7 +753,7 @@     /******/ var __webpack_exec__ = (moduleId) =>       __webpack_require__((__webpack_require__.s = moduleId));     /******/ __webpack_require__.O(0, [636, 6593, 8792], () =>-      __webpack_exec__(6771)+      __webpack_exec__(2025)     );     /******/ var __webpack_exports__ = __webpack_require__.O();     /******/ _N_E = __webpack_exports__;
Diff forrouterDirect-HASH.js
@@ -1,7 +1,24 @@ (self["webpackChunk_N_E"] = self["webpackChunk_N_E"] || []).push([   [188],   {-    /***/ 286: /***/ (+    /***/ 417: /***/ (+      __unused_webpack_module,+      __unused_webpack_exports,+      __webpack_require__+    ) => {+      (window.__NEXT_P = window.__NEXT_P || []).push([+        "/routerDirect",+        function () {+          return __webpack_require__(504);+        },+      ]);+      if (false) {+      }++      /***/+    },++    /***/ 504: /***/ (       __unused_webpack_module,       __webpack_exports__,       __webpack_require__@@ -16,7 +33,7 @@       /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ =         __webpack_require__(1503);       /* harmony import */ var next_router__WEBPACK_IMPORTED_MODULE_1__ =-        __webpack_require__(7798);+        __webpack_require__(1840);       /* harmony import */ var next_router__WEBPACK_IMPORTED_MODULE_1___default =         /*#__PURE__*/ __webpack_require__.n(           next_router__WEBPACK_IMPORTED_MODULE_1__@@ -36,29 +53,12 @@       /***/     },-    /***/ 4283: /***/ (-      __unused_webpack_module,-      __unused_webpack_exports,-      __webpack_require__-    ) => {-      (window.__NEXT_P = window.__NEXT_P || []).push([-        "/routerDirect",-        function () {-          return __webpack_require__(286);-        },-      ]);-      if (false) {-      }--      /***/-    },--    /***/ 7798: /***/ (+    /***/ 1840: /***/ (       module,       __unused_webpack_exports,       __webpack_require__     ) => {-      module.exports = __webpack_require__(9587);+      module.exports = __webpack_require__(1903);        /***/     },@@ -68,7 +68,7 @@     /******/ var __webpack_exec__ = (moduleId) =>       __webpack_require__((__webpack_require__.s = moduleId));     /******/ __webpack_require__.O(0, [636, 6593, 8792], () =>-      __webpack_exec__(4283)+      __webpack_exec__(417)     );     /******/ var __webpack_exports__ = __webpack_require__.O();     /******/ _N_E = __webpack_exports__;
Diff forscript-HASH.js
@@ -1,7 +1,34 @@ (self["webpackChunk_N_E"] = self["webpackChunk_N_E"] || []).push([   [1209],   {-    /***/ 661: /***/ (+    /***/ 2398: /***/ (+      module,+      __unused_webpack_exports,+      __webpack_require__+    ) => {+      module.exports = __webpack_require__(2397);++      /***/+    },++    /***/ 4305: /***/ (+      __unused_webpack_module,+      __unused_webpack_exports,+      __webpack_require__+    ) => {+      (window.__NEXT_P = window.__NEXT_P || []).push([+        "/script",+        function () {+          return __webpack_require__(8543);+        },+      ]);+      if (false) {+      }++      /***/+    },++    /***/ 8543: /***/ (       __unused_webpack_module,       __webpack_exports__,       __webpack_require__@@ -16,7 +43,7 @@       /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ =         __webpack_require__(1503);       /* harmony import */ var next_script__WEBPACK_IMPORTED_MODULE_1__ =-        __webpack_require__(5964);+        __webpack_require__(2398);       /* harmony import */ var next_script__WEBPACK_IMPORTED_MODULE_1___default =         /*#__PURE__*/ __webpack_require__.n(           next_script__WEBPACK_IMPORTED_MODULE_1__@@ -48,40 +75,13 @@        /***/     },--    /***/ 5964: /***/ (-      module,-      __unused_webpack_exports,-      __webpack_require__-    ) => {-      module.exports = __webpack_require__(297);--      /***/-    },--    /***/ 8803: /***/ (-      __unused_webpack_module,-      __unused_webpack_exports,-      __webpack_require__-    ) => {-      (window.__NEXT_P = window.__NEXT_P || []).push([-        "/script",-        function () {-          return __webpack_require__(661);-        },-      ]);-      if (false) {-      }--      /***/-    },   },   /******/ (__webpack_require__) => {     // webpackRuntimeModules     /******/ var __webpack_exec__ = (moduleId) =>       __webpack_require__((__webpack_require__.s = moduleId));     /******/ __webpack_require__.O(0, [636, 6593, 8792], () =>-      __webpack_exec__(8803)+      __webpack_exec__(4305)     );     /******/ var __webpack_exports__ = __webpack_require__.O();     /******/ _N_E = __webpack_exports__;
Diff forwithRouter-HASH.js
@@ -1,24 +1,17 @@ (self["webpackChunk_N_E"] = self["webpackChunk_N_E"] || []).push([   [3263],   {-    /***/ 3163: /***/ (-      __unused_webpack_module,+    /***/ 1840: /***/ (+      module,       __unused_webpack_exports,       __webpack_require__     ) => {-      (window.__NEXT_P = window.__NEXT_P || []).push([-        "/withRouter",-        function () {-          return __webpack_require__(3295);-        },-      ]);-      if (false) {-      }+      module.exports = __webpack_require__(1903);        /***/     },-    /***/ 3295: /***/ (+    /***/ 2037: /***/ (       __unused_webpack_module,       __webpack_exports__,       __webpack_require__@@ -33,7 +26,7 @@       /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ =         __webpack_require__(1503);       /* harmony import */ var next_router__WEBPACK_IMPORTED_MODULE_1__ =-        __webpack_require__(7798);+        __webpack_require__(1840);       /* harmony import */ var next_router__WEBPACK_IMPORTED_MODULE_1___default =         /*#__PURE__*/ __webpack_require__.n(           next_router__WEBPACK_IMPORTED_MODULE_1__@@ -52,12 +45,19 @@       /***/     },-    /***/ 7798: /***/ (-      module,+    /***/ 4041: /***/ (+      __unused_webpack_module,       __unused_webpack_exports,       __webpack_require__     ) => {-      module.exports = __webpack_require__(9587);+      (window.__NEXT_P = window.__NEXT_P || []).push([+        "/withRouter",+        function () {+          return __webpack_require__(2037);+        },+      ]);+      if (false) {+      }        /***/     },@@ -67,7 +67,7 @@     /******/ var __webpack_exec__ = (moduleId) =>       __webpack_require__((__webpack_require__.s = moduleId));     /******/ __webpack_require__.O(0, [636, 6593, 8792], () =>-      __webpack_exec__(3163)+      __webpack_exec__(4041)     );     /******/ var __webpack_exports__ = __webpack_require__.O();     /******/ _N_E = __webpack_exports__;
Diff for4498-HASH.js
failed to diff
Diff for9225-HASH.js
@@ -1,32 +1,81 @@ "use strict"; (self["webpackChunk_N_E"] = self["webpackChunk_N_E"] || []).push([-  [9225],+  [8439],   {-    /***/ 2: /***/ (__unused_webpack_module, exports, __webpack_require__) => {+    /***/ 405: /***/ (+      __unused_webpack_module,+      exports,+      __webpack_require__+    ) => {       Object.defineProperty(exports, "__esModule", {         value: true,       });-      Object.defineProperty(exports, "ImageConfigContext", {+      Object.defineProperty(exports, "default", {         enumerable: true,         get: function () {-          return ImageConfigContext;+          return SideEffect;         },       });-      const _interop_require_default = __webpack_require__(9010);-      const _react = /*#__PURE__*/ _interop_require_default._(-        __webpack_require__(8879)-      );-      const _imageconfig = __webpack_require__(1686);-      const ImageConfigContext = _react.default.createContext(-        _imageconfig.imageConfigDefault-      );-      if (false) {-      } //# sourceMappingURL=image-config-context.shared-runtime.js.map+      const _react = __webpack_require__(1774);+      const isServer = "object" === "undefined";+      const useClientOnlyLayoutEffect = isServer+        ? () => {}+        : _react.useLayoutEffect;+      const useClientOnlyEffect = isServer ? () => {} : _react.useEffect;+      function SideEffect(props) {+        const { headManager, reduceComponentsToState } = props;+        function emitChange() {+          if (headManager && headManager.mountedInstances) {+            const headElements = _react.Children.toArray(+              Array.from(headManager.mountedInstances).filter(Boolean)+            );+            headManager.updateHead(reduceComponentsToState(headElements));+          }+        }+        if (isServer) {+          headManager?.mountedInstances?.add(props.children);+          emitChange();+        }+        useClientOnlyLayoutEffect(() => {+          headManager?.mountedInstances?.add(props.children);+          return () => {+            headManager?.mountedInstances?.delete(props.children);+          };+        });+        // We need to call `updateHead` method whenever the `SideEffect` is trigger in all+        // life-cycles: mount, update, unmount. However, if there are multiple `SideEffect`s+        // being rendered, we only trigger the method from the last one.+        // This is ensured by keeping the last unflushed `updateHead` in the `_pendingUpdate`+        // singleton in the layout effect pass, and actually trigger it in the effect pass.+        useClientOnlyLayoutEffect(() => {+          if (headManager) {+            headManager._pendingUpdate = emitChange;+          }+          return () => {+            if (headManager) {+              headManager._pendingUpdate = emitChange;+            }+          };+        });+        useClientOnlyEffect(() => {+          if (headManager && headManager._pendingUpdate) {+            headManager._pendingUpdate();+            headManager._pendingUpdate = null;+          }+          return () => {+            if (headManager && headManager._pendingUpdate) {+              headManager._pendingUpdate();+              headManager._pendingUpdate = null;+            }+          };+        });+        return null;+      } //# sourceMappingURL=side-effect.js.map        /***/     },-    /***/ 1169: /***/ (+    /***/ 1155: /***/ (       __unused_webpack_module,       exports,       __webpack_require__@@ -40,9 +89,9 @@           return getImgProps;         },       });-      const _warnonce = __webpack_require__(4352);-      const _imageblursvg = __webpack_require__(2314);-      const _imageconfig = __webpack_require__(1686);+      const _warnonce = __webpack_require__(5358);+      const _imageblursvg = __webpack_require__(6924);+      const _imageconfig = __webpack_require__(9712);       const VALID_LOADING_VALUES =         /* unused pure expression or super */ null && [           "lazy",@@ -473,245 +522,60 @@       /***/     },-    /***/ 1666: /***/ (module, exports, __webpack_require__) => {-      /* __next_internal_client_entry_do_not_use__  cjs */+    /***/ 1417: /***/ (+      __unused_webpack_module,+      exports,+      __webpack_require__+    ) => {       Object.defineProperty(exports, "__esModule", {         value: true,       });-      0 && 0;-      function _export(target, all) {-        for (var name in all)-          Object.defineProperty(target, name, {-            enumerable: true,-            get: all[name],-          });-      }-      _export(exports, {-        default: function () {+      Object.defineProperty(exports, "default", {+        enumerable: true,+        get: function () {           return _default;         },-        defaultHead: function () {-          return defaultHead;-        },       });-      const _interop_require_default = __webpack_require__(9010);-      const _interop_require_wildcard = __webpack_require__(2275);-      const _jsxruntime = __webpack_require__(1024);-      const _react = /*#__PURE__*/ _interop_require_wildcard._(-        __webpack_require__(8879)-      );-      const _sideeffect = /*#__PURE__*/ _interop_require_default._(-        __webpack_require__(2543)-      );-      const _headmanagercontextsharedruntime = __webpack_require__(5428);-      const _warnonce = __webpack_require__(4352);-      function defaultHead() {-        const head = [-          /*#__PURE__*/ (0, _jsxruntime.jsx)(-            "meta",-            {-              charSet: "utf-8",-            },-            "charset"-          ),-          /*#__PURE__*/ (0, _jsxruntime.jsx)(-            "meta",+      const _findclosestquality = __webpack_require__(1639);+      function defaultLoader({ config, src, width, quality }) {+        if (+          src.startsWith("/") &&+          src.includes("?") &&+          config.localPatterns?.length === 1 &&+          config.localPatterns[0].pathname === "**" &&+          config.localPatterns[0].search === ""+        ) {+          throw Object.defineProperty(+            new Error(+              `Image with src "${src}" is using a query string which is not configured in images.localPatterns.` ++                `\nRead more: https://nextjs.org/docs/messages/next-image-unconfigured-localpatterns`+            ),+            "__NEXT_ERROR_CODE",             {-              name: "viewport",-              content: "width=device-width",-            },-            "viewport"-          ),-        ];-        return head;-      }-      function onlyReactElement(list, child) {-        // React children can be "string" or "number" in this case we ignore them for backwards compat-        if (typeof child === "string" || typeof child === "number") {-          return list;-        }-        // Adds support for React.Fragment-        if (child.type === _react.default.Fragment) {-          return list.concat(-            _react.default.Children.toArray(child.props.children).reduce(-              (fragmentList, fragmentChild) => {-                if (-                  typeof fragmentChild === "string" ||-                  typeof fragmentChild === "number"-                ) {-                  return fragmentList;-                }-                return fragmentList.concat(fragmentChild);-              },-              []-            )+              value: "E871",+              enumerable: false,+              configurable: true,+            }           );         }-        return list.concat(child);-      }-      const METATYPES = ["name", "httpEquiv", "charSet", "itemProp"];-      /*- returns a function for filtering head child elements- which shouldn't be duplicated, like <title/>- Also adds support for deduplicated `key` properties-*/ function unique() {-        const keys = new Set();-        const tags = new Set();-        const metaTypes = new Set();-        const metaCategories = {};-        return (h) => {-          let isUnique = true;-          let hasKey = false;-          if (h.key && typeof h.key !== "number" && h.key.indexOf("$") > 0) {-            hasKey = true;-            const key = h.key.slice(h.key.indexOf("$") + 1);-            if (keys.has(key)) {-              isUnique = false;-            } else {-              keys.add(key);-            }-          }-          // eslint-disable-next-line default-case-          switch (h.type) {-            case "title":-            case "base":-              if (tags.has(h.type)) {-                isUnique = false;-              } else {-                tags.add(h.type);-              }-              break;-            case "meta":-              for (let i = 0, len = METATYPES.length; i < len; i++) {-                const metatype = METATYPES[i];-                if (!h.props.hasOwnProperty(metatype)) continue;-                if (metatype === "charSet") {-                  if (metaTypes.has(metatype)) {-                    isUnique = false;-                  } else {-                    metaTypes.add(metatype);-                  }-                } else {-                  const category = h.props[metatype];-                  const categories = metaCategories[metatype] || new Set();-                  if (-                    (metatype !== "name" || !hasKey) &&-                    categories.has(category)-                  ) {-                    isUnique = false;-                  } else {-                    categories.add(category);-                    metaCategories[metatype] = categories;-                  }-                }-              }-              break;-          }-          return isUnique;-        };-      }-      /**-       *-       * @param headChildrenElements List of children of <Head>-       */ function reduceComponents(headChildrenElements) {-        return headChildrenElements-          .reduce(onlyReactElement, [])-          .reverse()-          .concat(defaultHead().reverse())-          .filter(unique())-          .reverse()-          .map((c, i) => {-            const key = c.key || i;-            if (false) {-            }-            return /*#__PURE__*/ _react.default.cloneElement(c, {-              key,-            });-          });-      }-      /**-       * This component injects elements to `<head>` of your page.-       * To avoid duplicated `tags` in `<head>` you can use the `key` property, which will make sure every tag is only rendered once.-       */ function Head({ children }) {-        const headManager = (0, _react.useContext)(-          _headmanagercontextsharedruntime.HeadManagerContext-        );-        return /*#__PURE__*/ (0, _jsxruntime.jsx)(_sideeffect.default, {-          reduceComponentsToState: reduceComponents,-          headManager: headManager,-          children: children,-        });-      }-      const _default = Head;-      if (-        (typeof exports.default === "function" ||-          (typeof exports.default === "object" && exports.default !== null)) &&-        typeof exports.default.__esModule === "undefined"-      ) {-        Object.defineProperty(exports.default, "__esModule", {-          value: true,-        });-        Object.assign(exports.default, exports);-        module.exports = exports.default;-      } //# sourceMappingURL=head.js.map--      /***/-    },--    /***/ 1686: /***/ (__unused_webpack_module, exports) => {-      Object.defineProperty(exports, "__esModule", {-        value: true,-      });-      0 && 0;-      function _export(target, all) {-        for (var name in all)-          Object.defineProperty(target, name, {-            enumerable: true,-            get: all[name],-          });+        if (false) {+        }+        const q = (0, _findclosestquality.findClosestQuality)(quality, config);+        return `${config.path}?url=${encodeURIComponent(+          src+        )}&w=${width}&q=${q}${+          src.startsWith("/_next/static/media/") && false ? 0 : ""+        }`;       }-      _export(exports, {-        VALID_LOADERS: function () {-          return VALID_LOADERS;-        },-        imageConfigDefault: function () {-          return imageConfigDefault;-        },-      });-      const VALID_LOADERS = [-        "default",-        "imgix",-        "cloudinary",-        "akamai",-        "custom",-      ];-      const imageConfigDefault = {-        deviceSizes: [640, 750, 828, 1080, 1200, 1920, 2048, 3840],-        imageSizes: [32, 48, 64, 96, 128, 256, 384],-        path: "/_next/image",-        loader: "default",-        loaderFile: "",-        /**-         * @deprecated Use `remotePatterns` instead to protect your application from malicious users.-         */ domains: [],-        disableStaticImages: false,-        minimumCacheTTL: 14400,-        formats: ["image/webp"],-        maximumRedirects: 3,-        dangerouslyAllowLocalIP: false,-        dangerouslyAllowSVG: false,-        contentSecurityPolicy: `script-src 'none'; frame-src 'none'; sandbox;`,-        contentDispositionType: "attachment",-        localPatterns: undefined,-        remotePatterns: [],-        qualities: [75],-        unoptimized: false,-      }; //# sourceMappingURL=image-config.js.map+      // We use this to determine if the import is the default loader+      // or a custom loader defined by the user in next.config.js+      defaultLoader.__next_img_default = true;+      const _default = defaultLoader; //# sourceMappingURL=image-loader.js.map        /***/     },-    /***/ 2285: /***/ (__unused_webpack_module, exports) => {+    /***/ 1639: /***/ (__unused_webpack_module, exports) => {       Object.defineProperty(exports, "__esModule", {         value: true,       });@@ -735,7 +599,35 @@       /***/     },-    /***/ 2314: /***/ (__unused_webpack_module, exports) => {+    /***/ 2896: /***/ (+      __unused_webpack_module,+      exports,+      __webpack_require__+    ) => {+      Object.defineProperty(exports, "__esModule", {+        value: true,+      });+      Object.defineProperty(exports, "ImageConfigContext", {+        enumerable: true,+        get: function () {+          return ImageConfigContext;+        },+      });+      const _interop_require_default = __webpack_require__(2570);+      const _react = /*#__PURE__*/ _interop_require_default._(+        __webpack_require__(1774)+      );+      const _imageconfig = __webpack_require__(9712);+      const ImageConfigContext = _react.default.createContext(+        _imageconfig.imageConfigDefault+      );+      if (false) {+      } //# sourceMappingURL=image-config-context.shared-runtime.js.map++      /***/+    },++    /***/ 6924: /***/ (__unused_webpack_module, exports) => {       /**        * A shared function, used on both client and server, to generate a SVG blur placeholder.        */@@ -774,133 +666,7 @@       /***/     },-    /***/ 2543: /***/ (-      __unused_webpack_module,-      exports,-      __webpack_require__-    ) => {-      Object.defineProperty(exports, "__esModule", {-        value: true,-      });-      Object.defineProperty(exports, "default", {-        enumerable: true,-        get: function () {-          return SideEffect;-        },-      });-      const _react = __webpack_require__(8879);-      const isServer = "object" === "undefined";-      const useClientOnlyLayoutEffect = isServer-        ? () => {}-        : _react.useLayoutEffect;-      const useClientOnlyEffect = isServer ? () => {} : _react.useEffect;-      function SideEffect(props) {-        const { headManager, reduceComponentsToState } = props;-        function emitChange() {-          if (headManager && headManager.mountedInstances) {-            const headElements = _react.Children.toArray(-              Array.from(headManager.mountedInstances).filter(Boolean)-            );-            headManager.updateHead(reduceComponentsToState(headElements));-          }-        }-        if (isServer) {-          headManager?.mountedInstances?.add(props.children);-          emitChange();-        }-        useClientOnlyLayoutEffect(() => {-          headManager?.mountedInstances?.add(props.children);-          return () => {-            headManager?.mountedInstances?.delete(props.children);-          };-        });-        // We need to call `updateHead` method whenever the `SideEffect` is trigger in all-        // life-cycles: mount, update, unmount. However, if there are multiple `SideEffect`s-        // being rendered, we only trigger the method from the last one.-        // This is ensured by keeping the last unflushed `updateHead` in the `_pendingUpdate`-        // singleton in the layout effect pass, and actually trigger it in the effect pass.-        useClientOnlyLayoutEffect(() => {-          if (headManager) {-            headManager._pendingUpdate = emitChange;-          }-          return () => {-            if (headManager) {-              headManager._pendingUpdate = emitChange;-            }-          };-        });-        useClientOnlyEffect(() => {-          if (headManager && headManager._pendingUpdate) {-            headManager._pendingUpdate();-            headManager._pendingUpdate = null;-          }-          return () => {-            if (headManager && headManager._pendingUpdate) {-              headManager._pendingUpdate();-              headManager._pendingUpdate = null;-            }-          };-        });-        return null;-      } //# sourceMappingURL=side-effect.js.map--      /***/-    },--    /***/ 8035: /***/ (-      __unused_webpack_module,-      exports,-      __webpack_require__-    ) => {-      Object.defineProperty(exports, "__esModule", {-        value: true,-      });-      Object.defineProperty(exports, "default", {-        enumerable: true,-        get: function () {-          return _default;-        },-      });-      const _findclosestquality = __webpack_require__(2285);-      function defaultLoader({ config, src, width, quality }) {-        if (-          src.startsWith("/") &&-          src.includes("?") &&-          config.localPatterns?.length === 1 &&-          config.localPatterns[0].pathname === "**" &&-          config.localPatterns[0].search === ""-        ) {-          throw Object.defineProperty(-            new Error(-              `Image with src "${src}" is using a query string which is not configured in images.localPatterns.` +-                `\nRead more: https://nextjs.org/docs/messages/next-image-unconfigured-localpatterns`-            ),-            "__NEXT_ERROR_CODE",-            {-              value: "E871",-              enumerable: false,-              configurable: true,-            }-          );-        }-        if (false) {-        }-        const q = (0, _findclosestquality.findClosestQuality)(quality, config);-        return `${config.path}?url=${encodeURIComponent(-          src-        )}&w=${width}&q=${q}${-          src.startsWith("/_next/static/media/") && false ? 0 : ""-        }`;-      }-      // We use this to determine if the import is the default loader-      // or a custom loader defined by the user in next.config.js-      defaultLoader.__next_img_default = true;-      const _default = defaultLoader; //# sourceMappingURL=image-loader.js.map--      /***/-    },--    /***/ 8848: /***/ (module, exports, __webpack_require__) => {+    /***/ 7614: /***/ (module, exports, __webpack_require__) => {       Object.defineProperty(exports, "__esModule", {         value: true,       });@@ -910,7 +676,7 @@           return useMergedRef;         },       });-      const _react = __webpack_require__(8879);+      const _react = __webpack_require__(1774);       function useMergedRef(refA, refB) {         const cleanupA = (0, _react.useRef)(null);         const cleanupB = (0, _react.useRef)(null);@@ -976,32 +742,7 @@       /***/     },-    /***/ 9059: /***/ (-      __unused_webpack_module,-      exports,-      __webpack_require__-    ) => {-      Object.defineProperty(exports, "__esModule", {-        value: true,-      });-      Object.defineProperty(exports, "RouterContext", {-        enumerable: true,-        get: function () {-          return RouterContext;-        },-      });-      const _interop_require_default = __webpack_require__(9010);-      const _react = /*#__PURE__*/ _interop_require_default._(-        __webpack_require__(8879)-      );-      const RouterContext = _react.default.createContext(null);-      if (false) {-      } //# sourceMappingURL=router-context.shared-runtime.js.map--      /***/-    },--    /***/ 9225: /***/ (module, exports, __webpack_require__) => {+    /***/ 8439: /***/ (module, exports, __webpack_require__) => {       /* __next_internal_client_entry_do_not_use__  cjs */       Object.defineProperty(exports, "__esModule", {         value: true,@@ -1012,27 +753,27 @@           return Image;         },       });-      const _interop_require_default = __webpack_require__(9010);-      const _interop_require_wildcard = __webpack_require__(2275);-      const _jsxruntime = __webpack_require__(1024);+      const _interop_require_default = __webpack_require__(2570);+      const _interop_require_wildcard = __webpack_require__(5643);+      const _jsxruntime = __webpack_require__(2014);       const _react = /*#__PURE__*/ _interop_require_wildcard._(-        __webpack_require__(8879)+        __webpack_require__(1774)       );       const _reactdom = /*#__PURE__*/ _interop_require_default._(-        __webpack_require__(3869)+        __webpack_require__(7499)       );       const _head = /*#__PURE__*/ _interop_require_default._(-        __webpack_require__(1666)+        __webpack_require__(9452)       );-      const _getimgprops = __webpack_require__(1169);-      const _imageconfig = __webpack_require__(1686);-      const _imageconfigcontextsharedruntime = __webpack_require__(2);-      const _warnonce = __webpack_require__(4352);-      const _routercontextsharedruntime = __webpack_require__(9059);+      const _getimgprops = __webpack_require__(1155);+      const _imageconfig = __webpack_require__(9712);+      const _imageconfigcontextsharedruntime = __webpack_require__(2896);+      const _warnonce = __webpack_require__(5358);+      const _routercontextsharedruntime = __webpack_require__(9813);       const _imageloader = /*#__PURE__*/ _interop_require_default._(-        __webpack_require__(8035)+        __webpack_require__(1417)       );-      const _usemergedref = __webpack_require__(8848);+      const _usemergedref = __webpack_require__(7614);       // This is replaced by webpack define plugin       const configEnv = {         deviceSizes: [640, 750, 828, 1080, 1200, 1920, 2048, 3840],@@ -1358,5 +1099,268 @@        /***/     },++    /***/ 9452: /***/ (module, exports, __webpack_require__) => {+      /* __next_internal_client_entry_do_not_use__  cjs */+      Object.defineProperty(exports, "__esModule", {+        value: true,+      });+      0 && 0;+      function _export(target, all) {+        for (var name in all)+          Object.defineProperty(target, name, {+            enumerable: true,+            get: all[name],+          });+      }+      _export(exports, {+        default: function () {+          return _default;+        },+        defaultHead: function () {+          return defaultHead;+        },+      });+      const _interop_require_default = __webpack_require__(2570);+      const _interop_require_wildcard = __webpack_require__(5643);+      const _jsxruntime = __webpack_require__(2014);+      const _react = /*#__PURE__*/ _interop_require_wildcard._(+        __webpack_require__(1774)+      );+      const _sideeffect = /*#__PURE__*/ _interop_require_default._(+        __webpack_require__(405)+      );+      const _headmanagercontextsharedruntime = __webpack_require__(5326);+      const _warnonce = __webpack_require__(5358);+      function defaultHead() {+        const head = [+          /*#__PURE__*/ (0, _jsxruntime.jsx)(+            "meta",+            {+              charSet: "utf-8",+            },+            "charset"+          ),+          /*#__PURE__*/ (0, _jsxruntime.jsx)(+            "meta",+            {+              name: "viewport",+              content: "width=device-width",+            },+            "viewport"+          ),+        ];+        return head;+      }+      function onlyReactElement(list, child) {+        // React children can be "string" or "number" in this case we ignore them for backwards compat+        if (typeof child === "string" || typeof child === "number") {+          return list;+        }+        // Adds support for React.Fragment+        if (child.type === _react.default.Fragment) {+          return list.concat(+            _react.default.Children.toArray(child.props.children).reduce(+              (fragmentList, fragmentChild) => {+                if (+                  typeof fragmentChild === "string" ||+                  typeof fragmentChild === "number"+                ) {+                  return fragmentList;+                }+                return fragmentList.concat(fragmentChild);+              },+              []+            )+          );+        }+        return list.concat(child);+      }+      const METATYPES = ["name", "httpEquiv", "charSet", "itemProp"];+      /*+ returns a function for filtering head child elements+ which shouldn't be duplicated, like <title/>+ Also adds support for deduplicated `key` properties+*/ function unique() {+        const keys = new Set();+        const tags = new Set();+        const metaTypes = new Set();+        const metaCategories = {};+        return (h) => {+          let isUnique = true;+          let hasKey = false;+          if (h.key && typeof h.key !== "number" && h.key.indexOf("$") > 0) {+            hasKey = true;+            const key = h.key.slice(h.key.indexOf("$") + 1);+            if (keys.has(key)) {+              isUnique = false;+            } else {+              keys.add(key);+            }+          }+          // eslint-disable-next-line default-case+          switch (h.type) {+            case "title":+            case "base":+              if (tags.has(h.type)) {+                isUnique = false;+              } else {+                tags.add(h.type);+              }+              break;+            case "meta":+              for (let i = 0, len = METATYPES.length; i < len; i++) {+                const metatype = METATYPES[i];+                if (!h.props.hasOwnProperty(metatype)) continue;+                if (metatype === "charSet") {+                  if (metaTypes.has(metatype)) {+                    isUnique = false;+                  } else {+                    metaTypes.add(metatype);+                  }+                } else {+                  const category = h.props[metatype];+                  const categories = metaCategories[metatype] || new Set();+                  if (+                    (metatype !== "name" || !hasKey) &&+                    categories.has(category)+                  ) {+                    isUnique = false;+                  } else {+                    categories.add(category);+                    metaCategories[metatype] = categories;+                  }+                }+              }+              break;+          }+          return isUnique;+        };+      }+      /**+       *+       * @param headChildrenElements List of children of <Head>+       */ function reduceComponents(headChildrenElements) {+        return headChildrenElements+          .reduce(onlyReactElement, [])+          .reverse()+          .concat(defaultHead().reverse())+          .filter(unique())+          .reverse()+          .map((c, i) => {+            const key = c.key || i;+            if (false) {+            }+            return /*#__PURE__*/ _react.default.cloneElement(c, {+              key,+            });+          });+      }+      /**+       * This component injects elements to `<head>` of your page.+       * To avoid duplicated `tags` in `<head>` you can use the `key` property, which will make sure every tag is only rendered once.+       */ function Head({ children }) {+        const headManager = (0, _react.useContext)(+          _headmanagercontextsharedruntime.HeadManagerContext+        );+        return /*#__PURE__*/ (0, _jsxruntime.jsx)(_sideeffect.default, {+          reduceComponentsToState: reduceComponents,+          headManager: headManager,+          children: children,+        });+      }+      const _default = Head;+      if (+        (typeof exports.default === "function" ||+          (typeof exports.default === "object" && exports.default !== null)) &&+        typeof exports.default.__esModule === "undefined"+      ) {+        Object.defineProperty(exports.default, "__esModule", {+          value: true,+        });+        Object.assign(exports.default, exports);+        module.exports = exports.default;+      } //# sourceMappingURL=head.js.map++      /***/+    },++    /***/ 9712: /***/ (__unused_webpack_module, exports) => {+      Object.defineProperty(exports, "__esModule", {+        value: true,+      });+      0 && 0;+      function _export(target, all) {+        for (var name in all)+          Object.defineProperty(target, name, {+            enumerable: true,+            get: all[name],+          });+      }+      _export(exports, {+        VALID_LOADERS: function () {+          return VALID_LOADERS;+        },+        imageConfigDefault: function () {+          return imageConfigDefault;+        },+      });+      const VALID_LOADERS = [+        "default",+        "imgix",+        "cloudinary",+        "akamai",+        "custom",+      ];+      const imageConfigDefault = {+        deviceSizes: [640, 750, 828, 1080, 1200, 1920, 2048, 3840],+        imageSizes: [32, 48, 64, 96, 128, 256, 384],+        path: "/_next/image",+        loader: "default",+        loaderFile: "",+        /**+         * @deprecated Use `remotePatterns` instead to protect your application from malicious users.+         */ domains: [],+        disableStaticImages: false,+        minimumCacheTTL: 14400,+        formats: ["image/webp"],+        maximumRedirects: 3,+        dangerouslyAllowLocalIP: false,+        dangerouslyAllowSVG: false,+        contentSecurityPolicy: `script-src 'none'; frame-src 'none'; sandbox;`,+        contentDispositionType: "attachment",+        localPatterns: undefined,+        remotePatterns: [],+        qualities: [75],+        unoptimized: false,+      }; //# sourceMappingURL=image-config.js.map++      /***/+    },++    /***/ 9813: /***/ (+      __unused_webpack_module,+      exports,+      __webpack_require__+    ) => {+      Object.defineProperty(exports, "__esModule", {+        value: true,+      });+      Object.defineProperty(exports, "RouterContext", {+        enumerable: true,+        get: function () {+          return RouterContext;+        },+      });+      const _interop_require_default = __webpack_require__(2570);+      const _react = /*#__PURE__*/ _interop_require_default._(+        __webpack_require__(1774)+      );+      const RouterContext = _react.default.createContext(null);+      if (false) {+      } //# sourceMappingURL=router-context.shared-runtime.js.map++      /***/+    },   }, ]);
Diff formain-HASH.js

Diff too large to display

Diff formain-app-HASH.js
@@ -1,64 +1,64 @@ (self["webpackChunk_N_E"] = self["webpackChunk_N_E"] || []).push([   [4977],   {-    /***/ 7854: /***/ () => {-      /* (ignored) */-      /***/-    },--    /***/ 9845: /***/ (+    /***/ 1793: /***/ (       __unused_webpack_module,       __unused_webpack_exports,       __webpack_require__     ) => {       Promise.resolve(/* import() eager */).then(-        __webpack_require__.t.bind(__webpack_require__, 7455, 23)+        __webpack_require__.t.bind(__webpack_require__, 7641, 23)       );       Promise.resolve(/* import() eager */).then(-        __webpack_require__.t.bind(__webpack_require__, 2436, 23)+        __webpack_require__.t.bind(__webpack_require__, 8833, 23)       );       Promise.resolve(/* import() eager */).then(-        __webpack_require__.t.bind(__webpack_require__, 4220, 23)+        __webpack_require__.t.bind(__webpack_require__, 202, 23)       );       Promise.resolve(/* import() eager */).then(-        __webpack_require__.t.bind(__webpack_require__, 6179, 23)+        __webpack_require__.t.bind(__webpack_require__, 5505, 23)       );       Promise.resolve(/* import() eager */).then(-        __webpack_require__.t.bind(__webpack_require__, 477, 23)+        __webpack_require__.t.bind(__webpack_require__, 9743, 23)       );       Promise.resolve(/* import() eager */).then(-        __webpack_require__.t.bind(__webpack_require__, 45, 23)+        __webpack_require__.t.bind(__webpack_require__, 2067, 23)       );       Promise.resolve(/* import() eager */).then(-        __webpack_require__.t.bind(__webpack_require__, 4644, 23)+        __webpack_require__.t.bind(__webpack_require__, 1166, 23)       );       Promise.resolve(/* import() eager */).then(-        __webpack_require__.t.bind(__webpack_require__, 8713, 23)+        __webpack_require__.t.bind(__webpack_require__, 3791, 23)       );       Promise.resolve(/* import() eager */).then(-        __webpack_require__.t.bind(__webpack_require__, 1432, 23)+        __webpack_require__.t.bind(__webpack_require__, 666, 23)       );       Promise.resolve(/* import() eager */).then(-        __webpack_require__.t.bind(__webpack_require__, 5011, 23)+        __webpack_require__.t.bind(__webpack_require__, 9993, 23)       );       Promise.resolve(/* import() eager */).then(-        __webpack_require__.t.bind(__webpack_require__, 2560, 23)+        __webpack_require__.t.bind(__webpack_require__, 1706, 23)       );       Promise.resolve(/* import() eager */).then(-        __webpack_require__.bind(__webpack_require__, 5161)+        __webpack_require__.bind(__webpack_require__, 6335)       );       Promise.resolve(/* import() eager */).then(-        __webpack_require__.t.bind(__webpack_require__, 7801, 23)+        __webpack_require__.t.bind(__webpack_require__, 3883, 23)       );       Promise.resolve(/* import() eager */).then(-        __webpack_require__.t.bind(__webpack_require__, 9992, 23)+        __webpack_require__.t.bind(__webpack_require__, 7030, 23)       );       Promise.resolve(/* import() eager */).then(-        __webpack_require__.t.bind(__webpack_require__, 2066, 23)+        __webpack_require__.t.bind(__webpack_require__, 3712, 23)       );        /***/     },++    /***/ 2788: /***/ () => {+      /* (ignored) */+      /***/+    },   },   /******/ (__webpack_require__) => {     // webpackRuntimeModules@@ -66,8 +66,8 @@       __webpack_require__((__webpack_require__.s = moduleId));     /******/ __webpack_require__.O(       0,-      [9137, 4498],-      () => (__webpack_exec__(1225), __webpack_exec__(9845))+      [2494, 6734],+      () => (__webpack_exec__(9303), __webpack_exec__(1793))     );     /******/ var __webpack_exports__ = __webpack_require__.O();     /******/ _N_E = __webpack_exports__;
Commit:e00cf1c

@ijjk
Copy link
Member

ijjk commentedOct 21, 2025
edited
Loading

Failing test suites

Commit:e00cf1c |About building and testing Next.js

pnpm test test/integration/config-mjs/test/index.test.ts

  • Configuration > should disable X-Powered-By header support (DD)
  • Configuration > correctly imports a package that definesmodule but nomain in package.json (DD)
  • Configuration > should have env variables available on the client (DD)
Expand output

● Configuration › should disable X-Powered-By header support

FetchError: request to http://localhost:42005/module-only-component failed, reason: socket hang up  at ClientRequest.<anonymous> (../node_modules/.pnpm/node-fetch@2.6.7_encoding@0.1.13/node_modules/node-fetch/lib/index.js:1491:11)

● Configuration › correctly imports a package that definesmodule but nomain in package.json

FetchError: request to http://localhost:42005/module-only-component failed, reason: socket hang up  at ClientRequest.<anonymous> (../node_modules/.pnpm/node-fetch@2.6.7_encoding@0.1.13/node_modules/node-fetch/lib/index.js:1491:11)

● Configuration › should have env variables available on the client

FetchError: request to http://localhost:42005/module-only-component failed, reason: socket hang up  at ClientRequest.<anonymous> (../node_modules/.pnpm/node-fetch@2.6.7_encoding@0.1.13/node_modules/node-fetch/lib/index.js:1491:11)

pnpm test-start-turbo test/e2e/app-dir/app-prefetch/prefetching.stale-times.test.ts (turbopack)

  • app dir - prefetching (custom staleTime) > should not re-fetch cached data when navigating back to a route group (DD)
Expand output

● app dir - prefetching (custom staleTime) › should not re-fetch cached data when navigating back to a route group

thrown: "Exceeded timeout of 120000 ms for a test.Add a timeout value to this test to increase the timeout, if this is a long-running test. See https://jestjs.io/docs/api#testname-fn-timeout."  132 |   })  133 |> 134 |   it('should not re-fetch cached data when navigating back to a route group', async () => {      |   ^  135 |     let act: ReturnType<typeof createRouterAct>  136 |     const browser = await next.browser('/prefetch-auto-route-groups', {  137 |       beforePageLoad(page) {  at it (e2e/app-dir/app-prefetch/prefetching.stale-times.test.ts:134:3)  at Object.describe (e2e/app-dir/app-prefetch/prefetching.stale-times.test.ts:6:1)

pnpm test-start-turbo test/e2e/app-dir/app-prefetch/prefetching.test.ts (turbopack)

  • app dir - prefetching > should show layout eagerly when prefetched with loading one level down (DD)
  • app dir - prefetching > should immediately render the loading state for a dynamic segment when fetched from higher up in the tree (DD)
Expand output

● app dir - prefetching › should show layout eagerly when prefetched with loading one level down

thrown: "Exceeded timeout of 120000 ms for a test.Add a timeout value to this test to increase the timeout, if this is a long-running test. See https://jestjs.io/docs/api#testname-fn-timeout."  26 |   })  27 |> 28 |   it('should show layout eagerly when prefetched with loading one level down', async () => {     |   ^  29 |     let act: ReturnType<typeof createRouterAct>  30 |     const timeController = createTimeController()  31 |     const browser = await next.browser('/', {  at it (e2e/app-dir/app-prefetch/prefetching.test.ts:28:3)  at Object.describe (e2e/app-dir/app-prefetch/prefetching.test.ts:11:1)

● app dir - prefetching › should immediately render the loading state for a dynamic segment when fetched from higher up in the tree

thrown: "Exceeded timeout of 120000 ms for a test.Add a timeout value to this test to increase the timeout, if this is a long-running test. See https://jestjs.io/docs/api#testname-fn-timeout."  302 |   })  303 |> 304 |   it('should immediately render the loading state for a dynamic segment when fetched from higher up in the tree', async () => {      |   ^  305 |     let act: ReturnType<typeof createRouterAct>  306 |     const browser = await next.browser('/', {  307 |       beforePageLoad(page) {  at it (e2e/app-dir/app-prefetch/prefetching.test.ts:304:3)  at Object.describe (e2e/app-dir/app-prefetch/prefetching.test.ts:11:1)

pnpm test-start test/e2e/app-dir/segment-cache/metadata/segment-cache-metadata.test.ts

  • segment cache (metadata) > regression: prefetch the head if it's missing even if all other data is cached > pages with dynamic content and dynamic metadata, using a full prefetch (DD)
  • segment cache (metadata) > regression: prefetch the head if it's missing even if all other data is cached > pages with runtime-prefetchable content and dynamic metadata, using a runtime prefetch (DD)
Expand output

● segment cache (metadata) › regression: prefetch the head if it's missing even if all other data is cached › pages with dynamic content and dynamic metadata, using a full prefetch

thrown: "Exceeded timeout of 120000 ms for a test.Add a timeout value to this test to increase the timeout, if this is a long-running test. See https://jestjs.io/docs/api#testname-fn-timeout."  11 |   }  12 |   describe("regression: prefetch the head if it's missing even if all other data is cached", () => {> 13 |     it('pages with dynamic content and dynamic metadata, using a full prefetch', async () => {     |     ^  14 |       let act: ReturnType<typeof createRouterAct>  15 |       const browser = await next.browser('/', {  16 |         beforePageLoad(p) {  at it (e2e/app-dir/segment-cache/metadata/segment-cache-metadata.test.ts:13:5)  at describe (e2e/app-dir/segment-cache/metadata/segment-cache-metadata.test.ts:12:3)  at Object.describe (e2e/app-dir/segment-cache/metadata/segment-cache-metadata.test.ts:4:1)

● segment cache (metadata) › regression: prefetch the head if it's missing even if all other data is cached › pages with runtime-prefetchable content and dynamic metadata, using a runtime prefetch

thrown: "Exceeded timeout of 120000 ms for a test.Add a timeout value to this test to increase the timeout, if this is a long-running test. See https://jestjs.io/docs/api#testname-fn-timeout."  75 |     })  76 |> 77 |     it('pages with runtime-prefetchable content and dynamic metadata, using a runtime prefetch', async () => {     |     ^  78 |       let act: ReturnType<typeof createRouterAct>  79 |       const browser = await next.browser('/', {  80 |         beforePageLoad(p) {  at it (e2e/app-dir/segment-cache/metadata/segment-cache-metadata.test.ts:77:5)  at describe (e2e/app-dir/segment-cache/metadata/segment-cache-metadata.test.ts:12:3)  at Object.describe (e2e/app-dir/segment-cache/metadata/segment-cache-metadata.test.ts:4:1)

pnpm test-dev test/e2e/app-dir/actions/app-action-node-middleware.test.ts

  • app-dir action handling > fetch actions > should handle redirects to routes that provide an invalid RSC response (DD)
Expand output

● app-dir action handling › fetch actions › should handle redirects to routes that provide an invalid RSC response

expect(received).toContain(expected) // indexOfExpected substring: "Hello from a pages route"Received string:    "0.3718120147232449ClientServerClient and Server0+1+1 (Slow)-1*2redirect to a pages routesubmittest"  1293 |  1294 |       await retry(async () => {> 1295 |         expect(await browser.elementByCss('body').text()).toContain(       |                                                           ^  1296 |           'Hello from a pages route'  1297 |         )  1298 |         expect(await browser.url()).toBe(`${next.url}/pages-dir`)  at toContain (e2e/app-dir/actions/app-action.test.ts:1295:59)  at retry (lib/next-test-utils.ts:808:14)  at Object.<anonymous> (e2e/app-dir/actions/app-action.test.ts:1294:7)

pnpm test-dev test/e2e/app-dir/actions/app-action.test.ts

  • app-dir action handling > fetch actions > should handle redirects to routes that provide an invalid RSC response (DD)
Expand output

● app-dir action handling › fetch actions › should handle redirects to routes that provide an invalid RSC response

expect(received).toContain(expected) // indexOfExpected substring: "Hello from a pages route"Received string:    "0.3171345483190571ClientServerClient and Server0+1+1 (Slow)-1*2redirect to a pages routesubmittest"  1293 |  1294 |       await retry(async () => {> 1295 |         expect(await browser.elementByCss('body').text()).toContain(       |                                                           ^  1296 |           'Hello from a pages route'  1297 |         )  1298 |         expect(await browser.url()).toBe(`${next.url}/pages-dir`)  at toContain (e2e/app-dir/actions/app-action.test.ts:1295:59)  at retry (lib/next-test-utils.ts:808:14)  at Object.<anonymous> (e2e/app-dir/actions/app-action.test.ts:1294:7)

pnpm test packages/next-codemod/transforms/__tests__/add-missing-react-import.test.js

  • add-missing-react-import > transforms correctly using "add-missing-react-import/missing-react-import-in-component" data (DD)
Expand output

● add-missing-react-import › transforms correctly using "add-missing-react-import/missing-react-import-in-component" data

expect(received).toEqual(expected) // deep equality- Expected  - 15+ Received  + 15- import React, { Children, isValidElement } from 'react';-+ import React, { Children, isValidElement } from 'react';+ - function Heading(props) {+ function Heading(props) {-   const { component, className, children, ...rest } = props;+   const { component, className, children, ...rest } = props;-   return React.cloneElement(+   return React.cloneElement(-     component,+     component,-     {+     {-       className: [className, component.props.className || ''].join(' '),+       className: [className, component.props.className || ''].join(' '),-       ...rest+       ...rest-     },+     },-     children+     children-   );+   );- }--+ }+ +   export default Heading;  at runInlineTest (../node_modules/.pnpm/jscodeshift@17.0.0_@babel+preset-env@7.26.9_@babel+core@7.26.10_/node_modules/jscodeshift/dist/testUtils.js:49:18)  at runTest (../node_modules/.pnpm/jscodeshift@17.0.0_@babel+preset-env@7.26.9_@babel+core@7.26.10_/node_modules/jscodeshift/dist/testUtils.js:98:3)  at Object.<anonymous> (../node_modules/.pnpm/jscodeshift@17.0.0_@babel+preset-env@7.26.9_@babel+core@7.26.10_/node_modules/jscodeshift/dist/testUtils.js:115:7)

pnpm test test/integration/telemetry/test/index.test.js

  • Telemetry CLI > production mode > cli session: babel tooling config (DD)
  • Telemetry CLI > production mode > cli session: custom babel config (plugin) (DD)
  • Telemetry CLI > production mode > cli session: package.json custom babel config (plugin) (DD)
  • Telemetry CLI > production mode > cli session: custom babel config (preset) (DD)
Expand output

● Telemetry CLI › production mode › cli session: babel tooling config

thrown: "Exceeded timeout of 60000 ms for a test.Add a timeout value to this test to increase the timeout, if this is a long-running test. See https://jestjs.io/docs/api#testname-fn-timeout."  188 |       })  189 |> 190 |       it('cli session: babel tooling config', async () => {      |       ^  191 |         await fs.rename(  192 |           path.join(appDir, '.babelrc.default'),  193 |           path.join(appDir, '.babelrc')  at it (integration/telemetry/test/index.test.js:190:7)  at integration/telemetry/test/index.test.js:98:56  at Object.describe (integration/telemetry/test/index.test.js:13:1)

● Telemetry CLI › production mode › cli session: custom babel config (plugin)

TypeError: Cannot read properties of null (reading 'pop')  231 |  232 |         const event = /NEXT_CLI_SESSION_STARTED[\s\S]+?{([\s\S]+?)}/> 233 |           .exec(stderr)      |                 ^  234 |           .pop()  235 |  236 |         expect(event).toMatch(/"hasNextConfig": false/)  at Object.stderr (integration/telemetry/test/index.test.js:233:17)

● Telemetry CLI › production mode › cli session: package.json custom babel config (plugin)

TypeError: Cannot read properties of null (reading 'pop')  257 |  258 |         const event = /NEXT_CLI_SESSION_STARTED[\s\S]+?{([\s\S]+?)}/> 259 |           .exec(stderr)      |                 ^  260 |           .pop()  261 |  262 |         expect(event).toMatch(/"hasNextConfig": false/)  at Object.stderr (integration/telemetry/test/index.test.js:259:17)

● Telemetry CLI › production mode › cli session: custom babel config (preset)

TypeError: Cannot read properties of null (reading 'pop')  283 |  284 |         const event = /NEXT_CLI_SESSION_STARTED[\s\S]+?{([\s\S]+?)}/> 285 |           .exec(stderr)      |                 ^  286 |           .pop()  287 |  288 |         expect(event).toMatch(/"hasNextConfig": false/)  at Object.stderr (integration/telemetry/test/index.test.js:285:17)

pnpm test-start-turbo test/e2e/app-dir/app-client-cache/client-cache.parallel-routes.test.ts (turbopack)

  • app dir client cache with parallel routes > prefetch={true} > should re-use the cache for the full page, only for 5 mins (DD)
Expand output

● app dir client cache with parallel routes › prefetch={true} › should re-use the cache for the full page, only for 5 mins

thrown: "Exceeded timeout of 120000 ms for a test.Add a timeout value to this test to increase the timeout, if this is a long-running test. See https://jestjs.io/docs/api#testname-fn-timeout."  44 |     })  45 |> 46 |     it('should re-use the cache for the full page, only for 5 mins', async () => {     |     ^  47 |       let act: ReturnType<typeof createRouterAct>  48 |       const browser = await next.browser('/', {  49 |         beforePageLoad(page) {  at it (e2e/app-dir/app-client-cache/client-cache.parallel-routes.test.ts:46:5)  at describe (e2e/app-dir/app-client-cache/client-cache.parallel-routes.test.ts:17:3)  at Object.describe (e2e/app-dir/app-client-cache/client-cache.parallel-routes.test.ts:6:1)

Co-authored-by: vercel[bot] <35613825+vercel[bot]@users.noreply.github.com>
@devjiwonchoidevjiwonchoi marked this pull request as ready for reviewOctober 21, 2025 20:54
@devjiwonchoidevjiwonchoi merged commit9b34b65 intocanaryOct 21, 2025
417 of 434 checks passed
@devjiwonchoidevjiwonchoi deleted the jiwon/10-21-_upgrade_version_gate_adding_--turbopack_flag branchOctober 21, 2025 22:06
@github-actionsgithub-actionsbot locked asresolvedand limited conversation to collaboratorsNov 5, 2025
Sign up for freeto subscribe to this conversation on GitHub. Already have an account?Sign in.

Reviewers

@vercelvercel[bot]vercel[bot] left review comments

@ijjkijjkijjk approved these changes

Assignees

No one assigned

Labels

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

3 participants

@devjiwonchoi@ijjk

[8]ページ先頭

©2009-2025 Movatter.jp