-
Notifications
You must be signed in to change notification settings - Fork 29
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
Pre-1.0 collection upgrade policy within a stable ansible series #70
Comments
I currently prefer 5. This keeps it relatively stable, and pushes most of the work to collection owners if they didn't manage to finish a 1.0.0 before collection versions are collected for ACD. (I also hope the list of such collections will be short..) |
Yeah, 5 is starting to feel like the right thing to me too... |
The decision today was:
|
I'll close this ticket with the PR implementing the change. |
ansible-2.10.0 shipped with all collections at either 1.0.0 or later. One of the policies for inclusion of new collections in future versions of ansible is that the collection needs to be at 1.0.0 or later. Between the two of these, the policy meant that no code changes were needed. Closing this ticket. |
Background
For ansible-2.10.z, 2.11.z, etc we're going to make releases of ansible that strive to be backwards compatible. 2.10.0 is backwards compatible with 2.10.1, 2.10.99, etc. 2.11.z can introduce backwards incompatibilities.
We're going to do this by requiring collections follow the semantic versioning specification and then we'll key off of their version number. The semver spec says that 1.0.0 will be backwards compatible with any other 1.y version... even 1.999.0 would be backwards compatible with 1.0.0. 2.0.0 would mark the collection as being backwards incompatible. So if we ship 1.0.1 in ansible-2.10.0. We'll ship upgrades to the collection that are 1.y throughout the ansible-2.10.z lifetime. But we'll never ship 2.y of the collection.
There is an ambiguity with versions before 1.0. The semver spec says:
Problem
What should be the policy for shipping updates to pre-1.0 collections? If we want 2.y to be compatible, the spec says that we cannot rely on the
0.
version numbers giving us any information about potential backwards incompatibilities.Possible policies
The text was updated successfully, but these errors were encountered: