From dc08a881792e140b29647b6517e7256767a878bd Mon Sep 17 00:00:00 2001 From: Mike Grabowski Date: Sat, 6 Apr 2019 21:26:51 +0200 Subject: [PATCH 1/8] Use reactNativePath from static config --- ...un-android-docker-instrumentation-tests.sh | 2 +- .circleci/config.yml | 5 +- RNTester/RNTester.xcodeproj/project.pbxproj | 2 +- RNTester/android/app/build.gradle | 3 +- rn-cli.config.js => metro.config.js | 0 package.json | 4 +- react-native.config.js | 14 ++ scripts/launchPackager.bat | 2 +- .../run-android-local-integration-tests.sh | 2 +- yarn.lock | 181 ++++++++++++++++-- 10 files changed, 189 insertions(+), 26 deletions(-) rename rn-cli.config.js => metro.config.js (100%) create mode 100644 react-native.config.js diff --git a/.circleci/Dockerfiles/scripts/run-android-docker-instrumentation-tests.sh b/.circleci/Dockerfiles/scripts/run-android-docker-instrumentation-tests.sh index 2c5d32516cbf7a..ef6911e0f6765a 100644 --- a/.circleci/Dockerfiles/scripts/run-android-docker-instrumentation-tests.sh +++ b/.circleci/Dockerfiles/scripts/run-android-docker-instrumentation-tests.sh @@ -31,7 +31,7 @@ watchman shutdown-server # integration tests # build JS bundle for instrumentation tests -node cli.js bundle --platform android --dev true --entry-file ReactAndroid/src/androidTest/js/TestBundle.js --bundle-output ReactAndroid/src/androidTest/assets/AndroidTestBundle.js --reactNativePath . +node cli.js bundle --platform android --dev true --entry-file ReactAndroid/src/androidTest/js/TestBundle.js --bundle-output ReactAndroid/src/androidTest/assets/AndroidTestBundle.js # build test APK # shellcheck disable=SC1091 diff --git a/.circleci/config.yml b/.circleci/config.yml index b99eebf5ea33c5..6d9baf915f1c9c 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -478,9 +478,8 @@ jobs: # Build JavaScript Bundle for instrumentation tests - run: name: Build JavaScript Bundle - command: node cli.js bundle --max-workers 2 --platform android --dev true --entry-file ReactAndroid/src/androidTest/js/TestBundle.js --bundle-output ReactAndroid/src/androidTest/assets/AndroidTestBundle.js --reactNativePath . - - + command: node cli.js bundle --max-workers 2 --platform android --dev true --entry-file ReactAndroid/src/androidTest/js/TestBundle.js --bundle-output ReactAndroid/src/androidTest/assets/AndroidTestBundle.js + # Wait for AVD to finish booting before running tests - run: name: Wait for Android Virtual Device diff --git a/RNTester/RNTester.xcodeproj/project.pbxproj b/RNTester/RNTester.xcodeproj/project.pbxproj index 308e9bf4230a17..2a25994c40d52e 100644 --- a/RNTester/RNTester.xcodeproj/project.pbxproj +++ b/RNTester/RNTester.xcodeproj/project.pbxproj @@ -1673,7 +1673,7 @@ ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "export EXTRA_PACKAGER_ARGS=\"--reactNativePath $SRCROOT/../\"\nexport 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 RNTester/js/RNTesterApp.ios.js\n"; }; /* End PBXShellScriptBuildPhase section */ diff --git a/RNTester/android/app/build.gradle b/RNTester/android/app/build.gradle index 3ef02339fa931a..f1d9c0b09b3c8b 100644 --- a/RNTester/android/app/build.gradle +++ b/RNTester/android/app/build.gradle @@ -69,8 +69,7 @@ project.ext.react = [ bundleAssetName: "RNTesterApp.android.bundle", entryFile: file("../../js/RNTesterApp.android.js"), root: "$rootDir", - inputExcludes: ["android/**", "./**", ".gradle/**"], - extraPackagerArgs: ["--reactNativePath", "$rootDir"] + inputExcludes: ["android/**", "./**", ".gradle/**"] ] apply from: "../../../react.gradle" diff --git a/rn-cli.config.js b/metro.config.js similarity index 100% rename from rn-cli.config.js rename to metro.config.js diff --git a/package.json b/package.json index 167ba0cb28eb21..644d222f1662a1 100644 --- a/package.json +++ b/package.json @@ -59,7 +59,7 @@ "!template/package-lock.json" ], "scripts": { - "start": "react-native start --reactNativePath .", + "start": "react-native start", "test": "jest", "test-ci": "jest --maxWorkers=2 --ci --reporters=\"default\" --reporters=\"jest-junit\"", "flow": "flow", @@ -87,7 +87,7 @@ }, "dependencies": { "@babel/runtime": "^7.0.0", - "@react-native-community/cli": "^2.0.0", + "@react-native-community/cli": "2.0.0-alpha.8", "abort-controller": "^3.0.0", "art": "^0.10.0", "base64-js": "^1.1.2", diff --git a/react-native.config.js b/react-native.config.js new file mode 100644 index 00000000000000..ab97cf6a5def79 --- /dev/null +++ b/react-native.config.js @@ -0,0 +1,14 @@ +/** + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + * + * @flow + * @format + */ +'use strict'; + +module.exports = { + reactNativePath: '.', +}; diff --git a/scripts/launchPackager.bat b/scripts/launchPackager.bat index 377d1f7d3ae284..b6e8c583d1a62e 100644 --- a/scripts/launchPackager.bat +++ b/scripts/launchPackager.bat @@ -6,6 +6,6 @@ @echo off title Metro Bundler call .packager.bat -node "%~dp0..\cli.js" --reactNativePath ../ --projectRoot ../../../ start +node "%~dp0..\cli.js" --projectRoot ../../../ start pause exit diff --git a/scripts/run-android-local-integration-tests.sh b/scripts/run-android-local-integration-tests.sh index 24c4d9f20691d5..9fd5fb63a04667 100755 --- a/scripts/run-android-local-integration-tests.sh +++ b/scripts/run-android-local-integration-tests.sh @@ -17,7 +17,7 @@ echo "Compiling native code..." ./gradlew :ReactAndroid:packageReactNdkLibsForBuck echo "Building JS bundle..." -node cli.js bundle --platform android --dev true --entry-file ReactAndroid/src/androidTest/js/TestBundle.js --bundle-output ReactAndroid/src/androidTest/assets/AndroidTestBundle.js --reactNativePath . +node cli.js bundle --platform android --dev true --entry-file ReactAndroid/src/androidTest/js/TestBundle.js --bundle-output ReactAndroid/src/androidTest/assets/AndroidTestBundle.js echo "Installing test app on the device..." buck fetch ReactAndroid/src/androidTest/buck-runner:instrumentation-tests diff --git a/yarn.lock b/yarn.lock index 270dff6faac40b..903b42a01c26bb 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1064,17 +1064,45 @@ "@types/istanbul-lib-coverage" "^2.0.0" "@types/yargs" "^12.0.9" -"@react-native-community/cli@^2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@react-native-community/cli/-/cli-2.0.0.tgz#7ccf28545b7d6357a7c4b8eea7baa3f463f753fb" - integrity sha512-bwz85nFfg+BdFvfYdZLkEHxdka+NI83oz0vjkxg7xQ+wL/gFsKJ65bnS43I7qiMr7Lwl9tYV3xOUvKKEO6gdgg== +"@react-native-community/cli-platform-android@^2.0.0-alpha.4": + version "2.0.0-alpha.4" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-platform-android/-/cli-platform-android-2.0.0-alpha.4.tgz#23bed902473ed77feef1409623696905d857839c" + integrity sha512-axedvphfY7FY8EAzBHHTA5Y7MtGJrP2uxXPWFo936RgRDVspVmtw2ar98UXgCobhY/3iMuHnDber3iwO0tr4hw== + dependencies: + "@react-native-community/cli-tools" "^2.0.0-alpha.4" + +"@react-native-community/cli-platform-ios@^2.0.0-alpha.4": + version "2.0.0-alpha.4" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-platform-ios/-/cli-platform-ios-2.0.0-alpha.4.tgz#5b0f4f2a2e6c07424a98c33ea6fb683c0d3c8e90" + integrity sha512-7C2O+oOz+N2lJSPxNTbt2VnIjpb4vDd+PF1Bd9iyOP79jfTRr6AEUvqJErHuzVdi88U6JUtB5QOU0E6XbnXBgg== + dependencies: + "@react-native-community/cli-tools" "^2.0.0-alpha.4" + +"@react-native-community/cli-tools@^2.0.0-alpha.4": + version "2.0.0-alpha.4" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-tools/-/cli-tools-2.0.0-alpha.4.tgz#5e785d2814bd06f74099e666112f8f00ce08e646" + integrity sha512-50u4LxrxxfKMoykzUgjDsCf1YTvxZihTCphZuHyP9ApyXcS1lpBNNibExzNd6adyZq3zw6ZHM62ZTva9SwDDRg== + dependencies: + chalk "^1.1.1" + lodash "^4.17.5" + mime "^1.3.4" + +"@react-native-community/cli@2.0.0-alpha.4": + version "2.0.0-alpha.4" + resolved "https://registry.yarnpkg.com/@react-native-community/cli/-/cli-2.0.0-alpha.4.tgz#09f15e355dd92e116f3723a975a98842ac8d1ee8" + integrity sha512-6DYTmOnFv1dnJq+CPGUJ+VOMdLKMDFqPe1dl+NnERvnvuBP3DWmg5DAZiP2yuBGx1WqkxCQJzh3N2TknXtiE3Q== dependencies: + "@react-native-community/cli-platform-android" "^2.0.0-alpha.4" + "@react-native-community/cli-platform-ios" "^2.0.0-alpha.4" + "@react-native-community/cli-tools" "^2.0.0-alpha.4" chalk "^1.1.1" commander "^2.19.0" compression "^1.7.1" connect "^3.6.5" + cosmiconfig "^5.1.0" + deepmerge "^3.2.0" denodeify "^1.2.1" - envinfo "^5.7.0" + envinfo "^7.1.0" errorhandler "^1.5.0" escape-string-regexp "^1.0.5" execa "^1.0.0" @@ -1082,6 +1110,7 @@ glob "^7.1.1" graceful-fs "^4.1.3" inquirer "^3.0.6" + joi "^14.3.1" lodash "^4.17.5" metro "^0.53.1" metro-config "^0.53.1" @@ -1095,6 +1124,7 @@ node-fetch "^2.2.0" node-notifier "^5.2.1" opn "^3.0.2" + ora "^3.4.0" plist "^3.0.0" semver "^5.0.3" serve-static "^1.13.1" @@ -1837,6 +1867,13 @@ cache-base@^1.0.1: union-value "^1.0.0" unset-value "^1.0.0" +caller-callsite@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/caller-callsite/-/caller-callsite-2.0.0.tgz#847e0fce0a223750a9a027c54b33731ad3154134" + integrity sha1-hH4PzgoiN1CpoCfFSzNzGtMVQTQ= + dependencies: + callsites "^2.0.0" + caller-path@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-0.1.0.tgz#94085ef63581ecd3daa92444a8fe94e82577751f" @@ -1844,11 +1881,23 @@ caller-path@^0.1.0: dependencies: callsites "^0.2.0" +caller-path@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-2.0.0.tgz#468f83044e369ab2010fac5f06ceee15bb2cb1f4" + integrity sha1-Ro+DBE42mrIBD6xfBs7uFbsssfQ= + dependencies: + caller-callsite "^2.0.0" + callsites@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/callsites/-/callsites-0.2.0.tgz#afab96262910a7f33c19a5775825c69f34e350ca" integrity sha1-r6uWJikQp/M8GaV3WCXGnzTjUMo= +callsites@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/callsites/-/callsites-2.0.0.tgz#06eb84f00eea413da86affefacbffb36093b3c50" + integrity sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA= + callsites@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.0.0.tgz#fb7eb569b72ad7a45812f93fd9430a3e410b3dd3" @@ -1965,6 +2014,11 @@ cli-cursor@^2.1.0: dependencies: restore-cursor "^2.0.0" +cli-spinners@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-2.1.0.tgz#22c34b4d51f573240885b201efda4e4ec9fff3c7" + integrity sha512-8B00fJOEh1HPrx4fo5eW16XmE1PcL1tGpGrxy63CXGP9nHdPBN63X75hA1zhvQuhVztJWLqV58Roj2qlNM7cAA== + cli-width@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.0.tgz#ff19ede8a9a5e579324147b0c11f0fbcbabed639" @@ -1988,6 +2042,11 @@ cliui@^4.0.0: strip-ansi "^4.0.0" wrap-ansi "^2.0.0" +clone@^1.0.2: + version "1.0.4" + resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e" + integrity sha1-2jCcwmPfFZlMaIypAheco8fNfH4= + co@^4.6.0: version "4.6.0" resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" @@ -2151,6 +2210,16 @@ cosmiconfig@^5.0.5: js-yaml "^3.9.0" parse-json "^4.0.0" +cosmiconfig@^5.1.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-5.2.0.tgz#45038e4d28a7fe787203aede9c25bca4a08b12c8" + integrity sha512-nxt+Nfc3JAqf4WIWd0jXLjTJZmsPLrA9DDc4nRw2KFJQJK7DNooqSXrNI7tzLG50CF8axczly5UV929tBmh/7g== + dependencies: + import-fresh "^2.0.0" + is-directory "^0.3.1" + js-yaml "^3.13.0" + parse-json "^4.0.0" + coveralls@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/coveralls/-/coveralls-3.0.2.tgz#f5a0bcd90ca4e64e088b710fa8dda640aea4884f" @@ -2288,6 +2357,11 @@ deep-is@~0.1.3: resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ= +deepmerge@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-3.2.0.tgz#58ef463a57c08d376547f8869fdc5bcee957f44e" + integrity sha512-6+LuZGU7QCNUnAJyX8cIrlzoEgggTM6B7mm+znKOX4t5ltluT9KLjN6g61ECMS0LTsLW7yDpNoxhix5FZcrIow== + default-require-extensions@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/default-require-extensions/-/default-require-extensions-2.0.0.tgz#f5f8fbb18a7d6d50b21f641f649ebb522cfe24f7" @@ -2295,6 +2369,13 @@ default-require-extensions@^2.0.0: dependencies: strip-bom "^3.0.0" +defaults@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/defaults/-/defaults-1.0.3.tgz#c656051e9817d9ff08ed881477f3fe4019f3ef7d" + integrity sha1-xlYFHpgX2f8I7YgUd/P+QBnz730= + dependencies: + clone "^1.0.2" + define-properties@^1.1.2: version "1.1.3" resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" @@ -2455,10 +2536,10 @@ end-of-stream@^1.1.0: dependencies: once "^1.4.0" -envinfo@^5.7.0: - version "5.10.0" - resolved "https://registry.yarnpkg.com/envinfo/-/envinfo-5.10.0.tgz#503a9774ae15b93ea68bdfae2ccd6306624ea6df" - integrity sha512-rXbzXWvnQxy+TcqZlARbWVQwgGVVouVJgFZhLVN5htjLxl1thstrP2ZGi0pXC309AbK7gVOPU+ulz/tmpCI7iw== +envinfo@^7.1.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/envinfo/-/envinfo-7.1.0.tgz#c64f80bbf5faaafc962eef76c0d871c6c672eec0" + integrity sha512-38LJhrmyQafVInoYlaEDxomIfjtK+HUtp1JsInWdKtpxk0MlTU60fqYHg0LrKgxxJuq6H89ddw4IkxfQejZ77g== error-ex@^1.2.0, error-ex@^1.3.1: version "1.3.2" @@ -3388,6 +3469,11 @@ has@^1.0.1, has@^1.0.3: dependencies: function-bind "^1.1.1" +hoek@6.x.x: + version "6.1.3" + resolved "https://registry.yarnpkg.com/hoek/-/hoek-6.1.3.tgz#73b7d33952e01fe27a38b0457294b79dd8da242c" + integrity sha512-YXXAAhmF9zpQbC7LEcREFtXfGq5K1fmd+4PHkBq8NUqmzW3G+Dq10bI/i0KucLRwss3YYFQ0fSfoxBZYiGUqtQ== + home-or-tmp@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/home-or-tmp/-/home-or-tmp-3.0.0.tgz#57a8fe24cf33cdd524860a15821ddc25c86671fb" @@ -3453,6 +3539,14 @@ image-size@^0.6.0: resolved "https://registry.yarnpkg.com/image-size/-/image-size-0.6.3.tgz#e7e5c65bb534bd7cdcedd6cb5166272a85f75fb2" integrity sha512-47xSUiQioGaB96nqtp5/q55m0aBQSQdyIloMOc/x+QVTDZLNmXE892IIDrJ0hM1A5vcNUDD5tDffkSP5lCaIIA== +import-fresh@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-2.0.0.tgz#d81355c15612d386c61f9ddd3922d4304822a546" + integrity sha1-2BNVwVYS04bGH53dOSLUMEgipUY= + dependencies: + caller-path "^2.0.0" + resolve-from "^3.0.0" + import-local@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/import-local/-/import-local-2.0.0.tgz#55070be38a5993cf18ef6db7e961f5bee5c5a09d" @@ -3717,6 +3811,13 @@ isarray@1.0.0, isarray@~1.0.0: resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= +isemail@3.x.x: + version "3.2.0" + resolved "https://registry.yarnpkg.com/isemail/-/isemail-3.2.0.tgz#59310a021931a9fb06bbb51e155ce0b3f236832c" + integrity sha512-zKqkK+O+dGqevc93KNsbZ/TqTUFd46MwWjYOoMrjIMZ51eU7DtQG3Wmd9SQQT7i7RVnuTPEiYEWHU3MSbxC1Tg== + dependencies: + punycode "2.x.x" + isexe@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" @@ -4282,6 +4383,15 @@ jest@^24.7.1: import-local "^2.0.0" jest-cli "^24.7.1" +joi@^14.3.1: + version "14.3.1" + resolved "https://registry.yarnpkg.com/joi/-/joi-14.3.1.tgz#164a262ec0b855466e0c35eea2a885ae8b6c703c" + integrity sha512-LQDdM+pkOrpAn4Lp+neNIFV3axv1Vna3j38bisbQhETPMANYRbFJFUyOZcOClYvM/hppMhGWuKSFEK9vjrB+bQ== + dependencies: + hoek "6.x.x" + isemail "3.x.x" + topo "3.x.x" + js-levenshtein@^1.1.3: version "1.1.4" resolved "https://registry.yarnpkg.com/js-levenshtein/-/js-levenshtein-1.1.4.tgz#3a56e3cbf589ca0081eb22cd9ba0b1290a16d26e" @@ -4313,6 +4423,14 @@ js-yaml@^3.12.0: argparse "^1.0.7" esprima "^4.0.0" +js-yaml@^3.13.0: + version "3.13.1" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.13.1.tgz#aff151b30bfdfa8e49e05da22e7415e9dfa37847" + integrity sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw== + dependencies: + argparse "^1.0.7" + esprima "^4.0.0" + jsbn@~0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" @@ -4608,6 +4726,13 @@ log-driver@^1.2.7: resolved "https://registry.yarnpkg.com/log-driver/-/log-driver-1.2.7.tgz#63b95021f0702fedfa2c9bb0a24e7797d71871d8" integrity sha512-U7KCmLdqsGHBLeWqYlFA0V0Sl6P08EE1ZrmA9cxjUE0WVqT9qnyVDPz1kzpFEP0jdJuFnasWIfSd7fsaNXkpbg== +log-symbols@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-2.2.0.tgz#5740e1c5d6f0dfda4ad9323b5332107ef6b4c40a" + integrity sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg== + dependencies: + chalk "^2.0.1" + loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.3.1, loose-envify@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" @@ -5439,6 +5564,18 @@ options@>=0.0.5: resolved "https://registry.yarnpkg.com/options/-/options-0.0.6.tgz#ec22d312806bb53e731773e7cdaefcf1c643128f" integrity sha1-7CLTEoBrtT5zF3Pnza788cZDEo8= +ora@^3.4.0: + version "3.4.0" + resolved "https://registry.yarnpkg.com/ora/-/ora-3.4.0.tgz#bf0752491059a3ef3ed4c85097531de9fdbcd318" + integrity sha512-eNwHudNbO1folBP3JsZ19v9azXWtQZjICdr3Q0TDPIaeBQ3mXLrh54wM+er0+hSp+dWKf+Z8KM58CYzEyIYxYg== + dependencies: + chalk "^2.4.2" + cli-cursor "^2.1.0" + cli-spinners "^2.0.0" + log-symbols "^2.2.0" + strip-ansi "^5.2.0" + wcwidth "^1.0.1" + os-homedir@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" @@ -5827,16 +5964,16 @@ pump@^3.0.0: end-of-stream "^1.1.0" once "^1.3.1" +punycode@2.x.x, punycode@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" + integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== + punycode@^1.4.1: version "1.4.1" resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" integrity sha1-wNWmOycYgArY4esPpSachN1BhF4= -punycode@^2.1.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" - integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== - qs@~6.5.2: version "6.5.2" resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" @@ -6726,7 +6863,7 @@ strip-ansi@^5.0.0: dependencies: ansi-regex "^4.0.0" -strip-ansi@^5.1.0: +strip-ansi@^5.2.0: version "5.2.0" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae" integrity sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA== @@ -6915,6 +7052,13 @@ to-regex@^3.0.1, to-regex@^3.0.2: regex-not "^1.0.2" safe-regex "^1.1.0" +topo@3.x.x: + version "3.0.3" + resolved "https://registry.yarnpkg.com/topo/-/topo-3.0.3.tgz#d5a67fb2e69307ebeeb08402ec2a2a6f5f7ad95c" + integrity sha512-IgpPtvD4kjrJ7CRA3ov2FhWQADwv+Tdqbsf1ZnPUSAtCJ9e1Z44MmoSGDXGk4IppoZA7jd/QRkNddlLJWlUZsQ== + dependencies: + hoek "6.x.x" + tough-cookie@>=2.3.3, tough-cookie@^2.3.4, tough-cookie@~2.4.3: version "2.4.3" resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.4.3.tgz#53f36da3f47783b0925afa06ff9f3b165280f781" @@ -7142,6 +7286,13 @@ watch@~0.18.0: exec-sh "^0.2.0" minimist "^1.2.0" +wcwidth@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/wcwidth/-/wcwidth-1.0.1.tgz#f0b0dcf915bc5ff1528afadb2c0e17b532da2fe8" + integrity sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g= + dependencies: + defaults "^1.0.3" + webidl-conversions@^4.0.2: version "4.0.2" resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad" From 73ba27a6545850d7b30b7467c0285416dcf79a8a Mon Sep 17 00:00:00 2001 From: Mike Grabowski Date: Thu, 18 Apr 2019 18:29:05 +0200 Subject: [PATCH 2/8] Update CLI --- package.json | 4 +- yarn.lock | 119 ++++++++++++++++++++++++++++++++++++--------------- 2 files changed, 88 insertions(+), 35 deletions(-) diff --git a/package.json b/package.json index 644d222f1662a1..46f34d4f0345a1 100644 --- a/package.json +++ b/package.json @@ -87,7 +87,9 @@ }, "dependencies": { "@babel/runtime": "^7.0.0", - "@react-native-community/cli": "2.0.0-alpha.8", + "@react-native-community/cli": "2.0.0-alpha.10", + "@react-native-community/cli-platform-ios": "2.0.0-alpha.9", + "@react-native-community/cli-platform-android": "2.0.0-alpha.9", "abort-controller": "^3.0.0", "art": "^0.10.0", "base64-js": "^1.1.2", diff --git a/yarn.lock b/yarn.lock index 903b42a01c26bb..a17f95c07d0dc2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1064,47 +1064,51 @@ "@types/istanbul-lib-coverage" "^2.0.0" "@types/yargs" "^12.0.9" -"@react-native-community/cli-platform-android@^2.0.0-alpha.4": - version "2.0.0-alpha.4" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-platform-android/-/cli-platform-android-2.0.0-alpha.4.tgz#23bed902473ed77feef1409623696905d857839c" - integrity sha512-axedvphfY7FY8EAzBHHTA5Y7MtGJrP2uxXPWFo936RgRDVspVmtw2ar98UXgCobhY/3iMuHnDber3iwO0tr4hw== +"@react-native-community/cli-platform-android@2.0.0-alpha.9", "@react-native-community/cli-platform-android@^2.0.0-alpha.9": + version "2.0.0-alpha.9" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-platform-android/-/cli-platform-android-2.0.0-alpha.9.tgz#a97ac08c58698e11ffe1a74858e7ed06036acbab" + integrity sha512-JwXofRrWolVJbH/TghyEedfzTcJ5SxP4459elyZZR93hT4/YF0tn9uKNA8fiF+keCU1UiAk7aTmXxSOyURJyAQ== dependencies: - "@react-native-community/cli-tools" "^2.0.0-alpha.4" + "@react-native-community/cli-tools" "^2.0.0-alpha.8" + logkitty "^0.4.0" + node-fetch "^2.2.0" + slash "^2.0.0" + xmldoc "^0.4.0" -"@react-native-community/cli-platform-ios@^2.0.0-alpha.4": - version "2.0.0-alpha.4" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-platform-ios/-/cli-platform-ios-2.0.0-alpha.4.tgz#5b0f4f2a2e6c07424a98c33ea6fb683c0d3c8e90" - integrity sha512-7C2O+oOz+N2lJSPxNTbt2VnIjpb4vDd+PF1Bd9iyOP79jfTRr6AEUvqJErHuzVdi88U6JUtB5QOU0E6XbnXBgg== +"@react-native-community/cli-platform-ios@2.0.0-alpha.9", "@react-native-community/cli-platform-ios@^2.0.0-alpha.9": + version "2.0.0-alpha.9" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-platform-ios/-/cli-platform-ios-2.0.0-alpha.9.tgz#ac8319b5c69aca6337e643f1d0fd8112ef95486e" + integrity sha512-ly9UZWbUvOGpKDO8O2BpCn9E5V6vwInTMVBbjlZisEdBpzrwGNMKzYJmpYfQUpFPL3uLv6zWLIUGVS5E6XSbGg== dependencies: - "@react-native-community/cli-tools" "^2.0.0-alpha.4" + "@react-native-community/cli-tools" "^2.0.0-alpha.8" + chalk "^1.1.1" + xcode "^2.0.0" -"@react-native-community/cli-tools@^2.0.0-alpha.4": - version "2.0.0-alpha.4" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-tools/-/cli-tools-2.0.0-alpha.4.tgz#5e785d2814bd06f74099e666112f8f00ce08e646" - integrity sha512-50u4LxrxxfKMoykzUgjDsCf1YTvxZihTCphZuHyP9ApyXcS1lpBNNibExzNd6adyZq3zw6ZHM62ZTva9SwDDRg== +"@react-native-community/cli-tools@^2.0.0-alpha.8": + version "2.0.0-alpha.8" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-tools/-/cli-tools-2.0.0-alpha.8.tgz#acbfc1f3088b0103e57aac43ab7a00e347bf8dae" + integrity sha512-oE+nE8y0msZXs7d/6REycuQTVhh93G4p3aKv6vv+tLKooUA+ZvK2WpORrTQ/L6Ki5LBKZ7Qxwg8oq/s/7aJZUg== dependencies: chalk "^1.1.1" lodash "^4.17.5" mime "^1.3.4" -"@react-native-community/cli@2.0.0-alpha.4": - version "2.0.0-alpha.4" - resolved "https://registry.yarnpkg.com/@react-native-community/cli/-/cli-2.0.0-alpha.4.tgz#09f15e355dd92e116f3723a975a98842ac8d1ee8" - integrity sha512-6DYTmOnFv1dnJq+CPGUJ+VOMdLKMDFqPe1dl+NnERvnvuBP3DWmg5DAZiP2yuBGx1WqkxCQJzh3N2TknXtiE3Q== +"@react-native-community/cli@2.0.0-alpha.10": + version "2.0.0-alpha.10" + resolved "https://registry.yarnpkg.com/@react-native-community/cli/-/cli-2.0.0-alpha.10.tgz#dab59fac81ffa764e104d91f0852be5494d1e755" + integrity sha512-zOkQi1gJRpzJM3vG7s5hTwbtAk0+kT5txKt7d3jcx1zspv/B3jCzv42BWaHy5E/l/6grnsxMtNv0dmABNNYinA== dependencies: - "@react-native-community/cli-platform-android" "^2.0.0-alpha.4" - "@react-native-community/cli-platform-ios" "^2.0.0-alpha.4" - "@react-native-community/cli-tools" "^2.0.0-alpha.4" + "@react-native-community/cli-platform-android" "^2.0.0-alpha.9" + "@react-native-community/cli-platform-ios" "^2.0.0-alpha.9" + "@react-native-community/cli-tools" "^2.0.0-alpha.8" chalk "^1.1.1" commander "^2.19.0" compression "^1.7.1" connect "^3.6.5" cosmiconfig "^5.1.0" deepmerge "^3.2.0" - denodeify "^1.2.1" envinfo "^7.1.0" errorhandler "^1.5.0" - escape-string-regexp "^1.0.5" execa "^1.0.0" fs-extra "^7.0.1" glob "^7.1.1" @@ -1115,9 +1119,7 @@ metro "^0.53.1" metro-config "^0.53.1" metro-core "^0.53.1" - metro-memory-fs "^0.53.1" metro-react-native-babel-transformer "^0.53.1" - mime "^1.3.4" minimist "^1.2.0" mkdirp "^0.5.1" morgan "^1.9.0" @@ -1129,10 +1131,7 @@ semver "^5.0.3" serve-static "^1.13.1" shell-quote "1.6.1" - slash "^2.0.0" ws "^1.1.0" - xcode "^2.0.0" - xmldoc "^0.4.0" "@reactions/component@^2.0.2": version "2.0.2" @@ -1303,6 +1302,15 @@ ansi-escapes@^3.0.0: resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.1.0.tgz#f73207bb81207d75fd6c83f125af26eea378ca30" integrity sha512-UgAb8H9D41AQnu/PbWlCofQVcnV4Gs2bBJi9eZPxfU/hgglFh3SMDMENRIqdr7H6XFnXdoknctFByVsCOotTVw== +ansi-fragments@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/ansi-fragments/-/ansi-fragments-0.2.1.tgz#24409c56c4cc37817c3d7caa99d8969e2de5a05e" + integrity sha512-DykbNHxuXQwUDRv5ibc2b0x7uw7wmwOGLBUd5RmaQ5z8Lhx19vwvKV+FAsM5rEA6dEcHxX+/Ad5s9eF2k2bB+w== + dependencies: + colorette "^1.0.7" + slice-ansi "^2.0.0" + strip-ansi "^5.0.0" + ansi-gray@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/ansi-gray/-/ansi-gray-0.1.1.tgz#2962cf54ec9792c48510a3deb524436861ef7251" @@ -2082,6 +2090,11 @@ color-support@^1.1.3: resolved "https://registry.yarnpkg.com/color-support/-/color-support-1.1.3.tgz#93834379a1cc9a0c61f82f52f0d04322251bd5a2" integrity sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg== +colorette@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/colorette/-/colorette-1.0.7.tgz#7adf43c445ee63a541b4a4aef7d13f03df1e0cc0" + integrity sha512-KeK4klsvAgdODAjFPm6QLzvStizJqlxMBtVo4KQMCgk5tt/tf9rAzxmxLHNRynJg3tJjkKGKbHx3j4HLox27Lw== + colors@^1.0.3, colors@^1.1.2: version "1.3.3" resolved "https://registry.yarnpkg.com/colors/-/colors-1.3.3.tgz#39e005d546afe01e01f9c4ca8fa50f686a01205d" @@ -4733,6 +4746,14 @@ log-symbols@^2.2.0: dependencies: chalk "^2.0.1" +logkitty@^0.4.0: + version "0.4.1" + resolved "https://registry.yarnpkg.com/logkitty/-/logkitty-0.4.1.tgz#bbda70eb9f0a3de5f42fb6b47499b9001a4b77d0" + integrity sha512-h8SSUaiyi+SIAUoYdWl+hb1zPF7AjFgmSdt2NulA6YLHmbDkNI+LjkIBw2pxfR70LlR9Y2U31npYwQ5GQ2Gq3g== + dependencies: + ansi-fragments "^0.2.1" + yargs "^12.0.5" + loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.3.1, loose-envify@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" @@ -4915,11 +4936,6 @@ metro-inspector-proxy@0.53.1: ws "^1.1.5" yargs "^9.0.0" -metro-memory-fs@^0.53.1: - version "0.53.1" - resolved "https://registry.yarnpkg.com/metro-memory-fs/-/metro-memory-fs-0.53.1.tgz#d8975317122b8a9a90f649337d58da85e4ae2559" - integrity sha512-Xb6/TnMOjquTIRyKpaGx/jYM01+ajtQEjGpGS/N1TtnQeW0P7HMZnD+e/FpMgXmdqsf2IiQMK7l8WONU2L3Evw== - metro-minify-uglify@0.53.1: version "0.53.1" resolved "https://registry.yarnpkg.com/metro-minify-uglify/-/metro-minify-uglify-0.53.1.tgz#145b6e37c09e3ff8fb1bbd3221e5a3fded044904" @@ -6625,6 +6641,15 @@ slice-ansi@1.0.0: dependencies: is-fullwidth-code-point "^2.0.0" +slice-ansi@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-2.1.0.tgz#cacd7693461a637a5788d92a7dd4fba068e81636" + integrity sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ== + dependencies: + ansi-styles "^3.2.0" + astral-regex "^1.0.0" + is-fullwidth-code-point "^2.0.0" + slide@^1.1.5: version "1.1.6" resolved "https://registry.yarnpkg.com/slide/-/slide-1.1.6.tgz#56eb027d65b4d2dce6cb2e2d32c4d4afc9e1d707" @@ -6863,7 +6888,7 @@ strip-ansi@^5.0.0: dependencies: ansi-regex "^4.0.0" -strip-ansi@^5.2.0: +strip-ansi@^5.1.0, strip-ansi@^5.2.0: version "5.2.0" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae" integrity sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA== @@ -7517,6 +7542,14 @@ yargs-parser@^10.1.0: dependencies: camelcase "^4.1.0" +yargs-parser@^11.1.1: + version "11.1.1" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-11.1.1.tgz#879a0865973bca9f6bab5cbdf3b1c67ec7d3bcf4" + integrity sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ== + dependencies: + camelcase "^5.0.0" + decamelize "^1.2.0" + yargs-parser@^13.0.0: version "13.0.0" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.0.0.tgz#3fc44f3e76a8bdb1cc3602e860108602e5ccde8b" @@ -7550,6 +7583,24 @@ yargs@^12.0.2: y18n "^3.2.1 || ^4.0.0" yargs-parser "^10.1.0" +yargs@^12.0.5: + version "12.0.5" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-12.0.5.tgz#05f5997b609647b64f66b81e3b4b10a368e7ad13" + integrity sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw== + dependencies: + cliui "^4.0.0" + decamelize "^1.2.0" + find-up "^3.0.0" + get-caller-file "^1.0.1" + os-locale "^3.0.0" + require-directory "^2.1.1" + require-main-filename "^1.0.1" + set-blocking "^2.0.0" + string-width "^2.0.0" + which-module "^2.0.0" + y18n "^3.2.1 || ^4.0.0" + yargs-parser "^11.1.1" + yargs@^13.0.0: version "13.2.2" resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.2.2.tgz#0c101f580ae95cea7f39d927e7770e3fdc97f993" From 57ac02e21c17bd4dde26b567c358d73757b08d10 Mon Sep 17 00:00:00 2001 From: Mike Grabowski Date: Thu, 18 Apr 2019 20:09:25 +0200 Subject: [PATCH 3/8] Refactor hasteImpl to use public CLI API --- jest/hasteImpl.js | 76 +++++++++++++++-------------------------------- 1 file changed, 24 insertions(+), 52 deletions(-) diff --git a/jest/hasteImpl.js b/jest/hasteImpl.js index fda1983c6192a5..5fd9c6cfd3d09b 100644 --- a/jest/hasteImpl.js +++ b/jest/hasteImpl.js @@ -11,44 +11,18 @@ 'use strict'; const path = require('path'); +const cli = require('@react-native-community/cli'); -const REACT_NATIVE_CI = process.cwd() === path.resolve(__dirname, '..'); - -let pluginsPath; - -if (REACT_NATIVE_CI) { - pluginsPath = '..'; -} else { - pluginsPath = '../../../'; -} - -function getPlugins() { - try { - const {findPlugins} = require('@react-native-community/cli'); - return findPlugins(path.resolve(__dirname, pluginsPath)); - } catch (e) { - return { - haste: { - providesModuleNodeModules: [], - platforms: [], - }, - }; - } -} - -const plugins = getPlugins(); +const {haste} = cli.loadConfig(); // Detect out-of-tree platforms and add them to the whitelists -const pluginRoots /*: Array */ = plugins.haste.providesModuleNodeModules.map( +const pluginRoots /*: Array */ = haste.providesModuleNodeModules.map( name => path.resolve(__dirname, '../../', name) + path.sep, ); -const pluginNameReducers /*: Array< - [RegExp, string], -> */ = plugins.haste.platforms.map(name => [ - new RegExp(`^(.*)\.(${name})$`), - '$1', -]); +const pluginNameReducers /*: Array<[RegExp, string]> */ = haste.platforms.map( + name => [new RegExp(`^(.*)\.(${name})$`), '$1'], +); const ROOTS = [path.resolve(__dirname, '..') + path.sep, ...pluginRoots]; @@ -77,7 +51,24 @@ const NAME_REDUCERS /*: Array<[RegExp, string]> */ = [ ...pluginNameReducers, ]; -const haste = { +function isHastePath(filePath /*: string */) /*: boolean */ { + if (!filePath.endsWith('.js') && !filePath.endsWith('.js.flow')) { + return false; + } + + const root = ROOTS.find(r => filePath.startsWith(r)); + if (!root) { + return false; + } + + filePath = filePath.substr(root.length); + if (BLACKLISTED_PATTERNS.some(pattern => pattern.test(filePath))) { + return false; + } + return WHITELISTED_PREFIXES.some(prefix => filePath.startsWith(prefix)); +} + +module.exports = { /* * @return {string|void} hasteName for module at filePath; or undefined if * filePath is not a haste module @@ -98,22 +89,3 @@ const haste = { return hasteName; }, }; - -function isHastePath(filePath /*: string */) /*: boolean */ { - if (!filePath.endsWith('.js') && !filePath.endsWith('.js.flow')) { - return false; - } - - const root = ROOTS.find(r => filePath.startsWith(r)); - if (!root) { - return false; - } - - filePath = filePath.substr(root.length); - if (BLACKLISTED_PATTERNS.some(pattern => pattern.test(filePath))) { - return false; - } - return WHITELISTED_PREFIXES.some(prefix => filePath.startsWith(prefix)); -} - -module.exports = haste; From 50f36d7c322815d7469da394789ee2f812dada40 Mon Sep 17 00:00:00 2001 From: Mike Grabowski Date: Thu, 18 Apr 2019 23:08:45 +0200 Subject: [PATCH 4/8] Update hasteImpl and bump CLI --- jest/hasteImpl.js | 4 ++-- package.json | 2 +- react-native.config.js | 19 +++++++++++++++++++ yarn.lock | 8 ++++---- 4 files changed, 26 insertions(+), 7 deletions(-) diff --git a/jest/hasteImpl.js b/jest/hasteImpl.js index 5fd9c6cfd3d09b..476e8371181213 100644 --- a/jest/hasteImpl.js +++ b/jest/hasteImpl.js @@ -45,8 +45,8 @@ const NAME_REDUCERS /*: Array<[RegExp, string]> */ = [ [/^(?:.*[\\\/])?([a-zA-Z0-9$_.-]+)$/, '$1'], // strip .js/.js.flow suffix [/^(.*)\.js(\.flow)?$/, '$1'], - // strip platform suffix - [/^(.*)\.(android|ios|native)$/, '$1'], + // strip native suffix + [/^(.*)\.(native)$/, '$1'], // strip plugin platform suffixes ...pluginNameReducers, ]; diff --git a/package.json b/package.json index 46f34d4f0345a1..2ed06e107df824 100644 --- a/package.json +++ b/package.json @@ -87,7 +87,7 @@ }, "dependencies": { "@babel/runtime": "^7.0.0", - "@react-native-community/cli": "2.0.0-alpha.10", + "@react-native-community/cli": "2.0.0-alpha.12", "@react-native-community/cli-platform-ios": "2.0.0-alpha.9", "@react-native-community/cli-platform-android": "2.0.0-alpha.9", "abort-controller": "^3.0.0", diff --git a/react-native.config.js b/react-native.config.js index ab97cf6a5def79..453fc2ee58ffed 100644 --- a/react-native.config.js +++ b/react-native.config.js @@ -9,6 +9,25 @@ */ 'use strict'; +const { + commands: iOSCommands, + ...ios +} = require('@react-native-community/cli-platform-ios'); +const { + commands: androidCommands, + ...android +} = require('@react-native-community/cli-platform-android'); + module.exports = { reactNativePath: '.', + commands: [...iOSCommands, ...androidCommands], + platforms: {ios, android}, + project: { + ios: { + project: './RNTester/RNTester.xcodeproj', + }, + android: { + sourceDir: './RNTester', + }, + }, }; diff --git a/yarn.lock b/yarn.lock index a17f95c07d0dc2..d1e3200ffada9e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1093,10 +1093,10 @@ lodash "^4.17.5" mime "^1.3.4" -"@react-native-community/cli@2.0.0-alpha.10": - version "2.0.0-alpha.10" - resolved "https://registry.yarnpkg.com/@react-native-community/cli/-/cli-2.0.0-alpha.10.tgz#dab59fac81ffa764e104d91f0852be5494d1e755" - integrity sha512-zOkQi1gJRpzJM3vG7s5hTwbtAk0+kT5txKt7d3jcx1zspv/B3jCzv42BWaHy5E/l/6grnsxMtNv0dmABNNYinA== +"@react-native-community/cli@2.0.0-alpha.12": + version "2.0.0-alpha.12" + resolved "https://registry.yarnpkg.com/@react-native-community/cli/-/cli-2.0.0-alpha.12.tgz#4dbe04f4ffe24751c8ead6cd18dce06aee7d5752" + integrity sha512-XvyjjA3Uvri9eujakz8IrvpUokIdEiNpIoATdHxLp4tpj7xyGaoI6Dze81ttKkYzIsq0dbeYAVvUSapCmmOuwA== dependencies: "@react-native-community/cli-platform-android" "^2.0.0-alpha.9" "@react-native-community/cli-platform-ios" "^2.0.0-alpha.9" From 6f8a9a6c6e587620866a28f85746d44da41695be Mon Sep 17 00:00:00 2001 From: Mike Grabowski Date: Fri, 19 Apr 2019 11:44:10 +0200 Subject: [PATCH 5/8] nit: rename I feel like `commands` at the beginning just reads nicer. --- react-native.config.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/react-native.config.js b/react-native.config.js index 453fc2ee58ffed..70c875ba92b55e 100644 --- a/react-native.config.js +++ b/react-native.config.js @@ -10,17 +10,17 @@ 'use strict'; const { - commands: iOSCommands, + commands: commandsIOS, ...ios } = require('@react-native-community/cli-platform-ios'); const { - commands: androidCommands, + commands: commandsAndroid, ...android } = require('@react-native-community/cli-platform-android'); module.exports = { reactNativePath: '.', - commands: [...iOSCommands, ...androidCommands], + commands: [...commandsIOS, ...commandsAndroid], platforms: {ios, android}, project: { ios: { From df3bf146b3250fbd76031956b4bd22df755e5985 Mon Sep 17 00:00:00 2001 From: Mike Grabowski Date: Fri, 19 Apr 2019 16:23:02 +0200 Subject: [PATCH 6/8] Update config --- react-native.config.js | 25 +++++++++++++++---------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/react-native.config.js b/react-native.config.js index 453fc2ee58ffed..ef8690d7d8fd2e 100644 --- a/react-native.config.js +++ b/react-native.config.js @@ -9,19 +9,24 @@ */ 'use strict'; -const { - commands: iOSCommands, - ...ios -} = require('@react-native-community/cli-platform-ios'); -const { - commands: androidCommands, - ...android -} = require('@react-native-community/cli-platform-android'); +const ios = require('@react-native-community/cli-platform-ios'); +const android = require('@react-native-community/cli-platform-android'); module.exports = { reactNativePath: '.', - commands: [...iOSCommands, ...androidCommands], - platforms: {ios, android}, + commands: [...ios.commands, ...android.commands], + platforms: { + ios: { + linkConfig: ios.linkConfig, + projectConfig: ios.projectConfig, + dependencyConfig: ios.dependencyConfig, + }, + android: { + linkConfig: android.linkConfig, + projectConfig: android.projectConfig, + dependencyConfig: android.dependencyConfig, + }, + }, project: { ios: { project: './RNTester/RNTester.xcodeproj', From 38a3387e3bd6403412dd263b2e0eb7b2e59cdbd3 Mon Sep 17 00:00:00 2001 From: Mike Grabowski Date: Tue, 23 Apr 2019 23:05:13 +0200 Subject: [PATCH 7/8] Update dependency on RN CLI --- package.json | 6 +++--- yarn.lock | 42 +++++++++++++++++++++--------------------- 2 files changed, 24 insertions(+), 24 deletions(-) diff --git a/package.json b/package.json index 2ed06e107df824..cfc9453f161967 100644 --- a/package.json +++ b/package.json @@ -87,9 +87,9 @@ }, "dependencies": { "@babel/runtime": "^7.0.0", - "@react-native-community/cli": "2.0.0-alpha.12", - "@react-native-community/cli-platform-ios": "2.0.0-alpha.9", - "@react-native-community/cli-platform-android": "2.0.0-alpha.9", + "@react-native-community/cli": "2.0.0-alpha.15", + "@react-native-community/cli-platform-ios": "2.0.0-alpha.15", + "@react-native-community/cli-platform-android": "2.0.0-alpha.15", "abort-controller": "^3.0.0", "art": "^0.10.0", "base64-js": "^1.1.2", diff --git a/yarn.lock b/yarn.lock index d1e3200ffada9e..defb84cb2e49ef 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1064,43 +1064,43 @@ "@types/istanbul-lib-coverage" "^2.0.0" "@types/yargs" "^12.0.9" -"@react-native-community/cli-platform-android@2.0.0-alpha.9", "@react-native-community/cli-platform-android@^2.0.0-alpha.9": - version "2.0.0-alpha.9" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-platform-android/-/cli-platform-android-2.0.0-alpha.9.tgz#a97ac08c58698e11ffe1a74858e7ed06036acbab" - integrity sha512-JwXofRrWolVJbH/TghyEedfzTcJ5SxP4459elyZZR93hT4/YF0tn9uKNA8fiF+keCU1UiAk7aTmXxSOyURJyAQ== +"@react-native-community/cli-platform-android@2.0.0-alpha.15", "@react-native-community/cli-platform-android@^2.0.0-alpha.15": + version "2.0.0-alpha.15" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-platform-android/-/cli-platform-android-2.0.0-alpha.15.tgz#5ab64c68ee828c30e866923add5e1bab81c9102a" + integrity sha512-f5ogc1GxzkkDRw2o7PX+tnEDZ/uZYshf/5UaoH4qmaXhHdCulVSd24jTKH4HiRAXrbLf+3bm6JbwG4OLB09fzA== dependencies: - "@react-native-community/cli-tools" "^2.0.0-alpha.8" + "@react-native-community/cli-tools" "^2.0.0-alpha.14" logkitty "^0.4.0" node-fetch "^2.2.0" slash "^2.0.0" xmldoc "^0.4.0" -"@react-native-community/cli-platform-ios@2.0.0-alpha.9", "@react-native-community/cli-platform-ios@^2.0.0-alpha.9": - version "2.0.0-alpha.9" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-platform-ios/-/cli-platform-ios-2.0.0-alpha.9.tgz#ac8319b5c69aca6337e643f1d0fd8112ef95486e" - integrity sha512-ly9UZWbUvOGpKDO8O2BpCn9E5V6vwInTMVBbjlZisEdBpzrwGNMKzYJmpYfQUpFPL3uLv6zWLIUGVS5E6XSbGg== +"@react-native-community/cli-platform-ios@2.0.0-alpha.15", "@react-native-community/cli-platform-ios@^2.0.0-alpha.15": + version "2.0.0-alpha.15" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-platform-ios/-/cli-platform-ios-2.0.0-alpha.15.tgz#959190650a1fafeae9bbabcc422329374918b466" + integrity sha512-gQKF9Y1dIqs2i5vveZVveUchUm0fw4bFw8XRmiy41yeb3/Qtyg8PCpnjGj+0fK7G5tW/23T6I2v4C1fRCRfnoQ== dependencies: - "@react-native-community/cli-tools" "^2.0.0-alpha.8" + "@react-native-community/cli-tools" "^2.0.0-alpha.14" chalk "^1.1.1" xcode "^2.0.0" -"@react-native-community/cli-tools@^2.0.0-alpha.8": - version "2.0.0-alpha.8" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-tools/-/cli-tools-2.0.0-alpha.8.tgz#acbfc1f3088b0103e57aac43ab7a00e347bf8dae" - integrity sha512-oE+nE8y0msZXs7d/6REycuQTVhh93G4p3aKv6vv+tLKooUA+ZvK2WpORrTQ/L6Ki5LBKZ7Qxwg8oq/s/7aJZUg== +"@react-native-community/cli-tools@^2.0.0-alpha.14": + version "2.0.0-alpha.14" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-tools/-/cli-tools-2.0.0-alpha.14.tgz#c625fcc9d03d77428c242801510280ce88ef0e4b" + integrity sha512-nU3bDcVKDuGfLCwayJXEtmFrbtuSsPAykFj1yX1kfItoIQpk7h3V66f1cOkDfaLxyUDO4fUba4oHxaQjjLGAJQ== dependencies: chalk "^1.1.1" lodash "^4.17.5" mime "^1.3.4" -"@react-native-community/cli@2.0.0-alpha.12": - version "2.0.0-alpha.12" - resolved "https://registry.yarnpkg.com/@react-native-community/cli/-/cli-2.0.0-alpha.12.tgz#4dbe04f4ffe24751c8ead6cd18dce06aee7d5752" - integrity sha512-XvyjjA3Uvri9eujakz8IrvpUokIdEiNpIoATdHxLp4tpj7xyGaoI6Dze81ttKkYzIsq0dbeYAVvUSapCmmOuwA== +"@react-native-community/cli@2.0.0-alpha.15": + version "2.0.0-alpha.15" + resolved "https://registry.yarnpkg.com/@react-native-community/cli/-/cli-2.0.0-alpha.15.tgz#3a9c508b305adda70cb7df6add086b42d25bae9b" + integrity sha512-3TpH50QaYGrw8btvJ2kDSfq7vHlNhsxT2zZoyKb582Bn/+9qFjSpjCnLRLabArGFWKtUu5jTD81Weoeww5v6Xg== dependencies: - "@react-native-community/cli-platform-android" "^2.0.0-alpha.9" - "@react-native-community/cli-platform-ios" "^2.0.0-alpha.9" - "@react-native-community/cli-tools" "^2.0.0-alpha.8" + "@react-native-community/cli-platform-android" "^2.0.0-alpha.15" + "@react-native-community/cli-platform-ios" "^2.0.0-alpha.15" + "@react-native-community/cli-tools" "^2.0.0-alpha.14" chalk "^1.1.1" commander "^2.19.0" compression "^1.7.1" From 44c37fa673a439b71060029b0e229074b822a866 Mon Sep 17 00:00:00 2001 From: Mike Grabowski Date: Wed, 24 Apr 2019 00:03:00 +0200 Subject: [PATCH 8/8] Update CLI version --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index cfc9453f161967..2f54194bf978f6 100644 --- a/package.json +++ b/package.json @@ -87,7 +87,7 @@ }, "dependencies": { "@babel/runtime": "^7.0.0", - "@react-native-community/cli": "2.0.0-alpha.15", + "@react-native-community/cli": "2.0.0-alpha.16", "@react-native-community/cli-platform-ios": "2.0.0-alpha.15", "@react-native-community/cli-platform-android": "2.0.0-alpha.15", "abort-controller": "^3.0.0",