Closed dpogue closed 1 year ago
Merging #1310 (91dbae5) into master (3d6c71a) will increase coverage by
0.00%
. The diff coverage is64.70%
.
@@ Coverage Diff @@
## master #1310 +/- ##
=======================================
Coverage 78.48% 78.49%
=======================================
Files 15 15
Lines 1780 1790 +10
=======================================
+ Hits 1397 1405 +8
- Misses 383 385 +2
Impacted Files | Coverage Δ | |
---|---|---|
lib/run.js | 21.73% <0.00%> (-0.24%) |
:arrow_down: |
lib/build.js | 68.04% <84.61%> (+1.01%) |
:arrow_up: |
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more
Platforms affected
iOS
Motivation and Context
Specifying
CONFIGURATION_BUILD_DIR
can cause issues with Cocoapods.Closes #617 Closes #659 Closes #671
Description
Once upon a time, Xcode's default directory values had issues when there were spaces in project names, so we override the
CONFIGURATION_BUILD_DIR
andSHARED_PRECOMPS_DIR
variables with our own paths.However, this can interfere with Cocoapods, and Xcode should be able to handle things sensibly nowadays.
Unfortunately, that results in our build artifacts living somewhere in a randomly-named Xcode DerivedData directory, and then we can't do things like run the app in a simulator or on a device because we don't know the path to it. 🤦🏼♂️
Setting
SYMROOT
allows us to control the output directory of the built products, with the caveat that Xcode always creates a subdirectory named with the current configuration.So instead of
build/emulator
, we'll havebuild/Debug-iphonesimulator
and instead ofbuild/device
, we'll havebuild/Release-iphoneos
.Hypothetically this is better because now we are sure that debug and release files never get mixed up in the same output directory.
The downside is that this is a breaking change because it alters the path for the output .ipa files.
Testing
Checklist