Cargo Features

[dependencies]
constellation-rs = { version = "0.2.0-alpha.2", default-features = false, features = ["nightly", "distribute_binaries", "fringe", "kubernetes", "no_alloc", "strict"] }
default = distribute_binaries

The distribute_binaries feature is set by default whenever constellation-rs is added without default-features = false somewhere in the dependency tree.

nightly

Experimental functionality

Enables nightly of palaver

distribute_binaries default kubernetes?

Actually send binaries; this is necessary if nodes don't all have the binary at the same location on disk

Enables distribute_binaries of constellation-internal

fringe

Experimental generator-based serialization

Enables fringe of serde_pipe

kubernetes = distribute_binaries, k8s-openapi, kube, openssl, tokio

Enable auto-scaling on Kubernetes

no_alloc

Assert that no allocations are made during forking when they're UB

Enables no_alloc of constellation-internal

strict

Make constellation non-resilient to internal failures

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](https://rust-lang.github.io/rfcs/3491-remove-implicit-features.html).

k8s-openapi kubernetes?

Enables k8s-openapi ^0.7

kube kubernetes?

Enables kube ^0.27

tokio kubernetes?

Enables tokio ^0.2

openssl kubernetes?

Enables openssl

dependency of kube; ensure it's vendored to simplify cross-compilation