@samitouri / QOS-React-1 / commits / a3172e933c

Add dynamic `disableModulePatternComponents` flag for native-fb (#27739)

Makes `disableModulePatternComponents` a flag to allow us a slow rollout for RN internally.

Jan Kassens committed Nov 22, 2023 at 13:05 UTC a3172e933c7eb54aa02ec1d303453a96bc76181b
3 files changed +12 -10
packages/shared/forks/ReactFeatureFlags.native-fb-dynamic.js
+4 -3
@@ -20,12 +20,13 @@ import typeof * as DynamicFlagsType from 'ReactNativeInternalFeatureFlags';
20 // flag here but it won't be set to `true` in any of our test runs. Need to
21 // update the test configuration.
22
23 -export const enableUseRefAccessWarning = __VARIANT__;
23 +export const alwaysThrottleRetries = __VARIANT__;
24 +export const disableModulePatternComponents = __VARIANT__;
25 export const enableDeferRootSchedulingToMicrotask = __VARIANT__;
26 export const enableUnifiedSyncLane = __VARIANT__;
26 -export const alwaysThrottleRetries = __VARIANT__;
27 -export const useMicrotasksForSchedulingInFabric = __VARIANT__;
27 +export const enableUseRefAccessWarning = __VARIANT__;
28 export const passChildrenWhenCloningPersistedNodes = __VARIANT__;
29 +export const useMicrotasksForSchedulingInFabric = __VARIANT__;
30
31 // Flow magic to verify the exports of this file match the original version.
32 ((((null: any): ExportsType): DynamicFlagsType): ExportsType);
packages/shared/forks/ReactFeatureFlags.native-fb.js
+4 -4
@@ -18,12 +18,13 @@ import * as dynamicFlags from 'ReactNativeInternalFeatureFlags';
18 // We destructure each value before re-exporting to avoid a dynamic look-up on
19 // the exports object every time a flag is read.
20 export const {
21 - enableUseRefAccessWarning,
21 + alwaysThrottleRetries,
22 + disableModulePatternComponents,
23 enableDeferRootSchedulingToMicrotask,
24 enableUnifiedSyncLane,
24 - alwaysThrottleRetries,
25 - useMicrotasksForSchedulingInFabric,
25 + enableUseRefAccessWarning,
26 passChildrenWhenCloningPersistedNodes,
27 + useMicrotasksForSchedulingInFabric,
28 } = dynamicFlags;
29
30 // The rest of the flags are static for better dead code elimination.
@@ -55,7 +56,6 @@ export const enableSuspenseCallback = false;
56 export const disableLegacyContext = false;
57 export const enableTrustedTypesIntegration = false;
58 export const disableTextareaChildren = false;
58 -export const disableModulePatternComponents = false;
59 export const enableSuspenseAvoidThisFallback = false;
60 export const enableSuspenseAvoidThisFallbackFizz = false;
61 export const enableCPUSuspense = true;
scripts/flow/xplat.js
+4 -3
@@ -8,10 +8,11 @@
8 */
9
10 declare module 'ReactNativeInternalFeatureFlags' {
11 - declare export var enableUseRefAccessWarning: boolean;
11 + declare export var alwaysThrottleRetries: boolean;
12 + declare export var disableModulePatternComponents: boolean;
13 declare export var enableDeferRootSchedulingToMicrotask: boolean;
14 declare export var enableUnifiedSyncLane: boolean;
14 - declare export var alwaysThrottleRetries: boolean;
15 - declare export var useMicrotasksForSchedulingInFabric: boolean;
15 + declare export var enableUseRefAccessWarning: boolean;
16 declare export var passChildrenWhenCloningPersistedNodes: boolean;
17 + declare export var useMicrotasksForSchedulingInFabric: boolean;
18 }