Commit Graph
416 Commits
Author SHA1 Message Date
freddi 4ed02a4432 update test 2021-05-14 05:06:07 +09:00
freddi 70c0e0d1ea add test 2021-05-06 22:44:03 +09:00
freddi(Yuki Aki)andGitHub 4233cc8578 Support runPostActionsOnFailure on build scheme (#1075)
* supports runPostActionsOnFailure on build scheme

* updates test for runPostActionsOnFailure

update runPostActionsOnFailure tests

* update Docs for runPostActionsOnFailure

* update change log

* Update CHANGELOG.md

* Update CHANGELOG.md
2021-05-06 12:54:33 +10:00
Yonas KolbandGitHub 8a0615e883 Fix config variant lookup (#1070)
* fix config lookup

* update changelog
2021-05-06 00:07:38 +10:00
dfe7f28bcb Scheme config variants wrong assignment for similar config names (#976)
* Failing test for #975

* fixes #975

* chore: refactor to properly select a config from a collection with specific variant and config type
chore: updated changelog

* fix: lowercase compare on config variant names

* fix CI

* fix missing scheme for CI

* fix schemes for CI

* Update CHANGELOG.md

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

* Update Sources/ProjectSpec/Config.swift

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

* - fix compilation issue
- duplicated test for config variant name (uppercase/lowercase)

Co-authored-by: Yonas Kolb <yonaskolb@users.noreply.github.com>
2021-05-01 15:50:39 +10:00
Elliott WilliamsandGitHub fb559ba153 CarthageDependencyResolver: ignore order-only dependencies (#1041)
* CarthageDependencyResolver: ignore target-only dependencies

* Update fixtures for expected changed in watchOS apps' FRAMEWORK_SEARCH_PATHS

* Update CHANGELOG.md
2021-05-01 15:39:55 +10:00
209afcc898 Allowing override LastUpgradeCheck and LastUpgradeVersion (#1013)
* Allowing the property LastUpgradeCheck and LastUpgradeVersion to be overrided

* Updating changelod and project spec

* Updating changelog

Co-authored-by: André Lucas Ota <andrel.ota@PPM-SPO-6835.local>
Co-authored-by: Yonas Kolb <yonaskolb@users.noreply.github.com>
2021-04-08 22:20:10 +10:00
7b8f5a117f Change FRAMEWORK_SEARCH_PATH for xcframeworks (#1015)
* Change FRAMEWORK_SEARCH_PATH for xcframeworks

* Apply suggestions from code review

Co-authored-by: Yonas Kolb <yonaskolb@users.noreply.github.com>
2021-04-08 22:20:01 +10:00
Liam NicholsandGitHub 1b57ba5c75 Improve INFOPLIST_FILE handling to only omit used Info.plist's from Copy Bundle Resources Build Phase (#1027)
* Update TestProject Fixture to include GoogleService-Info.plist resource bsaed on 2.18.0 generator

* Update TestProject fixture to include an Info.plist file named 'App-Info.plist' to simulate scenario in #945

* Resolve INFOPLIST_FILE values upfront ahead of resolving all source files for a target

* fixup! Resolve INFOPLIST_FILE values upfront ahead of resolving all source files for a target

* fixup! Resolve INFOPLIST_FILE values upfront ahead of resolving all source files for a target

* Refactor SourceGenerator to remove some redundant arguments on internal methods when generating source files in a target

* Update SourceGenerator to accept '[Path: BuildPhaseSpec]' of preferred build phases in order to prioritise over 'default' value. Remove explicit Info.plist check from SourceGenerator. Update PBXProjGenerator to inject hash of build phases for resolved INFOPLIST_FILE values. Update SourceGeneratorTests to comply with change where only the FIRST Info.plist is excluded from copy bundle resources build phase, additionally resolve absolute path

* Ensure project.basePath is always absolute when resolving Info.plist path relative to project

* Add test coverage in SourceGeneratorTests.swift

* Update CHANGELOG.md

* Reword CHANGELOG.md
2021-04-08 15:38:21 +10:00
cf88681749 Support macroExpansion on run scheme (#1036)
* allow to specify macroExpansion on schemes

* fix json parsing on macroExpansion

* set macroExpansion only launch scheme

* add test for macroExpansion

* add macroExpansion description

* add macroExpansion to Change Log

* Update CHANGELOG.md

* add App_Extension scheme for macroExpansion

* change example of macroExpansion in Fixtures project

* fix to keep back to keep back compatibility as possible

* Apply suggestions from code review

Co-authored-by: Yonas Kolb <yonaskolb@users.noreply.github.com>
2021-03-21 20:02:01 +11:00
freddi(Yuki Aki)andGitHub f550d01678 Support askForAppToLaunch on profile scheme (#1035)
* add askForAppToLaunch to profile scheme

* add test

* add description for askForAppToLaunch

* add Change Log for askForAppToLaunch

* Update Docs/ProjectSpec.md
2021-03-17 18:10:04 +11:00
Joseph ColicchioandGitHub 05ea968f70 Bugfix/StoreKitConfiguration BuildPhase (#1026)
* Copy storekit to bundle resources by default

* Fix tests

* Update changelog
2021-02-24 08:33:54 +11:00
ae186edb68 Bugfix/SimulateLocation Fix (#973)
* Preemptively fix compilation for latest XcodeProj

* Add StoreKitConfiguration to scheme and generator

* Add scheme generator test

* Fix and add tests

* Support StoreKitConfiguration in TargetScheme

* Set default type of `storekit` to `.none`

* Upgrade XcodeProj to 7.15.0

* Create struct for StoreKitConfiguration

* Update tests

* Add storekit configuration to test project

* Update changelog

* Update project spec

* Fix xcodeprojs

* Fix projects

* Capitalize String

* Update CHANGELOG.md

Co-authored-by: Gemma Barlow <gemmakbarlow@gmail.com>

* Refactor StoreKitConfiguration init from json

* Change `forWorkspace` to `pathPrefix` and add tests

* Replace StoreKitConfiguration struct with string + option

* Fix tests

* Update project spec

* Fixup changelog

* Add `See Options` to `storeKitConfiguration` in project spec

* Make `simulateLocation` respect `schemePathPrefix`

* Update docs

Co-authored-by: Gemma Barlow <gemmakbarlow@gmail.com>
2021-02-16 09:35:47 +11:00
2c600a7c64 Add Discovered Dependency File (#1012)
* Upgrade XCodeProj to 7.14.0

* Bump to XcodeProj to fork

* Add script discoveredDependencyFile

* Align cfbundle test

* Add changelog mock

* Update Documentation

* Update SPM manifest

* Change property name

* Verify defult dependency file to nil

* Add JSON encodable test

* Add PR number

Co-authored-by: Fernanda Geraissate <fernandag@spotify.com>
2021-02-15 12:43:41 +11:00
50aedc4511 Feature/Store Kit Configuration (#964)
* Preemptively fix compilation for latest XcodeProj

* Add StoreKitConfiguration to scheme and generator

* Add scheme generator test

* Fix and add tests

* Support StoreKitConfiguration in TargetScheme

* Set default type of `storekit` to `.none`

* Upgrade XcodeProj to 7.15.0

* Create struct for StoreKitConfiguration

* Update tests

* Add storekit configuration to test project

* Update changelog

* Update project spec

* Fix xcodeprojs

* Fix projects

* Capitalize String

* Update CHANGELOG.md

Co-authored-by: Gemma Barlow <gemmakbarlow@gmail.com>

* Refactor StoreKitConfiguration init from json

* Change `forWorkspace` to `pathPrefix` and add tests

* Replace StoreKitConfiguration struct with string + option

* Fix tests

* Update project spec

* Fixup changelog

* Add `See Options` to `storeKitConfiguration` in project spec

Co-authored-by: Gemma Barlow <gemmakbarlow@gmail.com>
2021-02-15 11:58:16 +11:00
Max RabiciucandGitHub 6b7ab91440 Fix issue where frameworks with MACH_O_TYPE:staticlib were being embedded (#1003) 2021-01-15 09:51:38 +11:00
Roman PodymovandGitHub 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 VandermynandGitHub 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
Samuel GiddinsandGitHub c8b24acbdd Allow creating intermediary groups outside of the project directory (#892) 2020-09-02 14:45:27 -07:00
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
Kiran ThoratandGitHub 691ca93677 Fixes for embedding SDK dependencies. (#922) 2020-08-06 09:13:13 +10:00
Yonas KolbandGitHub 20a99e5018 Add FileTypes for cross project file options (#914)
* move BuildPhase

* add fileTypes

* update changelog
2020-08-04 09:14:32 +10:00
Jared SorgeandGitHub 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
Yonas Kolb 7da953a488 swift format 2020-06-17 18:12:34 +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 KukushkinandGitHub 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 ColicchioandGitHub 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 DjojosoepartoandGitHub 7ec2f7f8e3 Feature: Ability to set executable to Ask to Launch (#871) 2020-05-29 07:53:48 -05:00
Jeff LettandGitHub 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 YasuiandGitHub f25a8955ba Don't link transitive static carthage libraries (#853) 2020-05-02 12:18:12 -05:00
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
Daiki MatsudateandGitHub d88d385757 Add staticBinary linkType for Carthage dependency (#847) 2020-05-01 12:54:12 -05:00
Jeff LettandGitHub aaae84f883 Feature/catch xcode test failures (#851)
* Adding pipefail to CI tests so xcpretty doesn't eat test failures

* Resolving test issues
2020-04-29 08:34:25 -05:00
0ad02b7e26 Add ability to set an order of groups (#613)
Co-authored-by: Beniamin Sarkisyan <bsarkisyan@projectx019.com>
2020-04-28 10:32:10 -05:00
Sam KirchmeierandGitHub aeb65969d4 Automatically include bundles in the Copy Bundle Resources build phase (#838) 2020-04-22 07:59:43 -05:00
Ian LeitchandGitHub 4ae08453c3 Fix handling of SWIFT_INSTALL_OBJC_HEADER when its value is YES/NO. (#827)
* Fix handling of SWIFT_INSTALL_OBJC_HEADER when its value is YES/NO.

* Update CHANGELOG.md

* Address PR feedback.
2020-04-15 10:55:56 +10:00
Brentley JonesandGitHub e44dcd3948 Set scheme actions to build step for TargetScheme (#823)
Adjusts the preActions and postActions of a TargetScheme to only be applied applied to the `build` step.
2020-04-13 23:30:46 +10:00
Fumito NakazawaandGitHub 18fae50c86 Fix to prevent duplicate addition of carthage static frameworks (#829)
* Check carthageLinkType is static

* Update changelog
2020-04-13 21:44:14 +10:00
AsifandGitHub 400c19ee9a Bugfix: Consider folders with dot in it when generating projects (#826)
* Bug fix in SourceGenerator

Folders which would have a dot in it, would be added to Copy Bundle Resources even though it contained swift files. This commit, updates the if checks to check if the extension is not of type lproj or xcassets or bundle. This would let Xcodegen handle paths with dots in it

* Refactor SourceGenerator.swift getGroupSources function

* Add FolderWithDot2.0 to TestProject/App_iOS

* Update TestProject fixture with SwiftFileInDotPath and FolderWithDot2.0 changes

* Update test to assert bundles are included in resources

* Remove intentDefinition from whitelistedDirectoryExtensions because it's not a directory, it's always a file so the check is not required
2020-04-09 07:47:54 -05:00
Andrés Cecilia LuqueandGitHub 7afcf1f5f7 Fixed issue when linking and embeding static frameworks: they should be linked and NOT embed (#820) 2020-04-07 10:14:42 -05:00
Sebastian CelisandGitHub 0328fa03e7 Add improved support for simple iOS sticker packs (#824)
* Allow messages applications to skip the compile sources phase

By default, simple iOS sticker packs created in Xcode do not include
a compile sources phase. This change will allow messages applications
with an empty list of sources to skip that phase entirely.

* Add support for launchAutomaticallySubstyle in run schemes

This is especially important for simple iOS sticker packs that require
this run scheme setting to be set to 2 in order to run the scheme
properly.
2020-04-06 13:37:37 -05:00
Dalton ClaybrookandGitHub 039f6c31e7 Use remote-runnable launch actions for Apple Watch schemes (#798)
* Add support for using remote runnables with an Apple Watch scheme
2020-03-26 08:14:46 -05:00
Yonas KolbandGitHub 15559eb651 Merge pull request #805 from kateinoigakukun/katei/support-SWIFT_INSTALL_OBJC_HEADER
Avoid copying ObjC interface header when SWIFT_INSTALL_OBJC_HEADER=false
2020-03-25 11:30:05 +11:00
Yuta SaitoandGitHub b7d658157e Merge branch 'master' into katei/support-SWIFT_INSTALL_OBJC_HEADER 2020-03-20 11:50:05 +09:00
freddi 550df76722 Make SwiftPackage itself as enum 2020-03-19 23:29:46 +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
8dcfd07bd5 Update Tests/XcodeGenKitTests/ProjectGeneratorTests.swift
Co-Authored-By: Yonas Kolb <yonaskolb@users.noreply.github.com>
2020-03-18 17:13:50 +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 80fdc18b25 Updated Test 2020-03-05 20:55:34 +09:00