[compiler] Fixes to enableTreatRefLikeIdentifiersAsRefs (#34000)

We added the `@enableTreatRefLikeIdentifiersAsRefs` feature a while back
but never enabled it. Since then we've continued to see examples that
motivate this mode, so here we're fixing it up to prepare to enable by
default. It now works as follows:

* If we find a property load or property store where both a) the
object's name is ref-like (`ref` or `-Ref`) and b) the property is
`current`, we infer the object itself as a ref and the value of the
property as a ref value. Originally the feature only detected property
loads, not stores.
* Inferred refs are not considered stable (this is a change from the
original implementation). The only way to get a stable ref is by calling
`useRef()`. We've seen issues with assuming refs are stable.

With this change, cases like the following now correctly error:

```js
function Foo(props) {
  const fooRef = props.fooRef;
  fooRef.current = true;
  ^^^^^^^^^^^^^^ cannot modify ref in render
}
```

---
[//]: # (BEGIN SAPLING FOOTER)
Stack created with [Sapling](https://sapling-scm.com). Best reviewed
with [ReviewStack](https://reviewstack.dev/facebook/react/pull/34000).
* #34027
* #34026
* #34025
* #34024
* #34005
* #34006
* #34004
* #34003
* __->__ #34000

DiffTrain build for [85bbe39ef8](https://github.com/facebook/react/commit/85bbe39ef8e24a192b5e9f2987b1babf8ce772e1)
This commit is contained in:
josephsavona
2025-07-29 10:05:50 -07:00
parent d75704db4e
commit 263abf8d70
26 changed files with 115 additions and 103 deletions
+1 -1
View File
@@ -1 +1 @@
19.2.0-native-fb-820af209-20250729
19.2.0-native-fb-85bbe39e-20250729
@@ -7,7 +7,7 @@
* @noflow
* @nolint
* @preventMunge
* @generated SignedSource<<f8b21cc24ef053773a5ef2c759dae2f0>>
* @generated SignedSource<<8309c6f6204dc58642f11648d3aa0a80>>
*/
"use strict";
@@ -404,5 +404,5 @@ __DEV__ &&
exports.useFormStatus = function () {
return resolveDispatcher().useHostTransitionStatus();
};
exports.version = "19.2.0-native-fb-820af209-20250729";
exports.version = "19.2.0-native-fb-85bbe39e-20250729";
})();
@@ -7,7 +7,7 @@
* @noflow
* @nolint
* @preventMunge
* @generated SignedSource<<46937cfe16e9375fcbab25ac47ade8fa>>
* @generated SignedSource<<ada4c5f7b2f76a58ce90e22caec463a6>>
*/
"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-820af209-20250729";
exports.version = "19.2.0-native-fb-85bbe39e-20250729";
@@ -7,7 +7,7 @@
* @noflow
* @nolint
* @preventMunge
* @generated SignedSource<<46937cfe16e9375fcbab25ac47ade8fa>>
* @generated SignedSource<<ada4c5f7b2f76a58ce90e22caec463a6>>
*/
"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-820af209-20250729";
exports.version = "19.2.0-native-fb-85bbe39e-20250729";
@@ -7,7 +7,7 @@
* @noflow
* @nolint
* @preventMunge
* @generated SignedSource<<91d9be576ed43f59bff4948bc07117cd>>
* @generated SignedSource<<c937c3fa71b645aaf141079a4eb3a7ea>>
*/
/*
@@ -29025,11 +29025,11 @@ __DEV__ &&
};
(function () {
var isomorphicReactPackageVersion = React.version;
if ("19.2.0-native-fb-820af209-20250729" !== isomorphicReactPackageVersion)
if ("19.2.0-native-fb-85bbe39e-20250729" !== 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-820af209-20250729\nLearn more: https://react.dev/warnings/version-mismatch")
"\n - react-dom: 19.2.0-native-fb-85bbe39e-20250729\nLearn more: https://react.dev/warnings/version-mismatch")
);
})();
("function" === typeof Map &&
@@ -29066,10 +29066,10 @@ __DEV__ &&
!(function () {
var internals = {
bundleType: 1,
version: "19.2.0-native-fb-820af209-20250729",
version: "19.2.0-native-fb-85bbe39e-20250729",
rendererPackageName: "react-dom",
currentDispatcherRef: ReactSharedInternals,
reconcilerVersion: "19.2.0-native-fb-820af209-20250729"
reconcilerVersion: "19.2.0-native-fb-85bbe39e-20250729"
};
internals.overrideHookState = overrideHookState;
internals.overrideHookStateDeletePath = overrideHookStateDeletePath;
@@ -29207,5 +29207,5 @@ __DEV__ &&
listenToAllSupportedEvents(container);
return new ReactDOMHydrationRoot(initialChildren);
};
exports.version = "19.2.0-native-fb-820af209-20250729";
exports.version = "19.2.0-native-fb-85bbe39e-20250729";
})();
@@ -7,7 +7,7 @@
* @noflow
* @nolint
* @preventMunge
* @generated SignedSource<<e366c3e46a53c1662f5bdc9a8c87d96e>>
* @generated SignedSource<<3e01d9d8dfe70d003aabdbd917c652f1>>
*/
/*
@@ -17128,14 +17128,14 @@ ReactDOMHydrationRoot.prototype.unstable_scheduleHydration = function (target) {
};
var isomorphicReactPackageVersion$jscomp$inline_2002 = React.version;
if (
"19.2.0-native-fb-820af209-20250729" !==
"19.2.0-native-fb-85bbe39e-20250729" !==
isomorphicReactPackageVersion$jscomp$inline_2002
)
throw Error(
formatProdErrorMessage(
527,
isomorphicReactPackageVersion$jscomp$inline_2002,
"19.2.0-native-fb-820af209-20250729"
"19.2.0-native-fb-85bbe39e-20250729"
)
);
ReactDOMSharedInternals.findDOMNode = function (componentOrElement) {
@@ -17157,10 +17157,10 @@ ReactDOMSharedInternals.findDOMNode = function (componentOrElement) {
};
var internals$jscomp$inline_2521 = {
bundleType: 0,
version: "19.2.0-native-fb-820af209-20250729",
version: "19.2.0-native-fb-85bbe39e-20250729",
rendererPackageName: "react-dom",
currentDispatcherRef: ReactSharedInternals,
reconcilerVersion: "19.2.0-native-fb-820af209-20250729"
reconcilerVersion: "19.2.0-native-fb-85bbe39e-20250729"
};
if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) {
var hook$jscomp$inline_2522 = __REACT_DEVTOOLS_GLOBAL_HOOK__;
@@ -17258,4 +17258,4 @@ exports.hydrateRoot = function (container, initialChildren, options) {
listenToAllSupportedEvents(container);
return new ReactDOMHydrationRoot(initialChildren);
};
exports.version = "19.2.0-native-fb-820af209-20250729";
exports.version = "19.2.0-native-fb-85bbe39e-20250729";
@@ -7,7 +7,7 @@
* @noflow
* @nolint
* @preventMunge
* @generated SignedSource<<5980f6f5028e7c9045cdca30e9cafb43>>
* @generated SignedSource<<0bb697ac6752af2d62713e28025820ad>>
*/
/*
@@ -19086,14 +19086,14 @@ ReactDOMHydrationRoot.prototype.unstable_scheduleHydration = function (target) {
};
var isomorphicReactPackageVersion$jscomp$inline_2242 = React.version;
if (
"19.2.0-native-fb-820af209-20250729" !==
"19.2.0-native-fb-85bbe39e-20250729" !==
isomorphicReactPackageVersion$jscomp$inline_2242
)
throw Error(
formatProdErrorMessage(
527,
isomorphicReactPackageVersion$jscomp$inline_2242,
"19.2.0-native-fb-820af209-20250729"
"19.2.0-native-fb-85bbe39e-20250729"
)
);
ReactDOMSharedInternals.findDOMNode = function (componentOrElement) {
@@ -19115,10 +19115,10 @@ ReactDOMSharedInternals.findDOMNode = function (componentOrElement) {
};
var internals$jscomp$inline_2249 = {
bundleType: 0,
version: "19.2.0-native-fb-820af209-20250729",
version: "19.2.0-native-fb-85bbe39e-20250729",
rendererPackageName: "react-dom",
currentDispatcherRef: ReactSharedInternals,
reconcilerVersion: "19.2.0-native-fb-820af209-20250729",
reconcilerVersion: "19.2.0-native-fb-85bbe39e-20250729",
getLaneLabelMap: function () {
for (
var map = new Map(), lane = 1, index$319 = 0;
@@ -19231,4 +19231,4 @@ exports.hydrateRoot = function (container, initialChildren, options) {
listenToAllSupportedEvents(container);
return new ReactDOMHydrationRoot(initialChildren);
};
exports.version = "19.2.0-native-fb-820af209-20250729";
exports.version = "19.2.0-native-fb-85bbe39e-20250729";
@@ -7,7 +7,7 @@
* @noflow
* @nolint
* @preventMunge
* @generated SignedSource<<bbdf930a69a50b79d8fa605ff1c68bc4>>
* @generated SignedSource<<042e52f96fa5db2d4229f53a3c16cce1>>
*/
/*
@@ -29081,11 +29081,11 @@ __DEV__ &&
};
(function () {
var isomorphicReactPackageVersion = React.version;
if ("19.2.0-native-fb-820af209-20250729" !== isomorphicReactPackageVersion)
if ("19.2.0-native-fb-85bbe39e-20250729" !== 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-820af209-20250729\nLearn more: https://react.dev/warnings/version-mismatch")
"\n - react-dom: 19.2.0-native-fb-85bbe39e-20250729\nLearn more: https://react.dev/warnings/version-mismatch")
);
})();
("function" === typeof Map &&
@@ -29122,10 +29122,10 @@ __DEV__ &&
!(function () {
var internals = {
bundleType: 1,
version: "19.2.0-native-fb-820af209-20250729",
version: "19.2.0-native-fb-85bbe39e-20250729",
rendererPackageName: "react-dom",
currentDispatcherRef: ReactSharedInternals,
reconcilerVersion: "19.2.0-native-fb-820af209-20250729"
reconcilerVersion: "19.2.0-native-fb-85bbe39e-20250729"
};
internals.overrideHookState = overrideHookState;
internals.overrideHookStateDeletePath = overrideHookStateDeletePath;
@@ -29579,7 +29579,7 @@ __DEV__ &&
exports.useFormStatus = function () {
return resolveDispatcher().useHostTransitionStatus();
};
exports.version = "19.2.0-native-fb-820af209-20250729";
exports.version = "19.2.0-native-fb-85bbe39e-20250729";
"undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&
"function" ===
typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop &&
@@ -7,7 +7,7 @@
* @noflow
* @nolint
* @preventMunge
* @generated SignedSource<<8057e42a1ec2c22c5081229d0e39d384>>
* @generated SignedSource<<eadc7a18ef76f75a63fb3d42612062f3>>
*/
/*
@@ -17139,14 +17139,14 @@ ReactDOMHydrationRoot.prototype.unstable_scheduleHydration = function (target) {
};
var isomorphicReactPackageVersion$jscomp$inline_2003 = React.version;
if (
"19.2.0-native-fb-820af209-20250729" !==
"19.2.0-native-fb-85bbe39e-20250729" !==
isomorphicReactPackageVersion$jscomp$inline_2003
)
throw Error(
formatProdErrorMessage(
527,
isomorphicReactPackageVersion$jscomp$inline_2003,
"19.2.0-native-fb-820af209-20250729"
"19.2.0-native-fb-85bbe39e-20250729"
)
);
ReactDOMSharedInternals.findDOMNode = function (componentOrElement) {
@@ -17168,10 +17168,10 @@ ReactDOMSharedInternals.findDOMNode = function (componentOrElement) {
};
var internals$jscomp$inline_2524 = {
bundleType: 0,
version: "19.2.0-native-fb-820af209-20250729",
version: "19.2.0-native-fb-85bbe39e-20250729",
rendererPackageName: "react-dom",
currentDispatcherRef: ReactSharedInternals,
reconcilerVersion: "19.2.0-native-fb-820af209-20250729"
reconcilerVersion: "19.2.0-native-fb-85bbe39e-20250729"
};
if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) {
var hook$jscomp$inline_2525 = __REACT_DEVTOOLS_GLOBAL_HOOK__;
@@ -17422,4 +17422,4 @@ exports.useFormState = function (action, initialState, permalink) {
exports.useFormStatus = function () {
return ReactSharedInternals.H.useHostTransitionStatus();
};
exports.version = "19.2.0-native-fb-820af209-20250729";
exports.version = "19.2.0-native-fb-85bbe39e-20250729";
@@ -7,7 +7,7 @@
* @noflow
* @nolint
* @preventMunge
* @generated SignedSource<<d0242a2d8574d8b55d6bc2b60d5093b3>>
* @generated SignedSource<<19b79154878565bc9201c3fda345c2e1>>
*/
/*
@@ -19101,14 +19101,14 @@ ReactDOMHydrationRoot.prototype.unstable_scheduleHydration = function (target) {
};
var isomorphicReactPackageVersion$jscomp$inline_2243 = React.version;
if (
"19.2.0-native-fb-820af209-20250729" !==
"19.2.0-native-fb-85bbe39e-20250729" !==
isomorphicReactPackageVersion$jscomp$inline_2243
)
throw Error(
formatProdErrorMessage(
527,
isomorphicReactPackageVersion$jscomp$inline_2243,
"19.2.0-native-fb-820af209-20250729"
"19.2.0-native-fb-85bbe39e-20250729"
)
);
ReactDOMSharedInternals.findDOMNode = function (componentOrElement) {
@@ -19130,10 +19130,10 @@ ReactDOMSharedInternals.findDOMNode = function (componentOrElement) {
};
var internals$jscomp$inline_2250 = {
bundleType: 0,
version: "19.2.0-native-fb-820af209-20250729",
version: "19.2.0-native-fb-85bbe39e-20250729",
rendererPackageName: "react-dom",
currentDispatcherRef: ReactSharedInternals,
reconcilerVersion: "19.2.0-native-fb-820af209-20250729",
reconcilerVersion: "19.2.0-native-fb-85bbe39e-20250729",
getLaneLabelMap: function () {
for (
var map = new Map(), lane = 1, index$319 = 0;
@@ -19399,7 +19399,7 @@ exports.useFormState = function (action, initialState, permalink) {
exports.useFormStatus = function () {
return ReactSharedInternals.H.useHostTransitionStatus();
};
exports.version = "19.2.0-native-fb-820af209-20250729";
exports.version = "19.2.0-native-fb-85bbe39e-20250729";
"undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&
"function" ===
typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop &&
@@ -7,7 +7,7 @@
* @noflow
* @nolint
* @preventMunge
* @generated SignedSource<<06e15cce0fbb51605bf2c52e5fd1a10e>>
* @generated SignedSource<<a9676cd0395eb965e4ca373c40fffcce>>
*/
"use strict";
@@ -15739,10 +15739,10 @@ __DEV__ &&
(function () {
var internals = {
bundleType: 1,
version: "19.2.0-native-fb-820af209-20250729",
version: "19.2.0-native-fb-85bbe39e-20250729",
rendererPackageName: "react-test-renderer",
currentDispatcherRef: ReactSharedInternals,
reconcilerVersion: "19.2.0-native-fb-820af209-20250729"
reconcilerVersion: "19.2.0-native-fb-85bbe39e-20250729"
};
internals.overrideHookState = overrideHookState;
internals.overrideHookStateDeletePath = overrideHookStateDeletePath;
@@ -15887,5 +15887,5 @@ __DEV__ &&
flushSyncWorkAcrossRoots_impl(0, !0));
}
};
exports.version = "19.2.0-native-fb-820af209-20250729";
exports.version = "19.2.0-native-fb-85bbe39e-20250729";
})();
@@ -7,7 +7,7 @@
* @noflow
* @nolint
* @preventMunge
* @generated SignedSource<<015208ef78918d562897d73054076a4b>>
* @generated SignedSource<<8ac89ed282e82fc209412af10cf45113>>
*/
"use strict";
@@ -9912,10 +9912,10 @@ function wrapFiber(fiber) {
}
var internals$jscomp$inline_1432 = {
bundleType: 0,
version: "19.2.0-native-fb-820af209-20250729",
version: "19.2.0-native-fb-85bbe39e-20250729",
rendererPackageName: "react-test-renderer",
currentDispatcherRef: ReactSharedInternals,
reconcilerVersion: "19.2.0-native-fb-820af209-20250729"
reconcilerVersion: "19.2.0-native-fb-85bbe39e-20250729"
};
if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) {
var hook$jscomp$inline_1433 = __REACT_DEVTOOLS_GLOBAL_HOOK__;
@@ -10051,4 +10051,4 @@ exports.unstable_batchedUpdates = function (fn, a) {
flushSyncWorkAcrossRoots_impl(0, !0));
}
};
exports.version = "19.2.0-native-fb-820af209-20250729";
exports.version = "19.2.0-native-fb-85bbe39e-20250729";
@@ -7,7 +7,7 @@
* @noflow
* @nolint
* @preventMunge
* @generated SignedSource<<76e116028ef547cb39c66055a1b7e355>>
* @generated SignedSource<<c3a94ef5848fadafc09577fe8f5a5e7f>>
*/
"use strict";
@@ -10532,10 +10532,10 @@ function wrapFiber(fiber) {
}
var internals$jscomp$inline_1239 = {
bundleType: 0,
version: "19.2.0-native-fb-820af209-20250729",
version: "19.2.0-native-fb-85bbe39e-20250729",
rendererPackageName: "react-test-renderer",
currentDispatcherRef: ReactSharedInternals,
reconcilerVersion: "19.2.0-native-fb-820af209-20250729",
reconcilerVersion: "19.2.0-native-fb-85bbe39e-20250729",
getLaneLabelMap: function () {
for (
var map = new Map(), lane = 1, index$143 = 0;
@@ -10686,4 +10686,4 @@ exports.unstable_batchedUpdates = function (fn, a) {
flushSyncWorkAcrossRoots_impl(0, !0));
}
};
exports.version = "19.2.0-native-fb-820af209-20250729";
exports.version = "19.2.0-native-fb-85bbe39e-20250729";
@@ -7,7 +7,7 @@
* @noflow
* @nolint
* @preventMunge
* @generated SignedSource<<72e22e14f261075efa4b5eb0864e3c50>>
* @generated SignedSource<<26bdbf2271269f7b76f948ebacab25e7>>
*/
"use strict";
@@ -1413,7 +1413,7 @@ __DEV__ &&
exports.useTransition = function () {
return resolveDispatcher().useTransition();
};
exports.version = "19.2.0-native-fb-820af209-20250729";
exports.version = "19.2.0-native-fb-85bbe39e-20250729";
"undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&
"function" ===
typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop &&
@@ -7,7 +7,7 @@
* @noflow
* @nolint
* @preventMunge
* @generated SignedSource<<fc953626ea149eb81d3bb925771e113b>>
* @generated SignedSource<<784de8dcc608ae5a9f197deb3d5f1d95>>
*/
"use strict";
@@ -589,4 +589,4 @@ exports.useSyncExternalStore = function (
exports.useTransition = function () {
return ReactSharedInternals.H.useTransition();
};
exports.version = "19.2.0-native-fb-820af209-20250729";
exports.version = "19.2.0-native-fb-85bbe39e-20250729";
@@ -7,7 +7,7 @@
* @noflow
* @nolint
* @preventMunge
* @generated SignedSource<<5f904bf639f54e3722635a1b2ef98a14>>
* @generated SignedSource<<3d838420a83d53fadbd63eea7c41bcf8>>
*/
"use strict";
@@ -593,7 +593,7 @@ exports.useSyncExternalStore = function (
exports.useTransition = function () {
return ReactSharedInternals.H.useTransition();
};
exports.version = "19.2.0-native-fb-820af209-20250729";
exports.version = "19.2.0-native-fb-85bbe39e-20250729";
"undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&
"function" ===
typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop &&
@@ -1 +1 @@
820af2097103309fdc5675d2bde744103a439eff
85bbe39ef8e24a192b5e9f2987b1babf8ce772e1
@@ -7,7 +7,7 @@
* @noflow
* @nolint
* @preventMunge
* @generated SignedSource<<8bc4b7fa6141d6a69563d35596f2d067>>
* @generated SignedSource<<2b97cb825a8de14dc2d802c2bffb3c88>>
*/
"use strict";
@@ -19244,10 +19244,10 @@ __DEV__ &&
(function () {
var internals = {
bundleType: 1,
version: "19.2.0-native-fb-820af209-20250729",
version: "19.2.0-native-fb-85bbe39e-20250729",
rendererPackageName: "react-native-renderer",
currentDispatcherRef: ReactSharedInternals,
reconcilerVersion: "19.2.0-native-fb-820af209-20250729"
reconcilerVersion: "19.2.0-native-fb-85bbe39e-20250729"
};
null !== extraDevToolsConfig &&
(internals.rendererConfig = extraDevToolsConfig);
@@ -7,7 +7,7 @@
* @noflow
* @nolint
* @preventMunge
* @generated SignedSource<<f231881363c96f69868487731c99972c>>
* @generated SignedSource<<e79e448514c1bbc3d57e7e3a9c2be592>>
*/
"use strict";
@@ -11016,10 +11016,10 @@ batchedUpdatesImpl = function (fn, a) {
var roots = new Map(),
internals$jscomp$inline_1235 = {
bundleType: 0,
version: "19.2.0-native-fb-820af209-20250729",
version: "19.2.0-native-fb-85bbe39e-20250729",
rendererPackageName: "react-native-renderer",
currentDispatcherRef: ReactSharedInternals,
reconcilerVersion: "19.2.0-native-fb-820af209-20250729"
reconcilerVersion: "19.2.0-native-fb-85bbe39e-20250729"
};
null !== extraDevToolsConfig &&
(internals$jscomp$inline_1235.rendererConfig = extraDevToolsConfig);
@@ -7,7 +7,7 @@
* @noflow
* @nolint
* @preventMunge
* @generated SignedSource<<2433c6dec5b26d625605939bbb83ef05>>
* @generated SignedSource<<0fc4f358ea3a17ef04da144fd603e629>>
*/
"use strict";
@@ -12945,10 +12945,10 @@ batchedUpdatesImpl = function (fn, a) {
var roots = new Map(),
internals$jscomp$inline_1470 = {
bundleType: 0,
version: "19.2.0-native-fb-820af209-20250729",
version: "19.2.0-native-fb-85bbe39e-20250729",
rendererPackageName: "react-native-renderer",
currentDispatcherRef: ReactSharedInternals,
reconcilerVersion: "19.2.0-native-fb-820af209-20250729"
reconcilerVersion: "19.2.0-native-fb-85bbe39e-20250729"
};
null !== extraDevToolsConfig &&
(internals$jscomp$inline_1470.rendererConfig = extraDevToolsConfig);
@@ -7,7 +7,7 @@
* @noflow
* @nolint
* @preventMunge
* @generated SignedSource<<bd7a27936c9578f35af9608e7d5709cf>>
* @generated SignedSource<<aeb9f96e76ba12ca6f01361c0603bf76>>
*/
"use strict";
@@ -19602,11 +19602,11 @@ __DEV__ &&
shouldSuspendImpl = newShouldSuspendImpl;
};
var isomorphicReactPackageVersion = React.version;
if ("19.2.0-native-fb-820af209-20250729" !== isomorphicReactPackageVersion)
if ("19.2.0-native-fb-85bbe39e-20250729" !== 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-820af209-20250729\nLearn more: https://react.dev/warnings/version-mismatch")
"\n - react-native-renderer: 19.2.0-native-fb-85bbe39e-20250729\nLearn more: https://react.dev/warnings/version-mismatch")
);
if (
"function" !==
@@ -19632,10 +19632,10 @@ __DEV__ &&
(function () {
var internals = {
bundleType: 1,
version: "19.2.0-native-fb-820af209-20250729",
version: "19.2.0-native-fb-85bbe39e-20250729",
rendererPackageName: "react-native-renderer",
currentDispatcherRef: ReactSharedInternals,
reconcilerVersion: "19.2.0-native-fb-820af209-20250729"
reconcilerVersion: "19.2.0-native-fb-85bbe39e-20250729"
};
null !== extraDevToolsConfig &&
(internals.rendererConfig = extraDevToolsConfig);
@@ -7,7 +7,7 @@
* @noflow
* @nolint
* @preventMunge
* @generated SignedSource<<1ceb537de194199d61177d5006fc095b>>
* @generated SignedSource<<ed3ec45618fe9436c7c57d855d48ca1a>>
*/
"use strict";
@@ -11242,11 +11242,11 @@ function updateContainer(element, container, parentComponent, callback) {
return lane;
}
var isomorphicReactPackageVersion = React.version;
if ("19.2.0-native-fb-820af209-20250729" !== isomorphicReactPackageVersion)
if ("19.2.0-native-fb-85bbe39e-20250729" !== 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-820af209-20250729\nLearn more: https://react.dev/warnings/version-mismatch")
"\n - react-native-renderer: 19.2.0-native-fb-85bbe39e-20250729\nLearn more: https://react.dev/warnings/version-mismatch")
);
if (
"function" !==
@@ -11296,10 +11296,10 @@ batchedUpdatesImpl = function (fn, a) {
var roots = new Map(),
internals$jscomp$inline_1293 = {
bundleType: 0,
version: "19.2.0-native-fb-820af209-20250729",
version: "19.2.0-native-fb-85bbe39e-20250729",
rendererPackageName: "react-native-renderer",
currentDispatcherRef: ReactSharedInternals,
reconcilerVersion: "19.2.0-native-fb-820af209-20250729"
reconcilerVersion: "19.2.0-native-fb-85bbe39e-20250729"
};
null !== extraDevToolsConfig &&
(internals$jscomp$inline_1293.rendererConfig = extraDevToolsConfig);
@@ -7,7 +7,7 @@
* @noflow
* @nolint
* @preventMunge
* @generated SignedSource<<136e26ae541ba78d142337cefd57066c>>
* @generated SignedSource<<5d86196437272ff1e42fd23146d7f24f>>
*/
"use strict";
@@ -13160,11 +13160,11 @@ function updateContainer(element, container, parentComponent, callback) {
return lane;
}
var isomorphicReactPackageVersion = React.version;
if ("19.2.0-native-fb-820af209-20250729" !== isomorphicReactPackageVersion)
if ("19.2.0-native-fb-85bbe39e-20250729" !== 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-820af209-20250729\nLearn more: https://react.dev/warnings/version-mismatch")
"\n - react-native-renderer: 19.2.0-native-fb-85bbe39e-20250729\nLearn more: https://react.dev/warnings/version-mismatch")
);
if (
"function" !==
@@ -13214,10 +13214,10 @@ batchedUpdatesImpl = function (fn, a) {
var roots = new Map(),
internals$jscomp$inline_1528 = {
bundleType: 0,
version: "19.2.0-native-fb-820af209-20250729",
version: "19.2.0-native-fb-85bbe39e-20250729",
rendererPackageName: "react-native-renderer",
currentDispatcherRef: ReactSharedInternals,
reconcilerVersion: "19.2.0-native-fb-820af209-20250729"
reconcilerVersion: "19.2.0-native-fb-85bbe39e-20250729"
};
null !== extraDevToolsConfig &&
(internals$jscomp$inline_1528.rendererConfig = extraDevToolsConfig);
@@ -12,7 +12,7 @@
* @lightSyntaxTransform
* @preventMunge
* @oncall react_core
* @generated SignedSource<<82fead294e1b0b5fcb96ef9cf7e4af9b>>
* @generated SignedSource<<85f4a03610e3d0a39fe3599dabbf580e>>
*/
'use strict';
@@ -22074,6 +22074,7 @@ addObject(BUILTIN_SHAPES, BuiltInUseRefId, [
addObject(BUILTIN_SHAPES, BuiltInRefValueId, [
['*', { kind: 'Object', shapeId: BuiltInRefValueId }],
]);
addObject(BUILTIN_SHAPES, ReanimatedSharedValueId, []);
addFunction(BUILTIN_SHAPES, [], {
positionalParams: [],
restParam: Effect.ConditionallyMutate,
@@ -44111,12 +44112,6 @@ class StableSidemap {
});
}
}
else if (this.env.config.enableTreatRefLikeIdentifiersAsRefs &&
isUseRefType(lvalue.identifier)) {
this.map.set(lvalue.identifier.id, {
isStable: true,
});
}
break;
}
case 'Destructure':
@@ -47373,7 +47368,18 @@ function* generateInstructionTypes(env, names, instr) {
yield equation(left, returnType);
break;
}
case 'PropertyStore':
case 'PropertyStore': {
yield equation(makeType(), {
kind: 'Property',
objectType: value.object.identifier.type,
objectName: getName(names, value.object.identifier.id),
propertyName: {
kind: 'literal',
value: value.property,
},
});
break;
}
case 'DeclareLocal':
case 'RegExpLiteral':
case 'MetaProperty':
@@ -6,7 +6,7 @@
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
* @generated SignedSource<<db1aa5f446193cc65773bb48a6e1b8ec>>
* @generated SignedSource<<377758887af8926074774ed2f3e15beb>>
*/
'use strict';
@@ -22059,6 +22059,7 @@ addObject(BUILTIN_SHAPES, BuiltInUseRefId, [
addObject(BUILTIN_SHAPES, BuiltInRefValueId, [
['*', { kind: 'Object', shapeId: BuiltInRefValueId }],
]);
addObject(BUILTIN_SHAPES, ReanimatedSharedValueId, []);
addFunction(BUILTIN_SHAPES, [], {
positionalParams: [],
restParam: Effect.ConditionallyMutate,
@@ -43890,12 +43891,6 @@ class StableSidemap {
});
}
}
else if (this.env.config.enableTreatRefLikeIdentifiersAsRefs &&
isUseRefType(lvalue.identifier)) {
this.map.set(lvalue.identifier.id, {
isStable: true,
});
}
break;
}
case 'Destructure':
@@ -47152,7 +47147,18 @@ function* generateInstructionTypes(env, names, instr) {
yield equation(left, returnType);
break;
}
case 'PropertyStore':
case 'PropertyStore': {
yield equation(makeType(), {
kind: 'Property',
objectType: value.object.identifier.type,
objectName: getName(names, value.object.identifier.id),
propertyName: {
kind: 'literal',
value: value.property,
},
});
break;
}
case 'DeclareLocal':
case 'RegExpLiteral':
case 'MetaProperty':
@@ -1,7 +1,7 @@
{
"name": "eslint-plugin-react-hooks",
"description": "ESLint rules for React Hooks",
"version": "0.0.0-experimental-820af209-20250729",
"version": "0.0.0-experimental-85bbe39e-20250729",
"repository": {
"type": "git",
"url": "https://github.com/facebook/react.git",