30个版本
0.14.0 | 2024年2月1日 |
---|---|
0.13.4 | 2023年11月22日 |
0.13.3 | 2022年12月4日 |
0.13.2 | 2022年8月2日 |
0.1.1 | 2015年4月30日 |
#1 在 配置 中
1,193,153 每月下载量
在 1,135 个 Crates中使用 (684个直接使用)
150KB
3.5K SLoC
config-rs
为Rust应用程序提供分层配置系统(强支持12-factor应用程序)。
- 设置默认值
- 设置显式值(用于程序化覆盖)
- 从JSON、TOML、YAML、INI、RON、JSON5文件中读取
- 从环境变量中读取
- 类型宽松 — 配置值可以以任何支持的类型读取,只要存在合理的转换
- 使用格式化路径访问嵌套字段 — 使用JSONPath的子集;目前支持子(
redis.port
)和索引运算符(databases[0].name
)
请注意此库
- 不能用于将更改后的配置值写回配置文件!
- 不区分大小写,并且所有键都会在内部转换为小写
用法
[dependencies]
config = "0.14.0"
功能标志
ini
- 添加对读取INI文件的支持json
- 添加对读取JSON文件的支持yaml
- 添加对读取YAML文件的支持toml
- 添加对读取TOML文件的支持ron
- 添加对读取RON文件的支持json5
- 添加对读取JSON5文件的支持
支持自定义格式
该库提供对大多数知名数据格式(如JSON或Yaml)的原生支持。然而,它包含一个可扩展点——一个Format
特质,一旦实现,就可以通过自定义的、不太流行或专有数据格式与库的API无缝集成。
有关更多信息,请参阅自定义文件格式示例。
更多
MSRV
我们目前支持Rust 1.70.0及更高版本。
许可证
config-rs主要在MIT许可证和Apache许可证(版本2.0)的条款下分发。
有关详细信息,请参阅LICENSE-APACHE和LICENSE-MIT。
依赖项
~1.9–3.5MB
~75K SLoC