[package]
name = "confik"
version = "0.11.7"
description = "A library for reading application configuration split across multiple sources"
authors = ["Rob Ede <robjtede@icloud.com>"]
keywords = ["parser", "serde", "utility", "config"]
categories = ["config"]
repository = "https://github.com/x52dev/confik"
license = "MIT OR Apache-2.0"
edition = "2021"
rust-version = "1.67"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]
[package.metadata.cargo-machete]
ignored = [
"humantime_serde",
"serde_with",
]
[features]
default = ["env", "toml"]
env = ["dep:envious"]
json = ["dep:serde_json"]
toml = ["dep:toml"]
bigdecimal = ["dep:bigdecimal"]
bytesize = ["dep:bytesize"]
camino = ["dep:camino"]
chrono = ["dep:chrono"]
common = []
ipnetwork = ["dep:ipnetwork"]
rust_decimal = ["dep:rust_decimal"]
secrecy = ["dep:secrecy"]
url = ["dep:url"]
uuid = ["dep:uuid"]
[dependencies]
confik-macros = "=0.11.1"
cfg-if = "1"
serde = { version = "1", default-features = false, features = ["std", "derive"] }
thiserror = "1"
envious = { version = "0.2", optional = true }
serde_json = { version = "1", optional = true }
toml = { version = "0.8", optional = true, default-features = false, features = ["parse"] }
bigdecimal = { version = "0.4", optional = true, features = ["serde"] }
bytesize = { version = "1", optional = true, features = ["serde"] }
camino = { version = "1", optional = true, features = ["serde1"] }
chrono = { version = "0.4.20", optional = true, default-features = false, features = ["serde"] }
ipnetwork = { version = "0.20", optional = true, features = ["serde"] }
rust_decimal = { version = "1", optional = true, features = ["serde"] }
secrecy = { version = "0.8", optional = true, features = ["serde"] }
url = { version = "2", optional = true, features = ["serde"] }
uuid = { version = "1", optional = true, features = ["serde"] }
[[example]]
name = "simple"
required-features = ["toml"]
[[example]]
name = "derives"
required-features = ["toml", "camino"]
[[example]]
name = "secret_string"
required-features = ["toml", "secrecy"]
[[example]]
name = "bigdecimal"
required-features = ["toml", "bigdecimal"]