Features:
- Add support for variable expansion, e.g. `MY_VAR=${MY_OTHER_VAR:-mydefault}` ([164](https://github.com/sloria/environs/issues/164)).
Thanks [gnarvaja](https://github.com/gnarvaja) for the PR.
Deprecations:
- Variable proxying using the `{{VAR}}` syntax is deprecated
and will be removed in environs 9.0.0.
Use variable expansion using `${VAR}` instead.
bash
Before
export MAILGUN_LOGIN=sloria
export SMTP_LOGIN={{MAILGUN_LOGIN}}
After
export MAILGUN_LOGIN=sloria
export SMTP_LOGIN=${MAILGUN_LOGIN}
python
from environs import Env
env = Env(expand_vars=True)
SMTP_LOGIN = env.str("SMTP_LOGIN") => 'sloria'
Bug fixes:
- Fix deferred validation behavior for `dj_db_url`, `dj_email_url`, `dj_cache_url`,
and custom parsers ([121](https://github.com/sloria/environs/issues/121)).
Thanks [hukkinj1](https://github.com/hukkinj1) for reporting.
Other changes:
- Test against Python 3.9.
- Remove usage of implicit `typing.Optional` ([171](https://github.com/sloria/environs/issues/171)).