Skip to content

Commit

Permalink
Make prerendering always non-blocking with fix (#31452)
Browse files Browse the repository at this point in the history
We've previously failed to land this change due to some internal apps
seeing infinite render loops due to external store state updates during
render. It turns out that since the `renderWasConcurrent` var was moved
into the do block, the sync render triggered from the external store
check was stuck with a `RootSuspended` `exitStatus`. So this is not
unique to sibling prerendering but more generally related to how we
handle update to a sync external store during render.

We've tested this build against local repros which now render without
crashes. We will try to add a unit test to cover the scenario as well.

---------

Co-authored-by: Andrew Clark <git@andrewclark.io>
Co-authored-by: Rick Hanlon <rickhanlonii@fb.com>

DiffTrain build for [989af12](989af12)
  • Loading branch information
jackpope committed Nov 8, 2024
1 parent 4cc587f commit 1decb40
Show file tree
Hide file tree
Showing 23 changed files with 4,664 additions and 4,399 deletions.
2 changes: 1 addition & 1 deletion compiled-rn/VERSION_NATIVE_FB
Original file line number Diff line number Diff line change
@@ -1 +1 @@
19.0.0-native-fb-5c56b873-20241107
19.0.0-native-fb-989af12f-20241108
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
* @noflow
* @nolint
* @preventMunge
* @generated SignedSource<<5c9a804b7140967367e1adde199edc5b>>
* @generated SignedSource<<d3072dc54c06b9fce9de2382ae8e659b>>
*/

"use strict";
Expand Down Expand Up @@ -420,5 +420,5 @@ __DEV__ &&
exports.useFormStatus = function () {
return resolveDispatcher().useHostTransitionStatus();
};
exports.version = "19.0.0-native-fb-5c56b873-20241107";
exports.version = "19.0.0-native-fb-989af12f-20241108";
})();
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
* @noflow
* @nolint
* @preventMunge
* @generated SignedSource<<ccd360770cecadb5ca13dc9612c85dc8>>
* @generated SignedSource<<dd9c52551f32d06520da8c1e032485fc>>
*/

"use strict";
Expand Down Expand Up @@ -203,4 +203,4 @@ exports.useFormState = function (action, initialState, permalink) {
exports.useFormStatus = function () {
return ReactSharedInternals.H.useHostTransitionStatus();
};
exports.version = "19.0.0-native-fb-5c56b873-20241107";
exports.version = "19.0.0-native-fb-989af12f-20241108";
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
* @noflow
* @nolint
* @preventMunge
* @generated SignedSource<<ccd360770cecadb5ca13dc9612c85dc8>>
* @generated SignedSource<<dd9c52551f32d06520da8c1e032485fc>>
*/

"use strict";
Expand Down Expand Up @@ -203,4 +203,4 @@ exports.useFormState = function (action, initialState, permalink) {
exports.useFormStatus = function () {
return ReactSharedInternals.H.useHostTransitionStatus();
};
exports.version = "19.0.0-native-fb-5c56b873-20241107";
exports.version = "19.0.0-native-fb-989af12f-20241108";

Large diffs are not rendered by default.

Loading

0 comments on commit 1decb40

Please sign in to comment.