Skip to content

Commit 15d1dee

Browse files
committed
[Fiber] Replace setCurrentDebugFiberInDEV with runWithFiberInDEV (#29221)
Stacked on #29044. To work with `console.createTask(...).run(...)` we need to be able to run a function in the scope of the task. The main concern with this, other than general performance, is that it might add more stack frames on very deep stacks that hit the stack limit. Such as with the commit phase where we recursively go down the tree. These callbacks aren't really necessary in the recursive part but only in the shallow invocation of the commit phase for each tag. So we could refactor the commit phase so that only the shallow part at each level is covered this way. DiffTrain build for commit b078c81.
1 parent 43adf5d commit 15d1dee

File tree

10 files changed

+710
-888
lines changed

10 files changed

+710
-888
lines changed

compiled-rn/facebook-fbsource/xplat/js/RKJSModules/vendor/react/react-test-renderer/cjs/ReactTestRenderer-dev.js

Lines changed: 166 additions & 215 deletions
Large diffs are not rendered by default.

compiled-rn/facebook-fbsource/xplat/js/RKJSModules/vendor/react/react-test-renderer/cjs/ReactTestRenderer-prod.js

Lines changed: 37 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
* @noflow
88
* @nolint
99
* @preventMunge
10-
* @generated SignedSource<<e2dd990512e58f23e127175cf13f6c55>>
10+
* @generated SignedSource<<c50a413ebb22fd09d88e5c0cbdee55c9>>
1111
*/
1212

1313
"use strict";
@@ -8193,57 +8193,56 @@ function performUnitOfWork(unitOfWork) {
81938193
null === next ? completeUnitOfWork(unitOfWork) : (workInProgress = next);
81948194
}
81958195
function replaySuspendedUnitOfWork(unitOfWork) {
8196-
var current = unitOfWork.alternate;
8197-
switch (unitOfWork.tag) {
8196+
var next = unitOfWork;
8197+
var current = next.alternate;
8198+
switch (next.tag) {
81988199
case 15:
81998200
case 0:
8200-
var Component = unitOfWork.type,
8201-
unresolvedProps = unitOfWork.pendingProps;
8201+
var Component = next.type,
8202+
unresolvedProps = next.pendingProps;
82028203
unresolvedProps =
8203-
unitOfWork.elementType === Component
8204+
next.elementType === Component
82048205
? unresolvedProps
82058206
: resolveDefaultPropsOnNonClassComponent(Component, unresolvedProps);
82068207
var context = isContextProvider(Component)
82078208
? previousContext
82088209
: contextStackCursor$1.current;
8209-
context = getMaskedContext(unitOfWork, context);
8210-
current = replayFunctionComponent(
8210+
context = getMaskedContext(next, context);
8211+
next = replayFunctionComponent(
82118212
current,
8212-
unitOfWork,
8213+
next,
82138214
unresolvedProps,
82148215
Component,
82158216
context,
82168217
workInProgressRootRenderLanes
82178218
);
82188219
break;
82198220
case 11:
8220-
Component = unitOfWork.type.render;
8221-
unresolvedProps = unitOfWork.pendingProps;
8221+
Component = next.type.render;
8222+
unresolvedProps = next.pendingProps;
82228223
unresolvedProps =
8223-
unitOfWork.elementType === Component
8224+
next.elementType === Component
82248225
? unresolvedProps
82258226
: resolveDefaultPropsOnNonClassComponent(Component, unresolvedProps);
8226-
current = replayFunctionComponent(
8227+
next = replayFunctionComponent(
82278228
current,
8228-
unitOfWork,
8229+
next,
82298230
unresolvedProps,
82308231
Component,
8231-
unitOfWork.ref,
8232+
next.ref,
82328233
workInProgressRootRenderLanes
82338234
);
82348235
break;
82358236
case 5:
8236-
resetHooksOnUnwind(unitOfWork);
8237+
resetHooksOnUnwind(next);
82378238
default:
8238-
unwindInterruptedWork(current, unitOfWork),
8239-
(unitOfWork = workInProgress =
8240-
resetWorkInProgress(unitOfWork, entangledRenderLanes)),
8241-
(current = beginWork(current, unitOfWork, entangledRenderLanes));
8239+
unwindInterruptedWork(current, next),
8240+
(next = workInProgress =
8241+
resetWorkInProgress(next, entangledRenderLanes)),
8242+
(next = beginWork(current, next, entangledRenderLanes));
82428243
}
82438244
unitOfWork.memoizedProps = unitOfWork.pendingProps;
8244-
null === current
8245-
? completeUnitOfWork(unitOfWork)
8246-
: (workInProgress = current);
8245+
null === next ? completeUnitOfWork(unitOfWork) : (workInProgress = next);
82478246
}
82488247
function throwAndUnwindWorkLoop(root, unitOfWork, thrownValue) {
82498248
resetContextDependencies();
@@ -9298,19 +9297,19 @@ function wrapFiber(fiber) {
92989297
fiberToWrapper.set(fiber, wrapper));
92999298
return wrapper;
93009299
}
9301-
var devToolsConfig$jscomp$inline_1042 = {
9300+
var devToolsConfig$jscomp$inline_1047 = {
93029301
findFiberByHostInstance: function () {
93039302
throw Error("TestRenderer does not support findFiberByHostInstance()");
93049303
},
93059304
bundleType: 0,
9306-
version: "19.0.0-rc-c9fc27c4",
9305+
version: "19.0.0-rc-96bb2a1a",
93079306
rendererPackageName: "react-test-renderer"
93089307
};
9309-
var internals$jscomp$inline_1229 = {
9310-
bundleType: devToolsConfig$jscomp$inline_1042.bundleType,
9311-
version: devToolsConfig$jscomp$inline_1042.version,
9312-
rendererPackageName: devToolsConfig$jscomp$inline_1042.rendererPackageName,
9313-
rendererConfig: devToolsConfig$jscomp$inline_1042.rendererConfig,
9308+
var internals$jscomp$inline_1234 = {
9309+
bundleType: devToolsConfig$jscomp$inline_1047.bundleType,
9310+
version: devToolsConfig$jscomp$inline_1047.version,
9311+
rendererPackageName: devToolsConfig$jscomp$inline_1047.rendererPackageName,
9312+
rendererConfig: devToolsConfig$jscomp$inline_1047.rendererConfig,
93149313
overrideHookState: null,
93159314
overrideHookStateDeletePath: null,
93169315
overrideHookStateRenamePath: null,
@@ -9327,26 +9326,26 @@ var internals$jscomp$inline_1229 = {
93279326
return null === fiber ? null : fiber.stateNode;
93289327
},
93299328
findFiberByHostInstance:
9330-
devToolsConfig$jscomp$inline_1042.findFiberByHostInstance ||
9329+
devToolsConfig$jscomp$inline_1047.findFiberByHostInstance ||
93319330
emptyFindFiberByHostInstance,
93329331
findHostInstancesForRefresh: null,
93339332
scheduleRefresh: null,
93349333
scheduleRoot: null,
93359334
setRefreshHandler: null,
93369335
getCurrentFiber: null,
9337-
reconcilerVersion: "19.0.0-rc-c9fc27c4"
9336+
reconcilerVersion: "19.0.0-rc-96bb2a1a"
93389337
};
93399338
if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) {
9340-
var hook$jscomp$inline_1230 = __REACT_DEVTOOLS_GLOBAL_HOOK__;
9339+
var hook$jscomp$inline_1235 = __REACT_DEVTOOLS_GLOBAL_HOOK__;
93419340
if (
9342-
!hook$jscomp$inline_1230.isDisabled &&
9343-
hook$jscomp$inline_1230.supportsFiber
9341+
!hook$jscomp$inline_1235.isDisabled &&
9342+
hook$jscomp$inline_1235.supportsFiber
93449343
)
93459344
try {
9346-
(rendererID = hook$jscomp$inline_1230.inject(
9347-
internals$jscomp$inline_1229
9345+
(rendererID = hook$jscomp$inline_1235.inject(
9346+
internals$jscomp$inline_1234
93489347
)),
9349-
(injectedHook = hook$jscomp$inline_1230);
9348+
(injectedHook = hook$jscomp$inline_1235);
93509349
} catch (err) {}
93519350
}
93529351
exports._Scheduler = Scheduler;

compiled-rn/facebook-fbsource/xplat/js/RKJSModules/vendor/react/react-test-renderer/cjs/ReactTestRenderer-profiling.js

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

1313
"use strict";
@@ -8735,60 +8735,60 @@ function performUnitOfWork(unitOfWork) {
87358735
: (workInProgress = current);
87368736
}
87378737
function replaySuspendedUnitOfWork(unitOfWork) {
8738-
var current = unitOfWork.alternate,
8739-
isProfilingMode = 0 !== (unitOfWork.mode & 2);
8740-
isProfilingMode && startProfilerTimer(unitOfWork);
8741-
switch (unitOfWork.tag) {
8738+
var next = unitOfWork;
8739+
var current = next.alternate,
8740+
isProfilingMode = 0 !== (next.mode & 2);
8741+
isProfilingMode && startProfilerTimer(next);
8742+
switch (next.tag) {
87428743
case 15:
87438744
case 0:
8744-
var Component = unitOfWork.type,
8745-
unresolvedProps = unitOfWork.pendingProps;
8745+
var Component = next.type,
8746+
unresolvedProps = next.pendingProps;
87468747
unresolvedProps =
8747-
unitOfWork.elementType === Component
8748+
next.elementType === Component
87488749
? unresolvedProps
87498750
: resolveDefaultPropsOnNonClassComponent(Component, unresolvedProps);
87508751
var context = isContextProvider(Component)
87518752
? previousContext
87528753
: contextStackCursor$1.current;
8753-
context = getMaskedContext(unitOfWork, context);
8754+
context = getMaskedContext(next, context);
87548755
current = replayFunctionComponent(
87558756
current,
8756-
unitOfWork,
8757+
next,
87578758
unresolvedProps,
87588759
Component,
87598760
context,
87608761
workInProgressRootRenderLanes
87618762
);
87628763
break;
87638764
case 11:
8764-
Component = unitOfWork.type.render;
8765-
unresolvedProps = unitOfWork.pendingProps;
8765+
Component = next.type.render;
8766+
unresolvedProps = next.pendingProps;
87668767
unresolvedProps =
8767-
unitOfWork.elementType === Component
8768+
next.elementType === Component
87688769
? unresolvedProps
87698770
: resolveDefaultPropsOnNonClassComponent(Component, unresolvedProps);
87708771
current = replayFunctionComponent(
87718772
current,
8772-
unitOfWork,
8773+
next,
87738774
unresolvedProps,
87748775
Component,
8775-
unitOfWork.ref,
8776+
next.ref,
87768777
workInProgressRootRenderLanes
87778778
);
87788779
break;
87798780
case 5:
8780-
resetHooksOnUnwind(unitOfWork);
8781+
resetHooksOnUnwind(next);
87818782
default:
8782-
unwindInterruptedWork(current, unitOfWork),
8783-
(unitOfWork = workInProgress =
8784-
resetWorkInProgress(unitOfWork, entangledRenderLanes)),
8785-
(current = beginWork(current, unitOfWork, entangledRenderLanes));
8783+
unwindInterruptedWork(current, next),
8784+
(next = workInProgress =
8785+
resetWorkInProgress(next, entangledRenderLanes)),
8786+
(current = beginWork(current, next, entangledRenderLanes));
87868787
}
8787-
isProfilingMode && stopProfilerTimerIfRunningAndRecordDelta(unitOfWork, !0);
8788+
isProfilingMode && stopProfilerTimerIfRunningAndRecordDelta(next, !0);
8789+
next = current;
87888790
unitOfWork.memoizedProps = unitOfWork.pendingProps;
8789-
null === current
8790-
? completeUnitOfWork(unitOfWork)
8791-
: (workInProgress = current);
8791+
null === next ? completeUnitOfWork(unitOfWork) : (workInProgress = next);
87928792
}
87938793
function throwAndUnwindWorkLoop(root, unitOfWork, thrownValue) {
87948794
resetContextDependencies();
@@ -9941,12 +9941,12 @@ function wrapFiber(fiber) {
99419941
fiberToWrapper.set(fiber, wrapper));
99429942
return wrapper;
99439943
}
9944-
var devToolsConfig$jscomp$inline_1105 = {
9944+
var devToolsConfig$jscomp$inline_1111 = {
99459945
findFiberByHostInstance: function () {
99469946
throw Error("TestRenderer does not support findFiberByHostInstance()");
99479947
},
99489948
bundleType: 0,
9949-
version: "19.0.0-rc-77c04414",
9949+
version: "19.0.0-rc-6d8ae8ad",
99509950
rendererPackageName: "react-test-renderer"
99519951
};
99529952
(function (internals) {
@@ -9963,10 +9963,10 @@ var devToolsConfig$jscomp$inline_1105 = {
99639963
} catch (err) {}
99649964
return hook.checkDCE ? !0 : !1;
99659965
})({
9966-
bundleType: devToolsConfig$jscomp$inline_1105.bundleType,
9967-
version: devToolsConfig$jscomp$inline_1105.version,
9968-
rendererPackageName: devToolsConfig$jscomp$inline_1105.rendererPackageName,
9969-
rendererConfig: devToolsConfig$jscomp$inline_1105.rendererConfig,
9966+
bundleType: devToolsConfig$jscomp$inline_1111.bundleType,
9967+
version: devToolsConfig$jscomp$inline_1111.version,
9968+
rendererPackageName: devToolsConfig$jscomp$inline_1111.rendererPackageName,
9969+
rendererConfig: devToolsConfig$jscomp$inline_1111.rendererConfig,
99709970
overrideHookState: null,
99719971
overrideHookStateDeletePath: null,
99729972
overrideHookStateRenamePath: null,
@@ -9983,14 +9983,14 @@ var devToolsConfig$jscomp$inline_1105 = {
99839983
return null === fiber ? null : fiber.stateNode;
99849984
},
99859985
findFiberByHostInstance:
9986-
devToolsConfig$jscomp$inline_1105.findFiberByHostInstance ||
9986+
devToolsConfig$jscomp$inline_1111.findFiberByHostInstance ||
99879987
emptyFindFiberByHostInstance,
99889988
findHostInstancesForRefresh: null,
99899989
scheduleRefresh: null,
99909990
scheduleRoot: null,
99919991
setRefreshHandler: null,
99929992
getCurrentFiber: null,
9993-
reconcilerVersion: "19.0.0-rc-77c04414"
9993+
reconcilerVersion: "19.0.0-rc-6d8ae8ad"
99949994
});
99959995
exports._Scheduler = Scheduler;
99969996
exports.act = act;
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
d6cfa0f295f4c8b366af15fd20c84e27cdd1fab7
1+
b078c810c787cf13d9bd1958f083b4e3a162a720

0 commit comments

Comments
 (0)