Add ability to initialize scheme without a blueprint identifier#612
Conversation
|
Is anyone available to take a look at this? (cc: @pepibumur) |
kwridan
left a comment
There was a problem hiding this comment.
Thanks for submitting this @daltonclaybrook
The changes look good, I have some small observations.
swift package generate-xcodeprojdoes indeed generate schemes without the blueprint identifier, though Xcode overwrites those schemes to include them when viewing them in the scheme editor. At least with this change, those generated projects and schemes can be parsed correctly.- This is a slightly breaking change and will need to mark it such in the
CHANGELOG.mdor perhaps it may need to be part of a major release - @pepibumur thoughts?- Example: XcodeGen relies on the public
blueprintIdentifierchange here
- Example: XcodeGen relies on the public
|
Any action items on my end to get this moving? (cc: @kwridan @pepibumur) |
pepicrft
left a comment
There was a problem hiding this comment.
Hey @daltonclaybrook 👋🏼
I propose that we update the CHANGELOG.md with your changes, and flag them as breaking. I'll release a major version of XcodeProj once this is merged.
|
Thanks @pepibumur! will submit a fix for tuist/tuist#2991 first thing tomorrow as it's similar in breaking nature which can be bundled in the same major release. |
|
@daltonclaybrook mind rebase / merging latest main with an updated change log? |
|
@kwridan yep, I'll be able to take care of that later this morning. |
22eb13e to
dcb5e13
Compare
Resolves #509
Short description 📝
This PR fixes an issue where some schemes cannot be deserialized because a buildable reference does not contain a blueprint identifier.
Solution 📦
The solution is to make the
blueprintfield optional onBuildableReference. The other option I considered was adding a new case toBlueprintcalled.none, but I felt simply making the property optional would be more ergonomic.