mirror of
https://github.com/facebook/react.git
synced 2025-11-01 09:12:30 +00:00
Add eager alternate.stateNode cleanup (#33161)
This is a fix for a problem where React retains shadow nodes longer than
it needs to. The behaviour is shown in React Native test:
https://github.com/facebook/react-native/blob/main/packages/react-native/src/private/__tests__/utilities/__tests__/ShadowNodeReferenceCounter-itest.js#L169
# Problem
When React commits a new shadow tree, old shadow nodes are stored inside
`fiber.alternate.stateNode`. This is not cleared up until React clones
the node again. This may be problematic if mutation deletes a subtree,
in that case `fiber.alternate.stateNode` will retain entire subtree
until next update. In case of image nodes, this means retaining entire
images.
So when React goes from revision A: `<View><View /></View>` to revision
B: `<View />`, `fiber.alternate.stateNode` will be pointing to Shadow
Node that represents revision A..

# Fix
To fix this, this PR adds a new feature flag
`enableEagerAlternateStateNodeCleanup`. When enabled,
`alternate.stateNode` is proactively pointed towards finishedWork's
stateNode, releasing resources sooner.
I have verified this fixes the issue [demonstrated by React Native
tests](https://github.com/facebook/react-native/blob/main/packages/react-native/src/private/__tests__/utilities/__tests__/ShadowNodeReferenceCounter-itest.js#L169).
All existing React tests pass when the flag is enabled.
DiffTrain build for [5d04d73274](https://github.com/facebook/react/commit/5d04d73274a884ed53106677d56dd837ae668c45)
This commit is contained in:
@@ -1 +1 @@
|
||||
19.2.0-native-fb-3820740a-20250509
|
||||
19.2.0-native-fb-5d04d732-20250512
|
||||
Vendored
+2
-2
@@ -7,7 +7,7 @@
|
||||
* @noflow
|
||||
* @nolint
|
||||
* @preventMunge
|
||||
* @generated SignedSource<<25b4e36b7094ea15dc92f752e91cc3e6>>
|
||||
* @generated SignedSource<<68ae96eb252da2ab036271f7dab93f8d>>
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
@@ -404,5 +404,5 @@ __DEV__ &&
|
||||
exports.useFormStatus = function () {
|
||||
return resolveDispatcher().useHostTransitionStatus();
|
||||
};
|
||||
exports.version = "19.2.0-native-fb-3820740a-20250509";
|
||||
exports.version = "19.2.0-native-fb-5d04d732-20250512";
|
||||
})();
|
||||
|
||||
Vendored
+2
-2
@@ -7,7 +7,7 @@
|
||||
* @noflow
|
||||
* @nolint
|
||||
* @preventMunge
|
||||
* @generated SignedSource<<41af065ee488f0f3c8ca924f1088f5a8>>
|
||||
* @generated SignedSource<<1a4fbfad14dfb9f207da7764dc86d0a9>>
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
@@ -203,4 +203,4 @@ exports.useFormState = function (action, initialState, permalink) {
|
||||
exports.useFormStatus = function () {
|
||||
return ReactSharedInternals.H.useHostTransitionStatus();
|
||||
};
|
||||
exports.version = "19.2.0-native-fb-3820740a-20250509";
|
||||
exports.version = "19.2.0-native-fb-5d04d732-20250512";
|
||||
|
||||
Vendored
+2
-2
@@ -7,7 +7,7 @@
|
||||
* @noflow
|
||||
* @nolint
|
||||
* @preventMunge
|
||||
* @generated SignedSource<<41af065ee488f0f3c8ca924f1088f5a8>>
|
||||
* @generated SignedSource<<1a4fbfad14dfb9f207da7764dc86d0a9>>
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
@@ -203,4 +203,4 @@ exports.useFormState = function (action, initialState, permalink) {
|
||||
exports.useFormStatus = function () {
|
||||
return ReactSharedInternals.H.useHostTransitionStatus();
|
||||
};
|
||||
exports.version = "19.2.0-native-fb-3820740a-20250509";
|
||||
exports.version = "19.2.0-native-fb-5d04d732-20250512";
|
||||
|
||||
Vendored
+6
-6
@@ -7,7 +7,7 @@
|
||||
* @noflow
|
||||
* @nolint
|
||||
* @preventMunge
|
||||
* @generated SignedSource<<76feecee4f0a52c47a3cc07d0d7ee44b>>
|
||||
* @generated SignedSource<<6d27da61314961641e7cf54a2362c123>>
|
||||
*/
|
||||
|
||||
/*
|
||||
@@ -26958,11 +26958,11 @@ __DEV__ &&
|
||||
};
|
||||
(function () {
|
||||
var isomorphicReactPackageVersion = React.version;
|
||||
if ("19.2.0-native-fb-3820740a-20250509" !== isomorphicReactPackageVersion)
|
||||
if ("19.2.0-native-fb-5d04d732-20250512" !== isomorphicReactPackageVersion)
|
||||
throw Error(
|
||||
'Incompatible React versions: The "react" and "react-dom" packages must have the exact same version. Instead got:\n - react: ' +
|
||||
(isomorphicReactPackageVersion +
|
||||
"\n - react-dom: 19.2.0-native-fb-3820740a-20250509\nLearn more: https://react.dev/warnings/version-mismatch")
|
||||
"\n - react-dom: 19.2.0-native-fb-5d04d732-20250512\nLearn more: https://react.dev/warnings/version-mismatch")
|
||||
);
|
||||
})();
|
||||
("function" === typeof Map &&
|
||||
@@ -26999,10 +26999,10 @@ __DEV__ &&
|
||||
!(function () {
|
||||
var internals = {
|
||||
bundleType: 1,
|
||||
version: "19.2.0-native-fb-3820740a-20250509",
|
||||
version: "19.2.0-native-fb-5d04d732-20250512",
|
||||
rendererPackageName: "react-dom",
|
||||
currentDispatcherRef: ReactSharedInternals,
|
||||
reconcilerVersion: "19.2.0-native-fb-3820740a-20250509"
|
||||
reconcilerVersion: "19.2.0-native-fb-5d04d732-20250512"
|
||||
};
|
||||
internals.overrideHookState = overrideHookState;
|
||||
internals.overrideHookStateDeletePath = overrideHookStateDeletePath;
|
||||
@@ -27140,5 +27140,5 @@ __DEV__ &&
|
||||
listenToAllSupportedEvents(container);
|
||||
return new ReactDOMHydrationRoot(initialChildren);
|
||||
};
|
||||
exports.version = "19.2.0-native-fb-3820740a-20250509";
|
||||
exports.version = "19.2.0-native-fb-5d04d732-20250512";
|
||||
})();
|
||||
|
||||
compiled-rn/facebook-fbsource/xplat/js/RKJSModules/vendor/react/react-dom/cjs/ReactDOMClient-prod.js
Vendored
+6
-6
@@ -7,7 +7,7 @@
|
||||
* @noflow
|
||||
* @nolint
|
||||
* @preventMunge
|
||||
* @generated SignedSource<<1f8de5a86afd11f4b7311b0e7a887ea6>>
|
||||
* @generated SignedSource<<3442a9f5f58224570ecd258d47885200>>
|
||||
*/
|
||||
|
||||
/*
|
||||
@@ -17049,14 +17049,14 @@ ReactDOMHydrationRoot.prototype.unstable_scheduleHydration = function (target) {
|
||||
};
|
||||
var isomorphicReactPackageVersion$jscomp$inline_2015 = React.version;
|
||||
if (
|
||||
"19.2.0-native-fb-3820740a-20250509" !==
|
||||
"19.2.0-native-fb-5d04d732-20250512" !==
|
||||
isomorphicReactPackageVersion$jscomp$inline_2015
|
||||
)
|
||||
throw Error(
|
||||
formatProdErrorMessage(
|
||||
527,
|
||||
isomorphicReactPackageVersion$jscomp$inline_2015,
|
||||
"19.2.0-native-fb-3820740a-20250509"
|
||||
"19.2.0-native-fb-5d04d732-20250512"
|
||||
)
|
||||
);
|
||||
ReactDOMSharedInternals.findDOMNode = function (componentOrElement) {
|
||||
@@ -17078,10 +17078,10 @@ ReactDOMSharedInternals.findDOMNode = function (componentOrElement) {
|
||||
};
|
||||
var internals$jscomp$inline_2534 = {
|
||||
bundleType: 0,
|
||||
version: "19.2.0-native-fb-3820740a-20250509",
|
||||
version: "19.2.0-native-fb-5d04d732-20250512",
|
||||
rendererPackageName: "react-dom",
|
||||
currentDispatcherRef: ReactSharedInternals,
|
||||
reconcilerVersion: "19.2.0-native-fb-3820740a-20250509"
|
||||
reconcilerVersion: "19.2.0-native-fb-5d04d732-20250512"
|
||||
};
|
||||
if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) {
|
||||
var hook$jscomp$inline_2535 = __REACT_DEVTOOLS_GLOBAL_HOOK__;
|
||||
@@ -17179,4 +17179,4 @@ exports.hydrateRoot = function (container, initialChildren, options) {
|
||||
listenToAllSupportedEvents(container);
|
||||
return new ReactDOMHydrationRoot(initialChildren);
|
||||
};
|
||||
exports.version = "19.2.0-native-fb-3820740a-20250509";
|
||||
exports.version = "19.2.0-native-fb-5d04d732-20250512";
|
||||
|
||||
+6
-6
@@ -7,7 +7,7 @@
|
||||
* @noflow
|
||||
* @nolint
|
||||
* @preventMunge
|
||||
* @generated SignedSource<<03c4cf05a25988ae1f0a0d2904b80f8b>>
|
||||
* @generated SignedSource<<cddc1a32ff69c059973a4c78dbb4d67e>>
|
||||
*/
|
||||
|
||||
/*
|
||||
@@ -17759,14 +17759,14 @@ ReactDOMHydrationRoot.prototype.unstable_scheduleHydration = function (target) {
|
||||
};
|
||||
var isomorphicReactPackageVersion$jscomp$inline_2118 = React.version;
|
||||
if (
|
||||
"19.2.0-native-fb-3820740a-20250509" !==
|
||||
"19.2.0-native-fb-5d04d732-20250512" !==
|
||||
isomorphicReactPackageVersion$jscomp$inline_2118
|
||||
)
|
||||
throw Error(
|
||||
formatProdErrorMessage(
|
||||
527,
|
||||
isomorphicReactPackageVersion$jscomp$inline_2118,
|
||||
"19.2.0-native-fb-3820740a-20250509"
|
||||
"19.2.0-native-fb-5d04d732-20250512"
|
||||
)
|
||||
);
|
||||
ReactDOMSharedInternals.findDOMNode = function (componentOrElement) {
|
||||
@@ -17788,10 +17788,10 @@ ReactDOMSharedInternals.findDOMNode = function (componentOrElement) {
|
||||
};
|
||||
var internals$jscomp$inline_2125 = {
|
||||
bundleType: 0,
|
||||
version: "19.2.0-native-fb-3820740a-20250509",
|
||||
version: "19.2.0-native-fb-5d04d732-20250512",
|
||||
rendererPackageName: "react-dom",
|
||||
currentDispatcherRef: ReactSharedInternals,
|
||||
reconcilerVersion: "19.2.0-native-fb-3820740a-20250509",
|
||||
reconcilerVersion: "19.2.0-native-fb-5d04d732-20250512",
|
||||
getLaneLabelMap: function () {
|
||||
for (
|
||||
var map = new Map(), lane = 1, index$313 = 0;
|
||||
@@ -17904,4 +17904,4 @@ exports.hydrateRoot = function (container, initialChildren, options) {
|
||||
listenToAllSupportedEvents(container);
|
||||
return new ReactDOMHydrationRoot(initialChildren);
|
||||
};
|
||||
exports.version = "19.2.0-native-fb-3820740a-20250509";
|
||||
exports.version = "19.2.0-native-fb-5d04d732-20250512";
|
||||
|
||||
+6
-6
@@ -7,7 +7,7 @@
|
||||
* @noflow
|
||||
* @nolint
|
||||
* @preventMunge
|
||||
* @generated SignedSource<<3696261889534ceaa61d8ca1a9fa2a91>>
|
||||
* @generated SignedSource<<60eea729385551c6bccbf09b728212bf>>
|
||||
*/
|
||||
|
||||
/*
|
||||
@@ -27014,11 +27014,11 @@ __DEV__ &&
|
||||
};
|
||||
(function () {
|
||||
var isomorphicReactPackageVersion = React.version;
|
||||
if ("19.2.0-native-fb-3820740a-20250509" !== isomorphicReactPackageVersion)
|
||||
if ("19.2.0-native-fb-5d04d732-20250512" !== isomorphicReactPackageVersion)
|
||||
throw Error(
|
||||
'Incompatible React versions: The "react" and "react-dom" packages must have the exact same version. Instead got:\n - react: ' +
|
||||
(isomorphicReactPackageVersion +
|
||||
"\n - react-dom: 19.2.0-native-fb-3820740a-20250509\nLearn more: https://react.dev/warnings/version-mismatch")
|
||||
"\n - react-dom: 19.2.0-native-fb-5d04d732-20250512\nLearn more: https://react.dev/warnings/version-mismatch")
|
||||
);
|
||||
})();
|
||||
("function" === typeof Map &&
|
||||
@@ -27055,10 +27055,10 @@ __DEV__ &&
|
||||
!(function () {
|
||||
var internals = {
|
||||
bundleType: 1,
|
||||
version: "19.2.0-native-fb-3820740a-20250509",
|
||||
version: "19.2.0-native-fb-5d04d732-20250512",
|
||||
rendererPackageName: "react-dom",
|
||||
currentDispatcherRef: ReactSharedInternals,
|
||||
reconcilerVersion: "19.2.0-native-fb-3820740a-20250509"
|
||||
reconcilerVersion: "19.2.0-native-fb-5d04d732-20250512"
|
||||
};
|
||||
internals.overrideHookState = overrideHookState;
|
||||
internals.overrideHookStateDeletePath = overrideHookStateDeletePath;
|
||||
@@ -27512,7 +27512,7 @@ __DEV__ &&
|
||||
exports.useFormStatus = function () {
|
||||
return resolveDispatcher().useHostTransitionStatus();
|
||||
};
|
||||
exports.version = "19.2.0-native-fb-3820740a-20250509";
|
||||
exports.version = "19.2.0-native-fb-5d04d732-20250512";
|
||||
"undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&
|
||||
"function" ===
|
||||
typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop &&
|
||||
|
||||
+6
-6
@@ -7,7 +7,7 @@
|
||||
* @noflow
|
||||
* @nolint
|
||||
* @preventMunge
|
||||
* @generated SignedSource<<0aa7cdf2320221c483b837544445e39f>>
|
||||
* @generated SignedSource<<9985aa1f8e52cbdda2de5c30b9702b4f>>
|
||||
*/
|
||||
|
||||
/*
|
||||
@@ -17060,14 +17060,14 @@ ReactDOMHydrationRoot.prototype.unstable_scheduleHydration = function (target) {
|
||||
};
|
||||
var isomorphicReactPackageVersion$jscomp$inline_2016 = React.version;
|
||||
if (
|
||||
"19.2.0-native-fb-3820740a-20250509" !==
|
||||
"19.2.0-native-fb-5d04d732-20250512" !==
|
||||
isomorphicReactPackageVersion$jscomp$inline_2016
|
||||
)
|
||||
throw Error(
|
||||
formatProdErrorMessage(
|
||||
527,
|
||||
isomorphicReactPackageVersion$jscomp$inline_2016,
|
||||
"19.2.0-native-fb-3820740a-20250509"
|
||||
"19.2.0-native-fb-5d04d732-20250512"
|
||||
)
|
||||
);
|
||||
ReactDOMSharedInternals.findDOMNode = function (componentOrElement) {
|
||||
@@ -17089,10 +17089,10 @@ ReactDOMSharedInternals.findDOMNode = function (componentOrElement) {
|
||||
};
|
||||
var internals$jscomp$inline_2537 = {
|
||||
bundleType: 0,
|
||||
version: "19.2.0-native-fb-3820740a-20250509",
|
||||
version: "19.2.0-native-fb-5d04d732-20250512",
|
||||
rendererPackageName: "react-dom",
|
||||
currentDispatcherRef: ReactSharedInternals,
|
||||
reconcilerVersion: "19.2.0-native-fb-3820740a-20250509"
|
||||
reconcilerVersion: "19.2.0-native-fb-5d04d732-20250512"
|
||||
};
|
||||
if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) {
|
||||
var hook$jscomp$inline_2538 = __REACT_DEVTOOLS_GLOBAL_HOOK__;
|
||||
@@ -17343,4 +17343,4 @@ exports.useFormState = function (action, initialState, permalink) {
|
||||
exports.useFormStatus = function () {
|
||||
return ReactSharedInternals.H.useHostTransitionStatus();
|
||||
};
|
||||
exports.version = "19.2.0-native-fb-3820740a-20250509";
|
||||
exports.version = "19.2.0-native-fb-5d04d732-20250512";
|
||||
|
||||
+6
-6
@@ -7,7 +7,7 @@
|
||||
* @noflow
|
||||
* @nolint
|
||||
* @preventMunge
|
||||
* @generated SignedSource<<ffdfe2ea49628b58ebe55fb50e0f16f1>>
|
||||
* @generated SignedSource<<6db0a4344ce8ed47c63f948527c607c2>>
|
||||
*/
|
||||
|
||||
/*
|
||||
@@ -17774,14 +17774,14 @@ ReactDOMHydrationRoot.prototype.unstable_scheduleHydration = function (target) {
|
||||
};
|
||||
var isomorphicReactPackageVersion$jscomp$inline_2119 = React.version;
|
||||
if (
|
||||
"19.2.0-native-fb-3820740a-20250509" !==
|
||||
"19.2.0-native-fb-5d04d732-20250512" !==
|
||||
isomorphicReactPackageVersion$jscomp$inline_2119
|
||||
)
|
||||
throw Error(
|
||||
formatProdErrorMessage(
|
||||
527,
|
||||
isomorphicReactPackageVersion$jscomp$inline_2119,
|
||||
"19.2.0-native-fb-3820740a-20250509"
|
||||
"19.2.0-native-fb-5d04d732-20250512"
|
||||
)
|
||||
);
|
||||
ReactDOMSharedInternals.findDOMNode = function (componentOrElement) {
|
||||
@@ -17803,10 +17803,10 @@ ReactDOMSharedInternals.findDOMNode = function (componentOrElement) {
|
||||
};
|
||||
var internals$jscomp$inline_2126 = {
|
||||
bundleType: 0,
|
||||
version: "19.2.0-native-fb-3820740a-20250509",
|
||||
version: "19.2.0-native-fb-5d04d732-20250512",
|
||||
rendererPackageName: "react-dom",
|
||||
currentDispatcherRef: ReactSharedInternals,
|
||||
reconcilerVersion: "19.2.0-native-fb-3820740a-20250509",
|
||||
reconcilerVersion: "19.2.0-native-fb-5d04d732-20250512",
|
||||
getLaneLabelMap: function () {
|
||||
for (
|
||||
var map = new Map(), lane = 1, index$313 = 0;
|
||||
@@ -18072,7 +18072,7 @@ exports.useFormState = function (action, initialState, permalink) {
|
||||
exports.useFormStatus = function () {
|
||||
return ReactSharedInternals.H.useHostTransitionStatus();
|
||||
};
|
||||
exports.version = "19.2.0-native-fb-3820740a-20250509";
|
||||
exports.version = "19.2.0-native-fb-5d04d732-20250512";
|
||||
"undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&
|
||||
"function" ===
|
||||
typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop &&
|
||||
|
||||
+4
-4
@@ -7,7 +7,7 @@
|
||||
* @noflow
|
||||
* @nolint
|
||||
* @preventMunge
|
||||
* @generated SignedSource<<e9f9ec002a88298eb83ee5cb2e4e1c37>>
|
||||
* @generated SignedSource<<d818140bed2a4b48a1dfec7dbb2d82e6>>
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
@@ -15657,10 +15657,10 @@ __DEV__ &&
|
||||
(function () {
|
||||
var internals = {
|
||||
bundleType: 1,
|
||||
version: "19.2.0-native-fb-3820740a-20250509",
|
||||
version: "19.2.0-native-fb-5d04d732-20250512",
|
||||
rendererPackageName: "react-test-renderer",
|
||||
currentDispatcherRef: ReactSharedInternals,
|
||||
reconcilerVersion: "19.2.0-native-fb-3820740a-20250509"
|
||||
reconcilerVersion: "19.2.0-native-fb-5d04d732-20250512"
|
||||
};
|
||||
internals.overrideHookState = overrideHookState;
|
||||
internals.overrideHookStateDeletePath = overrideHookStateDeletePath;
|
||||
@@ -15805,5 +15805,5 @@ __DEV__ &&
|
||||
flushSyncWorkAcrossRoots_impl(0, !0));
|
||||
}
|
||||
};
|
||||
exports.version = "19.2.0-native-fb-3820740a-20250509";
|
||||
exports.version = "19.2.0-native-fb-5d04d732-20250512";
|
||||
})();
|
||||
|
||||
+4
-4
@@ -7,7 +7,7 @@
|
||||
* @noflow
|
||||
* @nolint
|
||||
* @preventMunge
|
||||
* @generated SignedSource<<7c3212f5d39f5a1aa37553da4d4ab792>>
|
||||
* @generated SignedSource<<41e0720f028c285eb8216257e177a0e2>>
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
@@ -9896,10 +9896,10 @@ function wrapFiber(fiber) {
|
||||
}
|
||||
var internals$jscomp$inline_1446 = {
|
||||
bundleType: 0,
|
||||
version: "19.2.0-native-fb-3820740a-20250509",
|
||||
version: "19.2.0-native-fb-5d04d732-20250512",
|
||||
rendererPackageName: "react-test-renderer",
|
||||
currentDispatcherRef: ReactSharedInternals,
|
||||
reconcilerVersion: "19.2.0-native-fb-3820740a-20250509"
|
||||
reconcilerVersion: "19.2.0-native-fb-5d04d732-20250512"
|
||||
};
|
||||
if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) {
|
||||
var hook$jscomp$inline_1447 = __REACT_DEVTOOLS_GLOBAL_HOOK__;
|
||||
@@ -10035,4 +10035,4 @@ exports.unstable_batchedUpdates = function (fn, a) {
|
||||
flushSyncWorkAcrossRoots_impl(0, !0));
|
||||
}
|
||||
};
|
||||
exports.version = "19.2.0-native-fb-3820740a-20250509";
|
||||
exports.version = "19.2.0-native-fb-5d04d732-20250512";
|
||||
|
||||
+4
-4
@@ -7,7 +7,7 @@
|
||||
* @noflow
|
||||
* @nolint
|
||||
* @preventMunge
|
||||
* @generated SignedSource<<6e1842c27d59f1c6b49b84300aa95ed6>>
|
||||
* @generated SignedSource<<30b8a0149cec6f643ebad982409cd532>>
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
@@ -10516,10 +10516,10 @@ function wrapFiber(fiber) {
|
||||
}
|
||||
var internals$jscomp$inline_1254 = {
|
||||
bundleType: 0,
|
||||
version: "19.2.0-native-fb-3820740a-20250509",
|
||||
version: "19.2.0-native-fb-5d04d732-20250512",
|
||||
rendererPackageName: "react-test-renderer",
|
||||
currentDispatcherRef: ReactSharedInternals,
|
||||
reconcilerVersion: "19.2.0-native-fb-3820740a-20250509",
|
||||
reconcilerVersion: "19.2.0-native-fb-5d04d732-20250512",
|
||||
getLaneLabelMap: function () {
|
||||
for (
|
||||
var map = new Map(), lane = 1, index$155 = 0;
|
||||
@@ -10670,4 +10670,4 @@ exports.unstable_batchedUpdates = function (fn, a) {
|
||||
flushSyncWorkAcrossRoots_impl(0, !0));
|
||||
}
|
||||
};
|
||||
exports.version = "19.2.0-native-fb-3820740a-20250509";
|
||||
exports.version = "19.2.0-native-fb-5d04d732-20250512";
|
||||
|
||||
+2
-2
@@ -7,7 +7,7 @@
|
||||
* @noflow
|
||||
* @nolint
|
||||
* @preventMunge
|
||||
* @generated SignedSource<<d426469c8e44163bac6aac3f78f02d0f>>
|
||||
* @generated SignedSource<<491c9fbf25782bee3ccb5909ef441b08>>
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
@@ -1411,7 +1411,7 @@ __DEV__ &&
|
||||
exports.useTransition = function () {
|
||||
return resolveDispatcher().useTransition();
|
||||
};
|
||||
exports.version = "19.2.0-native-fb-3820740a-20250509";
|
||||
exports.version = "19.2.0-native-fb-5d04d732-20250512";
|
||||
"undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&
|
||||
"function" ===
|
||||
typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop &&
|
||||
|
||||
+2
-2
@@ -7,7 +7,7 @@
|
||||
* @noflow
|
||||
* @nolint
|
||||
* @preventMunge
|
||||
* @generated SignedSource<<5111659091781f6596e54b2349a1b09f>>
|
||||
* @generated SignedSource<<a0424239574a7c53c79235a652735d23>>
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
@@ -586,4 +586,4 @@ exports.useSyncExternalStore = function (
|
||||
exports.useTransition = function () {
|
||||
return ReactSharedInternals.H.useTransition();
|
||||
};
|
||||
exports.version = "19.2.0-native-fb-3820740a-20250509";
|
||||
exports.version = "19.2.0-native-fb-5d04d732-20250512";
|
||||
|
||||
Vendored
+2
-2
@@ -7,7 +7,7 @@
|
||||
* @noflow
|
||||
* @nolint
|
||||
* @preventMunge
|
||||
* @generated SignedSource<<2d5f2e8fac616e31cc82259785b545cf>>
|
||||
* @generated SignedSource<<7c82428e7de2339e4ae9c17c9c0fbd16>>
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
@@ -590,7 +590,7 @@ exports.useSyncExternalStore = function (
|
||||
exports.useTransition = function () {
|
||||
return ReactSharedInternals.H.useTransition();
|
||||
};
|
||||
exports.version = "19.2.0-native-fb-3820740a-20250509";
|
||||
exports.version = "19.2.0-native-fb-5d04d732-20250512";
|
||||
"undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&
|
||||
"function" ===
|
||||
typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop &&
|
||||
|
||||
+1
-1
@@ -1 +1 @@
|
||||
3820740a7fbfc3b27a5127b43bdad44382ff3ce0
|
||||
5d04d73274a884ed53106677d56dd837ae668c45
|
||||
|
||||
+8
-3
@@ -7,7 +7,7 @@
|
||||
* @noflow
|
||||
* @nolint
|
||||
* @preventMunge
|
||||
* @generated SignedSource<<b0a1699aa257ea20879c20c3e139bdf0>>
|
||||
* @generated SignedSource<<26f8bbbf1215fe8cc5b70a12485a2298>>
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
@@ -11158,6 +11158,9 @@ __DEV__ &&
|
||||
(offscreenSubtreeWasHidden ||
|
||||
null === current ||
|
||||
safelyDetachRef(current, current.return));
|
||||
enableEagerAlternateStateNodeCleanup &&
|
||||
null !== finishedWork.alternate &&
|
||||
(finishedWork.alternate.stateNode = finishedWork.stateNode);
|
||||
break;
|
||||
case 6:
|
||||
recursivelyTraverseMutationEffects(root, finishedWork);
|
||||
@@ -14694,6 +14697,8 @@ __DEV__ &&
|
||||
enablePersistedModeClonedFlag =
|
||||
dynamicFlagsUntyped.enablePersistedModeClonedFlag,
|
||||
enableShallowPropDiffing = dynamicFlagsUntyped.enableShallowPropDiffing,
|
||||
enableEagerAlternateStateNodeCleanup =
|
||||
dynamicFlagsUntyped.enableEagerAlternateStateNodeCleanup,
|
||||
passChildrenWhenCloningPersistedNodes =
|
||||
dynamicFlagsUntyped.passChildrenWhenCloningPersistedNodes,
|
||||
enableFastAddPropertiesInDiffing =
|
||||
@@ -17479,10 +17484,10 @@ __DEV__ &&
|
||||
(function () {
|
||||
var internals = {
|
||||
bundleType: 1,
|
||||
version: "19.2.0-native-fb-3820740a-20250509",
|
||||
version: "19.2.0-native-fb-5d04d732-20250512",
|
||||
rendererPackageName: "react-native-renderer",
|
||||
currentDispatcherRef: ReactSharedInternals,
|
||||
reconcilerVersion: "19.2.0-native-fb-3820740a-20250509"
|
||||
reconcilerVersion: "19.2.0-native-fb-5d04d732-20250512"
|
||||
};
|
||||
null !== extraDevToolsConfig &&
|
||||
(internals.rendererConfig = extraDevToolsConfig);
|
||||
|
||||
+8
-3
@@ -7,7 +7,7 @@
|
||||
* @noflow
|
||||
* @nolint
|
||||
* @preventMunge
|
||||
* @generated SignedSource<<d0201c0515d0aabb011844cc5a4424b1>>
|
||||
* @generated SignedSource<<136c6dc85e53d6d73d07ef783d3f3c78>>
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
@@ -26,6 +26,8 @@ var ReactNativePrivateInterface = require("react-native/Libraries/ReactPrivate/R
|
||||
enablePersistedModeClonedFlag =
|
||||
dynamicFlagsUntyped.enablePersistedModeClonedFlag,
|
||||
enableShallowPropDiffing = dynamicFlagsUntyped.enableShallowPropDiffing,
|
||||
enableEagerAlternateStateNodeCleanup =
|
||||
dynamicFlagsUntyped.enableEagerAlternateStateNodeCleanup,
|
||||
passChildrenWhenCloningPersistedNodes =
|
||||
dynamicFlagsUntyped.passChildrenWhenCloningPersistedNodes,
|
||||
enableFastAddPropertiesInDiffing =
|
||||
@@ -8642,6 +8644,9 @@ function commitMutationEffectsOnFiber(finishedWork, root) {
|
||||
(offscreenSubtreeWasHidden ||
|
||||
null === current ||
|
||||
safelyDetachRef(current, current.return));
|
||||
enableEagerAlternateStateNodeCleanup &&
|
||||
null !== finishedWork.alternate &&
|
||||
(finishedWork.alternate.stateNode = finishedWork.stateNode);
|
||||
break;
|
||||
case 6:
|
||||
recursivelyTraverseMutationEffects(root, finishedWork);
|
||||
@@ -11195,10 +11200,10 @@ batchedUpdatesImpl = function (fn, a) {
|
||||
var roots = new Map(),
|
||||
internals$jscomp$inline_1255 = {
|
||||
bundleType: 0,
|
||||
version: "19.2.0-native-fb-3820740a-20250509",
|
||||
version: "19.2.0-native-fb-5d04d732-20250512",
|
||||
rendererPackageName: "react-native-renderer",
|
||||
currentDispatcherRef: ReactSharedInternals,
|
||||
reconcilerVersion: "19.2.0-native-fb-3820740a-20250509"
|
||||
reconcilerVersion: "19.2.0-native-fb-5d04d732-20250512"
|
||||
};
|
||||
null !== extraDevToolsConfig &&
|
||||
(internals$jscomp$inline_1255.rendererConfig = extraDevToolsConfig);
|
||||
|
||||
+8
-3
@@ -7,7 +7,7 @@
|
||||
* @noflow
|
||||
* @nolint
|
||||
* @preventMunge
|
||||
* @generated SignedSource<<fc72e65f053e0b86aa26d01d016ab640>>
|
||||
* @generated SignedSource<<69ff6cbf9873e741b31c0490fad9dea4>>
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
@@ -30,6 +30,8 @@ var ReactNativePrivateInterface = require("react-native/Libraries/ReactPrivate/R
|
||||
enablePersistedModeClonedFlag =
|
||||
dynamicFlagsUntyped.enablePersistedModeClonedFlag,
|
||||
enableShallowPropDiffing = dynamicFlagsUntyped.enableShallowPropDiffing,
|
||||
enableEagerAlternateStateNodeCleanup =
|
||||
dynamicFlagsUntyped.enableEagerAlternateStateNodeCleanup,
|
||||
passChildrenWhenCloningPersistedNodes =
|
||||
dynamicFlagsUntyped.passChildrenWhenCloningPersistedNodes,
|
||||
enableFastAddPropertiesInDiffing =
|
||||
@@ -9130,6 +9132,9 @@ function commitMutationEffectsOnFiber(finishedWork, root) {
|
||||
(offscreenSubtreeWasHidden ||
|
||||
null === current ||
|
||||
safelyDetachRef(current, current.return));
|
||||
enableEagerAlternateStateNodeCleanup &&
|
||||
null !== finishedWork.alternate &&
|
||||
(finishedWork.alternate.stateNode = finishedWork.stateNode);
|
||||
break;
|
||||
case 6:
|
||||
recursivelyTraverseMutationEffects(root, finishedWork);
|
||||
@@ -11899,10 +11904,10 @@ batchedUpdatesImpl = function (fn, a) {
|
||||
var roots = new Map(),
|
||||
internals$jscomp$inline_1356 = {
|
||||
bundleType: 0,
|
||||
version: "19.2.0-native-fb-3820740a-20250509",
|
||||
version: "19.2.0-native-fb-5d04d732-20250512",
|
||||
rendererPackageName: "react-native-renderer",
|
||||
currentDispatcherRef: ReactSharedInternals,
|
||||
reconcilerVersion: "19.2.0-native-fb-3820740a-20250509"
|
||||
reconcilerVersion: "19.2.0-native-fb-5d04d732-20250512"
|
||||
};
|
||||
null !== extraDevToolsConfig &&
|
||||
(internals$jscomp$inline_1356.rendererConfig = extraDevToolsConfig);
|
||||
|
||||
+5
-5
@@ -7,7 +7,7 @@
|
||||
* @noflow
|
||||
* @nolint
|
||||
* @preventMunge
|
||||
* @generated SignedSource<<97a232ba6a91201f0844c68036ea555b>>
|
||||
* @generated SignedSource<<b90ef213c8408f7f1b092fbe556962a8>>
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
@@ -17607,11 +17607,11 @@ __DEV__ &&
|
||||
shouldSuspendImpl = newShouldSuspendImpl;
|
||||
};
|
||||
var isomorphicReactPackageVersion = React.version;
|
||||
if ("19.2.0-native-fb-3820740a-20250509" !== isomorphicReactPackageVersion)
|
||||
if ("19.2.0-native-fb-5d04d732-20250512" !== isomorphicReactPackageVersion)
|
||||
throw Error(
|
||||
'Incompatible React versions: The "react" and "react-native-renderer" packages must have the exact same version. Instead got:\n - react: ' +
|
||||
(isomorphicReactPackageVersion +
|
||||
"\n - react-native-renderer: 19.2.0-native-fb-3820740a-20250509\nLearn more: https://react.dev/warnings/version-mismatch")
|
||||
"\n - react-native-renderer: 19.2.0-native-fb-5d04d732-20250512\nLearn more: https://react.dev/warnings/version-mismatch")
|
||||
);
|
||||
if (
|
||||
"function" !==
|
||||
@@ -17637,10 +17637,10 @@ __DEV__ &&
|
||||
(function () {
|
||||
var internals = {
|
||||
bundleType: 1,
|
||||
version: "19.2.0-native-fb-3820740a-20250509",
|
||||
version: "19.2.0-native-fb-5d04d732-20250512",
|
||||
rendererPackageName: "react-native-renderer",
|
||||
currentDispatcherRef: ReactSharedInternals,
|
||||
reconcilerVersion: "19.2.0-native-fb-3820740a-20250509"
|
||||
reconcilerVersion: "19.2.0-native-fb-5d04d732-20250512"
|
||||
};
|
||||
null !== extraDevToolsConfig &&
|
||||
(internals.rendererConfig = extraDevToolsConfig);
|
||||
|
||||
+5
-5
@@ -7,7 +7,7 @@
|
||||
* @noflow
|
||||
* @nolint
|
||||
* @preventMunge
|
||||
* @generated SignedSource<<49e7c75386f6344147e132a23fec71cb>>
|
||||
* @generated SignedSource<<0d40ebaa12fc6e396e545cf94500b958>>
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
@@ -11212,11 +11212,11 @@ function updateContainer(element, container, parentComponent, callback) {
|
||||
return lane;
|
||||
}
|
||||
var isomorphicReactPackageVersion = React.version;
|
||||
if ("19.2.0-native-fb-3820740a-20250509" !== isomorphicReactPackageVersion)
|
||||
if ("19.2.0-native-fb-5d04d732-20250512" !== isomorphicReactPackageVersion)
|
||||
throw Error(
|
||||
'Incompatible React versions: The "react" and "react-native-renderer" packages must have the exact same version. Instead got:\n - react: ' +
|
||||
(isomorphicReactPackageVersion +
|
||||
"\n - react-native-renderer: 19.2.0-native-fb-3820740a-20250509\nLearn more: https://react.dev/warnings/version-mismatch")
|
||||
"\n - react-native-renderer: 19.2.0-native-fb-5d04d732-20250512\nLearn more: https://react.dev/warnings/version-mismatch")
|
||||
);
|
||||
if (
|
||||
"function" !==
|
||||
@@ -11266,10 +11266,10 @@ batchedUpdatesImpl = function (fn, a) {
|
||||
var roots = new Map(),
|
||||
internals$jscomp$inline_1306 = {
|
||||
bundleType: 0,
|
||||
version: "19.2.0-native-fb-3820740a-20250509",
|
||||
version: "19.2.0-native-fb-5d04d732-20250512",
|
||||
rendererPackageName: "react-native-renderer",
|
||||
currentDispatcherRef: ReactSharedInternals,
|
||||
reconcilerVersion: "19.2.0-native-fb-3820740a-20250509"
|
||||
reconcilerVersion: "19.2.0-native-fb-5d04d732-20250512"
|
||||
};
|
||||
null !== extraDevToolsConfig &&
|
||||
(internals$jscomp$inline_1306.rendererConfig = extraDevToolsConfig);
|
||||
|
||||
+5
-5
@@ -7,7 +7,7 @@
|
||||
* @noflow
|
||||
* @nolint
|
||||
* @preventMunge
|
||||
* @generated SignedSource<<0999df59a6560bb059217daafd8fece7>>
|
||||
* @generated SignedSource<<ae3d00782bb42214199051413e64581f>>
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
@@ -11914,11 +11914,11 @@ function updateContainer(element, container, parentComponent, callback) {
|
||||
return lane;
|
||||
}
|
||||
var isomorphicReactPackageVersion = React.version;
|
||||
if ("19.2.0-native-fb-3820740a-20250509" !== isomorphicReactPackageVersion)
|
||||
if ("19.2.0-native-fb-5d04d732-20250512" !== isomorphicReactPackageVersion)
|
||||
throw Error(
|
||||
'Incompatible React versions: The "react" and "react-native-renderer" packages must have the exact same version. Instead got:\n - react: ' +
|
||||
(isomorphicReactPackageVersion +
|
||||
"\n - react-native-renderer: 19.2.0-native-fb-3820740a-20250509\nLearn more: https://react.dev/warnings/version-mismatch")
|
||||
"\n - react-native-renderer: 19.2.0-native-fb-5d04d732-20250512\nLearn more: https://react.dev/warnings/version-mismatch")
|
||||
);
|
||||
if (
|
||||
"function" !==
|
||||
@@ -11968,10 +11968,10 @@ batchedUpdatesImpl = function (fn, a) {
|
||||
var roots = new Map(),
|
||||
internals$jscomp$inline_1407 = {
|
||||
bundleType: 0,
|
||||
version: "19.2.0-native-fb-3820740a-20250509",
|
||||
version: "19.2.0-native-fb-5d04d732-20250512",
|
||||
rendererPackageName: "react-native-renderer",
|
||||
currentDispatcherRef: ReactSharedInternals,
|
||||
reconcilerVersion: "19.2.0-native-fb-3820740a-20250509"
|
||||
reconcilerVersion: "19.2.0-native-fb-5d04d732-20250512"
|
||||
};
|
||||
null !== extraDevToolsConfig &&
|
||||
(internals$jscomp$inline_1407.rendererConfig = extraDevToolsConfig);
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "eslint-plugin-react-hooks",
|
||||
"description": "ESLint rules for React Hooks",
|
||||
"version": "0.0.0-experimental-3820740a-20250509",
|
||||
"version": "0.0.0-experimental-5d04d732-20250512",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/facebook/react.git",
|
||||
|
||||
Reference in New Issue
Block a user