A well-maintained fork of the dotenv crate.
This crate is the suggested alternative for dotenv
in security advisory RUSTSEC-2021-0141.
This library loads environment variables from a .env file. This is convenient for dev environments.
dotenvy
crate - A well-maintained fork of the dotenv
crate.dotenvy_macro
crate - A macro for compile time dotenv inspection. This is a fork of dotenv_codegen
.dotenvy
CLI tool for running a command using the environment from a .env file (currently Unix only)use dotenvy::dotenv;
use std::env;
fn main() {
// load environment variables from .env file
dotenv().expect(".env file not found");
for (key, value) in env::vars() {
println!("{key}: {value}");
}
}
The dotenv!
macro provided by dotenvy_macro
crate can be used.
Currently: 1.68.0
We aim to support the latest 8 rustc versions - approximately 1 year. Increasing MSRV is not considered a semver-breaking change.
The original dotenv crate has not been updated since June 26, 2020. Attempts to reach the authors and present maintainer were not successful (dotenv-rs/dotenv #74).
This fork intends to serve as the development home for the dotenv implementation in Rust.
This repo fixes:
std::env::home_dir
)dotenv!
(dotenv-rs/dotenv #57)It also adds:
io::Read
support via from_read
and from_read_iter
For a full list of changes, refer to the changelog.
Thank you very much for considering to contribute to this project! See CONTRIBUTING.md for details.
Note: Before you take the time to open a pull request, please open an issue first.
Legend has it that the Lost Maintainer will return, merging changes from dotenvy
into dotenv
with such thrust that all Cargo.toml
s will lose one keystroke. Only then shall the Rust dotenv crateverse be united in true harmony.
Until then, this repo dutifully carries on the dotenv torch. It is actively maintained.