Upgrade ERN to support RN 0.77#1914
Conversation
ern-runner-gen-android/test/fixtures/simple-android-runner-rn-72/build.gradle
Outdated
Show resolved
Hide resolved
ern-runner-gen-android/test/fixtures/simple-android-runner-rn-67/build.gradle
Outdated
Show resolved
Hide resolved
...ndroid/src/hull/lib/src/main/java/com/walmartlabs/ern/container/ElectrodeReactContainer.java
Outdated
Show resolved
Hide resolved
friederbluemle
left a comment
There was a problem hiding this comment.
First off, wow! Thanks for the contribution @r0h0gg6 - This is probably the biggest update in years! 😄
I will try to test it locally later this week. Just left a couple minor comments for now.
Also one question: Is there a reason to go specifically with 0.77? I was thinking it might be slightly safer to first move up to 0.76 (or maybe jump directly to 0.79)? Preferably 0.76. One reason is that now that we so infrequent updates (compared to a few years ago), it would be better to stick to "more established" versions. Looking at Expo's version mapping, there is no direct 0.77 supported by them. Expo 52 -> RN 0.76 and Expo 53 (latest) -> RN 0.79
ern-runner-gen-ios/test/fixtures/simple-ios-runner/ErnRunner/PrivacyInfo.xcprivacy
Outdated
Show resolved
Hide resolved
...nner-gen-android/test/fixtures/simple-android-runner-rn-77/app/src/debug/AndroidManifest.xml
Outdated
Show resolved
Hide resolved
Thank you @friederbluemle The reason we chose to use 0.77.2 was because this version of RN was the earliest version where the minimum version of AGP in RN is targeting Android SDK 35. This is due to a requirement by Google Play Store requiring all apps to target Android 35 for any app releases starting in August 2025. P.S I have also tagged you as a reviewer in other ERN repos required for this RN upgrade, please take a look as well. Thank you! |
Ah okay, that makes sense, thanks for the explanation. I checked and you are right - starting August 31, 2025, all new apps and update on Google Play must target SDK 35 or higher 🤯 I also noticed that only RN 0.78 changed |
The upgrade helper tool is not referencing things correctly with updated values. If you see here https://github.com/facebook/react-native/blob/v0.77.2/packages/react-native/gradle/libs.versions.toml |
846ff02 to
62fc17b
Compare
62fc17b to
3cdc471
Compare
ANDROID
Update Android Plugins/ tools and templates to support RN 0.77.x
DEFAULT_RN_GRADLE_PLUGIN_VERSION = '0.77.2';
ANDROID_GRADLE_PLUGIN_VERSION = '8.7.2';
ANDROIDX_APPCOMPACT_VERSION = '1.1.0';
ANDROIDX_LIFECYCLE_EXTENSIONS_VERSION = '2.1.0';
BUILD_TOOLS_VERSION = '35.0.0';
COMPILE_SDK_VERSION = '35';
GRADLE_DISTRIBUTION_VERSION = '8.11.1';
JSC_VARIANT = 'android-jsc';
KOTLIN_VERSION = '2.0.21';
MIN_SDK_VERSION_PRE_RN64 = '19';
MIN_SDK_VERSION_POST_RN64 = '21';
SUPPORT_LIBRARY_VERSION = '28.0.0';
TARGET_SDK_VERSION = '35';
SOURCE_COMPATIBILITY = 'VERSION_17';
TARGET_COMPATIBILITY = 'VERSION_17';
RN_GRADLE_PLUGIN_VERSION = '0.77.2';
IOS
Update iOS templates to support RN 0.77.x
Update min deployment target to 15.1
MAJOR CHANGES