Skip to content

Commit 89dc57d

Browse files
committed
Log Custom Reason for the Suspended Commit Track (#34522)
Stacked on #34511. We currently log all Suspended Commit as "Suspended on Images or CSS" but it can really be other reasons too now. Like waiting on the previous View Transition. This allows the host config configure this reason. Now when one animation starts before another one finishes we log that as "Waiting for the previous Animation". <img width="592" height="257" alt="Screenshot 2025-09-17 at 11 53 45 PM" src="https://github.com/user-attachments/assets/817af8b5-37ae-46d8-bfd1-cd3fc637f3f3" /> DiffTrain build for [b204edd](b204edd)
1 parent bc1d2ec commit 89dc57d

24 files changed

+341
-457
lines changed

compiled-rn/VERSION_NATIVE_FB

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
19.2.0-native-fb-ad578aa0-20250918
1+
19.2.0-native-fb-b204edda-20250920

compiled-rn/facebook-fbsource/xplat/js/RKJSModules/vendor/react/react-dom/cjs/ReactDOM-dev.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
* @noflow
88
* @nolint
99
* @preventMunge
10-
* @generated SignedSource<<fd863905bb0966ebf68fa887232115f1>>
10+
* @generated SignedSource<<39f7a26a67dd6bde1208825b26b257c9>>
1111
*/
1212

1313
"use strict";
@@ -404,5 +404,5 @@ __DEV__ &&
404404
exports.useFormStatus = function () {
405405
return resolveDispatcher().useHostTransitionStatus();
406406
};
407-
exports.version = "19.2.0-native-fb-ad578aa0-20250918";
407+
exports.version = "19.2.0-native-fb-b204edda-20250920";
408408
})();

compiled-rn/facebook-fbsource/xplat/js/RKJSModules/vendor/react/react-dom/cjs/ReactDOM-prod.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
* @noflow
88
* @nolint
99
* @preventMunge
10-
* @generated SignedSource<<1b03a772181f3d6b040d9c278b4569d1>>
10+
* @generated SignedSource<<1a145c3398abaf1da42203f6c1cda97e>>
1111
*/
1212

1313
"use strict";
@@ -203,4 +203,4 @@ exports.useFormState = function (action, initialState, permalink) {
203203
exports.useFormStatus = function () {
204204
return ReactSharedInternals.H.useHostTransitionStatus();
205205
};
206-
exports.version = "19.2.0-native-fb-ad578aa0-20250918";
206+
exports.version = "19.2.0-native-fb-b204edda-20250920";

compiled-rn/facebook-fbsource/xplat/js/RKJSModules/vendor/react/react-dom/cjs/ReactDOM-profiling.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
* @noflow
88
* @nolint
99
* @preventMunge
10-
* @generated SignedSource<<1b03a772181f3d6b040d9c278b4569d1>>
10+
* @generated SignedSource<<1a145c3398abaf1da42203f6c1cda97e>>
1111
*/
1212

1313
"use strict";
@@ -203,4 +203,4 @@ exports.useFormState = function (action, initialState, permalink) {
203203
exports.useFormStatus = function () {
204204
return ReactSharedInternals.H.useHostTransitionStatus();
205205
};
206-
exports.version = "19.2.0-native-fb-ad578aa0-20250918";
206+
exports.version = "19.2.0-native-fb-b204edda-20250920";

compiled-rn/facebook-fbsource/xplat/js/RKJSModules/vendor/react/react-dom/cjs/ReactDOMClient-dev.js

Lines changed: 33 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
* @noflow
88
* @nolint
99
* @preventMunge
10-
* @generated SignedSource<<e6d56cd5989fda3638a3a4915d1fb820>>
10+
* @generated SignedSource<<d9b735e8d1e53bc2663bac1c270b4827>>
1111
*/
1212

1313
/*
@@ -4573,14 +4573,14 @@ __DEV__ &&
45734573
"error"
45744574
));
45754575
}
4576-
function logSuspenseThrottlePhase(startTime, endTime, debugTask) {
4576+
function logSuspendedCommitPhase(startTime, endTime, reason, debugTask) {
45774577
!supportsUserTiming ||
45784578
endTime <= startTime ||
45794579
(debugTask
45804580
? debugTask.run(
45814581
console.timeStamp.bind(
45824582
console,
4583-
"Throttled",
4583+
reason,
45844584
startTime,
45854585
endTime,
45864586
currentTrack,
@@ -4589,31 +4589,7 @@ __DEV__ &&
45894589
)
45904590
)
45914591
: console.timeStamp(
4592-
"Throttled",
4593-
startTime,
4594-
endTime,
4595-
currentTrack,
4596-
LANES_TRACK_GROUP,
4597-
"secondary-light"
4598-
));
4599-
}
4600-
function logSuspendedCommitPhase(startTime, endTime, debugTask) {
4601-
!supportsUserTiming ||
4602-
endTime <= startTime ||
4603-
(debugTask
4604-
? debugTask.run(
4605-
console.timeStamp.bind(
4606-
console,
4607-
"Suspended on CSS or Images",
4608-
startTime,
4609-
endTime,
4610-
currentTrack,
4611-
LANES_TRACK_GROUP,
4612-
"secondary-light"
4613-
)
4614-
)
4615-
: console.timeStamp(
4616-
"Suspended on CSS or Images",
4592+
reason,
46174593
startTime,
46184594
endTime,
46194595
currentTrack,
@@ -17624,7 +17600,7 @@ __DEV__ &&
1762417600
workInProgressSuspendedRetryLanes,
1762517601
startTime,
1762617602
null,
17627-
IMMEDIATE_COMMIT,
17603+
null,
1762817604
renderStartTime,
1762917605
forceSync
1763017606
);
@@ -17659,7 +17635,7 @@ __DEV__ &&
1765917635
workInProgressSuspendedRetryLanes,
1766017636
workInProgressRootDidSkipSuspendedSiblings,
1766117637
startTime,
17662-
THROTTLED_COMMIT,
17638+
"Throttled",
1766317639
renderStartTime,
1766417640
forceSync
1766517641
),
@@ -17679,7 +17655,7 @@ __DEV__ &&
1767917655
workInProgressSuspendedRetryLanes,
1768017656
workInProgressRootDidSkipSuspendedSiblings,
1768117657
startTime,
17682-
IMMEDIATE_COMMIT,
17658+
null,
1768317659
renderStartTime,
1768417660
forceSync
1768517661
);
@@ -17718,6 +17694,7 @@ __DEV__ &&
1771817694
imgBytes: 0,
1771917695
suspenseyImages: [],
1772017696
waitingForImages: !0,
17697+
waitingForViewTransition: !1,
1772117698
unsuspend: noop$1
1772217699
}),
1772317700
accumulateSuspenseyCommitOnFiber(finishedWork, lanes, suspendedState),
@@ -17744,7 +17721,17 @@ __DEV__ &&
1774417721
suspendedRetryLanes,
1774517722
exitStatus,
1774617723
suspendedState,
17747-
SUSPENDED_COMMIT,
17724+
suspendedState.waitingForViewTransition
17725+
? "Waiting for the previous Animation"
17726+
: 0 < suspendedState.count
17727+
? 0 < suspendedState.imgCount
17728+
? "Suspended on CSS and Images"
17729+
: "Suspended on CSS"
17730+
: 1 === suspendedState.imgCount
17731+
? "Suspended on an Image"
17732+
: 0 < suspendedState.imgCount
17733+
? "Suspended on Images"
17734+
: null,
1774817735
completedRenderStartTime,
1774917736
completedRenderEndTime
1775017737
)
@@ -18911,18 +18898,13 @@ __DEV__ &&
1891118898
commitErrors = null;
1891218899
commitStartTime = now();
1891318900
enableComponentPerformanceTrack &&
18914-
(suspendedCommitReason === SUSPENDED_COMMIT
18915-
? logSuspendedCommitPhase(
18916-
completedRenderEndTime,
18917-
commitStartTime,
18918-
workInProgressUpdateTask
18919-
)
18920-
: suspendedCommitReason === THROTTLED_COMMIT &&
18921-
logSuspenseThrottlePhase(
18922-
completedRenderEndTime,
18923-
commitStartTime,
18924-
workInProgressUpdateTask
18925-
));
18901+
null !== suspendedCommitReason &&
18902+
logSuspendedCommitPhase(
18903+
completedRenderEndTime,
18904+
commitStartTime,
18905+
suspendedCommitReason,
18906+
workInProgressUpdateTask
18907+
);
1892618908
recoverableErrors = 0 !== (finishedWork.flags & 13878);
1892718909
if (0 !== (finishedWork.subtreeFlags & 13878) || recoverableErrors) {
1892818910
recoverableErrors = ReactSharedInternals.T;
@@ -19174,7 +19156,7 @@ __DEV__ &&
1917419156
enableComponentPerformanceTrack &&
1917519157
((commitEndTime = now()),
1917619158
(suspendedViewTransitionReason =
19177-
startTime === IMMEDIATE_COMMIT
19159+
null === startTime
1917819160
? suspendedViewTransitionReason
1917919161
: commitStartTime),
1918019162
(startTime = commitEndTime),
@@ -29007,8 +28989,6 @@ __DEV__ &&
2900728989
workInProgressUpdateTask = null,
2900828990
legacyErrorBoundariesThatAlreadyFailed = null,
2900928991
IMMEDIATE_COMMIT = 0,
29010-
SUSPENDED_COMMIT = 1,
29011-
THROTTLED_COMMIT = 2,
2901228992
ABORTED_VIEW_TRANSITION_COMMIT = 1,
2901328993
DELAYED_PASSIVE_COMMIT = 2,
2901428994
ANIMATION_STARTED_COMMIT = 3,
@@ -29026,7 +29006,7 @@ __DEV__ &&
2902629006
pendingEffectsRenderEndTime = -0,
2902729007
pendingPassiveTransitions = null,
2902829008
pendingRecoverableErrors = null,
29029-
pendingSuspendedCommitReason = IMMEDIATE_COMMIT,
29009+
pendingSuspendedCommitReason = null,
2903029010
pendingDelayedCommitReason = IMMEDIATE_COMMIT,
2903129011
pendingSuspendedViewTransitionReason = null,
2903229012
NESTED_UPDATE_LIMIT = 50,
@@ -29905,11 +29885,11 @@ __DEV__ &&
2990529885
};
2990629886
(function () {
2990729887
var isomorphicReactPackageVersion = React.version;
29908-
if ("19.2.0-native-fb-ad578aa0-20250918" !== isomorphicReactPackageVersion)
29888+
if ("19.2.0-native-fb-b204edda-20250920" !== isomorphicReactPackageVersion)
2990929889
throw Error(
2991029890
'Incompatible React versions: The "react" and "react-dom" packages must have the exact same version. Instead got:\n - react: ' +
2991129891
(isomorphicReactPackageVersion +
29912-
"\n - react-dom: 19.2.0-native-fb-ad578aa0-20250918\nLearn more: https://react.dev/warnings/version-mismatch")
29892+
"\n - react-dom: 19.2.0-native-fb-b204edda-20250920\nLearn more: https://react.dev/warnings/version-mismatch")
2991329893
);
2991429894
})();
2991529895
("function" === typeof Map &&
@@ -29946,10 +29926,10 @@ __DEV__ &&
2994629926
!(function () {
2994729927
var internals = {
2994829928
bundleType: 1,
29949-
version: "19.2.0-native-fb-ad578aa0-20250918",
29929+
version: "19.2.0-native-fb-b204edda-20250920",
2995029930
rendererPackageName: "react-dom",
2995129931
currentDispatcherRef: ReactSharedInternals,
29952-
reconcilerVersion: "19.2.0-native-fb-ad578aa0-20250918"
29932+
reconcilerVersion: "19.2.0-native-fb-b204edda-20250920"
2995329933
};
2995429934
internals.overrideHookState = overrideHookState;
2995529935
internals.overrideHookStateDeletePath = overrideHookStateDeletePath;
@@ -30098,5 +30078,5 @@ __DEV__ &&
3009830078
listenToAllSupportedEvents(container);
3009930079
return new ReactDOMHydrationRoot(initialChildren);
3010030080
};
30101-
exports.version = "19.2.0-native-fb-ad578aa0-20250918";
30081+
exports.version = "19.2.0-native-fb-b204edda-20250920";
3010230082
})();

compiled-rn/facebook-fbsource/xplat/js/RKJSModules/vendor/react/react-dom/cjs/ReactDOMClient-prod.js

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
* @noflow
88
* @nolint
99
* @preventMunge
10-
* @generated SignedSource<<6c68a4b50f1f39675980315f546fb550>>
10+
* @generated SignedSource<<b76edff4bdf765edf7e829dc1752fa10>>
1111
*/
1212

1313
/*
@@ -11672,7 +11672,7 @@ function performWorkOnRoot(root$jscomp$0, lanes, forceSync) {
1167211672
workInProgressSuspendedRetryLanes,
1167311673
workInProgressRootDidSkipSuspendedSiblings,
1167411674
renderWasConcurrent,
11675-
2,
11675+
"Throttled",
1167611676
-0,
1167711677
0
1167811678
),
@@ -11692,7 +11692,7 @@ function performWorkOnRoot(root$jscomp$0, lanes, forceSync) {
1169211692
workInProgressSuspendedRetryLanes,
1169311693
workInProgressRootDidSkipSuspendedSiblings,
1169411694
renderWasConcurrent,
11695-
0,
11695+
null,
1169611696
-0,
1169711697
0
1169811698
);
@@ -11731,6 +11731,7 @@ function commitRootWhenReady(
1173111731
imgBytes: 0,
1173211732
suspenseyImages: [],
1173311733
waitingForImages: !0,
11734+
waitingForViewTransition: !1,
1173411735
unsuspend: noop$1
1173511736
};
1173611737
accumulateSuspenseyCommitOnFiber(
@@ -11763,7 +11764,7 @@ function commitRootWhenReady(
1176311764
suspendedRetryLanes,
1176411765
exitStatus,
1176511766
suspendedCommitReason,
11766-
1,
11767+
null,
1176711768
completedRenderStartTime,
1176811769
completedRenderEndTime
1176911770
)
@@ -17525,14 +17526,14 @@ ReactDOMHydrationRoot.prototype.unstable_scheduleHydration = function (target) {
1752517526
};
1752617527
var isomorphicReactPackageVersion$jscomp$inline_2072 = React.version;
1752717528
if (
17528-
"19.2.0-native-fb-ad578aa0-20250918" !==
17529+
"19.2.0-native-fb-b204edda-20250920" !==
1752917530
isomorphicReactPackageVersion$jscomp$inline_2072
1753017531
)
1753117532
throw Error(
1753217533
formatProdErrorMessage(
1753317534
527,
1753417535
isomorphicReactPackageVersion$jscomp$inline_2072,
17535-
"19.2.0-native-fb-ad578aa0-20250918"
17536+
"19.2.0-native-fb-b204edda-20250920"
1753617537
)
1753717538
);
1753817539
ReactDOMSharedInternals.findDOMNode = function (componentOrElement) {
@@ -17554,10 +17555,10 @@ ReactDOMSharedInternals.findDOMNode = function (componentOrElement) {
1755417555
};
1755517556
var internals$jscomp$inline_2645 = {
1755617557
bundleType: 0,
17557-
version: "19.2.0-native-fb-ad578aa0-20250918",
17558+
version: "19.2.0-native-fb-b204edda-20250920",
1755817559
rendererPackageName: "react-dom",
1755917560
currentDispatcherRef: ReactSharedInternals,
17560-
reconcilerVersion: "19.2.0-native-fb-ad578aa0-20250918"
17561+
reconcilerVersion: "19.2.0-native-fb-b204edda-20250920"
1756117562
};
1756217563
if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) {
1756317564
var hook$jscomp$inline_2646 = __REACT_DEVTOOLS_GLOBAL_HOOK__;
@@ -17664,4 +17665,4 @@ exports.hydrateRoot = function (container, initialChildren, options) {
1766417665
listenToAllSupportedEvents(container);
1766517666
return new ReactDOMHydrationRoot(initialChildren);
1766617667
};
17667-
exports.version = "19.2.0-native-fb-ad578aa0-20250918";
17668+
exports.version = "19.2.0-native-fb-b204edda-20250920";

0 commit comments

Comments
 (0)