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

Enable CircleCI tests for Use_Frameworks with the New Arch #36148

Closed
wants to merge 6 commits into from

Conversation

cipolleschi
Copy link
Contributor

Summary:
This change enables 4 noew tests to make sure that use_frameworks! with the New Architecture don't break

Note: We may have to publish the codegen to make this work on CircleCI properly

Changelog:

[iOS][Added] - Added tests for use_frameworks! with the new architecture

Differential Revision: D43271625

@facebook-github-bot facebook-github-bot added CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. p: Facebook Partner: Facebook Partner fb-exported labels Feb 14, 2023
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D43271625

@react-native-bot react-native-bot added Platform: iOS iOS applications. Type: Enhancement A new feature or enhancement of an existing feature. labels Feb 14, 2023
@analysis-bot
Copy link

analysis-bot commented Feb 14, 2023

Platform Engine Arch Size (bytes) Diff
android hermes arm64-v8a 8,451,960 +0
android hermes armeabi-v7a 7,775,340 +0
android hermes x86 8,927,563 +0
android hermes x86_64 8,785,165 +0
android jsc arm64-v8a 6,668,753 +0
android jsc armeabi-v7a 7,462,720 +0
android jsc x86 9,192,880 +0
android jsc x86_64 6,893,882 +0

Base commit: 1cb46ea
Branch: main

@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D43271625

cipolleschi added a commit to cipolleschi/react-native that referenced this pull request Feb 15, 2023
…36148)

Summary:
Pull Request resolved: facebook#36148

This change enables 4 noew tests to make sure that `use_frameworks!` with the New Architecture don't break

Note: We may have to publish the codegen to make this work on CircleCI properly

## Changelog:
[iOS][Added] - Added tests for use_frameworks! with the new architecture

Differential Revision: D43271625

fbshipit-source-id: fdba45608fb99cc8741291d614b98959a9636526
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D43271625

cipolleschi added a commit to cipolleschi/react-native that referenced this pull request Feb 15, 2023
…36148)

Summary:
Pull Request resolved: facebook#36148

This change enables 4 noew tests to make sure that `use_frameworks!` with the New Architecture don't break

Note: We may have to publish the codegen to make this work on CircleCI properly

## Changelog:
[iOS][Added] - Added tests for use_frameworks! with the new architecture

Reviewed By: cortinico

Differential Revision: D43271625

fbshipit-source-id: b213ce74ae3462821efb4fc5be9ee3557adf5bc2
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D43271625

cipolleschi added a commit to cipolleschi/react-native that referenced this pull request Feb 15, 2023
…36148)

Summary:
Pull Request resolved: facebook#36148

This change enables 4 noew tests to make sure that `use_frameworks!` with the New Architecture don't break

Note: We may have to publish the codegen to make this work on CircleCI properly

## Changelog:
[iOS][Added] - Added tests for use_frameworks! with the new architecture

Reviewed By: cortinico

Differential Revision: D43271625

fbshipit-source-id: b14b27765e7772c96fa0edee3331e7a7e58f2602
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D43271625

cipolleschi added a commit to cipolleschi/react-native that referenced this pull request Feb 16, 2023
…36148)

Summary:
Pull Request resolved: facebook#36148

This change enables 4 noew tests to make sure that `use_frameworks!` with the New Architecture don't break

Note: We may have to publish the codegen to make this work on CircleCI properly

## Changelog:
[iOS][Added] - Added tests for use_frameworks! with the new architecture

Reviewed By: cortinico

Differential Revision: D43271625

fbshipit-source-id: bd6475e971fb423e5ee7291a41a6ed632adddea9
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D43271625

cipolleschi added a commit to cipolleschi/react-native that referenced this pull request Feb 19, 2023
…36148)

Summary:
Pull Request resolved: facebook#36148

This change enables 4 noew tests to make sure that `use_frameworks!` with the New Architecture don't break

Note: We may have to publish the codegen to make this work on CircleCI properly

## Changelog:
[iOS][Added] - Added tests for use_frameworks! with the new architecture

Reviewed By: cortinico

Differential Revision: D43271625

fbshipit-source-id: cb355d692a573633b70c897c65243393f6861183
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D43271625

cipolleschi added a commit to cipolleschi/react-native that referenced this pull request Feb 19, 2023
…36148)

Summary:
Pull Request resolved: facebook#36148

This change enables 4 noew tests to make sure that `use_frameworks!` with the New Architecture don't break

Note: We may have to publish the codegen to make this work on CircleCI properly

## Changelog:
[iOS][Added] - Added tests for use_frameworks! with the new architecture

Reviewed By: cortinico

Differential Revision: D43271625

fbshipit-source-id: 569dc6a8c6df6635106f2852f246b5f8c156d47a
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D43271625

cipolleschi added a commit to cipolleschi/react-native that referenced this pull request Feb 19, 2023
…36148)

Summary:
Pull Request resolved: facebook#36148

This change enables 4 noew tests to make sure that `use_frameworks!` with the New Architecture don't break

Note: We may have to publish the codegen to make this work on CircleCI properly

## Changelog:
[iOS][Added] - Added tests for use_frameworks! with the new architecture

Reviewed By: cortinico

Differential Revision: D43271625

fbshipit-source-id: 6b47bb9686500391671e69debe57b3458b4e7e36
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D43271625

cipolleschi added a commit to cipolleschi/react-native that referenced this pull request Feb 20, 2023
…36148)

Summary:
Pull Request resolved: facebook#36148

This change enables 4 noew tests to make sure that `use_frameworks!` with the New Architecture don't break

Note: We may have to publish the codegen to make this work on CircleCI properly

## Changelog:
[iOS][Added] - Added tests for use_frameworks! with the new architecture

Reviewed By: cortinico, dmytrorykun

Differential Revision: D43271625

fbshipit-source-id: 3d797e17d6d0d70546fa18203319f05da2a4110a
Riccardo Cipolleschi and others added 6 commits February 20, 2023 09:59
Summary:
This change solve a Circular Dependency where
- `React-Core` depends on `ReactCommon` because `RCTAppSetupUtils.h` (in Core) imports the `RCTTurboModuleManager` (from ReactCommon)
- `RCTTurboModuleManager` in `ReactCommon` depends on `React-Core` because it imports several classes from it (e.g. the `RCTBridge` class)

## Changelog:
[iOS][Breaking] - Moved the RCTAppSetupUtils to the AppDelegate library to break a dependency cycle

Differential Revision: https://internalfb.com/D43089183

fbshipit-source-id: 743a3a2db27bbc513358b2010c67e5da15a37b26
Summary: Update podspecs with the right search paths to include the required framework by every module.

Differential Revision: D43089372

fbshipit-source-id: 5964026b639773beae61f338687083dd3b121793
Summary:
This diff update the Cocoapods scripts to install the proper dependencies and search paths when `use_frameworks!` is declared together with the New Architecture.

Practically, it adds the right search paths to the codegen and the project files and makes sure that third party dependencies that leverage the `install_modules_dependencies` are populated with the right search paths for Frameworks.

It also adds unit tests for the changes and the new methods introduced.

## Changelog:
[iOS][Changed] - Properly install dependencies with `use_frameworks!`

Differential Revision: https://internalfb.com/D43089869

fbshipit-source-id: 97c49d2047eac5a30493f01e31cf3b34b47019fa
…ebook#36210)

Summary:
Pull Request resolved: facebook#36210

One of the circular dependencies we have in OSS was between React-Codegen and React-Fabric.

React-Codegen generates component which has to depends on React-Fabric because they need to use the files contained in the `react/renderer/view` folder.

React-Fabric contains some components that depends on RNCore, which was generated inside the React-Codegen folder.

This change generates the RNCore components inside the `ReactCommon/react/renderer/components/rncore` folder, breaking the dependency as `rncore` folder is now contained by React-Fabric itself.

**Fun Fact:** That's how it always should have been. There was already a line in the `.gitignore` to exclude the content of `ReactCommon/react/renderer/components/rncore` folder. I guess that with some of the refactoring/previous projects on Codegen, this requirements has slipped.

## Changelog:
[iOS][Breaking] -  generates RNCore components inside the ReactCommon folder and create a new pod for platform-specific ImageManager classes

Differential Revision: https://internalfb.com/D43304641

fbshipit-source-id: 4d21857cef67c373475ecea75f53a6f8f869fbde
… Frameworks

Summary:
By leveraging the `PUBLIC_HEADERS_FOLDER_PATH` build settings of Xcode, we can instruct cocoapods to generate the frameworks Headers in a specific folder, for example the `React` folder.
This allows us to maintain the `#include`/`#import` structure, even if the framework has a different name.
However, we need to update the search paths to take into account this extra folder.

## Changelog:
[iOS][Changed] - Generate RCTFabric framework's headers in the React folder

Differential Revision: https://internalfb.com/D43425677

fbshipit-source-id: 39f0249342487e8260ee55db26a6572822e3cb9e
…36148)

Summary:
Pull Request resolved: facebook#36148

This change enables 4 noew tests to make sure that `use_frameworks!` with the New Architecture don't break

Note: We may have to publish the codegen to make this work on CircleCI properly

## Changelog:
[iOS][Added] - Added tests for use_frameworks! with the new architecture

Reviewed By: cortinico, dmytrorykun

Differential Revision: D43271625

fbshipit-source-id: 9b4ad898903e508c4d10727f0dfb3ffb9d3984d7
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D43271625

@facebook-github-bot facebook-github-bot added the Merged This PR has been merged. label Feb 20, 2023
@facebook-github-bot
Copy link
Contributor

This pull request has been merged in 23eb380.

OlimpiaZurek pushed a commit to OlimpiaZurek/react-native that referenced this pull request May 22, 2023
…36148)

Summary:
Pull Request resolved: facebook#36148

This change enables 4 noew tests to make sure that `use_frameworks!` with the New Architecture don't break

Note: We may have to publish the codegen to make this work on CircleCI properly

## Changelog:
[iOS][Added] - Added tests for use_frameworks! with the new architecture

Reviewed By: cortinico, dmytrorykun

Differential Revision: D43271625

fbshipit-source-id: fe1fa4be660f933e0113f44a0467eaa1fa3669ca
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. fb-exported Merged This PR has been merged. p: Facebook Partner: Facebook Partner Platform: iOS iOS applications. Type: Enhancement A new feature or enhancement of an existing feature.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants