You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[compiler] Allow assigning ref-accessing functions to objects if not mutated (facebook#34026)
Allows assigning a ref-accessing function to an object so long as that
object is not subsequently transitively mutated. We should likely
rewrite the ref validation to use the new mutation/aliasing effects,
which would provide a more consistent behavior across instruction types
and require fewer special cases like this.
---
[//]: # (BEGIN SAPLING FOOTER)
Stack created with [Sapling](https://sapling-scm.com). Best reviewed
with [ReviewStack](https://reviewstack.dev/facebook/react/pull/34026).
* facebook#34027
* __->__ facebook#34026
DiffTrain build for [04a7a61](facebook@04a7a61)
"Suspense Exception: This is not a real error! It's an implementation detail of `use` to interrupt the current render. You must either rethrow it immediately, or move the `use` call outside of the `try/catch` block. Capturing without rethrowing will lead to unexpected behavior.\n\nTo handle async errors, wrap your component in an error boundary, or call the promise's `.catch` method and pass the result to `use`."
17636
-
),
17637
-
SuspenseyCommitException = Error(
17638
-
"Suspense Exception: This is not a real error, and should not leak into userspace. If you're seeing this, it's likely a bug in React."
17639
-
),
17640
-
SuspenseActionException = Error(
17641
-
"Suspense Exception: This is not a real error! It's an implementation detail of `useActionState` to interrupt the current render. You must either rethrow it immediately, or move the `useActionState` call outside of the `try/catch` block. Capturing without rethrowing will lead to unexpected behavior.\n\nTo handle async errors, wrap your component in an error boundary."
17642
-
),
17643
-
noopSuspenseyCommitThenable = {
17644
-
then: function () {
17645
-
console.error(
17646
-
'Internal React error: A listener was unexpectedly attached to a "noop" thenable. This is a bug in React. Please file an issue.'
17647
-
);
17648
-
}
17649
-
},
17650
-
suspendedThenable = null,
17651
-
needsToResetSuspendedThenableDEV = !1,
17652
-
callComponent = {
17647
+
var callComponent = {
17653
17648
react_stack_bottom_frame: function (Component, props, secondArg) {
"Suspense Exception: This is not a real error! It's an implementation detail of `use` to interrupt the current render. You must either rethrow it immediately, or move the `use` call outside of the `try/catch` block. Capturing without rethrowing will lead to unexpected behavior.\n\nTo handle async errors, wrap your component in an error boundary, or call the promise's `.catch` method and pass the result to `use`."
17766
+
),
17767
+
SuspenseyCommitException = Error(
17768
+
"Suspense Exception: This is not a real error, and should not leak into userspace. If you're seeing this, it's likely a bug in React."
17769
+
),
17770
+
SuspenseActionException = Error(
17771
+
"Suspense Exception: This is not a real error! It's an implementation detail of `useActionState` to interrupt the current render. You must either rethrow it immediately, or move the `useActionState` call outside of the `try/catch` block. Capturing without rethrowing will lead to unexpected behavior.\n\nTo handle async errors, wrap your component in an error boundary."
17772
+
),
17773
+
noopSuspenseyCommitThenable = {
17774
+
then: function () {
17775
+
console.error(
17776
+
'Internal React error: A listener was unexpectedly attached to a "noop" thenable. This is a bug in React. Please file an issue.'
0 commit comments