Samuel Susla
36b078cc7a
unify feature flags between fb and oss for React Native renderer (#28269)
# Affected flags:
### alwaysThrottleRetries
In RN OSS changed from `true` to `false`. This is what FB build uses.
This flag was a root cause for big perf regression internally.
### enableDeferRootSchedulingToMicrotask
In RN OSS build changed from `true` to `false`. This is what FB build
uses.
### debugRenderPhaseSideEffectsForStrictMode
Changed from true to __DEV__ in FB and OSS build. The flag is only used
in debug builds and was previously `false` in RN OSS builds
### enableUnifiedSyncLane
Changed from `__VARIANT__` to `true` in FB build. This is what OSS build
uses. This flag is shipped internally. cc @tyao1
### enableLegacyHidden
In RN FB changed from `true` to `false`. This is what OSS uses.
### allowConcurrentByDefault
In RN FB changed from `true` to `false`.
I ran `yarn flags --diff rn rn-fb` to get the difference between feature
flags and unify them.
## Before
```
yarn run v1.22.19
$ node ./scripts/flags/flags.js --diff rn rn-fb
┌───────────────────────────────────────────────┬────────┬───────┐
│ (index) │ RN OSS │ RN FB │
├───────────────────────────────────────────────┼────────┼───────┤
│ allowConcurrentByDefault │ '❌' │ '✅' │
│ debugRenderPhaseSideEffectsForStrictMode │ '❌' │ '✅' │
│ disableModulePatternComponents │ '❌' │ '✅' │
│ enableCPUSuspense │ '❌' │ '✅' │
│ enableCacheElement │ '❌' │ '✅' │
│ enableGetInspectorDataForInstanceInProduction │ '❌' │ '✅' │
│ enableLegacyHidden │ '❌' │ '✅' │
│ enableSchedulingProfiler │ '❌' │ '📊' │
│ enableUseDeferredValueInitialArg │ '❌' │ '✅' │
│ enableUseMemoCacheHook │ '❌' │ '✅' │
│ enableUseRefAccessWarning │ '❌' │ '🧪' │
│ passChildrenWhenCloningPersistedNodes │ '❌' │ '🧪' │
│ useMicrotasksForSchedulingInFabric │ '❌' │ '🧪' │
│ alwaysThrottleRetries │ '✅' │ '🧪' │
│ enableDeferRootSchedulingToMicrotask │ '✅' │ '🧪' │
│ enableUnifiedSyncLane │ '✅' │ '🧪' │
└───────────────────────────────────────────────┴────────┴───────┘
```
## After
```
yarn run v1.22.19
$ node ./scripts/flags/flags.js --diff rn rn-fb
┌───────────────────────────────────────────────┬────────┬───────┐
│ (index) │ RN OSS │ RN FB │
├───────────────────────────────────────────────┼────────┼───────┤
│ alwaysThrottleRetries │ '❌' │ '🧪' │
│ disableModulePatternComponents │ '❌' │ '✅' │
│ enableCPUSuspense │ '❌' │ '✅' │
│ enableCacheElement │ '❌' │ '✅' │
│ enableDeferRootSchedulingToMicrotask │ '❌' │ '🧪' │
│ enableGetInspectorDataForInstanceInProduction │ '❌' │ '✅' │
│ enableSchedulingProfiler │ '❌' │ '📊' │
│ enableUseDeferredValueInitialArg │ '❌' │ '✅' │
│ enableUseMemoCacheHook │ '❌' │ '✅' │
│ enableUseRefAccessWarning │ '❌' │ '🧪' │
│ passChildrenWhenCloningPersistedNodes │ '❌' │ '🧪' │
│ useMicrotasksForSchedulingInFabric │ '❌' │ '🧪' │
└───────────────────────────────────────────────┴────────┴───────┘
```
2024-02-09 09:46:42 +00:00
..
2024-02-01 11:24:04 -05:00
2023-11-09 10:53:08 -05:00
2023-12-15 21:38:01 -05:00
2022-12-20 14:27:01 -05:00
2023-12-04 17:22:03 +00:00
2023-01-31 08:25:05 -05:00
2024-02-09 09:46:42 +00:00