* 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>
* 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
* 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
* 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"
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
* 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>
* 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
* 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>
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
* Added test for when includes contain relative paths with the same name.
* Updated mergedDictionary to handle includes with the same file path.
* Removed the need to multiple places to pass in cachedSpecFiles.
* Converts the projectRoot into a absolute path before loading a project.
* Updated changelog.