[package]
edition = "2024"
name = "tanzim"
version = "0.18.0"
build = false
include = [
"src/**/*.rs",
"Cargo.toml",
"README.md",
"../../LICENSE",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Configuration pipeline facade (load, parse, merge)"
homepage = "https://crates.io/crates/tanzim"
documentation = "https://docs.rs/tanzim"
readme = "README.md"
keywords = [
"configuration",
"config",
"cfg",
"settings",
"env",
]
categories = ["config"]
license = "BSD-3-Clause"
repository = "https://github.com/pouriya/tanzim"
resolver = "2"
[package.metadata.docs.rs]
all-features = true
[features]
default = [
"load-env",
"load-file",
"load-http",
"parse-env",
"validate-default",
"validate-schema",
]
full = [
"load-env",
"load-file",
"load-http",
"parse-env",
"parse-json",
"parse-yaml",
"parse-toml",
"validate-full",
]
load-env = ["tanzim-load/env"]
load-file = ["tanzim-load/file"]
load-http = ["tanzim-load/http"]
logging = [
"tanzim-load/logging",
"tanzim-parse/logging",
"tanzim-merge/logging",
"tanzim-validate/logging",
"dep:log",
]
parse-env = ["tanzim-parse/env"]
parse-json = ["tanzim-parse/json"]
parse-toml = ["tanzim-parse/toml"]
parse-yaml = ["tanzim-parse/yaml"]
tracing = [
"tanzim-load/tracing",
"tanzim-parse/tracing",
"tanzim-merge/tracing",
"tanzim-validate/tracing",
"dep:tracing",
]
validate-boolean = [
"validate-schema",
"tanzim-validate/boolean",
]
validate-bytesize = [
"validate-schema",
"tanzim-validate/bytesize",
]
validate-cidr = [
"validate-schema",
"tanzim-validate/cidr",
]
validate-datetime = [
"validate-schema",
"tanzim-validate/datetime",
]
validate-default = ["tanzim-validate/default"]
validate-duration = [
"validate-schema",
"tanzim-validate/duration",
]
validate-dynamic_map = [
"validate-schema",
"tanzim-validate/dynamic_map",
]
validate-either = [
"validate-schema",
"tanzim-validate/either",
]
validate-encoding = [
"validate-schema",
"tanzim-validate/encoding",
]
validate-enumeration = [
"validate-schema",
"tanzim-validate/enumeration",
]
validate-float = [
"validate-schema",
"tanzim-validate/float",
]
validate-full = [
"validate-schema",
"tanzim-validate/full",
]
validate-integer = [
"validate-schema",
"tanzim-validate/integer",
]
validate-list = [
"validate-schema",
"tanzim-validate/list",
]
validate-net = [
"validate-schema",
"tanzim-validate/net",
]
validate-non_empty = [
"validate-schema",
"tanzim-validate/non_empty",
]
validate-number = [
"validate-schema",
"tanzim-validate/number",
]
validate-path = [
"validate-schema",
"tanzim-validate/path",
]
validate-percentage = [
"validate-schema",
"tanzim-validate/percentage",
]
validate-regex = [
"validate-schema",
"tanzim-validate/regex",
]
validate-schema = ["tanzim-validate/schema"]
validate-semver = [
"validate-schema",
"tanzim-validate/semver",
]
validate-static_map = [
"validate-schema",
"tanzim-validate/static_map",
]
validate-string = [
"validate-schema",
"tanzim-validate/string",
]
validate-url = [
"validate-schema",
"tanzim-validate/url",
]
validate-uuid = [
"validate-schema",
"tanzim-validate/uuid",
]
[lib]
name = "tanzim"
path = "src/lib.rs"
[dependencies.cfg-if]
version = "1.0.0"
[dependencies.log]
version = "0.4.20"
optional = true
[dependencies.serde]
version = "1.0.195"
features = ["derive"]
[dependencies.tanzim-load]
version = "0.9.0"
default-features = false
[dependencies.tanzim-merge]
version = "0.12.0"
default-features = false
[dependencies.tanzim-parse]
version = "0.15.0"
default-features = false
[dependencies.tanzim-source]
version = "0.5.0"
[dependencies.tanzim-validate]
version = "0.7.0"
default-features = false
[dependencies.tanzim-value]
version = "0.7.0"
[dependencies.thiserror]
version = "1.0.56"
[dependencies.tracing]
version = "0.1.40"
optional = true
[dev-dependencies.dirs]
version = "5.0.1"
[dev-dependencies.env_logger]
version = "0.10.1"
[dev-dependencies.serde_json]
version = "1"
[dev-dependencies.serde_yaml]
version = "0.9"
[dev-dependencies.tracing-subscriber]
version = "0.3.18"
features = ["json"]