Skip to content

Commit 4677c4b

Browse files
committed
Remove useTurboModules feature flag
Summary: The `useTurboModules` feature flag has been removed; it was always set to true on the canary release stage and there are no remaining callers (all inlined in earlier diffs of this stack). This diff: - Removes the `useTurboModules` entry from `ReactNativeFeatureFlags.config.js`. - Updates the description of `enableBridgelessArchitecture` (which referenced `useTurboModules`). - Regenerates the codegen output: the 7 Kotlin `generated` files in `ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/`, the C++ headers and implementations under `ReactCommon/react/featureflags/` and `ReactCommon/react/nativemodule/featureflags/`, the JNI bridge under `ReactAndroid/src/main/jni/react/featureflags/`, and the JS modules under `src/private/featureflags/`. The flag is in the `com.facebook.react.internal.featureflags` package and is excluded from `ReactAndroid.api` tracking; no API metadata regeneration is needed. Behavior is unchanged. Changelog: [General][Removed] - Remove the `useTurboModules` feature flag. TurboModules are now always enabled. Differential Revision: D105718208
1 parent 4bf9597 commit 4677c4b

22 files changed

Lines changed: 31 additions & 154 deletions

packages/react-native/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlags.kt

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
* This source code is licensed under the MIT license found in the
55
* LICENSE file in the root directory of this source tree.
66
*
7-
* @generated SignedSource<<2d0170cf9c00d83fd40ad45d245a80af>>
7+
* @generated SignedSource<<80d0515ac30df66c8e78da362de511c5>>
88
*/
99

1010
/**
@@ -109,7 +109,7 @@ public object ReactNativeFeatureFlags {
109109
public fun enableAndroidTextMeasurementOptimizations(): Boolean = accessor.enableAndroidTextMeasurementOptimizations()
110110

111111
/**
112-
* Feature flag to enable the new bridgeless architecture. Note: Enabling this will force enable the following flag: `useTurboModules`.
112+
* Feature flag to enable the new bridgeless architecture.
113113
*/
114114
@JvmStatic
115115
public fun enableBridgelessArchitecture(): Boolean = accessor.enableBridgelessArchitecture()
@@ -534,12 +534,6 @@ public object ReactNativeFeatureFlags {
534534
@JvmStatic
535535
public fun useTurboModuleInterop(): Boolean = accessor.useTurboModuleInterop()
536536

537-
/**
538-
* When enabled, NativeModules will be executed by using the TurboModule system
539-
*/
540-
@JvmStatic
541-
public fun useTurboModules(): Boolean = accessor.useTurboModules()
542-
543537
/**
544538
* Use std::unordered_map instead of TinyMap in the Differentiator for improved lookup performance.
545539
*/

packages/react-native/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxAccessor.kt

Lines changed: 1 addition & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
* This source code is licensed under the MIT license found in the
55
* LICENSE file in the root directory of this source tree.
66
*
7-
* @generated SignedSource<<51900f2da230f82fc5efd9a13ffd0d91>>
7+
* @generated SignedSource<<d44ceaab2a12d7e8fefa5fce6ae6b5f7>>
88
*/
99

1010
/**
@@ -104,7 +104,6 @@ internal class ReactNativeFeatureFlagsCxxAccessor : ReactNativeFeatureFlagsAcces
104104
private var useSharedAnimatedBackendCache: Boolean? = null
105105
private var useTraitHiddenOnAndroidCache: Boolean? = null
106106
private var useTurboModuleInteropCache: Boolean? = null
107-
private var useTurboModulesCache: Boolean? = null
108107
private var useUnorderedMapInDifferentiatorCache: Boolean? = null
109108
private var viewCullingOutsetRatioCache: Double? = null
110109
private var viewTransitionEnabledCache: Boolean? = null
@@ -867,15 +866,6 @@ internal class ReactNativeFeatureFlagsCxxAccessor : ReactNativeFeatureFlagsAcces
867866
return cached
868867
}
869868

870-
override fun useTurboModules(): Boolean {
871-
var cached = useTurboModulesCache
872-
if (cached == null) {
873-
cached = ReactNativeFeatureFlagsCxxInterop.useTurboModules()
874-
useTurboModulesCache = cached
875-
}
876-
return cached
877-
}
878-
879869
override fun useUnorderedMapInDifferentiator(): Boolean {
880870
var cached = useUnorderedMapInDifferentiatorCache
881871
if (cached == null) {

packages/react-native/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxInterop.kt

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
* This source code is licensed under the MIT license found in the
55
* LICENSE file in the root directory of this source tree.
66
*
7-
* @generated SignedSource<<70e36afad977606eae1a41bc202d2581>>
7+
* @generated SignedSource<<7c674bb73cd3968828ad1ff2b80d83cb>>
88
*/
99

1010
/**
@@ -196,8 +196,6 @@ public object ReactNativeFeatureFlagsCxxInterop {
196196

197197
@DoNotStrip @JvmStatic public external fun useTurboModuleInterop(): Boolean
198198

199-
@DoNotStrip @JvmStatic public external fun useTurboModules(): Boolean
200-
201199
@DoNotStrip @JvmStatic public external fun useUnorderedMapInDifferentiator(): Boolean
202200

203201
@DoNotStrip @JvmStatic public external fun viewCullingOutsetRatio(): Double

packages/react-native/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsDefaults.kt

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
* This source code is licensed under the MIT license found in the
55
* LICENSE file in the root directory of this source tree.
66
*
7-
* @generated SignedSource<<9dc3bafd53661fa704dad6e5902b6fe5>>
7+
* @generated SignedSource<<869443ae5e3a602f83256544938d30a0>>
88
*/
99

1010
/**
@@ -191,8 +191,6 @@ public open class ReactNativeFeatureFlagsDefaults : ReactNativeFeatureFlagsProvi
191191

192192
override fun useTurboModuleInterop(): Boolean = false
193193

194-
override fun useTurboModules(): Boolean = true
195-
196194
override fun useUnorderedMapInDifferentiator(): Boolean = false
197195

198196
override fun viewCullingOutsetRatio(): Double = 0.0

packages/react-native/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsLocalAccessor.kt

Lines changed: 1 addition & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
* This source code is licensed under the MIT license found in the
55
* LICENSE file in the root directory of this source tree.
66
*
7-
* @generated SignedSource<<e0cdd65ce91fdd1c131319b6534cd28b>>
7+
* @generated SignedSource<<ca23efddf4b35ace51e92e708b41bbd5>>
88
*/
99

1010
/**
@@ -108,7 +108,6 @@ internal class ReactNativeFeatureFlagsLocalAccessor : ReactNativeFeatureFlagsAcc
108108
private var useSharedAnimatedBackendCache: Boolean? = null
109109
private var useTraitHiddenOnAndroidCache: Boolean? = null
110110
private var useTurboModuleInteropCache: Boolean? = null
111-
private var useTurboModulesCache: Boolean? = null
112111
private var useUnorderedMapInDifferentiatorCache: Boolean? = null
113112
private var viewCullingOutsetRatioCache: Double? = null
114113
private var viewTransitionEnabledCache: Boolean? = null
@@ -955,16 +954,6 @@ internal class ReactNativeFeatureFlagsLocalAccessor : ReactNativeFeatureFlagsAcc
955954
return cached
956955
}
957956

958-
override fun useTurboModules(): Boolean {
959-
var cached = useTurboModulesCache
960-
if (cached == null) {
961-
cached = currentProvider.useTurboModules()
962-
accessedFeatureFlags.add("useTurboModules")
963-
useTurboModulesCache = cached
964-
}
965-
return cached
966-
}
967-
968957
override fun useUnorderedMapInDifferentiator(): Boolean {
969958
var cached = useUnorderedMapInDifferentiatorCache
970959
if (cached == null) {

packages/react-native/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsOverrides_RNOSS_Canary_Android.kt

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
* This source code is licensed under the MIT license found in the
55
* LICENSE file in the root directory of this source tree.
66
*
7-
* @generated SignedSource<<e1acac73151ebf19ba401ecf6f40d1ff>>
7+
* @generated SignedSource<<0642a793f11832205a362e6d1ae6e081>>
88
*/
99

1010
/**
@@ -34,6 +34,4 @@ public open class ReactNativeFeatureFlagsOverrides_RNOSS_Canary_Android : ReactN
3434
override fun useNativeViewConfigsInBridgelessMode(): Boolean = true
3535

3636
override fun useTurboModuleInterop(): Boolean = true
37-
38-
override fun useTurboModules(): Boolean = true
3937
}

packages/react-native/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsProvider.kt

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
* This source code is licensed under the MIT license found in the
55
* LICENSE file in the root directory of this source tree.
66
*
7-
* @generated SignedSource<<01f259d77ea6169af891162727de3032>>
7+
* @generated SignedSource<<802a4cc818ca5333fe824c77f4ab10d4>>
88
*/
99

1010
/**
@@ -191,8 +191,6 @@ public interface ReactNativeFeatureFlagsProvider {
191191

192192
@DoNotStrip public fun useTurboModuleInterop(): Boolean
193193

194-
@DoNotStrip public fun useTurboModules(): Boolean
195-
196194
@DoNotStrip public fun useUnorderedMapInDifferentiator(): Boolean
197195

198196
@DoNotStrip public fun viewCullingOutsetRatio(): Double

packages/react-native/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.cpp

Lines changed: 1 addition & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
* This source code is licensed under the MIT license found in the
55
* LICENSE file in the root directory of this source tree.
66
*
7-
* @generated SignedSource<<acd0e8fa529cd8d290644d86b653b6d6>>
7+
* @generated SignedSource<<4302e8aaa64534478ba1bc5aa48b4d45>>
88
*/
99

1010
/**
@@ -543,12 +543,6 @@ class ReactNativeFeatureFlagsJavaProvider
543543
return method(javaProvider_);
544544
}
545545

546-
bool useTurboModules() override {
547-
static const auto method =
548-
getReactNativeFeatureFlagsProviderJavaClass()->getMethod<jboolean()>("useTurboModules");
549-
return method(javaProvider_);
550-
}
551-
552546
bool useUnorderedMapInDifferentiator() override {
553547
static const auto method =
554548
getReactNativeFeatureFlagsProviderJavaClass()->getMethod<jboolean()>("useUnorderedMapInDifferentiator");
@@ -1003,11 +997,6 @@ bool JReactNativeFeatureFlagsCxxInterop::useTurboModuleInterop(
1003997
return ReactNativeFeatureFlags::useTurboModuleInterop();
1004998
}
1005999

1006-
bool JReactNativeFeatureFlagsCxxInterop::useTurboModules(
1007-
facebook::jni::alias_ref<JReactNativeFeatureFlagsCxxInterop> /*unused*/) {
1008-
return ReactNativeFeatureFlags::useTurboModules();
1009-
}
1010-
10111000
bool JReactNativeFeatureFlagsCxxInterop::useUnorderedMapInDifferentiator(
10121001
facebook::jni::alias_ref<JReactNativeFeatureFlagsCxxInterop> /*unused*/) {
10131002
return ReactNativeFeatureFlags::useUnorderedMapInDifferentiator();
@@ -1316,9 +1305,6 @@ void JReactNativeFeatureFlagsCxxInterop::registerNatives() {
13161305
makeNativeMethod(
13171306
"useTurboModuleInterop",
13181307
JReactNativeFeatureFlagsCxxInterop::useTurboModuleInterop),
1319-
makeNativeMethod(
1320-
"useTurboModules",
1321-
JReactNativeFeatureFlagsCxxInterop::useTurboModules),
13221308
makeNativeMethod(
13231309
"useUnorderedMapInDifferentiator",
13241310
JReactNativeFeatureFlagsCxxInterop::useUnorderedMapInDifferentiator),

packages/react-native/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.h

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
* This source code is licensed under the MIT license found in the
55
* LICENSE file in the root directory of this source tree.
66
*
7-
* @generated SignedSource<<7ed84ba324ba23702f76371d849e9019>>
7+
* @generated SignedSource<<2db7d8971ba3ae2aa97200c47db42cf1>>
88
*/
99

1010
/**
@@ -282,9 +282,6 @@ class JReactNativeFeatureFlagsCxxInterop
282282
static bool useTurboModuleInterop(
283283
facebook::jni::alias_ref<JReactNativeFeatureFlagsCxxInterop>);
284284

285-
static bool useTurboModules(
286-
facebook::jni::alias_ref<JReactNativeFeatureFlagsCxxInterop>);
287-
288285
static bool useUnorderedMapInDifferentiator(
289286
facebook::jni::alias_ref<JReactNativeFeatureFlagsCxxInterop>);
290287

packages/react-native/ReactCommon/react/featureflags/ReactNativeFeatureFlags.cpp

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
* This source code is licensed under the MIT license found in the
55
* LICENSE file in the root directory of this source tree.
66
*
7-
* @generated SignedSource<<767666503a4bd56fa337fe8c36fc8751>>
7+
* @generated SignedSource<<f2eab14b26ce313431dfbbf7b8d2cdab>>
88
*/
99

1010
/**
@@ -362,10 +362,6 @@ bool ReactNativeFeatureFlags::useTurboModuleInterop() {
362362
return getAccessor().useTurboModuleInterop();
363363
}
364364

365-
bool ReactNativeFeatureFlags::useTurboModules() {
366-
return getAccessor().useTurboModules();
367-
}
368-
369365
bool ReactNativeFeatureFlags::useUnorderedMapInDifferentiator() {
370366
return getAccessor().useUnorderedMapInDifferentiator();
371367
}

0 commit comments

Comments
 (0)