-
Notifications
You must be signed in to change notification settings - Fork 1.8k
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
Reduce ambiguity in beta backwards compatibility policy #2790
Comments
Yes, as you said, the "You will be given at least 9 months to migrate before a backward incompatible change is made." is on a given API version, so if you release a If we need to make it more explicit on the doc, let's do it 😉 |
If that's the case I think the table at https://github.com/tektoncd/pipeline/blob/master/docs/deprecations.md#deprecation-table is a bit misleading - the question isnt really about the earliest date the field could be removed (which had been my understanding before this discussion!) but it's about when we'd stop supporting v1beta1 period, which sounds like it would be at a minimum 9 months after releasing v1beta2. I suggest then that we remove the dates column from that table and also that we start talking about when we want to look at v1beta2: we could pick a target now, or we could review the list of deprecations every couple months and decide. |
So to clarify, here's my understanding: The # of months applies to backwards incompatible changes. These can come in (at least) two flavors:
Is this correct? |
@dlorenc yes |
In discussion around tektoncd#2697, we realized the existing API compatiblity policy is a little unclear, leading to confusion. We discussed and clarified the intentions of this policy in tektoncd#2790. This change adds an example to the policy, and tweaks the deprecations table to make a bit more sense. Fixes tektoncd#2790
In discussion around #2697, we realized the existing API compatiblity policy is a little unclear, leading to confusion. We discussed and clarified the intentions of this policy in #2790. This change adds an example to the policy, and tweaks the deprecations table to make a bit more sense. Fixes #2790
In #2697 @dlorenc pointed out that our backwards compatibility policy (https://github.com/tektoncd/pipeline/blob/master/api_compatibility_policy.md) is a bit vague:
Our policy currently says:
I understood this to mean that we would need to wait at least 9 months before creating a release that included this as a backwards incompatible change, e.g. introducing a deprecation notice in July 2020 would mean that there could be no release (even v1beta2) that included the change as backwards incompatible until Apr 2021
However we also are trying to follow the kubernetes policy (https://kubernetes.io/docs/reference/using-api/deprecation-policy/) which says:
This seems to imply that according to our policy, we could create v1beta2 tomorrow, including backwards incompatible changes, and that would be totally fine, as long as we continue to support v1beta1 for at least 9 months.
I want to check how other folks understand this and maybe update our docs to be a bit more clear.
The text was updated successfully, but these errors were encountered: