* Stabilize sorting of groups with duplicate names/paths
For example, previously a group with (name: nil, path: "Sources") would be considered equal to (name: "Sources", path: "../Sources"), even though they are distinct groups.
* Remove Comparable conformance from PBXFileElement
...as it isn't compatible with its Equatable conformance.
Renamed localizedStandardCompare to reflect the fact that PBXFileElement no longer has an inherent order.
* Update changelog
* 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>
When targeting a file, a folder should not be created for its directory,
only the file should appear in the specified custom group.
Moreover, if the custom groups contains actual filesystem folders, they
should map to these.
PR #624 introduced a bug with operator priorities discarding false link settings
for dependencies when the target is an executable and the dependency a static
library. This PR fixes that.
Resolves#695
Previously, macOS unit test targets would appear to have no test host.
By manually setting the test host in Xcode on the fixture project, I discovered that macOS test hosts require an additional `Contents/MacOS/` path component before the product name.
We can manually detect the platform when setting the test host and as such generate the host correctly for macOS unit test targets.