Commit Graph

412 Commits

Author SHA1 Message Date
Elliott Williams
c194a2e4e3
Fix race condition in json decoder (#995)
* Fix race condition in json decoder

* Update CHANGELOG.md
2021-01-14 15:42:43 +11:00
Sascha Schwabbauer
2277b323f2
Add support for runOncePerArchitecture (#950)
Add changelog and small change

Fix build error
2021-01-13 09:51:11 +11:00
Yonas Kolb
7e536e5a3a
Update CHANGELOG.md 2021-01-12 21:13:32 +11:00
Vasiliy Anisimov
282761cb21
Fixed adding Info.plists with custom names to Copy Bundle Resources build phase (#945)
* Fixed adding Info.plists with custom names to Copy Bundle Resources build phase

- Extended check for Info.plist, because they usually named not just "Info.plist", but "<TargetName>-Info.plist"

* Update CHANGELOG.md

* Update CHANGELOG.md

Co-authored-by: Yonas Kolb <yonaskolb@users.noreply.github.com>
2021-01-11 13:33:44 +11:00
Jierong Li
04d6749441
Fix a typo (#993)
Rename baseOnDependencyAnalysis to basedOnDependencyAnalysis.
2020-12-03 11:20:13 +11:00
Jierong Li
efed786cec
Add baseOnDependencyAnalysis to Project Spec Build Script (#992)
* Add baseOnDependencyAnalysis to BuildScript

* Add tests for baseOnDependencyAnalysis

* Update CHANGELOG.md
2020-12-03 08:52:24 +11:00
Joseph Colicchio
6a5604f4b0
Project Reference LegacyTarget Crash Fix (#982)
* Avoid force-unwrapping and allow `.none` type target to continue

* Add changelog entry
2020-12-02 13:46:39 +11:00
bannzai
79738b3e95
More detailed error message with method arguments (#990)
* More detailed error message with method arguments

* Add pr title to CHANGELOG.md
2020-12-01 18:46:28 +11:00
Elliott Williams
2601d39792
Support Linux by upgrading XcodeProj and Spectre (#988)
* Bump XcodeProj and Spectre

* Add LinuxMain.swift

* Linux test fixups

* Add CI job for ubuntu-latest

* Use URLs in glob logic to avoid Linux/Mac foundation inconsistencies

* fatalError when --enable-test-discovery is not used

* Update fixtures

They changed because of a bugfix in XcodeProj: https://github.com/tuist/XcodeProj/pull/563

* Update CHANGELOG.md
2020-11-24 11:28:41 +11:00
Josh Walker
1e7c1c2da0
throw SpecValidationError for minimumXcodeGenVers (#967)
* throw SpecValidationError for minimumXcodeGenVers

* update changelog

# Conflicts:
#	CHANGELOG.md

Co-authored-by: Yonas Kolb <yonaskolb@users.noreply.github.com>
2020-11-13 08:30:35 +11:00
swiftty
297a25eda1
Update Yams to 4.0.0 (#984) 2020-11-10 14:18:04 +11:00
Liam Nichols
9fdc194771
Add useBaseInternationalization to SpecOptions (#961)
* Add 'useBaseInternationalization' setting to SpecOptions (default value of true)

* Update PBXProjGenerator to only include Base into knownRegions if it was either detected on the filesystem or if the project spec options opt into it

* Update ProjectSpec.md to include useBaseInternationalization

* Update AnotherProject to demonstrate Base Internationalization opt out

* Update CHANGELOG.md
2020-10-13 15:20:53 +11:00
yonaskolb
bb4a3fa2dd update changelog for 2.18.0 2020-10-02 18:43:00 +10:00
Yonas Kolb
4988388cc5
Update to Xcode 12 (#960)
* update to final xcode 12 version

* only generate and test xcode 12 project

* update default xcode version to 12

* update changelog
2020-10-02 18:42:50 +10:00
Liam Nichols
d959bdfddd
Enable Base Localization by default (#955)
* Update PBXProjGenerator to include 'Base' developmentRegion and file system derived knownRegions in the output knownRegions

* Update CHANGELOG.md

* Run tests to update fixtures
2020-10-02 18:23:38 +10:00
Liam Nichols
5ea9b4eec4
Update SettingsPresets to include new and modified values as part of Xcode 12 (#953)
* Update SettingsPresets to include new and modified values as part of Xcode 12's TemplateInfo.plist

* Update CHANGELOG.md

* Update Test Fixtures after running unit tests

* Revert change to GCC_PREPROCESSOR_DEFINITIONS order (https://github.com/yonaskolb/XcodeGen/pull/953\#discussion_r497486482)

* Run tests to update fixtures
2020-10-02 17:52:30 +10:00
Roman Podymov
742fe69c5b
"Copy only when installing" for "Embed App Extensions" (#948)
* Added onlyCopyExtensionsOnInstall

* Fix for Xcode 12

* Fixed PBXCopyFilesBuildPhase for "Embed App Extensions"

* Test for onlyCopyExtensionsOnInstall

* Update CHANGELOG.md

* Update ProjectSpec.md

* Refactoring

* More tests for onlyCopyExtensionsOnInstall

* Reverted

* Refactoring with getPBXCopyFilesBuildPhase

* Deleted similar tests

* onlyCopyExtensionsOnInstall -> onlyCopyFilesOnInstall

* Update ProjectSpec.md

* Update CHANGELOG.md

* Update ProjectGeneratorTests.swift
2020-10-02 17:48:32 +10:00
Cody Vandermyn
43177dec49
Select the first runnable target (#957)
* Select the first runnable target, if there is one

Instead of just selecting the first target as the scheme target, instead search for and select the first runnable target. If there are no runnables found, then select the first target.

* update docs
2020-09-29 16:44:53 +10:00
rinsuki
775e14c48f
Fix appex's Runpath Search Paths under macOS target (#952)
* Fix appex's Runpath Search Paths under macOS target

* Update CHANGELOG.md
2020-09-21 18:44:37 +10:00
Brentley Jones
5ac96741bc
Improved Application Extension scheme generation (#932)
* Default extensions to launchAutomaticallySubstyle "2"

* Don't use debugger launcher with extensions

Xcode schemes don't use the LLDB launcher, even when debugging is enabled.

Co-authored-by: Yonas Kolb <yonaskolb@users.noreply.github.com>
2020-09-06 15:40:32 +10:00
Samuel Giddins
c8b24acbdd
Allow creating intermediary groups outside of the project directory (#892) 2020-09-02 14:45:27 -07:00
Dan Fleming
b11d5d2a1c
Run CI against Xcode 12 beta (#936)
* Run CI against Xcode 12 beta

* Update CHANGELOG

* fixtures: add workarounds for Xcode 12

* Refine xcode 12 workaround to not fail for xcode 11
2020-08-22 12:23:00 +10:00
Andrew Reach
cd55bfbdfe
Fix a bug in computing relative paths. (#915)
Once a difference in path components between base and self has been
encountered, it is no longer valid to skip over common components.
2020-08-17 08:39:31 +10:00
Brentley Jones
bc51191a3a
Add support for App Clips (#909)
* Add support for App Clips

Embeds App Clips into the containing app when they are a dependency.

* Patch #909 to not fail CI (#917)

Co-authored-by: Dan Fleming <dflems@spotify.com>
2020-08-16 20:02:56 +10:00
Bartosz Polaczyk
1d2a28490f
Add custom lldinit for a scheme (#929)
* Add customLLDBInit

* Add changelog info to a valid bucket

* Update PR number

* Add fixture tests

Co-authored-by: Bartosz Polaczyk <bartoszp@spotify.com>
2020-08-12 16:13:47 +10:00
Yonas Kolb
dddb0fc129
Update CHANGELOG.md 2020-08-06 09:13:41 +10:00
Kiran Thorat
691ca93677
Fixes for embedding SDK dependencies. (#922) 2020-08-06 09:13:13 +10:00
Cody Vandermyn
727a648623
Add ability to skip the entire test target (#916)
* add ability to skip the entire test target

* when skipped is true, add it to the toJSONValue dictionary

* Add changelog entry
2020-08-05 20:05:23 +10:00
Yonas Kolb
f631b6427c Update to 2.17.0 2020-08-04 20:34:56 +10:00
Yonas Kolb
0bed4b835f
Update CHANGELOG.md 2020-08-04 16:10:34 +10:00
Kiran Thorat
142f84429d
Fixed issue of optionally excluding swift package from target dependencies. (#920)
fixed typo and updated changelog for fixes
2020-08-04 16:09:31 +10:00
Yonas Kolb
20a99e5018
Add FileTypes for cross project file options (#914)
* move BuildPhase

* add fileTypes

* update changelog
2020-08-04 09:14:32 +10:00
Yonas Kolb
25a539a236
Update CHANGELOG.md 2020-07-26 22:18:48 +10:00
Muhammad Muizzsuddin
d68900e313
Fix app extension scheme generation (#899)
* Fix XCScheme generation for Extension

* Use schemeTarget
2020-07-26 22:17:32 +10:00
Jared Sorge
331c3da0ef
Add Target option for copying frameworks when installing (#912)
* Add copy files on install option

* Add documentation

* Add tests

* Add to the target’s JSON if true

* Add changelog entry

* Add test for outputted pbxproj file
2020-07-26 22:15:42 +10:00
Brentley Jones
fc58e084b9
Update XcodeProj to 7.13.0 (#908)
This has support for App Clips.
2020-07-15 00:53:18 +10:00
Khaos Tian
37e1f72531
Treat all directories with known UTI as file wrapper (#896)
* Only allow folder with unknown UTI

* Update fixture

* Use fileGroups instead of fixtures.

* Change log

* Add to the right place

* Rename title
2020-06-25 18:39:04 +10:00
Yonas Kolb
10dc80123b Update to 2.16.0 2020-06-17 18:20:20 +10:00
Yonas Kolb
0964a7ed30 Revert "Add staticBinary linkType for Carthage dependency (#847)"
This reverts commit d88d385757.

# Conflicts:
#	CHANGELOG.md
#	Sources/XcodeGenKit/PBXProjGenerator.swift
#	Tests/XcodeGenKitTests/ProjectGeneratorTests.swift
2020-06-17 17:56:02 +10:00
Nikita Kukushkin
86c9812582
Allow skipping compile source build phase for bundles (#878)
* Add `.bundle` to `canSkipCompileSourcesBuildPhase`

* Fix tests

* Update fixtures

* Update CHANGELOG.md
2020-06-05 18:54:48 +10:00
Joseph Colicchio
1f95a41b85
Compile xcmappingmodel files instead of copying them (#834)
* Compile xcmappingmodel files instead of copying them

* Add test for xcmappingmodel

* Update changelog

* Fix xcmappingmodel reference to avoid folder containing xml

* Fix xcmappingmodel contents to avoid test failure

* Tweak yaml to fix compiler flag on xcmappingmodel

avoid `-Werror` added to xcmappingmodel compiler flags, which was preventing compilation
2020-06-04 15:22:33 +10:00
Joeri Djojosoeparto
7ec2f7f8e3
Feature: Ability to set executable to Ask to Launch (#871) 2020-05-29 07:53:48 -05:00
Igor Ranieri Elland
463db0616d
Added ability to name executable target in schemes Run configuration. (#869) 2020-05-28 07:50:52 -05:00
Igor Ranieri Elland
92aaebb9d5
Added ability to name the executable target in schemes. (#866)
```
schemes:
  MyScheme:
    build:
      executable: MyExecutable
      targets:
      ...
```

Co-authored-by: Igor Ranieri Elland <igor.ranieri@de.bosch.com>
2020-05-20 08:05:03 -05:00
Khaos Tian
474d8f6907
Bugfix: Ensure folder and wrapper directories are correctly set on generated project (#862)
Check for UTI type instead of hardcoded extensions.
2020-05-18 12:21:34 -05:00
Akio Yasui
2ed9a81d81
Optimize simplifying paths for faster project generation (#857) 2020-05-12 10:28:49 -05:00
Maciej Piotrowski
4d6e63e880
Adds uncluttering dumped YAML manifest from nil entries. (#858)
* Adds uncluttering dumped YAML manifest from `nil` entries.

* Uses required type of a dictionary

* Update CHANGELOG.md

Co-authored-by: Maciej Piotrowski <maciej.piotrowski@allegro.pl>
2020-05-11 20:51:01 +10:00
Jeff Lett
98275e9a06
Adding graphviz support in dump (#852)
* Adding graphviz support in dump
Added tests

* Updating graph viz to use UML formatting
Updating README
Adding Changelog entry

* Adding dependency type to graphviz display
2020-05-04 20:52:49 +10:00
Akio Yasui
f25a8955ba
Don't link transitive static carthage libraries (#853) 2020-05-02 12:18:12 -05:00
Toshihiro Suzuki
25f56acc4c
Fix linking of multiple products from the same Swift Package (#830)
* link dependency.package.products transitively

* update test

* changelog

Co-authored-by: Yonas Kolb <yonaskolb@users.noreply.github.com>
2020-05-02 16:11:50 +10:00