Add parallelizeBuild to TargetScheme

This is at the same level as `buildImplicitDependencies` and deserves to be part of the easy-mode scheme creation.
This commit is contained in:
Brentley Jones
2020-04-13 13:55:51 -05:00
parent 1b07c8ce64
commit 322bbd5893
6 changed files with 17 additions and 6 deletions
+8
View File
@@ -10,6 +10,7 @@ public struct TargetScheme: Equatable {
public var region: String?
public var disableMainThreadChecker: Bool?
public var stopOnEveryMainThreadCheckerIssue: Bool?
public var parallelizeBuild: Bool?
public var buildImplicitDependencies: Bool?
public var commandLineArguments: [String: Bool]
public var environmentVariables: [XCScheme.EnvironmentVariable]
@@ -24,6 +25,7 @@ public struct TargetScheme: Equatable {
region: String? = nil,
disableMainThreadChecker: Bool? = nil,
stopOnEveryMainThreadCheckerIssue: Bool? = nil,
parallelizeBuild: Bool? = nil,
buildImplicitDependencies: Bool? = nil,
commandLineArguments: [String: Bool] = [:],
environmentVariables: [XCScheme.EnvironmentVariable] = [],
@@ -37,6 +39,7 @@ public struct TargetScheme: Equatable {
self.region = region
self.disableMainThreadChecker = disableMainThreadChecker
self.stopOnEveryMainThreadCheckerIssue = stopOnEveryMainThreadCheckerIssue
self.parallelizeBuild = parallelizeBuild
self.buildImplicitDependencies = buildImplicitDependencies
self.commandLineArguments = commandLineArguments
self.environmentVariables = environmentVariables
@@ -67,6 +70,7 @@ extension TargetScheme: JSONObjectConvertible {
region = jsonDictionary.json(atKeyPath: "region")
disableMainThreadChecker = jsonDictionary.json(atKeyPath: "disableMainThreadChecker")
stopOnEveryMainThreadCheckerIssue = jsonDictionary.json(atKeyPath: "stopOnEveryMainThreadCheckerIssue")
parallelizeBuild = jsonDictionary.json(atKeyPath: "parallelizeBuild")
buildImplicitDependencies = jsonDictionary.json(atKeyPath: "buildImplicitDependencies")
commandLineArguments = jsonDictionary.json(atKeyPath: "commandLineArguments") ?? [:]
environmentVariables = try XCScheme.EnvironmentVariable.parseAll(jsonDictionary: jsonDictionary)
@@ -97,6 +101,10 @@ extension TargetScheme: JSONEncodable {
if let stopOnEveryMainThreadCheckerIssue = stopOnEveryMainThreadCheckerIssue {
dict["stopOnEveryMainThreadCheckerIssue"] = stopOnEveryMainThreadCheckerIssue
}
if let parallelizeBuild = parallelizeBuild {
dict["parallelizeBuild"] = parallelizeBuild
}
if let buildImplicitDependencies = buildImplicitDependencies {
dict["buildImplicitDependencies"] = buildImplicitDependencies
@@ -314,6 +314,7 @@ extension Scheme {
name: name,
build: .init(
targets: Scheme.buildTargets(for: target, project: project),
parallelizeBuild: targetScheme.parallelizeBuild ?? Build.parallelizeBuildDefault,
buildImplicitDependencies: targetScheme.buildImplicitDependencies ?? Build.buildImplicitDependenciesDefault,
preActions: targetScheme.preActions,
postActions: targetScheme.postActions
@@ -3,8 +3,8 @@
LastUpgradeVersion = "1020"
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
buildImplicitDependencies = "YES">
parallelizeBuildables = "NO"
buildImplicitDependencies = "NO">
<BuildActionEntries>
<BuildActionEntry
buildForTesting = "YES"
@@ -3,8 +3,8 @@
LastUpgradeVersion = "1020"
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
buildImplicitDependencies = "YES">
parallelizeBuildables = "NO"
buildImplicitDependencies = "NO">
<BuildActionEntries>
<BuildActionEntry
buildForTesting = "YES"
@@ -3,8 +3,8 @@
LastUpgradeVersion = "1020"
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
buildImplicitDependencies = "YES">
parallelizeBuildables = "NO"
buildImplicitDependencies = "NO">
<BuildActionEntries>
<BuildActionEntry
buildForTesting = "YES"
+2
View File
@@ -114,6 +114,8 @@ targets:
testTargets:
- App_iOS_Tests
- App_iOS_UITests
parallelizeBuild: false
buildImplicitDependencies: false
gatherCoverageData: true
disableMainThreadChecker: true
stopOnEveryMainThreadCheckerIssue: true