Cleanup lazyAnimationsCallback feature flag (#50191)

Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/50191

Changelog: [Internal]

Reviewed By: rshest

Differential Revision: D71616196

fbshipit-source-id: 9ff7169d99211a34e55ede6f22f0e4ffdda39330
This commit is contained in:
Pieter De Baets
2025-03-21 06:08:08 -07:00
committed by Facebook GitHub Bot
parent 424dbf66dd
commit 08aeffa929
23 changed files with 34 additions and 162 deletions
@@ -28,7 +28,6 @@ import com.facebook.react.bridge.WritableArray;
import com.facebook.react.bridge.WritableMap;
import com.facebook.react.common.annotations.VisibleForTesting;
import com.facebook.react.common.build.ReactBuildConfig;
import com.facebook.react.internal.featureflags.ReactNativeFeatureFlags;
import com.facebook.react.module.annotations.ReactModule;
import com.facebook.react.modules.core.ReactChoreographer;
import com.facebook.react.uimanager.GuardedFrameCallback;
@@ -256,10 +255,7 @@ public class NativeAnimatedModule extends NativeAnimatedModuleSpec
return;
}
if (!ReactNativeFeatureFlags.lazyAnimationCallbacks()
|| nodesManager.hasActiveAnimations()) {
enqueueFrameCallback();
}
enqueueFrameCallback();
} catch (Exception ex) {
throw new RuntimeException(ex);
}
@@ -1176,9 +1172,6 @@ public class NativeAnimatedModule extends NativeAnimatedModuleSpec
opsAndArgs.getInt(i++), opsAndArgs.getInt(i++));
break;
case OP_CODE_START_ANIMATING_NODE:
if (ReactNativeFeatureFlags.lazyAnimationCallbacks()) {
enqueueFrameCallback();
}
animatedNodesManager.startAnimatingNode(
// NULLSAFE_FIXME[Parameter Not Nullable]
opsAndArgs.getInt(i++), opsAndArgs.getInt(i++), opsAndArgs.getMap(i++), null);
@@ -4,7 +4,7 @@
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @generated SignedSource<<8522ebea8b35daaca25b4d1ee4e93dd9>>
* @generated SignedSource<<661dc1be35759bceb19c3521ed97c106>>
*/
/**
@@ -216,12 +216,6 @@ public object ReactNativeFeatureFlags {
@JvmStatic
public fun fuseboxNetworkInspectionEnabled(): Boolean = accessor.fuseboxNetworkInspectionEnabled()
/**
* Only enqueue Choreographer calls if there is an ongoing animation, instead of enqueueing every frame.
*/
@JvmStatic
public fun lazyAnimationCallbacks(): Boolean = accessor.lazyAnimationCallbacks()
/**
* When enabled, mutex _turboModuleManagerDelegateMutex in RCTTurboModuleManager will not be used
*/
@@ -4,7 +4,7 @@
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @generated SignedSource<<86fe1d1217f974eb9cbe2fc6b556b6f3>>
* @generated SignedSource<<db16919323fef2205be8b37537510c1d>>
*/
/**
@@ -51,7 +51,6 @@ internal class ReactNativeFeatureFlagsCxxAccessor : ReactNativeFeatureFlagsAcces
private var fixMountingCoordinatorReportedPendingTransactionsOnAndroidCache: Boolean? = null
private var fuseboxEnabledReleaseCache: Boolean? = null
private var fuseboxNetworkInspectionEnabledCache: Boolean? = null
private var lazyAnimationCallbacksCache: Boolean? = null
private var removeTurboModuleManagerDelegateMutexCache: Boolean? = null
private var throwExceptionInsteadOfDeadlockOnTurboModuleSetupDuringSyncRenderIOSCache: Boolean? = null
private var traceTurboModulePromiseRejectionsOnAndroidCache: Boolean? = null
@@ -343,15 +342,6 @@ internal class ReactNativeFeatureFlagsCxxAccessor : ReactNativeFeatureFlagsAcces
return cached
}
override fun lazyAnimationCallbacks(): Boolean {
var cached = lazyAnimationCallbacksCache
if (cached == null) {
cached = ReactNativeFeatureFlagsCxxInterop.lazyAnimationCallbacks()
lazyAnimationCallbacksCache = cached
}
return cached
}
override fun removeTurboModuleManagerDelegateMutex(): Boolean {
var cached = removeTurboModuleManagerDelegateMutexCache
if (cached == null) {
@@ -4,7 +4,7 @@
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @generated SignedSource<<e77961bfb13e7465783760d67c60c698>>
* @generated SignedSource<<522c2ef58105dc16f104e047b92cad88>>
*/
/**
@@ -90,8 +90,6 @@ public object ReactNativeFeatureFlagsCxxInterop {
@DoNotStrip @JvmStatic public external fun fuseboxNetworkInspectionEnabled(): Boolean
@DoNotStrip @JvmStatic public external fun lazyAnimationCallbacks(): Boolean
@DoNotStrip @JvmStatic public external fun removeTurboModuleManagerDelegateMutex(): Boolean
@DoNotStrip @JvmStatic public external fun throwExceptionInsteadOfDeadlockOnTurboModuleSetupDuringSyncRenderIOS(): Boolean
@@ -4,7 +4,7 @@
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @generated SignedSource<<f6242ae2989dd2da5ad73861933787f2>>
* @generated SignedSource<<8383768fde5c98d3a0ecd3bc69ab3332>>
*/
/**
@@ -85,8 +85,6 @@ public open class ReactNativeFeatureFlagsDefaults : ReactNativeFeatureFlagsProvi
override fun fuseboxNetworkInspectionEnabled(): Boolean = false
override fun lazyAnimationCallbacks(): Boolean = false
override fun removeTurboModuleManagerDelegateMutex(): Boolean = false
override fun throwExceptionInsteadOfDeadlockOnTurboModuleSetupDuringSyncRenderIOS(): Boolean = false
@@ -4,7 +4,7 @@
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @generated SignedSource<<5fc2a365b51c5e14f99ec1d3b162f4e3>>
* @generated SignedSource<<ca1ebdf95e0813e7946ffa781e35e0ff>>
*/
/**
@@ -55,7 +55,6 @@ internal class ReactNativeFeatureFlagsLocalAccessor : ReactNativeFeatureFlagsAcc
private var fixMountingCoordinatorReportedPendingTransactionsOnAndroidCache: Boolean? = null
private var fuseboxEnabledReleaseCache: Boolean? = null
private var fuseboxNetworkInspectionEnabledCache: Boolean? = null
private var lazyAnimationCallbacksCache: Boolean? = null
private var removeTurboModuleManagerDelegateMutexCache: Boolean? = null
private var throwExceptionInsteadOfDeadlockOnTurboModuleSetupDuringSyncRenderIOSCache: Boolean? = null
private var traceTurboModulePromiseRejectionsOnAndroidCache: Boolean? = null
@@ -378,16 +377,6 @@ internal class ReactNativeFeatureFlagsLocalAccessor : ReactNativeFeatureFlagsAcc
return cached
}
override fun lazyAnimationCallbacks(): Boolean {
var cached = lazyAnimationCallbacksCache
if (cached == null) {
cached = currentProvider.lazyAnimationCallbacks()
accessedFeatureFlags.add("lazyAnimationCallbacks")
lazyAnimationCallbacksCache = cached
}
return cached
}
override fun removeTurboModuleManagerDelegateMutex(): Boolean {
var cached = removeTurboModuleManagerDelegateMutexCache
if (cached == null) {
@@ -4,7 +4,7 @@
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @generated SignedSource<<1db9978c9096c9775fd7cd7d37637c8c>>
* @generated SignedSource<<0b3ff27c6f870a5d357fc840156d843c>>
*/
/**
@@ -85,8 +85,6 @@ public interface ReactNativeFeatureFlagsProvider {
@DoNotStrip public fun fuseboxNetworkInspectionEnabled(): Boolean
@DoNotStrip public fun lazyAnimationCallbacks(): Boolean
@DoNotStrip public fun removeTurboModuleManagerDelegateMutex(): Boolean
@DoNotStrip public fun throwExceptionInsteadOfDeadlockOnTurboModuleSetupDuringSyncRenderIOS(): Boolean
@@ -4,7 +4,7 @@
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @generated SignedSource<<e5e8463b0427a5dd49bc6cd2ccbfca45>>
* @generated SignedSource<<758258d179734897366670bec314def2>>
*/
/**
@@ -225,12 +225,6 @@ class ReactNativeFeatureFlagsJavaProvider
return method(javaProvider_);
}
bool lazyAnimationCallbacks() override {
static const auto method =
getReactNativeFeatureFlagsProviderJavaClass()->getMethod<jboolean()>("lazyAnimationCallbacks");
return method(javaProvider_);
}
bool removeTurboModuleManagerDelegateMutex() override {
static const auto method =
getReactNativeFeatureFlagsProviderJavaClass()->getMethod<jboolean()>("removeTurboModuleManagerDelegateMutex");
@@ -456,11 +450,6 @@ bool JReactNativeFeatureFlagsCxxInterop::fuseboxNetworkInspectionEnabled(
return ReactNativeFeatureFlags::fuseboxNetworkInspectionEnabled();
}
bool JReactNativeFeatureFlagsCxxInterop::lazyAnimationCallbacks(
facebook::jni::alias_ref<JReactNativeFeatureFlagsCxxInterop> /*unused*/) {
return ReactNativeFeatureFlags::lazyAnimationCallbacks();
}
bool JReactNativeFeatureFlagsCxxInterop::removeTurboModuleManagerDelegateMutex(
facebook::jni::alias_ref<JReactNativeFeatureFlagsCxxInterop> /*unused*/) {
return ReactNativeFeatureFlags::removeTurboModuleManagerDelegateMutex();
@@ -640,9 +629,6 @@ void JReactNativeFeatureFlagsCxxInterop::registerNatives() {
makeNativeMethod(
"fuseboxNetworkInspectionEnabled",
JReactNativeFeatureFlagsCxxInterop::fuseboxNetworkInspectionEnabled),
makeNativeMethod(
"lazyAnimationCallbacks",
JReactNativeFeatureFlagsCxxInterop::lazyAnimationCallbacks),
makeNativeMethod(
"removeTurboModuleManagerDelegateMutex",
JReactNativeFeatureFlagsCxxInterop::removeTurboModuleManagerDelegateMutex),
@@ -4,7 +4,7 @@
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @generated SignedSource<<e66d1a86ca5ae4c2ce4ec7ca20390edb>>
* @generated SignedSource<<d5c26e9524b1eaaf7c9389924e0df8d8>>
*/
/**
@@ -123,9 +123,6 @@ class JReactNativeFeatureFlagsCxxInterop
static bool fuseboxNetworkInspectionEnabled(
facebook::jni::alias_ref<JReactNativeFeatureFlagsCxxInterop>);
static bool lazyAnimationCallbacks(
facebook::jni::alias_ref<JReactNativeFeatureFlagsCxxInterop>);
static bool removeTurboModuleManagerDelegateMutex(
facebook::jni::alias_ref<JReactNativeFeatureFlagsCxxInterop>);
@@ -4,7 +4,7 @@
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @generated SignedSource<<07e6cf68cec4f7c7d61de4958b11ff4f>>
* @generated SignedSource<<8ebf334ae9a7fd165e8d8a48448fe5d7>>
*/
/**
@@ -150,10 +150,6 @@ bool ReactNativeFeatureFlags::fuseboxNetworkInspectionEnabled() {
return getAccessor().fuseboxNetworkInspectionEnabled();
}
bool ReactNativeFeatureFlags::lazyAnimationCallbacks() {
return getAccessor().lazyAnimationCallbacks();
}
bool ReactNativeFeatureFlags::removeTurboModuleManagerDelegateMutex() {
return getAccessor().removeTurboModuleManagerDelegateMutex();
}
@@ -4,7 +4,7 @@
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @generated SignedSource<<25a17c52439f8f8cd607d91f28fadb07>>
* @generated SignedSource<<83452819d876ba79d0ce3b45adfe70ce>>
*/
/**
@@ -194,11 +194,6 @@ class ReactNativeFeatureFlags {
*/
RN_EXPORT static bool fuseboxNetworkInspectionEnabled();
/**
* Only enqueue Choreographer calls if there is an ongoing animation, instead of enqueueing every frame.
*/
RN_EXPORT static bool lazyAnimationCallbacks();
/**
* When enabled, mutex _turboModuleManagerDelegateMutex in RCTTurboModuleManager will not be used
*/
@@ -4,7 +4,7 @@
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @generated SignedSource<<40daa9d9fc429b26ec6c178a6d9f6c5d>>
* @generated SignedSource<<554383ea858e6243bf37960317e1ebf8>>
*/
/**
@@ -587,24 +587,6 @@ bool ReactNativeFeatureFlagsAccessor::fuseboxNetworkInspectionEnabled() {
return flagValue.value();
}
bool ReactNativeFeatureFlagsAccessor::lazyAnimationCallbacks() {
auto flagValue = lazyAnimationCallbacks_.load();
if (!flagValue.has_value()) {
// This block is not exclusive but it is not necessary.
// If multiple threads try to initialize the feature flag, we would only
// be accessing the provider multiple times but the end state of this
// instance and the returned flag value would be the same.
markFlagAsAccessed(31, "lazyAnimationCallbacks");
flagValue = currentProvider_->lazyAnimationCallbacks();
lazyAnimationCallbacks_ = flagValue;
}
return flagValue.value();
}
bool ReactNativeFeatureFlagsAccessor::removeTurboModuleManagerDelegateMutex() {
auto flagValue = removeTurboModuleManagerDelegateMutex_.load();
@@ -614,7 +596,7 @@ bool ReactNativeFeatureFlagsAccessor::removeTurboModuleManagerDelegateMutex() {
// be accessing the provider multiple times but the end state of this
// instance and the returned flag value would be the same.
markFlagAsAccessed(32, "removeTurboModuleManagerDelegateMutex");
markFlagAsAccessed(31, "removeTurboModuleManagerDelegateMutex");
flagValue = currentProvider_->removeTurboModuleManagerDelegateMutex();
removeTurboModuleManagerDelegateMutex_ = flagValue;
@@ -632,7 +614,7 @@ bool ReactNativeFeatureFlagsAccessor::throwExceptionInsteadOfDeadlockOnTurboModu
// be accessing the provider multiple times but the end state of this
// instance and the returned flag value would be the same.
markFlagAsAccessed(33, "throwExceptionInsteadOfDeadlockOnTurboModuleSetupDuringSyncRenderIOS");
markFlagAsAccessed(32, "throwExceptionInsteadOfDeadlockOnTurboModuleSetupDuringSyncRenderIOS");
flagValue = currentProvider_->throwExceptionInsteadOfDeadlockOnTurboModuleSetupDuringSyncRenderIOS();
throwExceptionInsteadOfDeadlockOnTurboModuleSetupDuringSyncRenderIOS_ = flagValue;
@@ -650,7 +632,7 @@ bool ReactNativeFeatureFlagsAccessor::traceTurboModulePromiseRejectionsOnAndroid
// be accessing the provider multiple times but the end state of this
// instance and the returned flag value would be the same.
markFlagAsAccessed(34, "traceTurboModulePromiseRejectionsOnAndroid");
markFlagAsAccessed(33, "traceTurboModulePromiseRejectionsOnAndroid");
flagValue = currentProvider_->traceTurboModulePromiseRejectionsOnAndroid();
traceTurboModulePromiseRejectionsOnAndroid_ = flagValue;
@@ -668,7 +650,7 @@ bool ReactNativeFeatureFlagsAccessor::useAlwaysAvailableJSErrorHandling() {
// be accessing the provider multiple times but the end state of this
// instance and the returned flag value would be the same.
markFlagAsAccessed(35, "useAlwaysAvailableJSErrorHandling");
markFlagAsAccessed(34, "useAlwaysAvailableJSErrorHandling");
flagValue = currentProvider_->useAlwaysAvailableJSErrorHandling();
useAlwaysAvailableJSErrorHandling_ = flagValue;
@@ -686,7 +668,7 @@ bool ReactNativeFeatureFlagsAccessor::useEditTextStockAndroidFocusBehavior() {
// be accessing the provider multiple times but the end state of this
// instance and the returned flag value would be the same.
markFlagAsAccessed(36, "useEditTextStockAndroidFocusBehavior");
markFlagAsAccessed(35, "useEditTextStockAndroidFocusBehavior");
flagValue = currentProvider_->useEditTextStockAndroidFocusBehavior();
useEditTextStockAndroidFocusBehavior_ = flagValue;
@@ -704,7 +686,7 @@ bool ReactNativeFeatureFlagsAccessor::useFabricInterop() {
// be accessing the provider multiple times but the end state of this
// instance and the returned flag value would be the same.
markFlagAsAccessed(37, "useFabricInterop");
markFlagAsAccessed(36, "useFabricInterop");
flagValue = currentProvider_->useFabricInterop();
useFabricInterop_ = flagValue;
@@ -722,7 +704,7 @@ bool ReactNativeFeatureFlagsAccessor::useNativeViewConfigsInBridgelessMode() {
// be accessing the provider multiple times but the end state of this
// instance and the returned flag value would be the same.
markFlagAsAccessed(38, "useNativeViewConfigsInBridgelessMode");
markFlagAsAccessed(37, "useNativeViewConfigsInBridgelessMode");
flagValue = currentProvider_->useNativeViewConfigsInBridgelessMode();
useNativeViewConfigsInBridgelessMode_ = flagValue;
@@ -740,7 +722,7 @@ bool ReactNativeFeatureFlagsAccessor::useOptimizedEventBatchingOnAndroid() {
// be accessing the provider multiple times but the end state of this
// instance and the returned flag value would be the same.
markFlagAsAccessed(39, "useOptimizedEventBatchingOnAndroid");
markFlagAsAccessed(38, "useOptimizedEventBatchingOnAndroid");
flagValue = currentProvider_->useOptimizedEventBatchingOnAndroid();
useOptimizedEventBatchingOnAndroid_ = flagValue;
@@ -758,7 +740,7 @@ bool ReactNativeFeatureFlagsAccessor::useRawPropsJsiValue() {
// be accessing the provider multiple times but the end state of this
// instance and the returned flag value would be the same.
markFlagAsAccessed(40, "useRawPropsJsiValue");
markFlagAsAccessed(39, "useRawPropsJsiValue");
flagValue = currentProvider_->useRawPropsJsiValue();
useRawPropsJsiValue_ = flagValue;
@@ -776,7 +758,7 @@ bool ReactNativeFeatureFlagsAccessor::useTurboModuleInterop() {
// be accessing the provider multiple times but the end state of this
// instance and the returned flag value would be the same.
markFlagAsAccessed(41, "useTurboModuleInterop");
markFlagAsAccessed(40, "useTurboModuleInterop");
flagValue = currentProvider_->useTurboModuleInterop();
useTurboModuleInterop_ = flagValue;
@@ -794,7 +776,7 @@ bool ReactNativeFeatureFlagsAccessor::useTurboModules() {
// be accessing the provider multiple times but the end state of this
// instance and the returned flag value would be the same.
markFlagAsAccessed(42, "useTurboModules");
markFlagAsAccessed(41, "useTurboModules");
flagValue = currentProvider_->useTurboModules();
useTurboModules_ = flagValue;
@@ -4,7 +4,7 @@
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @generated SignedSource<<54364d504177fce95cc2cbbc2b55cb65>>
* @generated SignedSource<<9beffcac72be3722c64130acbe0aadd3>>
*/
/**
@@ -63,7 +63,6 @@ class ReactNativeFeatureFlagsAccessor {
bool fixMountingCoordinatorReportedPendingTransactionsOnAndroid();
bool fuseboxEnabledRelease();
bool fuseboxNetworkInspectionEnabled();
bool lazyAnimationCallbacks();
bool removeTurboModuleManagerDelegateMutex();
bool throwExceptionInsteadOfDeadlockOnTurboModuleSetupDuringSyncRenderIOS();
bool traceTurboModulePromiseRejectionsOnAndroid();
@@ -86,7 +85,7 @@ class ReactNativeFeatureFlagsAccessor {
std::unique_ptr<ReactNativeFeatureFlagsProvider> currentProvider_;
bool wasOverridden_;
std::array<std::atomic<const char*>, 43> accessedFeatureFlags_;
std::array<std::atomic<const char*>, 42> accessedFeatureFlags_;
std::atomic<std::optional<bool>> commonTestFlag_;
std::atomic<std::optional<bool>> animatedShouldSignalBatch_;
@@ -119,7 +118,6 @@ class ReactNativeFeatureFlagsAccessor {
std::atomic<std::optional<bool>> fixMountingCoordinatorReportedPendingTransactionsOnAndroid_;
std::atomic<std::optional<bool>> fuseboxEnabledRelease_;
std::atomic<std::optional<bool>> fuseboxNetworkInspectionEnabled_;
std::atomic<std::optional<bool>> lazyAnimationCallbacks_;
std::atomic<std::optional<bool>> removeTurboModuleManagerDelegateMutex_;
std::atomic<std::optional<bool>> throwExceptionInsteadOfDeadlockOnTurboModuleSetupDuringSyncRenderIOS_;
std::atomic<std::optional<bool>> traceTurboModulePromiseRejectionsOnAndroid_;
@@ -4,7 +4,7 @@
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @generated SignedSource<<e3a8b03ca156d28f227f00c5507adb5f>>
* @generated SignedSource<<799b8ba7a7c666ee5985777c26ce99a3>>
*/
/**
@@ -151,10 +151,6 @@ class ReactNativeFeatureFlagsDefaults : public ReactNativeFeatureFlagsProvider {
return false;
}
bool lazyAnimationCallbacks() override {
return false;
}
bool removeTurboModuleManagerDelegateMutex() override {
return false;
}
@@ -4,7 +4,7 @@
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @generated SignedSource<<28915a06a3c24b532384b481cc91d863>>
* @generated SignedSource<<1d0d1004706ba33b0896b671feca74a0>>
*/
/**
@@ -324,15 +324,6 @@ class ReactNativeFeatureFlagsDynamicProvider : public ReactNativeFeatureFlagsDef
return ReactNativeFeatureFlagsDefaults::fuseboxNetworkInspectionEnabled();
}
bool lazyAnimationCallbacks() override {
auto value = values_["lazyAnimationCallbacks"];
if (!value.isNull()) {
return value.getBool();
}
return ReactNativeFeatureFlagsDefaults::lazyAnimationCallbacks();
}
bool removeTurboModuleManagerDelegateMutex() override {
auto value = values_["removeTurboModuleManagerDelegateMutex"];
if (!value.isNull()) {
@@ -4,7 +4,7 @@
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @generated SignedSource<<53c858fa9ec8c4e3b9849f7513fdb441>>
* @generated SignedSource<<f694a97b02b01d4b56b5eac7f2a348e5>>
*/
/**
@@ -100,8 +100,6 @@ class ReactNativeFeatureFlagsOverridesOSSCanary : public ReactNativeFeatureFlags
@@ -4,7 +4,7 @@
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @generated SignedSource<<c19b9e1f879cc986fe114829c3a79df5>>
* @generated SignedSource<<ddf338308d0390152ddbec172c0ad40e>>
*/
/**
@@ -107,8 +107,6 @@ class ReactNativeFeatureFlagsOverridesOSSExperimental : public ReactNativeFeatur
@@ -4,7 +4,7 @@
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @generated SignedSource<<3d6eb54a5f64b0d5c72dae44e669052e>>
* @generated SignedSource<<d6cb5aeae8f53bc1bb1f6588240f2a7d>>
*/
/**
@@ -56,7 +56,6 @@ class ReactNativeFeatureFlagsProvider {
virtual bool fixMountingCoordinatorReportedPendingTransactionsOnAndroid() = 0;
virtual bool fuseboxEnabledRelease() = 0;
virtual bool fuseboxNetworkInspectionEnabled() = 0;
virtual bool lazyAnimationCallbacks() = 0;
virtual bool removeTurboModuleManagerDelegateMutex() = 0;
virtual bool throwExceptionInsteadOfDeadlockOnTurboModuleSetupDuringSyncRenderIOS() = 0;
virtual bool traceTurboModulePromiseRejectionsOnAndroid() = 0;
@@ -4,7 +4,7 @@
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @generated SignedSource<<d6f2e867002cef542b6915dc4b8a7131>>
* @generated SignedSource<<30a4515935eedcbec28b00e2f5ed8baa>>
*/
/**
@@ -199,11 +199,6 @@ bool NativeReactNativeFeatureFlags::fuseboxNetworkInspectionEnabled(
return ReactNativeFeatureFlags::fuseboxNetworkInspectionEnabled();
}
bool NativeReactNativeFeatureFlags::lazyAnimationCallbacks(
jsi::Runtime& /*runtime*/) {
return ReactNativeFeatureFlags::lazyAnimationCallbacks();
}
bool NativeReactNativeFeatureFlags::removeTurboModuleManagerDelegateMutex(
jsi::Runtime& /*runtime*/) {
return ReactNativeFeatureFlags::removeTurboModuleManagerDelegateMutex();
@@ -4,7 +4,7 @@
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @generated SignedSource<<a1d9ca51c1318434affebf7e01a3cd39>>
* @generated SignedSource<<d25c5c9c2965423eb0df0831249748f3>>
*/
/**
@@ -99,8 +99,6 @@ class NativeReactNativeFeatureFlags
bool fuseboxNetworkInspectionEnabled(jsi::Runtime& runtime);
bool lazyAnimationCallbacks(jsi::Runtime& runtime);
bool removeTurboModuleManagerDelegateMutex(jsi::Runtime& runtime);
bool throwExceptionInsteadOfDeadlockOnTurboModuleSetupDuringSyncRenderIOS(jsi::Runtime& runtime);
@@ -374,17 +374,6 @@ const definitions: FeatureFlagDefinitions = {
},
ossReleaseStage: 'none',
},
lazyAnimationCallbacks: {
defaultValue: false,
metadata: {
dateAdded: '2024-05-01',
description:
'Only enqueue Choreographer calls if there is an ongoing animation, instead of enqueueing every frame.',
expectedReleaseValue: true,
purpose: 'experimentation',
},
ossReleaseStage: 'none',
},
removeTurboModuleManagerDelegateMutex: {
defaultValue: false,
metadata: {
@@ -4,7 +4,7 @@
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @generated SignedSource<<b973b1eb2e4efa426813615bc784816e>>
* @generated SignedSource<<b4c870f632212fb3e61f747a8d190abb>>
* @flow strict
*/
@@ -78,7 +78,6 @@ export type ReactNativeFeatureFlags = $ReadOnly<{
fixMountingCoordinatorReportedPendingTransactionsOnAndroid: Getter<boolean>,
fuseboxEnabledRelease: Getter<boolean>,
fuseboxNetworkInspectionEnabled: Getter<boolean>,
lazyAnimationCallbacks: Getter<boolean>,
removeTurboModuleManagerDelegateMutex: Getter<boolean>,
throwExceptionInsteadOfDeadlockOnTurboModuleSetupDuringSyncRenderIOS: Getter<boolean>,
traceTurboModulePromiseRejectionsOnAndroid: Getter<boolean>,
@@ -285,10 +284,6 @@ export const fuseboxEnabledRelease: Getter<boolean> = createNativeFlagGetter('fu
* Enable network inspection support in the React Native DevTools CDP backend. Requires `enableBridgelessArchitecture`. This flag is global and should not be changed across React Host lifetimes.
*/
export const fuseboxNetworkInspectionEnabled: Getter<boolean> = createNativeFlagGetter('fuseboxNetworkInspectionEnabled', false);
/**
* Only enqueue Choreographer calls if there is an ongoing animation, instead of enqueueing every frame.
*/
export const lazyAnimationCallbacks: Getter<boolean> = createNativeFlagGetter('lazyAnimationCallbacks', false);
/**
* When enabled, mutex _turboModuleManagerDelegateMutex in RCTTurboModuleManager will not be used
*/
@@ -4,7 +4,7 @@
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @generated SignedSource<<b305837c79b4099dad5dac1431ec27a0>>
* @generated SignedSource<<e79622d7605c241135c7cdc947c9403b>>
* @flow strict
*/
@@ -55,7 +55,6 @@ export interface Spec extends TurboModule {
+fixMountingCoordinatorReportedPendingTransactionsOnAndroid?: () => boolean;
+fuseboxEnabledRelease?: () => boolean;
+fuseboxNetworkInspectionEnabled?: () => boolean;
+lazyAnimationCallbacks?: () => boolean;
+removeTurboModuleManagerDelegateMutex?: () => boolean;
+throwExceptionInsteadOfDeadlockOnTurboModuleSetupDuringSyncRenderIOS?: () => boolean;
+traceTurboModulePromiseRejectionsOnAndroid?: () => boolean;