[dependencies.anyhow]
version = "^1.0.100"
[dependencies.config]
default-features = true
version = "^0.15.19"
[dependencies.directories]
optional = true
version = "^5.0.1"
[dependencies.globwalk]
version = "^0.9.1"
[dependencies.once_cell]
version = "^1.21.3"
[dependencies.parking_lot]
optional = true
version = "^0.12.5"
[dependencies.path-absolutize]
version = "^3.1.1"
[dependencies.regex]
optional = true
version = "^1.12.2"
[dependencies.secrecy]
features = ["serde"]
optional = true
version = "^0.10.3"
[dependencies.serde]
features = ["derive"]
version = "^1.0.228"
[dependencies.serde_json]
optional = true
version = "^1.0.145"
[dependencies.serde_with]
features = ["chrono", "json", "macros"]
version = "^3.16.1"
[dependencies.serde_yaml]
optional = true
version = "^0.9.34"
[dependencies.sqlx]
default-features = false
features = ["postgres", "runtime-tokio-rustls"]
optional = true
version = "^0.8.6"
[dependencies.thiserror]
version = "^1.0.69"
[dependencies.toml]
optional = true
version = "^0.8.23"
[dependencies.toml_edit]
optional = true
version = "^0.22.27"
[dependencies.tracing]
version = "^0.1.44"
[dependencies.tracing-bunyan-formatter]
version = "^0.3.10"
[dependencies.tracing-log]
version = "^0.2.0"
[dependencies.tracing-subscriber]
features = ["env-filter"]
version = "^0.3.22"
[dependencies.url]
optional = true
version = "^2.5.7"
[dependencies.zeroize]
optional = true
version = "^1.8.2"
[dev-dependencies.assert_matches2]
version = "^0.1.2"
[dev-dependencies.clap]
features = ["derive"]
version = "^4.5.53"
[dev-dependencies.fake]
features = ["chrono"]
version = "^2.10.0"
[dev-dependencies.pretty_assertions]
version = "^1.4.1"
[dev-dependencies.proptest]
version = "^1.9.0"
[dev-dependencies.serde_json]
version = "^1.0.145"
[dev-dependencies.serde_yaml]
version = "^0.9.34"
[dev-dependencies.serial_test]
version = "^3.2.0"
[dev-dependencies.tempfile]
version = "^3.23.0"
[dev-dependencies.trim-margin]
version = "^0.1.0"
[[example]]
name = "provenance_audit"
path = "examples/provenance_audit.rs"
[[example]]
name = "schema_generation"
path = "examples/schema_generation.rs"
[features]
database = ["sqlx", "secrecy", "zeroize"]
default = ["metadata"]
editor = ["toml_edit", "parking_lot", "toml", "serde_json", "serde_yaml"]
http = ["url"]
metadata = ["serde_json", "regex", "zeroize"]
multi-scope = ["directories"]
serde = []
[lib]
name = "settings_loader"
path = "src/lib.rs"
[lints.clippy]
cargo = "warn"
suspicious = "warn"
[lints.rust]
rust_2021_incompatible_closure_captures = "warn"
rust_2021_prelude_collisions = "warn"
unsafe_code = "forbid"
[lints.rust.rust_2018_idioms]
level = "warn"
priority = -1
[lints.rust.rust_2021_compatibility]
level = "warn"
priority = -1
[package]
authors = ["Damon Rolfs <drolfs@gmail.com>"]
autobenches = false
autobins = false
autoexamples = false
autolib = false
autotests = false
build = false
categories = ["config", "development-tools"]
description = "Opinionated configuration settings load mechanism for Rust applications"
documentation = "https://docs.rs/settings-loader"
edition = "2021"
homepage = "https://github.com/dmrolfs/settings-loader-rs"
keywords = ["configuration", "environment", "env", "settings", "config"]
license = "MIT"
name = "settings_loader"
readme = "README.md"
repository = "https://github.com/dmrolfs/settings-loader-rs"
version = "1.0.0"
[[test]]
name = "config_editor_tests"
path = "tests/config_editor_tests.rs"
[[test]]
name = "env_customization_tests"
path = "tests/env_customization_tests.rs"
[[test]]
name = "introspection_tests"
path = "tests/introspection_tests.rs"
[[test]]
name = "layer_builder_tests"
path = "tests/layer_builder_tests.rs"
[[test]]
name = "metadata_core_types_tests"
path = "tests/metadata_core_types_tests.rs"
[[test]]
name = "metadata_integration_tests"
path = "tests/metadata_integration_tests.rs"
[[test]]
name = "multi_scope_config_tests"
path = "tests/multi_scope_config_tests.rs"
[[test]]
name = "provenance_tests"
path = "tests/provenance_tests.rs"
[[test]]
name = "registry_tests"
path = "tests/registry_tests.rs"
[[test]]
name = "schema_export_tests"
path = "tests/schema_export_tests.rs"
[[test]]
name = "validation_property_tests"
path = "tests/validation_property_tests.rs"
[[test]]
name = "validation_tests"
path = "tests/validation_tests.rs"