-
Notifications
You must be signed in to change notification settings - Fork 50
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Independent release cycle #21
Comments
Hey, As we moved Concourse into a direction where being part of a BOSH release is just a detail in the way that we distribute it, I personally feel that breaking from the version of Concourse is ideal. Some rationale below. Wdyt? thx! Not being tied to Concourse's release versionE.g.: Having the version of the release totally independent of Concourse itself, we can have the semantics of semver applied to the public interface that the package exposes, allowing one to know, e.g., if by upgrading, the new packaging will require changes or not.
If we think the indirection required to determine Concourse's version is a problem, we can solve that by including metadata that makes that more obvious:
IMO being separate from Concourse's version is what best fits applying This type of versioning is followed by many releases: Keeping the Concourse version as the BOSH release versionProposal.: For those concerned about which version of Concourse is contained within "the package" (the release), having the indication of the internal software's version in the version of the packaging helps.
Pre-release indicator ( A possible problem here is that for build metadata, there's no precedence when comparing one version against another.
Example releases are those where the source code is tightly coupled with the definition of the release (e.g., what Concourse what before): |
@cirocosta Thanks, that's a great summary. I prefer the first option as it sounds more semver-compliant and allows us to express breaking changes that we make to the release itself. Versions like One interesting case to consider is when Concourse does a major bump, that does not intrinsically imply a major bump of the BOSH release. This makes sense to me because what we're versioning here is the packaging and manifest structure, not Concourse itself. You could potentially go from v5.3.0 to v6.0.0 without changing your manifest at all. |
We should give this release its own release cycle and its own release notes; cramming them into the concourse-ci.org release notes feels wrong, and depending on new versions of Concourse feels pretty limiting when it comes to BOSH-specific bugs like #18 and #19.
We'll need to come up with a versioning scheme that isn't coupled to Concourse versions, and be careful to note which Concourse version is embedded.
The text was updated successfully, but these errors were encountered: