mirror of
https://github.com/yonaskolb/XcodeGen.git
synced 2024-09-20 00:58:04 +03:00
Merge branch 'master' into support-local-sp-with-packages
This commit is contained in:
commit
18efe96637
@ -4,6 +4,7 @@
|
||||
|
||||
#### Added
|
||||
- Add support for local Swift Packages in `packages`. [#808](https://github.com/yonaskolb/XcodeGen/pull/808) @freddi-kit
|
||||
- Add buildImplicitDependencies as an option on TargetScheme. [#810](https://github.com/yonaskolb/XcodeGen/pull/810) @evandcoleman
|
||||
|
||||
#### Fixed
|
||||
- Fixed resolving path to local Swift Packages [#796](https://github.com/yonaskolb/XcodeGen/pull/796) @freddi-kit
|
||||
|
@ -597,6 +597,7 @@ This is a convenience used to automatically generate schemes for a target based
|
||||
- [ ] **gatherCoverageData**: **Bool** - a boolean that indicates if this scheme should gather coverage data. This defaults to false
|
||||
- [ ] **disableMainThreadChecker**: **Bool** - a boolean that indicates if this scheme should disable disable the Main Thread Checker. This defaults to false
|
||||
- [ ] **stopOnEveryMainThreadCheckerIssue**: **Bool** - a boolean that indicates if this scheme should stop at every Main Thread Checker issue. This defaults to false
|
||||
- [ ] **buildImplicitDependencies**: **Bool** - Flag to determine if Xcode should build implicit dependencies of this scheme. By default this is `true` if not set.
|
||||
- [ ] **language**: **String** - a String that indicates the language used for running and testing. This defaults to nil
|
||||
- [ ] **region**: **String** - a String that indicates the region used for running and testing. This defaults to nil
|
||||
- [ ] **commandLineArguments**: **[String:Bool]** - a dictionary from the argument name (`String`) to if it is enabled (`Bool`). These arguments will be added to the Test, Profile and Run scheme actions
|
||||
|
@ -6,6 +6,7 @@ public struct TargetScheme: Equatable {
|
||||
public static let gatherCoverageDataDefault = false
|
||||
public static let disableMainThreadCheckerDefault = false
|
||||
public static let stopOnEveryMainThreadCheckerIssueDefault = false
|
||||
public static let buildImplicitDependenciesDefault = true
|
||||
|
||||
public var testTargets: [Scheme.Test.TestTarget]
|
||||
public var configVariants: [String]
|
||||
@ -14,6 +15,7 @@ public struct TargetScheme: Equatable {
|
||||
public var region: String?
|
||||
public var disableMainThreadChecker: Bool
|
||||
public var stopOnEveryMainThreadCheckerIssue: Bool
|
||||
public var buildImplicitDependencies: Bool
|
||||
public var commandLineArguments: [String: Bool]
|
||||
public var environmentVariables: [XCScheme.EnvironmentVariable]
|
||||
public var preActions: [Scheme.ExecutionAction]
|
||||
@ -27,6 +29,7 @@ public struct TargetScheme: Equatable {
|
||||
region: String? = nil,
|
||||
disableMainThreadChecker: Bool = disableMainThreadCheckerDefault,
|
||||
stopOnEveryMainThreadCheckerIssue: Bool = stopOnEveryMainThreadCheckerIssueDefault,
|
||||
buildImplicitDependencies: Bool = buildImplicitDependenciesDefault,
|
||||
commandLineArguments: [String: Bool] = [:],
|
||||
environmentVariables: [XCScheme.EnvironmentVariable] = [],
|
||||
preActions: [Scheme.ExecutionAction] = [],
|
||||
@ -39,6 +42,7 @@ public struct TargetScheme: Equatable {
|
||||
self.region = region
|
||||
self.disableMainThreadChecker = disableMainThreadChecker
|
||||
self.stopOnEveryMainThreadCheckerIssue = stopOnEveryMainThreadCheckerIssue
|
||||
self.buildImplicitDependencies = buildImplicitDependencies
|
||||
self.commandLineArguments = commandLineArguments
|
||||
self.environmentVariables = environmentVariables
|
||||
self.preActions = preActions
|
||||
@ -68,6 +72,7 @@ extension TargetScheme: JSONObjectConvertible {
|
||||
region = jsonDictionary.json(atKeyPath: "region")
|
||||
disableMainThreadChecker = jsonDictionary.json(atKeyPath: "disableMainThreadChecker") ?? TargetScheme.disableMainThreadCheckerDefault
|
||||
stopOnEveryMainThreadCheckerIssue = jsonDictionary.json(atKeyPath: "stopOnEveryMainThreadCheckerIssue") ?? TargetScheme.stopOnEveryMainThreadCheckerIssueDefault
|
||||
buildImplicitDependencies = jsonDictionary.json(atKeyPath: "buildImplicitDependencies") ?? TargetScheme.buildImplicitDependenciesDefault
|
||||
commandLineArguments = jsonDictionary.json(atKeyPath: "commandLineArguments") ?? [:]
|
||||
environmentVariables = try XCScheme.EnvironmentVariable.parseAll(jsonDictionary: jsonDictionary)
|
||||
preActions = jsonDictionary.json(atKeyPath: "preActions") ?? []
|
||||
@ -98,6 +103,10 @@ extension TargetScheme: JSONEncodable {
|
||||
dict["stopOnEveryMainThreadCheckerIssue"] = stopOnEveryMainThreadCheckerIssue
|
||||
}
|
||||
|
||||
if buildImplicitDependencies != TargetScheme.buildImplicitDependenciesDefault {
|
||||
dict["buildImplicitDependencies"] = buildImplicitDependencies
|
||||
}
|
||||
|
||||
if let language = language {
|
||||
dict["language"] = language
|
||||
}
|
||||
|
@ -295,7 +295,10 @@ extension Scheme {
|
||||
public init(name: String, target: Target, targetScheme: TargetScheme, debugConfig: String, releaseConfig: String) {
|
||||
self.init(
|
||||
name: name,
|
||||
build: .init(targets: [Scheme.BuildTarget(target: TargetReference.local(target.name))]),
|
||||
build: .init(
|
||||
targets: [Scheme.BuildTarget(target: TargetReference.local(target.name))],
|
||||
buildImplicitDependencies: targetScheme.buildImplicitDependencies
|
||||
),
|
||||
run: .init(
|
||||
config: debugConfig,
|
||||
commandLineArguments: targetScheme.commandLineArguments,
|
||||
|
Loading…
Reference in New Issue
Block a user