Enable suspenseCallback on React Native (#29210)
## Summary suspenseCallback feature has proved to be useful for FB Web. Let's look at enabling the feature for the React Native build. ## How did you test this change? Will sync the react changes with a React Native build and will verify that performance logging is correctly notified of suspense promises during the suspense callback.
Benoit Girard committed
Aug 26, 2024 at 22:06 UTC
246d7bfeb0c90ecccd9531929b60a79d628a4c78
2 files changed
+6
-6
packages/react-reconciler/src/__tests__/ReactSuspenseCallback-test.js
+5
-5
@@ -46,7 +46,7 @@ describe('ReactSuspense', () => {
46
47
// Warning don't fire in production, so this test passes in prod even if
48
// the suspenseCallback feature is not enabled
49
- // @gate www || !__DEV__
49
+ // @gate enableSuspenseCallback || !__DEV__
50
it('check type', async () => {
51
const {PromiseComp} = createThenable();
52
@@ -71,7 +71,7 @@ describe('ReactSuspense', () => {
71
await expect(async () => await waitForAll([])).toErrorDev([]);
72
});
73
74
- // @gate www
74
+ // @gate enableSuspenseCallback
75
it('1 then 0 suspense callback', async () => {
76
const {promise, resolve, PromiseComp} = createThenable();
77
@@ -98,7 +98,7 @@ describe('ReactSuspense', () => {
98
expect(ops).toEqual([]);
99
});
100
101
- // @gate www
101
+ // @gate enableSuspenseCallback
102
it('2 then 1 then 0 suspense callback', async () => {
103
const {
104
promise: promise1,
@@ -145,7 +145,7 @@ describe('ReactSuspense', () => {
145
expect(ops).toEqual([]);
146
});
147
148
- // @gate www
148
+ // @gate enableSuspenseCallback
149
it('nested suspense promises are reported only for their tier', async () => {
150
const {promise, PromiseComp} = createThenable();
151
@@ -177,7 +177,7 @@ describe('ReactSuspense', () => {
177
expect(ops2).toEqual([new Set([promise])]);
178
});
179
180
- // @gate www
180
+ // @gate enableSuspenseCallback
181
it('competing suspense promises', async () => {
182
const {
183
promise: promise1,
packages/shared/forks/ReactFeatureFlags.native-fb.js
+1
-1
@@ -80,7 +80,7 @@ export const enableScopeAPI = false;
80
export const enableServerComponentLogs = true;
81
export const enableSuspenseAvoidThisFallback = false;
82
export const enableSuspenseAvoidThisFallbackFizz = false;
83
-export const enableSuspenseCallback = false;
83
+export const enableSuspenseCallback = true;
84
export const enableTaint = true;
85
export const enableTransitionTracing = false;
86
export const enableTrustedTypesIntegration = false;