Skip to content

Commit 365db20

Browse files
Upgrade React from 462d08f9-20250517 to c4676e72-20250520 (#79413)
Co-authored-by: Sebastian Sebbie Silbermann <sebastian.silbermann@vercel.com>
1 parent 057dfff commit 365db20

File tree

62 files changed

+10523
-4230
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

62 files changed

+10523
-4230
lines changed

package.json

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -233,16 +233,16 @@
233233
"pretty-ms": "7.0.0",
234234
"random-seed": "0.3.0",
235235
"react": "19.0.0",
236-
"react-builtin": "npm:react@19.2.0-canary-462d08f9-20250517",
236+
"react-builtin": "npm:react@19.2.0-canary-c4676e72-20250520",
237237
"react-dom": "19.0.0",
238-
"react-dom-builtin": "npm:react-dom@19.2.0-canary-462d08f9-20250517",
239-
"react-dom-experimental-builtin": "npm:react-dom@0.0.0-experimental-462d08f9-20250517",
240-
"react-experimental-builtin": "npm:react@0.0.0-experimental-462d08f9-20250517",
241-
"react-is-builtin": "npm:react-is@19.2.0-canary-462d08f9-20250517",
242-
"react-server-dom-turbopack": "19.2.0-canary-462d08f9-20250517",
243-
"react-server-dom-turbopack-experimental": "npm:react-server-dom-turbopack@0.0.0-experimental-462d08f9-20250517",
244-
"react-server-dom-webpack": "19.2.0-canary-462d08f9-20250517",
245-
"react-server-dom-webpack-experimental": "npm:react-server-dom-webpack@0.0.0-experimental-462d08f9-20250517",
238+
"react-dom-builtin": "npm:react-dom@19.2.0-canary-c4676e72-20250520",
239+
"react-dom-experimental-builtin": "npm:react-dom@0.0.0-experimental-c4676e72-20250520",
240+
"react-experimental-builtin": "npm:react@0.0.0-experimental-c4676e72-20250520",
241+
"react-is-builtin": "npm:react-is@19.2.0-canary-c4676e72-20250520",
242+
"react-server-dom-turbopack": "19.2.0-canary-c4676e72-20250520",
243+
"react-server-dom-turbopack-experimental": "npm:react-server-dom-turbopack@0.0.0-experimental-c4676e72-20250520",
244+
"react-server-dom-webpack": "19.2.0-canary-c4676e72-20250520",
245+
"react-server-dom-webpack-experimental": "npm:react-server-dom-webpack@0.0.0-experimental-c4676e72-20250520",
246246
"react-ssr-prepass": "1.0.8",
247247
"react-virtualized": "9.22.3",
248248
"relay-compiler": "13.0.2",
@@ -252,8 +252,8 @@
252252
"resolve-from": "5.0.0",
253253
"sass": "1.54.0",
254254
"satori": "0.12.2",
255-
"scheduler-builtin": "npm:scheduler@0.27.0-canary-462d08f9-20250517",
256-
"scheduler-experimental-builtin": "npm:scheduler@0.0.0-experimental-462d08f9-20250517",
255+
"scheduler-builtin": "npm:scheduler@0.27.0-canary-c4676e72-20250520",
256+
"scheduler-experimental-builtin": "npm:scheduler@0.0.0-experimental-c4676e72-20250520",
257257
"seedrandom": "3.0.5",
258258
"semver": "7.3.7",
259259
"shell-quote": "1.7.3",
@@ -296,10 +296,10 @@
296296
"@types/react-dom": "19.1.2",
297297
"@types/retry": "0.12.0",
298298
"jest-snapshot": "30.0.0-alpha.6",
299-
"react": "19.2.0-canary-462d08f9-20250517",
300-
"react-dom": "19.2.0-canary-462d08f9-20250517",
301-
"react-is": "19.2.0-canary-462d08f9-20250517",
302-
"scheduler": "0.27.0-canary-462d08f9-20250517"
299+
"react": "19.2.0-canary-c4676e72-20250520",
300+
"react-dom": "19.2.0-canary-c4676e72-20250520",
301+
"react-is": "19.2.0-canary-c4676e72-20250520",
302+
"scheduler": "0.27.0-canary-c4676e72-20250520"
303303
},
304304
"patchedDependencies": {
305305
"webpack-sources@3.2.3": "patches/webpack-sources@3.2.3.patch",

packages/next/src/compiled/react-dom-experimental/cjs/react-dom-client.development.js

Lines changed: 97 additions & 60 deletions
Original file line numberDiff line numberDiff line change
@@ -6859,6 +6859,29 @@
68596859
}
68606860
};
68616861
}
6862+
function validateSuspenseListNestedChild(childSlot, index) {
6863+
var isAnArray = isArrayImpl(childSlot),
6864+
isIterable =
6865+
!isAnArray && "function" === typeof getIteratorFn(childSlot);
6866+
childSlot =
6867+
"object" === typeof childSlot &&
6868+
null !== childSlot &&
6869+
"function" === typeof childSlot[ASYNC_ITERATOR];
6870+
return isAnArray || isIterable || childSlot
6871+
? ((isAnArray = isAnArray
6872+
? "array"
6873+
: childSlot
6874+
? "async iterable"
6875+
: "iterable"),
6876+
console.error(
6877+
"A nested %s was passed to row #%s in <SuspenseList />. Wrap it in an additional SuspenseList to configure its revealOrder: <SuspenseList revealOrder=...> ... <SuspenseList revealOrder=...>{%s}</SuspenseList> ... </SuspenseList>",
6878+
isAnArray,
6879+
index,
6880+
isAnArray
6881+
),
6882+
!1)
6883+
: !0;
6884+
}
68626885
function initializeUpdateQueue(fiber) {
68636886
fiber.updateQueue = {
68646887
baseState: fiber.memoizedState,
@@ -10896,20 +10919,6 @@
1089610919
propagationRoot
1089710920
);
1089810921
}
10899-
function validateSuspenseListNestedChild(childSlot, index) {
10900-
var isAnArray = isArrayImpl(childSlot);
10901-
childSlot = !isAnArray && "function" === typeof getIteratorFn(childSlot);
10902-
return isAnArray || childSlot
10903-
? ((isAnArray = isAnArray ? "array" : "iterable"),
10904-
console.error(
10905-
"A nested %s was passed to row #%s in <SuspenseList />. Wrap it in an additional SuspenseList to configure its revealOrder: <SuspenseList revealOrder=...> ... <SuspenseList revealOrder=...>{%s}</SuspenseList> ... </SuspenseList>",
10906-
isAnArray,
10907-
index,
10908-
isAnArray
10909-
),
10910-
!1)
10911-
: !0;
10912-
}
1091310922
function initSuspenseListRenderState(
1091410923
workInProgress,
1091510924
isBackwards,
@@ -10939,6 +10948,15 @@
1093910948
revealOrder = nextProps.revealOrder,
1094010949
tailMode = nextProps.tail;
1094110950
nextProps = nextProps.children;
10951+
var suspenseContext = suspenseStackCursor.current,
10952+
shouldForceFallback = 0 !== (suspenseContext & ForceSuspenseFallback);
10953+
shouldForceFallback
10954+
? ((suspenseContext =
10955+
(suspenseContext & SubtreeSuspenseContextMask) |
10956+
ForceSuspenseFallback),
10957+
(workInProgress.flags |= 128))
10958+
: (suspenseContext &= SubtreeSuspenseContextMask);
10959+
push(suspenseStackCursor, suspenseContext, workInProgress);
1094210960
if (
1094310961
void 0 !== revealOrder &&
1094410962
"forwards" !== revealOrder &&
@@ -11001,55 +11019,74 @@
1100111019
!1 !== nextProps
1100211020
)
1100311021
if (isArrayImpl(nextProps))
11004-
for (var i = 0; i < nextProps.length; i++) {
11005-
if (!validateSuspenseListNestedChild(nextProps[i], i)) break a;
11022+
for (
11023+
suspenseContext = 0;
11024+
suspenseContext < nextProps.length;
11025+
suspenseContext++
11026+
) {
11027+
if (
11028+
!validateSuspenseListNestedChild(
11029+
nextProps[suspenseContext],
11030+
suspenseContext
11031+
)
11032+
)
11033+
break a;
1100611034
}
11007-
else if (((i = getIteratorFn(nextProps)), "function" === typeof i)) {
11008-
if ((i = i.call(nextProps)))
11009-
for (var step = i.next(), _i = 0; !step.done; step = i.next()) {
11035+
else if (
11036+
((suspenseContext = getIteratorFn(nextProps)),
11037+
"function" === typeof suspenseContext)
11038+
) {
11039+
if ((suspenseContext = suspenseContext.call(nextProps)))
11040+
for (
11041+
var step = suspenseContext.next(), _i = 0;
11042+
!step.done;
11043+
step = suspenseContext.next()
11044+
) {
1101011045
if (!validateSuspenseListNestedChild(step.value, _i)) break a;
1101111046
_i++;
1101211047
}
1101311048
} else
11014-
console.error(
11015-
'A single row was passed to a <SuspenseList revealOrder="%s" />. This is not useful since it needs multiple rows. Did you mean to pass multiple children or an array?',
11016-
revealOrder
11017-
);
11049+
"function" !== typeof nextProps[ASYNC_ITERATOR] &&
11050+
(nextProps.$$typeof !== REACT_ELEMENT_TYPE ||
11051+
"function" !== typeof nextProps.type ||
11052+
("[object GeneratorFunction]" !==
11053+
Object.prototype.toString.call(nextProps.type) &&
11054+
"[object AsyncGeneratorFunction]" !==
11055+
Object.prototype.toString.call(nextProps.type))
11056+
? console.error(
11057+
'A single row was passed to a <SuspenseList revealOrder="%s" />. This is not useful since it needs multiple rows. Did you mean to pass multiple children or an array?',
11058+
revealOrder
11059+
)
11060+
: console.error(
11061+
'A generator Component was passed to a <SuspenseList revealOrder="%s" />. This is not supported as a way to generate lists. Instead, pass an iterable as the children.',
11062+
revealOrder
11063+
));
1101811064
reconcileChildren(current, workInProgress, nextProps, renderLanes);
11019-
nextProps = suspenseStackCursor.current;
11020-
if (0 !== (nextProps & ForceSuspenseFallback))
11021-
(nextProps =
11022-
(nextProps & SubtreeSuspenseContextMask) | ForceSuspenseFallback),
11023-
(workInProgress.flags |= 128);
11024-
else {
11025-
if (null !== current && 0 !== (current.flags & 128))
11026-
a: for (current = workInProgress.child; null !== current; ) {
11027-
if (13 === current.tag)
11028-
null !== current.memoizedState &&
11029-
scheduleSuspenseWorkOnFiber(
11030-
current,
11031-
renderLanes,
11032-
workInProgress
11033-
);
11034-
else if (19 === current.tag)
11065+
if (
11066+
!shouldForceFallback &&
11067+
null !== current &&
11068+
0 !== (current.flags & 128)
11069+
)
11070+
a: for (current = workInProgress.child; null !== current; ) {
11071+
if (13 === current.tag)
11072+
null !== current.memoizedState &&
1103511073
scheduleSuspenseWorkOnFiber(current, renderLanes, workInProgress);
11036-
else if (null !== current.child) {
11037-
current.child.return = current;
11038-
current = current.child;
11039-
continue;
11040-
}
11041-
if (current === workInProgress) break a;
11042-
for (; null === current.sibling; ) {
11043-
if (null === current.return || current.return === workInProgress)
11044-
break a;
11045-
current = current.return;
11046-
}
11047-
current.sibling.return = current.return;
11048-
current = current.sibling;
11074+
else if (19 === current.tag)
11075+
scheduleSuspenseWorkOnFiber(current, renderLanes, workInProgress);
11076+
else if (null !== current.child) {
11077+
current.child.return = current;
11078+
current = current.child;
11079+
continue;
1104911080
}
11050-
nextProps &= SubtreeSuspenseContextMask;
11051-
}
11052-
push(suspenseStackCursor, nextProps, workInProgress);
11081+
if (current === workInProgress) break a;
11082+
for (; null === current.sibling; ) {
11083+
if (null === current.return || current.return === workInProgress)
11084+
break a;
11085+
current = current.return;
11086+
}
11087+
current.sibling.return = current.return;
11088+
current = current.sibling;
11089+
}
1105311090
switch (revealOrder) {
1105411091
case "forwards":
1105511092
renderLanes = workInProgress.child;
@@ -30579,11 +30616,11 @@
3057930616
};
3058030617
(function () {
3058130618
var isomorphicReactPackageVersion = React.version;
30582-
if ("19.2.0-experimental-462d08f9-20250517" !== isomorphicReactPackageVersion)
30619+
if ("19.2.0-experimental-c4676e72-20250520" !== isomorphicReactPackageVersion)
3058330620
throw Error(
3058430621
'Incompatible React versions: The "react" and "react-dom" packages must have the exact same version. Instead got:\n - react: ' +
3058530622
(isomorphicReactPackageVersion +
30586-
"\n - react-dom: 19.2.0-experimental-462d08f9-20250517\nLearn more: https://react.dev/warnings/version-mismatch")
30623+
"\n - react-dom: 19.2.0-experimental-c4676e72-20250520\nLearn more: https://react.dev/warnings/version-mismatch")
3058730624
);
3058830625
})();
3058930626
("function" === typeof Map &&
@@ -30620,10 +30657,10 @@
3062030657
!(function () {
3062130658
var internals = {
3062230659
bundleType: 1,
30623-
version: "19.2.0-experimental-462d08f9-20250517",
30660+
version: "19.2.0-experimental-c4676e72-20250520",
3062430661
rendererPackageName: "react-dom",
3062530662
currentDispatcherRef: ReactSharedInternals,
30626-
reconcilerVersion: "19.2.0-experimental-462d08f9-20250517"
30663+
reconcilerVersion: "19.2.0-experimental-c4676e72-20250520"
3062730664
};
3062830665
internals.overrideHookState = overrideHookState;
3062930666
internals.overrideHookStateDeletePath = overrideHookStateDeletePath;
@@ -30769,7 +30806,7 @@
3076930806
listenToAllSupportedEvents(container);
3077030807
return new ReactDOMHydrationRoot(initialChildren);
3077130808
};
30772-
exports.version = "19.2.0-experimental-462d08f9-20250517";
30809+
exports.version = "19.2.0-experimental-c4676e72-20250520";
3077330810
"undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&
3077430811
"function" ===
3077530812
typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop &&

packages/next/src/compiled/react-dom-experimental/cjs/react-dom-client.production.js

Lines changed: 33 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -7480,35 +7480,36 @@ function updateSuspenseListComponent(current, workInProgress, renderLanes) {
74807480
var nextProps = workInProgress.pendingProps,
74817481
revealOrder = nextProps.revealOrder,
74827482
tailMode = nextProps.tail;
7483-
reconcileChildren(current, workInProgress, nextProps.children, renderLanes);
7484-
nextProps = suspenseStackCursor.current;
7485-
if (0 !== (nextProps & 2))
7486-
(nextProps = (nextProps & 1) | 2), (workInProgress.flags |= 128);
7487-
else {
7488-
if (null !== current && 0 !== (current.flags & 128))
7489-
a: for (current = workInProgress.child; null !== current; ) {
7490-
if (13 === current.tag)
7491-
null !== current.memoizedState &&
7492-
scheduleSuspenseWorkOnFiber(current, renderLanes, workInProgress);
7493-
else if (19 === current.tag)
7483+
nextProps = nextProps.children;
7484+
var suspenseContext = suspenseStackCursor.current,
7485+
shouldForceFallback = 0 !== (suspenseContext & 2);
7486+
shouldForceFallback
7487+
? ((suspenseContext = (suspenseContext & 1) | 2),
7488+
(workInProgress.flags |= 128))
7489+
: (suspenseContext &= 1);
7490+
push(suspenseStackCursor, suspenseContext);
7491+
reconcileChildren(current, workInProgress, nextProps, renderLanes);
7492+
if (!shouldForceFallback && null !== current && 0 !== (current.flags & 128))
7493+
a: for (current = workInProgress.child; null !== current; ) {
7494+
if (13 === current.tag)
7495+
null !== current.memoizedState &&
74947496
scheduleSuspenseWorkOnFiber(current, renderLanes, workInProgress);
7495-
else if (null !== current.child) {
7496-
current.child.return = current;
7497-
current = current.child;
7498-
continue;
7499-
}
7500-
if (current === workInProgress) break a;
7501-
for (; null === current.sibling; ) {
7502-
if (null === current.return || current.return === workInProgress)
7503-
break a;
7504-
current = current.return;
7505-
}
7506-
current.sibling.return = current.return;
7507-
current = current.sibling;
7497+
else if (19 === current.tag)
7498+
scheduleSuspenseWorkOnFiber(current, renderLanes, workInProgress);
7499+
else if (null !== current.child) {
7500+
current.child.return = current;
7501+
current = current.child;
7502+
continue;
75087503
}
7509-
nextProps &= 1;
7510-
}
7511-
push(suspenseStackCursor, nextProps);
7504+
if (current === workInProgress) break a;
7505+
for (; null === current.sibling; ) {
7506+
if (null === current.return || current.return === workInProgress)
7507+
break a;
7508+
current = current.return;
7509+
}
7510+
current.sibling.return = current.return;
7511+
current = current.sibling;
7512+
}
75127513
switch (revealOrder) {
75137514
case "forwards":
75147515
renderLanes = workInProgress.child;
@@ -19147,14 +19148,14 @@ ReactDOMHydrationRoot.prototype.unstable_scheduleHydration = function (target) {
1914719148
};
1914819149
var isomorphicReactPackageVersion$jscomp$inline_2180 = React.version;
1914919150
if (
19150-
"19.2.0-experimental-462d08f9-20250517" !==
19151+
"19.2.0-experimental-c4676e72-20250520" !==
1915119152
isomorphicReactPackageVersion$jscomp$inline_2180
1915219153
)
1915319154
throw Error(
1915419155
formatProdErrorMessage(
1915519156
527,
1915619157
isomorphicReactPackageVersion$jscomp$inline_2180,
19157-
"19.2.0-experimental-462d08f9-20250517"
19158+
"19.2.0-experimental-c4676e72-20250520"
1915819159
)
1915919160
);
1916019161
ReactDOMSharedInternals.findDOMNode = function (componentOrElement) {
@@ -19176,10 +19177,10 @@ ReactDOMSharedInternals.findDOMNode = function (componentOrElement) {
1917619177
};
1917719178
var internals$jscomp$inline_2840 = {
1917819179
bundleType: 0,
19179-
version: "19.2.0-experimental-462d08f9-20250517",
19180+
version: "19.2.0-experimental-c4676e72-20250520",
1918019181
rendererPackageName: "react-dom",
1918119182
currentDispatcherRef: ReactSharedInternals,
19182-
reconcilerVersion: "19.2.0-experimental-462d08f9-20250517"
19183+
reconcilerVersion: "19.2.0-experimental-c4676e72-20250520"
1918319184
};
1918419185
if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) {
1918519186
var hook$jscomp$inline_2841 = __REACT_DEVTOOLS_GLOBAL_HOOK__;
@@ -19286,4 +19287,4 @@ exports.hydrateRoot = function (container, initialChildren, options) {
1928619287
listenToAllSupportedEvents(container);
1928719288
return new ReactDOMHydrationRoot(initialChildren);
1928819289
};
19289-
exports.version = "19.2.0-experimental-462d08f9-20250517";
19290+
exports.version = "19.2.0-experimental-c4676e72-20250520";

0 commit comments

Comments
 (0)