Commit Graph

298 Commits

Author SHA1 Message Date
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
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
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
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
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
20a99e5018
Add FileTypes for cross project file options (#914)
* move BuildPhase

* add fileTypes

* update changelog
2020-08-04 09:14:32 +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
7da953a488 swift format 2020-06-17 18:12:34 +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
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
f25a8955ba
Don't link transitive static carthage libraries (#853) 2020-05-02 12:18:12 -05:00
Akio Yasui
f3d2d09cd6
Don't deduplicate files in include with different paths but a same name (#849)
* Distinguish included files by their full path

* Add test with same-name includes

* Update CHANGELOG
2020-04-29 10:20:28 +10:00
Ian Leitch
f010771a30
Generate correct PBXTargetDependency for external targets. (#843) 2020-04-23 12:25:25 -05:00
Sam Kirchmeier
aeb65969d4
Automatically include bundles in the Copy Bundle Resources build phase (#838) 2020-04-22 07:59:43 -05:00
Ian Leitch
7ff577911d
Prefix static library target filenames with 'lib' to match Xcode. (#831)
* Prefix static library target filenames with 'lib' to match Xcode.

Given a target named 'MyTarget', Xcode automatically prefixes the filename with 'lib', resulting in the filename 'libMyTarget.a'.

* Update CHANGELOG.md

Co-authored-by: Yonas Kolb <yonaskolb@users.noreply.github.com>
2020-04-13 21:49:17 +10:00
Asif
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
Sebastian Celis
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
Yonas Kolb
5106f5052e complete XcodeProj 7.10.0 upgrade 2020-04-03 10:32:22 +11:00
Dalton Claybrook
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
freddi
5eb4c33197 Merge branch 'support-local-sp' into support-local-sp-with-packages 2020-03-18 20:50:23 +09:00
freddi(Yuki Aki)
da930999c7
Merge branch 'master' into support-local-sp 2020-03-18 16:15:55 +09:00
ionutivan
2f0c5ea7a4 change test fixtures 2020-03-17 18:36:51 +01:00
freddi
80f95b598a Changed local package format of SPM project in Fixtures 2020-03-05 23:37:59 +09:00
freddi
57c4325a3d Updated project.yml in SPM Test Project in Fixtures 2020-03-05 22:22:32 +09:00
ionutivan
40902fb422 set stopOnEveryMainThreadCheckerIssue true for App_iOS_Tests and App_iOS_UITests 2020-03-05 12:59:38 +01:00
freddi
fd267bf503 Fixed code making absolutePath at creating local package 2020-03-05 19:46:26 +09:00
freddi
7a0bd7c13c Improved PBXFileReference name at localPackages 2020-03-05 19:04:55 +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
364aa7db12 add integration test by modifying the yaml file 2020-03-04 17:24:27 +01: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
feab78724f Added changelog entry and updated test fixtures. 2020-02-26 12:38:07 +01:00
Ken Tominaga
930d4cb27b Update Fixtures 2020-02-24 16:57:47 -08: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
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
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
Yuta Saito
2f312361bc Merge remote-tracking branch 'origin/master' into katei/resolve-proj-ref-relative 2020-01-06 20:54:05 +09:00