Skip to content
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

[0.73] Collection of Android picks for RC4 #41221

Merged
merged 8 commits into from
Nov 2, 2023
Merged

Commits on Oct 27, 2023

  1. Add @DoNotStripAny to JSTimerExecutor

    Summary:
    RNTester release build is crashing as following, this diff add DoNotStripAny to JSTimerExecutor to avoid over-stripping for release build.
    
     {F1124087084}
    
    Changelog:
    [Android][Changed] -  Add DoNotStripAny to JSTimerExecutor
    
    Reviewed By: cortinico
    
    Differential Revision: D50410412
    
    fbshipit-source-id: 84ba72a43514cbf64270ac656c55c5a7aa082948
    Lulu Wu authored and cortinico committed Oct 27, 2023
    Configuration menu
    Copy the full SHA
    c2d4aad View commit details
    Browse the repository at this point in the history
  2. Actually fix java.lang.NoSuchMethodError for Bridgeless (#41081)

    Summary:
    Pull Request resolved: #41081
    
    It turns out that Bridgeless for RN-Tester release is still broken.
    This fixes it by making sure we actually `DoNotStrip` the missing constructor
    
    Changelog:
    [Android] [Fixed] - Fix crash with `java.lang.NoSuchMethodError` for Bridgeless
    
    Reviewed By: RSNara
    
    Differential Revision: D50455967
    
    fbshipit-source-id: eae971fceeb863d8a400e9de1d2467637d59d2b0
    cortinico committed Oct 27, 2023
    Configuration menu
    Copy the full SHA
    cbb0f46 View commit details
    Browse the repository at this point in the history
  3. Enable fast refresh banner (#40999)

    Summary:
    Pull Request resolved: #40999
    
     Fast refresh banner for Android was introduced for Bridge-only (D42286425), in this diff we enable it for Bridgeless as well.
    
    Changelog:
    [Android][Changed] - Enable fast refresh banner for Bridgeless
    
    Reviewed By: cortinico
    
    Differential Revision: D50318991
    
    fbshipit-source-id: 08e3cda5e4cc6e9b7319db57627c1e6bf7fcc67b
    Lulu Wu authored and cortinico committed Oct 27, 2023
    Configuration menu
    Copy the full SHA
    2db4ce2 View commit details
    Browse the repository at this point in the history
  4. Fall back to eager view manage loading (#41165)

    Summary:
    Pull Request resolved: #41165
    
    Currently Bridgeless forces lazy view manager loading, each ReactPackage must implement ```ViewManagerOnDemandReactPackage```. This can bring extra hassle for OSS users in migration.
    
    This diff add backward compatibility by falling back to eager view manage loading, after detecting any ReactPackage of current application NOT a subclass of ```ViewManagerOnDemandReactPackage```.
    
    Changelog:
    [Android][Changed] - Fall back to eager view manage loading for Bridgeless
    
    Reviewed By: cortinico
    
    Differential Revision: D50556405
    
    fbshipit-source-id: 32357d1934068d0fa0f2b7cb46b54f2f41b3e24f
    Lulu Wu authored and cortinico committed Oct 27, 2023
    Configuration menu
    Copy the full SHA
    506ea9e View commit details
    Browse the repository at this point in the history
  5. Fix RNTester not showing Redbox when Metro is not connected (#41191)

    Summary:
    Pull Request resolved: #41191
    
    In dev mode, display a Redbox for the first fatal error during RN initialization. So if the first fatal error is Metro not connected that will be displayed via Redbox.
    
    Changelog:
    [Android][Changed] - Fix RNTester not showing Redbox when Metro is not connected
    
    Reviewed By: cortinico
    
    Differential Revision: D50600631
    
    fbshipit-source-id: f269091c1745a76b49e72d9051c4836a39fded12
    Lulu Wu authored and cortinico committed Oct 27, 2023
    Configuration menu
    Copy the full SHA
    6d21522 View commit details
    Browse the repository at this point in the history

Commits on Oct 30, 2023

  1. Bump Fresco to 3.1.3 (#41190)

    Summary:
    Bumping Fresco to the latest version (3.1.3)
    
    [ANDROID] [FIXED] - Bump Fresco to 3.1.3
    
    Pull Request resolved: #41190
    
    Test Plan: CI Should be green
    
    Reviewed By: lunaleaps
    
    Differential Revision: D50650250
    
    Pulled By: cortinico
    
    fbshipit-source-id: ab8151e882300849ef27ec14c4adc77fdf8503e6
    cortinico committed Oct 30, 2023
    Configuration menu
    Copy the full SHA
    0178a7b View commit details
    Browse the repository at this point in the history
  2. Ensure namespace is specified for all the 3rd party libraries (#41085)

    Summary:
    As stated here react-native-community/discussions-and-proposals#671 React Native 0.73 will depend on Android Gradle Plugin (AGP) 8.x  which requires all libraries to specify a namespace in their build.gradle file, even though this issue was raised many months ago, lots of libraries have not been updated and don't specify a `namespace` inside their build.gradle files
    
    ## Changelog:
    
    [ANDROID] [CHANGED] - Ensure namespace is specified for all the 3rd party libraries
    
    Pull Request resolved: #41085
    
    Test Plan:
    Run RNGP tests and test building rn-tester after doing the following procedure
    
    1. Remove `namespace "com.facebook.react"` from react-native/packages/react-native/ReactAndroid/build.gradle
    2. Add `package="com.facebook.react"` to react-native/packages/react-native/ReactAndroid/src/main/AndroidManifest.xml
    3. Build rn-tester
    
    Also tested this using [BareExpo](https://github.com/expo/expo/tree/main/apps/bare-expo) with AGP 8.1.1 and all libraries that were missing the `namespace` compiled correctly
    
    Reviewed By: cipolleschi
    
    Differential Revision: D50556667
    
    Pulled By: cortinico
    
    fbshipit-source-id: 3d75ec0a8b82427ff0ede89aa7bc58b28b288945
    gabrieldonadel authored and cortinico committed Oct 30, 2023
    Configuration menu
    Copy the full SHA
    5127c11 View commit details
    Browse the repository at this point in the history
  3. Add support for legacy UIManager in UIManagerHelper (#41206)

    Summary:
    Pull Request resolved: #41206
    
    Root cause: Currently Bridgeless only support FabricUIManager and the legacy UIManager is not supported
    
    Next steps: check for other places where legacy UIManager is not supported
    
    Changelog:
    [Android][Changed] - Bridgeless: Add support for legacy UIManager in UIManagerHelper
    
    Reviewed By: cortinico
    
    Differential Revision: D50694805
    
    fbshipit-source-id: 93eba1eb3106d4aa8dccf8be761d97ced778cf67
    Lulu Wu authored and cortinico committed Oct 30, 2023
    Configuration menu
    Copy the full SHA
    cceb261 View commit details
    Browse the repository at this point in the history