Commit Graph

2165 Commits

Author SHA1 Message Date
Thanh Vu
92c4092596
Merge branch 'yonaskolb:master' into master 2023-10-31 20:53:08 +07:00
Thanh Vu
60c761a9ce Add unit test and example 2023-10-31 20:52:26 +07:00
Yonas Kolb
87a275fb08 update changelog 2023-10-31 22:03:00 +11:00
Yonas Kolb
1b4e697197 update changelog 2023-10-31 22:01:40 +11:00
Yonas Kolb
cf8ac6b61c Update to 2.38.0 2023-10-31 22:01:04 +11:00
Yonas Kolb
4c0b4aed22
Update CHANGELOG.md 2023-10-31 21:04:19 +11:00
Giovanni Amati
97d36fd1d2
Support for multiple deployment targets with xcode 14 (#1336)
* platformFilters on Dependecies

* platformFilters on sources

* fixed current unit tests

* renamed enum to SupportedPlatforms

* supportedPlatforms field for target

* errors

* renamed errors

* inferPlatformFiltersByPath flag

* changed priority to generate filter

* fixed parsing

* fixed init

* unit test supportedPlatforms

* unit tests for errors

* fixing build settings and unit tests

* added new settingsPresets

* new check errors and unit tests

* case insensitive match

* fixed skipping cross platform target

* json decode

* unit tests inferPlatformFiltersByPath and platformFilters for sources

* mocked files

* fixing unit tests

* first test on dependecies

* unit tests completed

* fixed unit tests

* changelog

* doc changes

* doc changes

* doc changes

* doc changes

* doc changes

* doc changes

* doc changes

* doc changes

* fixed doc

* fixed unti tests style

* fixed regex

* fixed doc

* addressing comments

* Added TestProject, moved unit tests resources in another folder

* Raising error if platform is an array

* unit test on new error

* fixed error enum

* Integrated in TestProject

* committed TestProject

* unit test error

* fixing spm deps in test project

* pushed testProject

* pushed testProject

* pushed testProject fix

* comment on isResolved property

* renameing supportedPlatforms to supportedDestinations

* renameing supportedPlatforms to supportedDestinations

* renameing test app

* checked out old file

* fixing test app

* working on auto baseSDK

* fixed deploymentTarget

* renamed errors

* fixed presets

* remamed index to priority

* small comments

* removed isResolved in target and fixed error check

* added unit tests

* fixed doc

* fixed doc

* fixed doc

* fixed doc

* fixed test app

* add visionOS and more error check and testing

* fixed supported destinations priority and tests

* fixed doc

* solved conflicts

* fixed conflicts

* renamed everything

---------

Co-authored-by: Giovanni Amati <giovanni.amati@sky.uk>
2023-10-31 20:55:38 +11:00
Soham Tembhurne
ec050cd5cb
Update CHANGELOG.md (#1407)
embeding -> embedding
2023-10-17 00:15:35 +00:00
Ahmed Khalaf
26fc38a664
Typo in ProjectSpec.md (#1405)
schems -> schemes

It ain't much, but it's honest work 😄
2023-10-02 05:49:46 +00:00
Simon Støvring
486df5da4d
Supports specifying multiple package products (#1395)
* Supports specifying multiple package products

* Adds #1395 to CHANGELOG.md

* Updates documentation

* Adds fixture

* Adds changes to pbxproj after changing fixture

* Elaborates on linking options in "Package dependency" section
2023-09-11 11:49:38 +10:00
BarredEwe
73e25e4943
Added support for Build Tool Plug-ins in AggregateTarget (#1390)
* Added support for `BuildTool Plug-ins` in AggregateTarget

* Update CHANGELOG.md
2023-09-10 21:42:47 +10:00
Thanh Vu
f28d3caa3b Update ProjectSpec.md 2023-09-07 14:44:12 +07:00
Thanh Vu
02007ae92d Allow lookup template variables from globalTemplateAttributes 2023-09-07 11:43:47 +07:00
Yonas Kolb
213f47d7d5
Update CHANGELOG.md 2023-09-03 00:02:42 +10:00
Aaron Farnham
808aa25f51
Add support for .mlpackage bundles (#1398) 2023-09-03 00:00:56 +10:00
Yonas Kolb
a0e71fe3df
Update CHANGELOG.md 2023-08-17 14:00:00 +10:00
Shaun Harrison
3a7e75f1fb
Fix issue with includes not working when no matches are found (#1337)
* Fix issue where an includes pattern without matches prevented includes from working

* Add new test to handle includes with no matches
2023-08-17 13:58:50 +10:00
Yonas Kolb
b448a6718f Update to 2.37.0 2023-08-16 23:48:44 +10:00
BarredEwe
d8d5457f48
Add support for adding build tool plugins to targets (#1374)
* Add support for adding build tool plugins to targets

* Added Plugin validation

* Added some tests

* Limited the minimum version to 5.7 Swift

* Update .gitignore

Co-authored-by: freddi(Yuki Aki) <freddi-kit@users.noreply.github.com>

* Update CHANGELOG.md

Co-authored-by: freddi(Yuki Aki) <freddi-kit@users.noreply.github.com>

* Update CHANGELOG.md

Co-authored-by: freddi(Yuki Aki) <freddi-kit@users.noreply.github.com>

* Update Docs/ProjectSpec.md

Co-authored-by: freddi(Yuki Aki) <freddi-kit@users.noreply.github.com>

* Added a fixture for testing plugins

* Update CHANGELOG.md

* Installed the release version of XcodeProj

---------

Co-authored-by: freddi(Yuki Aki) <freddi-kit@users.noreply.github.com>
2023-08-16 22:22:16 +10:00
Yonas Kolb
2ef94c9910
Update CHANGELOG.md 2023-08-16 17:43:03 +10:00
Yonas Kolb
26e817b2de Update to 2.36.1 2023-08-14 10:56:24 +10:00
Yonas Kolb
2b032561ed
remove ENABLE_MODULE_VERIFIER (#1387) 2023-08-14 10:54:37 +10:00
Yonas Kolb
145be30909 Update to 2.36.0 2023-08-13 00:23:48 +10:00
Yonas Kolb
7ea32005e2
add recommended settings for xcode 14 (#1385)
* add recommended settings for xcode 14

* changelog
2023-08-13 00:15:50 +10:00
Yonas Kolb
3a25334c74 fix package warnings 2023-08-13 00:10:05 +10:00
Yonas Kolb
5f1efd90ef
Update XcodeProj and add RuntimeIssue breakpoint (#1384)
* support RuntimeIssue breakpoint

* drop xcode 12 and 13 support

* changelog
2023-08-12 23:23:12 +10:00
kaseken
c701d3ddf7
Update Project.md (#1382)
Use true or false instead of yes or no, for boolean default values in Build Script options.
2023-08-11 15:35:19 +10:00
Antoine Piellard
a10bd4baa0
Add support to disable "Thread Performance Checker" (#1380)
* Add disableThreadPerformanceChecker scheme option

* Update changelog
2023-08-08 08:50:13 +10:00
Leonardo Oliveira
c7ae369c14
Updates project object version to support BuildIndependentTargetsInParallel setting (#1368)
* feat: updates project object version

* updates CHANGELOG.md with PR changes
2023-08-08 08:49:33 +10:00
Satsuki Hashiba
3a215ce999
Add support for visionOS (#1379)
* Add support for visionOS

* Update ProjectSpec

* Add carthageName property for .visionOS

* Update CHANGELOG.md and ProjectSpec.md

* Add visionOS yml to SettingPresets/Platforms and SettingPresets/Product_Platform

---------

Co-authored-by: Satsuki Hashiba <hashiba.satsuki@linecorp.com>
2023-08-07 22:12:34 +10:00
Liam Nichols
49a9bda992
Update CI Workflows to also test Xcode 14.3.1 (#1378)
* Update Xcode 13.0 to 13.4.1, add job for Xcode 14.3.1

* Set DEVELOPER_DIR env to simplify changing Xcode version

* Update Carthage workarounds for Xcode 14
2023-07-27 11:03:31 +10:00
Liam Nichols
98ce05105b
Don't add PBXContainerItemProxy when reusing PBXReferenceProxy (#1377)
* Reproduce issue in FixtureTests

* Don't add PBXContainerItemProxy if existing PBXReferenceProxy was reused

* Move extenral target fixture to an iOS target so that it actually compiles

* Update CHANGELOG.md
2023-07-26 22:52:43 +10:00
Oleg Barenboim
af1adfe1cd
Update README for Xcode version (#1376) 2023-07-25 11:25:04 +10:00
Yonas Kolb
a9ed3cec08
Update CHANGELOG.md 2023-07-13 21:00:16 +10:00
LouisLWang
f33d600d50
adding support for enableGPUValidationMode (#1294)
* adding support for enableGPUValidationMode

* encode enableGPUValidationMode in Scheme.Run.toJSONValue()

* ci: commit fixtures changes

* docs: Add changelog for enableGPUValidationMode

update Doc ProjectSpec.md

* docs: update ProjectSpec.md for enableGPUValidationMode default value

---------

Co-authored-by: wanglulu <louiswang@lilith.com>
2023-07-13 20:58:32 +10:00
Roman Gardukevich
372f20fe5a
Reuse ReferenceProxy references when possible (#1354)
* Reuse ReferenceProxy references when possible

* Add changelog

* Update CHANGELOG.md

---------

Co-authored-by: Yonas Kolb <yonaskolb@users.noreply.github.com>
2023-05-17 11:58:32 +10:00
Bartosz Kosiorek
9766326dcd
Display absolute path for invalidBuildScriptPath and invalidTargetConfigFile error print. (#1353)
* Display absolute path in invalidBuildScriptPath error print.

With previous implementation, the error message was not clear for end user:
  Spec validation error: Target "Project" has a script "SwiftLint" which has a path that doesn't exist "../../wrong-dir/scripts/run_swiftlint_in_xcode_wrapper.sh"

With new implementation with absolute path, it is easier to validate what is wrong with path:
  Spec validation error: Target "Project" has a script "SwiftLint" which has a path that doesn't exist "/Users/SomeUser/dev/fancy-project/wrong-dir/scripts/run_swiftlint_in_xcode_wrapper.sh"

* Display absolute path for invalidTargetConfigFile error print.

Without patch:
  2 Spec validations errors:
	- Target "MM" has invalid config file "../../xcodegen/MM/Build/xcconfig/conan_config.xcconfig" for config "Debug"
	- Target "MM" has invalid config file "../../xcodegen/MM/Build/xcconfig/conan_config.xcconfig" for config "Release"

After fix:
  2 Spec validations errors:
	- Target "MM" has invalid config file path "/Users/MyUser/dev/myproject/xcodegen/MM/Build/xcconfig/conan_config.xcconfig" for config "Release"
	- Target "MM" has invalid config file path "/Users/MyUser/dev/myproject/xcodegen/MM/Build/xcconfig/conan_config.xcconfig" for config "Debug"
2023-04-28 07:52:06 +10:00
Yonas Kolb
ee60884b13 Update to 2.35.0 2023-04-27 17:04:40 +10:00
Yonas Kolb
5cad63987e
Update ProjectSpec.md 2023-04-27 16:59:48 +10:00
Bartosz Kosiorek
10b99f1be0
Update documentation of Settings and Setting Groups (#1352)
What was changed:
- updated index,
- improve examples,
- improve formatting,
- add reference to Settings Group
- add information that Simple Map will be skipped if used with base, groups or configs
2023-04-27 16:54:58 +10:00
mat1th
8256008778
Add possiblity to add resources before the sources build phase (#1351)
* feat: Add possiblity to add resources before the sources build phase;

* feat(ios): Add change to Docs + CHANGELOG;

* fix: rename resourcesBeforeSourcesBuildPhase to putResourcesBeforeSourcesBuildPhase to make it more clear;

* Update CHANGELOG.md

---------

Co-authored-by: Yonas Kolb <yonaskolb@users.noreply.github.com>
2023-04-25 11:57:44 +10:00
Dale Myers
988afa0f5b
Sanitize the ends of folder source paths (#1341)
* Sanitize the ends of folder source paths

Setting the source: `/foo/bar` is _sometimes_ different from `/foo/bar/` even if `bar` is a folder in both cases. The result of this is that we often run into a race condition where we have two objects with the same hash but different properties. This fixes #1339 and #1131.

* Update CHANGELOG.md

* Update TargetSource.swift

* Update TargetSource.swift

* Update TargetSource.swift
2023-04-06 09:17:31 +10:00
Sara Tavares
5a34c489e1
chore(typos): fix typos (#1340) 2023-03-23 10:29:08 +11:00
Jierong Li
d1dd93aac4
Rebase #177 - Shared breakpoints support (#693)
* Resolves #173 - Shared breakpoints support

* Added breakpoints full documentation

* Invalid breakpoint just throw JSONUtilities decoding error.

* Use enumeration types instead of String for extensionIDs

* Remove a necessary line

* Remove unnecessary custom Equatable implementation

* Update CHANGELOG.md

* Ignore empty breakpoints

* Update Docs/ProjectSpec.md

Fix a typo

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

* Change some properties that should be Int to Int

* Create 2 typealiases

* Use BreakpointType where it is missing

* Remove unused Location

* Change some names

* Add Breakpoint.Scope

* Add Breakpoint.StopOnStyle

* Change the type of the raw value to String

* Remove some properties that may cause confusing

* Require filePah and line when the type is .file

* Add tests about decoding breakpoints

* Add Breakpoint.Action.ConveyanceType

* Add default value for waitUntilDone

* Add Breakpoint.Action.SoundName

* Add tests about decoding breakpoint actions

* Fix some issues in ProjectSpec.md

* Improve ProjectSpec.md

* Add missing condition

* Add breakpoints to project.yml

* Use unwarp

* Remove the Breakpoint suffix

* Refactor BreakpointType

* Refactor Breakpoint.Action

* Remove unnecessary properties

* Adjust the line wrapping style for BreakpointGenerator

* Support column breakpoints

---------

Co-authored-by: Alex Rupérez <alejandro.ruperez@intelygenz.com>
Co-authored-by: Yonas Kolb <yonaskolb@users.noreply.github.com>
2023-02-28 22:00:39 +11:00
tzxdtc10
aa7fed0f5b
Fix typo in 'addtional' (#1328)
* fix typo

* rename to included_additional.yml

* remove one

* fix typo

* Update Tests/ProjectSpecTests/SpecLoadingTests.swift

---------

Co-authored-by: Yonas Kolb <yonaskolb@users.noreply.github.com>
2023-02-24 09:54:58 +11:00
Yonas Kolb
39739b4efd ignore user data 2023-02-24 09:53:06 +11:00
Yonas Kolb
271ad593b8 Update to 2.34.0 2023-02-24 09:52:16 +11:00
Wendy Liga
43e40a9efc
Added support for scheme management (#1142)
* wip

* Added scheme management metadata properties to TargetScheme

* wip

* Added Scheme.Management for metadata

* use sharedDefault

* move generateSchemeManagement to SchemeGenerator

* revert

* update changelog

* update docs

* update test case

* remove

* remove unused file

* revert

* changed on fixtures project

* Updated ProjectSpec docs index

* User Scheme.Management also for TargetSchemes, use XCUserData

* Changelog

* Switch XcodeProj back tuist/XcodeProj - 8.9.0

* Reindent TOC Docs/ProjectSpec.md

* Revert swift tools version

---------

Co-authored-by: Tieme van Veen <tiemevanveen@hotmail.com>
2023-02-24 09:49:57 +11:00
Marcin Chojnacki
80e317206b
Remove SPM configurations warning from ProjectSpec (#1329)
ProjectSpec states that Swift Packages don't work in projects with configurations other than `Debug` and `Release`. It provides a link to Swift bugtracker to issue marked as duplicate. Original issue that it points to is closed and fixed since 2020 with Xcode 12.

Let's remove misleading note from ProjectSpec.

https://github.com/apple/swift-package-manager/issues/4674
2023-02-18 20:32:16 +11:00
Hesham Salman
366981ba2e
Support for swiftcrossimport folders (#1317)
* Naive support for swiftcrossimport

* Update SourceGenerator.swift

* Add changelog entry

* Update CHANGELOG.md

* Add test fixture

* Check-in generated diffs
2023-01-25 11:36:25 +11:00