@samitouri / QOS-React / commits / 246d7bfeb0

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;