All notable changes to this project will be documented in this file. The format is inspired by Keep a Changelog and this project adheres to Semantic Versioning.
v0.11.2 - 1-September-2023
- Revert "Add variable expansion." feature due to #490.
v0.11.1 - 30-August-2023
- Revert "Add interpolate argument to avoid resolving proxied values." feature due to #485.
v0.11.0 - 30-August-2023
- Added support for Django 4.2 #456.
- Added support for secure Elasticsearch connections #463.
- Added variable expansion #468.
- Added capability to handle comments after #, after quoted values,
like
KEY= 'part1 # part2' # comment
#475. - Added support for
interpolate
parameter #415.
- Used
mssql-django
as engine for SQL Server #446. - Changed handling bool values, stripping whitespace around value #475.
- Use
importlib.util.find_spec
toreplace pkgutil.find_loader
#482.
- Removed support of Python 3.5.
v0.10.0 - 2-March-2023
- Use the core redis library by default if running Django >= 4.0 #356.
- Value of dict can now contain an equal sign #241.
- Added support for Python 3.11.
- Added
CONN_HEALTH_CHECKS
to database base options #413. - Added
encoding
parameter toread_env
with default value 'utf8' #442. - Added support for Django 4.1 #416.
- Support of Python < 3.6 is deprecated and will be removed in next major version.
- Used UTF-8 as a encoding when open
.env
file. - Provided access to
DB_SCHEMES
throughcls
rather thanEnv
indb_url_config
#414. - Correct CI workflow to use supported Python versions/OS matrix #441.
- Reworked trigger CI workflows strategy #440.
- Fixed logic of
Env.get_value()
to skip parsing only whendefault=None
, not for all default values that coerce toFalse
#404. - Deleted duplicated include in docs/quickstart.rst #439.
- Removed deprecated
Env.unicode()
. - Removed
environ.register_schemes
calls and do not modify globalurllib.parse.urlparse
'suses_*
variables as this no longer needed #246.
v0.9.0 - 15-June-2022
- Added support for Postgresql cluster URI #355.
- Added support for Django 4.0 #371.
- Added support for prefixed variables #362.
- Amended documentation.
Env.unicode()
is deprecated and will be removed in the next major release. UseEnv.str()
instead.
- Attach cause to
ImproperlyConfigured
exception #360.
- Fixed
_cast_urlstr
unquoting #357. - Fixed documentation regarding unsafe characters in URLs #220.
- Fixed
environ.Path.__eq__()
to compare paths correctly #86, #197.
v0.8.1 - 20-October-2021
- Fixed "Invalid line" spam logs on blank lines in env file #340.
- Fixed
memcache
/pymemcache
URL parsing for correct identification of connection type #337.
v0.8.0 - 17-October-2021
- Log invalid lines when parse
.env
file #283. - Added docker-style file variable support #189.
- Added option to override existing variables with
read_env
#103, #249. - Added support for empty var with None default value #209.
- Added
pymemcache
cache backend for Django 3.2+ #335.
- Keep newline/tab escapes in quoted strings #296.
- Handle escaped dollar sign in values #271.
- Fixed incorrect parsing of
DATABASES_URL
for Google Cloud MySQL #294.
v0.7.0 - 11-September-2021
- Added support for negative float strings #160.
- Added Elasticsearch5 to search scheme #297.
- Added Elasticsearch7 to search scheme #314.
- Added the ability to use
bytes
orstr
as a default value forEnv.bytes()
.
- Fixed links in the documentation.
- Use default option in
Env.bytes()
#206. - Safely evaluate a string containing an invalid Python literal #200.
- Added 'Funding' and 'Say Thanks!' project urls on pypi.
- Stop raising
UserWarning
if.env
file isn't found. Log a message withINFO
log level instead #243.
v0.6.0 - 4-September-2021
- Python 3.9, 3.10 and pypy 3.7 are now supported.
- Django 3.1 and 3.2 are now supported.
- Added missed classifiers to
setup.py
. - Accept Python 3.6 path-like objects for
read_env
#106, #286.
- Fixed various code linting errors.
- Fixed typos in the documentation.
- Added missed files to the package contents.
- Fixed
db_url_config
to work the same for all postgres-like schemes #264, #268.
- Refactor tests to use pytest and follow DRY.
- Moved CI to GitHub Actions.
- Restructuring of project documentation.
- Build and test package documentation as a part of CI pipeline.
- Build and test package distribution as a part of CI pipeline.
- Check
MANIFEST.in
in a source package for completeness as a part of CI pipeline. - Added
pytest
andcoverage[toml]
to setuptools'extras_require
.
v0.5.0 - 30-August-2021
- Support for Django 2.1 & 2.2.
- Added tox.ini targets.
- Added secure redis backend URLs via
rediss://
. - Added
cast=str
tostr()
method.
- Fixed misspelling in the documentation.
- Validate empty cache url and invalid cache schema.
- Set
long_description_content_type
in setup. - Improved Django 1.11 database configuration support.
v0.4.5 - 25-June-2018
- Support for Django 2.0.
- Support for smart casting.
- Support PostgreSQL unix domain socket paths.
- Tip: Multiple env files.
- Fix parsing option values
None
,True
andFalse
. - Order of importance of engine configuration in
db_url_config
.
- Remove
django
andsix
dependencies.
v0.4.4 - 21-August-2017
- Support for
django-redis
multiple locations (master/slave, shards). - Support for Elasticsearch2.
- Support for Mysql-connector.
- Support for
pyodbc
. - Added
__contains__
feature to Environ class.
- Fix Path subtracting.
v0.4.3 - 21-August-2017
- Rollback the default Environ to
os.environ
.
v0.4.2 - 13-April-2017
- Confirm support for Django 1.11.
- Support for Redshift database URL.
v0.4.1 - 13-November-2016
- Add support for Django 1.10.
- Fixed for unsafe characters into URLs.
- Clarifying warning on missing or unreadable file. Thanks to @nickcatal.
- Fixed support for Oracle urls.
- Fixed support for
django-redis
.
v0.4 - 23-September-2015
- New email schemes -
smtp+ssl
andsmtp+tls
(smtps
would be deprecated). - Added tuple support. Thanks to @anonymouzz.
- Added LDAP url support for database. Thanks to django-ldapdb/django-ldapdb.
- Fixed non-ascii values (broken in Python 2.x).
redis_cache
replaced bydjango_redis
.- Fixed psql/pgsql url.
v0.3.1 - 19 Sep 2015
- Added
email
as alias foremail_url
. - Django 1.7 is now supported.
- Added LDAP scheme support for
db_url_config
.
- Fixed typos in the documentation.
- Fixed
environ.Path.__add__
to correctly handle plus operator. - Fixed
environ.Path.__contains__
to correctly work on Windows.
v0.3 - 03-June-2014
- Added cache url support.
- Added email url support.
- Added search url support.
- Rewriting README.rst.
Env.__call__
now usesEnv.get_value
instance method.
- Added advanced float parsing (comma and dot symbols to separate thousands and decimals).
- Fixed typos in the documentation.
- Initial release.