[package] name = "plugx-config" version = "0.3.0" edition = "2021" description = "Plugin configuration management" license = "BSD-3-Clause" readme = "README.md" homepage = "https://crates.io/crates/plugx-config" documentation = "https://docs.rs/plugx-config" repository = "https://github.com/plugx-rs/plugx-config" categories = ["config"] keywords = ["configuration", "config", "cfg", "settings", "env"] include = ["src/**/*.rs", "Cargo.toml", "LICENSE", "README.md"] [dependencies] thiserror = "1.0.56" anyhow = "1.0.79" serde = { version = "1.0.195", features = ["derive"] } cfg-if = "1.0.0" url = { version = "2.5.0", features = ["serde"] } plugx-input = { version = "0.3.1", default-features = false, features = ["schema"] } #attohttpc = {version = "0.26.1", default-features = false, optional = true} serde_qs = { version = "0.12.0", default-features = false, optional = true } serde_json = { version = "1.0.111", optional = true } serde_yaml = { version = "0.9.30", optional = true } toml = { version = "0.8.8", optional = true } dotenv-parser = { version = "0.1.3", optional = true } log = { version = "0.4.20", optional = true } tracing = { version = "0.1.40", optional = true } #clap = {version = "4.4.13", default-features = false, features = ["std", "derive"], optional = true} [features] default = ["logging", "env"] env = ["dep:dotenv-parser", "dep:serde_json", "qs"] logging = ["dep:log", "plugx-input/logging"] tracing = ["dep:tracing", "plugx-input/tracing"] json = ["dep:serde_json"] yaml = ["dep:serde_yaml"] toml = ["dep:toml"] fs = ["qs"] qs = ["dep:serde_qs"] #clap = ["dep:clap"] #http = ["dep:attohttpc"] #http-basic-auth = ["attohttpc?/basic-auth"] #http-compress = ["http", "attohttpc?/compress"] #http-compress-zlib = ["http", "attohttpc?/compress-zlib"] #http-compress-zlib-ng = ["http", "attohttpc?/compress-zlib-ng"] #http-tls-native = ["http", "attohttpc?/tls-native"] #http-tls-native-vendored = ["http", "attohttpc?/tls-native-vendored"] #http-tls-rustls-webpki-roots = ["http", "attohttpc?/tls-rustls-webpki-roots"] #http-tls-rustls-native-roots = ["http", "attohttpc?/tls-rustls-native-roots"] [dev-dependencies] tracing-subscriber = { version = "0.3.18", features = ["json"] } env_logger = "0.10.1" tempdir = "0.3.7" deser-hjson = "2.2.4" dirs = "5.0.1" [package.metadata.docs.rs] all-features = true