Migrating RNTester to Packages Directory (#29567)

Summary:
## Changelog

<!-- Help reviewers and the release process by writing your own changelog entry. For an example, see:
https://github.com/facebook/react-native/wiki/Changelog
-->
This PR aims to migrate the RNTester App to `packages` directory. But is currently, open to inspect the CI issues and resolve the merge conflicts.

Currently done
 - Working on iOS
 - Working on Android
 - Detox Tests working on iOS

Need to work on
 - Errors generated by the CI builds

[General] [Changed] - Migrated the RNTester App to the packages directory.

Pull Request resolved: https://github.com/facebook/react-native/pull/29567

Test Plan: It runs on both ios and android for now and the detox iOS builds are working.

Reviewed By: cpojer

Differential Revision: D23034761

Pulled By: rickhanlonii

fbshipit-source-id: e04bb06e1c7ef15d340206090d1575a871b9e6f5
This commit is contained in:
stealthanthrax 2020-08-19 17:54:30 -07:00 committed by Facebook GitHub Bot
parent f8e5423c89
commit 63992c0b96
343 changed files with 213 additions and 174 deletions

View File

@ -148,17 +148,17 @@ commands:
steps:
- run:
name: Setup CocoaPods cache
# Copy RNTester/Podfile.lock since it can be changed by pod install
command: cp RNTester/Podfile.lock RNTester/Podfile.lock.bak
# Copy packages/rn-tester/Podfile.lock since it can be changed by pod install
command: cp packages/rn-tester/Podfile.lock packages/rn-tester/Podfile.lock.bak
- restore_cache:
keys:
- v1-pods-{{ .Environment.CIRCLE_JOB }}-{{ checksum "RNTester/Podfile.lock.bak" }}
- v1-pods-{{ .Environment.CIRCLE_JOB }}-{{ checksum "packages/rn-tester/Podfile.lock.bak" }}
- v1-pods-{{ .Environment.CIRCLE_JOB }}-
- steps: << parameters.steps >>
- save_cache:
paths:
- RNTester/Pods
key: v1-pods-{{ .Environment.CIRCLE_JOB }}-{{ checksum "RNTester/Podfile.lock.bak" }}
- packages/rn-tester/Pods
key: v1-pods-{{ .Environment.CIRCLE_JOB }}-{{ checksum "packages/rn-tester/Podfile.lock.bak" }}
download_gradle_dependencies:
steps:
@ -372,7 +372,7 @@ jobs:
- run_yarn
- run: |
cd RNTester
cd packages/rn-tester
bundle check || bundle install
- run:
name: Boot iPhone Simulator
@ -419,11 +419,11 @@ jobs:
steps:
- run:
name: Generate RNTesterPods Workspace
command: cd RNTester && pod install --verbose
command: cd packages/rn-tester && pod install --verbose
- run:
name: Generate RNTesterPods Xcode Workspace
command: pushd RNTester && pod install --verbose && popd
command: pushd packages/rn-tester && pod install --verbose && popd
# -------------------------
# Runs iOS unit tests
@ -535,7 +535,7 @@ jobs:
- run:
name: Assemble RNTester App
command: ./gradlew RNTester:android:app:assembleRelease
command: ./gradlew packages:rn-tester:android:app:assembleRelease
# -------------------------
# Run Android tests
@ -668,7 +668,7 @@ jobs:
- run: echo "Failing tests may be moved here temporarily."
- run:
name: Android Build
command: ./gradlew.bat RNTester:android:app:assembleRelease
command: ./gradlew.bat packages:rn-tester:android:app:assembleRelease
# -------------------------
# JOBS: Coverage

View File

@ -22,7 +22,7 @@
"**/__mocks__/**/*.js",
"**/__tests__/**/*.js",
"jest/**/*.js",
"RNTester/**/*.js",
"packages/rn-tester/**/*.js",
],
"globals": {
// Expose some Jest globals for test helpers

17
.gitignore vendored
View File

@ -23,10 +23,10 @@ project.xcworkspace
# Gradle
/build/
/RNTester/android/app/build/
/RNTester/android/app/gradle/
/RNTester/android/app/gradlew
/RNTester/android/app/gradlew.bat
/packages/rn-tester/android/app/build/
/packages/rn-tester/android/app/gradle/
/packages/rn-tester/android/app/gradlew
/packages/rn-tester/android/app/gradlew.bat
/ReactAndroid/build/
/ReactAndroid/gradle/
/ReactAndroid/gradlew
@ -75,7 +75,8 @@ package-lock.json
# ReactCommon subdir shouldn't have Xcode project
/ReactCommon/**/*.xcodeproj
RNTester/build
/packages/rn-tester/build
/packages/rn-tester/android/app/build/*
# Libs that shouldn't have Xcode project
/Libraries/FBLazyVector/**/*.xcodeproj
@ -87,11 +88,11 @@ RNTester/build
# CocoaPods
/template/ios/Pods/
/template/ios/Podfile.lock
/RNTester/Gemfile.lock
/packages/rn-tester/Gemfile.lock
# Ignore RNTester specific Pods, but keep the __offline_mirrors__ here.
RNTester/Pods/*
!RNTester/Pods/__offline_mirrors
/packages/rn-tester/Pods/*
!/packages/rn-tester/Pods/__offline_mirrors__
# react-native-codegen
/packages/react-native-codegen/lib

View File

@ -138,7 +138,7 @@ function getFileSize(path) {
*/
function android_getApkSize(engine, arch) {
return getFileSize(
`RNTester/android/app/build/outputs/apk/${engine}/release/app-${engine}-${arch}-release.apk`,
`packages/rn-tester/android/app/build/outputs/apk/${engine}/release/app-${engine}-${arch}-release.apk`,
);
}
@ -171,7 +171,7 @@ function report(target) {
reportSizeStats(
{
'ios-universal': getFileSize(
'RNTester/build/Build/Products/Release-iphonesimulator/RNTester.app/RNTester',
'packages/rn-tester/build/Build/Products/Release-iphonesimulator/RNTester.app/RNTester',
),
},
'\\| ios \\| - \\| universal \\|',

View File

@ -22,7 +22,7 @@ module.exports = {
'/node_modules/',
'<rootDir>/template',
'Libraries/Renderer',
'RNTester/e2e',
'packages/rn-tester/e2e',
],
transformIgnorePatterns: ['node_modules/(?!@react-native/)'],
haste: {

View File

@ -74,7 +74,7 @@
"test-android-unit": "yarn run docker-build-android && yarn run test-android-run-unit",
"test-android-e2e": "yarn run docker-build-android && yarn run test-android-run-e2e",
"build-ios-e2e": "detox build -c ios.sim.release",
"test-ios-e2e": "detox test -c ios.sim.release RNTester/e2e",
"test-ios-e2e": "detox test -c ios.sim.release packages/rn-tester/e2e",
"test-ios": "./scripts/objc-test.sh test"
},
"workspaces": [
@ -119,36 +119,36 @@
},
"detox": {
"test-runner": "jest",
"runner-config": "RNTester/e2e/config.json",
"runner-config": "packages/rn-tester/e2e/config.json",
"specs": "",
"configurations": {
"android.emu.release": {
"binaryPath": "RNTester/android/app/build/outputs/apk/hermes/release/app-hermes-x86-release.apk",
"testBinaryPath": "RNTester/android/app/build/outputs/apk/androidTest/hermes/release/app-hermes-release-androidTest.apk",
"build": "./gradlew RNTester:android:app:assembleRelease RNTester:android:app:assembleAndroidTest -DtestBuildType=release",
"binaryPath": "packages/rn-tester/android/app/build/outputs/apk/hermes/release/app-hermes-x86-release.apk",
"testBinaryPath": "packages/rn-tester/android/app/build/outputs/apk/androidTest/hermes/release/app-hermes-release-androidTest.apk",
"build": "./gradlew :packages:rn-tester:android:app:assembleRelease RNTester:android:app:assembleAndroidTest -DtestBuildType=release",
"type": "android.emulator",
"device": {
"avdName": "Nexus_6_API_29"
}
},
"android.emu.debug": {
"binaryPath": "RNTester/android/app/build/outputs/apk/hermes/debug/app-hermes-x86-debug.apk",
"testBinaryPath": "RNTester/android/app/build/outputs/apk/androidTest/hermes/debug/app-hermes-debug-androidTest.apk",
"build": "./gradlew RNTester:android:app:assembleDebug RNTester:android:app:assembleAndroidTest -DtestBuildType=debug",
"binaryPath": "packages/rn-tester/android/app/build/outputs/apk/hermes/debug/app-hermes-x86-debug.apk",
"testBinaryPath": "packages/rn-tester/android/app/build/outputs/apk/androidTest/hermes/debug/app-hermes-debug-androidTest.apk",
"build": "./gradlew :packages:rn-tester:android:app:assembleDebug RNTester:android:app:assembleAndroidTest -DtestBuildType=debug",
"type": "android.emulator",
"device": {
"avdName": "Nexus_6_API_29"
}
},
"ios.sim.release": {
"binaryPath": "RNTester/build/Build/Products/Release-iphonesimulator/RNTester.app/",
"build": "xcodebuild -workspace RNTester/RNTesterPods.xcworkspace -scheme RNTester -configuration Release -sdk iphonesimulator -derivedDataPath RNTester/build -UseModernBuildSystem=NO -quiet",
"binaryPath": "packages/rn-tester/build/Build/Products/Release-iphonesimulator/RNTester.app/",
"build": "xcodebuild -workspace packages/rn-tester/RNTesterPods.xcworkspace -scheme RNTester -configuration Release -sdk iphonesimulator -derivedDataPath packages/rn-tester/build -UseModernBuildSystem=NO -quiet",
"type": "ios.simulator",
"name": "iPhone 8"
},
"ios.sim.debug": {
"binaryPath": "RNTester/build/Build/Products/Debug-iphonesimulator/RNTester.app/",
"build": "xcodebuild -workspace RNTester/RNTesterPods.xcworkspace -scheme RNTester -configuration Debug -sdk iphonesimulator -derivedDataPath RNTester/build -UseModernBuildSystem=NO -quiet",
"binaryPath": "packages/rn-tester/build/Build/Products/Debug-iphonesimulator/RNTester.app/",
"build": "xcodebuild -workspace packages/rn-tester/RNTesterPods.xcworkspace -scheme RNTester -configuration Debug -sdk iphonesimulator -derivedDataPath packages/rn-tester/build -UseModernBuildSystem=NO -quiet",
"type": "ios.simulator",
"name": "iPhone 8"
}

23
packages/rn-tester/BUCK Normal file
View File

@ -0,0 +1,23 @@
load("@fbsource//tools/build_defs/third_party:yarn_defs.bzl", "yarn_workspace")
yarn_workspace(
name = "yarn-workspace",
srcs = glob(
["**/*.js"],
exclude = [
"**/__fixtures__/**",
"**/__flowtests__/**",
"**/__mocks__/**",
"**/__server_snapshot_tests__/**",
"**/__tests__/**",
"**/node_modules/**",
"**/node_modules/.bin/**",
"**/.*",
"**/.*/**",
"**/.*/.*",
"**/*.xcodeproj/**",
"**/*.xcworkspace/**",
],
),
visibility = ["PUBLIC"],
)

View File

@ -10,8 +10,8 @@
'use strict';
import type {TurboModule} from '../../Libraries/TurboModule/RCTExport';
import * as TurboModuleRegistry from '../../Libraries/TurboModule/TurboModuleRegistry';
import type {TurboModule} from '../../../Libraries/TurboModule/RCTExport';
import * as TurboModuleRegistry from '../../../Libraries/TurboModule/TurboModuleRegistry';
export interface Spec extends TurboModule {
+getConstants: () => {||};

View File

@ -1,4 +1,4 @@
require_relative '../scripts/react_native_pods'
require_relative '../../scripts/react_native_pods'
source 'https://cdn.cocoapods.org/'
platform :ios, '10.0'
@ -12,12 +12,13 @@ def pods()
project 'RNTesterPods.xcodeproj'
# Enable TurboModule
use_react_native!(path: "..")
pod 'ReactCommon/turbomodule/samples', :path => '../ReactCommon'
prefix_path = "../.."
use_react_native!(path:prefix_path)
pod 'ReactCommon/turbomodule/samples', :path => "#{prefix_path}/ReactCommon"
# Additional Pods which aren't included in the default Podfile
pod 'React-RCTPushNotification', :path => '../Libraries/PushNotificationIOS'
pod 'Yoga',:path => '../ReactCommon/yoga', :modular_headers => true
pod 'React-RCTPushNotification', :path => "#{prefix_path}/Libraries/PushNotificationIOS"
pod 'Yoga',:path => "#{prefix_path}/ReactCommon/yoga", :modular_headers => true
# Additional Pods which are classed as unstable
#
# To use fabric: add `fabric_enabled` option to the use_react_native method above, like below
@ -56,7 +57,7 @@ def frameworks_pre_install(installer)
end
def codegen_pre_install(installer)
system("../scripts/generate-native-modules-specs.sh")
system("../../scripts/generate-native-modules-specs.sh")
end
pre_install do |installer|

View File

@ -354,9 +354,9 @@ PODS:
- Yoga (~> 1.14)
DEPENDENCIES:
- DoubleConversion (from `../third-party-podspecs/DoubleConversion.podspec`)
- FBLazyVector (from `../Libraries/FBLazyVector`)
- FBReactNativeSpec (from `../Libraries/FBReactNativeSpec`)
- DoubleConversion (from `../../third-party-podspecs/DoubleConversion.podspec`)
- FBLazyVector (from `../../Libraries/FBLazyVector`)
- FBReactNativeSpec (from `../../Libraries/FBReactNativeSpec`)
- Flipper (~> 0.41.1)
- Flipper-DoubleConversion (= 1.1.7)
- Flipper-Folly (~> 2.2)
@ -376,36 +376,36 @@ DEPENDENCIES:
- FlipperKit/FlipperKitReactPlugin (~> 0.41.1)
- FlipperKit/FlipperKitUserDefaultsPlugin (~> 0.41.1)
- FlipperKit/SKIOSNetworkPlugin (~> 0.41.1)
- Folly (from `../third-party-podspecs/Folly.podspec`)
- glog (from `../third-party-podspecs/glog.podspec`)
- RCTRequired (from `../Libraries/RCTRequired`)
- RCTTypeSafety (from `../Libraries/TypeSafety`)
- React (from `../`)
- React-callinvoker (from `../ReactCommon/callinvoker`)
- React-Core (from `../`)
- React-Core/DevSupport (from `../`)
- React-Core/RCTWebSocket (from `../`)
- React-CoreModules (from `../React/CoreModules`)
- React-cxxreact (from `../ReactCommon/cxxreact`)
- React-jsi (from `../ReactCommon/jsi`)
- React-jsiexecutor (from `../ReactCommon/jsiexecutor`)
- React-jsinspector (from `../ReactCommon/jsinspector`)
- React-perflogger (from `../ReactCommon/reactperflogger`)
- React-RCTActionSheet (from `../Libraries/ActionSheetIOS`)
- React-RCTAnimation (from `../Libraries/NativeAnimation`)
- React-RCTBlob (from `../Libraries/Blob`)
- React-RCTImage (from `../Libraries/Image`)
- React-RCTLinking (from `../Libraries/LinkingIOS`)
- React-RCTNetwork (from `../Libraries/Network`)
- React-RCTPushNotification (from `../Libraries/PushNotificationIOS`)
- React-RCTSettings (from `../Libraries/Settings`)
- Folly (from `../../third-party-podspecs/Folly.podspec`)
- glog (from `../../third-party-podspecs/glog.podspec`)
- RCTRequired (from `../../Libraries/RCTRequired`)
- RCTTypeSafety (from `../../Libraries/TypeSafety`)
- React (from `../../`)
- React-callinvoker (from `../../ReactCommon/callinvoker`)
- React-Core (from `../../`)
- React-Core/DevSupport (from `../../`)
- React-Core/RCTWebSocket (from `../../`)
- React-CoreModules (from `../../React/CoreModules`)
- React-cxxreact (from `../../ReactCommon/cxxreact`)
- React-jsi (from `../../ReactCommon/jsi`)
- React-jsiexecutor (from `../../ReactCommon/jsiexecutor`)
- React-jsinspector (from `../../ReactCommon/jsinspector`)
- React-perflogger (from `../../ReactCommon/reactperflogger`)
- React-RCTActionSheet (from `../../Libraries/ActionSheetIOS`)
- React-RCTAnimation (from `../../Libraries/NativeAnimation`)
- React-RCTBlob (from `../../Libraries/Blob`)
- React-RCTImage (from `../../Libraries/Image`)
- React-RCTLinking (from `../../Libraries/LinkingIOS`)
- React-RCTNetwork (from `../../Libraries/Network`)
- React-RCTPushNotification (from `../../Libraries/PushNotificationIOS`)
- React-RCTSettings (from `../../Libraries/Settings`)
- React-RCTTest (from `./RCTTest`)
- React-RCTText (from `../Libraries/Text`)
- React-RCTVibration (from `../Libraries/Vibration`)
- React-runtimeexecutor (from `../ReactCommon/runtimeexecutor`)
- ReactCommon/turbomodule/core (from `../ReactCommon`)
- ReactCommon/turbomodule/samples (from `../ReactCommon`)
- Yoga (from `../ReactCommon/yoga`)
- React-RCTText (from `../../Libraries/Text`)
- React-RCTVibration (from `../../Libraries/Vibration`)
- React-runtimeexecutor (from `../../ReactCommon/runtimeexecutor`)
- ReactCommon/turbomodule/core (from `../../ReactCommon`)
- ReactCommon/turbomodule/samples (from `../../ReactCommon`)
- Yoga (from `../../ReactCommon/yoga`)
SPEC REPOS:
trunk:
@ -424,65 +424,65 @@ SPEC REPOS:
EXTERNAL SOURCES:
DoubleConversion:
:podspec: "../third-party-podspecs/DoubleConversion.podspec"
:podspec: "../../third-party-podspecs/DoubleConversion.podspec"
FBLazyVector:
:path: "../Libraries/FBLazyVector"
:path: "../../Libraries/FBLazyVector"
FBReactNativeSpec:
:path: "../Libraries/FBReactNativeSpec"
:path: "../../Libraries/FBReactNativeSpec"
Folly:
:podspec: "../third-party-podspecs/Folly.podspec"
:podspec: "../../third-party-podspecs/Folly.podspec"
glog:
:podspec: "../third-party-podspecs/glog.podspec"
:podspec: "../../third-party-podspecs/glog.podspec"
RCTRequired:
:path: "../Libraries/RCTRequired"
:path: "../../Libraries/RCTRequired"
RCTTypeSafety:
:path: "../Libraries/TypeSafety"
:path: "../../Libraries/TypeSafety"
React:
:path: "../"
:path: "../../"
React-callinvoker:
:path: "../ReactCommon/callinvoker"
:path: "../../ReactCommon/callinvoker"
React-Core:
:path: "../"
:path: "../../"
React-CoreModules:
:path: "../React/CoreModules"
:path: "../../React/CoreModules"
React-cxxreact:
:path: "../ReactCommon/cxxreact"
:path: "../../ReactCommon/cxxreact"
React-jsi:
:path: "../ReactCommon/jsi"
:path: "../../ReactCommon/jsi"
React-jsiexecutor:
:path: "../ReactCommon/jsiexecutor"
:path: "../../ReactCommon/jsiexecutor"
React-jsinspector:
:path: "../ReactCommon/jsinspector"
:path: "../../ReactCommon/jsinspector"
React-perflogger:
:path: "../ReactCommon/reactperflogger"
:path: "../../ReactCommon/reactperflogger"
React-RCTActionSheet:
:path: "../Libraries/ActionSheetIOS"
:path: "../../Libraries/ActionSheetIOS"
React-RCTAnimation:
:path: "../Libraries/NativeAnimation"
:path: "../../Libraries/NativeAnimation"
React-RCTBlob:
:path: "../Libraries/Blob"
:path: "../../Libraries/Blob"
React-RCTImage:
:path: "../Libraries/Image"
:path: "../../Libraries/Image"
React-RCTLinking:
:path: "../Libraries/LinkingIOS"
:path: "../../Libraries/LinkingIOS"
React-RCTNetwork:
:path: "../Libraries/Network"
:path: "../../Libraries/Network"
React-RCTPushNotification:
:path: "../Libraries/PushNotificationIOS"
:path: "../../Libraries/PushNotificationIOS"
React-RCTSettings:
:path: "../Libraries/Settings"
:path: "../../Libraries/Settings"
React-RCTTest:
:path: "./RCTTest"
React-RCTText:
:path: "../Libraries/Text"
:path: "../../Libraries/Text"
React-RCTVibration:
:path: "../Libraries/Vibration"
:path: "../../Libraries/Vibration"
React-runtimeexecutor:
:path: "../ReactCommon/runtimeexecutor"
:path: "../../ReactCommon/runtimeexecutor"
ReactCommon:
:path: "../ReactCommon"
:path: "../../ReactCommon"
Yoga:
:path: "../ReactCommon/yoga"
:path: "../../ReactCommon/yoga"
SPEC CHECKSUMS:
boost-for-react-native: 39c7adb57c4e60d6c5479dd8623128eb5b3f0f2c
@ -528,6 +528,6 @@ SPEC CHECKSUMS:
Yoga: f7fa200d8c49f97b54c9421079e781fb900b5cae
YogaKit: f782866e155069a2cca2517aafea43200b01fd5a
PODFILE CHECKSUM: b81a6d17037664baa1b98b1c4ff2ec7b04aa928d
PODFILE CHECKSUM: 3045d3456f0f2268f15db9a527839e6a19e6071c
COCOAPODS: 1.8.4

View File

@ -12,9 +12,9 @@
const {requireNativeComponent} = require('react-native');
import type {HostComponent} from '../../Libraries/Renderer/shims/ReactNativeTypes';
import type {SyntheticEvent} from '../../Libraries/Types/CoreEventTypes';
import type {ViewProps} from '../../Libraries/Components/View/ViewPropTypes';
import type {HostComponent} from '../../../Libraries/Renderer/shims/ReactNativeTypes';
import type {SyntheticEvent} from '../../../Libraries/Types/CoreEventTypes';
import type {ViewProps} from '../../../Libraries/Components/View/ViewPropTypes';
type SnapshotReadyEvent = SyntheticEvent<
$ReadOnly<{testIdentifier: string, ...}>,

View File

@ -5,7 +5,7 @@
require "json"
package = JSON.parse(File.read(File.join(__dir__, "..", "..", "package.json")))
package = JSON.parse(File.read(File.join(__dir__, "..", "..", "..", "package.json")))
version = package['version']
source = { :git => 'https://github.com/facebook/react-native.git' }

View File

@ -109,7 +109,7 @@
- (NSURL *)sourceURLForBridge:(__unused RCTBridge *)bridge
{
NSString *bundlePrefix = [[[NSBundle mainBundle] infoDictionary] valueForKey:@"RN_BUNDLE_PREFIX"];
NSString *bundleRoot = [NSString stringWithFormat:@"%@RNTester/js/RNTesterApp.ios", bundlePrefix];
NSString *bundleRoot = [NSString stringWithFormat:@"%@packages/rn-tester/js/RNTesterApp.ios", bundlePrefix];
return [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:bundleRoot
fallbackResource:nil];
}

View File

Before

Width:  |  Height:  |  Size: 35 KiB

After

Width:  |  Height:  |  Size: 35 KiB

View File

Before

Width:  |  Height:  |  Size: 61 KiB

After

Width:  |  Height:  |  Size: 61 KiB

View File

@ -20,7 +20,7 @@
- (void)setUp
{
_runner = RCTInitRunnerForApp(@"RNTester/js/RNTesterApp.ios", nil, nil);
_runner = RCTInitRunnerForApp(@"packages/rn-tester/js/RNTesterApp.ios", nil, nil);
if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 10) {
_runner.testSuffix = [NSString stringWithFormat:@"-iOS%d", UIDevice.currentDevice.systemVersion.intValue];
}

View File

Before

Width:  |  Height:  |  Size: 128 B

After

Width:  |  Height:  |  Size: 128 B

View File

Before

Width:  |  Height:  |  Size: 129 B

After

Width:  |  Height:  |  Size: 129 B

View File

@ -549,7 +549,7 @@
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "export RCT_METRO_PORT=\"${RCT_METRO_PORT:=8081}\"\necho \"export RCT_METRO_PORT=${RCT_METRO_PORT}\" > \"${SRCROOT}/../scripts/.packager.env\"\nif [ -z \"${RCT_NO_LAUNCH_PACKAGER+xxx}\" ] ; then\n if nc -w 5 -z localhost ${RCT_METRO_PORT} ; then\n if ! curl -s \"http://localhost:${RCT_METRO_PORT}/status\" | grep -q \"packager-status:running\" ; then\n echo \"Port ${RCT_METRO_PORT} already in use, packager is either not running or not running correctly\"\n exit 2\n fi\n else\n open \"$SRCROOT/../scripts/launchPackager.command\" || echo \"Can't start packager automatically\"\n fi\nfi\n";
shellScript = "export RCT_METRO_PORT=\"${RCT_METRO_PORT:=8081}\"\necho \"export RCT_METRO_PORT=${RCT_METRO_PORT}\" > \"${SRCROOT}/../../scripts/.packager.env\"\nif [ -z \"${RCT_NO_LAUNCH_PACKAGER+xxx}\" ] ; then\n if nc -w 5 -z localhost ${RCT_METRO_PORT} ; then\n if ! curl -s \"http://localhost:${RCT_METRO_PORT}/status\" | grep -q \"packager-status:running\" ; then\n echo \"Port ${RCT_METRO_PORT} already in use, packager is either not running or not running correctly\"\n exit 2\n fi\n else\n open \"$SRCROOT/../../scripts/launchPackager.command\" || echo \"Can't start packager automatically\"\n fi\nfi\n";
showEnvVarsInLog = 0;
};
64C8C8D2305EEDFDE304A0E6 /* [CP] Check Pods Manifest.lock */ = {
@ -586,7 +586,7 @@
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "export NODE_BINARY=node\n\"$SRCROOT/../scripts/react-native-xcode.sh\" RNTester/js/RNTesterApp.ios.js\n";
shellScript = "export NODE_BINARY=node\n\"$SRCROOT/../../scripts/react-native-xcode.sh\" $SRCROOT/../../packages/rn-tester/js/RNTesterApp.ios.js\n";
};
C1C7A9D58CE1D09515F20577 /* [CP] Copy Pods Resources */ = {
isa = PBXShellScriptBuildPhase;

Some files were not shown because too many files have changed in this diff Show More