Skip to content
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

Require Transition from Beta #1635

Closed
deads2k opened this issue Mar 26, 2020 · 21 comments
Closed

Require Transition from Beta #1635

deads2k opened this issue Mar 26, 2020 · 21 comments
Assignees
Labels
lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. sig/api-machinery Categorizes an issue or PR as relevant to SIG API Machinery. sig/architecture Categorizes an issue or PR as relevant to SIG Architecture. stage/stable Denotes an issue tracking an enhancement targeted for Stable/GA status tracked/no Denotes an enhancement issue is NOT actively being tracked by the Release Team
Milestone

Comments

@deads2k
Copy link
Contributor

deads2k commented Mar 26, 2020

Require Transition from Beta

  1. Tags indicating when an API was introduced in beta APIs are now required: // +k8s:prerelease-lifecycle-gen:introduced=1.8. The deprecation (three releases later) and the removal (three releases after that) are automatically created in generated code to reduce toil.
  2. The warning KEP will increase client-side visibility: Warning mechanism for use of deprecated APIs #1693
  3. We will automatically stop serving removed code levels: stop serving deleted APIs kubernetes#90983. This particular PR can be delayed until 1.20 because there are no versions to stop serving in 1.19.
@k8s-ci-robot k8s-ci-robot added the needs-sig Indicates an issue or PR lacks a `sig/foo` label and requires one. label Mar 26, 2020
@deads2k deads2k added the sig/architecture Categorizes an issue or PR as relevant to SIG Architecture. label Mar 26, 2020
@k8s-ci-robot k8s-ci-robot removed the needs-sig Indicates an issue or PR lacks a `sig/foo` label and requires one. label Mar 26, 2020
@johnbelamaric
Copy link
Member

/assign @deads2k
/milestone v1.19
/stage stable

I am updating the enhancements team tracking sheet. David, just to confirm you still plan on getting this in for 1.19?

@k8s-ci-robot k8s-ci-robot added the stage/stable Denotes an issue tracking an enhancement targeted for Stable/GA status label May 4, 2020
@k8s-ci-robot k8s-ci-robot added this to the v1.19 milestone May 4, 2020
@johnbelamaric johnbelamaric added the tracked/yes Denotes an enhancement issue is actively being tracked by the Release Team label May 4, 2020
@johnbelamaric
Copy link
Member

/sig api-machinery

@k8s-ci-robot k8s-ci-robot added the sig/api-machinery Categorizes an issue or PR as relevant to SIG API Machinery. label May 4, 2020
@sftim
Copy link
Contributor

sftim commented May 5, 2020

If this merges lands, there's a nice-to-have enhancement I recommend to the Hugo shortcode feature-state on the website: automatically track deprecation and removal information.

@zestrells
Copy link

Hi @deads2k - My name is Zachary, 1.19 Docs shadow. Is this enhancement work planned for 1.19 and does it require any new docs (or modifications to existing docs)? If not, can you please update the 1.19 Enhancement Tracker Sheet, or let me know, I can do it for you :)
If docs are required, just a friendly reminder that we are looking for a PR against k/website (branch dev-1.19) due by Friday, June 12, it can just be a placeholder PR at this time. Let me know if you have any questions!

@sftim
Copy link
Contributor

sftim commented May 26, 2020

Oh, by the way, I started drafting a blog post about this.

@zestrells
Copy link

Hi @deads2k - Just a reminder that docs placeholder PR against dev-1.19 is due by June 12th. Does this enhancement require any changes to docs? If so, can you update here with a link to the PR once you have it in place? If not, please update the same, so that the tracking sheet can be updated accordingly. Thanks!

@sftim
Copy link
Contributor

sftim commented Jun 8, 2020

(I'd expect to see a PR updating https://kubernetes.io/docs/reference/using-api/deprecation-policy/ and possibly also https://kubernetes.io/docs/concepts/overview/kubernetes-api/#api-versioning)

@johnbelamaric
Copy link
Member

This is a policy about how long something can be in the system before being deprecated. It actually doesn't change anything about the deprecation policy described in that document. I don't think this needs user-facing documentation. It's more of a policy for the development process.

That is, everything in the versioning and deprecation policy documents stay the same. What changes is how the decision is made as to when to deprecate an API that is languishing. Previously, it was arbitrary; now, there is a policy. When it actually is deprecated, those documents kick in, just as they are today.

Functionally, I believe @deads2k is adding some metadata to the APIs to provide a "deprecated as of release X" indicator. This would then be used by #1693 which absolutely needs docs.

@kikisdeliveryservice
Copy link
Member

Hi @deads2k

To follow-up on the email sent to k-dev on Monday, I wanted to let you know that Code Freeze has been extended to Thursday, July 9th. You can see the revised schedule here: https://github.com/kubernetes/sig-release/tree/master/releases/release-1.19
We expect all PRs to be merged by that time. Please let me know if you have any questions. 😄

Best,

Kirsten

@sftim
Copy link
Contributor

sftim commented Jun 17, 2020

I don't see a need for user facing documentation about the requirement either.
I would like to blog about the change though to let people know that assumptions about “beta” APIs might no longer hold.

  • I mean, on the main Kubernetes blog.

@palnabarun
Copy link
Member

Hi @deads2k 👋, I see that kubernetes/kubernetes#90983 was filed in relation to this enhancement. However, there has been no progress on that PR since some time. Do you think that the PR will be merged by the Code Freeze on Thursday, July 9th?

Thank you. 🙂


Code Freeze begins on Thursday, July 9th EOD PST

@deads2k
Copy link
Contributor Author

deads2k commented Jul 6, 2020

kubernetes/kubernetes#90983. This particular PR can be delayed until 1.20 because there are no versions to stop serving in 1.19.

The rest of the required pieces have landed and the deprecation clocks have all been set. This in combination with the warning KEP will clearly notify users of the risk.

@sftim
Copy link
Contributor

sftim commented Jul 6, 2020

@deads2k I opened a WIP pull request to announce the new policy in a blog post: kubernetes/website#21274

It sounds like this KEP is looking likely to move forward. If that is right let me know and I'll put more work into the announcement / look for people to collaborate on details.

Update: I revised it.

@kikisdeliveryservice
Copy link
Member

Hi @deads2k

Enhancements Lead here. Is there any further work intended for this in 1.20? I am unclear as to whether this is stable yet or not. Could you please clarify the state?

Thanks!
Kirsten

@kikisdeliveryservice kikisdeliveryservice removed this from the v1.19 milestone Sep 11, 2020
@kikisdeliveryservice kikisdeliveryservice removed the tracked/yes Denotes an enhancement issue is actively being tracked by the Release Team label Sep 11, 2020
@kikisdeliveryservice
Copy link
Member

Hi @deads2k @johnbelamaric

Will this be done in 1.20? Enhancements Freeze is October 6th, so please let me know.

Given the context, this doesn't seem like it needs test plans or graduation criteria, correct? We'd just need to track this and have some sort of docs /comms update?

Thanks,
Kirsten

@sftim
Copy link
Contributor

sftim commented Sep 29, 2020

Would be good to see docs updates around the deprecation policy - see #1635 (comment)

@sftim
Copy link
Contributor

sftim commented Sep 29, 2020

Maybe on https://kubernetes.dev/ now that's a thing?

@kikisdeliveryservice kikisdeliveryservice added the tracked/no Denotes an enhancement issue is NOT actively being tracked by the Release Team label Oct 7, 2020
@fejta-bot
Copy link

Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually close.

If this issue is safe to close now please do so with /close.

Send feedback to sig-testing, kubernetes/test-infra and/or fejta.
/lifecycle stale

@k8s-ci-robot k8s-ci-robot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Jan 5, 2021
@deads2k deads2k added this to the v1.19 milestone Jan 19, 2021
@deads2k
Copy link
Contributor Author

deads2k commented Jan 19, 2021

This was implemented back in 1.19 and has not changed since. The automatic removal made it slightly easier to enforce, the policy is the same. I've updated the KEP to show the individual steps to mechnically make the transition in #2293 . Closing since this is done.

/close

@k8s-ci-robot
Copy link
Contributor

@deads2k: Closing this issue.

In response to this:

This was implemented back in 1.19 and has not changed since. I've updated the KEP to show the individual steps to mechnically make the transition in #2293 . Closing since this is done.

/close

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@liggitt
Copy link
Member

liggitt commented Sep 7, 2022

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. sig/api-machinery Categorizes an issue or PR as relevant to SIG API Machinery. sig/architecture Categorizes an issue or PR as relevant to SIG Architecture. stage/stable Denotes an issue tracking an enhancement targeted for Stable/GA status tracked/no Denotes an enhancement issue is NOT actively being tracked by the Release Team
Projects
None yet
Development

No branches or pull requests

9 participants