-
Notifications
You must be signed in to change notification settings - Fork 49
Description
API operations-related code such as the Pod::list() fn were dropped in the v0.20 release.
Upstream's OpenAPI spec changed a few things related to API operations in v1.28 that would've required non-trivial changes in k8s-openapi-codegen-common. I implemented some of those changes and could've implemented the rest of them given more time and effort, but it made me re-evaluate whether there was any point in keeping this code in the first place. AFAIK everyone (*) uses k8s-openapi through kube and thus only uses k8s-openapi for the resource types, not their associated methods, since kube has its own API for operations.
If you did use the methods provided by k8s-openapi, then:
-
Do not update to k8s-openapi v0.20 or to kube releases that require k8s-openapi v0.20
-
Comment here to let me know that you exist. Also tell me if there's any reason you can't use
kubeinstead.
Depending on how much demand there is for the API operations-related code in k8s-openapi, there are a few possible outcomes:
-
I might implement the changes to the code generator needed to support API operations with v1.28+ and bring back the API operations-related code.
-
I might maintain patch releases of v0.19.x for some time, that continue to get updates other than v1.28+ support. ie v0.19.x patch releases will be limited to Kubernetes 1.27 and earlier, but they will get other bugfixes.
-
I might implement a separate API that is generic like kube's is but also sans-io like the original
k8s-openapione. (I already did this partially for the sake of this repository's tests, so it would be a matter of adding more methods to it, cleaning it up for public consumption, and maintaining it.) -
Something else.
(*): I queried users at $dayjob, and asked on the Rust IRC channel which got a few responses.