Name | Modified | Size | Downloads / Week |
---|---|---|---|
Parent folder | |||
1.0.0 source code.tar.gz | 2025-05-13 | 354.7 kB | |
1.0.0 source code.zip | 2025-05-13 | 459.0 kB | |
README.md | 2025-05-13 | 3.8 kB | |
Totals: 3 Items | 817.5 kB | 0 |
A Major Version
It's been a long time coming, but time has come to draw the line in the sand. No alphas, no betas. Hope it finds you all well. Thanks to everyone who has contributed over the years.
This is a somewhat symbolic gesture, because semver-breaking changes are still hard to avoid with a large set of sub-1.0 dependencies we need to bump, as well as managing the large api surface of Kubernetes.
Therefore, the plan is to align our breaking changes and major bumps with Kubernetes versions / k8s-openapi versions for now, and this should allow our other releases to stream in. See https://github.com/kube-rs/kube/issues/1688 for more information.
Kubernetes v1_33
support via k8s-openapi
0.25
Please upgrade k8s-openapi along with kube to avoid conflicts.
New minimum versions: MSRV 1.82.0, MK8SV: 1.30*
KubeSchema
The CELSchema
alternate derive for JsonSchema
has been renamed to KubeSchema
to indicate the increased functionality.
In addition to being able to inject CEL rules for validations, it can now also inject x-kubernetes
properties such as merge-strategy via https://github.com/kube-rs/kube/pull/1750, handle #[validate]
attributes https://github.com/kube-rs/kube/pull/1749, and pass validation rules as string literals https://github.com/kube-rs/kube/pull/1754 :
:::rust
#[derive(CustomResource, Serialize, Deserialize, Debug, PartialEq, Clone, KubeSchema)]
#[kube(...properties)
struct DocumentSpec {
/// New merge strategy support
#[x_kube(merge_strategy = ListMerge::Set)]
x_kubernetes_set: Vec<String>,
/// CEL Validation now lives on x_kube and supports literal Rules:
#[x_kube(validation = "!has(self.variantOne) || self.variantOne.int > 22")]
complex_enum: ComplexEnum,
}
See kube.rs docs on validation for more info. Huge thanks to @Danil-Grigorev.
What's Changed
Added
- feat(deps): enable
hyper-util/tracing
feature flag by @cratelyn in https://github.com/kube-rs/kube/pull/1734 - Permit literal string validation for CEL expressions by @Danil-Grigorev in https://github.com/kube-rs/kube/pull/1754
Changed
- Support additional
x-kubernetes-*
schema extensions by @Danil-Grigorev in https://github.com/kube-rs/kube/pull/1750 - Bump
k8s-openapi
to0.25.0
by @clux in https://github.com/kube-rs/kube/pull/1756
Removed
- Remove deprecated
watcher::Event
into_iter_*
methods by @clux in https://github.com/kube-rs/kube/pull/1738
Fixed
- docs: Adjust #[kube(scale(...)] doc example by @Techassi in https://github.com/kube-rs/kube/pull/1733
- Add suffix to generated struct by
CELSchema
by @Danil-Grigorev in https://github.com/kube-rs/kube/pull/1747 - Allow schemars validate attribute in
CELSchema
by @Danil-Grigorev in https://github.com/kube-rs/kube/pull/1749 - fix: resolve conflict with schemars preserve_order feature by @HoKim98 in https://github.com/kube-rs/kube/pull/1758
New Contributors
- @cratelyn made their first contribution in https://github.com/kube-rs/kube/pull/1734
- @JanBerktold made their first contribution in https://github.com/kube-rs/kube/pull/1752
Full Changelog: https://github.com/kube-rs/kube/compare/0.99.0...1.0.0