6个版本
0.3.3 | 2024年6月12日 |
---|---|
0.3.2 | 2024年6月12日 |
0.3.1 | 2024年5月30日 |
0.2.0 | 2024年2月28日 |
0.1.0 | 2024年2月27日 |
#17 in #env-file
41 每月下载量
13KB
237 代码行
Envro
一个将.env文件中的环境变量加载到进程环境变量的crate。
入门指南
cargo add envro
use std::env;
use envro::*;
fn main() {
let env_file = env::current_dir().unwrap().join(".env-sample");
// load env vars and return them
let env_vars = load_dotenv(&env_file).unwrap();
println!("---");
println!(">> vars from .env file");
println!("{:#?}", &env_vars);
// load env vars into env::vars
load_dotenv_in_env_vars(&env_file).unwrap();
println!("---");
println!(">> from env::vars()");
for (key, value) in env::vars() {
if !env_vars.contains_key(&key) {
continue;
}
println!("{key}: {value}");
}
}
测试
cargo test
待办事项
- 检查.env文件是否只包含变量一次
- 支持多行字符串值
- 值验证
- github action发布
- 发布crate - 查看 https://github.com/googleapis/release-please
- 在CI上运行cz bump,创建发布提交,创建github发布,cargo发布
- 处理预发布版本 (-dev, -beta ...)
- 在CI上运行cz bump,创建发布提交,创建github发布,cargo发布
- 发布crate - 查看 https://github.com/googleapis/release-please
- 强制环境变量转换为类型
- 测试,代码覆盖率
许可证
MIT许可证
版权所有 (c) 2024 Simone Sanfratello
以下许可授予任何人免费获得此软件及其相关文档副本(“软件”)的权利,不受任何限制,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或销售软件副本的权利,并允许向软件提供的人这样做,前提是遵守以下条件
上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。
软件按“原样”提供,不提供任何明示或暗示的保证,包括但不限于适销性、适用于特定目的和侵权不保证。在任何情况下,作者或版权所有者均不对任何索赔、损害或其他责任负责,无论此类责任是基于合同、侵权或其他方式,源于、因或与软件或其使用或其他方式有关。
依赖关系
~260–720KB
~17K SLoC