Cargo Features
junction-api has no features set by default.
[dependencies]
junction-api = { version = "0.2.1", features = ["typeinfo", "xds", "kube", "kube_v1_29", "kube_v1_30", "kube_v1_31"] }
- typeinfo
-
enable reflection. this is intended to only be used at build time to generate cross-language APIs.
Enables junction-typeinfo
- xds
-
enable xds conversion for core types.
Enables xds-api
- kube = kube_v1_29
-
enable kube conversion for core types. this is a shorthand for the minimum available kube_v1_* feature.
- kube_v1_29 kube?
-
each of these flags sets a MINIMUM version of the kubernetes API to be compatible with.
because k8s-openapi does kube version selection with Cargo features, we're priced in to doing it as well. doing it this way means downstream crates don't have to ALSO depend on k8s-openapi and pick exactly the same version/feature flag combination.Enables gateway-api, kube ^0.96 and v1_29 of k8s-openapi ^0.23
kube
k8s-openapi and the gateway-api crates have to be kept in sync, or we'll have a bad time with multiple versions of types and feature flags won't be set.Affects
junction-api::kube
… - kube_v1_30
-
Enables gateway-api, kube ^0.96, v1_30 of k8s-openapi ^0.23
Affects
junction-api::kube
… - kube_v1_31
-
Enables gateway-api, kube ^0.96, v1_31 of k8s-openapi ^0.23
Affects
junction-api::kube
…
Features from optional dependencies
In crates that don't use the dep:
syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.
- k8s-openapi kube_v1_29? kube_v1_30? kube_v1_31?
-
Enables k8s-openapi ^0.23