* Fixed adding Info.plists with custom names to Copy Bundle Resources build phase
- Extended check for Info.plist, because they usually named not just "Info.plist", but "<TargetName>-Info.plist"
* Update CHANGELOG.md
* Update CHANGELOG.md
Co-authored-by: Yonas Kolb <yonaskolb@users.noreply.github.com>
* Bump XcodeProj and Spectre
* Add LinuxMain.swift
* Linux test fixups
* Add CI job for ubuntu-latest
* Use URLs in glob logic to avoid Linux/Mac foundation inconsistencies
* fatalError when --enable-test-discovery is not used
* Update fixtures
They changed because of a bugfix in XcodeProj: https://github.com/tuist/XcodeProj/pull/563
* Update CHANGELOG.md
* 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
* Update PBXProjGenerator to include 'Base' developmentRegion and file system derived knownRegions in the output knownRegions
* Update CHANGELOG.md
* Run tests to update fixtures
* 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
* 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>
* 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>
It's pretty tricky to find out how to fix it otherwise. Hitting this
often when using XcodeGen with XCHammer for Bazel Xcode projects.
XCHammer simply pulls in transitive targets, but users can filter out a
subset of targets based on paths. Both XCHammer and XcodeGen Yaml give
users flexibility for specify what targets are in their Xcode project,
so it's useful to give them a better validation error if they create
one.
* 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
* 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
When a scheme only contains a test target, and you want it to build when "Building for Run", you don't want the test target to be set as the launch action. This fixes that.
Co-authored-by: Yonas Kolb <yonaskolb@users.noreply.github.com>
* 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