config-rs
config-rs copied to clipboard
⚙️ Layered configuration system for Rust applications (with strong support for 12-factor applications).
Intended to be easier to grok and match the same flow as other format parsers. --- I worked on this after https://github.com/mehcode/config-rs/pull/469 , but my main gripes were with the...
When parsing curly brackets, even as a string (`"${env_var}"`), it decodes the curly brackets to it's ASCII code. This is probably a bug of the underlying yaml library (yaml-rust). I...
Inspired from the `json5` feature (_Original PR July 2020, revised PR May 2021_) with the refactoring in the revision by @matthiasbeyer It looked useful for other formats that use `serde`...
Rebased #446 with conflicts resolved. All credit to @mkvolkov for the actual contribution. --- Added support for Gura. Closes: #245
Rebased https://github.com/mehcode/config-rs/pull/218 with conflicts resolved. All credit to @sphw for the actual contribution. --- This PR adds Dhall support using [serde_dhall](https://github.com/Nadrieril/dhall-rust), a native Rust implementation of Dhall. Dhall is a...
Im expecting to put alias to each fields in a struct where the alias name are the keys from os env ``` #[derive(Debug, Deserialize, Clone)] pub struct BuildInfo { #[serde(alias...
When using `yaml` as a config format, the deserialization incorrectly stops at periods in keys. I do not observe this behavior when manually deserializing the string with `serde_yaml` or other...
```rust #[derive(Debug, Serialize, Deserialize)] struct A { b: Option, } #[derive(Debug, Serialize, Deserialize)] struct B {} let a = A { b: Some(B {}) }; let de: A = Config::try_from(&a).unwrap().try_deserialize().unwrap();...