-
Notifications
You must be signed in to change notification settings - Fork 4.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[packages][bare-expo][tools] fix react-native 0.74 nightlies support #26357
Conversation
@@ -4,10 +4,14 @@ | |||
|
|||
### 🛠 Breaking changes | |||
|
|||
- Removed `ReactNativeHostHandler.onRegisterJSIModules` interface. ([#26357](https://github.com/expo/expo/pull/26357) by [@kudo](https://github.com/kudo)) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For who this is going to be a breaking change? I guess it'll continue to work in RN 0.73, right?
If this is just breaking support for 0.72 and older, I think it should go to Others section as the users don't have to do anything due to this change.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this interface was originally opened for reanimated. from what i can tell, nobody should use this nowadays. i removed the interface entirely across all react native versions to save the effort for backward compatibility. it's kind of a minimal breaking change.
will park landing this pr and update some code next week since facebook/react-native#42259 help to reduce some |
63024c3
to
6c1506e
Compare
…break nightlies testing
- react-native removed `ReactNativeHost.getJSIModulePackage()` facebook/react-native@6555205 - react-native added `ReactNativeHost.getUIManagerProvider()` facebook/react-native@153a264 - DevLauncherClientHost/DevMenuHost: also for removed `getJSIModulePackage()`, resolved by inherit the `DefaultReactNativeHost()` - [BREAKING] remove our `ReactNativeHostHandler.onRegisterJSIModules()` support i think nobody used that nowadays - DevLauncherDevSupportManager: add 0.74 src because react-native resource change facebook/react-native@8bcaed9 - remove some ReactNativeHostWrapper for old unsupported react-native versions
…ot support multiple calls
- also fix `USE_HERMES` is not defined in some cases - add 0.74 DevClientAppDelegate because `unstable_registerLegacyComponents()` is deprecated facebook/react-native@27f38f6
- com.facebook.react.internal.turbomodule.core.CallInvokerHolderImpl package rename (wait for upstream to resolve the issue) - `RCT_NEW_ARCH_ENABLED -> USE_NEW_ARCH` for some 3rd party libs - react-native-safe-area-context: fix yoga interface changes
This reverts commit 8fdeca5.
6c1506e
to
856a733
Compare
Hi there! 👋 I'm a bot whose goal is to ensure your contributions meet our guidelines. I've found some issues in your pull request that should be addressed (click on them for more details) 👇
|
# Why a regression from #26357, when using dev-launcher to load an app, it will crash because `RCTAppDelegate` does not implement the `extraModulesForBridge:` selector. # How rather than calling super, return empty array with fallback
Why
fix react-native nightlies support for 0.74
How
summarize here, please check each commit messages for details
unstable_useRuntimeSchedulerAlways
orREACT_NATIVE_UNSTABLE_USE_RUNTIME_SCHEDULER_ALWAYS
supportReactNativeHostHandler.onRegisterJSIModules()
interfaceReactNativeHost.getJSIModulePackage()
removal and addingReactNativeHost.getUIManagerProvider()
[ios]we don't need this after Restore RCT_NEW_ARCH_ENABLED semantics for backward compatibility facebook/react-native#42259RCT_NEW_ARCH_ENABLED -> USE_NEW_ARCH
because theRCT_NEW_ARCH_ENABLED
is defined by defaultTo be resolved and currently workarounded by SetupReactNativeNightly
import com.facebook.react.turbomodule.core.CallInvokerHolderImpl
->import com.facebook.react.internal.turbomodule.core.CallInvokerHolderImpl
Test Plan
ci passed
Checklist
npx expo prebuild
& EAS Build (eg: updated a module plugin).