Commit Graph

1005 Commits

Author SHA1 Message Date
freddi
a3ddb4863d Reverted parsing order of path and url for making switch package easy 2020-03-19 23:33:18 +09:00
freddi
550df76722 Make SwiftPackage itself as enum 2020-03-19 23:29:46 +09:00
freddi
defd73fca9 Removed LocalSwiftPackage 2020-03-18 22:10:44 +09:00
freddi
e61dafdf55 Removed unnecessary space 2020-03-18 21:48:34 +09:00
freddi
ca8136b62d Removed localPackages variable 2020-03-18 21:32:24 +09:00
freddi
5eb4c33197 Merge branch 'support-local-sp' into support-local-sp-with-packages 2020-03-18 20:50:23 +09:00
freddi(Yuki Aki)
a077f2da88
Update Sources/XcodeGenKit/SourceGenerator.swift
Co-Authored-By: Yonas Kolb <yonaskolb@users.noreply.github.com>
2020-03-18 17:13:29 +09:00
freddi(Yuki Aki)
da930999c7
Merge branch 'master' into support-local-sp 2020-03-18 16:15:55 +09:00
Yuta Saito
78c11f94a3 Avoid to copy ObjC interface header when SWIFT_INSTALL_OBJC_HEADER=false 2020-03-14 02:37:00 +09:00
freddi
105367b395 Fixed local packages is not linked as framework 2020-03-05 23:36:00 +09:00
freddi
e4989a6c01 Merge branch 'support-local-sp' into support-local-sp-with-packages 2020-03-05 23:14:41 +09:00
freddi
dd7737354d Fixed issue if there is no reference of package 2020-03-05 23:05:46 +09:00
freddi
19853921df Added validation of local package 2020-03-05 21:30:40 +09:00
freddi
77a3cf4b2f Changed validateVersion as static 2020-03-05 20:57:54 +09:00
freddi
81c2f4ec67 Added support local package on packages: 2020-03-05 20:40:01 +09:00
freddi
fd267bf503 Fixed code making absolutePath at creating local package 2020-03-05 19:46:26 +09:00
freddi
83b44b93aa Reverted not necessary change 2020-03-05 19:37:05 +09:00
freddi
7a0bd7c13c Improved PBXFileReference name at localPackages 2020-03-05 19:04:55 +09:00
freddi
382992af85 Sort local package before createLocalPackage 2020-03-05 10:34:33 +09:00
freddi
d8bf945ca2 Fixed issue on localPackage when specified as absolute path and when using -p 2020-03-05 09:50:45 +09:00
ionutivan
5487e3ce18 add property stopOnEveryMainThreadCheckerIssue to the scheme, target scheme and generator 2020-03-04 17:21:18 +01:00
freddi
d184a9d2b6 Changed how to use reduce at localPackages 2020-03-04 23:01:06 +09:00
freddi
b351d592b7 Fixed Test 2020-03-03 22:34:09 +09:00
freddi
47c17d65ee Fixed test by defining initializer of LocalSwiftPackage 2020-03-03 22:24:56 +09:00
freddi
0b5585f122 Support Swift Package in local by localPackages 2020-03-03 21:33:18 +09:00
yonaskolb
1c242111b5 Update to 2.14.0 2020-02-29 12:44:13 +11:00
Yonas Kolb
bd7e0b7564
Merge pull request #788 from alexruperez/swift-package-manager_dynamic-packages_embed-and-sign_fix
Fix #784 Swift Package Manager (Embed & Sign) for dynamic packages.
2020-02-29 12:38:39 +11:00
Ken Tominaga
c0c998b429
Set xcodeproj path in project.xcworkspace/contents.xcworkspacedata (#793)
* Set xcodeproj path in project.xcworkspace/contents.xcworkspacedata

* Update CHANGELOG.md
2020-02-28 14:40:37 -06:00
Bryan Summersett
7c35c25468 Revert "Add Base to known regions even if one doesn't exist"
This reverts commit 98472a3d88.
2020-02-26 18:31:14 -08:00
Ken Tominaga
f510b44186
Set TEST_TARGET_NAME only when a project has UITest bundle (#792)
* Set `TEST_TARGET_NAME` only for UITest

* Update CHANGELOG.md
2020-02-26 09:26:35 -06:00
Alex Rupérez
54ec2ed76f Only embed SPM dependencies when declared in project.yml 2020-02-26 15:02:13 +01:00
Alex Rupérez
29b33e0a75
Fix #784 Swift Package Manager (Embed & Sign) for dynamic packages. 2020-02-25 12:20:25 +01:00
Ken Tominaga
e3f8ae9e85 Set defaultConfigurationName for every target in a project 2020-02-24 16:57:36 -08:00
yonaskolb
d3a3640fcb Update to 2.13.1 2020-02-07 10:58:01 +11:00
yonaskolb
ce787d9e40 use mxcl/Version to fix parsing 2020-02-07 10:49:28 +11:00
yonaskolb
d966e9d610 fix legacy targets dependencies 2020-02-07 10:09:09 +11:00
Liam Nichols
d69b028294
Update SpecValidation to validate TargetReference definitions in the Scheme.Test action. Add additional coverate to ProjectSpectTests 2020-02-06 10:45:21 +00:00
yonaskolb
d041c6161a Update to 2.13.0 2020-02-02 10:42:24 +11:00
Yonas Kolb
f2def422c5
Reorder build phases (#768)
* update changelog

* moved `Copy Bundle Resources` to after `Link with Libraries` build phase
2020-02-02 10:39:35 +11:00
yonaskolb
c55af41047 update PBXFileElement sort methods 2020-02-02 09:54:59 +11:00
Christopher Rogers
5966e294e7
Stabilize sorting of groups with duplicate names/paths (#671)
* Stabilize sorting of groups with duplicate names/paths

For example, previously a group with (name: nil, path: "Sources") would be considered equal to (name: "Sources", path: "../Sources"), even though they are distinct groups.

* Remove Comparable conformance from PBXFileElement

...as it isn't compatible with its Equatable conformance.

Renamed localizedStandardCompare to reflect the fact that PBXFileElement no longer has an inherent order.

* Update changelog
2020-02-02 09:46:17 +11:00
Evan Coleman
6bfd620549
Support external target dependencies via subprojects (#701)
* Allow external target dependencies via subprojects

* Update CHANGELOG

* Update ProjectSpec

* Fix test

* Use existing fixture for test

* Sort subprojects by name

* Throw subproject generation error instead of crashing

* Cleanup target dependency generation

* Update test fixture project

* Combine extentions in Linkage

* Update XcodeProj to 7.7.0

* Update CHANGELOG.md

* Update ProjectSpec.md

Co-authored-by: Yonas Kolb <yonaskolb@users.noreply.github.com>
2020-02-02 09:44:56 +11:00
Yonas Kolb
6b7b7e6134
Update and lock XcodeProj to 7.7.0 (#767) 2020-02-02 09:35:45 +11:00
yonaskolb
8b12837cdb Update to 2.12.0 2020-02-02 00:40:14 +11:00
Yonas Kolb
49ed1503ef
Add pre and post-gen commands (#759)
* add pre and post-gen commands

* update changelog

* run gen scripts in project directory
2020-01-27 22:22:35 +11:00
Bas van Kuijck
f544dd36e6 Added a simulateLocation option in scheme specs (#756)
* Added a simulateLocation option in scheme specs

* Updated fixtures for simulateLocation

* Use fileGroups instead of sources
2020-01-23 09:12:06 -06:00
sipao
3a9131a21a Add support On Demand Resources (#753)
* added on-demand-resources setting to project.yml

* update documents

* Apply suggestions from code review

fixed docs

Co-Authored-By: Yonas Kolb <yonaskolb@users.noreply.github.com>

* Make it possible to resourceTags convert to json

* Use sorted() instead of Array initializer

* Avoid merge assetTags if it is empty

* Changed access to resourceTags to inline

* Don't add resourceTags other than chosenBuildPhase is .resources

* update CHANGELOG.md

* update spec loading test

* add a new "generates resource tags" test case

* add resourceTags in Test Fixture and update

Co-authored-by: Yonas Kolb <yonaskolb@users.noreply.github.com>
2020-01-21 08:47:31 +11:00
Bas van Kuijck
d10dcc9a0e Validate package version value (#755)
* Validate package version value

* Added CHANGELOG entry

* Improved testcases for package versions
2020-01-15 13:29:24 -06:00
John Flanagan
c52ed49a29 Prefer default Debug and Release configs 2020-01-14 21:40:12 -06:00
Kamil Pyć
74203dc62d
Merge branch 'master' into use_relative_path_for_XcodeProj 2020-01-12 18:22:41 +01:00
Yonas Kolb
308b351a7a
Merge pull request #744 from ikesyo/avoid-adding-unnecessary-path-to-FRAMEWORK_SEARCH_PATHS
Don't add framework dependency's directory to FRAMEWORK_SEARCH_PATHS if it is implicit
2020-01-12 21:45:39 +11:00
Dan Loman
0c6dd1401a
Add option to generate only plist files
Add changelog entry

Update CHANGELOG.md

Co-Authored-By: Yonas Kolb <yonaskolb@users.noreply.github.com>

Update to new flag PropertyWrapper
2020-01-07 13:49:03 -08:00
Kamil Pyć
9bf657cb1d
Use full path for XcodeProj
This solves issue with relative project path.
2020-01-07 14:20:16 +01:00
Sho Ikeda
a4624d3e18 Don't add framework dependency's directory to FRAMEWORK_SEARCH_PATHS if it is implicit
Because we assume the dependency is in BUILT_PRODUCTS_DIR.

Co-authored-by: yutailang0119 <muta.yutaro@gmail.com>
2020-01-06 23:10:14 +09:00
Yuta Saito
2f312361bc Merge remote-tracking branch 'origin/master' into katei/resolve-proj-ref-relative 2020-01-06 20:54:05 +09:00
Yuta Saito
8fe5c0cd16 Validate project reference path 2020-01-06 20:51:58 +09:00
yonaskolb
06a02425f6 use new property wrappers in SwiftCLI 6.0 2020-01-05 11:43:26 +11:00
Yonas Kolb
4339007e66
Merge pull request #723 from kateinoigakukun/katei/add-bundle-dependency
Add bundle dependency type
2019-12-12 22:21:23 +11:00
Yuta Saito
ce92dd69b4 Replace projectReference.path as relativePath correctly 2019-12-11 20:05:17 +09:00
Franz Busch
bedbfef9cd Add support for language and region for targets 2019-12-04 09:35:56 +01:00
yonaskolb
f064bdf6a1 Update to 2.11.0 2019-12-03 22:57:09 +11:00
Yuta Saito
6abca395bc
Merge branch 'master' into katei/add-bundle-dependency 2019-12-01 22:16:14 +09:00
Atsushi Kiwaki
73c52f5898 Fixed unnecessary dependencies related to SwiftPM (#726) 2019-11-27 12:42:14 -06:00
Ken Tominaga
fd05b9ba08 Use Xcode.IDEFoundation.Launcher.PosixSpawn for TestAction when debugEnabled: false 2019-11-23 01:46:57 +09:00
Yuta Saito
49f29e9156 Merge branch 'master' into katei/add-bundle-dependency 2019-11-20 19:35:38 -08:00
yonaskolb
a6493cf3fd fix typo 2019-11-20 22:36:49 +11:00
yonaskolb
66ba10c3c6 print group hierarchy on source generator test failure 2019-11-20 22:18:32 +11:00
Yuta Saito
46925cdd7d Separate Resources and Bundles 2019-11-20 16:24:05 +09:00
Romuald CARI
0df37029cc Fix TargetSource group behavior
When targeting a file, a folder should not be created for its directory,
only the file should appear in the specified custom group.
Moreover, if the custom groups contains actual filesystem folders, they
should map to these.
2019-11-19 15:56:24 -05:00
Romuald CARI
de9c15ea1d Fix @sroebert PR based on @yonaskolb comments 2019-11-19 15:56:23 -05:00
Steven Roebert
15e615300e Added new group parameter to target sources, allowing to add them to a custom parent group (resolving #478) 2019-11-19 15:56:23 -05:00
giginet
c5e9f07a53 Add tests to add intentdefinition to build source phases 2019-11-19 03:00:08 +09:00
giginet
e1f520c358 Merge remote-tracking branch 'origin/master' into intent-definitions 2019-11-19 02:51:17 +09:00
Yuta Saito
7669d60d66 Add copying bundles phase to trigger building Bundle 2019-11-18 19:14:12 +09:00
Yuta Saito
e336f56093 Support .bundle dependency 2019-11-18 18:07:46 +09:00
Yonas Kolb
32bd7ed568
Update to XcodeProj 7.4 (#715)
Update to XcodeProj 7.4
2019-11-10 12:54:03 +11:00
yonaskolb
eda9a5fba2 remove customized file types 2019-11-10 12:42:58 +11:00
yonaskolb
865ad156b2 use custom unwrap function 2019-11-10 12:18:04 +11:00
yonaskolb
0e4e08bfc4 run swift format for Swift 5.1 2019-11-10 11:56:23 +11:00
yonaskolb
d96f7890e4 Refactor commands 2019-11-10 11:38:53 +11:00
yonaskolb
44f9ffa51a formatting 2019-11-10 11:38:53 +11:00
yonaskolb
aa0fd85bfe add file option 2019-11-10 11:38:53 +11:00
yonaskolb
43cd0ec33e add dump command 2019-11-10 11:37:52 +11:00
yonaskolb
5711c6be0d Remove project description from generate 2019-11-10 11:37:52 +11:00
giginet
b1b216b1b5 Use VariantGroup 2019-11-08 04:02:26 +09:00
giginet
ae75bcb2cb Localized 2019-11-08 02:52:50 +09:00
giginet
decaa9d080 Generate suitable source files for localized file reference 2019-11-08 02:12:10 +09:00
Kohki Miki
03076f40eb Support Static Frameworks for Carthage dependencies (#688) 2019-11-07 11:03:26 -06:00
Romuald Cari
e38360d5e3 Fix crash on empty ${} variable expansion (#706)
This fix got lost in #704 reworks.
2019-11-06 14:12:11 -06:00
wag-miles
c5905581d5 Fix header phase for static frameworks (#705) 2019-11-06 14:09:20 -06:00
Romuald Cari
06a6616b88 Improving variable expansion runtime (#704)
* Improving variable expansion runtime

The current implementation of variable expansion is O(n x m) with n being the
number of strings in the project spec and m being the number of project variables.

This implementation is now O(n).

Also, this effectively deprecates the support for $legacy_variables in favor of the
${new_variables} making this whole patch possible.

* Adding option to disable variable expansion

* Adding performance test for spec loading

* Updating changelog
2019-11-06 08:33:54 -06:00
Yonas Kolb
b7a597200d Update to 2.10.1 2019-11-01 10:09:48 +11:00
Romuald Cari
292cee1f6e Fixing link directive on dependencies (#703)
PR #624 introduced a bug with operator priorities discarding false link settings
for dependencies when the target is an executable and the dependency a static
library. This PR fixes that.
2019-10-31 15:32:17 -05:00
Yuta Saito
3a810d1499 Add missing onlyGenerateCoverageForSpecifiedTargets which enables specific target coverage 2019-10-30 15:17:08 +09:00
yonaskolb
203d96e343 fix some build errors 2019-10-30 11:40:55 +11:00
Bryan Summersett
98472a3d88 Add Base to known regions even if one doesn't exist 2019-10-29 15:33:52 -07:00
yonaskolb
03b74b37c0 Update to 2.10.0 2019-10-27 23:25:47 +11:00
yonaskolb
518d8e578b restructure test targets 2019-10-27 23:15:12 +11:00
yonaskolb
d0d509c1a5 swiftformat 2019-10-27 22:37:41 +11:00
Yuta Saito
3d58b3d104 Merge branch 'master' into test-coverage 2019-10-27 12:58:30 +09:00
Yuta Saito
f81adfe291 Merge branch 'external-target-ref' into test-coverage 2019-10-27 12:57:23 +09:00
Yonas Kolb
f9e5f23c2b
Support External Target Reference (#655)
Support External Target Reference
2019-10-27 14:11:35 +11:00
Yuta Saito
bbed01d1d6 Cache pbxproj by reference name 2019-10-27 09:23:35 +09:00
Yuta Saito
d3560e7f6b Use convenience initializer for TargetReference.local 2019-10-27 09:11:27 +09:00
Yuta Saito
fbc7e9442d Use propery initializer for TestTarget 2019-10-27 09:08:51 +09:00
Yuta Saito
1285a3e25e Rename TargetReference.init label 2019-10-27 09:07:04 +09:00
Yuta Saito
c4305dd02e Add validation for project reference 2019-10-27 09:00:21 +09:00
Malcolm Jarvis
d22ab944c4 Fix macOS unit test target TEST_HOST (#696)
Resolves #695

Previously, macOS unit test targets would appear to have no test host.

By manually setting the test host in Xcode on the fixture project, I discovered that macOS test hosts require an additional `Contents/MacOS/` path component before the product name.

We can manually detect the platform when setting the test host and as such generate the host correctly for macOS unit test targets.
2019-10-24 11:12:00 -05:00
Yuta Saito
848dfe28ba Re-revert 'Throw error instead of fatalError' partially 2019-10-24 08:21:32 +09:00
giginet
edac4a355b Resolve Info.plist path 2019-10-23 18:58:40 +09:00
Yuta Saito
31667516a5 Revert 'Throw error instead of fatalError' 2019-10-23 07:50:29 +09:00
Kohki Miki
5b5d0e917e
Merge pull request #681 from giginet/project-path
Resolving relative paths with custom project destination
2019-10-23 04:15:51 +09:00
giginet
80808d69c8 Rename 2019-10-22 23:37:01 +09:00
Franz Busch
cb2ee6cbaa Code review comments 2019-10-22 10:39:42 +02:00
Franz Busch
b5773eff6a Don't generate CFBundleExecutable for targets of type bundle 2019-10-22 09:39:22 +02:00
Kohki Miki
2166a0387e
Adding a default argument for backward compatibility. 2019-10-22 03:08:48 +09:00
Yuta Saito
c432337ef7 Throw error instead of fatalError 2019-10-21 18:32:49 +09:00
Yuta Saito
70cb2df5f7 Minimize protocol conformance declarations 2019-10-21 18:07:47 +09:00
Yuta Saito
7075777f99 Make 'let' properties as 'var' 2019-10-21 18:02:58 +09:00
Yuta Saito
4d8ffe76cb Remove file header 2019-10-21 18:01:05 +09:00
giginet
e63fe6be6f Add resolveGroupPath 2019-10-16 05:57:39 +09:00
Yuta Saito
be9c6a27b5 Merge branch 'master' into external-target-ref 2019-10-15 15:55:12 +09:00
Yuta Saito
c2ab781acb Fix buildableName generation logic 2019-10-15 15:47:28 +09:00
Yuta Saito
1c6409266b Improve TargetReference initializer interface 2019-10-15 15:33:35 +09:00
Yuta Saito
e0dfc72f85 Conform TargetReference to CustomStringConvertible 2019-10-15 15:15:25 +09:00
Yuta Saito
55613785da Move TargetReference to it's own file 2019-10-15 15:12:44 +09:00
Yuta Saito
d978cf4df2 Rename ExternalProject -> ProjectReference 2019-10-15 15:10:01 +09:00
yonaskolb
c733047d4c Update to 2.9.0 2019-10-14 21:15:34 +11:00
Yuta Saito
236c7c4f13 Add Hashable conformance for TargetReference 2019-10-10 23:49:41 +09:00
Yuta Saito
0a43435af3
Merge branch 'master' into external-target-ref 2019-10-10 23:38:45 +09:00
Kohki Miki
62a26b0a17
Merge branch 'master' into project-path 2019-10-09 16:36:42 +09:00
Yonas Kolb
3e1b9650b9
Merge pull request #679 from nivanchikov/fix_localized_resources_with_directories
Fix some resource files being placed to "Recovered References" group
2019-10-09 09:00:04 +11:00
giginet
7db2d2c526 Rename to projectDirectory 2019-10-08 22:52:51 +09:00
giginet
6a4320612a Refactor 2019-10-08 22:48:42 +09:00
giginet
f9b42c2d4f Resolve relativePath 2019-10-08 22:48:42 +09:00
giginet
90b018ad28 Passing relative path 2019-10-08 22:48:42 +09:00
giginet
44c7a0cae2 Pass projectDestinationDirectory 2019-10-08 22:48:42 +09:00
giginet
2c60f5effa Use relativePath for group 2019-10-08 22:48:42 +09:00
Yonas Kolb
27564f9a28
Merge pull request #672 from yonaskolb/BC-SchemeTemplates
Scheme Templates
2019-10-08 17:38:32 +11:00
Nikita Ivanchikov
18089e3306 Fix some localized resources not being included into project groups 2019-10-08 00:35:41 +03:00
Brian Clymer
7152d6aa9f Address CR. 2019-10-06 15:33:27 -05:00
Yonas Kolb
c46022cae4
Select suitable configs for auto-generated schemes (#673)
Select suitable configs for auto-generated schemes
2019-10-06 22:16:25 +11:00
Yonas Kolb
8c2700a9c3
Update SwiftCLI (#667)
Update SwiftCLI
2019-10-06 22:05:05 +11:00
giginet
047856a3b2 Remove manipulators 2019-10-05 18:25:09 +09:00
giginet
71922dae56 Rename variables 2019-10-05 18:14:54 +09:00
giginet
7386674fc3 Tweak whitespace 2019-10-03 01:06:07 +09:00
giginet
9061985686 Separate suitableConfig and defaultConfig 2019-10-03 01:05:15 +09:00
Brian Clymer
6e5766a2bc Ensure that target names can be changed by template attributes. 2019-10-02 10:40:15 -05:00
giginet
fb05f675f1 Use defaultConfig(of:in:) 2019-10-02 23:57:17 +09:00
Brian Clymer
682f188288 Refactor to make scheme and target templates use the same code. 2019-10-02 09:06:15 -05:00