Skip to content

Commit

Permalink
[Wallet] Fix yarn dev:ios unable to install app with iOS 14 (#5911)
Browse files Browse the repository at this point in the history
### Description

Upgrade react-native cli to fix `yarn dev:ios` unable to launch app on the simulator with iOS 14

See react-native-community/cli#1236

### Other changes

Use Xcode 12.2.0 image on CircleCI

### Tested



**before**

```
❯ yarn dev:ios
[...]
info Installing "/Users/jean/Library/Developer/Xcode/DerivedData/celo-afcaqctmxgqdxzfelzubxksctyfx/Build/Products/Debug-iphonesimulator/celo-alfajoresdev.app"
An error was encountered processing the command (domain=NSPOSIXErrorDomain, code=2):
Failed to install the requested application
An application bundle was not found at the provided path.
Provide a valid path to the desired application bundle.
Print: Entry, ":CFBundleIdentifier", Does Not Exist
error Command failed: /usr/libexec/PlistBuddy -c Print:CFBundleIdentifier /Users/jean/Library/Developer/Xcode/DerivedData/celo-afcaqctmxgqdxzfelzubxksctyfx/Build/Products/Debug-iphonesimulator/celo-alfajoresdev.app/Info.plist
Print: Entry, ":CFBundleIdentifier", Does Not Exist
```


**after**
```
❯ yarn dev:ios
[...]
info Installing "/Users/jean/Library/Developer/Xcode/DerivedData/celo-afcaqctmxgqdxzfelzubxksctyfx/Build/Products/Debug-iphonesimulator/celo.app"
info Launching "org.celo.mobile.alfajores.dev"
success Successfully launched the app on the simulator
```

### Related issues

None

### Backwards compatibility

Yes.
  • Loading branch information
jeanregisser committed Nov 19, 2020
1 parent 70334b3 commit 736cabb
Show file tree
Hide file tree
Showing 4 changed files with 74 additions and 46 deletions.
2 changes: 1 addition & 1 deletion .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -277,7 +277,7 @@ jobs:

end-to-end-mobile-test-ios:
macos:
xcode: '11.5.0'
xcode: '12.2.0'
working_directory: ~/app_osx
steps:
- checkout
Expand Down
2 changes: 1 addition & 1 deletion packages/mobile/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@ _If you are a cLabs employee, please ask to be added to the cLabs iOS developmen

Xcode is needed to build and deploy the mobile wallet to your iOS device. If you do not have an iOS device, Xcode can be used to emulate one.

Install [Xcode 11.4](https://developer.apple.com/download/more/?q=xcode) (an Apple Developer Account is needed to access this link).
Install [Xcode 12.2](https://developer.apple.com/download/more/?q=xcode) (an Apple Developer Account is needed to access this link).

We do not recommend installing Xcode through the App Store as it can auto update and become incompatible with our projects.

Expand Down
5 changes: 2 additions & 3 deletions packages/mobile/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -232,16 +232,15 @@
},
"ios.sim.debug": {
"binaryPath": "ios/build/Build/Products/Debug-iphonesimulator/celo.app",
"//build": "EXCLUDED_ARCHS is needed on CircleCI until we can have tests running with Xcode 12 there",
"build": "set -o pipefail && xcodebuild -workspace ios/celo.xcworkspace -scheme celo-test -configuration Debug -sdk iphonesimulator -derivedDataPath ios/build ${CI:+EXCLUDED_ARCHS=''} | bundle exec xcpretty",
"build": "set -o pipefail && xcodebuild -workspace ios/celo.xcworkspace -scheme celo-test -configuration Debug -sdk iphonesimulator -derivedDataPath ios/build | bundle exec xcpretty",
"type": "ios.simulator",
"device": {
"type": "iPhone 11"
}
},
"ios.sim.release": {
"binaryPath": "ios/build/Build/Products/Release-iphonesimulator/celo.app",
"build": "set -o pipefail && xcodebuild -workspace ios/celo.xcworkspace -scheme celo-test -configuration Release -sdk iphonesimulator -derivedDataPath ios/build ${CI:+EXCLUDED_ARCHS=''} | bundle exec xcpretty",
"build": "set -o pipefail && xcodebuild -workspace ios/celo.xcworkspace -scheme celo-test -configuration Release -sdk iphonesimulator -derivedDataPath ios/build | bundle exec xcpretty",
"type": "ios.simulator",
"device": {
"type": "iPhone 11"
Expand Down
111 changes: 70 additions & 41 deletions yarn.lock
Original file line number Diff line number Diff line change
Expand Up @@ -5401,46 +5401,71 @@
dependencies:
deep-assign "^3.0.0"

"@react-native-community/cli-debugger-ui@^4.8.0":
version "4.8.0"
resolved "https://registry.yarnpkg.com/@react-native-community/cli-debugger-ui/-/cli-debugger-ui-4.8.0.tgz#9a6419b29be69422e0056bbb1874775750351d22"
integrity sha512-Eq9lHINDXiBAwmFRCMN8jeKk6FTDnTxAfITkjPUNNTj7q3K+fH/oyOMJjxbIZbryIJY6g+g/ln6vsS2WzISNYQ==
"@react-native-community/cli-debugger-ui@^4.9.0":
version "4.9.0"
resolved "https://registry.yarnpkg.com/@react-native-community/cli-debugger-ui/-/cli-debugger-ui-4.9.0.tgz#4177764ba69243c97aa26829d59d9501acb2bd71"
integrity sha512-fBFGamHm4VUrDqkBGnsrwQL8OC6Om7K6EBQb4xj0nWekpXt1HSa3ScylYHTTWwYcpRf9htGMRGiv4dQDY/odAw==
dependencies:
serve-static "^1.13.1"

"@react-native-community/cli-platform-android@^4.5.1":
version "4.8.0"
resolved "https://registry.yarnpkg.com/@react-native-community/cli-platform-android/-/cli-platform-android-4.8.0.tgz#f495b227e82c75c676dfa53c0dac33bf438b50b8"
integrity sha512-sYa4K0t0VL99j+bloHTL2BwXFJpHCdPN4SRTm9/wfxuWDkiPFvo9TaX0adh7GbUoKalLq2k0z+iEpHMN3HtZiw==
"@react-native-community/cli-hermes@^4.13.0":
version "4.13.0"
resolved "https://registry.yarnpkg.com/@react-native-community/cli-hermes/-/cli-hermes-4.13.0.tgz#6243ed9c709dad5e523f1ccd7d21066b32f2899d"
integrity sha512-oG+w0Uby6rSGsUkJGLvMQctZ5eVRLLfhf84lLyz942OEDxFRa9U19YJxOe9FmgCKtotbYiM3P/XhK+SVCuerPQ==
dependencies:
"@react-native-community/cli-tools" "^4.8.0"
"@react-native-community/cli-platform-android" "^4.13.0"
"@react-native-community/cli-tools" "^4.13.0"
chalk "^3.0.0"
hermes-profile-transformer "^0.0.6"
ip "^1.1.5"

"@react-native-community/cli-platform-android@^4.13.0", "@react-native-community/cli-platform-android@^4.5.1":
version "4.13.0"
resolved "https://registry.yarnpkg.com/@react-native-community/cli-platform-android/-/cli-platform-android-4.13.0.tgz#922681ec82ee1aadd993598b814df1152118be02"
integrity sha512-3i8sX8GklEytUZwPnojuoFbCjIRzMugCdzDIdZ9UNmi/OhD4/8mLGO0dgXfT4sMWjZwu3qjy45sFfk2zOAgHbA==
dependencies:
"@react-native-community/cli-tools" "^4.13.0"
chalk "^3.0.0"
execa "^1.0.0"
fs-extra "^8.1.0"
glob "^7.1.3"
jetifier "^1.6.2"
lodash "^4.17.15"
logkitty "^0.6.0"
logkitty "^0.7.1"
slash "^3.0.0"
xmldoc "^1.1.2"

"@react-native-community/cli-platform-ios@^4.5.0":
version "4.8.0"
resolved "https://registry.yarnpkg.com/@react-native-community/cli-platform-ios/-/cli-platform-ios-4.8.0.tgz#bfa20f398837256ee943192930d1f94fa92f521d"
integrity sha512-UZyc/bwG23HKsvHVmDrlZulIRMK8Jl7njN9oCO0pohOYxRJIwueRP7A8IPCwVVohmSEuNmhCWpMIIxTAo7zzwg==
version "4.13.0"
resolved "https://registry.yarnpkg.com/@react-native-community/cli-platform-ios/-/cli-platform-ios-4.13.0.tgz#a738915c68cac86df54e578b59a1311ea62b1aef"
integrity sha512-6THlTu8zp62efkzimfGr3VIuQJ2514o+vScZERJCV1xgEi8XtV7mb/ZKt9o6Y9WGxKKkc0E0b/aVAtgy+L27CA==
dependencies:
"@react-native-community/cli-tools" "^4.8.0"
"@react-native-community/cli-tools" "^4.13.0"
chalk "^3.0.0"
glob "^7.1.3"
js-yaml "^3.13.1"
lodash "^4.17.15"
plist "^3.0.1"
xcode "^2.0.0"

"@react-native-community/cli-tools@^4.8.0":
version "4.8.0"
resolved "https://registry.yarnpkg.com/@react-native-community/cli-tools/-/cli-tools-4.8.0.tgz#144a029c741c2cf40a7f9c059819ce9a69e7f1e3"
integrity sha512-voXGruhYyyhCbEYM2uZ54dMZcBgXFFcQxVK3nLwJDG9nSQGObZInj9Zf76ix5qGnvKKGWIGUcbmRhyLpAzTXuQ==
"@react-native-community/cli-server-api@^4.13.0":
version "4.13.0"
resolved "https://registry.yarnpkg.com/@react-native-community/cli-server-api/-/cli-server-api-4.13.0.tgz#ef0e53fe0edc7356d62bca725ca47cb368f748a5"
integrity sha512-ER138ChLc1YYX7j9yE6fDm4DdNdsHThr+pla/B6iZoKje1r7TwymDdKaUvOsYalG7sWG9glW3bofcCq+Yh0Dvw==
dependencies:
"@react-native-community/cli-debugger-ui" "^4.9.0"
"@react-native-community/cli-tools" "^4.13.0"
compression "^1.7.1"
connect "^3.6.5"
errorhandler "^1.5.0"
pretty-format "^25.1.0"
serve-static "^1.13.1"
ws "^1.1.0"

"@react-native-community/cli-tools@^4.13.0":
version "4.13.0"
resolved "https://registry.yarnpkg.com/@react-native-community/cli-tools/-/cli-tools-4.13.0.tgz#b406463d33af16cedc4305a9a9257ed32845cf1b"
integrity sha512-s4f489h5+EJksn4CfheLgv5PGOM0CDmK1UEBLw2t/ncWs3cW2VI7vXzndcd/WJHTv3GntJhXDcJMuL+Z2IAOgg==
dependencies:
chalk "^3.0.0"
lodash "^4.17.15"
Expand All @@ -5449,29 +5474,28 @@
open "^6.2.0"
shell-quote "1.6.1"

"@react-native-community/cli-types@^4.8.0":
version "4.8.0"
resolved "https://registry.yarnpkg.com/@react-native-community/cli-types/-/cli-types-4.8.0.tgz#d929f0d47ecdc69027de02a89d17f0ece9ee3ca2"
integrity sha512-gkjQdmzskQJdddVNRBATa7rWMbamD2j4B7w9shbg20tIBYoh/tgHdkgiLqZQSfBKa8HqrAkeCJTYaT1oV4oReQ==
"@react-native-community/cli-types@^4.10.1":
version "4.10.1"
resolved "https://registry.yarnpkg.com/@react-native-community/cli-types/-/cli-types-4.10.1.tgz#d68a2dcd1649d3b3774823c64e5e9ce55bfbe1c9"
integrity sha512-ael2f1onoPF3vF7YqHGWy7NnafzGu+yp88BbFbP0ydoCP2xGSUzmZVw0zakPTC040Id+JQ9WeFczujMkDy6jYQ==

"@react-native-community/cli@^4.5.1":
version "4.8.0"
resolved "https://registry.yarnpkg.com/@react-native-community/cli/-/cli-4.8.0.tgz#b9e3916ceb0fe6bcbc2943fea2caa0ca3739d080"
integrity sha512-z4qHfxtoTxKhQ0V9B02a82IxBkEBH5FfKnaJn9WL5Tf4SmE91ER8ZNVEWNr97S4TCFVYDrpM7iKnrYpNi/ciYQ==
version "4.13.0"
resolved "https://registry.yarnpkg.com/@react-native-community/cli/-/cli-4.13.0.tgz#04d5032f9b2b423c61ceef6be83b1bcc8a37db75"
integrity sha512-R+1VehIQ6VTLf+e7YOwzJk0F9tstfeSC4xy7oT6GSgB3FnXbTJGHFUp4siyO68Ae/gzGqt8SiUO145teWkP+ZA==
dependencies:
"@hapi/joi" "^15.0.3"
"@react-native-community/cli-debugger-ui" "^4.8.0"
"@react-native-community/cli-tools" "^4.8.0"
"@react-native-community/cli-types" "^4.8.0"
"@react-native-community/cli-debugger-ui" "^4.9.0"
"@react-native-community/cli-hermes" "^4.13.0"
"@react-native-community/cli-server-api" "^4.13.0"
"@react-native-community/cli-tools" "^4.13.0"
"@react-native-community/cli-types" "^4.10.1"
chalk "^3.0.0"
command-exists "^1.2.8"
commander "^2.19.0"
compression "^1.7.1"
connect "^3.6.5"
cosmiconfig "^5.1.0"
deepmerge "^3.2.0"
envinfo "^7.1.0"
errorhandler "^1.5.0"
envinfo "^7.7.2"
execa "^1.0.0"
find-up "^4.1.0"
fs-extra "^8.1.0"
Expand All @@ -5484,19 +5508,17 @@
metro-config "^0.58.0"
metro-core "^0.58.0"
metro-react-native-babel-transformer "^0.58.0"
metro-resolver "^0.58.0"
minimist "^1.2.0"
mkdirp "^0.5.1"
node-stream-zip "^1.9.1"
open "^6.2.0"
ora "^3.4.0"
pretty-format "^25.2.0"
semver "^6.3.0"
serve-static "^1.13.1"
shell-quote "1.6.1"
strip-ansi "^5.2.0"
sudo-prompt "^9.0.0"
wcwidth "^1.0.1"
ws "^1.1.0"

"@react-native-community/clipboard@git+https://github.com/celo-org/clipboard#5afb848":
version "1.2.3"
Expand Down Expand Up @@ -14193,10 +14215,10 @@ env-variable@0.0.x:
resolved "https://registry.yarnpkg.com/env-variable/-/env-variable-0.0.6.tgz#74ab20b3786c545b62b4a4813ab8cf22726c9808"
integrity sha512-bHz59NlBbtS0NhftmR8+ExBEekE7br0e01jw+kk0NDro7TtZzBYZ5ScGPs3OmwnpyfHTHOtr1Y6uedCdrIldtg==

envinfo@^7.1.0:
version "7.4.0"
resolved "https://registry.yarnpkg.com/envinfo/-/envinfo-7.4.0.tgz#bef4ece9e717423aaf0c3584651430b735ad6630"
integrity sha512-FdDfnWnCVjxTTpWE3d6Jgh5JDIA3Cw7LCgpM/pI7kK1ORkjaqI2r6NqQ+ln2j0dfpgxY00AWieSvtkiZQKIItA==
envinfo@^7.7.2:
version "7.7.3"
resolved "https://registry.yarnpkg.com/envinfo/-/envinfo-7.7.3.tgz#4b2d8622e3e7366afb8091b23ed95569ea0208cc"
integrity sha512-46+j5QxbPWza0PB1i15nZx0xQ4I/EfQxg9J8Had3b408SV63nEtor2e+oiY63amTo9KTuh2a3XLObNwduxYwwA==

equal-length@^1.0.0:
version "1.0.1"
Expand Down Expand Up @@ -18510,6 +18532,13 @@ hermes-engine@~0.4.0:
resolved "https://registry.yarnpkg.com/hermes-engine/-/hermes-engine-0.4.1.tgz#2d02b295596298643c4d24b86687eb554db9e950"
integrity sha512-Y3JFC8PD7eN3KpnrzrmvMAqp0IwnZrmP/oGOptvaSu33d7Zq/8b/2lHlZZkNvRl7/I1Q0umTX8TByK7zzLfTXA==

hermes-profile-transformer@^0.0.6:
version "0.0.6"
resolved "https://registry.yarnpkg.com/hermes-profile-transformer/-/hermes-profile-transformer-0.0.6.tgz#bd0f5ecceda80dd0ddaae443469ab26fb38fc27b"
integrity sha512-cnN7bQUm65UWOy6cbGcCcZ3rpwW8Q/j4OP5aWRhEry4Z2t2aR1cjrbp0BS+KiBN0smvP1caBgAuxutvyvJILzQ==
dependencies:
source-map "^0.7.3"

hex-rgba@^1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/hex-rgba/-/hex-rgba-1.0.2.tgz#b7cfbd24c6c736277cf88dd6d41b672ea336574c"
Expand Down Expand Up @@ -22669,7 +22698,7 @@ logform@^2.1.1:
ms "^2.1.1"
triple-beam "^1.3.0"

logkitty@^0.6.0, logkitty@^0.7.1:
logkitty@^0.7.1:
version "0.7.1"
resolved "https://registry.yarnpkg.com/logkitty/-/logkitty-0.7.1.tgz#8e8d62f4085a826e8d38987722570234e33c6aa7"
integrity sha512-/3ER20CTTbahrCrpYfPn7Xavv9diBROZpoXGVZDWMw4b/X4uuUwAC0ki85tgsdMRONURyIJbcOvS94QsUBYPbQ==
Expand Down Expand Up @@ -23531,7 +23560,7 @@ metro-react-native-babel-transformer@0.58.0, metro-react-native-babel-transforme
metro-react-native-babel-preset "0.58.0"
metro-source-map "0.58.0"

metro-resolver@0.58.0:
metro-resolver@0.58.0, metro-resolver@^0.58.0:
version "0.58.0"
resolved "https://registry.yarnpkg.com/metro-resolver/-/metro-resolver-0.58.0.tgz#4d03edc52e2e25d45f16688adf3b3f268ea60df9"
integrity sha512-XFbAKvCHN2iWqKeiRARzEXn69eTDdJVJC7lu16S4dPQJ+Dy82dZBr5Es12iN+NmbJuFgrAuIHbpWrdnA9tOf6Q==
Expand Down

0 comments on commit 736cabb

Please sign in to comment.