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.71] Android Pick Requests for 0.71.0-rc3 #35510

Merged
merged 12 commits into from
Nov 30, 2022
Merged

Commits on Nov 29, 2022

  1. RNGP - Correctly Support Gradle Configuration Cache (#35455)

    Summary:
    Pull Request resolved: #35455
    
    This little change allows to support Gradle Configuration cache in user projects:
    https://docs.gradle.org/current/userguide/configuration_cache.html
    
    It allows to save several seconds on the build time.
    We'll keep it disabled for now, but Gradle plans to enable it by default for everyone
    in the future, so this changes makes us ready for it.
    
    Changelog:
    [Internal] [Changed] - RNGP - Correctly Support Gradle Configuration Cache
    
    Reviewed By: cipolleschi
    
    Differential Revision: D41519506
    
    fbshipit-source-id: 6252546e811deb0777c0aab5332291368be7fa8f
    cortinico committed Nov 29, 2022
    Configuration menu
    Copy the full SHA
    658d7dd View commit details
    Browse the repository at this point in the history
  2. Consolidate hermes-executor-debug and -release inside a single target (

    …#35454)
    
    Summary:
    Pull Request resolved: #35454
    
    Historically, we used to have hermes-executor debug and release as separate dynamic libraries.
    This makes it impossible to prefab this library, so I have to reconcile it into a single library.
    
    This will also help keep the setup consistent with the internal (BUCK) where we have a single target.
    
    Changelog:
    [Internal] [Changed] - Consolidate hermes-executor-debug and -release inside a single target
    
    Reviewed By: cipolleschi
    
    Differential Revision: D41519119
    
    fbshipit-source-id: d9ddc30b72164daa29c735836ea433fd4d917fc8
    cortinico committed Nov 29, 2022
    Configuration menu
    Copy the full SHA
    b1bf8c5 View commit details
    Browse the repository at this point in the history
  3. Expose hermes-executor to be consumed via prefab (#35457)

    Summary:
    Pull Request resolved: #35457
    
    This exposes `hermes-executor` to be consumed via prefab so that
    libraries can depend on it and use its symbols if needed (Expo and Reanimated need it).
    
    Changelog:
    [Internal] [Changed] - Expose `hermes-executor` to be consumed via prefab
    
    Reviewed By: cipolleschi
    
    Differential Revision: D41520019
    
    fbshipit-source-id: d590a043ea89fdd8ff41b0ed20900c9cf381a1e4
    cortinico committed Nov 29, 2022
    Configuration menu
    Copy the full SHA
    b89efc8 View commit details
    Browse the repository at this point in the history
  4. Add prefab for _uimanager _scheduler and _mounting (#35458)

    Summary:
    Pull Request resolved: #35458
    
    We're adding prefab support for those modules as they're needed by Reanimated
    and we're exposing headers for them as well.
    
    Changelog:
    [Internal] [Changed] - Add prefab for _uimanager _scheduler and _mounting
    
    Reviewed By: cipolleschi
    
    Differential Revision: D41520606
    
    fbshipit-source-id: 76f3c81705e99057b92cd9b86d0601a2b1410f95
    cortinico committed Nov 29, 2022
    Configuration menu
    Copy the full SHA
    f279474 View commit details
    Browse the repository at this point in the history
  5. Add missing headers to react_nativemodule_core prefab module (#35460)

    Summary:
    Pull Request resolved: #35460
    
    Reanimated reported that `react_nativemodule_core` was missing some headers.
    Specifically the one from ReactAndroid::react_debug, ReactAndroid::react_render_core, ReactAndroid::glog,
    and ReactAndroid::react_render_debug.
    
    I'm adding them here so they get included in the shipped headers for `react_nativemodule_core`
    
    Changelog:
    [Internal] [Changed] - Add missing headers to `react_nativemodule_core` prefab module
    
    Reviewed By: cipolleschi
    
    Differential Revision: D41520751
    
    fbshipit-source-id: 4627a2d0f880d4bb3ff2f0e43cd735cf9a3f2f9a
    cortinico committed Nov 29, 2022
    Configuration menu
    Copy the full SHA
    9628e56 View commit details
    Browse the repository at this point in the history
  6. Allow reactnativejni to be consumed via prefab (#35461)

    Summary:
    Pull Request resolved: #35461
    
    This is another library which is adding prefab support as it's needed by
    Expo libraries and Reanimated.
    
    Changelog:
    [Internal] [Changed] - Allow `reactnativejni` to be consumed via prefab
    
    Reviewed By: cipolleschi
    
    Differential Revision: D41520801
    
    fbshipit-source-id: 91142a5b5051cfba478d93a2475a178eed6fbb29
    cortinico committed Nov 29, 2022
    Configuration menu
    Copy the full SHA
    804d2b5 View commit details
    Browse the repository at this point in the history
  7. Bump AGP to 7.4.x (#35456)

    Summary:
    Pull Request resolved: #35456
    
    Fixes #35439
    
    There is a bug in AGP 7.3.x which is causing assets to don't be copied properly inside the
    final artifact: issuetracker.google.com/issues/237421684
    As AGP 7.4.x is really close to release (is in Beta5, should be released stable in the next weeks)
    we should be fine by bumping to beta5.
    
    This also requires a bump of RNGP
    
    Changelog:
    [Android] [Changed] - Bump AGP to 7.4.x
    
    allow-large-files
    
    Reviewed By: cipolleschi
    
    Differential Revision: D41519549
    
    fbshipit-source-id: 60d568a3e49798a23f1d7bf4839ab58bd5549aba
    cortinico committed Nov 29, 2022
    Configuration menu
    Copy the full SHA
    5cffb4f View commit details
    Browse the repository at this point in the history
  8. Move JSCRuntime into its own folder (#35482)

    Summary:
    Pull Request resolved: #35482
    
    This change moves the JSCRuntime.h/cpp into a `jsc` folder.
    
    This change is required for several reasons:
    1. on iOS, the new `jsi`, `jsidynamic` and `jsc` setup is breaking the `use_frameworks!` with  `:linkage => :static` option with the old architecture. So it is a regression.
    2. JSCRuntime is required by some libraries and needs to be exposed as a prefab and the current setup makes it hard to achieve.
    
    allow-large-files
    
    [General][Changed] - Move JSCRuntime into a separate pod/prefab
    
    Reviewed By: cortinico
    
    Differential Revision: D41533778
    
    fbshipit-source-id: 642240c93a6c124280430d4f196049cb67cb130b
    cipolleschi authored and cortinico committed Nov 29, 2022
    Configuration menu
    Copy the full SHA
    f283877 View commit details
    Browse the repository at this point in the history
  9. Expose jscruntime to be consumed via Prefab

    Summary:
    This is the last library that we should expose via Prefab.
    Thanks to cipolleschi 's work here moving the file to `/ReactCommon/jsc` folder
    we can easily expose it to be consumed by third parties.
    
    Changelog:
    [Internal] [Changed] - Expose `jscruntime` to be consumed via Prefab
    
    Reviewed By: cipolleschi
    
    Differential Revision: D41534564
    
    fbshipit-source-id: fb4b2d801def8caf71638dcb74eb87f8230984d4
    cortinico committed Nov 29, 2022
    Configuration menu
    Copy the full SHA
    a7a43f8 View commit details
    Browse the repository at this point in the history
  10. RNGP - Various improvements needed for 3rd party libs (#35496)

    Summary:
    Pull Request resolved: #35496
    
    This commit includes a series of fixes needed for better integration with libraries for 0.71:
    - I've added an `android/README.md` file as some libraries were failing the build if the folder was missing
    - RNGP now applies dep substitution on app and all the libraries project
    - RNGP now adds repositories on app and all the libraries project
    - I've removed the maven local repo to the `/android` folder as now is empty
    - I've fixed the path for the JSC repo for Windows users
    - I've added a bit of backward compat by re-adding an empty `project.react.ext` block that libraries might read from.
    - I've removed `codegenDir` from the `GenerateCodegenArtifactsTask` which was unused.
    
    Changelog:
    [Internal] [Changed] - RNGP - Various improvements needed for 3rd party libs
    
    Reviewed By: cipolleschi
    
    Differential Revision: D41549489
    
    fbshipit-source-id: 2252da0180ac24fd3fe5a55300527da6781f0f8c
    cortinico committed Nov 29, 2022
    Configuration menu
    Copy the full SHA
    67b74e7 View commit details
    Browse the repository at this point in the history
  11. Rename hermes-* target to don't use dashes (#35506)

    Summary:
    Pull Request resolved: #35506
    
    In our build we had a mixture of `_` and `-` to separate targets.
    Dashes don't play well with Gradle + as we expose them now via Prefab,
    let's stick to use only underscores
    
    Changelog:
    [Internal] [Changed] - Rename target to don't use dashes
    
    Reviewed By: cipolleschi
    
    Differential Revision: D41578938
    
    fbshipit-source-id: 8aa44aa2dc7bf4822b45e5044532837b989817d2
    cortinico committed Nov 29, 2022
    Configuration menu
    Copy the full SHA
    89cac88 View commit details
    Browse the repository at this point in the history
  12. RNGP - Fix DependencyUtils for Windows support (#35508)

    Summary:
    Pull Request resolved: #35508
    
    It turns out that my previous diff hasn't really solved the Windows support.
    The problem is that we're not escaping the URI of the Maven Local repository
    properly on Windows.
    
    To overcome this, I'll instead use the `toURI()` Api of File to properly
    create a valid URI for a given folder.
    
    Changelog:
    [Internal] [Changed] - RNGP - Fix DependencyUtils for Windows support
    
    Reviewed By: cipolleschi
    
    Differential Revision: D41581849
    
    fbshipit-source-id: 7905073c6daaf7c6a97405b3e6fb94b8f382234a
    cortinico committed Nov 29, 2022
    Configuration menu
    Copy the full SHA
    e108e9e View commit details
    Browse the repository at this point in the history