mirror of
https://github.com/yonaskolb/XcodeGen.git
synced 2024-12-11 07:16:40 +03:00
Add changelog and docs.
This commit is contained in:
parent
7152d6aa9f
commit
ba34891aae
@ -2,6 +2,10 @@
|
||||
|
||||
## Next Version
|
||||
|
||||
#### Added
|
||||
|
||||
- Scheme Templates [#672](https://github.com/yonaskolb/XcodeGen/pull/672) @bclymer
|
||||
|
||||
#### Fixed
|
||||
- Fixed macOS unit test setting preset [#665](https://github.com/yonaskolb/XcodeGen/pull/665) @yonaskolb
|
||||
- Add `rcproject` files to sources build phase instead of resources [#669](https://github.com/yonaskolb/XcodeGen/pull/669) @Qusic
|
||||
|
@ -23,6 +23,7 @@
|
||||
- [Aggregate Target](#aggregate-target)
|
||||
- [Target Template](#target-template)
|
||||
- [Scheme](#scheme)
|
||||
- [Scheme Template](#scheme-template)
|
||||
- [Swift Package](#swift-package)
|
||||
|
||||
## General
|
||||
@ -781,6 +782,39 @@ schemes:
|
||||
revealArchiveInOrganizer: false
|
||||
```
|
||||
|
||||
### Scheme Template
|
||||
|
||||
This is a template that can be referenced from a normal scheme using the `templates` property. The properties of this template are the same as a [Scheme](#scheme). This functions identically in practice to [Target Template](#target-template).
|
||||
Any instances of `${scheme_name}` within each template will be replaced by the final scheme name which references the template.
|
||||
Any attributes defined within a targets `templateAttributes` will be used to replace any attribute references in the template using the syntax `${attribute_name}`.
|
||||
|
||||
```yaml
|
||||
schemes:
|
||||
MyModule:
|
||||
templates:
|
||||
- FeatureModuleScheme
|
||||
templateAttributes:
|
||||
testTargetName: MyModuleTests
|
||||
|
||||
schemeTemplates:
|
||||
FeatureModuleScheme:
|
||||
templates:
|
||||
- TestScheme
|
||||
build:
|
||||
targets:
|
||||
${scheme_name}: build
|
||||
|
||||
TestScheme:
|
||||
test:
|
||||
gatherCoverageData: true
|
||||
targets:
|
||||
- name: ${testTargetName}
|
||||
parallelizable: true
|
||||
randomExecutionOrder: true
|
||||
```
|
||||
|
||||
The result will be a scheme that builds `MyModule` when you request a build, and will test against `MyModuleTests` when you request to run tests. This is particularly useful when you work in a very modular application and each module has a similar structure.
|
||||
|
||||
## Swift Package
|
||||
Swift packages are defined at a project level, and then linked to individual targets via a [Dependency](#dependency).
|
||||
|
||||
@ -804,4 +838,4 @@ targets:
|
||||
App:
|
||||
dependencies:
|
||||
- package: Yams
|
||||
```
|
||||
```
|
||||
|
Loading…
Reference in New Issue
Block a user