0.72.0
Highlights
Ergonomics improvements
A new runtime::WatchSteamExt
(#899 + #906) allows for simpler setups for streams from watcher
or reflector
.
- let stream = utils::try_flatten_applied(StreamBackoff::new(watcher(api, lp), b));
+ let stream = watcher(api, lp).backoff(b).applied_objects();
The util::try_flatten_*
helpers have been marked as deprecated since they are not used by the stream impls.
A new reflector:store()
fn allows simpler reflector setups #907:
- let store = reflector::store::Writer::<Node>::default();
- let reader = store.as_reader();
+ let (reader, writer) = reflector::store();
Additional conveniences getters/settes to ResourceExt
for manged_fields and creation_timestamp #888 + #898, plus a GroupVersion::with_kind
path to a GVK, and a TryFrom<TypeMeta> for GroupVersionKind
in #896.
CRD Version Selection
Managing multiple version in CustomResourceDefinitions can be pretty complicated, but we now have helpers and docs on how to tackle it.
A new function kube::core::crd::merge_crds
have been added (in #889) to help push crd schemas generated by kube-derived crds with different #[kube(version)]
properties. See the kube-derive#version documentation for details.
A new example showcases how one can manage two or more versions of a crd and what the expected truncation outcomes are when moving between versions.
Examples
Examples now have moved to tracing
for its logging, respects RUST_LOG
, and namespace selection via the kubeconfig context. There is also a larger kubectl example showcasing kubectl apply -f yaml
as well as kubectl {edit,delete,get,watch}
via #885 + #897.
What's Changed
Added
- Allow merging multi-version CRDs into a single schema by @clux in #889
- Add GroupVersion::with_kind and TypeMeta -> GroupVersionKind converters by @clux in #896
- Add managed_fields accessors to ResourceExt by @clux in #898
- Add ResourceExt::creation_timestamp by @clux in #888
- Support lowercase http_proxy & https_proxy evars by @DevineLiu in #892
- Add a WatchStreamExt trait for stream chaining by @clux in #899
- Add Event::modify + reflector::store helpers by @clux in #907
Changed
- Switch to kubernetes cluster dns for incluster url everywhere by @clux in #876
- Update tower-http requirement from 0.2.0 to 0.3.2 by @dependabot in #893
Removed
New Contributors
- @DevineLiu made their first contribution in #892
Full Changelog: 0.71.0...0.72.0