Skip to content


All public features are exposed through kube in kube's Cargo.toml.

Stable Features#

Feature Enables Default Significant Inclusions
config Config yes kube-client partial
client Client + Api yes kube-client, hyper, tower
runtime Controller + watcher no kube-runtime
derive CustomResource no kube-derive, syn, quote
openssl-tls tls via openssl no openssl, hyper-openssl
rustls-tls tls via rustls yes rustls, hyper-rustls
ws Execute, Attach, Portforward no tokio-tungstenite
gzip gzip compressed transport no tower-http feature
jsonpatch Patch using jsonpatch no json_patch
admission admission module no json_patch
socks5 local cluster socks5 proxying no hyper-socks2
http-proxy local cluster http proxying no hyper-http-proxy
oauth local cluster oauth for GCP no tame-oauth
oidc local cluster oidc auth no none

Client dependencies

Most of these features depend on having the client feature (and thus the config feature) enabled as they would not be much use without them.


If you turn off all default features (say, to change tls stacks), you also turn off the normal client default feature. Without default features you get a crate roughly equivalent to kube-core.

Unstable Features#

  • unstable-runtime for stream sharing and controller streams interface tracked in #1080
  • unstable-client for client exts tracked in #1032
  • kubelet-debug for kubelet debug api access - untracked