Summary:
Fixes a typo on the step name of `maestro-ios` gh action:
From `Set up JDK 11` -? `Set up JDK 17`
to match the actual version and be in sync with the rest of the other actions (e.g. maestro-android)
## Changelog:
<!-- Help reviewers and the release process by writing your own changelog entry.
Pick one each for the category and type tags:
[GENERAL] [FIXED] - typo on maestro ios gh action for jdk step
For more details, see:
https://reactnative.dev/contributing/changelogs-in-pull-requests
Pull Request resolved: https://github.com/facebook/react-native/pull/55167
Test Plan: No testing required
Reviewed By: cipolleschi
Differential Revision: D90688156
Pulled By: cortinico
fbshipit-source-id: d2f4ff27bd6cee18c5931ff81df5f965ddf6d01b
Summary:
I've noticed that test_js (20) and test_js (24) are actually running on Node 22.
That's because the `yarn-install` action is invoking setup-node again with the default value (22).
This changes it. Also I'm cleaning up the workflows so that every `yarn-install` invocation is happening just after the `setup-node` invocation.
## Changelog:
[INTERNAL] -
Pull Request resolved: https://github.com/facebook/react-native/pull/52737
Test Plan: CI which will most likely be red for test_js (20) so will need a follow-up
Reviewed By: cipolleschi
Differential Revision: D78664671
Pulled By: cortinico
fbshipit-source-id: c73390930d1511d1bf0f2d4ea92e83f50b10247f
Summary:
Following up the announcement made at AppJS, this change stops testing the legacy architecture in our CI
## Changelog:
[Internal] - Stop testing the legacy architecture in CI
Pull Request resolved: https://github.com/facebook/react-native/pull/51738
Test Plan: waiting for GHA
Reviewed By: cortinico
Differential Revision: D75791359
Pulled By: cipolleschi
fbshipit-source-id: cb3159338835f49589fa6f495cfb9f47750825fe
Summary:
As next step of the JSC deprecation, we are removing the CI testing for the JSC engine
## Changelog:
[Internal] -
Pull Request resolved: https://github.com/facebook/react-native/pull/51475
Test Plan: GHA
Reviewed By: NickGerleman
Differential Revision: D75089216
Pulled By: cipolleschi
fbshipit-source-id: 3839914cb58e872ddd82089bd7cb1391ddda20c1
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/51022
As per title, it bumps maestro to 1.40 in CI
## Changelog:
[Internal] - Bump Maestro to 1.40
Reviewed By: cortinico
Differential Revision: D73929936
fbshipit-source-id: 7dfd974a0d1227520c5a6892ff4f157633fdbd54
Summary:
This centralizes the invocation of yarn install to be via the `actions/yarn-install`.
It will make it easier to add a retry if we want for all the `yarn install` steps in all the workflows.
## Changelog:
[INTERNAL] -
Pull Request resolved: https://github.com/facebook/react-native/pull/49174
Test Plan: CI
Reviewed By: NickGerleman
Differential Revision: D69121525
Pulled By: cortinico
fbshipit-source-id: 135da2e172cdf95b2a0ef8fd3d25996ab9317167
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/48677
E2E tests are flaky again.
Let's bump maestro to see if stability improves.
This will also remove some noise from the logs, make them easier to read.
## Changelog
[Internal] - Bump maestro version
Reviewed By: cortinico
Differential Revision: D68160005
fbshipit-source-id: 40a25f974dfda75785bf08d8d236e771b44d13cf
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/48469
This change downloads the generated artifact and uses it in the E2E tests
## Context
While looking at the recent failures of the E2E tests, I realized that the Hermes, NewArch, Debug variant often fails to build, not to test, for some misconfiguration.
I also realized that we are already building that varaint successfully once, so why not reuse it? To reuse prebuilds, we need a few steps:
1. make sure we build all the variants we need
2. store the .app file as an artifact
3. download the artifact and use it in the E2E tests
## Changelog:
[Internal] - Build release variant for RNTester
Reviewed By: mdvacca
Differential Revision: D67800932
fbshipit-source-id: 6f3c8bbc42ad95cabab85dafff00e233a936d136
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/48444
While debugging why the Debug variant was failing, I realised that the code to store video artifacts and the code to record the videos were not working properly.
This diff fixes that
## Context
While looking at the recent failures of the E2E tests, I realized that the Hermes, NewArch, Debug variant often fails to build, not to test, for some misconfiguration.
I also realized that we are already building that varaint successfully once, so why not reuse it? To reuse prebuilds, we need a few steps:
1. make sure we build all the variants we need
2. store the .app file as an artifact
3. download the artifact and use it in the E2E tests
## Changelog:
[Internal] - Build release variant for RNTester
Reviewed By: mdvacca
Differential Revision: D67760436
fbshipit-source-id: ee4b034f7c54cbf0b46c0afc16c31389b11353fe
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/48419
This change moves the E2E scripts for iOS to a JS script.
This should make it much easier to modify the code in case we need to change it.
## Changelog
[Internal] - Move e2e script from bash to JS
Reviewed By: cortinico
Differential Revision: D67737950
fbshipit-source-id: d0b0411c8a4d688c10e460e70b11dbfc83aaa135
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/48363
jq is already installed on M1 machines on GithubActions. There is no need to install it again and this is outputting a warning in CI:
{F1974100065}
## Changelog:
[Internal] - Do not install jq as it is already installed
Reviewed By: blakef
Differential Revision: D67599961
fbshipit-source-id: 1f621f796b0c67ec877fc35269137537618f47ae
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/48282
This change bump maestro to the latest version as it present better reporting.
## Changelog:
[Internal] - Bump maestro to 1.39.5
Reviewed By: fabriziocucci
Differential Revision: D67273486
fbshipit-source-id: da41a002528a3b3c0934f86888da2bb53ae131b7
Summary:
This pr tests the Old Arch on the Template app using Maestro
## Changelog:
[Internal] - Test old arch in CI with Maestro for template app
Pull Request resolved: https://github.com/facebook/react-native/pull/48244
Test Plan: GHA
Reviewed By: cortinico
Differential Revision: D67141524
Pulled By: cipolleschi
fbshipit-source-id: bef3a9b6fec9d7c91d858d534a2d00e91f1842b5
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/47030
Looking at the videos from the E2E tests, it seems that the tests are pretty reliable aside from the first one that often fail. And it looks like it is failing not because the test is wrong, but because maestro hits some sort of timeout and kills the test sooner.
With these changes we are:
- giving more time to maestro to run
- not killing the emulator anymore
Killing and restarting the simulator was making this problem workse, because a newly started simulator required more time to boots and to work properly
## Changelog:
[Internal] - stop killing simulators and increase timeouts
Reviewed By: cortinico
Differential Revision: D64398111
fbshipit-source-id: 17b107fee24d0fbd4897212c1907be3761e337ab
Summary:
This change move E2E tests to larger mac machines to see if we can reduce the flakyness.
Most of the time the flakyness is due to slowness in connecting to the simulator or slowness in Metro to provide the bundle to RNTester when we run the tests in Debug.
More power should speed-up those processes.
E2E tests took < 30 min in this diff
on Main, they took > 120 min
## Changelog:
[Internal] - Move the E2E tests to bigger machines
Pull Request resolved: https://github.com/facebook/react-native/pull/46960
Test Plan: GHA
Reviewed By: blakef
Differential Revision: D64237659
Pulled By: cipolleschi
fbshipit-source-id: c2458413c8de70c07fae8f2b5f202371c6293815
Summary:
We had CI on main failing consistently the past couple of days.
The problem is that the hermes pipeline is failing to create the iOS XCFramework with the error:
> unable to create a Mach-O from the binary at '/Users/runner/work/react-native/react-native/packages/react-native/sdks/hermes/destroot/Library/Frameworks/catalyst/hermes.framework/hermes'
The main cause is this upgrade of [upload-artifacts](https://github.com/actions/upload-artifact/issues/590) which breaks symlinks.
The solution is to bump the caches and downgrade the `upload-artifact` actions.
## Changelog:
[Internal] - Try to fix CI for Hermes
Pull Request resolved: https://github.com/facebook/react-native/pull/45908
Test Plan: GHA must be green
Reviewed By: cortinico
Differential Revision: D60828616
Pulled By: cipolleschi
fbshipit-source-id: 6976b86dd67e2fd9d806ebaa62f47e39dc44b30d
Summary:
The Maestro team just released a new version of maestro which dies in our CI
This change pins the version to something we know it's working, so we can decide when to move to the next version
## Changelog
[Internal] - Pin Maestro version
Reviewed By: cortinico
Differential Revision: D60380466
fbshipit-source-id: af842b7922736cc08300ac3bceef2d6110bcd913
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/45705
## Context
Running manual tests when preparing a release, it's time consuming.
We have to do the cherry picks, wait for CI to finish, and then manually test 8 configurations.
Maestro is a tool that allow us to run E2E tests automatically, and we can wire it to CI.
## Change
Wire RNTester to the Maestro Action
Changelog:
[Internal] - Exploration to integrate maestro
Reviewed By: blakef
Differential Revision: D60282689
fbshipit-source-id: 51c624c2acf7a27ed5527e7453d9a04678df6c66
Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/45704
## Context
Running manual tests when preparing a release, it's time consuming.
We have to do the cherry picks, wait for CI to finish, and then manually test 8 configurations.
Maestro is a tool that allow us to run E2E tests automatically, and we can wire it to CI.
## Change
Create a reusable GHA to run Maestro tests on iOS
Changelog:
[Internal] - Exploration to integrate maestro
Reviewed By: blakef
Differential Revision: D60282657
fbshipit-source-id: 3a2a427f0954b46fc6c3a8bf753e807371eb0239