[package]
edition = "2021"
rust-version = "1.81"
name = "confik"
version = "0.15.2"
authors = ["Rob Ede <robjtede@icloud.com>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A library for reading application configuration split across multiple sources"
readme = "README.md"
keywords = [
"parser",
"serde",
"utility",
"config",
]
categories = ["config"]
license = "MIT OR Apache-2.0"
repository = "https://github.com/x52dev/confik"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
"--cfg",
"docsrs",
]
[package.metadata.cargo-machete]
ignored = [
"humantime_serde",
"serde_with",
]
[features]
ahash = ["dep:ahash"]
bigdecimal = ["dep:bigdecimal"]
bytesize = ["dep:bytesize"]
camino = ["dep:camino"]
chrono = ["dep:chrono"]
common = []
default = [
"env",
"toml",
]
env = ["dep:envious"]
ipnetwork = ["dep:ipnetwork"]
js_option = ["dep:js_option"]
json = ["dep:serde_json"]
reloading = ["dep:arc-swap"]
rust_decimal = ["dep:rust_decimal"]
secrecy = ["dep:secrecy"]
signal = ["dep:signal-hook"]
toml = ["dep:toml"]
tracing = ["dep:tracing"]
url = ["dep:url"]
uuid = ["dep:uuid"]
[lib]
name = "confik"
path = "src/lib.rs"
[[example]]
name = "ahash"
path = "examples/ahash.rs"
required-features = [
"toml",
"ahash",
]
[[example]]
name = "bigdecimal"
path = "examples/bigdecimal.rs"
required-features = [
"toml",
"bigdecimal",
]
[[example]]
name = "defaulting"
path = "examples/defaulting.rs"
[[example]]
name = "derives"
path = "examples/derives.rs"
required-features = [
"toml",
"camino",
]
[[example]]
name = "reloading"
path = "examples/reloading.rs"
required-features = [
"toml",
"reloading",
]
[[example]]
name = "secret_string"
path = "examples/secret_string.rs"
required-features = [
"toml",
"secrecy",
]
[[example]]
name = "simple"
path = "examples/simple.rs"
required-features = ["toml"]
[[test]]
name = "main"
path = "tests/main.rs"
[[test]]
name = "third_party"
path = "tests/third_party.rs"
[dependencies.ahash]
version = "0.8"
features = ["serde"]
optional = true
[dependencies.arc-swap]
version = "1"
optional = true
[dependencies.bigdecimal]
version = "0.4"
features = ["serde"]
optional = true
[dependencies.bytesize]
version = "2"
features = ["serde"]
optional = true
[dependencies.camino]
version = "1"
features = ["serde1"]
optional = true
[dependencies.cfg-if]
version = "1"
[dependencies.chrono]
version = "0.4.44"
features = ["serde"]
optional = true
default-features = false
[dependencies.confik-macros]
version = "=0.15.2"
[dependencies.envious]
version = "0.2"
optional = true
[dependencies.ipnetwork]
version = "0.21"
features = ["serde"]
optional = true
[dependencies.js_option]
version = "0.2"
features = ["serde"]
optional = true
[dependencies.rust_decimal]
version = "1"
features = ["serde"]
optional = true
[dependencies.secrecy]
version = "0.10"
features = ["serde"]
optional = true
[dependencies.serde]
version = "1"
features = [
"std",
"derive",
]
default-features = false
[dependencies.serde_json]
version = "1"
optional = true
[dependencies.signal-hook]
version = "0.4"
optional = true
[dependencies.thiserror]
version = "2"
[dependencies.toml]
version = "1"
features = [
"parse",
"serde",
]
optional = true
default-features = false
[dependencies.tracing]
version = "0.1"
optional = true
[dependencies.url]
version = "2"
features = ["serde"]
optional = true
[dependencies.uuid]
version = "1"
features = ["serde"]
optional = true
[dev-dependencies.anyhow]
version = "1"
[dev-dependencies.assert_matches]
version = "1.5"
[dev-dependencies.humantime-serde]
version = "1"
[dev-dependencies.indoc]
version = "2"
[dev-dependencies.serde_with]
version = "3"
[dev-dependencies.temp-env]
version = "0.3"
[dev-dependencies.tempfile]
version = "3"