asimov-module 25.0.0-dev.21

ASIMOV Software Development Kit (SDK) for Rust
Documentation
[package]
name = "asimov-module"
version.workspace = true
authors.workspace = true
edition.workspace = true
rust-version.workspace = true
description.workspace = true
#documentation.workspace = true
readme.workspace = true
homepage.workspace = true
repository.workspace = true
license.workspace = true
keywords.workspace = true
categories = ["api-bindings", "development-tools"]
publish.workspace = true

[features]
default = ["all", "std"]
all = ["cli", "tracing", "serde"]
cli = ["std", "dep:clientele", "clientele?/clap"]
std = [
    "dep:asimov-env",
    "dep:getenv",
    "clientele?/std",
    "dogma/std",
    "getenv?/std",
    "serde?/std",
    "serde_json?/std",
    "slab/std",
    "thiserror/std",
    "tracing?/std",
    "tracing-subscriber?/fmt",
    "tracing-subscriber?/std",
    "url/std",
]
unstable = []

# Optional features:
json = ["dep:serde_json"]
serde = ["dep:serde", "json", "yaml"]
tracing = ["dep:tracing", "dep:tracing-subscriber", "clientele?/tracing"]
yaml = ["dep:serde_yaml_ng"]

[dependencies]
dogma.workspace = true
secrecy.workspace = true
slab.workspace = true
thiserror.workspace = true
url.workspace = true

# Optional dependencies:
asimov-env = { workspace = true, optional = true }
clientele = { workspace = true, optional = true }
getenv = { workspace = true, optional = true }
serde = { workspace = true, optional = true }
serde_json = { workspace = true, optional = true }
serde_yaml_ng = { workspace = true, optional = true }
tracing = { workspace = true, optional = true }
tracing-subscriber = { workspace = true, optional = true }