Cargo Features

[dependencies]
abscissa_core = { version = "0.8.1", default-features = false, features = ["application", "config", "options", "secrets", "terminal", "trace", "testing"] }
default = application, secrets, testing

These default features are set whenever abscissa_core is added without default-features = false somewhere in the dependency tree.

application default = arc-swap, config, options, terminal, trace

Enables serde of semver

Affects config::Reader, abscissa_core::application, abscissa_core::component, abscissa_core::prelude, terminal::component, trace::component

config application = secrets, serde, terminal, toml

Affects abscissa_core::config

options application = clap

Affects abscissa_core::command

secrets default config? = secrecy
terminal application config? = color-eyre, termcolor

Affects abscissa_core::terminal

trace application = tracing, tracing-log, tracing-subscriber

Affects abscissa_core::trace

testing default = regex, wait-timeout

Affects abscissa_core::testing

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.

arc-swap application

Enables arc-swap

optional dependencies

color-eyre terminal?
clap options?
regex testing
secrecy secrets
semver application
serde config?
termcolor terminal?
toml config?
tracing trace?
tracing-log trace?
wait-timeout testing
tracing-subscriber trace?