BuildSettingExtractor
BuildSettingExtractor copied to clipboard
Consider choosing which instance of Xcode in file system to use for setting info
Currently the version of Xcode at /Applications/Xcode is searched for build setting info strings. Consider allowing the user to choose another version of Xcode instead, or possibly looking at multiple versions automatically to find missing info values.
Thinking that the preference pane would look something like:
[radio button] Use /Applications/Xcode [checkbox] Prefer later beta version of Xcode if present
[radio button] Use Xcode at location path/to/Xcode [Button: Select Xcode…]
By default we will always try to use the latest Xcode, GM or beta found in /Applications. (Will need to check the versions to make sure we are not using an old beta.)
The current implementation is not a preference. It will look for Xcode and Xcode-beta in /Applications and prefer Xcode-beta if its version is later than the release version of Xcode.
Possibly just two choices: [radio button] Automatic [radio button] Use Xcode at location path/to/Xcode [Button: Select Xcode…]
In today's Xcode build settings workshop, had a question from someone who does not keep Xcode in the standard locations.
The two use cases that are currently not handled:
- Xcode or Xcode-beta in an unexpected location
- User wants to specify a particular instance of Xcode.app is used
For Case 1, Launch Services can find other versions of Xcode or Xcode-beta. If multiples are found, the latest version should be able to be automatically used.
If no version of Xcode is found, the user should be alerted if build setting info is turned on in Preferences.
For Case 2, it seems like a very rare use case, probably not warranting a preference. (So far, have not received any requests for it.) It may make sense as a user default that can be set from the command line.
Hey @dempseyatgithub, used this application tool today and it was excellent 👏 I did run into this problem though where I label my Xcode versions based on the version (as I usually have many versions installed).
I managed to get past that by temporarily renaming one, but would be awesome if there was more flexibility.
One idea which links to this, and I don't know if you've explored it already, but maybe it could default to whatever version of Xcode is determined by $ xcode-select -p? Just an idea 😄 Awesome work!
One idea which links to this, and I don't know if you've explored it already, but maybe it could default to whatever version of Xcode is determined by
$ xcode-select -p? Just an idea 😄 Awesome work!
I'm glad you found the tool useful!
I had not considered using xcode-select -p before. That is a great suggestion. I'll think about how that would fit in with what I already have implemented.
Currently, the tool will use the latest beta if present in the standard location, since it theoretically has the most up-to-date info about each build setting. So, I could imagine using xcode-select as a fallback, which would also handle your case. But there's also something appealing about just using whichever version the user currently has selected.
Thank you for the suggestion and feedback!