From e48d18f2cf6fd5f2aa7d27f059e7a1480e12ff55 Mon Sep 17 00:00:00 2001 From: David Vacca Date: Thu, 12 Oct 2023 15:10:26 -0700 Subject: [PATCH] Mark NativeModule and BaseJavaModule as Stable (#40878) Summary: Pull Request resolved: https://github.com/facebook/react-native/pull/40878 Mark NativeModule and BaseJavaModule as Stable changelog: [internal] internal Reviewed By: arushikesarwani94 Differential Revision: D50233129 fbshipit-source-id: 8f02a0db56b11d7df3e83f5f85c3d104e72c9197 --- .../src/main/java/com/facebook/react/bridge/BaseJavaModule.java | 2 ++ .../src/main/java/com/facebook/react/bridge/NativeModule.java | 2 ++ 2 files changed, 4 insertions(+) diff --git a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/bridge/BaseJavaModule.java b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/bridge/BaseJavaModule.java index 325cea42f10..99bd57571e6 100644 --- a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/bridge/BaseJavaModule.java +++ b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/bridge/BaseJavaModule.java @@ -15,6 +15,7 @@ import com.facebook.infer.annotation.Assertions; import com.facebook.infer.annotation.ThreadConfined; import com.facebook.react.common.ReactConstants; import com.facebook.react.common.annotations.DeprecatedInNewArchitecture; +import com.facebook.react.common.annotations.StableReactNativeAPI; import com.facebook.react.common.build.ReactBuildConfig; import java.util.Map; @@ -46,6 +47,7 @@ import java.util.Map; *

Please note that it is not allowed to have multiple methods annotated with {@link ReactMethod} * with the same name. */ +@StableReactNativeAPI public abstract class BaseJavaModule implements NativeModule { // taken from Libraries/Utilities/MessageQueue.js public static final String METHOD_TYPE_ASYNC = "async"; diff --git a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeModule.java b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeModule.java index 1a98bfbd890..cb75578e540 100644 --- a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeModule.java +++ b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeModule.java @@ -9,6 +9,7 @@ package com.facebook.react.bridge; import com.facebook.proguard.annotations.DoNotStrip; import com.facebook.react.common.annotations.DeprecatedInNewArchitecture; +import com.facebook.react.common.annotations.StableReactNativeAPI; import javax.annotation.Nonnull; /** @@ -18,6 +19,7 @@ import javax.annotation.Nonnull; * not provide any Java code (so they can be reused on other platforms), and instead should register * themselves using {@link CxxModuleWrapper}. */ +@StableReactNativeAPI @DoNotStrip public interface NativeModule {