- Add layered env file support for
pathanddefaults:- Accept
string | string[]in code - Accept comma-separated values via
DOTENV_CONFIG_PATHandDOTENV_CONFIG_DEFAULTS - Deterministic merge order with last layer wins
- Accept
- Add layered schema support with
schemaExtends(string | string[]or comma-separated env var) - Add
returnSchemaOnlyoption to return only schema-defined keys - Add
errorOnMissingFilesoption for strict missing-file errors - Add CLI print mode:
--printfor JSON output--print=dotenvforKEY=valueoutput
- Add
deeCLI alias while preservingdotenv-extendedcommand compatibility - Expand tests for new config/CLI behavior and maintain full coverage
- Update README documentation for new options and layered-file usage
- Configure GitHub Actions permissions/workflow settings update
- Modernize build/test/lint tooling:
- Replace
gulp+ Babel +esmwithtsup,vitest, modern ESLint, and Prettier
- Replace
- Increase supported Node baseline to
>=20 - Add
exportsand explicit publishfilesmap - Remove unnecessary runtime dependencies:
auto-parsecamelcasecross-spawn
- Keep public API compatibility for
load,config,parse, preload config entry, and CLI usage - Expand and modernize test coverage, including CLI execution behavior
- Missing values in schema now default to empty strings for
errorOnRegex(thanks @FokkeZB) - Minor modernization and refactoring of unit tests
- Update dependencies while retaining compatibility with Node 6
- Add ability to configure through environment variables (thanks @Levino)
- Remove
@types/dotenvas a dependency - Add Node 12 to travis-ci tests
- General code cleanup/modernizing
- Update README to include
importsyntax
- fix: check for extra keys needs to be specific to schema
- Update dependencies and remove useless dependencies (thanks @webdevium)
- Modernize and streamline build process
- Add ability to put regexs in the
.env.schemafile to validate and limit the values that can be added to the.evnand.env.defaultsfiles (thanks @epiphone)
- Add error checking flag to include process.env when it checks for required variables (thanks @Vija02)
- Remove support for end-of-life versions of node (4, 5, 7, 9)
- Require node >=6.0.0
- Update package dependencies
- Expose entire process.env to command called with CLI
- Fix markdown header (thanks @vvo)
- Update package dependencies (thanks @gregswindle)
- Add node versions 8 and 9 to travis versions to test
- Add TypeScript definitions (thanks @toverux)
- Add binary for injecting .env variables into non-node scripts
- Replace
winstonlibrary with genericconsole(Thanks @bostrom)
- Fix comma-space typo in thrown error (Thanks @niftylettuce)
- Add
defaultexport to simplify ES6 imports
- Add ability to load .env files from command line
- Update dependencies
- Correct documentation error
- Update dependencies
- Remove errant ide files from package
- Add prepublish npm script
- Initial release