⚠️ Upcoming Major Version Release for Kubebuilder with the next k8s 1.29 release - Action Required #3622
Closed
camilamacedo86
announced in
Announcements
Replies: 2 comments
-
Just to share:
|
Beta Was this translation helpful? Give feedback.
0 replies
-
Done: https://github.com/kubernetes-sigs/kubebuilder/releases/tag/v4.0.0 |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Hi Everyone,
Kubebuilder, over the years, has been a beacon of stability, with our last significant release, v3.0.0, tracing back to Apr 28, 2021.
As a foundational tool, Kubebuilder relies on and integrates with numerous projects such as controller-runtime. As these dependent projects evolve, Kubebuilder must adapt, meaning deprecations and changes become essential. This transition isn't merely a technical necessity; it's a leap towards clearer documentation, more discernible options, and overall enhanced user experience. Our primary goal is to simplify the landscape for users and developers alike, ensuring easy maintainability and a streamlined user journey.
❓ Why is a major release required?
To uphold our commitment to maintenance and further enhance user experience, it's imperative to move forward and release a significant new version. This will allow us to prune legacy plugins and dated code, and in turn, streamline our codebase.
📆 When is this change expected?
Note that you have plenty of time to upgrade your project. The breaking changes are planned only for the next year.
The support for k8s 1.29 under the 3x version is on the horizon. Kubernetes' plan to release 1.29 is for January next year. This provides ample time for users to adjust and adopt. Post that, starting from February/2024, we plan to direct our energies toward the development and release of 4x which will no longer support what is currently deprecated.
Therefore, our plan it to release the latest 3x version supporting k8s 1.29 and then release afterwords the 4x which will no longer support what is currently deprecated.
The forthcoming release will bid adieu to certain plugins and internal codes:
Detailed insights are available here.
Note: We might can decide to keep Declarative/v1 if its external plugin to replace the current solution not be delivered in time. (More info)
🕵️ Who is impacted by this?
Anyone leveraging deprecated features or plugins in their implementations. Please, look in the PROJECT file and the plugin layout to know the version of layout used in your project.
Also, if you are using kubebuilder as a library, ensure that you keep your solution updated to let your users be aware of what has been deprecated beforehand. Additionally, ensure that you are no longer relying on methods which are deprecated.
Ensure that your project is upgraded to use the default and latest layout go/v4 also ensure that your project is not relying on the optional plugins which are deprecated. To upgrade your project, it usually means re-scaffold all with the latest release and update. See that now we have provided a helper for you to achieve this goal, see the doc.
Your swift attention to this pivotal shift is immensely appreciated. For any queries or clarifications, feel free to add questions in this discussion post or reach out via the Slack channel.
🤝 How to contribute:
Please feel free to report any bugs or offer suggestions by raising an issue in the Kubebuilder repository.
Additionally, we welcome contributions to enhance the solution. If you see areas for improvement or ways to make it even more beneficial for the community, your input would be greatly appreciated.
Beta Was this translation helpful? Give feedback.
All reactions