XcodeGen/CHANGELOG.md

543 lines
34 KiB
Markdown
Raw Normal View History

2017-08-02 22:26:42 +03:00
# Change Log
2018-09-14 22:13:49 +03:00
## Master
2019-01-08 14:17:15 +03:00
#### Added
2019-01-20 09:58:16 +03:00
- Added ability to generate empty directories via `options.generateEmptyDirectories` [#480](https://github.com/yonaskolb/XcodeGen/pull/480) @Beniamiiin
- Added support for the `instrumentsPackage` product type [#482](https://github.com/yonaskolb/XcodeGen/pull/482) @ksulliva
2019-01-24 15:52:35 +03:00
- Added support for `inputFileLists` and `outputFileLists` within project build scripts [#500](https://github.com/yonaskolb/XcodeGen/pull/500) @lukewakeford
2019-01-27 15:41:09 +03:00
#### Changed
2019-01-28 03:58:35 +03:00
- **BREAKING**: All the paths within `include` files are now relative to that file and not the root spec. This can be disabled with a `relativePaths: false` on the include. See the [documentation](https://github.com/yonaskolb/XcodeGen/blob/master/Docs/ProjectSpec.md#include) for more details [#489](https://github.com/yonaskolb/XcodeGen/pull/489) @ellneal
- Updated the Xcode compatibility version from 3.2 to 9.3 [#497](https://github.com/yonaskolb/XcodeGen/pull/497) @yonaskolb
2019-01-27 15:41:09 +03:00
2019-01-09 05:24:43 +03:00
#### Fixed
- Fixed `--project` argument not taking effect [#487](https://github.com/yonaskolb/XcodeGen/pull/487) @monowerker
2019-01-20 09:58:16 +03:00
- Fixed Sticker Packs from generating an empty Source file phase which caused in error in the new build system [#492](https://github.com/yonaskolb/XcodeGen/pull/492) @rpassis
2019-01-22 07:49:08 +03:00
- Fixed generated schemes for tool targets not setting the executable [#496](https://github.com/yonaskolb/XcodeGen/pull/496) @yonaskolb
2019-01-02 11:25:06 +03:00
- Fixed resolving Carthage dependencies for iOS app with watchOS target. [465](https://github.com/yonaskolb/XcodeGen/pull/465) @raptorxcz
2019-01-09 05:24:43 +03:00
2018-12-18 14:39:00 +03:00
## 2.1.0
2018-11-03 15:07:14 +03:00
#### Added
2018-12-18 14:04:42 +03:00
- Added an experiment new caching feature. Pass `--use-cache` to opt in. This will read and write from a cache file to prevent unnecessarily generating the project. Give it a try as it may become the default in a future release [#412](https://github.com/yonaskolb/XcodeGen/pull/412) @yonaskolb
2018-11-03 15:07:14 +03:00
2018-12-18 10:53:28 +03:00
#### Changed
- Changed spelling of build phases to **preBuildPhase** and **postBuildPhase**. The older names are deprecated but still work [402](https://github.com/yonaskolb/XcodeGen/pull/402) @brentleyjones
- Moved generation to a specific subcommand `xcodegen generate`. Simple `xcodegen` will continue to work for now [#437](https://github.com/yonaskolb/XcodeGen/pull/437) @yonaskolb
2018-12-18 10:53:28 +03:00
- If `INFOPLIST_FILE` has been set on a target, then an `info` path won't ovewrite it [#443](https://github.com/yonaskolb/XcodeGen/pull/443) @feischl97
2018-09-14 22:13:49 +03:00
#### Fixed
2018-12-18 10:53:28 +03:00
- Fixed XPC Service package type in generated `Info.plist` [#435](https://github.com/yonaskolb/XcodeGen/pull/435) @alvarhansen
2018-09-14 22:13:49 +03:00
- Fixed phase ordering for modulemap and static libary header Copy File phases. [402](https://github.com/yonaskolb/XcodeGen/pull/402) @brentleyjones
2018-11-30 08:27:24 +03:00
- Fixed intermittent errors when running multiple `xcodegen`s concurrently [#450](https://github.com/yonaskolb/XcodeGen/pull/450) @bryansum
- Fixed `--project` argument not working [#437](https://github.com/yonaskolb/XcodeGen/pull/437) @yonaskolb
- Fixed unit tests not hooking up to host applications properly by default. They now generate a `TEST_HOST` and a `TestTargetID` [#452](https://github.com/yonaskolb/XcodeGen/pull/452) @yonaskolb
2018-12-18 10:53:28 +03:00
- Fixed static libraries not including external frameworks in their search paths [#454](https://github.com/yonaskolb/XcodeGen/pull/454) @brentleyjones
- Add `.intentdefinition` files to sources build phase instead of resources [#442](https://github.com/yonaskolb/XcodeGen/pull/442) @yonaskolb
- Add `mlmodel` files to sources build phase instead of resources [#457](https://github.com/yonaskolb/XcodeGen/pull/457) @dwb357
2018-12-18 14:39:00 +03:00
[Commits](https://github.com/yonaskolb/XcodeGen/compare/2.0.0...2.1.0)
2018-11-04 14:31:37 +03:00
## 2.0.0
2018-09-28 16:46:46 +03:00
#### Added
2018-10-18 15:06:33 +03:00
- Added `weak` linking setting for dependencies [#411](https://github.com/yonaskolb/XcodeGen/pull/411) @alvarhansen
2018-10-30 15:40:57 +03:00
- Added `info` to targets for generating an `Info.plist` [#415](https://github.com/yonaskolb/XcodeGen/pull/415) @yonaskolb
- Added `entitlements` to targets for generating an `.entitlement` file [#415](https://github.com/yonaskolb/XcodeGen/pull/415) @yonaskolb
2018-11-04 14:22:07 +03:00
- Added `sdk` dependency type for linking system frameworks and libs [#430](https://github.com/yonaskolb/XcodeGen/pull/430) @yonaskolb
2018-11-03 11:11:47 +03:00
- Added `parallelizable` and `randomExecutionOrder` to `Scheme` test targets in an expanded form [#434](https://github.com/yonaskolb/XcodeGen/pull/434) @yonaskolb
2018-11-02 11:06:07 +03:00
- Validate incorrect config setting definitions [#431](https://github.com/yonaskolb/XcodeGen/pull/431) @yonaskolb
2018-11-02 11:44:16 +03:00
- Automatically set project `SDKROOT` if there is only a single platform within the project [#433](https://github.com/yonaskolb/XcodeGen/pull/433) @yonaskolb
2018-09-28 16:46:46 +03:00
2018-10-14 14:08:53 +03:00
#### Changed
2018-10-18 15:06:33 +03:00
- Performance improvements for large projects [#388](https://github.com/yonaskolb/XcodeGen/pull/388) [#417](https://github.com/yonaskolb/XcodeGen/pull/417) [#416](https://github.com/yonaskolb/XcodeGen/pull/416) @yonaskolb @kastiglione
- Upgraded to xcodeproj 6 [#388](https://github.com/yonaskolb/XcodeGen/pull/388) @yonaskolb
- Upgraded to Swift 4.2 [#388](https://github.com/yonaskolb/XcodeGen/pull/388) @yonaskolb
- Remove iOS codesigning sdk restriction in setting preset [#414](https://github.com/yonaskolb/XcodeGen/pull/414) @yonaskolb
2018-10-18 15:32:44 +03:00
- Changed default project version to Xcode 10.0 and default Swift version to 4.2 [#423](https://github.com/yonaskolb/XcodeGen/pull/423) @yonaskolb
2018-11-02 11:17:59 +03:00
- Added ability to not link Carthage frameworks [#432](https://github.com/yonaskolb/XcodeGen/pull/432) @yonaskolb
2018-10-14 14:42:51 +03:00
#### Fixed
2018-10-18 15:06:33 +03:00
- Fixed code signing issues [#414](https://github.com/yonaskolb/XcodeGen/pull/414) @yonaskolb
- Fixed `TargetSource.headerVisibility` not being set in initializer [#419](https://github.com/yonaskolb/XcodeGen/pull/419) @jerrymarino
2018-11-02 11:06:07 +03:00
- Fixed crash when using Xcode Legacy targets as dependencies [#427](https://github.com/yonaskolb/XcodeGen/pull/427) @dflems
2018-09-28 16:46:46 +03:00
2018-11-04 14:31:37 +03:00
[Commits](https://github.com/yonaskolb/XcodeGen/compare/1.11.2...2.0.0)
2018-09-19 13:45:28 +03:00
## 1.11.2
If XcodeGen is compiled with Swift 4.2, then UUID's in the generated project will not be deterministic. This will be fixed in an upcoming release with an update to xcodeproj 6.0
2017-09-25 11:53:04 +03:00
2018-09-01 11:59:10 +03:00
#### Fixed
2018-10-18 15:06:33 +03:00
- Fixed release builds in Swift 4.2 [#404](https://github.com/yonaskolb/XcodeGen/pull/404) @pepibumur
- Fixed default settings for macOS unit-tests [#387](https://github.com/yonaskolb/XcodeGen/pull/387) @frankdilo
- Fixed Copy Headers phase ordering for Xcode 10 [#401](https://github.com/yonaskolb/XcodeGen/pull/401) @brentleyjones
- Fixed generated schemes on aggregate targets [#394](https://github.com/yonaskolb/XcodeGen/pull/394) @vgorloff
2018-09-01 11:59:10 +03:00
#### Changed
2018-10-18 15:06:33 +03:00
- Added `en` as default value for knownRegions [#390](https://github.com/yonaskolb/XcodeGen/pull/390) @Saik0s
2018-09-19 13:45:28 +03:00
- Update `PathKit`, `Spectre`, `Yams` and `xcodeproj` dependencies
[Commits](https://github.com/yonaskolb/XcodeGen/compare/1.11.1...1.11.2)
2018-08-23 20:38:34 +03:00
2018-08-22 17:28:31 +03:00
## 1.11.1
2018-08-20 17:17:12 +03:00
#### Fixed
2018-10-18 15:06:33 +03:00
- Fixed `FRAMEWORK_SEARCH_PATHS` for `framework` dependency paths with spaces [#382](https://github.com/yonaskolb/XcodeGen/pull/382) @brentleyjones
- Fixed aggregate targets not being found with `transitivelyLinkDependencies` [#383](https://github.com/yonaskolb/XcodeGen/pull/383) @brentleyjones
2018-08-20 17:17:12 +03:00
2018-08-22 17:28:31 +03:00
[Commits](https://github.com/yonaskolb/XcodeGen/compare/1.11.0...1.11.1)
2018-08-19 07:24:07 +03:00
## 1.11.0
#### Added
2018-10-18 15:06:33 +03:00
- Added `showEnvVars` to build scripts to disable printing the environment [#351](https://github.com/yonaskolb/XcodeGen/pull/351) @keith
- Added `requiresObjCLinking` to `target` [#354](https://github.com/yonaskolb/XcodeGen/pull/354) @brentleyjones
- Added `targetTemplates` [#355](https://github.com/yonaskolb/XcodeGen/pull/355) @yonaskolb
- Added `aggregateTargets` [#353](https://github.com/yonaskolb/XcodeGen/pull/353) [#381](https://github.com/yonaskolb/XcodeGen/pull/381) @yonaskolb
- Added `options.groupSortPosition` [#356](https://github.com/yonaskolb/XcodeGen/pull/356) @yonaskolb
- Added ability to specify `copyFiles` build phase for sources [#345](https://github.com/yonaskolb/XcodeGen/pull/345) @brentleyjones
- Added ability to specify a `minimumXcodeGenVersion` [#349](https://github.com/yonaskolb/XcodeGen/pull/349) @brentleyjones
- Added `customArchiveName` and `revealArchiveInOrganizer` to `archive` [#367](https://github.com/yonaskolb/XcodeGen/pull/367) @sxua
2018-07-23 15:56:11 +03:00
#### Fixed
2018-10-18 15:06:33 +03:00
- Sort files using localizedStandardCompare [#341](https://github.com/yonaskolb/XcodeGen/pull/341) @rohitpal440
- Use the latest `xcdatamodel` when sorted by version [#341](https://github.com/yonaskolb/XcodeGen/pull/341) @rohitpal440
- Fixed compiler flags being set on non source files in mixed build phase target sources [#347](https://github.com/yonaskolb/XcodeGen/pull/347) @brentleyjones
- Fixed `options.xcodeVersion` not being parsed [#348](https://github.com/yonaskolb/XcodeGen/pull/348) @brentleyjones
- Fixed non-application targets using `carthage copy-frameworks` [#361](https://github.com/yonaskolb/XcodeGen/pull/361) @brentleyjones
- Set `xcdatamodel` based on `xccurrentversion` if available [#364](https://github.com/yonaskolb/XcodeGen/pull/364) @rpassis
- XPC Services are now correctly copied [#368](https://github.com/yonaskolb/XcodeGen/pull/368) @brentley
- Fixed `.metal` files being added to resources [#380](https://github.com/yonaskolb/XcodeGen/pull/380) @vgorloff
2018-07-23 15:56:11 +03:00
2018-07-23 17:33:34 +03:00
#### Changed
2018-10-18 15:06:33 +03:00
- Improved linking for `static.library` targets [#352](https://github.com/yonaskolb/XcodeGen/pull/352) @brentleyjones
- Changed default group sorting to be after files [#356](https://github.com/yonaskolb/XcodeGen/pull/356) @yonaskolb
- Moved `Frameworks` and `Products` top level groups to bottom [#356](https://github.com/yonaskolb/XcodeGen/pull/356) @yonaskolb
- `modulemap` files are automatically copied to the products directory for static library targets [#346](https://github.com/yonaskolb/XcodeGen/pull/346) @brentleyjones
- Public header files are automatically copied to the products directory for static library targets [#365](https://github.com/yonaskolb/XcodeGen/pull/365) @brentleyjones
- Swift Objective-C Interface Header files are automatically copied to the products directory for static library targets [#366](https://github.com/yonaskolb/XcodeGen/pull/366) @brentleyjones
- `FRAMEWORK_SEARCH_PATHS` are adjusted for `framework` dependencies [#373](https://github.com/yonaskolb/XcodeGen/pull/373) @brentley
- `library.static` targets have `SKIP_INSTALL` set to `YES` [#358](https://github.com/yonaskolb/XcodeGen/pull/358) @brentley
- Copy files phases have descriptive names [#360](https://github.com/yonaskolb/XcodeGen/pull/360) @brentley
2018-07-23 17:33:34 +03:00
2018-07-23 15:56:11 +03:00
#### Internal
- Moved brew formula to homebrew core
2018-08-17 11:09:34 +03:00
- Added `CONTRIBUTING.md`
2018-07-23 15:56:11 +03:00
2018-08-19 07:24:07 +03:00
[Commits](https://github.com/yonaskolb/XcodeGen/compare/1.10.3...1.11.0)
2018-07-11 13:21:28 +03:00
## 1.10.3
#### Fixed
2018-10-18 15:06:33 +03:00
- Fixed Mint installations finding `SettingPresets` [#338](https://github.com/yonaskolb/XcodeGen/pull/338) @yonaskolb
2018-07-11 13:21:28 +03:00
[Commits](https://github.com/yonaskolb/XcodeGen/compare/1.10.2...1.10.3)
2018-07-05 17:08:02 +03:00
## 1.10.2
#### Changed
- Set `transitivelyLinkDependencies` to false by default
[Commits](https://github.com/yonaskolb/XcodeGen/compare/1.10.1...1.10.2)
2018-07-04 05:23:55 +03:00
## 1.10.1
#### Fixed
2018-10-18 15:06:33 +03:00
- Fixed `transitivelyLinkDependencies` typo [#332](https://github.com/yonaskolb/XcodeGen/pull/332) @brentleyjones
- Fixed framework target dependencies not being code signed by default [#332](https://github.com/yonaskolb/XcodeGen/pull/332) @yonaskolb
2018-07-04 05:23:55 +03:00
2018-07-04 05:37:47 +03:00
#### Changed
2018-10-18 15:06:33 +03:00
- Code sign all dependencies by default except target executables [#332](https://github.com/yonaskolb/XcodeGen/pull/332) @yonaskolb
2018-07-04 05:23:55 +03:00
[Commits](https://github.com/yonaskolb/XcodeGen/compare/1.10.0...1.10.1)
2018-06-03 12:16:13 +03:00
## 1.10.0
#### Added
2018-10-18 15:06:33 +03:00
- Added build rule support [#306](https://github.com/yonaskolb/XcodeGen/pull/306) @yonaskolb
- Added support for frameworks in sources [#308](https://github.com/yonaskolb/XcodeGen/pull/308) @keith
- Added ability to automatically embed transient dependencies. Controlled with `transitivelyLinkDependencies` [#327](https://github.com/yonaskolb/XcodeGen/pull/327) @brentleyjones
2018-06-03 12:16:13 +03:00
#### Changed
- Upgraded to Swift 4.1
2018-10-18 15:06:33 +03:00
- Improved Carthage dependency lookup performance with many targets [#298](https://github.com/yonaskolb/XcodeGen/pull/298) @keith
- By default don't CodeSignOnCopy `target` dependencies. This can still be controlled with `Dependency.codeSign` [#324](https://github.com/yonaskolb/XcodeGen/pull/324) @yonaskolb
2018-06-03 12:16:13 +03:00
#### Fixed
2018-10-18 15:06:33 +03:00
- Fixed PBXBuildFile and PBXFileReference being incorrectly generated for Legacy targets [#296](https://github.com/yonaskolb/XcodeGen/pull/296) @sascha
- Fixed required sources build phase not being generated if there are no sources [#307](https://github.com/yonaskolb/XcodeGen/pull/307) @yonaskolb
- Fixed install script in binary release [#303](https://github.com/yonaskolb/XcodeGen/pull/303) @alvarhansen
- Removed `ENABLE_TESTABILITY` from framework setting presets [#299](https://github.com/yonaskolb/XcodeGen/pull/299) @allu22
- Fixed homebrew installation [#297](https://github.com/yonaskolb/XcodeGen/pull/297) @vhbit
- `cc` files are now automatically recognized as source files [#317](https://github.com/yonaskolb/XcodeGen/pull/317) @maicki
- Fixed `commandLineArguments` not parsing when they had dots in them [#323](https://github.com/yonaskolb/XcodeGen/pull/323) @yonaskolb
- Fixed excluding directories that only have sub directories [#326](https://github.com/yonaskolb/XcodeGen/pull/326) @brentleyjones
2018-07-02 02:18:38 +03:00
- Made `PBXContainerItemProxy` ID more deterministic
2018-10-18 15:06:33 +03:00
- Fixed generated framework schemes from being executable [#328](https://github.com/yonaskolb/XcodeGen/pull/328) @brentleyjones
2018-06-03 12:16:13 +03:00
[Commits](https://github.com/yonaskolb/XcodeGen/compare/1.9.0...1.10.0)
2018-04-12 16:32:40 +03:00
## 1.9.0
2018-04-10 13:01:09 +03:00
#### Added
2018-10-18 15:06:33 +03:00
- Scheme pre and post actions can now be added to `target.scheme` [#280](https://github.com/yonaskolb/XcodeGen/pull/280) @yonaskolb
- Individual files can now be added to `fileGroups` [#293](https://github.com/yonaskolb/XcodeGen/pull/293) @yonaskolb
2018-04-10 13:01:09 +03:00
#### Changed
- Updated to `xcproj` 4.3.0 for Xcode 9.3 updates
2018-10-18 15:06:33 +03:00
- Update default Xcode version to 9.3 including new settings [#284](https://github.com/yonaskolb/XcodeGen/pull/284) @LinusU
- **Breaking for ProjectSpec library users** Changed `ProjectSpec` to `Project` and `ProjectSpec.Options` to `SpecOptions` [#281](https://github.com/yonaskolb/XcodeGen/pull/281) @jerrymarino
2018-04-10 13:01:09 +03:00
#### Fixed
2018-10-18 15:06:33 +03:00
- Fixed manual build phase of `none` not being applied to folders [#288](https://github.com/yonaskolb/XcodeGen/pull/288) @yonaskolb
- Quoted values now correctly get parsed as strings [#282](https://github.com/yonaskolb/XcodeGen/pull/282) @yonaskolb
- Fixed adding a root source folder when `createIntermediateGroups` is on [#291](https://github.com/yonaskolb/XcodeGen/pull/291) @yonaskolb
- Fixed Homebrew installations issues on some machines [#289](https://github.com/yonaskolb/XcodeGen/pull/289) @vhbit
- Fixed files that are added as root sources from having invalid parent groups outside the project directory [#293](https://github.com/yonaskolb/XcodeGen/pull/293) @yonaskolb
2018-04-12 16:32:40 +03:00
2018-04-12 16:34:31 +03:00
[Commits](https://github.com/yonaskolb/XcodeGen/compare/1.8.0...1.9.0)
2018-04-10 13:01:09 +03:00
2018-03-27 08:52:05 +03:00
## 1.8.0
2018-03-27 06:55:09 +03:00
#### Added
2018-10-18 15:06:33 +03:00
- Added Project `defaultConfig` [#269](https://github.com/yonaskolb/XcodeGen/pull/269) @keith
- Added Target `attributes` [#276](https://github.com/yonaskolb/XcodeGen/pull/276) @yonaskolb
- Automatically set `DevelopmentTeam` and `ProvisioningStyle` within `TargetAttributes` if relevant build settings are defined [#277](https://github.com/yonaskolb/XcodeGen/pull/277) @yonaskolb
2018-03-27 06:55:09 +03:00
#### Fixed
2018-10-18 15:06:33 +03:00
- Fixed default `LD_RUNPATH_SEARCH_PATHS` for app extensions [#272](https://github.com/yonaskolb/XcodeGen/pull/272) @LinusU
2018-03-27 06:55:09 +03:00
#### Internal
2018-10-18 15:06:33 +03:00
- Make `LegacyTarget` init public [#264](https://github.com/yonaskolb/XcodeGen/pull/264) @jerrymarino
2018-03-27 06:55:09 +03:00
- Upgrade to *xcproj* to 4.2.0, *Yams* to 0.6.0 and *PathKit* to 0.9.1 @yonaskolb
2018-04-10 13:01:09 +03:00
[Commits](https://github.com/yonaskolb/XcodeGen/compare/1.7.0...1.8.0)
2018-03-03 02:14:55 +03:00
## 1.7.0
2018-02-25 00:06:41 +03:00
#### Added
2018-10-18 15:06:33 +03:00
- Added support for scheme environment variables [#239](https://github.com/yonaskolb/XcodeGen/pull/239) [#254](https://github.com/yonaskolb/XcodeGen/pull/254) [#259](https://github.com/yonaskolb/XcodeGen/pull/259) @turekj @toshi0383
- Added `carthageExecutablePath` option [#244](https://github.com/yonaskolb/XcodeGen/pull/244) @akkyie
- Added `parallelizeBuild` and `buildImplicitDependencies` to Schemes [#241](https://github.com/yonaskolb/XcodeGen/pull/241) @rahul-malik
2018-03-03 02:14:55 +03:00
@yonaskolb
2018-10-18 15:06:33 +03:00
- Added support for Core Data `xcdatamodeld` files [#249](https://github.com/yonaskolb/XcodeGen/pull/249) @yonaskolb
- Projects are now generated atomically by writing to a temporary directory first [#250](https://github.com/yonaskolb/XcodeGen/pull/250) @yonaskolb
- Added script for adding precompiled binary to releases [#246](https://github.com/yonaskolb/XcodeGen/pull/246) @toshi0383
- Added optional `headerVisibilty` to target source. This still defaults to public [#252](https://github.com/yonaskolb/XcodeGen/pull/252) @yonaskolb
2018-03-03 02:19:55 +03:00
- Releases now include a pre-compiled binary and setting presets, including an install script
2018-02-26 05:03:01 +03:00
#### Fixed
2018-10-18 15:06:33 +03:00
- Fixed Mint installation from reading setting presets [#248](https://github.com/yonaskolb/XcodeGen/pull/248) @yonaskolb
- Fixed setting `buildPhase` on a `folder` source. This allows for a folder of header files [#254](https://github.com/yonaskolb/XcodeGen/pull/254) @toshi0383
- Carthage dependencies are not automatically embedded into test targets [#256](https://github.com/yonaskolb/XcodeGen/pull/256) @yonaskolb
- Carthage dependencies now respect the `embed` property [#256](https://github.com/yonaskolb/XcodeGen/pull/256) @yonaskolb
- iMessage extensions now have proper setting presets in regards to app icon and runtime search paths [#255](https://github.com/yonaskolb/XcodeGen/pull/255) @yonaskolb
- Excluded files are not added within .lproj directories [#238](https://github.com/yonaskolb/XcodeGen/pull/238) @toshi0383
2018-03-03 02:14:55 +03:00
[Commits](https://github.com/yonaskolb/XcodeGen/compare/1.6.0...1.7.0)
2018-02-25 00:06:41 +03:00
2018-01-30 09:47:21 +03:00
## 1.6.0
#### Added
2018-10-18 15:06:33 +03:00
- Added scheme pre-actions and post-actions [#231](https://github.com/yonaskolb/XcodeGen/pull/231) @kastiglione
- Added `options.disabledValidations` including `missingConfigs` to disable project validation errors [#220](https://github.com/yonaskolb/XcodeGen/pull/220) @keith
- Generate UI Test Target Attributes [#221](https://github.com/yonaskolb/XcodeGen/pull/221) @anreitersimon
2018-01-19 15:47:20 +03:00
#### Fixed
2018-10-18 15:06:33 +03:00
- Filter out duplicate source files [#217](https://github.com/yonaskolb/XcodeGen/pull/217) @allu22
- Fixed how `lastKnownFileType` and `explicitFileType` were generated across platforms [#115](https://github.com/yonaskolb/XcodeGen/pull/115) @toshi0383
2018-01-30 05:19:33 +03:00
- Removed a few cases of project diffs when opening the project in Xcode @yonaskolb
- Fixed Swift not being embedded by default in watch apps @yonaskolb
2018-01-19 15:47:20 +03:00
#### Changed
2018-10-18 15:06:33 +03:00
- Change arrays to strings in setting presets [#218](https://github.com/yonaskolb/XcodeGen/pull/218) @allu22
- Updated to xcproj 4.0 [#227](https://github.com/yonaskolb/XcodeGen/pull/227)
2018-01-30 09:47:21 +03:00
[Commits](https://github.com/yonaskolb/XcodeGen/compare/1.5.0...1.6.0)
2017-12-27 12:54:14 +03:00
## 1.5.0
#### Added
2018-10-18 15:06:33 +03:00
- added support for `gatherCoverageData` flag in target schemes [#170](https://github.com/yonaskolb/XcodeGen/pull/170) @alexruperez
- added support for `commandLineOptions` in target schemes [#172](https://github.com/yonaskolb/XcodeGen/pull/172) @rahul-malik
- added Project spec as a SwiftPM library for reuse in other projects [#164](https://github.com/yonaskolb/XcodeGen/pull/164) @soffes
- added `implicit` option for framework dependencies [#166](https://github.com/yonaskolb/XcodeGen/pull/166) @sbarow
- added `--quite` option to CLI [#167](https://github.com/yonaskolb/XcodeGen/pull/167) @soffes
- can now print version with `-v` in addition to `--version` [#174](https://github.com/yonaskolb/XcodeGen/pull/174) @kastiglione
- added support for legacy targets [#175](https://github.com/yonaskolb/XcodeGen/pull/175) @bkase
- added support for indentation options [#190](https://github.com/yonaskolb/XcodeGen/pull/190) @bkase
- added source excludes [#135](https://github.com/yonaskolb/XcodeGen/pull/135) [#161](https://github.com/yonaskolb/XcodeGen/pull/161) [#190](https://github.com/yonaskolb/XcodeGen/pull/190) @peymankh @
- added `options.xcodeVersion` [#197](https://github.com/yonaskolb/XcodeGen/pull/197) @yonaskolb @peymankh
- add test targets to Scheme [#195](https://github.com/yonaskolb/XcodeGen/pull/195) @vhbit
- add option to make a source file optional incase it will be generated later [#200](https://github.com/yonaskolb/XcodeGen/pull/200) @vhbit
- finalize Scheme spec [#201](https://github.com/yonaskolb/XcodeGen/pull/201) @yonaskolb
- added `buildPhase` setting to target source for overriding the guessed build phase of files [#206](https://github.com/yonaskolb/XcodeGen/pull/206) @yonaskolb
- added `deploymentTarget` setting to project and target [#205](https://github.com/yonaskolb/XcodeGen/pull/205) @yonaskolb
2017-12-19 11:07:37 +03:00
#### Changed
- huge performance improvements when writing the project file due to changes in xcproj
- updated dependencies
- minor logging changes
2017-12-26 20:00:06 +03:00
- updated Project Spec documentation
2018-10-18 15:06:33 +03:00
- scan for `Info.plist` lazely [#194](https://github.com/yonaskolb/XcodeGen/pull/194) @kastiglione
- change setting presets so that icon settings only get applied to application targets [#204](https://github.com/yonaskolb/XcodeGen/pull/204) @yonaskolb
- changed scheme build targets format [#203](https://github.com/yonaskolb/XcodeGen/pull/203) @yonaskolb
- when specifying a `--spec` argument, the default for the `--project` path is now the directory containing the spec [#211](https://github.com/yonaskolb/XcodeGen/pull/211) @yonaskolb
2017-12-19 11:07:37 +03:00
#### Fixed
2018-10-18 15:06:33 +03:00
- fixed shell scripts escaping quotes twice [#186](https://github.com/yonaskolb/XcodeGen/pull/186) @allu22
- fixed `createIntermediateGroups` when using a relative spec path [#184](https://github.com/yonaskolb/XcodeGen/pull/184) @kastiglione
- fixed command line arguments for test and profile from being overridden [#199](https://github.com/yonaskolb/XcodeGen/pull/199) @vhbit
2017-12-26 20:00:06 +03:00
- fixed files deep within a hierarchy having the path for a name
2018-10-18 15:06:33 +03:00
- fixed source files from being duplicated if referenced with different casing [#212](https://github.com/yonaskolb/XcodeGen/pull/212) @yonaskolb
- fixed target product name not being written. Fixes integration with R.swift [#213](https://github.com/yonaskolb/XcodeGen/pull/213) @yonaskolb
2017-12-27 12:54:14 +03:00
[Commits](https://github.com/yonaskolb/XcodeGen/compare/1.4.0...1.5.0)
2017-11-15 15:56:55 +03:00
## 1.4.0
2017-11-12 23:57:27 +03:00
#### Added
2018-10-18 15:06:33 +03:00
- added `--version` flag [#112](https://github.com/yonaskolb/XcodeGen/pull/112) @mironal
- added support for adding individual file sources [#106](https://github.com/yonaskolb/XcodeGen/pull/106) [#133](https://github.com/yonaskolb/XcodeGen/pull/133) [#142](https://github.com/yonaskolb/XcodeGen/pull/142) [#139](https://github.com/yonaskolb/XcodeGen/pull/139) @bkase
- added source compiler flag support [#121](https://github.com/yonaskolb/XcodeGen/pull/121) @bkase
- added `ProjectSpec.options.createIntermediateGroups` [#108](https://github.com/yonaskolb/XcodeGen/pull/108) @bkase
- added better json loading support [#127](https://github.com/yonaskolb/XcodeGen/pull/127) @rahul-malik
- added source `name` for customizing names of source directories and file [#146](https://github.com/yonaskolb/XcodeGen/pull/146) @yonaskolb
- added folder reference source support via a new `type` property [#151](https://github.com/yonaskolb/XcodeGen/pull/151) @yonaskolb
- added `ProjectSpec.options.developmentLanguage` [#155](https://github.com/yonaskolb/XcodeGen/pull/155) @yonaskolb
2017-11-12 23:57:27 +03:00
#### Changed
2018-10-18 15:06:33 +03:00
- updated to xcproj 1.2.0 [#113](https://github.com/yonaskolb/XcodeGen/pull/113) @yonaskolb
- build settings from presets will be removed if they are provided in `xcconfig` files [#77](https://github.com/yonaskolb/XcodeGen/pull/77) @toshi0383
- all files and groups are sorted by type and then alphabetically [#144](https://github.com/yonaskolb/XcodeGen/pull/144) @yonaskolb
- target sources can now have an expanded form [#119](https://github.com/yonaskolb/XcodeGen/pull/119) @yonaskolb
- empty build phases are now not generated [#149](https://github.com/yonaskolb/XcodeGen/pull/149) @yonaskolb
- make UUIDs more deterministic [#154](https://github.com/yonaskolb/XcodeGen/pull/154) @yonaskolb
2017-11-12 23:57:27 +03:00
2017-11-15 15:56:55 +03:00
#### Fixed
2018-10-18 15:06:33 +03:00
- only add headers to frameworks and libraries [#118](https://github.com/yonaskolb/XcodeGen/pull/118) @ryohey
- fixed localized files with the same name [#126](https://github.com/yonaskolb/XcodeGen/pull/126) @ryohey
- fix intermediate sources [#144](https://github.com/yonaskolb/XcodeGen/pull/144) @yonaskolb
- fix cyclical target dependencies not working [#147](https://github.com/yonaskolb/XcodeGen/pull/147) @yonaskolb
- fix directory bundles not being added properly when referenced directly [#148](https://github.com/yonaskolb/XcodeGen/pull/1478) @yonaskolb
- made `mm`, `c` and `S` file be parsed as source files [#120](https://github.com/yonaskolb/XcodeGen/pull/120) [#125](https://github.com/yonaskolb/XcodeGen/pull/125) [#138](https://github.com/yonaskolb/XcodeGen/pull/138) @bkase @enmiller
- fix the generation of localized variant groups if there is no `Base.lproj` [#157](https://github.com/yonaskolb/XcodeGen/pull/157) @ryohey
- all localizations found are added to a projects known regions [#157](https://github.com/yonaskolb/XcodeGen/pull/157) @ryohey
2017-11-12 23:57:27 +03:00
#### Internal
- refactoring
- more tests
- added release scripts
2017-11-15 15:56:55 +03:00
[Commits](https://github.com/yonaskolb/XcodeGen/compare/1.3.0...1.4.0)
2017-10-27 01:31:14 +03:00
## 1.3.0
2017-10-30 16:18:26 +03:00
#### Added
2018-10-18 15:06:33 +03:00
- generate output files for Carthage copy-frameworks script [#84](https://github.com/yonaskolb/XcodeGen/pull/84) @mironal
- added options.settingPreset to choose which setting presets get applied [#100](https://github.com/yonaskolb/XcodeGen/pull/101) @yonaskolb
- added `link` option for target dependencies [#109](https://github.com/yonaskolb/XcodeGen/pull/109) @keith
2017-10-20 15:09:31 +03:00
2017-10-30 16:18:26 +03:00
#### Changed
2018-10-18 15:06:33 +03:00
- updated to xcproj 0.4.1 [#85](https://github.com/yonaskolb/XcodeGen/pull/85) @enmiller
- don't copy base settings if config type has been left out [#100](https://github.com/yonaskolb/XcodeGen/pull/100) @yonaskolb
- generate localised files under a single variant group [#70](https://github.com/yonaskolb/XcodeGen/pull/70) @ryohey
- don't apply common project settings to configs with no type [#100](https://github.com/yonaskolb/XcodeGen/pull/100) @yonaskolb
- config references in settings can now be partially matched and are case insensitive [#111](https://github.com/yonaskolb/XcodeGen/pull/111) @yonaskolb
2017-10-27 01:31:14 +03:00
- other small internal changes @yonaskolb
2017-10-20 15:09:31 +03:00
2017-10-30 16:18:26 +03:00
#### Fixed
2018-10-18 15:06:33 +03:00
- embed Carthage frameworks for macOS [#82](https://github.com/yonaskolb/XcodeGen/pull/82) @toshi0383
- fixed copying of watchOS app resources [#96](https://github.com/yonaskolb/XcodeGen/pull/96) @keith
- automatically ignore more file types for a target's sources (entitlements, gpx, apns) [#94](https://github.com/yonaskolb/XcodeGen/pull/94) @keith
- change make build to a PHONY task [#98](https://github.com/yonaskolb/XcodeGen/pull/98) @keith
- allow copying of resource files from dependant targets [#95](https://github.com/yonaskolb/XcodeGen/pull/95) @keith
- fixed library linking [#93](https://github.com/yonaskolb/XcodeGen/pull/93) @keith
- fixed duplicate carthage file references [#107](https://github.com/yonaskolb/XcodeGen/pull/107) @yonaskolb
2017-10-27 01:35:29 +03:00
- an error is now shown if you try and generate a target scheme and don't have debug and release builds @yonaskolb
2017-10-20 15:09:31 +03:00
2017-10-27 01:31:14 +03:00
[Commits](https://github.com/yonaskolb/XcodeGen/compare/1.2.4...1.3.0)
2017-10-20 15:09:31 +03:00
2017-10-02 02:45:50 +03:00
## 1.2.4
2017-10-30 16:18:26 +03:00
#### Fixed
2017-10-02 02:45:50 +03:00
- setting presets only apply `ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES: YES` to applications
- don't add carthage dependency to `copy-frameworks` script if `embed: false`
- sort group children on APFS
2017-10-30 16:18:26 +03:00
#### Changed
2017-10-02 02:45:50 +03:00
- update to xcproj 0.3.0
[Commits](https://github.com/yonaskolb/XcodeGen/compare/1.2.3...1.2.4)
2017-09-29 18:54:31 +03:00
## 1.2.3
2017-10-30 16:18:26 +03:00
#### Fixed
2018-10-18 15:06:33 +03:00
- Fixed wrong carthage directory name reference for macOS [#74](https://github.com/yonaskolb/XcodeGen/pull/74) @toshi0383
- Removed unnecessary `carthage copy-frameworks` for macOS app target [#76](https://github.com/yonaskolb/XcodeGen/pull/76) @toshi0383
2017-09-29 18:54:31 +03:00
- Added some missing default settings for framework targets. `SKIP_INSTALL: YES` fixes archiving
- Filter out nulls from setting presets if specifying an empty string
2017-09-29 18:54:31 +03:00
[Commits](https://github.com/yonaskolb/XcodeGen/compare/1.2.2...1.2.3)
2017-09-28 22:42:28 +03:00
## 1.2.2
2017-09-28 22:30:47 +03:00
2017-10-30 16:18:26 +03:00
#### Added
2017-09-28 22:30:47 +03:00
- automatically set `TEST_TARGET_NAME` on UI test targets if one of the dependencies is an application target
2017-10-30 16:18:26 +03:00
#### Fixed
2017-09-28 22:30:47 +03:00
- set `DYLIB_INSTALL_NAME_BASE` to `@rpath` in framework target presets
2017-09-28 22:42:28 +03:00
- fixed tvOS launch screen setting. `ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME` is now `LaunchImage` not `tvOS LaunchImage`
2017-09-28 22:30:47 +03:00
2017-09-28 22:42:28 +03:00
[Commits](https://github.com/yonaskolb/XcodeGen/compare/1.2.0...1.2.2)
2017-09-28 22:30:47 +03:00
2017-09-26 22:56:47 +03:00
## 1.2.0
2017-10-30 16:18:26 +03:00
#### Added
2017-09-25 11:53:04 +03:00
- `include` now supports a single string as well as a list
2018-10-18 15:06:33 +03:00
- add support setting xcconfig files on a project with `configFiles` [#64](https://github.com/yonaskolb/XcodeGen/pull/64)
- add `fileGroups` to project spec for adding groups of files that aren't target source files [#64](https://github.com/yonaskolb/XcodeGen/pull/64)
2017-09-26 22:56:47 +03:00
- better output (more info, emoji, colors)
2018-10-18 15:06:33 +03:00
- add `options.bundleIdPrefix` for autogenerating `PRODUCT_BUNDLE_IDENTIFIER` [#67](https://github.com/yonaskolb/XcodeGen/pull/67)
- add `:REPLACE` syntax when merging `include` [#68](https://github.com/yonaskolb/XcodeGen/pull/68)
2017-09-26 22:56:47 +03:00
- add `mint` installation support
2017-09-25 11:53:04 +03:00
2017-10-30 16:18:26 +03:00
#### Fixed
2017-09-26 22:56:47 +03:00
- fixed homebrew installation
2018-10-18 15:06:33 +03:00
- fixed target xcconfig files not working via `configFiles` [#64](https://github.com/yonaskolb/XcodeGen/pull/64)
- look for `INFOPLIST_FILE` setting in project and xcconfig files before adding it automatically. It was just looking in target settings before [#64](https://github.com/yonaskolb/XcodeGen/pull/64)
2017-09-26 22:56:47 +03:00
- exit with error on failure
[Commits](https://github.com/yonaskolb/XcodeGen/compare/1.1.0...1.2.0)
2017-09-25 11:53:04 +03:00
2017-09-20 17:14:15 +03:00
## 1.1.0
2017-10-30 16:18:26 +03:00
#### Changed
2017-09-20 17:14:15 +03:00
- set project version to Xcode 9 - `LastUpgradeVersion` attribute to `0900`
- set default Swift version to 4.0 - `SWIFT_VERSION` build setting to `4.0`
[Commits](https://github.com/yonaskolb/XcodeGen/compare/1.0.1...1.1.0)
2017-10-30 16:18:26 +03:00
### 1.0.1
2017-09-19 13:36:03 +03:00
### Fixed
- fixed incorrect default build script shell path
2017-09-26 22:56:47 +03:00
- fixed install scripts
2017-09-19 13:36:03 +03:00
[Commits](https://github.com/yonaskolb/XcodeGen/compare/1.0.0...1.0.1)
2017-09-18 22:59:15 +03:00
## 1.0.0
2017-10-30 16:18:26 +03:00
#### Added
2018-10-18 15:06:33 +03:00
- Swift 4 support [#52](https://github.com/yonaskolb/XcodeGen/pull/52)
- Support for C and C++ files [#48](https://github.com/yonaskolb/XcodeGen/pull/48) by @antoniocasero
2017-09-18 22:59:15 +03:00
- Xcode 9 default settings
2017-10-30 16:18:26 +03:00
#### Fixed
2018-10-18 15:06:33 +03:00
- fixed empty string in YAML not being parsed properly [#50](https://github.com/yonaskolb/XcodeGen/pull/50) by @antoniocasero
2017-09-18 22:59:15 +03:00
2017-10-30 16:18:26 +03:00
#### Changed
2018-10-18 15:06:33 +03:00
- updated to xcodeproj 0.1.2 [#56](https://github.com/yonaskolb/XcodeGen/pull/56)
- **BREAKING**: changed target definitions from list to map [#54](https://github.com/yonaskolb/XcodeGen/pull/54) See [Project Spec](docs/ProjectSpec.md)
2017-09-18 22:59:15 +03:00
[Commits](https://github.com/yonaskolb/XcodeGen/compare/0.6.1...1.0.0)
2017-08-30 18:39:38 +03:00
## 0.6.1
2017-10-30 16:18:26 +03:00
#### Added
2018-10-18 15:06:33 +03:00
- Ability to set PBXProject attributes [#45](https://github.com/yonaskolb/XcodeGen/pull/45)
2017-08-30 18:39:38 +03:00
2017-10-30 16:18:26 +03:00
#### Changed
2017-08-30 18:39:38 +03:00
- Don't bother linking target frameworks for target dependencies.
2018-10-18 15:06:33 +03:00
- Move code signing default settings from all iOS targets to iOS application targets, via Product + Platform setting preset files [#46](https://github.com/yonaskolb/XcodeGen/pull/46)
2017-08-30 18:39:38 +03:00
[Commits](https://github.com/yonaskolb/XcodeGen/compare/0.6.0...0.6.1)
2017-08-30 16:06:12 +03:00
## 0.6.0
2017-10-30 16:18:26 +03:00
#### Added
2018-10-18 15:06:33 +03:00
- Allow a project spec to include other project specs [#44](https://github.com/yonaskolb/XcodeGen/pull/44)
2017-08-30 16:06:12 +03:00
2017-10-30 16:18:26 +03:00
#### Changed
2017-08-30 16:06:12 +03:00
- Changed default spec path to `project.yml`
- Changed default project directory to the current directory instead of the spec file's directory
[Commits](https://github.com/yonaskolb/XcodeGen/compare/0.5.1...0.6.0)
2017-08-28 20:09:13 +03:00
## 0.5.1
2017-10-30 16:18:26 +03:00
#### Fixed
2017-08-28 20:09:13 +03:00
- Fix embedded framework dependencies
- Add `CODE_SIGN_IDENTITY[sdk=iphoneos*]` back to iOS targets
2018-10-18 15:06:33 +03:00
- Fix build scripts with "" generating invalid projects [#43](https://github.com/yonaskolb/XcodeGen/pull/43)
2017-08-28 20:09:13 +03:00
[Commits](https://github.com/yonaskolb/XcodeGen/compare/0.5.0...0.5.1)
2017-08-27 13:42:01 +03:00
## 0.5.0
2017-10-30 16:18:26 +03:00
#### Added
2018-10-18 15:06:33 +03:00
- Added multi platform targets [#35](https://github.com/yonaskolb/XcodeGen/pull/35)
- Automatically generate platform specific `FRAMEWORK_SEARCH_PATHS` for Carthage dependencies [#38](https://github.com/yonaskolb/XcodeGen/pull/38)
- Automatically find Info.plist and set `INFOPLIST_FILE` build setting if it doesn't exist on a target [#40](https://github.com/yonaskolb/XcodeGen/pull/40)
- Add options for controlling embedding of dependencies [#37](https://github.com/yonaskolb/XcodeGen/pull/37)
2017-08-27 13:42:01 +03:00
2017-10-30 16:18:26 +03:00
#### Fixed
2017-08-27 13:42:01 +03:00
- Fixed localized files not being added to a target's resources
2017-10-30 16:18:26 +03:00
#### Changed
2017-08-27 13:42:01 +03:00
- Renamed Setting Presets to Setting Groups
- Carthage group is now created under top level Frameworks group
[Commits](https://github.com/yonaskolb/XcodeGen/compare/0.4.0...0.5.0)
2017-08-25 17:44:45 +03:00
## 0.4.0
2017-10-30 16:18:26 +03:00
##### Added
2018-10-18 15:06:33 +03:00
- Homebrew support [#16](https://github.com/yonaskolb/XcodeGen/pull/16) by @pepibumur
- Added `runOnlyWhenInstalling` to build scripts [#32](https://github.com/yonaskolb/XcodeGen/pull/32)
- Added `carthageBuildPath` option [#34](https://github.com/yonaskolb/XcodeGen/pull/34)
2017-08-25 17:44:45 +03:00
2017-10-30 16:18:26 +03:00
#### Fixed
2017-08-25 17:44:45 +03:00
- Fixed installations of XcodeGen not applying build setting presets for configs, products, and platforms, due to missing resources
2017-10-30 16:18:26 +03:00
#### Changed
2018-10-18 15:06:33 +03:00
- Upgraded to https://github.com/swift-xcode/xcodeproj 0.1.1 [#33](https://github.com/yonaskolb/XcodeGen/pull/33)
2017-08-25 17:44:45 +03:00
[Commits](https://github.com/yonaskolb/XcodeGen/compare/0.3.0...0.4.0)
2017-08-04 11:17:08 +03:00
## 0.3.0 - Extensions and Scheme Tests
2017-10-30 16:18:26 +03:00
#### Added
2018-10-18 15:06:33 +03:00
- Support for app extension dependencies, using the same `target: MyExtension` syntax [#19](https://github.com/yonaskolb/XcodeGen/pull/19)
- Added test targets to generated target schemes via `Target.scheme.testTargets` [#21](https://github.com/yonaskolb/XcodeGen/pull/21)
2017-08-04 11:17:08 +03:00
2017-10-30 16:18:26 +03:00
#### Changed
2017-08-04 11:17:08 +03:00
- Updated xcodeproj to 0.0.9
2017-10-30 16:18:26 +03:00
#### Fixed
2017-08-04 11:17:08 +03:00
- Fixed watch and messages apps not copying carthage dependencies
2017-10-30 16:18:26 +03:00
#### Breaking changes
2017-08-04 11:17:08 +03:00
- Changed `Target.generatedSchemes` to `Target.scheme.configVariants`
[Commits](https://github.com/yonaskolb/XcodeGen/compare/0.2...0.3.0)
## 0.2.0 - Build scripts
2017-08-02 22:26:42 +03:00
2017-10-30 16:18:26 +03:00
#### Added
2018-10-18 15:06:33 +03:00
- Added Target build scripts with `Target.prebuildScripts` and `Target.postbuildScripts` [#17](https://github.com/yonaskolb/XcodeGen/pull/17)
2017-08-02 22:26:42 +03:00
- Support for absolute paths in target sources, run script files, and config files
- Add validation for incorrect `Target.configFiles`
2017-10-30 16:18:26 +03:00
#### Fixed
2017-08-04 11:17:08 +03:00
- Fixed some project objects sometimes having duplicate ids
[Commits](https://github.com/yonaskolb/XcodeGen/compare/0.1...0.2)
2017-08-02 22:26:42 +03:00
## 0.1.0
First official release