Vulnerabilities | |||||
---|---|---|---|---|---|
Version | Suggest | Low | Medium | High | Critical |
0.10.19 | 0 | 0 | 0 | 0 | 0 |
0.10.18 | 0 | 0 | 0 | 0 | 0 |
0.10.17 | 0 | 0 | 0 | 0 | 0 |
0.10.16 | 0 | 0 | 0 | 0 | 0 |
0.10.15 | 0 | 0 | 0 | 0 | 0 |
0.10.14 | 0 | 0 | 0 | 0 | 0 |
0.10.13 | 0 | 0 | 0 | 0 | 0 |
0.10.12 | 0 | 0 | 0 | 0 | 0 |
0.10.11 | 0 | 0 | 0 | 0 | 0 |
0.10.10 | 0 | 0 | 0 | 0 | 0 |
0.10.9 | 0 | 0 | 0 | 0 | 0 |
0.10.8 | 0 | 0 | 0 | 0 | 0 |
0.10.7 | 0 | 0 | 0 | 0 | 0 |
0.10.6 | 0 | 0 | 0 | 0 | 0 |
0.10.5 | 0 | 0 | 0 | 0 | 0 |
0.10.4 | 0 | 0 | 0 | 0 | 0 |
0.10.3 | 0 | 0 | 0 | 0 | 0 |
0.10.2 | 0 | 0 | 0 | 0 | 0 |
0.10.1 | 0 | 0 | 0 | 0 | 0 |
0.10.0 | 0 | 0 | 0 | 0 | 0 |
0.9.4 | 0 | 0 | 0 | 0 | 0 |
0.9.3 | 0 | 0 | 0 | 0 | 0 |
0.9.2 | 0 | 0 | 0 | 0 | 0 |
0.9.0 | 0 | 0 | 0 | 0 | 0 |
0.8.1 | 0 | 0 | 0 | 0 | 0 |
0.8.0 | 0 | 0 | 0 | 0 | 0 |
0.10.19 - This version may not be safe as it has not been updated for a long time. Find out if your coding project uses this component and get notified of any reported security vulnerabilities with Meterian-X Open Source Security Platform
Maintain your licence declarations and avoid unwanted licences to protect your IP the way you intended.
Apache-2.0 - Apache License 2.0Figment is a semi-hierarchical configuration library for Rust so con-free, it's unreal.
use serde::Deserialize;
use figment::{Figment, providers::{Format, Toml, Json, Env}};
#[derive(Deserialize)]
struct Package {
name: String,
authors: Vec<String>,
publish: Option<bool>,
// ... and so on ...
}
#[derive(Deserialize)]
struct Config {
package: Package,
rustc: Option<String>,
// ... and so on ...
}
let config: Config = Figment::new()
.merge(Toml::file("Cargo.toml"))
.merge(Env::prefixed("CARGO_"))
.merge(Env::raw().only(&["RUSTC", "RUSTDOC"]))
.join(Json::file("Cargo.json"))
.extract()?;
See the documentation for a detailed usage guide and information.
Add the following to your Cargo.toml
, enabling the desired built-in providers:
[dependencies]
figment = { version = "0.10", features = ["toml"] }
The following external libraries implement Figment providers:
Wraps existing providers. For any key ending in _FILE
(configurable), emits
a key without the _FILE
suffix with a value corresponding to the contents
of the file whose path is the original key's value.
Please submit a pull request to add your library to this list.
Figment is licensed under either of the following, at your option: