2089 Commits

Author SHA1 Message Date
Yonas Kolb c1d5c65ae4 Update to 2.30.0 2.30.0 2022-07-16 16:57:26 +10:00
Aleksei Sapitskii c082bc0c7c Fix XcodeGen building after XcodeProj update to 8.8.0 (#1228)
* Fix XcodeGen building after XcodeProj update to 8.8.0

**Reason**
- XcodeProj has been updated and has API breaking changes

**Content**
- Added new enum case handling in `Linkage`
- Renamed the enum case name for `XCWorkspaceDataFileRef.init`

* add new product type to docs

* update changelog

Co-authored-by: Yonas Kolb <yonaskolb@users.noreply.github.com>
2022-07-16 16:46:42 +10:00
Luca Bartoletti 19817f3192 Fix watchapp2-container product name (#1219)
The correct name is `application.watchapp2-container`
2022-07-16 16:46:31 +10:00
JP Simard f65dad7625 Speed up SettingsBuilder (#1221)
* Speed up SettingsBuilder

It's unnecessary to build up a whole grouped dictionary only to check
if all platforms are identical and then immediately discard the
dictionary.

Instead we can check if all targets match the first platform, which
avoids creating a new dictionary but also allows bailing early as soon
as a non-matching platform is found.

Generating a large project (36MB json spec) on an M1 Max machine leads
to a ~6% total speedup: 28.48s vs 30.07s.

* Add changelog entry
2022-06-16 13:54:28 +10:00
Mark Turner a2348d0cfa Example of vscode usage as a development environment (#1218) 2022-06-15 13:33:42 +10:00
yonaskolb 29bcb92591 Update to 2.29.0 2.29.0 2022-05-10 15:04:43 +10:00
Yonas Kolb 0822efa5bd update xcodeproj (#1213) 2022-05-10 15:03:39 +10:00
Yonas Kolb e35f7df14d Add Test Plans (#716)
* upgrade scheme and project versions

* parse test plans

* remove xctestplan from resources

* generate test plan references in schemes

* add test plan to fixture

* non-mutable way of creating [XCScheme.TestPlanReference]

* update fixture version

* Add documentation

* Add default test plan option

# Conflicts:
#	Sources/ProjectSpec/Scheme.swift
#	Tests/Fixtures/paths_test/included_paths_test.yml
#	Tests/ProjectSpecTests/SpecLoadingTests.swift

* Add test plan validation

# Conflicts:
#	Tests/ProjectSpecTests/ProjectSpecTests.swift

* Check for multiple default test plans

* set first plan as default default plan

* small tweaks

* fix test plan path properties

* add test plants to target scheme

* docs

* fix fixture test plan path

* update changelog

* added ability to disable test plan path validation

Co-authored-by: Ota Mares <ota@rebuy.com>
2022-05-10 13:27:31 +10:00
Yuya Hirayama 047e9968d6 Fix docc support (#1202)
* Update FileType.swift

* Update SourceGeneratorTests.swift

* Update fixture

* Update CHANGELOG.md
2022-04-05 14:08:02 +10:00
yonaskolb fd8aa8faf9 simplify changelog and remove commit links
github can compare diffs
2022-03-31 16:43:32 +11:00
yonaskolb 958ae1b744 simplify changelog PR links
Github now makes these links in more contexts
2022-03-31 16:41:05 +11:00
yonaskolb 322c5658f3 update changelog 2.28.0 2022-03-31 16:24:02 +11:00
yonaskolb 4fbdc9da35 Update to 2.28.0 2022-03-31 16:22:09 +11:00
Alvar Hansen 17e7b03278 Run target source pattern matching in parallel (#1197)
As this transform closure does not access anything outside of its
closure and does not mutate any singletons, then it seems to be safe
to run this mapping in parallel.
2022-03-31 16:16:31 +11:00
Vladislav Lisyanskiy 50aa8c51cc Fixed segmentation fault crash (#1198)
* Fixed glob segmentation fault

* Renamed AtomicDictionary to ThreadSafeDictionary

* Refactored ThreadSafeDictionary

* ThreadSafeDictionary replaced with ThreadSafeContainer

* Removed reader/writer

* ThreadSafeContainer replaced with Atomic
2022-03-31 16:15:58 +11:00
John Connolly be0c3c3926 Added ability to use custom location for local Swift packages (#1175)
* Added xcodePath functionality

* Added xcodePath functionality

* Renamed Xcode path to group

* Updated change log and added fixture tests
2022-03-25 11:26:06 +11:00
Yonas Kolb 5350e26cd5 Update CHANGELOG.md 2022-03-22 10:25:44 +11:00
Maxim Bunkov 8530da5d00 fix(carthage): shell login (#1179)
* fix(carthage): shell login

* tests(fixtures): update fixtures

* tests(changelog): update changelog
2022-03-22 10:24:41 +11:00
yonaskolb f6cdd090c2 use new TestableTargetReference in TargetScheme.coverageTargets 2.27.0 2022-03-20 14:44:14 +11:00
yonaskolb d7accac686 Update to 2.27.0 2022-03-20 14:30:49 +11:00
Yonas Kolb 8ff92cf1c5 Update CHANGELOG.md 2022-03-20 14:28:41 +11:00
freddi(Yuki Aki) 245f17117a Support test target for local Swift Package (#1169)
* support local Swift Package test case into test scheme

* update test

* add test

* update CHABGELOG.md

* Update CHANGELOG.md

* revert resolved package test

* Update Sources/XcodeGenKit/SchemeGenerator.swift

Co-authored-by: Kohki Miki <giginet.net@gmail.com>

* make TargetReference convert from new JSON format

* add .package for location of target reference

* receive target reference format at target of scheme

* update test

* update XcodeProj

* add test and fix small bugs

* update docs

* support multiple style of coverageTargets

* add edge case of parsing test targets

* fix docs

* Update Docs/ProjectSpec.md

Co-authored-by: Yonas Kolb <yonaskolb@users.noreply.github.com>

* create TestableTargetReference for not making API complex

* fix code format

* fix parameter name to Testable Target Reference

* support directly writing key of Testable Target Reference

* fix compile error in build

Co-authored-by: Kohki Miki <giginet.net@gmail.com>
Co-authored-by: Yonas Kolb <yonaskolb@users.noreply.github.com>
2022-03-20 14:27:29 +11:00
Yonas Kolb 146eaadaf3 Update CHANGELOG.md 2022-03-20 14:20:53 +11:00
Christian Huck e77caa8a40 add .gyb as an accepted source file (#1191)
* add .gyb to source files

* Update CHANGELOG.md

Co-authored-by: Christian Huck <chris@thinkfield.li>
2022-03-20 14:20:37 +11:00
Evan Coleman 7b9d95ab4c Skip compile sources for watch apps (#1185)
* Skip compile sources build phase for watch2 apps if empty

* add changelog entry

* Fix tests

Co-authored-by: Yonas Kolb <yonaskolb@users.noreply.github.com>
2022-03-20 14:19:23 +11:00
Yonas Kolb 07fa819999 Update CHANGELOG.md 2022-03-17 15:57:22 +11:00
Gabriel Lanata 3b5ca91b76 Add coverage targets for target schemes (#1189)
* Changes

* Tests and docs

* Update fixtures

* Update CHANGELOG.md

Co-authored-by: Yonas Kolb <yonaskolb@users.noreply.github.com>

Co-authored-by: Yonas Kolb <yonaskolb@users.noreply.github.com>
2022-03-17 15:56:03 +11:00
Vladislav Lisyanskiy a10c7c4c24 Fixed Glob crash (#1181) 2022-03-06 18:32:35 +11:00
yonaskolb d218ada92f fix archive if repo path has spaces 2022-02-09 11:30:23 +11:00
yonaskolb 9bd8ad1e4a Update to 2.26.0 2.26.0 2022-02-07 09:27:20 +11:00
yonaskolb 62b9bea413 ignore vscode 2022-02-07 09:25:24 +11:00
Kristopher Jackson c62277f150 Added location option to test target (#1153)
* Added location option to test target

* Updated XcodeProj

* Updated packages

* Removed extra toJSONValue()

* Update Docs/ProjectSpec.md

Co-authored-by: Yonas Kolb <yonaskolb@users.noreply.github.com>

* Update Sources/ProjectSpec/Scheme.swift

Co-authored-by: Yonas Kolb <yonaskolb@users.noreply.github.com>

* Update Sources/ProjectSpec/Scheme.swift

Co-authored-by: Yonas Kolb <yonaskolb@users.noreply.github.com>

* Removed optional location

* Renamed SimulateLocation to Location

* Removed Location struct and just pass location string directly

* Added tests for location with a test target

* Added example of location inside test target to project.yml

* Removed extra test target and add location to existing target

* Updated App_Scheme.xcscheme

Co-authored-by: Yonas Kolb <yonaskolb@users.noreply.github.com>
2022-01-07 11:09:58 +11:00
Paul Taykalo 10fb43137b Speed up search by using parallel Glob and Binary Search for including files checks (#1122)
* Use binary searchi for Checking if path is included in included files

* Do not run glob in parallel on Linux systems
2021-10-08 09:20:19 +11:00
Yoshinori Imajo 1d3412e1b6 Fix Graphviz on Mac URL in README. (#1134) 2021-10-03 11:57:24 +11:00
yonaskolb c8b2a4ac8a update changelog 2.25.0 2021-09-24 09:12:56 +10:00
yonaskolb abb18642ba Update to 2.25.0 2021-09-24 09:12:09 +10:00
Michael Thole fa6c5c9173 Fix Xcode 13 build (alternate PR to kick CI) (#1130)
* Fix Xcode 13 build

* Extend Xcode 12 workaround to Xcode 13

* Update CHANGELOG

* Moved CHANGELOG into 'Next Version' section

Co-authored-by: Kryštof Matěj <krystof.matej@cleverlance.com>
2021-09-24 09:11:10 +10:00
Yuya Oka 322262cff7 Update tuist/XcodeProj (#1125)
* Update tuist/XcodeProj

* Add changed entry
2021-09-23 19:22:44 +10:00
yonaskolb c3d936c0c7 update changelog 2021-09-23 18:52:00 +10:00
Kryštof Matěj 12511afed8 Fix platformFilter for package dependencies (#1123) 2021-09-14 23:11:25 +10:00
Adam Wolf f1e888f228 Fix Usage.md link to options section (#1115)
This actually was meant to link in to ProjectSpec.md#options
2021-08-11 08:37:51 +10:00
Dan Loman b04688845a [bug fix] Ensure fileTypes are mapped to JSON value (#1112)
* Ensure fileTypes are mapped to JSON value

* Add CHANGELOG entry
2021-08-03 09:08:55 +10:00
Yuta Saito a4d7a61a68 Fix broken codesign option for bundle dependency (#1104)
* Fix missing codesign option for bundle dependency

* Add codeSign: false test case for bundle dependency

* Update CHANGELOG.md
2021-07-15 19:06:33 +10:00
Jakub Bednar d35d22f08b Added support for dependency destination specification. (Resolves #1038) (#1039)
* Added support for dependency destination specification. (Resolves #1038)

* More generic way covering more different dependency types. (#1038)

* Added unit-test for each possible dependency combination. First test current embeding then the new one with custom copy spec. (#1038)

* Review fixes. (#1038)

* Minimized unit-test boiler-plate (#1038)

* Update CHANGELOG.md

Co-authored-by: Jakub Bednář <jakub.bednar@avast.com>
Co-authored-by: Yonas Kolb <yonaskolb@users.noreply.github.com>
2021-07-15 12:10:34 +10:00
Roman Podymov e2f062b6be erouska (#1107) 2021-07-15 11:41:48 +10:00
yonaskolb 270ef8b279 Update to 2.24.0 2.24.0 2021-06-27 22:30:14 +10:00
Dalton Claybrook 66b1db4b5c Add support for specifying the UI testing screenshot behavior in a scheme test action (#942)
* Support for specifying UI testing snapshot behavior in scheme test action

* Add tests for new screenshot scheme options

* Update changelog

* Add new fields to Scheme.Test json encoding

* Only save values to JSON if they aren't the defaults

* Using new defaults constants
2021-06-27 22:25:26 +10:00
David ce051293de Fix path to an example project spec (#1096)
The previous linked file (`project.yml`) doesn't exist anymore in RxUserDefaults. Instead, `Examples/CocoaPodExample.yml` is an example spec in RxUserDefaults.
2021-06-27 22:23:48 +10:00
Dalton Claybrook 81bd52be4b Add support for conditionally linking dependencies based on platform (#1087)
* Add initial support for conditional platform dependencies

* Add tests for conditional platforms

* Update docs and changelog

* Respond to PR feedback

* Change name of field from 'conditionalPlatforms' to 'platforms'

Co-authored-by: Yonas Kolb <yonaskolb@users.noreply.github.com>
2021-06-20 20:19:02 +10:00
Vlad Gorlov 4455919be3 Added support for "driver-extension" and "system-extension" product types (#1094)
* Squashed commit of the following:

commit 0bcdce0d1f0f1d13fb5a284404e4eaea4e805a89
Author: Vlad Gorlov <volodymyr.gorlov@gmail.com>
Date:   Fri Jun 18 00:58:50 2021 +0200

    [#1092] Dependency version update.

commit 0040c46fd4ce9f42102faeb744104027b6c2c757
Author: Bruce Evans <bruce.evans.dev@gmail.com>
Date:   Wed Jun 16 09:12:01 2021 +0900

    Add Support for DocC in Xcode 13 (#1091)

    * Add support for DocC

    DocC "files" are actually folders `.docc` appended to the name, but Xcode 13 treats them differently. Therefore, we need to exclude them from the normal BuildPhase.

    Resolves #1089

    * Add tests for DocC

    Expanded an existing test to include .docc support.

    Also added a .docc catalog to the Test Project.

    * Update changelog.md

    * Update changelog.md to get the correct PR Link

commit 5bb7ef4e1c632f80f63c49ee280d64b8dab1603f
Author: Vlad Gorlov <volodymyr.gorlov@gmail.com>
Date:   Wed Jun 16 01:03:42 2021 +0200

    Added support for missed product types.

commit 3f8bfdf749d0d15da8490550b95a31cf961d8649
Author: Vlad Gorlov <volodymyr.gorlov@gmail.com>
Date:   Wed Jun 16 00:01:47 2021 +0200

    Added support for missed product types.

commit 235ebe4fe906716a6a37421346318fc6515836ce
Author: Vlad Gorlov <volodymyr.gorlov@gmail.com>
Date:   Tue Jun 15 23:53:52 2021 +0200

    Added support for missed product types.

* [#1094] Fixes failing tests.

* [#1094] Added test project targets.

* [#1094] Making iig-file type of source code.

* [#1094] Attempt to fix CI failure.
2021-06-20 14:08:38 +10:00