Skip to content

chore(deps): Update Rust crate kube to v4 - #116

Open
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/kube-4.x
Open

chore(deps): Update Rust crate kube to v4#116
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/kube-4.x

Conversation

@renovate

@renovate renovate Bot commented Jul 6, 2026

Copy link
Copy Markdown
Contributor

This PR contains the following updates:

Package Type Update Change
kube dependencies major 3.04.0

Release Notes

kube-rs/kube (kube)

v4.2.0

Compare Source

===================

v4.0.0

Compare Source

===================

New Major

As per the release schedule to match up with the latest Kubernetes ハル release.
Lots of fixes and improvements. Thanks to everyone who contributed!

Kubernetes v1_36 support via k8s-openapi 0.28

Please upgrade k8s-openapi along with kube to avoid conflicts.

CEL Validation

A new optional crate kube-cel is being re-exported through kube::core::cel via #​1954

Kubernetes CRDs support CEL validation rules via x-kubernetes-validations, and were supported from 3.0 via KubeSchema, but these rules could only be evaluated server-side by the API server.

The new crate allows evaluating these rules locally using rules matching the upstream Kubernetes CEL libraries.

While low-level, a higher-level CEL validator integrates with CustomResource via #[kube(cel)] from #​2011 and can be used as;

#[derive(CustomResource, Serialize, Deserialize, Clone, KubeSchema)]
#[kube(group = "example.com", version = "v1", kind = "Foo", namespaced)]

#[kube(cel, validation = "self.spec.replicas >= 0")] // cel trigger + validation rule
struct FooSpec { replicas: i32 }

let foo = Foo::new("test", FooSpec { replicas: -1 });
foo.validate_cel()?;                     // new impl; checks creation rules
new_foo.validate_cel_update(&old_foo)?;  // new impl; checks transition rules

See examples/crd_derive_cel.rs for more details.

This is available under the kube/cel feature, courtesy of @​doxxx93.

Config

A lot of improvements to config handling;

  • better error handling of malformed client certs in #​1966
  • add missing Kubeconfig fields in #​1965
  • Kubeconfig future key compatibility for new fields by adding catch-all other key via #​1964
  • deserialization changed from serde-yaml to serde-saphyr to get rid of the long-deprecated dependency. #​1975
Retry and Timeouts

Better timeout and retry handling to better deal with flaky network conditions, and busy or initializing apiservers.

  • default global read timeouts has been unset in favor of watcher level timeouts in #​1945 (see #​1798 for context)
  • regular (non-watch) queries now respect the RetryPolicy - now enabled by default in #​2007.
Client
  • properly handling rotating ca certs in cluster via #​1962
  • handle tls-server-name with openssl-tls via #​1993
  • auth exec: accept yaml output from exec plugins via #​2003
  • fix ws task leak and drop, and a deadlock on join() via #​1978
  • change: client tracing now opt-in due to issues. see #​1972
Runtime

What's Changed

Added
Changed
Fixed

Full Changelog: kube-rs/kube@3.1.0...4.0.0


Configuration

📅 Schedule: (UTC)

  • Branch creation
    • Between 12:00 AM and 03:59 AM, only on Monday (* 0-3 * * 1)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate Bot added dependencies Pull requests that update a dependency file rust Pull requests that update rust code labels Jul 6, 2026
@renovate
renovate Bot force-pushed the renovate/kube-4.x branch from 77cd169 to 77a5901 Compare July 21, 2026 02:46
@renovate
renovate Bot force-pushed the renovate/kube-4.x branch from 77a5901 to fdfb821 Compare July 25, 2026 10:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file rust Pull requests that update rust code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants