mneorr/Alcatraz — pull request #63 by kattrali (2013-07-10 12:27:53+00:00)
Title: Support Checking Compatibility of Packages based on Xcode Version

### Summary

This is a small change with a lot of far reaching effects. :smile: The immediate effect is that nothing will happen, but once the XC5 branch is production ready, we can support users having Alcatraz for multiple versions of Xcode. We will need to require an `xcode_version` property on plugin packages, and have it optionally available to other package types, in case of compatibility concerns. Changing this functionality now gives us time to have the change propagate to users before package versioning becomes an issue.

### Changes

- Add an `xcodeVersion` property to packages, translated from `xcode_version` in package JSON. This will validate that the package is compatible with the currently running version of Xcode, otherwise exclude it from the package list. If the value is nil, (like all packages at the moment, until `xcode_versioning` branch is merged into `alcatraz-packages`) then compatibility is assumed. `xcode_version` property can be formatted like `"4"` or `"4.6"`.

### Concerns

- Each plugin determines its own installation directory, and if a user is switching between XC versions, the Alcatraz update process could overwrite one version's plugin with the other. (e.g. XVim for Xcode4 being overwritten by XVim for Xcode5, if entries for both versions exist in `alcatraz-packages`)

Thoughts?