Skip to content

Commit 9b13002

Browse files
authored
Setup Wave 2 of Feature Flags for React Native (#28990)
## Summary Sets up dynamic feature flags for `disableStringRefs`, `enableFastJSX`, and `enableRefAsProp` in React Native (at Meta). ## How did you test this change? ``` $ yarn test $ yarn flow fabric ```
1 parent 5d29478 commit 9b13002

3 files changed

Lines changed: 15 additions & 15 deletions

File tree

packages/shared/forks/ReactFeatureFlags.native-fb-dynamic.js

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,13 @@
1919

2020
export const alwaysThrottleRetries = __VARIANT__;
2121
export const consoleManagedByDevToolsDuringStrictMode = __VARIANT__;
22-
export const enableEarlyReturnForPropDiffing = __VARIANT__;
22+
export const disableDefaultPropsExceptForClasses = __VARIANT__;
23+
export const disableStringRefs = __VARIANT__;
24+
export const enableAddPropertiesFastPath = __VARIANT__;
2325
export const enableDeferRootSchedulingToMicrotask = __VARIANT__;
26+
export const enableEarlyReturnForPropDiffing = __VARIANT__;
27+
export const enableFastJSX = __VARIANT__;
2428
export const enableInfiniteRenderLoopDetection = __VARIANT__;
29+
export const enableRefAsProp = __VARIANT__;
2530
export const enableUnifiedSyncLane = __VARIANT__;
2631
export const passChildrenWhenCloningPersistedNodes = __VARIANT__;
27-
export const disableDefaultPropsExceptForClasses = __VARIANT__;
28-
export const enableAddPropertiesFastPath = __VARIANT__;

packages/shared/forks/ReactFeatureFlags.native-fb.js

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -21,13 +21,16 @@ const dynamicFlags: DynamicExportsType = (dynamicFlagsUntyped: any);
2121
export const {
2222
alwaysThrottleRetries,
2323
consoleManagedByDevToolsDuringStrictMode,
24-
enableEarlyReturnForPropDiffing,
24+
disableDefaultPropsExceptForClasses,
25+
disableStringRefs,
26+
enableAddPropertiesFastPath,
2527
enableDeferRootSchedulingToMicrotask,
28+
enableEarlyReturnForPropDiffing,
29+
enableFastJSX,
2630
enableInfiniteRenderLoopDetection,
31+
enableRefAsProp,
2732
enableUnifiedSyncLane,
2833
passChildrenWhenCloningPersistedNodes,
29-
disableDefaultPropsExceptForClasses,
30-
enableAddPropertiesFastPath,
3134
} = dynamicFlags;
3235

3336
// The rest of the flags are static for better dead code elimination.
@@ -94,12 +97,6 @@ export const disableClientCache = true;
9497
export const enableServerComponentKeys = true;
9598
export const enableServerComponentLogs = true;
9699

97-
// TODO: Roll out with GK. Don't keep as dynamic flag for too long, though,
98-
// because JSX is an extremely hot path.
99-
export const enableRefAsProp = false;
100-
export const disableStringRefs = false;
101-
export const enableFastJSX = false;
102-
103100
export const enableReactTestRendererWarning = false;
104101
export const disableLegacyMode = false;
105102
export const disableDOMTestUtils = false;

packages/shared/forks/ReactFeatureFlags.test-renderer.native-fb.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -80,9 +80,9 @@ export const disableClientCache = true;
8080
export const enableServerComponentKeys = true;
8181
export const enableServerComponentLogs = true;
8282

83-
export const enableRefAsProp = false;
84-
export const disableStringRefs = false;
85-
export const enableFastJSX = false;
83+
export const enableRefAsProp = true;
84+
export const disableStringRefs = true;
85+
export const enableFastJSX = true;
8686

8787
export const enableReactTestRendererWarning = false;
8888
export const disableLegacyMode = false;

0 commit comments

Comments
 (0)